@asdp/ferryui 0.1.22-dev.9111 → 0.1.22-dev.9117

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { makeStyles, tokens, createLightTheme, createDarkTheme, shorthands, Popover, PopoverTrigger, Input, PopoverSurface, Field, Caption1Strong, Caption2, Button, Body1, Body1Strong, Caption1, Dialog, DialogSurface, DialogBody, DialogTitle, DialogTrigger, DialogContent, Carousel, CarouselButton, CarouselViewport, mergeClasses, CarouselSlider, CarouselNav, CarouselNavButton, CarouselCard, Skeleton, SkeletonItem, Subtitle2, Card, Tooltip, Badge, Title2, Divider, Title3, Label, Text, Checkbox, MessageBar, MessageBarBody, Accordion, AccordionItem, AccordionHeader, AccordionPanel, RadioGroup, Radio, Menu, MenuTrigger, MenuPopover, MenuList, DialogActions, Caption2Strong, Subtitle1, Body1Stronger, Caption1Stronger, Display, Image, Title1, TabList, Tab, Body2, typographyStyles, Switch, Textarea, Link } from '@fluentui/react-components';
2
2
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
3
- import React5, { forwardRef, useState, useRef, useEffect, useCallback, useMemo, Fragment as Fragment$1 } from 'react';
3
+ import React, { forwardRef, useState, useRef, useEffect, useCallback, useMemo, Fragment as Fragment$1 } from 'react';
4
4
  import { Dismiss24Regular, DismissRegular, SubtractRegular, AddRegular, DeleteRegular, InfoRegular, SearchRegular } from '@fluentui/react-icons';
5
5
  import { Container, Row, Col, Visible } from 'react-grid-system';
6
6
  import { Icon } from '@iconify/react';
@@ -457,6 +457,26 @@ var GENDER = {
457
457
  MALE: "M",
458
458
  FEMALE: "F"
459
459
  };
