@asdp/ferryui 0.1.22-dev.10161 → 0.1.22-dev.10166

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.js CHANGED
@@ -12392,7 +12392,6 @@ var DEFAULT_LABELS26 = {
12392
12392
  cargoListTitle: "Daftar Muatan",
12393
12393
  cargoItemTitle: "Muatan {index}",
12394
12394
  commodityLabel: "Data Komoditas",
12395
- commodityHelperTextPrefix: "Pahami definisi, jenis dan contoh komoditas",
12396
12395
  hereLinkText: "disini",
12397
12396
  cargoTypeLabel: "Data Jenis Muatan",
12398
12397
  cargoTypeHelperText: 'Apabila jenis muatan belum tersedia dapat memilih "Lainnya" dan silakan isi jenis muatannya.',
@@ -12401,7 +12400,6 @@ var DEFAULT_LABELS26 = {
12401
12400
  industryTypeLabel: "Data Jenis Industri",
12402
12401
  industryTypeHelperText: 'Apabila jenis industri belum tersedia dapat memilih "Lainnya" dan silakan isi jenis industrinya.',
12403
12402
  cargoCategoryLabel: "Kategori Muatan",
12404
- cargoCategoryHelperTextPrefix: "Pahami definisi, jenis dan contoh kategori muatan",
12405
12403
  deleteCargoButton: "Hapus Muatan",
12406
12404
  addCargoButton: "Tambah Muatan",
12407
12405
  cargoTypeOptions: {
@@ -12444,7 +12442,6 @@ var DEFAULT_LABELS26 = {
12444
12442
  cargoListTitle: "Cargo List",
12445
12443
  cargoItemTitle: "Cargo {index}",
12446
12444
  commodityLabel: "Commodity Data",
12447
- commodityHelperTextPrefix: "Understand definition, types and examples of commodities",
12448
12445
  hereLinkText: "here",
12449
12446
  cargoTypeLabel: "Cargo Type Data",
12450
12447
  cargoTypeHelperText: 'If the cargo type is not available, select "Other" and enter the cargo type.',
@@ -12453,7 +12450,6 @@ var DEFAULT_LABELS26 = {
12453
12450
  industryTypeLabel: "Industry Type Data",
12454
12451
  industryTypeHelperText: 'If the industry type is not available, select "Other" and enter the industry type.',
12455
12452
  cargoCategoryLabel: "Cargo Category",
12456
- cargoCategoryHelperTextPrefix: "Understand definition, types and examples of cargo categories",
12457
12453
  deleteCargoButton: "Delete Cargo",
12458
12454
  addCargoButton: "Add Cargo",
12459
12455
  cargoTypeOptions: {
@@ -13106,20 +13102,6 @@ var CardVehicleOwnerForm = ({
13106
13102
  type: "select",
13107
13103
  size: "large"
13108
13104
  }
13109
- ),
13110
- /* @__PURE__ */ jsxRuntime.jsxs(
13111
- reactComponents.Caption1,
13112
- {
13113
- style: {
13114
- color: reactComponents.tokens.colorNeutralForeground3,
13115
- marginTop: "0.25rem"
13116
- },
13117
- children: [
13118
- mergedLabels.commodityHelperTextPrefix,
13119
- " ",
13120
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: "#", className: styles.link, children: mergedLabels.hereLinkText })
13121
- ]
13122
- }
13123
13105
  )
13124
13106
  ] }),
13125
13107
  /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Col, { md: 3, children: [
@@ -13297,9 +13279,14 @@ var CardVehicleOwnerForm = ({
13297
13279
  fontFamily: reactComponents.tokens.fontFamilyBase
13298
13280
  },
13299
13281
  onKeyDown: (e) => {
13300
- if (["e", "E", "+", "-", ".", ","].includes(
13301
- e.key
13302
- )) {
13282
+ if ([
13283
+ "e",
13284
+ "E",
13285
+ "+",
13286
+ "-",
13287
+ ".",
13288
+ ","
13289
+ ].includes(e.key)) {
13303
13290
  e.preventDefault();
13304
13291
  }
13305
13292
  },
@@ -13502,20 +13489,6 @@ var CardVehicleOwnerForm = ({
13502
13489
  size: "large",
13503
13490
  type: "select"
13504
13491
  }
13505
- ),
13506
- /* @__PURE__ */ jsxRuntime.jsxs(
13507
- reactComponents.Caption1,
13508
- {
13509
- style: {
13510
- color: reactComponents.tokens.colorNeutralForeground3,
13511
- marginTop: "0.25rem"
13512
- },
13513
- children: [
13514
- mergedLabels.cargoCategoryHelperTextPrefix,
13515
- " ",
13516
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: "#", className: styles.link, children: mergedLabels.hereLinkText })
13517
- ]
13518
- }
13519
13492
  )
13520
13493
  ] })
