@asdp/ferryui 0.1.22-dev.8578 → 0.1.22-dev.8630

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
@@ -3057,7 +3057,8 @@ var CardTicketSearch = ({
3057
3057
  className,
3058
3058
  isRotating = false,
3059
3059
  showPassengerField = false,
3060
- showRoundTrip = true
3060
+ showRoundTrip = true,
3061
+ onServiceClick
3061
3062
  }) => {
3062
3063
  const styles = useStyles7();
3063
3064
  const labels = React5.useMemo(
@@ -3140,7 +3141,8 @@ var CardTicketSearch = ({
3140
3141
  {
3141
3142
  className: styles.serviceMenuCard,
3142
3143
  activeServiceId,
3143
- language
3144
+ language,
3145
+ onServiceClick
3144
3146
  }
3145
3147
  )
3146
3148
  }
@@ -4707,17 +4709,19 @@ var ModalTotalPassengers = ({
4707
4709
  const defaultInfoMessage = `Anda dapat menambahkan hingga ${maxPassengers} penumpang pada golongan kendaraan ini.`;
4708
4710
  useEffect(() => {
4709
4711
  if (passengerTypes.length === 0) return;
4710
- const defaultPassengers = passengerTypes.map((passengerType) => ({
4711
- passengerTypeId: passengerType.id,
4712
- passengerTypeCode: passengerType.passengerTypeCode,
4713
- passengerTypeName: passengerType.passengerTypeName,
4714
- services: serviceClasses.map((sc) => ({
4715
- serviceId: sc.id,
4716
- serviceName: sc.serviceName,
4717
- count: 0,
4718
- passengers: []
4719
- }))
4720
- }));
4712
+ const defaultPassengers = passengerTypes.map(
4713
+ (passengerType) => ({
4714
+ passengerTypeId: passengerType.id,
4715
+ passengerTypeCode: passengerType.passengerTypeCode,
4716
+ passengerTypeName: passengerType.passengerTypeName,
4717
+ services: serviceClasses.map((sc) => ({
4718
+ serviceId: sc.id,
4719
+ serviceName: sc.serviceName,
4720
+ count: 0,
4721
+ passengers: []
4722
+ }))
4723
+ })
4724
+ );
4721
4725
  if (selectedPassengers && selectedPassengers.length > 0) {
4722
4726
  const mergedPassengers = defaultPassengers.map((defaultP) => {
4723
4727
  const selectedP = selectedPassengers.find(
@@ -4725,8 +4729,14 @@ var ModalTotalPassengers = ({
4725
4729
  );
4726
4730
  if (selectedP) {
4727
4731
  const mergedServices = defaultP.services.map((defaultS) => {
4728
- const selectedS = selectedP.services.find((s) => s.serviceName === defaultS.serviceName);
4729
- return selectedS ? { ...defaultS, count: selectedS.count, passengers: selectedS.passengers || [] } : defaultS;
4732
+ const selectedS = selectedP.services.find(
4733
+ (s) => s.serviceName === defaultS.serviceName
4734
+ );
4735
+ return selectedS ? {
4736
+ ...defaultS,
4737
+ count: selectedS.count,
4738
+ passengers: selectedS.passengers || []
4739
+ } : defaultS;
4730
4740
  });
4731
4741
  return { ...defaultP, services: mergedServices };
4732
4742
  }
@@ -4746,18 +4756,26 @@ var ModalTotalPassengers = ({
4746
4756
  }
4747
4757
  }, [open, passengerTypes, serviceClasses, selectedPassengers]);
4748
4758
  const getServiceCount = (passengerTypeCode, serviceName) => {
4749
- const passenger = passengers.find((p) => p.passengerTypeCode === passengerTypeCode);
4759
+ const passenger = passengers.find(
4760
+ (p) => p.passengerTypeCode === passengerTypeCode
4761
+ );
4750
4762
  if (!passenger) return 0;
4751
- const service = passenger.services.find((s) => s.serviceName === serviceName);
4763
+ const service = passenger.services.find(
4764
+ (s) => s.serviceName === serviceName
4765
+ );
4752
4766
  return service?.count || 0;
4753
4767
  };
4754
4768
  const getTotalForType = (passengerTypeCode) => {
4755
- const passenger = passengers.find((p) => p.passengerTypeCode === passengerTypeCode);
4769
+ const passenger = passengers.find(
4770
+ (p) => p.passengerTypeCode === passengerTypeCode
4771
+ );
4756
4772
  if (!passenger) return "0";
4757
4773
  const parts = [];
4758
4774
  passenger.services.forEach((service) => {
4759
4775
  if (service.count > 0) {
4760
- const serviceClass = serviceClasses.find((sc) => sc.serviceName === service.serviceName);
4776
+ const serviceClass = serviceClasses.find(
4777
+ (sc) => sc.serviceName === service.serviceName
4778
+ );
4761
4779
  const serviceName = serviceClass?.name || service.serviceName;
4762
4780
  parts.push(`${service.count} ${serviceName}`);
4763
4781
  }
@@ -4800,7 +4818,10 @@ var ModalTotalPassengers = ({
4800
4818
  services: passenger.services.map((service) => {
4801
4819
  if (service.serviceName === serviceName && service.count > 0) {
4802
4820
  const newCount = service.count - 1;
4803
- const newPassengers = (service.passengers || []).slice(0, newCount);
4821
+ const newPassengers = (service.passengers || []).slice(
4822
+ 0,
4823
+ newCount
4824
+ );
4804
4825
  return {
4805
4826
  ...service,
4806
4827
  count: newCount,
@@ -4822,52 +4843,58 @@ var ModalTotalPassengers = ({
4822
4843
  })).filter((passenger) => passenger.services.length > 0);
4823
4844
  onSave(filteredPassengers);
4824
4845
  };
4825
- return /* @__PURE__ */ jsx(
4826
- Dialog,
4827
- {
4828
- open,
4829
- onOpenChange: (_, data) => !data.open && onClose(),
4830
- children: /* @__PURE__ */ jsx(DialogSurface, { children: /* @__PURE__ */ jsxs(DialogBody, { children: [
4831
- /* @__PURE__ */ jsx(
4832
- DialogTitle,
4846
+ return /* @__PURE__ */ jsx(Dialog, { open, onOpenChange: (_, data) => !data.open && onClose(), children: /* @__PURE__ */ jsx(DialogSurface, { children: /* @__PURE__ */ jsxs(DialogBody, { children: [
4847
+ /* @__PURE__ */ jsx(
4848
+ DialogTitle,
4849
+ {
4850
+ action: /* @__PURE__ */ jsx(
4851
+ Button,
4833
4852
  {
4834
- action: /* @__PURE__ */ jsx(
4835
- Button,
4836
- {
4837
- appearance: "subtle",
4838
- "aria-label": "close",
4839
- icon: /* @__PURE__ */ jsx(Icon, { icon: "fluent:dismiss-12-regular" }),
4840
- onClick: onClose
4841
- }
4842
- ),
4843
- children: title
4853
+ appearance: "subtle",
4854
+ "aria-label": "close",
4855
+ icon: /* @__PURE__ */ jsx(Icon, { icon: "fluent:dismiss-12-regular" }),
4856
+ onClick: onClose
4844
4857
  }
4845
4858
  ),
4846
- /* @__PURE__ */ jsxs(DialogContent, { children: [
4847
- /* @__PURE__ */ jsx(MessageBar, { shape: "rounded", children: /* @__PURE__ */ jsx(MessageBarBody, { children: infoMessage || defaultInfoMessage }) }),
4848
- isLoading ? /* @__PURE__ */ jsx(Body1, { children: "Loading..." }) : /* @__PURE__ */ jsxs(Fragment, { children: [
4849
- /* @__PURE__ */ jsx(
4850
- Accordion,
4851
- {
4852
- collapsible: true,
4853
- multiple: true,
4854
- openItems,
4855
- onToggle: (_, data) => setOpenItems(data.openItems),
4856
- className: styles.passengerSection,
4857
- children: passengerTypes.map((passengerType) => {
4858
- return /* @__PURE__ */ jsxs(
4859
- AccordionItem,
4860
- {
4861
- value: String(passengerType.id),
4862
- className: styles.accordionItem,
4863
- children: [
4864
- /* @__PURE__ */ jsxs(AccordionHeader, { className: styles.accordionHeader, expandIconPosition: "end", children: [
4859
+ children: title
4860
+ }
4861
+ ),
4862
+ /* @__PURE__ */ jsxs(DialogContent, { children: [
4863
+ /* @__PURE__ */ jsx(MessageBar, { shape: "rounded", children: /* @__PURE__ */ jsx(MessageBarBody, { children: infoMessage || defaultInfoMessage }) }),
4864
+ isLoading ? /* @__PURE__ */ jsx(Body1, { children: "Loading..." }) : /* @__PURE__ */ jsxs(Fragment, { children: [
4865
+ /* @__PURE__ */ jsx(
4866
+ Accordion,
4867
+ {
4868
+ collapsible: true,
4869
+ multiple: true,
4870
+ openItems,
4871
+ onToggle: (_, data) => setOpenItems(data.openItems),
4872
+ className: styles.passengerSection,
4873
+ children: passengerTypes.map((passengerType) => {
4874
+ return /* @__PURE__ */ jsxs(
4875
+ AccordionItem,
4876
+ {
4877
+ value: String(passengerType.id),
4878
+ className: styles.accordionItem,
4879
+ children: [
4880
+ /* @__PURE__ */ jsxs(
4881
+ AccordionHeader,
4882
+ {
4883
+ className: styles.accordionHeader,
4884
+ expandIconPosition: "end",
4885
+ children: [
4865
4886
  passengerType.passengerTypeName,
4866
4887
  " (",
4867
4888
  getTotalForType(passengerType.passengerTypeCode),
4868
4889
  ")"
4869
- ] }),
4870
- /* @__PURE__ */ jsx(AccordionPanel, { className: styles.accordionPanel, children: /* @__PURE__ */ jsx("div", { className: styles.nestedSection, children: serviceClasses.map((service) => /* @__PURE__ */ jsxs("div", { className: styles.nestedRow, children: [
4890
+ ]
4891
+ }
4892
+ ),
4893
+ /* @__PURE__ */ jsx(AccordionPanel, { className: styles.accordionPanel, children: /* @__PURE__ */ jsx("div", { className: styles.nestedSection, children: serviceClasses.map((service) => /* @__PURE__ */ jsxs(
4894
+ "div",
4895
+ {
4896
+ className: styles.nestedRow,
4897
+ children: [
4871
4898
  /* @__PURE__ */ jsx(Body1, { children: service.name }),
4872
4899
  /* @__PURE__ */ jsxs("div", { className: styles.passengerCount, children: [
4873
4900
  /* @__PURE__ */ jsx(
@@ -4911,29 +4938,30 @@ var ModalTotalPassengers = ({
4911
4938
  }
4912
4939
  )
4913
4940
  ] })
4914
- ] }, service.key)) }) })
4915
- ]
4916
- },
4917
- passengerType.id
4918
- );
4919
- })
4920
- }
4921
- ),
4922
- /* @__PURE__ */ jsx(
4923
- Button,
4924
- {
4925
- appearance: "primary",
4926
- size: "medium",
4927
- className: styles.submitButton,
4928
- onClick: handleSave,
4929
- children: "Simpan"
4930
- }
4931
- )
4932
- ] })
4933
- ] })
4934
- ] }) })
4935
- }
4936
- );
4941
+ ]
4942
+ },
4943
+ service.key
4944
+ )) }) })
4945
+ ]
4946
+ },
4947
+ passengerType.id
4948
+ );
4949
+ })
4950
+ }
4951
+ ),
4952
+ /* @__PURE__ */ jsx(
4953
+ Button,
4954
+ {
4955
+ appearance: "primary",
4956
+ size: "medium",
4957
+ className: styles.submitButton,
4958
+ onClick: handleSave,
4959
+ children: "Simpan"
4960
+ }
4961
+ )
4962
+ ] })
4963
+ ] })
4964
+ ] }) }) });
4937
4965
  };
4938
4966
  var useStyles13 = makeStyles({
4939
4967
  dialogSurface: {