@harshit-wander/component-lib 1.0.0 → 1.1.0
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/LICENSE +21 -21
- package/README.md +154 -154
- package/dist/index.cjs +205 -198
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +205 -198
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +25 -22
package/dist/index.js
CHANGED
|
@@ -276,33 +276,50 @@ EventBanner.displayName = "EventBanner";
|
|
|
276
276
|
var frameClass2 = "block w-full h-[300px] overflow-hidden rounded-md no-underline text-inherit focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2";
|
|
277
277
|
var videoClass = "block w-full h-full object-cover";
|
|
278
278
|
var EventVideoBanner = forwardRef(
|
|
279
|
-
({ posterUrl, videoUrl, alt, href, className, ...rest }, ref) =>
|
|
280
|
-
|
|
281
|
-
{
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
"
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
279
|
+
({ posterUrl, videoUrl, alt, href, className, ...rest }, ref) => {
|
|
280
|
+
const videoRef = useRef(null);
|
|
281
|
+
useEffect(() => {
|
|
282
|
+
const video = videoRef.current;
|
|
283
|
+
if (!video || !videoUrl) return;
|
|
284
|
+
if (!videoUrl.includes(".m3u8")) {
|
|
285
|
+
video.src = videoUrl;
|
|
286
|
+
return;
|
|
287
|
+
}
|
|
288
|
+
if (video.canPlayType("application/vnd.apple.mpegurl")) {
|
|
289
|
+
video.src = videoUrl;
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
let cancelled = false;
|
|
293
|
+
import('hls.js').then(({ default: Hls }) => {
|
|
294
|
+
if (cancelled || !Hls.isSupported()) return;
|
|
295
|
+
const hls = new Hls({ autoStartLoad: true, startLevel: -1 });
|
|
296
|
+
hls.loadSource(videoUrl);
|
|
297
|
+
hls.attachMedia(video);
|
|
298
|
+
video._hls = hls;
|
|
299
|
+
});
|
|
300
|
+
return () => {
|
|
301
|
+
cancelled = true;
|
|
302
|
+
const stored = video._hls;
|
|
303
|
+
stored?.destroy();
|
|
304
|
+
};
|
|
305
|
+
}, [videoUrl]);
|
|
306
|
+
const videoEl = /* @__PURE__ */ jsx(
|
|
307
|
+
"video",
|
|
308
|
+
{
|
|
309
|
+
ref: videoRef,
|
|
310
|
+
src: videoUrl?.includes(".m3u8") ? void 0 : videoUrl,
|
|
311
|
+
poster: posterUrl,
|
|
312
|
+
"aria-label": alt,
|
|
313
|
+
muted: true,
|
|
314
|
+
autoPlay: true,
|
|
315
|
+
loop: true,
|
|
316
|
+
playsInline: true,
|
|
317
|
+
preload: "metadata",
|
|
318
|
+
className: videoClass
|
|
319
|
+
}
|
|
320
|
+
);
|
|
321
|
+
return /* @__PURE__ */ jsx("div", { ref, className: cn("shrink-0 w-full snap-start", className), ...rest, children: href ? /* @__PURE__ */ jsx("a", { href, className: frameClass2, children: videoEl }) : /* @__PURE__ */ jsx("div", { className: frameClass2, children: videoEl }) });
|
|
322
|
+
}
|
|
306
323
|
);
|
|
307
324
|
EventVideoBanner.displayName = "EventVideoBanner";
|
|
308
325
|
var ExpandableValueCard = forwardRef(
|
|
@@ -1319,7 +1336,35 @@ var CategoryNavbar = forwardRef(
|
|
|
1319
1336
|
onMouseEnter: () => openCategory(index),
|
|
1320
1337
|
onMouseLeave: scheduleCloseCategory,
|
|
1321
1338
|
children: [
|
|
1322
|
-
/* @__PURE__ */ jsxs(
|
|
1339
|
+
category.href ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1340
|
+
/* @__PURE__ */ jsxs(Link, { href: category.href, className: categoryTriggerClass, children: [
|
|
1341
|
+
/* @__PURE__ */ jsx("span", { children: category.label }),
|
|
1342
|
+
category.badge ? /* @__PURE__ */ jsx("span", { className: "inline-flex items-center ml-xs", children: category.badge }) : null
|
|
1343
|
+
] }),
|
|
1344
|
+
/* @__PURE__ */ jsx(
|
|
1345
|
+
"button",
|
|
1346
|
+
{
|
|
1347
|
+
type: "button",
|
|
1348
|
+
"aria-expanded": isOpen,
|
|
1349
|
+
"aria-controls": itemPanelId,
|
|
1350
|
+
"aria-label": `Open ${category.label} menu`,
|
|
1351
|
+
onClick: () => openCategory(index),
|
|
1352
|
+
onFocus: () => openCategory(index),
|
|
1353
|
+
className: "inline-flex items-center justify-center p-0 bg-transparent border-none text-inherit cursor-pointer focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2 focus-visible:rounded-sm",
|
|
1354
|
+
children: /* @__PURE__ */ jsx(
|
|
1355
|
+
"span",
|
|
1356
|
+
{
|
|
1357
|
+
"aria-hidden": "true",
|
|
1358
|
+
className: cn(
|
|
1359
|
+
"inline-flex items-center justify-center w-4 h-4 transition-transform duration-200 ease-in",
|
|
1360
|
+
isOpen ? "rotate-180" : "rotate-0"
|
|
1361
|
+
),
|
|
1362
|
+
children: /* @__PURE__ */ jsx(ChevronSvg2, {})
|
|
1363
|
+
}
|
|
1364
|
+
)
|
|
1365
|
+
}
|
|
1366
|
+
)
|
|
1367
|
+
] }) : /* @__PURE__ */ jsxs(
|
|
1323
1368
|
"button",
|
|
1324
1369
|
{
|
|
1325
1370
|
type: "button",
|
|
@@ -1429,7 +1474,7 @@ var ContactSection = forwardRef(
|
|
|
1429
1474
|
ref,
|
|
1430
1475
|
className: cn(
|
|
1431
1476
|
"flex w-full justify-center",
|
|
1432
|
-
"lg:items-center lg:justify-between lg:gap-xl lg:py-xl lg:
|
|
1477
|
+
"lg:items-center lg:justify-between lg:gap-xl lg:py-xl lg:bg-primary lg:rounded-lg lg:shadow-card",
|
|
1433
1478
|
className
|
|
1434
1479
|
),
|
|
1435
1480
|
...rest,
|
|
@@ -1468,39 +1513,31 @@ var CtaBanner = forwardRef(
|
|
|
1468
1513
|
}
|
|
1469
1514
|
cta.onClick?.();
|
|
1470
1515
|
};
|
|
1471
|
-
return /* @__PURE__ */ jsx(
|
|
1472
|
-
"
|
|
1516
|
+
return /* @__PURE__ */ jsx("section", { ref, className: cn("flex justify-center bg-surface", className), ...rest, children: /* @__PURE__ */ jsx(
|
|
1517
|
+
"div",
|
|
1473
1518
|
{
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
]
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
onClick: handleCtaClick,
|
|
1495
|
-
className: "inline-flex items-center justify-center self-start h-11 px-xl bg-accent text-secondary border-none rounded-md font-[inherit] text-button cursor-pointer shadow-[inset_0_0_6px_rgba(0,0,0,0.14)] transition-colors duration-150 ease-in hover:bg-accent-hover focus-visible:outline-2 focus-visible:outline-white focus-visible:outline-offset-2",
|
|
1496
|
-
children: cta.label
|
|
1497
|
-
}
|
|
1498
|
-
)
|
|
1499
|
-
] })
|
|
1500
|
-
}
|
|
1501
|
-
)
|
|
1519
|
+
className: "relative flex items-center w-full min-h-[300px] pl-[50px] rounded-md bg-cover bg-center overflow-hidden max-md:px-lg",
|
|
1520
|
+
style: {
|
|
1521
|
+
backgroundColor: backgroundColor ?? "var(--color-primary)",
|
|
1522
|
+
backgroundImage: backgroundImage ? `url(${backgroundImage})` : void 0
|
|
1523
|
+
},
|
|
1524
|
+
children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-xl max-w-[550px]", children: [
|
|
1525
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-xs text-white", children: [
|
|
1526
|
+
/* @__PURE__ */ jsx("h2", { className: "m-0 text-xl font-semibold leading-button", children: title }),
|
|
1527
|
+
subtitle ? /* @__PURE__ */ jsx("p", { className: "m-0 text-sm font-medium leading-body", children: subtitle }) : null
|
|
1528
|
+
] }),
|
|
1529
|
+
/* @__PURE__ */ jsx(
|
|
1530
|
+
"button",
|
|
1531
|
+
{
|
|
1532
|
+
type: "button",
|
|
1533
|
+
onClick: handleCtaClick,
|
|
1534
|
+
className: "inline-flex items-center justify-center self-start h-11 px-xl bg-accent text-secondary border-none rounded-md font-[inherit] text-button cursor-pointer shadow-[inset_0_0_6px_rgba(0,0,0,0.14)] transition-colors duration-150 ease-in hover:bg-accent-hover focus-visible:outline-2 focus-visible:outline-white focus-visible:outline-offset-2",
|
|
1535
|
+
children: cta.label
|
|
1536
|
+
}
|
|
1537
|
+
)
|
|
1538
|
+
] })
|
|
1502
1539
|
}
|
|
1503
|
-
);
|
|
1540
|
+
) });
|
|
1504
1541
|
}
|
|
1505
1542
|
);
|
|
1506
1543
|
CtaBanner.displayName = "CtaBanner";
|
|
@@ -1509,39 +1546,31 @@ var DestinationsSection = forwardRef(
|
|
|
1509
1546
|
const half = Math.ceil(destinations.length / 2);
|
|
1510
1547
|
const firstRow = destinations.slice(0, half);
|
|
1511
1548
|
const secondRow = destinations.slice(half);
|
|
1512
|
-
return /* @__PURE__ */ jsxs(
|
|
1513
|
-
"
|
|
1514
|
-
{
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
href: destination.href
|
|
1538
|
-
},
|
|
1539
|
-
`r2-${destination.label}`
|
|
1540
|
-
)) }) : null
|
|
1541
|
-
] })
|
|
1542
|
-
]
|
|
1543
|
-
}
|
|
1544
|
-
);
|
|
1549
|
+
return /* @__PURE__ */ jsxs("section", { ref, className: cn("flex flex-col gap-lg bg-surface", className), ...rest, children: [
|
|
1550
|
+
/* @__PURE__ */ jsx("h2", { className: "m-0 text-xl font-semibold leading-heading text-secondary", children: heading2 }),
|
|
1551
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-md overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden", children: [
|
|
1552
|
+
/* @__PURE__ */ jsx("div", { className: "flex gap-md w-max", children: firstRow.map((destination) => /* @__PURE__ */ jsx(
|
|
1553
|
+
DestinationCard,
|
|
1554
|
+
{
|
|
1555
|
+
image: destination.image,
|
|
1556
|
+
alt: destination.alt,
|
|
1557
|
+
label: destination.label,
|
|
1558
|
+
href: destination.href
|
|
1559
|
+
},
|
|
1560
|
+
`r1-${destination.label}`
|
|
1561
|
+
)) }),
|
|
1562
|
+
secondRow.length > 0 ? /* @__PURE__ */ jsx("div", { className: "flex gap-md w-max", children: secondRow.map((destination) => /* @__PURE__ */ jsx(
|
|
1563
|
+
DestinationCard,
|
|
1564
|
+
{
|
|
1565
|
+
image: destination.image,
|
|
1566
|
+
alt: destination.alt,
|
|
1567
|
+
label: destination.label,
|
|
1568
|
+
href: destination.href
|
|
1569
|
+
},
|
|
1570
|
+
`r2-${destination.label}`
|
|
1571
|
+
)) }) : null
|
|
1572
|
+
] })
|
|
1573
|
+
] });
|
|
1545
1574
|
}
|
|
1546
1575
|
);
|
|
1547
1576
|
DestinationsSection.displayName = "DestinationsSection";
|
|
@@ -1625,10 +1654,7 @@ var EventCarousel = forwardRef(
|
|
|
1625
1654
|
"section",
|
|
1626
1655
|
{
|
|
1627
1656
|
ref,
|
|
1628
|
-
className: cn(
|
|
1629
|
-
"relative flex flex-col items-center gap-md px-[80px] bg-surface max-md:px-md",
|
|
1630
|
-
className
|
|
1631
|
-
),
|
|
1657
|
+
className: cn("relative flex flex-col items-center gap-md bg-surface", className),
|
|
1632
1658
|
...rest,
|
|
1633
1659
|
children: [
|
|
1634
1660
|
/* @__PURE__ */ jsx(
|
|
@@ -1684,7 +1710,7 @@ var EventCarousel = forwardRef(
|
|
|
1684
1710
|
onClick: scrollPrev,
|
|
1685
1711
|
disabled: !canPrev,
|
|
1686
1712
|
"aria-label": variant === "video" ? "Previous video" : "Previous event",
|
|
1687
|
-
className: cn(arrowBase, "left-
|
|
1713
|
+
className: cn(arrowBase, "left-2"),
|
|
1688
1714
|
children: /* @__PURE__ */ jsx(ChevronLeft, {})
|
|
1689
1715
|
}
|
|
1690
1716
|
),
|
|
@@ -1695,7 +1721,7 @@ var EventCarousel = forwardRef(
|
|
|
1695
1721
|
onClick: scrollNext,
|
|
1696
1722
|
disabled: !canNext,
|
|
1697
1723
|
"aria-label": variant === "video" ? "Next video" : "Next event",
|
|
1698
|
-
className: cn(arrowBase, "right-
|
|
1724
|
+
className: cn(arrowBase, "right-2"),
|
|
1699
1725
|
children: /* @__PURE__ */ jsx(ChevronRight, {})
|
|
1700
1726
|
}
|
|
1701
1727
|
)
|
|
@@ -1706,7 +1732,7 @@ var EventCarousel = forwardRef(
|
|
|
1706
1732
|
);
|
|
1707
1733
|
EventCarousel.displayName = "EventCarousel";
|
|
1708
1734
|
var ExploreSection = forwardRef(
|
|
1709
|
-
({ heading: heading2, items, className, ...rest }, ref) => /* @__PURE__ */ jsxs("section", { ref, className: cn("flex flex-col gap-lg
|
|
1735
|
+
({ heading: heading2, items, className, ...rest }, ref) => /* @__PURE__ */ jsxs("section", { ref, className: cn("flex flex-col gap-lg bg-surface", className), ...rest, children: [
|
|
1710
1736
|
/* @__PURE__ */ jsx("h2", { className: "m-0 text-xl font-semibold leading-heading text-secondary", children: heading2 }),
|
|
1711
1737
|
/* @__PURE__ */ jsx("div", { className: "flex gap-md overflow-x-auto snap-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden", children: items.map((item) => /* @__PURE__ */ jsx(
|
|
1712
1738
|
ExploreCard,
|
|
@@ -1974,10 +2000,7 @@ var GallerySection = forwardRef(
|
|
|
1974
2000
|
"section",
|
|
1975
2001
|
{
|
|
1976
2002
|
ref,
|
|
1977
|
-
className: cn(
|
|
1978
|
-
"relative flex flex-col items-center gap-lg px-[80px] bg-surface max-md:px-md",
|
|
1979
|
-
className
|
|
1980
|
-
),
|
|
2003
|
+
className: cn("relative flex flex-col items-center gap-lg bg-surface", className),
|
|
1981
2004
|
...rest,
|
|
1982
2005
|
children: [
|
|
1983
2006
|
/* @__PURE__ */ jsx(SectionHeader, { heading: heading2, subheading, align: "center" }),
|
|
@@ -2394,10 +2417,7 @@ var PackagesCarousel = forwardRef(
|
|
|
2394
2417
|
"section",
|
|
2395
2418
|
{
|
|
2396
2419
|
ref,
|
|
2397
|
-
className: cn(
|
|
2398
|
-
"flex flex-col items-center gap-xl px-[80px] bg-surface max-md:px-md",
|
|
2399
|
-
className
|
|
2400
|
-
),
|
|
2420
|
+
className: cn("flex flex-col items-center gap-xl bg-surface", className),
|
|
2401
2421
|
...rest,
|
|
2402
2422
|
children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-xl w-full", children: [
|
|
2403
2423
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-lg", children: [
|
|
@@ -2579,10 +2599,7 @@ var TestimonialsCarousel = forwardRef(
|
|
|
2579
2599
|
"section",
|
|
2580
2600
|
{
|
|
2581
2601
|
ref,
|
|
2582
|
-
className: cn(
|
|
2583
|
-
"flex flex-col items-center gap-[28px] px-[80px] bg-surface max-md:px-md",
|
|
2584
|
-
className
|
|
2585
|
-
),
|
|
2602
|
+
className: cn("flex flex-col items-center gap-[28px] bg-surface", className),
|
|
2586
2603
|
...rest,
|
|
2587
2604
|
children: [
|
|
2588
2605
|
/* @__PURE__ */ jsx(
|
|
@@ -2707,92 +2724,84 @@ var TripsCategorySection = forwardRef(
|
|
|
2707
2724
|
cta.onClick?.();
|
|
2708
2725
|
};
|
|
2709
2726
|
const progressWidth = Math.min(33 + scrollProgress * (120 - 33), 120);
|
|
2710
|
-
return /* @__PURE__ */ jsxs(
|
|
2711
|
-
"
|
|
2712
|
-
|
|
2713
|
-
|
|
2714
|
-
|
|
2715
|
-
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
)
|
|
2745
|
-
|
|
2746
|
-
"div",
|
|
2747
|
-
{
|
|
2748
|
-
ref: trackRef,
|
|
2749
|
-
className: "flex gap-sm overflow-x-auto snap-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
|
|
2750
|
-
children: trips.map((trip) => /* @__PURE__ */ jsx(
|
|
2751
|
-
TripCategoryCard,
|
|
2752
|
-
{
|
|
2753
|
-
image: trip.image,
|
|
2754
|
-
alt: trip.alt,
|
|
2755
|
-
destination: trip.destination,
|
|
2756
|
-
startingPrice: trip.startingPrice,
|
|
2757
|
-
href: trip.href
|
|
2758
|
-
},
|
|
2759
|
-
`${trip.image}|${trip.destination}`
|
|
2760
|
-
))
|
|
2761
|
-
}
|
|
2762
|
-
),
|
|
2763
|
-
/* @__PURE__ */ jsx(
|
|
2764
|
-
"button",
|
|
2727
|
+
return /* @__PURE__ */ jsxs("section", { ref, className: cn("relative flex flex-col bg-surface", className), ...rest, children: [
|
|
2728
|
+
/* @__PURE__ */ jsxs("div", { className: "relative h-[318px] rounded-lg overflow-hidden max-md:h-[260px]", children: [
|
|
2729
|
+
/* @__PURE__ */ jsx("div", { className: "absolute inset-0 [&>img]:w-full [&>img]:h-full [&>img]:object-cover [&>video]:w-full [&>video]:h-full [&>video]:object-cover", children: /* @__PURE__ */ jsx("video", { autoPlay: true, muted: true, loop: true, playsInline: true, poster, src: videoSrc }) }),
|
|
2730
|
+
/* @__PURE__ */ jsxs("div", { className: "absolute inset-0 flex flex-col justify-center gap-lg p-[44px] text-on-image [text-shadow:0px_6px_24px_rgba(0,0,0,0.16)]", children: [
|
|
2731
|
+
/* @__PURE__ */ jsx("h2", { className: "m-0 text-hero-title max-w-[436px]", children: title }),
|
|
2732
|
+
/* @__PURE__ */ jsx("p", { className: "m-0 text-xs font-bold leading-5", children: description2 }),
|
|
2733
|
+
/* @__PURE__ */ jsx(
|
|
2734
|
+
"button",
|
|
2735
|
+
{
|
|
2736
|
+
type: "button",
|
|
2737
|
+
onClick: handleCtaClick,
|
|
2738
|
+
className: "inline-flex items-center justify-center self-start h-11 px-xl bg-accent text-secondary border-none rounded-md font-[inherit] text-button cursor-pointer shadow-[inset_0_0_6px_rgba(0,0,0,0.14)] transition-colors duration-150 ease-in hover:bg-accent-hover focus-visible:outline-2 focus-visible:outline-white focus-visible:outline-offset-2",
|
|
2739
|
+
children: cta.label
|
|
2740
|
+
}
|
|
2741
|
+
)
|
|
2742
|
+
] })
|
|
2743
|
+
] }),
|
|
2744
|
+
/* @__PURE__ */ jsxs("div", { className: "relative -mt-[68px] py-sm px-[25px]", children: [
|
|
2745
|
+
/* @__PURE__ */ jsx(
|
|
2746
|
+
"button",
|
|
2747
|
+
{
|
|
2748
|
+
type: "button",
|
|
2749
|
+
onClick: scrollPrev,
|
|
2750
|
+
disabled: !canPrev,
|
|
2751
|
+
"aria-label": "Previous trips",
|
|
2752
|
+
className: cn(arrowBase4, "left-2"),
|
|
2753
|
+
children: /* @__PURE__ */ jsx(ChevronLeft5, {})
|
|
2754
|
+
}
|
|
2755
|
+
),
|
|
2756
|
+
/* @__PURE__ */ jsx(
|
|
2757
|
+
"div",
|
|
2758
|
+
{
|
|
2759
|
+
ref: trackRef,
|
|
2760
|
+
className: "flex gap-sm overflow-x-auto snap-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
|
|
2761
|
+
children: trips.map((trip) => /* @__PURE__ */ jsx(
|
|
2762
|
+
TripCategoryCard,
|
|
2765
2763
|
{
|
|
2766
|
-
|
|
2767
|
-
|
|
2768
|
-
|
|
2769
|
-
|
|
2770
|
-
|
|
2771
|
-
|
|
2772
|
-
}
|
|
2773
|
-
)
|
|
2774
|
-
|
|
2775
|
-
|
|
2764
|
+
image: trip.image,
|
|
2765
|
+
alt: trip.alt,
|
|
2766
|
+
destination: trip.destination,
|
|
2767
|
+
startingPrice: trip.startingPrice,
|
|
2768
|
+
href: trip.href
|
|
2769
|
+
},
|
|
2770
|
+
`${trip.image}|${trip.destination}`
|
|
2771
|
+
))
|
|
2772
|
+
}
|
|
2773
|
+
),
|
|
2774
|
+
/* @__PURE__ */ jsx(
|
|
2775
|
+
"button",
|
|
2776
|
+
{
|
|
2777
|
+
type: "button",
|
|
2778
|
+
onClick: scrollNext,
|
|
2779
|
+
disabled: !canNext,
|
|
2780
|
+
"aria-label": "Next trips",
|
|
2781
|
+
className: cn(arrowBase4, "right-2"),
|
|
2782
|
+
children: /* @__PURE__ */ jsx(ChevronRight5, {})
|
|
2783
|
+
}
|
|
2784
|
+
),
|
|
2785
|
+
/* @__PURE__ */ jsx(
|
|
2786
|
+
"div",
|
|
2787
|
+
{
|
|
2788
|
+
role: "progressbar",
|
|
2789
|
+
"aria-valuenow": Math.round(scrollProgress * 100),
|
|
2790
|
+
"aria-valuemin": 0,
|
|
2791
|
+
"aria-valuemax": 100,
|
|
2792
|
+
"aria-label": "Scroll position",
|
|
2793
|
+
className: "relative w-[120px] h-[6px] mt-md mx-auto bg-track rounded-[32px] overflow-hidden",
|
|
2794
|
+
children: /* @__PURE__ */ jsx(
|
|
2795
|
+
"span",
|
|
2776
2796
|
{
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
"aria-valuemin": 0,
|
|
2780
|
-
"aria-valuemax": 100,
|
|
2781
|
-
"aria-label": "Scroll position",
|
|
2782
|
-
className: "relative w-[120px] h-[6px] mt-md mx-auto bg-track rounded-[32px] overflow-hidden",
|
|
2783
|
-
children: /* @__PURE__ */ jsx(
|
|
2784
|
-
"span",
|
|
2785
|
-
{
|
|
2786
|
-
className: "absolute top-0 left-0 h-full bg-primary rounded-[32px] transition-[width] duration-200 ease-in",
|
|
2787
|
-
style: { width: `${progressWidth}px` }
|
|
2788
|
-
}
|
|
2789
|
-
)
|
|
2797
|
+
className: "absolute top-0 left-0 h-full bg-primary rounded-[32px] transition-[width] duration-200 ease-in",
|
|
2798
|
+
style: { width: `${progressWidth}px` }
|
|
2790
2799
|
}
|
|
2791
2800
|
)
|
|
2792
|
-
|
|
2793
|
-
|
|
2794
|
-
}
|
|
2795
|
-
);
|
|
2801
|
+
}
|
|
2802
|
+
)
|
|
2803
|
+
] })
|
|
2804
|
+
] });
|
|
2796
2805
|
}
|
|
2797
2806
|
);
|
|
2798
2807
|
TripsCategorySection.displayName = "TripsCategorySection";
|
|
@@ -2848,11 +2857,9 @@ var WhyChooseSection = forwardRef(
|
|
|
2848
2857
|
ref,
|
|
2849
2858
|
className: cn(
|
|
2850
2859
|
// Mobile (default)
|
|
2851
|
-
"flex flex-col items-center gap-lg
|
|
2860
|
+
"flex flex-col items-center gap-lg bg-surface",
|
|
2852
2861
|
// Tablet
|
|
2853
|
-
"md:gap-xl
|
|
2854
|
-
// Desktop
|
|
2855
|
-
"lg:px-[80px]",
|
|
2862
|
+
"md:gap-xl",
|
|
2856
2863
|
className
|
|
2857
2864
|
),
|
|
2858
2865
|
...rest,
|