@customafk/lunas-ui 0.0.3-c → 0.0.3-e

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.
@@ -4,7 +4,7 @@ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { en
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
5
 
6
6
  // packages/Organisms/Header/index.tsx
7
- import { Fragment as Fragment3, memo as memo9 } from "react";
7
+ import { Fragment as Fragment5, memo as memo11 } from "react";
8
8
 
9
9
  // packages/Organisms/Header/components/Category.tsx
10
10
  import { useMemo, useRef } from "react";
@@ -504,7 +504,7 @@ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
504
504
  import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
505
505
  var Category = ({ data = [], onShowAll, onClickCategory }) => {
506
506
  const containerRef = useRef(null);
507
- const Item2 = useMemo(
507
+ const Item5 = useMemo(
508
508
  () => ({ name, description, slug, sub }) => {
509
509
  return /* @__PURE__ */ jsx5("li", { className: "mr-3 h-fit rounded-lg hover:bg-ui-text-50", children: /* @__PURE__ */ jsx5(TooltipProvider, { delayDuration: 300, children: /* @__PURE__ */ jsxs3(Tooltip, { children: [
510
510
  /* @__PURE__ */ jsxs3(
@@ -551,7 +551,7 @@ var Category = ({ data = [], onShowAll, onClickCategory }) => {
551
551
  [onClickCategory]
552
552
  );
553
553
  return /* @__PURE__ */ jsxs3(NavigationMenuItem, { children: [
554
- /* @__PURE__ */ jsx5(NavigationMenuTrigger, { className: "rounded-full", children: "Danh m\u1EE5c" }),
554
+ /* @__PURE__ */ jsx5(NavigationMenuTrigger, { className: "rounded-full font-bold text-ui-text-500", children: "Danh m\u1EE5c" }),
555
555
  /* @__PURE__ */ jsx5(NavigationMenuContent, { children: /* @__PURE__ */ jsxs3(
556
556
  "div",
557
557
  {
@@ -566,7 +566,7 @@ var Category = ({ data = [], onShowAll, onClickCategory }) => {
566
566
  children: "Xem t\u1EA5t c\u1EA3 s\u1EA3n ph\u1EA9m"
567
567
  }
568
568
  ),
569
- /* @__PURE__ */ jsx5(ScrollArea, { className: "h-64 w-full", children: /* @__PURE__ */ jsx5("ul", { className: "relative flex h-full flex-col gap-y-2", children: data.map((item) => /* @__PURE__ */ jsx5(Item2, { ...item }, item.uuid)) }) })
569
+ /* @__PURE__ */ jsx5(ScrollArea, { className: "h-64 w-full", children: /* @__PURE__ */ jsx5("ul", { className: "relative flex h-full flex-col gap-y-2", children: data.map((item) => /* @__PURE__ */ jsx5(Item5, { ...item }, item.uuid)) }) })
570
570
  ]
571
571
  }
572
572
  ) })
@@ -578,14 +578,14 @@ var Category_default = Category;
578
578
  import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
579
579
  var Series = () => {
580
580
  return /* @__PURE__ */ jsxs4(NavigationMenuItem, { children: [
581
- /* @__PURE__ */ jsx6(NavigationMenuTrigger, { className: "rounded-full", children: "Series" }),
581
+ /* @__PURE__ */ jsx6(NavigationMenuTrigger, { className: "rounded-full font-bold text-ui-text-500", children: "Series" }),
582
582
  /* @__PURE__ */ jsx6(NavigationMenuContent, { children: /* @__PURE__ */ jsx6("ul", { className: "grid gap-3 p-6 md:w-[400px] lg:w-[500px] lg:grid-cols-[.75fr_1fr]", children: "Series" }) })
583
583
  ] });
584
584
  };
585
585
  var Series_default = Series;
586
586
 
587
- // packages/Atoms/Button/index.tsx
588
- import { forwardRef as forwardRef4, memo } from "react";
587
+ // packages/Atoms/AlertDialog/index.tsx
588
+ import * as React from "react";
589
589
 
590
590
  // packages/Atoms/Button/buttonVariants.ts
591
591
  import { cva as cva2 } from "class-variance-authority";
@@ -617,11 +617,209 @@ var buttonVariants = cva2(
617
617
  }
618
618
  );
619
619
 
620
- // packages/Atoms/Button/index.tsx
621
- import { Slot, Slottable } from "@radix-ui/react-slot";
620
+ // packages/Atoms/AlertDialog/index.tsx
621
+ import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog";
622
622
  import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
623
- var Button = memo(
624
- forwardRef4(
623
+ var AlertDialogPortal = AlertDialogPrimitive.Portal;
624
+ var AlertDialogOverlay = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
625
+ AlertDialogPrimitive.Overlay,
626
+ {
627
+ className: cn(
628
+ "fixed inset-0 z-50 bg-black/80",
629
+ "data-[state=open]:animate-in",
630
+ "data-[state=closed]:animate-out",
631
+ "data-[state=closed]:fade-out-0",
632
+ "data-[state=open]:fade-in-0",
633
+ className
634
+ ),
635
+ ...props,
636
+ ref
637
+ }
638
+ ));
639
+ AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
640
+ var AlertDialogContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs5(AlertDialogPortal, { children: [
641
+ /* @__PURE__ */ jsx7(AlertDialogOverlay, {}),
642
+ /* @__PURE__ */ jsx7(
643
+ AlertDialogPrimitive.Content,
644
+ {
645
+ ref,
646
+ className: cn(
647
+ "fixed left-[50%] top-[50%] z-50 grid",
648
+ "w-full max-w-lg",
649
+ "translate-x-[-50%] translate-y-[-50%]",
650
+ "gap-4 border bg-neutral-50 p-6 shadow-lg duration-200",
651
+ "data-[state=open]:animate-in",
652
+ "data-[state=closed]:animate-out",
653
+ "data-[state=closed]:fade-out-0",
654
+ "data-[state=open]:fade-in-0",
655
+ "data-[state=closed]:zoom-out-95",
656
+ "data-[state=open]:zoom-in-95",
657
+ "data-[state=closed]:slide-out-to-left-1/2",
658
+ "data-[state=closed]:slide-out-to-top-[48%]",
659
+ "data-[state=open]:slide-in-from-left-1/2",
660
+ "data-[state=open]:slide-in-from-top-[48%]",
661
+ "sm:rounded-lg",
662
+ className
663
+ ),
664
+ ...props
665
+ }
666
+ )
667
+ ] }));
668
+ AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
669
+ var AlertDialogHeader = ({ className, ...props }) => /* @__PURE__ */ jsx7("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
670
+ AlertDialogHeader.displayName = "AlertDialogHeader";
671
+ var AlertDialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsx7(
672
+ "div",
673
+ {
674
+ className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
675
+ ...props
676
+ }
677
+ );
678
+ AlertDialogFooter.displayName = "AlertDialogFooter";
679
+ var AlertDialogTitle = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
680
+ AlertDialogPrimitive.Title,
681
+ {
682
+ ref,
683
+ className: cn("text-lg font-semibold", className),
684
+ ...props
685
+ }
686
+ ));
687
+ AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
688
+ var AlertDialogDescription = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
689
+ AlertDialogPrimitive.Description,
690
+ {
691
+ ref,
692
+ className: cn("text-sm text-ui-text-50", className),
693
+ ...props
694
+ }
695
+ ));
696
+ AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
697
+ var AlertDialogAction = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(AlertDialogPrimitive.Action, { ref, className: cn(buttonVariants(), className), ...props }));
698
+ AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
699
+ var AlertDialogCancel = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
700
+ AlertDialogPrimitive.Cancel,
701
+ {
702
+ ref,
703
+ className: cn(buttonVariants({ variant: "outline" }), "mt-2 sm:mt-0", className),
704
+ ...props
705
+ }
706
+ ));
707
+ AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
708
+
709
+ // packages/Atoms/Badge/index.tsx
710
+ import { memo } from "react";
711
+ import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
712
+ var Badge = memo(({ isNew, className, children, ...props }) => {
713
+ return /* @__PURE__ */ jsxs6("div", { className: cn("relative size-fit overflow-y-visible p-1", className), ...props, children: [
714
+ children,
715
+ isNew && /* @__PURE__ */ jsxs6("div", { className: "absolute left-full top-0 flex size-fit -translate-x-1/2 -translate-y-1/2 items-center justify-center rounded-full bg-ui-destructive-500", children: [
716
+ /* @__PURE__ */ jsx8("div", { className: "z-10 size-3" }),
717
+ /* @__PURE__ */ jsx8("span", { className: "absolute -z-10 size-3/4 animate-ping rounded-full bg-ui-destructive-500" })
718
+ ] })
719
+ ] });
720
+ });
721
+ Badge.displayName = "Badge";
722
+ var Badge_default = Badge;
723
+
724
+ // packages/Atoms/Breadcrumb/index.tsx
725
+ import { forwardRef as forwardRef5 } from "react";
726
+
727
+ // packages/Icons/Lucide2ChevronRight.tsx
728
+ import { jsx as jsx9 } from "react/jsx-runtime";
729
+ var Lucide2ChevronRight = ({ size, color }) => {
730
+ return /* @__PURE__ */ jsx9(
731
+ "svg",
732
+ {
733
+ xmlns: "http://www.w3.org/2000/svg",
734
+ width: size ?? 16,
735
+ height: size ?? 16,
736
+ viewBox: "0 0 16 16",
737
+ fill: "none",
738
+ children: /* @__PURE__ */ jsx9(
739
+ "path",
740
+ {
741
+ d: "M4.6665 12.0835L8.75 8L4.6665 3.9165L5.9165 2.6665L11.25 8L5.9165 13.3335L4.6665 12.0835Z",
742
+ fill: color ?? "#B9BAC0"
743
+ }
744
+ )
745
+ }
746
+ );
747
+ };
748
+ var Lucide2ChevronRight_default = Lucide2ChevronRight;
749
+
750
+ // packages/Atoms/Breadcrumb/index.tsx
751
+ import { Slot } from "@radix-ui/react-slot";
752
+ import { MoreHorizontal } from "lucide-react";
753
+ import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
754
+ var Breadcrumb = forwardRef5(({ ...props }, ref) => /* @__PURE__ */ jsx10("nav", { ref, "aria-label": "breadcrumb", ...props }));
755
+ Breadcrumb.displayName = "Breadcrumb";
756
+ var BreadcrumbList = forwardRef5(
757
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx10(
758
+ "ol",
759
+ {
760
+ ref,
761
+ className: cn(
762
+ "flex flex-wrap",
763
+ "items-center",
764
+ "gap-1.5",
765
+ "break-words text-sm text-ui-primary-500 sm:gap-2.5",
766
+ className
767
+ ),
768
+ ...props
769
+ }
770
+ )
771
+ );
772
+ BreadcrumbList.displayName = "BreadcrumbList";
773
+ var BreadcrumbItem = forwardRef5(
774
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx10(
775
+ "li",
776
+ {
777
+ ref,
778
+ className: cn("inline-flex items-center gap-1.5 text-ui-note font-semibold", className),
779
+ ...props
780
+ }
781
+ )
782
+ );
783
+ BreadcrumbItem.displayName = "BreadcrumbItem";
784
+ var BreadcrumbLink = forwardRef5(({ asChild, className, ...props }, ref) => {
785
+ const Comp = asChild ? Slot : "a";
786
+ return /* @__PURE__ */ jsx10(
787
+ Comp,
788
+ {
789
+ ref,
790
+ className: cn("transition-colors hover:text-ui-primary-600", className),
791
+ ...props
792
+ }
793
+ );
794
+ });
795
+ BreadcrumbLink.displayName = "BreadcrumbLink";
796
+ var BreadcrumbPage = forwardRef5(
797
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx10(
798
+ "span",
799
+ {
800
+ ref,
801
+ "aria-disabled": "true",
802
+ "aria-current": "page",
803
+ className: cn("font-semibold text-ui-primary-500", className),
804
+ ...props
805
+ }
806
+ )
807
+ );
808
+ BreadcrumbPage.displayName = "BreadcrumbPage";
809
+ var BreadcrumbSeparator = ({ children, className, ...props }) => /* @__PURE__ */ jsx10("li", { className: cn("[&>svg]:size-3.5", className), ...props, children: children ?? /* @__PURE__ */ jsx10(Lucide2ChevronRight_default, {}) });
810
+ BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
811
+ var BreadcrumbEllipsis = ({ className, ...props }) => /* @__PURE__ */ jsxs7("span", { className: cn("flex size-9 items-center justify-center", className), ...props, children: [
812
+ /* @__PURE__ */ jsx10(MoreHorizontal, { className: "size-4" }),
813
+ /* @__PURE__ */ jsx10("span", { className: "sr-only", children: "More" })
814
+ ] });
815
+ BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
816
+
817
+ // packages/Atoms/Button/index.tsx
818
+ import { forwardRef as forwardRef6, memo as memo2 } from "react";
819
+ import { Slot as Slot2, Slottable } from "@radix-ui/react-slot";
820
+ import { jsx as jsx11, jsxs as jsxs8 } from "react/jsx-runtime";
821
+ var Button = memo2(
822
+ forwardRef6(
625
823
  ({
626
824
  className,
627
825
  variant = "default",
@@ -632,8 +830,8 @@ var Button = memo(
632
830
  children,
633
831
  ...props
634
832
  }, reference) => {
635
- const Comp = asChild ? Slot : "button";
636
- return /* @__PURE__ */ jsxs5(
833
+ const Comp = asChild ? Slot2 : "button";
834
+ return /* @__PURE__ */ jsxs8(
637
835
  Comp,
638
836
  {
639
837
  className: cn(buttonVariants({ variant, size, className })),
@@ -641,7 +839,7 @@ var Button = memo(
641
839
  ...props,
642
840
  children: [
643
841
  icon,
644
- /* @__PURE__ */ jsx7(Slottable, { children }),
842
+ /* @__PURE__ */ jsx11(Slottable, { children }),
645
843
  rightIcon
646
844
  ]
647
845
  }
@@ -652,1435 +850,2443 @@ var Button = memo(
652
850
  Button.displayName = "Button";
653
851
  var Button_default = Button;
654
852
 
655
- // packages/Atoms/Skeleton/index.tsx
656
- import { jsx as jsx8 } from "react/jsx-runtime";
657
- var Skeleton = ({ className, ...props }) => {
658
- return /* @__PURE__ */ jsx8("div", { className: cn("animate-pulse rounded-md bg-zinc-300", className), ...props });
659
- };
660
-
661
- // packages/Icons/SmallLogoIcon.tsx
662
- import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
663
- var SmallLogoIcon = ({ size, ...props }) => {
664
- return /* @__PURE__ */ jsxs6(
665
- "svg",
853
+ // packages/Atoms/Card/index.tsx
854
+ import React2 from "react";
855
+ import { jsx as jsx12 } from "react/jsx-runtime";
856
+ var Card = React2.forwardRef(
857
+ ({ className, ...props }, reference) => /* @__PURE__ */ jsx12(
858
+ "div",
666
859
  {
667
- xmlns: "http://www.w3.org/2000/svg",
668
- width: size ?? "52",
669
- height: size ?? "32",
670
- viewBox: "0 0 52 32",
671
- fill: "none",
860
+ ref: reference,
861
+ className: cn("bg-card text-card-foreground rounded-lg border shadow-sm", className),
862
+ ...props
863
+ }
864
+ )
865
+ );
866
+ Card.displayName = "Card";
867
+ var CardHeader = React2.forwardRef(
868
+ ({ className, ...props }, reference) => /* @__PURE__ */ jsx12("div", { ref: reference, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
869
+ );
870
+ CardHeader.displayName = "CardHeader";
871
+ var CardTitle = React2.forwardRef(
872
+ ({ className, children, ...props }, reference) => /* @__PURE__ */ jsx12(
873
+ "h3",
874
+ {
875
+ ref: reference,
876
+ className: cn("text-2xl font-semibold leading-none tracking-tight", className),
672
877
  ...props,
673
- children: [
674
- /* @__PURE__ */ jsxs6("g", { clipPath: "url(#clip0_1128_4961)", children: [
675
- /* @__PURE__ */ jsx9(
676
- "path",
677
- {
678
- d: "M5.98316 18.7938C5.12901 19.0115 4.25182 19.1256 3.37045 19.1337C2.49226 19.1403 1.61603 19.0497 0.75774 18.8635C0.619557 18.8295 0.490382 18.7659 0.379121 18.6771C0.26786 18.5884 0.177159 18.4765 0.113272 18.3492C-0.0228783 18.1115 -0.0604037 17.8298 0.00876346 17.5647C0.252616 16.5535 0.496469 15.5598 0.731613 14.566C0.966757 13.5723 1.21061 12.5786 1.43704 11.5674C1.33762 11.6084 1.23104 11.6291 1.12352 11.6284C1.05537 11.6255 0.989222 11.6045 0.931921 11.5674C0.879158 11.5331 0.836948 11.4848 0.809994 11.4279L0.00876346 10.0768L0.879667 9.47533L1.55897 8.96975L2.23828 8.45545C2.23828 8.45545 2.23828 8.38571 2.23828 8.34213C2.23219 8.30168 2.23219 8.26054 2.23828 8.22009C2.38633 7.6622 2.52567 7.08688 2.6476 6.4767C2.76953 5.86651 2.935 5.28247 3.10047 4.7333C3.27203 4.14156 3.47554 3.55957 3.7101 2.98991C3.93418 2.44088 4.22681 1.92245 4.58101 1.447C4.72906 1.26395 4.91195 1.05474 5.12967 0.828099C5.34234 0.612787 5.57904 0.42267 5.8351 0.261495C6.0719 0.10773 6.34561 0.0204265 6.62763 0.00870302C6.77832 0.00609128 6.92783 0.0358657 7.06605 0.096016C7.20427 0.156166 7.32799 0.245293 7.42886 0.357382C7.62749 0.551754 7.77679 0.790858 7.86431 1.05474C7.96148 1.338 8.03147 1.62989 8.07333 1.92644C8.10994 2.21563 8.13029 2.50666 8.13429 2.79813V3.61753C8.10191 4.21925 7.96025 4.81003 7.71626 5.36092C7.4676 5.91931 7.158 6.44845 6.7931 6.9387C6.41222 7.45183 5.98672 7.93023 5.52158 8.36828C5.04258 8.81284 4.55488 9.23997 4.04975 9.64967L2.30795 16.9632C2.86992 17.0154 3.43552 17.0154 3.9975 16.9632C4.57052 16.9267 5.13743 16.8244 5.68705 16.6581L6.13121 18.4712V18.5933C6.13121 18.6892 6.07896 18.7502 5.98316 18.7938ZM5.41707 4.219C5.24289 4.7333 5.07742 5.26504 4.93808 5.80549L5.07742 5.59628C5.34417 5.23263 5.58568 4.85109 5.80027 4.45436C6.00479 4.05004 6.10082 3.59947 6.07896 3.14681C6.08959 3.06872 6.08959 2.98955 6.07896 2.91145C5.80915 3.32056 5.58707 3.75927 5.41707 4.219Z",
679
- fill: "#6C70F0"
680
- }
681
- ),
682
- /* @__PURE__ */ jsx9(
683
- "path",
684
- {
685
- d: "M14.7792 12.0033L15.1799 12.2561C15.3518 12.3553 15.515 12.469 15.6676 12.596C15.3739 13.233 15.0394 13.8503 14.666 14.444C14.308 15.0223 13.8778 15.5525 13.3858 16.0218C12.997 16.4097 12.4983 16.6684 11.9575 16.7627C11.674 16.787 11.389 16.738 11.1298 16.6204C10.8706 16.5029 10.6458 16.3208 10.477 16.0915C10.3666 15.9599 10.2757 15.8131 10.207 15.6557C9.89966 16.0578 9.47175 16.351 8.98594 16.4921C8.50014 16.6333 7.98193 16.6151 7.5072 16.4402C6.88477 16.2821 6.33486 15.9161 5.94829 15.4029C5.57672 14.9026 5.3236 14.3243 5.20802 13.7118C5.07753 13.0638 5.0307 12.4017 5.06867 11.7418C5.10617 11.1168 5.17593 10.4941 5.27769 9.87633V9.82403C5.26637 9.79307 5.26637 9.7591 5.27769 9.72814L5.46929 8.85645L6.14859 8.95233C6.46073 8.98388 6.76959 9.04221 7.07175 9.12667C7.24593 9.12667 7.35044 9.28358 7.37657 9.51022C7.39281 9.77329 7.37229 10.0373 7.3156 10.2947V10.3383C7.24916 10.6262 7.19685 10.9171 7.15884 11.21C7.12941 11.6017 7.12941 11.9951 7.15884 12.3868C7.15576 12.7771 7.19962 13.1664 7.28948 13.5462C7.31319 13.6962 7.37007 13.8389 7.45595 13.9641C7.54183 14.0893 7.65456 14.1937 7.78589 14.2697C7.88031 14.3191 7.98362 14.3492 8.0898 14.3582C8.19597 14.3672 8.30287 14.3549 8.40423 14.322C8.62916 14.2592 8.83542 14.1425 9.00516 13.982C9.18949 13.809 9.35051 13.6127 9.48415 13.398C9.62236 13.1907 9.72263 12.9605 9.78026 12.7181C9.78026 12.1515 9.78026 11.6197 9.78026 11.1141C9.78026 10.6086 9.78026 10.2424 9.82381 9.91992L11.5134 9.45792H11.8008C11.874 9.47334 11.9445 9.49979 12.0098 9.53637C12.0385 9.55283 12.062 9.57716 12.0774 9.60649C12.0928 9.63583 12.0996 9.66896 12.0969 9.70199C12.0969 9.88505 12.0446 10.1727 12.0098 10.5737C11.9749 10.9747 11.9227 11.4454 11.8791 11.8725C11.8356 12.2997 11.792 12.7442 11.7746 13.1975C11.7448 13.5106 11.7448 13.8258 11.7746 14.1389C11.8095 14.3191 11.8791 14.4063 11.9836 14.4004C12.1249 14.3718 12.2531 14.2985 12.3494 14.1912C12.5076 14.038 12.6559 13.875 12.7936 13.7031C12.9548 13.5136 13.106 13.3157 13.2465 13.1103C13.3858 12.9098 13.499 12.7268 13.5948 12.5612L13.7951 12.2473C13.8239 12.1932 13.8558 12.1408 13.8909 12.0904C13.9156 12.034 13.9478 11.9813 13.9867 11.9335C14.0172 11.8689 14.0584 11.8099 14.1086 11.7592C14.1448 11.7242 14.1901 11.7001 14.2393 11.6895C14.2771 11.6839 14.3158 11.6872 14.3521 11.6994C14.3884 11.7115 14.4214 11.732 14.4483 11.7592C14.5354 11.8376 14.6486 11.9074 14.7792 12.0033Z",
686
- fill: "#6C70F0"
687
- }
688
- ),
689
- /* @__PURE__ */ jsx9(
690
- "path",
691
- {
692
- d: "M21.5112 12.439L21.9206 12.6831C22.0938 12.7782 22.2597 12.886 22.417 13.0056C22.1621 13.6236 21.8713 14.2261 21.5461 14.8101C21.2613 15.3495 20.8972 15.8431 20.4661 16.2745C20.1297 16.6226 19.6838 16.8442 19.2033 16.9021C18.9261 16.8958 18.6536 16.8285 18.4053 16.705C18.1569 16.5814 17.9388 16.4047 17.7663 16.1873C17.5099 15.929 17.3266 15.6071 17.2351 15.2546C17.1549 14.894 17.114 14.5257 17.1132 14.1563C17.1132 13.7727 17.1132 13.3892 17.1741 12.9969C17.1948 12.6398 17.1948 12.2818 17.1741 11.9247C17.1741 11.6458 17.0783 11.4889 16.9216 11.4453C16.7648 11.4017 16.5906 11.5673 16.3903 11.9247C16.1432 12.5087 15.9678 13.1204 15.8678 13.7466C15.6578 14.8983 15.5298 16.0635 15.4846 17.2334L13.5338 17.1113V16.1176C13.5338 14.9931 13.4902 13.8076 13.5338 12.5436C13.5773 11.2797 13.6208 10.0506 13.7079 8.86509C13.7172 8.80835 13.7382 8.75419 13.7697 8.70614C13.8012 8.65808 13.8425 8.61719 13.8908 8.58614C13.91 8.57748 13.9308 8.573 13.9518 8.573C13.9728 8.573 13.9936 8.57748 14.0128 8.58614L15.7546 8.63844C15.7546 8.83893 15.711 9.03071 15.7023 9.2312C15.6936 9.43169 15.7023 9.62346 15.7023 9.83267C15.8854 9.61839 16.1114 9.44498 16.3657 9.32367C16.62 9.20237 16.8969 9.13586 17.1785 9.12847C17.4601 9.12107 17.7401 9.17295 18.0004 9.28074C18.2607 9.38854 18.4954 9.54984 18.6895 9.75422C18.9648 10.0175 19.1609 10.3527 19.2556 10.7218C19.3544 11.0914 19.4042 11.4724 19.4036 11.855C19.4121 12.2596 19.3947 12.6643 19.3514 13.0667C19.3119 13.4372 19.2974 13.81 19.3078 14.1824C19.3078 14.4614 19.3862 14.5486 19.5082 14.4527C19.6754 14.3185 19.8145 14.1526 19.9175 13.9645C20.0655 13.7379 20.2049 13.4851 20.3442 13.2236L20.6142 12.7006C20.6488 12.653 20.6753 12.5999 20.6926 12.5436L20.771 12.378C20.8035 12.3146 20.8445 12.256 20.8929 12.2037C20.9314 12.1699 20.9756 12.1433 21.0235 12.1252C21.0758 12.1252 21.1455 12.1252 21.2325 12.195C21.3196 12.2647 21.3719 12.3519 21.5112 12.439Z",
693
- fill: "#6C70F0"
694
- }
695
- ),
696
- /* @__PURE__ */ jsx9(
697
- "path",
698
- {
699
- d: "M30.4467 12.0033L30.8473 12.256C31.0179 12.3575 31.1809 12.4711 31.335 12.596C31.0383 13.2331 30.7008 13.8503 30.3248 14.444C29.9725 15.0239 29.5449 15.5544 29.0533 16.0218C28.6625 16.4117 28.1604 16.6706 27.6163 16.7627C27.3329 16.7853 27.0485 16.7355 26.7896 16.6181C26.5307 16.5008 26.3057 16.3196 26.1358 16.0915C25.8788 15.7455 25.7112 15.3412 25.6481 14.9147C25.5075 15.0815 25.3531 15.2361 25.1865 15.3767C25.0261 15.5255 24.8574 15.6652 24.6813 15.7951C24.3283 16.0523 23.9137 16.2116 23.4795 16.2571C23.0881 16.2946 22.6939 16.2254 22.3386 16.0566C21.9885 15.8903 21.6882 15.6348 21.4677 15.3157C21.2044 14.9597 21.0257 14.5483 20.9452 14.1128C20.8602 13.6851 20.8194 13.2499 20.8232 12.8139C20.8238 12.3677 20.8764 11.923 20.98 11.489C21.0842 11.0595 21.2391 10.6439 21.4416 10.2511C21.6491 9.85822 21.9232 9.5043 22.2515 9.20511C22.5636 8.89708 22.9382 8.65981 23.3499 8.50941C23.7616 8.35901 24.2009 8.29899 24.6378 8.33341C25.5241 8.42746 26.3407 8.85797 26.9196 9.53635L27.1808 9.4579H27.4769C27.5479 9.47178 27.6157 9.49835 27.6773 9.53635C27.7068 9.55195 27.7309 9.57611 27.7464 9.60567C27.762 9.63523 27.7682 9.6688 27.7643 9.70197C27.7643 9.88503 27.7208 10.1727 27.6773 10.5737C27.6337 10.9747 27.5989 11.4454 27.5466 11.8725C27.4944 12.2996 27.4682 12.7442 27.4508 13.1975C27.421 13.5106 27.421 13.8258 27.4508 14.1389C27.4508 14.322 27.5466 14.4091 27.6511 14.4004C27.793 14.3737 27.9218 14.3 28.0169 14.1912C28.1781 14.0383 28.3293 13.8752 28.4698 13.7031C28.6282 13.5135 28.7765 13.3156 28.9139 13.1103C29.0533 12.9098 29.1752 12.7268 29.271 12.5611L29.4626 12.2473C29.4977 12.197 29.5297 12.1446 29.5584 12.0904L29.6542 11.9335C29.6876 11.8706 29.7285 11.8121 29.7761 11.7592C29.8155 11.7239 29.8636 11.6998 29.9155 11.6894C29.952 11.6845 29.9891 11.6883 30.0239 11.7004C30.0587 11.7125 30.0902 11.7327 30.1158 11.7592L30.4467 12.0033ZM25.0471 10.7219C24.9283 10.62 24.7892 10.5448 24.639 10.5012C24.4888 10.4576 24.331 10.4467 24.1762 10.4691C24.0076 10.5106 23.8508 10.5903 23.7179 10.7022C23.585 10.814 23.4796 10.955 23.4098 11.1141C23.203 11.4577 23.0502 11.8311 22.957 12.2212C22.8709 12.6073 22.8503 13.0051 22.896 13.398C22.8928 13.4619 22.8928 13.5259 22.896 13.5897C22.896 13.6856 22.9483 13.7902 22.9831 13.8861C23.0106 13.972 23.0426 14.0564 23.0789 14.1389C23.0789 14.2086 23.1573 14.2348 23.2008 14.1999C23.3722 14.1325 23.5268 14.0284 23.6537 13.8948C23.7798 13.7702 23.8963 13.6362 24.002 13.4939C24.6631 12.7204 25.0329 11.7397 25.0471 10.7219Z",
700
- fill: "#6C70F0"
701
- }
702
- ),
703
- /* @__PURE__ */ jsx9(
704
- "path",
705
- {
706
- d: "M39.2341 12.0034L39.6347 12.2562C39.8066 12.3554 39.9698 12.4691 40.1224 12.5961C39.8785 13.1192 39.6173 13.6247 39.3212 14.139C39.0561 14.6154 38.7376 15.0599 38.3719 15.464C38.0407 15.9064 37.6577 16.3073 37.231 16.6582C36.8465 16.9662 36.4322 17.2348 35.9943 17.4602C35.5151 17.7067 34.9829 17.8324 34.4441 17.8263C34.003 17.8571 33.5628 17.7538 33.1813 17.5299C32.7915 17.3108 32.4507 17.0142 32.1798 16.6582C31.9067 16.28 31.7059 15.8544 31.5876 15.403C31.4713 14.9587 31.4564 14.494 31.544 14.0432L31.6921 13.3632C31.6791 13.2982 31.6883 13.2306 31.7182 13.1715C31.7532 13.1277 31.7987 13.0935 31.8505 13.0722C31.9023 13.0509 31.9587 13.043 32.0143 13.0494L32.4236 13.1104L33.0333 13.1976L33.8084 13.3196C33.7474 13.5637 33.6951 13.7904 33.6603 13.9996C33.6255 14.2088 33.608 14.357 33.5906 14.54C33.561 14.6809 33.561 14.8263 33.5906 14.9671C33.6318 15.1256 33.7274 15.2644 33.8606 15.3594C33.9775 15.4529 34.1206 15.5077 34.2699 15.5163C34.3432 15.5197 34.4164 15.5083 34.4852 15.4828C34.554 15.4574 34.6171 15.4184 34.6705 15.3681C34.8068 15.2346 34.8955 15.0601 34.9231 14.8713C35.0248 14.4225 34.9976 13.9541 34.8447 13.5201C34.6547 13.1007 34.4395 12.6932 34.2003 12.2998C34.1132 12.1516 34.0348 12.0121 33.9651 11.8726C33.8954 11.7332 33.8345 11.6024 33.7822 11.4716C33.4886 11.721 33.1706 11.9401 32.8329 12.1254C32.5042 12.3181 32.1492 12.462 31.7792 12.5525C31.4142 12.6267 31.0381 12.6267 30.6731 12.5525C30.266 12.4722 29.8839 12.2959 29.5583 12.0382L30.4293 10.2949C30.7858 10.3911 31.1614 10.3911 31.5179 10.2949C31.9422 10.1769 32.347 9.99779 32.7197 9.76312C33.2892 9.39086 33.8025 8.93879 34.2438 8.4207C34.2826 8.38355 34.3176 8.34267 34.3483 8.29867L34.4615 8.17663L35.1844 7.30493L36.5691 8.22893C36.6317 8.28551 36.6899 8.3467 36.7433 8.41199C36.7597 8.44751 36.7682 8.48618 36.7682 8.52531C36.7682 8.56444 36.7597 8.6031 36.7433 8.63863C36.7168 8.77249 36.6535 8.89628 36.5604 8.99602C36.4102 9.18426 36.2441 9.35924 36.064 9.51904C35.863 9.69462 35.738 9.94158 35.7156 10.2077C35.7088 10.4552 35.7626 10.7006 35.8724 10.9225C35.9903 11.1737 36.1271 11.4156 36.2817 11.646C36.4573 11.8539 36.6202 12.0722 36.7694 12.2998C36.9025 12.5491 36.9993 12.8162 37.0568 13.093C37.1244 13.3791 37.1652 13.671 37.1788 13.9647H37.231C37.3475 13.8535 37.4526 13.7309 37.5445 13.5986C37.6577 13.433 37.771 13.2673 37.8755 13.0843C37.98 12.9012 38.0671 12.7443 38.1367 12.5961L38.25 12.2998L38.3545 12.1429C38.3792 12.0864 38.4114 12.0337 38.4503 11.9859C38.4776 11.9196 38.5192 11.86 38.5722 11.8116C38.6084 11.7766 38.6536 11.7525 38.7028 11.7419C38.7638 11.7419 38.8248 11.7419 38.9118 11.8116C38.9989 11.8813 39.1034 11.9075 39.2341 12.0034Z",
707
- fill: "#6C70F0"
708
- }
709
- ),
710
- /* @__PURE__ */ jsx9(
711
- "path",
712
- {
713
- d: "M10.7905 24.7387L11.1911 24.9915C11.363 25.0907 11.5262 25.2045 11.6788 25.3315C11.4349 25.8545 11.1737 26.3688 10.8776 26.8744C10.6147 27.3521 10.296 27.7969 9.92828 28.1994C9.59786 28.6346 9.21462 29.027 8.7874 29.3674C8.40504 29.6783 7.99044 29.9472 7.55072 30.1694C7.07146 30.4159 6.53932 30.5416 6.00051 30.5355C5.559 30.5709 5.11749 30.4672 4.7377 30.2391C4.3479 30.02 4.00706 29.7234 3.73616 29.3674C3.46158 28.9933 3.2606 28.5702 3.14395 28.1209C3.02434 27.6805 3.00352 27.2191 3.08298 26.7698L3.23104 26.0899C3.21955 26.0411 3.21955 25.9904 3.23104 25.9417C3.26604 25.8979 3.31157 25.8638 3.36336 25.8424C3.41515 25.8211 3.4715 25.8132 3.52714 25.8196L3.93647 25.8807L4.5461 25.9678C4.78995 26.0201 5.05122 26.055 5.3212 26.0899C5.26149 26.3136 5.21496 26.5406 5.18186 26.7698C5.18186 26.9528 5.1209 27.1272 5.10348 27.319C5.07462 27.4599 5.07462 27.6052 5.10348 27.7461C5.1507 27.8993 5.24522 28.0336 5.37346 28.1296C5.49039 28.2231 5.6334 28.2779 5.78278 28.2865C5.85551 28.2916 5.92849 28.2818 5.99735 28.2578C6.0662 28.2339 6.12949 28.1962 6.1834 28.1471C6.32136 28.0113 6.41022 27.8334 6.43596 27.6415C6.57071 27.1859 6.56768 26.7006 6.42725 26.2468C6.23924 25.8235 6.02397 25.413 5.78278 25.0177C5.69569 24.8695 5.62602 24.73 5.54764 24.5905C5.46926 24.4511 5.417 24.3203 5.36475 24.1896C5.07267 24.4369 4.75772 24.6558 4.42417 24.8433C4.09338 25.0382 3.73521 25.1822 3.36167 25.2705C2.99721 25.3495 2.62008 25.3495 2.25562 25.2705C1.85027 25.1896 1.46889 25.0166 1.14087 24.7649L2.01177 23.0215C2.36828 23.1177 2.74389 23.1177 3.1004 23.0215C3.52599 22.9073 3.9314 22.7279 4.30225 22.4897C4.86978 22.1183 5.38275 21.6694 5.82633 21.1561L5.93084 21.034C5.96424 20.9895 6.00219 20.9486 6.04405 20.912L6.7669 20.0403L8.10809 21.0166L8.28227 21.1996C8.30548 21.2337 8.32134 21.2722 8.32884 21.3127C8.33634 21.3532 8.33531 21.3949 8.32582 21.435C8.29911 21.5644 8.23906 21.6846 8.15164 21.7837C7.9956 21.9695 7.82681 22.1443 7.64652 22.3067C7.44693 22.4834 7.32232 22.7297 7.29815 22.9953C7.29234 23.2455 7.34607 23.4935 7.45492 23.7188C7.5729 23.9672 7.70974 24.2062 7.86424 24.4336C8.01645 24.6491 8.15603 24.8732 8.28227 25.1048C8.41398 25.3517 8.5107 25.6158 8.56967 25.8894C8.63665 26.1756 8.67746 26.4674 8.6916 26.7611H8.74385C8.8648 26.6542 8.97032 26.5309 9.05738 26.395C9.1706 26.2293 9.28381 26.0637 9.38832 25.8894C9.49283 25.715 9.57992 25.5407 9.64959 25.4012L9.80635 25.1048L9.91086 24.9479C9.9396 24.8937 9.97159 24.8413 10.0067 24.791C10.0392 24.7276 10.0802 24.669 10.1286 24.6167C10.1669 24.5848 10.2114 24.561 10.2592 24.547C10.3202 24.547 10.3812 24.547 10.4682 24.6167C10.5733 24.6632 10.6809 24.704 10.7905 24.7387Z",
714
- fill: "#6C70F0"
715
- }
716
- ),
717
- /* @__PURE__ */ jsx9(
718
- "path",
719
- {
720
- d: "M15.0404 24.7649L15.441 25.0177C15.6116 25.1191 15.7746 25.2328 15.9287 25.3577C15.6501 25.9592 15.3104 26.5955 14.9098 27.2754C14.5498 27.9073 14.114 28.4928 13.6121 29.0188C13.2443 29.4413 12.7593 29.7447 12.2187 29.8905C11.7484 29.9864 11.3478 29.7423 10.9036 29.1583C10.655 28.7855 10.4806 28.3681 10.3898 27.9292C10.2689 27.3757 10.1961 26.8128 10.1721 26.2468C10.1721 25.6657 10.1721 25.0293 10.1721 24.3378C10.1721 23.6666 10.2592 22.9954 10.3463 22.3155H9.91081H9.6147C9.54241 22.3246 9.46926 22.3246 9.39697 22.3155L9.44923 20.4239H10.5901C10.5901 20.2844 10.6249 20.0578 10.6946 19.744C10.7556 19.4389 10.8078 19.1251 10.8688 18.7938C10.9298 18.4626 10.9733 18.1662 11.0256 17.8785C11.0778 17.5909 11.1039 17.3729 11.1214 17.2422L13.2551 17.5298C13.2551 17.6257 13.2028 17.8088 13.1593 18.079C13.1157 18.3492 13.0635 18.6282 13.0112 18.9507C12.959 19.2732 12.9154 19.5348 12.8806 19.8224C12.8457 20.1101 12.8109 20.2844 12.7935 20.3977H13.1593H13.4728C13.5163 20.3977 13.5686 20.4762 13.6296 20.6767C13.6916 20.899 13.7324 21.1266 13.7515 21.3566C13.7731 21.5885 13.7731 21.822 13.7515 22.054C13.7515 22.2632 13.6905 22.3678 13.6121 22.3678H13.2551H13.1244H12.4538C12.3755 22.9344 12.3058 23.4923 12.2622 24.0327C12.2187 24.5732 12.1839 25.0787 12.1752 25.532C12.1664 25.9853 12.1752 26.4037 12.1752 26.7088C12.1821 26.96 12.2509 27.2055 12.3755 27.4236C12.4364 27.5108 12.5496 27.4236 12.7151 27.2318C12.8993 26.987 13.0681 26.7308 13.2202 26.4647C13.4031 26.1684 13.5686 25.872 13.7167 25.593L14.0215 25.0439C14.0558 24.9947 14.085 24.9421 14.1086 24.887C14.1304 24.831 14.1597 24.7782 14.1956 24.7301C14.223 24.6637 14.2646 24.6042 14.3176 24.5557C14.3395 24.5328 14.3659 24.5145 14.3951 24.5021C14.4243 24.4896 14.4557 24.4832 14.4874 24.4832C14.5191 24.4832 14.5505 24.4896 14.5797 24.5021C14.6089 24.5145 14.6353 24.5328 14.6572 24.5557C14.78 24.6343 14.908 24.7042 15.0404 24.7649Z",
721
- fill: "#6C70F0"
722
- }
723
- ),
724
- /* @__PURE__ */ jsx9(
725
- "path",
726
- {
727
- d: "M27.9212 25.1484L28.165 25.3315C28.0692 25.532 27.9734 25.7325 27.8602 25.9504C27.747 26.1683 27.6512 26.395 27.538 26.6216L27.1896 27.2928L26.8064 27.9379C26.6855 28.1506 26.5456 28.3519 26.3884 28.5393L25.9529 29.0798C25.6936 29.3561 25.4011 29.5991 25.082 29.8033C24.9544 29.8861 24.8092 29.938 24.6579 29.9546C24.5067 29.9713 24.3537 29.9523 24.2111 29.8992C24.035 29.8402 23.873 29.7455 23.7351 29.621C23.5973 29.4966 23.4865 29.3449 23.4099 29.1757C23.3376 29.0462 23.2736 28.9123 23.2183 28.7747C23.1486 28.6178 23.0877 28.4522 23.0267 28.2778C22.8819 27.7559 22.8144 27.2155 22.8264 26.6739C22.8264 26.4124 22.8699 26.1596 22.9048 25.9068C22.9396 25.654 22.9744 25.4012 23.0267 25.1397C23.0855 24.6622 23.1816 24.19 23.3141 23.7276C23.136 23.729 22.9611 23.6807 22.809 23.5881C22.5685 24.0744 22.2475 24.5165 21.8597 24.8956C21.4829 25.2884 21.0029 25.5664 20.4749 25.6976C20.1874 25.7545 19.8916 25.7545 19.604 25.6976C19.604 25.8894 19.604 26.0899 19.604 26.2816C19.604 26.4734 19.604 26.6739 19.5431 26.8918C19.4402 27.556 19.1999 28.1914 18.8376 28.7573C18.5156 29.2784 18.062 29.7053 17.5226 29.9951C16.9436 30.2905 16.2736 30.3529 15.6501 30.1694C15.1806 30.0917 14.7576 29.8396 14.4657 29.4633C14.3038 29.2916 14.1714 29.0942 14.0738 28.8793C13.9809 28.6701 13.8938 28.4522 13.8125 28.2255C13.6809 27.7582 13.6308 27.2716 13.6645 26.7872C13.6883 26.3255 13.7702 25.8686 13.9083 25.4274C14.0381 25.1278 14.1865 24.8367 14.3525 24.5557C14.5276 24.2758 14.7288 24.0131 14.9534 23.7712C15.3919 23.2999 15.9436 22.9488 16.5559 22.7513L16.4775 22.6118L16.4078 22.4636C16.2587 22.2412 16.1524 21.9928 16.0943 21.7314C16.0574 21.5884 16.0574 21.4385 16.0943 21.2955C16.1325 21.1969 16.1992 21.1119 16.2859 21.0515L17.7926 20.3454L18.1845 21.2171C18.2194 21.3264 18.2662 21.4316 18.3238 21.5309L18.498 21.8796C18.559 22.019 18.6373 22.1759 18.7157 22.359C18.7848 22.4806 18.8665 22.5946 18.9596 22.699L19.3254 23.0825C19.446 23.2077 19.5804 23.3188 19.726 23.4138C19.8196 23.4857 19.931 23.5309 20.0482 23.5445C20.3 23.4727 20.5149 23.3075 20.6491 23.0825C20.812 22.8745 20.9467 22.6459 21.0497 22.4026C21.0637 22.3311 21.0968 22.2648 21.1455 22.2108C21.0315 22.0809 20.9294 21.9408 20.8407 21.7924C20.746 21.6384 20.6616 21.4782 20.5882 21.313C20.4682 21.0962 20.369 20.8686 20.2921 20.633C20.2581 20.4956 20.2581 20.352 20.2921 20.2146C20.3356 20.1243 20.385 20.0369 20.4401 19.9531L21.8074 19.2732C21.8703 19.5042 21.9672 19.7245 22.0948 19.927C22.1906 20.171 22.269 20.3367 22.3126 20.4326C22.5169 20.8755 22.8471 21.2484 23.2618 21.5047C23.6956 21.7302 24.1913 21.8068 24.6727 21.7227C24.84 21.7224 25.0057 21.755 25.1604 21.8185C25.2944 21.9082 25.4147 22.0168 25.5175 22.1411C25.6176 22.2773 25.6914 22.431 25.7352 22.5944C25.7877 22.7439 25.7877 22.9068 25.7352 23.0564C25.6223 23.3401 25.5292 23.6314 25.4565 23.9281C25.3781 24.207 25.3172 24.4859 25.2475 24.7998C25.1778 25.1136 25.1343 25.3751 25.0994 25.6715C25.0646 25.9678 25.0385 26.2293 25.0036 26.5431V26.8134C24.9953 26.8595 24.9953 26.9067 25.0036 26.9528C25.0036 27.1359 25.0036 27.2231 25.1082 27.2231C25.2127 27.2231 25.2475 27.1708 25.3433 27.0574L25.4652 26.8308L25.6394 26.5693C25.7011 26.4743 25.7564 26.3753 25.8049 26.2729C25.8571 26.177 25.9181 26.0811 25.9791 25.9853C26.04 25.8894 26.0749 25.7935 26.1271 25.7063L26.249 25.4535C26.249 25.3664 26.31 25.3053 26.3274 25.253L26.3884 25.131L26.4406 25.0613L26.4929 24.9915C26.4914 24.9625 26.4914 24.9334 26.4929 24.9044V24.8172C26.5254 24.7538 26.5665 24.6951 26.6148 24.6428L26.7629 24.5731C26.8311 24.5821 26.8965 24.6059 26.9545 24.6428L27.0851 24.7562L27.2941 24.8869L27.4857 25.0264C27.5507 25.0647 27.6175 25.0996 27.686 25.131L27.9212 25.1484ZM17.4703 25.6279C17.4647 25.3311 17.3707 25.0427 17.2004 24.7998C17.0329 24.8121 16.8726 24.8727 16.7388 24.9741C16.6594 25.0163 16.5862 25.0691 16.521 25.131L16.3033 25.3315C16.1805 25.4873 16.0671 25.6503 15.9637 25.8196C15.8799 25.9681 15.8071 26.1225 15.7459 26.2816C15.7459 26.3775 15.7024 26.5431 15.6676 26.7698C15.6415 26.9869 15.6415 27.2064 15.6676 27.4236C15.6954 27.624 15.7636 27.8168 15.8679 27.9902C15.8815 28.0302 15.903 28.067 15.9312 28.0984C15.9593 28.1299 15.9935 28.1553 16.0318 28.1733C16.07 28.1912 16.1114 28.2012 16.1536 28.2026C16.1958 28.2041 16.2378 28.1971 16.2772 28.1819C16.4111 28.1611 16.5383 28.1093 16.6487 28.0306C16.759 27.9519 16.8495 27.8485 16.913 27.7287C17.1056 27.4173 17.2523 27.0796 17.3484 26.7262C17.4348 26.3668 17.4728 25.9974 17.4616 25.6279H17.4703Z",
728
- fill: "#6C70F0"
729
- }
730
- ),
731
- /* @__PURE__ */ jsx9(
732
- "path",
733
- {
734
- d: "M34.7576 25.3751C34.4868 25.8581 34.1657 26.311 33.7996 26.7263C33.4213 27.1575 32.9739 27.5228 32.4759 27.8072C31.9433 28.1023 31.3427 28.2525 30.7341 28.243C29.8686 28.2822 29.0093 28.08 28.252 27.659C27.6663 27.317 27.1777 26.8309 26.8324 26.2468C26.5125 25.6865 26.311 25.0664 26.2402 24.425C26.1579 23.8468 26.1579 23.2598 26.2402 22.6816C26.3485 22.0854 26.5799 21.5183 26.9195 21.0166C27.207 20.5961 27.6006 20.2592 28.0604 20.0403C28.5873 19.7836 29.1572 19.627 29.7412 19.5783C30.1769 19.5619 30.6116 19.63 31.0215 19.7788C31.3878 19.9081 31.7229 20.113 32.005 20.3803C32.2871 20.6476 32.5098 20.9714 32.6587 21.3304C32.814 21.6819 32.8941 22.062 32.8939 22.4462C32.9051 22.8599 32.8059 23.2692 32.6065 23.6317C32.4232 23.9657 32.1779 24.2616 31.8836 24.5034C31.5987 24.7319 31.2779 24.9115 30.9344 25.0352C30.6251 25.1515 30.298 25.2134 29.9677 25.2182C29.5328 25.2141 29.1033 25.1222 28.7049 24.948C28.9056 25.3771 29.2341 25.7334 29.6454 25.9679C30.0266 26.181 30.471 26.2521 30.8995 26.1684C31.4076 26.0545 31.8764 25.8079 32.2581 25.4536C32.7815 24.9722 33.2124 24.3991 33.5297 23.7625C33.626 23.6026 33.7464 23.4585 33.8867 23.3354C34.0086 23.2307 34.209 23.2743 34.4789 23.4661L34.9666 23.8061C35.1321 23.9194 35.2715 24.024 35.4021 24.1024C35.21 24.5378 34.9949 24.9626 34.7576 25.3751ZM29.001 21.9581C28.8277 22.1779 28.6869 22.4216 28.5829 22.6816L28.7658 22.8995C28.8226 22.9658 28.8903 23.0219 28.9661 23.0651C29.1566 23.245 29.402 23.3555 29.6628 23.3789C29.8442 23.3844 30.0211 23.3223 30.1593 23.2046C30.2922 23.0731 30.3857 22.9071 30.4292 22.7252C30.4726 22.5417 30.4726 22.3507 30.4292 22.1673C30.3908 21.9968 30.3064 21.84 30.1854 21.714C30.1145 21.653 30.0303 21.6094 29.9396 21.5867C29.8489 21.564 29.7541 21.5628 29.6628 21.5832C29.4073 21.6271 29.174 21.7561 29.001 21.9494V21.9581Z",
735
- fill: "#6C70F0"
736
- }
737
- ),
738
- /* @__PURE__ */ jsx9(
739
- "path",
740
- {
741
- d: "M43.033 31.0058L43.0327 31.0057C40.9185 30.257 39.1878 28.6983 38.2216 26.6724C37.2554 24.6464 37.1329 22.3191 37.881 20.2027C38.6291 18.0862 40.1865 16.354 42.2104 15.3871C44.2341 14.4202 46.5585 14.2975 48.6725 15.0459C49.0434 15.1787 49.4041 15.3367 49.7522 15.5187C48.318 15.7245 46.943 16.2592 45.7383 17.0898C44.0981 18.2206 42.8576 19.8418 42.1942 21.7212C41.5273 23.6016 41.4714 25.6448 42.0345 27.5589C42.4491 28.9681 43.1836 30.2542 44.1723 31.3209C43.7862 31.2432 43.4054 31.138 43.033 31.0058Z",
742
- fill: "white",
743
- stroke: "#D1D5DB"
744
- }
745
- ),
746
- /* @__PURE__ */ jsx9(
747
- "path",
748
- {
749
- d: "M49.9725 25.811C49.8244 25.9766 48.1784 24.9393 48.1784 24.9393C48.1784 24.9393 46.6979 26.1074 46.4366 25.9418C46.1754 25.7761 46.6805 23.9717 46.6805 23.9717C46.6805 23.9717 45.2 23.0041 45.2 22.6555C45.2 22.3068 47.2204 22.3155 47.2204 22.3155C47.2204 22.3155 47.7604 20.4937 48.013 20.4937C48.2655 20.4937 48.971 22.237 48.971 22.237C48.971 22.237 50.7128 22.0627 50.9479 22.4288C51.1831 22.7949 49.598 23.8846 49.598 23.8846C49.598 23.8846 50.1293 25.6454 49.9725 25.811Z",
750
- fill: "#FACC15"
751
- }
752
- )
753
- ] }),
754
- /* @__PURE__ */ jsx9("defs", { children: /* @__PURE__ */ jsx9("clipPath", { id: "clip0_1128_4961", children: /* @__PURE__ */ jsx9("rect", { width: "51.3136", height: "32", fill: "white" }) }) })
755
- ]
878
+ children
756
879
  }
757
- );
758
- };
759
- var SmallLogoIcon_default = SmallLogoIcon;
760
-
761
- // packages/Layout/Flex/index.tsx
762
- import { forwardRef as forwardRef5, memo as memo2, useMemo as useMemo2 } from "react";
880
+ )
881
+ );
882
+ CardTitle.displayName = "CardTitle";
883
+ var CardDescription = React2.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx12("p", { ref: reference, className: cn("text-muted-foreground text-sm", className), ...props }));
884
+ CardDescription.displayName = "CardDescription";
885
+ var CardContent = React2.forwardRef(
886
+ ({ className, ...props }, reference) => /* @__PURE__ */ jsx12("div", { ref: reference, className: cn("p-6 pt-0", className), ...props })
887
+ );
888
+ CardContent.displayName = "CardContent";
889
+ var CardFooter = React2.forwardRef(
890
+ ({ className, ...props }, reference) => /* @__PURE__ */ jsx12("div", { ref: reference, className: cn("flex items-center p-6 pt-0", className), ...props })
891
+ );
892
+ CardFooter.displayName = "CardFooter";
763
893
 
764
- // packages/Layout/Flex/flexVariant.ts
765
- import { cva as cva3 } from "class-variance-authority";
766
- var flexVariants = cva3("flex flex-row", {
767
- variants: {
768
- wrap: {
769
- nowrap: "flex-nowrap",
770
- wrap: "flex-wrap",
771
- "wrap-reverse": "flex-wrap-reverse"
772
- },
773
- justify: {
774
- start: "justify-start",
775
- end: "justify-end",
776
- center: "justify-center",
777
- between: "justify-between",
778
- around: "justify-around",
779
- normal: "justify-normal",
780
- stretch: "justify-stretch",
781
- evenly: "justify-evenly"
782
- },
783
- align: {
784
- start: "items-start",
785
- end: "items-end",
786
- center: "items-center",
787
- stretch: "items-stretch",
788
- baseline: "items-baseline"
789
- }
790
- },
791
- defaultVariants: {
792
- wrap: "nowrap",
793
- justify: "start",
794
- align: "stretch"
894
+ // packages/Atoms/Carousel/index.tsx
895
+ import {
896
+ createContext,
897
+ forwardRef as forwardRef7,
898
+ useCallback,
899
+ useContext,
900
+ useEffect,
901
+ useState
902
+ } from "react";
903
+ import useEmblaCarousel from "embla-carousel-react";
904
+ import { ArrowLeft, ArrowRight } from "lucide-react";
905
+ import { Fragment, jsx as jsx13, jsxs as jsxs9 } from "react/jsx-runtime";
906
+ var CarouselContext = createContext(null);
907
+ function useCarousel() {
908
+ const context = useContext(CarouselContext);
909
+ if (!context) {
910
+ throw new Error("useCarousel must be used within a <Carousel />");
795
911
  }
796
- });
797
- var flexVariant_default = flexVariants;
798
-
799
- // packages/Layout/commons/index.ts
800
- import { cva as cva4 } from "class-variance-authority";
801
- var commonLayout = cva4("", {
802
- variants: {
803
- p: {
804
- "0": "p-0",
805
- "1": "p-1",
806
- "2": "p-2",
807
- "3": "p-3",
808
- "4": "p-4",
809
- "5": "p-5",
810
- "6": "p-6",
811
- "7": "p-7",
812
- "8": "p-8",
813
- "9": "p-9",
814
- "10": "p-10"
815
- },
816
- px: {
817
- "0": "px-0",
818
- "1": "px-1",
819
- "2": "px-2",
820
- "3": "px-3",
821
- "4": "px-4",
822
- "5": "px-5",
823
- "6": "px-6",
824
- "7": "px-7",
825
- "8": "px-8",
826
- "9": "px-9",
827
- "10": "px-10"
828
- },
829
- py: {
830
- "0": "py-0",
831
- "1": "py-1",
832
- "2": "py-2",
833
- "3": "py-3",
834
- "4": "py-4",
835
- "5": "py-5",
836
- "6": "py-6",
837
- "7": "py-7",
838
- "8": "py-8",
839
- "9": "py-9",
840
- "10": "py-10"
841
- },
842
- pt: {
843
- "0": "pt-0",
844
- "1": "pt-1",
845
- "2": "pt-2",
846
- "3": "pt-3",
847
- "4": "pt-4",
848
- "5": "pt-5",
849
- "6": "pt-6",
850
- "7": "pt-7",
851
- "8": "pt-8",
852
- "9": "pt-9",
853
- "10": "pt-10"
854
- },
855
- pr: {
856
- "0": "pr-0",
857
- "1": "pr-1",
858
- "2": "pr-2",
859
- "3": "pr-3",
860
- "4": "pr-4",
861
- "5": "pr-5",
862
- "6": "pr-6",
863
- "7": "pr-7",
864
- "8": "pr-8",
865
- "9": "pr-9",
866
- "10": "pr-10"
867
- },
868
- pb: {
869
- "0": "pb-0",
870
- "1": "pb-1",
871
- "2": "pb-2",
872
- "3": "pb-3",
873
- "4": "pb-4",
874
- "5": "pb-5",
875
- "6": "pb-6",
876
- "7": "pb-7",
877
- "8": "pb-8",
878
- "9": "pb-9",
879
- "10": "pb-10"
880
- },
881
- pl: {
882
- "0": "pl-0",
883
- "1": "pl-1",
884
- "2": "pl-2",
885
- "3": "pl-3",
886
- "4": "pl-4",
887
- "5": "pl-5",
888
- "6": "pl-6",
889
- "7": "pl-7",
890
- "8": "pl-8",
891
- "9": "pl-9",
892
- "10": "pl-10"
893
- },
894
- gap: {
895
- "0": "gap-0",
896
- "1": "gap-1",
897
- "2": "gap-2",
898
- "3": "gap-3",
899
- "4": "gap-4",
900
- "5": "gap-5",
901
- "6": "gap-6",
902
- "7": "gap-7",
903
- "8": "gap-8",
904
- "9": "gap-9",
905
- "10": "gap-10"
906
- },
907
- gapX: {
908
- "0": "gap-x-0",
909
- "1": "gap-x-1",
910
- "2": "gap-x-2",
911
- "3": "gap-x-3",
912
- "4": "gap-x-4",
913
- "5": "gap-x-5",
914
- "6": "gap-x-6",
915
- "7": "gap-x-7",
916
- "8": "gap-x-8",
917
- "9": "gap-x-9",
918
- "10": "gap-x-10"
919
- },
920
- gapY: {
921
- "0": "gap-y-0",
922
- "1": "gap-y-1",
923
- "2": "gap-y-2",
924
- "3": "gap-y-3",
925
- "4": "gap-y-4",
926
- "5": "gap-y-5",
927
- "6": "gap-y-6",
928
- "7": "gap-y-7",
929
- "8": "gap-y-8",
930
- "9": "gap-y-9",
931
- "10": "gap-y-10"
932
- },
933
- position: {
934
- static: "static",
935
- fixed: "fixed",
936
- absolute: "absolute",
937
- relative: "relative",
938
- sticky: "sticky"
939
- },
940
- top: {
941
- "0": "top-0",
942
- "1": "top-1",
943
- "2": "top-2",
944
- "3": "top-3",
945
- "4": "top-4",
946
- "5": "top-5",
947
- "6": "top-6",
948
- "7": "top-7",
949
- "8": "top-8",
950
- "9": "top-9",
951
- "-1": "-top-1",
952
- "-2": "-top-2",
953
- "-3": "-top-3",
954
- "-4": "-top-4",
955
- "-5": "-top-5",
956
- "-6": "-top-6",
957
- "-7": "-top-7",
958
- "-8": "-top-8",
959
- "-9": "-top-9"
960
- },
961
- right: {
962
- "0": "right-0",
963
- "1": "right-1",
964
- "2": "right-2",
965
- "3": "right-3",
966
- "4": "right-4",
967
- "5": "right-5",
968
- "6": "right-6",
969
- "7": "right-7",
970
- "8": "right-8",
971
- "9": "right-9",
972
- "-1": "-right-1",
973
- "-2": "-right-2",
974
- "-3": "-right-3",
975
- "-4": "-right-4",
976
- "-5": "-right-5",
977
- "-6": "-right-6",
978
- "-7": "-right-7",
979
- "-8": "-right-8",
980
- "-9": "-right-9"
981
- },
982
- bottom: {
983
- "0": "bottom-0",
984
- "1": "bottom-1",
985
- "2": "bottom-2",
986
- "3": "bottom-3",
987
- "4": "bottom-4",
988
- "5": "bottom-5",
989
- "6": "bottom-6",
990
- "7": "bottom-7",
991
- "8": "bottom-8",
992
- "9": "bottom-9",
993
- "-1": "-bottom-1",
994
- "-2": "-bottom-2",
995
- "-3": "-bottom-3",
996
- "-4": "-bottom-4",
997
- "-5": "-bottom-5",
998
- "-6": "-bottom-6",
999
- "-7": "-bottom-7",
1000
- "-8": "-bottom-8",
1001
- "-9": "-bottom-9"
1002
- },
1003
- left: {
1004
- "0": "left-0",
1005
- "1": "left-1",
1006
- "2": "left-2",
1007
- "3": "left-3",
1008
- "4": "left-4",
1009
- "5": "left-5",
1010
- "6": "left-6",
1011
- "7": "left-7",
1012
- "8": "left-8",
1013
- "9": "left-9",
1014
- "-1": "-left-1",
1015
- "-2": "-left-2",
1016
- "-3": "-left-3",
1017
- "-4": "-left-4",
1018
- "-5": "-left-5",
1019
- "-6": "-left-6",
1020
- "-7": "-left-7",
1021
- "-8": "-left-8",
1022
- "-9": "-left-9"
1023
- },
1024
- overflow: {
1025
- auto: "overflow-auto",
1026
- hidden: "overflow-hidden",
1027
- clip: "overflow-clip",
1028
- scroll: "overflow-scroll",
1029
- visible: "overflow-visible"
1030
- },
1031
- overflowX: {
1032
- auto: "overflow-x-auto",
1033
- hidden: "overflow-x-hidden",
1034
- clip: "overflow-x-clip",
1035
- scroll: "overflow-x-scroll",
1036
- visible: "overflow-x-visible"
1037
- },
1038
- overflowY: {
1039
- auto: "overflow-y-auto",
1040
- hidden: "overflow-y-hidden",
1041
- clip: "overflow-y-clip",
1042
- scroll: "overflow-y-scroll",
1043
- visible: "overflow-y-visible"
1044
- },
1045
- flexGrow: {
1046
- 0: "grow-0",
1047
- 1: "grow"
1048
- },
1049
- flexShrink: {
1050
- 0: "shrink-0",
1051
- 1: "shrink"
1052
- }
1053
- },
1054
- defaultVariants: {
1055
- position: "relative",
1056
- overflow: "visible",
1057
- flexGrow: 0,
1058
- flexShrink: 1
1059
- }
1060
- });
1061
-
1062
- // packages/Layout/Flex/index.tsx
1063
- import { jsx as jsx10 } from "react/jsx-runtime";
1064
- var Flex = memo2(
1065
- forwardRef5(
1066
- ({
1067
- vertical = false,
1068
- wrap = "nowrap",
1069
- width = "fit",
1070
- height = "fit",
1071
- justify = "start",
1072
- align = "center",
1073
- gap,
1074
- gapX,
1075
- gapY,
1076
- p,
1077
- px,
1078
- py,
1079
- pt,
1080
- pr,
1081
- pb,
1082
- pl,
1083
- position,
1084
- top,
1085
- right,
1086
- bottom,
1087
- left,
1088
- flexGrow,
1089
- flexShrink,
1090
- children,
1091
- className,
1092
- ...props
1093
- }, reference) => {
1094
- const generateStyle = useMemo2(() => {
1095
- let widthValue = "fit";
1096
- let heightValue = "fit";
1097
- switch (width) {
1098
- case "full": {
1099
- widthValue = "100%";
1100
- break;
1101
- }
1102
- case "screen": {
1103
- widthValue = "100vw";
1104
- break;
1105
- }
1106
- case "auto": {
1107
- widthValue = "auto";
1108
- break;
1109
- }
1110
- case "fit": {
1111
- widthValue = "fit-content";
1112
- break;
1113
- }
1114
- default: {
1115
- widthValue = `${width}px`;
1116
- break;
1117
- }
1118
- }
1119
- switch (height) {
1120
- case "full": {
1121
- heightValue = "100%";
1122
- break;
1123
- }
1124
- case "screen": {
1125
- heightValue = "100vh";
1126
- break;
1127
- }
1128
- case "auto": {
1129
- heightValue = "auto";
1130
- break;
1131
- }
1132
- case "fit": {
1133
- heightValue = "fit-content";
1134
- break;
1135
- }
1136
- default: {
1137
- heightValue = `${height}px`;
1138
- break;
1139
- }
1140
- }
1141
- return {
1142
- width: widthValue,
1143
- height: heightValue
1144
- };
1145
- }, [width, height]);
1146
- return /* @__PURE__ */ jsx10(
1147
- "div",
1148
- {
1149
- ref: reference,
1150
- className: cn(
1151
- flexVariant_default({ wrap, justify, align }),
1152
- commonLayout({
1153
- position,
1154
- top,
1155
- right,
1156
- bottom,
1157
- left,
1158
- flexGrow,
1159
- flexShrink
1160
- }),
1161
- {
1162
- [`flex-col`]: vertical,
1163
- [`p-${p}`]: p,
1164
- [`px-${px}`]: px,
1165
- [`py-${py}`]: py,
1166
- [`pt-${pt}`]: pt,
1167
- [`pr-${pr}`]: pr,
1168
- [`pb-${pb}`]: pb,
1169
- [`pl-${pl}`]: pl,
1170
- [`gap-${gap}`]: gap,
1171
- [`gap-x-${gapX}`]: gapX,
1172
- [`gap-y-${gapY}`]: gapY
1173
- },
1174
- className
1175
- ),
1176
- style: generateStyle,
1177
- ...props,
1178
- children
912
+ return context;
913
+ }
914
+ var Carousel = forwardRef7(
915
+ ({ orientation = "horizontal", opts, setApi, plugins, className, children, ...props }, ref) => {
916
+ const [carouselRef, api] = useEmblaCarousel(
917
+ {
918
+ ...opts,
919
+ axis: orientation === "horizontal" ? "x" : "y"
920
+ },
921
+ plugins
922
+ );
923
+ const [canScrollPrev, setCanScrollPrev] = useState(false);
924
+ const [canScrollNext, setCanScrollNext] = useState(false);
925
+ const onSelect = useCallback((api2) => {
926
+ if (!api2) return;
927
+ setCanScrollPrev(api2.canScrollPrev());
928
+ setCanScrollNext(api2.canScrollNext());
929
+ }, []);
930
+ const scrollPrev = useCallback(() => api?.scrollPrev(), [api]);
931
+ const scrollNext = useCallback(() => api?.scrollNext(), [api]);
932
+ const handleKeyDown = useCallback(
933
+ ({ key, preventDefault }) => {
934
+ if (key === "ArrowLeft") {
935
+ scrollPrev();
936
+ } else if (key === "ArrowRight") {
937
+ scrollNext();
1179
938
  }
1180
- );
1181
- }
1182
- )
939
+ preventDefault();
940
+ },
941
+ [scrollPrev, scrollNext]
942
+ );
943
+ useEffect(() => {
944
+ if (!api || !setApi) return;
945
+ setApi(api);
946
+ }, [api, setApi]);
947
+ useEffect(() => {
948
+ if (!api) return;
949
+ onSelect(api);
950
+ api.on("reInit", onSelect);
951
+ api.on("select", onSelect);
952
+ api?.off("select", onSelect);
953
+ }, [api, onSelect]);
954
+ return /* @__PURE__ */ jsx13(
955
+ CarouselContext.Provider,
956
+ {
957
+ value: {
958
+ carouselRef,
959
+ api,
960
+ opts,
961
+ orientation: orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
962
+ scrollPrev,
963
+ scrollNext,
964
+ canScrollPrev,
965
+ canScrollNext
966
+ },
967
+ children: /* @__PURE__ */ jsx13(
968
+ "div",
969
+ {
970
+ ref,
971
+ onKeyDownCapture: handleKeyDown,
972
+ className: cn("relative", className),
973
+ "aria-roledescription": "carousel",
974
+ ...props,
975
+ children
976
+ }
977
+ )
978
+ }
979
+ );
980
+ }
1183
981
  );
1184
- Flex.displayName = "Flex";
1185
- var Flex_default = Flex;
1186
-
1187
- // packages/Molecules/CartSheet/index.tsx
1188
- import { memo as memo5 } from "react";
982
+ Carousel.displayName = "Carousel";
983
+ var CarouselContent = forwardRef7(
984
+ ({ className, ...props }, ref) => {
985
+ const { carouselRef, orientation } = useCarousel();
986
+ return /* @__PURE__ */ jsx13("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx13(
987
+ "div",
988
+ {
989
+ ref,
990
+ className: cn(
991
+ "flex",
992
+ orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
993
+ className
994
+ ),
995
+ ...props
996
+ }
997
+ ) });
998
+ }
999
+ );
1000
+ CarouselContent.displayName = "CarouselContent";
1001
+ var CarouselItem = forwardRef7(
1002
+ ({ className, ...props }, ref) => {
1003
+ const { orientation } = useCarousel();
1004
+ return /* @__PURE__ */ jsx13(
1005
+ "div",
1006
+ {
1007
+ ref,
1008
+ "aria-roledescription": "slide",
1009
+ className: cn(
1010
+ "min-w-0 shrink-0 grow-0 basis-full",
1011
+ orientation === "horizontal" ? "pl-4" : "pt-4",
1012
+ className
1013
+ ),
1014
+ ...props
1015
+ }
1016
+ );
1017
+ }
1018
+ );
1019
+ CarouselItem.displayName = "CarouselItem";
1020
+ var CarouselPrevious = forwardRef7(
1021
+ ({ className, variant = "outline", children, ...props }, ref) => {
1022
+ const { orientation, scrollPrev, canScrollPrev } = useCarousel();
1023
+ return /* @__PURE__ */ jsx13(
1024
+ Button_default,
1025
+ {
1026
+ ref,
1027
+ variant,
1028
+ className: cn(
1029
+ "absolute size-8 rounded-full",
1030
+ orientation === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
1031
+ className
1032
+ ),
1033
+ disabled: !canScrollPrev,
1034
+ onClick: scrollPrev,
1035
+ ...props,
1036
+ children: children ?? /* @__PURE__ */ jsxs9(Fragment, { children: [
1037
+ /* @__PURE__ */ jsx13(ArrowLeft, { className: "size-4" }),
1038
+ /* @__PURE__ */ jsx13("span", { className: "sr-only", children: "Previous slide" })
1039
+ ] })
1040
+ }
1041
+ );
1042
+ }
1043
+ );
1044
+ CarouselPrevious.displayName = "CarouselPrevious";
1045
+ var CarouselNext = forwardRef7(
1046
+ ({ className, variant = "outline", children, ...props }, ref) => {
1047
+ const { orientation, scrollNext, canScrollNext } = useCarousel();
1048
+ return /* @__PURE__ */ jsx13(
1049
+ Button_default,
1050
+ {
1051
+ ref,
1052
+ variant,
1053
+ className: cn(
1054
+ "absolute size-8 rounded-full",
1055
+ orientation === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
1056
+ className
1057
+ ),
1058
+ disabled: !canScrollNext,
1059
+ onClick: scrollNext,
1060
+ ...props,
1061
+ children: children ?? /* @__PURE__ */ jsxs9(Fragment, { children: [
1062
+ /* @__PURE__ */ jsx13(ArrowRight, { className: "size-4" }),
1063
+ /* @__PURE__ */ jsx13("span", { className: "sr-only", children: "Next slide" })
1064
+ ] })
1065
+ }
1066
+ );
1067
+ }
1068
+ );
1069
+ CarouselNext.displayName = "CarouselNext";
1189
1070
 
1190
- // packages/Atoms/Badge/index.tsx
1191
- import { memo as memo3 } from "react";
1192
- import { jsx as jsx11, jsxs as jsxs7 } from "react/jsx-runtime";
1193
- var Badge = memo3(({ isNew, className, children, ...props }) => {
1194
- return /* @__PURE__ */ jsxs7("div", { className: cn("relative size-fit overflow-y-visible p-1", className), ...props, children: [
1195
- children,
1196
- isNew && /* @__PURE__ */ jsxs7("div", { className: "absolute left-full top-0 flex size-fit -translate-x-1/2 -translate-y-1/2 items-center justify-center rounded-full bg-ui-destructive-500", children: [
1197
- /* @__PURE__ */ jsx11("div", { className: "z-10 size-3" }),
1198
- /* @__PURE__ */ jsx11("span", { className: "absolute -z-10 size-3/4 animate-ping rounded-full bg-ui-destructive-500" })
1199
- ] })
1200
- ] });
1201
- });
1202
- Badge.displayName = "Badge";
1203
- var Badge_default = Badge;
1071
+ // packages/Atoms/Command/index.tsx
1072
+ import * as React4 from "react";
1204
1073
 
1205
- // packages/Atoms/Separator/index.tsx
1206
- import { forwardRef as forwardRef6 } from "react";
1207
- import * as SeparatorPrimitive from "@radix-ui/react-separator";
1208
- import { jsx as jsx12 } from "react/jsx-runtime";
1209
- var Separator = forwardRef6(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx12(
1210
- SeparatorPrimitive.Root,
1074
+ // packages/Atoms/Dialog/index.tsx
1075
+ import * as React3 from "react";
1076
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
1077
+ import { X } from "lucide-react";
1078
+ import { jsx as jsx14, jsxs as jsxs10 } from "react/jsx-runtime";
1079
+ var Dialog = DialogPrimitive.Root;
1080
+ var DialogPortal = DialogPrimitive.Portal;
1081
+ var DialogOverlay = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx14(
1082
+ DialogPrimitive.Overlay,
1211
1083
  {
1212
- ref,
1213
- decorative,
1214
- orientation,
1084
+ ref: reference,
1215
1085
  className: cn(
1216
- "shrink-0 bg-ui-border-500",
1217
- orientation === "horizontal" ? "h-px w-full" : "h-full w-px",
1086
+ "fixed inset-0 z-50 bg-black/80",
1087
+ "data-[state=open]:animate-in",
1088
+ "data-[state=closed]:animate-out",
1089
+ "data-[state=closed]:fade-out-0",
1090
+ "data-[state=open]:fade-in-0",
1218
1091
  className
1219
1092
  ),
1220
1093
  ...props
1221
1094
  }
1222
1095
  ));
1223
- Separator.displayName = SeparatorPrimitive.Root.displayName;
1224
-
1225
- // packages/Atoms/Sheet/index.tsx
1226
- import { forwardRef as forwardRef7 } from "react";
1227
-
1228
- // packages/Atoms/XButton/index.tsx
1229
- import { memo as memo4 } from "react";
1230
-
1231
- // packages/Icons/Lucide2XIcon.tsx
1232
- import { jsx as jsx13 } from "react/jsx-runtime";
1233
- var Lucide2XIcon = (props) => {
1234
- const { color, size } = props;
1235
- return /* @__PURE__ */ jsx13(
1236
- "svg",
1096
+ DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
1097
+ var DialogContent = React3.forwardRef(({ className, children, ...props }, reference) => /* @__PURE__ */ jsxs10(DialogPortal, { children: [
1098
+ /* @__PURE__ */ jsx14(DialogOverlay, {}),
1099
+ /* @__PURE__ */ jsxs10(
1100
+ DialogPrimitive.Content,
1237
1101
  {
1238
- xmlns: "http://www.w3.org/2000/svg",
1239
- width: size ?? DEFAULT_ICON_SIZE,
1240
- height: size ?? DEFAULT_ICON_SIZE,
1241
- viewBox: "0 0 16 16",
1242
- fill: "none",
1102
+ ref: reference,
1103
+ className: cn(
1104
+ "fixed",
1105
+ "left-[50%] top-[50%] z-50",
1106
+ "grid w-full max-w-lg",
1107
+ "rounded bg-ui-surface-50",
1108
+ "translate-x-[-50%] translate-y-[-50%]",
1109
+ "transition-all duration-300",
1110
+ "data-[state=open]:animate-in",
1111
+ "data-[state=open]:fade-in-0",
1112
+ "data-[state=open]:zoom-in-95",
1113
+ "data-[state=open]:slide-in-from-left-1/2",
1114
+ "data-[state=open]:slide-in-from-top-[48%]",
1115
+ "data-[state=closed]:animate-out",
1116
+ "data-[state=closed]:fade-out-0",
1117
+ "data-[state=closed]:zoom-out-[0.8]",
1118
+ "data-[state=closed]:slide-out-to-left-1/2",
1119
+ "data-[state=closed]:slide-out-to-top-[80%]",
1120
+ className
1121
+ ),
1243
1122
  ...props,
1244
- children: /* @__PURE__ */ jsx13(
1245
- "path",
1246
- {
1247
- d: "M12 4L4 12M4 4L12 12",
1248
- stroke: color ?? "#434349",
1249
- strokeWidth: "1.5",
1250
- strokeLinecap: "round",
1251
- strokeLinejoin: "round"
1252
- }
1253
- )
1123
+ children: [
1124
+ children,
1125
+ /* @__PURE__ */ jsxs10(DialogPrimitive.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none", children: [
1126
+ /* @__PURE__ */ jsx14(X, { className: "size-4" }),
1127
+ /* @__PURE__ */ jsx14("span", { className: "sr-only", children: "Close" })
1128
+ ] })
1129
+ ]
1254
1130
  }
1255
- );
1256
- };
1257
- Lucide2XIcon.displayName = "Lucide2XIcon";
1258
- var Lucide2XIcon_default = Lucide2XIcon;
1131
+ )
1132
+ ] }));
1133
+ DialogContent.displayName = DialogPrimitive.Content.displayName;
1134
+ var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ jsx14("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
1135
+ DialogHeader.displayName = "DialogHeader";
1136
+ var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsx14(
1137
+ "div",
1138
+ {
1139
+ className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
1140
+ ...props
1141
+ }
1142
+ );
1143
+ DialogFooter.displayName = "DialogFooter";
1144
+ var DialogTitle = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx14(
1145
+ DialogPrimitive.Title,
1146
+ {
1147
+ ref: reference,
1148
+ className: cn("text-lg font-semibold leading-none tracking-tight", className),
1149
+ ...props
1150
+ }
1151
+ ));
1152
+ DialogTitle.displayName = DialogPrimitive.Title.displayName;
1153
+ var DialogDescription = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx14(
1154
+ DialogPrimitive.Description,
1155
+ {
1156
+ ref: reference,
1157
+ className: cn("text-sm text-ui-text-400", className),
1158
+ ...props
1159
+ }
1160
+ ));
1161
+ DialogDescription.displayName = DialogPrimitive.Description.displayName;
1259
1162
 
1260
- // packages/Atoms/XButton/index.tsx
1261
- import { jsx as jsx14 } from "react/jsx-runtime";
1262
- var XButton = ({ isButton = true, isDisabled, onClick }) => {
1263
- const Comp = isButton ? "button" : "div";
1264
- return /* @__PURE__ */ jsx14(
1265
- Comp,
1163
+ // packages/Atoms/Command/index.tsx
1164
+ import { VisuallyHidden } from "@radix-ui/react-visually-hidden";
1165
+ import { Command as CommandPrimitive } from "cmdk";
1166
+ import { Search } from "lucide-react";
1167
+ import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
1168
+ var Command = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx15(
1169
+ CommandPrimitive,
1170
+ {
1171
+ ref: reference,
1172
+ className: cn(
1173
+ "flex h-full w-full flex-col overflow-hidden rounded-md bg-ui-white text-ui-text-800",
1174
+ className
1175
+ ),
1176
+ ...props
1177
+ }
1178
+ ));
1179
+ Command.displayName = CommandPrimitive.displayName;
1180
+ var CommandDialog = ({ children, ...props }) => {
1181
+ return /* @__PURE__ */ jsxs11(Dialog, { ...props, children: [
1182
+ /* @__PURE__ */ jsx15(DialogContent, { className: "p-0 shadow-lg", children: /* @__PURE__ */ jsx15(
1183
+ Command,
1184
+ {
1185
+ className: cn(
1186
+ "bg-neutral-50",
1187
+ "[&_[cmdk-group-heading]]:px-0",
1188
+ "[&_[cmdk-group-heading]]:font-medium",
1189
+ "[&_[cmdk-group-heading]]:text-ui-text-800",
1190
+ "[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0",
1191
+ "[&_[cmdk-group]]:px-2",
1192
+ "[&_[cmdk-input-wrapper]_svg]:size-5",
1193
+ "[&_[cmdk-input]]:h-12",
1194
+ "[&_[cmdk-item]]:px-2",
1195
+ "[&_[cmdk-item]]:py-3",
1196
+ "[&_[cmdk-item]_svg]:size-5"
1197
+ ),
1198
+ children
1199
+ }
1200
+ ) }),
1201
+ /* @__PURE__ */ jsx15(VisuallyHidden, { children: /* @__PURE__ */ jsx15(DialogTitle, {}) })
1202
+ ] });
1203
+ };
1204
+ var CommandInput = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsxs11("div", { className: "flex items-center border-b px-3", children: [
1205
+ /* @__PURE__ */ jsx15(Search, { className: "mr-2 size-4 shrink-0 opacity-50" }),
1206
+ /* @__PURE__ */ jsx15(
1207
+ CommandPrimitive.Input,
1266
1208
  {
1267
- disabled: isDisabled,
1209
+ ref: reference,
1268
1210
  className: cn(
1269
- "flex size-5 items-center justify-center",
1270
- "rounded-full",
1271
- "text-ui-text-500",
1272
- "enabled:hover:bg-ui-surface-100",
1273
- "enabled:hover:text-ui-text-700",
1274
- "enabled:active:bg-ui-surface-200",
1275
- "enabled:active:text-ui-text-900",
1276
- "disabled:cursor-not-allowed disabled:opacity-30",
1277
- "transition-colors duration-200"
1211
+ "flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none",
1212
+ "placeholder:!text-ui-text-300",
1213
+ "disabled:cursor-not-allowed",
1214
+ "disabled:opacity-50",
1215
+ className
1278
1216
  ),
1279
- onClick,
1280
- children: /* @__PURE__ */ jsx14(Lucide2XIcon_default, { size: 14, color: "currentColor" })
1217
+ ...props
1281
1218
  }
1282
- );
1283
- };
1284
- var XButton_default = memo4(XButton);
1285
-
1286
- // packages/Atoms/Sheet/index.tsx
1287
- import * as SheetPrimitive from "@radix-ui/react-dialog";
1288
- import { cva as cva5 } from "class-variance-authority";
1289
- import { jsx as jsx15, jsxs as jsxs8 } from "react/jsx-runtime";
1290
- var Sheet = SheetPrimitive.Root;
1291
- var SheetTrigger = SheetPrimitive.Trigger;
1292
- var SheetPortal = SheetPrimitive.Portal;
1293
- var SheetOverlay = forwardRef7(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(
1294
- SheetPrimitive.Overlay,
1219
+ )
1220
+ ] }));
1221
+ CommandInput.displayName = CommandPrimitive.Input.displayName;
1222
+ var CommandList = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx15(
1223
+ CommandPrimitive.List,
1224
+ {
1225
+ ref: reference,
1226
+ className: cn("max-h-[300px] overflow-y-auto overflow-x-hidden", className),
1227
+ ...props
1228
+ }
1229
+ ));
1230
+ CommandList.displayName = CommandPrimitive.List.displayName;
1231
+ var CommandEmpty = React4.forwardRef((props, reference) => /* @__PURE__ */ jsx15(CommandPrimitive.Empty, { ref: reference, className: "py-6 text-center text-sm", ...props }));
1232
+ CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
1233
+ var CommandGroup = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx15(
1234
+ CommandPrimitive.Group,
1295
1235
  {
1236
+ ref: reference,
1296
1237
  className: cn(
1297
- "fixed inset-0 z-50",
1298
- "bg-black/20",
1299
- "data-[state=open]:animate-in",
1300
- "data-[state=closed]:animate-out",
1301
- "data-[state=closed]:fade-out-0",
1302
- "data-[state=open]:fade-in-0",
1238
+ "overflow-hidden p-1 text-ui-text-800",
1239
+ "[&_[cmdk-group-heading]]:px-2",
1240
+ "[&_[cmdk-group-heading]]:py-1.5",
1241
+ "[&_[cmdk-group-heading]]:text-xs",
1242
+ "[&_[cmdk-group-heading]]:font-medium",
1243
+ "[&_[cmdk-group-heading]]:text-ui-text-600",
1303
1244
  className
1304
1245
  ),
1305
- ...props,
1306
- ref
1246
+ ...props
1307
1247
  }
1308
1248
  ));
1309
- SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
1310
- var sheetVariants = cva5(
1311
- "fixed z-50 gap-4 bg-ui-surface-50 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",
1249
+ CommandGroup.displayName = CommandPrimitive.Group.displayName;
1250
+ var CommandSeparator = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx15(
1251
+ CommandPrimitive.Separator,
1312
1252
  {
1313
- variants: {
1314
- side: {
1315
- top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
1316
- bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
1317
- left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
1318
- right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
1319
- }
1320
- },
1321
- defaultVariants: {
1322
- side: "right"
1323
- }
1253
+ ref: reference,
1254
+ className: cn("bg-border -mx-1 h-px", className),
1255
+ ...props
1324
1256
  }
1325
- );
1326
- var SheetContent = forwardRef7(
1327
- ({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs8(SheetPortal, { children: [
1328
- /* @__PURE__ */ jsx15(SheetOverlay, {}),
1329
- /* @__PURE__ */ jsxs8(
1330
- SheetPrimitive.Content,
1257
+ ));
1258
+ CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
1259
+ var CommandItem = React4.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx15(
1260
+ CommandPrimitive.Item,
1261
+ {
1262
+ ref: reference,
1263
+ className: cn(
1264
+ "relative flex cursor-default select-none items-center gap-x-1 rounded-lg px-2 py-1.5 text-sm outline-none",
1265
+ "data-[selected=true]:text-ui-text-800",
1266
+ "data-[disabled=true]:pointer-events-none",
1267
+ "data-[disabled=true]:opacity-50",
1268
+ "hover:cursor-pointer hover:bg-ui-surface-100",
1269
+ "transition-color duration-150 ease-in-out",
1270
+ className
1271
+ ),
1272
+ ...props
1273
+ }
1274
+ ));
1275
+ CommandItem.displayName = CommandPrimitive.Item.displayName;
1276
+ var CommandShortcut = ({ className, ...props }) => {
1277
+ return /* @__PURE__ */ jsx15(
1278
+ "span",
1279
+ {
1280
+ className: cn("ml-auto text-xs tracking-widest text-ui-text-400", className),
1281
+ ...props
1282
+ }
1283
+ );
1284
+ };
1285
+ CommandShortcut.displayName = "CommandShortcut";
1286
+
1287
+ // packages/Atoms/DropdownMenu/index.tsx
1288
+ import React5 from "react";
1289
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
1290
+ import { motion } from "framer-motion";
1291
+ import { Check, Circle } from "lucide-react";
1292
+ import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
1293
+ var { Root: DropdownMenu } = DropdownMenuPrimitive;
1294
+ var { Group: DropdownMenuGroup } = DropdownMenuPrimitive;
1295
+ var { Portal: DropdownMenuPortal } = DropdownMenuPrimitive;
1296
+ var { Sub: DropdownMenuSub } = DropdownMenuPrimitive;
1297
+ var { RadioGroup: DropdownMenuRadioGroup } = DropdownMenuPrimitive;
1298
+ var DropdownMenuTrigger = React5.forwardRef(({ className = "", children, ...props }, reference) => /* @__PURE__ */ jsx16(
1299
+ motion.div,
1300
+ {
1301
+ initial: {
1302
+ opacity: 0,
1303
+ scale: 0.8
1304
+ },
1305
+ animate: {
1306
+ opacity: 1,
1307
+ scale: 1
1308
+ },
1309
+ whileHover: {
1310
+ opacity: 0.8
1311
+ },
1312
+ className: "rounded-lg",
1313
+ children: /* @__PURE__ */ jsx16(
1314
+ DropdownMenuPrimitive.Trigger,
1331
1315
  {
1332
- ref,
1333
- className: cn(sheetVariants({ side }), className),
1334
1316
  ...props,
1335
- children: [
1336
- children,
1337
- /* @__PURE__ */ jsx15(
1338
- SheetPrimitive.Close,
1339
- {
1340
- className: cn(
1341
- "absolute right-4 top-4",
1342
- "rounded-full",
1343
- "enabled:hover:bg-ui-surface-100",
1344
- "enabled:hover:text-ui-text-700",
1345
- "enabled:active:bg-ui-surface-200",
1346
- "enabled:active:text-ui-text-900"
1347
- ),
1348
- children: /* @__PURE__ */ jsx15(XButton_default, { isButton: false })
1349
- }
1350
- )
1351
- ]
1317
+ ref: reference,
1318
+ className: cn(
1319
+ "flex select-none gap-x-2 overflow-hidden rounded-lg px-2 py-1 outline-none",
1320
+ className
1321
+ ),
1322
+ children
1352
1323
  }
1353
1324
  )
1354
- ] })
1355
- );
1356
- SheetContent.displayName = SheetPrimitive.Content.displayName;
1357
- var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ jsx15("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
1358
- SheetHeader.displayName = "SheetHeader";
1359
- var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ jsx15(
1360
- "div",
1325
+ }
1326
+ ));
1327
+ DropdownMenuTrigger.displayName = DropdownMenuPrimitive.Trigger.displayName;
1328
+ var DropdownMenuSubTrigger = React5.forwardRef(({ className, inset, children, ...props }, reference) => /* @__PURE__ */ jsx16(
1329
+ DropdownMenuPrimitive.SubTrigger,
1361
1330
  {
1362
- className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
1363
- ...props
1331
+ ref: reference,
1332
+ className: cn(
1333
+ "flex cursor-default select-none items-center rounded-lg px-2 py-1.5 text-ui-p font-semibold outline-none",
1334
+ "hover:bg-neutral-200",
1335
+ "data-[state=open]:bg-neutral-200",
1336
+ inset && "pl-8",
1337
+ className
1338
+ ),
1339
+ ...props,
1340
+ children
1364
1341
  }
1365
- );
1366
- SheetFooter.displayName = "SheetFooter";
1367
- var SheetTitle = forwardRef7(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(
1368
- SheetPrimitive.Title,
1342
+ ));
1343
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
1344
+ var DropdownMenuSubContent = React5.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx16(
1345
+ DropdownMenuPrimitive.SubContent,
1369
1346
  {
1370
- ref,
1371
- className: cn("text-lg font-semibold text-ui-text-900", className),
1347
+ ref: reference,
1348
+ className: cn(
1349
+ "z-50 min-w-32 overflow-hidden rounded-md border p-1 shadow-lg",
1350
+ "data-[state=open]:animate-in",
1351
+ "data-[state=open]:fade-in-0",
1352
+ "data-[state=open]:zoom-in-95",
1353
+ "data-[state=closed]:animate-out",
1354
+ "data-[state=closed]:fade-out-0",
1355
+ "data-[state=closed]:zoom-out-95",
1356
+ "data-[side=top]:slide-in-from-bottom-2",
1357
+ "data-[side=right]:slide-in-from-left-2",
1358
+ "data-[side=bottom]:slide-in-from-top-2",
1359
+ "data-[side=left]:slide-in-from-right-2",
1360
+ className
1361
+ ),
1372
1362
  ...props
1373
1363
  }
1374
1364
  ));
1375
- SheetTitle.displayName = SheetPrimitive.Title.displayName;
1376
- var SheetDescription = forwardRef7(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(
1377
- SheetPrimitive.Description,
1365
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
1366
+ var DropdownMenuContent = React5.forwardRef(({ className, sideOffset = 4, ...props }, reference) => /* @__PURE__ */ jsx16(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx16(
1367
+ DropdownMenuPrimitive.Content,
1378
1368
  {
1379
- ref,
1380
- className: cn("text-xs text-ui-text-500", className),
1369
+ ...props,
1370
+ ref: reference,
1371
+ sideOffset,
1372
+ className: cn(
1373
+ "z-50 min-w-32 overflow-hidden rounded-xl bg-ui-surface-50 py-2 shadow-ui-dialog duration-300",
1374
+ "data-[state=open]:animate-in",
1375
+ "data-[state=open]:fade-in-0",
1376
+ "data-[state=open]:zoom-in-95",
1377
+ "data-[state=closed]:animate-out",
1378
+ "data-[state=closed]:fade-out-0",
1379
+ "data-[state=closed]:zoom-out-95",
1380
+ "data-[side=top]:slide-in-from-bottom-2",
1381
+ "data-[side=right]:slide-in-from-left-2",
1382
+ "data-[side=bottom]:slide-in-from-top-2",
1383
+ "data-[side=left]:slide-in-from-right-2",
1384
+ className
1385
+ )
1386
+ }
1387
+ ) }));
1388
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
1389
+ var DropdownMenuItem = React5.forwardRef(({ className, inset, ...props }, reference) => /* @__PURE__ */ jsx16(
1390
+ DropdownMenuPrimitive.Item,
1391
+ {
1392
+ ref: reference,
1393
+ className: cn(
1394
+ "hover:cursor-pointer hover:bg-ui-surface-100 hover:text-ui-text-900",
1395
+ "relative flex cursor-default select-none items-center gap-x-2 bg-ui-surface-50 px-3 py-2 !text-ui-note font-medium text-ui-text-900 outline-none",
1396
+ "transition-colors duration-300",
1397
+ "data-[disabled]:opacity-50",
1398
+ "data-[disabled]:pointer-events-none",
1399
+ inset && "pl-8",
1400
+ className
1401
+ ),
1381
1402
  ...props
1382
1403
  }
1383
1404
  ));
1384
- SheetDescription.displayName = SheetPrimitive.Description.displayName;
1385
-
1386
- // packages/Atoms/Tabs/index.tsx
1387
- import { forwardRef as forwardRef8 } from "react";
1388
- import * as TabsPrimitive from "@radix-ui/react-tabs";
1389
- import { jsx as jsx16 } from "react/jsx-runtime";
1390
- var Tabs = TabsPrimitive.Root;
1391
- var TabsList = forwardRef8(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
1392
- TabsPrimitive.List,
1405
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
1406
+ var DropdownMenuCheckboxItem = React5.forwardRef(({ className, children, checked, ...props }, reference) => /* @__PURE__ */ jsxs12(
1407
+ DropdownMenuPrimitive.CheckboxItem,
1393
1408
  {
1394
- ref,
1409
+ ref: reference,
1395
1410
  className: cn(
1396
- "inline-flex h-10 items-center justify-center rounded-md bg-ui-surface-100 p-1 text-ui-text-800",
1411
+ "focus:bg-ui-surface-100 focus:text-ui-text-900",
1412
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none",
1413
+ "transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1397
1414
  className
1398
1415
  ),
1399
- ...props
1416
+ checked,
1417
+ ...props,
1418
+ children: [
1419
+ /* @__PURE__ */ jsx16("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx16(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx16(Check, { className: "h-4 w-4" }) }) }),
1420
+ children
1421
+ ]
1400
1422
  }
1401
1423
  ));
1402
- TabsList.displayName = TabsPrimitive.List.displayName;
1403
- var TabsTrigger = forwardRef8(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
1404
- TabsPrimitive.Trigger,
1424
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
1425
+ var DropdownMenuRadioItem = React5.forwardRef(({ className, children, ...props }, reference) => /* @__PURE__ */ jsxs12(
1426
+ DropdownMenuPrimitive.RadioItem,
1405
1427
  {
1406
- ref,
1428
+ ref: reference,
1407
1429
  className: cn(
1408
- "inline-flex items-center justify-center",
1409
- "whitespace-nowrap rounded-sm",
1410
- "px-3 py-1.5 text-sm font-semibold",
1411
- "ring-offset-ui-surface-50",
1412
- "transition-all",
1413
- "focus-visible:outline-none",
1414
- "focus-visible:ring-2",
1415
- "focus-visible:ring-offset-2",
1416
- "disabled:pointer-events-none",
1417
- "disabled:opacity-50",
1418
- "data-[state=active]:bg-ui-surface-50",
1419
- "data-[state=active]:text-ui-text-900",
1420
- "data-[state=active]:shadow-ui-flat",
1430
+ "focus:bg-ui-surface-100 focus:text-ui-text-900",
1431
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none",
1432
+ "transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1421
1433
  className
1422
1434
  ),
1435
+ ...props,
1436
+ children: [
1437
+ /* @__PURE__ */ jsx16("span", { className: "absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx16(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx16(Circle, { className: "szie-2 fill-current" }) }) }),
1438
+ children
1439
+ ]
1440
+ }
1441
+ ));
1442
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
1443
+ var DropdownMenuLabel = React5.forwardRef(({ className, inset, ...props }, reference) => /* @__PURE__ */ jsx16(
1444
+ DropdownMenuPrimitive.Label,
1445
+ {
1446
+ ref: reference,
1447
+ className: cn("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className),
1448
+ ...props
1449
+ }
1450
+ ));
1451
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
1452
+ var DropdownMenuSeparator = React5.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx16(
1453
+ DropdownMenuPrimitive.Separator,
1454
+ {
1455
+ ref: reference,
1456
+ className: cn("-mx-1 my-1 h-px bg-neutral-300", className),
1423
1457
  ...props
1424
1458
  }
1425
- ));
1426
- TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
1427
- var TabsContent = forwardRef8(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
1428
- TabsPrimitive.Content,
1429
- {
1430
- ref,
1431
- className: cn("mt-2 bg-ui-surface-50 ring-offset-4 focus-visible:outline-none", className),
1432
- ...props
1459
+ ));
1460
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
1461
+ var DropdownMenuShortcut = ({ className, ...props }) => {
1462
+ return /* @__PURE__ */ jsx16("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
1463
+ };
1464
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
1465
+
1466
+ // packages/Atoms/Form/index.tsx
1467
+ import * as React7 from "react";
1468
+ import {
1469
+ Controller,
1470
+ FormProvider,
1471
+ useFormContext
1472
+ } from "react-hook-form";
1473
+
1474
+ // packages/Atoms/Label/index.tsx
1475
+ import * as React6 from "react";
1476
+ import * as LabelPrimitive from "@radix-ui/react-label";
1477
+ import { cva as cva3 } from "class-variance-authority";
1478
+ import { jsx as jsx17 } from "react/jsx-runtime";
1479
+ var labelVariants = cva3(
1480
+ "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
1481
+ );
1482
+ var Label2 = React6.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx17(LabelPrimitive.Root, { ref: reference, className: cn(labelVariants(), className), ...props }));
1483
+ Label2.displayName = LabelPrimitive.Root.displayName;
1484
+
1485
+ // packages/Atoms/Form/index.tsx
1486
+ import { Slot as Slot3 } from "@radix-ui/react-slot";
1487
+ import { jsx as jsx18 } from "react/jsx-runtime";
1488
+ var FormFieldContext = React7.createContext({});
1489
+ var useFormField = () => {
1490
+ const fieldContext = React7.useContext(FormFieldContext);
1491
+ const itemContext = React7.useContext(FormItemContext);
1492
+ const { getFieldState, formState } = useFormContext();
1493
+ const fieldState = getFieldState(fieldContext.name, formState);
1494
+ if (!fieldContext) {
1495
+ throw new Error("useFormField should be used within <FormField>");
1496
+ }
1497
+ const { id } = itemContext;
1498
+ return {
1499
+ id,
1500
+ name: fieldContext.name,
1501
+ formItemId: `${id}-form-item`,
1502
+ formDescriptionId: `${id}-form-item-description`,
1503
+ formMessageId: `${id}-form-item-message`,
1504
+ ...fieldState
1505
+ };
1506
+ };
1507
+ var FormItemContext = React7.createContext({});
1508
+ var FormItem = React7.forwardRef(
1509
+ ({ className, ...props }, ref) => {
1510
+ const id = React7.useId();
1511
+ return /* @__PURE__ */ jsx18(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx18("div", { ref, className: cn("space-y-2", className), ...props }) });
1512
+ }
1513
+ );
1514
+ FormItem.displayName = "FormItem";
1515
+ var FormLabel = React7.forwardRef(({ className, ...props }, ref) => {
1516
+ const { error, formItemId } = useFormField();
1517
+ return /* @__PURE__ */ jsx18(
1518
+ Label2,
1519
+ {
1520
+ ref,
1521
+ className: cn(error && "text-ui-destructive-500", className),
1522
+ htmlFor: formItemId,
1523
+ ...props
1524
+ }
1525
+ );
1526
+ });
1527
+ FormLabel.displayName = "FormLabel";
1528
+ var FormControl = React7.forwardRef(({ ...props }, ref) => {
1529
+ const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
1530
+ return /* @__PURE__ */ jsx18(
1531
+ Slot3,
1532
+ {
1533
+ ref,
1534
+ id: formItemId,
1535
+ "aria-describedby": !error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`,
1536
+ "aria-invalid": !!error,
1537
+ ...props
1538
+ }
1539
+ );
1540
+ });
1541
+ FormControl.displayName = "FormControl";
1542
+ var FormDescription = React7.forwardRef(({ className, ...props }, ref) => {
1543
+ const { formDescriptionId } = useFormField();
1544
+ return /* @__PURE__ */ jsx18(
1545
+ "p",
1546
+ {
1547
+ ref,
1548
+ id: formDescriptionId,
1549
+ className: cn("text-sm text-ui-text-500", className),
1550
+ ...props
1551
+ }
1552
+ );
1553
+ });
1554
+ FormDescription.displayName = "FormDescription";
1555
+ var FormMessage = React7.forwardRef(({ className, children, ...props }, ref) => {
1556
+ const { error, formMessageId } = useFormField();
1557
+ const body = error ? String(error?.message) : children;
1558
+ if (!body) {
1559
+ return null;
1560
+ }
1561
+ return /* @__PURE__ */ jsx18(
1562
+ "p",
1563
+ {
1564
+ ref,
1565
+ id: formMessageId,
1566
+ className: cn("text-sm font-medium text-ui-destructive-500", className),
1567
+ ...props,
1568
+ children: body
1569
+ }
1570
+ );
1571
+ });
1572
+ FormMessage.displayName = "FormMessage";
1573
+
1574
+ // packages/Atoms/Navbar/index.tsx
1575
+ import { forwardRef as forwardRef12, memo as memo3 } from "react";
1576
+ import { jsx as jsx19, jsxs as jsxs13 } from "react/jsx-runtime";
1577
+ var NavbarItem = memo3(
1578
+ forwardRef12(
1579
+ ({ enableLeftIcon = false, isActive = false, icon, className, children, ...props }, reference) => {
1580
+ return /* @__PURE__ */ jsxs13(
1581
+ "div",
1582
+ {
1583
+ ref: reference,
1584
+ className: cn(
1585
+ ["group"],
1586
+ ["relative flex size-fit items-center gap-1 overflow-hidden px-2 py-4"],
1587
+ ["select-none !text-ui-note font-semibold text-ui-text-900"],
1588
+ ["hover:cursor-pointer"],
1589
+ {
1590
+ "text-ui-note text-ui-primary-default": isActive
1591
+ },
1592
+ className
1593
+ ),
1594
+ ...props,
1595
+ children: [
1596
+ /* @__PURE__ */ jsx19("div", { className: "mb-0.5", children: icon }),
1597
+ /* @__PURE__ */ jsx19("p", { children }),
1598
+ Boolean(enableLeftIcon) && /* @__PURE__ */ jsx19(
1599
+ Lucide2ChevronDownIcon_default,
1600
+ {
1601
+ className: cn(
1602
+ ["mb-0.5 size-4"],
1603
+ ["transition duration-300 ease-in-out"],
1604
+ ["group-hover:rotate-180"]
1605
+ ),
1606
+ color: isActive ? "currentColor" : "#434349"
1607
+ }
1608
+ )
1609
+ ]
1610
+ }
1611
+ );
1612
+ }
1613
+ )
1614
+ );
1615
+ NavbarItem.displayName = "NavbarItem";
1616
+
1617
+ // packages/Atoms/QuantityBtn/index.tsx
1618
+ import {
1619
+ useCallback as useCallback2,
1620
+ useLayoutEffect,
1621
+ useMemo as useMemo4,
1622
+ useRef as useRef2,
1623
+ useState as useState2
1624
+ } from "react";
1625
+
1626
+ // packages/Icons/Lucide2MinusIcon.tsx
1627
+ import { jsx as jsx20 } from "react/jsx-runtime";
1628
+
1629
+ // packages/Icons/Lucide2PlusIcon.tsx
1630
+ import { jsx as jsx21 } from "react/jsx-runtime";
1631
+
1632
+ // packages/Layout/Box/index.tsx
1633
+ import { forwardRef as forwardRef13, memo as memo4, useMemo as useMemo2 } from "react";
1634
+
1635
+ // packages/Layout/Box/box.variant.ts
1636
+ import { cva as cva4 } from "class-variance-authority";
1637
+ var boxVariant = cva4("", {
1638
+ variants: {
1639
+ display: {
1640
+ block: "block",
1641
+ "inline-block": "inline-block",
1642
+ inline: "inline",
1643
+ none: "none"
1644
+ }
1645
+ },
1646
+ defaultVariants: {
1647
+ display: "block"
1648
+ }
1649
+ });
1650
+ var box_variant_default = boxVariant;
1651
+
1652
+ // packages/Layout/commons/index.ts
1653
+ import { cva as cva5 } from "class-variance-authority";
1654
+ var commonLayout = cva5("", {
1655
+ variants: {
1656
+ p: {
1657
+ "0": "p-0",
1658
+ "1": "p-1",
1659
+ "2": "p-2",
1660
+ "3": "p-3",
1661
+ "4": "p-4",
1662
+ "5": "p-5",
1663
+ "6": "p-6",
1664
+ "7": "p-7",
1665
+ "8": "p-8",
1666
+ "9": "p-9",
1667
+ "10": "p-10"
1668
+ },
1669
+ px: {
1670
+ "0": "px-0",
1671
+ "1": "px-1",
1672
+ "2": "px-2",
1673
+ "3": "px-3",
1674
+ "4": "px-4",
1675
+ "5": "px-5",
1676
+ "6": "px-6",
1677
+ "7": "px-7",
1678
+ "8": "px-8",
1679
+ "9": "px-9",
1680
+ "10": "px-10"
1681
+ },
1682
+ py: {
1683
+ "0": "py-0",
1684
+ "1": "py-1",
1685
+ "2": "py-2",
1686
+ "3": "py-3",
1687
+ "4": "py-4",
1688
+ "5": "py-5",
1689
+ "6": "py-6",
1690
+ "7": "py-7",
1691
+ "8": "py-8",
1692
+ "9": "py-9",
1693
+ "10": "py-10"
1694
+ },
1695
+ pt: {
1696
+ "0": "pt-0",
1697
+ "1": "pt-1",
1698
+ "2": "pt-2",
1699
+ "3": "pt-3",
1700
+ "4": "pt-4",
1701
+ "5": "pt-5",
1702
+ "6": "pt-6",
1703
+ "7": "pt-7",
1704
+ "8": "pt-8",
1705
+ "9": "pt-9",
1706
+ "10": "pt-10"
1707
+ },
1708
+ pr: {
1709
+ "0": "pr-0",
1710
+ "1": "pr-1",
1711
+ "2": "pr-2",
1712
+ "3": "pr-3",
1713
+ "4": "pr-4",
1714
+ "5": "pr-5",
1715
+ "6": "pr-6",
1716
+ "7": "pr-7",
1717
+ "8": "pr-8",
1718
+ "9": "pr-9",
1719
+ "10": "pr-10"
1720
+ },
1721
+ pb: {
1722
+ "0": "pb-0",
1723
+ "1": "pb-1",
1724
+ "2": "pb-2",
1725
+ "3": "pb-3",
1726
+ "4": "pb-4",
1727
+ "5": "pb-5",
1728
+ "6": "pb-6",
1729
+ "7": "pb-7",
1730
+ "8": "pb-8",
1731
+ "9": "pb-9",
1732
+ "10": "pb-10"
1733
+ },
1734
+ pl: {
1735
+ "0": "pl-0",
1736
+ "1": "pl-1",
1737
+ "2": "pl-2",
1738
+ "3": "pl-3",
1739
+ "4": "pl-4",
1740
+ "5": "pl-5",
1741
+ "6": "pl-6",
1742
+ "7": "pl-7",
1743
+ "8": "pl-8",
1744
+ "9": "pl-9",
1745
+ "10": "pl-10"
1746
+ },
1747
+ gap: {
1748
+ "0": "gap-0",
1749
+ "1": "gap-1",
1750
+ "2": "gap-2",
1751
+ "3": "gap-3",
1752
+ "4": "gap-4",
1753
+ "5": "gap-5",
1754
+ "6": "gap-6",
1755
+ "7": "gap-7",
1756
+ "8": "gap-8",
1757
+ "9": "gap-9",
1758
+ "10": "gap-10"
1759
+ },
1760
+ gapX: {
1761
+ "0": "gap-x-0",
1762
+ "1": "gap-x-1",
1763
+ "2": "gap-x-2",
1764
+ "3": "gap-x-3",
1765
+ "4": "gap-x-4",
1766
+ "5": "gap-x-5",
1767
+ "6": "gap-x-6",
1768
+ "7": "gap-x-7",
1769
+ "8": "gap-x-8",
1770
+ "9": "gap-x-9",
1771
+ "10": "gap-x-10"
1772
+ },
1773
+ gapY: {
1774
+ "0": "gap-y-0",
1775
+ "1": "gap-y-1",
1776
+ "2": "gap-y-2",
1777
+ "3": "gap-y-3",
1778
+ "4": "gap-y-4",
1779
+ "5": "gap-y-5",
1780
+ "6": "gap-y-6",
1781
+ "7": "gap-y-7",
1782
+ "8": "gap-y-8",
1783
+ "9": "gap-y-9",
1784
+ "10": "gap-y-10"
1785
+ },
1786
+ position: {
1787
+ static: "static",
1788
+ fixed: "fixed",
1789
+ absolute: "absolute",
1790
+ relative: "relative",
1791
+ sticky: "sticky"
1792
+ },
1793
+ top: {
1794
+ "0": "top-0",
1795
+ "1": "top-1",
1796
+ "2": "top-2",
1797
+ "3": "top-3",
1798
+ "4": "top-4",
1799
+ "5": "top-5",
1800
+ "6": "top-6",
1801
+ "7": "top-7",
1802
+ "8": "top-8",
1803
+ "9": "top-9",
1804
+ "-1": "-top-1",
1805
+ "-2": "-top-2",
1806
+ "-3": "-top-3",
1807
+ "-4": "-top-4",
1808
+ "-5": "-top-5",
1809
+ "-6": "-top-6",
1810
+ "-7": "-top-7",
1811
+ "-8": "-top-8",
1812
+ "-9": "-top-9"
1813
+ },
1814
+ right: {
1815
+ "0": "right-0",
1816
+ "1": "right-1",
1817
+ "2": "right-2",
1818
+ "3": "right-3",
1819
+ "4": "right-4",
1820
+ "5": "right-5",
1821
+ "6": "right-6",
1822
+ "7": "right-7",
1823
+ "8": "right-8",
1824
+ "9": "right-9",
1825
+ "-1": "-right-1",
1826
+ "-2": "-right-2",
1827
+ "-3": "-right-3",
1828
+ "-4": "-right-4",
1829
+ "-5": "-right-5",
1830
+ "-6": "-right-6",
1831
+ "-7": "-right-7",
1832
+ "-8": "-right-8",
1833
+ "-9": "-right-9"
1834
+ },
1835
+ bottom: {
1836
+ "0": "bottom-0",
1837
+ "1": "bottom-1",
1838
+ "2": "bottom-2",
1839
+ "3": "bottom-3",
1840
+ "4": "bottom-4",
1841
+ "5": "bottom-5",
1842
+ "6": "bottom-6",
1843
+ "7": "bottom-7",
1844
+ "8": "bottom-8",
1845
+ "9": "bottom-9",
1846
+ "-1": "-bottom-1",
1847
+ "-2": "-bottom-2",
1848
+ "-3": "-bottom-3",
1849
+ "-4": "-bottom-4",
1850
+ "-5": "-bottom-5",
1851
+ "-6": "-bottom-6",
1852
+ "-7": "-bottom-7",
1853
+ "-8": "-bottom-8",
1854
+ "-9": "-bottom-9"
1855
+ },
1856
+ left: {
1857
+ "0": "left-0",
1858
+ "1": "left-1",
1859
+ "2": "left-2",
1860
+ "3": "left-3",
1861
+ "4": "left-4",
1862
+ "5": "left-5",
1863
+ "6": "left-6",
1864
+ "7": "left-7",
1865
+ "8": "left-8",
1866
+ "9": "left-9",
1867
+ "-1": "-left-1",
1868
+ "-2": "-left-2",
1869
+ "-3": "-left-3",
1870
+ "-4": "-left-4",
1871
+ "-5": "-left-5",
1872
+ "-6": "-left-6",
1873
+ "-7": "-left-7",
1874
+ "-8": "-left-8",
1875
+ "-9": "-left-9"
1876
+ },
1877
+ overflow: {
1878
+ auto: "overflow-auto",
1879
+ hidden: "overflow-hidden",
1880
+ clip: "overflow-clip",
1881
+ scroll: "overflow-scroll",
1882
+ visible: "overflow-visible"
1883
+ },
1884
+ overflowX: {
1885
+ auto: "overflow-x-auto",
1886
+ hidden: "overflow-x-hidden",
1887
+ clip: "overflow-x-clip",
1888
+ scroll: "overflow-x-scroll",
1889
+ visible: "overflow-x-visible"
1890
+ },
1891
+ overflowY: {
1892
+ auto: "overflow-y-auto",
1893
+ hidden: "overflow-y-hidden",
1894
+ clip: "overflow-y-clip",
1895
+ scroll: "overflow-y-scroll",
1896
+ visible: "overflow-y-visible"
1897
+ },
1898
+ flexGrow: {
1899
+ 0: "grow-0",
1900
+ 1: "grow"
1901
+ },
1902
+ flexShrink: {
1903
+ 0: "shrink-0",
1904
+ 1: "shrink"
1905
+ }
1906
+ },
1907
+ defaultVariants: {
1908
+ position: "relative",
1909
+ overflow: "visible",
1910
+ flexGrow: 0,
1911
+ flexShrink: 1
1433
1912
  }
1434
- ));
1435
- TabsContent.displayName = TabsPrimitive.Content.displayName;
1913
+ });
1436
1914
 
1437
- // packages/Icons/Lucide2FillCartIcon.tsx
1438
- import { jsx as jsx17 } from "react/jsx-runtime";
1439
- var Lucide2FillCartIcon = ({ color, size }) => {
1440
- return /* @__PURE__ */ jsx17(
1441
- "svg",
1442
- {
1443
- xmlns: "http://www.w3.org/2000/svg",
1444
- width: size ?? 16,
1445
- height: size ?? 16,
1446
- viewBox: "0 0 16 16",
1447
- fill: "none",
1448
- children: /* @__PURE__ */ jsx17(
1449
- "path",
1915
+ // packages/Layout/Box/index.tsx
1916
+ import { jsx as jsx22 } from "react/jsx-runtime";
1917
+ var Box = memo4(
1918
+ forwardRef13(
1919
+ ({
1920
+ children,
1921
+ className,
1922
+ display,
1923
+ width = "fit",
1924
+ height = "fit",
1925
+ p,
1926
+ px,
1927
+ py,
1928
+ pt,
1929
+ pr,
1930
+ pb,
1931
+ pl,
1932
+ position,
1933
+ top,
1934
+ right,
1935
+ bottom,
1936
+ left,
1937
+ flexGrow,
1938
+ flexShrink,
1939
+ ...props
1940
+ }, reference) => {
1941
+ const generateStyle = useMemo2(() => {
1942
+ let widthValue = "fit";
1943
+ let heightValue = "fit";
1944
+ switch (width) {
1945
+ case "full": {
1946
+ widthValue = "100%";
1947
+ break;
1948
+ }
1949
+ case "screen": {
1950
+ widthValue = "100vw";
1951
+ break;
1952
+ }
1953
+ case "auto": {
1954
+ widthValue = "auto";
1955
+ break;
1956
+ }
1957
+ case "fit": {
1958
+ widthValue = "fit-content";
1959
+ break;
1960
+ }
1961
+ default: {
1962
+ widthValue = `${width}px`;
1963
+ break;
1964
+ }
1965
+ }
1966
+ switch (height) {
1967
+ case "full": {
1968
+ heightValue = "100%";
1969
+ break;
1970
+ }
1971
+ case "screen": {
1972
+ heightValue = "100vh";
1973
+ break;
1974
+ }
1975
+ case "auto": {
1976
+ heightValue = "auto";
1977
+ break;
1978
+ }
1979
+ case "fit": {
1980
+ heightValue = "fit-content";
1981
+ break;
1982
+ }
1983
+ default: {
1984
+ heightValue = `${height}px`;
1985
+ break;
1986
+ }
1987
+ }
1988
+ return {
1989
+ width: widthValue,
1990
+ height: heightValue
1991
+ };
1992
+ }, [width, height]);
1993
+ return /* @__PURE__ */ jsx22(
1994
+ "div",
1450
1995
  {
1451
- d: "M0.680193 0C0.499795 0 0.326785 0.070238 0.199224 0.195262C0.0716631 0.320287 0 0.489856 0 0.666667C0 0.843478 0.0716631 1.01305 0.199224 1.13807C0.326785 1.2631 0.499795 1.33333 0.680193 1.33333H1.01485C1.16255 1.33358 1.30615 1.38095 1.42395 1.46827C1.54176 1.55558 1.62736 1.67811 1.66783 1.81733L3.82541 9.21733C3.94744 9.63494 4.20487 10.0023 4.55879 10.2637C4.91271 10.5252 5.34387 10.6667 5.78708 10.6667H12.0027C12.4106 10.6667 12.8092 10.547 13.1469 10.3229C13.4847 10.0987 13.7462 9.78054 13.8977 9.40933L15.9029 4.49467C15.9853 4.29243 16.016 4.07349 15.9922 3.85697C15.9683 3.64046 15.8907 3.43296 15.7662 3.25261C15.6416 3.07227 15.4739 2.92457 15.2777 2.82243C15.0814 2.72028 14.8627 2.6668 14.6405 2.66667H3.33022L2.97516 1.45067C2.85344 1.03303 2.59632 0.665582 2.24265 0.403862C1.88898 0.142143 1.458 0.000379157 1.01485 0H0.680193ZM6.12174 16C6.38971 16 6.65506 15.9483 6.90263 15.8478C7.15021 15.7473 7.37516 15.5999 7.56464 15.4142C7.75413 15.2285 7.90444 15.008 8.00699 14.7654C8.10954 14.5227 8.16232 14.2626 8.16232 14C8.16232 13.7374 8.10954 13.4773 8.00699 13.2346C7.90444 12.992 7.75413 12.7715 7.56464 12.5858C7.37516 12.4001 7.15021 12.2528 6.90263 12.1522C6.65506 12.0517 6.38971 12 6.12174 12C5.58054 12 5.06151 12.2107 4.67883 12.5858C4.29615 12.9609 4.08116 13.4696 4.08116 14C4.08116 14.5304 4.29615 15.0391 4.67883 15.4142C5.06151 15.7893 5.58054 16 6.12174 16ZM11.5633 16C11.8313 16 12.0966 15.9483 12.3442 15.8478C12.5918 15.7473 12.8167 15.5999 13.0062 15.4142C13.1957 15.2285 13.346 15.008 13.4485 14.7654C13.5511 14.5227 13.6039 14.2626 13.6039 14C13.6039 13.7374 13.5511 13.4773 13.4485 13.2346C13.346 12.992 13.1957 12.7715 13.0062 12.5858C12.8167 12.4001 12.5918 12.2528 12.3442 12.1522C12.0966 12.0517 11.8313 12 11.5633 12C11.0221 12 10.5031 12.2107 10.1204 12.5858C9.73769 12.9609 9.5227 13.4696 9.5227 14C9.5227 14.5304 9.73769 15.0391 10.1204 15.4142C10.5031 15.7893 11.0221 16 11.5633 16Z",
1452
- fill: color ?? "currentColor"
1996
+ ref: reference,
1997
+ className: cn(
1998
+ box_variant_default({ display }),
1999
+ commonLayout({
2000
+ position,
2001
+ top,
2002
+ right,
2003
+ bottom,
2004
+ left,
2005
+ flexGrow,
2006
+ flexShrink
2007
+ }),
2008
+ `p-${p}`,
2009
+ `px-${px}`,
2010
+ `py-${py}`,
2011
+ `pt-${pt}`,
2012
+ `pr-${pr}`,
2013
+ `pb-${pb}`,
2014
+ `pl-${pl}`,
2015
+ className
2016
+ ),
2017
+ style: generateStyle,
2018
+ ...props,
2019
+ children
1453
2020
  }
1454
- )
2021
+ );
1455
2022
  }
1456
- );
1457
- };
1458
- var Lucide2FillCartIcon_default = Lucide2FillCartIcon;
2023
+ )
2024
+ );
2025
+ Box.displayName = "Box";
1459
2026
 
1460
- // packages/Molecules/CartSheet/index.tsx
1461
- import { VisuallyHidden } from "@radix-ui/react-visually-hidden";
1462
- import { jsx as jsx18, jsxs as jsxs9 } from "react/jsx-runtime";
1463
- var CartSheet = ({
1464
- isNew,
1465
- quantityTotal,
1466
- moneyTotal,
1467
- inStock,
1468
- order,
1469
- onCheckout,
1470
- onShowAll,
1471
- onTypeSelected
1472
- }) => {
1473
- const formattedMoney = new Intl.NumberFormat("vi-VN").format(moneyTotal ?? 0);
1474
- const formattedQuantity = new Intl.NumberFormat("vi-VN").format(quantityTotal ?? 0);
1475
- return /* @__PURE__ */ jsxs9(Sheet, { children: [
1476
- /* @__PURE__ */ jsx18(SheetTrigger, { children: /* @__PURE__ */ jsx18(Badge_default, { isNew, children: /* @__PURE__ */ jsx18(Lucide2FillCartIcon_default, { color: "#6C70F0" }) }) }),
1477
- /* @__PURE__ */ jsx18(SheetContent, { className: "w-[22rem]", children: /* @__PURE__ */ jsxs9("div", { className: "relative grid size-full grid-rows-[fit-content(100%)_auto_8rem]", children: [
1478
- /* @__PURE__ */ jsxs9(Flex_default, { vertical: true, px: "4", pt: "7", pb: "5", gapY: "2", width: "full", align: "start", children: [
1479
- /* @__PURE__ */ jsxs9("p", { className: "text-ui-p font-semibold", children: [
1480
- "Gi\u1ECF h\xE0ng c\u1EE7a t\xF4i (",
1481
- formattedQuantity,
1482
- ")"
1483
- ] }),
1484
- /* @__PURE__ */ jsx18(Separator, { className: "bg-ui-border-300" })
1485
- ] }),
1486
- /* @__PURE__ */ jsxs9(
1487
- Tabs,
1488
- {
1489
- defaultValue: "order",
1490
- className: "relative flex w-full flex-col items-center overflow-auto",
1491
- children: [
1492
- /* @__PURE__ */ jsxs9(TabsList, { className: "h-fit w-[90%] *:w-1/2", children: [
1493
- /* @__PURE__ */ jsx18(TabsTrigger, { value: "order", onClick: () => onTypeSelected?.("ORDER"), children: "H\xE0ng \u0111\u1EB7t tr\u01B0\u1EDBc" }),
1494
- /* @__PURE__ */ jsx18(TabsTrigger, { value: "in_stock", onClick: () => onTypeSelected?.("IN_STOCK"), children: "H\xE0ng c\xF3 s\u1EB5n" })
1495
- ] }),
1496
- /* @__PURE__ */ jsxs9(ScrollArea, { className: "relative w-full", children: [
1497
- /* @__PURE__ */ jsx18(TabsContent, { value: "order", className: "w-full overflow-auto px-2", children: order }),
1498
- /* @__PURE__ */ jsx18(ScrollBar, { orientation: "vertical", className: "" })
1499
- ] }),
1500
- /* @__PURE__ */ jsxs9(ScrollArea, { className: "relative w-full", children: [
1501
- /* @__PURE__ */ jsx18(TabsContent, { value: "in_stock", className: "w-full overflow-auto px-2", children: inStock }),
1502
- /* @__PURE__ */ jsx18(ScrollBar, { orientation: "vertical", className: "" })
1503
- ] })
1504
- ]
2027
+ // packages/Layout/Flex/index.tsx
2028
+ import { forwardRef as forwardRef14, memo as memo5, useMemo as useMemo3 } from "react";
2029
+
2030
+ // packages/Layout/Flex/flexVariant.ts
2031
+ import { cva as cva6 } from "class-variance-authority";
2032
+ var flexVariants = cva6("flex flex-row", {
2033
+ variants: {
2034
+ wrap: {
2035
+ nowrap: "flex-nowrap",
2036
+ wrap: "flex-wrap",
2037
+ "wrap-reverse": "flex-wrap-reverse"
2038
+ },
2039
+ justify: {
2040
+ start: "justify-start",
2041
+ end: "justify-end",
2042
+ center: "justify-center",
2043
+ between: "justify-between",
2044
+ around: "justify-around",
2045
+ normal: "justify-normal",
2046
+ stretch: "justify-stretch",
2047
+ evenly: "justify-evenly"
2048
+ },
2049
+ align: {
2050
+ start: "items-start",
2051
+ end: "items-end",
2052
+ center: "items-center",
2053
+ stretch: "items-stretch",
2054
+ baseline: "items-baseline"
2055
+ }
2056
+ },
2057
+ defaultVariants: {
2058
+ wrap: "nowrap",
2059
+ justify: "start",
2060
+ align: "stretch"
2061
+ }
2062
+ });
2063
+ var flexVariant_default = flexVariants;
2064
+
2065
+ // packages/Layout/Flex/index.tsx
2066
+ import { jsx as jsx23 } from "react/jsx-runtime";
2067
+ var Flex = memo5(
2068
+ forwardRef14(
2069
+ ({
2070
+ vertical = false,
2071
+ wrap = "nowrap",
2072
+ width = "fit",
2073
+ height = "fit",
2074
+ justify = "start",
2075
+ align = "center",
2076
+ gap,
2077
+ gapX,
2078
+ gapY,
2079
+ p,
2080
+ px,
2081
+ py,
2082
+ pt,
2083
+ pr,
2084
+ pb,
2085
+ pl,
2086
+ position,
2087
+ top,
2088
+ right,
2089
+ bottom,
2090
+ left,
2091
+ flexGrow,
2092
+ flexShrink,
2093
+ children,
2094
+ className,
2095
+ ...props
2096
+ }, reference) => {
2097
+ const generateStyle = useMemo3(() => {
2098
+ let widthValue = "fit";
2099
+ let heightValue = "fit";
2100
+ switch (width) {
2101
+ case "full": {
2102
+ widthValue = "100%";
2103
+ break;
2104
+ }
2105
+ case "screen": {
2106
+ widthValue = "100vw";
2107
+ break;
2108
+ }
2109
+ case "auto": {
2110
+ widthValue = "auto";
2111
+ break;
2112
+ }
2113
+ case "fit": {
2114
+ widthValue = "fit-content";
2115
+ break;
2116
+ }
2117
+ default: {
2118
+ widthValue = `${width}px`;
2119
+ break;
2120
+ }
2121
+ }
2122
+ switch (height) {
2123
+ case "full": {
2124
+ heightValue = "100%";
2125
+ break;
2126
+ }
2127
+ case "screen": {
2128
+ heightValue = "100vh";
2129
+ break;
2130
+ }
2131
+ case "auto": {
2132
+ heightValue = "auto";
2133
+ break;
2134
+ }
2135
+ case "fit": {
2136
+ heightValue = "fit-content";
2137
+ break;
2138
+ }
2139
+ default: {
2140
+ heightValue = `${height}px`;
2141
+ break;
2142
+ }
1505
2143
  }
1506
- ),
1507
- /* @__PURE__ */ jsxs9(Flex_default, { vertical: true, pt: "5", height: "full", width: "full", className: "shadow-ui-muli", children: [
1508
- /* @__PURE__ */ jsxs9(Flex_default, { px: "6", justify: "between", width: "full", children: [
1509
- /* @__PURE__ */ jsx18("p", { className: "text-ui-p font-bold text-ui-text-800", children: "T\u1ED4NG C\u1ED8NG" }),
1510
- /* @__PURE__ */ jsxs9("p", { className: "text-ui-p font-extrabold text-ui-primary-500", children: [
1511
- formattedMoney,
1512
- " VND"
1513
- ] })
1514
- ] }),
1515
- /* @__PURE__ */ jsxs9(Flex_default, { px: "5", py: "3", gapX: "4", width: "full", className: "*:grow", children: [
1516
- /* @__PURE__ */ jsx18(
1517
- Button_default,
2144
+ return {
2145
+ width: widthValue,
2146
+ height: heightValue
2147
+ };
2148
+ }, [width, height]);
2149
+ return /* @__PURE__ */ jsx23(
2150
+ "div",
2151
+ {
2152
+ ref: reference,
2153
+ className: cn(
2154
+ flexVariant_default({ wrap, justify, align }),
2155
+ commonLayout({
2156
+ position,
2157
+ top,
2158
+ right,
2159
+ bottom,
2160
+ left,
2161
+ flexGrow,
2162
+ flexShrink
2163
+ }),
1518
2164
  {
1519
- variant: "outline",
1520
- className: "px-5 py-2 text-ui-p font-bold",
1521
- onClick: onShowAll,
1522
- children: "Xem t\u1EA5t c\u1EA3"
1523
- }
2165
+ [`flex-col`]: vertical,
2166
+ [`p-${p}`]: p,
2167
+ [`px-${px}`]: px,
2168
+ [`py-${py}`]: py,
2169
+ [`pt-${pt}`]: pt,
2170
+ [`pr-${pr}`]: pr,
2171
+ [`pb-${pb}`]: pb,
2172
+ [`pl-${pl}`]: pl,
2173
+ [`gap-${gap}`]: gap,
2174
+ [`gap-x-${gapX}`]: gapX,
2175
+ [`gap-y-${gapY}`]: gapY
2176
+ },
2177
+ className
1524
2178
  ),
1525
- /* @__PURE__ */ jsx18(Button_default, { className: "px-5 py-2 text-ui-p font-bold", onClick: onCheckout, children: "Thanh to\xE1n" })
1526
- ] })
1527
- ] })
1528
- ] }) }),
1529
- /* @__PURE__ */ jsx18(VisuallyHidden, { children: /* @__PURE__ */ jsx18(SheetTitle, {}) })
1530
- ] });
1531
- };
1532
- var CartSheet_default = memo5(CartSheet);
1533
-
1534
- // packages/Molecules/Search/index.tsx
1535
- import { useCallback, useEffect, useState } from "react";
2179
+ style: generateStyle,
2180
+ ...props,
2181
+ children
2182
+ }
2183
+ );
2184
+ }
2185
+ )
2186
+ );
2187
+ Flex.displayName = "Flex";
2188
+ var Flex_default = Flex;
1536
2189
 
1537
- // packages/Atoms/Command/index.tsx
1538
- import * as React3 from "react";
2190
+ // packages/Atoms/QuantityBtn/index.tsx
2191
+ import { motion as motion2 } from "framer-motion";
2192
+ import { jsx as jsx24, jsxs as jsxs14 } from "react/jsx-runtime";
1539
2193
 
1540
- // packages/Atoms/Dialog/index.tsx
1541
- import * as React2 from "react";
1542
- import * as DialogPrimitive from "@radix-ui/react-dialog";
1543
- import { X } from "lucide-react";
1544
- import { jsx as jsx19, jsxs as jsxs10 } from "react/jsx-runtime";
1545
- var Dialog = DialogPrimitive.Root;
1546
- var DialogPortal = DialogPrimitive.Portal;
1547
- var DialogOverlay = React2.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx19(
1548
- DialogPrimitive.Overlay,
2194
+ // packages/Atoms/Select/index.tsx
2195
+ import { forwardRef as forwardRef15 } from "react";
2196
+ import * as SelectPrimitive from "@radix-ui/react-select";
2197
+ import { Check as Check2, ChevronDown, ChevronUp } from "lucide-react";
2198
+ import { jsx as jsx25, jsxs as jsxs15 } from "react/jsx-runtime";
2199
+ var SelectTrigger = forwardRef15(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs15(
2200
+ SelectPrimitive.Trigger,
1549
2201
  {
1550
- ref: reference,
2202
+ ref,
1551
2203
  className: cn(
1552
- "fixed inset-0 z-50 bg-black/80",
1553
- "data-[state=open]:animate-in",
1554
- "data-[state=closed]:animate-out",
1555
- "data-[state=closed]:fade-out-0",
1556
- "data-[state=open]:fade-in-0",
2204
+ "flex items-center justify-between",
2205
+ "h-9 w-full",
2206
+ "px-3 py-2",
2207
+ "rounded-md border border-ui-border-400",
2208
+ "text-sm",
2209
+ "bg-ui-surface-50",
2210
+ "placeholder:text-ui-text-500",
2211
+ "focus:outline-none",
2212
+ "focus:ring-1",
2213
+ "focus:ring-offset-2",
2214
+ "focus:border-ui-primary-500",
2215
+ "focus:ring-offset-ui-primary-200",
2216
+ "disabled:cursor-not-allowed",
2217
+ "disabled:opacity-50 [&>span]:line-clamp-1",
2218
+ "transition-colors duration-300",
1557
2219
  className
1558
2220
  ),
1559
- ...props
2221
+ ...props,
2222
+ children: [
2223
+ children,
2224
+ /* @__PURE__ */ jsx25(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx25(Lucide2ChevronDownIcon_default, { className: "size-4 opacity-50" }) })
2225
+ ]
1560
2226
  }
1561
2227
  ));
1562
- DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
1563
- var DialogContent = React2.forwardRef(({ className, children, ...props }, reference) => /* @__PURE__ */ jsxs10(DialogPortal, { children: [
1564
- /* @__PURE__ */ jsx19(DialogOverlay, {}),
1565
- /* @__PURE__ */ jsxs10(
1566
- DialogPrimitive.Content,
1567
- {
1568
- ref: reference,
1569
- className: cn(
1570
- "fixed",
1571
- "left-[50%] top-[50%] z-50",
1572
- "grid w-full max-w-lg",
1573
- "rounded bg-ui-surface-50",
1574
- "translate-x-[-50%] translate-y-[-50%]",
1575
- "transition-all duration-300",
1576
- "data-[state=open]:animate-in",
1577
- "data-[state=open]:fade-in-0",
1578
- "data-[state=open]:zoom-in-95",
1579
- "data-[state=open]:slide-in-from-left-1/2",
1580
- "data-[state=open]:slide-in-from-top-[48%]",
1581
- "data-[state=closed]:animate-out",
1582
- "data-[state=closed]:fade-out-0",
1583
- "data-[state=closed]:zoom-out-[0.8]",
1584
- "data-[state=closed]:slide-out-to-left-1/2",
1585
- "data-[state=closed]:slide-out-to-top-[80%]",
1586
- className
1587
- ),
1588
- ...props,
1589
- children: [
1590
- children,
1591
- /* @__PURE__ */ jsxs10(DialogPrimitive.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute right-4 top-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none", children: [
1592
- /* @__PURE__ */ jsx19(X, { className: "size-4" }),
1593
- /* @__PURE__ */ jsx19("span", { className: "sr-only", children: "Close" })
1594
- ] })
1595
- ]
1596
- }
1597
- )
1598
- ] }));
1599
- DialogContent.displayName = DialogPrimitive.Content.displayName;
1600
- var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ jsx19("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
1601
- DialogHeader.displayName = "DialogHeader";
1602
- var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsx19(
1603
- "div",
2228
+ SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
2229
+ var SelectScrollUpButton = forwardRef15(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(
2230
+ SelectPrimitive.ScrollUpButton,
1604
2231
  {
1605
- className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
1606
- ...props
1607
- }
1608
- );
1609
- DialogFooter.displayName = "DialogFooter";
1610
- var DialogTitle = React2.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx19(
1611
- DialogPrimitive.Title,
1612
- {
1613
- ref: reference,
1614
- className: cn("text-lg font-semibold leading-none tracking-tight", className),
1615
- ...props
2232
+ ref,
2233
+ className: cn("flex items-center justify-center", "cursor-all-scroll py-1", className),
2234
+ ...props,
2235
+ children: /* @__PURE__ */ jsx25(ChevronUp, { className: "size-4" })
1616
2236
  }
1617
2237
  ));
1618
- DialogTitle.displayName = DialogPrimitive.Title.displayName;
1619
- var DialogDescription = React2.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx19(
1620
- DialogPrimitive.Description,
2238
+ SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
2239
+ var SelectScrollDownButton = forwardRef15(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(
2240
+ SelectPrimitive.ScrollDownButton,
1621
2241
  {
1622
- ref: reference,
1623
- className: cn("text-sm text-ui-text-400", className),
1624
- ...props
2242
+ ref,
2243
+ className: cn("flex cursor-all-scroll items-center justify-center py-1", className),
2244
+ ...props,
2245
+ children: /* @__PURE__ */ jsx25(ChevronDown, { className: "size-4" })
1625
2246
  }
1626
2247
  ));
1627
- DialogDescription.displayName = DialogPrimitive.Description.displayName;
1628
-
1629
- // packages/Atoms/Command/index.tsx
1630
- import { VisuallyHidden as VisuallyHidden2 } from "@radix-ui/react-visually-hidden";
1631
- import { Command as CommandPrimitive } from "cmdk";
1632
- import { Search } from "lucide-react";
1633
- import { jsx as jsx20, jsxs as jsxs11 } from "react/jsx-runtime";
1634
- var Command = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx20(
1635
- CommandPrimitive,
2248
+ SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
2249
+ var SelectContent = forwardRef15(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx25(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs15(
2250
+ SelectPrimitive.Content,
1636
2251
  {
1637
- ref: reference,
2252
+ ref,
1638
2253
  className: cn(
1639
- "flex h-full w-full flex-col overflow-hidden rounded-md bg-ui-white text-ui-text-800",
2254
+ "relative z-50",
2255
+ "max-h-96 min-w-[8rem]",
2256
+ "overflow-hidden",
2257
+ "rounded-md border",
2258
+ "bg-ui-surface-50",
2259
+ "text-ui-text-900",
2260
+ "shadow-ui-dialog",
2261
+ "data-[state=open]:animate-in",
2262
+ "data-[state=open]:zoom-in-95",
2263
+ "data-[state=open]:fade-in-0",
2264
+ "data-[state=closed]:animate-out",
2265
+ "data-[state=closed]:fade-out-0",
2266
+ "data-[state=closed]:zoom-out-95",
2267
+ "data-[side=bottom]:slide-in-from-top-2",
2268
+ "data-[side=left]:slide-in-from-right-2",
2269
+ "data-[side=right]:slide-in-from-left-2",
2270
+ "data-[side=top]:slide-in-from-bottom-2",
2271
+ position === "popper" && "data-[side=bottom]:translate-y-1",
2272
+ position === "popper" && "data-[side=left]:-translate-x-1",
2273
+ position === "popper" && "data-[side=right]:translate-x-1",
2274
+ position === "popper" && "data-[side=top]:-translate-y-1",
1640
2275
  className
1641
2276
  ),
1642
- ...props
1643
- }
1644
- ));
1645
- Command.displayName = CommandPrimitive.displayName;
1646
- var CommandDialog = ({ children, ...props }) => {
1647
- return /* @__PURE__ */ jsxs11(Dialog, { ...props, children: [
1648
- /* @__PURE__ */ jsx20(DialogContent, { className: "p-0 shadow-lg", children: /* @__PURE__ */ jsx20(
1649
- Command,
1650
- {
1651
- className: cn(
1652
- "bg-neutral-50",
1653
- "[&_[cmdk-group-heading]]:px-0",
1654
- "[&_[cmdk-group-heading]]:font-medium",
1655
- "[&_[cmdk-group-heading]]:text-ui-text-800",
1656
- "[&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0",
1657
- "[&_[cmdk-group]]:px-2",
1658
- "[&_[cmdk-input-wrapper]_svg]:size-5",
1659
- "[&_[cmdk-input]]:h-12",
1660
- "[&_[cmdk-item]]:px-2",
1661
- "[&_[cmdk-item]]:py-3",
1662
- "[&_[cmdk-item]_svg]:size-5"
1663
- ),
1664
- children
1665
- }
1666
- ) }),
1667
- /* @__PURE__ */ jsx20(VisuallyHidden2, { children: /* @__PURE__ */ jsx20(DialogTitle, {}) })
1668
- ] });
1669
- };
1670
- var CommandInput = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsxs11("div", { className: "flex items-center border-b px-3", children: [
1671
- /* @__PURE__ */ jsx20(Search, { className: "mr-2 size-4 shrink-0 opacity-50" }),
1672
- /* @__PURE__ */ jsx20(
1673
- CommandPrimitive.Input,
1674
- {
1675
- ref: reference,
1676
- className: cn(
1677
- "flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none",
1678
- "placeholder:!text-ui-text-300",
1679
- "disabled:cursor-not-allowed",
1680
- "disabled:opacity-50",
1681
- className
2277
+ position,
2278
+ ...props,
2279
+ children: [
2280
+ /* @__PURE__ */ jsx25(SelectScrollUpButton, {}),
2281
+ /* @__PURE__ */ jsx25(
2282
+ SelectPrimitive.Viewport,
2283
+ {
2284
+ className: cn(
2285
+ "p-1",
2286
+ position === "popper" && "h-[var(--radix-select-trigger-height)]",
2287
+ position === "popper" && "w-full",
2288
+ position === "popper" && "min-w-[var(--radix-select-trigger-width)]"
2289
+ ),
2290
+ children
2291
+ }
1682
2292
  ),
1683
- ...props
1684
- }
1685
- )
1686
- ] }));
1687
- CommandInput.displayName = CommandPrimitive.Input.displayName;
1688
- var CommandList = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx20(
1689
- CommandPrimitive.List,
1690
- {
1691
- ref: reference,
1692
- className: cn("max-h-[300px] overflow-y-auto overflow-x-hidden", className),
1693
- ...props
1694
- }
1695
- ));
1696
- CommandList.displayName = CommandPrimitive.List.displayName;
1697
- var CommandEmpty = React3.forwardRef((props, reference) => /* @__PURE__ */ jsx20(CommandPrimitive.Empty, { ref: reference, className: "py-6 text-center text-sm", ...props }));
1698
- CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
1699
- var CommandGroup = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx20(
1700
- CommandPrimitive.Group,
1701
- {
1702
- ref: reference,
1703
- className: cn(
1704
- "overflow-hidden p-1 text-ui-text-800",
1705
- "[&_[cmdk-group-heading]]:px-2",
1706
- "[&_[cmdk-group-heading]]:py-1.5",
1707
- "[&_[cmdk-group-heading]]:text-xs",
1708
- "[&_[cmdk-group-heading]]:font-medium",
1709
- "[&_[cmdk-group-heading]]:text-ui-text-800",
1710
- className
1711
- ),
1712
- ...props
2293
+ /* @__PURE__ */ jsx25(SelectScrollDownButton, {})
2294
+ ]
1713
2295
  }
1714
- ));
1715
- CommandGroup.displayName = CommandPrimitive.Group.displayName;
1716
- var CommandSeparator = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx20(
1717
- CommandPrimitive.Separator,
2296
+ ) }));
2297
+ SelectContent.displayName = SelectPrimitive.Content.displayName;
2298
+ var SelectLabel = forwardRef15(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(
2299
+ SelectPrimitive.Label,
1718
2300
  {
1719
- ref: reference,
1720
- className: cn("bg-border -mx-1 h-px", className),
2301
+ ref,
2302
+ className: cn("py-1.5 pl-4 pr-2 text-sm font-semibold", className),
1721
2303
  ...props
1722
2304
  }
1723
2305
  ));
1724
- CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
1725
- var CommandItem = React3.forwardRef(({ className, ...props }, reference) => /* @__PURE__ */ jsx20(
1726
- CommandPrimitive.Item,
1727
- {
1728
- ref: reference,
1729
- className: cn(
1730
- "relative flex cursor-default select-none items-center gap-x-1 rounded-lg px-2 py-1.5 text-sm outline-none",
1731
- "data-[selected=true]:text-ui-text-800",
1732
- "data-[disabled=true]:pointer-events-none",
1733
- "data-[disabled=true]:opacity-50",
1734
- "hover:cursor-pointer hover:bg-ui-surface-100",
1735
- "transition-color duration-150 ease-in-out",
2306
+ SelectLabel.displayName = SelectPrimitive.Label.displayName;
2307
+ var SelectItem = forwardRef15(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs15(
2308
+ SelectPrimitive.Item,
2309
+ {
2310
+ ref,
2311
+ className: cn(
2312
+ "relative",
2313
+ "flex items-center",
2314
+ "w-full",
2315
+ "py-2 pl-4 pr-6",
2316
+ "rounded-sm",
2317
+ "text-sm",
2318
+ "cursor-pointer",
2319
+ "select-none",
2320
+ "outline-none",
2321
+ "text-ui-text-600",
2322
+ "focus:bg-ui-primary-50",
2323
+ "focus:text-ui-text-800",
2324
+ "data-[disabled]:pointer-events-none",
2325
+ "data-[disabled]:opacity-50",
2326
+ "transition-colors duration-200",
1736
2327
  className
1737
2328
  ),
2329
+ ...props,
2330
+ children: [
2331
+ /* @__PURE__ */ jsx25("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx25(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx25(Check2, { size: 16 }) }) }),
2332
+ /* @__PURE__ */ jsx25(SelectPrimitive.ItemText, { children })
2333
+ ]
2334
+ }
2335
+ ));
2336
+ SelectItem.displayName = SelectPrimitive.Item.displayName;
2337
+ var SelectSeparator = forwardRef15(({ className, ...props }, ref) => /* @__PURE__ */ jsx25(
2338
+ SelectPrimitive.Separator,
2339
+ {
2340
+ ref,
2341
+ className: cn("-mx-1 my-1 h-px bg-ui-border-400", className),
1738
2342
  ...props
1739
2343
  }
1740
2344
  ));
1741
- CommandItem.displayName = CommandPrimitive.Item.displayName;
1742
- var CommandShortcut = ({ className, ...props }) => {
1743
- return /* @__PURE__ */ jsx20(
1744
- "span",
2345
+ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
2346
+
2347
+ // packages/Atoms/UserAvatar/index.tsx
2348
+ import { memo as memo6 } from "react";
2349
+
2350
+ // packages/Icons/AvatarIcon.tsx
2351
+ import { jsx as jsx26, jsxs as jsxs16 } from "react/jsx-runtime";
2352
+ var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
2353
+ return /* @__PURE__ */ jsxs16(
2354
+ "svg",
1745
2355
  {
1746
- className: cn("ml-auto text-xs tracking-widest text-ui-text-400", className),
1747
- ...props
2356
+ xmlns: "http://www.w3.org/2000/svg",
2357
+ width: size ?? DEFAULT_ICON_SIZE,
2358
+ height: size ?? DEFAULT_ICON_SIZE,
2359
+ viewBox: "0 0 96 96",
2360
+ fill: "none",
2361
+ ...Props,
2362
+ children: [
2363
+ /* @__PURE__ */ jsx26(
2364
+ "path",
2365
+ {
2366
+ d: "M1.9 48C1.9 73.4604 22.5397 94.1 48 94.1C73.4604 94.1 94.1 73.4604 94.1 48C94.1 22.5397 73.4604 1.9 48 1.9C22.5397 1.9 1.9 22.5397 1.9 48Z",
2367
+ fill: bgColor ?? "#6C70F0",
2368
+ stroke: "#D4D4D4",
2369
+ strokeWidth: "0.2"
2370
+ }
2371
+ ),
2372
+ /* @__PURE__ */ jsx26(
2373
+ "path",
2374
+ {
2375
+ d: "M48 93.75C22.733 93.75 2.25 73.2671 2.25 48C2.25 22.733 22.733 2.25 48 2.25C73.2671 2.25 93.75 22.733 93.75 48C93.75 73.2671 73.2671 93.75 48 93.75Z",
2376
+ stroke: color ?? "#FAFAFA",
2377
+ strokeWidth: "0.5"
2378
+ }
2379
+ ),
2380
+ /* @__PURE__ */ jsx26(
2381
+ "path",
2382
+ {
2383
+ d: "M47.5064 20C50.0492 20 52.5348 20.7624 54.6492 22.1909C56.7636 23.6194 58.4116 25.6497 59.3848 28.0251C60.358 30.4006 60.6124 33.0144 60.1164 35.5362C59.6204 38.0579 58.3956 40.3744 56.5976 42.1924C54.7996 44.0104 52.5084 45.2488 50.0144 45.7504C47.5204 46.252 44.9352 45.9944 42.586 45.0104C40.2368 44.0264 38.2286 42.3604 36.8158 40.2224C35.4031 38.0846 34.649 35.5712 34.649 33L34.6619 32.4358C34.8057 29.089 36.2217 25.9274 38.6148 23.6105C41.008 21.2936 44.1932 20.0002 47.5064 20ZM52.6492 51.2C56.0592 51.2 65.3292 52.5696 67.7404 55.0076C70.1516 57.4456 71.0124 60.552 71.0124 64V66.8C71.0124 68.1792 70.4708 69.5016 69.5064 70.4768C68.5416 71.452 67.2336 72 65.8696 72H29.1428C27.7789 72 26.4708 71.452 25.5063 70.4768C24.5418 69.5016 24 68.1792 24 66.8V64.2C24 60.752 25.3546 57.4456 27.7658 55.0076C30.177 52.5696 38.9534 51.2 42.3632 51.2H52.6492Z",
2384
+ fill: color ?? "#FAFAFA"
2385
+ }
2386
+ )
2387
+ ]
1748
2388
  }
1749
2389
  );
1750
2390
  };
1751
- CommandShortcut.displayName = "CommandShortcut";
2391
+ AvatarIcon.displayName = "AvatarIcon";
2392
+ var AvatarIcon_default = AvatarIcon;
1752
2393
 
1753
- // packages/Molecules/Search/index.tsx
1754
- import { CommandLoading } from "cmdk";
1755
- import { motion } from "framer-motion";
1756
- import { Fragment, jsx as jsx21, jsxs as jsxs12 } from "react/jsx-runtime";
1757
- var Search2 = ({ search = "", isLoading = false, items = [], onSearch }) => {
1758
- const [open, setOpen] = useState(false);
1759
- const handleOpen = useCallback(() => setOpen(true), []);
1760
- const [isMac, setIsMac] = useState(false);
1761
- useEffect(() => {
1762
- setIsMac(navigator.platform.includes("Mac"));
1763
- }, []);
1764
- const down = useCallback((event) => {
1765
- if (event.key === "k" && (event.metaKey || event.ctrlKey)) {
1766
- event.preventDefault();
1767
- setOpen(true);
2394
+ // packages/libs/color-hash/cores/bkdr-hash.ts
2395
+ var BKDRHash = (str) => {
2396
+ const seed = 131;
2397
+ const seed2 = 137;
2398
+ let hash = 0;
2399
+ str += "x";
2400
+ const MAX_SAFE_INTEGER = Math.floor(9007199254740991 / seed2);
2401
+ str.split("").forEach((char) => {
2402
+ if (hash > MAX_SAFE_INTEGER) {
2403
+ hash = Math.floor(hash / seed2);
1768
2404
  }
1769
- }, []);
1770
- useEffect(() => {
1771
- document.addEventListener("keydown", down);
1772
- return () => {
1773
- document.removeEventListener("keydown", down);
1774
- };
1775
- }, [down]);
1776
- return /* @__PURE__ */ jsxs12(Fragment, { children: [
1777
- /* @__PURE__ */ jsxs12(
1778
- Flex_default,
1779
- {
1780
- flexGrow: 0,
1781
- px: "2",
1782
- py: "1",
1783
- width: "fit",
1784
- gapX: "2",
1785
- className: "mr-8 rounded-lg border border-neutral-200 bg-ui-surface-50 hover:cursor-pointer hover:bg-ui-surface-100",
1786
- onClick: handleOpen,
1787
- children: [
1788
- /* @__PURE__ */ jsx21("p", { className: "pt-0.5 text-ui-small-note font-medium text-ui-text-500", children: "T\xECm ki\u1EBFm s\u1EA3n ph\u1EA9m, th\u01B0\u01A1ng hi\u1EC7u,..." }),
1789
- /* @__PURE__ */ jsxs12("div", { className: "flex items-center gap-x-1 rounded-md bg-ui-surface-200 px-2 py-0.5 text-ui-small-note", children: [
1790
- isMac ? /* @__PURE__ */ jsx21("kbd", { className: "mt-0.5 h-4", children: "\u2318" }) : /* @__PURE__ */ jsx21("kbd", { className: "mt-0.5 h-3 font-semibold", children: "^" }),
1791
- /* @__PURE__ */ jsx21("span", { className: "text-ui-small-note font-medium", children: "K" })
1792
- ] })
1793
- ]
2405
+ hash = hash * seed + char.charCodeAt(0);
2406
+ });
2407
+ return hash;
2408
+ };
2409
+ var bkdr_hash_default = BKDRHash;
2410
+
2411
+ // packages/libs/color-hash/cores/colors.ts
2412
+ var RGB2HEX = (RGBArray) => {
2413
+ let hex = "#";
2414
+ RGBArray.forEach((color) => {
2415
+ if (color < 16) {
2416
+ hex += "0";
2417
+ }
2418
+ hex += color.toString(16);
2419
+ });
2420
+ return hex;
2421
+ };
2422
+ var HSL2RGB = (H, S, L) => {
2423
+ H /= 360;
2424
+ let q = L < 0.5 ? L * (1 + S) : L + S - L * S;
2425
+ let p = 2 * L - q;
2426
+ return [H + 1 / 3, H, H - 1 / 3].map((color) => {
2427
+ if (color < 0) {
2428
+ color++;
2429
+ }
2430
+ if (color > 1) {
2431
+ color--;
2432
+ }
2433
+ if (color < 1 / 6) {
2434
+ color = p + (q - p) * 6 * color;
2435
+ } else if (color < 0.5) {
2436
+ color = q;
2437
+ } else if (color < 2 / 3) {
2438
+ color = p + (q - p) * 6 * (2 / 3 - color);
2439
+ } else {
2440
+ color = p;
2441
+ }
2442
+ return Math.round(color * 255);
2443
+ });
2444
+ };
2445
+
2446
+ // packages/libs/color-hash/index.ts
2447
+ var ColorHash = class {
2448
+ constructor(options) {
2449
+ __publicField(this, "_L");
2450
+ __publicField(this, "_S");
2451
+ __publicField(this, "_hueRange");
2452
+ __publicField(this, "_hash");
2453
+ /**
2454
+ * Returns the hash in [h, s, l].
2455
+ * Note that H ∈ [0, 360); S ∈ [0, 1]; L ∈ [0, 1];
2456
+ *
2457
+ * @param {String} str string to hash
2458
+ * @returns {Array} [h, s, l]
2459
+ */
2460
+ __publicField(this, "hsl", (str) => {
2461
+ let H, S, L;
2462
+ let hash = this._hash(str);
2463
+ const hueResolution = 727;
2464
+ if (this._hueRange.length) {
2465
+ const range = this._hueRange[hash % this._hueRange.length];
2466
+ H = hash / this._hueRange.length % hueResolution * (range.max - range.min) / hueResolution + range.min;
2467
+ } else {
2468
+ H = hash % 359;
1794
2469
  }
1795
- ),
1796
- /* @__PURE__ */ jsxs12(CommandDialog, { open, onOpenChange: setOpen, children: [
1797
- /* @__PURE__ */ jsx21(
1798
- CommandInput,
1799
- {
1800
- value: search,
1801
- placeholder: "T\xECm ki\u1EBFm s\u1EA3n ph\u1EA9m, th\u01B0\u01A1ng hi\u1EC7u...",
1802
- onValueChange: onSearch
1803
- }
1804
- ),
1805
- /* @__PURE__ */ jsxs12(CommandList, { children: [
1806
- !isLoading && /* @__PURE__ */ jsx21(CommandEmpty, { className: "flex h-52 items-center justify-center px-4", children: /* @__PURE__ */ jsx21("span", { className: "font-medium text-ui-text-800", children: "Kh\xF4ng c\xF3 k\u1EBFt qu\u1EA3" }) }),
1807
- isLoading ? /* @__PURE__ */ jsx21(CommandLoading, { className: "flex h-52 items-center justify-center", children: /* @__PURE__ */ jsx21(
1808
- motion.div,
1809
- {
1810
- animate: {
1811
- scale: [1, 2, 2, 1, 1],
1812
- rotate: [0, 0, 180, 180, 0],
1813
- borderRadius: ["0%", "0%", "50%", "50%", "0%"]
1814
- },
1815
- transition: {
1816
- duration: 2,
1817
- ease: "easeInOut",
1818
- times: [0, 0.2, 0.5, 0.8, 1],
1819
- repeat: Infinity,
1820
- repeatDelay: 1
1821
- },
1822
- className: "box size-16 rounded-full bg-neutral-200"
1823
- }
1824
- ) }) : /* @__PURE__ */ jsx21(CommandGroup, { children: items.map((item, index) => /* @__PURE__ */ jsx21(CommandItem, { value: item.value, children: item.component }, index)) })
1825
- ] })
1826
- ] })
1827
- ] });
2470
+ hash = Math.ceil(hash / 360);
2471
+ S = this._S[hash % this._S.length];
2472
+ hash = Math.ceil(hash / this._S.length);
2473
+ L = this._L[hash % this._L.length];
2474
+ return [H, S, L];
2475
+ });
2476
+ /**
2477
+ * Returns the hash in [r, g, b].
2478
+ * Note that R, G, B ∈ [0, 255]
2479
+ *
2480
+ * @param {String} str string to hash
2481
+ * @returns {Array} [r, g, b]
2482
+ */
2483
+ __publicField(this, "rgb", (str) => {
2484
+ const hsl = this.hsl(str);
2485
+ return HSL2RGB.apply(this, hsl);
2486
+ });
2487
+ /**
2488
+ * Returns the hash in hex
2489
+ *
2490
+ * @param {String} str string to hash
2491
+ * @returns {String} hex with #
2492
+ */
2493
+ __publicField(this, "hex", (str) => {
2494
+ const rgb = this.rgb(str);
2495
+ return RGB2HEX(rgb);
2496
+ });
2497
+ const [L, S] = [options.lightness, options.saturation].map((param) => {
2498
+ param = param !== void 0 ? param : [0.35, 0.5, 0.65];
2499
+ return Array.isArray(param) ? param.concat() : [param];
2500
+ });
2501
+ this._L = L;
2502
+ this._S = S;
2503
+ if (typeof options.hue === "number") {
2504
+ options.hue = { min: options.hue, max: options.hue };
2505
+ }
2506
+ if (typeof options.hue === "object" && !Array.isArray(options.hue)) {
2507
+ options.hue = [options.hue];
2508
+ }
2509
+ if (typeof options.hue === "undefined" || options.hue === null) {
2510
+ options.hue = [];
2511
+ }
2512
+ this._hueRange = options.hue.map((range) => {
2513
+ return {
2514
+ min: typeof range.min === "undefined" ? 0 : range.min,
2515
+ max: typeof range.max === "undefined" ? 360 : range.max
2516
+ };
2517
+ });
2518
+ this._hash = bkdr_hash_default;
2519
+ }
1828
2520
  };
1829
- var Search_default = Search2;
2521
+ var colorHash = new ColorHash({
2522
+ hue: { min: 0, max: 359 },
2523
+ saturation: [0.35, 0.5, 0.65],
2524
+ lightness: [0.35, 0.5, 0.65]
2525
+ });
2526
+ var color_hash_default = colorHash;
2527
+
2528
+ // packages/Atoms/UserAvatar/index.tsx
2529
+ import { jsx as jsx27 } from "react/jsx-runtime";
2530
+ var UserAvatar = memo6(({ fullname, email, src: source, size, isButton = true }) => {
2531
+ const Comp = isButton ? "button" : "div";
2532
+ return /* @__PURE__ */ jsx27(
2533
+ Comp,
2534
+ {
2535
+ disabled: !isButton,
2536
+ className: cn(
2537
+ "flex size-fit items-center justify-center rounded-full transition-all duration-300",
2538
+ "enabled:hover:shadow-ui-flat",
2539
+ "enabled:hover:scale-110"
2540
+ ),
2541
+ children: source.length === 0 ? /* @__PURE__ */ jsx27(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size }) : /* @__PURE__ */ jsx27(
2542
+ "img",
2543
+ {
2544
+ style: { width: size, height: size },
2545
+ className: cn("rounded-full object-contain"),
2546
+ src: source,
2547
+ alt: fullname
2548
+ }
2549
+ )
2550
+ }
2551
+ );
2552
+ });
2553
+ UserAvatar.displayName = "UserAvatar";
2554
+ var UserAvatar_default = UserAvatar;
1830
2555
 
1831
- // packages/Molecules/UserSheet/index.tsx
1832
- import { memo as memo8, useEffect as useEffect2, useState as useState2 } from "react";
2556
+ // packages/Atoms/Accordion/index.tsx
2557
+ import React8, { forwardRef as forwardRef16 } from "react";
2558
+ import * as AccordionPrimitive from "@radix-ui/react-accordion";
2559
+ import { ChevronDown as ChevronDown2 } from "lucide-react";
2560
+ import { jsx as jsx28, jsxs as jsxs17 } from "react/jsx-runtime";
2561
+ var Accordion = AccordionPrimitive.Root;
2562
+ var AccordionItem = forwardRef16(({ className, ...props }, ref) => /* @__PURE__ */ jsx28(AccordionPrimitive.Item, { ref, className: cn("border-b", className), ...props }));
2563
+ AccordionItem.displayName = "AccordionItem";
2564
+ var AccordionTrigger = forwardRef16(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx28(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs17(
2565
+ AccordionPrimitive.Trigger,
2566
+ {
2567
+ ref,
2568
+ className: cn(
2569
+ "flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",
2570
+ className
2571
+ ),
2572
+ ...props,
2573
+ children: [
2574
+ children,
2575
+ /* @__PURE__ */ jsx28(ChevronDown2, { className: "size-4 shrink-0 transition-transform duration-200" })
2576
+ ]
2577
+ }
2578
+ ) }));
2579
+ AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
2580
+ var AccordionContent = React8.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx28(
2581
+ AccordionPrimitive.Content,
2582
+ {
2583
+ ref,
2584
+ className: "overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
2585
+ ...props,
2586
+ children: /* @__PURE__ */ jsx28("div", { className: cn("pb-4 pt-0", className), children })
2587
+ }
2588
+ ));
2589
+ AccordionContent.displayName = AccordionPrimitive.Content.displayName;
1833
2590
 
1834
- // packages/Atoms/MenuItem/index.tsx
1835
- import { memo as memo6 } from "react";
1836
- import { jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
1837
- var MenuItem = ({
1838
- isActive = false,
1839
- isDisabled = false,
1840
- name,
1841
- leftIcon,
1842
- rightIcon,
1843
- onClick
1844
- }) => {
1845
- return /* @__PURE__ */ jsx22("li", { className: "w-full list-none", children: /* @__PURE__ */ jsxs13(
1846
- "button",
2591
+ // packages/Atoms/Drawer/index.tsx
2592
+ import { Drawer } from "vaul";
2593
+ import { jsx as jsx29, jsxs as jsxs18 } from "react/jsx-runtime";
2594
+ var DrawerRoot = ({
2595
+ shouldScaleBackground = true,
2596
+ ...props
2597
+ }) => /* @__PURE__ */ jsx29(Drawer.Root, { shouldScaleBackground, ...props });
2598
+ DrawerRoot.displayName = "Drawer";
2599
+ var DrawerTrigger = ({
2600
+ className,
2601
+ ...props
2602
+ }) => /* @__PURE__ */ jsx29(Drawer.Trigger, { className: cn(className), ...props });
2603
+ DrawerTrigger.displayName = "DrawerTrigger";
2604
+ var DrawerPortal = ({ ...props }) => /* @__PURE__ */ jsx29(Drawer.Portal, { ...props });
2605
+ DrawerPortal.displayName = "DrawerPortal";
2606
+ var DrawerClose = ({ className, ...props }) => /* @__PURE__ */ jsx29(Drawer.Close, { className: cn("absolute right-4 top-4", className), ...props });
2607
+ DrawerClose.displayName = "DrawerClose";
2608
+ var DrawerOverlay = ({
2609
+ className,
2610
+ ...props
2611
+ }) => /* @__PURE__ */ jsx29(Drawer.Overlay, { className: cn("fixed inset-0 z-50 bg-black/80", className), ...props });
2612
+ DrawerOverlay.displayName = "DrawerOverlay";
2613
+ var DrawerContent = ({
2614
+ className,
2615
+ children,
2616
+ ...props
2617
+ }) => /* @__PURE__ */ jsxs18(DrawerPortal, { children: [
2618
+ /* @__PURE__ */ jsx29(DrawerOverlay, {}),
2619
+ /* @__PURE__ */ jsxs18(
2620
+ Drawer.Content,
1847
2621
  {
1848
- "data-active": isActive,
1849
- disabled: isDisabled,
1850
2622
  className: cn(
1851
- "flex w-full items-center justify-start gap-x-1 rounded-lg bg-ui-surface-50 px-3 py-2 !text-ui-note text-ui-text-700",
1852
- "disabled:opacity-30",
1853
- "disabled:cursor-not-allowed",
1854
- "enabled:hover:bg-ui-primary-50",
1855
- "enabled:data-[active=true]:font-semibold",
1856
- "enabled:data-[active=true]:text-ui-text-50",
1857
- "enabled:data-[active=true]:bg-ui-primary-500",
1858
- "transition duration-200"
2623
+ "fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-ui-surface-50",
2624
+ className
1859
2625
  ),
1860
- onClick,
2626
+ ...props,
1861
2627
  children: [
1862
- leftIcon,
1863
- name,
1864
- rightIcon
2628
+ /* @__PURE__ */ jsx29("div", { className: "mx-auto mt-4 h-2 w-24 rounded-full bg-ui-border-300" }),
2629
+ children
1865
2630
  ]
1866
2631
  }
1867
- ) });
2632
+ )
2633
+ ] });
2634
+ DrawerContent.displayName = "DrawerContent";
2635
+ var DrawerHeader = ({ className, ...props }) => /* @__PURE__ */ jsx29("div", { className: cn("grid gap-1.5 p-4 text-center sm:text-left", className), ...props });
2636
+ DrawerHeader.displayName = "DrawerHeader";
2637
+ var DrawerFooter = ({ className, ...props }) => /* @__PURE__ */ jsx29("div", { className: cn("mt-auto flex flex-col gap-2 p-4", className), ...props });
2638
+ DrawerFooter.displayName = "DrawerFooter";
2639
+ var DrawerTitle = ({ className, ...props }) => /* @__PURE__ */ jsx29(
2640
+ Drawer.Title,
2641
+ {
2642
+ className: cn("text-lg font-semibold leading-none tracking-tight", className),
2643
+ ...props
2644
+ }
2645
+ );
2646
+ DrawerTitle.displayName = "DrawerTitle";
2647
+ var DrawerDescription = ({
2648
+ className,
2649
+ ...props
2650
+ }) => /* @__PURE__ */ jsx29(Drawer.Description, { className: cn("text-muted-foreground text-sm", className), ...props });
2651
+ DrawerDescription.displayName = "DrawerDescription";
2652
+
2653
+ // packages/Organisms/Header/components/Navigator.tsx
2654
+ import { LogIn, Menu, UserRoundPlus } from "lucide-react";
2655
+ import { Fragment as Fragment2, jsx as jsx30, jsxs as jsxs19 } from "react/jsx-runtime";
2656
+ var Navigator = ({
2657
+ categories,
2658
+ onShowAllProduct,
2659
+ onCategorySelected,
2660
+ onSignIn,
2661
+ onSignUp
2662
+ }) => {
2663
+ return /* @__PURE__ */ jsxs19(Fragment2, { children: [
2664
+ /* @__PURE__ */ jsxs19(DrawerRoot, { children: [
2665
+ /* @__PURE__ */ jsx30(DrawerTrigger, { asChild: true, children: /* @__PURE__ */ jsx30(Button_default, { variant: "normal", size: "small", className: "mr-2 flex md:hidden", children: /* @__PURE__ */ jsx30(Menu, { size: 20 }) }) }),
2666
+ /* @__PURE__ */ jsx30(DrawerContent, { children: /* @__PURE__ */ jsx30(Command, { children: /* @__PURE__ */ jsxs19(CommandList, { children: [
2667
+ /* @__PURE__ */ jsxs19(CommandGroup, { title: "T\xE0i kho\u1EA3n", heading: "T\xE0i kho\u1EA3n", children: [
2668
+ /* @__PURE__ */ jsx30(CommandItem, { className: "text-ui-small-note text-ui-text-800", children: /* @__PURE__ */ jsxs19("button", { onClick: onSignIn, className: "flex items-center", children: [
2669
+ /* @__PURE__ */ jsx30(LogIn, { size: 16, className: "mr-2" }),
2670
+ "\u0110\u0103ng Nh\u1EADp"
2671
+ ] }) }),
2672
+ /* @__PURE__ */ jsx30(CommandItem, { className: "text-ui-small-note text-ui-text-800", children: /* @__PURE__ */ jsxs19("button", { className: "flex items-center", onClick: onSignUp, children: [
2673
+ /* @__PURE__ */ jsx30(UserRoundPlus, { size: 16, className: "mr-2" }),
2674
+ "\u0110\u0103ng K\xFD"
2675
+ ] }) })
2676
+ ] }),
2677
+ /* @__PURE__ */ jsx30(CommandGroup, { title: "Danh m\u1EE5c", heading: "Danh m\u1EE5c", children: /* @__PURE__ */ jsx30(Accordion, { type: "single", collapsible: true, children: categories.map((category) => /* @__PURE__ */ jsxs19(AccordionItem, { value: category.uuid, className: "border-b-0", children: [
2678
+ /* @__PURE__ */ jsx30(AccordionTrigger, { className: "py-1.5", children: /* @__PURE__ */ jsx30(CommandItem, { className: "py-0", children: /* @__PURE__ */ jsx30("button", { onClick: () => onCategorySelected?.(category.slug), children: category.name }) }) }),
2679
+ /* @__PURE__ */ jsx30(AccordionContent, { children: /* @__PURE__ */ jsx30(CommandList, { children: category.sub.map((child) => /* @__PURE__ */ jsx30(CommandItem, { children: /* @__PURE__ */ jsx30(
2680
+ "button",
2681
+ {
2682
+ className: "size-full pl-2 text-start text-ui-text-700",
2683
+ onClick: () => onCategorySelected?.(`${category.slug}/${child.slug}`),
2684
+ children: child.name
2685
+ }
2686
+ ) }, child.uuid)) }) })
2687
+ ] }, category.uuid)) }) }),
2688
+ /* @__PURE__ */ jsx30(CommandGroup, { title: "Series", heading: "Series" }),
2689
+ /* @__PURE__ */ jsx30(CommandGroup, { title: "H\u01B0\u1EDBng d\u1EABn", heading: "H\u01B0\u1EDBng d\u1EABn" }),
2690
+ /* @__PURE__ */ jsx30(CommandGroup, { title: "Tin t\u1EE9c", heading: "Tin t\u1EE9c" })
2691
+ ] }) }) })
2692
+ ] }),
2693
+ /* @__PURE__ */ jsx30(Flex_default, { className: "hidden grow md:flex", children: /* @__PURE__ */ jsx30(NavigationMenu, { children: /* @__PURE__ */ jsxs19(NavigationMenuList, { children: [
2694
+ /* @__PURE__ */ jsx30(
2695
+ Category_default,
2696
+ {
2697
+ data: categories,
2698
+ onShowAll: onShowAllProduct,
2699
+ onClickCategory: onCategorySelected
2700
+ }
2701
+ ),
2702
+ /* @__PURE__ */ jsx30(Series_default, {}),
2703
+ /* @__PURE__ */ jsx30(
2704
+ NavigationMenuItem,
2705
+ {
2706
+ className: cn(
2707
+ "cursor-pointer !rounded-full !font-bold !text-ui-text-500",
2708
+ navigationMenuTriggerStyle()
2709
+ ),
2710
+ children: /* @__PURE__ */ jsx30(NavigationMenuLink, { children: "H\u01B0\u1EDBng D\u1EABn" })
2711
+ }
2712
+ ),
2713
+ /* @__PURE__ */ jsx30(
2714
+ NavigationMenuItem,
2715
+ {
2716
+ className: cn(
2717
+ "cursor-pointer !rounded-full !font-bold !text-ui-text-500",
2718
+ navigationMenuTriggerStyle()
2719
+ ),
2720
+ children: /* @__PURE__ */ jsx30(NavigationMenuLink, { children: "Tin T\u1EE9c" })
2721
+ }
2722
+ )
2723
+ ] }) }) })
2724
+ ] });
1868
2725
  };
1869
- var MenuItem_default = memo6(MenuItem);
2726
+ var Navigator_default = Navigator;
1870
2727
 
1871
- // packages/Atoms/UserAvatar/index.tsx
1872
- import { memo as memo7 } from "react";
2728
+ // packages/Atoms/Skeleton/index.tsx
2729
+ import { jsx as jsx31 } from "react/jsx-runtime";
2730
+ var Skeleton = ({ className, ...props }) => {
2731
+ return /* @__PURE__ */ jsx31("div", { className: cn("animate-pulse rounded-md bg-zinc-300", className), ...props });
2732
+ };
1873
2733
 
1874
- // packages/Icons/AvatarIcon.tsx
1875
- import { jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
1876
- var AvatarIcon = ({ bgColor, color, size, ...Props }) => {
1877
- return /* @__PURE__ */ jsxs14(
2734
+ // packages/Icons/SmallLogoIcon.tsx
2735
+ import { jsx as jsx32, jsxs as jsxs20 } from "react/jsx-runtime";
2736
+ var SmallLogoIcon = ({ size, ...props }) => {
2737
+ return /* @__PURE__ */ jsxs20(
1878
2738
  "svg",
1879
2739
  {
1880
2740
  xmlns: "http://www.w3.org/2000/svg",
1881
- width: size ?? DEFAULT_ICON_SIZE,
1882
- height: size ?? DEFAULT_ICON_SIZE,
1883
- viewBox: "0 0 96 96",
2741
+ width: size ?? "52",
2742
+ height: size ?? "32",
2743
+ viewBox: "0 0 52 32",
1884
2744
  fill: "none",
1885
- ...Props,
2745
+ ...props,
1886
2746
  children: [
1887
- /* @__PURE__ */ jsx23(
1888
- "path",
1889
- {
1890
- d: "M1.9 48C1.9 73.4604 22.5397 94.1 48 94.1C73.4604 94.1 94.1 73.4604 94.1 48C94.1 22.5397 73.4604 1.9 48 1.9C22.5397 1.9 1.9 22.5397 1.9 48Z",
1891
- fill: bgColor ?? "#6C70F0",
1892
- stroke: "#D4D4D4",
1893
- strokeWidth: "0.2"
1894
- }
1895
- ),
1896
- /* @__PURE__ */ jsx23(
1897
- "path",
1898
- {
1899
- d: "M48 93.75C22.733 93.75 2.25 73.2671 2.25 48C2.25 22.733 22.733 2.25 48 2.25C73.2671 2.25 93.75 22.733 93.75 48C93.75 73.2671 73.2671 93.75 48 93.75Z",
1900
- stroke: color ?? "#FAFAFA",
1901
- strokeWidth: "0.5"
1902
- }
1903
- ),
1904
- /* @__PURE__ */ jsx23(
1905
- "path",
1906
- {
1907
- d: "M47.5064 20C50.0492 20 52.5348 20.7624 54.6492 22.1909C56.7636 23.6194 58.4116 25.6497 59.3848 28.0251C60.358 30.4006 60.6124 33.0144 60.1164 35.5362C59.6204 38.0579 58.3956 40.3744 56.5976 42.1924C54.7996 44.0104 52.5084 45.2488 50.0144 45.7504C47.5204 46.252 44.9352 45.9944 42.586 45.0104C40.2368 44.0264 38.2286 42.3604 36.8158 40.2224C35.4031 38.0846 34.649 35.5712 34.649 33L34.6619 32.4358C34.8057 29.089 36.2217 25.9274 38.6148 23.6105C41.008 21.2936 44.1932 20.0002 47.5064 20ZM52.6492 51.2C56.0592 51.2 65.3292 52.5696 67.7404 55.0076C70.1516 57.4456 71.0124 60.552 71.0124 64V66.8C71.0124 68.1792 70.4708 69.5016 69.5064 70.4768C68.5416 71.452 67.2336 72 65.8696 72H29.1428C27.7789 72 26.4708 71.452 25.5063 70.4768C24.5418 69.5016 24 68.1792 24 66.8V64.2C24 60.752 25.3546 57.4456 27.7658 55.0076C30.177 52.5696 38.9534 51.2 42.3632 51.2H52.6492Z",
1908
- fill: color ?? "#FAFAFA"
1909
- }
1910
- )
2747
+ /* @__PURE__ */ jsxs20("g", { clipPath: "url(#clip0_1128_4961)", children: [
2748
+ /* @__PURE__ */ jsx32(
2749
+ "path",
2750
+ {
2751
+ d: "M5.98316 18.7938C5.12901 19.0115 4.25182 19.1256 3.37045 19.1337C2.49226 19.1403 1.61603 19.0497 0.75774 18.8635C0.619557 18.8295 0.490382 18.7659 0.379121 18.6771C0.26786 18.5884 0.177159 18.4765 0.113272 18.3492C-0.0228783 18.1115 -0.0604037 17.8298 0.00876346 17.5647C0.252616 16.5535 0.496469 15.5598 0.731613 14.566C0.966757 13.5723 1.21061 12.5786 1.43704 11.5674C1.33762 11.6084 1.23104 11.6291 1.12352 11.6284C1.05537 11.6255 0.989222 11.6045 0.931921 11.5674C0.879158 11.5331 0.836948 11.4848 0.809994 11.4279L0.00876346 10.0768L0.879667 9.47533L1.55897 8.96975L2.23828 8.45545C2.23828 8.45545 2.23828 8.38571 2.23828 8.34213C2.23219 8.30168 2.23219 8.26054 2.23828 8.22009C2.38633 7.6622 2.52567 7.08688 2.6476 6.4767C2.76953 5.86651 2.935 5.28247 3.10047 4.7333C3.27203 4.14156 3.47554 3.55957 3.7101 2.98991C3.93418 2.44088 4.22681 1.92245 4.58101 1.447C4.72906 1.26395 4.91195 1.05474 5.12967 0.828099C5.34234 0.612787 5.57904 0.42267 5.8351 0.261495C6.0719 0.10773 6.34561 0.0204265 6.62763 0.00870302C6.77832 0.00609128 6.92783 0.0358657 7.06605 0.096016C7.20427 0.156166 7.32799 0.245293 7.42886 0.357382C7.62749 0.551754 7.77679 0.790858 7.86431 1.05474C7.96148 1.338 8.03147 1.62989 8.07333 1.92644C8.10994 2.21563 8.13029 2.50666 8.13429 2.79813V3.61753C8.10191 4.21925 7.96025 4.81003 7.71626 5.36092C7.4676 5.91931 7.158 6.44845 6.7931 6.9387C6.41222 7.45183 5.98672 7.93023 5.52158 8.36828C5.04258 8.81284 4.55488 9.23997 4.04975 9.64967L2.30795 16.9632C2.86992 17.0154 3.43552 17.0154 3.9975 16.9632C4.57052 16.9267 5.13743 16.8244 5.68705 16.6581L6.13121 18.4712V18.5933C6.13121 18.6892 6.07896 18.7502 5.98316 18.7938ZM5.41707 4.219C5.24289 4.7333 5.07742 5.26504 4.93808 5.80549L5.07742 5.59628C5.34417 5.23263 5.58568 4.85109 5.80027 4.45436C6.00479 4.05004 6.10082 3.59947 6.07896 3.14681C6.08959 3.06872 6.08959 2.98955 6.07896 2.91145C5.80915 3.32056 5.58707 3.75927 5.41707 4.219Z",
2752
+ fill: "#6C70F0"
2753
+ }
2754
+ ),
2755
+ /* @__PURE__ */ jsx32(
2756
+ "path",
2757
+ {
2758
+ d: "M14.7792 12.0033L15.1799 12.2561C15.3518 12.3553 15.515 12.469 15.6676 12.596C15.3739 13.233 15.0394 13.8503 14.666 14.444C14.308 15.0223 13.8778 15.5525 13.3858 16.0218C12.997 16.4097 12.4983 16.6684 11.9575 16.7627C11.674 16.787 11.389 16.738 11.1298 16.6204C10.8706 16.5029 10.6458 16.3208 10.477 16.0915C10.3666 15.9599 10.2757 15.8131 10.207 15.6557C9.89966 16.0578 9.47175 16.351 8.98594 16.4921C8.50014 16.6333 7.98193 16.6151 7.5072 16.4402C6.88477 16.2821 6.33486 15.9161 5.94829 15.4029C5.57672 14.9026 5.3236 14.3243 5.20802 13.7118C5.07753 13.0638 5.0307 12.4017 5.06867 11.7418C5.10617 11.1168 5.17593 10.4941 5.27769 9.87633V9.82403C5.26637 9.79307 5.26637 9.7591 5.27769 9.72814L5.46929 8.85645L6.14859 8.95233C6.46073 8.98388 6.76959 9.04221 7.07175 9.12667C7.24593 9.12667 7.35044 9.28358 7.37657 9.51022C7.39281 9.77329 7.37229 10.0373 7.3156 10.2947V10.3383C7.24916 10.6262 7.19685 10.9171 7.15884 11.21C7.12941 11.6017 7.12941 11.9951 7.15884 12.3868C7.15576 12.7771 7.19962 13.1664 7.28948 13.5462C7.31319 13.6962 7.37007 13.8389 7.45595 13.9641C7.54183 14.0893 7.65456 14.1937 7.78589 14.2697C7.88031 14.3191 7.98362 14.3492 8.0898 14.3582C8.19597 14.3672 8.30287 14.3549 8.40423 14.322C8.62916 14.2592 8.83542 14.1425 9.00516 13.982C9.18949 13.809 9.35051 13.6127 9.48415 13.398C9.62236 13.1907 9.72263 12.9605 9.78026 12.7181C9.78026 12.1515 9.78026 11.6197 9.78026 11.1141C9.78026 10.6086 9.78026 10.2424 9.82381 9.91992L11.5134 9.45792H11.8008C11.874 9.47334 11.9445 9.49979 12.0098 9.53637C12.0385 9.55283 12.062 9.57716 12.0774 9.60649C12.0928 9.63583 12.0996 9.66896 12.0969 9.70199C12.0969 9.88505 12.0446 10.1727 12.0098 10.5737C11.9749 10.9747 11.9227 11.4454 11.8791 11.8725C11.8356 12.2997 11.792 12.7442 11.7746 13.1975C11.7448 13.5106 11.7448 13.8258 11.7746 14.1389C11.8095 14.3191 11.8791 14.4063 11.9836 14.4004C12.1249 14.3718 12.2531 14.2985 12.3494 14.1912C12.5076 14.038 12.6559 13.875 12.7936 13.7031C12.9548 13.5136 13.106 13.3157 13.2465 13.1103C13.3858 12.9098 13.499 12.7268 13.5948 12.5612L13.7951 12.2473C13.8239 12.1932 13.8558 12.1408 13.8909 12.0904C13.9156 12.034 13.9478 11.9813 13.9867 11.9335C14.0172 11.8689 14.0584 11.8099 14.1086 11.7592C14.1448 11.7242 14.1901 11.7001 14.2393 11.6895C14.2771 11.6839 14.3158 11.6872 14.3521 11.6994C14.3884 11.7115 14.4214 11.732 14.4483 11.7592C14.5354 11.8376 14.6486 11.9074 14.7792 12.0033Z",
2759
+ fill: "#6C70F0"
2760
+ }
2761
+ ),
2762
+ /* @__PURE__ */ jsx32(
2763
+ "path",
2764
+ {
2765
+ d: "M21.5112 12.439L21.9206 12.6831C22.0938 12.7782 22.2597 12.886 22.417 13.0056C22.1621 13.6236 21.8713 14.2261 21.5461 14.8101C21.2613 15.3495 20.8972 15.8431 20.4661 16.2745C20.1297 16.6226 19.6838 16.8442 19.2033 16.9021C18.9261 16.8958 18.6536 16.8285 18.4053 16.705C18.1569 16.5814 17.9388 16.4047 17.7663 16.1873C17.5099 15.929 17.3266 15.6071 17.2351 15.2546C17.1549 14.894 17.114 14.5257 17.1132 14.1563C17.1132 13.7727 17.1132 13.3892 17.1741 12.9969C17.1948 12.6398 17.1948 12.2818 17.1741 11.9247C17.1741 11.6458 17.0783 11.4889 16.9216 11.4453C16.7648 11.4017 16.5906 11.5673 16.3903 11.9247C16.1432 12.5087 15.9678 13.1204 15.8678 13.7466C15.6578 14.8983 15.5298 16.0635 15.4846 17.2334L13.5338 17.1113V16.1176C13.5338 14.9931 13.4902 13.8076 13.5338 12.5436C13.5773 11.2797 13.6208 10.0506 13.7079 8.86509C13.7172 8.80835 13.7382 8.75419 13.7697 8.70614C13.8012 8.65808 13.8425 8.61719 13.8908 8.58614C13.91 8.57748 13.9308 8.573 13.9518 8.573C13.9728 8.573 13.9936 8.57748 14.0128 8.58614L15.7546 8.63844C15.7546 8.83893 15.711 9.03071 15.7023 9.2312C15.6936 9.43169 15.7023 9.62346 15.7023 9.83267C15.8854 9.61839 16.1114 9.44498 16.3657 9.32367C16.62 9.20237 16.8969 9.13586 17.1785 9.12847C17.4601 9.12107 17.7401 9.17295 18.0004 9.28074C18.2607 9.38854 18.4954 9.54984 18.6895 9.75422C18.9648 10.0175 19.1609 10.3527 19.2556 10.7218C19.3544 11.0914 19.4042 11.4724 19.4036 11.855C19.4121 12.2596 19.3947 12.6643 19.3514 13.0667C19.3119 13.4372 19.2974 13.81 19.3078 14.1824C19.3078 14.4614 19.3862 14.5486 19.5082 14.4527C19.6754 14.3185 19.8145 14.1526 19.9175 13.9645C20.0655 13.7379 20.2049 13.4851 20.3442 13.2236L20.6142 12.7006C20.6488 12.653 20.6753 12.5999 20.6926 12.5436L20.771 12.378C20.8035 12.3146 20.8445 12.256 20.8929 12.2037C20.9314 12.1699 20.9756 12.1433 21.0235 12.1252C21.0758 12.1252 21.1455 12.1252 21.2325 12.195C21.3196 12.2647 21.3719 12.3519 21.5112 12.439Z",
2766
+ fill: "#6C70F0"
2767
+ }
2768
+ ),
2769
+ /* @__PURE__ */ jsx32(
2770
+ "path",
2771
+ {
2772
+ d: "M30.4467 12.0033L30.8473 12.256C31.0179 12.3575 31.1809 12.4711 31.335 12.596C31.0383 13.2331 30.7008 13.8503 30.3248 14.444C29.9725 15.0239 29.5449 15.5544 29.0533 16.0218C28.6625 16.4117 28.1604 16.6706 27.6163 16.7627C27.3329 16.7853 27.0485 16.7355 26.7896 16.6181C26.5307 16.5008 26.3057 16.3196 26.1358 16.0915C25.8788 15.7455 25.7112 15.3412 25.6481 14.9147C25.5075 15.0815 25.3531 15.2361 25.1865 15.3767C25.0261 15.5255 24.8574 15.6652 24.6813 15.7951C24.3283 16.0523 23.9137 16.2116 23.4795 16.2571C23.0881 16.2946 22.6939 16.2254 22.3386 16.0566C21.9885 15.8903 21.6882 15.6348 21.4677 15.3157C21.2044 14.9597 21.0257 14.5483 20.9452 14.1128C20.8602 13.6851 20.8194 13.2499 20.8232 12.8139C20.8238 12.3677 20.8764 11.923 20.98 11.489C21.0842 11.0595 21.2391 10.6439 21.4416 10.2511C21.6491 9.85822 21.9232 9.5043 22.2515 9.20511C22.5636 8.89708 22.9382 8.65981 23.3499 8.50941C23.7616 8.35901 24.2009 8.29899 24.6378 8.33341C25.5241 8.42746 26.3407 8.85797 26.9196 9.53635L27.1808 9.4579H27.4769C27.5479 9.47178 27.6157 9.49835 27.6773 9.53635C27.7068 9.55195 27.7309 9.57611 27.7464 9.60567C27.762 9.63523 27.7682 9.6688 27.7643 9.70197C27.7643 9.88503 27.7208 10.1727 27.6773 10.5737C27.6337 10.9747 27.5989 11.4454 27.5466 11.8725C27.4944 12.2996 27.4682 12.7442 27.4508 13.1975C27.421 13.5106 27.421 13.8258 27.4508 14.1389C27.4508 14.322 27.5466 14.4091 27.6511 14.4004C27.793 14.3737 27.9218 14.3 28.0169 14.1912C28.1781 14.0383 28.3293 13.8752 28.4698 13.7031C28.6282 13.5135 28.7765 13.3156 28.9139 13.1103C29.0533 12.9098 29.1752 12.7268 29.271 12.5611L29.4626 12.2473C29.4977 12.197 29.5297 12.1446 29.5584 12.0904L29.6542 11.9335C29.6876 11.8706 29.7285 11.8121 29.7761 11.7592C29.8155 11.7239 29.8636 11.6998 29.9155 11.6894C29.952 11.6845 29.9891 11.6883 30.0239 11.7004C30.0587 11.7125 30.0902 11.7327 30.1158 11.7592L30.4467 12.0033ZM25.0471 10.7219C24.9283 10.62 24.7892 10.5448 24.639 10.5012C24.4888 10.4576 24.331 10.4467 24.1762 10.4691C24.0076 10.5106 23.8508 10.5903 23.7179 10.7022C23.585 10.814 23.4796 10.955 23.4098 11.1141C23.203 11.4577 23.0502 11.8311 22.957 12.2212C22.8709 12.6073 22.8503 13.0051 22.896 13.398C22.8928 13.4619 22.8928 13.5259 22.896 13.5897C22.896 13.6856 22.9483 13.7902 22.9831 13.8861C23.0106 13.972 23.0426 14.0564 23.0789 14.1389C23.0789 14.2086 23.1573 14.2348 23.2008 14.1999C23.3722 14.1325 23.5268 14.0284 23.6537 13.8948C23.7798 13.7702 23.8963 13.6362 24.002 13.4939C24.6631 12.7204 25.0329 11.7397 25.0471 10.7219Z",
2773
+ fill: "#6C70F0"
2774
+ }
2775
+ ),
2776
+ /* @__PURE__ */ jsx32(
2777
+ "path",
2778
+ {
2779
+ d: "M39.2341 12.0034L39.6347 12.2562C39.8066 12.3554 39.9698 12.4691 40.1224 12.5961C39.8785 13.1192 39.6173 13.6247 39.3212 14.139C39.0561 14.6154 38.7376 15.0599 38.3719 15.464C38.0407 15.9064 37.6577 16.3073 37.231 16.6582C36.8465 16.9662 36.4322 17.2348 35.9943 17.4602C35.5151 17.7067 34.9829 17.8324 34.4441 17.8263C34.003 17.8571 33.5628 17.7538 33.1813 17.5299C32.7915 17.3108 32.4507 17.0142 32.1798 16.6582C31.9067 16.28 31.7059 15.8544 31.5876 15.403C31.4713 14.9587 31.4564 14.494 31.544 14.0432L31.6921 13.3632C31.6791 13.2982 31.6883 13.2306 31.7182 13.1715C31.7532 13.1277 31.7987 13.0935 31.8505 13.0722C31.9023 13.0509 31.9587 13.043 32.0143 13.0494L32.4236 13.1104L33.0333 13.1976L33.8084 13.3196C33.7474 13.5637 33.6951 13.7904 33.6603 13.9996C33.6255 14.2088 33.608 14.357 33.5906 14.54C33.561 14.6809 33.561 14.8263 33.5906 14.9671C33.6318 15.1256 33.7274 15.2644 33.8606 15.3594C33.9775 15.4529 34.1206 15.5077 34.2699 15.5163C34.3432 15.5197 34.4164 15.5083 34.4852 15.4828C34.554 15.4574 34.6171 15.4184 34.6705 15.3681C34.8068 15.2346 34.8955 15.0601 34.9231 14.8713C35.0248 14.4225 34.9976 13.9541 34.8447 13.5201C34.6547 13.1007 34.4395 12.6932 34.2003 12.2998C34.1132 12.1516 34.0348 12.0121 33.9651 11.8726C33.8954 11.7332 33.8345 11.6024 33.7822 11.4716C33.4886 11.721 33.1706 11.9401 32.8329 12.1254C32.5042 12.3181 32.1492 12.462 31.7792 12.5525C31.4142 12.6267 31.0381 12.6267 30.6731 12.5525C30.266 12.4722 29.8839 12.2959 29.5583 12.0382L30.4293 10.2949C30.7858 10.3911 31.1614 10.3911 31.5179 10.2949C31.9422 10.1769 32.347 9.99779 32.7197 9.76312C33.2892 9.39086 33.8025 8.93879 34.2438 8.4207C34.2826 8.38355 34.3176 8.34267 34.3483 8.29867L34.4615 8.17663L35.1844 7.30493L36.5691 8.22893C36.6317 8.28551 36.6899 8.3467 36.7433 8.41199C36.7597 8.44751 36.7682 8.48618 36.7682 8.52531C36.7682 8.56444 36.7597 8.6031 36.7433 8.63863C36.7168 8.77249 36.6535 8.89628 36.5604 8.99602C36.4102 9.18426 36.2441 9.35924 36.064 9.51904C35.863 9.69462 35.738 9.94158 35.7156 10.2077C35.7088 10.4552 35.7626 10.7006 35.8724 10.9225C35.9903 11.1737 36.1271 11.4156 36.2817 11.646C36.4573 11.8539 36.6202 12.0722 36.7694 12.2998C36.9025 12.5491 36.9993 12.8162 37.0568 13.093C37.1244 13.3791 37.1652 13.671 37.1788 13.9647H37.231C37.3475 13.8535 37.4526 13.7309 37.5445 13.5986C37.6577 13.433 37.771 13.2673 37.8755 13.0843C37.98 12.9012 38.0671 12.7443 38.1367 12.5961L38.25 12.2998L38.3545 12.1429C38.3792 12.0864 38.4114 12.0337 38.4503 11.9859C38.4776 11.9196 38.5192 11.86 38.5722 11.8116C38.6084 11.7766 38.6536 11.7525 38.7028 11.7419C38.7638 11.7419 38.8248 11.7419 38.9118 11.8116C38.9989 11.8813 39.1034 11.9075 39.2341 12.0034Z",
2780
+ fill: "#6C70F0"
2781
+ }
2782
+ ),
2783
+ /* @__PURE__ */ jsx32(
2784
+ "path",
2785
+ {
2786
+ d: "M10.7905 24.7387L11.1911 24.9915C11.363 25.0907 11.5262 25.2045 11.6788 25.3315C11.4349 25.8545 11.1737 26.3688 10.8776 26.8744C10.6147 27.3521 10.296 27.7969 9.92828 28.1994C9.59786 28.6346 9.21462 29.027 8.7874 29.3674C8.40504 29.6783 7.99044 29.9472 7.55072 30.1694C7.07146 30.4159 6.53932 30.5416 6.00051 30.5355C5.559 30.5709 5.11749 30.4672 4.7377 30.2391C4.3479 30.02 4.00706 29.7234 3.73616 29.3674C3.46158 28.9933 3.2606 28.5702 3.14395 28.1209C3.02434 27.6805 3.00352 27.2191 3.08298 26.7698L3.23104 26.0899C3.21955 26.0411 3.21955 25.9904 3.23104 25.9417C3.26604 25.8979 3.31157 25.8638 3.36336 25.8424C3.41515 25.8211 3.4715 25.8132 3.52714 25.8196L3.93647 25.8807L4.5461 25.9678C4.78995 26.0201 5.05122 26.055 5.3212 26.0899C5.26149 26.3136 5.21496 26.5406 5.18186 26.7698C5.18186 26.9528 5.1209 27.1272 5.10348 27.319C5.07462 27.4599 5.07462 27.6052 5.10348 27.7461C5.1507 27.8993 5.24522 28.0336 5.37346 28.1296C5.49039 28.2231 5.6334 28.2779 5.78278 28.2865C5.85551 28.2916 5.92849 28.2818 5.99735 28.2578C6.0662 28.2339 6.12949 28.1962 6.1834 28.1471C6.32136 28.0113 6.41022 27.8334 6.43596 27.6415C6.57071 27.1859 6.56768 26.7006 6.42725 26.2468C6.23924 25.8235 6.02397 25.413 5.78278 25.0177C5.69569 24.8695 5.62602 24.73 5.54764 24.5905C5.46926 24.4511 5.417 24.3203 5.36475 24.1896C5.07267 24.4369 4.75772 24.6558 4.42417 24.8433C4.09338 25.0382 3.73521 25.1822 3.36167 25.2705C2.99721 25.3495 2.62008 25.3495 2.25562 25.2705C1.85027 25.1896 1.46889 25.0166 1.14087 24.7649L2.01177 23.0215C2.36828 23.1177 2.74389 23.1177 3.1004 23.0215C3.52599 22.9073 3.9314 22.7279 4.30225 22.4897C4.86978 22.1183 5.38275 21.6694 5.82633 21.1561L5.93084 21.034C5.96424 20.9895 6.00219 20.9486 6.04405 20.912L6.7669 20.0403L8.10809 21.0166L8.28227 21.1996C8.30548 21.2337 8.32134 21.2722 8.32884 21.3127C8.33634 21.3532 8.33531 21.3949 8.32582 21.435C8.29911 21.5644 8.23906 21.6846 8.15164 21.7837C7.9956 21.9695 7.82681 22.1443 7.64652 22.3067C7.44693 22.4834 7.32232 22.7297 7.29815 22.9953C7.29234 23.2455 7.34607 23.4935 7.45492 23.7188C7.5729 23.9672 7.70974 24.2062 7.86424 24.4336C8.01645 24.6491 8.15603 24.8732 8.28227 25.1048C8.41398 25.3517 8.5107 25.6158 8.56967 25.8894C8.63665 26.1756 8.67746 26.4674 8.6916 26.7611H8.74385C8.8648 26.6542 8.97032 26.5309 9.05738 26.395C9.1706 26.2293 9.28381 26.0637 9.38832 25.8894C9.49283 25.715 9.57992 25.5407 9.64959 25.4012L9.80635 25.1048L9.91086 24.9479C9.9396 24.8937 9.97159 24.8413 10.0067 24.791C10.0392 24.7276 10.0802 24.669 10.1286 24.6167C10.1669 24.5848 10.2114 24.561 10.2592 24.547C10.3202 24.547 10.3812 24.547 10.4682 24.6167C10.5733 24.6632 10.6809 24.704 10.7905 24.7387Z",
2787
+ fill: "#6C70F0"
2788
+ }
2789
+ ),
2790
+ /* @__PURE__ */ jsx32(
2791
+ "path",
2792
+ {
2793
+ d: "M15.0404 24.7649L15.441 25.0177C15.6116 25.1191 15.7746 25.2328 15.9287 25.3577C15.6501 25.9592 15.3104 26.5955 14.9098 27.2754C14.5498 27.9073 14.114 28.4928 13.6121 29.0188C13.2443 29.4413 12.7593 29.7447 12.2187 29.8905C11.7484 29.9864 11.3478 29.7423 10.9036 29.1583C10.655 28.7855 10.4806 28.3681 10.3898 27.9292C10.2689 27.3757 10.1961 26.8128 10.1721 26.2468C10.1721 25.6657 10.1721 25.0293 10.1721 24.3378C10.1721 23.6666 10.2592 22.9954 10.3463 22.3155H9.91081H9.6147C9.54241 22.3246 9.46926 22.3246 9.39697 22.3155L9.44923 20.4239H10.5901C10.5901 20.2844 10.6249 20.0578 10.6946 19.744C10.7556 19.4389 10.8078 19.1251 10.8688 18.7938C10.9298 18.4626 10.9733 18.1662 11.0256 17.8785C11.0778 17.5909 11.1039 17.3729 11.1214 17.2422L13.2551 17.5298C13.2551 17.6257 13.2028 17.8088 13.1593 18.079C13.1157 18.3492 13.0635 18.6282 13.0112 18.9507C12.959 19.2732 12.9154 19.5348 12.8806 19.8224C12.8457 20.1101 12.8109 20.2844 12.7935 20.3977H13.1593H13.4728C13.5163 20.3977 13.5686 20.4762 13.6296 20.6767C13.6916 20.899 13.7324 21.1266 13.7515 21.3566C13.7731 21.5885 13.7731 21.822 13.7515 22.054C13.7515 22.2632 13.6905 22.3678 13.6121 22.3678H13.2551H13.1244H12.4538C12.3755 22.9344 12.3058 23.4923 12.2622 24.0327C12.2187 24.5732 12.1839 25.0787 12.1752 25.532C12.1664 25.9853 12.1752 26.4037 12.1752 26.7088C12.1821 26.96 12.2509 27.2055 12.3755 27.4236C12.4364 27.5108 12.5496 27.4236 12.7151 27.2318C12.8993 26.987 13.0681 26.7308 13.2202 26.4647C13.4031 26.1684 13.5686 25.872 13.7167 25.593L14.0215 25.0439C14.0558 24.9947 14.085 24.9421 14.1086 24.887C14.1304 24.831 14.1597 24.7782 14.1956 24.7301C14.223 24.6637 14.2646 24.6042 14.3176 24.5557C14.3395 24.5328 14.3659 24.5145 14.3951 24.5021C14.4243 24.4896 14.4557 24.4832 14.4874 24.4832C14.5191 24.4832 14.5505 24.4896 14.5797 24.5021C14.6089 24.5145 14.6353 24.5328 14.6572 24.5557C14.78 24.6343 14.908 24.7042 15.0404 24.7649Z",
2794
+ fill: "#6C70F0"
2795
+ }
2796
+ ),
2797
+ /* @__PURE__ */ jsx32(
2798
+ "path",
2799
+ {
2800
+ d: "M27.9212 25.1484L28.165 25.3315C28.0692 25.532 27.9734 25.7325 27.8602 25.9504C27.747 26.1683 27.6512 26.395 27.538 26.6216L27.1896 27.2928L26.8064 27.9379C26.6855 28.1506 26.5456 28.3519 26.3884 28.5393L25.9529 29.0798C25.6936 29.3561 25.4011 29.5991 25.082 29.8033C24.9544 29.8861 24.8092 29.938 24.6579 29.9546C24.5067 29.9713 24.3537 29.9523 24.2111 29.8992C24.035 29.8402 23.873 29.7455 23.7351 29.621C23.5973 29.4966 23.4865 29.3449 23.4099 29.1757C23.3376 29.0462 23.2736 28.9123 23.2183 28.7747C23.1486 28.6178 23.0877 28.4522 23.0267 28.2778C22.8819 27.7559 22.8144 27.2155 22.8264 26.6739C22.8264 26.4124 22.8699 26.1596 22.9048 25.9068C22.9396 25.654 22.9744 25.4012 23.0267 25.1397C23.0855 24.6622 23.1816 24.19 23.3141 23.7276C23.136 23.729 22.9611 23.6807 22.809 23.5881C22.5685 24.0744 22.2475 24.5165 21.8597 24.8956C21.4829 25.2884 21.0029 25.5664 20.4749 25.6976C20.1874 25.7545 19.8916 25.7545 19.604 25.6976C19.604 25.8894 19.604 26.0899 19.604 26.2816C19.604 26.4734 19.604 26.6739 19.5431 26.8918C19.4402 27.556 19.1999 28.1914 18.8376 28.7573C18.5156 29.2784 18.062 29.7053 17.5226 29.9951C16.9436 30.2905 16.2736 30.3529 15.6501 30.1694C15.1806 30.0917 14.7576 29.8396 14.4657 29.4633C14.3038 29.2916 14.1714 29.0942 14.0738 28.8793C13.9809 28.6701 13.8938 28.4522 13.8125 28.2255C13.6809 27.7582 13.6308 27.2716 13.6645 26.7872C13.6883 26.3255 13.7702 25.8686 13.9083 25.4274C14.0381 25.1278 14.1865 24.8367 14.3525 24.5557C14.5276 24.2758 14.7288 24.0131 14.9534 23.7712C15.3919 23.2999 15.9436 22.9488 16.5559 22.7513L16.4775 22.6118L16.4078 22.4636C16.2587 22.2412 16.1524 21.9928 16.0943 21.7314C16.0574 21.5884 16.0574 21.4385 16.0943 21.2955C16.1325 21.1969 16.1992 21.1119 16.2859 21.0515L17.7926 20.3454L18.1845 21.2171C18.2194 21.3264 18.2662 21.4316 18.3238 21.5309L18.498 21.8796C18.559 22.019 18.6373 22.1759 18.7157 22.359C18.7848 22.4806 18.8665 22.5946 18.9596 22.699L19.3254 23.0825C19.446 23.2077 19.5804 23.3188 19.726 23.4138C19.8196 23.4857 19.931 23.5309 20.0482 23.5445C20.3 23.4727 20.5149 23.3075 20.6491 23.0825C20.812 22.8745 20.9467 22.6459 21.0497 22.4026C21.0637 22.3311 21.0968 22.2648 21.1455 22.2108C21.0315 22.0809 20.9294 21.9408 20.8407 21.7924C20.746 21.6384 20.6616 21.4782 20.5882 21.313C20.4682 21.0962 20.369 20.8686 20.2921 20.633C20.2581 20.4956 20.2581 20.352 20.2921 20.2146C20.3356 20.1243 20.385 20.0369 20.4401 19.9531L21.8074 19.2732C21.8703 19.5042 21.9672 19.7245 22.0948 19.927C22.1906 20.171 22.269 20.3367 22.3126 20.4326C22.5169 20.8755 22.8471 21.2484 23.2618 21.5047C23.6956 21.7302 24.1913 21.8068 24.6727 21.7227C24.84 21.7224 25.0057 21.755 25.1604 21.8185C25.2944 21.9082 25.4147 22.0168 25.5175 22.1411C25.6176 22.2773 25.6914 22.431 25.7352 22.5944C25.7877 22.7439 25.7877 22.9068 25.7352 23.0564C25.6223 23.3401 25.5292 23.6314 25.4565 23.9281C25.3781 24.207 25.3172 24.4859 25.2475 24.7998C25.1778 25.1136 25.1343 25.3751 25.0994 25.6715C25.0646 25.9678 25.0385 26.2293 25.0036 26.5431V26.8134C24.9953 26.8595 24.9953 26.9067 25.0036 26.9528C25.0036 27.1359 25.0036 27.2231 25.1082 27.2231C25.2127 27.2231 25.2475 27.1708 25.3433 27.0574L25.4652 26.8308L25.6394 26.5693C25.7011 26.4743 25.7564 26.3753 25.8049 26.2729C25.8571 26.177 25.9181 26.0811 25.9791 25.9853C26.04 25.8894 26.0749 25.7935 26.1271 25.7063L26.249 25.4535C26.249 25.3664 26.31 25.3053 26.3274 25.253L26.3884 25.131L26.4406 25.0613L26.4929 24.9915C26.4914 24.9625 26.4914 24.9334 26.4929 24.9044V24.8172C26.5254 24.7538 26.5665 24.6951 26.6148 24.6428L26.7629 24.5731C26.8311 24.5821 26.8965 24.6059 26.9545 24.6428L27.0851 24.7562L27.2941 24.8869L27.4857 25.0264C27.5507 25.0647 27.6175 25.0996 27.686 25.131L27.9212 25.1484ZM17.4703 25.6279C17.4647 25.3311 17.3707 25.0427 17.2004 24.7998C17.0329 24.8121 16.8726 24.8727 16.7388 24.9741C16.6594 25.0163 16.5862 25.0691 16.521 25.131L16.3033 25.3315C16.1805 25.4873 16.0671 25.6503 15.9637 25.8196C15.8799 25.9681 15.8071 26.1225 15.7459 26.2816C15.7459 26.3775 15.7024 26.5431 15.6676 26.7698C15.6415 26.9869 15.6415 27.2064 15.6676 27.4236C15.6954 27.624 15.7636 27.8168 15.8679 27.9902C15.8815 28.0302 15.903 28.067 15.9312 28.0984C15.9593 28.1299 15.9935 28.1553 16.0318 28.1733C16.07 28.1912 16.1114 28.2012 16.1536 28.2026C16.1958 28.2041 16.2378 28.1971 16.2772 28.1819C16.4111 28.1611 16.5383 28.1093 16.6487 28.0306C16.759 27.9519 16.8495 27.8485 16.913 27.7287C17.1056 27.4173 17.2523 27.0796 17.3484 26.7262C17.4348 26.3668 17.4728 25.9974 17.4616 25.6279H17.4703Z",
2801
+ fill: "#6C70F0"
2802
+ }
2803
+ ),
2804
+ /* @__PURE__ */ jsx32(
2805
+ "path",
2806
+ {
2807
+ d: "M34.7576 25.3751C34.4868 25.8581 34.1657 26.311 33.7996 26.7263C33.4213 27.1575 32.9739 27.5228 32.4759 27.8072C31.9433 28.1023 31.3427 28.2525 30.7341 28.243C29.8686 28.2822 29.0093 28.08 28.252 27.659C27.6663 27.317 27.1777 26.8309 26.8324 26.2468C26.5125 25.6865 26.311 25.0664 26.2402 24.425C26.1579 23.8468 26.1579 23.2598 26.2402 22.6816C26.3485 22.0854 26.5799 21.5183 26.9195 21.0166C27.207 20.5961 27.6006 20.2592 28.0604 20.0403C28.5873 19.7836 29.1572 19.627 29.7412 19.5783C30.1769 19.5619 30.6116 19.63 31.0215 19.7788C31.3878 19.9081 31.7229 20.113 32.005 20.3803C32.2871 20.6476 32.5098 20.9714 32.6587 21.3304C32.814 21.6819 32.8941 22.062 32.8939 22.4462C32.9051 22.8599 32.8059 23.2692 32.6065 23.6317C32.4232 23.9657 32.1779 24.2616 31.8836 24.5034C31.5987 24.7319 31.2779 24.9115 30.9344 25.0352C30.6251 25.1515 30.298 25.2134 29.9677 25.2182C29.5328 25.2141 29.1033 25.1222 28.7049 24.948C28.9056 25.3771 29.2341 25.7334 29.6454 25.9679C30.0266 26.181 30.471 26.2521 30.8995 26.1684C31.4076 26.0545 31.8764 25.8079 32.2581 25.4536C32.7815 24.9722 33.2124 24.3991 33.5297 23.7625C33.626 23.6026 33.7464 23.4585 33.8867 23.3354C34.0086 23.2307 34.209 23.2743 34.4789 23.4661L34.9666 23.8061C35.1321 23.9194 35.2715 24.024 35.4021 24.1024C35.21 24.5378 34.9949 24.9626 34.7576 25.3751ZM29.001 21.9581C28.8277 22.1779 28.6869 22.4216 28.5829 22.6816L28.7658 22.8995C28.8226 22.9658 28.8903 23.0219 28.9661 23.0651C29.1566 23.245 29.402 23.3555 29.6628 23.3789C29.8442 23.3844 30.0211 23.3223 30.1593 23.2046C30.2922 23.0731 30.3857 22.9071 30.4292 22.7252C30.4726 22.5417 30.4726 22.3507 30.4292 22.1673C30.3908 21.9968 30.3064 21.84 30.1854 21.714C30.1145 21.653 30.0303 21.6094 29.9396 21.5867C29.8489 21.564 29.7541 21.5628 29.6628 21.5832C29.4073 21.6271 29.174 21.7561 29.001 21.9494V21.9581Z",
2808
+ fill: "#6C70F0"
2809
+ }
2810
+ ),
2811
+ /* @__PURE__ */ jsx32(
2812
+ "path",
2813
+ {
2814
+ d: "M43.033 31.0058L43.0327 31.0057C40.9185 30.257 39.1878 28.6983 38.2216 26.6724C37.2554 24.6464 37.1329 22.3191 37.881 20.2027C38.6291 18.0862 40.1865 16.354 42.2104 15.3871C44.2341 14.4202 46.5585 14.2975 48.6725 15.0459C49.0434 15.1787 49.4041 15.3367 49.7522 15.5187C48.318 15.7245 46.943 16.2592 45.7383 17.0898C44.0981 18.2206 42.8576 19.8418 42.1942 21.7212C41.5273 23.6016 41.4714 25.6448 42.0345 27.5589C42.4491 28.9681 43.1836 30.2542 44.1723 31.3209C43.7862 31.2432 43.4054 31.138 43.033 31.0058Z",
2815
+ fill: "white",
2816
+ stroke: "#D1D5DB"
2817
+ }
2818
+ ),
2819
+ /* @__PURE__ */ jsx32(
2820
+ "path",
2821
+ {
2822
+ d: "M49.9725 25.811C49.8244 25.9766 48.1784 24.9393 48.1784 24.9393C48.1784 24.9393 46.6979 26.1074 46.4366 25.9418C46.1754 25.7761 46.6805 23.9717 46.6805 23.9717C46.6805 23.9717 45.2 23.0041 45.2 22.6555C45.2 22.3068 47.2204 22.3155 47.2204 22.3155C47.2204 22.3155 47.7604 20.4937 48.013 20.4937C48.2655 20.4937 48.971 22.237 48.971 22.237C48.971 22.237 50.7128 22.0627 50.9479 22.4288C51.1831 22.7949 49.598 23.8846 49.598 23.8846C49.598 23.8846 50.1293 25.6454 49.9725 25.811Z",
2823
+ fill: "#FACC15"
2824
+ }
2825
+ )
2826
+ ] }),
2827
+ /* @__PURE__ */ jsx32("defs", { children: /* @__PURE__ */ jsx32("clipPath", { id: "clip0_1128_4961", children: /* @__PURE__ */ jsx32("rect", { width: "51.3136", height: "32", fill: "white" }) }) })
1911
2828
  ]
1912
2829
  }
1913
2830
  );
1914
2831
  };
1915
- AvatarIcon.displayName = "AvatarIcon";
1916
- var AvatarIcon_default = AvatarIcon;
2832
+ var SmallLogoIcon_default = SmallLogoIcon;
1917
2833
 
1918
- // packages/libs/color-hash/cores/bkdr-hash.ts
1919
- var BKDRHash = (str) => {
1920
- const seed = 131;
1921
- const seed2 = 137;
1922
- let hash = 0;
1923
- str += "x";
1924
- const MAX_SAFE_INTEGER = Math.floor(9007199254740991 / seed2);
1925
- str.split("").forEach((char) => {
1926
- if (hash > MAX_SAFE_INTEGER) {
1927
- hash = Math.floor(hash / seed2);
1928
- }
1929
- hash = hash * seed + char.charCodeAt(0);
1930
- });
1931
- return hash;
1932
- };
1933
- var bkdr_hash_default = BKDRHash;
2834
+ // packages/Molecules/CartSheet/index.tsx
2835
+ import { memo as memo8 } from "react";
1934
2836
 
1935
- // packages/libs/color-hash/cores/colors.ts
1936
- var RGB2HEX = (RGBArray) => {
1937
- let hex = "#";
1938
- RGBArray.forEach((color) => {
1939
- if (color < 16) {
1940
- hex += "0";
2837
+ // packages/Atoms/Separator/index.tsx
2838
+ import { forwardRef as forwardRef17 } from "react";
2839
+ import * as SeparatorPrimitive from "@radix-ui/react-separator";
2840
+ import { jsx as jsx33 } from "react/jsx-runtime";
2841
+ var Separator3 = forwardRef17(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx33(
2842
+ SeparatorPrimitive.Root,
2843
+ {
2844
+ ref,
2845
+ decorative,
2846
+ orientation,
2847
+ className: cn(
2848
+ "shrink-0 bg-ui-border-500",
2849
+ orientation === "horizontal" ? "h-px w-full" : "h-full w-px",
2850
+ className
2851
+ ),
2852
+ ...props
2853
+ }
2854
+ ));
2855
+ Separator3.displayName = SeparatorPrimitive.Root.displayName;
2856
+
2857
+ // packages/Atoms/Sheet/index.tsx
2858
+ import { forwardRef as forwardRef18 } from "react";
2859
+
2860
+ // packages/Atoms/XButton/index.tsx
2861
+ import { memo as memo7 } from "react";
2862
+
2863
+ // packages/Icons/Lucide2XIcon.tsx
2864
+ import { jsx as jsx34 } from "react/jsx-runtime";
2865
+ var Lucide2XIcon = (props) => {
2866
+ const { color, size } = props;
2867
+ return /* @__PURE__ */ jsx34(
2868
+ "svg",
2869
+ {
2870
+ xmlns: "http://www.w3.org/2000/svg",
2871
+ width: size ?? DEFAULT_ICON_SIZE,
2872
+ height: size ?? DEFAULT_ICON_SIZE,
2873
+ viewBox: "0 0 16 16",
2874
+ fill: "none",
2875
+ ...props,
2876
+ children: /* @__PURE__ */ jsx34(
2877
+ "path",
2878
+ {
2879
+ d: "M12 4L4 12M4 4L12 12",
2880
+ stroke: color ?? "#434349",
2881
+ strokeWidth: "1.5",
2882
+ strokeLinecap: "round",
2883
+ strokeLinejoin: "round"
2884
+ }
2885
+ )
1941
2886
  }
1942
- hex += color.toString(16);
1943
- });
1944
- return hex;
2887
+ );
1945
2888
  };
1946
- var HSL2RGB = (H, S, L) => {
1947
- H /= 360;
1948
- let q = L < 0.5 ? L * (1 + S) : L + S - L * S;
1949
- let p = 2 * L - q;
1950
- return [H + 1 / 3, H, H - 1 / 3].map((color) => {
1951
- if (color < 0) {
1952
- color++;
1953
- }
1954
- if (color > 1) {
1955
- color--;
1956
- }
1957
- if (color < 1 / 6) {
1958
- color = p + (q - p) * 6 * color;
1959
- } else if (color < 0.5) {
1960
- color = q;
1961
- } else if (color < 2 / 3) {
1962
- color = p + (q - p) * 6 * (2 / 3 - color);
1963
- } else {
1964
- color = p;
2889
+ Lucide2XIcon.displayName = "Lucide2XIcon";
2890
+ var Lucide2XIcon_default = Lucide2XIcon;
2891
+
2892
+ // packages/Atoms/XButton/index.tsx
2893
+ import { jsx as jsx35 } from "react/jsx-runtime";
2894
+ var XButton = ({ isButton = true, isDisabled, onClick }) => {
2895
+ const Comp = isButton ? "button" : "div";
2896
+ return /* @__PURE__ */ jsx35(
2897
+ Comp,
2898
+ {
2899
+ disabled: isDisabled,
2900
+ className: cn(
2901
+ "flex size-5 items-center justify-center",
2902
+ "rounded-full",
2903
+ "text-ui-text-500",
2904
+ "enabled:hover:bg-ui-surface-100",
2905
+ "enabled:hover:text-ui-text-700",
2906
+ "enabled:active:bg-ui-surface-200",
2907
+ "enabled:active:text-ui-text-900",
2908
+ "disabled:cursor-not-allowed disabled:opacity-30",
2909
+ "transition-colors duration-200"
2910
+ ),
2911
+ onClick,
2912
+ children: /* @__PURE__ */ jsx35(Lucide2XIcon_default, { size: 14, color: "currentColor" })
1965
2913
  }
1966
- return Math.round(color * 255);
1967
- });
2914
+ );
1968
2915
  };
2916
+ var XButton_default = memo7(XButton);
1969
2917
 
1970
- // packages/libs/color-hash/index.ts
1971
- var ColorHash = class {
1972
- constructor(options) {
1973
- __publicField(this, "_L");
1974
- __publicField(this, "_S");
1975
- __publicField(this, "_hueRange");
1976
- __publicField(this, "_hash");
1977
- /**
1978
- * Returns the hash in [h, s, l].
1979
- * Note that H ∈ [0, 360); S ∈ [0, 1]; L ∈ [0, 1];
1980
- *
1981
- * @param {String} str string to hash
1982
- * @returns {Array} [h, s, l]
1983
- */
1984
- __publicField(this, "hsl", (str) => {
1985
- let H, S, L;
1986
- let hash = this._hash(str);
1987
- const hueResolution = 727;
1988
- if (this._hueRange.length) {
1989
- const range = this._hueRange[hash % this._hueRange.length];
1990
- H = hash / this._hueRange.length % hueResolution * (range.max - range.min) / hueResolution + range.min;
1991
- } else {
1992
- H = hash % 359;
2918
+ // packages/Atoms/Sheet/index.tsx
2919
+ import * as SheetPrimitive from "@radix-ui/react-dialog";
2920
+ import { cva as cva7 } from "class-variance-authority";
2921
+ import { jsx as jsx36, jsxs as jsxs21 } from "react/jsx-runtime";
2922
+ var Sheet = SheetPrimitive.Root;
2923
+ var SheetTrigger = SheetPrimitive.Trigger;
2924
+ var SheetPortal = SheetPrimitive.Portal;
2925
+ var SheetOverlay = forwardRef18(({ className, ...props }, ref) => /* @__PURE__ */ jsx36(
2926
+ SheetPrimitive.Overlay,
2927
+ {
2928
+ className: cn(
2929
+ "fixed inset-0 z-50",
2930
+ "bg-black/20",
2931
+ "data-[state=open]:animate-in",
2932
+ "data-[state=closed]:animate-out",
2933
+ "data-[state=closed]:fade-out-0",
2934
+ "data-[state=open]:fade-in-0",
2935
+ className
2936
+ ),
2937
+ ...props,
2938
+ ref
2939
+ }
2940
+ ));
2941
+ SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
2942
+ var sheetVariants = cva7(
2943
+ "fixed z-50 gap-4 bg-ui-surface-50 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",
2944
+ {
2945
+ variants: {
2946
+ side: {
2947
+ top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
2948
+ bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
2949
+ left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
2950
+ right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
1993
2951
  }
1994
- hash = Math.ceil(hash / 360);
1995
- S = this._S[hash % this._S.length];
1996
- hash = Math.ceil(hash / this._S.length);
1997
- L = this._L[hash % this._L.length];
1998
- return [H, S, L];
1999
- });
2000
- /**
2001
- * Returns the hash in [r, g, b].
2002
- * Note that R, G, B ∈ [0, 255]
2003
- *
2004
- * @param {String} str string to hash
2005
- * @returns {Array} [r, g, b]
2006
- */
2007
- __publicField(this, "rgb", (str) => {
2008
- const hsl = this.hsl(str);
2009
- return HSL2RGB.apply(this, hsl);
2010
- });
2011
- /**
2012
- * Returns the hash in hex
2013
- *
2014
- * @param {String} str string to hash
2015
- * @returns {String} hex with #
2016
- */
2017
- __publicField(this, "hex", (str) => {
2018
- const rgb = this.rgb(str);
2019
- return RGB2HEX(rgb);
2020
- });
2021
- const [L, S] = [options.lightness, options.saturation].map((param) => {
2022
- param = param !== void 0 ? param : [0.35, 0.5, 0.65];
2023
- return Array.isArray(param) ? param.concat() : [param];
2024
- });
2025
- this._L = L;
2026
- this._S = S;
2027
- if (typeof options.hue === "number") {
2028
- options.hue = { min: options.hue, max: options.hue };
2952
+ },
2953
+ defaultVariants: {
2954
+ side: "right"
2029
2955
  }
2030
- if (typeof options.hue === "object" && !Array.isArray(options.hue)) {
2031
- options.hue = [options.hue];
2956
+ }
2957
+ );
2958
+ var SheetContent = forwardRef18(
2959
+ ({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs21(SheetPortal, { children: [
2960
+ /* @__PURE__ */ jsx36(SheetOverlay, {}),
2961
+ /* @__PURE__ */ jsxs21(
2962
+ SheetPrimitive.Content,
2963
+ {
2964
+ ref,
2965
+ className: cn(sheetVariants({ side }), className),
2966
+ ...props,
2967
+ children: [
2968
+ children,
2969
+ /* @__PURE__ */ jsx36(
2970
+ SheetPrimitive.Close,
2971
+ {
2972
+ className: cn(
2973
+ "absolute right-4 top-4",
2974
+ "rounded-full",
2975
+ "enabled:hover:bg-ui-surface-100",
2976
+ "enabled:hover:text-ui-text-700",
2977
+ "enabled:active:bg-ui-surface-200",
2978
+ "enabled:active:text-ui-text-900"
2979
+ ),
2980
+ children: /* @__PURE__ */ jsx36(XButton_default, { isButton: false })
2981
+ }
2982
+ )
2983
+ ]
2984
+ }
2985
+ )
2986
+ ] })
2987
+ );
2988
+ SheetContent.displayName = SheetPrimitive.Content.displayName;
2989
+ var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ jsx36("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
2990
+ SheetHeader.displayName = "SheetHeader";
2991
+ var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ jsx36(
2992
+ "div",
2993
+ {
2994
+ className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
2995
+ ...props
2996
+ }
2997
+ );
2998
+ SheetFooter.displayName = "SheetFooter";
2999
+ var SheetTitle = forwardRef18(({ className, ...props }, ref) => /* @__PURE__ */ jsx36(
3000
+ SheetPrimitive.Title,
3001
+ {
3002
+ ref,
3003
+ className: cn("text-lg font-semibold text-ui-text-900", className),
3004
+ ...props
3005
+ }
3006
+ ));
3007
+ SheetTitle.displayName = SheetPrimitive.Title.displayName;
3008
+ var SheetDescription = forwardRef18(({ className, ...props }, ref) => /* @__PURE__ */ jsx36(
3009
+ SheetPrimitive.Description,
3010
+ {
3011
+ ref,
3012
+ className: cn("text-xs text-ui-text-500", className),
3013
+ ...props
3014
+ }
3015
+ ));
3016
+ SheetDescription.displayName = SheetPrimitive.Description.displayName;
3017
+
3018
+ // packages/Atoms/Tabs/index.tsx
3019
+ import { forwardRef as forwardRef19 } from "react";
3020
+ import * as TabsPrimitive from "@radix-ui/react-tabs";
3021
+ import { jsx as jsx37 } from "react/jsx-runtime";
3022
+ var Tabs = TabsPrimitive.Root;
3023
+ var TabsList = forwardRef19(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3024
+ TabsPrimitive.List,
3025
+ {
3026
+ ref,
3027
+ className: cn(
3028
+ "inline-flex h-10 items-center justify-center rounded-md bg-ui-surface-100 p-1 text-ui-text-800",
3029
+ className
3030
+ ),
3031
+ ...props
3032
+ }
3033
+ ));
3034
+ TabsList.displayName = TabsPrimitive.List.displayName;
3035
+ var TabsTrigger = forwardRef19(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3036
+ TabsPrimitive.Trigger,
3037
+ {
3038
+ ref,
3039
+ className: cn(
3040
+ "inline-flex items-center justify-center",
3041
+ "whitespace-nowrap rounded-sm",
3042
+ "px-3 py-1.5 text-sm font-semibold",
3043
+ "ring-offset-ui-surface-50",
3044
+ "transition-all",
3045
+ "focus-visible:outline-none",
3046
+ "focus-visible:ring-2",
3047
+ "focus-visible:ring-offset-2",
3048
+ "disabled:pointer-events-none",
3049
+ "disabled:opacity-50",
3050
+ "data-[state=active]:bg-ui-surface-50",
3051
+ "data-[state=active]:text-ui-text-900",
3052
+ "data-[state=active]:shadow-ui-flat",
3053
+ className
3054
+ ),
3055
+ ...props
3056
+ }
3057
+ ));
3058
+ TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
3059
+ var TabsContent = forwardRef19(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3060
+ TabsPrimitive.Content,
3061
+ {
3062
+ ref,
3063
+ className: cn("mt-2 bg-ui-surface-50 ring-offset-4 focus-visible:outline-none", className),
3064
+ ...props
3065
+ }
3066
+ ));
3067
+ TabsContent.displayName = TabsPrimitive.Content.displayName;
3068
+
3069
+ // packages/Icons/Lucide2FillCartIcon.tsx
3070
+ import { jsx as jsx38 } from "react/jsx-runtime";
3071
+ var Lucide2FillCartIcon = ({ color, size }) => {
3072
+ return /* @__PURE__ */ jsx38(
3073
+ "svg",
3074
+ {
3075
+ xmlns: "http://www.w3.org/2000/svg",
3076
+ width: size ?? 16,
3077
+ height: size ?? 16,
3078
+ viewBox: "0 0 16 16",
3079
+ fill: "none",
3080
+ children: /* @__PURE__ */ jsx38(
3081
+ "path",
3082
+ {
3083
+ d: "M0.680193 0C0.499795 0 0.326785 0.070238 0.199224 0.195262C0.0716631 0.320287 0 0.489856 0 0.666667C0 0.843478 0.0716631 1.01305 0.199224 1.13807C0.326785 1.2631 0.499795 1.33333 0.680193 1.33333H1.01485C1.16255 1.33358 1.30615 1.38095 1.42395 1.46827C1.54176 1.55558 1.62736 1.67811 1.66783 1.81733L3.82541 9.21733C3.94744 9.63494 4.20487 10.0023 4.55879 10.2637C4.91271 10.5252 5.34387 10.6667 5.78708 10.6667H12.0027C12.4106 10.6667 12.8092 10.547 13.1469 10.3229C13.4847 10.0987 13.7462 9.78054 13.8977 9.40933L15.9029 4.49467C15.9853 4.29243 16.016 4.07349 15.9922 3.85697C15.9683 3.64046 15.8907 3.43296 15.7662 3.25261C15.6416 3.07227 15.4739 2.92457 15.2777 2.82243C15.0814 2.72028 14.8627 2.6668 14.6405 2.66667H3.33022L2.97516 1.45067C2.85344 1.03303 2.59632 0.665582 2.24265 0.403862C1.88898 0.142143 1.458 0.000379157 1.01485 0H0.680193ZM6.12174 16C6.38971 16 6.65506 15.9483 6.90263 15.8478C7.15021 15.7473 7.37516 15.5999 7.56464 15.4142C7.75413 15.2285 7.90444 15.008 8.00699 14.7654C8.10954 14.5227 8.16232 14.2626 8.16232 14C8.16232 13.7374 8.10954 13.4773 8.00699 13.2346C7.90444 12.992 7.75413 12.7715 7.56464 12.5858C7.37516 12.4001 7.15021 12.2528 6.90263 12.1522C6.65506 12.0517 6.38971 12 6.12174 12C5.58054 12 5.06151 12.2107 4.67883 12.5858C4.29615 12.9609 4.08116 13.4696 4.08116 14C4.08116 14.5304 4.29615 15.0391 4.67883 15.4142C5.06151 15.7893 5.58054 16 6.12174 16ZM11.5633 16C11.8313 16 12.0966 15.9483 12.3442 15.8478C12.5918 15.7473 12.8167 15.5999 13.0062 15.4142C13.1957 15.2285 13.346 15.008 13.4485 14.7654C13.5511 14.5227 13.6039 14.2626 13.6039 14C13.6039 13.7374 13.5511 13.4773 13.4485 13.2346C13.346 12.992 13.1957 12.7715 13.0062 12.5858C12.8167 12.4001 12.5918 12.2528 12.3442 12.1522C12.0966 12.0517 11.8313 12 11.5633 12C11.0221 12 10.5031 12.2107 10.1204 12.5858C9.73769 12.9609 9.5227 13.4696 9.5227 14C9.5227 14.5304 9.73769 15.0391 10.1204 15.4142C10.5031 15.7893 11.0221 16 11.5633 16Z",
3084
+ fill: color ?? "currentColor"
3085
+ }
3086
+ )
2032
3087
  }
2033
- if (typeof options.hue === "undefined" || options.hue === null) {
2034
- options.hue = [];
3088
+ );
3089
+ };
3090
+ var Lucide2FillCartIcon_default = Lucide2FillCartIcon;
3091
+
3092
+ // packages/Molecules/CartSheet/index.tsx
3093
+ import { VisuallyHidden as VisuallyHidden2 } from "@radix-ui/react-visually-hidden";
3094
+ import { jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
3095
+ var CartSheet = ({
3096
+ isNew,
3097
+ quantityTotal,
3098
+ moneyTotal,
3099
+ inStock,
3100
+ order,
3101
+ onCheckout,
3102
+ onShowAll,
3103
+ onTypeSelected
3104
+ }) => {
3105
+ const formattedMoney = new Intl.NumberFormat("vi-VN").format(moneyTotal ?? 0);
3106
+ const formattedQuantity = new Intl.NumberFormat("vi-VN").format(quantityTotal ?? 0);
3107
+ return /* @__PURE__ */ jsxs22(Sheet, { children: [
3108
+ /* @__PURE__ */ jsx39(SheetTrigger, { children: /* @__PURE__ */ jsx39(Badge_default, { isNew, children: /* @__PURE__ */ jsx39(Lucide2FillCartIcon_default, { color: "#6C70F0" }) }) }),
3109
+ /* @__PURE__ */ jsx39(SheetContent, { className: "w-[22rem]", children: /* @__PURE__ */ jsxs22("div", { className: "relative grid size-full grid-rows-[fit-content(100%)_auto_8rem]", children: [
3110
+ /* @__PURE__ */ jsxs22(Flex_default, { vertical: true, px: "4", pt: "7", pb: "5", gapY: "2", width: "full", align: "start", children: [
3111
+ /* @__PURE__ */ jsxs22("p", { className: "text-ui-p font-semibold", children: [
3112
+ "Gi\u1ECF h\xE0ng c\u1EE7a t\xF4i (",
3113
+ formattedQuantity,
3114
+ ")"
3115
+ ] }),
3116
+ /* @__PURE__ */ jsx39(Separator3, { className: "bg-ui-border-300" })
3117
+ ] }),
3118
+ /* @__PURE__ */ jsxs22(
3119
+ Tabs,
3120
+ {
3121
+ defaultValue: "order",
3122
+ className: "relative flex w-full flex-col items-center overflow-auto",
3123
+ children: [
3124
+ /* @__PURE__ */ jsxs22(TabsList, { className: "h-fit w-[90%] *:w-1/2", children: [
3125
+ /* @__PURE__ */ jsx39(TabsTrigger, { value: "order", onClick: () => onTypeSelected?.("ORDER"), children: "H\xE0ng \u0111\u1EB7t tr\u01B0\u1EDBc" }),
3126
+ /* @__PURE__ */ jsx39(TabsTrigger, { value: "in_stock", onClick: () => onTypeSelected?.("IN_STOCK"), children: "H\xE0ng c\xF3 s\u1EB5n" })
3127
+ ] }),
3128
+ /* @__PURE__ */ jsxs22(ScrollArea, { className: "relative w-full", children: [
3129
+ /* @__PURE__ */ jsx39(TabsContent, { value: "order", className: "w-full overflow-auto px-2", children: order }),
3130
+ /* @__PURE__ */ jsx39(ScrollBar, { orientation: "vertical", className: "" })
3131
+ ] }),
3132
+ /* @__PURE__ */ jsxs22(ScrollArea, { className: "relative w-full", children: [
3133
+ /* @__PURE__ */ jsx39(TabsContent, { value: "in_stock", className: "w-full overflow-auto px-2", children: inStock }),
3134
+ /* @__PURE__ */ jsx39(ScrollBar, { orientation: "vertical", className: "" })
3135
+ ] })
3136
+ ]
3137
+ }
3138
+ ),
3139
+ /* @__PURE__ */ jsxs22(Flex_default, { vertical: true, pt: "5", height: "full", width: "full", className: "shadow-ui-muli", children: [
3140
+ /* @__PURE__ */ jsxs22(Flex_default, { px: "6", justify: "between", width: "full", children: [
3141
+ /* @__PURE__ */ jsx39("p", { className: "text-ui-p font-bold text-ui-text-800", children: "T\u1ED4NG C\u1ED8NG" }),
3142
+ /* @__PURE__ */ jsxs22("p", { className: "text-ui-p font-extrabold text-ui-primary-500", children: [
3143
+ formattedMoney,
3144
+ " VND"
3145
+ ] })
3146
+ ] }),
3147
+ /* @__PURE__ */ jsxs22(Flex_default, { px: "5", py: "3", gapX: "4", width: "full", className: "*:grow", children: [
3148
+ /* @__PURE__ */ jsx39(
3149
+ Button_default,
3150
+ {
3151
+ variant: "outline",
3152
+ className: "px-5 py-2 text-ui-p font-bold",
3153
+ onClick: onShowAll,
3154
+ children: "Xem t\u1EA5t c\u1EA3"
3155
+ }
3156
+ ),
3157
+ /* @__PURE__ */ jsx39(Button_default, { className: "px-5 py-2 text-ui-p font-bold", onClick: onCheckout, children: "Thanh to\xE1n" })
3158
+ ] })
3159
+ ] })
3160
+ ] }) }),
3161
+ /* @__PURE__ */ jsx39(VisuallyHidden2, { children: /* @__PURE__ */ jsx39(SheetTitle, {}) })
3162
+ ] });
3163
+ };
3164
+ var CartSheet_default = memo8(CartSheet);
3165
+
3166
+ // packages/Molecules/Search/index.tsx
3167
+ import { useCallback as useCallback3, useEffect as useEffect2, useState as useState3 } from "react";
3168
+ import { CommandLoading } from "cmdk";
3169
+ import { motion as motion3 } from "framer-motion";
3170
+ import { Fragment as Fragment3, jsx as jsx40, jsxs as jsxs23 } from "react/jsx-runtime";
3171
+ var Search2 = ({ search = "", isLoading = false, items = [], onSearch }) => {
3172
+ const [open, setOpen] = useState3(false);
3173
+ const handleOpen = useCallback3(() => setOpen(true), []);
3174
+ const [isMac, setIsMac] = useState3(false);
3175
+ useEffect2(() => {
3176
+ setIsMac(navigator.platform.includes("Mac"));
3177
+ }, []);
3178
+ const down = useCallback3((event) => {
3179
+ if (event.key === "k" && (event.metaKey || event.ctrlKey)) {
3180
+ event.preventDefault();
3181
+ setOpen(true);
2035
3182
  }
2036
- this._hueRange = options.hue.map((range) => {
2037
- return {
2038
- min: typeof range.min === "undefined" ? 0 : range.min,
2039
- max: typeof range.max === "undefined" ? 360 : range.max
2040
- };
2041
- });
2042
- this._hash = bkdr_hash_default;
2043
- }
3183
+ }, []);
3184
+ useEffect2(() => {
3185
+ document.addEventListener("keydown", down);
3186
+ return () => {
3187
+ document.removeEventListener("keydown", down);
3188
+ };
3189
+ }, [down]);
3190
+ return /* @__PURE__ */ jsxs23(Fragment3, { children: [
3191
+ /* @__PURE__ */ jsxs23(
3192
+ Flex_default,
3193
+ {
3194
+ flexGrow: 0,
3195
+ px: "2",
3196
+ py: "1",
3197
+ width: "fit",
3198
+ gapX: "2",
3199
+ className: "mr-2 grow justify-between rounded-lg border border-neutral-200 bg-ui-surface-50 hover:cursor-pointer hover:bg-ui-surface-100 sm:mr-8 md:grow-0 md:justify-start",
3200
+ onClick: handleOpen,
3201
+ children: [
3202
+ /* @__PURE__ */ jsx40("p", { className: "hidden pt-0.5 text-ui-small-note font-medium text-ui-text-500 md:inline", children: "T\xECm ki\u1EBFm s\u1EA3n ph\u1EA9m, th\u01B0\u01A1ng hi\u1EC7u,..." }),
3203
+ /* @__PURE__ */ jsx40("p", { className: "inline pt-0.5 text-ui-small-note font-medium text-ui-text-500 md:hidden", children: "T\xECm ki\u1EBFm" }),
3204
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-x-1 rounded-md bg-ui-surface-200 px-2 py-0.5 text-ui-small-note", children: [
3205
+ isMac ? /* @__PURE__ */ jsx40("kbd", { className: "mt-0.5 h-4", children: "\u2318" }) : /* @__PURE__ */ jsx40("kbd", { className: "mt-0.5 h-3 font-semibold", children: "^" }),
3206
+ /* @__PURE__ */ jsx40("span", { className: "text-ui-small-note font-medium", children: "K" })
3207
+ ] })
3208
+ ]
3209
+ }
3210
+ ),
3211
+ /* @__PURE__ */ jsxs23(CommandDialog, { open, onOpenChange: setOpen, children: [
3212
+ /* @__PURE__ */ jsx40(
3213
+ CommandInput,
3214
+ {
3215
+ value: search,
3216
+ placeholder: "T\xECm ki\u1EBFm s\u1EA3n ph\u1EA9m, th\u01B0\u01A1ng hi\u1EC7u...",
3217
+ onValueChange: onSearch
3218
+ }
3219
+ ),
3220
+ /* @__PURE__ */ jsxs23(CommandList, { children: [
3221
+ !isLoading && /* @__PURE__ */ jsx40(CommandEmpty, { className: "flex h-52 items-center justify-center px-4", children: /* @__PURE__ */ jsx40("span", { className: "font-medium text-ui-text-800", children: "Kh\xF4ng c\xF3 k\u1EBFt qu\u1EA3" }) }),
3222
+ isLoading ? /* @__PURE__ */ jsx40(CommandLoading, { className: "flex h-52 items-center justify-center", children: /* @__PURE__ */ jsx40(
3223
+ motion3.div,
3224
+ {
3225
+ animate: {
3226
+ scale: [1, 2, 2, 1, 1],
3227
+ rotate: [0, 0, 180, 180, 0],
3228
+ borderRadius: ["0%", "0%", "50%", "50%", "0%"]
3229
+ },
3230
+ transition: {
3231
+ duration: 2,
3232
+ ease: "easeInOut",
3233
+ times: [0, 0.2, 0.5, 0.8, 1],
3234
+ repeat: Infinity,
3235
+ repeatDelay: 1
3236
+ },
3237
+ className: "box size-16 rounded-full bg-neutral-200"
3238
+ }
3239
+ ) }) : /* @__PURE__ */ jsx40(CommandGroup, { children: items.map((item, index) => /* @__PURE__ */ jsx40(CommandItem, { value: item.value, children: item.component }, index)) })
3240
+ ] })
3241
+ ] })
3242
+ ] });
2044
3243
  };
2045
- var colorHash = new ColorHash({
2046
- hue: { min: 0, max: 359 },
2047
- saturation: [0.35, 0.5, 0.65],
2048
- lightness: [0.35, 0.5, 0.65]
2049
- });
2050
- var color_hash_default = colorHash;
3244
+ var Search_default = Search2;
2051
3245
 
2052
- // packages/Atoms/UserAvatar/index.tsx
2053
- import { jsx as jsx24 } from "react/jsx-runtime";
2054
- var UserAvatar = memo7(({ fullname, email, src: source, size, isButton = true }) => {
2055
- const Comp = isButton ? "button" : "div";
2056
- return /* @__PURE__ */ jsx24(
2057
- Comp,
3246
+ // packages/Molecules/UserSheet/index.tsx
3247
+ import { memo as memo10, useEffect as useEffect3, useState as useState4 } from "react";
3248
+
3249
+ // packages/Atoms/MenuItem/index.tsx
3250
+ import { memo as memo9 } from "react";
3251
+ import { jsx as jsx41, jsxs as jsxs24 } from "react/jsx-runtime";
3252
+ var MenuItem = ({
3253
+ isActive = false,
3254
+ isDisabled = false,
3255
+ name,
3256
+ leftIcon,
3257
+ rightIcon,
3258
+ onClick
3259
+ }) => {
3260
+ return /* @__PURE__ */ jsx41("li", { className: "w-full list-none", children: /* @__PURE__ */ jsxs24(
3261
+ "button",
2058
3262
  {
2059
- disabled: !isButton,
3263
+ "data-active": isActive,
3264
+ disabled: isDisabled,
2060
3265
  className: cn(
2061
- "flex size-fit items-center justify-center rounded-full transition-all duration-300",
2062
- "enabled:hover:shadow-ui-flat",
2063
- "enabled:hover:scale-110"
3266
+ "flex w-full items-center justify-start gap-x-1 rounded-lg bg-ui-surface-50 px-3 py-2 !text-ui-note text-ui-text-700",
3267
+ "disabled:opacity-30",
3268
+ "disabled:cursor-not-allowed",
3269
+ "enabled:hover:bg-ui-primary-50",
3270
+ "enabled:data-[active=true]:font-semibold",
3271
+ "enabled:data-[active=true]:text-ui-text-50",
3272
+ "enabled:data-[active=true]:bg-ui-primary-500",
3273
+ "transition duration-200"
2064
3274
  ),
2065
- children: source ? /* @__PURE__ */ jsx24(AvatarIcon_default, { bgColor: color_hash_default.hex(fullname + email), size }) : /* @__PURE__ */ jsx24(
2066
- "img",
2067
- {
2068
- style: { width: size, height: size },
2069
- className: cn("rounded-full object-contain"),
2070
- src: source,
2071
- alt: fullname
2072
- }
2073
- )
3275
+ onClick,
3276
+ children: [
3277
+ leftIcon,
3278
+ name,
3279
+ rightIcon
3280
+ ]
2074
3281
  }
2075
- );
2076
- });
2077
- UserAvatar.displayName = "UserAvatar";
2078
- var UserAvatar_default = UserAvatar;
3282
+ ) });
3283
+ };
3284
+ var MenuItem_default = memo9(MenuItem);
2079
3285
 
2080
3286
  // packages/Icons/Lucide2AddressIcon.tsx
2081
- import { jsx as jsx25, jsxs as jsxs15 } from "react/jsx-runtime";
3287
+ import { jsx as jsx42, jsxs as jsxs25 } from "react/jsx-runtime";
2082
3288
  var Lucide2AddressIcon = ({ size, color }) => {
2083
- return /* @__PURE__ */ jsxs15(
3289
+ return /* @__PURE__ */ jsxs25(
2084
3290
  "svg",
2085
3291
  {
2086
3292
  xmlns: "http://www.w3.org/2000/svg",
@@ -2089,7 +3295,7 @@ var Lucide2AddressIcon = ({ size, color }) => {
2089
3295
  viewBox: "0 0 16 16",
2090
3296
  fill: "none",
2091
3297
  children: [
2092
- /* @__PURE__ */ jsx25("g", { clipPath: "url(#clip0_1215_16320)", children: /* @__PURE__ */ jsx25(
3298
+ /* @__PURE__ */ jsx42("g", { clipPath: "url(#clip0_1215_16320)", children: /* @__PURE__ */ jsx42(
2093
3299
  "path",
2094
3300
  {
2095
3301
  d: "M12 6.66666C12 5.25217 11.4381 3.89562 10.4379 2.89543C9.43772 1.89523 8.08116 1.33333 6.66668 1.33333C5.25219 1.33333 3.89563 1.89523 2.89544 2.89543C1.89525 3.89562 1.33334 5.25217 1.33334 6.66666C1.33334 9.99533 5.02601 13.462 6.26601 14.5327C6.38159 14.6193 6.5222 14.6661 6.66668 14.666M12 14.6667V12.6667M10 14.6667C9.8232 14.6667 9.65363 14.5964 9.52861 14.4714C9.40358 14.3464 9.33334 14.1768 9.33334 14V11.3333C9.33333 11.2236 9.36039 11.1156 9.41215 11.0188C9.4639 10.922 9.53873 10.8396 9.63001 10.7787L11.63 9.44533C11.7396 9.37224 11.8683 9.33323 12 9.33323C12.1317 9.33323 12.2605 9.37224 12.37 9.44533L14.37 10.7787C14.4613 10.8396 14.5361 10.922 14.5879 11.0188C14.6396 11.1156 14.6667 11.2236 14.6667 11.3333V14C14.6667 14.1768 14.5964 14.3464 14.4714 14.4714C14.3464 14.5964 14.1768 14.6667 14 14.6667H10ZM8.66668 6.66666C8.66668 7.77123 7.77125 8.66666 6.66668 8.66666C5.56211 8.66666 4.66668 7.77123 4.66668 6.66666C4.66668 5.56209 5.56211 4.66666 6.66668 4.66666C7.77125 4.66666 8.66668 5.56209 8.66668 6.66666Z",
@@ -2098,7 +3304,7 @@ var Lucide2AddressIcon = ({ size, color }) => {
2098
3304
  strokeLinejoin: "round"
2099
3305
  }
2100
3306
  ) }),
2101
- /* @__PURE__ */ jsx25("defs", { children: /* @__PURE__ */ jsx25("clipPath", { id: "clip0_1215_16320", children: /* @__PURE__ */ jsx25("rect", { width: "16", height: "16", fill: "white" }) }) })
3307
+ /* @__PURE__ */ jsx42("defs", { children: /* @__PURE__ */ jsx42("clipPath", { id: "clip0_1215_16320", children: /* @__PURE__ */ jsx42("rect", { width: "16", height: "16", fill: "white" }) }) })
2102
3308
  ]
2103
3309
  }
2104
3310
  );
@@ -2106,10 +3312,10 @@ var Lucide2AddressIcon = ({ size, color }) => {
2106
3312
  var Lucide2AddressIcon_default = Lucide2AddressIcon;
2107
3313
 
2108
3314
  // packages/Icons/Lucide2LockIcon.tsx
2109
- import { jsx as jsx26 } from "react/jsx-runtime";
3315
+ import { jsx as jsx43 } from "react/jsx-runtime";
2110
3316
  var Lucide2LockIcon = (props) => {
2111
3317
  const { color, size } = props;
2112
- return /* @__PURE__ */ jsx26(
3318
+ return /* @__PURE__ */ jsx43(
2113
3319
  "svg",
2114
3320
  {
2115
3321
  xmlns: "http://www.w3.org/2000/svg",
@@ -2118,7 +3324,7 @@ var Lucide2LockIcon = (props) => {
2118
3324
  viewBox: "0 0 16 16",
2119
3325
  fill: "none",
2120
3326
  ...props,
2121
- children: /* @__PURE__ */ jsx26(
3327
+ children: /* @__PURE__ */ jsx43(
2122
3328
  "path",
2123
3329
  {
2124
3330
  d: "M4.66667 7.33325V4.66659C4.66667 3.78253 5.01786 2.93468 5.64298 2.30956C6.2681 1.68444 7.11594 1.33325 8 1.33325C8.88406 1.33325 9.7319 1.68444 10.357 2.30956C10.9821 2.93468 11.3333 3.78253 11.3333 4.66659V7.33325M3.33333 7.33325H12.6667C13.403 7.33325 14 7.93021 14 8.66659V13.3333C14 14.0696 13.403 14.6666 12.6667 14.6666H3.33333C2.59695 14.6666 2 14.0696 2 13.3333V8.66659C2 7.93021 2.59695 7.33325 3.33333 7.33325Z",
@@ -2135,10 +3341,10 @@ Lucide2LockIcon.displayName = "Lucide2LockIcon";
2135
3341
  var Lucide2LockIcon_default = Lucide2LockIcon;
2136
3342
 
2137
3343
  // packages/Icons/Lucide2LogOutIcon.tsx
2138
- import { jsx as jsx27 } from "react/jsx-runtime";
3344
+ import { jsx as jsx44 } from "react/jsx-runtime";
2139
3345
  var Lucide2LogOutIcon = (props) => {
2140
3346
  const { color, size } = props;
2141
- return /* @__PURE__ */ jsx27(
3347
+ return /* @__PURE__ */ jsx44(
2142
3348
  "svg",
2143
3349
  {
2144
3350
  xmlns: "http://www.w3.org/2000/svg",
@@ -2147,7 +3353,7 @@ var Lucide2LogOutIcon = (props) => {
2147
3353
  viewBox: "0 0 16 16",
2148
3354
  fill: "none",
2149
3355
  ...props,
2150
- children: /* @__PURE__ */ jsx27(
3356
+ children: /* @__PURE__ */ jsx44(
2151
3357
  "path",
2152
3358
  {
2153
3359
  d: "M6 14H3.33333C2.97971 14 2.64057 13.8595 2.39052 13.6095C2.14048 13.3594 2 13.0203 2 12.6667V3.33333C2 2.97971 2.14048 2.64057 2.39052 2.39052C2.64057 2.14048 2.97971 2 3.33333 2H6M10.6667 11.3333L14 8M14 8L10.6667 4.66667M14 8H6",
@@ -2164,9 +3370,9 @@ Lucide2LogOutIcon.displayName = "Lucide2LogOutIcon";
2164
3370
  var Lucide2LogOutIcon_default = Lucide2LogOutIcon;
2165
3371
 
2166
3372
  // packages/Icons/Lucide2NotiIcon.tsx
2167
- import { jsx as jsx28 } from "react/jsx-runtime";
3373
+ import { jsx as jsx45 } from "react/jsx-runtime";
2168
3374
  var Lucide2NotiIcon = ({ size, color }) => {
2169
- return /* @__PURE__ */ jsx28(
3375
+ return /* @__PURE__ */ jsx45(
2170
3376
  "svg",
2171
3377
  {
2172
3378
  xmlns: "http://www.w3.org/2000/svg",
@@ -2174,7 +3380,7 @@ var Lucide2NotiIcon = ({ size, color }) => {
2174
3380
  height: size ?? "16",
2175
3381
  viewBox: "0 0 16 16",
2176
3382
  fill: "none",
2177
- children: /* @__PURE__ */ jsx28(
3383
+ children: /* @__PURE__ */ jsx45(
2178
3384
  "path",
2179
3385
  {
2180
3386
  d: "M6.86667 14C6.97826 14.203 7.1423 14.3722 7.34166 14.4901C7.54102 14.608 7.76839 14.6702 8 14.6702C8.23161 14.6702 8.45898 14.608 8.65834 14.4901C8.8577 14.3722 9.02175 14.203 9.13333 14M4 5.33333C4 4.27246 4.42143 3.25505 5.17157 2.5049C5.92172 1.75476 6.93913 1.33333 8 1.33333C9.06087 1.33333 10.0783 1.75476 10.8284 2.5049C11.5786 3.25505 12 4.27246 12 5.33333C12 10 14 11.3333 14 11.3333H2C2 11.3333 4 10 4 5.33333Z",
@@ -2189,9 +3395,9 @@ var Lucide2NotiIcon = ({ size, color }) => {
2189
3395
  var Lucide2NotiIcon_default = Lucide2NotiIcon;
2190
3396
 
2191
3397
  // packages/Icons/Lucide2ReservationIcon.tsx
2192
- import { jsx as jsx29 } from "react/jsx-runtime";
3398
+ import { jsx as jsx46 } from "react/jsx-runtime";
2193
3399
  var Lucide2ReservationIcon = ({ size, color }) => {
2194
- return /* @__PURE__ */ jsx29(
3400
+ return /* @__PURE__ */ jsx46(
2195
3401
  "svg",
2196
3402
  {
2197
3403
  xmlns: "http://www.w3.org/2000/svg",
@@ -2199,7 +3405,7 @@ var Lucide2ReservationIcon = ({ size, color }) => {
2199
3405
  height: size ?? 16,
2200
3406
  viewBox: "0 0 16 16",
2201
3407
  fill: "none",
2202
- children: /* @__PURE__ */ jsx29(
3408
+ children: /* @__PURE__ */ jsx46(
2203
3409
  "path",
2204
3410
  {
2205
3411
  d: "M5.33335 1.33333V3.99999M8.00002 1.33333V3.99999M10.6667 1.33333V3.99999M5.33335 6.66666H9.33335M5.33335 9.33333H10.6667M5.33335 12H8.66669M4.00002 2.66666H12C12.7364 2.66666 13.3334 3.26362 13.3334 3.99999V13.3333C13.3334 14.0697 12.7364 14.6667 12 14.6667H4.00002C3.26364 14.6667 2.66669 14.0697 2.66669 13.3333V3.99999C2.66669 3.26362 3.26364 2.66666 4.00002 2.66666Z",
@@ -2214,10 +3420,10 @@ var Lucide2ReservationIcon = ({ size, color }) => {
2214
3420
  var Lucide2ReservationIcon_default = Lucide2ReservationIcon;
2215
3421
 
2216
3422
  // packages/Icons/Lucide2UserIcon.tsx
2217
- import { jsx as jsx30 } from "react/jsx-runtime";
3423
+ import { jsx as jsx47 } from "react/jsx-runtime";
2218
3424
  var Lucide2UserIcon = (props) => {
2219
3425
  const { color, size } = props;
2220
- return /* @__PURE__ */ jsx30(
3426
+ return /* @__PURE__ */ jsx47(
2221
3427
  "svg",
2222
3428
  {
2223
3429
  xmlns: "http://www.w3.org/2000/svg",
@@ -2226,7 +3432,7 @@ var Lucide2UserIcon = (props) => {
2226
3432
  viewBox: "0 0 16 16",
2227
3433
  fill: "none",
2228
3434
  ...props,
2229
- children: /* @__PURE__ */ jsx30(
3435
+ children: /* @__PURE__ */ jsx47(
2230
3436
  "path",
2231
3437
  {
2232
3438
  d: "M12.6667 14V12.6667C12.6667 11.9594 12.3857 11.2811 11.8856 10.781C11.3855 10.281 10.7073 10 10 10H6.00001C5.29277 10 4.61449 10.281 4.11439 10.781C3.61429 11.2811 3.33334 11.9594 3.33334 12.6667V14M10.6667 4.66667C10.6667 6.13943 9.47277 7.33333 8.00001 7.33333C6.52725 7.33333 5.33334 6.13943 5.33334 4.66667C5.33334 3.19391 6.52725 2 8.00001 2C9.47277 2 10.6667 3.19391 10.6667 4.66667Z",
@@ -2244,7 +3450,7 @@ var Lucide2UserIcon_default = Lucide2UserIcon;
2244
3450
 
2245
3451
  // packages/Molecules/UserSheet/index.tsx
2246
3452
  import { VisuallyHidden as VisuallyHidden3 } from "@radix-ui/react-visually-hidden";
2247
- import { Fragment as Fragment2, jsx as jsx31, jsxs as jsxs16 } from "react/jsx-runtime";
3453
+ import { Fragment as Fragment4, jsx as jsx48, jsxs as jsxs26 } from "react/jsx-runtime";
2248
3454
  var UserSheet = ({
2249
3455
  initialActiveItem,
2250
3456
  fullname = "",
@@ -2252,130 +3458,147 @@ var UserSheet = ({
2252
3458
  avatar = "",
2253
3459
  onSelectItem
2254
3460
  }) => {
2255
- const [activeItem, setActiveItem] = useState2(initialActiveItem || void 0);
2256
- useEffect2(() => {
3461
+ const [open, setOpen] = useState4(false);
3462
+ const [activeItem, setActiveItem] = useState4(initialActiveItem || void 0);
3463
+ useEffect3(() => {
2257
3464
  setActiveItem(initialActiveItem);
2258
3465
  }, [initialActiveItem]);
2259
- return /* @__PURE__ */ jsxs16(Sheet, { children: [
2260
- /* @__PURE__ */ jsx31(SheetTrigger, { className: "rounded-full border border-ui-border-200", children: /* @__PURE__ */ jsx31(UserAvatar_default, { isButton: false, fullname, email, src: avatar, size: 36 }) }),
2261
- /* @__PURE__ */ jsxs16(SheetContent, { className: "w-64", children: [
2262
- /* @__PURE__ */ jsx31(Flex_default, { vertical: true, gapY: "3", width: "full", px: "6", pt: "6", pb: "4", align: "start", children: !fullname || !email ? /* @__PURE__ */ jsxs16(Fragment2, { children: [
2263
- /* @__PURE__ */ jsx31(Skeleton, { className: "size-16 rounded-full" }),
2264
- /* @__PURE__ */ jsxs16(Flex_default, { vertical: true, gapY: "1", align: "start", children: [
2265
- /* @__PURE__ */ jsx31(Skeleton, { className: "h-4 w-32 rounded-full" }),
2266
- /* @__PURE__ */ jsx31(Skeleton, { className: "h-3 w-48 rounded-full" })
2267
- ] })
2268
- ] }) : /* @__PURE__ */ jsxs16(Fragment2, { children: [
2269
- /* @__PURE__ */ jsx31(
2270
- UserAvatar_default,
2271
- {
2272
- fullname,
2273
- email,
2274
- src: avatar,
2275
- size: 64,
2276
- isButton: false
2277
- }
2278
- ),
2279
- /* @__PURE__ */ jsxs16(Flex_default, { vertical: true, gapY: "1", align: "start", children: [
2280
- /* @__PURE__ */ jsx31("p", { className: "text-ui-note font-semibold text-ui-text-800", children: fullname }),
2281
- /* @__PURE__ */ jsx31("p", { className: "text-ui-small-note font-semibold text-ui-text-500", children: email })
2282
- ] })
2283
- ] }) }),
2284
- /* @__PURE__ */ jsxs16(
2285
- Flex_default,
2286
- {
2287
- vertical: true,
2288
- width: "full",
2289
- gapY: "1",
2290
- py: "3",
2291
- px: "1",
2292
- align: "start",
2293
- className: "border-y border-y-ui-border-300",
2294
- children: [
2295
- /* @__PURE__ */ jsx31(
2296
- MenuItem_default,
2297
- {
2298
- name: "Th\xF4ng tin t\xE0i kho\u1EA3n",
2299
- isActive: activeItem === "PROFILE",
2300
- leftIcon: /* @__PURE__ */ jsx31(Lucide2UserIcon_default, { color: "currentColor", size: 16 }),
2301
- onClick: () => {
2302
- setActiveItem("PROFILE");
2303
- onSelectItem?.("PROFILE");
2304
- }
2305
- }
2306
- ),
2307
- /* @__PURE__ */ jsx31(
2308
- MenuItem_default,
2309
- {
2310
- name: "Thi\u1EBFt l\u1EADp an to\xE0n",
2311
- isActive: activeItem === "SECURITY",
2312
- leftIcon: /* @__PURE__ */ jsx31(Lucide2LockIcon_default, { color: "currentColor", size: 16 }),
2313
- onClick: () => {
2314
- setActiveItem("SECURITY");
2315
- onSelectItem?.("SECURITY");
2316
- }
2317
- }
2318
- ),
2319
- /* @__PURE__ */ jsx31(
2320
- MenuItem_default,
2321
- {
2322
- name: "Th\xF4ng b\xE1o",
2323
- isActive: activeItem === "NOTIFICATION",
2324
- leftIcon: /* @__PURE__ */ jsx31(Lucide2NotiIcon_default, { color: "currentColor", size: 16 }),
2325
- onClick: () => {
2326
- setActiveItem("NOTIFICATION");
2327
- onSelectItem?.("NOTIFICATION");
2328
- }
2329
- }
2330
- ),
2331
- /* @__PURE__ */ jsx31(
2332
- MenuItem_default,
3466
+ return /* @__PURE__ */ jsxs26(
3467
+ Sheet,
3468
+ {
3469
+ open,
3470
+ onOpenChange: (isOpen) => {
3471
+ setOpen(isOpen);
3472
+ if (!isOpen) setActiveItem(void 0);
3473
+ },
3474
+ children: [
3475
+ /* @__PURE__ */ jsx48(SheetTrigger, { className: "rounded-full border border-ui-border-200", children: /* @__PURE__ */ jsx48(UserAvatar_default, { isButton: false, fullname, email, src: avatar, size: 36 }) }),
3476
+ /* @__PURE__ */ jsxs26(SheetContent, { className: "w-64", children: [
3477
+ /* @__PURE__ */ jsx48(Flex_default, { vertical: true, gapY: "3", width: "full", px: "6", pt: "6", pb: "4", align: "start", children: !fullname || !email ? /* @__PURE__ */ jsxs26(Fragment4, { children: [
3478
+ /* @__PURE__ */ jsx48(Skeleton, { className: "size-16 rounded-full" }),
3479
+ /* @__PURE__ */ jsxs26(Flex_default, { vertical: true, gapY: "1", align: "start", children: [
3480
+ /* @__PURE__ */ jsx48(Skeleton, { className: "h-4 w-32 rounded-full" }),
3481
+ /* @__PURE__ */ jsx48(Skeleton, { className: "h-3 w-48 rounded-full" })
3482
+ ] })
3483
+ ] }) : /* @__PURE__ */ jsxs26(Fragment4, { children: [
3484
+ /* @__PURE__ */ jsx48(
3485
+ UserAvatar_default,
2333
3486
  {
2334
- name: "Danh s\xE1ch \u0111\u01A1n h\xE0ng",
2335
- isActive: activeItem === "RESERVATION",
2336
- leftIcon: /* @__PURE__ */ jsx31(Lucide2ReservationIcon_default, { color: "currentColor", size: 16 }),
2337
- onClick: () => {
2338
- setActiveItem("RESERVATION");
2339
- onSelectItem?.("RESERVATION");
2340
- }
3487
+ fullname,
3488
+ email,
3489
+ src: avatar,
3490
+ size: 64,
3491
+ isButton: false
2341
3492
  }
2342
3493
  ),
2343
- /* @__PURE__ */ jsx31(
2344
- MenuItem_default,
2345
- {
2346
- name: "Danh s\xE1ch \u0111\u1ECBa ch\u1EC9",
2347
- isActive: activeItem === "ADDRESS",
2348
- leftIcon: /* @__PURE__ */ jsx31(Lucide2AddressIcon_default, { color: "currentColor", size: 16 }),
2349
- onClick: () => {
2350
- setActiveItem("ADDRESS");
2351
- onSelectItem?.("ADDRESS");
2352
- }
3494
+ /* @__PURE__ */ jsxs26(Flex_default, { vertical: true, gapY: "1", align: "start", children: [
3495
+ /* @__PURE__ */ jsx48("p", { className: "text-ui-note font-semibold text-ui-text-800", children: fullname }),
3496
+ /* @__PURE__ */ jsx48("p", { className: "text-ui-small-note font-semibold text-ui-text-500", children: email })
3497
+ ] })
3498
+ ] }) }),
3499
+ /* @__PURE__ */ jsxs26(
3500
+ Flex_default,
3501
+ {
3502
+ vertical: true,
3503
+ width: "full",
3504
+ gapY: "1",
3505
+ py: "3",
3506
+ px: "1",
3507
+ align: "start",
3508
+ className: "border-y border-y-ui-border-300",
3509
+ children: [
3510
+ /* @__PURE__ */ jsx48(
3511
+ MenuItem_default,
3512
+ {
3513
+ name: "Th\xF4ng tin t\xE0i kho\u1EA3n",
3514
+ isActive: activeItem === "PROFILE",
3515
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2UserIcon_default, { color: "currentColor", size: 16 }),
3516
+ onClick: () => {
3517
+ setActiveItem("PROFILE");
3518
+ onSelectItem?.("PROFILE");
3519
+ setOpen(false);
3520
+ }
3521
+ }
3522
+ ),
3523
+ /* @__PURE__ */ jsx48(
3524
+ MenuItem_default,
3525
+ {
3526
+ name: "Thi\u1EBFt l\u1EADp an to\xE0n",
3527
+ isActive: activeItem === "SECURITY",
3528
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2LockIcon_default, { color: "currentColor", size: 16 }),
3529
+ onClick: () => {
3530
+ setActiveItem("SECURITY");
3531
+ onSelectItem?.("SECURITY");
3532
+ setOpen(false);
3533
+ }
3534
+ }
3535
+ ),
3536
+ /* @__PURE__ */ jsx48(
3537
+ MenuItem_default,
3538
+ {
3539
+ name: "Th\xF4ng b\xE1o",
3540
+ isActive: activeItem === "NOTIFICATION",
3541
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2NotiIcon_default, { color: "currentColor", size: 16 }),
3542
+ onClick: () => {
3543
+ setActiveItem("NOTIFICATION");
3544
+ onSelectItem?.("NOTIFICATION");
3545
+ setOpen(false);
3546
+ }
3547
+ }
3548
+ ),
3549
+ /* @__PURE__ */ jsx48(
3550
+ MenuItem_default,
3551
+ {
3552
+ name: "Danh s\xE1ch \u0111\u01A1n h\xE0ng",
3553
+ isActive: activeItem === "RESERVATION",
3554
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2ReservationIcon_default, { color: "currentColor", size: 16 }),
3555
+ onClick: () => {
3556
+ setActiveItem("RESERVATION");
3557
+ onSelectItem?.("RESERVATION");
3558
+ setOpen(false);
3559
+ }
3560
+ }
3561
+ ),
3562
+ /* @__PURE__ */ jsx48(
3563
+ MenuItem_default,
3564
+ {
3565
+ name: "Danh s\xE1ch \u0111\u1ECBa ch\u1EC9",
3566
+ isActive: activeItem === "ADDRESS",
3567
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2AddressIcon_default, { color: "currentColor", size: 16 }),
3568
+ onClick: () => {
3569
+ setActiveItem("ADDRESS");
3570
+ onSelectItem?.("ADDRESS");
3571
+ setOpen(false);
3572
+ }
3573
+ }
3574
+ )
3575
+ ]
3576
+ }
3577
+ ),
3578
+ /* @__PURE__ */ jsx48(Flex_default, { vertical: true, width: "full", pt: "4", px: "1", children: /* @__PURE__ */ jsx48(
3579
+ MenuItem_default,
3580
+ {
3581
+ name: "\u0110\u0103ng xu\u1EA5t",
3582
+ isActive: activeItem === "LOGOUT",
3583
+ leftIcon: /* @__PURE__ */ jsx48(Lucide2LogOutIcon_default, { color: "currentColor", size: 16 }),
3584
+ onClick: () => {
3585
+ setActiveItem("LOGOUT");
3586
+ onSelectItem?.("LOGOUT");
3587
+ setOpen(false);
2353
3588
  }
2354
- )
2355
- ]
2356
- }
2357
- ),
2358
- /* @__PURE__ */ jsx31(Flex_default, { vertical: true, width: "full", pt: "4", px: "1", children: /* @__PURE__ */ jsx31(
2359
- MenuItem_default,
2360
- {
2361
- name: "\u0110\u0103ng xu\u1EA5t",
2362
- isActive: activeItem === "LOGOUT",
2363
- leftIcon: /* @__PURE__ */ jsx31(Lucide2LogOutIcon_default, { color: "currentColor", size: 16 }),
2364
- onClick: () => {
2365
- setActiveItem("LOGOUT");
2366
- onSelectItem?.("LOGOUT");
2367
- }
2368
- }
2369
- ) })
2370
- ] }),
2371
- /* @__PURE__ */ jsx31(VisuallyHidden3, { children: /* @__PURE__ */ jsx31(SheetTitle, {}) })
2372
- ] });
3589
+ }
3590
+ ) })
3591
+ ] }),
3592
+ /* @__PURE__ */ jsx48(VisuallyHidden3, { children: /* @__PURE__ */ jsx48(SheetTitle, {}) })
3593
+ ]
3594
+ }
3595
+ );
2373
3596
  };
2374
- var UserSheet_default = memo8(UserSheet);
3597
+ var UserSheet_default = memo10(UserSheet);
2375
3598
 
2376
3599
  // packages/Organisms/Header/index.tsx
2377
- import { jsx as jsx32, jsxs as jsxs17 } from "react/jsx-runtime";
2378
- var Header = memo9((props) => {
3600
+ import { jsx as jsx49, jsxs as jsxs27 } from "react/jsx-runtime";
3601
+ var Header2 = memo11((props) => {
2379
3602
  const {
2380
3603
  isLoading = false,
2381
3604
  user,
@@ -2395,42 +3618,30 @@ var Header = memo9((props) => {
2395
3618
  onCartTypeSelected,
2396
3619
  onCategorySelected
2397
3620
  } = props;
2398
- return /* @__PURE__ */ jsxs17(
3621
+ return /* @__PURE__ */ jsxs27(
2399
3622
  "header",
2400
3623
  {
2401
3624
  className: cn(
2402
- "relative flex h-fit min-h-[3.375rem] w-full items-center justify-start bg-ui-surface-50 py-2 pl-8 pr-4 shadow-ui-sticky-nav",
3625
+ "relative flex",
3626
+ "h-fit min-h-[3.375rem] w-full",
3627
+ "items-center justify-start",
3628
+ "bg-ui-surface-50",
3629
+ "py-2 pl-4 pr-4 sm:pl-8",
3630
+ "shadow-ui-sticky-nav",
2403
3631
  className
2404
3632
  ),
2405
3633
  children: [
2406
- /* @__PURE__ */ jsx32(Flex_default, { className: "grow-0", pb: "1", justify: "center", pr: "9", children: /* @__PURE__ */ jsx32(SmallLogoIcon_default, {}) }),
2407
- /* @__PURE__ */ jsx32(Flex_default, { className: "grow", children: /* @__PURE__ */ jsx32(NavigationMenu, { children: /* @__PURE__ */ jsxs17(NavigationMenuList, { children: [
2408
- /* @__PURE__ */ jsx32(
2409
- Category_default,
2410
- {
2411
- data: categories,
2412
- onShowAll: onShowAllProduct,
2413
- onClickCategory: onCategorySelected
2414
- }
2415
- ),
2416
- /* @__PURE__ */ jsx32(Series_default, {}),
2417
- /* @__PURE__ */ jsx32(
2418
- NavigationMenuItem,
2419
- {
2420
- className: cn("cursor-pointer !rounded-full", navigationMenuTriggerStyle()),
2421
- children: /* @__PURE__ */ jsx32(NavigationMenuLink, { children: "H\u01B0\u1EDBng D\u1EABn" })
2422
- }
2423
- ),
2424
- /* @__PURE__ */ jsx32(
2425
- NavigationMenuItem,
2426
- {
2427
- className: cn("cursor-pointer !rounded-full", navigationMenuTriggerStyle()),
2428
- children: /* @__PURE__ */ jsx32(NavigationMenuLink, { children: "Tin T\u1EE9c" })
2429
- }
2430
- )
2431
- ] }) }) }),
2432
- /* @__PURE__ */ jsx32(Search_default, {}),
2433
- /* @__PURE__ */ jsxs17(
3634
+ /* @__PURE__ */ jsx49(Flex_default, { className: "hidden grow-0 sm:pr-9 md:flex", pb: "1", justify: "center", pr: "9", children: /* @__PURE__ */ jsx49(SmallLogoIcon_default, {}) }),
3635
+ /* @__PURE__ */ jsx49(
3636
+ Navigator_default,
3637
+ {
3638
+ categories,
3639
+ onShowAllProduct,
3640
+ onCategorySelected
3641
+ }
3642
+ ),
3643
+ /* @__PURE__ */ jsx49(Search_default, {}),
3644
+ /* @__PURE__ */ jsxs27(
2434
3645
  Flex_default,
2435
3646
  {
2436
3647
  "data-hidden": isLoading,
@@ -2440,7 +3651,7 @@ var Header = memo9((props) => {
2440
3651
  gap: "3",
2441
3652
  py: "0",
2442
3653
  children: [
2443
- user ? /* @__PURE__ */ jsx32(
3654
+ user ? /* @__PURE__ */ jsx49(
2444
3655
  UserSheet_default,
2445
3656
  {
2446
3657
  initialActiveItem: activeUserNav,
@@ -2449,27 +3660,27 @@ var Header = memo9((props) => {
2449
3660
  avatar: user.avatar ?? "",
2450
3661
  onSelectItem: onSettingSelected
2451
3662
  }
2452
- ) : /* @__PURE__ */ jsxs17(Fragment3, { children: [
2453
- /* @__PURE__ */ jsx32(
3663
+ ) : /* @__PURE__ */ jsxs27(Fragment5, { children: [
3664
+ /* @__PURE__ */ jsx49(
2454
3665
  Button_default,
2455
3666
  {
2456
3667
  variant: "outline",
2457
- className: "overflow-visible rounded border-none px-4 py-1.5",
3668
+ className: "hidden overflow-visible rounded border-none px-4 py-1.5 hover:bg-ui-surface-100 hover:shadow-ui-flat sm:flex [&_span]:hover:!text-ui-primary-700",
2458
3669
  onClick: onSignIn,
2459
- children: /* @__PURE__ */ jsx32("span", { className: "text-ui-note font-bold text-ui-primary-500", children: "\u0110\u0103ng Nh\u1EADp" })
3670
+ children: /* @__PURE__ */ jsx49("span", { className: "text-ui-note font-bold text-ui-primary-500", children: "\u0110\u0103ng Nh\u1EADp" })
2460
3671
  }
2461
3672
  ),
2462
- /* @__PURE__ */ jsx32(
3673
+ /* @__PURE__ */ jsx49(
2463
3674
  Button_default,
2464
3675
  {
2465
3676
  variant: "default",
2466
- className: "rounded border-none px-4 py-1.5",
3677
+ className: "hidden rounded border-none px-4 py-1.5 sm:flex",
2467
3678
  onClick: onSignUp,
2468
- children: /* @__PURE__ */ jsx32("span", { className: "text-ui-note font-bold", children: "\u0110\u0103ng K\xFD" })
3679
+ children: /* @__PURE__ */ jsx49("span", { className: "text-ui-note font-bold", children: "\u0110\u0103ng K\xFD" })
2469
3680
  }
2470
3681
  )
2471
3682
  ] }),
2472
- /* @__PURE__ */ jsx32(
3683
+ /* @__PURE__ */ jsx49(
2473
3684
  CartSheet_default,
2474
3685
  {
2475
3686
  isNew: hasNewCart,
@@ -2484,19 +3695,19 @@ var Header = memo9((props) => {
2484
3695
  ]
2485
3696
  }
2486
3697
  ),
2487
- /* @__PURE__ */ jsxs17(Flex_default, { "data-show": isLoading, pr: "2", gap: "3", py: "0", className: "hidden data-[show=true]:flex", children: [
2488
- /* @__PURE__ */ jsxs17(Flex_default, { vertical: true, width: 120, height: "full", align: "end", gapY: "1", children: [
2489
- /* @__PURE__ */ jsx32(Skeleton, { className: "h-2 w-full rounded-full" }),
2490
- /* @__PURE__ */ jsx32(Skeleton, { className: "h-2 w-4/5 rounded-full" })
3698
+ /* @__PURE__ */ jsxs27(Flex_default, { "data-show": isLoading, pr: "2", gap: "3", py: "0", className: "hidden data-[show=true]:flex", children: [
3699
+ /* @__PURE__ */ jsxs27(Flex_default, { vertical: true, width: 120, height: "full", align: "end", gapY: "1", children: [
3700
+ /* @__PURE__ */ jsx49(Skeleton, { className: "h-2 w-full rounded-full" }),
3701
+ /* @__PURE__ */ jsx49(Skeleton, { className: "h-2 w-4/5 rounded-full" })
2491
3702
  ] }),
2492
- /* @__PURE__ */ jsx32(Skeleton, { className: "size-8 rounded-full" })
3703
+ /* @__PURE__ */ jsx49(Skeleton, { className: "size-8 rounded-full" })
2493
3704
  ] })
2494
3705
  ]
2495
3706
  }
2496
3707
  );
2497
3708
  });
2498
- Header.displayName = "Header";
2499
- var Header_default = Header;
3709
+ Header2.displayName = "Header";
3710
+ var Header_default = Header2;
2500
3711
  export {
2501
3712
  Header_default as default
2502
3713
  };