@vertz/theme-shadcn 0.2.21 → 0.2.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import {
8
8
  } from "./shared/chunk-gzfp8m46.js";
9
9
  import {
10
10
  configureThemeBase
11
- } from "./shared/chunk-d2nh1syq.js";
11
+ } from "./shared/chunk-gjsm05ga.js";
12
12
 
13
13
  // src/components/alert.ts
14
14
  import { resolveChildren } from "@vertz/ui";
@@ -92,9 +92,9 @@ function createAvatarComponents(avatarStyles) {
92
92
  import { resolveChildren as resolveChildren3 } from "@vertz/ui";
93
93
  function createBadgeComponent(badgeStyles) {
94
94
  const colorStyles = {
95
- blue: "background-color: oklch(0.55 0.15 250); color: #fff;",
96
- green: "background-color: oklch(0.55 0.15 155); color: #fff;",
97
- yellow: "background-color: oklch(0.75 0.15 85); color: oklch(0.25 0.05 85);"
95
+ blue: { backgroundColor: "oklch(0.55 0.15 250)", color: "#fff" },
96
+ green: { backgroundColor: "oklch(0.55 0.15 155)", color: "#fff" },
97
+ yellow: { backgroundColor: "oklch(0.75 0.15 85)", color: "oklch(0.25 0.05 85)" }
98
98
  };
99
99
  return function Badge({
100
100
  color,
@@ -107,7 +107,7 @@ function createBadgeComponent(badgeStyles) {
107
107
  el.className = [badgeStyles({ color }), effectiveClass].filter(Boolean).join(" ");
108
108
  const inlineStyle = color ? colorStyles[color] : undefined;
109
109
  if (inlineStyle) {
110
- el.style.cssText = inlineStyle;
110
+ Object.assign(el.style, inlineStyle);
111
111
  }
112
112
  for (const node of resolveChildren3(children)) {
113
113
  el.appendChild(node);
@@ -382,8 +382,10 @@ function createPaginationComponent(styles) {
382
382
  prevLi.classList.add(styles.item);
383
383
  const prevBtn = document.createElement("button");
384
384
  prevBtn.setAttribute("type", "button");
385
- prevBtn.classList.add(styles.link);
386
- prevBtn.textContent = "";
385
+ prevBtn.classList.add(styles.navButton);
386
+ prevBtn.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m15 18-6-6 6-6"/></svg><span>Previous</span>';
387
+ prevBtn.style.paddingLeft = "0.375rem";
388
+ prevBtn.style.paddingRight = "0.625rem";
387
389
  prevBtn.setAttribute("aria-label", "Previous page");
388
390
  if (currentPage <= 1) {
389
391
  prevBtn.disabled = true;
@@ -400,7 +402,7 @@ function createPaginationComponent(styles) {
400
402
  const span = document.createElement("span");
401
403
  span.setAttribute("aria-hidden", "true");
402
404
  span.classList.add(styles.ellipsis);
403
- span.textContent = "";
405
+ span.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"/><circle cx="19" cy="12" r="1"/><circle cx="5" cy="12" r="1"/></svg>';
404
406
  li.appendChild(span);
405
407
  } else {
406
408
  const btn = document.createElement("button");
@@ -421,8 +423,10 @@ function createPaginationComponent(styles) {
421
423
  nextLi.classList.add(styles.item);
422
424
  const nextBtn = document.createElement("button");
423
425
  nextBtn.setAttribute("type", "button");
424
- nextBtn.classList.add(styles.link);
425
- nextBtn.textContent = "";
426
+ nextBtn.classList.add(styles.navButton);
427
+ nextBtn.innerHTML = '<span>Next</span><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg>';
428
+ nextBtn.style.paddingLeft = "0.625rem";
429
+ nextBtn.style.paddingRight = "0.375rem";
426
430
  nextBtn.setAttribute("aria-label", "Next page");
427
431
  if (currentPage >= totalPages) {
428
432
  nextBtn.disabled = true;
@@ -478,7 +482,7 @@ function createThemedAccordion(styles) {
478
482
  // src/components/primitives/alert-dialog.ts
479
483
  import { ComposedAlertDialog, withStyles as withStyles2 } from "@vertz/ui-primitives";
480
484
  function createThemedAlertDialog(styles) {
481
- const StyledAlertDialog = withStyles2(ComposedAlertDialog, {
485
+ return withStyles2(ComposedAlertDialog, {
482
486
  overlay: styles.overlay,
483
487
  content: styles.panel,
484
488
  cancel: styles.cancel,
@@ -488,27 +492,6 @@ function createThemedAlertDialog(styles) {
488
492
  footer: styles.footer,
489
493
  header: ""
490
494
  });
491
- function AlertDialogRoot({
492
- children,
493
- onOpenChange,
494
- onAction
495
- }) {
496
- return StyledAlertDialog({
497
- children,
498
- onOpenChange,
499
- onAction
500
- });
501
- }
502
- return Object.assign(AlertDialogRoot, {
503
- Trigger: StyledAlertDialog.Trigger,
504
- Content: StyledAlertDialog.Content,
505
- Header: StyledAlertDialog.Header,
506
- Title: StyledAlertDialog.Title,
507
- Description: StyledAlertDialog.Description,
508
- Footer: StyledAlertDialog.Footer,
509
- Cancel: StyledAlertDialog.Cancel,
510
- Action: StyledAlertDialog.Action
511
- });
512
495
  }
513
496
 
514
497
  // src/components/primitives/calendar.ts
@@ -522,7 +505,9 @@ function createThemedCalendar(styles) {
522
505
  grid: styles.grid,
523
506
  headCell: styles.headCell,
524
507
  cell: styles.cell,
525
- dayButton: styles.dayButton
508
+ dayButton: styles.dayButton,
509
+ monthSelect: styles.monthSelect,
510
+ yearSelect: styles.yearSelect
526
511
  });
527
512
  return function CalendarRoot(props) {
528
513
  return StyledCalendar(props);
@@ -573,14 +558,29 @@ function createThemedCheckbox(styles) {
573
558
  };
574
559
  }
575
560
 
576
- // src/components/primitives/collapsible.ts
577
- import { Collapsible } from "@vertz/ui-primitives";
561
+ // src/components/primitives/collapsible.tsx
562
+ import { ComposedCollapsible } from "@vertz/ui-primitives";
578
563
  function createThemedCollapsible(styles) {
579
- return function themedCollapsible(options) {
580
- const result = Collapsible.Root(options);
581
- result.content.classList.add(styles.content);
582
- return result;
583
- };
564
+ function CollapsibleRoot({
565
+ children,
566
+ defaultOpen,
567
+ disabled,
568
+ onOpenChange
569
+ }) {
570
+ return ComposedCollapsible({
571
+ children,
572
+ defaultOpen,
573
+ disabled,
574
+ onOpenChange,
575
+ classes: {
576
+ content: styles.content
577
+ }
578
+ });
579
+ }
580
+ return Object.assign(CollapsibleRoot, {
581
+ Trigger: ComposedCollapsible.Trigger,
582
+ Content: ComposedCollapsible.Content
583
+ });
584
584
  }
585
585
 
586
586
  // src/components/primitives/command.tsx
@@ -644,21 +644,53 @@ function createThemedContextMenu(styles) {
644
644
  });
645
645
  }
646
646
 
647
- // src/components/primitives/date-picker.ts
648
- import { DatePicker } from "@vertz/ui-primitives";
649
- function createThemedDatePicker(styles) {
650
- return function themedDatePicker(options) {
651
- const result = DatePicker.Root(options);
652
- result.trigger.classList.add(styles.trigger);
653
- result.content.classList.add(styles.content);
654
- return result;
655
- };
647
+ // src/components/primitives/date-picker.tsx
648
+ import { ComposedDatePicker } from "@vertz/ui-primitives";
649
+ function createThemedDatePicker(styles, calendarClasses) {
650
+ function DatePickerRoot({
651
+ children,
652
+ mode,
653
+ defaultValue,
654
+ defaultMonth,
655
+ minDate,
656
+ maxDate,
657
+ disabled,
658
+ formatDate,
659
+ placeholder,
660
+ onValueChange,
661
+ onOpenChange,
662
+ captionLayout
663
+ }) {
664
+ return ComposedDatePicker({
665
+ children,
666
+ mode,
667
+ defaultValue,
668
+ defaultMonth,
669
+ minDate,
670
+ maxDate,
671
+ disabled,
672
+ formatDate,
673
+ placeholder,
674
+ onValueChange,
675
+ onOpenChange,
676
+ captionLayout,
677
+ classes: {
678
+ trigger: styles.trigger,
679
+ content: styles.content,
680
+ calendar: calendarClasses
681
+ }
682
+ });
683
+ }
684
+ return Object.assign(DatePickerRoot, {
685
+ Trigger: ComposedDatePicker.Trigger,
686
+ Content: ComposedDatePicker.Content
687
+ });
656
688
  }
657
689
 
658
690
  // src/components/primitives/dialog.ts
659
691
  import { ComposedDialog, withStyles as withStyles8 } from "@vertz/ui-primitives";
660
692
  function createThemedDialog(styles) {
661
- const StyledDialog = withStyles8(ComposedDialog, {
693
+ return withStyles8(ComposedDialog, {
662
694
  overlay: styles.overlay,
663
695
  content: styles.panel,
664
696
  close: styles.close,
@@ -667,31 +699,10 @@ function createThemedDialog(styles) {
667
699
  description: styles.description,
668
700
  footer: styles.footer
669
701
  });
670
- function DialogRoot({ children, onOpenChange }) {
671
- const closeIcon = document.createElement("button");
672
- closeIcon.type = "button";
673
- closeIcon.className = styles.close;
674
- closeIcon.setAttribute("aria-label", "Close");
675
- closeIcon.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 6 6 18"/><path d="m6 6 12 12"/></svg>';
676
- return StyledDialog({
677
- children,
678
- onOpenChange,
679
- closeIcon
680
- });
681
- }
682
- return Object.assign(DialogRoot, {
683
- Trigger: StyledDialog.Trigger,
684
- Content: StyledDialog.Content,
685
- Header: StyledDialog.Header,
686
- Title: StyledDialog.Title,
687
- Description: StyledDialog.Description,
688
- Footer: StyledDialog.Footer,
689
- Close: StyledDialog.Close
690
- });
691
702
  }
692
703
 
693
704
  // src/components/primitives/drawer.tsx
694
- import { __element, __enterChildren, __exitChildren, __insert } from "@vertz/ui/internals";
705
+ import { __discardMountFrame, __element, __enterChildren, __exitChildren, __flushMountFrame, __insert, __pushMountFrame } from "@vertz/ui/internals";
695
706
  import { resolveChildren as resolveChildren8 } from "@vertz/ui";
696
707
  import { ComposedSheet } from "@vertz/ui-primitives";
697
708
  var PANEL_CLASS_MAP = {
@@ -701,81 +712,86 @@ var PANEL_CLASS_MAP = {
701
712
  bottom: "panelBottom"
702
713
  };
703
714
  function createThemedDrawer(styles) {
704
- function DrawerRoot({ children, side, onOpenChange }) {
705
- const resolvedSide = side ?? "bottom";
706
- const panelClass = styles[PANEL_CLASS_MAP[resolvedSide]];
707
- return ComposedSheet({
708
- children,
709
- side: resolvedSide,
710
- onOpenChange,
711
- classes: {
712
- overlay: styles.overlay,
713
- content: panelClass,
714
- title: styles.title,
715
- description: styles.description,
716
- close: styles.close
717
- }
715
+ const __mfDepth = __pushMountFrame();
716
+ try {
717
+ let DrawerRoot = function({ children, side, onOpenChange }) {
718
+ const resolvedSide = side ?? "bottom";
719
+ const panelClass = styles[PANEL_CLASS_MAP[resolvedSide]];
720
+ return ComposedSheet({
721
+ children,
722
+ side: resolvedSide,
723
+ onOpenChange,
724
+ classes: {
725
+ overlay: styles.overlay,
726
+ content: panelClass,
727
+ title: styles.title,
728
+ description: styles.description,
729
+ close: styles.close
730
+ }
731
+ });
732
+ }, DrawerHeader = function({ children, className: cls, class: classProp }) {
733
+ const effectiveCls = cls ?? classProp;
734
+ const combined = [styles.header, effectiveCls].filter(Boolean).join(" ");
735
+ const resolved = resolveChildren8(children);
736
+ return (() => {
737
+ const __el0 = __element("div");
738
+ __el0.setAttribute("data-slot", "drawer-header");
739
+ {
740
+ const __v = combined;
741
+ if (__v != null && __v !== false)
742
+ __el0.setAttribute("class", __v === true ? "" : __v);
743
+ }
744
+ __enterChildren(__el0);
745
+ __insert(__el0, resolved);
746
+ __exitChildren();
747
+ return __el0;
748
+ })();
749
+ }, DrawerFooter = function({ children, className: cls, class: classProp }) {
750
+ const effectiveCls = cls ?? classProp;
751
+ const combined = [styles.footer, effectiveCls].filter(Boolean).join(" ");
752
+ const resolved = resolveChildren8(children);
753
+ return (() => {
754
+ const __el1 = __element("div");
755
+ __el1.setAttribute("data-slot", "drawer-footer");
756
+ {
757
+ const __v = combined;
758
+ if (__v != null && __v !== false)
759
+ __el1.setAttribute("class", __v === true ? "" : __v);
760
+ }
761
+ __enterChildren(__el1);
762
+ __insert(__el1, resolved);
763
+ __exitChildren();
764
+ return __el1;
765
+ })();
766
+ }, DrawerHandle = function({ className: cls, class: classProp }) {
767
+ const effectiveCls = cls ?? classProp;
768
+ const combined = [styles.handle, effectiveCls].filter(Boolean).join(" ");
769
+ return (() => {
770
+ const __el2 = __element("div");
771
+ __el2.setAttribute("data-slot", "drawer-handle");
772
+ {
773
+ const __v = combined;
774
+ if (__v != null && __v !== false)
775
+ __el2.setAttribute("class", __v === true ? "" : __v);
776
+ }
777
+ return __el2;
778
+ })();
779
+ };
780
+ const __mfResult0 = Object.assign(DrawerRoot, {
781
+ Trigger: ComposedSheet.Trigger,
782
+ Content: ComposedSheet.Content,
783
+ Header: DrawerHeader,
784
+ Title: ComposedSheet.Title,
785
+ Description: ComposedSheet.Description,
786
+ Footer: DrawerFooter,
787
+ Handle: DrawerHandle
718
788
  });
789
+ __flushMountFrame();
790
+ return __mfResult0;
791
+ } catch (__mfErr) {
792
+ __discardMountFrame(__mfDepth);
793
+ throw __mfErr;
719
794
  }
720
- function DrawerHeader({ children, className: cls, class: classProp }) {
721
- const effectiveCls = cls ?? classProp;
722
- const combined = [styles.header, effectiveCls].filter(Boolean).join(" ");
723
- const resolved = resolveChildren8(children);
724
- return (() => {
725
- const __el0 = __element("div");
726
- __el0.setAttribute("data-slot", "drawer-header");
727
- {
728
- const __v = combined;
729
- if (__v != null && __v !== false)
730
- __el0.setAttribute("class", __v === true ? "" : __v);
731
- }
732
- __enterChildren(__el0);
733
- __insert(__el0, resolved);
734
- __exitChildren();
735
- return __el0;
736
- })();
737
- }
738
- function DrawerFooter({ children, className: cls, class: classProp }) {
739
- const effectiveCls = cls ?? classProp;
740
- const combined = [styles.footer, effectiveCls].filter(Boolean).join(" ");
741
- const resolved = resolveChildren8(children);
742
- return (() => {
743
- const __el1 = __element("div");
744
- __el1.setAttribute("data-slot", "drawer-footer");
745
- {
746
- const __v = combined;
747
- if (__v != null && __v !== false)
748
- __el1.setAttribute("class", __v === true ? "" : __v);
749
- }
750
- __enterChildren(__el1);
751
- __insert(__el1, resolved);
752
- __exitChildren();
753
- return __el1;
754
- })();
755
- }
756
- function DrawerHandle({ className: cls, class: classProp }) {
757
- const effectiveCls = cls ?? classProp;
758
- const combined = [styles.handle, effectiveCls].filter(Boolean).join(" ");
759
- return (() => {
760
- const __el2 = __element("div");
761
- __el2.setAttribute("data-slot", "drawer-handle");
762
- {
763
- const __v = combined;
764
- if (__v != null && __v !== false)
765
- __el2.setAttribute("class", __v === true ? "" : __v);
766
- }
767
- return __el2;
768
- })();
769
- }
770
- return Object.assign(DrawerRoot, {
771
- Trigger: ComposedSheet.Trigger,
772
- Content: ComposedSheet.Content,
773
- Header: DrawerHeader,
774
- Title: ComposedSheet.Title,
775
- Description: ComposedSheet.Description,
776
- Footer: DrawerFooter,
777
- Handle: DrawerHandle
778
- });
779
795
  }
780
796
 
781
797
  // src/components/primitives/dropdown-menu.ts
@@ -805,17 +821,30 @@ function createThemedDropdownMenu(styles) {
805
821
  });
806
822
  }
807
823
 
808
- // src/components/primitives/hover-card.ts
809
- import { HoverCard } from "@vertz/ui-primitives";
824
+ // src/components/primitives/hover-card.tsx
825
+ import { ComposedHoverCard } from "@vertz/ui-primitives";
810
826
  function createThemedHoverCard(styles) {
811
- return function themedHoverCard(options) {
812
- const result = HoverCard.Root({
813
- ...options,
814
- positioning: { placement: "bottom", portal: true }
827
+ function HoverCardRoot({
828
+ children,
829
+ openDelay,
830
+ closeDelay,
831
+ onOpenChange
832
+ }) {
833
+ return ComposedHoverCard({
834
+ children,
835
+ openDelay,
836
+ closeDelay,
837
+ onOpenChange,
838
+ positioning: { placement: "bottom", portal: true },
839
+ classes: {
840
+ content: styles.content
841
+ }
815
842
  });
816
- result.content.classList.add(styles.content);
817
- return result;
818
- };
843
+ }
844
+ return Object.assign(HoverCardRoot, {
845
+ Trigger: ComposedHoverCard.Trigger,
846
+ Content: ComposedHoverCard.Content
847
+ });
819
848
  }
820
849
 
821
850
  // src/components/primitives/menubar.ts
@@ -831,7 +860,7 @@ function createThemedMenubar(styles) {
831
860
  separator: styles.separator
832
861
  });
833
862
  function MenubarRoot({ children, onSelect }) {
834
- return Styled({ children, onSelect });
863
+ return Styled({ children, onSelect, positioning: { placement: "bottom-start" } });
835
864
  }
836
865
  return Object.assign(MenubarRoot, {
837
866
  Menu: ComposedMenubar.Menu,
@@ -910,7 +939,8 @@ function createThemedRadioGroup(styles) {
910
939
  const StyledRadioGroup = withStyles13(ComposedRadioGroup, {
911
940
  root: styles.root,
912
941
  item: styles.item,
913
- indicator: styles.indicator
942
+ indicator: styles.indicator,
943
+ indicatorIcon: styles.indicatorIcon
914
944
  });
915
945
  function RadioGroupRoot(props) {
916
946
  return StyledRadioGroup(props);
@@ -920,44 +950,47 @@ function createThemedRadioGroup(styles) {
920
950
  });
921
951
  }
922
952
 
923
- // src/components/primitives/resizable-panel.ts
924
- import { ResizablePanel } from "@vertz/ui-primitives";
953
+ // src/components/primitives/resizable-panel.tsx
954
+ import { ComposedResizablePanel } from "@vertz/ui-primitives";
925
955
  function createThemedResizablePanel(styles) {
926
- return function themedResizablePanel(options) {
927
- const result = ResizablePanel.Root(options);
928
- result.root.classList.add(styles.root);
929
- const originalPanel = result.Panel;
930
- const originalHandle = result.Handle;
931
- return {
932
- root: result.root,
933
- state: result.state,
934
- Panel: (panelOptions) => {
935
- const panel = originalPanel(panelOptions);
936
- panel.classList.add(styles.panel);
937
- return panel;
938
- },
939
- Handle: () => {
940
- const handle = originalHandle();
941
- handle.classList.add(styles.handle);
942
- return handle;
956
+ function ResizablePanelRoot({
957
+ children,
958
+ orientation,
959
+ onResize
960
+ }) {
961
+ return ComposedResizablePanel({
962
+ children,
963
+ orientation,
964
+ onResize,
965
+ classes: {
966
+ root: styles.root,
967
+ panel: styles.panel,
968
+ handle: styles.handle
943
969
  }
944
- };
945
- };
970
+ });
971
+ }
972
+ return Object.assign(ResizablePanelRoot, {
973
+ Panel: ComposedResizablePanel.Panel,
974
+ Handle: ComposedResizablePanel.Handle
975
+ });
946
976
  }
947
977
 
948
- // src/components/primitives/scroll-area.ts
949
- import { ScrollArea } from "@vertz/ui-primitives";
978
+ // src/components/primitives/scroll-area.tsx
979
+ import { ComposedScrollArea } from "@vertz/ui-primitives";
950
980
  function createThemedScrollArea(styles) {
951
- return function themedScrollArea(options) {
952
- const result = ScrollArea.Root(options);
953
- result.root.classList.add(styles.root);
954
- result.viewport.classList.add(styles.viewport);
955
- result.scrollbarY.classList.add(styles.scrollbar);
956
- result.thumbY.classList.add(styles.thumb);
957
- result.scrollbarX.classList.add(styles.scrollbar);
958
- result.thumbX.classList.add(styles.thumb);
959
- return result;
960
- };
981
+ function ScrollAreaRoot({ children, orientation }) {
982
+ return ComposedScrollArea({
983
+ children,
984
+ orientation,
985
+ classes: {
986
+ root: styles.root,
987
+ viewport: styles.viewport,
988
+ scrollbar: styles.scrollbar,
989
+ thumb: styles.thumb
990
+ }
991
+ });
992
+ }
993
+ return ScrollAreaRoot;
961
994
  }
962
995
 
963
996
  // src/components/primitives/select.ts
@@ -1112,26 +1145,25 @@ function createThemedToggle(styles) {
1112
1145
  };
1113
1146
  }
1114
1147
 
1115
- // src/components/primitives/toggle-group.ts
1116
- import { ToggleGroup } from "@vertz/ui-primitives";
1148
+ // src/components/primitives/toggle-group.tsx
1149
+ import { ComposedToggleGroup, withStyles as withStyles18 } from "@vertz/ui-primitives";
1117
1150
  function createThemedToggleGroup(styles) {
1118
- return function themedToggleGroup(options) {
1119
- const result = ToggleGroup.Root(options);
1120
- result.root.classList.add(styles.root);
1121
- const originalItem = result.Item;
1122
- result.Item = (value) => {
1123
- const item = originalItem(value);
1124
- item.classList.add(styles.item);
1125
- return item;
1126
- };
1127
- return result;
1128
- };
1151
+ const StyledToggleGroup = withStyles18(ComposedToggleGroup, {
1152
+ root: styles.root,
1153
+ item: styles.item
1154
+ });
1155
+ function ToggleGroupRoot(props) {
1156
+ return StyledToggleGroup(props);
1157
+ }
1158
+ return Object.assign(ToggleGroupRoot, {
1159
+ Item: ComposedToggleGroup.Item
1160
+ });
1129
1161
  }
1130
1162
 
1131
1163
  // src/components/primitives/tooltip.ts
1132
- import { ComposedTooltip, withStyles as withStyles18 } from "@vertz/ui-primitives";
1164
+ import { ComposedTooltip, withStyles as withStyles19 } from "@vertz/ui-primitives";
1133
1165
  function createThemedTooltip(styles) {
1134
- const StyledTooltip = withStyles18(ComposedTooltip, {
1166
+ const StyledTooltip = withStyles19(ComposedTooltip, {
1135
1167
  content: styles.content
1136
1168
  });
1137
1169
  function TooltipRoot({ children, delay }) {
@@ -1145,10 +1177,17 @@ function createThemedTooltip(styles) {
1145
1177
 
1146
1178
  // src/components/separator.ts
1147
1179
  function createSeparatorComponent(separatorStyles) {
1148
- return function Separator({ className, class: classProp }) {
1180
+ return function Separator({
1181
+ orientation = "horizontal",
1182
+ className,
1183
+ class: classProp
1184
+ }) {
1149
1185
  const effectiveClass = className ?? classProp;
1186
+ const orientationClass = orientation === "vertical" ? separatorStyles.vertical : separatorStyles.horizontal;
1150
1187
  const el = document.createElement("hr");
1151
- el.className = [separatorStyles.base, effectiveClass].filter(Boolean).join(" ");
1188
+ el.className = [separatorStyles.base, orientationClass, effectiveClass].filter(Boolean).join(" ");
1189
+ el.setAttribute("role", "separator");
1190
+ el.setAttribute("aria-orientation", orientation);
1152
1191
  return el;
1153
1192
  };
1154
1193
  }
@@ -1354,6 +1393,12 @@ function createAccordionStyles() {
1354
1393
  },
1355
1394
  {
1356
1395
  '&[data-state="closed"]': [animationDecl(`${accordionUp} 200ms ease-out forwards`)]
1396
+ },
1397
+ {
1398
+ '& [data-part="content-inner"]': {
1399
+ "padding-bottom": "1rem",
1400
+ "padding-top": "0"
1401
+ }
1357
1402
  }
1358
1403
  ]
1359
1404
  });
@@ -1424,8 +1469,6 @@ function createAlertDialogStyles() {
1424
1469
  }
1425
1470
  ],
1426
1471
  alertDialogPanel: [
1427
- "fixed",
1428
- "z:50",
1429
1472
  "bg:background",
1430
1473
  "gap:4",
1431
1474
  {
@@ -1436,11 +1479,24 @@ function createAlertDialogStyles() {
1436
1479
  "box-shadow": "0 0 0 1px color-mix(in oklch, var(--color-foreground) 10%, transparent)",
1437
1480
  "border-radius": "0.75rem",
1438
1481
  padding: "1rem",
1439
- inset: "0",
1440
1482
  margin: "auto",
1441
1483
  height: "fit-content",
1484
+ outline: "none",
1485
+ border: "none",
1442
1486
  "container-type": "inline-size"
1443
1487
  },
1488
+ '&:not([open]):not([data-state="open"])': { display: "none" },
1489
+ "&::backdrop": {
1490
+ "background-color": "oklch(0 0 0 / 10%)",
1491
+ "backdrop-filter": "blur(4px)",
1492
+ "-webkit-backdrop-filter": "blur(4px)"
1493
+ },
1494
+ '&[data-state="open"]::backdrop': {
1495
+ animation: "vz-fade-in 100ms ease-out forwards"
1496
+ },
1497
+ '&[data-state="closed"]::backdrop': {
1498
+ animation: "vz-fade-out 100ms ease-out forwards"
1499
+ },
1444
1500
  "@media (min-width: 640px)": { "max-width": "24rem" }
1445
1501
  },
1446
1502
  {
@@ -1580,7 +1636,14 @@ function createBreadcrumbStyles() {
1580
1636
  "items:center",
1581
1637
  "gap:1.5",
1582
1638
  "text:sm",
1583
- "text:muted-foreground"
1639
+ "text:muted-foreground",
1640
+ {
1641
+ "&": {
1642
+ "list-style": "none",
1643
+ margin: "0",
1644
+ padding: "0"
1645
+ }
1646
+ }
1584
1647
  ],
1585
1648
  breadcrumbItem: ["inline-flex", "items:center", "gap:1.5"],
1586
1649
  breadcrumbLink: ["transition:colors", "text:foreground", { "&:hover": ["text:foreground"] }],
@@ -1610,27 +1673,77 @@ var focusRing2 = {
1610
1673
  };
1611
1674
  function createCalendarStyles() {
1612
1675
  const s = css6({
1613
- calendarRoot: ["p:3"],
1614
- calendarHeader: ["flex", "items:center", "justify:between", "py:2"],
1615
- calendarTitle: ["text:sm", "font:medium"],
1676
+ calendarRoot: [
1677
+ "w:fit",
1678
+ "bg:background",
1679
+ "rounded:lg",
1680
+ "border:1",
1681
+ "border:border",
1682
+ {
1683
+ "&": {
1684
+ padding: "0.5rem"
1685
+ }
1686
+ }
1687
+ ],
1688
+ calendarHeader: [
1689
+ "flex",
1690
+ "items:center",
1691
+ "justify:between",
1692
+ {
1693
+ "&": {
1694
+ position: "relative",
1695
+ height: "1.75rem",
1696
+ width: "100%"
1697
+ },
1698
+ '&[data-caption-layout="dropdown"]': {
1699
+ "justify-content": "center",
1700
+ gap: "0.25rem"
1701
+ },
1702
+ '&[data-caption-layout="dropdown-buttons"]': {
1703
+ gap: "0.25rem"
1704
+ }
1705
+ }
1706
+ ],
1707
+ calendarTitle: [
1708
+ "text:sm",
1709
+ "font:medium",
1710
+ {
1711
+ "&": {
1712
+ position: "absolute",
1713
+ inset: "0",
1714
+ display: "flex",
1715
+ "align-items": "center",
1716
+ "justify-content": "center",
1717
+ "pointer-events": "none",
1718
+ "user-select": "none"
1719
+ }
1720
+ }
1721
+ ],
1616
1722
  calendarNavButton: [
1617
1723
  "inline-flex",
1618
1724
  "items:center",
1619
1725
  "justify:center",
1620
- "rounded:md",
1621
- "border:1",
1622
- "border:input",
1726
+ "rounded:lg",
1623
1727
  "bg:transparent",
1624
1728
  "cursor:pointer",
1625
- "transition:colors",
1626
- { "&:hover": ["bg:accent", "text:accent-foreground"] },
1729
+ "transition:all",
1730
+ { "&:hover": ["bg:muted", "text:foreground"] },
1627
1731
  focusRing2,
1628
1732
  {
1629
1733
  "&": {
1630
1734
  height: "1.75rem",
1631
- width: "1.75rem"
1735
+ width: "1.75rem",
1736
+ padding: "0",
1737
+ border: "1px solid transparent",
1738
+ "user-select": "none",
1739
+ "z-index": "1"
1740
+ },
1741
+ '& svg:not([class*="size-"])': {
1742
+ width: "1rem",
1743
+ height: "1rem"
1632
1744
  }
1633
- }
1745
+ },
1746
+ { '&[aria-disabled="true"]': ["opacity:0.5"] }
1634
1747
  ],
1635
1748
  calendarGrid: [
1636
1749
  {
@@ -1642,12 +1755,13 @@ function createCalendarStyles() {
1642
1755
  ],
1643
1756
  calendarHeadCell: [
1644
1757
  "text:muted-foreground",
1645
- "text:xs",
1646
- "font:medium",
1758
+ "font:normal",
1647
1759
  {
1648
1760
  "&": {
1649
- width: "2rem",
1650
- "text-align": "center"
1761
+ width: "1.75rem",
1762
+ "text-align": "center",
1763
+ "font-size": "0.8rem",
1764
+ "user-select": "none"
1651
1765
  }
1652
1766
  }
1653
1767
  ],
@@ -1655,7 +1769,8 @@ function createCalendarStyles() {
1655
1769
  {
1656
1770
  "&": {
1657
1771
  "text-align": "center",
1658
- padding: "0"
1772
+ padding: "0",
1773
+ "user-select": "none"
1659
1774
  }
1660
1775
  }
1661
1776
  ],
@@ -1663,24 +1778,64 @@ function createCalendarStyles() {
1663
1778
  "inline-flex",
1664
1779
  "items:center",
1665
1780
  "justify:center",
1666
- "rounded:md",
1781
+ "rounded:lg",
1667
1782
  "text:sm",
1783
+ "font:normal",
1668
1784
  "bg:transparent",
1669
1785
  "cursor:pointer",
1670
- "transition:colors",
1786
+ "transition:all",
1671
1787
  focusRing2,
1672
1788
  {
1673
1789
  "&": {
1674
- height: "2rem",
1675
- width: "2rem"
1790
+ height: "1.75rem",
1791
+ width: "1.75rem",
1792
+ border: "1px solid transparent",
1793
+ padding: "0"
1676
1794
  }
1677
1795
  },
1678
- { "&:hover": ["bg:accent", "text:accent-foreground"] },
1796
+ { "&:hover": ["bg:muted", "text:foreground"] },
1679
1797
  { '&[aria-selected="true"]': ["bg:primary", "text:primary-foreground"] },
1680
- { '&[data-today="true"]': ["border:1", "border:accent"] },
1681
- { '&[aria-disabled="true"]': ["opacity:0.5", "pointer-events-none"] },
1682
- { '&[data-outside-month="true"]': ["text:muted-foreground", "opacity:0.5"] },
1683
- { '&[data-in-range="true"]': ["bg:accent"] }
1798
+ {
1799
+ '&[data-today="true"]': ["bg:muted", "text:foreground"]
1800
+ },
1801
+ {
1802
+ '&[data-today="true"][aria-selected="true"]': ["bg:primary", "text:primary-foreground"]
1803
+ },
1804
+ {
1805
+ '&[aria-disabled="true"]': ["text:muted-foreground", "opacity:0.5", "pointer-events-none"]
1806
+ },
1807
+ {
1808
+ '&[data-outside-month="true"]': ["text:muted-foreground"]
1809
+ },
1810
+ { '&[data-in-range="true"]': ["bg:muted", "text:foreground"] }
1811
+ ],
1812
+ calendarMonthSelect: [
1813
+ "text:sm",
1814
+ "font:medium",
1815
+ "bg:transparent",
1816
+ "cursor:pointer",
1817
+ focusRing2,
1818
+ {
1819
+ "&": {
1820
+ border: "none",
1821
+ "padding-inline": "0.25rem",
1822
+ appearance: "auto"
1823
+ }
1824
+ }
1825
+ ],
1826
+ calendarYearSelect: [
1827
+ "text:sm",
1828
+ "font:medium",
1829
+ "bg:transparent",
1830
+ "cursor:pointer",
1831
+ focusRing2,
1832
+ {
1833
+ "&": {
1834
+ border: "none",
1835
+ "padding-inline": "0.25rem",
1836
+ appearance: "auto"
1837
+ }
1838
+ }
1684
1839
  ]
1685
1840
  });
1686
1841
  return {
@@ -1692,6 +1847,8 @@ function createCalendarStyles() {
1692
1847
  headCell: s.calendarHeadCell,
1693
1848
  cell: s.calendarCell,
1694
1849
  dayButton: s.calendarDayButton,
1850
+ monthSelect: s.calendarMonthSelect,
1851
+ yearSelect: s.calendarYearSelect,
1695
1852
  css: s.css
1696
1853
  };
1697
1854
  }
@@ -1759,19 +1916,10 @@ function createCard() {
1759
1916
  import { css as css8 } from "@vertz/ui";
1760
1917
  function createCarouselStyles() {
1761
1918
  const s = css8({
1762
- carouselRoot: ["relative", "overflow-hidden"],
1919
+ carouselRoot: ["relative"],
1763
1920
  carouselViewport: ["overflow-hidden"],
1764
1921
  carouselSlide: [
1765
- "shrink-0",
1766
- {
1767
- "&": {
1768
- "min-width": "0",
1769
- "flex-grow": "0",
1770
- "flex-basis": "100%"
1771
- }
1772
- },
1773
- { '&[data-state="inactive"]': ["opacity:0"] },
1774
- { '&[data-state="active"]': ["opacity:1"] }
1922
+ { '&[data-state="inactive"]': [{ display: "none" }] }
1775
1923
  ],
1776
1924
  carouselPrevButton: [
1777
1925
  "absolute",
@@ -1865,10 +2013,35 @@ function createCheckboxStyles() {
1865
2013
  }
1866
2014
  ],
1867
2015
  checkboxIndicator: [
2016
+ "relative",
1868
2017
  "flex",
1869
2018
  "items:center",
1870
2019
  "justify:center",
1871
- { '&[data-state="unchecked"]': ["hidden"] }
2020
+ {
2021
+ '& [data-part="indicator-icon"]': {
2022
+ position: "absolute",
2023
+ inset: "0",
2024
+ opacity: "0",
2025
+ transform: "scale(0.5)",
2026
+ transition: "opacity 150ms cubic-bezier(0.4, 0, 0.2, 1), " + "transform 150ms cubic-bezier(0.4, 0, 0.2, 1)"
2027
+ },
2028
+ '& [data-icon="check"] path': {
2029
+ "stroke-dasharray": "30",
2030
+ "stroke-dashoffset": "30",
2031
+ transition: "stroke-dashoffset 200ms cubic-bezier(0.4, 0, 0.2, 1) 50ms"
2032
+ },
2033
+ '&[data-state="checked"] [data-icon="check"]': {
2034
+ opacity: "1",
2035
+ transform: "scale(1)"
2036
+ },
2037
+ '&[data-state="checked"] [data-icon="check"] path': {
2038
+ "stroke-dashoffset": "0"
2039
+ },
2040
+ '&[data-state="indeterminate"] [data-icon="minus"]': {
2041
+ opacity: "1",
2042
+ transform: "scale(1)"
2043
+ }
2044
+ }
1872
2045
  ]
1873
2046
  });
1874
2047
  return {
@@ -1939,7 +2112,9 @@ function createCommandStyles() {
1939
2112
  focusRing4
1940
2113
  ],
1941
2114
  commandList: [
1942
- "p:1",
2115
+ "px:1",
2116
+ "pb:1",
2117
+ "pt:2",
1943
2118
  {
1944
2119
  "&": {
1945
2120
  "max-height": "300px",
@@ -2010,11 +2185,15 @@ function createContextMenuStyles() {
2010
2185
  "overflow-hidden",
2011
2186
  "bg:popover",
2012
2187
  "text:popover-foreground",
2013
- "rounded:md",
2014
- "border:1",
2015
- "border:border",
2016
- "shadow:md",
2017
- "py:1",
2188
+ "rounded:lg",
2189
+ "w:fit",
2190
+ "p:1",
2191
+ {
2192
+ "&": {
2193
+ "box-shadow": "0 0 0 1px color-mix(in oklch, var(--color-foreground) 10%, transparent), 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)",
2194
+ "min-width": "8rem"
2195
+ }
2196
+ },
2018
2197
  {
2019
2198
  '&[data-state="open"]': [animationDecl("vz-zoom-in 150ms ease-out forwards")]
2020
2199
  },
@@ -2025,19 +2204,30 @@ function createContextMenuStyles() {
2025
2204
  cmItem: [
2026
2205
  "flex",
2027
2206
  "items:center",
2028
- "px:2",
2029
- "py:1.5",
2207
+ "gap:1.5",
2208
+ "px:1.5",
2209
+ "py:1",
2030
2210
  "text:sm",
2031
2211
  "cursor:pointer",
2032
- "rounded:sm",
2212
+ "rounded:md",
2033
2213
  "outline-none",
2034
2214
  { "&:hover": ["bg:accent", "text:accent-foreground"] },
2035
2215
  { "&:focus": ["bg:accent", "text:accent-foreground"] },
2036
2216
  { "&[data-disabled]": ["pointer-events-none", "opacity:0.5"] }
2037
2217
  ],
2038
2218
  cmGroup: ["py:1"],
2039
- cmLabel: ["px:2", "py:1.5", "text:xs", "font:semibold", "text:muted-foreground"],
2040
- cmSeparator: ["mx:1", "my:1", "border-t:1", "border:muted", { "&": { height: "1px" } }]
2219
+ cmLabel: ["px:1.5", "py:1", "text:xs", "font:medium", "text:muted-foreground"],
2220
+ cmSeparator: [
2221
+ "my:1",
2222
+ "bg:border",
2223
+ {
2224
+ "&": {
2225
+ "margin-left": "-0.25rem",
2226
+ "margin-right": "-0.25rem",
2227
+ height: "1px"
2228
+ }
2229
+ }
2230
+ ]
2041
2231
  });
2042
2232
  return {
2043
2233
  content: s.cmContent,
@@ -2132,8 +2322,6 @@ function createDialogStyles() {
2132
2322
  }
2133
2323
  ],
2134
2324
  dialogPanel: [
2135
- "fixed",
2136
- "z:50",
2137
2325
  "bg:background",
2138
2326
  "gap:4",
2139
2327
  {
@@ -2145,12 +2333,24 @@ function createDialogStyles() {
2145
2333
  "border-radius": "0.75rem",
2146
2334
  padding: "1rem",
2147
2335
  "font-size": "0.875rem",
2148
- inset: "0",
2149
2336
  margin: "auto",
2150
2337
  height: "fit-content",
2151
2338
  outline: "none",
2339
+ border: "none",
2152
2340
  "container-type": "inline-size"
2153
2341
  },
2342
+ '&:not([open]):not([data-state="open"])': { display: "none" },
2343
+ "&::backdrop": {
2344
+ "background-color": "oklch(0 0 0 / 10%)",
2345
+ "backdrop-filter": "blur(4px)",
2346
+ "-webkit-backdrop-filter": "blur(4px)"
2347
+ },
2348
+ '&[data-state="open"]::backdrop': {
2349
+ animation: "vz-fade-in 100ms ease-out forwards"
2350
+ },
2351
+ '&[data-state="closed"]::backdrop': {
2352
+ animation: "vz-fade-out 100ms ease-out forwards"
2353
+ },
2154
2354
  "@media (min-width: 640px)": { "max-width": "24rem" }
2155
2355
  },
2156
2356
  {
@@ -2278,7 +2478,22 @@ function createDrawerStyles() {
2278
2478
  inset: "0 auto 0 0",
2279
2479
  width: "75%",
2280
2480
  "max-width": "24rem",
2481
+ height: "100dvh",
2482
+ "max-height": "none",
2483
+ margin: "0",
2484
+ outline: "none",
2485
+ border: "none",
2281
2486
  "border-radius": "0 0.75rem 0.75rem 0"
2487
+ },
2488
+ '&:not([open]):not([data-state="open"])': { display: "none" },
2489
+ "&::backdrop": {
2490
+ "background-color": "oklch(0 0 0 / 50%)"
2491
+ },
2492
+ '&[data-state="open"]::backdrop': {
2493
+ animation: "vz-fade-in 150ms ease-out forwards"
2494
+ },
2495
+ '&[data-state="closed"]::backdrop': {
2496
+ animation: "vz-fade-out 300ms ease-out forwards"
2282
2497
  }
2283
2498
  },
2284
2499
  {
@@ -2296,7 +2511,22 @@ function createDrawerStyles() {
2296
2511
  inset: "0 0 0 auto",
2297
2512
  width: "75%",
2298
2513
  "max-width": "24rem",
2514
+ height: "100dvh",
2515
+ "max-height": "none",
2516
+ margin: "0",
2517
+ outline: "none",
2518
+ border: "none",
2299
2519
  "border-radius": "0.75rem 0 0 0.75rem"
2520
+ },
2521
+ '&:not([open]):not([data-state="open"])': { display: "none" },
2522
+ "&::backdrop": {
2523
+ "background-color": "oklch(0 0 0 / 50%)"
2524
+ },
2525
+ '&[data-state="open"]::backdrop': {
2526
+ animation: "vz-fade-in 150ms ease-out forwards"
2527
+ },
2528
+ '&[data-state="closed"]::backdrop': {
2529
+ animation: "vz-fade-out 300ms ease-out forwards"
2300
2530
  }
2301
2531
  },
2302
2532
  {
@@ -2312,7 +2542,22 @@ function createDrawerStyles() {
2312
2542
  {
2313
2543
  "&": {
2314
2544
  inset: "0 0 auto 0",
2545
+ width: "100dvw",
2546
+ "max-width": "none",
2547
+ margin: "0",
2548
+ outline: "none",
2549
+ border: "none",
2315
2550
  "border-radius": "0 0 0.75rem 0.75rem"
2551
+ },
2552
+ '&:not([open]):not([data-state="open"])': { display: "none" },
2553
+ "&::backdrop": {
2554
+ "background-color": "oklch(0 0 0 / 50%)"
2555
+ },
2556
+ '&[data-state="open"]::backdrop': {
2557
+ animation: "vz-fade-in 150ms ease-out forwards"
2558
+ },
2559
+ '&[data-state="closed"]::backdrop': {
2560
+ animation: "vz-fade-out 300ms ease-out forwards"
2316
2561
  }
2317
2562
  },
2318
2563
  {
@@ -2328,7 +2573,22 @@ function createDrawerStyles() {
2328
2573
  {
2329
2574
  "&": {
2330
2575
  inset: "auto 0 0 0",
2576
+ width: "100dvw",
2577
+ "max-width": "none",
2578
+ margin: "0",
2579
+ outline: "none",
2580
+ border: "none",
2331
2581
  "border-radius": "0.75rem 0.75rem 0 0"
2582
+ },
2583
+ '&:not([open]):not([data-state="open"])': { display: "none" },
2584
+ "&::backdrop": {
2585
+ "background-color": "oklch(0 0 0 / 50%)"
2586
+ },
2587
+ '&[data-state="open"]::backdrop': {
2588
+ animation: "vz-fade-in 150ms ease-out forwards"
2589
+ },
2590
+ '&[data-state="closed"]::backdrop': {
2591
+ animation: "vz-fade-out 300ms ease-out forwards"
2332
2592
  }
2333
2593
  },
2334
2594
  {
@@ -2402,6 +2662,7 @@ function createDropdownMenuStyles() {
2402
2662
  "bg:popover",
2403
2663
  "text:popover-foreground",
2404
2664
  "rounded:lg",
2665
+ "w:fit",
2405
2666
  "p:1",
2406
2667
  {
2407
2668
  "&": {
@@ -2472,21 +2733,26 @@ function createHoverCardStyles() {
2472
2733
  const s = css18({
2473
2734
  hoverCardContent: [
2474
2735
  "z:50",
2475
- "rounded:md",
2736
+ "rounded:lg",
2476
2737
  "border:1",
2477
2738
  "border:border",
2478
2739
  "bg:popover",
2479
2740
  "text:popover-foreground",
2480
2741
  "shadow:md",
2742
+ "outline-none",
2481
2743
  "p:4",
2482
2744
  {
2483
2745
  "&": { width: "16rem" }
2484
2746
  },
2485
2747
  {
2486
- '&[data-state="open"]': [animationDecl("vz-fade-in 150ms ease-out forwards")]
2748
+ '&[data-state="open"]': [
2749
+ animationDecl("vz-fade-in 150ms ease-out forwards, vz-zoom-in 150ms ease-out forwards")
2750
+ ]
2487
2751
  },
2488
2752
  {
2489
- '&[data-state="closed"]': [animationDecl("vz-fade-out 150ms ease-out forwards")]
2753
+ '&[data-state="closed"]': [
2754
+ animationDecl("vz-fade-out 150ms ease-out forwards, vz-zoom-out 150ms ease-out forwards")
2755
+ ]
2490
2756
  }
2491
2757
  ]
2492
2758
  });
@@ -2729,43 +2995,111 @@ var focusRing8 = {
2729
2995
  };
2730
2996
  function createPaginationStyles() {
2731
2997
  const s = css23({
2732
- paginationNav: [],
2733
- paginationList: ["flex", "flex-wrap", "items:center", "gap:1"],
2998
+ paginationNav: [
2999
+ "flex",
3000
+ "justify:center",
3001
+ {
3002
+ "&": {
3003
+ "margin-left": "auto",
3004
+ "margin-right": "auto",
3005
+ width: "100%"
3006
+ }
3007
+ }
3008
+ ],
3009
+ paginationList: [
3010
+ "flex",
3011
+ "items:center",
3012
+ {
3013
+ "&": {
3014
+ gap: "0.125rem",
3015
+ "list-style": "none",
3016
+ margin: "0",
3017
+ padding: "0"
3018
+ }
3019
+ }
3020
+ ],
2734
3021
  paginationItem: [],
2735
3022
  paginationLink: [
2736
3023
  "inline-flex",
2737
3024
  "items:center",
2738
3025
  "justify:center",
2739
- "rounded:md",
3026
+ "rounded:lg",
2740
3027
  "text:sm",
2741
3028
  "font:medium",
2742
- "h:9",
2743
- "w:9",
2744
- "border:1",
2745
- "border:input",
2746
- "bg:background",
3029
+ "bg:transparent",
2747
3030
  "cursor:pointer",
2748
- "transition:colors",
3031
+ "transition:all",
2749
3032
  focusRing8,
2750
- { "&:hover": ["bg:accent", "text:accent-foreground"] },
3033
+ {
3034
+ "&": {
3035
+ height: "2rem",
3036
+ width: "2rem",
3037
+ border: "1px solid transparent",
3038
+ "white-space": "nowrap"
3039
+ }
3040
+ },
3041
+ { "&:hover": ["bg:muted", "text:foreground"] },
2751
3042
  { "&:disabled": ["pointer-events-none", "opacity:0.5"] }
2752
3043
  ],
2753
3044
  paginationLinkActive: [
2754
3045
  "inline-flex",
2755
3046
  "items:center",
2756
3047
  "justify:center",
2757
- "rounded:md",
3048
+ "rounded:lg",
2758
3049
  "text:sm",
2759
3050
  "font:medium",
2760
- "h:9",
2761
- "w:9",
2762
- "bg:primary",
2763
- "text:primary-foreground",
2764
3051
  "border:1",
2765
- "border:primary",
2766
- focusRing8
3052
+ "border:border",
3053
+ "bg:background",
3054
+ "cursor:pointer",
3055
+ focusRing8,
3056
+ {
3057
+ "&": {
3058
+ height: "2rem",
3059
+ width: "2rem"
3060
+ }
3061
+ },
3062
+ { "&:hover": ["bg:muted", "text:foreground"] }
3063
+ ],
3064
+ paginationNavButton: [
3065
+ "inline-flex",
3066
+ "items:center",
3067
+ "justify:center",
3068
+ "rounded:lg",
3069
+ "text:sm",
3070
+ "font:medium",
3071
+ "bg:transparent",
3072
+ "cursor:pointer",
3073
+ "transition:all",
3074
+ focusRing8,
3075
+ {
3076
+ "&": {
3077
+ height: "2rem",
3078
+ border: "1px solid transparent",
3079
+ "white-space": "nowrap",
3080
+ gap: "0.375rem",
3081
+ "padding-left": "0.375rem",
3082
+ "padding-right": "0.625rem"
3083
+ }
3084
+ },
3085
+ { "&:hover": ["bg:muted", "text:foreground"] },
3086
+ { "&:disabled": ["pointer-events-none", "opacity:0.5"] }
2767
3087
  ],
2768
- paginationEllipsis: ["inline-flex", "items:center", "justify:center", "h:9", "w:9", "text:sm"]
3088
+ paginationEllipsis: [
3089
+ "inline-flex",
3090
+ "items:center",
3091
+ "justify:center",
3092
+ {
3093
+ "&": {
3094
+ height: "2rem",
3095
+ width: "2rem"
3096
+ },
3097
+ '& svg:not([class*="size-"])': {
3098
+ width: "1rem",
3099
+ height: "1rem"
3100
+ }
3101
+ }
3102
+ ]
2769
3103
  });
2770
3104
  return {
2771
3105
  nav: s.paginationNav,
@@ -2773,6 +3107,7 @@ function createPaginationStyles() {
2773
3107
  item: s.paginationItem,
2774
3108
  link: s.paginationLink,
2775
3109
  linkActive: s.paginationLinkActive,
3110
+ navButton: s.paginationNavButton,
2776
3111
  ellipsis: s.paginationEllipsis,
2777
3112
  css: s.css
2778
3113
  };
@@ -2787,6 +3122,7 @@ function createPopoverStyles() {
2787
3122
  "bg:popover",
2788
3123
  "text:popover-foreground",
2789
3124
  "rounded:lg",
3125
+ "w:fit",
2790
3126
  "flex",
2791
3127
  "flex-col",
2792
3128
  "gap:2.5",
@@ -2920,7 +3256,7 @@ var focusRing10 = {
2920
3256
  function createResizablePanelStyles() {
2921
3257
  const s = css27({
2922
3258
  resizableRoot: ["flex", "h:full", "w:full"],
2923
- resizablePanel: ["overflow-hidden"],
3259
+ resizablePanel: ["overflow-hidden", { "&": [{ "white-space": "nowrap" }] }],
2924
3260
  resizableHandle: [
2925
3261
  "relative",
2926
3262
  "flex",
@@ -3031,7 +3367,15 @@ function createSelectStyles() {
3031
3367
  focusRing11,
3032
3368
  { "&:disabled": ["pointer-events-none", "opacity:0.5"] },
3033
3369
  { '&[data-state="open"]': ["border:ring"] },
3034
- { [DARK]: [bgOpacity("input", 30)] }
3370
+ { [DARK]: [bgOpacity("input", 30)] },
3371
+ {
3372
+ '& [data-part="chevron"]': {
3373
+ opacity: "0.5",
3374
+ "flex-shrink": "0",
3375
+ display: "flex",
3376
+ "align-items": "center"
3377
+ }
3378
+ }
3035
3379
  ],
3036
3380
  selectContent: [
3037
3381
  "z:50",
@@ -3048,21 +3392,21 @@ function createSelectStyles() {
3048
3392
  },
3049
3393
  {
3050
3394
  '&[data-state="open"][data-side="bottom"]': [
3051
- animationDecl("vz-slide-down-in 100ms ease-out forwards")
3395
+ animationDecl("vz-slide-in-from-top 150ms ease-out forwards")
3052
3396
  ]
3053
3397
  },
3054
3398
  {
3055
3399
  '&[data-state="open"][data-side="top"]': [
3056
- animationDecl("vz-slide-up-in 100ms ease-out forwards")
3400
+ animationDecl("vz-slide-in-from-bottom 150ms ease-out forwards")
3057
3401
  ]
3058
3402
  },
3059
3403
  {
3060
3404
  '&[data-state="open"]:not([data-side])': [
3061
- animationDecl("vz-zoom-in 100ms ease-out forwards")
3405
+ animationDecl("vz-zoom-in 150ms ease-out forwards")
3062
3406
  ]
3063
3407
  },
3064
3408
  {
3065
- '&[data-state="closed"]': [animationDecl("vz-zoom-out 100ms ease-out forwards")]
3409
+ '&[data-state="closed"]': [animationDecl("vz-zoom-out 150ms ease-out forwards")]
3066
3410
  }
3067
3411
  ],
3068
3412
  selectItem: [
@@ -3203,7 +3547,24 @@ function createSheetStyles() {
3203
3547
  "&": {
3204
3548
  inset: "0 auto 0 0",
3205
3549
  width: "75%",
3206
- "max-width": "24rem"
3550
+ "max-width": "24rem",
3551
+ height: "100dvh",
3552
+ "max-height": "none",
3553
+ margin: "0",
3554
+ outline: "none",
3555
+ border: "none"
3556
+ },
3557
+ '&:not([open]):not([data-state="open"])': { display: "none" },
3558
+ "&::backdrop": {
3559
+ "background-color": "oklch(0 0 0 / 10%)",
3560
+ "backdrop-filter": "blur(4px)",
3561
+ "-webkit-backdrop-filter": "blur(4px)"
3562
+ },
3563
+ '&[data-state="open"]::backdrop': {
3564
+ animation: "vz-fade-in 100ms ease-out forwards"
3565
+ },
3566
+ '&[data-state="closed"]::backdrop': {
3567
+ animation: "vz-fade-out 300ms ease-out forwards"
3207
3568
  }
3208
3569
  },
3209
3570
  {
@@ -3220,7 +3581,24 @@ function createSheetStyles() {
3220
3581
  "&": {
3221
3582
  inset: "0 0 0 auto",
3222
3583
  width: "75%",
3223
- "max-width": "24rem"
3584
+ "max-width": "24rem",
3585
+ height: "100dvh",
3586
+ "max-height": "none",
3587
+ margin: "0",
3588
+ outline: "none",
3589
+ border: "none"
3590
+ },
3591
+ '&:not([open]):not([data-state="open"])': { display: "none" },
3592
+ "&::backdrop": {
3593
+ "background-color": "oklch(0 0 0 / 10%)",
3594
+ "backdrop-filter": "blur(4px)",
3595
+ "-webkit-backdrop-filter": "blur(4px)"
3596
+ },
3597
+ '&[data-state="open"]::backdrop': {
3598
+ animation: "vz-fade-in 100ms ease-out forwards"
3599
+ },
3600
+ '&[data-state="closed"]::backdrop': {
3601
+ animation: "vz-fade-out 300ms ease-out forwards"
3224
3602
  }
3225
3603
  },
3226
3604
  {
@@ -3234,7 +3612,26 @@ function createSheetStyles() {
3234
3612
  ...PANEL_BASE2,
3235
3613
  "border-b:1",
3236
3614
  {
3237
- "&": { inset: "0 0 auto 0" }
3615
+ "&": {
3616
+ inset: "0 0 auto 0",
3617
+ width: "100dvw",
3618
+ "max-width": "none",
3619
+ margin: "0",
3620
+ outline: "none",
3621
+ border: "none"
3622
+ },
3623
+ '&:not([open]):not([data-state="open"])': { display: "none" },
3624
+ "&::backdrop": {
3625
+ "background-color": "oklch(0 0 0 / 10%)",
3626
+ "backdrop-filter": "blur(4px)",
3627
+ "-webkit-backdrop-filter": "blur(4px)"
3628
+ },
3629
+ '&[data-state="open"]::backdrop': {
3630
+ animation: "vz-fade-in 100ms ease-out forwards"
3631
+ },
3632
+ '&[data-state="closed"]::backdrop': {
3633
+ animation: "vz-fade-out 300ms ease-out forwards"
3634
+ }
3238
3635
  },
3239
3636
  {
3240
3637
  '&[data-state="open"]': [animationDecl("vz-slide-in-from-top 300ms ease-out forwards")]
@@ -3247,7 +3644,26 @@ function createSheetStyles() {
3247
3644
  ...PANEL_BASE2,
3248
3645
  "border-t:1",
3249
3646
  {
3250
- "&": { inset: "auto 0 0 0" }
3647
+ "&": {
3648
+ inset: "auto 0 0 0",
3649
+ width: "100dvw",
3650
+ "max-width": "none",
3651
+ margin: "0",
3652
+ outline: "none",
3653
+ border: "none"
3654
+ },
3655
+ '&:not([open]):not([data-state="open"])': { display: "none" },
3656
+ "&::backdrop": {
3657
+ "background-color": "oklch(0 0 0 / 10%)",
3658
+ "backdrop-filter": "blur(4px)",
3659
+ "-webkit-backdrop-filter": "blur(4px)"
3660
+ },
3661
+ '&[data-state="open"]::backdrop': {
3662
+ animation: "vz-fade-in 100ms ease-out forwards"
3663
+ },
3664
+ '&[data-state="closed"]::backdrop': {
3665
+ animation: "vz-fade-out 300ms ease-out forwards"
3666
+ }
3251
3667
  },
3252
3668
  {
3253
3669
  '&[data-state="open"]': [animationDecl("vz-slide-in-from-bottom 300ms ease-out forwards")]
@@ -4011,18 +4427,18 @@ function configureTheme(config) {
4011
4427
  Sheet: createThemedSheet(sheetStyles),
4012
4428
  Calendar: createThemedCalendar(calendarStyles),
4013
4429
  Carousel: createThemedCarousel(carouselStyles),
4014
- collapsible: createThemedCollapsible(collapsibleStyles),
4430
+ Collapsible: createThemedCollapsible(collapsibleStyles),
4015
4431
  Command: createThemedCommand(commandStyles),
4016
4432
  ContextMenu: createThemedContextMenu(contextMenuStyles),
4017
- datePicker: createThemedDatePicker(datePickerStyles),
4433
+ DatePicker: createThemedDatePicker(datePickerStyles, calendarStyles),
4018
4434
  Drawer: createThemedDrawer(drawerStyles),
4019
- hoverCard: createThemedHoverCard(hoverCardStyles),
4435
+ HoverCard: createThemedHoverCard(hoverCardStyles),
4020
4436
  Menubar: createThemedMenubar(menubarStyles),
4021
4437
  NavigationMenu: createThemedNavigationMenu(navigationMenuStyles),
4022
- resizablePanel: createThemedResizablePanel(resizablePanelStyles),
4023
- scrollArea: createThemedScrollArea(scrollAreaStyles),
4438
+ ResizablePanel: createThemedResizablePanel(resizablePanelStyles),
4439
+ ScrollArea: createThemedScrollArea(scrollAreaStyles),
4024
4440
  Toggle: createThemedToggle(toggleStyles),
4025
- toggleGroup: createThemedToggleGroup(toggleGroupStyles)
4441
+ ToggleGroup: createThemedToggleGroup(toggleGroupStyles)
4026
4442
  }
4027
4443
  };
4028
4444
  return { theme, globals, styles, components };