@asdp/ferryui 0.1.22-dev.10229 → 0.1.22-dev.10281

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.mjs CHANGED
@@ -275,7 +275,10 @@ var sharedColors = {
275
275
  "Shared_Red_Primary": "#d13438",
276
276
  "Shared_Orange_Shade_20": "#bc4b09",
277
277
  "Shared_Orange_Tint_60": "#fff9f5",
278
- "Shared_Green_Primary": "#107c10"};
278
+ "Shared_Green_Primary": "#107c10",
279
+ "Shared_Lilac_Primary": "#b146c2",
280
+ "Shared_Lilac_Tint_40": "#e6bfed",
281
+ "Shared_Lilac_Tint_60": "#fcf6fd"};
279
282
  var foundationColors = {
280
283
  "Foundation_Danger_error": "#FD3A3A"
281
284
  };
@@ -354,67 +357,6 @@ var extendedTokens = {
354
357
  colorBrandForegroundLinkSelected: customBrand[110]});
355
358
 
356
359
  // src/constants/api.ts
357
- var API_ENDPOINTS = {
358
- PORTS: {
359
- ORIGIN: "/v1/surrounding/catalog/ports/list/origin",
360
- DESTINATION: "/v1/surrounding/catalog/ports/list/destination"
361
- },
362
- SERVICES: {
363
- LIST: "/v1/surrounding/catalog/service-types"
364
- },
365
- PASSENGERS: {
366
- LIST: "/v1/surrounding/catalog/passenger-types"
367
- },
368
- // Authentication endpoints
369
- AUTH: {
370
- LOGIN: "/v1/surrounding/auth/login",
371
- REGISTER: "/auth/register",
372
- LOGOUT: "/auth/logout",
373
- REFRESH: "/auth/refresh",
374
- PROFILE: "/auth/profile",
375
- UPDATE_PROFILE: "/auth/profile",
376
- CHANGE_PASSWORD: "/auth/change-password",
377
- FORGOT_PASSWORD: "/auth/forgot-password",
378
- RESET_PASSWORD: "/auth/reset-password",
379
- VERIFY_EMAIL: "/auth/verify-email"
380
- },
381
- // User management
382
- USERS: {
383
- LIST: "/users",
384
- CREATE: "/users",
385
- DETAIL: (id) => `/users/${id}`,
386
- UPDATE: (id) => `/users/${id}`,
387
- DELETE: (id) => `/users/${id}`,
388
- AVATAR: (id) => `/users/${id}/avatar`
389
- },
390
- // File management
391
- FILES: {
392
- UPLOAD: "/files/upload",
393
- DOWNLOAD: (id) => `/files/${id}/download`,
394
- DELETE: (id) => `/files/${id}`,
395
- LIST: "/files"
396
- },
397
- // Dashboard/Analytics
398
- DASHBOARD: {
399
- STATS: "/dashboard/stats",
400
- CHART_DATA: "/dashboard/chart-data",
401
- RECENT_ACTIVITIES: "/dashboard/recent-activities"
402
- },
403
- // Notifications
404
- NOTIFICATIONS: {
405
- LIST: "/notifications",
406
- MARK_READ: (id) => `/notifications/${id}/read`,
407
- MARK_ALL_READ: "/notifications/read-all",
408
- DELETE: (id) => `/notifications/${id}`,
409
- SETTINGS: "/notifications/settings"
410
- },
411
- // Settings
412
- SETTINGS: {
413
- GENERAL: "/settings/general",
414
- SECURITY: "/settings/security",
415
- PREFERENCES: "/settings/preferences"
416
- }
417
- };
418
360
  var API_CONFIG = {
419
361
  TIMEOUT: 3e4,
420
362
  RETRY_ATTEMPTS: 3,
@@ -14859,7 +14801,7 @@ var CardAddon = ({
14859
14801
  /* @__PURE__ */ jsxs(Caption1Stronger, { children: [
14860
14802
  mergedLabels.currencySymbol,
14861
14803
  " ",
14862
- footerData.price.toLocaleString(
14804
+ footerData.price?.toLocaleString(
14863
14805
  language === "id" ? "id-ID" : "en-US"
14864
14806
  ),
14865
14807
  footerData.priceUnit
@@ -15010,7 +14952,7 @@ var CardAddon = ({
15010
14952
  /* @__PURE__ */ jsxs(Subtitle1, { style: { fontSize: tokens.fontSizeBase600 }, children: [
15011
14953
  mergedLabels.currencySymbol,
15012
14954
  " ",
15013
- footerData.price.toLocaleString(
14955
+ footerData.price?.toLocaleString(
15014
14956
  language === "id" ? "id-ID" : "en-US"
15015
14957
  )
15016
14958
  ] })
@@ -15360,7 +15302,8 @@ var CardReview = ({
15360
15302
  items,
15361
15303
  children,
15362
15304
  className,
15363
- headerAction
15305
+ headerAction,
15306
+ isLoading = false
15364
15307
  }) => {
15365
15308
  const styles = useStyles33();
15366
15309
  const mergedLabels = { ...DEFAULT_LABELS32[language], ...labels };
@@ -15371,39 +15314,60 @@ var CardReview = ({
15371
15314
  headerAction && /* @__PURE__ */ jsx("div", { children: headerAction })
15372
15315
  ] }),
15373
15316
  /* @__PURE__ */ jsxs("div", { className: styles.contentContainer, children: [
15374
- items?.map((item, index) => /* @__PURE__ */ jsxs("div", { className: `${styles.row} ${item.className || ""}`, children: [
15375
- typeof item.label === "string" ? /* @__PURE__ */ jsx(
15376
- Caption1,
15377
- {
15378
- className: `${styles.defaultLabel} ${item.labelClassName || ""}`,
15379
- children: item.label
15380
- }
15381
- ) : (
15382
- // Clone element to append className if it's a valid React element
15383
- React.isValidElement(item.label) ? React.cloneElement(item.label, {
15384
- className: `${styles.defaultLabel} ${item.labelClassName || ""}${item.label.props.className ? " " + item.label.props.className : ""}`
15385
- }) : /* @__PURE__ */ jsx(
15386
- "div",
15387
- {
15388
- className: `${styles.defaultLabel} ${item.labelClassName || ""}`,
15389
- children: item.label
15390
- }
15391
- )
15392
- ),
15393
- typeof item.value === "string" || typeof item.value === "number" ? /* @__PURE__ */ jsx(
15394
- Body1,
15395
- {
15396
- className: `${styles.defaultValue} ${item.valueClassName || ""}`,
15397
- children: item.value
15398
- }
15399
- ) : /* @__PURE__ */ jsx(
15400
- "div",
15401
- {
15402
- className: `${styles.defaultValue} ${item.valueClassName || ""}`,
15403
- children: item.value
15404
- }
15405
- )
15406
- ] }, index)),
15317
+ isLoading ? /* @__PURE__ */ jsx(Fragment, { children: Array.from({ length: 4 }).map((_, index) => /* @__PURE__ */ jsx("div", { className: styles.row, children: /* @__PURE__ */ jsxs(
15318
+ Skeleton,
15319
+ {
15320
+ style: { width: "100%", display: "flex", gap: "1rem" },
15321
+ children: [
15322
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "40%", height: "16px" } }),
15323
+ /* @__PURE__ */ jsx(
15324
+ SkeletonItem,
15325
+ {
15326
+ style: { width: "30%", height: "16px", marginLeft: "auto" }
15327
+ }
15328
+ )
15329
+ ]
15330
+ }
15331
+ ) }, index)) }) : /* @__PURE__ */ jsx(Fragment, { children: items?.map((item, index) => /* @__PURE__ */ jsxs(
15332
+ "div",
15333
+ {
15334
+ className: `${styles.row} ${item.className || ""}`,
15335
+ children: [
15336
+ typeof item.label === "string" ? /* @__PURE__ */ jsx(
15337
+ Caption1,
15338
+ {
15339
+ className: `${styles.defaultLabel} ${item.labelClassName || ""}`,
15340
+ children: item.label
15341
+ }
15342
+ ) : (
15343
+ // Clone element to append className if it's a valid React element
15344
+ React.isValidElement(item.label) ? React.cloneElement(item.label, {
15345
+ className: `${styles.defaultLabel} ${item.labelClassName || ""}${item.label.props.className ? " " + item.label.props.className : ""}`
15346
+ }) : /* @__PURE__ */ jsx(
15347
+ "div",
15348
+ {
15349
+ className: `${styles.defaultLabel} ${item.labelClassName || ""}`,
15350
+ children: item.label
15351
+ }
15352
+ )
15353
+ ),
15354
+ typeof item.value === "string" || typeof item.value === "number" ? /* @__PURE__ */ jsx(
15355
+ Body1,
15356
+ {
15357
+ className: `${styles.defaultValue} ${item.valueClassName || ""}`,
15358
+ children: item.value
15359
+ }
15360
+ ) : /* @__PURE__ */ jsx(
15361
+ "div",
15362
+ {
15363
+ className: `${styles.defaultValue} ${item.valueClassName || ""}`,
15364
+ children: item.value
15365
+ }
15366
+ )
15367
+ ]
15368
+ },
15369
+ index
15370
+ )) }),
15407
15371
  children
15408
15372
  ] })
15409
15373
  ] });
@@ -15492,7 +15456,8 @@ var CardReviewPassenger = ({
15492
15456
  labels,
15493
15457
  title,
15494
15458
  passengers,
15495
- className
15459
+ className,
15460
+ isLoading = false
15496
15461
  }) => {
15497
15462
  const styles = useStyles34();
15498
15463
  const mergedLabels = { ...DEFAULT_LABELS33[language], ...labels };
@@ -15502,7 +15467,13 @@ var CardReviewPassenger = ({
15502
15467
  /* @__PURE__ */ jsx(Subtitle1, { children: displayTitle }),
15503
15468
  /* @__PURE__ */ jsx(Divider, { className: styles.titleDivider })
15504
15469
  ] }) }),
15505
- passengers.map((passenger, index) => {
15470
+ isLoading ? Array.from({ length: 2 }).map((_, index) => /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(Card, { className: styles.passengerCard, children: /* @__PURE__ */ jsxs(Row, { nogutter: true, className: styles.passengerRow, children: [
15471
+ /* @__PURE__ */ jsx(Col, { children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15472
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "180px", height: "18px", marginBottom: "8px" } }),
15473
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "220px", height: "16px" } })
15474
+ ] }) }),
15475
+ /* @__PURE__ */ jsx(Col, { xs: "content", children: /* @__PURE__ */ jsx(Skeleton, { children: /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "90px", height: "32px" } }) }) })
15476
+ ] }) }) }, index)) : passengers.map((passenger, index) => {
15506
15477
  const badgeConfig = getBadgeConfig(passenger.serviceClass);
15507
15478
  const passengerMeta = `${passenger.ageLabel} \xB7 ${mergedLabels.idNumber} ${passenger.identityNumber}`;
15508
15479
  return /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(Card, { className: styles.passengerCard, children: /* @__PURE__ */ jsxs(Row, { nogutter: true, className: styles.passengerRow, children: [
@@ -15545,7 +15516,9 @@ var DEFAULT_LABELS34 = {
15545
15516
  addOnLabel: "Add On",
15546
15517
  viewDetail: "Lihat Detail",
15547
15518
  noAddOnsLabel: "Tidak ada layanan",
15548
- serviceLabel: "Layanan"
15519
+ serviceLabel: "Layanan",
15520
+ departureLabel: "Pulang Pergi (Keberangkatan)",
15521
+ returnLabel: "Pulang Pergi (Kepulangan)"
15549
15522
  },
15550
15523
  en: {
15551
15524
  title: "Booking Details",
@@ -15557,7 +15530,9 @@ var DEFAULT_LABELS34 = {
15557
15530
  addOnLabel: "Add On",
15558
15531
  viewDetail: "View Details",
15559
15532
  noAddOnsLabel: "No services",
15560
- serviceLabel: "Service"
15533
+ serviceLabel: "Service",
15534
+ departureLabel: "Round Trip (Departure)",
15535
+ returnLabel: "Round Trip (Return)"
15561
15536
  }
15562
15537
  };
15563
15538
  var useStyles35 = makeStyles({
@@ -15580,59 +15555,211 @@ var useStyles35 = makeStyles({
15580
15555
  alignItems: "center",
15581
15556
  justifyContent: "space-between",
15582
15557
  width: "100%"
15558
+ },
15559
+ badgeLilac: {
15560
+ borderRadius: tokens.borderRadiusXLarge,
15561
+ border: `0px solid ${sharedColors.Shared_Lilac_Tint_40}`,
15562
+ color: sharedColors.Shared_Lilac_Primary,
15563
+ backgroundColor: sharedColors.Shared_Lilac_Tint_60
15564
+ },
15565
+ badgeOrange: {
15566
+ borderRadius: tokens.borderRadiusXLarge,
15567
+ border: `0px solid ${tokens.colorStatusWarningForeground2}`,
15568
+ color: tokens.colorStatusWarningForeground2,
15569
+ backgroundColor: sharedColors.Shared_Orange_Tint_60
15583
15570
  }
15584
15571
  });
15572
+ var TripSection = ({ data, label, badgeClassName, mergedLabels, onViewAddOns }) => {
15573
+ const styles = useStyles35();
15574
+ return /* @__PURE__ */ jsxs(Row, { nogutter: true, direction: "column", style: { gap: tokens.spacingHorizontalL }, children: [
15575
+ label && /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(
15576
+ Badge,
15577
+ {
15578
+ size: "extra-large",
15579
+ appearance: "tint",
15580
+ shape: "circular",
15581
+ className: badgeClassName,
15582
+ children: label
15583
+ }
15584
+ ) }),
15585
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15586
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.fromLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: data.from }) }) }),
15587
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.toLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: data.to }) }) })
15588
+ ] }) }),
15589
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15590
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.scheduleLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: data.scheduleTime }) }) }),
15591
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.bookingNameLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: data.bookingName }) }) })
15592
+ ] }) }),
15593
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15594
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.passengerTypeLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: data.passengerType }) }) }),
15595
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.addOnLabel, children: /* @__PURE__ */ jsxs("div", { className: styles.addOnRow, children: [
15596
+ /* @__PURE__ */ jsx(Body1Strong, { children: data.addOnsCount === 0 ? mergedLabels.noAddOnsLabel : `${data.addOnsCount} ${data.addOnsCount === 1 ? mergedLabels.serviceLabel : mergedLabels.serviceLabel}` }),
15597
+ data.addOnsCount > 0 && /* @__PURE__ */ jsx(
15598
+ Button,
15599
+ {
15600
+ appearance: "transparent",
15601
+ onClick: onViewAddOns,
15602
+ style: { color: brandColors[80] },
15603
+ children: mergedLabels.viewDetail
15604
+ }
15605
+ )
15606
+ ] }) }) })
15607
+ ] }) })
15608
+ ] });
15609
+ };
15585
15610
  var CardReviewDetail = ({
15586
15611
  language = "id",
15587
15612
  labels,
15588
- from,
15589
- to,
15590
- scheduleTime,
15591
- bookingName,
15592
- passengerType,
15593
- addOnsCount,
15613
+ departureData,
15614
+ returnData,
15594
15615
  onViewAddOns,
15595
- className
15616
+ className,
15617
+ isLoading = false,
15618
+ isRoundTrip = false
15596
15619
  }) => {
15597
15620
  const styles = useStyles35();
15598
15621
  const mergedLabels = { ...DEFAULT_LABELS34[language], ...labels };
15599
- return /* @__PURE__ */ jsx(Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxs(
15622
+ return /* @__PURE__ */ jsx(Card, { className: `${styles.card} ${className || ""}`, children: isLoading ? /* @__PURE__ */ jsxs(
15600
15623
  Row,
15601
15624
  {
15602
15625
  nogutter: true,
15603
15626
  direction: "column",
15604
15627
  style: { gap: tokens.spacingHorizontalL },
15605
15628
  children: [
15606
- /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { nogutter: true, className: styles.titleRow, children: [
15607
- /* @__PURE__ */ jsx(Subtitle1, { children: mergedLabels.title }),
15608
- /* @__PURE__ */ jsx(Divider, { style: { width: 0 } })
15609
- ] }) }),
15629
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(Skeleton, { children: /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "30%", height: "24px" } }) }) }),
15610
15630
  /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15611
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.fromLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: from }) }) }),
15612
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.toLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: to }) }) })
15631
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15632
+ /* @__PURE__ */ jsx(
15633
+ SkeletonItem,
15634
+ {
15635
+ style: {
15636
+ width: "100%",
15637
+ height: "20px",
15638
+ marginBottom: "8px"
15639
+ }
15640
+ }
15641
+ ),
15642
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15643
+ ] }) }),
15644
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15645
+ /* @__PURE__ */ jsx(
15646
+ SkeletonItem,
15647
+ {
15648
+ style: {
15649
+ width: "100%",
15650
+ height: "20px",
15651
+ marginBottom: "8px"
15652
+ }
15653
+ }
15654
+ ),
15655
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15656
+ ] }) })
15613
15657
  ] }) }),
