@asdp/ferryui 0.1.22-dev.9233 → 0.1.22-dev.9336

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.d.mts CHANGED
@@ -867,6 +867,11 @@ interface InputDynamicProps<T extends FieldValues = FieldValues> {
867
867
  */
868
868
  labels?: Partial<InputDynamicLabels>;
869
869
  menuPlacement?: 'top' | 'bottom' | 'auto';
870
+ /**
871
+ * Disable selecting past dates for type "date"
872
+ * @default false
873
+ */
874
+ disablePastDates?: boolean;
870
875
  }
871
876
  interface InputDynamicLabels {
872
877
  emailOrPhonePlaceholder: string;
@@ -934,6 +939,7 @@ interface ModalSearchHarborLabels {
934
939
  harborNotFound: string;
935
940
  closeAriaLabel: string;
936
941
  popularHarborHeader: string;
942
+ favoriteHeader: string;
937
943
  }
938
944
  /**
939
945
  * Props for ModalSearchHarbor component
@@ -1018,6 +1024,10 @@ interface ModalSearchHarborProps {
1018
1024
  * Callback when clearing all last searched
1019
1025
  */
1020
1026
  onClearLastSearched: () => void;
1027
+ /**
1028
+ * Callback when clearing all favorite
1029
+ */
1030
+ onClearFavorite: () => void;
1021
1031
  }
1022
1032
 
1023
1033
  /**
@@ -2314,22 +2324,22 @@ interface ModalListPassengerLabels {
2314
2324
  };
2315
2325
  }
2316
2326
  interface PassengerItem {
2317
- /**
2318
- * Unique identifier for the passenger
2319
- */
2320
- id?: number;
2321
- /**
2322
- * Passenger name
2323
- */
2324
- fullName?: string;
2325
- /**
2326
- * Passenger category/type (e.g., "ADULT", "CHILD", "INFANT")
2327
- */
2328
- ageLabel?: string;
2329
- /**
2330
- * Whether the passenger data is completed
2331
- */
2332
- isCompleted?: boolean;
2327
+ id: number;
2328
+ titleId: number;
2329
+ titleName: string;
2330
+ fullName: string;
2331
+ birthdate: string;
2332
+ ageLabel: keyof typeof PASSENGER_TYPE | string;
2333
+ identityTypeId: number;
2334
+ identityTypeCode: keyof typeof IDENTITY_TYPE | string;
2335
+ identityId: number;
2336
+ countryId: number;
2337
+ countryName: string;
2338
+ regencyId: number;
2339
+ regencyName: string;
2340
+ email: string;
2341
+ phoneNumber: string;
2342
+ isAccountOwner: boolean;
2333
2343
  }
