@planetaexo/design-system 0.80.0 → 0.89.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 +164 -23
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +55 -3
- package/dist/index.d.ts +55 -3
- package/dist/index.js +164 -24
- 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 = {
|
|
@@ -19452,16 +19450,16 @@ var SIZES = {
|
|
|
19452
19450
|
md: {
|
|
19453
19451
|
pad: "py-20 sm:py-28",
|
|
19454
19452
|
heading: "text-2xl sm:text-3xl lg:text-4xl",
|
|
19455
|
-
chip: "px-5 py-2.5 text-sm",
|
|
19456
|
-
gap: "gap-2.5",
|
|
19457
|
-
chipsMt: "mt-9"
|
|
19453
|
+
chip: "px-4 py-2 text-[13px] sm:px-5 sm:py-2.5 sm:text-sm",
|
|
19454
|
+
gap: "gap-2 sm:gap-2.5",
|
|
19455
|
+
chipsMt: "mt-6 sm:mt-9"
|
|
19458
19456
|
},
|
|
19459
19457
|
sm: {
|
|
19460
19458
|
pad: "py-16 sm:py-24",
|
|
19461
19459
|
heading: "text-xl sm:text-2xl lg:text-3xl",
|
|
19462
|
-
chip: "px-3.5 py-1.5 text-[13px]",
|
|
19463
|
-
gap: "gap-2",
|
|
19464
|
-
chipsMt: "mt-7"
|
|
19460
|
+
chip: "px-3.5 py-1.5 text-xs 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"
|
|
19465
19463
|
}
|
|
19466
19464
|
};
|
|
19467
19465
|
var SCOPED_CSS = `
|
|
@@ -20072,6 +20070,148 @@ function NewHome({
|
|
|
20072
20070
|
footer && /* @__PURE__ */ jsxRuntime.jsx(SiteFooter, __spreadValues({}, footer))
|
|
20073
20071
|
] });
|
|
20074
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
|
+
}
|
|
20075
20215
|
var ACTIVE_PILL = "bg-primary text-white shadow-sm";
|
|
20076
20216
|
var VARIANT3 = {
|
|
20077
20217
|
black: {
|
|
@@ -20273,6 +20413,7 @@ exports.RegistrationProgressBar = RegistrationProgressBar;
|
|
|
20273
20413
|
exports.RegistrationReminderEmail = RegistrationReminderEmail;
|
|
20274
20414
|
exports.RegistrationReminderIndividualEmail = RegistrationReminderIndividualEmail;
|
|
20275
20415
|
exports.RegistrationSuccessCard = RegistrationSuccessCard;
|
|
20416
|
+
exports.ReviewsSpotlight = ReviewsSpotlight;
|
|
20276
20417
|
exports.SegmentedControl = SegmentedControl;
|
|
20277
20418
|
exports.ShareWidget = ShareWidget;
|
|
20278
20419
|
exports.SiteFooter = SiteFooter;
|