13521
13494
  ] }),
@@ -13863,19 +13836,21 @@ var CardBookingTicket = ({
13863
13836
  /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: styles.bookingDetailBottom, children: [
13864
13837
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.totalPrice, children: [
13865
13838
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.totalPriceLabel }),
13866
- /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Title3, { className: styles.priceText, children: [
13867
- mergedLabels.currencySymbol,
13868
- " ",
13869
- totalPrice
13870
- ] }),
13871
- /* @__PURE__ */ jsxRuntime.jsx(
13872
- react.Icon,
13873
- {
13874
- icon: "fluent:chevron-down-24-filled",
13875
- onClick: onPriceDetailClick,
13876
- style: { cursor: "pointer" }
13877
- }
13878
- )
13839
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { style: { display: "flex", gap: reactComponents.tokens.spacingHorizontalL, alignItems: "center" }, children: [
13840
+ /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Title3, { className: styles.priceText, children: [
13841
+ mergedLabels.currencySymbol,
13842
+ " ",
13843
+ totalPrice
13844
+ ] }),
13845
+ /* @__PURE__ */ jsxRuntime.jsx(
13846
+ react.Icon,
13847
+ {
13848
+ icon: "fluent:chevron-down-24-filled",
13849
+ onClick: onPriceDetailClick,
13850
+ style: { cursor: "pointer" }
13851
+ }
13852
+ )
13853
+ ] })
13879
13854
  ] }),
13880
13855
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.gapButton, children: [
13881
13856
  !(paymentStep === "pay") && /* @__PURE__ */ jsxRuntime.jsx(
@@ -14436,7 +14411,7 @@ var CardAddon = ({
14436
14411
  )
14437
14412
  ] })
14438
14413
  ] }),
