@planetaexo/design-system 0.59.0 → 0.59.2
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 +34 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +17 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +34 -7
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -628,6 +628,15 @@ interface BookingDetailsLabels {
|
|
|
628
628
|
adventuresSection?: (count: number) => string;
|
|
629
629
|
/** "Travellers" — header de cada AdventureSection. */
|
|
630
630
|
travellersSection?: string;
|
|
631
|
+
/** "Accommodations" — header do bloco de quartos da aventura. Default "ACCOMMODATIONS". */
|
|
632
|
+
accommodationsHeading?: string;
|
|
633
|
+
/** Labels localizados para o chip de bedArrangement (DOUBLE/TWIN/SINGLE/TRIPLE). */
|
|
634
|
+
bedArrangementLabels?: {
|
|
635
|
+
DOUBLE?: string;
|
|
636
|
+
TWIN?: string;
|
|
637
|
+
SINGLE?: string;
|
|
638
|
+
TRIPLE?: string;
|
|
639
|
+
};
|
|
631
640
|
/** Botão "Add contact as traveller" / "Add contact". */
|
|
632
641
|
addContactAsTraveller?: string;
|
|
633
642
|
addContactAsTravellerShort?: string;
|
|
@@ -736,6 +745,10 @@ interface BookingAdventure {
|
|
|
736
745
|
seniors?: number;
|
|
737
746
|
};
|
|
738
747
|
tags?: string[];
|
|
748
|
+
/** Quartos selecionados para esta aventura (catalogo Accommodation->Room).
|
|
749
|
+
* Quando presente e nao-vazio, renderiza bloco "ACCOMMODATIONS" abaixo do
|
|
750
|
+
* accordion de details (paridade visual com BookingAdventureCard). */
|
|
751
|
+
rooms?: AccommodationRoomItem[];
|
|
739
752
|
travellers: BookingTraveller[];
|
|
740
753
|
description?: string;
|
|
741
754
|
/** Conteúdo rico de itinerário (HTML / ReactNode). Quando presente, substitui `description`
|
|
@@ -1037,6 +1050,10 @@ interface ConfirmationAdventure {
|
|
|
1037
1050
|
lineItems?: ConfirmationLineItem[];
|
|
1038
1051
|
subtotal?: string;
|
|
1039
1052
|
travellers?: ConfirmationTraveller[];
|
|
1053
|
+
/** Quartos selecionados para esta aventura (catalogo Accommodation->Room).
|
|
1054
|
+
* Quando presente e nao-vazio, BookingAdventureCard renderiza o bloco
|
|
1055
|
+
* "ACCOMMODATIONS" entre details e prices. */
|
|
1056
|
+
rooms?: AccommodationRoomItem[];
|
|
1040
1057
|
}
|
|
1041
1058
|
interface ConfirmationDepositInfo {
|
|
1042
1059
|
depositPercent: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -628,6 +628,15 @@ interface BookingDetailsLabels {
|
|
|
628
628
|
adventuresSection?: (count: number) => string;
|
|
629
629
|
/** "Travellers" — header de cada AdventureSection. */
|
|
630
630
|
travellersSection?: string;
|
|
631
|
+
/** "Accommodations" — header do bloco de quartos da aventura. Default "ACCOMMODATIONS". */
|
|
632
|
+
accommodationsHeading?: string;
|
|
633
|
+
/** Labels localizados para o chip de bedArrangement (DOUBLE/TWIN/SINGLE/TRIPLE). */
|
|
634
|
+
bedArrangementLabels?: {
|
|
635
|
+
DOUBLE?: string;
|
|
636
|
+
TWIN?: string;
|
|
637
|
+
SINGLE?: string;
|
|
638
|
+
TRIPLE?: string;
|
|
639
|
+
};
|
|
631
640
|
/** Botão "Add contact as traveller" / "Add contact". */
|
|
632
641
|
addContactAsTraveller?: string;
|
|
633
642
|
addContactAsTravellerShort?: string;
|
|
@@ -736,6 +745,10 @@ interface BookingAdventure {
|
|
|
736
745
|
seniors?: number;
|
|
737
746
|
};
|
|
738
747
|
tags?: string[];
|
|
748
|
+
/** Quartos selecionados para esta aventura (catalogo Accommodation->Room).
|
|
749
|
+
* Quando presente e nao-vazio, renderiza bloco "ACCOMMODATIONS" abaixo do
|
|
750
|
+
* accordion de details (paridade visual com BookingAdventureCard). */
|
|
751
|
+
rooms?: AccommodationRoomItem[];
|
|
739
752
|
travellers: BookingTraveller[];
|
|
740
753
|
description?: string;
|
|
741
754
|
/** Conteúdo rico de itinerário (HTML / ReactNode). Quando presente, substitui `description`
|
|
@@ -1037,6 +1050,10 @@ interface ConfirmationAdventure {
|
|
|
1037
1050
|
lineItems?: ConfirmationLineItem[];
|
|
1038
1051
|
subtotal?: string;
|
|
1039
1052
|
travellers?: ConfirmationTraveller[];
|
|
1053
|
+
/** Quartos selecionados para esta aventura (catalogo Accommodation->Room).
|
|
1054
|
+
* Quando presente e nao-vazio, BookingAdventureCard renderiza o bloco
|
|
1055
|
+
* "ACCOMMODATIONS" entre details e prices. */
|
|
1056
|
+
rooms?: AccommodationRoomItem[];
|
|
1040
1057
|
}
|
|
1041
1058
|
interface ConfirmationDepositInfo {
|
|
1042
1059
|
depositPercent: number;
|
package/dist/index.js
CHANGED
|
@@ -2728,7 +2728,7 @@ function AdventureSection({
|
|
|
2728
2728
|
cannotRemoveLastTravellerLabel,
|
|
2729
2729
|
labels
|
|
2730
2730
|
}) {
|
|
2731
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
2731
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s;
|
|
2732
2732
|
const [detailsOpen, setDetailsOpen] = React31.useState(false);
|
|
2733
2733
|
const handleCopyUrl = (url) => {
|
|
2734
2734
|
if (onCopyFormLink) {
|
|
@@ -2863,10 +2863,36 @@ function AdventureSection({
|
|
|
2863
2863
|
)) })
|
|
2864
2864
|
] })
|
|
2865
2865
|
] }),
|
|
2866
|
+
adventure.rooms && adventure.rooms.length > 0 && /* @__PURE__ */ jsxs("div", { className: "border-t border-border px-5 lg:px-6 py-5 flex flex-col gap-3", children: [
|
|
2867
|
+
/* @__PURE__ */ jsx("h4", { className: "text-xs font-bold text-muted-foreground font-heading uppercase tracking-widest", children: (_l = labels == null ? void 0 : labels.accommodationsHeading) != null ? _l : "ACCOMMODATIONS" }),
|
|
2868
|
+
/* @__PURE__ */ jsx("div", { className: "flex flex-col gap-3", children: adventure.rooms.map((room, i) => {
|
|
2869
|
+
var _a2, _b2;
|
|
2870
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-3", children: [
|
|
2871
|
+
room.imageUrl && // eslint-disable-next-line @next/next/no-img-element
|
|
2872
|
+
/* @__PURE__ */ jsx(
|
|
2873
|
+
"img",
|
|
2874
|
+
{
|
|
2875
|
+
src: room.imageUrl,
|
|
2876
|
+
alt: room.roomName,
|
|
2877
|
+
className: "w-20 h-15 object-cover rounded-md shrink-0",
|
|
2878
|
+
style: { width: "80px", height: "60px" }
|
|
2879
|
+
}
|
|
2880
|
+
),
|
|
2881
|
+
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
|
|
2882
|
+
/* @__PURE__ */ jsx("p", { className: "text-sm font-semibold text-foreground font-sans", children: `${room.qty}\xD7 ${room.roomName}` }),
|
|
2883
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 flex-wrap text-xs text-muted-foreground font-sans", children: [
|
|
2884
|
+
/* @__PURE__ */ jsx("span", { children: room.accommodationName }),
|
|
2885
|
+
/* @__PURE__ */ jsx("span", { className: "inline-block px-1.5 py-0.5 text-[10px] font-semibold text-primary bg-primary/10 rounded uppercase tracking-wider", children: (_b2 = (_a2 = labels == null ? void 0 : labels.bedArrangementLabels) == null ? void 0 : _a2[room.bedArrangement]) != null ? _b2 : room.bedArrangement })
|
|
2886
|
+
] }),
|
|
2887
|
+
room.description && /* @__PURE__ */ jsx("p", { className: "text-xs text-foreground/80 font-sans mt-1 leading-snug", children: room.description })
|
|
2888
|
+
] })
|
|
2889
|
+
] }, i);
|
|
2890
|
+
}) })
|
|
2891
|
+
] }),
|
|
2866
2892
|
/* @__PURE__ */ jsxs("div", { className: "border-t border-border px-5 lg:px-6 py-5 flex flex-col gap-4", children: [
|
|
2867
2893
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-3 flex-wrap", children: [
|
|
2868
2894
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2869
|
-
/* @__PURE__ */ jsx("h4", { className: "text-xs font-bold text-muted-foreground font-heading uppercase tracking-widest", children: (
|
|
2895
|
+
/* @__PURE__ */ jsx("h4", { className: "text-xs font-bold text-muted-foreground font-heading uppercase tracking-widest", children: (_m = labels == null ? void 0 : labels.travellersSection) != null ? _m : "Travellers" }),
|
|
2870
2896
|
adventure.formName && /* @__PURE__ */ jsxs("span", { className: "text-xs font-semibold text-muted-foreground/50 font-heading tracking-wide", children: [
|
|
2871
2897
|
"\xB7 ",
|
|
2872
2898
|
adventure.formName
|
|
@@ -2887,8 +2913,8 @@ function AdventureSection({
|
|
|
2887
2913
|
),
|
|
2888
2914
|
children: [
|
|
2889
2915
|
/* @__PURE__ */ jsx(UserPlusIcon, { className: "w-3 h-3" }),
|
|
2890
|
-
/* @__PURE__ */ jsx("span", { className: "hidden sm:inline", children: (
|
|
2891
|
-
/* @__PURE__ */ jsx("span", { className: "sm:hidden", children: (
|
|
2916
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:inline", children: (_n = labels == null ? void 0 : labels.addContactAsTraveller) != null ? _n : "Add contact as traveller" }),
|
|
2917
|
+
/* @__PURE__ */ jsx("span", { className: "sm:hidden", children: (_o = labels == null ? void 0 : labels.addContactAsTravellerShort) != null ? _o : "Add contact" })
|
|
2892
2918
|
]
|
|
2893
2919
|
}
|
|
2894
2920
|
),
|
|
@@ -2906,8 +2932,8 @@ function AdventureSection({
|
|
|
2906
2932
|
className: "flex items-center gap-1.5 rounded-full border border-border px-3 py-1.5 text-xs font-ui text-primary hover:border-primary hover:bg-primary/5 transition-colors",
|
|
2907
2933
|
children: [
|
|
2908
2934
|
/* @__PURE__ */ jsx(PlusIcon, { className: "w-3 h-3" }),
|
|
2909
|
-
/* @__PURE__ */ jsx("span", { className: "hidden sm:inline", children: (
|
|
2910
|
-
/* @__PURE__ */ jsx("span", { className: "sm:hidden", children: (
|
|
2935
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:inline", children: (_p = adventure.addTravellerLabel) != null ? _p : "More travellers" }),
|
|
2936
|
+
/* @__PURE__ */ jsx("span", { className: "sm:hidden", children: (_r = (_q = adventure.addTravellerShortLabel) != null ? _q : adventure.addTravellerLabel) != null ? _r : "Add" })
|
|
2911
2937
|
]
|
|
2912
2938
|
}
|
|
2913
2939
|
)
|
|
@@ -3099,7 +3125,7 @@ function AdventureSection({
|
|
|
3099
3125
|
)) })
|
|
3100
3126
|
] });
|
|
3101
3127
|
})(),
|
|
3102
|
-
adventure.registrationNotRequired ? /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 mt-1", children: /* @__PURE__ */ jsx("span", { className: "text-xs font-ui text-muted-foreground", children: (
|
|
3128
|
+
adventure.registrationNotRequired ? /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 mt-1", children: /* @__PURE__ */ jsx("span", { className: "text-xs font-ui text-muted-foreground", children: (_s = adventure.noRegistrationRequiredLabel) != null ? _s : "No registration required" }) }) : adventure.travellers.length > 0 && totalSlots > 0 && (() => {
|
|
3103
3129
|
var _a2, _b2;
|
|
3104
3130
|
const completed = adventure.travellers.filter((t) => t.status === "completed").length;
|
|
3105
3131
|
const percent = Math.round(completed / totalSlots * 100);
|
|
@@ -5258,6 +5284,7 @@ function BookingPaymentConfirmationEmail({
|
|
|
5258
5284
|
notIncluded: adventure.notIncluded,
|
|
5259
5285
|
lineItems: lineItemsToPass,
|
|
5260
5286
|
subtotal: adventure.subtotal,
|
|
5287
|
+
rooms: adventure.rooms,
|
|
5261
5288
|
labels: {
|
|
5262
5289
|
travellersHeading: l.travellersLabel,
|
|
5263
5290
|
detailsHeading: l.itineraryLabel,
|