2334
2344
  interface ModalListPassengerProps {
2335
2345
  /**
@@ -2430,8 +2440,10 @@ interface ModalPassengerFormLabels {
2430
2440
  idTypePlaceholder: string;
2431
2441
  idNumberLabel: string;
2432
2442
  idNumberPlaceholder: string;
2433
- ageLabel: string;
2443
+ age: string;
2434
2444
  agePlaceholder: string;
2445
+ yearLabel: string;
2446
+ monthLabel: string;
2435
2447
  dateLabel: string;
2436
2448
  datePlaceholder: string;
2437
2449
  cityLabel: string;
@@ -2475,6 +2487,7 @@ interface ModalPassengerFormLabels {
2475
2487
  minAge: string;
2476
2488
  maxAge: string;
2477
2489
  requiredDate: string;
2490
+ birthDateFuture: string;
2478
2491
  requiredCity: string;
2479
2492
  requiredCountry: string;
2480
2493
  requiredPhoneNumber: string;
@@ -2488,45 +2501,57 @@ interface PassengerFormData {
2488
2501
  */
2489
2502
  id?: number;
2490
2503
  /**
2491
- * Passenger title (Tuan, Nyonya, Nona)
2504
+ * title id
2492
2505
  */
2493
- title?: string;
2506
+ titleId?: string;
2494
2507
  /**
2495
2508
  * Full name
2496
2509
  */
2497
- name?: string;
2510
+ fullName?: string;
2498
2511
  /**
2499
- * ID type (KTP, SIM, Paspor) - for adults only
2512
+ * Birth date
2500
2513
  */
2501
- idType?: string;
2514
+ birthdate?: string;
2502
2515
  /**
2503
- * identityId
2516
+ * Age (display string, auto-calculated from birthdate)
2504
2517
  */
2505
- idNumber?: string;
2518
+ ageLabel?: string;
2506
2519
  /**
2507
- * Age
2520
+ * Age (auto-calculated display value, e.g. "25 tahun 3 bulan")
2508
2521
  */
2509
2522
  age?: string;
2510
2523
  /**
2511
- * Birth date - for children/infants only
2524
+ * identityTypeId
2512
2525
  */
2513
- birthdate?: string;
2526
+ identityTypeId?: string;
2527
+ /**
2528
+ * Country Id - for passport holders
2529
+ */
2530
+ countryId?: string;
2531
+ /**
2532
+ * identityId
2533
+ */
2534
+ identityId?: string;
2514
2535
  /**
2515
2536
  * Regency ID
2516
2537
  */
2517
2538
  regencyId?: string;
2518
2539
  /**
2519
- * Ticket class
2540
+ * Email
2520
2541
  */
2521
- ticketClass?: string;
2542
+ email?: string;
2522
2543
  /**
2523
- * Category (ADULT, CHILD, INFANT, ELDERLY)
2544
+ * Phone Number
2524
2545
  */
2525
- category?: string;
2546
+ phoneNumber?: string;
2547
+ /**
2548
+ * Is Account Owner
2549
+ */
2550
+ isAccountOwner?: boolean;
2526
2551
  /**
2527
- * Country code (ISO 3166-1 alpha-2) - for passport holders
2552
+ * Ticket class
2528
2553
  */
2529
- country?: string;
2554
+ passengerClassId?: string;
2530
2555
  }