460
+ var MY_TICKET_TAB = {
461
+ WAITING: 1,
462
+ ACTIVE: 2,
463
+ COMPLETED: 3,
464
+ FAILED: 4,
465
+ RETURNED: 5
466
+ };
467
+ var MY_TICKET_STATUS = {
468
+ DRAFT: 1,
469
+ NOT_YET_PAID: 2,
470
+ PAID: 3,
471
+ CHECKIN: 4,
472
+ BOARDING: 5,
473
+ NEED_ACTION: 6,
474
+ COMPLETED: 7,
475
+ EXPIRED_CHECKIN: 8,
476
+ EXPIRED_PAYMENT: 9,
477
+ EXPIRED_BOARDING: 10,
478
+ REFUND: 11
479
+ };
460
480
  var useStyles2 = makeStyles({
461
481
  carousel: {},
462
482
  carouselContainer: {
@@ -578,11 +598,13 @@ var CarouselWithCustomNav = ({
578
598
  cardFocus = false,
579
599
  showNavButtons = false,
580
600
  showCloseButton = false,
581
- onCloseClick
601
+ onCloseClick,
602
+ autoPlay = false,
603
+ autoPlayInterval = 5e3
582
604
  }) => {
583
605
  const styles = useStyles2();
584
606
  const [internalIndex, setInternalIndex] = useState(0);
585
- const labels = React5.useMemo(
607
+ const labels = React.useMemo(
586
608
  () => ({
587
609
  ...DEFAULT_LABELS2[language],
588
610
  ...customLabels,
@@ -600,6 +622,32 @@ var CarouselWithCustomNav = ({
600
622
  },
601
623
  [controlledIndex, onActiveIndexChange]
602
624
  );
625
+ React.useEffect(() => {
626
+ if (!autoPlay) return;
627
+ const totalSlides = React.Children.count(children);
628
+ if (totalSlides <= 1) return;
629
+ const intervalId = setInterval(() => {
630
+ let nextIndex = activeIndex + 1;
631
+ if (nextIndex >= totalSlides) {
632
+ nextIndex = circular ? 0 : activeIndex;
633
+ }
634
+ if (nextIndex !== activeIndex) {
635
+ if (controlledIndex === void 0) {
636
+ setInternalIndex(nextIndex);
637
+ }
638
+ onActiveIndexChange?.(nextIndex);
639
+ }
640
+ }, autoPlayInterval);
641
+ return () => clearInterval(intervalId);
642
+ }, [
643
+ autoPlay,
644
+ autoPlayInterval,
645
+ children,
646
+ circular,
647
+ activeIndex,
648
+ controlledIndex,
649
+ onActiveIndexChange
650
+ ]);
603
651
  const defaultAnnouncement = useCallback(
604
652
  (index, totalSlides) => {
605
653
  return labels.announcementTemplate.replace("{index}", (index + 1).toString()).replace("{total}", totalSlides.toString());
@@ -937,12 +985,12 @@ var useStyles4 = makeStyles({
937
985
  padding: 0,
938
986
  backgroundColor: "transparent",
939
987
  border: "none",
940
- height: "450px",
988
+ aspectRatio: "3/1",
941
989
  borderRadius: tokens.borderRadiusXLarge
942
990
  },
943
991
  bannerImage: {
944
992
  width: "100%",
945
- height: "auto",
993
+ aspectRatio: "3/1",
946
994
  objectFit: "cover",
947
995
  display: "block",
948
996
  cursor: "pointer",
@@ -1941,7 +1989,7 @@ var CardServiceMenu = ({
1941
1989
  return mergeClasses(styles.menuItem, isActive && styles.menuItemActive);
1942
1990
  };
1943
1991
  return /* @__PURE__ */ jsx(Card, { className: mergeClasses(styles.card, className), children: /* @__PURE__ */ jsx("div", { className: styles.menuList, children: menuItems.map((item, index) => {
1944
- return /* @__PURE__ */ jsxs(React5.Fragment, { children: [
1992
+ return /* @__PURE__ */ jsxs(React.Fragment, { children: [
1945
1993
  /* @__PURE__ */ jsxs(
1946
1994
  Button,
1947
1995
  {
@@ -3737,7 +3785,7 @@ var CardTicketSearch = ({
3737
3785
  menuItems
3738
3786
  }) => {
3739
3787
  const styles = useStyles8();
3740
- const labels = React5.useMemo(
3788
+ const labels = React.useMemo(
3741
3789
  () => ({ ...DEFAULT_LABELS8[language], ...customLabels }),
3742
3790
  [language, customLabels]
3743
3791
  );
@@ -3758,7 +3806,7 @@ var CardTicketSearch = ({
3758
3806
  name: "roundTrip",
3759
3807
  defaultValue: roundTrip
3760
3808
  });
3761
- React5.useEffect(() => {
3809
+ React.useEffect(() => {
3762
3810
  setValue("from", from);
3763
3811
  setValue("to", to);
3764
3812
  setValue("startDate", startDate);
@@ -3778,7 +3826,7 @@ var CardTicketSearch = ({
3778
3826
  passenger,
3779
3827
  setValue
3780
3828
  ]);
3781
- React5.useEffect(() => {
3829
+ React.useEffect(() => {
3782
3830
  if (onRoundTripChange) {
3783
3831
  onRoundTripChange(roundTripValue);
3784
3832
  }
@@ -6292,7 +6340,7 @@ var SortMenu = ({
6292
6340
  clearFiltersText: deprecatedClearFiltersText
6293
6341
  }) => {
6294
6342
  const styles = useStyles15();
6295
- const labels = React5.useMemo(
6343
+ const labels = React.useMemo(
6296
6344
  () => ({
6297
6345
  ...DEFAULT_LABELS15[language],
6298
6346
  ...customLabels,
@@ -6315,11 +6363,11 @@ var SortMenu = ({
6315
6363
  deprecatedClearFiltersText
6316
6364
  ]
6317
6365
  );
6318
- const sortOptions = React5.useMemo(
6366
+ const sortOptions = React.useMemo(
6319
6367
  () => customSortOptions || getSortOptions(labels),
6320
6368
  [customSortOptions, labels]
6321
6369
  );
6322
- const currentSortLabel = React5.useMemo(
6370
+ const currentSortLabel = React.useMemo(
6323
6371
  () => sortOptions.find((opt) => opt.value === value)?.label || labels.recommendation,
6324
6372
  [sortOptions, value, labels.recommendation]
6325
6373
  );
@@ -11578,7 +11626,7 @@ var CardReview = ({
11578
11626
  }
11579
11627
  ) : (
11580
11628
  // Clone element to append className if it's a valid React element
11581
- React5.isValidElement(item.label) ? React5.cloneElement(item.label, {
11629
+ React.isValidElement(item.label) ? React.cloneElement(item.label, {
11582
11630
  className: `${styles.defaultLabel} ${item.labelClassName || ""}${item.label.props.className ? " " + item.label.props.className : ""}`
11583
11631
  }) : /* @__PURE__ */ jsx(
11584
11632
  "div",
@@ -11931,7 +11979,7 @@ var CardPriceDetails = ({
11931
11979
  const renderItem = (item, key) => {
11932
11980
  const variantClass = getVariantClass(item.variant);
11933
11981
  const isTaxLike = item.variant === "danger";
11934
- return /* @__PURE__ */ jsxs(React5.Fragment, { children: [
11982
+ return /* @__PURE__ */ jsxs(React.Fragment, { children: [
11935
11983
  /* @__PURE__ */ jsxs("div", { className: styles.row, children: [
11936
11984
  isTaxLike ? /* @__PURE__ */ jsx(Body1Strong, { className: variantClass, children: item.name }) : /* @__PURE__ */ jsx(Caption1, { className: mergeClasses(styles.label, variantClass), children: item.name }),
11937
11985
  isTaxLike ? /* @__PURE__ */ jsxs(Body1Strong, { className: mergeClasses(styles.value, variantClass), children: [
@@ -11958,7 +12006,7 @@ var CardPriceDetails = ({
11958
12006
  section.detail.map((item, i) => renderItem(item, i))
11959
12007
  ] }, index);
11960
12008
  }
11961
- return /* @__PURE__ */ jsx(React5.Fragment, { children: section.detail.map((item, i) => renderItem(item, i)) }, index);
12009
+ return /* @__PURE__ */ jsx(React.Fragment, { children: section.detail.map((item, i) => renderItem(item, i)) }, index);
11962
12010
  }),
11963
12011
  /* @__PURE__ */ jsx(Divider, {}),
11964
12012
  /* @__PURE__ */ jsxs("div", { className: styles.totalRow, children: [
@@ -12952,7 +13000,7 @@ var uploadStyles = makeStyles({
12952
13000
  objectFit: "contain"
12953
13001
  }
12954
13002
  });
12955
- var FileUpload = React5.forwardRef(
13003
+ var FileUpload = React.forwardRef(
12956
13004
  ({
12957
13005
  name,
12958
13006
  control,
@@ -13457,6 +13505,6 @@ var CardProfileMenu = ({
13457
13505
  ) });
13458
13506
  };
13459
13507
 
13460
- export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard_default as BackgroundTicketCard, BackgroundTicketCardVertical_default as BackgroundTicketCardVertical, COUNTRIES, CardAddon, CardBanner, CardBookingTicket, CardFAQ, CardMealCatalog, CardOrdererInfo, CardPassengerList, CardPaymentGuide, CardPaymentInfo, CardPaymentMethodList, CardPriceDetails, CardProfileMenu, CardPromo, CardReview, CardReviewPassenger, CardServiceMenu, CardStatusOrder, CardTicket, CardTicketSearch, DEFAULT_LABELS8 as CardTicketSearchDefaultLabels, CardTicketSearchSummary, DEFAULT_LABELS9 as CardTicketSearchSummaryDefaultLabels, CardVehicleDetail, CardVehicleOwnerForm, CarouselWithCustomNav, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS17 as DateFilterDefaultLabels, FileUpload_default as FileUpload, GENDER, HTTP_STATUS, IDENTITY_TYPE, InputDynamic_default as InputDynamic, LOAD_TYPE, MODAL_PRESETS, ModalFilterTicket, DEFAULT_LABELS16 as ModalFilterTicketDefaultLabels, ModalIllustration, ModalListPassenger, ModalPassengerForm, ModalPreviewImage, ModalPriceDetail, ModalSearchHarbor, ModalSearchTicket, ModalSelectDate, ModalService, ModalTotalPassengers, ModalTypeOfService, PASSENGER_TYPE, SortMenu, Stepper, getBadgeConfig, getModalPreset, getSortLabel };
13508
+ export { API_CONFIG, API_ENDPOINTS, API_ERROR_MESSAGES, BackgroundTicketCard_default as BackgroundTicketCard, BackgroundTicketCardVertical_default as BackgroundTicketCardVertical, COUNTRIES, CardAddon, CardBanner, CardBookingTicket, CardFAQ, CardMealCatalog, CardOrdererInfo, CardPassengerList, CardPaymentGuide, CardPaymentInfo, CardPaymentMethodList, CardPriceDetails, CardProfileMenu, CardPromo, CardReview, CardReviewPassenger, CardServiceMenu, CardStatusOrder, CardTicket, CardTicketSearch, DEFAULT_LABELS8 as CardTicketSearchDefaultLabels, CardTicketSearchSummary, DEFAULT_LABELS9 as CardTicketSearchSummaryDefaultLabels, CardVehicleDetail, CardVehicleOwnerForm, CarouselWithCustomNav, DEFAULT_DURATION_RANGE, DEFAULT_PRICE_RANGE, DEFAULT_SCROLL_AMOUNT, DEFAULT_SERVICE_TYPES, DEFAULT_SORT_OPTIONS, DEFAULT_TIME_SLOTS, DEFAULT_VEHICLE_ICONS, DateFilter, DEFAULT_LABELS17 as DateFilterDefaultLabels, FileUpload_default as FileUpload, GENDER, HTTP_STATUS, IDENTITY_TYPE, InputDynamic_default as InputDynamic, LOAD_TYPE, MODAL_PRESETS, MY_TICKET_STATUS, MY_TICKET_TAB, ModalFilterTicket, DEFAULT_LABELS16 as ModalFilterTicketDefaultLabels, ModalIllustration, ModalListPassenger, ModalPassengerForm, ModalPreviewImage, ModalPriceDetail, ModalSearchHarbor, ModalSearchTicket, ModalSelectDate, ModalService, ModalTotalPassengers, ModalTypeOfService, PASSENGER_TYPE, SortMenu, Stepper, getBadgeConfig, getModalPreset, getSortLabel };
13461
13509
  //# sourceMappingURL=index.mjs.map
13462
13510
  //# sourceMappingURL=index.mjs.map