15614
15658
  /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15615
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.scheduleLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: scheduleTime }) }) }),
15616
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.bookingNameLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: bookingName }) }) })
15659
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15660
+ /* @__PURE__ */ jsx(
15661
+ SkeletonItem,
15662
+ {
15663
+ style: {
15664
+ width: "100%",
15665
+ height: "20px",
15666
+ marginBottom: "8px"
15667
+ }
15668
+ }
15669
+ ),
15670
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15671
+ ] }) }),
15672
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15673
+ /* @__PURE__ */ jsx(
15674
+ SkeletonItem,
15675
+ {
15676
+ style: {
15677
+ width: "100%",
15678
+ height: "20px",
15679
+ marginBottom: "8px"
15680
+ }
15681
+ }
15682
+ ),
15683
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15684
+ ] }) })
15617
15685
  ] }) }),
15618
15686
  /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { className: styles.fieldRow, children: [
15619
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.passengerTypeLabel, children: /* @__PURE__ */ jsx(Body1Strong, { children: passengerType }) }) }),
15620
- /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsx(Field, { label: mergedLabels.addOnLabel, children: /* @__PURE__ */ jsxs("div", { className: styles.addOnRow, children: [
15621
- /* @__PURE__ */ jsx(Body1Strong, { children: addOnsCount === 0 ? mergedLabels.noAddOnsLabel : `${addOnsCount} ${addOnsCount === 1 ? mergedLabels.serviceLabel : mergedLabels.serviceLabel}` }),
15622
- addOnsCount > 0 && /* @__PURE__ */ jsx(
15623
- Button,
15687
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15688
+ /* @__PURE__ */ jsx(
15689
+ SkeletonItem,
15624
15690
  {
15625
- appearance: "transparent",
15626
- onClick: onViewAddOns,
15627
- style: { color: brandColors[80] },
15628
- children: mergedLabels.viewDetail
15691
+ style: {
15692
+ width: "100%",
15693
+ height: "20px",
15694
+ marginBottom: "8px"
15695
+ }
15629
15696
  }
15630
- )
15631
- ] }) }) })
15697
+ ),
15698
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15699
+ ] }) }),
15700
+ /* @__PURE__ */ jsx(Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxs(Skeleton, { children: [
15701
+ /* @__PURE__ */ jsx(
15702
+ SkeletonItem,
15703
+ {
15704
+ style: {
15705
+ width: "100%",
15706
+ height: "20px",
15707
+ marginBottom: "8px"
15708
+ }
15709
+ }
15710
+ ),
15711
+ /* @__PURE__ */ jsx(SkeletonItem, { style: { width: "80%", height: "20px" } })
15712
+ ] }) })
15632
15713
  ] }) })
