@asdp/ferryui 0.1.22-dev.10171 → 0.1.22-dev.10189

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
@@ -7931,7 +7931,9 @@ var DEFAULT_LABELS14 = {
7931
7931
  loading: "Memuat...",
7932
7932
  saveButton: "Simpan",
7933
7933
  closeAriaLabel: "Tutup",
7934
- emptyContent: "Kelas Penumpang"
7934
+ emptyContent: "Kelas Penumpang",
7935
+ childCompanionWarning: "Anak harus didampingi minimal 1 dewasa atau lansia.",
7936
+ infantCompanionWarning: "Bayi harus didampingi minimal 1 dewasa atau lansia."
7935
7937
  },
7936
7938
  en: {
7937
7939
  title: "Select Total Passengers",
@@ -7939,7 +7941,9 @@ var DEFAULT_LABELS14 = {
7939
7941
  loading: "Loading...",
7940
7942
  saveButton: "Save",
7941
7943
  closeAriaLabel: "Close",
7942
- emptyContent: "Passengers Class"
7944
+ emptyContent: "Passengers Class",
7945
+ childCompanionWarning: "Children must be accompanied by at least 1 adult or elderly.",
7946
+ infantCompanionWarning: "Infants must be accompanied by at least 1 adult or elderly."
7943
7947
  }
7944
7948
  };
7945
7949
  var useStyles15 = reactComponents.makeStyles({
@@ -8012,6 +8016,14 @@ var useStyles15 = reactComponents.makeStyles({
8012
8016
  },
8013
8017
  accordionPanel: {
8014
8018
  margin: 0
8019
+ },
8020
+ warningText: {
8021
+ display: "flex",
8022
+ alignItems: "center",
8023
+ gap: "6px",
8024
+ marginBottom: "1rem",
8025
+ fontSize: reactComponents.tokens.fontSizeBase300,
8026
+ color: "#E87511"
8015
8027
  }
8016
8028
  });
8017
8029
  var TotalPassengersListSkeleton = ({
@@ -8090,6 +8102,9 @@ var ModalTotalPassengers = ({
8090
8102
  const mergedLabels = { ...DEFAULT_LABELS14[language], ...labels };
8091
8103
  const [passengers, setPassengers] = React.useState([]);
8092
8104
  const [openItems, setOpenItems] = React.useState([]);
8105
+ const [companionWarnings, setCompanionWarnings] = React.useState(
8106
+ /* @__PURE__ */ new Set()
8107
+ );
8093
8108
  const defaultInfoMessage = mergedLabels.infoMessage.replace(
8094
8109
  "{maxPassengers}",
8095
8110
  String(maxPassengers)
@@ -8147,13 +8162,6 @@ var ModalTotalPassengers = ({
8147
8162
  const cls = passenger.classes.find((c) => c.classCode === classCode);
8148
8163
  return cls?.count ?? 0;
8149
8164
  };
8150
- const getTotalCountForType = (passengerAgeCode) => {
8151
- const passenger = passengers.find(
8152
- (p) => p.passengerAgeCode === passengerAgeCode
8153
- );
8154
- if (!passenger) return 0;
8155
- return passenger.classes.reduce((sum, cls) => sum + (cls.count ?? 0), 0);
8156
- };
8157
8165
  const getTotalForType = (passengerAgeCode) => {
8158
8166
  const passenger = passengers.find(
8159
8167
  (p) => p.passengerAgeCode === passengerAgeCode
@@ -8172,6 +8180,20 @@ var ModalTotalPassengers = ({
8172
8180
  (total, passenger) => total + passenger.classes.reduce((sum, cls) => sum + (cls.count ?? 0), 0),
8173
8181
  0
8174
8182
  );
8183
+ React.useEffect(() => {
8184
+ const warnings = /* @__PURE__ */ new Set();
8185
+ const hasAdultOrElderly = passengers.some(
8186
+ (p) => (p.passengerAgeCode === "ADULT" || p.passengerAgeCode === "ELDERLY") && p.classes.some((cls) => (cls.count ?? 0) > 0)
8187
+ );
8188
+ if (!hasAdultOrElderly) {
8189
+ passengers.forEach((p) => {
8190
+ if ((p.passengerAgeCode === "CHILD" || p.passengerAgeCode === "INFANT") && p.classes.some((cls) => (cls.count ?? 0) > 0)) {
8191
+ warnings.add(p.passengerAgeCode);
8192
+ }
8193
+ });
8194
+ }
8195
+ setCompanionWarnings(warnings);
8196
+ }, [passengers]);
8175
8197
  const handleIncrement = (passengerAgeCode, classCode) => {
8176
8198
  setPassengers(
8177
8199
  (prev) => prev.map((passenger) => {
@@ -8266,80 +8288,96 @@ var ModalTotalPassengers = ({
8266
8288
  className: styles.passengerSection,
8267
8289
  children: passengerTypes.map((passengerType) => {
8268
8290
  const classes = passengerType.classes || [];
8269
- return /* @__PURE__ */ jsxRuntime.jsxs(
8270
- reactComponents.AccordionItem,
8271
- {
8272
- value: String(passengerType.id),
8273
- className: styles.accordionItem,
8274
- children: [
8275
- /* @__PURE__ */ jsxRuntime.jsxs(
8276
- reactComponents.AccordionHeader,
8277
- {
8278
- className: styles.accordionHeader,
8279
- expandIconPosition: "end",
8280
- children: [
8281
- passengerType.passengerAgeName,
8282
- " (",
8283
- getTotalForType(passengerType.passengerAgeCode),
8284
- ")"
8285
- ]
8286
- }
8287
- ),
8288
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.AccordionPanel, { className: styles.accordionPanel, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.nestedSection, children: classes.map((cls) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.nestedRow, children: [
8289
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: (cls?.className || "")?.toUpperCase() }),
8290
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.passengerCount, children: [
8291
- /* @__PURE__ */ jsxRuntime.jsx(
8292
- reactComponents.Button,
8293
- {
8294
- appearance: "outline",
8295
- className: styles.counterButton,
8296
- size: "small",
8297
- icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { icon: "fluent:subtract-12-regular" }),
8298
- onClick: (e) => {
8299
- e.stopPropagation();
8300
- handleDecrement(
8291
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
8292
+ /* @__PURE__ */ jsxRuntime.jsxs(
8293
+ reactComponents.AccordionItem,
8294
+ {
8295
+ value: String(passengerType.id),
8296
+ className: styles.accordionItem,
8297
+ children: [
8298
+ /* @__PURE__ */ jsxRuntime.jsxs(
8299
+ reactComponents.AccordionHeader,
8300
+ {
8301
+ className: styles.accordionHeader,
8302
+ expandIconPosition: "end",
8303
+ children: [
8304
+ passengerType.passengerAgeName,
8305
+ " (",
8306
+ getTotalForType(passengerType.passengerAgeCode),
8307
+ ")"
8308
+ ]
8309
+ }
8310
+ ),
8311
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.AccordionPanel, { className: styles.accordionPanel, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.nestedSection, children: classes.map((cls) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.nestedRow, children: [
8312
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: (cls?.className || "")?.toUpperCase() }),
8313
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.passengerCount, children: [
8314
+ /* @__PURE__ */ jsxRuntime.jsx(
8315
+ reactComponents.Button,
8316
+ {
8317
+ appearance: "outline",
8318
+ className: styles.counterButton,
8319
+ size: "small",
8320
+ icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { icon: "fluent:subtract-12-regular" }),
8321
+ onClick: (e) => {
8322
+ e.stopPropagation();
8323
+ handleDecrement(
8324
+ passengerType.passengerAgeCode,
8325
+ cls.classCode
8326
+ );
8327
+ },
8328
+ disabled: getServiceCount(
8301
8329
  passengerType.passengerAgeCode,
8302
8330
  cls.classCode
8303
- );
8304
- },
8305
- disabled: getServiceCount(
8306
- passengerType.passengerAgeCode,
8307
- cls.classCode
8308
- ) === 0 || getTotalCountForType(
8309
- passengerType.passengerAgeCode
8310
- ) <= passengerType.minCapacity
8311
- }
8312
- ),
8313
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { className: styles.countText, children: getServiceCount(
8314
- passengerType.passengerAgeCode,
8315
- cls.classCode
8316
- ) }),
8317
- /* @__PURE__ */ jsxRuntime.jsx(
8318
- reactComponents.Button,
8319
- {
8320
- appearance: "outline",
8321
- className: styles.counterButton,
8322
- size: "small",
8323
- icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { icon: "fluent:add-12-regular" }),
8324
- disabled: getServiceCount(
8325
- passengerType.passengerAgeCode,
8326
- cls.classCode
8327
- ) >= cls.maxCapacity || totalPassengerCount >= maxPassengers,
8328
- onClick: (e) => {
8329
- e.stopPropagation();
8330
- handleIncrement(
8331
+ ) === 0
8332
+ }
8333
+ ),
8334
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { className: styles.countText, children: getServiceCount(
8335
+ passengerType.passengerAgeCode,
8336
+ cls.classCode
8337
+ ) }),
8338
+ /* @__PURE__ */ jsxRuntime.jsx(
8339
+ reactComponents.Button,
8340
+ {
8341
+ appearance: "outline",
8342
+ className: styles.counterButton,
8343
+ size: "small",
8344
+ icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { icon: "fluent:add-12-regular" }),
8345
+ disabled: getServiceCount(
8331
8346
  passengerType.passengerAgeCode,
8332
8347
  cls.classCode
8333
- );
8348
+ ) >= cls.maxCapacity || totalPassengerCount >= maxPassengers,
8349
+ onClick: (e) => {
8350
+ e.stopPropagation();
8351
+ handleIncrement(
8352
+ passengerType.passengerAgeCode,
8353
+ cls.classCode
8354
+ );
8355
+ }
8334
8356
  }
8335
- }
8336
- )
8337
- ] })
8338
- ] }, cls.id)) }) })
8339
- ]
8340
- },
8341
- passengerType.id
8342
- );
8357
+ )
8358
+ ] })
8359
+ ] }, cls.id)) }) })
8360
+ ]
8361
+ },
8362
+ passengerType.id
8363
+ ),
8364
+ companionWarnings.has(
8365
+ passengerType.passengerAgeCode
8366
+ ) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.warningText, children: [
8367
+ /* @__PURE__ */ jsxRuntime.jsx(
8368
+ react.Icon,
8369
+ {
8370
+ icon: "fluent:warning-12-filled",
8371
+ style: {
8372
+ fontSize: "16px",
8373
+ color: "#E87511",
8374
+ flexShrink: 0
8375
+ }
8376
+ }
8377
+ ),
8378
+ passengerType.passengerAgeCode === "CHILD" ? mergedLabels.childCompanionWarning : mergedLabels.infantCompanionWarning
8379
+ ] })
8380
+ ] });
8343
8381
  })
