@bergetai/ui 0.1.92 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1224 -388
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +67 -1
- package/dist/index.d.ts +67 -1
- package/dist/index.js +1221 -409
- package/dist/index.js.map +1 -1
- package/dist/styles/index.css +60 -0
- package/package.json +3 -1
package/dist/index.cjs
CHANGED
|
@@ -37,6 +37,7 @@ __export(index_exports, {
|
|
|
37
37
|
BergetLogo: () => BergetLogo,
|
|
38
38
|
Box: () => Box,
|
|
39
39
|
Button: () => Button2,
|
|
40
|
+
COUNTRIES: () => COUNTRIES,
|
|
40
41
|
Card: () => Card2,
|
|
41
42
|
CardContent: () => CardContent,
|
|
42
43
|
CardDescription: () => CardDescription,
|
|
@@ -46,6 +47,7 @@ __export(index_exports, {
|
|
|
46
47
|
Checkbox: () => Checkbox2,
|
|
47
48
|
CodeBlock: () => CodeBlock,
|
|
48
49
|
Container: () => Container,
|
|
50
|
+
CountrySelect: () => CountrySelect,
|
|
49
51
|
Dialog: () => Dialog,
|
|
50
52
|
DialogClose: () => DialogClose,
|
|
51
53
|
DialogContent: () => DialogContent,
|
|
@@ -56,6 +58,7 @@ __export(index_exports, {
|
|
|
56
58
|
DialogPortal: () => DialogPortal,
|
|
57
59
|
DialogTitle: () => DialogTitle,
|
|
58
60
|
DialogTrigger: () => DialogTrigger,
|
|
61
|
+
EU_COUNTRY_CODES: () => EU_COUNTRY_CODES,
|
|
59
62
|
FeatureList: () => FeatureList,
|
|
60
63
|
Field: () => Field,
|
|
61
64
|
FieldContent: () => FieldContent,
|
|
@@ -71,6 +74,16 @@ __export(index_exports, {
|
|
|
71
74
|
HeroBlock: () => HeroBlock,
|
|
72
75
|
Icon: () => Icon2,
|
|
73
76
|
Input: () => Input2,
|
|
77
|
+
Item: () => Item2,
|
|
78
|
+
ItemActions: () => ItemActions,
|
|
79
|
+
ItemContent: () => ItemContent,
|
|
80
|
+
ItemDescription: () => ItemDescription2,
|
|
81
|
+
ItemFooter: () => ItemFooter,
|
|
82
|
+
ItemGroup: () => ItemGroup,
|
|
83
|
+
ItemHeader: () => ItemHeader,
|
|
84
|
+
ItemMedia: () => ItemMedia2,
|
|
85
|
+
ItemSeparator: () => ItemSeparator2,
|
|
86
|
+
ItemTitle: () => ItemTitle2,
|
|
74
87
|
Label: () => Label2,
|
|
75
88
|
LanguageSelect: () => LanguageSelect,
|
|
76
89
|
Link: () => Link,
|
|
@@ -79,6 +92,14 @@ __export(index_exports, {
|
|
|
79
92
|
ListItem: () => ListItem,
|
|
80
93
|
Select: () => Select2,
|
|
81
94
|
Switch: () => Switch,
|
|
95
|
+
Table: () => Table2,
|
|
96
|
+
TableBody: () => TableBody2,
|
|
97
|
+
TableCaption: () => TableCaption2,
|
|
98
|
+
TableCell: () => TableCell2,
|
|
99
|
+
TableFooter: () => TableFooter2,
|
|
100
|
+
TableHead: () => TableHead2,
|
|
101
|
+
TableHeader: () => TableHeader2,
|
|
102
|
+
TableRow: () => TableRow2,
|
|
82
103
|
TextArea: () => TextArea,
|
|
83
104
|
ThemeProvider: () => ThemeProvider,
|
|
84
105
|
ThemeToggle: () => ThemeToggle,
|
|
@@ -91,7 +112,10 @@ __export(index_exports, {
|
|
|
91
112
|
cardVariants: () => cardVariants,
|
|
92
113
|
checkboxVariants: () => checkboxVariants,
|
|
93
114
|
containerVariants: () => containerVariants,
|
|
115
|
+
getCountryByCode: () => getCountryByCode,
|
|
116
|
+
getCountryByName: () => getCountryByName,
|
|
94
117
|
gridVariants: () => gridVariants,
|
|
118
|
+
isEUCountry: () => isEUCountry,
|
|
95
119
|
linkVariants: () => linkVariants,
|
|
96
120
|
selectVariants: () => selectVariants,
|
|
97
121
|
switchRootVariants: () => switchRootVariants,
|
|
@@ -345,7 +369,7 @@ function brandVariantClasses(variant) {
|
|
|
345
369
|
case "primary":
|
|
346
370
|
return "bg-berget-button-primary-bg text-berget-button-primary-fg shadow-lg hover:bg-berget-button-primary-bg/90 hover:shadow-xl";
|
|
347
371
|
case "destructive":
|
|
348
|
-
return "bg-berget-button-destructive-bg text-berget-button-destructive-fg shadow-sm hover:bg-berget-button-destructive-bg/80 hover:shadow";
|
|
372
|
+
return "bg-berget-button-destructive-bg text-berget-button-destructive-fg shadow-sm hover:bg-berget-button-destructive-bg/80 hover:shadow dark:hover:bg-berget-button-destructive-bg/80 dark:hover:text-berget-button-destructive-fg";
|
|
349
373
|
case "outline":
|
|
350
374
|
return "border-berget-border-interactive bg-transparent text-berget-foreground hover:bg-berget-surface-hover hover:text-berget-foreground hover:border-berget-border-interactive-elevated";
|
|
351
375
|
case "ghost":
|
|
@@ -686,15 +710,391 @@ DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
|
686
710
|
var DialogDescription = React10.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(DialogPrimitive.Description, { ref, asChild: true, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Typography, { variant: "small", color: "muted", className, children }) }));
|
|
687
711
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
688
712
|
|
|
689
|
-
// src/components/
|
|
713
|
+
// src/components/table/Table.tsx
|
|
690
714
|
var React12 = __toESM(require("react"), 1);
|
|
691
715
|
|
|
692
|
-
// src/primitives/
|
|
716
|
+
// src/primitives/table.tsx
|
|
693
717
|
var React11 = __toESM(require("react"), 1);
|
|
694
718
|
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
695
|
-
var
|
|
719
|
+
var Table = React11.forwardRef(
|
|
720
|
+
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("table", { ref, className: cn("w-full caption-bottom text-sm", className), ...props }) })
|
|
721
|
+
);
|
|
722
|
+
Table.displayName = "Table";
|
|
723
|
+
var TableHeader = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
724
|
+
TableHeader.displayName = "TableHeader";
|
|
725
|
+
var TableBody = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("tbody", { ref, className: cn("[&_tr:last-child]:border-0", className), ...props }));
|
|
726
|
+
TableBody.displayName = "TableBody";
|
|
727
|
+
var TableFooter = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
728
|
+
"tfoot",
|
|
729
|
+
{
|
|
730
|
+
ref,
|
|
731
|
+
className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
|
|
732
|
+
...props
|
|
733
|
+
}
|
|
734
|
+
));
|
|
735
|
+
TableFooter.displayName = "TableFooter";
|
|
736
|
+
var TableRow = React11.forwardRef(
|
|
737
|
+
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
738
|
+
"tr",
|
|
739
|
+
{
|
|
740
|
+
ref,
|
|
741
|
+
className: cn(
|
|
742
|
+
"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",
|
|
743
|
+
className
|
|
744
|
+
),
|
|
745
|
+
...props
|
|
746
|
+
}
|
|
747
|
+
)
|
|
748
|
+
);
|
|
749
|
+
TableRow.displayName = "TableRow";
|
|
750
|
+
var TableHead = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
751
|
+
"th",
|
|
752
|
+
{
|
|
753
|
+
ref,
|
|
754
|
+
className: cn(
|
|
755
|
+
"h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",
|
|
756
|
+
className
|
|
757
|
+
),
|
|
758
|
+
...props
|
|
759
|
+
}
|
|
760
|
+
));
|
|
761
|
+
TableHead.displayName = "TableHead";
|
|
762
|
+
var TableCell = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
763
|
+
"td",
|
|
764
|
+
{
|
|
765
|
+
ref,
|
|
766
|
+
className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className),
|
|
767
|
+
...props
|
|
768
|
+
}
|
|
769
|
+
));
|
|
770
|
+
TableCell.displayName = "TableCell";
|
|
771
|
+
var TableCaption = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("caption", { ref, className: cn("mt-4 text-sm text-muted-foreground", className), ...props }));
|
|
772
|
+
TableCaption.displayName = "TableCaption";
|
|
773
|
+
|
|
774
|
+
// src/components/table/Table.tsx
|
|
775
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
776
|
+
var Table2 = React12.forwardRef(
|
|
777
|
+
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Table, { ref, className, ...props })
|
|
778
|
+
);
|
|
779
|
+
Table2.displayName = "Table";
|
|
780
|
+
var TableHeader2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(TableHeader, { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
781
|
+
TableHeader2.displayName = "TableHeader";
|
|
782
|
+
var TableBody2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
783
|
+
TableBody,
|
|
784
|
+
{
|
|
785
|
+
ref,
|
|
786
|
+
className: cn("[&_tr:last-child]:border-0", className),
|
|
787
|
+
...props
|
|
788
|
+
}
|
|
789
|
+
));
|
|
790
|
+
TableBody2.displayName = "TableBody";
|
|
791
|
+
var TableFooter2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
792
|
+
TableFooter,
|
|
793
|
+
{
|
|
794
|
+
ref,
|
|
795
|
+
className: cn("border-t bg-berget-table-footer-bg font-medium [&>tr]:last:border-0", className),
|
|
796
|
+
...props
|
|
797
|
+
}
|
|
798
|
+
));
|
|
799
|
+
TableFooter2.displayName = "TableFooter";
|
|
800
|
+
var TableRow2 = React12.forwardRef(
|
|
801
|
+
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
802
|
+
TableRow,
|
|
803
|
+
{
|
|
804
|
+
ref,
|
|
805
|
+
className: cn(
|
|
806
|
+
"border-b transition-colors hover:bg-berget-table-row-hover data-[state=selected]:bg-berget-table-row-selected",
|
|
807
|
+
className
|
|
808
|
+
),
|
|
809
|
+
...props
|
|
810
|
+
}
|
|
811
|
+
)
|
|
812
|
+
);
|
|
813
|
+
TableRow2.displayName = "TableRow";
|
|
814
|
+
var TableHead2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
815
|
+
TableHead,
|
|
816
|
+
{
|
|
817
|
+
ref,
|
|
818
|
+
className: cn(
|
|
819
|
+
"h-12 px-4 text-left align-middle font-medium text-berget-table-head-text [&:has([role=checkbox])]:pr-0",
|
|
820
|
+
className
|
|
821
|
+
),
|
|
822
|
+
...props
|
|
823
|
+
}
|
|
824
|
+
));
|
|
825
|
+
TableHead2.displayName = "TableHead";
|
|
826
|
+
var TableCell2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
827
|
+
TableCell,
|
|
828
|
+
{
|
|
829
|
+
ref,
|
|
830
|
+
className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className),
|
|
831
|
+
...props
|
|
832
|
+
}
|
|
833
|
+
));
|
|
834
|
+
TableCell2.displayName = "TableCell";
|
|
835
|
+
var TableCaption2 = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
836
|
+
TableCaption,
|
|
837
|
+
{
|
|
838
|
+
ref,
|
|
839
|
+
className: cn("mt-4 text-sm text-berget-table-caption-text", className),
|
|
840
|
+
...props
|
|
841
|
+
}
|
|
842
|
+
));
|
|
843
|
+
TableCaption2.displayName = "TableCaption";
|
|
844
|
+
|
|
845
|
+
// src/components/item/Item.tsx
|
|
846
|
+
var React14 = __toESM(require("react"), 1);
|
|
847
|
+
|
|
848
|
+
// src/primitives/item.tsx
|
|
849
|
+
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
850
|
+
var import_class_variance_authority7 = require("class-variance-authority");
|
|
851
|
+
|
|
852
|
+
// src/primitives/separator.tsx
|
|
853
|
+
var React13 = __toESM(require("react"), 1);
|
|
854
|
+
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
|
|
855
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
856
|
+
var Separator = React13.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
857
|
+
SeparatorPrimitive.Root,
|
|
858
|
+
{
|
|
859
|
+
ref,
|
|
860
|
+
decorative,
|
|
861
|
+
orientation,
|
|
862
|
+
className: cn(
|
|
863
|
+
"shrink-0 bg-border",
|
|
864
|
+
orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
|
865
|
+
className
|
|
866
|
+
),
|
|
867
|
+
...props
|
|
868
|
+
}
|
|
869
|
+
));
|
|
870
|
+
Separator.displayName = SeparatorPrimitive.Root.displayName;
|
|
871
|
+
|
|
872
|
+
// src/primitives/item.tsx
|
|
873
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
874
|
+
function ItemGroup({ className, ...props }) {
|
|
875
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
876
|
+
"div",
|
|
877
|
+
{
|
|
878
|
+
role: "list",
|
|
879
|
+
"data-slot": "item-group",
|
|
880
|
+
className: cn("group/item-group flex flex-col", className),
|
|
881
|
+
...props
|
|
882
|
+
}
|
|
883
|
+
);
|
|
884
|
+
}
|
|
885
|
+
function ItemSeparator({ className, ...props }) {
|
|
886
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
887
|
+
Separator,
|
|
888
|
+
{
|
|
889
|
+
"data-slot": "item-separator",
|
|
890
|
+
orientation: "horizontal",
|
|
891
|
+
className: cn("my-0", className),
|
|
892
|
+
...props
|
|
893
|
+
}
|
|
894
|
+
);
|
|
895
|
+
}
|
|
896
|
+
var itemVariants = (0, import_class_variance_authority7.cva)(
|
|
897
|
+
"group/item [a]:hover:bg-accent/50 focus-visible:border-ring focus-visible:ring-ring/50 [a]:transition-colors flex flex-wrap items-center rounded-md border border-transparent text-sm outline-none transition-colors duration-100 focus-visible:ring-[3px]",
|
|
898
|
+
{
|
|
899
|
+
variants: {
|
|
900
|
+
variant: {
|
|
901
|
+
default: "bg-transparent",
|
|
902
|
+
outline: "border-border",
|
|
903
|
+
muted: "bg-muted/50"
|
|
904
|
+
},
|
|
905
|
+
size: {
|
|
906
|
+
default: "gap-4 p-4 ",
|
|
907
|
+
sm: "gap-2.5 px-4 py-3"
|
|
908
|
+
}
|
|
909
|
+
},
|
|
910
|
+
defaultVariants: {
|
|
911
|
+
variant: "default",
|
|
912
|
+
size: "default"
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
);
|
|
916
|
+
function Item({
|
|
917
|
+
className,
|
|
918
|
+
variant = "default",
|
|
919
|
+
size = "default",
|
|
920
|
+
asChild = false,
|
|
921
|
+
...props
|
|
922
|
+
}) {
|
|
923
|
+
const Comp = asChild ? import_react_slot2.Slot : "div";
|
|
924
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
925
|
+
Comp,
|
|
926
|
+
{
|
|
927
|
+
"data-slot": "item",
|
|
928
|
+
"data-variant": variant,
|
|
929
|
+
"data-size": size,
|
|
930
|
+
className: cn(itemVariants({ variant, size, className })),
|
|
931
|
+
...props
|
|
932
|
+
}
|
|
933
|
+
);
|
|
934
|
+
}
|
|
935
|
+
var itemMediaVariants = (0, import_class_variance_authority7.cva)(
|
|
936
|
+
"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none",
|
|
937
|
+
{
|
|
938
|
+
variants: {
|
|
939
|
+
variant: {
|
|
940
|
+
default: "bg-transparent",
|
|
941
|
+
icon: "bg-muted size-8 rounded-sm border [&_svg:not([class*='size-'])]:size-4",
|
|
942
|
+
image: "size-10 overflow-hidden rounded-sm [&_img]:size-full [&_img]:object-cover"
|
|
943
|
+
}
|
|
944
|
+
},
|
|
945
|
+
defaultVariants: {
|
|
946
|
+
variant: "default"
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
);
|
|
950
|
+
function ItemMedia({
|
|
951
|
+
className,
|
|
952
|
+
variant = "default",
|
|
953
|
+
...props
|
|
954
|
+
}) {
|
|
955
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
956
|
+
"div",
|
|
957
|
+
{
|
|
958
|
+
"data-slot": "item-media",
|
|
959
|
+
"data-variant": variant,
|
|
960
|
+
className: cn(itemMediaVariants({ variant, className })),
|
|
961
|
+
...props
|
|
962
|
+
}
|
|
963
|
+
);
|
|
964
|
+
}
|
|
965
|
+
function ItemContent({ className, ...props }) {
|
|
966
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
967
|
+
"div",
|
|
968
|
+
{
|
|
969
|
+
"data-slot": "item-content",
|
|
970
|
+
className: cn("flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none", className),
|
|
971
|
+
...props
|
|
972
|
+
}
|
|
973
|
+
);
|
|
974
|
+
}
|
|
975
|
+
function ItemTitle({ className, ...props }) {
|
|
976
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
977
|
+
"div",
|
|
978
|
+
{
|
|
979
|
+
"data-slot": "item-title",
|
|
980
|
+
className: cn("flex w-fit items-center gap-2 text-sm font-medium leading-snug", className),
|
|
981
|
+
...props
|
|
982
|
+
}
|
|
983
|
+
);
|
|
984
|
+
}
|
|
985
|
+
function ItemDescription({ className, ...props }) {
|
|
986
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
987
|
+
"p",
|
|
988
|
+
{
|
|
989
|
+
"data-slot": "item-description",
|
|
990
|
+
className: cn(
|
|
991
|
+
"text-muted-foreground line-clamp-2 text-balance text-sm font-normal leading-normal",
|
|
992
|
+
"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",
|
|
993
|
+
className
|
|
994
|
+
),
|
|
995
|
+
...props
|
|
996
|
+
}
|
|
997
|
+
);
|
|
998
|
+
}
|
|
999
|
+
function ItemActions({ className, ...props }) {
|
|
1000
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { "data-slot": "item-actions", className: cn("flex items-center gap-2", className), ...props });
|
|
1001
|
+
}
|
|
1002
|
+
function ItemHeader({ className, ...props }) {
|
|
1003
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1004
|
+
"div",
|
|
1005
|
+
{
|
|
1006
|
+
"data-slot": "item-header",
|
|
1007
|
+
className: cn("flex basis-full items-center justify-between gap-2", className),
|
|
1008
|
+
...props
|
|
1009
|
+
}
|
|
1010
|
+
);
|
|
1011
|
+
}
|
|
1012
|
+
function ItemFooter({ className, ...props }) {
|
|
1013
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1014
|
+
"div",
|
|
1015
|
+
{
|
|
1016
|
+
"data-slot": "item-footer",
|
|
1017
|
+
className: cn("flex basis-full items-center justify-between gap-2", className),
|
|
1018
|
+
...props
|
|
1019
|
+
}
|
|
1020
|
+
);
|
|
1021
|
+
}
|
|
1022
|
+
|
|
1023
|
+
// src/components/item/Item.tsx
|
|
1024
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1025
|
+
function Item2({ className, asChild, ...props }) {
|
|
1026
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1027
|
+
Item,
|
|
1028
|
+
{
|
|
1029
|
+
asChild,
|
|
1030
|
+
className: cn(
|
|
1031
|
+
/* Variant colours — override primitive defaults */
|
|
1032
|
+
"data-[variant=outline]:border-berget-item-outline-border",
|
|
1033
|
+
"data-[variant=muted]:bg-berget-item-muted-bg",
|
|
1034
|
+
"data-[variant=muted]:text-berget-item-muted-fg",
|
|
1035
|
+
/* Hover / focus */
|
|
1036
|
+
"[&_a]:hover:bg-berget-item-link-hover-surface",
|
|
1037
|
+
"focus-visible:border-berget-item-focus-ring focus-visible:ring-berget-item-focus-ring/50",
|
|
1038
|
+
className
|
|
1039
|
+
),
|
|
1040
|
+
...props
|
|
1041
|
+
}
|
|
1042
|
+
);
|
|
1043
|
+
}
|
|
1044
|
+
var ItemMedia2 = React14.forwardRef(({ className, ...props }, ref) => {
|
|
1045
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1046
|
+
ItemMedia,
|
|
1047
|
+
{
|
|
1048
|
+
ref,
|
|
1049
|
+
className: cn("data-[variant=icon]:bg-berget-item-media-icon-bg", className),
|
|
1050
|
+
...props
|
|
1051
|
+
}
|
|
1052
|
+
);
|
|
1053
|
+
});
|
|
1054
|
+
ItemMedia2.displayName = "ItemMedia";
|
|
1055
|
+
var ItemTitle2 = React14.forwardRef(({ className, ...props }, ref) => {
|
|
1056
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1057
|
+
ItemTitle,
|
|
1058
|
+
{
|
|
1059
|
+
ref,
|
|
1060
|
+
className: cn("text-berget-item-default-fg", className),
|
|
1061
|
+
...props
|
|
1062
|
+
}
|
|
1063
|
+
);
|
|
1064
|
+
});
|
|
1065
|
+
ItemTitle2.displayName = "ItemTitle";
|
|
1066
|
+
var ItemDescription2 = React14.forwardRef(({ className, ...props }, ref) => {
|
|
1067
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1068
|
+
ItemDescription,
|
|
1069
|
+
{
|
|
1070
|
+
ref,
|
|
1071
|
+
className: cn("text-berget-item-description-fg", className),
|
|
1072
|
+
...props
|
|
1073
|
+
}
|
|
1074
|
+
);
|
|
1075
|
+
});
|
|
1076
|
+
ItemDescription2.displayName = "ItemDescription";
|
|
1077
|
+
var ItemSeparator2 = React14.forwardRef(({ className, ...props }, ref) => {
|
|
1078
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1079
|
+
ItemSeparator,
|
|
1080
|
+
{
|
|
1081
|
+
ref,
|
|
1082
|
+
className: cn("bg-berget-item-separator", className),
|
|
1083
|
+
...props
|
|
1084
|
+
}
|
|
1085
|
+
);
|
|
1086
|
+
});
|
|
1087
|
+
ItemSeparator2.displayName = "ItemSeparator";
|
|
1088
|
+
|
|
1089
|
+
// src/components/input/Input.tsx
|
|
1090
|
+
var React16 = __toESM(require("react"), 1);
|
|
1091
|
+
|
|
1092
|
+
// src/primitives/input.tsx
|
|
1093
|
+
var React15 = __toESM(require("react"), 1);
|
|
1094
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
1095
|
+
var Input = React15.forwardRef(
|
|
696
1096
|
({ className, type, ...props }, ref) => {
|
|
697
|
-
return /* @__PURE__ */ (0,
|
|
1097
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
698
1098
|
"input",
|
|
699
1099
|
{
|
|
700
1100
|
type,
|
|
@@ -711,14 +1111,14 @@ var Input = React11.forwardRef(
|
|
|
711
1111
|
Input.displayName = "Input";
|
|
712
1112
|
|
|
713
1113
|
// src/components/input/Input.tsx
|
|
714
|
-
var
|
|
715
|
-
var Input2 =
|
|
1114
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
1115
|
+
var Input2 = React16.forwardRef(
|
|
716
1116
|
({ className, icon, actionButton, label, description, error, id, disabled, ...props }, ref) => {
|
|
717
|
-
const generatedId =
|
|
1117
|
+
const generatedId = React16.useId();
|
|
718
1118
|
const inputId = id || generatedId;
|
|
719
1119
|
const errorId = `${inputId}-error`;
|
|
720
1120
|
const descriptionId = `${inputId}-description`;
|
|
721
|
-
const inputElement = /* @__PURE__ */ (0,
|
|
1121
|
+
const inputElement = /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
722
1122
|
Input,
|
|
723
1123
|
{
|
|
724
1124
|
ref,
|
|
@@ -738,8 +1138,8 @@ var Input2 = React12.forwardRef(
|
|
|
738
1138
|
}
|
|
739
1139
|
);
|
|
740
1140
|
if (!icon && !actionButton) {
|
|
741
|
-
return /* @__PURE__ */ (0,
|
|
742
|
-
label && /* @__PURE__ */ (0,
|
|
1141
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
1142
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
743
1143
|
"label",
|
|
744
1144
|
{
|
|
745
1145
|
htmlFor: inputId,
|
|
@@ -752,9 +1152,9 @@ var Input2 = React12.forwardRef(
|
|
|
752
1152
|
}
|
|
753
1153
|
),
|
|
754
1154
|
inputElement,
|
|
755
|
-
(description || error) && /* @__PURE__ */ (0,
|
|
756
|
-
description && /* @__PURE__ */ (0,
|
|
757
|
-
error && /* @__PURE__ */ (0,
|
|
1155
|
+
(description || error) && /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-col gap-1", children: [
|
|
1156
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
1157
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
758
1158
|
Typography,
|
|
759
1159
|
{
|
|
760
1160
|
variant: "xs",
|
|
@@ -766,8 +1166,8 @@ var Input2 = React12.forwardRef(
|
|
|
766
1166
|
] })
|
|
767
1167
|
] });
|
|
768
1168
|
}
|
|
769
|
-
return /* @__PURE__ */ (0,
|
|
770
|
-
label && /* @__PURE__ */ (0,
|
|
1169
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
1170
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
771
1171
|
"label",
|
|
772
1172
|
{
|
|
773
1173
|
htmlFor: inputId,
|
|
@@ -779,14 +1179,14 @@ var Input2 = React12.forwardRef(
|
|
|
779
1179
|
children: label
|
|
780
1180
|
}
|
|
781
1181
|
),
|
|
782
|
-
/* @__PURE__ */ (0,
|
|
783
|
-
icon && /* @__PURE__ */ (0,
|
|
1182
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "relative w-full", children: [
|
|
1183
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "absolute left-3 top-1/2 -translate-y-1/2", children: icon }),
|
|
784
1184
|
inputElement,
|
|
785
|
-
actionButton && /* @__PURE__ */ (0,
|
|
1185
|
+
actionButton && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "absolute right-2 top-1/2 -translate-y-1/2", children: actionButton })
|
|
786
1186
|
] }),
|
|
787
|
-
(description || error) && /* @__PURE__ */ (0,
|
|
788
|
-
description && /* @__PURE__ */ (0,
|
|
789
|
-
error && /* @__PURE__ */ (0,
|
|
1187
|
+
(description || error) && /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-col gap-1", children: [
|
|
1188
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
1189
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
790
1190
|
] })
|
|
791
1191
|
] });
|
|
792
1192
|
}
|
|
@@ -794,17 +1194,17 @@ var Input2 = React12.forwardRef(
|
|
|
794
1194
|
Input2.displayName = "Input";
|
|
795
1195
|
|
|
796
1196
|
// src/components/checkbox/Checkbox.tsx
|
|
797
|
-
var
|
|
1197
|
+
var React18 = __toESM(require("react"), 1);
|
|
798
1198
|
var CheckboxPrimitive2 = __toESM(require("@radix-ui/react-checkbox"), 1);
|
|
799
1199
|
var import_lucide_react3 = require("lucide-react");
|
|
800
|
-
var
|
|
1200
|
+
var import_class_variance_authority8 = require("class-variance-authority");
|
|
801
1201
|
|
|
802
1202
|
// src/primitives/checkbox.tsx
|
|
803
|
-
var
|
|
1203
|
+
var React17 = __toESM(require("react"), 1);
|
|
804
1204
|
var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
|
|
805
1205
|
var import_lucide_react2 = require("lucide-react");
|
|
806
|
-
var
|
|
807
|
-
var Checkbox =
|
|
1206
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
1207
|
+
var Checkbox = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
808
1208
|
CheckboxPrimitive.Root,
|
|
809
1209
|
{
|
|
810
1210
|
ref,
|
|
@@ -813,24 +1213,24 @@ var Checkbox = React13.forwardRef(({ className, children, ...props }, ref) => /*
|
|
|
813
1213
|
className
|
|
814
1214
|
),
|
|
815
1215
|
...props,
|
|
816
|
-
children: children ?? /* @__PURE__ */ (0,
|
|
1216
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(CheckboxPrimitive.Indicator, { className: cn("grid place-content-center"), children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react2.Check, { className: "h-4 w-4" }) })
|
|
817
1217
|
}
|
|
818
1218
|
));
|
|
819
1219
|
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
820
|
-
var CheckboxIndicator =
|
|
1220
|
+
var CheckboxIndicator = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
821
1221
|
CheckboxPrimitive.Indicator,
|
|
822
1222
|
{
|
|
823
1223
|
ref,
|
|
824
1224
|
className: cn("grid place-content-center", className),
|
|
825
1225
|
...props,
|
|
826
|
-
children: children ?? /* @__PURE__ */ (0,
|
|
1226
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react2.Check, { className: "h-4 w-4" })
|
|
827
1227
|
}
|
|
828
1228
|
));
|
|
829
1229
|
CheckboxIndicator.displayName = CheckboxPrimitive.Indicator.displayName;
|
|
830
1230
|
|
|
831
1231
|
// src/components/checkbox/Checkbox.tsx
|
|
832
|
-
var
|
|
833
|
-
var checkboxVariants = (0,
|
|
1232
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
1233
|
+
var checkboxVariants = (0, import_class_variance_authority8.cva)(
|
|
834
1234
|
"inline-flex items-center justify-center rounded-md transition-all duration-200 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50",
|
|
835
1235
|
{
|
|
836
1236
|
variants: {
|
|
@@ -851,13 +1251,13 @@ var checkboxVariants = (0, import_class_variance_authority7.cva)(
|
|
|
851
1251
|
}
|
|
852
1252
|
}
|
|
853
1253
|
);
|
|
854
|
-
var Checkbox2 =
|
|
1254
|
+
var Checkbox2 = React18.forwardRef(
|
|
855
1255
|
({ className, variant, size, label, description, error, id, disabled, ...props }, ref) => {
|
|
856
|
-
const generatedId =
|
|
1256
|
+
const generatedId = React18.useId();
|
|
857
1257
|
const checkboxId = id || generatedId;
|
|
858
1258
|
const errorId = `${checkboxId}-error`;
|
|
859
|
-
return /* @__PURE__ */ (0,
|
|
860
|
-
/* @__PURE__ */ (0,
|
|
1259
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex items-start gap-3", children: [
|
|
1260
|
+
/* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "relative flex items-start pt-0.5", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
861
1261
|
Checkbox,
|
|
862
1262
|
{
|
|
863
1263
|
ref,
|
|
@@ -872,7 +1272,7 @@ var Checkbox2 = React14.forwardRef(
|
|
|
872
1272
|
className
|
|
873
1273
|
),
|
|
874
1274
|
...props,
|
|
875
|
-
children: /* @__PURE__ */ (0,
|
|
1275
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CheckboxPrimitive2.Indicator, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
876
1276
|
import_lucide_react3.Check,
|
|
877
1277
|
{
|
|
878
1278
|
className: "h-4 w-4 text-current stroke-current",
|
|
@@ -881,8 +1281,8 @@ var Checkbox2 = React14.forwardRef(
|
|
|
881
1281
|
) })
|
|
882
1282
|
}
|
|
883
1283
|
) }),
|
|
884
|
-
(label || description || error) && /* @__PURE__ */ (0,
|
|
885
|
-
label && /* @__PURE__ */ (0,
|
|
1284
|
+
(label || description || error) && /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex flex-col gap-1", children: [
|
|
1285
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
886
1286
|
"label",
|
|
887
1287
|
{
|
|
888
1288
|
htmlFor: checkboxId,
|
|
@@ -894,8 +1294,8 @@ var Checkbox2 = React14.forwardRef(
|
|
|
894
1294
|
children: label
|
|
895
1295
|
}
|
|
896
1296
|
),
|
|
897
|
-
description && /* @__PURE__ */ (0,
|
|
898
|
-
error && /* @__PURE__ */ (0,
|
|
1297
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "xs", color: "muted", children: description }),
|
|
1298
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
899
1299
|
] })
|
|
900
1300
|
] });
|
|
901
1301
|
}
|
|
@@ -903,11 +1303,11 @@ var Checkbox2 = React14.forwardRef(
|
|
|
903
1303
|
Checkbox2.displayName = "Checkbox";
|
|
904
1304
|
|
|
905
1305
|
// src/components/switch/Switch.tsx
|
|
906
|
-
var
|
|
1306
|
+
var React19 = __toESM(require("react"), 1);
|
|
907
1307
|
var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
|
|
908
|
-
var
|
|
909
|
-
var
|
|
910
|
-
var switchRootVariants = (0,
|
|
1308
|
+
var import_class_variance_authority9 = require("class-variance-authority");
|
|
1309
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1310
|
+
var switchRootVariants = (0, import_class_variance_authority9.cva)(
|
|
911
1311
|
"peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-berget-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",
|
|
912
1312
|
{
|
|
913
1313
|
variants: {
|
|
@@ -928,7 +1328,7 @@ var switchRootVariants = (0, import_class_variance_authority8.cva)(
|
|
|
928
1328
|
}
|
|
929
1329
|
}
|
|
930
1330
|
);
|
|
931
|
-
var switchThumbVariants = (0,
|
|
1331
|
+
var switchThumbVariants = (0, import_class_variance_authority9.cva)(
|
|
932
1332
|
"pointer-events-none block rounded-full ring-0 transition-transform shadow-berget-sm bg-berget-foreground",
|
|
933
1333
|
{
|
|
934
1334
|
variants: {
|
|
@@ -943,13 +1343,13 @@ var switchThumbVariants = (0, import_class_variance_authority8.cva)(
|
|
|
943
1343
|
}
|
|
944
1344
|
}
|
|
945
1345
|
);
|
|
946
|
-
var Switch =
|
|
1346
|
+
var Switch = React19.forwardRef(
|
|
947
1347
|
({ className, variant, size, label, description, error, id, disabled, ...props }, ref) => {
|
|
948
|
-
const generatedId =
|
|
1348
|
+
const generatedId = React19.useId();
|
|
949
1349
|
const switchId = id || generatedId;
|
|
950
1350
|
const errorId = `${switchId}-error`;
|
|
951
|
-
return /* @__PURE__ */ (0,
|
|
952
|
-
/* @__PURE__ */ (0,
|
|
1351
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex items-center gap-3", children: [
|
|
1352
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
953
1353
|
SwitchPrimitives.Root,
|
|
954
1354
|
{
|
|
955
1355
|
ref,
|
|
@@ -963,11 +1363,11 @@ var Switch = React15.forwardRef(
|
|
|
963
1363
|
className
|
|
964
1364
|
),
|
|
965
1365
|
...props,
|
|
966
|
-
children: /* @__PURE__ */ (0,
|
|
1366
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(SwitchPrimitives.Thumb, { className: cn(switchThumbVariants({ size })) })
|
|
967
1367
|
}
|
|
968
1368
|
),
|
|
969
|
-
(label || description || error) && /* @__PURE__ */ (0,
|
|
970
|
-
label && /* @__PURE__ */ (0,
|
|
1369
|
+
(label || description || error) && /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex flex-col gap-1", children: [
|
|
1370
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
971
1371
|
"label",
|
|
972
1372
|
{
|
|
973
1373
|
htmlFor: switchId,
|
|
@@ -978,8 +1378,8 @@ var Switch = React15.forwardRef(
|
|
|
978
1378
|
children: label
|
|
979
1379
|
}
|
|
980
1380
|
),
|
|
981
|
-
description && /* @__PURE__ */ (0,
|
|
982
|
-
error && /* @__PURE__ */ (0,
|
|
1381
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typography, { variant: "xs", color: "muted", children: description }),
|
|
1382
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
983
1383
|
] })
|
|
984
1384
|
] });
|
|
985
1385
|
}
|
|
@@ -987,17 +1387,17 @@ var Switch = React15.forwardRef(
|
|
|
987
1387
|
Switch.displayName = "Switch";
|
|
988
1388
|
|
|
989
1389
|
// src/components/select/Select.tsx
|
|
990
|
-
var
|
|
991
|
-
var
|
|
1390
|
+
var React21 = __toESM(require("react"), 1);
|
|
1391
|
+
var import_class_variance_authority10 = require("class-variance-authority");
|
|
992
1392
|
|
|
993
1393
|
// src/primitives/select.tsx
|
|
994
|
-
var
|
|
1394
|
+
var React20 = __toESM(require("react"), 1);
|
|
995
1395
|
var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
|
|
996
1396
|
var import_lucide_react4 = require("lucide-react");
|
|
997
|
-
var
|
|
1397
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
998
1398
|
var Select = SelectPrimitive.Root;
|
|
999
1399
|
var SelectValue = SelectPrimitive.Value;
|
|
1000
|
-
var SelectTrigger =
|
|
1400
|
+
var SelectTrigger = React20.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
1001
1401
|
SelectPrimitive.Trigger,
|
|
1002
1402
|
{
|
|
1003
1403
|
ref,
|
|
@@ -1008,32 +1408,32 @@ var SelectTrigger = React16.forwardRef(({ className, children, ...props }, ref)
|
|
|
1008
1408
|
...props,
|
|
1009
1409
|
children: [
|
|
1010
1410
|
children,
|
|
1011
|
-
/* @__PURE__ */ (0,
|
|
1411
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4 opacity-50" }) })
|
|
1012
1412
|
]
|
|
1013
1413
|
}
|
|
1014
1414
|
));
|
|
1015
1415
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
1016
|
-
var SelectScrollUpButton =
|
|
1416
|
+
var SelectScrollUpButton = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1017
1417
|
SelectPrimitive.ScrollUpButton,
|
|
1018
1418
|
{
|
|
1019
1419
|
ref,
|
|
1020
1420
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
1021
1421
|
...props,
|
|
1022
|
-
children: /* @__PURE__ */ (0,
|
|
1422
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react4.ChevronUp, { className: "h-4 w-4" })
|
|
1023
1423
|
}
|
|
1024
1424
|
));
|
|
1025
1425
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
1026
|
-
var SelectScrollDownButton =
|
|
1426
|
+
var SelectScrollDownButton = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1027
1427
|
SelectPrimitive.ScrollDownButton,
|
|
1028
1428
|
{
|
|
1029
1429
|
ref,
|
|
1030
1430
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
1031
1431
|
...props,
|
|
1032
|
-
children: /* @__PURE__ */ (0,
|
|
1432
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4" })
|
|
1033
1433
|
}
|
|
1034
1434
|
));
|
|
1035
1435
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
1036
|
-
var SelectContent =
|
|
1436
|
+
var SelectContent = React20.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
1037
1437
|
SelectPrimitive.Content,
|
|
1038
1438
|
{
|
|
1039
1439
|
ref,
|
|
@@ -1045,8 +1445,8 @@ var SelectContent = React16.forwardRef(({ className, children, position = "poppe
|
|
|
1045
1445
|
position,
|
|
1046
1446
|
...props,
|
|
1047
1447
|
children: [
|
|
1048
|
-
/* @__PURE__ */ (0,
|
|
1049
|
-
/* @__PURE__ */ (0,
|
|
1448
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectScrollUpButton, {}),
|
|
1449
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1050
1450
|
SelectPrimitive.Viewport,
|
|
1051
1451
|
{
|
|
1052
1452
|
className: cn(
|
|
@@ -1056,151 +1456,621 @@ var SelectContent = React16.forwardRef(({ className, children, position = "poppe
|
|
|
1056
1456
|
children
|
|
1057
1457
|
}
|
|
1058
1458
|
),
|
|
1059
|
-
/* @__PURE__ */ (0,
|
|
1459
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectScrollDownButton, {})
|
|
1060
1460
|
]
|
|
1061
1461
|
}
|
|
1062
|
-
) }));
|
|
1063
|
-
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
1064
|
-
var SelectLabel =
|
|
1065
|
-
SelectPrimitive.Label,
|
|
1462
|
+
) }));
|
|
1463
|
+
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
1464
|
+
var SelectLabel = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1465
|
+
SelectPrimitive.Label,
|
|
1466
|
+
{
|
|
1467
|
+
ref,
|
|
1468
|
+
className: cn("py-1.5 pl-8 pr-2 text-sm ", className),
|
|
1469
|
+
...props
|
|
1470
|
+
}
|
|
1471
|
+
));
|
|
1472
|
+
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
1473
|
+
var SelectItem = React20.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
1474
|
+
SelectPrimitive.Item,
|
|
1475
|
+
{
|
|
1476
|
+
ref,
|
|
1477
|
+
className: cn(
|
|
1478
|
+
"relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
1479
|
+
className
|
|
1480
|
+
),
|
|
1481
|
+
...props,
|
|
1482
|
+
children: [
|
|
1483
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react4.Check, { className: "h-4 w-4" }) }) }),
|
|
1484
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(SelectPrimitive.ItemText, { children })
|
|
1485
|
+
]
|
|
1486
|
+
}
|
|
1487
|
+
));
|
|
1488
|
+
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
1489
|
+
var SelectSeparator = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1490
|
+
SelectPrimitive.Separator,
|
|
1491
|
+
{
|
|
1492
|
+
ref,
|
|
1493
|
+
className: cn("-mx-1 my-1 h-px bg-muted", className),
|
|
1494
|
+
...props
|
|
1495
|
+
}
|
|
1496
|
+
));
|
|
1497
|
+
SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
1498
|
+
|
|
1499
|
+
// src/components/select/Select.tsx
|
|
1500
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
1501
|
+
var selectVariants = (0, import_class_variance_authority10.cva)(
|
|
1502
|
+
"flex w-full items-center justify-between rounded-berget-xs border bg-card px-4 py-3 text-sm transition-colors duration-200 focus-visible:outline-none focus-visible:ring-0 focus-visible:ring-offset-0 focus-visible:border-berget-form-focus-border disabled:cursor-not-allowed disabled:opacity-50",
|
|
1503
|
+
{
|
|
1504
|
+
variants: {
|
|
1505
|
+
variant: {
|
|
1506
|
+
default: "border-berget-border-interactive hover:bg-berget-surface-hover",
|
|
1507
|
+
primary: "border-berget-primary-border bg-berget-primary-tint hover:bg-berget-surface-hover",
|
|
1508
|
+
subtle: "border-berget-border-subtle hover:bg-berget-surface-hover",
|
|
1509
|
+
muted: "border-berget-border-subtle/50 hover:bg-berget-surface-hover"
|
|
1510
|
+
},
|
|
1511
|
+
size: {
|
|
1512
|
+
sm: "px-3 py-2 text-xs",
|
|
1513
|
+
default: "px-4 py-3 text-sm",
|
|
1514
|
+
lg: "px-5 py-4 text-base"
|
|
1515
|
+
}
|
|
1516
|
+
},
|
|
1517
|
+
defaultVariants: {
|
|
1518
|
+
variant: "default",
|
|
1519
|
+
size: "default"
|
|
1520
|
+
}
|
|
1521
|
+
}
|
|
1522
|
+
);
|
|
1523
|
+
var Select2 = React21.forwardRef(
|
|
1524
|
+
({
|
|
1525
|
+
className,
|
|
1526
|
+
variant,
|
|
1527
|
+
size,
|
|
1528
|
+
label,
|
|
1529
|
+
description,
|
|
1530
|
+
error,
|
|
1531
|
+
placeholder,
|
|
1532
|
+
options,
|
|
1533
|
+
id,
|
|
1534
|
+
disabled,
|
|
1535
|
+
value,
|
|
1536
|
+
defaultValue,
|
|
1537
|
+
onValueChange,
|
|
1538
|
+
name,
|
|
1539
|
+
required
|
|
1540
|
+
}, ref) => {
|
|
1541
|
+
const generatedId = React21.useId();
|
|
1542
|
+
const selectId = id || generatedId;
|
|
1543
|
+
const errorId = `${selectId}-error`;
|
|
1544
|
+
const descriptionId = `${selectId}-description`;
|
|
1545
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
1546
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1547
|
+
"label",
|
|
1548
|
+
{
|
|
1549
|
+
htmlFor: selectId,
|
|
1550
|
+
className: cn(
|
|
1551
|
+
"text-sm font-sans leading-none",
|
|
1552
|
+
disabled ? "text-muted-foreground cursor-not-allowed" : "text-foreground",
|
|
1553
|
+
error && "text-berget-destructive-foreground"
|
|
1554
|
+
),
|
|
1555
|
+
children: label
|
|
1556
|
+
}
|
|
1557
|
+
),
|
|
1558
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
|
1559
|
+
Select,
|
|
1560
|
+
{
|
|
1561
|
+
value,
|
|
1562
|
+
defaultValue,
|
|
1563
|
+
onValueChange,
|
|
1564
|
+
disabled,
|
|
1565
|
+
name,
|
|
1566
|
+
required,
|
|
1567
|
+
children: [
|
|
1568
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1569
|
+
SelectTrigger,
|
|
1570
|
+
{
|
|
1571
|
+
ref,
|
|
1572
|
+
id: selectId,
|
|
1573
|
+
"aria-invalid": !!error,
|
|
1574
|
+
"aria-describedby": cn(error && errorId, description && descriptionId),
|
|
1575
|
+
className: cn(
|
|
1576
|
+
selectVariants({ variant, size }),
|
|
1577
|
+
error && "border-berget-destructive-foreground/50 bg-berget-destructive",
|
|
1578
|
+
className
|
|
1579
|
+
),
|
|
1580
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(SelectValue, { placeholder })
|
|
1581
|
+
}
|
|
1582
|
+
),
|
|
1583
|
+
/* @__PURE__ */ (0, import_jsx_runtime23.jsx)(SelectContent, { children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(SelectItem, { value: option.value, disabled: option.disabled, children: option.label }, option.value)) })
|
|
1584
|
+
]
|
|
1585
|
+
}
|
|
1586
|
+
),
|
|
1587
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
1588
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Typography, { variant: "xs", id: errorId, className: "text-berget-destructive-foreground", children: error })
|
|
1589
|
+
] });
|
|
1590
|
+
}
|
|
1591
|
+
);
|
|
1592
|
+
Select2.displayName = "Select";
|
|
1593
|
+
|
|
1594
|
+
// src/components/country-select/CountrySelect.tsx
|
|
1595
|
+
var React26 = __toESM(require("react"), 1);
|
|
1596
|
+
var import_lucide_react7 = require("lucide-react");
|
|
1597
|
+
|
|
1598
|
+
// src/components/icon/Icon.tsx
|
|
1599
|
+
var React22 = __toESM(require("react"), 1);
|
|
1600
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
1601
|
+
var iconStrokeMap = {
|
|
1602
|
+
16: 1.4,
|
|
1603
|
+
24: 1.6,
|
|
1604
|
+
32: 1.8
|
|
1605
|
+
};
|
|
1606
|
+
var Icon2 = React22.forwardRef(
|
|
1607
|
+
({
|
|
1608
|
+
icon: IconComponent,
|
|
1609
|
+
size,
|
|
1610
|
+
className,
|
|
1611
|
+
"aria-label": ariaLabel,
|
|
1612
|
+
"aria-hidden": ariaHidden = true,
|
|
1613
|
+
...props
|
|
1614
|
+
}, ref) => {
|
|
1615
|
+
const strokeWidth = iconStrokeMap[size];
|
|
1616
|
+
const sizeClass = size === 16 ? "w-4 h-4" : size === 24 ? "w-6 h-6" : "w-8 h-8";
|
|
1617
|
+
const ariaAttributes = ariaLabel ? { "aria-label": ariaLabel } : { "aria-hidden": ariaHidden };
|
|
1618
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1619
|
+
IconComponent,
|
|
1620
|
+
{
|
|
1621
|
+
ref,
|
|
1622
|
+
className: cn(sizeClass, className),
|
|
1623
|
+
strokeWidth,
|
|
1624
|
+
...ariaAttributes,
|
|
1625
|
+
...props
|
|
1626
|
+
}
|
|
1627
|
+
);
|
|
1628
|
+
}
|
|
1629
|
+
);
|
|
1630
|
+
Icon2.displayName = "Icon";
|
|
1631
|
+
|
|
1632
|
+
// src/primitives/popover.tsx
|
|
1633
|
+
var React23 = __toESM(require("react"), 1);
|
|
1634
|
+
var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"), 1);
|
|
1635
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
1636
|
+
var Popover = PopoverPrimitive.Root;
|
|
1637
|
+
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
1638
|
+
var PopoverContent = React23.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1639
|
+
PopoverPrimitive.Content,
|
|
1640
|
+
{
|
|
1641
|
+
ref,
|
|
1642
|
+
align,
|
|
1643
|
+
sideOffset,
|
|
1644
|
+
className: cn(
|
|
1645
|
+
"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-popover-content-transform-origin]",
|
|
1646
|
+
className
|
|
1647
|
+
),
|
|
1648
|
+
...props
|
|
1649
|
+
}
|
|
1650
|
+
) }));
|
|
1651
|
+
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
1652
|
+
|
|
1653
|
+
// src/primitives/command.tsx
|
|
1654
|
+
var React25 = __toESM(require("react"), 1);
|
|
1655
|
+
var import_cmdk = require("cmdk");
|
|
1656
|
+
var import_lucide_react6 = require("lucide-react");
|
|
1657
|
+
|
|
1658
|
+
// src/primitives/dialog.tsx
|
|
1659
|
+
var React24 = __toESM(require("react"), 1);
|
|
1660
|
+
var DialogPrimitive2 = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
1661
|
+
var import_lucide_react5 = require("lucide-react");
|
|
1662
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1663
|
+
var DialogPortal2 = DialogPrimitive2.Portal;
|
|
1664
|
+
var DialogOverlay2 = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1665
|
+
DialogPrimitive2.Overlay,
|
|
1666
|
+
{
|
|
1667
|
+
ref,
|
|
1668
|
+
className: cn(
|
|
1669
|
+
"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
1670
|
+
className
|
|
1671
|
+
),
|
|
1672
|
+
...props
|
|
1673
|
+
}
|
|
1674
|
+
));
|
|
1675
|
+
DialogOverlay2.displayName = DialogPrimitive2.Overlay.displayName;
|
|
1676
|
+
var DialogContent2 = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(DialogPortal2, { children: [
|
|
1677
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(DialogOverlay2, {}),
|
|
1678
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
1679
|
+
DialogPrimitive2.Content,
|
|
1680
|
+
{
|
|
1681
|
+
ref,
|
|
1682
|
+
className: cn(
|
|
1683
|
+
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
|
|
1684
|
+
className
|
|
1685
|
+
),
|
|
1686
|
+
...props,
|
|
1687
|
+
children: [
|
|
1688
|
+
children,
|
|
1689
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(DialogPrimitive2.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
|
|
1690
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_lucide_react5.X, { className: "h-4 w-4" }),
|
|
1691
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "sr-only", children: "Close" })
|
|
1692
|
+
] })
|
|
1693
|
+
]
|
|
1694
|
+
}
|
|
1695
|
+
)
|
|
1696
|
+
] }));
|
|
1697
|
+
DialogContent2.displayName = DialogPrimitive2.Content.displayName;
|
|
1698
|
+
var DialogHeader2 = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
|
|
1699
|
+
DialogHeader2.displayName = "DialogHeader";
|
|
1700
|
+
var DialogFooter2 = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1701
|
+
"div",
|
|
1702
|
+
{
|
|
1703
|
+
className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className),
|
|
1704
|
+
...props
|
|
1705
|
+
}
|
|
1706
|
+
);
|
|
1707
|
+
DialogFooter2.displayName = "DialogFooter";
|
|
1708
|
+
var DialogTitle2 = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1709
|
+
DialogPrimitive2.Title,
|
|
1710
|
+
{
|
|
1711
|
+
ref,
|
|
1712
|
+
className: cn("text-lg font-semibold leading-none tracking-tight", className),
|
|
1713
|
+
...props
|
|
1714
|
+
}
|
|
1715
|
+
));
|
|
1716
|
+
DialogTitle2.displayName = DialogPrimitive2.Title.displayName;
|
|
1717
|
+
var DialogDescription2 = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1718
|
+
DialogPrimitive2.Description,
|
|
1719
|
+
{
|
|
1720
|
+
ref,
|
|
1721
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
1722
|
+
...props
|
|
1723
|
+
}
|
|
1724
|
+
));
|
|
1725
|
+
DialogDescription2.displayName = DialogPrimitive2.Description.displayName;
|
|
1726
|
+
|
|
1727
|
+
// src/primitives/command.tsx
|
|
1728
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1729
|
+
var Command = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1730
|
+
import_cmdk.Command,
|
|
1731
|
+
{
|
|
1732
|
+
ref,
|
|
1733
|
+
className: cn(
|
|
1734
|
+
"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",
|
|
1735
|
+
className
|
|
1736
|
+
),
|
|
1737
|
+
...props
|
|
1738
|
+
}
|
|
1739
|
+
));
|
|
1740
|
+
Command.displayName = import_cmdk.Command.displayName;
|
|
1741
|
+
var CommandInput = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
|
|
1742
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react6.Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
|
|
1743
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1744
|
+
import_cmdk.Command.Input,
|
|
1745
|
+
{
|
|
1746
|
+
ref,
|
|
1747
|
+
className: cn(
|
|
1748
|
+
"flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
1749
|
+
className
|
|
1750
|
+
),
|
|
1751
|
+
...props
|
|
1752
|
+
}
|
|
1753
|
+
)
|
|
1754
|
+
] }));
|
|
1755
|
+
CommandInput.displayName = import_cmdk.Command.Input.displayName;
|
|
1756
|
+
var CommandList = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1757
|
+
import_cmdk.Command.List,
|
|
1066
1758
|
{
|
|
1067
1759
|
ref,
|
|
1068
|
-
className: cn("
|
|
1760
|
+
className: cn("max-h-[300px] overflow-y-auto overflow-x-hidden", className),
|
|
1069
1761
|
...props
|
|
1070
1762
|
}
|
|
1071
1763
|
));
|
|
1072
|
-
|
|
1073
|
-
var
|
|
1074
|
-
|
|
1764
|
+
CommandList.displayName = import_cmdk.Command.List.displayName;
|
|
1765
|
+
var CommandEmpty = React25.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_cmdk.Command.Empty, { ref, className: "py-6 text-center text-sm", ...props }));
|
|
1766
|
+
CommandEmpty.displayName = import_cmdk.Command.Empty.displayName;
|
|
1767
|
+
var CommandGroup = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1768
|
+
import_cmdk.Command.Group,
|
|
1075
1769
|
{
|
|
1076
1770
|
ref,
|
|
1077
1771
|
className: cn(
|
|
1078
|
-
"
|
|
1772
|
+
"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
|
|
1079
1773
|
className
|
|
1080
1774
|
),
|
|
1081
|
-
...props
|
|
1082
|
-
children: [
|
|
1083
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react4.Check, { className: "h-4 w-4" }) }) }),
|
|
1084
|
-
/* @__PURE__ */ (0, import_jsx_runtime17.jsx)(SelectPrimitive.ItemText, { children })
|
|
1085
|
-
]
|
|
1775
|
+
...props
|
|
1086
1776
|
}
|
|
1087
1777
|
));
|
|
1088
|
-
|
|
1089
|
-
var
|
|
1090
|
-
|
|
1778
|
+
CommandGroup.displayName = import_cmdk.Command.Group.displayName;
|
|
1779
|
+
var CommandSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1780
|
+
import_cmdk.Command.Separator,
|
|
1091
1781
|
{
|
|
1092
1782
|
ref,
|
|
1093
|
-
className: cn("-mx-1
|
|
1783
|
+
className: cn("-mx-1 h-px bg-border", className),
|
|
1094
1784
|
...props
|
|
1095
1785
|
}
|
|
1096
1786
|
));
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
1101
|
-
var selectVariants = (0, import_class_variance_authority9.cva)(
|
|
1102
|
-
"flex w-full items-center justify-between rounded-berget-xs border bg-card px-4 py-3 text-sm transition-colors duration-200 focus-visible:outline-none focus-visible:ring-0 focus-visible:ring-offset-0 focus-visible:border-berget-form-focus-border disabled:cursor-not-allowed disabled:opacity-50",
|
|
1787
|
+
CommandSeparator.displayName = import_cmdk.Command.Separator.displayName;
|
|
1788
|
+
var CommandItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1789
|
+
import_cmdk.Command.Item,
|
|
1103
1790
|
{
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
},
|
|
1111
|
-
size: {
|
|
1112
|
-
sm: "px-3 py-2 text-xs",
|
|
1113
|
-
default: "px-4 py-3 text-sm",
|
|
1114
|
-
lg: "px-5 py-4 text-base"
|
|
1115
|
-
}
|
|
1116
|
-
},
|
|
1117
|
-
defaultVariants: {
|
|
1118
|
-
variant: "default",
|
|
1119
|
-
size: "default"
|
|
1120
|
-
}
|
|
1791
|
+
ref,
|
|
1792
|
+
className: cn(
|
|
1793
|
+
"relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected='true']:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
|
|
1794
|
+
className
|
|
1795
|
+
),
|
|
1796
|
+
...props
|
|
1121
1797
|
}
|
|
1122
|
-
);
|
|
1123
|
-
|
|
1798
|
+
));
|
|
1799
|
+
CommandItem.displayName = import_cmdk.Command.Item.displayName;
|
|
1800
|
+
var CommandShortcut = ({ className, ...props }) => {
|
|
1801
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1802
|
+
"span",
|
|
1803
|
+
{
|
|
1804
|
+
className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
|
|
1805
|
+
...props
|
|
1806
|
+
}
|
|
1807
|
+
);
|
|
1808
|
+
};
|
|
1809
|
+
CommandShortcut.displayName = "CommandShortcut";
|
|
1810
|
+
|
|
1811
|
+
// src/components/country-select/countries.ts
|
|
1812
|
+
var COUNTRIES = [
|
|
1813
|
+
{ code: "DZ", name: "Algeria", flag: "\u{1F1E9}\u{1F1FF}" },
|
|
1814
|
+
{ code: "AR", name: "Argentina", flag: "\u{1F1E6}\u{1F1F7}" },
|
|
1815
|
+
{ code: "AU", name: "Australia", flag: "\u{1F1E6}\u{1F1FA}" },
|
|
1816
|
+
{ code: "AT", name: "Austria", flag: "\u{1F1E6}\u{1F1F9}" },
|
|
1817
|
+
{ code: "BE", name: "Belgium", flag: "\u{1F1E7}\u{1F1EA}" },
|
|
1818
|
+
{ code: "BG", name: "Bulgaria", flag: "\u{1F1E7}\u{1F1EC}" },
|
|
1819
|
+
{ code: "BO", name: "Bolivia", flag: "\u{1F1E7}\u{1F1F4}" },
|
|
1820
|
+
{ code: "BR", name: "Brazil", flag: "\u{1F1E7}\u{1F1F7}" },
|
|
1821
|
+
{ code: "CA", name: "Canada", flag: "\u{1F1E8}\u{1F1E6}" },
|
|
1822
|
+
{ code: "CL", name: "Chile", flag: "\u{1F1E8}\u{1F1F1}" },
|
|
1823
|
+
{ code: "CN", name: "China", flag: "\u{1F1E8}\u{1F1F3}" },
|
|
1824
|
+
{ code: "CO", name: "Colombia", flag: "\u{1F1E8}\u{1F1F4}" },
|
|
1825
|
+
{ code: "CR", name: "Costa Rica", flag: "\u{1F1E8}\u{1F1F7}" },
|
|
1826
|
+
{ code: "CY", name: "Cyprus", flag: "\u{1F1E8}\u{1F1FE}" },
|
|
1827
|
+
{ code: "HR", name: "Croatia", flag: "\u{1F1ED}\u{1F1F7}" },
|
|
1828
|
+
{ code: "CZ", name: "Czech Republic", flag: "\u{1F1E8}\u{1F1FF}" },
|
|
1829
|
+
{ code: "DK", name: "Denmark", flag: "\u{1F1E9}\u{1F1F0}" },
|
|
1830
|
+
{ code: "DO", name: "Dominican Republic", flag: "\u{1F1E9}\u{1F1F4}" },
|
|
1831
|
+
{ code: "EC", name: "Ecuador", flag: "\u{1F1EA}\u{1F1E8}" },
|
|
1832
|
+
{ code: "EG", name: "Egypt", flag: "\u{1F1EA}\u{1F1EC}" },
|
|
1833
|
+
{ code: "EE", name: "Estonia", flag: "\u{1F1EA}\u{1F1EA}" },
|
|
1834
|
+
{ code: "ET", name: "Ethiopia", flag: "\u{1F1EA}\u{1F1F9}" },
|
|
1835
|
+
{ code: "FI", name: "Finland", flag: "\u{1F1EB}\u{1F1EE}" },
|
|
1836
|
+
{ code: "FR", name: "France", flag: "\u{1F1EB}\u{1F1F7}" },
|
|
1837
|
+
{ code: "DE", name: "Germany", flag: "\u{1F1E9}\u{1F1EA}" },
|
|
1838
|
+
{ code: "GR", name: "Greece", flag: "\u{1F1EC}\u{1F1F7}" },
|
|
1839
|
+
{ code: "GT", name: "Guatemala", flag: "\u{1F1EC}\u{1F1F9}" },
|
|
1840
|
+
{ code: "HN", name: "Honduras", flag: "\u{1F1ED}\u{1F1F3}" },
|
|
1841
|
+
{ code: "HK", name: "Hong Kong", flag: "\u{1F1ED}\u{1F1F0}" },
|
|
1842
|
+
{ code: "HU", name: "Hungary", flag: "\u{1F1ED}\u{1F1FA}" },
|
|
1843
|
+
{ code: "IN", name: "India", flag: "\u{1F1EE}\u{1F1F3}" },
|
|
1844
|
+
{ code: "ID", name: "Indonesia", flag: "\u{1F1EE}\u{1F1E9}" },
|
|
1845
|
+
{ code: "IE", name: "Ireland", flag: "\u{1F1EE}\u{1F1EA}" },
|
|
1846
|
+
{ code: "IL", name: "Israel", flag: "\u{1F1EE}\u{1F1F1}" },
|
|
1847
|
+
{ code: "IT", name: "Italy", flag: "\u{1F1EE}\u{1F1F9}" },
|
|
1848
|
+
{ code: "JP", name: "Japan", flag: "\u{1F1EF}\u{1F1F5}" },
|
|
1849
|
+
{ code: "KE", name: "Kenya", flag: "\u{1F1F0}\u{1F1EA}" },
|
|
1850
|
+
{ code: "LT", name: "Lithuania", flag: "\u{1F1F1}\u{1F1F9}" },
|
|
1851
|
+
{ code: "LV", name: "Latvia", flag: "\u{1F1F1}\u{1F1FB}" },
|
|
1852
|
+
{ code: "LU", name: "Luxembourg", flag: "\u{1F1F1}\u{1F1FA}" },
|
|
1853
|
+
{ code: "MA", name: "Morocco", flag: "\u{1F1F2}\u{1F1E6}" },
|
|
1854
|
+
{ code: "MT", name: "Malta", flag: "\u{1F1F2}\u{1F1F9}" },
|
|
1855
|
+
{ code: "MX", name: "Mexico", flag: "\u{1F1F2}\u{1F1FD}" },
|
|
1856
|
+
{ code: "MN", name: "Mongolia", flag: "\u{1F1F2}\u{1F1F3}" },
|
|
1857
|
+
{ code: "NL", name: "Netherlands", flag: "\u{1F1F3}\u{1F1F1}" },
|
|
1858
|
+
{ code: "NZ", name: "New Zealand", flag: "\u{1F1F3}\u{1F1FF}" },
|
|
1859
|
+
{ code: "NO", name: "Norway", flag: "\u{1F1F3}\u{1F1F4}" },
|
|
1860
|
+
{ code: "PK", name: "Pakistan", flag: "\u{1F1F5}\u{1F1F0}" },
|
|
1861
|
+
{ code: "PA", name: "Panama", flag: "\u{1F1F5}\u{1F1E6}" },
|
|
1862
|
+
{ code: "PE", name: "Peru", flag: "\u{1F1F5}\u{1F1EA}" },
|
|
1863
|
+
{ code: "PL", name: "Poland", flag: "\u{1F1F5}\u{1F1F1}" },
|
|
1864
|
+
{ code: "PT", name: "Portugal", flag: "\u{1F1F5}\u{1F1F9}" },
|
|
1865
|
+
{ code: "RO", name: "Romania", flag: "\u{1F1F7}\u{1F1F4}" },
|
|
1866
|
+
{ code: "SA", name: "Saudi Arabia", flag: "\u{1F1F8}\u{1F1E6}" },
|
|
1867
|
+
{ code: "SG", name: "Singapore", flag: "\u{1F1F8}\u{1F1EC}" },
|
|
1868
|
+
{ code: "SK", name: "Slovakia", flag: "\u{1F1F8}\u{1F1F0}" },
|
|
1869
|
+
{ code: "SI", name: "Slovenia", flag: "\u{1F1F8}\u{1F1EE}" },
|
|
1870
|
+
{ code: "ZA", name: "South Africa", flag: "\u{1F1FF}\u{1F1E6}" },
|
|
1871
|
+
{ code: "ES", name: "Spain", flag: "\u{1F1EA}\u{1F1F8}" },
|
|
1872
|
+
{ code: "SE", name: "Sweden", flag: "\u{1F1F8}\u{1F1EA}" },
|
|
1873
|
+
{ code: "CH", name: "Switzerland", flag: "\u{1F1E8}\u{1F1ED}" },
|
|
1874
|
+
{ code: "TW", name: "Taiwan", flag: "\u{1F1F9}\u{1F1FC}" },
|
|
1875
|
+
{ code: "TH", name: "Thailand", flag: "\u{1F1F9}\u{1F1ED}" },
|
|
1876
|
+
{ code: "TR", name: "Turkey", flag: "\u{1F1F9}\u{1F1F7}" },
|
|
1877
|
+
{ code: "AE", name: "United Arab Emirates", flag: "\u{1F1E6}\u{1F1EA}" },
|
|
1878
|
+
{ code: "GB", name: "United Kingdom", flag: "\u{1F1EC}\u{1F1E7}" },
|
|
1879
|
+
{ code: "UA", name: "Ukraine", flag: "\u{1F1FA}\u{1F1E6}" },
|
|
1880
|
+
{ code: "US", name: "United States", flag: "\u{1F1FA}\u{1F1F8}" },
|
|
1881
|
+
{ code: "UY", name: "Uruguay", flag: "\u{1F1FA}\u{1F1FE}" },
|
|
1882
|
+
{ code: "VE", name: "Venezuela", flag: "\u{1F1FB}\u{1F1EA}" },
|
|
1883
|
+
{ code: "VN", name: "Vietnam", flag: "\u{1F1FB}\u{1F1F3}" }
|
|
1884
|
+
];
|
|
1885
|
+
var getCountryByCode = (code) => {
|
|
1886
|
+
return COUNTRIES.find((country) => country.code === code);
|
|
1887
|
+
};
|
|
1888
|
+
var getCountryByName = (name) => {
|
|
1889
|
+
return COUNTRIES.find((country) => country.name.toLowerCase() === name.toLowerCase());
|
|
1890
|
+
};
|
|
1891
|
+
var EU_COUNTRY_CODES = [
|
|
1892
|
+
"AT",
|
|
1893
|
+
// Austria
|
|
1894
|
+
"BE",
|
|
1895
|
+
// Belgium
|
|
1896
|
+
"BG",
|
|
1897
|
+
// Bulgaria
|
|
1898
|
+
"HR",
|
|
1899
|
+
// Croatia
|
|
1900
|
+
"CY",
|
|
1901
|
+
// Cyprus
|
|
1902
|
+
"CZ",
|
|
1903
|
+
// Czech Republic
|
|
1904
|
+
"DK",
|
|
1905
|
+
// Denmark
|
|
1906
|
+
"EE",
|
|
1907
|
+
// Estonia
|
|
1908
|
+
"FI",
|
|
1909
|
+
// Finland
|
|
1910
|
+
"FR",
|
|
1911
|
+
// France
|
|
1912
|
+
"DE",
|
|
1913
|
+
// Germany
|
|
1914
|
+
"GR",
|
|
1915
|
+
// Greece
|
|
1916
|
+
"HU",
|
|
1917
|
+
// Hungary
|
|
1918
|
+
"IE",
|
|
1919
|
+
// Ireland
|
|
1920
|
+
"IT",
|
|
1921
|
+
// Italy
|
|
1922
|
+
"LV",
|
|
1923
|
+
// Latvia
|
|
1924
|
+
"LT",
|
|
1925
|
+
// Lithuania
|
|
1926
|
+
"LU",
|
|
1927
|
+
// Luxembourg
|
|
1928
|
+
"MT",
|
|
1929
|
+
// Malta
|
|
1930
|
+
"NL",
|
|
1931
|
+
// Netherlands
|
|
1932
|
+
"PL",
|
|
1933
|
+
// Poland
|
|
1934
|
+
"PT",
|
|
1935
|
+
// Portugal
|
|
1936
|
+
"RO",
|
|
1937
|
+
// Romania
|
|
1938
|
+
"SK",
|
|
1939
|
+
// Slovakia
|
|
1940
|
+
"SI",
|
|
1941
|
+
// Slovenia
|
|
1942
|
+
"ES",
|
|
1943
|
+
// Spain
|
|
1944
|
+
"SE"
|
|
1945
|
+
// Sweden
|
|
1946
|
+
];
|
|
1947
|
+
var isEUCountry = (countryCode) => {
|
|
1948
|
+
return EU_COUNTRY_CODES.includes(countryCode);
|
|
1949
|
+
};
|
|
1950
|
+
|
|
1951
|
+
// src/components/country-select/CountrySelect.tsx
|
|
1952
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
1953
|
+
var CountrySelect = React26.forwardRef(
|
|
1124
1954
|
({
|
|
1125
|
-
className,
|
|
1126
|
-
variant,
|
|
1127
|
-
size,
|
|
1128
|
-
label,
|
|
1129
|
-
description,
|
|
1130
|
-
error,
|
|
1131
|
-
placeholder,
|
|
1132
|
-
options,
|
|
1133
|
-
id,
|
|
1134
|
-
disabled,
|
|
1135
1955
|
value,
|
|
1136
|
-
defaultValue,
|
|
1137
1956
|
onValueChange,
|
|
1138
|
-
|
|
1139
|
-
|
|
1957
|
+
placeholder = "Select country",
|
|
1958
|
+
disabled = false,
|
|
1959
|
+
className,
|
|
1960
|
+
align = "center",
|
|
1961
|
+
sideOffset = 4
|
|
1140
1962
|
}, ref) => {
|
|
1141
|
-
const
|
|
1142
|
-
const
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
label && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1147
|
-
"label",
|
|
1963
|
+
const [open, setOpen] = React26.useState(false);
|
|
1964
|
+
const selectedCountry = React26.useMemo(() => COUNTRIES.find((c) => c.code === value), [value]);
|
|
1965
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Popover, { open, onOpenChange: setOpen, children: [
|
|
1966
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
1967
|
+
"button",
|
|
1148
1968
|
{
|
|
1149
|
-
|
|
1969
|
+
ref,
|
|
1970
|
+
type: "button",
|
|
1971
|
+
disabled,
|
|
1972
|
+
"aria-expanded": open,
|
|
1150
1973
|
className: cn(
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1974
|
+
// Base layout — consistent with Select trigger
|
|
1975
|
+
"flex w-full items-center justify-between",
|
|
1976
|
+
"rounded-berget-xs border bg-card",
|
|
1977
|
+
"px-4 py-3 text-sm",
|
|
1978
|
+
"transition-colors duration-200",
|
|
1979
|
+
"focus-visible:outline-none focus-visible:ring-0",
|
|
1980
|
+
"focus-visible:ring-offset-0 focus-visible:border-berget-form-focus-border",
|
|
1981
|
+
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
1982
|
+
// Default border & hover matching Select variant "default"
|
|
1983
|
+
"border-berget-border-interactive hover:bg-berget-surface-hover",
|
|
1984
|
+
className
|
|
1154
1985
|
),
|
|
1155
|
-
children: label
|
|
1156
|
-
}
|
|
1157
|
-
),
|
|
1158
|
-
/* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
|
1159
|
-
Select,
|
|
1160
|
-
{
|
|
1161
|
-
value,
|
|
1162
|
-
defaultValue,
|
|
1163
|
-
onValueChange,
|
|
1164
|
-
disabled,
|
|
1165
|
-
name,
|
|
1166
|
-
required,
|
|
1167
1986
|
children: [
|
|
1168
|
-
/* @__PURE__ */ (0,
|
|
1169
|
-
|
|
1987
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex items-center gap-2 min-w-0 flex-1", children: selectedCountry ? /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
|
|
1988
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-xl flex-shrink-0", children: selectedCountry.flag }),
|
|
1989
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "truncate", children: selectedCountry.name }),
|
|
1990
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("span", { className: "text-berget-muted-foreground text-xs flex-shrink-0", children: [
|
|
1991
|
+
"(",
|
|
1992
|
+
selectedCountry.code,
|
|
1993
|
+
")"
|
|
1994
|
+
] })
|
|
1995
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_jsx_runtime28.Fragment, { children: [
|
|
1996
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1997
|
+
Icon2,
|
|
1998
|
+
{
|
|
1999
|
+
icon: import_lucide_react7.Globe,
|
|
2000
|
+
size: 16,
|
|
2001
|
+
className: "flex-shrink-0 text-berget-muted-foreground"
|
|
2002
|
+
}
|
|
2003
|
+
),
|
|
2004
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-berget-muted-foreground truncate", children: placeholder })
|
|
2005
|
+
] }) }),
|
|
2006
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2007
|
+
Icon2,
|
|
1170
2008
|
{
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
"aria-invalid": !!error,
|
|
1174
|
-
"aria-describedby": cn(error && errorId, description && descriptionId),
|
|
2009
|
+
icon: import_lucide_react7.ChevronDown,
|
|
2010
|
+
size: 16,
|
|
1175
2011
|
className: cn(
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
)
|
|
1180
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(SelectValue, { placeholder })
|
|
2012
|
+
"flex-shrink-0 text-berget-muted-foreground",
|
|
2013
|
+
"transition-transform duration-200",
|
|
2014
|
+
open && "rotate-180"
|
|
2015
|
+
)
|
|
1181
2016
|
}
|
|
1182
|
-
)
|
|
1183
|
-
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(SelectContent, { children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(SelectItem, { value: option.value, disabled: option.disabled, children: option.label }, option.value)) })
|
|
2017
|
+
)
|
|
1184
2018
|
]
|
|
1185
2019
|
}
|
|
1186
|
-
),
|
|
1187
|
-
|
|
1188
|
-
|
|
2020
|
+
) }),
|
|
2021
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2022
|
+
PopoverContent,
|
|
2023
|
+
{
|
|
2024
|
+
align,
|
|
2025
|
+
sideOffset,
|
|
2026
|
+
className: "w-[var(--radix-popover-trigger-width)] p-0",
|
|
2027
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(Command, { children: [
|
|
2028
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(CommandInput, { placeholder: "Search country..." }),
|
|
2029
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(CommandList, { children: [
|
|
2030
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(CommandEmpty, { children: "No countries found." }),
|
|
2031
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(CommandGroup, { children: COUNTRIES.map((country) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
2032
|
+
CommandItem,
|
|
2033
|
+
{
|
|
2034
|
+
value: `${country.name} ${country.code}`,
|
|
2035
|
+
onSelect: () => {
|
|
2036
|
+
onValueChange?.(country.code);
|
|
2037
|
+
setOpen(false);
|
|
2038
|
+
},
|
|
2039
|
+
className: cn(
|
|
2040
|
+
"flex items-center gap-3 px-3 py-2.5",
|
|
2041
|
+
"data-[selected='true']:bg-berget-brand-granite-700/40! data-[selected=true]:text-berget-foreground",
|
|
2042
|
+
value === country.code && "bg-berget-brand-granite-800/40"
|
|
2043
|
+
),
|
|
2044
|
+
children: [
|
|
2045
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "text-xl flex-shrink-0", children: country.flag }),
|
|
2046
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "flex-1 min-w-0", children: [
|
|
2047
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "text-sm truncate", children: country.name }),
|
|
2048
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "text-xs text-berget-muted-foreground", children: country.code })
|
|
2049
|
+
] }),
|
|
2050
|
+
value === country.code && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-2 h-2 rounded-full bg-berget-brand-granite-400 flex-shrink-0" })
|
|
2051
|
+
]
|
|
2052
|
+
},
|
|
2053
|
+
country.code
|
|
2054
|
+
)) })
|
|
2055
|
+
] })
|
|
2056
|
+
] })
|
|
2057
|
+
}
|
|
2058
|
+
)
|
|
1189
2059
|
] });
|
|
1190
2060
|
}
|
|
1191
2061
|
);
|
|
1192
|
-
|
|
2062
|
+
CountrySelect.displayName = "CountrySelect";
|
|
1193
2063
|
|
|
1194
2064
|
// src/components/text-area/TextArea.tsx
|
|
1195
|
-
var
|
|
1196
|
-
var
|
|
2065
|
+
var React28 = __toESM(require("react"), 1);
|
|
2066
|
+
var import_class_variance_authority11 = require("class-variance-authority");
|
|
1197
2067
|
|
|
1198
2068
|
// src/primitives/textarea.tsx
|
|
1199
|
-
var
|
|
1200
|
-
var
|
|
1201
|
-
var Textarea =
|
|
2069
|
+
var React27 = __toESM(require("react"), 1);
|
|
2070
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
2071
|
+
var Textarea = React27.forwardRef(
|
|
1202
2072
|
({ className, ...props }, ref) => {
|
|
1203
|
-
return /* @__PURE__ */ (0,
|
|
2073
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
1204
2074
|
"textarea",
|
|
1205
2075
|
{
|
|
1206
2076
|
className: cn(
|
|
@@ -1216,8 +2086,8 @@ var Textarea = React18.forwardRef(
|
|
|
1216
2086
|
Textarea.displayName = "Textarea";
|
|
1217
2087
|
|
|
1218
2088
|
// src/components/text-area/TextArea.tsx
|
|
1219
|
-
var
|
|
1220
|
-
var textAreaVariants = (0,
|
|
2089
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
2090
|
+
var textAreaVariants = (0, import_class_variance_authority11.cva)(
|
|
1221
2091
|
"rounded-berget-xs bg-card px-4 py-3 transition-colors duration-200 focus-visible:border-berget-form-focus-border focus-visible:ring-0 focus-visible:ring-offset-0 resize-y",
|
|
1222
2092
|
{
|
|
1223
2093
|
variants: {
|
|
@@ -1239,7 +2109,7 @@ var textAreaVariants = (0, import_class_variance_authority10.cva)(
|
|
|
1239
2109
|
}
|
|
1240
2110
|
}
|
|
1241
2111
|
);
|
|
1242
|
-
var TextArea =
|
|
2112
|
+
var TextArea = React28.forwardRef(
|
|
1243
2113
|
({
|
|
1244
2114
|
className,
|
|
1245
2115
|
variant,
|
|
@@ -1259,13 +2129,13 @@ var TextArea = React19.forwardRef(
|
|
|
1259
2129
|
actionButton,
|
|
1260
2130
|
...props
|
|
1261
2131
|
}, ref) => {
|
|
1262
|
-
const generatedId =
|
|
2132
|
+
const generatedId = React28.useId();
|
|
1263
2133
|
const textareaId = id || generatedId;
|
|
1264
2134
|
const errorId = `${textareaId}-error`;
|
|
1265
2135
|
const descriptionId = `${textareaId}-description`;
|
|
1266
2136
|
const characterCount = typeof value === "string" ? value.length : 0;
|
|
1267
|
-
return /* @__PURE__ */ (0,
|
|
1268
|
-
label && /* @__PURE__ */ (0,
|
|
2137
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex flex-col gap-2", children: [
|
|
2138
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1269
2139
|
"label",
|
|
1270
2140
|
{
|
|
1271
2141
|
htmlFor: textareaId,
|
|
@@ -1277,9 +2147,9 @@ var TextArea = React19.forwardRef(
|
|
|
1277
2147
|
children: label
|
|
1278
2148
|
}
|
|
1279
2149
|
),
|
|
1280
|
-
/* @__PURE__ */ (0,
|
|
1281
|
-
icon && /* @__PURE__ */ (0,
|
|
1282
|
-
/* @__PURE__ */ (0,
|
|
2150
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "relative", children: [
|
|
2151
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "absolute left-2 top-1/2 -translate-y-1/2", children: icon }),
|
|
2152
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1283
2153
|
Textarea,
|
|
1284
2154
|
{
|
|
1285
2155
|
ref,
|
|
@@ -1304,13 +2174,13 @@ var TextArea = React19.forwardRef(
|
|
|
1304
2174
|
...props
|
|
1305
2175
|
}
|
|
1306
2176
|
),
|
|
1307
|
-
secondaryIcon && /* @__PURE__ */ (0,
|
|
1308
|
-
actionButton && /* @__PURE__ */ (0,
|
|
2177
|
+
secondaryIcon && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "absolute right-12 top-1/2 -translate-y-1/2", children: secondaryIcon }),
|
|
2178
|
+
actionButton && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "absolute right-2 top-1/2 -translate-y-1/2", children: actionButton })
|
|
1309
2179
|
] }),
|
|
1310
|
-
(description || error || showCount && maxLength) && /* @__PURE__ */ (0,
|
|
1311
|
-
description && /* @__PURE__ */ (0,
|
|
1312
|
-
(error || showCount && maxLength) && /* @__PURE__ */ (0,
|
|
1313
|
-
showCount && maxLength && /* @__PURE__ */ (0,
|
|
2180
|
+
(description || error || showCount && maxLength) && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
|
|
2181
|
+
description && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typography, { variant: "xs", color: "muted", id: descriptionId, children: description }),
|
|
2182
|
+
(error || showCount && maxLength) && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { className: "flex items-center gap-2 ml-auto", children: [
|
|
2183
|
+
showCount && maxLength && /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
1314
2184
|
Typography,
|
|
1315
2185
|
{
|
|
1316
2186
|
variant: "xs",
|
|
@@ -1324,7 +2194,7 @@ var TextArea = React19.forwardRef(
|
|
|
1324
2194
|
]
|
|
1325
2195
|
}
|
|
1326
2196
|
),
|
|
1327
|
-
error && /* @__PURE__ */ (0,
|
|
2197
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
1328
2198
|
Typography,
|
|
1329
2199
|
{
|
|
1330
2200
|
variant: "xs",
|
|
@@ -1341,44 +2211,22 @@ var TextArea = React19.forwardRef(
|
|
|
1341
2211
|
TextArea.displayName = "TextArea";
|
|
1342
2212
|
|
|
1343
2213
|
// src/primitives/label.tsx
|
|
1344
|
-
var
|
|
2214
|
+
var React29 = __toESM(require("react"), 1);
|
|
1345
2215
|
var LabelPrimitive = __toESM(require("@radix-ui/react-label"), 1);
|
|
1346
|
-
var
|
|
1347
|
-
var
|
|
1348
|
-
var labelVariants = (0,
|
|
2216
|
+
var import_class_variance_authority12 = require("class-variance-authority");
|
|
2217
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
2218
|
+
var labelVariants = (0, import_class_variance_authority12.cva)(
|
|
1349
2219
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
1350
2220
|
);
|
|
1351
|
-
var Label2 =
|
|
2221
|
+
var Label2 = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
|
|
1352
2222
|
Label2.displayName = LabelPrimitive.Root.displayName;
|
|
1353
2223
|
|
|
1354
2224
|
// src/primitives/field.tsx
|
|
1355
2225
|
var import_react = require("react");
|
|
1356
|
-
var
|
|
1357
|
-
|
|
1358
|
-
// src/primitives/separator.tsx
|
|
1359
|
-
var React21 = __toESM(require("react"), 1);
|
|
1360
|
-
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
|
|
1361
|
-
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
1362
|
-
var Separator2 = React21.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1363
|
-
SeparatorPrimitive.Root,
|
|
1364
|
-
{
|
|
1365
|
-
ref,
|
|
1366
|
-
decorative,
|
|
1367
|
-
orientation,
|
|
1368
|
-
className: cn(
|
|
1369
|
-
"shrink-0 bg-border",
|
|
1370
|
-
orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
|
1371
|
-
className
|
|
1372
|
-
),
|
|
1373
|
-
...props
|
|
1374
|
-
}
|
|
1375
|
-
));
|
|
1376
|
-
Separator2.displayName = SeparatorPrimitive.Root.displayName;
|
|
1377
|
-
|
|
1378
|
-
// src/primitives/field.tsx
|
|
1379
|
-
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
2226
|
+
var import_class_variance_authority13 = require("class-variance-authority");
|
|
2227
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
1380
2228
|
function FieldSet({ className, ...props }) {
|
|
1381
|
-
return /* @__PURE__ */ (0,
|
|
2229
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1382
2230
|
"fieldset",
|
|
1383
2231
|
{
|
|
1384
2232
|
"data-slot": "field-set",
|
|
@@ -1396,7 +2244,7 @@ function FieldLegend({
|
|
|
1396
2244
|
variant = "legend",
|
|
1397
2245
|
...props
|
|
1398
2246
|
}) {
|
|
1399
|
-
return /* @__PURE__ */ (0,
|
|
2247
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1400
2248
|
"legend",
|
|
1401
2249
|
{
|
|
1402
2250
|
"data-slot": "field-legend",
|
|
@@ -1412,7 +2260,7 @@ function FieldLegend({
|
|
|
1412
2260
|
);
|
|
1413
2261
|
}
|
|
1414
2262
|
function FieldGroup({ className, ...props }) {
|
|
1415
|
-
return /* @__PURE__ */ (0,
|
|
2263
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1416
2264
|
"div",
|
|
1417
2265
|
{
|
|
1418
2266
|
"data-slot": "field-group",
|
|
@@ -1424,7 +2272,7 @@ function FieldGroup({ className, ...props }) {
|
|
|
1424
2272
|
}
|
|
1425
2273
|
);
|
|
1426
2274
|
}
|
|
1427
|
-
var fieldVariants = (0,
|
|
2275
|
+
var fieldVariants = (0, import_class_variance_authority13.cva)(
|
|
1428
2276
|
"group/field data-[invalid=true]:text-berget-destructive-foreground flex w-full gap-3",
|
|
1429
2277
|
{
|
|
1430
2278
|
variants: {
|
|
@@ -1452,7 +2300,7 @@ function Field({
|
|
|
1452
2300
|
orientation = "vertical",
|
|
1453
2301
|
...props
|
|
1454
2302
|
}) {
|
|
1455
|
-
return /* @__PURE__ */ (0,
|
|
2303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1456
2304
|
"div",
|
|
1457
2305
|
{
|
|
1458
2306
|
role: "group",
|
|
@@ -1464,7 +2312,7 @@ function Field({
|
|
|
1464
2312
|
);
|
|
1465
2313
|
}
|
|
1466
2314
|
function FieldContent({ className, ...props }) {
|
|
1467
|
-
return /* @__PURE__ */ (0,
|
|
2315
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1468
2316
|
"div",
|
|
1469
2317
|
{
|
|
1470
2318
|
"data-slot": "field-content",
|
|
@@ -1474,7 +2322,7 @@ function FieldContent({ className, ...props }) {
|
|
|
1474
2322
|
);
|
|
1475
2323
|
}
|
|
1476
2324
|
function FieldLabel({ className, ...props }) {
|
|
1477
|
-
return /* @__PURE__ */ (0,
|
|
2325
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1478
2326
|
Label2,
|
|
1479
2327
|
{
|
|
1480
2328
|
"data-slot": "field-label",
|
|
@@ -1489,7 +2337,7 @@ function FieldLabel({ className, ...props }) {
|
|
|
1489
2337
|
);
|
|
1490
2338
|
}
|
|
1491
2339
|
function FieldTitle({ className, ...props }) {
|
|
1492
|
-
return /* @__PURE__ */ (0,
|
|
2340
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1493
2341
|
"div",
|
|
1494
2342
|
{
|
|
1495
2343
|
"data-slot": "field-label",
|
|
@@ -1502,7 +2350,7 @@ function FieldTitle({ className, ...props }) {
|
|
|
1502
2350
|
);
|
|
1503
2351
|
}
|
|
1504
2352
|
function FieldDescription({ className, ...props }) {
|
|
1505
|
-
return /* @__PURE__ */ (0,
|
|
2353
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1506
2354
|
"p",
|
|
1507
2355
|
{
|
|
1508
2356
|
"data-slot": "field-description",
|
|
@@ -1521,7 +2369,7 @@ function FieldSeparator({
|
|
|
1521
2369
|
className,
|
|
1522
2370
|
...props
|
|
1523
2371
|
}) {
|
|
1524
|
-
return /* @__PURE__ */ (0,
|
|
2372
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
|
|
1525
2373
|
"div",
|
|
1526
2374
|
{
|
|
1527
2375
|
"data-slot": "field-separator",
|
|
@@ -1532,8 +2380,8 @@ function FieldSeparator({
|
|
|
1532
2380
|
),
|
|
1533
2381
|
...props,
|
|
1534
2382
|
children: [
|
|
1535
|
-
/* @__PURE__ */ (0,
|
|
1536
|
-
children && /* @__PURE__ */ (0,
|
|
2383
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Separator, { className: "absolute inset-0 top-1/2" }),
|
|
2384
|
+
children && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1537
2385
|
"span",
|
|
1538
2386
|
{
|
|
1539
2387
|
className: "bg-berget-background text-berget-muted-foreground relative mx-auto block w-fit px-2",
|
|
@@ -1561,12 +2409,12 @@ function FieldError({
|
|
|
1561
2409
|
if (errors?.length === 1 && errors[0]?.message) {
|
|
1562
2410
|
return errors[0].message;
|
|
1563
2411
|
}
|
|
1564
|
-
return /* @__PURE__ */ (0,
|
|
2412
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map((error, index) => error?.message && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("li", { children: error.message }, index)) });
|
|
1565
2413
|
}, [children, errors]);
|
|
1566
2414
|
if (!content) {
|
|
1567
2415
|
return null;
|
|
1568
2416
|
}
|
|
1569
|
-
return /* @__PURE__ */ (0,
|
|
2417
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
1570
2418
|
"div",
|
|
1571
2419
|
{
|
|
1572
2420
|
role: "alert",
|
|
@@ -1579,47 +2427,11 @@ function FieldError({
|
|
|
1579
2427
|
}
|
|
1580
2428
|
|
|
1581
2429
|
// src/components/link/Link.tsx
|
|
1582
|
-
var
|
|
1583
|
-
var
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
var
|
|
1587
|
-
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
1588
|
-
var iconStrokeMap = {
|
|
1589
|
-
16: 1.4,
|
|
1590
|
-
24: 1.6,
|
|
1591
|
-
32: 1.8
|
|
1592
|
-
};
|
|
1593
|
-
var Icon2 = React22.forwardRef(
|
|
1594
|
-
({
|
|
1595
|
-
icon: IconComponent,
|
|
1596
|
-
size,
|
|
1597
|
-
className,
|
|
1598
|
-
"aria-label": ariaLabel,
|
|
1599
|
-
"aria-hidden": ariaHidden = true,
|
|
1600
|
-
...props
|
|
1601
|
-
}, ref) => {
|
|
1602
|
-
const strokeWidth = iconStrokeMap[size];
|
|
1603
|
-
const sizeClass = size === 16 ? "w-4 h-4" : size === 24 ? "w-6 h-6" : "w-8 h-8";
|
|
1604
|
-
const ariaAttributes = ariaLabel ? { "aria-label": ariaLabel } : { "aria-hidden": ariaHidden };
|
|
1605
|
-
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1606
|
-
IconComponent,
|
|
1607
|
-
{
|
|
1608
|
-
ref,
|
|
1609
|
-
className: cn(sizeClass, className),
|
|
1610
|
-
strokeWidth,
|
|
1611
|
-
...ariaAttributes,
|
|
1612
|
-
...props
|
|
1613
|
-
}
|
|
1614
|
-
);
|
|
1615
|
-
}
|
|
1616
|
-
);
|
|
1617
|
-
Icon2.displayName = "Icon";
|
|
1618
|
-
|
|
1619
|
-
// src/components/link/Link.tsx
|
|
1620
|
-
var import_lucide_react5 = require("lucide-react");
|
|
1621
|
-
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
1622
|
-
var linkVariants = (0, import_class_variance_authority13.cva)(
|
|
2430
|
+
var React30 = __toESM(require("react"), 1);
|
|
2431
|
+
var import_class_variance_authority14 = require("class-variance-authority");
|
|
2432
|
+
var import_lucide_react8 = require("lucide-react");
|
|
2433
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
2434
|
+
var linkVariants = (0, import_class_variance_authority14.cva)(
|
|
1623
2435
|
"inline-flex cursor-pointer items-center gap-2 transition-all duration-200 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-50",
|
|
1624
2436
|
{
|
|
1625
2437
|
variants: {
|
|
@@ -1643,7 +2455,7 @@ var linkVariants = (0, import_class_variance_authority13.cva)(
|
|
|
1643
2455
|
}
|
|
1644
2456
|
}
|
|
1645
2457
|
);
|
|
1646
|
-
var Link =
|
|
2458
|
+
var Link = React30.forwardRef(
|
|
1647
2459
|
({
|
|
1648
2460
|
className,
|
|
1649
2461
|
variant,
|
|
@@ -1656,7 +2468,7 @@ var Link = React23.forwardRef(
|
|
|
1656
2468
|
...props
|
|
1657
2469
|
}, ref) => {
|
|
1658
2470
|
const isExternal = external || typeof props.href === "string" && (props.href.startsWith("http://") || props.href.startsWith("https://") || props.href.startsWith("mailto:") || props.href.startsWith("tel:"));
|
|
1659
|
-
return /* @__PURE__ */ (0,
|
|
2471
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
1660
2472
|
"a",
|
|
1661
2473
|
{
|
|
1662
2474
|
ref,
|
|
@@ -1672,8 +2484,8 @@ var Link = React23.forwardRef(
|
|
|
1672
2484
|
},
|
|
1673
2485
|
children: [
|
|
1674
2486
|
children,
|
|
1675
|
-
icon && /* @__PURE__ */ (0,
|
|
1676
|
-
showExternalIcon && isExternal && !disabled && /* @__PURE__ */ (0,
|
|
2487
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "inline-flex items-center", children: icon }),
|
|
2488
|
+
showExternalIcon && isExternal && !disabled && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "inline-flex items-center ml-1 opacity-60", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Icon2, { icon: import_lucide_react8.ExternalLink, size: 16 }) })
|
|
1677
2489
|
]
|
|
1678
2490
|
}
|
|
1679
2491
|
);
|
|
@@ -1682,11 +2494,11 @@ var Link = React23.forwardRef(
|
|
|
1682
2494
|
Link.displayName = "Link";
|
|
1683
2495
|
|
|
1684
2496
|
// src/components/container/Container.tsx
|
|
1685
|
-
var
|
|
1686
|
-
var
|
|
1687
|
-
var
|
|
1688
|
-
var
|
|
1689
|
-
var containerVariants = (0,
|
|
2497
|
+
var React31 = __toESM(require("react"), 1);
|
|
2498
|
+
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
2499
|
+
var import_class_variance_authority15 = require("class-variance-authority");
|
|
2500
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2501
|
+
var containerVariants = (0, import_class_variance_authority15.cva)("w-full mx-auto", {
|
|
1690
2502
|
variants: {
|
|
1691
2503
|
size: {
|
|
1692
2504
|
sm: "max-w-3xl",
|
|
@@ -1707,10 +2519,10 @@ var containerVariants = (0, import_class_variance_authority14.cva)("w-full mx-au
|
|
|
1707
2519
|
padding: "md"
|
|
1708
2520
|
}
|
|
1709
2521
|
});
|
|
1710
|
-
var Container =
|
|
2522
|
+
var Container = React31.forwardRef(
|
|
1711
2523
|
({ className, size, padding, asChild = false, children, ...props }, ref) => {
|
|
1712
|
-
const Component = asChild ?
|
|
1713
|
-
return /* @__PURE__ */ (0,
|
|
2524
|
+
const Component = asChild ? import_react_slot3.Slot : "div";
|
|
2525
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
1714
2526
|
Component,
|
|
1715
2527
|
{
|
|
1716
2528
|
ref,
|
|
@@ -1724,11 +2536,11 @@ var Container = React24.forwardRef(
|
|
|
1724
2536
|
Container.displayName = "Container";
|
|
1725
2537
|
|
|
1726
2538
|
// src/components/grid/Grid.tsx
|
|
1727
|
-
var
|
|
1728
|
-
var
|
|
1729
|
-
var
|
|
1730
|
-
var
|
|
1731
|
-
var gridVariants = (0,
|
|
2539
|
+
var React32 = __toESM(require("react"), 1);
|
|
2540
|
+
var import_class_variance_authority16 = require("class-variance-authority");
|
|
2541
|
+
var import_react_slot4 = require("@radix-ui/react-slot");
|
|
2542
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
2543
|
+
var gridVariants = (0, import_class_variance_authority16.cva)("grid", {
|
|
1732
2544
|
variants: {
|
|
1733
2545
|
align: {
|
|
1734
2546
|
start: "items-start",
|
|
@@ -1750,10 +2562,10 @@ var gridVariants = (0, import_class_variance_authority15.cva)("grid", {
|
|
|
1750
2562
|
justify: "start"
|
|
1751
2563
|
}
|
|
1752
2564
|
});
|
|
1753
|
-
var Grid =
|
|
2565
|
+
var Grid = React32.forwardRef(
|
|
1754
2566
|
({ className, align, justify, cols, rows, gap, gapX, gapY, asChild = false, children, ...props }, ref) => {
|
|
1755
|
-
const Component = asChild ?
|
|
1756
|
-
return /* @__PURE__ */ (0,
|
|
2567
|
+
const Component = asChild ? import_react_slot4.Slot : "div";
|
|
2568
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
1757
2569
|
Component,
|
|
1758
2570
|
{
|
|
1759
2571
|
ref,
|
|
@@ -1775,11 +2587,11 @@ var Grid = React25.forwardRef(
|
|
|
1775
2587
|
Grid.displayName = "Grid";
|
|
1776
2588
|
|
|
1777
2589
|
// src/components/box/Box.tsx
|
|
1778
|
-
var
|
|
1779
|
-
var
|
|
1780
|
-
var
|
|
1781
|
-
var
|
|
1782
|
-
var boxVariants = (0,
|
|
2590
|
+
var React33 = __toESM(require("react"), 1);
|
|
2591
|
+
var import_class_variance_authority17 = require("class-variance-authority");
|
|
2592
|
+
var import_react_slot5 = require("@radix-ui/react-slot");
|
|
2593
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2594
|
+
var boxVariants = (0, import_class_variance_authority17.cva)("flex", {
|
|
1783
2595
|
variants: {
|
|
1784
2596
|
direction: {
|
|
1785
2597
|
row: "flex-row",
|
|
@@ -1815,10 +2627,10 @@ var boxVariants = (0, import_class_variance_authority16.cva)("flex", {
|
|
|
1815
2627
|
wrap: "nowrap"
|
|
1816
2628
|
}
|
|
1817
2629
|
});
|
|
1818
|
-
var Box =
|
|
2630
|
+
var Box = React33.forwardRef(
|
|
1819
2631
|
({ className, direction, align, justify, wrap, gap, asChild = false, children, ...props }, ref) => {
|
|
1820
|
-
const Component = asChild ?
|
|
1821
|
-
return /* @__PURE__ */ (0,
|
|
2632
|
+
const Component = asChild ? import_react_slot5.Slot : "div";
|
|
2633
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
1822
2634
|
Component,
|
|
1823
2635
|
{
|
|
1824
2636
|
ref,
|
|
@@ -1836,16 +2648,16 @@ var Box = React26.forwardRef(
|
|
|
1836
2648
|
Box.displayName = "Box";
|
|
1837
2649
|
|
|
1838
2650
|
// src/components/berget-logo/BergetLogo.tsx
|
|
1839
|
-
var
|
|
1840
|
-
var
|
|
1841
|
-
var BergetLogo =
|
|
2651
|
+
var React34 = __toESM(require("react"), 1);
|
|
2652
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
2653
|
+
var BergetLogo = React34.forwardRef(
|
|
1842
2654
|
({ variant = "logotype", color = "auto", size = 48, className, ...props }, ref) => {
|
|
1843
2655
|
const fillColor = color === "auto" ? "var(--berget-logo-light)" : color === "white" ? "var(--berget-logo-light)" : "var(--berget-logo-dark)";
|
|
1844
2656
|
if (variant === "symbol") {
|
|
1845
2657
|
const aspectRatio2 = 463 / 419;
|
|
1846
2658
|
const width2 = size * aspectRatio2;
|
|
1847
2659
|
const height2 = size;
|
|
1848
|
-
return /* @__PURE__ */ (0,
|
|
2660
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1849
2661
|
"svg",
|
|
1850
2662
|
{
|
|
1851
2663
|
ref,
|
|
@@ -1858,7 +2670,7 @@ var BergetLogo = React27.forwardRef(
|
|
|
1858
2670
|
"aria-label": "Berget symbol",
|
|
1859
2671
|
className: cn("inline-block", className),
|
|
1860
2672
|
...props,
|
|
1861
|
-
children: /* @__PURE__ */ (0,
|
|
2673
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1862
2674
|
"path",
|
|
1863
2675
|
{
|
|
1864
2676
|
d: "M208.739 17L255.261 17L446 403L398 403L313.5 255L261.5 176L233.163 96.1677L237.815 98.6522H226.185L230.837 96.1677L113 331L64.5 403L18 403L208.739 17Z",
|
|
@@ -1871,7 +2683,7 @@ var BergetLogo = React27.forwardRef(
|
|
|
1871
2683
|
const aspectRatio = 793.63 / 204.37;
|
|
1872
2684
|
const width = size * aspectRatio;
|
|
1873
2685
|
const height = size;
|
|
1874
|
-
return /* @__PURE__ */ (0,
|
|
2686
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
|
|
1875
2687
|
"svg",
|
|
1876
2688
|
{
|
|
1877
2689
|
ref,
|
|
@@ -1885,59 +2697,59 @@ var BergetLogo = React27.forwardRef(
|
|
|
1885
2697
|
className: cn("inline-block", className),
|
|
1886
2698
|
...props,
|
|
1887
2699
|
children: [
|
|
1888
|
-
/* @__PURE__ */ (0,
|
|
1889
|
-
/* @__PURE__ */ (0,
|
|
2700
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsxs)("g", { style: { fill: fillColor }, children: [
|
|
2701
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1890
2702
|
"path",
|
|
1891
2703
|
{
|
|
1892
2704
|
className: "berget-logotype-fill",
|
|
1893
2705
|
d: "M268.78,172.54v-96.04h37.74c10.39,0,18.26,2.33,23.6,7,5.33,4.67,8.01,10.52,8.01,17.56,0,6.13-1.72,11-5.15,14.61-3.43,3.61-7.58,6.06-12.44,7.34,3.81.73,7.22,2.2,10.22,4.39,3.01,2.2,5.36,4.94,7.08,8.23,1.72,3.29,2.58,6.86,2.58,10.7,0,4.94-1.27,9.4-3.79,13.38-2.53,3.98-6.22,7.11-11.08,9.4-4.86,2.29-10.82,3.43-17.87,3.43h-38.89ZM283.93,117.66h20.74c5.81,0,10.24-1.3,13.29-3.91,3.05-2.61,4.58-6.19,4.58-10.77s-1.51-8.05-4.51-10.7c-3-2.65-7.55-3.98-13.65-3.98h-20.45v29.36ZM283.93,160.61h21.74c6.1,0,10.84-1.37,14.22-4.11,3.38-2.75,5.08-6.59,5.08-11.53s-1.76-8.85-5.29-11.73-8.29-4.32-14.3-4.32h-21.45v31.69Z"
|
|
1894
2706
|
}
|
|
1895
2707
|
),
|
|
1896
|
-
/* @__PURE__ */ (0,
|
|
2708
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1897
2709
|
"path",
|
|
1898
2710
|
{
|
|
1899
2711
|
className: "berget-logotype-fill",
|
|
1900
2712
|
d: "M382.45,174.19c-6.96,0-13.13-1.49-18.52-4.46-5.39-2.97-9.6-7.11-12.65-12.42-3.05-5.3-4.57-11.48-4.57-18.52s1.5-13.4,4.5-18.79,7.19-9.61,12.58-12.62c5.39-3.02,11.65-4.53,18.81-4.53s13,1.48,18.15,4.46c5.15,2.97,9.16,6.93,12.01,11.87,2.86,4.94,4.29,10.38,4.29,16.33,0,.92-.02,1.9-.07,2.95-.05,1.05-.12,2.22-.22,3.5h-55.19c.48,6.59,2.75,11.59,6.79,15.02,4.05,3.43,8.75,5.14,14.09,5.14,4.29,0,7.89-.93,10.79-2.81,2.91-1.88,5.08-4.41,6.51-7.61h15.16c-1.91,6.4-5.7,11.75-11.37,16.05-5.68,4.3-12.71,6.45-21.09,6.45ZM382.45,114.78c-5.05,0-9.54,1.44-13.44,4.32-3.91,2.88-6.29,7.2-7.15,12.97h40.04c-.29-5.3-2.24-9.51-5.87-12.62-3.62-3.11-8.15-4.67-13.58-4.67Z"
|
|
1901
2713
|
}
|
|
1902
2714
|
),
|
|
1903
|
-
/* @__PURE__ */ (0,
|
|
2715
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1904
2716
|
"path",
|
|
1905
2717
|
{
|
|
1906
2718
|
className: "berget-logotype-fill",
|
|
1907
2719
|
d: "M425.62,172.54v-68.05h13.59l1.29,12.9c2.47-4.48,5.93-8.03,10.37-10.63,4.43-2.61,9.79-3.91,16.08-3.91v15.23h-4.15c-4.19,0-7.93.67-11.22,1.99-3.29,1.33-5.91,3.57-7.86,6.72-1.96,3.16-2.93,7.53-2.93,13.1v32.65h-15.16Z"
|
|
1908
2720
|
}
|
|
1909
2721
|
),
|
|
1910
|
-
/* @__PURE__ */ (0,
|
|
2722
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1911
2723
|
"path",
|
|
1912
2724
|
{
|
|
1913
2725
|
className: "berget-logotype-fill",
|
|
1914
2726
|
d: "M500.25,151.69c-3.72,0-7.14-.41-10.29-1.24l-6.15,5.76c1.05.64,2.34,1.19,3.86,1.65,1.52.46,3.66.87,6.43,1.23,2.76.37,6.53.73,11.29,1.1,9.43.82,16.25,3,20.44,6.52,4.2,3.52,6.29,8.21,6.29,14.06,0,4.02-1.12,7.84-3.35,11.45-2.24,3.61-5.72,6.54-10.44,8.78s-10.74,3.36-18.09,3.36c-9.91,0-17.94-1.8-24.09-5.42-6.15-3.62-9.22-9.08-9.22-16.4,0-2.84.78-5.65,2.35-8.44,1.57-2.79,4.08-5.42,7.51-7.89-2-.83-3.74-1.72-5.22-2.68-1.48-.96-2.79-1.94-3.94-2.95v-3.29l12.3-12.07c-5.53-4.57-8.29-10.56-8.29-17.97,0-4.48,1.12-8.58,3.36-12.28,2.24-3.7,5.5-6.65,9.79-8.85,4.29-2.2,9.43-3.29,15.44-3.29,4.01,0,7.72.55,11.15,1.64h26.45v9.6l-12.58.69c2.28,3.75,3.43,7.91,3.43,12.49s-1.13,8.69-3.36,12.35c-2.24,3.66-5.48,6.59-9.72,8.78-4.25,2.2-9.37,3.29-15.37,3.29ZM481.24,181.19c0,3.93,1.81,6.88,5.44,8.85,3.62,1.97,8.15,2.95,13.58,2.95s9.48-1.07,12.72-3.22c3.24-2.15,4.86-5,4.86-8.57,0-2.65-1.09-4.92-3.29-6.79-2.19-1.87-6.34-3.04-12.44-3.5-4.57-.27-8.63-.68-12.15-1.23-3.34,1.74-5.63,3.61-6.86,5.63-1.25,2.01-1.86,3.98-1.86,5.9ZM500.25,140.3c4.38,0,7.93-1.12,10.66-3.36,2.71-2.24,4.07-5.42,4.07-9.53s-1.36-7.41-4.07-9.6c-2.72-2.2-6.27-3.29-10.66-3.29s-8.08,1.1-10.79,3.29c-2.71,2.2-4.08,5.4-4.08,9.6s1.36,7.3,4.08,9.53c2.71,2.24,6.31,3.36,10.79,3.36Z"
|
|
1915
2727
|
}
|
|
1916
2728
|
),
|
|
1917
|
-
/* @__PURE__ */ (0,
|
|
2729
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1918
2730
|
"path",
|
|
1919
2731
|
{
|
|
1920
2732
|
className: "berget-logotype-fill",
|
|
1921
2733
|
d: "M574.61,174.19c-6.96,0-13.13-1.49-18.52-4.46-5.39-2.97-9.6-7.11-12.65-12.42-3.05-5.3-4.57-11.48-4.57-18.52s1.5-13.4,4.5-18.79c3-5.4,7.19-9.61,12.58-12.62c5.39-3.02,11.65-4.53,18.81-4.53s13,1.48,18.15,4.46c5.15,2.97,9.16,6.93,12.01,11.87,2.86,4.94,4.29,10.38,4.29,16.33,0,.92-.02,1.9-.07,2.95-.05,1.05-.12,2.22-.22,3.5h-55.19c.48,6.59,2.75,11.59,6.79,15.02,4.05,3.43,8.75,5.14,14.09,5.14,4.29,0,7.89-.93,10.79-2.81s5.08-4.41,6.51-7.61h15.16c-1.91,6.4-5.7,11.75-11.37,16.05-5.68,4.3-12.71,6.45-21.09,6.45ZM574.61,114.78c-5.05,0-9.54,1.44-13.44,4.32-3.91,2.88-6.29,7.2-7.15,12.97h40.04c-.29-5.3-2.24-9.51-5.87-12.62-3.62-3.11-8.15-4.67-13.58-4.67Z"
|
|
1922
2734
|
}
|
|
1923
2735
|
),
|
|
1924
|
-
/* @__PURE__ */ (0,
|
|
2736
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1925
2737
|
"path",
|
|
1926
2738
|
{
|
|
1927
2739
|
className: "berget-logotype-fill",
|
|
1928
2740
|
d: "M646.23,172.54c-6.96,0-12.49-1.62-16.59-4.87-4.1-3.25-6.15-9.03-6.15-17.36v-33.61h-12.16v-12.21h12.16l1.86-17.29h13.29v17.29h20.02v12.21h-20.02v33.61c0,3.75.84,6.33,2.51,7.75,1.67,1.42,4.55,2.13,8.65,2.13h8.14v12.35h-11.72Z"
|
|
1929
2741
|
}
|
|
1930
2742
|
),
|
|
1931
|
-
/* @__PURE__ */ (0,
|
|
2743
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1932
2744
|
"path",
|
|
1933
2745
|
{
|
|
1934
2746
|
className: "berget-logotype-fill",
|
|
1935
2747
|
d: "M684.4,172.54l36.89-96.04h16.59l36.6,96.04h-16.01l-8.58-23.46h-40.88l-8.58,23.46h-16.01ZM713.28,137.56h32.31l-16.16-43.77-16.16,43.77Z"
|
|
1936
2748
|
}
|
|
1937
2749
|
),
|
|
1938
|
-
/* @__PURE__ */ (0,
|
|
2750
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)("path", { className: "berget-logotype-fill", d: "M778.48,172.54v-96.04h15.15v96.04h-15.15Z" })
|
|
1939
2751
|
] }),
|
|
1940
|
-
/* @__PURE__ */ (0,
|
|
2752
|
+
/* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
1941
2753
|
"path",
|
|
1942
2754
|
{
|
|
1943
2755
|
style: { fill: fillColor },
|
|
@@ -1952,13 +2764,13 @@ var BergetLogo = React27.forwardRef(
|
|
|
1952
2764
|
BergetLogo.displayName = "BergetLogo";
|
|
1953
2765
|
|
|
1954
2766
|
// src/components/language-select/LanguageSelect.tsx
|
|
1955
|
-
var
|
|
2767
|
+
var React35 = __toESM(require("react"), 1);
|
|
1956
2768
|
var SelectPrimitive2 = __toESM(require("@radix-ui/react-select"), 1);
|
|
1957
|
-
var
|
|
1958
|
-
var
|
|
1959
|
-
var LanguageSelect =
|
|
1960
|
-
return /* @__PURE__ */ (0,
|
|
1961
|
-
/* @__PURE__ */ (0,
|
|
2769
|
+
var import_lucide_react9 = require("lucide-react");
|
|
2770
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
2771
|
+
var LanguageSelect = React35.forwardRef(({ className, options, value, onValueChange }, ref) => {
|
|
2772
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(SelectPrimitive2.Root, { value, onValueChange, children: [
|
|
2773
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
1962
2774
|
SelectPrimitive2.Trigger,
|
|
1963
2775
|
{
|
|
1964
2776
|
ref,
|
|
@@ -1980,10 +2792,10 @@ var LanguageSelect = React28.forwardRef(({ className, options, value, onValueCha
|
|
|
1980
2792
|
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
1981
2793
|
className
|
|
1982
2794
|
),
|
|
1983
|
-
children: /* @__PURE__ */ (0,
|
|
2795
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Icon2, { icon: import_lucide_react9.Globe, size: 16 })
|
|
1984
2796
|
}
|
|
1985
2797
|
),
|
|
1986
|
-
/* @__PURE__ */ (0,
|
|
2798
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SelectPrimitive2.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
1987
2799
|
SelectPrimitive2.Content,
|
|
1988
2800
|
{
|
|
1989
2801
|
className: cn(
|
|
@@ -2011,7 +2823,7 @@ var LanguageSelect = React28.forwardRef(({ className, options, value, onValueCha
|
|
|
2011
2823
|
"origin-[--radix-select-content-transform-origin]"
|
|
2012
2824
|
),
|
|
2013
2825
|
position: "popper",
|
|
2014
|
-
children: /* @__PURE__ */ (0,
|
|
2826
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SelectPrimitive2.Viewport, { className: "p-1", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2015
2827
|
SelectPrimitive2.Item,
|
|
2016
2828
|
{
|
|
2017
2829
|
value: option.value,
|
|
@@ -2028,7 +2840,7 @@ var LanguageSelect = React28.forwardRef(({ className, options, value, onValueCha
|
|
|
2028
2840
|
// Disabled state
|
|
2029
2841
|
"data-[disabled]:pointer-events-none data-[disabled]:opacity-50"
|
|
2030
2842
|
),
|
|
2031
|
-
children: /* @__PURE__ */ (0,
|
|
2843
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(SelectPrimitive2.ItemText, { children: option.label })
|
|
2032
2844
|
},
|
|
2033
2845
|
option.value
|
|
2034
2846
|
)) })
|
|
@@ -2039,13 +2851,13 @@ var LanguageSelect = React28.forwardRef(({ className, options, value, onValueCha
|
|
|
2039
2851
|
LanguageSelect.displayName = "LanguageSelect";
|
|
2040
2852
|
|
|
2041
2853
|
// src/components/list/List.tsx
|
|
2042
|
-
var
|
|
2854
|
+
var React37 = __toESM(require("react"), 1);
|
|
2043
2855
|
|
|
2044
2856
|
// src/components/divider/Divider.tsx
|
|
2045
|
-
var
|
|
2046
|
-
var
|
|
2047
|
-
var
|
|
2048
|
-
var dividerVariants = (0,
|
|
2857
|
+
var React36 = __toESM(require("react"), 1);
|
|
2858
|
+
var import_class_variance_authority18 = require("class-variance-authority");
|
|
2859
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
2860
|
+
var dividerVariants = (0, import_class_variance_authority18.cva)("", {
|
|
2049
2861
|
variants: {
|
|
2050
2862
|
variant: {
|
|
2051
2863
|
default: "bg-berget-separator",
|
|
@@ -2065,7 +2877,7 @@ var dividerVariants = (0, import_class_variance_authority17.cva)("", {
|
|
|
2065
2877
|
size: "thin"
|
|
2066
2878
|
}
|
|
2067
2879
|
});
|
|
2068
|
-
var Divider =
|
|
2880
|
+
var Divider = React36.forwardRef(
|
|
2069
2881
|
({
|
|
2070
2882
|
className,
|
|
2071
2883
|
orientation = "horizontal",
|
|
@@ -2076,17 +2888,17 @@ var Divider = React29.forwardRef(
|
|
|
2076
2888
|
...props
|
|
2077
2889
|
}, ref) => {
|
|
2078
2890
|
if (label) {
|
|
2079
|
-
return /* @__PURE__ */ (0,
|
|
2080
|
-
labelPosition !== "right" && /* @__PURE__ */ (0,
|
|
2081
|
-
|
|
2891
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { ref, className: cn("flex items-center w-full", className), ...props, children: [
|
|
2892
|
+
labelPosition !== "right" && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2893
|
+
Separator,
|
|
2082
2894
|
{
|
|
2083
2895
|
orientation: "horizontal",
|
|
2084
2896
|
className: cn(dividerVariants({ variant, size }), "flex-1")
|
|
2085
2897
|
}
|
|
2086
2898
|
),
|
|
2087
|
-
/* @__PURE__ */ (0,
|
|
2088
|
-
labelPosition !== "left" && /* @__PURE__ */ (0,
|
|
2089
|
-
|
|
2899
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Typography, { variant: "small", color: "muted", className: "px-4 whitespace-nowrap", children: label }),
|
|
2900
|
+
labelPosition !== "left" && /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2901
|
+
Separator,
|
|
2090
2902
|
{
|
|
2091
2903
|
orientation: "horizontal",
|
|
2092
2904
|
className: cn(dividerVariants({ variant, size }), "flex-1")
|
|
@@ -2094,8 +2906,8 @@ var Divider = React29.forwardRef(
|
|
|
2094
2906
|
)
|
|
2095
2907
|
] });
|
|
2096
2908
|
}
|
|
2097
|
-
return /* @__PURE__ */ (0,
|
|
2098
|
-
|
|
2909
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2910
|
+
Separator,
|
|
2099
2911
|
{
|
|
2100
2912
|
ref,
|
|
2101
2913
|
orientation,
|
|
@@ -2111,20 +2923,20 @@ var Divider = React29.forwardRef(
|
|
|
2111
2923
|
Divider.displayName = "Divider";
|
|
2112
2924
|
|
|
2113
2925
|
// src/components/list/List.tsx
|
|
2114
|
-
var
|
|
2115
|
-
var
|
|
2116
|
-
var List =
|
|
2926
|
+
var import_lucide_react10 = require("lucide-react");
|
|
2927
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
2928
|
+
var List = React37.forwardRef(
|
|
2117
2929
|
({ className, children, ...props }, ref) => {
|
|
2118
|
-
const childrenArray =
|
|
2119
|
-
return /* @__PURE__ */ (0,
|
|
2930
|
+
const childrenArray = React37.Children.toArray(children);
|
|
2931
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { ref, className: cn("flex flex-col", className), ...props, children: childrenArray.map((child, index) => /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(React37.Fragment, { children: [
|
|
2120
2932
|
child,
|
|
2121
|
-
index < childrenArray.length - 1 && /* @__PURE__ */ (0,
|
|
2933
|
+
index < childrenArray.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Divider, { variant: "subtle" })
|
|
2122
2934
|
] }, index)) });
|
|
2123
2935
|
}
|
|
2124
2936
|
);
|
|
2125
2937
|
List.displayName = "List";
|
|
2126
|
-
var ListItem =
|
|
2127
|
-
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */ (0,
|
|
2938
|
+
var ListItem = React37.forwardRef(
|
|
2939
|
+
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
|
|
2128
2940
|
"div",
|
|
2129
2941
|
{
|
|
2130
2942
|
ref,
|
|
@@ -2135,15 +2947,15 @@ var ListItem = React30.forwardRef(
|
|
|
2135
2947
|
),
|
|
2136
2948
|
...props,
|
|
2137
2949
|
children: [
|
|
2138
|
-
icon && /* @__PURE__ */ (0,
|
|
2139
|
-
/* @__PURE__ */ (0,
|
|
2950
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex-shrink-0 flex items-center justify-center", children: icon }),
|
|
2951
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex-1 min-w-0", children })
|
|
2140
2952
|
]
|
|
2141
2953
|
}
|
|
2142
2954
|
)
|
|
2143
2955
|
);
|
|
2144
2956
|
ListItem.displayName = "ListItem";
|
|
2145
|
-
var ListHeader =
|
|
2146
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */ (0,
|
|
2957
|
+
var ListHeader = React37.forwardRef(
|
|
2958
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
2147
2959
|
"div",
|
|
2148
2960
|
{
|
|
2149
2961
|
ref,
|
|
@@ -2154,21 +2966,21 @@ var ListHeader = React30.forwardRef(
|
|
|
2154
2966
|
)
|
|
2155
2967
|
);
|
|
2156
2968
|
ListHeader.displayName = "ListHeader";
|
|
2157
|
-
var FeatureList =
|
|
2969
|
+
var FeatureList = React37.forwardRef(
|
|
2158
2970
|
({ items, variant = "bullet", className, ...props }, ref) => {
|
|
2159
|
-
return /* @__PURE__ */ (0,
|
|
2160
|
-
variant === "bullet" ? /* @__PURE__ */ (0,
|
|
2161
|
-
/* @__PURE__ */ (0,
|
|
2971
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("ul", { ref, className: cn("flex flex-col gap-fluid-md", className), ...props, children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("li", { className: "flex items-start gap-fluid-md", children: [
|
|
2972
|
+
variant === "bullet" ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "w-1.5 h-1.5 rounded-full bg-berget-icon-muted flex-shrink-0 mt-2" }) : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "flex-shrink-0 mt-0.5", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Icon2, { icon: import_lucide_react10.Check, size: 24, className: "text-berget-logo-light" }) }),
|
|
2973
|
+
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Typography, { variant: "body", color: "muted", children: item })
|
|
2162
2974
|
] }, index)) });
|
|
2163
2975
|
}
|
|
2164
2976
|
);
|
|
2165
2977
|
FeatureList.displayName = "FeatureList";
|
|
2166
2978
|
|
|
2167
2979
|
// src/components/hero-block/HeroBlock.tsx
|
|
2168
|
-
var
|
|
2169
|
-
var
|
|
2170
|
-
var
|
|
2171
|
-
var heroBlockVariants = (0,
|
|
2980
|
+
var React38 = __toESM(require("react"), 1);
|
|
2981
|
+
var import_class_variance_authority19 = require("class-variance-authority");
|
|
2982
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
2983
|
+
var heroBlockVariants = (0, import_class_variance_authority19.cva)(
|
|
2172
2984
|
"relative overflow-hidden min-h-[40dvh] flex items-center py-fluid-2xl",
|
|
2173
2985
|
{
|
|
2174
2986
|
variants: {
|
|
@@ -2188,7 +3000,7 @@ var heroBlockVariants = (0, import_class_variance_authority18.cva)(
|
|
|
2188
3000
|
}
|
|
2189
3001
|
}
|
|
2190
3002
|
);
|
|
2191
|
-
var HeroBlock =
|
|
3003
|
+
var HeroBlock = React38.forwardRef(
|
|
2192
3004
|
({
|
|
2193
3005
|
className,
|
|
2194
3006
|
variant,
|
|
@@ -2200,26 +3012,26 @@ var HeroBlock = React31.forwardRef(
|
|
|
2200
3012
|
actions,
|
|
2201
3013
|
...props
|
|
2202
3014
|
}, ref) => {
|
|
2203
|
-
return /* @__PURE__ */ (0,
|
|
3015
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
2204
3016
|
"div",
|
|
2205
3017
|
{
|
|
2206
3018
|
ref,
|
|
2207
3019
|
className: cn(heroBlockVariants({ variant, withPattern }), className),
|
|
2208
3020
|
...props,
|
|
2209
|
-
children: /* @__PURE__ */ (0,
|
|
2210
|
-
tagline && /* @__PURE__ */ (0,
|
|
3021
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("div", { className: "mx-auto text-center max-w-4xl", children: [
|
|
3022
|
+
tagline && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
2211
3023
|
Badge,
|
|
2212
3024
|
{
|
|
2213
3025
|
variant: "default",
|
|
2214
|
-
icon: TaglineIcon ? /* @__PURE__ */ (0,
|
|
3026
|
+
icon: TaglineIcon ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Icon2, { icon: TaglineIcon, size: 16 }) : void 0,
|
|
2215
3027
|
iconGap: 2,
|
|
2216
3028
|
className: "mb-fluid-md",
|
|
2217
3029
|
children: tagline
|
|
2218
3030
|
}
|
|
2219
3031
|
),
|
|
2220
|
-
/* @__PURE__ */ (0,
|
|
2221
|
-
/* @__PURE__ */ (0,
|
|
2222
|
-
actions && /* @__PURE__ */ (0,
|
|
3032
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Typography, { variant: "h1", className: "mb-fluid-md", children: title }),
|
|
3033
|
+
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Typography, { variant: "h3", color: "muted", className: "mb-fluid-lg", children: description }),
|
|
3034
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { className: "flex flex-wrap gap-fluid-md justify-center", children: actions })
|
|
2223
3035
|
] }) })
|
|
2224
3036
|
}
|
|
2225
3037
|
);
|
|
@@ -2229,7 +3041,7 @@ HeroBlock.displayName = "HeroBlock";
|
|
|
2229
3041
|
|
|
2230
3042
|
// src/components/code-block/CodeBlock.tsx
|
|
2231
3043
|
var import_react2 = require("react");
|
|
2232
|
-
var
|
|
3044
|
+
var import_lucide_react11 = require("lucide-react");
|
|
2233
3045
|
|
|
2234
3046
|
// src/lib/shiki.ts
|
|
2235
3047
|
var import_core2 = require("shiki/core");
|
|
@@ -2270,7 +3082,7 @@ function getHighlighter() {
|
|
|
2270
3082
|
}
|
|
2271
3083
|
|
|
2272
3084
|
// src/components/code-block/CodeBlock.tsx
|
|
2273
|
-
var
|
|
3085
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
2274
3086
|
function CodeBlock({ code, language = "text", title, className }) {
|
|
2275
3087
|
const [html, setHtml] = (0, import_react2.useState)(null);
|
|
2276
3088
|
const [copied, setCopied] = (0, import_react2.useState)(false);
|
|
@@ -2286,16 +3098,16 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2286
3098
|
setCopied(true);
|
|
2287
3099
|
setTimeout(() => setCopied(false), 2e3);
|
|
2288
3100
|
}, [code]);
|
|
2289
|
-
const copyButton = /* @__PURE__ */ (0,
|
|
3101
|
+
const copyButton = /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2290
3102
|
"button",
|
|
2291
3103
|
{
|
|
2292
3104
|
onClick: handleCopy,
|
|
2293
3105
|
className: "flex items-center justify-center w-6 h-6 text-berget-muted-foreground hover:text-berget-foreground transition-colors",
|
|
2294
3106
|
"aria-label": "Copy code",
|
|
2295
|
-
children: copied ? /* @__PURE__ */ (0,
|
|
3107
|
+
children: copied ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react11.Check, { className: "w-3.5 h-3.5" }) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react11.Copy, { className: "w-3.5 h-3.5" })
|
|
2296
3108
|
}
|
|
2297
3109
|
);
|
|
2298
|
-
return /* @__PURE__ */ (0,
|
|
3110
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
|
|
2299
3111
|
"div",
|
|
2300
3112
|
{
|
|
2301
3113
|
className: cn(
|
|
@@ -2303,25 +3115,25 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2303
3115
|
className
|
|
2304
3116
|
),
|
|
2305
3117
|
children: [
|
|
2306
|
-
title && /* @__PURE__ */ (0,
|
|
2307
|
-
/* @__PURE__ */ (0,
|
|
2308
|
-
html ? /* @__PURE__ */ (0,
|
|
3118
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "!h-10 flex items-center !px-4 !text-xs !leading-normal border-b border-berget-border bg-berget-codeblock-header-bg", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-berget-muted-foreground", children: title }) }),
|
|
3119
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "absolute right-2 top-2 z-10", children: copyButton }),
|
|
3120
|
+
html ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2309
3121
|
"div",
|
|
2310
3122
|
{
|
|
2311
3123
|
className: "[&_.shiki]:!p-4 [&_.shiki]:!m-0 [&_.shiki]:overflow-x-auto [&_.shiki]:!text-sm [&_.shiki]:!leading-relaxed [&_.shiki]:bg-transparent",
|
|
2312
3124
|
dangerouslySetInnerHTML: { __html: html }
|
|
2313
3125
|
}
|
|
2314
|
-
) : /* @__PURE__ */ (0,
|
|
3126
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("pre", { className: "!p-4 !m-0 overflow-x-auto !text-sm !leading-relaxed text-berget-muted-foreground", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("code", { children: code }) })
|
|
2315
3127
|
]
|
|
2316
3128
|
}
|
|
2317
3129
|
);
|
|
2318
3130
|
}
|
|
2319
3131
|
|
|
2320
3132
|
// src/components/window-frame/WindowFrame.tsx
|
|
2321
|
-
var
|
|
3133
|
+
var React39 = __toESM(require("react"), 1);
|
|
2322
3134
|
var import_react3 = require("react");
|
|
2323
|
-
var
|
|
2324
|
-
var WindowFrame =
|
|
3135
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
3136
|
+
var WindowFrame = React39.forwardRef(
|
|
2325
3137
|
({ title = "window", tabs, activeTab, onTabChange, children, className, ...props }, ref) => {
|
|
2326
3138
|
const [internalActive, setInternalActive] = (0, import_react3.useState)(tabs?.[0]?.id ?? "");
|
|
2327
3139
|
const currentTab = activeTab ?? internalActive;
|
|
@@ -2332,7 +3144,7 @@ var WindowFrame = React32.forwardRef(
|
|
|
2332
3144
|
setInternalActive(id);
|
|
2333
3145
|
}
|
|
2334
3146
|
};
|
|
2335
|
-
return /* @__PURE__ */ (0,
|
|
3147
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
|
|
2336
3148
|
"div",
|
|
2337
3149
|
{
|
|
2338
3150
|
ref,
|
|
@@ -2342,13 +3154,13 @@ var WindowFrame = React32.forwardRef(
|
|
|
2342
3154
|
),
|
|
2343
3155
|
...props,
|
|
2344
3156
|
children: [
|
|
2345
|
-
/* @__PURE__ */ (0,
|
|
2346
|
-
/* @__PURE__ */ (0,
|
|
2347
|
-
/* @__PURE__ */ (0,
|
|
2348
|
-
/* @__PURE__ */ (0,
|
|
2349
|
-
/* @__PURE__ */ (0,
|
|
3157
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center gap-2 px-4 py-3 border-b border-berget-brand-granite-700 bg-berget-brand-granite-900", children: [
|
|
3158
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
|
|
3159
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#FF5F56]" }),
|
|
3160
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#FFBD2E]" }),
|
|
3161
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#27C93F]" })
|
|
2350
3162
|
] }),
|
|
2351
|
-
tabs && tabs.length > 0 ? /* @__PURE__ */ (0,
|
|
3163
|
+
tabs && tabs.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "ml-4 flex items-center gap-1", children: tabs.map((tab) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
2352
3164
|
"button",
|
|
2353
3165
|
{
|
|
2354
3166
|
type: "button",
|
|
@@ -2360,9 +3172,9 @@ var WindowFrame = React32.forwardRef(
|
|
|
2360
3172
|
children: tab.label
|
|
2361
3173
|
},
|
|
2362
3174
|
tab.id
|
|
2363
|
-
)) }) : /* @__PURE__ */ (0,
|
|
3175
|
+
)) }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "ml-4 text-sm font-mono text-berget-brand-moss-400", children: title })
|
|
2364
3176
|
] }),
|
|
2365
|
-
/* @__PURE__ */ (0,
|
|
3177
|
+
/* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { children })
|
|
2366
3178
|
]
|
|
2367
3179
|
}
|
|
2368
3180
|
);
|
|
@@ -2378,6 +3190,7 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2378
3190
|
BergetLogo,
|
|
2379
3191
|
Box,
|
|
2380
3192
|
Button,
|
|
3193
|
+
COUNTRIES,
|
|
2381
3194
|
Card,
|
|
2382
3195
|
CardContent,
|
|
2383
3196
|
CardDescription,
|
|
@@ -2387,6 +3200,7 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2387
3200
|
Checkbox,
|
|
2388
3201
|
CodeBlock,
|
|
2389
3202
|
Container,
|
|
3203
|
+
CountrySelect,
|
|
2390
3204
|
Dialog,
|
|
2391
3205
|
DialogClose,
|
|
2392
3206
|
DialogContent,
|
|
@@ -2397,6 +3211,7 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2397
3211
|
DialogPortal,
|
|
2398
3212
|
DialogTitle,
|
|
2399
3213
|
DialogTrigger,
|
|
3214
|
+
EU_COUNTRY_CODES,
|
|
2400
3215
|
FeatureList,
|
|
2401
3216
|
Field,
|
|
2402
3217
|
FieldContent,
|
|
@@ -2412,6 +3227,16 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2412
3227
|
HeroBlock,
|
|
2413
3228
|
Icon,
|
|
2414
3229
|
Input,
|
|
3230
|
+
Item,
|
|
3231
|
+
ItemActions,
|
|
3232
|
+
ItemContent,
|
|
3233
|
+
ItemDescription,
|
|
3234
|
+
ItemFooter,
|
|
3235
|
+
ItemGroup,
|
|
3236
|
+
ItemHeader,
|
|
3237
|
+
ItemMedia,
|
|
3238
|
+
ItemSeparator,
|
|
3239
|
+
ItemTitle,
|
|
2415
3240
|
Label,
|
|
2416
3241
|
LanguageSelect,
|
|
2417
3242
|
Link,
|
|
@@ -2420,6 +3245,14 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2420
3245
|
ListItem,
|
|
2421
3246
|
Select,
|
|
2422
3247
|
Switch,
|
|
3248
|
+
Table,
|
|
3249
|
+
TableBody,
|
|
3250
|
+
TableCaption,
|
|
3251
|
+
TableCell,
|
|
3252
|
+
TableFooter,
|
|
3253
|
+
TableHead,
|
|
3254
|
+
TableHeader,
|
|
3255
|
+
TableRow,
|
|
2423
3256
|
TextArea,
|
|
2424
3257
|
ThemeProvider,
|
|
2425
3258
|
ThemeToggle,
|
|
@@ -2432,7 +3265,10 @@ WindowFrame.displayName = "WindowFrame";
|
|
|
2432
3265
|
cardVariants,
|
|
2433
3266
|
checkboxVariants,
|
|
2434
3267
|
containerVariants,
|
|
3268
|
+
getCountryByCode,
|
|
3269
|
+
getCountryByName,
|
|
2435
3270
|
gridVariants,
|
|
3271
|
+
isEUCountry,
|
|
2436
3272
|
linkVariants,
|
|
2437
3273
|
selectVariants,
|
|
2438
3274
|
switchRootVariants,
|