15633
15714
  ]
15634
15715
  }
15635
- ) });
15716
+ ) : /* @__PURE__ */ jsxs(Fragment, { children: [
15717
+ /* @__PURE__ */ jsxs(
15718
+ Row,
15719
+ {
15720
+ nogutter: true,
15721
+ direction: "column",
15722
+ style: { gap: tokens.spacingHorizontalL },
15723
+ children: [
15724
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsxs(Row, { nogutter: true, className: styles.titleRow, children: [
15725
+ /* @__PURE__ */ jsx(Subtitle1, { children: mergedLabels.title }),
15726
+ /* @__PURE__ */ jsx(Divider, { style: { width: 0 } })
15727
+ ] }) }),
15728
+ /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(
15729
+ TripSection,
15730
+ {
15731
+ data: departureData,
15732
+ label: isRoundTrip ? mergedLabels.departureLabel : void 0,
15733
+ badgeClassName: isRoundTrip ? styles.badgeLilac : void 0,
15734
+ mergedLabels,
15735
+ onViewAddOns
15736
+ }
15737
+ ) })
15738
+ ]
15739
+ }
15740
+ ),
15741
+ isRoundTrip && returnData && /* @__PURE__ */ jsxs(Fragment, { children: [
15742
+ /* @__PURE__ */ jsx(Divider, { style: { margin: `${tokens.spacingHorizontalL} 0` } }),
15743
+ /* @__PURE__ */ jsx(
15744
+ Row,
15745
+ {
15746
+ nogutter: true,
15747
+ direction: "column",
15748
+ style: { gap: tokens.spacingHorizontalL },
15749
+ children: /* @__PURE__ */ jsx(Col, { xs: 12, children: /* @__PURE__ */ jsx(
15750
+ TripSection,
15751
+ {
15752
+ data: returnData,
15753
+ label: mergedLabels.returnLabel,
15754
+ badgeClassName: styles.badgeOrange,
15755
+ mergedLabels,
15756
+ onViewAddOns
15757
+ }
15758
+ ) })
15759
+ }
15760
+ )
15761
+ ] })
15762
+ ] }) });
15636
15763
  };