14439
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.mealActions, children: [
14414
+ mealData.showActions !== false && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.mealActions, children: [
14440
14415
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.qtySelector, children: [
14441
14416
  /* @__PURE__ */ jsxRuntime.jsx(
14442
14417
  reactComponents.Button,
@@ -14794,8 +14769,9 @@ var useStyles32 = reactComponents.makeStyles({
14794
14769
  card: {
14795
14770
  padding: "1.5rem",
14796
14771
  borderRadius: reactComponents.tokens.borderRadiusXLarge,
14797
- boxShadow: reactComponents.tokens.shadow4,
14798
- zIndex: 3
14772
+ boxShadow: "none",
14773
+ zIndex: 3,
14774
+ border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`
14799
14775
  },
14800
14776
  headerContainer: {
14801
14777
  display: "flex",
@@ -14901,93 +14877,69 @@ var DEFAULT_LABELS32 = {
14901
14877
  };
14902
14878
  var useStyles33 = reactComponents.makeStyles({
14903
14879
  card: {
14904
- padding: "1.5rem",
14880
+ boxShadow: "none",
14881
+ border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`,
14905
14882
  borderRadius: reactComponents.tokens.borderRadiusXLarge,
14906
- boxShadow: reactComponents.tokens.shadow4,
14907
- zIndex: 3
14883
+ padding: `${reactComponents.tokens.spacingHorizontalL} ${reactComponents.tokens.spacingHorizontalXXL}`
14908
14884
  },
14909
- headerContainer: {
14885
+ titleRow: {
14910
14886
  display: "flex",
14911
14887
  alignItems: "center",
14912
- marginBottom: "1rem",
14913
- gap: "1rem"
14914
- },
14915
- headerTitle: {
14916
- whiteSpace: "nowrap",
14917
- fontWeight: reactComponents.tokens.fontWeightSemibold
14888
+ gap: reactComponents.tokens.spacingHorizontalS
14918
14889
  },
14919
- headerLine: {
14920
- height: "1px",
14921
- flexGrow: 1,
14922
- backgroundColor: reactComponents.tokens.colorNeutralStroke2
14890
+ titleDivider: {
14891
+ flex: 1
14923
14892
  },
14924
- contentContainer: {
14893
+ list: {
14925
14894
  display: "flex",
14926
- flexDirection: "column"
14895
+ flexDirection: "column",
14896
+ rowGap: reactComponents.tokens.spacingVerticalL
14927
14897
  },
14928
- passengerItem: {
14898
+ passengerCard: {
14899
+ boxShadow: "none",
14900
+ border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`,
14901
+ borderRadius: reactComponents.tokens.borderRadius3XLarge,
14902
+ padding: reactComponents.tokens.spacingHorizontalL
14903
+ },
14904
+ passengerRow: {
14905
+ width: "100%",
14906
+ alignItems: "center"
14907
+ },
14908
+ passengerInfo: {
14929
14909
  display: "flex",
14930
14910
  flexDirection: "column",
14931
- gap: reactComponents.tokens.spacingVerticalS,
14932
- paddingBottom: reactComponents.tokens.spacingVerticalL,
14933
- paddingTop: reactComponents.tokens.spacingVerticalM,
14934
- borderBottom: `1px solid ${reactComponents.tokens.colorNeutralStroke2}`,
14935
- ":last-child": {
14936
- borderBottom: "none",
14937
- paddingBottom: 0
14938
- }
14939
- // Matches styles.passengerItem in Review.tsx
14911
+ gap: reactComponents.tokens.spacingVerticalXXS
14940
14912
  },
14941
- itemHeader: {
14942
- display: "flex",
14943
- justifyContent: "space-between",
14944
- alignItems: "center",
14945
- marginBottom: reactComponents.tokens.spacingVerticalS
14913
+ passengerName: {
14914
+ color: reactComponents.tokens.colorNeutralForeground1
14946
14915
  },
14947
- name: {
14948
- color: "#00B8D4",
14949
- // Cyan color from design
14950
- fontSize: reactComponents.tokens.fontSizeBase400
14916
+ passengerMeta: {
14917
+ color: reactComponents.tokens.colorNeutralForeground2
14951
14918
  },
14952
- // Badge Styles
14953
14919
  badgeContainer: {
14954
- display: "flex",
14955
- alignItems: "center",
14956
- position: "relative"
14957
- },
14958
- badgeContent: {
14959
- display: "flex",
14920
+ display: "inline-flex",
14960
14921
  alignItems: "center",
14961
- padding: "0.25rem 0.75rem 0.25rem 1.5rem",
14962
- // Extra left padding for the icon overlap
14963
- borderRadius: "0 4px 4px 0",
14964
- borderTopRightRadius: "9999px",
14965
- borderBottomRightRadius: "9999px",
14966
- color: "white",
14967
- fontSize: reactComponents.tokens.fontSizeBase200,
14968
- fontWeight: reactComponents.tokens.fontWeightMedium,
14969
- marginLeft: "-14px",
14970
- // Pull the text container under the icon
14971
- minHeight: "24px"
14922
+ overflow: "hidden",
14923
+ borderRadius: reactComponents.tokens.borderRadiusXLarge,
14924
+ minHeight: "32px",
14925
+ boxShadow: reactComponents.tokens.shadow2
14972
14926
  },
14973
14927
  badgeIcon: {
14974
- width: "28px",
14928
+ width: "32px",
14975
14929
  height: "32px",
14976
- zIndex: 1,
14977
- filter: "drop-shadow(0px 2px 2px rgba(0, 0, 0, 0.1))"
14978
- },
14979
- fields: {
14980
- display: "grid",
14981
- gridTemplateColumns: "1fr 1fr",
14982
- gap: reactComponents.tokens.spacingHorizontalL
14930
+ objectFit: "cover",
14931
+ flexShrink: 0,
14932
+ display: "block"
14983
14933
  },
14984
- inputBox: {
14985
- border: `1px solid ${reactComponents.tokens.colorNeutralStroke1}`,
14986
- borderRadius: reactComponents.tokens.borderRadiusMedium,
14987
- padding: `${reactComponents.tokens.spacingVerticalS} ${reactComponents.tokens.spacingHorizontalM}`,
14988
- display: "flex",
14934
+ badgeContent: {
14935
+ display: "inline-flex",
14989
14936
  alignItems: "center",
14990
- height: "32px"
14937
+ minHeight: "32px",
14938
+ padding: `0 ${reactComponents.tokens.spacingHorizontalM}`,
14939
+ color: reactComponents.tokens.colorNeutralForegroundOnBrand,
14940
+ fontSize: reactComponents.tokens.fontSizeBase200,
14941
+ fontWeight: reactComponents.tokens.fontWeightSemibold,
14942
+ whiteSpace: "nowrap"
14991
14943
  }
14992
14944
  });
14993
14945
  var CardReviewPassenger = ({
@@ -15000,48 +14952,140 @@ var CardReviewPassenger = ({
15000
14952
  const styles = useStyles33();
15001
14953
  const mergedLabels = { ...DEFAULT_LABELS32[language], ...labels };
15002
14954
  const displayTitle = title || mergedLabels.title;
15003
- return /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: [
15004
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.headerContainer, children: [
15005
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { className: styles.headerTitle, children: displayTitle }),
15006
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.headerLine })
15007
- ] }),
15008
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.contentContainer, children: passengers.map((passenger, index) => {
14955
+ return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { direction: "column", nogutter: true, className: styles.list, children: [
14956
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.titleRow, children: [
14957
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: displayTitle }),
14958
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, { className: styles.titleDivider })
14959
+ ] }) }),
14960
+ passengers.map((passenger, index) => {
15009
14961
  const badgeConfig = getBadgeConfig(passenger.serviceClass);
15010
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.passengerItem, children: [
15011
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.itemHeader, children: [
15012
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle2, { className: styles.name, children: passenger.name }),
15013
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.badgeContainer, children: [
15014
- badgeConfig.icon && /* @__PURE__ */ jsxRuntime.jsx(
15015
- reactComponents.Image,
15016
- {
15017
- src: badgeConfig.icon,
15018
- alt: passenger.ticketClass,
15019
- className: styles.badgeIcon,
15020
- height: 28,
15021
- width: 24
15022
- }
15023
- ),
15024
- /* @__PURE__ */ jsxRuntime.jsx(
15025
- "div",
15026
- {
15027
- className: styles.badgeContent,
15028
- style: { backgroundColor: badgeConfig.color },
15029
- children: passenger.ticketClass
15030
- }
15031
- )
15032
- ] })
14962
+ const passengerMeta = `${passenger.ageLabel} \xB7 ${mergedLabels.idNumber} ${passenger.identityNumber}`;
14963
+ return /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: styles.passengerCard, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.passengerRow, children: [
14964
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.passengerInfo, children: [
14965
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle2, { className: styles.passengerName, children: passenger.name }),
14966
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { className: styles.passengerMeta, children: passengerMeta })
14967
+ ] }) }),
14968
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: "content", children: /* @__PURE__ */ jsxRuntime.jsxs(
14969
+ "div",
14970
+ {
14971
+ className: styles.badgeContainer,
14972
+ style: { backgroundColor: badgeConfig.color },
14973
+ children: [
14974
+ badgeConfig.icon ? /* @__PURE__ */ jsxRuntime.jsx(
14975
+ "img",
14976
+ {
14977
+ src: badgeConfig.icon,
14978
+ alt: passenger.ticketClass,
14979
+ className: styles.badgeIcon
14980
+ }
14981
+ ) : null,
14982
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.badgeContent, children: passenger.ticketClass })
14983
+ ]
14984
+ }
14985
+ ) })
14986
+ ] }) }) }, passenger.id || index);
14987
+ })
14988
+ ] }) });
14989
+ };
14990
+
14991
+ // src/components/CardReviewDetail/CardReviewDetail.constants.ts
14992
+ var DEFAULT_LABELS33 = {
14993
+ id: {
14994
+ title: "Detail Pemesanan",
14995
+ fromLabel: "Dari",
14996
+ toLabel: "Ke",
14997
+ scheduleLabel: "Jadwal Masuk",
14998
+ bookingNameLabel: "Nama Pemesanan",
14999
+ passengerTypeLabel: "Jenis Penumpang",
15000
+ addOnLabel: "Add On",
15001
+ viewDetail: "Lihat Detail"
15002
+ },
15003
+ en: {
15004
+ title: "Booking Details",
15005
+ fromLabel: "From",
15006
+ toLabel: "To",
15007
+ scheduleLabel: "Entry Schedule",
15008
+ bookingNameLabel: "Booking Name",
15009
+ passengerTypeLabel: "Passenger Type",
15010
+ addOnLabel: "Add On",
15011
+ viewDetail: "View Details"
15012
+ }
15013
+ };
15014
+ var useStyles34 = reactComponents.makeStyles({
15015
+ card: {
15016
+ boxShadow: "none",
15017
+ border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`,
15018
+ borderRadius: reactComponents.tokens.borderRadiusXLarge,
15019
+ padding: `${reactComponents.tokens.spacingHorizontalL} ${reactComponents.tokens.spacingHorizontalXXL}`
15020
+ },
15021
+ titleRow: {
15022
+ display: "flex",
15023
+ alignItems: "center",
15024
+ gap: reactComponents.tokens.spacingHorizontalS
15025
+ },
15026
+ fieldRow: {
15027
+ display: "flex",
15028
+ alignItems: "flex-start",
15029
+ gap: reactComponents.tokens.spacingHorizontalL
15030
+ },
15031
+ addOnRow: {
15032
+ display: "flex",
15033
+ alignItems: "center",
15034
+ justifyContent: "space-between",
15035
+ width: "100%"
15036
+ }
15037
+ });
15038
+ var CardReviewDetail = ({
15039
+ language = "id",
15040
+ labels,
15041
+ from,
15042
+ to,
15043
+ scheduleTime,
15044
+ bookingName,
15045
+ passengerType,
15046
+ addOnsCount,
15047
+ onViewAddOns,
15048
+ className
15049
+ }) => {
15050
+ const styles = useStyles34();
15051
+ const mergedLabels = { ...DEFAULT_LABELS33[language], ...labels };
15052
+ return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, direction: "column", style: { gap: reactComponents.tokens.spacingHorizontalL }, children: [
15053
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.titleRow, children: [
15054
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.title }),
15055
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, { style: { width: 0 } })
15056
+ ] }) }),
15057
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15058
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.fromLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: from }) }) }),
15059
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.toLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: to }) }) })
15060
+ ] }) }),
15061
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15062
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.scheduleLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: scheduleTime }) }) }),
15063
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.bookingNameLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: bookingName }) }) })
15064
+ ] }) }),
15065
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15066
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.passengerTypeLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: passengerType }) }) }),
15067
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.addOnLabel, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.addOnRow, children: [
15068
+ /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Body1Strong, { children: [
15069
+ addOnsCount,
15070
+ " ",
15071
+ addOnsCount === 1 ? "Layanan" : "Layanan"
15033
15072
  ] }),
