@planetaexo/design-system 0.79.0 → 0.88.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/dist/index.cjs +312 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +83 -3
- package/dist/index.d.ts +83 -3
- package/dist/index.js +311 -18
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -15163,7 +15163,7 @@ var VARIANT2 = {
|
|
|
15163
15163
|
heading: "text-foreground",
|
|
15164
15164
|
body: "text-foreground/75",
|
|
15165
15165
|
muted: "text-foreground/60",
|
|
15166
|
-
link: "
|
|
15166
|
+
link: "rounded-full px-3 py-1.5 -ml-3 transition-colors text-foreground/85 hover:bg-primary hover:text-white",
|
|
15167
15167
|
badgeStroke: "text-foreground/80",
|
|
15168
15168
|
/** Inverts white logos so they read on the light background. */
|
|
15169
15169
|
badgeFilter: "[filter:invert(1)_brightness(0.2)]",
|
|
@@ -15180,7 +15180,7 @@ var VARIANT2 = {
|
|
|
15180
15180
|
heading: "text-white",
|
|
15181
15181
|
body: "text-white/75",
|
|
15182
15182
|
muted: "text-white/55",
|
|
15183
|
-
link: "
|
|
15183
|
+
link: "rounded-full px-3 py-1.5 -ml-3 transition-colors text-white/85 hover:bg-primary hover:text-white",
|
|
15184
15184
|
badgeStroke: "text-white",
|
|
15185
15185
|
badgeFilter: "",
|
|
15186
15186
|
socialBtn: "bg-white/10 text-white hover:bg-primary-400 hover:text-primary-900",
|
|
@@ -15390,8 +15390,8 @@ function SiteFooter({
|
|
|
15390
15390
|
title: "Basecamp S\xE3o Paulo",
|
|
15391
15391
|
lines: ["Av. Paulista, 1234", "01310-100 S\xE3o Paulo \xB7 Brasil"]
|
|
15392
15392
|
},
|
|
15393
|
-
phone
|
|
15394
|
-
email
|
|
15393
|
+
phone,
|
|
15394
|
+
email,
|
|
15395
15395
|
socials = DEFAULT_FOOTER_SOCIALS,
|
|
15396
15396
|
themesTitle = "Temas",
|
|
15397
15397
|
themes = DEFAULT_FOOTER_THEMES,
|
|
@@ -15400,11 +15400,7 @@ function SiteFooter({
|
|
|
15400
15400
|
destinationsMore = { label: "Ver todos os destinos", href: "#" },
|
|
15401
15401
|
pagesTitle = "P\xE1ginas",
|
|
15402
15402
|
pages = DEFAULT_FOOTER_PAGES,
|
|
15403
|
-
cta
|
|
15404
|
-
title: "Colaborar?",
|
|
15405
|
-
label: "parceiros@planetaexo.com",
|
|
15406
|
-
href: "mailto:parceiros@planetaexo.com"
|
|
15407
|
-
},
|
|
15403
|
+
cta,
|
|
15408
15404
|
copyright,
|
|
15409
15405
|
legalLinks = DEFAULT_FOOTER_LEGAL,
|
|
15410
15406
|
className
|
|
@@ -15504,22 +15500,22 @@ function SiteFooter({
|
|
|
15504
15500
|
] }),
|
|
15505
15501
|
themes.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "lg:col-span-3", children: [
|
|
15506
15502
|
/* @__PURE__ */ jsxRuntime.jsx(ColumnHeading, { className: t.heading, children: themesTitle }),
|
|
15507
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-
|
|
15503
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-0.5", children: themes.map((c) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
15508
15504
|
"a",
|
|
15509
15505
|
{
|
|
15510
15506
|
href: c.href,
|
|
15511
|
-
className: cn("text-sm font-ui font-bold", t.link),
|
|
15507
|
+
className: cn("inline-block text-sm font-ui font-bold", t.link),
|
|
15512
15508
|
children: c.label
|
|
15513
15509
|
}
|
|
15514
15510
|
) }, c.label)) })
|
|
15515
15511
|
] }),
|
|
15516
15512
|
destinations.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "lg:col-span-3", children: [
|
|
15517
15513
|
/* @__PURE__ */ jsxRuntime.jsx(ColumnHeading, { className: t.heading, children: destinationsTitle }),
|
|
15518
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-
|
|
15514
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-0.5", children: destinations.map((c) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
15519
15515
|
"a",
|
|
15520
15516
|
{
|
|
15521
15517
|
href: c.href,
|
|
15522
|
-
className: cn("text-sm font-ui font-bold", t.link),
|
|
15518
|
+
className: cn("inline-block text-sm font-ui font-bold", t.link),
|
|
15523
15519
|
children: c.label
|
|
15524
15520
|
}
|
|
15525
15521
|
) }, c.label)) }),
|
|
@@ -15541,11 +15537,11 @@ function SiteFooter({
|
|
|
15541
15537
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "lg:col-span-2 space-y-8", children: [
|
|
15542
15538
|
pages.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
15543
15539
|
/* @__PURE__ */ jsxRuntime.jsx(ColumnHeading, { className: t.heading, children: pagesTitle }),
|
|
15544
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-
|
|
15540
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "space-y-0.5", children: pages.map((p) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
15545
15541
|
"a",
|
|
15546
15542
|
{
|
|
15547
15543
|
href: p.href,
|
|
15548
|
-
className: cn("text-sm font-ui font-bold", t.link),
|
|
15544
|
+
className: cn("inline-block text-sm font-ui font-bold", t.link),
|
|
15549
15545
|
children: p.label
|
|
15550
15546
|
}
|
|
15551
15547
|
) }, p.label)) })
|
|
@@ -15684,6 +15680,7 @@ function TripPage({
|
|
|
15684
15680
|
perPersonLabel,
|
|
15685
15681
|
siteHeader,
|
|
15686
15682
|
footerBadges,
|
|
15683
|
+
footer,
|
|
15687
15684
|
uiVariant = "v1",
|
|
15688
15685
|
features,
|
|
15689
15686
|
className
|
|
@@ -16318,7 +16315,7 @@ function TripPage({
|
|
|
16318
16315
|
}
|
|
16319
16316
|
) }),
|
|
16320
16317
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-20 lg:hidden" }),
|
|
16321
|
-
/* @__PURE__ */ jsxRuntime.jsx(SiteFooter, { badges: footerBadges })
|
|
16318
|
+
/* @__PURE__ */ jsxRuntime.jsx(SiteFooter, __spreadValues({ badges: footerBadges }, footer))
|
|
16322
16319
|
]
|
|
16323
16320
|
}
|
|
16324
16321
|
)
|
|
@@ -16382,6 +16379,7 @@ function CategoryPage2({
|
|
|
16382
16379
|
cardLabels,
|
|
16383
16380
|
filterLabels,
|
|
16384
16381
|
footerBadges,
|
|
16382
|
+
footer,
|
|
16385
16383
|
className
|
|
16386
16384
|
}) {
|
|
16387
16385
|
var _a;
|
|
@@ -16714,7 +16712,7 @@ function CategoryPage2({
|
|
|
16714
16712
|
) })
|
|
16715
16713
|
] });
|
|
16716
16714
|
})(),
|
|
16717
|
-
/* @__PURE__ */ jsxRuntime.jsx(SiteFooter, { badges: footerBadges })
|
|
16715
|
+
/* @__PURE__ */ jsxRuntime.jsx(SiteFooter, __spreadValues({ badges: footerBadges }, footer))
|
|
16718
16716
|
] });
|
|
16719
16717
|
}
|
|
16720
16718
|
var sizeConfig3 = {
|
|
@@ -19416,6 +19414,159 @@ function USPBand({
|
|
|
19416
19414
|
}
|
|
19417
19415
|
);
|
|
19418
19416
|
}
|
|
19417
|
+
var TONES = {
|
|
19418
|
+
light: {
|
|
19419
|
+
bg: "#faf7f1",
|
|
19420
|
+
vars: {
|
|
19421
|
+
"--ps-eyebrow": "#1a5f56",
|
|
19422
|
+
"--ps-head": "#2e2d2c",
|
|
19423
|
+
"--ps-sub": "#74726e",
|
|
19424
|
+
"--ps-chip-bd": "#ccd2d0",
|
|
19425
|
+
"--ps-chip-fg": "#2e2d2c",
|
|
19426
|
+
"--ps-chip-hover-bg": "#1a5f56",
|
|
19427
|
+
"--ps-chip-hover-fg": "#ffffff",
|
|
19428
|
+
"--ps-feat-bg": "#1a5f56",
|
|
19429
|
+
"--ps-feat-fg": "#ffffff",
|
|
19430
|
+
"--ps-feat-hover-bg": "#0d3832"
|
|
19431
|
+
}
|
|
19432
|
+
},
|
|
19433
|
+
dark: {
|
|
19434
|
+
bg: "#14352e",
|
|
19435
|
+
vars: {
|
|
19436
|
+
"--ps-eyebrow": "#a7e8c4",
|
|
19437
|
+
"--ps-head": "#f4f1e9",
|
|
19438
|
+
"--ps-sub": "rgba(244,241,233,.7)",
|
|
19439
|
+
"--ps-chip-bd": "rgba(244,241,233,.22)",
|
|
19440
|
+
"--ps-chip-fg": "#f4f1e9",
|
|
19441
|
+
"--ps-chip-hover-bg": "#f4f1e9",
|
|
19442
|
+
"--ps-chip-hover-fg": "#14352e",
|
|
19443
|
+
"--ps-feat-bg": "#bff0d6",
|
|
19444
|
+
"--ps-feat-fg": "#08231e",
|
|
19445
|
+
"--ps-feat-hover-bg": "#a7e8c4"
|
|
19446
|
+
}
|
|
19447
|
+
}
|
|
19448
|
+
};
|
|
19449
|
+
var SIZES = {
|
|
19450
|
+
md: {
|
|
19451
|
+
pad: "py-20 sm:py-28",
|
|
19452
|
+
heading: "text-2xl sm:text-3xl lg:text-4xl",
|
|
19453
|
+
chip: "px-3 py-1 text-xs sm:px-5 sm:py-2.5 sm:text-sm",
|
|
19454
|
+
gap: "gap-1.5 sm:gap-2.5",
|
|
19455
|
+
chipsMt: "mt-6 sm:mt-9"
|
|
19456
|
+
},
|
|
19457
|
+
sm: {
|
|
19458
|
+
pad: "py-16 sm:py-24",
|
|
19459
|
+
heading: "text-xl sm:text-2xl lg:text-3xl",
|
|
19460
|
+
chip: "px-2.5 py-1 text-[11px] sm:px-3.5 sm:py-1.5 sm:text-[13px]",
|
|
19461
|
+
gap: "gap-1.5 sm:gap-2",
|
|
19462
|
+
chipsMt: "mt-5 sm:mt-7"
|
|
19463
|
+
}
|
|
19464
|
+
};
|
|
19465
|
+
var SCOPED_CSS = `
|
|
19466
|
+
.ps-chip{border:1px solid var(--ps-chip-bd);background:transparent;color:var(--ps-chip-fg);text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}
|
|
19467
|
+
.ps-chip:hover{background:var(--ps-chip-hover-bg);border-color:var(--ps-chip-hover-bg);color:var(--ps-chip-hover-fg)}
|
|
19468
|
+
.ps-chip[data-featured="true"]{background:var(--ps-feat-bg);border-color:var(--ps-feat-bg);color:var(--ps-feat-fg)}
|
|
19469
|
+
.ps-chip[data-featured="true"]:hover{background:var(--ps-feat-hover-bg);border-color:var(--ps-feat-hover-bg)}
|
|
19470
|
+
`;
|
|
19471
|
+
function PopularSearches({
|
|
19472
|
+
eyebrow,
|
|
19473
|
+
title,
|
|
19474
|
+
subtitle,
|
|
19475
|
+
chips,
|
|
19476
|
+
tone = "light",
|
|
19477
|
+
size = "md",
|
|
19478
|
+
align = "center",
|
|
19479
|
+
className
|
|
19480
|
+
}) {
|
|
19481
|
+
const t = TONES[tone];
|
|
19482
|
+
const s = SIZES[size];
|
|
19483
|
+
const centered = align === "center";
|
|
19484
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
19485
|
+
"section",
|
|
19486
|
+
{
|
|
19487
|
+
className: cn("ps-root w-full", className),
|
|
19488
|
+
style: __spreadValues({ backgroundColor: t.bg }, t.vars),
|
|
19489
|
+
children: [
|
|
19490
|
+
/* @__PURE__ */ jsxRuntime.jsx("style", { dangerouslySetInnerHTML: { __html: SCOPED_CSS } }),
|
|
19491
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
19492
|
+
"div",
|
|
19493
|
+
{
|
|
19494
|
+
className: cn(
|
|
19495
|
+
"mx-auto w-full max-w-6xl px-6 sm:px-8",
|
|
19496
|
+
s.pad,
|
|
19497
|
+
centered && "text-center"
|
|
19498
|
+
),
|
|
19499
|
+
children: [
|
|
19500
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("max-w-2xl", centered && "mx-auto"), children: [
|
|
19501
|
+
eyebrow && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19502
|
+
"p",
|
|
19503
|
+
{
|
|
19504
|
+
className: "mb-3 font-ui text-xs font-bold uppercase tracking-[0.24em]",
|
|
19505
|
+
style: { color: "var(--ps-eyebrow)" },
|
|
19506
|
+
children: eyebrow
|
|
19507
|
+
}
|
|
19508
|
+
),
|
|
19509
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
19510
|
+
"h2",
|
|
19511
|
+
{
|
|
19512
|
+
className: cn(
|
|
19513
|
+
"font-heading font-black uppercase leading-[1.05]",
|
|
19514
|
+
s.heading
|
|
19515
|
+
),
|
|
19516
|
+
style: { color: "var(--ps-head)" },
|
|
19517
|
+
children: title
|
|
19518
|
+
}
|
|
19519
|
+
),
|
|
19520
|
+
subtitle && /* @__PURE__ */ jsxRuntime.jsx(
|
|
19521
|
+
"p",
|
|
19522
|
+
{
|
|
19523
|
+
className: cn("mt-3 max-w-[46ch] text-base", centered && "mx-auto"),
|
|
19524
|
+
style: { color: "var(--ps-sub)" },
|
|
19525
|
+
children: subtitle
|
|
19526
|
+
}
|
|
19527
|
+
)
|
|
19528
|
+
] }),
|
|
19529
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
19530
|
+
"div",
|
|
19531
|
+
{
|
|
19532
|
+
className: cn(
|
|
19533
|
+
"flex max-w-4xl flex-wrap items-center",
|
|
19534
|
+
s.gap,
|
|
19535
|
+
s.chipsMt,
|
|
19536
|
+
centered ? "mx-auto justify-center" : "justify-start"
|
|
19537
|
+
),
|
|
19538
|
+
children: chips.map((chip, i) => {
|
|
19539
|
+
const className2 = "ps-chip inline-flex items-center rounded-full font-ui font-bold " + s.chip;
|
|
19540
|
+
const inner = chip.label;
|
|
19541
|
+
return chip.href ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
19542
|
+
"a",
|
|
19543
|
+
{
|
|
19544
|
+
href: chip.href,
|
|
19545
|
+
onClick: chip.onClick,
|
|
19546
|
+
"data-featured": chip.featured ? "true" : void 0,
|
|
19547
|
+
className: className2,
|
|
19548
|
+
children: inner
|
|
19549
|
+
},
|
|
19550
|
+
i
|
|
19551
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
19552
|
+
"span",
|
|
19553
|
+
{
|
|
19554
|
+
"data-featured": chip.featured ? "true" : void 0,
|
|
19555
|
+
className: className2,
|
|
19556
|
+
children: inner
|
|
19557
|
+
},
|
|
19558
|
+
i
|
|
19559
|
+
);
|
|
19560
|
+
})
|
|
19561
|
+
}
|
|
19562
|
+
)
|
|
19563
|
+
]
|
|
19564
|
+
}
|
|
19565
|
+
)
|
|
19566
|
+
]
|
|
19567
|
+
}
|
|
19568
|
+
);
|
|
19569
|
+
}
|
|
19419
19570
|
function RotatingSubtitle({
|
|
19420
19571
|
phrases,
|
|
19421
19572
|
interval,
|
|
@@ -19919,6 +20070,148 @@ function NewHome({
|
|
|
19919
20070
|
footer && /* @__PURE__ */ jsxRuntime.jsx(SiteFooter, __spreadValues({}, footer))
|
|
19920
20071
|
] });
|
|
19921
20072
|
}
|
|
20073
|
+
var SURFACE_PRIMARY_9002 = "bg-[oklch(0.27_0.040_179)]";
|
|
20074
|
+
function TrustpilotStar({
|
|
20075
|
+
filled,
|
|
20076
|
+
className
|
|
20077
|
+
}) {
|
|
20078
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("svg", { viewBox: "0 0 24 24", className, "aria-hidden": true, children: [
|
|
20079
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { width: "24", height: "24", fill: filled ? "#00b67a" : "#dcdce6" }),
|
|
20080
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
20081
|
+
"path",
|
|
20082
|
+
{
|
|
20083
|
+
fill: "#ffffff",
|
|
20084
|
+
d: "m12 2 3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14l-5-4.87 6.91-1.01L12 2z"
|
|
20085
|
+
}
|
|
20086
|
+
)
|
|
20087
|
+
] });
|
|
20088
|
+
}
|
|
20089
|
+
function TrustpilotStars({
|
|
20090
|
+
stars = 5,
|
|
20091
|
+
className = "h-7 w-7"
|
|
20092
|
+
}) {
|
|
20093
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
20094
|
+
"div",
|
|
20095
|
+
{
|
|
20096
|
+
className: "flex items-center gap-1",
|
|
20097
|
+
"aria-label": `${stars} out of 5 stars`,
|
|
20098
|
+
children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
20099
|
+
TrustpilotStar,
|
|
20100
|
+
{
|
|
20101
|
+
filled: i + 1 <= Math.round(stars),
|
|
20102
|
+
className
|
|
20103
|
+
},
|
|
20104
|
+
i
|
|
20105
|
+
))
|
|
20106
|
+
}
|
|
20107
|
+
);
|
|
20108
|
+
}
|
|
20109
|
+
function ReviewsSpotlight({
|
|
20110
|
+
eyebrow,
|
|
20111
|
+
title,
|
|
20112
|
+
link,
|
|
20113
|
+
items,
|
|
20114
|
+
intervalMs = 7e3,
|
|
20115
|
+
className
|
|
20116
|
+
}) {
|
|
20117
|
+
const [index, setIndex] = React20__namespace.useState(0);
|
|
20118
|
+
const [visible, setVisible] = React20__namespace.useState(true);
|
|
20119
|
+
const reduced = React20__namespace.useRef(false);
|
|
20120
|
+
const swapRef = React20__namespace.useRef(null);
|
|
20121
|
+
React20__namespace.useEffect(() => {
|
|
20122
|
+
var _a;
|
|
20123
|
+
const mq = window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
20124
|
+
reduced.current = mq.matches;
|
|
20125
|
+
const onChange = () => {
|
|
20126
|
+
reduced.current = mq.matches;
|
|
20127
|
+
};
|
|
20128
|
+
(_a = mq.addEventListener) == null ? void 0 : _a.call(mq, "change", onChange);
|
|
20129
|
+
return () => {
|
|
20130
|
+
var _a2;
|
|
20131
|
+
return (_a2 = mq.removeEventListener) == null ? void 0 : _a2.call(mq, "change", onChange);
|
|
20132
|
+
};
|
|
20133
|
+
}, []);
|
|
20134
|
+
const goTo = React20__namespace.useCallback((resolve) => {
|
|
20135
|
+
if (reduced.current) {
|
|
20136
|
+
setIndex((i) => resolve(i));
|
|
20137
|
+
return;
|
|
20138
|
+
}
|
|
20139
|
+
setVisible(false);
|
|
20140
|
+
swapRef.current = setTimeout(() => {
|
|
20141
|
+
setIndex((i) => resolve(i));
|
|
20142
|
+
setVisible(true);
|
|
20143
|
+
}, 260);
|
|
20144
|
+
}, []);
|
|
20145
|
+
React20__namespace.useEffect(() => {
|
|
20146
|
+
if (items.length <= 1 || intervalMs <= 0) return;
|
|
20147
|
+
const id = setInterval(() => {
|
|
20148
|
+
if (!reduced.current) goTo((i) => (i + 1) % items.length);
|
|
20149
|
+
}, intervalMs);
|
|
20150
|
+
return () => {
|
|
20151
|
+
clearInterval(id);
|
|
20152
|
+
if (swapRef.current) clearTimeout(swapRef.current);
|
|
20153
|
+
};
|
|
20154
|
+
}, [items.length, intervalMs, goTo]);
|
|
20155
|
+
if (!items.length) return null;
|
|
20156
|
+
const safe = Math.min(index, items.length - 1);
|
|
20157
|
+
const review = items[safe];
|
|
20158
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
20159
|
+
"section",
|
|
20160
|
+
{
|
|
20161
|
+
className: cn(SURFACE_PRIMARY_9002, "py-24 text-white sm:py-32", className),
|
|
20162
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mx-auto w-full max-w-3xl px-6 text-center sm:px-8", children: [
|
|
20163
|
+
eyebrow && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-ui text-xs font-bold uppercase tracking-[0.22em] text-primary", children: eyebrow }),
|
|
20164
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "sr-only", children: title }),
|
|
20165
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
20166
|
+
"div",
|
|
20167
|
+
{
|
|
20168
|
+
className: cn(
|
|
20169
|
+
"transition-opacity duration-300",
|
|
20170
|
+
visible ? "opacity-100" : "opacity-0"
|
|
20171
|
+
),
|
|
20172
|
+
children: [
|
|
20173
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-8 flex justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(TrustpilotStars, { stars: review.stars, className: "h-7 w-7" }) }),
|
|
20174
|
+
/* @__PURE__ */ jsxRuntime.jsxs("blockquote", { className: "mx-auto mt-8 max-w-[20ch] font-sans text-3xl font-normal italic leading-[1.3] text-white sm:text-4xl", children: [
|
|
20175
|
+
"\u201C",
|
|
20176
|
+
review.quote,
|
|
20177
|
+
"\u201D"
|
|
20178
|
+
] }),
|
|
20179
|
+
(review.author || review.location) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-6", children: [
|
|
20180
|
+
review.author && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-ui text-base font-bold tracking-wide text-white", children: review.author }),
|
|
20181
|
+
review.location && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-1 font-sans text-sm text-white/55", children: review.location })
|
|
20182
|
+
] })
|
|
20183
|
+
]
|
|
20184
|
+
}
|
|
20185
|
+
),
|
|
20186
|
+
items.length > 1 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-10 flex justify-center gap-2.5", children: items.map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
20187
|
+
"button",
|
|
20188
|
+
{
|
|
20189
|
+
type: "button",
|
|
20190
|
+
"aria-label": `Show review ${i + 1} of ${items.length}`,
|
|
20191
|
+
"aria-current": i === safe,
|
|
20192
|
+
onClick: () => goTo(() => i),
|
|
20193
|
+
className: cn(
|
|
20194
|
+
"h-2 w-2 rounded-full transition-colors",
|
|
20195
|
+
i === safe ? "bg-primary" : "bg-white/25 hover:bg-white/45"
|
|
20196
|
+
)
|
|
20197
|
+
},
|
|
20198
|
+
i
|
|
20199
|
+
)) }),
|
|
20200
|
+
link && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
20201
|
+
"a",
|
|
20202
|
+
{
|
|
20203
|
+
href: link.href,
|
|
20204
|
+
className: "group mt-10 inline-flex items-center gap-1.5 font-ui text-sm font-bold text-primary transition-colors hover:text-primary-800",
|
|
20205
|
+
children: [
|
|
20206
|
+
link.label,
|
|
20207
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.ArrowRightIcon, { className: "h-4 w-4 transition-transform group-hover:translate-x-1" })
|
|
20208
|
+
]
|
|
20209
|
+
}
|
|
20210
|
+
)
|
|
20211
|
+
] })
|
|
20212
|
+
}
|
|
20213
|
+
);
|
|
20214
|
+
}
|
|
19922
20215
|
var ACTIVE_PILL = "bg-primary text-white shadow-sm";
|
|
19923
20216
|
var VARIANT3 = {
|
|
19924
20217
|
black: {
|
|
@@ -20111,6 +20404,7 @@ exports.PhoneCountrySelect = PhoneCountrySelect;
|
|
|
20111
20404
|
exports.PhotoGallery = PhotoGallery;
|
|
20112
20405
|
exports.PhotoTourProvider = PhotoTourProvider;
|
|
20113
20406
|
exports.Picture = Picture;
|
|
20407
|
+
exports.PopularSearches = PopularSearches;
|
|
20114
20408
|
exports.PriceProgress = PriceProgress;
|
|
20115
20409
|
exports.PricingMatrixCard = PricingMatrixCard;
|
|
20116
20410
|
exports.PricingTrip = PricingTrip;
|
|
@@ -20119,6 +20413,7 @@ exports.RegistrationProgressBar = RegistrationProgressBar;
|
|
|
20119
20413
|
exports.RegistrationReminderEmail = RegistrationReminderEmail;
|
|
20120
20414
|
exports.RegistrationReminderIndividualEmail = RegistrationReminderIndividualEmail;
|
|
20121
20415
|
exports.RegistrationSuccessCard = RegistrationSuccessCard;
|
|
20416
|
+
exports.ReviewsSpotlight = ReviewsSpotlight;
|
|
20122
20417
|
exports.SegmentedControl = SegmentedControl;
|
|
20123
20418
|
exports.ShareWidget = ShareWidget;
|
|
20124
20419
|
exports.SiteFooter = SiteFooter;
|