15637
15764
 
15638
15765
  // src/components/CardPriceDetails/CardPriceDetails.constants.ts
@@ -17414,6 +17541,6 @@ var CardProfileMenu = ({
17414
17541
  ) });
17415
17542
  };
17416
17543
 
17417
- export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard_default as BackgroundTicketCard, BackgroundTicketCardVertical_default as BackgroundTicketCardVertical, COUNTRIES, CardAddon, CardBanner, CardBookingAddOn, CardBookingTicket, CardFAQ, CardMealCatalog, CardOrdererInfo, CardPassengerList, CardPaymentGuide, CardPaymentInfo, CardPaymentMethodList, CardPriceDetails, CardProfileMenu, CardPromo, CardReview, CardReviewDetail, CardReviewPassenger, CardServiceMenu, CardStatusOrder, CardTicket, CardTicketSearch, DEFAULT_LABELS8 as CardTicketSearchDefaultLabels, CardTicketSearchSummary, DEFAULT_LABELS9 as CardTicketSearchSummaryDefaultLabels, CardVehicleDetail, CardVehicleOwnerForm, CarouselWithCustomNav, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS18 as DateFilterDefaultLabels, EmptyContent, DEFAULT_LABELS11 as EmptyContentDefaultLabels, FileUpload_default as FileUpload, GENDER, HARDCODED_ID, HTTP_STATUS, IDENTITY_TYPE, InputDynamic_default as InputDynamic, LOAD_TYPE, MANIFEST_ENTITY, MODAL_PRESETS, MY_TICKET_STATUS, MY_TICKET_TAB, ModalFilterTicket, DEFAULT_LABELS17 as ModalFilterTicketDefaultLabels, ModalIllustration, ModalListMenuService, ModalListPassenger, ModalPassengerForm, ModalPreviewImage, ModalPriceDetail, ModalSearchHarbor, ModalSearchTicket, ModalSelectDate, ModalService, ModalTotalPassengers, ModalTypeOfService, PASSENGER_TYPE, SortMenu, Stepper, calculateAge, getBadgeConfig, getModalPreset, getSortLabel, hexToRgba };
17544
+ export { API_CONFIG, API_ERROR_MESSAGES, BackgroundTicketCard_default as BackgroundTicketCard, BackgroundTicketCardVertical_default as BackgroundTicketCardVertical, COUNTRIES, CardAddon, CardBanner, CardBookingAddOn, CardBookingTicket, CardFAQ, CardMealCatalog, CardOrdererInfo, CardPassengerList, CardPaymentGuide, CardPaymentInfo, CardPaymentMethodList, CardPriceDetails, CardProfileMenu, CardPromo, CardReview, CardReviewDetail, CardReviewPassenger, CardServiceMenu, CardStatusOrder, CardTicket, CardTicketSearch, DEFAULT_LABELS8 as CardTicketSearchDefaultLabels, CardTicketSearchSummary, DEFAULT_LABELS9 as CardTicketSearchSummaryDefaultLabels, CardVehicleDetail, CardVehicleOwnerForm, CarouselWithCustomNav, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS18 as DateFilterDefaultLabels, EmptyContent, DEFAULT_LABELS11 as EmptyContentDefaultLabels, FileUpload_default as FileUpload, GENDER, HARDCODED_ID, HTTP_STATUS, IDENTITY_TYPE, InputDynamic_default as InputDynamic, LOAD_TYPE, MANIFEST_ENTITY, MODAL_PRESETS, MY_TICKET_STATUS, MY_TICKET_TAB, ModalFilterTicket, DEFAULT_LABELS17 as ModalFilterTicketDefaultLabels, ModalIllustration, ModalListMenuService, ModalListPassenger, ModalPassengerForm, ModalPreviewImage, ModalPriceDetail, ModalSearchHarbor, ModalSearchTicket, ModalSelectDate, ModalService, ModalTotalPassengers, ModalTypeOfService, PASSENGER_TYPE, SortMenu, Stepper, calculateAge, getBadgeConfig, getModalPreset, getSortLabel, hexToRgba };
17418
17545
  //# sourceMappingURL=index.mjs.map
17419
17546
  //# sourceMappingURL=index.mjs.map