2531
2556
  interface ModalPassengerFormProps {
2532
2557
  /**
@@ -2537,6 +2562,10 @@ interface ModalPassengerFormProps {
2537
2562
  * Callback when modal should close
2538
2563
  */
2539
2564
  onClose: () => void;
2565
+ /**
2566
+ * Callback when form is changed
2567
+ */
2568
+ onChange: (data: PassengerFormData) => void;
2540
2569
  /**
2541
2570
  * Modal title
2542
2571
  * @default "Detail Penumpang"
@@ -2550,15 +2579,18 @@ interface ModalPassengerFormProps {
2550
2579
  * Default values for the form
2551
2580
  */
2552
2581
  defaultValues?: PassengerFormData;
2553
- /**
2554
- * Whether this is an adult form (shows ID fields) or child/infant form (shows birth date)
2555
- * @default true
2556
- */
2557
- isAdultForm?: boolean;
2558
2582
  /**
2559
2583
  * Options for title select field
2560
2584
  */
2561
2585
  titleOptions: SelectOption[];
2586
+ /**
2587
+ * Options for identity type select field
2588
+ */
2589
+ idTypeOptions: SelectOption[];
2590
+ /**
2591
+ * Options for country select field
2592
+ */
2593
+ countryOptions: SelectOption[];
2562
2594
  /**
2563
2595
  * Options for city select field
2564
2596
  */
@@ -2906,11 +2938,16 @@ interface CardBookingTicketLabels {
2906
2938
  estimationPrefix: string;
2907
2939
  totalPriceLabel: string;
2908
2940
  nextButton: string;
2941
+ cancelButton: string;
2909
2942
  previousButton: string;
2910
2943
  viewBookingButton: string;
2911
2944
  changePaymentButton: string;
2912
2945
  timezoneLabel: string;
2913
2946
  currencySymbol: string;
2947
+ cancelDialogTitle: string;
2948
+ cancelDialogBody: string;
2949
+ cancelDialogConfirm: string;
2950
+ cancelDialogDismiss: string;
2914
2951
  }
2915
2952
  interface CardBookingTicketProps {
2916
2953
  /**
@@ -2966,6 +3003,10 @@ interface CardBookingTicketProps {
2966
3003
  * Duration string (e.g. 1 jam 10 menit)
2967
3004
  */
2968
3005
  duration?: number;
3006
+ /**
3007
+ * Disable Next button
3008
+ */
3009
+ disableNextButton?: boolean;
2969
3010
  /**
2970
3011
  * Total price formatted string (e.g. 50.000)
2971
3012
  */
@@ -2982,6 +3023,7 @@ interface CardBookingTicketProps {
2982
3023
  * Callback for price detail click
2983
3024
  */
2984
3025
  onPriceDetailClick: () => void;
3026
+ onCancel: () => void;
2985
3027
  /**
2986
3028
  * Callback for Next button (Lanjutkan / Lihat Pemesanan)
2987
3029
  */
@@ -3530,6 +3572,7 @@ interface FileUploadLabels {
3530
3572
  sizeLabel: string;
3531
3573
  preview: string;
3532
3574
  requiredError: string;
3575
+ downloadTemplateDocument: string;
3533
3576
  }
3534
3577
  interface FileUploadProps<T extends FieldValues = FieldValues> {
3535
3578
  name: Path<T>;
@@ -3548,6 +3591,7 @@ interface FileUploadProps<T extends FieldValues = FieldValues> {
3548
3591
  * Example: '/assets/images/icons/pdficon.svg'
3549
3592
  */
3550
3593
  pdfIcon?: string;
3594
+ downloadTemplateDocument?: boolean;
3551
3595
  }
3552
3596
 
3553
3597
  declare const FileUpload: React$1.ForwardRefExoticComponent<FileUploadProps<react_hook_form.FieldValues> & React$1.RefAttributes<HTMLDivElement>>;
@@ -3564,6 +3608,18 @@ interface BadgeConfig {
3564
3608
  */
3565
3609
  declare const getBadgeConfig: (ticketClass?: string) => BadgeConfig;
3566
3610
 
3611
+ /**
3612
+ * Menghitung usia (tahun dan bulan) berdasarkan tanggal lahir
3613
+ * @param {string | Date} birthDate - Tanggal lahir
3614
+ * @returns {{ years: number, months: number }} Object berisi years dan months
3615
+ */
3616
+ declare const calculateAge: (birthDate: string | Date) => {
3617
+ years: number;
3618
+ months: number;
3619
+ };
3620
+
3621
+ declare function hexToRgba(hex: string, alpha?: number): string;
3622
+
3567
3623
  interface ProfileMenuTab {
3568
3624
  label: string;
3569
3625
  value: string;
@@ -3626,4 +3682,4 @@ interface ModalListMenuServiceProps {
3626
3682
 
3627
3683
  declare const ModalListMenuService: React$1.FC<ModalListMenuServiceProps>;
3628
3684
 
3629
- export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, type BillingDetail, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, type DepartureItem, FileUpload, type FileUploadProps, type FilterCount, GENDER, type GENDER_TYPE, HTTP_STATUS, type HarborItem, IDENTITY_TYPE, type IDENTITY_TYPE_TYPE, InputDynamic, type InputDynamicProps, type InputType, LOAD_TYPE, type LOAD_TYPE_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, type MY_TICKET_STATUS_TYPE, MY_TICKET_TAB, type MY_TICKET_TAB_TYPE, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListMenuService, type ModalListMenuServiceProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPreviewImage, type ModalPreviewImageProps, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type CardServiceMenuItem as ModalServiceItem, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, PASSENGER_TYPE, type PASSENGER_TYPE_TYPE, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type Provider, type RadioOption, type ReservationStep, type ReviewPassengerItem, type RouteItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, getBadgeConfig, getModalPreset, getSortLabel };
3685
+ export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, type BillingDetail, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, type DepartureItem, FileUpload, type FileUploadProps, type FilterCount, GENDER, type GENDER_TYPE, HTTP_STATUS, type HarborItem, IDENTITY_TYPE, type IDENTITY_TYPE_TYPE, InputDynamic, type InputDynamicProps, type InputType, LOAD_TYPE, type LOAD_TYPE_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, type MY_TICKET_STATUS_TYPE, MY_TICKET_TAB, type MY_TICKET_TAB_TYPE, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListMenuService, type ModalListMenuServiceProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPreviewImage, type ModalPreviewImageProps, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type CardServiceMenuItem as ModalServiceItem, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, PASSENGER_TYPE, type PASSENGER_TYPE_TYPE, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type Provider, type RadioOption, type ReservationStep, type ReviewPassengerItem, type RouteItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, calculateAge, getBadgeConfig, getModalPreset, getSortLabel, hexToRgba };
package/dist/index.d.ts CHANGED
@@ -867,6 +867,11 @@ interface InputDynamicProps<T extends FieldValues = FieldValues> {
867
867
  */
868
868
  labels?: Partial<InputDynamicLabels>;
869
869
  menuPlacement?: 'top' | 'bottom' | 'auto';
870
+ /**
871
+ * Disable selecting past dates for type "date"
872
+ * @default false
873
+ */
874
+ disablePastDates?: boolean;
870
875
  }
871
876
  interface InputDynamicLabels {
872
877
  emailOrPhonePlaceholder: string;
@@ -934,6 +939,7 @@ interface ModalSearchHarborLabels {
934
939
  harborNotFound: string;
935
940
  closeAriaLabel: string;
936
941
  popularHarborHeader: string;
942
+ favoriteHeader: string;
937
943
  }
938
944
  /**
939
945
  * Props for ModalSearchHarbor component
@@ -1018,6 +1024,10 @@ interface ModalSearchHarborProps {
1018
1024
  * Callback when clearing all last searched
1019
1025
  */
1020
1026
  onClearLastSearched: () => void;
1027
+ /**
1028
+ * Callback when clearing all favorite
1029
+ */
1030
+ onClearFavorite: () => void;
1021
1031
  }
1022
1032
 
1023
1033
  /**
@@ -2314,22 +2324,22 @@ interface ModalListPassengerLabels {
2314
2324
  };
2315
2325
  }
2316
2326
  interface PassengerItem {
2317
- /**
2318
- * Unique identifier for the passenger
2319
- */
2320
- id?: number;
2321
- /**
2322
- * Passenger name
2323
- */
2324
- fullName?: string;
2325
- /**
2326
- * Passenger category/type (e.g., "ADULT", "CHILD", "INFANT")
2327
- */
2328
- ageLabel?: string;
2329
- /**
2330
- * Whether the passenger data is completed
2331
- */
2332
- isCompleted?: boolean;
2327
+ id: number;
2328
+ titleId: number;
2329
+ titleName: string;
2330
+ fullName: string;
2331
+ birthdate: string;
2332
+ ageLabel: keyof typeof PASSENGER_TYPE | string;
2333
+ identityTypeId: number;
2334
+ identityTypeCode: keyof typeof IDENTITY_TYPE | string;
2335
+ identityId: number;
2336
+ countryId: number;
2337
+ countryName: string;
2338
+ regencyId: number;
2339
+ regencyName: string;
2340
+ email: string;
2341
+ phoneNumber: string;
2342
+ isAccountOwner: boolean;
2333
2343
  }
2334
2344
  interface ModalListPassengerProps {
2335
2345
  /**
@@ -2430,8 +2440,10 @@ interface ModalPassengerFormLabels {
2430
2440
  idTypePlaceholder: string;
2431
2441
  idNumberLabel: string;
2432
2442
  idNumberPlaceholder: string;
2433
- ageLabel: string;
2443
+ age: string;
2434
2444
  agePlaceholder: string;
2445
+ yearLabel: string;
2446
+ monthLabel: string;
2435
2447
  dateLabel: string;
2436
2448
  datePlaceholder: string;
2437
2449
  cityLabel: string;
@@ -2475,6 +2487,7 @@ interface ModalPassengerFormLabels {
2475
2487
  minAge: string;
2476
2488
  maxAge: string;
2477
2489
  requiredDate: string;
2490
+ birthDateFuture: string;
2478
2491
  requiredCity: string;
2479
2492
  requiredCountry: string;
2480
2493
  requiredPhoneNumber: string;
@@ -2488,45 +2501,57 @@ interface PassengerFormData {
2488
2501
  */
2489
2502
  id?: number;
2490
2503
  /**
2491
- * Passenger title (Tuan, Nyonya, Nona)
2504
+ * title id
2492
2505
  */
2493
- title?: string;
2506
+ titleId?: string;
2494
2507
  /**
2495
2508
  * Full name
2496
2509
  */
2497
- name?: string;
2510
+ fullName?: string;
2498
2511
  /**
2499
- * ID type (KTP, SIM, Paspor) - for adults only
2512
+ * Birth date
2500
2513
  */
2501
- idType?: string;
2514
+ birthdate?: string;
2502
2515
  /**
2503
- * identityId
2516
+ * Age (display string, auto-calculated from birthdate)
2504
2517
  */
2505
- idNumber?: string;
2518
+ ageLabel?: string;
2506
2519
  /**
2507
- * Age
2520
+ * Age (auto-calculated display value, e.g. "25 tahun 3 bulan")
2508
2521
  */
2509
2522
  age?: string;
2510
2523
  /**
2511
- * Birth date - for children/infants only
2524
+ * identityTypeId
2512
2525
  */
2513
- birthdate?: string;
2526
+ identityTypeId?: string;
2527
+ /**
2528
+ * Country Id - for passport holders
2529
+ */
2530
+ countryId?: string;
2531
+ /**
2532
+ * identityId
2533
+ */
2534
+ identityId?: string;
2514
2535
  /**
2515
2536
  * Regency ID
2516
2537
  */
2517
2538
  regencyId?: string;
2518
2539
  /**
2519
- * Ticket class
2540
+ * Email
2520
2541
  */
2521
- ticketClass?: string;
2542
+ email?: string;
2522
2543
  /**
2523
- * Category (ADULT, CHILD, INFANT, ELDERLY)
2544
+ * Phone Number
2524
2545
  */
2525
- category?: string;
2546
+ phoneNumber?: string;
2547
+ /**
2548
+ * Is Account Owner
2549
+ */
2550
+ isAccountOwner?: boolean;
2526
2551
  /**
2527
- * Country code (ISO 3166-1 alpha-2) - for passport holders
2552
+ * Ticket class
2528
2553
  */
2529
- country?: string;
2554
+ passengerClassId?: string;
2530
2555
  }
2531
2556
  interface ModalPassengerFormProps {
2532
2557
  /**
@@ -2537,6 +2562,10 @@ interface ModalPassengerFormProps {
2537
2562
  * Callback when modal should close
2538
2563
  */
2539
2564
  onClose: () => void;
2565
+ /**
2566
+ * Callback when form is changed
2567
+ */
2568
+ onChange: (data: PassengerFormData) => void;
2540
2569
  /**
2541
2570
  * Modal title
2542
2571
  * @default "Detail Penumpang"
@@ -2550,15 +2579,18 @@ interface ModalPassengerFormProps {
2550
2579
  * Default values for the form
2551
2580
  */
2552
2581
  defaultValues?: PassengerFormData;
2553
- /**
2554
- * Whether this is an adult form (shows ID fields) or child/infant form (shows birth date)
2555
- * @default true
2556
- */
2557
- isAdultForm?: boolean;
2558
2582
  /**
2559
2583
  * Options for title select field
2560
2584
  */
2561
2585
  titleOptions: SelectOption[];
2586
+ /**
2587
+ * Options for identity type select field
2588
+ */
2589
+ idTypeOptions: SelectOption[];
2590
+ /**
2591
+ * Options for country select field
2592
+ */
2593
+ countryOptions: SelectOption[];
2562
2594
  /**
2563
2595
  * Options for city select field
2564
2596
  */
@@ -2906,11 +2938,16 @@ interface CardBookingTicketLabels {
2906
2938
  estimationPrefix: string;
2907
2939
  totalPriceLabel: string;
2908
2940
  nextButton: string;
2941
+ cancelButton: string;
2909
2942
  previousButton: string;
2910
2943
  viewBookingButton: string;
2911
2944
  changePaymentButton: string;
2912
2945
  timezoneLabel: string;
2913
2946
  currencySymbol: string;
2947
+ cancelDialogTitle: string;
2948
+ cancelDialogBody: string;
2949
+ cancelDialogConfirm: string;
2950
+ cancelDialogDismiss: string;
2914
2951
  }
2915
2952
  interface CardBookingTicketProps {
2916
2953
  /**
@@ -2966,6 +3003,10 @@ interface CardBookingTicketProps {
2966
3003
  * Duration string (e.g. 1 jam 10 menit)
2967
3004
  */
2968
3005
  duration?: number;
3006
+ /**
3007
+ * Disable Next button
3008
+ */
3009
+ disableNextButton?: boolean;
2969
3010
  /**
2970
3011
  * Total price formatted string (e.g. 50.000)
2971
3012
  */
@@ -2982,6 +3023,7 @@ interface CardBookingTicketProps {
2982
3023
  * Callback for price detail click
2983
3024
  */
2984
3025
  onPriceDetailClick: () => void;
3026
+ onCancel: () => void;
2985
3027
  /**
2986
3028
  * Callback for Next button (Lanjutkan / Lihat Pemesanan)
2987
3029
  */
@@ -3530,6 +3572,7 @@ interface FileUploadLabels {
3530
3572
  sizeLabel: string;
3531
3573
  preview: string;
3532
3574
  requiredError: string;
3575
+ downloadTemplateDocument: string;
3533
3576
  }
3534
3577
  interface FileUploadProps<T extends FieldValues = FieldValues> {
3535
3578
  name: Path<T>;
@@ -3548,6 +3591,7 @@ interface FileUploadProps<T extends FieldValues = FieldValues> {
3548
3591
  * Example: '/assets/images/icons/pdficon.svg'
3549
3592
  */
3550
3593
  pdfIcon?: string;
3594
+ downloadTemplateDocument?: boolean;
3551
3595
  }
3552
3596
 
3553
3597
  declare const FileUpload: React$1.ForwardRefExoticComponent<FileUploadProps<react_hook_form.FieldValues> & React$1.RefAttributes<HTMLDivElement>>;
@@ -3564,6 +3608,18 @@ interface BadgeConfig {
3564
3608
  */
3565
3609
  declare const getBadgeConfig: (ticketClass?: string) => BadgeConfig;
3566
3610
 
3611
+ /**
3612
+ * Menghitung usia (tahun dan bulan) berdasarkan tanggal lahir
3613
+ * @param {string | Date} birthDate - Tanggal lahir
3614
+ * @returns {{ years: number, months: number }} Object berisi years dan months
3615
+ */
3616
+ declare const calculateAge: (birthDate: string | Date) => {
3617
+ years: number;
3618
+ months: number;
3619
+ };
3620
+
3621
+ declare function hexToRgba(hex: string, alpha?: number): string;
3622
+
3567
3623
  interface ProfileMenuTab {
3568
3624
  label: string;
3569
3625
  value: string;
@@ -3626,4 +3682,4 @@ interface ModalListMenuServiceProps {
3626
3682
 
3627
3683
  declare const ModalListMenuService: React$1.FC<ModalListMenuServiceProps>;
3628
3684
 
3629
- export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, type BillingDetail, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, type DepartureItem, FileUpload, type FileUploadProps, type FilterCount, GENDER, type GENDER_TYPE, HTTP_STATUS, type HarborItem, IDENTITY_TYPE, type IDENTITY_TYPE_TYPE, InputDynamic, type InputDynamicProps, type InputType, LOAD_TYPE, type LOAD_TYPE_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, type MY_TICKET_STATUS_TYPE, MY_TICKET_TAB, type MY_TICKET_TAB_TYPE, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListMenuService, type ModalListMenuServiceProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPreviewImage, type ModalPreviewImageProps, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type CardServiceMenuItem as ModalServiceItem, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, PASSENGER_TYPE, type PASSENGER_TYPE_TYPE, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type Provider, type RadioOption, type ReservationStep, type ReviewPassengerItem, type RouteItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, getBadgeConfig, getModalPreset, getSortLabel };
3685
+ export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard, BackgroundTicketCardVertical, type BadgeConfig, type BillingDetail, COUNTRIES, CardAddon, type CardAddonProps, CardBanner, type CardBannerProps, CardBookingTicket, type CardBookingTicketProps, CardFAQ, type CardFAQProps, CardMealCatalog, type CardMealCatalogProps, CardOrdererInfo, type CardOrdererInfoProps, CardPassengerList, type CardPassengerListProps, CardPaymentGuide, type CardPaymentGuideProps, CardPaymentInfo, type CardPaymentInfoProps, CardPaymentMethodList, type CardPaymentMethodListProps, CardPriceDetails, type CardPriceDetailsProps, CardProfileMenu, type CardProfileMenuLabels, type CardProfileMenuProps, CardPromo, type CardPromoProps, CardReview, CardReviewPassenger, type CardReviewPassengerProps, type CardReviewProps, CardServiceMenu, type CardServiceMenuProps, CardStatusOrder, type CardStatusOrderProps, CardTicket, type CardTicketProps, CardTicketSearch, DEFAULT_LABELS$3 as CardTicketSearchDefaultLabels, type CardTicketSearchFormData, type CardTicketSearchLabels, type CardTicketSearchProps, type ServiceMenuItem as CardTicketSearchServiceMenuItem, CardTicketSearchSummary, DEFAULT_LABELS$2 as CardTicketSearchSummaryDefaultLabels, type CardTicketSearchSummaryProps, CardVehicleDetail, type CardVehicleDetailProps, CardVehicleOwnerForm, type CardVehicleOwnerFormProps, type CargoItem, CarouselWithCustomNav, type CarouselWithCustomNavProps, type CountryOption, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS as DateFilterDefaultLabels, type DateFilterLabels, type DateFilterProps, type DateItem, type DepartureItem, FileUpload, type FileUploadProps, type FilterCount, GENDER, type GENDER_TYPE, HTTP_STATUS, type HarborItem, IDENTITY_TYPE, type IDENTITY_TYPE_TYPE, InputDynamic, type InputDynamicProps, type InputType, LOAD_TYPE, type LOAD_TYPE_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, type MY_TICKET_STATUS_TYPE, MY_TICKET_TAB, type MY_TICKET_TAB_TYPE, type MealCategory, type MealItem, ModalFilterTicket, DEFAULT_LABELS$1 as ModalFilterTicketDefaultLabels, type ModalFilterTicketLabels, type ModalFilterTicketProps, ModalIllustration, type ModalIllustrationButton, type ModalIllustrationProps, ModalListMenuService, type ModalListMenuServiceProps, ModalListPassenger, type PassengerItem as ModalListPassengerItem, type ModalListPassengerProps, ModalPassengerForm, type ModalPassengerFormProps, type ModalPresetKey, ModalPreviewImage, type ModalPreviewImageProps, ModalPriceDetail, type ModalPriceDetailProps, ModalSearchHarbor, type ModalSearchHarborProps, ModalSearchTicket, type ModalSearchTicketProps, ModalSelectDate, type ModalSelectDateProps, ModalService, type CardServiceMenuItem as ModalServiceItem, type ModalServiceProps, ModalTotalPassengers, type ModalTotalPassengersProps, ModalTypeOfService, type ModalTypeOfServiceProps, PASSENGER_TYPE, type PASSENGER_TYPE_TYPE, type Passenger, type PassengerClass, type PassengerFormData, type PassengerListItem, type PassengerService, type PassengerType, type PaymentGuideStep, type PaymentMethodCategory, type PaymentStep, type PriceDetailItem, type ProfileMenuSection, type ProfileMenuTab, type Provider, type RadioOption, type ReservationStep, type ReviewPassengerItem, type RouteItem, type SearchSummaryField, type SearchTicketFormData, type SelectOption, type SelectedPassengerItem, type ServiceId, type ServiceItem, SortMenu, type SortMenuProps, type SortOption, type StepStatus, Stepper, type StepperProps, type StepperStep, type TabType, type TypeOfService, type VehicleOwner, calculateAge, getBadgeConfig, getModalPreset, getSortLabel, hexToRgba };