@planetaexo/design-system 0.65.0 → 0.66.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 +158 -37
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +37 -1
- package/dist/index.d.ts +37 -1
- package/dist/index.js +158 -37
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -89,6 +89,13 @@ interface BookingAdventureCardLabels {
|
|
|
89
89
|
childrenUnit?: string;
|
|
90
90
|
/** Heading da seção ACCOMMODATIONS. Default "ACCOMMODATIONS". */
|
|
91
91
|
accommodationsHeading?: string;
|
|
92
|
+
/**
|
|
93
|
+
* Heading por quarto no layout `feature` (ex.: "Accommodation: Suíte Master").
|
|
94
|
+
* Interpolado pelo DS via `accommodationRoomHeading(room.roomName)`.
|
|
95
|
+
* Default EN `(n) => \`Accommodation: ${n}\``. Usado só quando
|
|
96
|
+
* `roomLayout==="feature"`.
|
|
97
|
+
*/
|
|
98
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
92
99
|
/** Labels localizados para o chip de bedArrangement. */
|
|
93
100
|
bedArrangementLabels?: {
|
|
94
101
|
DOUBLE?: string;
|
|
@@ -159,12 +166,21 @@ interface BookingAdventureCardProps {
|
|
|
159
166
|
* quartos selecionados (renderiza bloco "ACCOMMODATIONS"). Vazio = bloco oculto.
|
|
160
167
|
*/
|
|
161
168
|
rooms?: AccommodationRoomItem[];
|
|
169
|
+
/**
|
|
170
|
+
* Layout do bloco ACCOMMODATIONS:
|
|
171
|
+
* - `"compact"` (default) — card compacto atual (img 80×60 + chip + qty +
|
|
172
|
+
* roomType). Usado por PaymentReminderEmail e qualquer caller sem a prop.
|
|
173
|
+
* - `"feature"` — padrão manual da equipe: heading "Accommodation: {nome}"
|
|
174
|
+
* por quarto + imagem larga (full-width) + chip/qty/roomType/description
|
|
175
|
+
* mantidos abaixo. Ativado só pelo BookingPaymentConfirmationEmail.
|
|
176
|
+
*/
|
|
177
|
+
roomLayout?: "compact" | "feature";
|
|
162
178
|
/** Labels para i18n / customização. */
|
|
163
179
|
labels?: BookingAdventureCardLabels;
|
|
164
180
|
/** className extra no container. */
|
|
165
181
|
className?: string;
|
|
166
182
|
}
|
|
167
|
-
declare function BookingAdventureCard({ tag, name, startDate, endDate, travellerCount, slots, travellers, itinerary, description, image, imageAlt, location, destination, partner, included, notIncluded, lineItems, subtotal, rooms, labels, className, }: BookingAdventureCardProps): react_jsx_runtime.JSX.Element;
|
|
183
|
+
declare function BookingAdventureCard({ tag, name, startDate, endDate, travellerCount, slots, travellers, itinerary, description, image, imageAlt, location, destination, partner, included, notIncluded, lineItems, subtotal, rooms, roomLayout, labels, className, }: BookingAdventureCardProps): react_jsx_runtime.JSX.Element;
|
|
168
184
|
|
|
169
185
|
interface OfferSummaryLineItem {
|
|
170
186
|
label: string;
|
|
@@ -253,6 +269,12 @@ interface OfferAdventureItem {
|
|
|
253
269
|
rooms?: AccommodationRoomItem[];
|
|
254
270
|
/** Heading do bloco Accommodations. Default: "Accommodations". */
|
|
255
271
|
accommodationsLabel?: string;
|
|
272
|
+
/**
|
|
273
|
+
* Heading por quarto no padrão manual ("Accommodation: {name}").
|
|
274
|
+
* Interpolado pelo componente via `accommodationRoomHeading(room.roomName)`.
|
|
275
|
+
* Default EN `(n) => \`Accommodation: ${n}\``.
|
|
276
|
+
*/
|
|
277
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
256
278
|
/** Labels localizados para o chip de bedArrangement. */
|
|
257
279
|
bedArrangementLabels?: {
|
|
258
280
|
DOUBLE?: string;
|
|
@@ -996,6 +1018,20 @@ interface BookingPaymentConfirmationEmailLabels {
|
|
|
996
1018
|
pricingLabel?: string;
|
|
997
1019
|
subtotalLabel?: string;
|
|
998
1020
|
totalLabel?: string;
|
|
1021
|
+
/** Heading da seção ACCOMMODATIONS no card. Default EN "ACCOMMODATIONS". */
|
|
1022
|
+
accommodationsLabel?: string;
|
|
1023
|
+
/**
|
|
1024
|
+
* Heading por quarto no layout feature ("Accommodation: {name}").
|
|
1025
|
+
* Default EN `(n) => \`Accommodation: ${n}\``.
|
|
1026
|
+
*/
|
|
1027
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
1028
|
+
/** Labels localizados para o chip de bedArrangement. */
|
|
1029
|
+
bedArrangementLabels?: {
|
|
1030
|
+
DOUBLE?: string;
|
|
1031
|
+
TWIN?: string;
|
|
1032
|
+
SINGLE?: string;
|
|
1033
|
+
TRIPLE?: string;
|
|
1034
|
+
};
|
|
999
1035
|
paymentSummaryHeading?: string;
|
|
1000
1036
|
paymentDetailsHeading?: string;
|
|
1001
1037
|
depositLabel?: (percent: number) => string;
|
package/dist/index.d.ts
CHANGED
|
@@ -89,6 +89,13 @@ interface BookingAdventureCardLabels {
|
|
|
89
89
|
childrenUnit?: string;
|
|
90
90
|
/** Heading da seção ACCOMMODATIONS. Default "ACCOMMODATIONS". */
|
|
91
91
|
accommodationsHeading?: string;
|
|
92
|
+
/**
|
|
93
|
+
* Heading por quarto no layout `feature` (ex.: "Accommodation: Suíte Master").
|
|
94
|
+
* Interpolado pelo DS via `accommodationRoomHeading(room.roomName)`.
|
|
95
|
+
* Default EN `(n) => \`Accommodation: ${n}\``. Usado só quando
|
|
96
|
+
* `roomLayout==="feature"`.
|
|
97
|
+
*/
|
|
98
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
92
99
|
/** Labels localizados para o chip de bedArrangement. */
|
|
93
100
|
bedArrangementLabels?: {
|
|
94
101
|
DOUBLE?: string;
|
|
@@ -159,12 +166,21 @@ interface BookingAdventureCardProps {
|
|
|
159
166
|
* quartos selecionados (renderiza bloco "ACCOMMODATIONS"). Vazio = bloco oculto.
|
|
160
167
|
*/
|
|
161
168
|
rooms?: AccommodationRoomItem[];
|
|
169
|
+
/**
|
|
170
|
+
* Layout do bloco ACCOMMODATIONS:
|
|
171
|
+
* - `"compact"` (default) — card compacto atual (img 80×60 + chip + qty +
|
|
172
|
+
* roomType). Usado por PaymentReminderEmail e qualquer caller sem a prop.
|
|
173
|
+
* - `"feature"` — padrão manual da equipe: heading "Accommodation: {nome}"
|
|
174
|
+
* por quarto + imagem larga (full-width) + chip/qty/roomType/description
|
|
175
|
+
* mantidos abaixo. Ativado só pelo BookingPaymentConfirmationEmail.
|
|
176
|
+
*/
|
|
177
|
+
roomLayout?: "compact" | "feature";
|
|
162
178
|
/** Labels para i18n / customização. */
|
|
163
179
|
labels?: BookingAdventureCardLabels;
|
|
164
180
|
/** className extra no container. */
|
|
165
181
|
className?: string;
|
|
166
182
|
}
|
|
167
|
-
declare function BookingAdventureCard({ tag, name, startDate, endDate, travellerCount, slots, travellers, itinerary, description, image, imageAlt, location, destination, partner, included, notIncluded, lineItems, subtotal, rooms, labels, className, }: BookingAdventureCardProps): react_jsx_runtime.JSX.Element;
|
|
183
|
+
declare function BookingAdventureCard({ tag, name, startDate, endDate, travellerCount, slots, travellers, itinerary, description, image, imageAlt, location, destination, partner, included, notIncluded, lineItems, subtotal, rooms, roomLayout, labels, className, }: BookingAdventureCardProps): react_jsx_runtime.JSX.Element;
|
|
168
184
|
|
|
169
185
|
interface OfferSummaryLineItem {
|
|
170
186
|
label: string;
|
|
@@ -253,6 +269,12 @@ interface OfferAdventureItem {
|
|
|
253
269
|
rooms?: AccommodationRoomItem[];
|
|
254
270
|
/** Heading do bloco Accommodations. Default: "Accommodations". */
|
|
255
271
|
accommodationsLabel?: string;
|
|
272
|
+
/**
|
|
273
|
+
* Heading por quarto no padrão manual ("Accommodation: {name}").
|
|
274
|
+
* Interpolado pelo componente via `accommodationRoomHeading(room.roomName)`.
|
|
275
|
+
* Default EN `(n) => \`Accommodation: ${n}\``.
|
|
276
|
+
*/
|
|
277
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
256
278
|
/** Labels localizados para o chip de bedArrangement. */
|
|
257
279
|
bedArrangementLabels?: {
|
|
258
280
|
DOUBLE?: string;
|
|
@@ -996,6 +1018,20 @@ interface BookingPaymentConfirmationEmailLabels {
|
|
|
996
1018
|
pricingLabel?: string;
|
|
997
1019
|
subtotalLabel?: string;
|
|
998
1020
|
totalLabel?: string;
|
|
1021
|
+
/** Heading da seção ACCOMMODATIONS no card. Default EN "ACCOMMODATIONS". */
|
|
1022
|
+
accommodationsLabel?: string;
|
|
1023
|
+
/**
|
|
1024
|
+
* Heading por quarto no layout feature ("Accommodation: {name}").
|
|
1025
|
+
* Default EN `(n) => \`Accommodation: ${n}\``.
|
|
1026
|
+
*/
|
|
1027
|
+
accommodationRoomHeading?: (name: string) => string;
|
|
1028
|
+
/** Labels localizados para o chip de bedArrangement. */
|
|
1029
|
+
bedArrangementLabels?: {
|
|
1030
|
+
DOUBLE?: string;
|
|
1031
|
+
TWIN?: string;
|
|
1032
|
+
SINGLE?: string;
|
|
1033
|
+
TRIPLE?: string;
|
|
1034
|
+
};
|
|
999
1035
|
paymentSummaryHeading?: string;
|
|
1000
1036
|
paymentDetailsHeading?: string;
|
|
1001
1037
|
depositLabel?: (percent: number) => string;
|
package/dist/index.js
CHANGED
|
@@ -1306,7 +1306,7 @@ function AdventureCard({
|
|
|
1306
1306
|
labels,
|
|
1307
1307
|
interactionsDisabled
|
|
1308
1308
|
}) {
|
|
1309
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r
|
|
1309
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
1310
1310
|
const isControlled = (_b = (_a = adventure.optionals) == null ? void 0 : _a.some((o) => o.onCheckedChange !== void 0)) != null ? _b : false;
|
|
1311
1311
|
const [checkedInternal, setCheckedInternal] = React32.useState(
|
|
1312
1312
|
new Set((_d = (_c = adventure.optionals) == null ? void 0 : _c.filter((o) => o.defaultChecked).map((o) => o.id)) != null ? _d : [])
|
|
@@ -1480,6 +1480,29 @@ function AdventureCard({
|
|
|
1480
1480
|
}
|
|
1481
1481
|
)
|
|
1482
1482
|
] }),
|
|
1483
|
+
adventure.rooms && adventure.rooms.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-5 mt-1", children: adventure.rooms.map((room, i) => {
|
|
1484
|
+
var _a2, _b2;
|
|
1485
|
+
const bedLabel = (_b2 = (_a2 = adventure.bedArrangementLabels) == null ? void 0 : _a2[room.bedArrangement]) != null ? _b2 : room.bedArrangement === "DOUBLE" ? "Double" : room.bedArrangement === "TWIN" ? "Twin" : room.bedArrangement === "SINGLE" ? "Single" : "Triple";
|
|
1486
|
+
const heading = adventure.accommodationRoomHeading ? adventure.accommodationRoomHeading(room.roomName) : `Accommodation: ${room.roomName}`;
|
|
1487
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
1488
|
+
/* @__PURE__ */ jsx("h4", { className: "text-lg font-semibold text-foreground font-heading", children: heading }),
|
|
1489
|
+
room.imageUrl && // eslint-disable-next-line @next/next/no-img-element
|
|
1490
|
+
/* @__PURE__ */ jsx(
|
|
1491
|
+
"img",
|
|
1492
|
+
{
|
|
1493
|
+
src: room.imageUrl,
|
|
1494
|
+
alt: room.roomName,
|
|
1495
|
+
className: "w-full h-auto max-w-full rounded"
|
|
1496
|
+
}
|
|
1497
|
+
),
|
|
1498
|
+
/* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-foreground", children: `${room.qty}\xD7 ${room.roomName}` }),
|
|
1499
|
+
/* @__PURE__ */ jsxs("div", { className: "text-sm text-foreground/70 flex items-center gap-2 flex-wrap", children: [
|
|
1500
|
+
/* @__PURE__ */ jsx("span", { children: room.accommodationName }),
|
|
1501
|
+
/* @__PURE__ */ jsx("span", { className: "inline-block px-2 py-0.5 text-xs font-semibold bg-primary/10 text-primary rounded uppercase tracking-wide", children: bedLabel })
|
|
1502
|
+
] }),
|
|
1503
|
+
room.description && /* @__PURE__ */ jsx("p", { className: "text-sm text-foreground/70 leading-snug", children: room.description })
|
|
1504
|
+
] }, i);
|
|
1505
|
+
}) }),
|
|
1483
1506
|
(adventure.description || adventure.detailsSlot) && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1484
1507
|
/* @__PURE__ */ jsx(Separator, { className: "my-1" }),
|
|
1485
1508
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
@@ -1508,48 +1531,22 @@ function AdventureCard({
|
|
|
1508
1531
|
), children: adventure.detailsSlot })
|
|
1509
1532
|
] })
|
|
1510
1533
|
] }),
|
|
1511
|
-
adventure.rooms && adventure.rooms.length > 0 && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2.5 mt-1", children: [
|
|
1512
|
-
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (_p = adventure.accommodationsLabel) != null ? _p : "Accommodations" }),
|
|
1513
|
-
/* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-3", children: adventure.rooms.map((room, i) => {
|
|
1514
|
-
var _a2, _b2;
|
|
1515
|
-
const bedLabel = (_b2 = (_a2 = adventure.bedArrangementLabels) == null ? void 0 : _a2[room.bedArrangement]) != null ? _b2 : room.bedArrangement === "DOUBLE" ? "Double" : room.bedArrangement === "TWIN" ? "Twin" : room.bedArrangement === "SINGLE" ? "Single" : "Triple";
|
|
1516
|
-
return /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-3", children: [
|
|
1517
|
-
room.imageUrl && // eslint-disable-next-line @next/next/no-img-element
|
|
1518
|
-
/* @__PURE__ */ jsx(
|
|
1519
|
-
"img",
|
|
1520
|
-
{
|
|
1521
|
-
src: room.imageUrl,
|
|
1522
|
-
alt: room.roomName,
|
|
1523
|
-
className: "w-20 h-16 object-cover rounded shrink-0"
|
|
1524
|
-
}
|
|
1525
|
-
),
|
|
1526
|
-
/* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
|
|
1527
|
-
/* @__PURE__ */ jsx("div", { className: "text-base font-semibold text-foreground", children: `${room.qty}\xD7 ${room.roomName}` }),
|
|
1528
|
-
/* @__PURE__ */ jsxs("div", { className: "text-sm text-foreground/70 flex items-center gap-2 flex-wrap", children: [
|
|
1529
|
-
/* @__PURE__ */ jsx("span", { children: room.accommodationName }),
|
|
1530
|
-
/* @__PURE__ */ jsx("span", { className: "inline-block px-2 py-0.5 text-xs font-semibold bg-primary/10 text-primary rounded uppercase tracking-wide", children: bedLabel })
|
|
1531
|
-
] }),
|
|
1532
|
-
room.description && /* @__PURE__ */ jsx("p", { className: "text-sm text-foreground/70 mt-1 leading-snug", children: room.description })
|
|
1533
|
-
] })
|
|
1534
|
-
] }, i);
|
|
1535
|
-
}) })
|
|
1536
|
-
] }),
|
|
1537
1534
|
adventure.included && adventure.included.length > 0 && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2.5 mt-1", children: [
|
|
1538
|
-
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (
|
|
1535
|
+
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (_p = adventure.includedLabel) != null ? _p : "What's included" }),
|
|
1539
1536
|
/* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1.5", children: adventure.included.map((item, i) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2 text-base text-foreground/80 font-sans", children: [
|
|
1540
1537
|
/* @__PURE__ */ jsx(CheckIcon, { className: "w-4 h-4 text-primary shrink-0 mt-1" }),
|
|
1541
1538
|
item
|
|
1542
1539
|
] }, i)) })
|
|
1543
1540
|
] }),
|
|
1544
1541
|
adventure.notIncluded && adventure.notIncluded.length > 0 && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2.5 mt-1", children: [
|
|
1545
|
-
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (
|
|
1542
|
+
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (_q = adventure.notIncludedLabel) != null ? _q : "What's not included" }),
|
|
1546
1543
|
/* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1.5", children: adventure.notIncluded.map((item, i) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2 text-base text-foreground/80 font-sans", children: [
|
|
1547
1544
|
/* @__PURE__ */ jsx(XIcon, { className: "w-4 h-4 text-destructive shrink-0 mt-1" }),
|
|
1548
1545
|
item
|
|
1549
1546
|
] }, i)) })
|
|
1550
1547
|
] }),
|
|
1551
1548
|
adventure.cancellationPolicy && adventure.cancellationPolicy.length > 0 && /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2.5 mt-1", children: [
|
|
1552
|
-
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (
|
|
1549
|
+
/* @__PURE__ */ jsx("h4", { className: "text-base font-bold text-foreground font-heading", children: (_r = adventure.cancellationPolicyLabel) != null ? _r : "Cancellation policy" }),
|
|
1553
1550
|
/* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1.5", children: adventure.cancellationPolicy.map((item, i) => /* @__PURE__ */ jsxs("li", { className: "flex items-start gap-2 text-base text-muted-foreground font-sans", children: [
|
|
1554
1551
|
/* @__PURE__ */ jsx("span", { className: "w-1.5 h-1.5 rounded-full bg-primary shrink-0 mt-2.5" }),
|
|
1555
1552
|
item
|
|
@@ -4126,6 +4123,7 @@ var DEFAULT_LABELS = {
|
|
|
4126
4123
|
adultsUnit: "adult(s)",
|
|
4127
4124
|
childrenUnit: "child(ren)",
|
|
4128
4125
|
accommodationsHeading: "ACCOMMODATIONS",
|
|
4126
|
+
accommodationRoomHeading: (name) => `Accommodation: ${name}`,
|
|
4129
4127
|
bedArrangementLabels: {
|
|
4130
4128
|
DOUBLE: "Double",
|
|
4131
4129
|
TWIN: "Twin",
|
|
@@ -4153,10 +4151,11 @@ function BookingAdventureCard({
|
|
|
4153
4151
|
lineItems,
|
|
4154
4152
|
subtotal,
|
|
4155
4153
|
rooms,
|
|
4154
|
+
roomLayout = "compact",
|
|
4156
4155
|
labels,
|
|
4157
4156
|
className
|
|
4158
4157
|
}) {
|
|
4159
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u;
|
|
4158
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
4160
4159
|
const l = {
|
|
4161
4160
|
travellersHeading: (_a = labels == null ? void 0 : labels.travellersHeading) != null ? _a : DEFAULT_LABELS.travellersHeading,
|
|
4162
4161
|
detailsHeading: (_b = labels == null ? void 0 : labels.detailsHeading) != null ? _b : DEFAULT_LABELS.detailsHeading,
|
|
@@ -4171,11 +4170,12 @@ function BookingAdventureCard({
|
|
|
4171
4170
|
adultsUnit: (_k = labels == null ? void 0 : labels.adultsUnit) != null ? _k : DEFAULT_LABELS.adultsUnit,
|
|
4172
4171
|
childrenUnit: (_l = labels == null ? void 0 : labels.childrenUnit) != null ? _l : DEFAULT_LABELS.childrenUnit,
|
|
4173
4172
|
accommodationsHeading: (_m = labels == null ? void 0 : labels.accommodationsHeading) != null ? _m : DEFAULT_LABELS.accommodationsHeading,
|
|
4173
|
+
accommodationRoomHeading: (_n = labels == null ? void 0 : labels.accommodationRoomHeading) != null ? _n : DEFAULT_LABELS.accommodationRoomHeading,
|
|
4174
4174
|
bedArrangementLabels: {
|
|
4175
|
-
DOUBLE: (
|
|
4176
|
-
TWIN: (
|
|
4177
|
-
SINGLE: (
|
|
4178
|
-
TRIPLE: (
|
|
4175
|
+
DOUBLE: (_p = (_o = labels == null ? void 0 : labels.bedArrangementLabels) == null ? void 0 : _o.DOUBLE) != null ? _p : DEFAULT_LABELS.bedArrangementLabels.DOUBLE,
|
|
4176
|
+
TWIN: (_r = (_q = labels == null ? void 0 : labels.bedArrangementLabels) == null ? void 0 : _q.TWIN) != null ? _r : DEFAULT_LABELS.bedArrangementLabels.TWIN,
|
|
4177
|
+
SINGLE: (_t = (_s = labels == null ? void 0 : labels.bedArrangementLabels) == null ? void 0 : _s.SINGLE) != null ? _t : DEFAULT_LABELS.bedArrangementLabels.SINGLE,
|
|
4178
|
+
TRIPLE: (_v = (_u = labels == null ? void 0 : labels.bedArrangementLabels) == null ? void 0 : _u.TRIPLE) != null ? _v : DEFAULT_LABELS.bedArrangementLabels.TRIPLE
|
|
4179
4179
|
}
|
|
4180
4180
|
};
|
|
4181
4181
|
const hasTravellers = !!travellers && travellers.length > 0;
|
|
@@ -4514,7 +4514,116 @@ function BookingAdventureCard({
|
|
|
4514
4514
|
);
|
|
4515
4515
|
})
|
|
4516
4516
|
] }),
|
|
4517
|
-
hasRooms && /* @__PURE__ */ jsxs("div", { style: { marginTop: "4px" }, children: [
|
|
4517
|
+
hasRooms && roomLayout === "feature" && /* @__PURE__ */ jsxs("div", { style: { marginTop: "4px" }, children: [
|
|
4518
|
+
/* @__PURE__ */ jsx(
|
|
4519
|
+
"hr",
|
|
4520
|
+
{
|
|
4521
|
+
style: {
|
|
4522
|
+
border: "none",
|
|
4523
|
+
borderTop: `1px solid ${emailTokens.border}`,
|
|
4524
|
+
marginBottom: "10px"
|
|
4525
|
+
}
|
|
4526
|
+
}
|
|
4527
|
+
),
|
|
4528
|
+
/* @__PURE__ */ jsx(
|
|
4529
|
+
"p",
|
|
4530
|
+
{
|
|
4531
|
+
style: {
|
|
4532
|
+
fontSize: "10px",
|
|
4533
|
+
fontWeight: 700,
|
|
4534
|
+
color: emailTokens.mutedForeground,
|
|
4535
|
+
textTransform: "uppercase",
|
|
4536
|
+
letterSpacing: "0.1em",
|
|
4537
|
+
margin: "0 0 10px 0"
|
|
4538
|
+
},
|
|
4539
|
+
children: l.accommodationsHeading
|
|
4540
|
+
}
|
|
4541
|
+
),
|
|
4542
|
+
rooms.map((room, i) => /* @__PURE__ */ jsxs(
|
|
4543
|
+
"div",
|
|
4544
|
+
{
|
|
4545
|
+
style: {
|
|
4546
|
+
marginBottom: i < rooms.length - 1 ? "16px" : "0"
|
|
4547
|
+
},
|
|
4548
|
+
children: [
|
|
4549
|
+
/* @__PURE__ */ jsx(
|
|
4550
|
+
"p",
|
|
4551
|
+
{
|
|
4552
|
+
style: {
|
|
4553
|
+
fontSize: "16px",
|
|
4554
|
+
fontWeight: 700,
|
|
4555
|
+
color: emailTokens.foreground,
|
|
4556
|
+
lineHeight: "1.3",
|
|
4557
|
+
margin: "0 0 8px 0"
|
|
4558
|
+
},
|
|
4559
|
+
children: l.accommodationRoomHeading(room.roomName)
|
|
4560
|
+
}
|
|
4561
|
+
),
|
|
4562
|
+
room.imageUrl && /* @__PURE__ */ jsx("div", { style: { marginBottom: "8px" }, children: /* @__PURE__ */ jsx(
|
|
4563
|
+
"img",
|
|
4564
|
+
{
|
|
4565
|
+
src: room.imageUrl,
|
|
4566
|
+
alt: room.roomName,
|
|
4567
|
+
style: {
|
|
4568
|
+
width: "100%",
|
|
4569
|
+
height: "auto",
|
|
4570
|
+
maxWidth: "100%",
|
|
4571
|
+
display: "block",
|
|
4572
|
+
borderRadius: "8px"
|
|
4573
|
+
}
|
|
4574
|
+
}
|
|
4575
|
+
) }),
|
|
4576
|
+
/* @__PURE__ */ jsx(
|
|
4577
|
+
"div",
|
|
4578
|
+
{
|
|
4579
|
+
style: {
|
|
4580
|
+
fontSize: "14px",
|
|
4581
|
+
fontWeight: 600,
|
|
4582
|
+
color: emailTokens.foreground,
|
|
4583
|
+
marginBottom: "2px"
|
|
4584
|
+
},
|
|
4585
|
+
children: `${room.qty}\xD7 ${room.roomName}`
|
|
4586
|
+
}
|
|
4587
|
+
),
|
|
4588
|
+
/* @__PURE__ */ jsxs("div", { style: { fontSize: "12px", color: emailTokens.mutedForeground }, children: [
|
|
4589
|
+
room.accommodationName,
|
|
4590
|
+
/* @__PURE__ */ jsx(
|
|
4591
|
+
"span",
|
|
4592
|
+
{
|
|
4593
|
+
style: {
|
|
4594
|
+
display: "inline-block",
|
|
4595
|
+
marginLeft: "8px",
|
|
4596
|
+
padding: "1px 6px",
|
|
4597
|
+
fontSize: "10px",
|
|
4598
|
+
fontWeight: 600,
|
|
4599
|
+
color: emailTokens.primary,
|
|
4600
|
+
backgroundColor: emailTokens.primaryLight,
|
|
4601
|
+
borderRadius: "4px",
|
|
4602
|
+
textTransform: "uppercase",
|
|
4603
|
+
letterSpacing: "0.05em"
|
|
4604
|
+
},
|
|
4605
|
+
children: l.bedArrangementLabels[room.bedArrangement]
|
|
4606
|
+
}
|
|
4607
|
+
)
|
|
4608
|
+
] }),
|
|
4609
|
+
room.description && /* @__PURE__ */ jsx(
|
|
4610
|
+
"div",
|
|
4611
|
+
{
|
|
4612
|
+
style: {
|
|
4613
|
+
fontSize: "12px",
|
|
4614
|
+
color: emailTokens.bodyText,
|
|
4615
|
+
marginTop: "4px",
|
|
4616
|
+
lineHeight: "1.4"
|
|
4617
|
+
},
|
|
4618
|
+
children: room.description
|
|
4619
|
+
}
|
|
4620
|
+
)
|
|
4621
|
+
]
|
|
4622
|
+
},
|
|
4623
|
+
i
|
|
4624
|
+
))
|
|
4625
|
+
] }),
|
|
4626
|
+
hasRooms && roomLayout === "compact" && /* @__PURE__ */ jsxs("div", { style: { marginTop: "4px" }, children: [
|
|
4518
4627
|
/* @__PURE__ */ jsx(
|
|
4519
4628
|
"hr",
|
|
4520
4629
|
{
|
|
@@ -5153,6 +5262,14 @@ var DEFAULT_LABELS3 = {
|
|
|
5153
5262
|
pricingLabel: "Pricing",
|
|
5154
5263
|
subtotalLabel: "Subtotal",
|
|
5155
5264
|
totalLabel: "Total",
|
|
5265
|
+
accommodationsLabel: "ACCOMMODATIONS",
|
|
5266
|
+
accommodationRoomHeading: (name) => `Accommodation: ${name}`,
|
|
5267
|
+
bedArrangementLabels: {
|
|
5268
|
+
DOUBLE: "Double",
|
|
5269
|
+
TWIN: "Twin",
|
|
5270
|
+
SINGLE: "Single",
|
|
5271
|
+
TRIPLE: "Triple"
|
|
5272
|
+
},
|
|
5156
5273
|
paymentSummaryHeading: "\u{1F4B0} Payment Summary",
|
|
5157
5274
|
paymentDetailsHeading: "Payment Details",
|
|
5158
5275
|
depositLabel: (percent) => `Deposit (${percent}%)`,
|
|
@@ -5321,6 +5438,7 @@ function BookingPaymentConfirmationEmail({
|
|
|
5321
5438
|
lineItems: lineItemsToPass,
|
|
5322
5439
|
subtotal: adventure.subtotal,
|
|
5323
5440
|
rooms: adventure.rooms,
|
|
5441
|
+
roomLayout: "feature",
|
|
5324
5442
|
labels: {
|
|
5325
5443
|
travellersHeading: l.travellersLabel,
|
|
5326
5444
|
detailsHeading: l.itineraryLabel,
|
|
@@ -5330,7 +5448,10 @@ function BookingPaymentConfirmationEmail({
|
|
|
5330
5448
|
notIncludedHeading: l.notIncludedLabel,
|
|
5331
5449
|
childBadge: l.childBadge,
|
|
5332
5450
|
adultsUnit: l.adultsUnit,
|
|
5333
|
-
childrenUnit: l.childrenUnit
|
|
5451
|
+
childrenUnit: l.childrenUnit,
|
|
5452
|
+
accommodationsHeading: l.accommodationsLabel,
|
|
5453
|
+
accommodationRoomHeading: l.accommodationRoomHeading,
|
|
5454
|
+
bedArrangementLabels: l.bedArrangementLabels
|
|
5334
5455
|
}
|
|
5335
5456
|
}
|
|
5336
5457
|
)
|