@planetaexo/design-system 0.7.0 → 0.8.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 +198 -127
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -1
- package/dist/index.d.ts +12 -1
- package/dist/index.js +198 -127
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -2268,10 +2268,12 @@ function AdventureSection({
|
|
|
2268
2268
|
hasConfirmRemoveTraveller,
|
|
2269
2269
|
onRequestOpenAddModal,
|
|
2270
2270
|
onRequestOpenEditModal,
|
|
2271
|
-
onRequestOpenDeleteModal
|
|
2271
|
+
onRequestOpenDeleteModal,
|
|
2272
|
+
cannotRemoveLastTravellerLabel
|
|
2272
2273
|
}) {
|
|
2273
2274
|
var _a, _b, _c, _d;
|
|
2274
2275
|
const [detailsOpen, setDetailsOpen] = React22__namespace.useState(false);
|
|
2276
|
+
const [itineraryOpen, setItineraryOpen] = React22__namespace.useState(true);
|
|
2275
2277
|
const handleCopyUrl = (url) => {
|
|
2276
2278
|
navigator.clipboard.writeText(url);
|
|
2277
2279
|
};
|
|
@@ -2337,8 +2339,31 @@ function AdventureSection({
|
|
|
2337
2339
|
)) })
|
|
2338
2340
|
] }),
|
|
2339
2341
|
(adventure.detailsSlot || adventure.description) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-t border-border px-5 lg:px-6 py-5 flex flex-col gap-2", children: [
|
|
2340
|
-
/* @__PURE__ */ jsxRuntime.
|
|
2341
|
-
|
|
2342
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2343
|
+
"button",
|
|
2344
|
+
{
|
|
2345
|
+
type: "button",
|
|
2346
|
+
onClick: () => setItineraryOpen((v) => !v),
|
|
2347
|
+
className: cn(
|
|
2348
|
+
"group flex w-full items-center justify-between gap-2 text-left",
|
|
2349
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded"
|
|
2350
|
+
),
|
|
2351
|
+
"aria-expanded": itineraryOpen,
|
|
2352
|
+
children: [
|
|
2353
|
+
/* @__PURE__ */ jsxRuntime.jsx("h4", { className: "text-xs font-bold text-muted-foreground font-heading uppercase tracking-widest group-hover:text-foreground transition-colors", children: (_d = adventure.itineraryLabel) != null ? _d : "Itinerary" }),
|
|
2354
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2355
|
+
lucideReact.ChevronDownIcon,
|
|
2356
|
+
{
|
|
2357
|
+
className: cn(
|
|
2358
|
+
"w-4 h-4 text-muted-foreground shrink-0 transition-transform",
|
|
2359
|
+
itineraryOpen && "rotate-180"
|
|
2360
|
+
)
|
|
2361
|
+
}
|
|
2362
|
+
)
|
|
2363
|
+
]
|
|
2364
|
+
}
|
|
2365
|
+
),
|
|
2366
|
+
itineraryOpen && (adventure.detailsSlot ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2342
2367
|
"div",
|
|
2343
2368
|
{
|
|
2344
2369
|
className: cn(
|
|
@@ -2355,7 +2380,7 @@ function AdventureSection({
|
|
|
2355
2380
|
),
|
|
2356
2381
|
children: adventure.detailsSlot
|
|
2357
2382
|
}
|
|
2358
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-foreground/80 leading-relaxed font-sans", children: adventure.description })
|
|
2383
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-foreground/80 leading-relaxed font-sans", children: adventure.description }))
|
|
2359
2384
|
] }),
|
|
2360
2385
|
detailsOpen && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-t border-border px-5 lg:px-6 py-5 flex flex-col gap-5 bg-muted/10", children: [
|
|
2361
2386
|
adventure.included && adventure.included.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
@@ -2450,114 +2475,132 @@ function AdventureSection({
|
|
|
2450
2475
|
)
|
|
2451
2476
|
] })
|
|
2452
2477
|
] }),
|
|
2453
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col divide-y divide-border", children: adventure.travellers.map((t) =>
|
|
2454
|
-
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2478
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col divide-y divide-border", children: adventure.travellers.map((t) => {
|
|
2479
|
+
const canRemoveTraveller = adventure.travellers.length > 1;
|
|
2480
|
+
const disabledRemoveTitle = canRemoveTraveller ? void 0 : cannotRemoveLastTravellerLabel != null ? cannotRemoveLastTravellerLabel : "Cannot remove last traveller";
|
|
2481
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2482
|
+
"div",
|
|
2483
|
+
{
|
|
2484
|
+
className: "flex flex-col sm:flex-row sm:items-center gap-2 sm:gap-3 py-3 first:pt-0",
|
|
2485
|
+
children: [
|
|
2486
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-3 min-w-0 flex-1", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5 min-w-0 flex-1", children: [
|
|
2487
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 min-w-0", children: [
|
|
2488
|
+
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-sm font-semibold text-foreground font-ui truncate", children: [
|
|
2489
|
+
t.firstName,
|
|
2490
|
+
" ",
|
|
2491
|
+
t.lastName
|
|
2492
|
+
] }),
|
|
2493
|
+
t.isChild && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-semibold font-heading rounded-full px-2 py-0.5 bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400 shrink-0", children: "Child" })
|
|
2464
2494
|
] }),
|
|
2465
|
-
t.
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
]
|
|
2479
|
-
}
|
|
2480
|
-
),
|
|
2481
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2482
|
-
"button",
|
|
2483
|
-
{
|
|
2484
|
-
type: "button",
|
|
2485
|
-
onClick: () => handleCopyUrl(t.formUrl),
|
|
2486
|
-
className: "flex items-center text-xs text-muted-foreground hover:text-primary transition-colors font-ui",
|
|
2487
|
-
"aria-label": "Copy form URL",
|
|
2488
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CopyIcon, { className: "w-3 h-3" })
|
|
2489
|
-
}
|
|
2490
|
-
)
|
|
2491
|
-
] })
|
|
2492
|
-
] }) }),
|
|
2493
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 sm:gap-3 justify-between sm:justify-end", children: [
|
|
2494
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2495
|
-
"span",
|
|
2496
|
-
{
|
|
2497
|
-
className: cn(
|
|
2498
|
-
"inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-bold font-heading uppercase tracking-wider shrink-0",
|
|
2499
|
-
t.status === "completed" ? "bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400" : "bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-400"
|
|
2495
|
+
t.formUrl && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
2496
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2497
|
+
"a",
|
|
2498
|
+
{
|
|
2499
|
+
href: t.formUrl,
|
|
2500
|
+
target: "_blank",
|
|
2501
|
+
rel: "noopener noreferrer",
|
|
2502
|
+
className: "flex items-center gap-1 text-xs text-primary hover:text-primary/80 transition-colors font-ui",
|
|
2503
|
+
children: [
|
|
2504
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.ExternalLinkIcon, { className: "w-3 h-3" }),
|
|
2505
|
+
"Open"
|
|
2506
|
+
]
|
|
2507
|
+
}
|
|
2500
2508
|
),
|
|
2501
|
-
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
className: "flex h-8 w-8 sm:h-7 sm:w-7 items-center justify-center rounded-lg text-muted-foreground hover:text-primary hover:bg-primary/10 transition-colors",
|
|
2517
|
-
"aria-label": `Edit ${t.firstName}`,
|
|
2518
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.PencilIcon, { className: "w-3.5 h-3.5" })
|
|
2519
|
-
}
|
|
2520
|
-
),
|
|
2521
|
-
(onRemoveTraveller || hasConfirmRemoveTraveller) && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2522
|
-
"button",
|
|
2509
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2510
|
+
"button",
|
|
2511
|
+
{
|
|
2512
|
+
type: "button",
|
|
2513
|
+
onClick: () => handleCopyUrl(t.formUrl),
|
|
2514
|
+
className: "flex items-center text-xs text-muted-foreground hover:text-primary transition-colors font-ui",
|
|
2515
|
+
"aria-label": "Copy form URL",
|
|
2516
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CopyIcon, { className: "w-3 h-3" })
|
|
2517
|
+
}
|
|
2518
|
+
)
|
|
2519
|
+
] })
|
|
2520
|
+
] }) }),
|
|
2521
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 sm:gap-3 justify-between sm:justify-end", children: [
|
|
2522
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2523
|
+
"span",
|
|
2523
2524
|
{
|
|
2524
|
-
|
|
2525
|
-
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
onRequestOpenDeleteModal == null ? void 0 : onRequestOpenDeleteModal(adventure.id, t);
|
|
2530
|
-
}
|
|
2531
|
-
},
|
|
2532
|
-
className: "flex h-8 w-8 sm:h-7 sm:w-7 items-center justify-center rounded-lg text-muted-foreground hover:text-destructive hover:bg-destructive/10 transition-colors",
|
|
2533
|
-
"aria-label": `Delete ${t.firstName}`,
|
|
2534
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Trash2Icon, { className: "w-3.5 h-3.5" })
|
|
2525
|
+
className: cn(
|
|
2526
|
+
"inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-bold font-heading uppercase tracking-wider shrink-0",
|
|
2527
|
+
t.status === "completed" ? "bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-400" : "bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-400"
|
|
2528
|
+
),
|
|
2529
|
+
children: t.status
|
|
2535
2530
|
}
|
|
2536
2531
|
),
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
|
|
2542
|
-
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
|
-
|
|
2548
|
-
}
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2532
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-0.5 shrink-0", children: [
|
|
2533
|
+
(onEditTraveller || hasSubmitEditTraveller) && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2534
|
+
"button",
|
|
2535
|
+
{
|
|
2536
|
+
type: "button",
|
|
2537
|
+
onClick: () => {
|
|
2538
|
+
if (onEditTraveller) {
|
|
2539
|
+
onEditTraveller(adventure.id, t.id);
|
|
2540
|
+
} else {
|
|
2541
|
+
onRequestOpenEditModal == null ? void 0 : onRequestOpenEditModal(adventure.id, t);
|
|
2542
|
+
}
|
|
2543
|
+
},
|
|
2544
|
+
className: "flex h-8 w-8 sm:h-7 sm:w-7 items-center justify-center rounded-lg text-muted-foreground hover:text-primary hover:bg-primary/10 transition-colors",
|
|
2545
|
+
"aria-label": `Edit ${t.firstName}`,
|
|
2546
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.PencilIcon, { className: "w-3.5 h-3.5" })
|
|
2547
|
+
}
|
|
2548
|
+
),
|
|
2549
|
+
(onRemoveTraveller || hasConfirmRemoveTraveller) && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2550
|
+
"button",
|
|
2551
|
+
{
|
|
2552
|
+
type: "button",
|
|
2553
|
+
onClick: () => {
|
|
2554
|
+
if (!canRemoveTraveller) return;
|
|
2555
|
+
if (onRemoveTraveller) {
|
|
2556
|
+
onRemoveTraveller(adventure.id, t.id);
|
|
2557
|
+
} else {
|
|
2558
|
+
onRequestOpenDeleteModal == null ? void 0 : onRequestOpenDeleteModal(adventure.id, t);
|
|
2559
|
+
}
|
|
2560
|
+
},
|
|
2561
|
+
disabled: !canRemoveTraveller,
|
|
2562
|
+
title: disabledRemoveTitle,
|
|
2563
|
+
"aria-disabled": !canRemoveTraveller,
|
|
2564
|
+
className: cn(
|
|
2565
|
+
"flex h-8 w-8 sm:h-7 sm:w-7 items-center justify-center rounded-lg text-muted-foreground hover:text-destructive hover:bg-destructive/10 transition-colors",
|
|
2566
|
+
"disabled:opacity-40 disabled:cursor-not-allowed disabled:pointer-events-none disabled:hover:text-muted-foreground disabled:hover:bg-transparent"
|
|
2567
|
+
),
|
|
2568
|
+
"aria-label": `Delete ${t.firstName}`,
|
|
2569
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Trash2Icon, { className: "w-3.5 h-3.5" })
|
|
2570
|
+
}
|
|
2571
|
+
),
|
|
2572
|
+
(onUnassignFromAdventure || onRemoveTraveller || hasConfirmRemoveTraveller) && /* @__PURE__ */ jsxRuntime.jsx(
|
|
2573
|
+
"button",
|
|
2574
|
+
{
|
|
2575
|
+
type: "button",
|
|
2576
|
+
onClick: () => {
|
|
2577
|
+
if (!canRemoveTraveller) return;
|
|
2578
|
+
if (onUnassignFromAdventure) {
|
|
2579
|
+
onUnassignFromAdventure(adventure.id, t.id);
|
|
2580
|
+
} else if (onRemoveTraveller) {
|
|
2581
|
+
onRemoveTraveller(adventure.id, t.id);
|
|
2582
|
+
} else {
|
|
2583
|
+
onRequestOpenDeleteModal == null ? void 0 : onRequestOpenDeleteModal(adventure.id, t);
|
|
2584
|
+
}
|
|
2585
|
+
},
|
|
2586
|
+
disabled: !canRemoveTraveller,
|
|
2587
|
+
title: disabledRemoveTitle,
|
|
2588
|
+
"aria-disabled": !canRemoveTraveller,
|
|
2589
|
+
className: cn(
|
|
2590
|
+
"flex h-8 w-8 sm:h-7 sm:w-7 items-center justify-center rounded-lg text-muted-foreground hover:text-amber-500 hover:bg-amber-500/10 transition-colors",
|
|
2591
|
+
"disabled:opacity-40 disabled:cursor-not-allowed disabled:pointer-events-none disabled:hover:text-muted-foreground disabled:hover:bg-transparent"
|
|
2592
|
+
),
|
|
2593
|
+
"aria-label": `Remove ${t.firstName} from adventure`,
|
|
2594
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.UserMinusIcon, { className: "w-3.5 h-3.5" })
|
|
2595
|
+
}
|
|
2596
|
+
)
|
|
2597
|
+
] })
|
|
2555
2598
|
] })
|
|
2556
|
-
]
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
)
|
|
2599
|
+
]
|
|
2600
|
+
},
|
|
2601
|
+
t.id
|
|
2602
|
+
);
|
|
2603
|
+
}) }),
|
|
2561
2604
|
adventure.suggestedTravellers && adventure.suggestedTravellers.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 pt-2", children: [
|
|
2562
2605
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground font-ui", children: "Add to this adventure" }),
|
|
2563
2606
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: adventure.suggestedTravellers.map((st) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -3015,6 +3058,10 @@ function BookingDetails({
|
|
|
3015
3058
|
contact,
|
|
3016
3059
|
agentName,
|
|
3017
3060
|
agentContactUrl,
|
|
3061
|
+
agentNameFallback,
|
|
3062
|
+
agentLabel,
|
|
3063
|
+
agentContactLabel,
|
|
3064
|
+
cannotRemoveLastTravellerLabel,
|
|
3018
3065
|
adventures,
|
|
3019
3066
|
summaryLineItems,
|
|
3020
3067
|
subtotal,
|
|
@@ -3164,26 +3211,49 @@ function BookingDetails({
|
|
|
3164
3211
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-semibold", children: contact.name }),
|
|
3165
3212
|
contact.email && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground font-sans truncate", children: contact.email })
|
|
3166
3213
|
] }),
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
|
|
3183
|
-
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3214
|
+
(() => {
|
|
3215
|
+
const hasAgent = !!agentName;
|
|
3216
|
+
const displayName = hasAgent ? agentName : agentNameFallback != null ? agentNameFallback : "No agent assigned";
|
|
3217
|
+
const initial = hasAgent ? agentName.charAt(0) : "?";
|
|
3218
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-xl border border-border bg-card p-4 flex items-center gap-3.5 min-w-0", children: [
|
|
3219
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3220
|
+
"div",
|
|
3221
|
+
{
|
|
3222
|
+
className: cn(
|
|
3223
|
+
"flex h-10 w-10 shrink-0 items-center justify-center rounded-full font-heading font-bold text-sm uppercase",
|
|
3224
|
+
hasAgent ? "bg-primary/10 text-primary" : "bg-muted text-muted-foreground"
|
|
3225
|
+
),
|
|
3226
|
+
children: initial
|
|
3227
|
+
}
|
|
3228
|
+
),
|
|
3229
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-0.5 min-w-0", children: [
|
|
3230
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs font-bold text-muted-foreground font-heading uppercase tracking-widest", children: agentLabel != null ? agentLabel : "Your Agent" }),
|
|
3231
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3232
|
+
"p",
|
|
3233
|
+
{
|
|
3234
|
+
className: cn(
|
|
3235
|
+
"text-sm font-sans truncate",
|
|
3236
|
+
hasAgent ? "font-semibold text-foreground" : "italic text-muted-foreground"
|
|
3237
|
+
),
|
|
3238
|
+
children: displayName
|
|
3239
|
+
}
|
|
3240
|
+
)
|
|
3241
|
+
] }),
|
|
3242
|
+
hasAgent && agentContactUrl && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3243
|
+
"a",
|
|
3244
|
+
{
|
|
3245
|
+
href: agentContactUrl,
|
|
3246
|
+
target: "_blank",
|
|
3247
|
+
rel: "noopener noreferrer",
|
|
3248
|
+
className: "ml-auto shrink-0 flex items-center gap-1.5 rounded-full bg-primary/10 px-3.5 py-1.5 text-xs font-semibold text-primary font-ui transition-colors hover:bg-primary/20",
|
|
3249
|
+
children: [
|
|
3250
|
+
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageCircleIcon, { className: "w-3.5 h-3.5" }),
|
|
3251
|
+
agentContactLabel != null ? agentContactLabel : "Contact"
|
|
3252
|
+
]
|
|
3253
|
+
}
|
|
3254
|
+
)
|
|
3255
|
+
] });
|
|
3256
|
+
})(),
|
|
3187
3257
|
/* @__PURE__ */ jsxRuntime.jsxs(InfoCard, { label: "Total People", children: [
|
|
3188
3258
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3189
3259
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.UsersIcon, { className: "w-4 h-4 text-primary shrink-0" }),
|
|
@@ -3220,7 +3290,8 @@ function BookingDetails({
|
|
|
3220
3290
|
hasConfirmRemoveTraveller,
|
|
3221
3291
|
onRequestOpenAddModal: handleRequestOpenAddModal,
|
|
3222
3292
|
onRequestOpenEditModal: handleRequestOpenEditModal,
|
|
3223
|
-
onRequestOpenDeleteModal: handleRequestOpenDeleteModal
|
|
3293
|
+
onRequestOpenDeleteModal: handleRequestOpenDeleteModal,
|
|
3294
|
+
cannotRemoveLastTravellerLabel
|
|
3224
3295
|
},
|
|
3225
3296
|
adventure.id
|
|
3226
3297
|
))
|