15034
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.fields, children: [
15035
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.idNumber, size: "small", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.inputBox, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: passenger.identityNumber }) }) }),
15036
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: passenger.ageLabel, size: "small", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.inputBox, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: passenger.ageValue }) }) })
15037
- ] })
15038
- ] }, passenger.id || index);
15039
- }) })
15040
- ] });
15073
+ /* @__PURE__ */ jsxRuntime.jsx(
15074
+ reactComponents.Button,
15075
+ {
15076
+ appearance: "transparent",
15077
+ onClick: onViewAddOns,
15078
+ style: { color: brandColors[80] },
15079
+ children: mergedLabels.viewDetail
15080
+ }
15081
+ )
15082
+ ] }) }) })
15083
+ ] }) })
15084
+ ] }) });
15041
15085
  };
15042
15086
 
15043
15087
  // src/components/CardPriceDetails/CardPriceDetails.constants.ts
15044
- var DEFAULT_LABELS33 = {
15088
+ var DEFAULT_LABELS34 = {
15045
15089
  id: {
15046
15090
  defaultTitle: "Rincian Harga",
15047
15091
  totalPayment: "Total Pembayaran",
@@ -15077,7 +15121,7 @@ var DEFAULT_LABELS33 = {
15077
15121
  currencyPrefix: "Rp. "
15078
15122
  }
15079
15123
  };
15080
- var useStyles34 = reactComponents.makeStyles({
15124
+ var useStyles35 = reactComponents.makeStyles({
15081
15125
  list: {
15082
15126
  margin: 0,
15083
15127
  padding: 0,
@@ -15099,7 +15143,7 @@ var PriceDetailsTerms = ({
15099
15143
  language = "id",
15100
15144
  labels
15101
15145
  }) => {
15102
- const styles = useStyles34();
15146
+ const styles = useStyles35();
15103
15147
  const linkColor = reactComponents.tokens.colorBrandBackground;
15104
15148
  const bookingTerms = labels.bookingTerms;
15105
15149
  const agreementTerms = [
@@ -15119,7 +15163,7 @@ var PriceDetailsTerms = ({
15119
15163
  ] })
15120
15164
  ] });
15121
15165
  };
15122
- var useStyles35 = reactComponents.makeStyles({
15166
+ var useStyles36 = reactComponents.makeStyles({
15123
15167
  card: {
15124
15168
  padding: "1.5rem",
15125
15169
  borderRadius: reactComponents.tokens.borderRadiusXLarge,
@@ -15196,8 +15240,8 @@ var CardPriceDetails = ({
15196
15240
  total,
15197
15241
  labels
15198
15242
  }) => {
15199
- const styles = useStyles35();
15200
- const mergedLabels = { ...DEFAULT_LABELS33[language], ...labels };
15243
+ const styles = useStyles36();
15244
+ const mergedLabels = { ...DEFAULT_LABELS34[language], ...labels };
15201
15245
  const displayTitle = title || mergedLabels.defaultTitle;
15202
15246
  const getVariantClass = (variant) => {
15203
15247
  switch (variant) {
@@ -15256,7 +15300,7 @@ var CardPriceDetails = ({
15256
15300
  };
15257
15301
 
15258
15302
  // src/components/CardPaymentMethodList/CardPaymentMethodList.constants.ts
15259
- var DEFAULT_LABELS34 = {
15303
+ var DEFAULT_LABELS35 = {
15260
15304
  id: {
15261
15305
  selectAriaLabel: "Pilih metode pembayaran"
15262
15306
  },
@@ -15264,7 +15308,7 @@ var DEFAULT_LABELS34 = {
15264
15308
  selectAriaLabel: "Select payment method"
15265
15309
  }
15266
15310
  };
15267
- var useStyles36 = reactComponents.makeStyles({
15311
+ var useStyles37 = reactComponents.makeStyles({
15268
15312
  container: {
15269
15313
  display: "flex",
15270
15314
  flexDirection: "column",
@@ -15324,8 +15368,8 @@ var CardPaymentMethodList = ({
15324
15368
  selectedValue,
15325
15369
  onSelect
15326
15370
  }) => {
15327
- const styles = useStyles36();
15328
- const mergedLabels = { ...DEFAULT_LABELS34[language], ...labels };
15371
+ const styles = useStyles37();
15372
+ const mergedLabels = { ...DEFAULT_LABELS35[language], ...labels };
15329
15373
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.card, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${styles.container}`, children: methods.map((category, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
15330
15374
  index > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.dividerContainer, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, {}) }),
15331
15375
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Accordion, { multiple: true, collapsible: true, children: /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.AccordionItem, { value: category.value, children: [
@@ -15374,7 +15418,7 @@ var CardPaymentMethodList = ({
15374
15418
  };
15375
15419
 
15376
15420
  // src/components/CardPaymentGuide/CardPaymentGuide.constants.ts
15377
- var DEFAULT_LABELS35 = {
15421
+ var DEFAULT_LABELS36 = {
15378
15422
  id: {
15379
15423
  title: "Cara Pembayaran"
15380
15424
  },
@@ -15382,7 +15426,7 @@ var DEFAULT_LABELS35 = {
15382
15426
  title: "Payment Method"
15383
15427
  }
15384
15428
  };
15385
- var useStyles37 = reactComponents.makeStyles({
15429
+ var useStyles38 = reactComponents.makeStyles({
15386
15430
  container: {
15387
15431
  display: "flex",
15388
15432
  flexDirection: "column",
@@ -15418,8 +15462,8 @@ var CardPaymentGuide = ({
15418
15462
  guides,
15419
15463
  className
15420
15464
  }) => {
15421
- const styles = useStyles37();
15422
- const mergedLabels = { ...DEFAULT_LABELS35[language], ...labels };
15465
+ const styles = useStyles38();
15466
+ const mergedLabels = { ...DEFAULT_LABELS36[language], ...labels };
15423
15467
  const displayTitle = title || mergedLabels.title;
15424
15468
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${styles.container} ${className || ""}`, children: [
15425
15469
  displayTitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.titleContainer, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { className: styles.title, children: displayTitle }) }),
@@ -15438,7 +15482,7 @@ var CardPaymentGuide = ({
15438
15482
  };
15439
15483
 
15440
15484
  // src/components/CardPaymentInfo/CardPaymentInfo.constants.ts
15441
- var DEFAULT_LABELS36 = {
15485
+ var DEFAULT_LABELS37 = {
15442
15486
  id: {
15443
15487
  expiryPrefix: "Kode virtual akun berlaku sampai",
15444
15488
  copyCodeButton: "Salin Kode",
@@ -15458,7 +15502,7 @@ var DEFAULT_LABELS36 = {
15458
15502
  changePayment: "Change Payment Method"
15459
15503
  }
15460
15504
  };
15461
- var useStyles38 = reactComponents.makeStyles({
15505
+ var useStyles39 = reactComponents.makeStyles({
15462
15506
  container: {
15463
15507
  display: "flex",
15464
15508
  flexDirection: "column",
@@ -15550,8 +15594,8 @@ var CardPaymentInfo = ({
15550
15594
  onCheckStatus,
15551
15595
  onChangePayment
15552
15596
  }) => {
15553
- const styles = useStyles38();
15554
- const mergedLabels = { ...DEFAULT_LABELS36[language], ...labels };
15597
+ const styles = useStyles39();
15598
+ const mergedLabels = { ...DEFAULT_LABELS37[language], ...labels };
15555
15599
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.card, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.container, children: [
15556
15600
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.headerRow, children: [
15557
15601
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.expiryPrefix }),
@@ -15623,7 +15667,7 @@ var CardPaymentInfo = ({
15623
15667
  };
15624
15668
 
15625
15669
  // src/components/CardStatusOrder/CardStatusOrder.constants.ts
15626
- var DEFAULT_LABELS37 = {
15670
+ var DEFAULT_LABELS38 = {
15627
15671
  id: {
15628
15672
  detailTitle: "Detail Pemesanan",
15629
15673
  statusLabel: "Status",
@@ -15653,7 +15697,7 @@ var DEFAULT_LABELS37 = {
15653
15697
  illustrationAlt: "E-Ticket Illustration"
15654
15698
  }
15655
15699
  };
15656
- var useStyles39 = reactComponents.makeStyles({
15700
+ var useStyles40 = reactComponents.makeStyles({
15657
15701
  activeCard: {
15658
15702
  width: "100%",
15659
15703
  // padding: tokens.spacingHorizontalNone, // default
@@ -15723,8 +15767,8 @@ var CardStatusOrder = ({
15723
15767
  onClickViewTicket,
15724
15768
  className
15725
15769
  }) => {
15726
- const styles = useStyles39();
15727
- const mergedLabels = { ...DEFAULT_LABELS37[language], ...labels };
15770
+ const styles = useStyles40();
15771
+ const mergedLabels = { ...DEFAULT_LABELS38[language], ...labels };
15728
15772
  const displayStatus = statusLabel || mergedLabels.defaultStatus;
15729
15773
  const displayTitle = title || mergedLabels.defaultTitle;
15730
15774
  const displayDescription = description || mergedLabels.defaultDescription;
@@ -15821,7 +15865,7 @@ var CardStatusOrder = ({
15821
15865
  };
15822
15866
 
15823
15867
  // src/components/ModalPriceDetail/ModalPriceDetail.constants.ts
15824
- var DEFAULT_LABELS38 = {
15868
+ var DEFAULT_LABELS39 = {
15825
15869
  id: {
15826
15870
  title: "Rincian Harga",
15827
15871
  addonHeader: "Add On",
@@ -15847,7 +15891,7 @@ var DEFAULT_LABELS38 = {
15847
15891
  closeAriaLabel: "Close"
15848
15892
  }
15849
15893
  };
15850
- var useStyles40 = reactComponents.makeStyles({
15894
+ var useStyles41 = reactComponents.makeStyles({
15851
15895
  surface: {
15852
15896
  width: "680px",
15853
15897
  maxWidth: "90vw",
@@ -15974,8 +16018,8 @@ var ModalPriceDetail = ({
15974
16018
  grandTotal,
15975
16019
  ...props
15976
16020
  }) => {
15977
- const styles = useStyles40();
15978
- const mergedLabels = { ...DEFAULT_LABELS38[language], ...labels };
16021
+ const styles = useStyles41();
16022
+ const mergedLabels = { ...DEFAULT_LABELS39[language], ...labels };
15979
16023
  return /* @__PURE__ */ jsxRuntime.jsx(
15980
16024
  reactComponents.Dialog,
15981
16025
  {
@@ -16117,7 +16161,7 @@ var ModalPriceDetail = ({
16117
16161
  // src/components/FileUpload/FileUpload.constants.ts
16118
16162
  var ACCEPTED_FILES = ".pdf,.jpg,.jpeg,.png";
16119
16163
  var MAX_FILE_SIZE_MB = 10;
16120
- var DEFAULT_LABELS39 = {
16164
+ var DEFAULT_LABELS40 = {
16121
16165
  id: {
16122
16166
  placeholder: "Ketuk untuk pilih file",
16123
16167
  maxSizeWarning: "Maksimal {maxSize}MB per file dalam format PDF, JPG, JPEG, PNG.",
@@ -16135,7 +16179,7 @@ var DEFAULT_LABELS39 = {
16135
16179
  downloadTemplateDocument: "Download Template Document"
16136
16180
  }
16137
16181
  };
16138
- var useStyles41 = reactComponents.makeStyles({
16182
+ var useStyles42 = reactComponents.makeStyles({
16139
16183
  surface: {
16140
16184
  maxWidth: "90vw",
16141
16185
  maxHeight: "90vh",
@@ -16162,7 +16206,7 @@ var ModalPreviewImage = ({
16162
16206
  imageUrl,
16163
16207
  alt = "Preview"
16164
16208
  }) => {
16165
- const styles = useStyles41();
16209
+ const styles = useStyles42();
16166
16210
  return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Dialog, { open, onOpenChange: (_, data) => onOpenChange(data.open), children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.DialogSurface, { className: styles.surface, children: /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.DialogBody, { children: [
16167
16211
  /* @__PURE__ */ jsxRuntime.jsx(
16168
16212
  reactComponents.DialogTitle,
@@ -16288,7 +16332,7 @@ var FileUpload = React__default.default.forwardRef(
16288
16332
  downloadTemplateDocument = false,
16289
16333
  infoLabel
16290
16334
  }, ref) => {
16291
- const mergedLabels = { ...DEFAULT_LABELS39[language], ...customLabels };
16335
+ const mergedLabels = { ...DEFAULT_LABELS40[language], ...customLabels };
16292
16336
  const styles = uploadStyles();
16293
16337
  const fileInputRef = React.useRef(null);
16294
16338
  const [, setIsDragOver] = React.useState(false);
@@ -16725,11 +16769,11 @@ function hexToRgba(hex, alpha = 1) {
16725
16769
  }
16726
16770
 
16727
16771
  // src/components/CardProfileMenu/CardProfileMenu.constants.ts
16728
- var DEFAULT_LABELS40 = {
16772
+ var DEFAULT_LABELS41 = {
16729
16773
  id: {},
16730
16774
  en: {}
16731
16775
  };
16732
- var useStyles42 = reactComponents.makeStyles({
16776
+ var useStyles43 = reactComponents.makeStyles({
16733
16777
  container: {
16734
16778
  display: "flex",
16735
16779
  flexDirection: "column",
@@ -16789,8 +16833,8 @@ var CardProfileMenu = ({
16789
16833
  selectedValue,
16790
16834
  onTabSelect
16791
16835
  }) => {
16792
- const styles = useStyles42();
16793
- ({ ...DEFAULT_LABELS40[language], ...labels });
16836
+ const styles = useStyles43();
16837
+ ({ ...DEFAULT_LABELS41[language], ...labels });
16794
16838
  const handleTabSelect = (_, data) => {
16795
16839
  onTabSelect(data.value);
16796
16840
  };
@@ -16839,6 +16883,7 @@ exports.CardPriceDetails = CardPriceDetails;
16839
16883
  exports.CardProfileMenu = CardProfileMenu;
16840
16884
  exports.CardPromo = CardPromo;
16841
16885
  exports.CardReview = CardReview;
16886
+ exports.CardReviewDetail = CardReviewDetail;
16842
16887
  exports.CardReviewPassenger = CardReviewPassenger;
16843
16888
  exports.CardServiceMenu = CardServiceMenu;
16844
16889
  exports.CardStatusOrder = CardStatusOrder;