8344
8382
  }
8345
8383
  ),
@@ -8350,6 +8388,7 @@ var ModalTotalPassengers = ({
8350
8388
  size: "medium",
8351
8389
  className: styles.submitButton,
8352
8390
  onClick: handleSave,
8391
+ disabled: totalPassengerCount === 0,
8353
8392
  children: mergedLabels.saveButton
8354
8393
  }
8355
8394
  )
@@ -13605,7 +13644,7 @@ var CardVehicleOwnerForm = ({
13605
13644
  // src/components/CardBookingTicket/CardBookingTicket.constants.ts
13606
13645
  var DEFAULT_LABELS27 = {
13607
13646
  id: {
13608
- bookingDetails: "Booking Details",
13647
+ bookingDetails: "Ringkasan Pemesanan",
13609
13648
  routeTitle: "Rute Perjalanan",
13610
13649
  estimationPrefix: "Estimasi",
13611
13650
  totalPriceLabel: "Total Harga",
@@ -14023,8 +14062,250 @@ var CardBookingTicket = ({
14023
14062
  ] }) });
14024
14063
  };
14025
14064
 
14026
- // src/components/CardFAQ/CardFAQ.constants.ts
14065
+ // src/components/CardBookingAddOn/CardBookingAddOn.constants.ts
14027
14066
  var DEFAULT_LABELS28 = {
14067
+ id: {
14068
+ bookingDetails: "Ringkasan",
14069
+ totalPriceLabel: "Total Add On",
14070
+ currencySymbol: "IDR",
14071
+ notIncludedLabel: "Belum termasuk tiket",
14072
+ backToReviewButton: "Kembali Ke Review Pemesanan",
14073
+ changeAddOnButton: "Ubah Layanan Tambahan",
14074
+ loungeLabel: "Akses Lounge",
14075
+ assuranceLabel: "Asuransi Perjalanan",
14076
+ mealLabel: "Makanan",
14077
+ addOnPrice: "IDR. 125,000"
14078
+ },
14079
+ en: {
14080
+ bookingDetails: "Summary",
14081
+ totalPriceLabel: "Total Add On",
14082
+ currencySymbol: "IDR",
14083
+ notIncludedLabel: "Not including ticket fare",
14084
+ backToReviewButton: "Back To Booking Review",
14085
+ changeAddOnButton: "Change Additional Services",
14086
+ loungeLabel: "Lounge Access",
14087
+ assuranceLabel: "Travel Insurance",
14088
+ mealLabel: "Meal",
14089
+ addOnPrice: "IDR. 125,000"
14090
+ }
14091
+ };
14092
+ var useStyles29 = reactComponents.makeStyles({
14093
+ container: {
14094
+ display: "flex",
14095
+ flexDirection: "column",
14096
+ gap: "2rem"
14097
+ },
14098
+ bookingDetail: {
14099
+ overflow: "visible",
14100
+ borderRadius: reactComponents.tokens.borderRadiusXLarge,
14101
+ boxShadow: reactComponents.tokens.shadow4
14102
+ },
14103
+ bookingDetailTop: {
14104
+ padding: "2rem",
14105
+ borderBottomLeftRadius: 0,
14106
+ borderBottomRightRadius: 0,
14107
+ boxShadow: "none",
14108
+ borderTopLeftRadius: reactComponents.tokens.borderRadiusXLarge,
14109
+ borderTopRightRadius: reactComponents.tokens.borderRadiusXLarge,
14110
+ borderBottom: "0.7em dashed " + reactComponents.tokens.colorNeutralBackground1Hover,
14111
+ overflow: "visible",
14112
+ paddingBottom: "4rem",
14113
+ position: "relative"
14114
+ },
14115
+ bookingDetailBottom: {
14116
+ padding: "2rem",
14117
+ paddingTop: "4rem",
14118
+ borderTopLeftRadius: 0,
14119
+ borderTopRightRadius: 0,
14120
+ boxShadow: "none",
14121
+ borderBottomLeftRadius: reactComponents.tokens.borderRadiusXLarge,
14122
+ borderBottomRightRadius: reactComponents.tokens.borderRadiusXLarge,
14123
+ overflow: "visible",
14124
+ display: "flex",
14125
+ flexDirection: "column",
14126
+ alignItems: "center",
14127
+ justifyContent: "center",
14128
+ gap: "1.5rem"
14129
+ },
14130
+ circularLeft: {
14131
+ position: "absolute",
14132
+ width: "75px",
14133
+ height: "75px",
14134
+ borderRadius: "50%",
14135
+ backgroundColor: reactComponents.tokens.colorNeutralBackground1Hover,
14136
+ left: "-37px",
14137
+ bottom: "-42px",
14138
+ zIndex: 2,
14139
+ boxShadow: "inset -3px 0px 1px rgba(0, 0, 0, 0.1)"
14140
+ },
14141
+ circularRight: {
14142
+ position: "absolute",
14143
+ width: "75px",
14144
+ height: "75px",
14145
+ borderRadius: "50%",
14146
+ backgroundColor: reactComponents.tokens.colorNeutralBackground1Hover,
14147
+ right: "-37px",
14148
+ bottom: "-42px",
14149
+ zIndex: 2,
14150
+ boxShadow: "inset 3px 0px 1px rgba(0, 0, 0, 0.1)"
14151
+ },
14152
+ headerBookingDetail: {
14153
+ rowGap: reactComponents.tokens.spacingHorizontalXXL
14154
+ },
14155
+ shipInfo: {
14156
+ display: "flex",
14157
+ flexDirection: "column",
14158
+ alignItems: "flex-start",
14159
+ gap: "1rem"
14160
+ },
14161
+ ticketInfo: {
14162
+ display: "flex",
14163
+ justifyContent: "space-between",
14164
+ alignItems: "center",
14165
+ gap: "0.5em"
14166
+ },
14167
+ ticketTime: {
14168
+ display: "flex",
14169
+ flexDirection: "column",
14170
+ alignItems: "start",
14171
+ gap: "0.5em"
14172
+ },
14173
+ ticketDuration: {
14174
+ display: "flex",
14175
+ alignItems: "center",
14176
+ justifyContent: "center",
14177
+ gap: "0.5rem"
14178
+ },
14179
+ totalPrice: {
14180
+ display: "flex",
14181
+ alignItems: "center",
14182
+ justifyContent: "space-between",
14183
+ gap: "1rem",
14184
+ width: "100%"
14185
+ },
14186
+ gapButton: {
14187
+ width: "100%",
14188
+ display: "flex",
14189
+ flexDirection: "column",
14190
+ gap: reactComponents.tokens.spacingHorizontalM
14191
+ },
14192
+ priceText: {
14193
+ color: reactComponents.tokens.colorPaletteRedForeground1
14194
+ },
14195
+ notIncluded: {
14196
+ textAlign: "right",
14197
+ width: "100%"
14198
+ },
14199
+ secondaryButton: {
14200
+ border: "1px solid " + reactComponents.tokens.colorBrandStroke1,
14201
+ color: reactComponents.tokens.colorBrandBackground,
14202
+ width: "100%"
14203
+ }
14204
+ });
14205
+ var CardBookingAddOn = ({
14206
+ language = "id",
14207
+ labels,
14208
+ addOnData,
14209
+ totalPrice,
14210
+ onPriceDetailClick,
14211
+ onBackToReviewClick,
14212
+ onChangeAddOnClick,
14213
+ className
14214
+ }) => {
14215
+ const styles = useStyles29();
14216
+ const mergedLabels = { ...DEFAULT_LABELS28[language], ...labels };
14217
+ const addOnRows = [
14218
+ {
14219
+ key: "lounge",
14220
+ label: addOnData?.lounge?.label || mergedLabels.loungeLabel,
14221
+ price: addOnData?.lounge?.price || mergedLabels.addOnPrice
14222
+ },
14223
+ {
14224
+ key: "assurance",
14225
+ label: addOnData?.assurance?.label || mergedLabels.assuranceLabel,
14226
+ price: addOnData?.assurance?.price || mergedLabels.addOnPrice
14227
+ },
14228
+ {
14229
+ key: "meal",
14230
+ label: addOnData?.meal?.label || mergedLabels.mealLabel,
14231
+ price: addOnData?.meal?.price || mergedLabels.addOnPrice
14232
+ }
14233
+ ];
14234
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: `${styles.container} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.bookingDetail, children: [
14235
+ /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: styles.bookingDetailTop, children: [
14236
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.bookingDetails }),
14237
+ /* @__PURE__ */ jsxRuntime.jsx(
14238
+ reactGridSystem.Row,
14239
+ {
14240
+ direction: "column",
14241
+ nogutter: true,
14242
+ className: styles.headerBookingDetail,
14243
+ children: addOnRows.map((item) => /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, align: "center", justify: "between", children: [
14244
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: item.label }),
14245
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { children: item.price })
14246
+ ] }) }, item.key))
14247
+ }
14248
+ ),
14249
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.circularLeft }),
14250
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.circularRight })
14251
+ ] }),
14252
+ /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: styles.bookingDetailBottom, children: [
14253
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.totalPrice, children: [
14254
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.totalPriceLabel }),
14255
+ /* @__PURE__ */ jsxRuntime.jsxs(
14256
+ "div",
14257
+ {
14258
+ style: {
14259
+ display: "flex",
14260
+ gap: reactComponents.tokens.spacingHorizontalL,
14261
+ alignItems: "center"
14262
+ },
14263
+ children: [
14264
+ /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Title3, { className: styles.priceText, children: [
14265
+ mergedLabels.currencySymbol,
14266
+ " ",
14267
+ totalPrice
14268
+ ] }),
14269
+ /* @__PURE__ */ jsxRuntime.jsx(
14270
+ react.Icon,
14271
+ {
14272
+ icon: "fluent:chevron-down-24-filled",
14273
+ onClick: onPriceDetailClick,
14274
+ style: { cursor: "pointer" }
14275
+ }
14276
+ )
14277
+ ]
14278
+ }
14279
+ )
14280
+ ] }),
14281
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1, { className: styles.notIncluded, children: mergedLabels.notIncludedLabel }),
14282
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.gapButton, children: [
14283
+ /* @__PURE__ */ jsxRuntime.jsx(
14284
+ reactComponents.Button,
14285
+ {
14286
+ shape: "circular",
14287
+ appearance: "primary",
14288
+ onClick: onBackToReviewClick,
14289
+ children: mergedLabels.backToReviewButton
14290
+ }
14291
+ ),
14292
+ /* @__PURE__ */ jsxRuntime.jsx(
14293
+ reactComponents.Button,
14294
+ {
14295
+ shape: "circular",
14296
+ appearance: "outline",
14297
+ className: styles.secondaryButton,
14298
+ onClick: onChangeAddOnClick,
14299
+ children: mergedLabels.changeAddOnButton
14300
+ }
14301
+ )
14302
+ ] })
14303
+ ] })
14304
+ ] }) });
14305
+ };
14306
+
14307
+ // src/components/CardFAQ/CardFAQ.constants.ts
14308
+ var DEFAULT_LABELS29 = {
14028
14309
  id: {
14029
14310
  title: "Pertanyaan yang sering diajukan"
14030
14311
  },
@@ -14078,7 +14359,7 @@ var DEFAULT_FAQ_ITEMS = {
14078
14359
  }
14079
14360
  ]
14080
14361
  };
14081
- var useStyles29 = reactComponents.makeStyles({
14362
+ var useStyles30 = reactComponents.makeStyles({
14082
14363
  faqSection: {
14083
14364
  // marginTop: '2rem', // Let parent control spacing if needed, or keep consistent
14084
14365
  },
@@ -14102,8 +14383,8 @@ var CardFAQ = ({
14102
14383
  items,
14103
14384
  className
14104
14385
  }) => {
14105
- const styles = useStyles29();
14106
- const mergedLabels = { ...DEFAULT_LABELS28[language], ...labels };
14386
+ const styles = useStyles30();
14387
+ const mergedLabels = { ...DEFAULT_LABELS29[language], ...labels };
14107
14388
  const faqItems = items || DEFAULT_FAQ_ITEMS[language];
14108
14389
  return /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: styles.faqCard, children: [
14109
14390
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.title }),
@@ -14140,7 +14421,7 @@ var CardFAQ = ({
14140
14421
  };
14141
14422
 
14142
14423
  // src/components/CardAddon/CardAddon.constants.ts
14143
- var DEFAULT_LABELS29 = {
14424
+ var DEFAULT_LABELS30 = {
14144
14425
  id: {
14145
14426
  viewDetail: "Lihat detail",
14146
14427
  totalPrice: "Total Harga",
@@ -14156,7 +14437,7 @@ var DEFAULT_LABELS29 = {
14156
14437
  currencySymbol: "Rp"
14157
14438
  }
14158
14439
  };
14159
- var useStyles30 = reactComponents.makeStyles({
14440
+ var useStyles31 = reactComponents.makeStyles({
14160
14441
  card: {
14161
14442
  backgroundColor: reactComponents.tokens.colorNeutralBackground1,
14162
14443
  boxShadow: reactComponents.tokens.shadow4,
@@ -14329,8 +14610,8 @@ var CardAddon = ({
14329
14610
  children,
14330
14611
  className
14331
14612
  }) => {
14332
- const styles = useStyles30();
14333
- const mergedLabels = { ...DEFAULT_LABELS29[language], ...labels };
14613
+ const styles = useStyles31();
14614
+ const mergedLabels = { ...DEFAULT_LABELS30[language], ...labels };
14334
14615
  return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.gapRow, children: [
14335
14616
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.titleDivider, children: [
14336
14617
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Title3, { className: styles.textTitle, children: title }),
@@ -14541,7 +14822,7 @@ var CardAddon = ({
14541
14822
  };
14542
14823
 
14543
14824
  // src/components/CardMealCatalog/CardMealCatalog.constants.ts
14544
- var DEFAULT_LABELS30 = {
14825
+ var DEFAULT_LABELS31 = {
14545
14826
  id: {
14546
14827
  addButton: "Tambah",
14547
14828
  currencySymbol: "Rp",
@@ -14557,7 +14838,7 @@ var DEFAULT_LABELS30 = {
14557
14838
  searchPlaceholder: "Search for food or drinks you want"
14558
14839
  }
14559
14840
  };
14560
- var useStyles31 = reactComponents.makeStyles({
14841
+ var useStyles32 = reactComponents.makeStyles({
14561
14842
  container: {
14562
14843
  display: "flex",
14563
14844
  flexDirection: "column",
@@ -14701,8 +14982,8 @@ var CardMealCatalog = ({
14701
14982
  searchValue,
14702
14983
  onSearchChange
14703
14984
  }) => {
14704
- const styles = useStyles31();
14705
- const mergedLabels = { ...DEFAULT_LABELS30[language], ...labels };
14985
+ const styles = useStyles32();
14986
+ const mergedLabels = { ...DEFAULT_LABELS31[language], ...labels };
14706
14987
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${styles.container} ${className || ""}`, children: [
14707
14988
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.banner, children: [
14708
14989
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.bannerOverlay }),
@@ -14807,7 +15088,7 @@ var CardMealCatalog = ({
14807
15088
  };
14808
15089
 
14809
15090
  // src/components/CardReview/CardReview.constants.ts
14810
- var DEFAULT_LABELS31 = {
15091
+ var DEFAULT_LABELS32 = {
14811
15092
  id: {
14812
15093
  defaultTitle: "Tinjauan"
14813
15094
  },
@@ -14815,7 +15096,7 @@ var DEFAULT_LABELS31 = {
14815
15096
  defaultTitle: "Review"
14816
15097
  }
14817
15098
  };
14818
- var useStyles32 = reactComponents.makeStyles({
15099
+ var useStyles33 = reactComponents.makeStyles({
14819
15100
  card: {
14820
15101
  padding: "1.5rem",
14821
15102
  borderRadius: reactComponents.tokens.borderRadiusXLarge,
@@ -14867,8 +15148,8 @@ var CardReview = ({
14867
15148
  className,
14868
15149
  headerAction
14869
15150
  }) => {
14870
- const styles = useStyles32();
14871
- const mergedLabels = { ...DEFAULT_LABELS31[language], ...labels };
15151
+ const styles = useStyles33();
15152
+ const mergedLabels = { ...DEFAULT_LABELS32[language], ...labels };
14872
15153
  return /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: [
14873
15154
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.headerContainer, children: [
14874
15155
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { className: styles.headerTitle, children: title || mergedLabels.defaultTitle }),
@@ -14915,17 +15196,17 @@ var CardReview = ({
14915
15196
  };
14916
15197
 
14917
15198
  // src/components/CardReviewPassenger/CardReviewPassenger.constants.ts
14918
- var DEFAULT_LABELS32 = {
15199
+ var DEFAULT_LABELS33 = {
14919
15200
  id: {
14920
15201
  title: "Penumpang",
14921
- idNumber: "Nomor ID"
15202
+ idNumber: "ID"
14922
15203
  },
14923
15204
  en: {
14924
15205
  title: "Passenger",
14925
- idNumber: "ID Number"
15206
+ idNumber: "ID"
14926
15207
  }
14927
15208
  };
14928
- var useStyles33 = reactComponents.makeStyles({
15209
+ var useStyles34 = reactComponents.makeStyles({
14929
15210
  card: {
14930
15211
  boxShadow: "none",
14931
15212
  border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`,
@@ -14999,8 +15280,8 @@ var CardReviewPassenger = ({
14999
15280
  passengers,
15000
15281
  className
15001
15282
  }) => {
15002
- const styles = useStyles33();
15003
- const mergedLabels = { ...DEFAULT_LABELS32[language], ...labels };
15283
+ const styles = useStyles34();
15284
+ const mergedLabels = { ...DEFAULT_LABELS33[language], ...labels };
15004
15285
  const displayTitle = title || mergedLabels.title;
15005
15286
  return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { direction: "column", nogutter: true, className: styles.list, children: [
15006
15287
  /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.titleRow, children: [
@@ -15039,7 +15320,7 @@ var CardReviewPassenger = ({
15039
15320
  };
15040
15321
 
15041
15322
  // src/components/CardReviewDetail/CardReviewDetail.constants.ts
15042
- var DEFAULT_LABELS33 = {
15323
+ var DEFAULT_LABELS34 = {
15043
15324
  id: {
15044
15325
  title: "Detail Pemesanan",
15045
15326
  fromLabel: "Dari",
@@ -15048,7 +15329,9 @@ var DEFAULT_LABELS33 = {
15048
15329
  bookingNameLabel: "Nama Pemesanan",
15049
15330
  passengerTypeLabel: "Jenis Penumpang",
15050
15331
  addOnLabel: "Add On",
15051
- viewDetail: "Lihat Detail"
15332
+ viewDetail: "Lihat Detail",
15333
+ noAddOnsLabel: "Tidak ada layanan",
15334
+ serviceLabel: "Layanan"
15052
15335
  },
15053
15336
  en: {
15054
15337
  title: "Booking Details",
@@ -15058,10 +15341,12 @@ var DEFAULT_LABELS33 = {
15058
15341
  bookingNameLabel: "Booking Name",
15059
15342
  passengerTypeLabel: "Passenger Type",
15060
15343
  addOnLabel: "Add On",
15061
- viewDetail: "View Details"
15344
+ viewDetail: "View Details",
15345
+ noAddOnsLabel: "No services",
15346
+ serviceLabel: "Service"
15062
15347
  }
15063
15348
  };
15064
- var useStyles34 = reactComponents.makeStyles({
15349
+ var useStyles35 = reactComponents.makeStyles({
15065
15350
  card: {
15066
15351
  boxShadow: "none",
15067
15352
  border: `${reactComponents.tokens.strokeWidthThin} solid ${reactComponents.tokens.colorNeutralStroke1}`,
@@ -15074,9 +15359,7 @@ var useStyles34 = reactComponents.makeStyles({
15074
15359
  gap: reactComponents.tokens.spacingHorizontalS
15075
15360
  },
15076
15361
  fieldRow: {
15077
- display: "flex",
15078
- alignItems: "flex-start",
15079
- gap: reactComponents.tokens.spacingHorizontalL
15362
+ rowGap: reactComponents.tokens.spacingHorizontalL
15080
15363
  },
15081
15364
  addOnRow: {
15082
15365
  display: "flex",
@@ -15097,45 +15380,49 @@ var CardReviewDetail = ({
15097
15380
  onViewAddOns,
15098
15381
  className
15099
15382
  }) => {
15100
- const styles = useStyles34();
15101
- const mergedLabels = { ...DEFAULT_LABELS33[language], ...labels };
15102
- 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: [
15103
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.titleRow, children: [
15104
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.title }),
15105
- /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, { style: { width: 0 } })
15106
- ] }) }),
15107
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15108
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.fromLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: from }) }) }),
15109
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.toLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: to }) }) })
15110
- ] }) }),
15111
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15112
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.scheduleLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: scheduleTime }) }) }),
15113
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.bookingNameLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: bookingName }) }) })
15114
- ] }) }),
15115
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.fieldRow, children: [
15116
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.passengerTypeLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: passengerType }) }) }),
15117
- /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.addOnLabel, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.addOnRow, children: [
15118
- /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.Body1Strong, { children: [
15119
- addOnsCount,
15120
- " ",
15121
- addOnsCount === 1 ? "Layanan" : "Layanan"
15122
- ] }),
15123
- /* @__PURE__ */ jsxRuntime.jsx(
15124
- reactComponents.Button,
15125
- {
15126
- appearance: "transparent",
15127
- onClick: onViewAddOns,
15128
- style: { color: brandColors[80] },
15129
- children: mergedLabels.viewDetail
15130
- }
15131
- )
15132
- ] }) }) })
15133
- ] }) })
15134
- ] }) });
15383
+ const styles = useStyles35();
15384
+ const mergedLabels = { ...DEFAULT_LABELS34[language], ...labels };
15385
+ return /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Card, { className: `${styles.card} ${className || ""}`, children: /* @__PURE__ */ jsxRuntime.jsxs(
15386
+ reactGridSystem.Row,
15387
+ {
15388
+ nogutter: true,
15389
+ direction: "column",
15390
+ style: { gap: reactComponents.tokens.spacingHorizontalL },
15391
+ children: [
15392
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { nogutter: true, className: styles.titleRow, children: [
15393
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.title }),
15394
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, { style: { width: 0 } })
15395
+ ] }) }),
15396
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { className: styles.fieldRow, children: [
15397
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.fromLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: from }) }) }),
15398
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.toLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: to }) }) })
15399
+ ] }) }),
15400
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { className: styles.fieldRow, children: [
15401
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.scheduleLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: scheduleTime }) }) }),
15402
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.bookingNameLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: bookingName }) }) })
15403
+ ] }) }),
15404
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, children: /* @__PURE__ */ jsxRuntime.jsxs(reactGridSystem.Row, { className: styles.fieldRow, children: [
15405
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.passengerTypeLabel, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: passengerType }) }) }),
15406
+ /* @__PURE__ */ jsxRuntime.jsx(reactGridSystem.Col, { xs: 12, sm: 12, md: 6, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Field, { label: mergedLabels.addOnLabel, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.addOnRow, children: [
15407
+ /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Body1Strong, { children: addOnsCount === 0 ? mergedLabels.noAddOnsLabel : `${addOnsCount} ${addOnsCount === 1 ? mergedLabels.serviceLabel : mergedLabels.serviceLabel}` }),
15408
+ addOnsCount > 0 && /* @__PURE__ */ jsxRuntime.jsx(
15409
+ reactComponents.Button,
15410
+ {
15411
+ appearance: "transparent",
15412
+ onClick: onViewAddOns,
15413
+ style: { color: brandColors[80] },
15414
+ children: mergedLabels.viewDetail
15415
+ }
15416
+ )
15417
+ ] }) }) })
15418
+ ] }) })
15419
+ ]
15420
+ }
15421
+ ) });
15135
15422
  };
15136
15423
 
15137
15424
  // src/components/CardPriceDetails/CardPriceDetails.constants.ts
15138
- var DEFAULT_LABELS34 = {
15425
+ var DEFAULT_LABELS35 = {
15139
15426
  id: {
15140
15427
  defaultTitle: "Rincian Harga",
15141
15428
  totalPayment: "Total Pembayaran",
@@ -15171,7 +15458,7 @@ var DEFAULT_LABELS34 = {
15171
15458
  currencyPrefix: "Rp. "
15172
15459
  }
15173
15460
  };
15174
- var useStyles35 = reactComponents.makeStyles({
15461
+ var useStyles36 = reactComponents.makeStyles({
15175
15462
  list: {
15176
15463
  margin: 0,
15177
15464
  padding: 0,
@@ -15193,7 +15480,7 @@ var PriceDetailsTerms = ({
15193
15480
  language = "id",
15194
15481
  labels
15195
15482
  }) => {
15196
- const styles = useStyles35();
15483
+ const styles = useStyles36();
15197
15484
  const linkColor = reactComponents.tokens.colorBrandBackground;
15198
15485
  const bookingTerms = labels.bookingTerms;
15199
15486
  const agreementTerms = [
@@ -15213,7 +15500,7 @@ var PriceDetailsTerms = ({
15213
15500
  ] })
15214
15501
  ] });
15215
15502
  };
15216
- var useStyles36 = reactComponents.makeStyles({
15503
+ var useStyles37 = reactComponents.makeStyles({
15217
15504
  card: {
15218
15505
  padding: "1.5rem",
15219
15506
  borderRadius: reactComponents.tokens.borderRadiusXLarge,
@@ -15290,8 +15577,8 @@ var CardPriceDetails = ({
15290
15577
  total,
15291
15578
  labels
15292
15579
  }) => {
15293
- const styles = useStyles36();
15294
- const mergedLabels = { ...DEFAULT_LABELS34[language], ...labels };
15580
+ const styles = useStyles37();
15581
+ const mergedLabels = { ...DEFAULT_LABELS35[language], ...labels };
15295
15582
  const displayTitle = title || mergedLabels.defaultTitle;
15296
15583
  const getVariantClass = (variant) => {
15297
15584
  switch (variant) {
@@ -15350,7 +15637,7 @@ var CardPriceDetails = ({
15350
15637
  };
15351
15638
 
15352
15639
  // src/components/CardPaymentMethodList/CardPaymentMethodList.constants.ts
15353
- var DEFAULT_LABELS35 = {
15640
+ var DEFAULT_LABELS36 = {
15354
15641
  id: {
15355
15642
  selectAriaLabel: "Pilih metode pembayaran"
15356
15643
  },
@@ -15358,7 +15645,7 @@ var DEFAULT_LABELS35 = {
15358
15645
  selectAriaLabel: "Select payment method"
15359
15646
  }
15360
15647
  };
15361
- var useStyles37 = reactComponents.makeStyles({
15648
+ var useStyles38 = reactComponents.makeStyles({
15362
15649
  container: {
15363
15650
  display: "flex",
15364
15651
  flexDirection: "column",
@@ -15418,8 +15705,8 @@ var CardPaymentMethodList = ({
15418
15705
  selectedValue,
15419
15706
  onSelect
15420
15707
  }) => {
15421
- const styles = useStyles37();
15422
- const mergedLabels = { ...DEFAULT_LABELS35[language], ...labels };
15708
+ const styles = useStyles38();
15709
+ const mergedLabels = { ...DEFAULT_LABELS36[language], ...labels };
15423
15710
  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: [
15424
15711
  index > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.dividerContainer, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Divider, {}) }),
15425
15712
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Accordion, { multiple: true, collapsible: true, children: /* @__PURE__ */ jsxRuntime.jsxs(reactComponents.AccordionItem, { value: category.value, children: [
@@ -15468,7 +15755,7 @@ var CardPaymentMethodList = ({
15468
15755
  };
15469
15756
 
15470
15757
  // src/components/CardPaymentGuide/CardPaymentGuide.constants.ts
15471
- var DEFAULT_LABELS36 = {
15758
+ var DEFAULT_LABELS37 = {
15472
15759
  id: {
15473
15760
  title: "Cara Pembayaran"
15474
15761
  },
@@ -15476,7 +15763,7 @@ var DEFAULT_LABELS36 = {
15476
15763
  title: "Payment Method"
15477
15764
  }
15478
15765
  };
15479
- var useStyles38 = reactComponents.makeStyles({
15766
+ var useStyles39 = reactComponents.makeStyles({
15480
15767
  container: {
15481
15768
  display: "flex",
15482
15769
  flexDirection: "column",
@@ -15512,8 +15799,8 @@ var CardPaymentGuide = ({
15512
15799
  guides,
15513
15800
  className
15514
15801
  }) => {
15515
- const styles = useStyles38();
15516
- const mergedLabels = { ...DEFAULT_LABELS36[language], ...labels };
15802
+ const styles = useStyles39();
15803
+ const mergedLabels = { ...DEFAULT_LABELS37[language], ...labels };
15517
15804
  const displayTitle = title || mergedLabels.title;
15518
15805
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `${styles.container} ${className || ""}`, children: [
15519
15806
  displayTitle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.titleContainer, children: /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { className: styles.title, children: displayTitle }) }),
@@ -15532,7 +15819,7 @@ var CardPaymentGuide = ({
15532
15819
  };
15533
15820
 
15534
15821
  // src/components/CardPaymentInfo/CardPaymentInfo.constants.ts
15535
- var DEFAULT_LABELS37 = {
15822
+ var DEFAULT_LABELS38 = {
15536
15823
  id: {
15537
15824
  expiryPrefix: "Kode virtual akun berlaku sampai",
15538
15825
  copyCodeButton: "Salin Kode",
@@ -15552,7 +15839,7 @@ var DEFAULT_LABELS37 = {
15552
15839
  changePayment: "Change Payment Method"
15553
15840
  }
15554
15841
  };
15555
- var useStyles39 = reactComponents.makeStyles({
15842
+ var useStyles40 = reactComponents.makeStyles({
15556
15843
  container: {
15557
15844
  display: "flex",
15558
15845
  flexDirection: "column",
@@ -15644,8 +15931,8 @@ var CardPaymentInfo = ({
15644
15931
  onCheckStatus,
15645
15932
  onChangePayment
15646
15933
  }) => {
15647
- const styles = useStyles39();
15648
- const mergedLabels = { ...DEFAULT_LABELS37[language], ...labels };
15934
+ const styles = useStyles40();
15935
+ const mergedLabels = { ...DEFAULT_LABELS38[language], ...labels };
15649
15936
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: styles.card, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.container, children: [
15650
15937
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: styles.headerRow, children: [
15651
15938
  /* @__PURE__ */ jsxRuntime.jsx(reactComponents.Subtitle1, { children: mergedLabels.expiryPrefix }),
@@ -15717,7 +16004,7 @@ var CardPaymentInfo = ({
15717
16004
  };
15718
16005
 
15719
16006
  // src/components/CardStatusOrder/CardStatusOrder.constants.ts
15720
- var DEFAULT_LABELS38 = {
16007
+ var DEFAULT_LABELS39 = {
15721
16008
  id: {
15722
16009
  detailTitle: "Detail Pemesanan",
15723
16010
  statusLabel: "Status",
@@ -15747,7 +16034,7 @@ var DEFAULT_LABELS38 = {
15747
16034
  illustrationAlt: "E-Ticket Illustration"
15748
16035
  }
15749
16036
  };
15750
- var useStyles40 = reactComponents.makeStyles({
16037
+ var useStyles41 = reactComponents.makeStyles({
15751
16038
  activeCard: {
15752
16039
  width: "100%",
15753
16040
  // padding: tokens.spacingHorizontalNone, // default
@@ -15817,8 +16104,8 @@ var CardStatusOrder = ({
15817
16104
  onClickViewTicket,
15818
16105
  className
15819
16106
  }) => {
15820
- const styles = useStyles40();
15821
- const mergedLabels = { ...DEFAULT_LABELS38[language], ...labels };
16107
+ const styles = useStyles41();
16108
+ const mergedLabels = { ...DEFAULT_LABELS39[language], ...labels };
15822
16109
  const displayStatus = statusLabel || mergedLabels.defaultStatus;
15823
16110
  const displayTitle = title || mergedLabels.defaultTitle;
15824
16111
  const displayDescription = description || mergedLabels.defaultDescription;
@@ -15915,7 +16202,7 @@ var CardStatusOrder = ({
15915
16202
  };
15916
16203
 
15917
16204
  // src/components/ModalPriceDetail/ModalPriceDetail.constants.ts
15918
- var DEFAULT_LABELS39 = {
16205
+ var DEFAULT_LABELS40 = {
15919
16206
  id: {
15920
16207
  title: "Rincian Harga",
15921
16208
  addonHeader: "Add On",
@@ -15941,7 +16228,7 @@ var DEFAULT_LABELS39 = {
15941
16228
  closeAriaLabel: "Close"
15942
16229
  }
15943
16230
  };
15944
- var useStyles41 = reactComponents.makeStyles({
16231
+ var useStyles42 = reactComponents.makeStyles({
15945
16232
  surface: {
15946
16233
  width: "680px",
15947
16234
  maxWidth: "90vw",
@@ -16068,8 +16355,8 @@ var ModalPriceDetail = ({
16068
16355
  grandTotal,
16069
16356
  ...props
16070
16357
  }) => {
16071
- const styles = useStyles41();
16072
- const mergedLabels = { ...DEFAULT_LABELS39[language], ...labels };
16358
+ const styles = useStyles42();
16359
+ const mergedLabels = { ...DEFAULT_LABELS40[language], ...labels };
16073
16360
  return /* @__PURE__ */ jsxRuntime.jsx(
16074
16361
  reactComponents.Dialog,
16075
16362
  {
@@ -16211,7 +16498,7 @@ var ModalPriceDetail = ({
16211
16498
  // src/components/FileUpload/FileUpload.constants.ts
16212
16499
  var ACCEPTED_FILES = ".pdf,.jpg,.jpeg,.png";
16213
16500
  var MAX_FILE_SIZE_MB = 10;
16214
- var DEFAULT_LABELS40 = {
16501
+ var DEFAULT_LABELS41 = {
16215
16502
  id: {
16216
16503
  placeholder: "Ketuk untuk pilih file",
16217
16504
  maxSizeWarning: "Maksimal {maxSize}MB per file dalam format PDF, JPG, JPEG, PNG.",
@@ -16229,7 +16516,7 @@ var DEFAULT_LABELS40 = {
16229
16516
  downloadTemplateDocument: "Download Template Document"
16230
16517
  }
16231
16518
  };
16232
- var useStyles42 = reactComponents.makeStyles({
16519
+ var useStyles43 = reactComponents.makeStyles({
16233
16520
  surface: {
16234
16521
  maxWidth: "90vw",
16235
16522
  maxHeight: "90vh",
@@ -16256,7 +16543,7 @@ var ModalPreviewImage = ({
16256
16543
  imageUrl,
16257
16544
  alt = "Preview"
16258
16545
  }) => {
16259
- const styles = useStyles42();
16546
+ const styles = useStyles43();
16260
16547
  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: [
16261
16548
  /* @__PURE__ */ jsxRuntime.jsx(
16262
16549
  reactComponents.DialogTitle,
@@ -16382,7 +16669,7 @@ var FileUpload = React__default.default.forwardRef(
16382
16669
  downloadTemplateDocument = false,
16383
16670
  infoLabel
16384
16671
  }, ref) => {
16385
- const mergedLabels = { ...DEFAULT_LABELS40[language], ...customLabels };
16672
+ const mergedLabels = { ...DEFAULT_LABELS41[language], ...customLabels };
16386
16673
  const styles = uploadStyles();
16387
16674
  const fileInputRef = React.useRef(null);
16388
16675
  const [, setIsDragOver] = React.useState(false);
@@ -16819,11 +17106,11 @@ function hexToRgba(hex, alpha = 1) {
16819
17106
  }
16820
17107
 
16821
17108
  // src/components/CardProfileMenu/CardProfileMenu.constants.ts
16822
- var DEFAULT_LABELS41 = {
17109
+ var DEFAULT_LABELS42 = {
16823
17110
  id: {},
16824
17111
  en: {}
16825
17112
  };
16826
- var useStyles43 = reactComponents.makeStyles({
17113
+ var useStyles44 = reactComponents.makeStyles({
16827
17114
  container: {
16828
17115
  display: "flex",
16829
17116
  flexDirection: "column",
@@ -16883,8 +17170,8 @@ var CardProfileMenu = ({
16883
17170
  selectedValue,
16884
17171
  onTabSelect
16885
17172
  }) => {
16886
- const styles = useStyles43();
16887
- ({ ...DEFAULT_LABELS41[language], ...labels });
17173
+ const styles = useStyles44();
17174
+ ({ ...DEFAULT_LABELS42[language], ...labels });
16888
17175
  const handleTabSelect = (_, data) => {
16889
17176
  onTabSelect(data.value);
16890
17177
  };
@@ -16921,6 +17208,7 @@ exports.BackgroundTicketCardVertical = BackgroundTicketCardVertical_default;
16921
17208
  exports.COUNTRIES = COUNTRIES;
16922
17209
  exports.CardAddon = CardAddon;
16923
17210
  exports.CardBanner = CardBanner;
17211
+ exports.CardBookingAddOn = CardBookingAddOn;
16924
17212
  exports.CardBookingTicket = CardBookingTicket;
16925
17213
  exports.CardFAQ = CardFAQ;
16926
17214
  exports.CardMealCatalog = CardMealCatalog;