@bergetai/ui 0.1.89 → 0.1.91
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/chunk-3LBFYXI6.js +42 -0
- package/dist/chunk-3LBFYXI6.js.map +1 -0
- package/dist/index.cjs +244 -709
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +24 -163
- package/dist/index.d.ts +24 -163
- package/dist/index.js +255 -628
- package/dist/index.js.map +1 -1
- package/dist/shiki.cjs +7 -92
- package/dist/shiki.cjs.map +1 -1
- package/dist/shiki.d.cts +3 -3
- package/dist/shiki.d.ts +3 -3
- package/dist/shiki.js +1 -1
- package/dist/styles/index.css +37 -12
- package/package.json +2 -2
- package/dist/chunk-SJTRISLQ.js +0 -127
- package/dist/chunk-SJTRISLQ.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -35,8 +35,6 @@ __export(index_exports, {
|
|
|
35
35
|
AlertTitle: () => AlertTitle,
|
|
36
36
|
Badge: () => Badge,
|
|
37
37
|
BergetLogo: () => BergetLogo,
|
|
38
|
-
BergetLogotype: () => BergetLogo,
|
|
39
|
-
BergetSymbol: () => BergetLogo,
|
|
40
38
|
Box: () => Box,
|
|
41
39
|
Button: () => Button2,
|
|
42
40
|
Card: () => Card2,
|
|
@@ -48,8 +46,6 @@ __export(index_exports, {
|
|
|
48
46
|
Checkbox: () => Checkbox2,
|
|
49
47
|
CodeBlock: () => CodeBlock,
|
|
50
48
|
Container: () => Container,
|
|
51
|
-
FeatureCard: () => FeatureCard,
|
|
52
|
-
FeatureCards: () => FeatureCards,
|
|
53
49
|
FeatureList: () => FeatureList,
|
|
54
50
|
Field: () => Field,
|
|
55
51
|
FieldContent: () => FieldContent,
|
|
@@ -62,7 +58,6 @@ __export(index_exports, {
|
|
|
62
58
|
FieldSet: () => FieldSet,
|
|
63
59
|
FieldTitle: () => FieldTitle,
|
|
64
60
|
Grid: () => Grid,
|
|
65
|
-
Header: () => Header,
|
|
66
61
|
HeroBlock: () => HeroBlock,
|
|
67
62
|
Icon: () => Icon2,
|
|
68
63
|
Input: () => Input2,
|
|
@@ -72,14 +67,13 @@ __export(index_exports, {
|
|
|
72
67
|
List: () => List,
|
|
73
68
|
ListHeader: () => ListHeader,
|
|
74
69
|
ListItem: () => ListItem,
|
|
75
|
-
Section: () => Section,
|
|
76
|
-
SectionHeader: () => SectionHeader,
|
|
77
70
|
Select: () => Select2,
|
|
78
71
|
Switch: () => Switch,
|
|
79
72
|
TextArea: () => TextArea,
|
|
80
73
|
ThemeProvider: () => ThemeProvider,
|
|
81
74
|
ThemeToggle: () => ThemeToggle,
|
|
82
75
|
Typography: () => Typography,
|
|
76
|
+
WindowFrame: () => WindowFrame,
|
|
83
77
|
alertVariants: () => alertVariants2,
|
|
84
78
|
badgeVariants: () => badgeVariants,
|
|
85
79
|
boxVariants: () => boxVariants,
|
|
@@ -89,7 +83,6 @@ __export(index_exports, {
|
|
|
89
83
|
containerVariants: () => containerVariants,
|
|
90
84
|
gridVariants: () => gridVariants,
|
|
91
85
|
linkVariants: () => linkVariants,
|
|
92
|
-
sectionVariants: () => sectionVariants,
|
|
93
86
|
selectVariants: () => selectVariants,
|
|
94
87
|
switchRootVariants: () => switchRootVariants,
|
|
95
88
|
switchThumbVariants: () => switchThumbVariants,
|
|
@@ -293,9 +286,6 @@ var ThemeToggle = React2.forwardRef(
|
|
|
293
286
|
);
|
|
294
287
|
ThemeToggle.displayName = "ThemeToggle";
|
|
295
288
|
|
|
296
|
-
// src/components/button/Button.tsx
|
|
297
|
-
var React4 = __toESM(require("react"), 1);
|
|
298
|
-
|
|
299
289
|
// src/primitives/button.tsx
|
|
300
290
|
var React3 = __toESM(require("react"), 1);
|
|
301
291
|
var import_class_variance_authority = require("class-variance-authority");
|
|
@@ -339,7 +329,6 @@ var Button = React3.forwardRef(
|
|
|
339
329
|
Button.displayName = "Button";
|
|
340
330
|
|
|
341
331
|
// src/components/button/Button.tsx
|
|
342
|
-
var import_lucide_react = require("lucide-react");
|
|
343
332
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
344
333
|
function brandVariantClasses(variant) {
|
|
345
334
|
switch (variant) {
|
|
@@ -367,65 +356,34 @@ function primitiveVariant(variant) {
|
|
|
367
356
|
return variant;
|
|
368
357
|
}
|
|
369
358
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
Button,
|
|
396
|
-
{
|
|
397
|
-
className: baseClass,
|
|
398
|
-
ref,
|
|
399
|
-
asChild: true,
|
|
400
|
-
type,
|
|
401
|
-
"aria-disabled": isLoading || void 0,
|
|
402
|
-
"aria-busy": isLoading || void 0,
|
|
403
|
-
...props,
|
|
404
|
-
children
|
|
405
|
-
}
|
|
406
|
-
);
|
|
407
|
-
}
|
|
408
|
-
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
409
|
-
Button,
|
|
410
|
-
{
|
|
411
|
-
className: baseClass,
|
|
412
|
-
ref,
|
|
413
|
-
type,
|
|
414
|
-
"aria-disabled": isLoading || void 0,
|
|
415
|
-
"aria-busy": isLoading || void 0,
|
|
416
|
-
...props,
|
|
417
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: cn("inline-flex items-center", !isIcon && "gap-2"), children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
|
|
418
|
-
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react.Loader2, { className: "animate-spin", size: 16, "aria-hidden": "true" }),
|
|
419
|
-
!isIcon && children
|
|
420
|
-
] }) : children })
|
|
421
|
-
}
|
|
422
|
-
);
|
|
423
|
-
}
|
|
424
|
-
);
|
|
425
|
-
Button2.displayName = "Button";
|
|
359
|
+
function Button2({
|
|
360
|
+
className,
|
|
361
|
+
variant = "default",
|
|
362
|
+
size,
|
|
363
|
+
asChild = false,
|
|
364
|
+
width = "default",
|
|
365
|
+
type = "button",
|
|
366
|
+
ref,
|
|
367
|
+
children,
|
|
368
|
+
...props
|
|
369
|
+
}) {
|
|
370
|
+
const isIcon = typeof size === "string" && size.startsWith("icon");
|
|
371
|
+
const isLink = variant === "link";
|
|
372
|
+
const baseClass = cn(
|
|
373
|
+
!isLink && buttonVariants({ variant: primitiveVariant(variant), size }),
|
|
374
|
+
// Berget brand overrides
|
|
375
|
+
!isLink && "rounded-full",
|
|
376
|
+
brandVariantClasses(variant),
|
|
377
|
+
!isLink && width === "full" && "w-full",
|
|
378
|
+
isIcon && "rounded-full shadow-[0px_1px_3px_rgba(0,0,0,0.1),0px_1px_2px_-1px_rgba(0,0,0,0.1)]",
|
|
379
|
+
className
|
|
380
|
+
);
|
|
381
|
+
const content = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: cn("inline-flex items-center", !isIcon && "gap-2"), children });
|
|
382
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Button, { className: baseClass, ref, asChild, type, ...props, children: asChild ? children : content });
|
|
383
|
+
}
|
|
426
384
|
|
|
427
385
|
// src/components/typography/Typography.tsx
|
|
428
|
-
var
|
|
386
|
+
var React4 = __toESM(require("react"), 1);
|
|
429
387
|
var import_class_variance_authority2 = require("class-variance-authority");
|
|
430
388
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
431
389
|
var typographyVariants = (0, import_class_variance_authority2.cva)("", {
|
|
@@ -472,7 +430,7 @@ var defaultElementMap = {
|
|
|
472
430
|
mono: "p",
|
|
473
431
|
code: "span"
|
|
474
432
|
};
|
|
475
|
-
var Typography =
|
|
433
|
+
var Typography = React4.forwardRef(
|
|
476
434
|
({ className, variant = "body", color = "default", as, children, ...props }, ref) => {
|
|
477
435
|
const Component = as ?? defaultElementMap[variant ?? "body"] ?? "p";
|
|
478
436
|
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
@@ -489,13 +447,13 @@ var Typography = React5.forwardRef(
|
|
|
489
447
|
Typography.displayName = "Typography";
|
|
490
448
|
|
|
491
449
|
// src/components/card/Card.tsx
|
|
492
|
-
var
|
|
450
|
+
var React6 = __toESM(require("react"), 1);
|
|
493
451
|
var import_class_variance_authority3 = require("class-variance-authority");
|
|
494
452
|
|
|
495
453
|
// src/primitives/card.tsx
|
|
496
|
-
var
|
|
454
|
+
var React5 = __toESM(require("react"), 1);
|
|
497
455
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
498
|
-
var Card =
|
|
456
|
+
var Card = React5.forwardRef(
|
|
499
457
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
500
458
|
"div",
|
|
501
459
|
{
|
|
@@ -506,23 +464,23 @@ var Card = React6.forwardRef(
|
|
|
506
464
|
)
|
|
507
465
|
);
|
|
508
466
|
Card.displayName = "Card";
|
|
509
|
-
var CardHeader =
|
|
467
|
+
var CardHeader = React5.forwardRef(
|
|
510
468
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
|
|
511
469
|
);
|
|
512
470
|
CardHeader.displayName = "CardHeader";
|
|
513
|
-
var CardTitle =
|
|
471
|
+
var CardTitle = React5.forwardRef(
|
|
514
472
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("h2", { ref, className: cn("text-2xl leading-none tracking-tight", className), ...props })
|
|
515
473
|
);
|
|
516
474
|
CardTitle.displayName = "CardTitle";
|
|
517
|
-
var CardDescription =
|
|
475
|
+
var CardDescription = React5.forwardRef(
|
|
518
476
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
|
|
519
477
|
);
|
|
520
478
|
CardDescription.displayName = "CardDescription";
|
|
521
|
-
var CardContent =
|
|
479
|
+
var CardContent = React5.forwardRef(
|
|
522
480
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: cn("p-6 pt-0", className), ...props })
|
|
523
481
|
);
|
|
524
482
|
CardContent.displayName = "CardContent";
|
|
525
|
-
var CardFooter =
|
|
483
|
+
var CardFooter = React5.forwardRef(
|
|
526
484
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
|
|
527
485
|
);
|
|
528
486
|
CardFooter.displayName = "CardFooter";
|
|
@@ -547,7 +505,7 @@ var cardVariants = (0, import_class_variance_authority3.cva)("rounded-berget-sm"
|
|
|
547
505
|
padding: "md"
|
|
548
506
|
}
|
|
549
507
|
});
|
|
550
|
-
var Card2 =
|
|
508
|
+
var Card2 = React6.forwardRef(
|
|
551
509
|
({ className, variant, padding, children, ...props }, ref) => {
|
|
552
510
|
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
553
511
|
Card,
|
|
@@ -563,7 +521,7 @@ var Card2 = React7.forwardRef(
|
|
|
563
521
|
Card2.displayName = "Card";
|
|
564
522
|
|
|
565
523
|
// src/components/badge/Badge.tsx
|
|
566
|
-
var
|
|
524
|
+
var React7 = __toESM(require("react"), 1);
|
|
567
525
|
var import_class_variance_authority4 = require("class-variance-authority");
|
|
568
526
|
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
569
527
|
var badgeVariants = (0, import_class_variance_authority4.cva)(
|
|
@@ -598,7 +556,7 @@ var badgeVariants = (0, import_class_variance_authority4.cva)(
|
|
|
598
556
|
}
|
|
599
557
|
}
|
|
600
558
|
);
|
|
601
|
-
var Badge =
|
|
559
|
+
var Badge = React7.forwardRef(
|
|
602
560
|
({ className, variant, status, size, icon, iconGap = 2, children, ...props }, ref) => {
|
|
603
561
|
return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: cn(badgeVariants({ variant, status, size }), className), ref, ...props, children: [
|
|
604
562
|
icon && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { style: { marginRight: children ? `${iconGap * 0.25}rem` : "0" }, children: icon }),
|
|
@@ -609,11 +567,11 @@ var Badge = React8.forwardRef(
|
|
|
609
567
|
Badge.displayName = "Badge";
|
|
610
568
|
|
|
611
569
|
// src/components/alert/Alert.tsx
|
|
612
|
-
var
|
|
570
|
+
var React9 = __toESM(require("react"), 1);
|
|
613
571
|
var import_class_variance_authority6 = require("class-variance-authority");
|
|
614
572
|
|
|
615
573
|
// src/primitives/alert.tsx
|
|
616
|
-
var
|
|
574
|
+
var React8 = __toESM(require("react"), 1);
|
|
617
575
|
var import_class_variance_authority5 = require("class-variance-authority");
|
|
618
576
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
619
577
|
var alertVariants = (0, import_class_variance_authority5.cva)(
|
|
@@ -630,13 +588,13 @@ var alertVariants = (0, import_class_variance_authority5.cva)(
|
|
|
630
588
|
}
|
|
631
589
|
}
|
|
632
590
|
);
|
|
633
|
-
var Alert =
|
|
591
|
+
var Alert = React8.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { ref, role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
|
|
634
592
|
Alert.displayName = "Alert";
|
|
635
|
-
var AlertTitle =
|
|
593
|
+
var AlertTitle = React8.forwardRef(
|
|
636
594
|
({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("h5", { ref, className: cn("mb-1 leading-none tracking-tight", className), ...props })
|
|
637
595
|
);
|
|
638
596
|
AlertTitle.displayName = "AlertTitle";
|
|
639
|
-
var AlertDescription =
|
|
597
|
+
var AlertDescription = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { ref, className: cn("text-sm [&_p]:leading-relaxed", className), ...props }));
|
|
640
598
|
AlertDescription.displayName = "AlertDescription";
|
|
641
599
|
|
|
642
600
|
// src/components/alert/Alert.tsx
|
|
@@ -655,18 +613,18 @@ var alertVariants2 = (0, import_class_variance_authority6.cva)("", {
|
|
|
655
613
|
variant: "default"
|
|
656
614
|
}
|
|
657
615
|
});
|
|
658
|
-
var Alert2 =
|
|
616
|
+
var Alert2 = React9.forwardRef(
|
|
659
617
|
({ className, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Alert, { ref, className: cn(alertVariants2({ variant }), className), ...props })
|
|
660
618
|
);
|
|
661
619
|
Alert2.displayName = "Alert";
|
|
662
620
|
|
|
663
621
|
// src/components/input/Input.tsx
|
|
664
|
-
var
|
|
622
|
+
var React11 = __toESM(require("react"), 1);
|
|
665
623
|
|
|
666
624
|
// src/primitives/input.tsx
|
|
667
|
-
var
|
|
625
|
+
var React10 = __toESM(require("react"), 1);
|
|
668
626
|
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
669
|
-
var Input =
|
|
627
|
+
var Input = React10.forwardRef(
|
|
670
628
|
({ className, type, ...props }, ref) => {
|
|
671
629
|
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
672
630
|
"input",
|
|
@@ -686,9 +644,9 @@ Input.displayName = "Input";
|
|
|
686
644
|
|
|
687
645
|
// src/components/input/Input.tsx
|
|
688
646
|
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
689
|
-
var Input2 =
|
|
647
|
+
var Input2 = React11.forwardRef(
|
|
690
648
|
({ className, icon, actionButton, label, description, error, id, disabled, ...props }, ref) => {
|
|
691
|
-
const generatedId =
|
|
649
|
+
const generatedId = React11.useId();
|
|
692
650
|
const inputId = id || generatedId;
|
|
693
651
|
const errorId = `${inputId}-error`;
|
|
694
652
|
const descriptionId = `${inputId}-description`;
|
|
@@ -768,17 +726,17 @@ var Input2 = React12.forwardRef(
|
|
|
768
726
|
Input2.displayName = "Input";
|
|
769
727
|
|
|
770
728
|
// src/components/checkbox/Checkbox.tsx
|
|
771
|
-
var
|
|
729
|
+
var React13 = __toESM(require("react"), 1);
|
|
772
730
|
var CheckboxPrimitive2 = __toESM(require("@radix-ui/react-checkbox"), 1);
|
|
773
|
-
var
|
|
731
|
+
var import_lucide_react2 = require("lucide-react");
|
|
774
732
|
var import_class_variance_authority7 = require("class-variance-authority");
|
|
775
733
|
|
|
776
734
|
// src/primitives/checkbox.tsx
|
|
777
|
-
var
|
|
735
|
+
var React12 = __toESM(require("react"), 1);
|
|
778
736
|
var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
|
|
779
|
-
var
|
|
737
|
+
var import_lucide_react = require("lucide-react");
|
|
780
738
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
781
|
-
var Checkbox =
|
|
739
|
+
var Checkbox = React12.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
782
740
|
CheckboxPrimitive.Root,
|
|
783
741
|
{
|
|
784
742
|
ref,
|
|
@@ -787,17 +745,17 @@ var Checkbox = React13.forwardRef(({ className, children, ...props }, ref) => /*
|
|
|
787
745
|
className
|
|
788
746
|
),
|
|
789
747
|
...props,
|
|
790
|
-
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(CheckboxPrimitive.Indicator, { className: cn("grid place-content-center"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
748
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(CheckboxPrimitive.Indicator, { className: cn("grid place-content-center"), children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react.Check, { className: "h-4 w-4" }) })
|
|
791
749
|
}
|
|
792
750
|
));
|
|
793
751
|
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
794
|
-
var CheckboxIndicator =
|
|
752
|
+
var CheckboxIndicator = React12.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
795
753
|
CheckboxPrimitive.Indicator,
|
|
796
754
|
{
|
|
797
755
|
ref,
|
|
798
756
|
className: cn("grid place-content-center", className),
|
|
799
757
|
...props,
|
|
800
|
-
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
758
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react.Check, { className: "h-4 w-4" })
|
|
801
759
|
}
|
|
802
760
|
));
|
|
803
761
|
CheckboxIndicator.displayName = CheckboxPrimitive.Indicator.displayName;
|
|
@@ -825,9 +783,9 @@ var checkboxVariants = (0, import_class_variance_authority7.cva)(
|
|
|
825
783
|
}
|
|
826
784
|
}
|
|
827
785
|
);
|
|
828
|
-
var Checkbox2 =
|
|
786
|
+
var Checkbox2 = React13.forwardRef(
|
|
829
787
|
({ className, variant, size, label, description, error, id, disabled, ...props }, ref) => {
|
|
830
|
-
const generatedId =
|
|
788
|
+
const generatedId = React13.useId();
|
|
831
789
|
const checkboxId = id || generatedId;
|
|
832
790
|
const errorId = `${checkboxId}-error`;
|
|
833
791
|
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex items-start gap-3", children: [
|
|
@@ -847,7 +805,7 @@ var Checkbox2 = React14.forwardRef(
|
|
|
847
805
|
),
|
|
848
806
|
...props,
|
|
849
807
|
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(CheckboxPrimitive2.Indicator, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
850
|
-
|
|
808
|
+
import_lucide_react2.Check,
|
|
851
809
|
{
|
|
852
810
|
className: "h-4 w-4 text-current stroke-current",
|
|
853
811
|
style: { color: "currentColor", stroke: "currentColor" }
|
|
@@ -877,7 +835,7 @@ var Checkbox2 = React14.forwardRef(
|
|
|
877
835
|
Checkbox2.displayName = "Checkbox";
|
|
878
836
|
|
|
879
837
|
// src/components/switch/Switch.tsx
|
|
880
|
-
var
|
|
838
|
+
var React14 = __toESM(require("react"), 1);
|
|
881
839
|
var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
|
|
882
840
|
var import_class_variance_authority8 = require("class-variance-authority");
|
|
883
841
|
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
@@ -917,9 +875,9 @@ var switchThumbVariants = (0, import_class_variance_authority8.cva)(
|
|
|
917
875
|
}
|
|
918
876
|
}
|
|
919
877
|
);
|
|
920
|
-
var Switch =
|
|
878
|
+
var Switch = React14.forwardRef(
|
|
921
879
|
({ className, variant, size, label, description, error, id, disabled, ...props }, ref) => {
|
|
922
|
-
const generatedId =
|
|
880
|
+
const generatedId = React14.useId();
|
|
923
881
|
const switchId = id || generatedId;
|
|
924
882
|
const errorId = `${switchId}-error`;
|
|
925
883
|
return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center gap-3", children: [
|
|
@@ -961,17 +919,17 @@ var Switch = React15.forwardRef(
|
|
|
961
919
|
Switch.displayName = "Switch";
|
|
962
920
|
|
|
963
921
|
// src/components/select/Select.tsx
|
|
964
|
-
var
|
|
922
|
+
var React16 = __toESM(require("react"), 1);
|
|
965
923
|
var import_class_variance_authority9 = require("class-variance-authority");
|
|
966
924
|
|
|
967
925
|
// src/primitives/select.tsx
|
|
968
|
-
var
|
|
926
|
+
var React15 = __toESM(require("react"), 1);
|
|
969
927
|
var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
|
|
970
|
-
var
|
|
928
|
+
var import_lucide_react3 = require("lucide-react");
|
|
971
929
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
972
930
|
var Select = SelectPrimitive.Root;
|
|
973
931
|
var SelectValue = SelectPrimitive.Value;
|
|
974
|
-
var SelectTrigger =
|
|
932
|
+
var SelectTrigger = React15.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
975
933
|
SelectPrimitive.Trigger,
|
|
976
934
|
{
|
|
977
935
|
ref,
|
|
@@ -982,32 +940,32 @@ var SelectTrigger = React16.forwardRef(({ className, children, ...props }, ref)
|
|
|
982
940
|
...props,
|
|
983
941
|
children: [
|
|
984
942
|
children,
|
|
985
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
943
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react3.ChevronDown, { className: "h-4 w-4 opacity-50" }) })
|
|
986
944
|
]
|
|
987
945
|
}
|
|
988
946
|
));
|
|
989
947
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
990
|
-
var SelectScrollUpButton =
|
|
948
|
+
var SelectScrollUpButton = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
991
949
|
SelectPrimitive.ScrollUpButton,
|
|
992
950
|
{
|
|
993
951
|
ref,
|
|
994
952
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
995
953
|
...props,
|
|
996
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
954
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react3.ChevronUp, { className: "h-4 w-4" })
|
|
997
955
|
}
|
|
998
956
|
));
|
|
999
957
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
1000
|
-
var SelectScrollDownButton =
|
|
958
|
+
var SelectScrollDownButton = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1001
959
|
SelectPrimitive.ScrollDownButton,
|
|
1002
960
|
{
|
|
1003
961
|
ref,
|
|
1004
962
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
1005
963
|
...props,
|
|
1006
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
964
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react3.ChevronDown, { className: "h-4 w-4" })
|
|
1007
965
|
}
|
|
1008
966
|
));
|
|
1009
967
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
1010
|
-
var SelectContent =
|
|
968
|
+
var SelectContent = React15.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
1011
969
|
SelectPrimitive.Content,
|
|
1012
970
|
{
|
|
1013
971
|
ref,
|
|
@@ -1035,7 +993,7 @@ var SelectContent = React16.forwardRef(({ className, children, position = "poppe
|
|
|
1035
993
|
}
|
|
1036
994
|
) }));
|
|
1037
995
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
1038
|
-
var SelectLabel =
|
|
996
|
+
var SelectLabel = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1039
997
|
SelectPrimitive.Label,
|
|
1040
998
|
{
|
|
1041
999
|
ref,
|
|
@@ -1044,7 +1002,7 @@ var SelectLabel = React16.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
1044
1002
|
}
|
|
1045
1003
|
));
|
|
1046
1004
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
1047
|
-
var SelectItem =
|
|
1005
|
+
var SelectItem = React15.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
1048
1006
|
SelectPrimitive.Item,
|
|
1049
1007
|
{
|
|
1050
1008
|
ref,
|
|
@@ -1054,13 +1012,13 @@ var SelectItem = React16.forwardRef(({ className, children, ...props }, ref) =>
|
|
|
1054
1012
|
),
|
|
1055
1013
|
...props,
|
|
1056
1014
|
children: [
|
|
1057
|
-
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1015
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react3.Check, { className: "h-4 w-4" }) }) }),
|
|
1058
1016
|
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(SelectPrimitive.ItemText, { children })
|
|
1059
1017
|
]
|
|
1060
1018
|
}
|
|
1061
1019
|
));
|
|
1062
1020
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
1063
|
-
var SelectSeparator =
|
|
1021
|
+
var SelectSeparator = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1064
1022
|
SelectPrimitive.Separator,
|
|
1065
1023
|
{
|
|
1066
1024
|
ref,
|
|
@@ -1094,7 +1052,7 @@ var selectVariants = (0, import_class_variance_authority9.cva)(
|
|
|
1094
1052
|
}
|
|
1095
1053
|
}
|
|
1096
1054
|
);
|
|
1097
|
-
var Select2 =
|
|
1055
|
+
var Select2 = React16.forwardRef(
|
|
1098
1056
|
({
|
|
1099
1057
|
className,
|
|
1100
1058
|
variant,
|
|
@@ -1112,7 +1070,7 @@ var Select2 = React17.forwardRef(
|
|
|
1112
1070
|
name,
|
|
1113
1071
|
required
|
|
1114
1072
|
}, ref) => {
|
|
1115
|
-
const generatedId =
|
|
1073
|
+
const generatedId = React16.useId();
|
|
1116
1074
|
const selectId = id || generatedId;
|
|
1117
1075
|
const errorId = `${selectId}-error`;
|
|
1118
1076
|
const descriptionId = `${selectId}-description`;
|
|
@@ -1166,13 +1124,13 @@ var Select2 = React17.forwardRef(
|
|
|
1166
1124
|
Select2.displayName = "Select";
|
|
1167
1125
|
|
|
1168
1126
|
// src/components/text-area/TextArea.tsx
|
|
1169
|
-
var
|
|
1127
|
+
var React18 = __toESM(require("react"), 1);
|
|
1170
1128
|
var import_class_variance_authority10 = require("class-variance-authority");
|
|
1171
1129
|
|
|
1172
1130
|
// src/primitives/textarea.tsx
|
|
1173
|
-
var
|
|
1131
|
+
var React17 = __toESM(require("react"), 1);
|
|
1174
1132
|
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
1175
|
-
var Textarea =
|
|
1133
|
+
var Textarea = React17.forwardRef(
|
|
1176
1134
|
({ className, ...props }, ref) => {
|
|
1177
1135
|
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1178
1136
|
"textarea",
|
|
@@ -1213,7 +1171,7 @@ var textAreaVariants = (0, import_class_variance_authority10.cva)(
|
|
|
1213
1171
|
}
|
|
1214
1172
|
}
|
|
1215
1173
|
);
|
|
1216
|
-
var TextArea =
|
|
1174
|
+
var TextArea = React18.forwardRef(
|
|
1217
1175
|
({
|
|
1218
1176
|
className,
|
|
1219
1177
|
variant,
|
|
@@ -1233,7 +1191,7 @@ var TextArea = React19.forwardRef(
|
|
|
1233
1191
|
actionButton,
|
|
1234
1192
|
...props
|
|
1235
1193
|
}, ref) => {
|
|
1236
|
-
const generatedId =
|
|
1194
|
+
const generatedId = React18.useId();
|
|
1237
1195
|
const textareaId = id || generatedId;
|
|
1238
1196
|
const errorId = `${textareaId}-error`;
|
|
1239
1197
|
const descriptionId = `${textareaId}-description`;
|
|
@@ -1315,14 +1273,14 @@ var TextArea = React19.forwardRef(
|
|
|
1315
1273
|
TextArea.displayName = "TextArea";
|
|
1316
1274
|
|
|
1317
1275
|
// src/primitives/label.tsx
|
|
1318
|
-
var
|
|
1276
|
+
var React19 = __toESM(require("react"), 1);
|
|
1319
1277
|
var LabelPrimitive = __toESM(require("@radix-ui/react-label"), 1);
|
|
1320
1278
|
var import_class_variance_authority11 = require("class-variance-authority");
|
|
1321
1279
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
1322
1280
|
var labelVariants = (0, import_class_variance_authority11.cva)(
|
|
1323
1281
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
1324
1282
|
);
|
|
1325
|
-
var Label2 =
|
|
1283
|
+
var Label2 = React19.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
|
|
1326
1284
|
Label2.displayName = LabelPrimitive.Root.displayName;
|
|
1327
1285
|
|
|
1328
1286
|
// src/primitives/field.tsx
|
|
@@ -1330,10 +1288,10 @@ var import_react = require("react");
|
|
|
1330
1288
|
var import_class_variance_authority12 = require("class-variance-authority");
|
|
1331
1289
|
|
|
1332
1290
|
// src/primitives/separator.tsx
|
|
1333
|
-
var
|
|
1291
|
+
var React20 = __toESM(require("react"), 1);
|
|
1334
1292
|
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
|
|
1335
1293
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1336
|
-
var Separator2 =
|
|
1294
|
+
var Separator2 = React20.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1337
1295
|
SeparatorPrimitive.Root,
|
|
1338
1296
|
{
|
|
1339
1297
|
ref,
|
|
@@ -1553,18 +1511,18 @@ function FieldError({
|
|
|
1553
1511
|
}
|
|
1554
1512
|
|
|
1555
1513
|
// src/components/link/Link.tsx
|
|
1556
|
-
var
|
|
1514
|
+
var React22 = __toESM(require("react"), 1);
|
|
1557
1515
|
var import_class_variance_authority13 = require("class-variance-authority");
|
|
1558
1516
|
|
|
1559
1517
|
// src/components/icon/Icon.tsx
|
|
1560
|
-
var
|
|
1518
|
+
var React21 = __toESM(require("react"), 1);
|
|
1561
1519
|
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
1562
1520
|
var iconStrokeMap = {
|
|
1563
1521
|
16: 1.4,
|
|
1564
1522
|
24: 1.6,
|
|
1565
1523
|
32: 1.8
|
|
1566
1524
|
};
|
|
1567
|
-
var Icon2 =
|
|
1525
|
+
var Icon2 = React21.forwardRef(
|
|
1568
1526
|
({
|
|
1569
1527
|
icon: IconComponent,
|
|
1570
1528
|
size,
|
|
@@ -1591,7 +1549,7 @@ var Icon2 = React22.forwardRef(
|
|
|
1591
1549
|
Icon2.displayName = "Icon";
|
|
1592
1550
|
|
|
1593
1551
|
// src/components/link/Link.tsx
|
|
1594
|
-
var
|
|
1552
|
+
var import_lucide_react4 = require("lucide-react");
|
|
1595
1553
|
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
1596
1554
|
var linkVariants = (0, import_class_variance_authority13.cva)(
|
|
1597
1555
|
"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",
|
|
@@ -1617,7 +1575,7 @@ var linkVariants = (0, import_class_variance_authority13.cva)(
|
|
|
1617
1575
|
}
|
|
1618
1576
|
}
|
|
1619
1577
|
);
|
|
1620
|
-
var Link =
|
|
1578
|
+
var Link = React22.forwardRef(
|
|
1621
1579
|
({
|
|
1622
1580
|
className,
|
|
1623
1581
|
variant,
|
|
@@ -1647,7 +1605,7 @@ var Link = React23.forwardRef(
|
|
|
1647
1605
|
children: [
|
|
1648
1606
|
children,
|
|
1649
1607
|
icon && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "inline-flex items-center", children: icon }),
|
|
1650
|
-
showExternalIcon && isExternal && !disabled && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "inline-flex items-center ml-1 opacity-60", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon2, { icon:
|
|
1608
|
+
showExternalIcon && isExternal && !disabled && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { className: "inline-flex items-center ml-1 opacity-60", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Icon2, { icon: import_lucide_react4.ExternalLink, size: 16 }) })
|
|
1651
1609
|
]
|
|
1652
1610
|
}
|
|
1653
1611
|
);
|
|
@@ -1655,12 +1613,8 @@ var Link = React23.forwardRef(
|
|
|
1655
1613
|
);
|
|
1656
1614
|
Link.displayName = "Link";
|
|
1657
1615
|
|
|
1658
|
-
// src/components/section/Section.tsx
|
|
1659
|
-
var React25 = __toESM(require("react"), 1);
|
|
1660
|
-
var import_class_variance_authority15 = require("class-variance-authority");
|
|
1661
|
-
|
|
1662
1616
|
// src/components/container/Container.tsx
|
|
1663
|
-
var
|
|
1617
|
+
var React23 = __toESM(require("react"), 1);
|
|
1664
1618
|
var import_react_slot2 = require("@radix-ui/react-slot");
|
|
1665
1619
|
var import_class_variance_authority14 = require("class-variance-authority");
|
|
1666
1620
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
@@ -1685,7 +1639,7 @@ var containerVariants = (0, import_class_variance_authority14.cva)("w-full mx-au
|
|
|
1685
1639
|
padding: "md"
|
|
1686
1640
|
}
|
|
1687
1641
|
});
|
|
1688
|
-
var Container =
|
|
1642
|
+
var Container = React23.forwardRef(
|
|
1689
1643
|
({ className, size, padding, asChild = false, children, ...props }, ref) => {
|
|
1690
1644
|
const Component = asChild ? import_react_slot2.Slot : "div";
|
|
1691
1645
|
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
@@ -1701,86 +1655,12 @@ var Container = React24.forwardRef(
|
|
|
1701
1655
|
);
|
|
1702
1656
|
Container.displayName = "Container";
|
|
1703
1657
|
|
|
1704
|
-
// src/components/section/Section.tsx
|
|
1705
|
-
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1706
|
-
var sectionVariants = (0, import_class_variance_authority15.cva)("relative", {
|
|
1707
|
-
variants: {
|
|
1708
|
-
padding: {
|
|
1709
|
-
none: "",
|
|
1710
|
-
sm: "py-12",
|
|
1711
|
-
md: "py-16",
|
|
1712
|
-
lg: "py-24",
|
|
1713
|
-
xl: "py-32"
|
|
1714
|
-
},
|
|
1715
|
-
background: {
|
|
1716
|
-
transparent: "",
|
|
1717
|
-
muted: "bg-berget-section-muted-bg"
|
|
1718
|
-
}
|
|
1719
|
-
},
|
|
1720
|
-
defaultVariants: {
|
|
1721
|
-
padding: "lg",
|
|
1722
|
-
background: "transparent"
|
|
1723
|
-
}
|
|
1724
|
-
});
|
|
1725
|
-
var Section = React25.forwardRef(
|
|
1726
|
-
({ className, padding, background, children, ...props }, ref) => {
|
|
1727
|
-
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1728
|
-
"section",
|
|
1729
|
-
{
|
|
1730
|
-
ref,
|
|
1731
|
-
className: cn(sectionVariants({ padding, background }), className),
|
|
1732
|
-
...props,
|
|
1733
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Container, { children })
|
|
1734
|
-
}
|
|
1735
|
-
);
|
|
1736
|
-
}
|
|
1737
|
-
);
|
|
1738
|
-
Section.displayName = "Section";
|
|
1739
|
-
|
|
1740
|
-
// src/components/section-header/SectionHeader.tsx
|
|
1741
|
-
var React26 = __toESM(require("react"), 1);
|
|
1742
|
-
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1743
|
-
var SectionHeader = React26.forwardRef(
|
|
1744
|
-
({
|
|
1745
|
-
className,
|
|
1746
|
-
title,
|
|
1747
|
-
description,
|
|
1748
|
-
descriptionVariant = "large",
|
|
1749
|
-
tagline,
|
|
1750
|
-
action,
|
|
1751
|
-
headingLevel = "h2",
|
|
1752
|
-
id,
|
|
1753
|
-
...props
|
|
1754
|
-
}, ref) => {
|
|
1755
|
-
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1756
|
-
"div",
|
|
1757
|
-
{
|
|
1758
|
-
id,
|
|
1759
|
-
ref,
|
|
1760
|
-
className: cn("w-full px-fluid-md py-fluid-xl text-center", className),
|
|
1761
|
-
...props,
|
|
1762
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex flex-col items-center gap-fluid-lg", children: [
|
|
1763
|
-
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "max-w-3xl mx-auto flex flex-col items-center gap-fluid-lg", children: [
|
|
1764
|
-
tagline && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Badge, { variant: "default", className: "text-sm", children: tagline }),
|
|
1765
|
-
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex flex-col items-center gap-fluid-sm", children: [
|
|
1766
|
-
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typography, { variant: headingLevel, children: title }),
|
|
1767
|
-
description && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typography, { variant: descriptionVariant, color: "muted", children: description })
|
|
1768
|
-
] })
|
|
1769
|
-
] }),
|
|
1770
|
-
action && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "mt-4", children: action })
|
|
1771
|
-
] })
|
|
1772
|
-
}
|
|
1773
|
-
);
|
|
1774
|
-
}
|
|
1775
|
-
);
|
|
1776
|
-
SectionHeader.displayName = "SectionHeader";
|
|
1777
|
-
|
|
1778
1658
|
// src/components/grid/Grid.tsx
|
|
1779
|
-
var
|
|
1780
|
-
var
|
|
1659
|
+
var React24 = __toESM(require("react"), 1);
|
|
1660
|
+
var import_class_variance_authority15 = require("class-variance-authority");
|
|
1781
1661
|
var import_react_slot3 = require("@radix-ui/react-slot");
|
|
1782
|
-
var
|
|
1783
|
-
var gridVariants = (0,
|
|
1662
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1663
|
+
var gridVariants = (0, import_class_variance_authority15.cva)("grid", {
|
|
1784
1664
|
variants: {
|
|
1785
1665
|
align: {
|
|
1786
1666
|
start: "items-start",
|
|
@@ -1802,10 +1682,10 @@ var gridVariants = (0, import_class_variance_authority16.cva)("grid", {
|
|
|
1802
1682
|
justify: "start"
|
|
1803
1683
|
}
|
|
1804
1684
|
});
|
|
1805
|
-
var Grid =
|
|
1685
|
+
var Grid = React24.forwardRef(
|
|
1806
1686
|
({ className, align, justify, cols, rows, gap, gapX, gapY, asChild = false, children, ...props }, ref) => {
|
|
1807
1687
|
const Component = asChild ? import_react_slot3.Slot : "div";
|
|
1808
|
-
return /* @__PURE__ */ (0,
|
|
1688
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1809
1689
|
Component,
|
|
1810
1690
|
{
|
|
1811
1691
|
ref,
|
|
@@ -1827,11 +1707,11 @@ var Grid = React27.forwardRef(
|
|
|
1827
1707
|
Grid.displayName = "Grid";
|
|
1828
1708
|
|
|
1829
1709
|
// src/components/box/Box.tsx
|
|
1830
|
-
var
|
|
1831
|
-
var
|
|
1710
|
+
var React25 = __toESM(require("react"), 1);
|
|
1711
|
+
var import_class_variance_authority16 = require("class-variance-authority");
|
|
1832
1712
|
var import_react_slot4 = require("@radix-ui/react-slot");
|
|
1833
|
-
var
|
|
1834
|
-
var boxVariants = (0,
|
|
1713
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
1714
|
+
var boxVariants = (0, import_class_variance_authority16.cva)("flex", {
|
|
1835
1715
|
variants: {
|
|
1836
1716
|
direction: {
|
|
1837
1717
|
row: "flex-row",
|
|
@@ -1867,10 +1747,10 @@ var boxVariants = (0, import_class_variance_authority17.cva)("flex", {
|
|
|
1867
1747
|
wrap: "nowrap"
|
|
1868
1748
|
}
|
|
1869
1749
|
});
|
|
1870
|
-
var Box =
|
|
1750
|
+
var Box = React25.forwardRef(
|
|
1871
1751
|
({ className, direction, align, justify, wrap, gap, asChild = false, children, ...props }, ref) => {
|
|
1872
1752
|
const Component = asChild ? import_react_slot4.Slot : "div";
|
|
1873
|
-
return /* @__PURE__ */ (0,
|
|
1753
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
1874
1754
|
Component,
|
|
1875
1755
|
{
|
|
1876
1756
|
ref,
|
|
@@ -1888,16 +1768,16 @@ var Box = React28.forwardRef(
|
|
|
1888
1768
|
Box.displayName = "Box";
|
|
1889
1769
|
|
|
1890
1770
|
// src/components/berget-logo/BergetLogo.tsx
|
|
1891
|
-
var
|
|
1892
|
-
var
|
|
1893
|
-
var BergetLogo =
|
|
1771
|
+
var React26 = __toESM(require("react"), 1);
|
|
1772
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
1773
|
+
var BergetLogo = React26.forwardRef(
|
|
1894
1774
|
({ variant = "logotype", color = "auto", size = 48, className, ...props }, ref) => {
|
|
1895
1775
|
const fillColor = color === "auto" ? "var(--berget-logo-light)" : color === "white" ? "var(--berget-logo-light)" : "var(--berget-logo-dark)";
|
|
1896
1776
|
if (variant === "symbol") {
|
|
1897
1777
|
const aspectRatio2 = 463 / 419;
|
|
1898
1778
|
const width2 = size * aspectRatio2;
|
|
1899
1779
|
const height2 = size;
|
|
1900
|
-
return /* @__PURE__ */ (0,
|
|
1780
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1901
1781
|
"svg",
|
|
1902
1782
|
{
|
|
1903
1783
|
ref,
|
|
@@ -1910,7 +1790,7 @@ var BergetLogo = React29.forwardRef(
|
|
|
1910
1790
|
"aria-label": "Berget symbol",
|
|
1911
1791
|
className: cn("inline-block", className),
|
|
1912
1792
|
...props,
|
|
1913
|
-
children: /* @__PURE__ */ (0,
|
|
1793
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1914
1794
|
"path",
|
|
1915
1795
|
{
|
|
1916
1796
|
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",
|
|
@@ -1923,7 +1803,7 @@ var BergetLogo = React29.forwardRef(
|
|
|
1923
1803
|
const aspectRatio = 793.63 / 204.37;
|
|
1924
1804
|
const width = size * aspectRatio;
|
|
1925
1805
|
const height = size;
|
|
1926
|
-
return /* @__PURE__ */ (0,
|
|
1806
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
|
|
1927
1807
|
"svg",
|
|
1928
1808
|
{
|
|
1929
1809
|
ref,
|
|
@@ -1937,59 +1817,59 @@ var BergetLogo = React29.forwardRef(
|
|
|
1937
1817
|
className: cn("inline-block", className),
|
|
1938
1818
|
...props,
|
|
1939
1819
|
children: [
|
|
1940
|
-
/* @__PURE__ */ (0,
|
|
1941
|
-
/* @__PURE__ */ (0,
|
|
1820
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("g", { style: { fill: fillColor }, children: [
|
|
1821
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1942
1822
|
"path",
|
|
1943
1823
|
{
|
|
1944
1824
|
className: "berget-logotype-fill",
|
|
1945
1825
|
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"
|
|
1946
1826
|
}
|
|
1947
1827
|
),
|
|
1948
|
-
/* @__PURE__ */ (0,
|
|
1828
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1949
1829
|
"path",
|
|
1950
1830
|
{
|
|
1951
1831
|
className: "berget-logotype-fill",
|
|
1952
1832
|
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"
|
|
1953
1833
|
}
|
|
1954
1834
|
),
|
|
1955
|
-
/* @__PURE__ */ (0,
|
|
1835
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1956
1836
|
"path",
|
|
1957
1837
|
{
|
|
1958
1838
|
className: "berget-logotype-fill",
|
|
1959
1839
|
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"
|
|
1960
1840
|
}
|
|
1961
1841
|
),
|
|
1962
|
-
/* @__PURE__ */ (0,
|
|
1842
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1963
1843
|
"path",
|
|
1964
1844
|
{
|
|
1965
1845
|
className: "berget-logotype-fill",
|
|
1966
1846
|
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"
|
|
1967
1847
|
}
|
|
1968
1848
|
),
|
|
1969
|
-
/* @__PURE__ */ (0,
|
|
1849
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1970
1850
|
"path",
|
|
1971
1851
|
{
|
|
1972
1852
|
className: "berget-logotype-fill",
|
|
1973
1853
|
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"
|
|
1974
1854
|
}
|
|
1975
1855
|
),
|
|
1976
|
-
/* @__PURE__ */ (0,
|
|
1856
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1977
1857
|
"path",
|
|
1978
1858
|
{
|
|
1979
1859
|
className: "berget-logotype-fill",
|
|
1980
1860
|
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"
|
|
1981
1861
|
}
|
|
1982
1862
|
),
|
|
1983
|
-
/* @__PURE__ */ (0,
|
|
1863
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1984
1864
|
"path",
|
|
1985
1865
|
{
|
|
1986
1866
|
className: "berget-logotype-fill",
|
|
1987
1867
|
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"
|
|
1988
1868
|
}
|
|
1989
1869
|
),
|
|
1990
|
-
/* @__PURE__ */ (0,
|
|
1870
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)("path", { className: "berget-logotype-fill", d: "M778.48,172.54v-96.04h15.15v96.04h-15.15Z" })
|
|
1991
1871
|
] }),
|
|
1992
|
-
/* @__PURE__ */ (0,
|
|
1872
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
1993
1873
|
"path",
|
|
1994
1874
|
{
|
|
1995
1875
|
style: { fill: fillColor },
|
|
@@ -2003,19 +1883,14 @@ var BergetLogo = React29.forwardRef(
|
|
|
2003
1883
|
);
|
|
2004
1884
|
BergetLogo.displayName = "BergetLogo";
|
|
2005
1885
|
|
|
2006
|
-
// src/components/header/Header.tsx
|
|
2007
|
-
var React31 = __toESM(require("react"), 1);
|
|
2008
|
-
var import_class_variance_authority18 = require("class-variance-authority");
|
|
2009
|
-
var import_lucide_react7 = require("lucide-react");
|
|
2010
|
-
|
|
2011
1886
|
// src/components/language-select/LanguageSelect.tsx
|
|
2012
|
-
var
|
|
1887
|
+
var React27 = __toESM(require("react"), 1);
|
|
2013
1888
|
var SelectPrimitive2 = __toESM(require("@radix-ui/react-select"), 1);
|
|
2014
|
-
var
|
|
2015
|
-
var
|
|
2016
|
-
var LanguageSelect =
|
|
2017
|
-
return /* @__PURE__ */ (0,
|
|
2018
|
-
/* @__PURE__ */ (0,
|
|
1889
|
+
var import_lucide_react5 = require("lucide-react");
|
|
1890
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
1891
|
+
var LanguageSelect = React27.forwardRef(({ className, options, value, onValueChange }, ref) => {
|
|
1892
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(SelectPrimitive2.Root, { value, onValueChange, children: [
|
|
1893
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2019
1894
|
SelectPrimitive2.Trigger,
|
|
2020
1895
|
{
|
|
2021
1896
|
ref,
|
|
@@ -2037,10 +1912,10 @@ var LanguageSelect = React30.forwardRef(({ className, options, value, onValueCha
|
|
|
2037
1912
|
"disabled:cursor-not-allowed disabled:opacity-50",
|
|
2038
1913
|
className
|
|
2039
1914
|
),
|
|
2040
|
-
children: /* @__PURE__ */ (0,
|
|
1915
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(Icon2, { icon: import_lucide_react5.Globe, size: 16 })
|
|
2041
1916
|
}
|
|
2042
1917
|
),
|
|
2043
|
-
/* @__PURE__ */ (0,
|
|
1918
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive2.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2044
1919
|
SelectPrimitive2.Content,
|
|
2045
1920
|
{
|
|
2046
1921
|
className: cn(
|
|
@@ -2068,7 +1943,7 @@ var LanguageSelect = React30.forwardRef(({ className, options, value, onValueCha
|
|
|
2068
1943
|
"origin-[--radix-select-content-transform-origin]"
|
|
2069
1944
|
),
|
|
2070
1945
|
position: "popper",
|
|
2071
|
-
children: /* @__PURE__ */ (0,
|
|
1946
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive2.Viewport, { className: "p-1", children: options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2072
1947
|
SelectPrimitive2.Item,
|
|
2073
1948
|
{
|
|
2074
1949
|
value: option.value,
|
|
@@ -2085,7 +1960,7 @@ var LanguageSelect = React30.forwardRef(({ className, options, value, onValueCha
|
|
|
2085
1960
|
// Disabled state
|
|
2086
1961
|
"data-[disabled]:pointer-events-none data-[disabled]:opacity-50"
|
|
2087
1962
|
),
|
|
2088
|
-
children: /* @__PURE__ */ (0,
|
|
1963
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive2.ItemText, { children: option.label })
|
|
2089
1964
|
},
|
|
2090
1965
|
option.value
|
|
2091
1966
|
)) })
|
|
@@ -2095,225 +1970,14 @@ var LanguageSelect = React30.forwardRef(({ className, options, value, onValueCha
|
|
|
2095
1970
|
});
|
|
2096
1971
|
LanguageSelect.displayName = "LanguageSelect";
|
|
2097
1972
|
|
|
2098
|
-
// src/components/header/Header.tsx
|
|
2099
|
-
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
2100
|
-
var headerVariants = (0, import_class_variance_authority18.cva)(
|
|
2101
|
-
"sticky top-0 z-50 header-backdrop backdrop-blur-xl border-b border-berget-border transition-all duration-200",
|
|
2102
|
-
{
|
|
2103
|
-
variants: {
|
|
2104
|
-
variant: {
|
|
2105
|
-
default: "",
|
|
2106
|
-
transparent: "border-transparent bg-transparent backdrop-blur-none"
|
|
2107
|
-
}
|
|
2108
|
-
},
|
|
2109
|
-
defaultVariants: {
|
|
2110
|
-
variant: "default"
|
|
2111
|
-
}
|
|
2112
|
-
}
|
|
2113
|
-
);
|
|
2114
|
-
var HeaderContext = React31.createContext({
|
|
2115
|
-
isMobileMenuOpen: false,
|
|
2116
|
-
setIsMobileMenuOpen: () => {
|
|
2117
|
-
}
|
|
2118
|
-
});
|
|
2119
|
-
var useHeaderContext = () => React31.useContext(HeaderContext);
|
|
2120
|
-
var HeaderLogo = React31.forwardRef(
|
|
2121
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { ref, className: cn("flex items-center", className), ...props, children })
|
|
2122
|
-
);
|
|
2123
|
-
HeaderLogo.displayName = "HeaderLogo";
|
|
2124
|
-
var HeaderNav = React31.forwardRef(({ className, links, ...props }, ref) => {
|
|
2125
|
-
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("nav", { ref, className: cn("hidden md:flex items-center gap-fluid-lg", className), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: "flex items-center gap-fluid-lg", children: links.map((link) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
|
|
2126
|
-
Link,
|
|
2127
|
-
{
|
|
2128
|
-
href: link.href,
|
|
2129
|
-
variant: link.active ? "primary" : "default",
|
|
2130
|
-
size: "sm",
|
|
2131
|
-
className: cn("relative transition-all duration-200", link.active && "font-medium"),
|
|
2132
|
-
children: [
|
|
2133
|
-
link.icon && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "inline-flex items-center mr-2", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon2, { icon: link.icon, size: 16 }) }),
|
|
2134
|
-
link.label
|
|
2135
|
-
]
|
|
2136
|
-
}
|
|
2137
|
-
) }, link.href)) }) });
|
|
2138
|
-
});
|
|
2139
|
-
HeaderNav.displayName = "HeaderNav";
|
|
2140
|
-
var HeaderActions = React31.forwardRef(
|
|
2141
|
-
({
|
|
2142
|
-
className,
|
|
2143
|
-
languageOptions,
|
|
2144
|
-
currentLanguage,
|
|
2145
|
-
onLanguageChange,
|
|
2146
|
-
loginButton,
|
|
2147
|
-
ctaButton,
|
|
2148
|
-
...props
|
|
2149
|
-
}, ref) => {
|
|
2150
|
-
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { ref, className: cn("hidden md:flex items-center gap-2", className), ...props, children: [
|
|
2151
|
-
languageOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2152
|
-
LanguageSelect,
|
|
2153
|
-
{
|
|
2154
|
-
options: languageOptions,
|
|
2155
|
-
value: currentLanguage,
|
|
2156
|
-
onValueChange: onLanguageChange
|
|
2157
|
-
}
|
|
2158
|
-
),
|
|
2159
|
-
loginButton,
|
|
2160
|
-
ctaButton
|
|
2161
|
-
] });
|
|
2162
|
-
}
|
|
2163
|
-
);
|
|
2164
|
-
HeaderActions.displayName = "HeaderActions";
|
|
2165
|
-
var MobileMenuButton = React31.forwardRef(({ className, ...props }, ref) => {
|
|
2166
|
-
const { isMobileMenuOpen, setIsMobileMenuOpen } = useHeaderContext();
|
|
2167
|
-
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2168
|
-
"button",
|
|
2169
|
-
{
|
|
2170
|
-
ref,
|
|
2171
|
-
className: cn(
|
|
2172
|
-
"md:hidden flex items-center justify-center w-8 h-8 rounded-full",
|
|
2173
|
-
"cursor-pointer transition-all duration-200",
|
|
2174
|
-
"hover:bg-berget-surface-hover",
|
|
2175
|
-
className
|
|
2176
|
-
),
|
|
2177
|
-
onClick: () => setIsMobileMenuOpen(!isMobileMenuOpen),
|
|
2178
|
-
"aria-label": isMobileMenuOpen ? "Close menu" : "Open menu",
|
|
2179
|
-
"aria-expanded": isMobileMenuOpen,
|
|
2180
|
-
"aria-controls": "mobile-menu",
|
|
2181
|
-
...props,
|
|
2182
|
-
children: isMobileMenuOpen ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon2, { icon: import_lucide_react7.X, size: 16 }) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon2, { icon: import_lucide_react7.Menu, size: 16 })
|
|
2183
|
-
}
|
|
2184
|
-
);
|
|
2185
|
-
});
|
|
2186
|
-
MobileMenuButton.displayName = "MobileMenuButton";
|
|
2187
|
-
var MobileMenu = React31.forwardRef(
|
|
2188
|
-
({
|
|
2189
|
-
className,
|
|
2190
|
-
links,
|
|
2191
|
-
languageOptions,
|
|
2192
|
-
currentLanguage,
|
|
2193
|
-
onLanguageChange,
|
|
2194
|
-
loginButton,
|
|
2195
|
-
ctaButton,
|
|
2196
|
-
...props
|
|
2197
|
-
}, ref) => {
|
|
2198
|
-
const { isMobileMenuOpen, setIsMobileMenuOpen } = useHeaderContext();
|
|
2199
|
-
if (!isMobileMenuOpen) return null;
|
|
2200
|
-
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2201
|
-
"nav",
|
|
2202
|
-
{
|
|
2203
|
-
ref,
|
|
2204
|
-
id: "mobile-menu",
|
|
2205
|
-
"aria-label": "Mobile navigation menu",
|
|
2206
|
-
className: cn(
|
|
2207
|
-
"md:hidden absolute top-full left-0 right-0 bg-berget-background border-b border-berget-border shadow-berget-lg",
|
|
2208
|
-
className
|
|
2209
|
-
),
|
|
2210
|
-
...props,
|
|
2211
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Box, { direction: "column", gap: 0, className: "py-fluid-md", children: [
|
|
2212
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("ul", { className: "px-fluid-md pb-fluid-md border-b border-berget-border/50", children: links.map((link) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
|
|
2213
|
-
Link,
|
|
2214
|
-
{
|
|
2215
|
-
href: link.href,
|
|
2216
|
-
variant: link.active ? "primary" : "default",
|
|
2217
|
-
className: cn(
|
|
2218
|
-
"w-full py-3 px-4 rounded-lg transition-all duration-200 hover:bg-berget-surface-hover",
|
|
2219
|
-
link.active && "bg-berget-primary-tint font-medium"
|
|
2220
|
-
),
|
|
2221
|
-
onClick: () => setIsMobileMenuOpen(false),
|
|
2222
|
-
children: [
|
|
2223
|
-
link.icon && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "inline-flex items-center mr-2", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon2, { icon: link.icon, size: 16 }) }),
|
|
2224
|
-
link.label
|
|
2225
|
-
]
|
|
2226
|
-
}
|
|
2227
|
-
) }, link.href)) }),
|
|
2228
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "px-fluid-md py-fluid-md", children: [
|
|
2229
|
-
languageOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "mb-fluid-md", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2230
|
-
LanguageSelect,
|
|
2231
|
-
{
|
|
2232
|
-
options: languageOptions,
|
|
2233
|
-
value: currentLanguage,
|
|
2234
|
-
onValueChange: onLanguageChange
|
|
2235
|
-
}
|
|
2236
|
-
) }),
|
|
2237
|
-
loginButton && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "mb-fluid-md w-full", children: loginButton }),
|
|
2238
|
-
ctaButton && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "w-full", children: ctaButton })
|
|
2239
|
-
] })
|
|
2240
|
-
] })
|
|
2241
|
-
}
|
|
2242
|
-
);
|
|
2243
|
-
}
|
|
2244
|
-
);
|
|
2245
|
-
MobileMenu.displayName = "MobileMenu";
|
|
2246
|
-
var Header = React31.forwardRef(
|
|
2247
|
-
({
|
|
2248
|
-
className,
|
|
2249
|
-
variant,
|
|
2250
|
-
logo,
|
|
2251
|
-
links,
|
|
2252
|
-
languageOptions,
|
|
2253
|
-
loginButton,
|
|
2254
|
-
ctaButton,
|
|
2255
|
-
currentLanguage,
|
|
2256
|
-
onLanguageChange,
|
|
2257
|
-
...props
|
|
2258
|
-
}, ref) => {
|
|
2259
|
-
const [isMobileMenuOpen, setIsMobileMenuOpen] = React31.useState(false);
|
|
2260
|
-
React31.useEffect(() => {
|
|
2261
|
-
if (isMobileMenuOpen) {
|
|
2262
|
-
document.body.style.overflow = "hidden";
|
|
2263
|
-
} else {
|
|
2264
|
-
document.body.style.overflow = "unset";
|
|
2265
|
-
}
|
|
2266
|
-
return () => {
|
|
2267
|
-
document.body.style.overflow = "unset";
|
|
2268
|
-
};
|
|
2269
|
-
}, [isMobileMenuOpen]);
|
|
2270
|
-
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(HeaderContext.Provider, { value: { isMobileMenuOpen, setIsMobileMenuOpen }, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("header", { ref, className: cn(headerVariants({ variant }), className), ...props, children: [
|
|
2271
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Container, { size: "xl", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Box, { direction: "row", align: "center", justify: "between", className: "h-16", children: [
|
|
2272
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(HeaderLogo, { children: logo || /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(BergetLogo, { variant: "logotype", color: "auto", size: 32 }) }),
|
|
2273
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(HeaderNav, { links }),
|
|
2274
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(Box, { direction: "row", align: "center", gap: 3, children: [
|
|
2275
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2276
|
-
HeaderActions,
|
|
2277
|
-
{
|
|
2278
|
-
languageOptions,
|
|
2279
|
-
currentLanguage,
|
|
2280
|
-
onLanguageChange,
|
|
2281
|
-
loginButton,
|
|
2282
|
-
ctaButton
|
|
2283
|
-
}
|
|
2284
|
-
),
|
|
2285
|
-
ctaButton && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "md:hidden", children: ctaButton }),
|
|
2286
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(MobileMenuButton, {})
|
|
2287
|
-
] })
|
|
2288
|
-
] }) }),
|
|
2289
|
-
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2290
|
-
MobileMenu,
|
|
2291
|
-
{
|
|
2292
|
-
links,
|
|
2293
|
-
languageOptions,
|
|
2294
|
-
currentLanguage,
|
|
2295
|
-
onLanguageChange,
|
|
2296
|
-
loginButton,
|
|
2297
|
-
ctaButton
|
|
2298
|
-
}
|
|
2299
|
-
)
|
|
2300
|
-
] }) });
|
|
2301
|
-
}
|
|
2302
|
-
);
|
|
2303
|
-
Header.displayName = "Header";
|
|
2304
|
-
|
|
2305
|
-
// src/components/feature-cards/FeatureCards.tsx
|
|
2306
|
-
var React34 = __toESM(require("react"), 1);
|
|
2307
|
-
var import_class_variance_authority20 = require("class-variance-authority");
|
|
2308
|
-
|
|
2309
1973
|
// src/components/list/List.tsx
|
|
2310
|
-
var
|
|
1974
|
+
var React29 = __toESM(require("react"), 1);
|
|
2311
1975
|
|
|
2312
1976
|
// src/components/divider/Divider.tsx
|
|
2313
|
-
var
|
|
2314
|
-
var
|
|
2315
|
-
var
|
|
2316
|
-
var dividerVariants = (0,
|
|
1977
|
+
var React28 = __toESM(require("react"), 1);
|
|
1978
|
+
var import_class_variance_authority17 = require("class-variance-authority");
|
|
1979
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
1980
|
+
var dividerVariants = (0, import_class_variance_authority17.cva)("", {
|
|
2317
1981
|
variants: {
|
|
2318
1982
|
variant: {
|
|
2319
1983
|
default: "bg-berget-separator",
|
|
@@ -2333,7 +1997,7 @@ var dividerVariants = (0, import_class_variance_authority19.cva)("", {
|
|
|
2333
1997
|
size: "thin"
|
|
2334
1998
|
}
|
|
2335
1999
|
});
|
|
2336
|
-
var Divider =
|
|
2000
|
+
var Divider = React28.forwardRef(
|
|
2337
2001
|
({
|
|
2338
2002
|
className,
|
|
2339
2003
|
orientation = "horizontal",
|
|
@@ -2344,16 +2008,16 @@ var Divider = React32.forwardRef(
|
|
|
2344
2008
|
...props
|
|
2345
2009
|
}, ref) => {
|
|
2346
2010
|
if (label) {
|
|
2347
|
-
return /* @__PURE__ */ (0,
|
|
2348
|
-
labelPosition !== "right" && /* @__PURE__ */ (0,
|
|
2011
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)("div", { ref, className: cn("flex items-center w-full", className), ...props, children: [
|
|
2012
|
+
labelPosition !== "right" && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2349
2013
|
Separator2,
|
|
2350
2014
|
{
|
|
2351
2015
|
orientation: "horizontal",
|
|
2352
2016
|
className: cn(dividerVariants({ variant, size }), "flex-1")
|
|
2353
2017
|
}
|
|
2354
2018
|
),
|
|
2355
|
-
/* @__PURE__ */ (0,
|
|
2356
|
-
labelPosition !== "left" && /* @__PURE__ */ (0,
|
|
2019
|
+
/* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Typography, { variant: "small", color: "muted", className: "px-4 whitespace-nowrap", children: label }),
|
|
2020
|
+
labelPosition !== "left" && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2357
2021
|
Separator2,
|
|
2358
2022
|
{
|
|
2359
2023
|
orientation: "horizontal",
|
|
@@ -2362,7 +2026,7 @@ var Divider = React32.forwardRef(
|
|
|
2362
2026
|
)
|
|
2363
2027
|
] });
|
|
2364
2028
|
}
|
|
2365
|
-
return /* @__PURE__ */ (0,
|
|
2029
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2366
2030
|
Separator2,
|
|
2367
2031
|
{
|
|
2368
2032
|
ref,
|
|
@@ -2379,20 +2043,20 @@ var Divider = React32.forwardRef(
|
|
|
2379
2043
|
Divider.displayName = "Divider";
|
|
2380
2044
|
|
|
2381
2045
|
// src/components/list/List.tsx
|
|
2382
|
-
var
|
|
2383
|
-
var
|
|
2384
|
-
var List =
|
|
2046
|
+
var import_lucide_react6 = require("lucide-react");
|
|
2047
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
2048
|
+
var List = React29.forwardRef(
|
|
2385
2049
|
({ className, children, ...props }, ref) => {
|
|
2386
|
-
const childrenArray =
|
|
2387
|
-
return /* @__PURE__ */ (0,
|
|
2050
|
+
const childrenArray = React29.Children.toArray(children);
|
|
2051
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { ref, className: cn("flex flex-col", className), ...props, children: childrenArray.map((child, index) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(React29.Fragment, { children: [
|
|
2388
2052
|
child,
|
|
2389
|
-
index < childrenArray.length - 1 && /* @__PURE__ */ (0,
|
|
2053
|
+
index < childrenArray.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Divider, { variant: "subtle" })
|
|
2390
2054
|
] }, index)) });
|
|
2391
2055
|
}
|
|
2392
2056
|
);
|
|
2393
2057
|
List.displayName = "List";
|
|
2394
|
-
var ListItem =
|
|
2395
|
-
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */ (0,
|
|
2058
|
+
var ListItem = React29.forwardRef(
|
|
2059
|
+
({ className, icon, children, interactive = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
2396
2060
|
"div",
|
|
2397
2061
|
{
|
|
2398
2062
|
ref,
|
|
@@ -2403,15 +2067,15 @@ var ListItem = React33.forwardRef(
|
|
|
2403
2067
|
),
|
|
2404
2068
|
...props,
|
|
2405
2069
|
children: [
|
|
2406
|
-
icon && /* @__PURE__ */ (0,
|
|
2407
|
-
/* @__PURE__ */ (0,
|
|
2070
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex-shrink-0 flex items-center justify-center", children: icon }),
|
|
2071
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex-1 min-w-0", children })
|
|
2408
2072
|
]
|
|
2409
2073
|
}
|
|
2410
2074
|
)
|
|
2411
2075
|
);
|
|
2412
2076
|
ListItem.displayName = "ListItem";
|
|
2413
|
-
var ListHeader =
|
|
2414
|
-
({ className, children, ...props }, ref) => /* @__PURE__ */ (0,
|
|
2077
|
+
var ListHeader = React29.forwardRef(
|
|
2078
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2415
2079
|
"div",
|
|
2416
2080
|
{
|
|
2417
2081
|
ref,
|
|
@@ -2422,111 +2086,21 @@ var ListHeader = React33.forwardRef(
|
|
|
2422
2086
|
)
|
|
2423
2087
|
);
|
|
2424
2088
|
ListHeader.displayName = "ListHeader";
|
|
2425
|
-
var FeatureList =
|
|
2089
|
+
var FeatureList = React29.forwardRef(
|
|
2426
2090
|
({ items, variant = "bullet", className, ...props }, ref) => {
|
|
2427
|
-
return /* @__PURE__ */ (0,
|
|
2428
|
-
variant === "bullet" ? /* @__PURE__ */ (0,
|
|
2429
|
-
/* @__PURE__ */ (0,
|
|
2091
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("ul", { ref, className: cn("flex flex-col gap-fluid-md", className), ...props, children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)("li", { className: "flex items-start gap-fluid-md", children: [
|
|
2092
|
+
variant === "bullet" ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "w-1.5 h-1.5 rounded-full bg-berget-icon-muted flex-shrink-0 mt-2" }) : /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("div", { className: "flex-shrink-0 mt-0.5", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Icon2, { icon: import_lucide_react6.Check, size: 24, className: "text-berget-logo-light" }) }),
|
|
2093
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Typography, { variant: "body", color: "muted", children: item })
|
|
2430
2094
|
] }, index)) });
|
|
2431
2095
|
}
|
|
2432
2096
|
);
|
|
2433
2097
|
FeatureList.displayName = "FeatureList";
|
|
2434
2098
|
|
|
2435
|
-
// src/components/feature-cards/FeatureCards.tsx
|
|
2436
|
-
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
2437
|
-
var featureCardVariants = (0, import_class_variance_authority20.cva)("", {
|
|
2438
|
-
variants: {
|
|
2439
|
-
variant: {
|
|
2440
|
-
highlight: "",
|
|
2441
|
-
glass: "",
|
|
2442
|
-
solid: ""
|
|
2443
|
-
}
|
|
2444
|
-
},
|
|
2445
|
-
defaultVariants: {
|
|
2446
|
-
variant: "highlight"
|
|
2447
|
-
}
|
|
2448
|
-
});
|
|
2449
|
-
var FeatureCard = React34.forwardRef(
|
|
2450
|
-
({
|
|
2451
|
-
className,
|
|
2452
|
-
variant = "highlight",
|
|
2453
|
-
icon: Icon3,
|
|
2454
|
-
iconColor,
|
|
2455
|
-
title,
|
|
2456
|
-
description,
|
|
2457
|
-
badge,
|
|
2458
|
-
linkText,
|
|
2459
|
-
linkHref,
|
|
2460
|
-
items,
|
|
2461
|
-
columns: _columns,
|
|
2462
|
-
...props
|
|
2463
|
-
}, ref) => {
|
|
2464
|
-
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2465
|
-
Card2,
|
|
2466
|
-
{
|
|
2467
|
-
ref,
|
|
2468
|
-
variant,
|
|
2469
|
-
className: cn("w-full py-fluid-lg px-fluid-md", className),
|
|
2470
|
-
...props,
|
|
2471
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex flex-col items-start gap-fluid-md", children: [
|
|
2472
|
-
(Icon3 || badge) && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("div", { className: "flex items-center justify-between w-full", children: [
|
|
2473
|
-
Icon3 && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "flex h-7 w-7 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2474
|
-
Icon3,
|
|
2475
|
-
{
|
|
2476
|
-
className: cn("h-7 w-7", iconColor || "text-foreground"),
|
|
2477
|
-
strokeWidth: 1.5
|
|
2478
|
-
}
|
|
2479
|
-
) }),
|
|
2480
|
-
badge && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: "flex h-6 items-center justify-start px-6 bg-berget-feature-card-badge-bg rounded-full", children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2481
|
-
Typography,
|
|
2482
|
-
{
|
|
2483
|
-
variant: "body",
|
|
2484
|
-
as: "span",
|
|
2485
|
-
className: "text-berget-feature-card-badge-fg",
|
|
2486
|
-
children: badge
|
|
2487
|
-
}
|
|
2488
|
-
) })
|
|
2489
|
-
] }),
|
|
2490
|
-
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Typography, { variant: "h3", className: "text-foreground", children: title }),
|
|
2491
|
-
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Typography, { variant: "body", className: "text-foreground/80", children: description }),
|
|
2492
|
-
items && items.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(FeatureList, { items, variant: "bullet" }),
|
|
2493
|
-
linkText && linkHref && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)("a", { href: linkHref, className: "text-p font-p leading-p text-berget-accent", children: [
|
|
2494
|
-
linkText,
|
|
2495
|
-
" \u2192"
|
|
2496
|
-
] })
|
|
2497
|
-
] })
|
|
2498
|
-
}
|
|
2499
|
-
);
|
|
2500
|
-
}
|
|
2501
|
-
);
|
|
2502
|
-
FeatureCard.displayName = "FeatureCard";
|
|
2503
|
-
var FeatureCards = React34.forwardRef(
|
|
2504
|
-
({ features, columns = 3, className }, ref) => {
|
|
2505
|
-
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2506
|
-
"div",
|
|
2507
|
-
{
|
|
2508
|
-
ref,
|
|
2509
|
-
className: cn(
|
|
2510
|
-
"grid gap-fluid-lg p-fluid-md",
|
|
2511
|
-
// Explicit classes so Tailwind compiles them
|
|
2512
|
-
columns === 1 && "grid-cols-1 max-w-md mx-auto",
|
|
2513
|
-
columns === 2 && "grid-cols-1 md:grid-cols-2",
|
|
2514
|
-
columns === 3 && "grid-cols-1 md:grid-cols-2 lg:grid-cols-3",
|
|
2515
|
-
columns === 4 && "grid-cols-1 md:grid-cols-2 lg:grid-cols-4",
|
|
2516
|
-
className
|
|
2517
|
-
),
|
|
2518
|
-
children: features.map((feature, index) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(FeatureCard, { ...feature }, index))
|
|
2519
|
-
}
|
|
2520
|
-
);
|
|
2521
|
-
}
|
|
2522
|
-
);
|
|
2523
|
-
FeatureCards.displayName = "FeatureCards";
|
|
2524
|
-
|
|
2525
2099
|
// src/components/hero-block/HeroBlock.tsx
|
|
2526
|
-
var
|
|
2527
|
-
var
|
|
2528
|
-
var
|
|
2529
|
-
var heroBlockVariants = (0,
|
|
2100
|
+
var React30 = __toESM(require("react"), 1);
|
|
2101
|
+
var import_class_variance_authority18 = require("class-variance-authority");
|
|
2102
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
2103
|
+
var heroBlockVariants = (0, import_class_variance_authority18.cva)(
|
|
2530
2104
|
"relative overflow-hidden min-h-[40dvh] flex items-center py-fluid-2xl",
|
|
2531
2105
|
{
|
|
2532
2106
|
variants: {
|
|
@@ -2546,7 +2120,7 @@ var heroBlockVariants = (0, import_class_variance_authority21.cva)(
|
|
|
2546
2120
|
}
|
|
2547
2121
|
}
|
|
2548
2122
|
);
|
|
2549
|
-
var HeroBlock =
|
|
2123
|
+
var HeroBlock = React30.forwardRef(
|
|
2550
2124
|
({
|
|
2551
2125
|
className,
|
|
2552
2126
|
variant,
|
|
@@ -2558,26 +2132,26 @@ var HeroBlock = React35.forwardRef(
|
|
|
2558
2132
|
actions,
|
|
2559
2133
|
...props
|
|
2560
2134
|
}, ref) => {
|
|
2561
|
-
return /* @__PURE__ */ (0,
|
|
2135
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2562
2136
|
"div",
|
|
2563
2137
|
{
|
|
2564
2138
|
ref,
|
|
2565
2139
|
className: cn(heroBlockVariants({ variant, withPattern }), className),
|
|
2566
2140
|
...props,
|
|
2567
|
-
children: /* @__PURE__ */ (0,
|
|
2568
|
-
tagline && /* @__PURE__ */ (0,
|
|
2141
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "mx-auto px-4 sm:px-6 lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: "mx-auto text-center max-w-4xl", children: [
|
|
2142
|
+
tagline && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2569
2143
|
Badge,
|
|
2570
2144
|
{
|
|
2571
2145
|
variant: "default",
|
|
2572
|
-
icon: TaglineIcon ? /* @__PURE__ */ (0,
|
|
2146
|
+
icon: TaglineIcon ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Icon2, { icon: TaglineIcon, size: 16 }) : void 0,
|
|
2573
2147
|
iconGap: 2,
|
|
2574
2148
|
className: "mb-fluid-md",
|
|
2575
2149
|
children: tagline
|
|
2576
2150
|
}
|
|
2577
2151
|
),
|
|
2578
|
-
/* @__PURE__ */ (0,
|
|
2579
|
-
/* @__PURE__ */ (0,
|
|
2580
|
-
actions && /* @__PURE__ */ (0,
|
|
2152
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Typography, { variant: "h1", className: "mb-fluid-md", children: title }),
|
|
2153
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Typography, { variant: "h3", color: "muted", className: "mb-fluid-lg", children: description }),
|
|
2154
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: "flex flex-wrap gap-fluid-md justify-center", children: actions })
|
|
2581
2155
|
] }) })
|
|
2582
2156
|
}
|
|
2583
2157
|
);
|
|
@@ -2587,104 +2161,19 @@ HeroBlock.displayName = "HeroBlock";
|
|
|
2587
2161
|
|
|
2588
2162
|
// src/components/code-block/CodeBlock.tsx
|
|
2589
2163
|
var import_react2 = require("react");
|
|
2590
|
-
var
|
|
2164
|
+
var import_lucide_react7 = require("lucide-react");
|
|
2591
2165
|
|
|
2592
2166
|
// src/lib/shiki.ts
|
|
2593
|
-
var
|
|
2167
|
+
var import_core2 = require("shiki/core");
|
|
2594
2168
|
var import_oniguruma = require("shiki/engine/oniguruma");
|
|
2595
2169
|
|
|
2596
2170
|
// src/lib/shiki-theme.ts
|
|
2597
|
-
var
|
|
2171
|
+
var import_core = require("shiki/core");
|
|
2172
|
+
var bergetShikiTheme = (0, import_core.createCssVariablesTheme)({
|
|
2598
2173
|
name: "berget",
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
"editor.foreground": "#e7e0d9"
|
|
2603
|
-
},
|
|
2604
|
-
settings: [
|
|
2605
|
-
{
|
|
2606
|
-
settings: {
|
|
2607
|
-
foreground: "#e7e0d9"
|
|
2608
|
-
// sandstone-100
|
|
2609
|
-
}
|
|
2610
|
-
},
|
|
2611
|
-
{
|
|
2612
|
-
scope: ["comment", "punctuation.definition.comment"],
|
|
2613
|
-
settings: {
|
|
2614
|
-
foreground: "#b4b0ad",
|
|
2615
|
-
fontStyle: "italic"
|
|
2616
|
-
}
|
|
2617
|
-
},
|
|
2618
|
-
{
|
|
2619
|
-
scope: ["keyword", "keyword.control", "keyword.operator.new", "storage", "storage.type"],
|
|
2620
|
-
settings: {
|
|
2621
|
-
foreground: "#57a57f"
|
|
2622
|
-
// moss-400
|
|
2623
|
-
}
|
|
2624
|
-
},
|
|
2625
|
-
{
|
|
2626
|
-
scope: ["string", "string.quoted", "string.template"],
|
|
2627
|
-
settings: {
|
|
2628
|
-
foreground: "#86c0a2"
|
|
2629
|
-
// moss-300
|
|
2630
|
-
}
|
|
2631
|
-
},
|
|
2632
|
-
{
|
|
2633
|
-
scope: ["entity.name.function", "support.function", "meta.function-call"],
|
|
2634
|
-
settings: {
|
|
2635
|
-
foreground: "#5b9ac1"
|
|
2636
|
-
// fjord-400
|
|
2637
|
-
}
|
|
2638
|
-
},
|
|
2639
|
-
{
|
|
2640
|
-
scope: ["entity.name.type", "entity.name.class", "support.type", "support.class"],
|
|
2641
|
-
settings: {
|
|
2642
|
-
foreground: "#e3a500"
|
|
2643
|
-
// chanterelle-300
|
|
2644
|
-
}
|
|
2645
|
-
},
|
|
2646
|
-
{
|
|
2647
|
-
scope: ["constant.numeric", "constant.language"],
|
|
2648
|
-
settings: {
|
|
2649
|
-
foreground: "#86c0a2"
|
|
2650
|
-
// moss-300
|
|
2651
|
-
}
|
|
2652
|
-
},
|
|
2653
|
-
{
|
|
2654
|
-
scope: ["variable", "variable.other"],
|
|
2655
|
-
settings: {
|
|
2656
|
-
foreground: "#e7e0d9"
|
|
2657
|
-
// sandstone-100
|
|
2658
|
-
}
|
|
2659
|
-
},
|
|
2660
|
-
{
|
|
2661
|
-
scope: ["variable.parameter"],
|
|
2662
|
-
settings: {
|
|
2663
|
-
foreground: "#e7e0d9e6"
|
|
2664
|
-
}
|
|
2665
|
-
},
|
|
2666
|
-
{
|
|
2667
|
-
scope: ["punctuation", "keyword.operator", "keyword.operator.assignment"],
|
|
2668
|
-
settings: {
|
|
2669
|
-
foreground: "#e7e0d9b3"
|
|
2670
|
-
}
|
|
2671
|
-
},
|
|
2672
|
-
{
|
|
2673
|
-
scope: ["entity.name.tag", "support.type.property-name"],
|
|
2674
|
-
settings: {
|
|
2675
|
-
foreground: "#57a57f"
|
|
2676
|
-
// moss-400 (for YAML keys, HTML tags)
|
|
2677
|
-
}
|
|
2678
|
-
},
|
|
2679
|
-
{
|
|
2680
|
-
scope: ["meta.object-literal.key"],
|
|
2681
|
-
settings: {
|
|
2682
|
-
foreground: "#5b9ac1"
|
|
2683
|
-
// fjord-400
|
|
2684
|
-
}
|
|
2685
|
-
}
|
|
2686
|
-
]
|
|
2687
|
-
};
|
|
2174
|
+
variablePrefix: "--berget-shiki-",
|
|
2175
|
+
fontStyle: true
|
|
2176
|
+
});
|
|
2688
2177
|
|
|
2689
2178
|
// src/lib/shiki.ts
|
|
2690
2179
|
var defaultLanguages = [
|
|
@@ -2703,7 +2192,7 @@ var defaultLanguages = [
|
|
|
2703
2192
|
var highlighterPromise = null;
|
|
2704
2193
|
function getHighlighter() {
|
|
2705
2194
|
if (!highlighterPromise) {
|
|
2706
|
-
highlighterPromise = (0,
|
|
2195
|
+
highlighterPromise = (0, import_core2.createHighlighterCore)({
|
|
2707
2196
|
themes: [bergetShikiTheme],
|
|
2708
2197
|
langs: defaultLanguages,
|
|
2709
2198
|
engine: (0, import_oniguruma.createOnigurumaEngine)(import("shiki/wasm"))
|
|
@@ -2713,7 +2202,7 @@ function getHighlighter() {
|
|
|
2713
2202
|
}
|
|
2714
2203
|
|
|
2715
2204
|
// src/components/code-block/CodeBlock.tsx
|
|
2716
|
-
var
|
|
2205
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
2717
2206
|
function CodeBlock({ code, language = "text", title, className }) {
|
|
2718
2207
|
const [html, setHtml] = (0, import_react2.useState)(null);
|
|
2719
2208
|
const [copied, setCopied] = (0, import_react2.useState)(false);
|
|
@@ -2729,16 +2218,16 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2729
2218
|
setCopied(true);
|
|
2730
2219
|
setTimeout(() => setCopied(false), 2e3);
|
|
2731
2220
|
}, [code]);
|
|
2732
|
-
const copyButton = /* @__PURE__ */ (0,
|
|
2221
|
+
const copyButton = /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2733
2222
|
"button",
|
|
2734
2223
|
{
|
|
2735
2224
|
onClick: handleCopy,
|
|
2736
2225
|
className: "flex items-center justify-center w-6 h-6 text-berget-muted-foreground hover:text-berget-foreground transition-colors",
|
|
2737
2226
|
"aria-label": "Copy code",
|
|
2738
|
-
children: copied ? /* @__PURE__ */ (0,
|
|
2227
|
+
children: copied ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react7.Check, { className: "w-3.5 h-3.5" }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_lucide_react7.Copy, { className: "w-3.5 h-3.5" })
|
|
2739
2228
|
}
|
|
2740
2229
|
);
|
|
2741
|
-
return /* @__PURE__ */ (0,
|
|
2230
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
2742
2231
|
"div",
|
|
2743
2232
|
{
|
|
2744
2233
|
className: cn(
|
|
@@ -2746,19 +2235,72 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2746
2235
|
className
|
|
2747
2236
|
),
|
|
2748
2237
|
children: [
|
|
2749
|
-
title && /* @__PURE__ */ (0,
|
|
2750
|
-
/* @__PURE__ */ (0,
|
|
2751
|
-
html ? /* @__PURE__ */ (0,
|
|
2238
|
+
title && /* @__PURE__ */ (0, import_jsx_runtime33.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_runtime33.jsx)("span", { className: "text-berget-muted-foreground", children: title }) }),
|
|
2239
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "absolute right-2 top-2 z-10", children: copyButton }),
|
|
2240
|
+
html ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2752
2241
|
"div",
|
|
2753
2242
|
{
|
|
2754
2243
|
className: "[&_.shiki]:!p-4 [&_.shiki]:!m-0 [&_.shiki]:overflow-x-auto [&_.shiki]:!text-sm [&_.shiki]:!leading-relaxed [&_.shiki]:bg-transparent",
|
|
2755
2244
|
dangerouslySetInnerHTML: { __html: html }
|
|
2756
2245
|
}
|
|
2757
|
-
) : /* @__PURE__ */ (0,
|
|
2246
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("pre", { className: "!p-4 !m-0 overflow-x-auto !text-sm !leading-relaxed text-berget-muted-foreground", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("code", { children: code }) })
|
|
2758
2247
|
]
|
|
2759
2248
|
}
|
|
2760
2249
|
);
|
|
2761
2250
|
}
|
|
2251
|
+
|
|
2252
|
+
// src/components/window-frame/WindowFrame.tsx
|
|
2253
|
+
var React31 = __toESM(require("react"), 1);
|
|
2254
|
+
var import_react3 = require("react");
|
|
2255
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2256
|
+
var WindowFrame = React31.forwardRef(
|
|
2257
|
+
({ title = "window", tabs, activeTab, onTabChange, children, className, ...props }, ref) => {
|
|
2258
|
+
const [internalActive, setInternalActive] = (0, import_react3.useState)(tabs?.[0]?.id ?? "");
|
|
2259
|
+
const currentTab = activeTab ?? internalActive;
|
|
2260
|
+
const handleTabChange = (id) => {
|
|
2261
|
+
if (onTabChange) {
|
|
2262
|
+
onTabChange(id);
|
|
2263
|
+
} else {
|
|
2264
|
+
setInternalActive(id);
|
|
2265
|
+
}
|
|
2266
|
+
};
|
|
2267
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
|
|
2268
|
+
"div",
|
|
2269
|
+
{
|
|
2270
|
+
ref,
|
|
2271
|
+
className: cn(
|
|
2272
|
+
"rounded-berget-sm overflow-hidden shadow-berget-md border border-berget-brand-granite-700 bg-berget-brand-granite-800",
|
|
2273
|
+
className
|
|
2274
|
+
),
|
|
2275
|
+
...props,
|
|
2276
|
+
children: [
|
|
2277
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.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: [
|
|
2278
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
|
|
2279
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#FF5F56]" }),
|
|
2280
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#FFBD2E]" }),
|
|
2281
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "w-3 h-3 rounded-full bg-[#27C93F]" })
|
|
2282
|
+
] }),
|
|
2283
|
+
tabs && tabs.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "ml-4 flex items-center gap-1", children: tabs.map((tab) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
2284
|
+
"button",
|
|
2285
|
+
{
|
|
2286
|
+
type: "button",
|
|
2287
|
+
onClick: () => handleTabChange(tab.id),
|
|
2288
|
+
className: cn(
|
|
2289
|
+
"px-3 py-1 text-sm transition-colors cursor-pointer",
|
|
2290
|
+
currentTab === tab.id ? "rounded-lg bg-white/10 text-berget-foreground font-medium" : "rounded text-berget-muted-foreground hover:text-berget-foreground font-medium"
|
|
2291
|
+
),
|
|
2292
|
+
children: tab.label
|
|
2293
|
+
},
|
|
2294
|
+
tab.id
|
|
2295
|
+
)) }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "ml-4 text-sm font-mono text-berget-brand-moss-400", children: title })
|
|
2296
|
+
] }),
|
|
2297
|
+
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { children })
|
|
2298
|
+
]
|
|
2299
|
+
}
|
|
2300
|
+
);
|
|
2301
|
+
}
|
|
2302
|
+
);
|
|
2303
|
+
WindowFrame.displayName = "WindowFrame";
|
|
2762
2304
|
// Annotate the CommonJS export names for ESM import in node:
|
|
2763
2305
|
0 && (module.exports = {
|
|
2764
2306
|
Alert,
|
|
@@ -2766,8 +2308,6 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2766
2308
|
AlertTitle,
|
|
2767
2309
|
Badge,
|
|
2768
2310
|
BergetLogo,
|
|
2769
|
-
BergetLogotype,
|
|
2770
|
-
BergetSymbol,
|
|
2771
2311
|
Box,
|
|
2772
2312
|
Button,
|
|
2773
2313
|
Card,
|
|
@@ -2779,8 +2319,6 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2779
2319
|
Checkbox,
|
|
2780
2320
|
CodeBlock,
|
|
2781
2321
|
Container,
|
|
2782
|
-
FeatureCard,
|
|
2783
|
-
FeatureCards,
|
|
2784
2322
|
FeatureList,
|
|
2785
2323
|
Field,
|
|
2786
2324
|
FieldContent,
|
|
@@ -2793,7 +2331,6 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2793
2331
|
FieldSet,
|
|
2794
2332
|
FieldTitle,
|
|
2795
2333
|
Grid,
|
|
2796
|
-
Header,
|
|
2797
2334
|
HeroBlock,
|
|
2798
2335
|
Icon,
|
|
2799
2336
|
Input,
|
|
@@ -2803,14 +2340,13 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2803
2340
|
List,
|
|
2804
2341
|
ListHeader,
|
|
2805
2342
|
ListItem,
|
|
2806
|
-
Section,
|
|
2807
|
-
SectionHeader,
|
|
2808
2343
|
Select,
|
|
2809
2344
|
Switch,
|
|
2810
2345
|
TextArea,
|
|
2811
2346
|
ThemeProvider,
|
|
2812
2347
|
ThemeToggle,
|
|
2813
2348
|
Typography,
|
|
2349
|
+
WindowFrame,
|
|
2814
2350
|
alertVariants,
|
|
2815
2351
|
badgeVariants,
|
|
2816
2352
|
boxVariants,
|
|
@@ -2820,7 +2356,6 @@ function CodeBlock({ code, language = "text", title, className }) {
|
|
|
2820
2356
|
containerVariants,
|
|
2821
2357
|
gridVariants,
|
|
2822
2358
|
linkVariants,
|
|
2823
|
-
sectionVariants,
|
|
2824
2359
|
selectVariants,
|
|
2825
2360
|
switchRootVariants,
|
|
2826
2361
|
switchThumbVariants,
|