@ceed/ads 1.16.0-next.9 → 1.16.1

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
@@ -3456,10 +3456,8 @@ TableBody.displayName = "TableBody";
3456
3456
 
3457
3457
  // src/components/Pagination/Pagination.tsx
3458
3458
  import React24, { useCallback as useCallback10, useEffect as useEffect6 } from "react";
3459
- import PreviousIcon from "@mui/icons-material/ChevronLeftRounded";
3460
- import NextIcon from "@mui/icons-material/ChevronRightRounded";
3461
- import FirstPageIcon from "@mui/icons-material/FirstPageRounded";
3462
- import LastPageIcon from "@mui/icons-material/LastPageRounded";
3459
+ import PreviousIcon from "@mui/icons-material/ChevronLeft";
3460
+ import NextIcon from "@mui/icons-material/ChevronRight";
3463
3461
  import { styled as styled13 } from "@mui/joy";
3464
3462
  var PaginationButton = styled13(Button_default, {
3465
3463
  name: "Pagination",
@@ -3518,7 +3516,6 @@ function Pagination(props) {
3518
3516
  onPageChange,
3519
3517
  rowCount,
3520
3518
  size = "md",
3521
- variant = "standard",
3522
3519
  ...innerProps
3523
3520
  } = props;
3524
3521
  const [paginationModel, setPaginationModel] = useControlledState(
@@ -3545,87 +3542,6 @@ function Pagination(props) {
3545
3542
  setPaginationModel({ ...paginationModel, page: lastPage });
3546
3543
  }
3547
3544
  }, [rowCount, paginationModel, lastPage, setPaginationModel]);
3548
- const pageOptions = Array.from({ length: lastPage }, (_, i) => ({
3549
- label: `${i + 1}`,
3550
- value: `${i + 1}`
3551
- }));
3552
- if (variant === "compact") {
3553
- return /* @__PURE__ */ React24.createElement(PaginationRoot, { ...innerProps }, /* @__PURE__ */ React24.createElement(PaginationContainer, { direction: "row", size, alignItems: "center" }, /* @__PURE__ */ React24.createElement(Stack_default, { direction: "row" }, /* @__PURE__ */ React24.createElement(
3554
- PaginationIconButton,
3555
- {
3556
- size,
3557
- variant: "plain",
3558
- color: "neutral",
3559
- onClick: () => handlePageChange(firstPage),
3560
- disabled: paginationModel.page === firstPage,
3561
- "aria-label": "First page"
3562
- },
3563
- /* @__PURE__ */ React24.createElement(FirstPageIcon, null)
3564
- ), /* @__PURE__ */ React24.createElement(
3565
- PaginationIconButton,
3566
- {
3567
- size,
3568
- variant: "plain",
3569
- color: "neutral",
3570
- onClick: () => handlePageChange(paginationModel.page - 1),
3571
- disabled: paginationModel.page === firstPage,
3572
- "aria-label": "Previous page"
3573
- },
3574
- /* @__PURE__ */ React24.createElement(PreviousIcon, null)
3575
- )), /* @__PURE__ */ React24.createElement(
3576
- Autocomplete_default,
3577
- {
3578
- size,
3579
- value: `${paginationModel.page}`,
3580
- onChange: (event) => {
3581
- if (event.target.value) {
3582
- handlePageChange(parseInt(event.target.value, 10));
3583
- }
3584
- },
3585
- options: pageOptions,
3586
- sx: {
3587
- width: {
3588
- sm: "80px",
3589
- md: "100px",
3590
- lg: "120px"
3591
- }[size]
3592
- }
3593
- }
3594
- ), /* @__PURE__ */ React24.createElement(
3595
- Typography_default,
3596
- {
3597
- level: `body-${size}`,
3598
- sx: (theme) => ({
3599
- color: theme.palette.text.secondary,
3600
- fontWeight: 500
3601
- })
3602
- },
3603
- "/ ",
3604
- lastPage
3605
- ), /* @__PURE__ */ React24.createElement(Stack_default, { direction: "row" }, /* @__PURE__ */ React24.createElement(
3606
- PaginationIconButton,
3607
- {
3608
- size,
3609
- variant: "plain",
3610
- color: "neutral",
3611
- onClick: () => handlePageChange(paginationModel.page + 1),
3612
- disabled: paginationModel.page === lastPage,
3613
- "aria-label": "Next page"
3614
- },
3615
- /* @__PURE__ */ React24.createElement(NextIcon, null)
3616
- ), /* @__PURE__ */ React24.createElement(
3617
- PaginationIconButton,
3618
- {
3619
- size,
3620
- variant: "plain",
3621
- color: "neutral",
3622
- onClick: () => handlePageChange(lastPage),
3623
- disabled: paginationModel.page === lastPage,
3624
- "aria-label": "Last page"
3625
- },
3626
- /* @__PURE__ */ React24.createElement(LastPageIcon, null)
3627
- ))));
3628
- }
3629
3545
  return /* @__PURE__ */ React24.createElement(PaginationRoot, { ...innerProps }, /* @__PURE__ */ React24.createElement(PaginationContainer, { direction: "row", size, alignItems: "center" }, /* @__PURE__ */ React24.createElement(
3630
3546
  PaginationIconButton,
3631
3547
  {
@@ -4550,6 +4466,7 @@ function FilterableCheckboxGroup(props) {
4550
4466
  );
4551
4467
  const parentRef = useRef8(null);
4552
4468
  const isInitialSortRef = useRef8(false);
4469
+ const prevOptionsRef = useRef8([...options]);
4553
4470
  const filteredOptions = useMemo12(() => {
4554
4471
  if (!searchTerm) return sortedOptions;
4555
4472
  return sortedOptions.filter((option) => option.label.toLowerCase().includes(searchTerm.toLowerCase()));
@@ -4564,16 +4481,6 @@ function FilterableCheckboxGroup(props) {
4564
4481
  return 36;
4565
4482
  }
4566
4483
  }, [size]);
4567
- const noOptionsFontSize = useMemo12(() => {
4568
- switch (size) {
4569
- case "sm":
4570
- return "14px";
4571
- case "md":
4572
- return "16px";
4573
- case "lg":
4574
- return "18px";
4575
- }
4576
- }, [size]);
4577
4484
  const virtualizer = useVirtualizer3({
4578
4485
  count: filteredOptions.length,
4579
4486
  estimateSize: () => itemSize,
@@ -4583,27 +4490,34 @@ function FilterableCheckboxGroup(props) {
4583
4490
  });
4584
4491
  const items = virtualizer.getVirtualItems();
4585
4492
  useEffect8(() => {
4586
- if (isInitialSortRef.current) return;
4587
- const initialValue = value ?? [];
4588
- const sorted = [...options].sort((a, b) => {
4589
- const aSelected = initialValue.includes(a.value);
4590
- const bSelected = initialValue.includes(b.value);
4591
- if (aSelected !== bSelected) {
4592
- return aSelected ? -1 : 1;
4593
- }
4594
- const aIsAlpha = /^[a-zA-Z]/.test(a.label);
4595
- const bIsAlpha = /^[a-zA-Z]/.test(b.label);
4596
- if (aIsAlpha !== bIsAlpha) {
4597
- return aIsAlpha ? -1 : 1;
4493
+ const optionsChanged = prevOptionsRef.current.length !== options.length || prevOptionsRef.current.some(
4494
+ (prevOption, index) => prevOption.value !== options[index]?.value || prevOption.label !== options[index]?.label || prevOption.disabled !== options[index]?.disabled
4495
+ );
4496
+ if (!isInitialSortRef.current || optionsChanged) {
4497
+ const initialValue = value ?? [];
4498
+ const sorted = [...options].sort((a, b) => {
4499
+ const aSelected = initialValue.includes(a.value);
4500
+ const bSelected = initialValue.includes(b.value);
4501
+ if (aSelected !== bSelected) {
4502
+ return aSelected ? -1 : 1;
4503
+ }
4504
+ const aIsAlpha = /^[a-zA-Z]/.test(a.label);
4505
+ const bIsAlpha = /^[a-zA-Z]/.test(b.label);
4506
+ if (aIsAlpha !== bIsAlpha) {
4507
+ return aIsAlpha ? -1 : 1;
4508
+ }
4509
+ return a.label.localeCompare(b.label);
4510
+ });
4511
+ setSortedOptions(sorted);
4512
+ prevOptionsRef.current = [...options];
4513
+ if (!isInitialSortRef.current) {
4514
+ isInitialSortRef.current = true;
4598
4515
  }
4599
- return a.label.localeCompare(b.label);
4600
- });
4601
- setSortedOptions(sorted);
4602
- isInitialSortRef.current = true;
4516
+ }
4603
4517
  }, [options, value]);
4604
4518
  useEffect8(() => {
4605
4519
  virtualizer.measure();
4606
- }, [virtualizer, filteredOptions]);
4520
+ }, [virtualizer, filteredOptions, size]);
4607
4521
  const handleSearchChange = useCallback13((event) => {
4608
4522
  setSearchTerm(event.target.value);
4609
4523
  }, []);
@@ -4649,19 +4563,7 @@ function FilterableCheckboxGroup(props) {
4649
4563
  disabled,
4650
4564
  endDecorator: /* @__PURE__ */ React30.createElement(SearchIcon, null)
4651
4565
  }
4652
- ), filteredOptions.length === 0 ? /* @__PURE__ */ React30.createElement(
4653
- Stack_default,
4654
- {
4655
- sx: (theme) => ({
4656
- padding: "20px 12px",
4657
- justifyContent: "center",
4658
- alignItems: "center",
4659
- fontSize: noOptionsFontSize,
4660
- color: theme.palette.neutral.softDisabledColor
4661
- })
4662
- },
4663
- "No options found."
4664
- ) : /* @__PURE__ */ React30.createElement(
4566
+ ), filteredOptions.length === 0 ? /* @__PURE__ */ React30.createElement(Typography_default, { level: `body-${size}`, textColor: "neutral.softDisabledColor", padding: "20px 12px", textAlign: "center" }, "No options found.") : /* @__PURE__ */ React30.createElement(
4665
4567
  "div",
4666
4568
  {
4667
4569
  ref: parentRef,
@@ -4731,8 +4633,8 @@ function FilterableCheckboxGroup(props) {
4731
4633
  FilterableCheckboxGroup.displayName = "FilterableCheckboxGroup";
4732
4634
 
4733
4635
  // src/components/FilterMenu/FilterMenu.tsx
4734
- import React41, { useCallback as useCallback23 } from "react";
4735
- import { Button as Button2, Stack as Stack11 } from "@mui/joy";
4636
+ import React40, { useCallback as useCallback22 } from "react";
4637
+ import { Button as Button2, Stack as Stack10 } from "@mui/joy";
4736
4638
 
4737
4639
  // src/components/FilterMenu/components/CheckboxGroup.tsx
4738
4640
  import React31, { useCallback as useCallback14 } from "react";
@@ -4768,37 +4670,8 @@ function CheckboxGroup(props) {
4768
4670
  }
4769
4671
  CheckboxGroup.displayName = "CheckboxGroup";
4770
4672
 
4771
- // src/components/FilterMenu/components/FilterableCheckboxGroup.tsx
4772
- import React32, { useCallback as useCallback15 } from "react";
4773
- import { Stack as Stack3 } from "@mui/joy";
4774
- function FilterableCheckboxGroup2(props) {
4775
- const { id, label, options, value, onChange, hidden, placeholder, maxHeight } = props;
4776
- const [internalValue, setInternalValue] = useControlledState(value, [], onChange);
4777
- const handleChange = useCallback15(
4778
- (newValue) => {
4779
- setInternalValue(newValue);
4780
- },
4781
- [setInternalValue]
4782
- );
4783
- if (hidden) {
4784
- return null;
4785
- }
4786
- return /* @__PURE__ */ React32.createElement(Stack3, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React32.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React32.createElement(
4787
- FilterableCheckboxGroup,
4788
- {
4789
- value: internalValue ?? [],
4790
- onChange: handleChange,
4791
- options,
4792
- placeholder,
4793
- maxHeight,
4794
- size: "sm"
4795
- }
4796
- ));
4797
- }
4798
- FilterableCheckboxGroup2.displayName = "FilterableCheckboxGroup";
4799
-
4800
4673
  // src/components/FilterMenu/components/RadioGroup.tsx
4801
- import React33, { useCallback as useCallback16 } from "react";
4674
+ import React32, { useCallback as useCallback15 } from "react";
4802
4675
 
4803
4676
  // src/components/Radio/Radio.tsx
4804
4677
  import { Radio as JoyRadio, RadioGroup as JoyRadioGroup } from "@mui/joy";
@@ -4811,11 +4684,11 @@ var RadioGroup = MotionRadioGroup;
4811
4684
  RadioGroup.displayName = "RadioGroup";
4812
4685
 
4813
4686
  // src/components/FilterMenu/components/RadioGroup.tsx
4814
- import { Stack as Stack4 } from "@mui/joy";
4687
+ import { Stack as Stack3 } from "@mui/joy";
4815
4688
  function RadioGroup2(props) {
4816
4689
  const { id, label, options, value, onChange, hidden } = props;
4817
4690
  const [internalValue, setInternalValue] = useControlledState(value, value ?? "", onChange);
4818
- const handleRadioChange = useCallback16(
4691
+ const handleRadioChange = useCallback15(
4819
4692
  (event) => {
4820
4693
  const newValue = event.target.value;
4821
4694
  const option = options.find((opt) => opt.value.toString() === newValue);
@@ -4827,13 +4700,13 @@ function RadioGroup2(props) {
4827
4700
  if (hidden) {
4828
4701
  return null;
4829
4702
  }
4830
- return /* @__PURE__ */ React33.createElement(Stack4, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React33.createElement(Stack4, { spacing: 1 }, /* @__PURE__ */ React33.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label)), /* @__PURE__ */ React33.createElement(RadioGroup, { name: id, value: internalValue?.toString(), onChange: handleRadioChange }, options.map((option) => /* @__PURE__ */ React33.createElement(Radio, { key: `${id}-${option.value}`, value: option.value.toString(), label: option.label }))));
4703
+ return /* @__PURE__ */ React32.createElement(Stack3, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React32.createElement(Stack3, { spacing: 1 }, /* @__PURE__ */ React32.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label)), /* @__PURE__ */ React32.createElement(RadioGroup, { name: id, value: internalValue?.toString(), onChange: handleRadioChange }, options.map((option) => /* @__PURE__ */ React32.createElement(Radio, { key: `${id}-${option.value}`, value: option.value.toString(), label: option.label }))));
4831
4704
  }
4832
4705
  RadioGroup2.displayName = "RadioGroup";
4833
4706
 
4834
4707
  // src/components/FilterMenu/components/DateRange.tsx
4835
- import React34, { useCallback as useCallback17, useMemo as useMemo13, useState as useState11, useEffect as useEffect9 } from "react";
4836
- import { Stack as Stack5 } from "@mui/joy";
4708
+ import React33, { useCallback as useCallback16, useMemo as useMemo13, useState as useState11, useEffect as useEffect9 } from "react";
4709
+ import { Stack as Stack4 } from "@mui/joy";
4837
4710
  function DateRange(props) {
4838
4711
  const {
4839
4712
  id,
@@ -4845,7 +4718,6 @@ function DateRange(props) {
4845
4718
  maxDate,
4846
4719
  disableFuture,
4847
4720
  disablePast,
4848
- format = "YYYY/MM/DD",
4849
4721
  displayFormat,
4850
4722
  inputReadOnly,
4851
4723
  hideClearButton
@@ -4862,7 +4734,7 @@ function DateRange(props) {
4862
4734
  ],
4863
4735
  []
4864
4736
  );
4865
- const getDateRangeForOption = useCallback17(
4737
+ const getDateRangeForOption = useCallback16(
4866
4738
  (option) => {
4867
4739
  const now = /* @__PURE__ */ new Date();
4868
4740
  const currentYear = now.getFullYear();
@@ -4901,7 +4773,7 @@ function DateRange(props) {
4901
4773
  },
4902
4774
  [internalValue]
4903
4775
  );
4904
- const determineOptionFromValue = useCallback17(
4776
+ const determineOptionFromValue = useCallback16(
4905
4777
  (value2) => {
4906
4778
  if (!value2) {
4907
4779
  return "all-time";
@@ -4927,7 +4799,7 @@ function DateRange(props) {
4927
4799
  const newOption = determineOptionFromValue(internalValue);
4928
4800
  setSelectedOption(newOption);
4929
4801
  }, [internalValue, determineOptionFromValue]);
4930
- const handleOptionChange = useCallback17(
4802
+ const handleOptionChange = useCallback16(
4931
4803
  (event) => {
4932
4804
  const newOption = event.target.value;
4933
4805
  setSelectedOption(newOption);
@@ -4936,25 +4808,28 @@ function DateRange(props) {
4936
4808
  },
4937
4809
  [getDateRangeForOption, setInternalValue]
4938
4810
  );
4939
- const handleCustomDateChange = useCallback17(
4811
+ const handleCustomDateChange = useCallback16(
4940
4812
  (event) => {
4941
4813
  const dateRangeString = event.target.value;
4942
4814
  if (dateRangeString && dateRangeString.includes(" - ")) {
4943
4815
  const [startDate, endDate] = dateRangeString.split(" - ");
4944
4816
  if (startDate && endDate) {
4945
4817
  const newValue = [startDate, endDate];
4946
- setInternalValue(newValue);
4818
+ const hasChanged = !internalValue || internalValue[0] !== startDate || internalValue[1] !== endDate;
4819
+ if (hasChanged) {
4820
+ setInternalValue(newValue);
4821
+ }
4947
4822
  }
4948
4823
  } else if (!dateRangeString) {
4949
4824
  setInternalValue(null);
4950
4825
  }
4951
4826
  },
4952
- [setInternalValue]
4827
+ [setInternalValue, internalValue]
4953
4828
  );
4954
4829
  if (hidden) {
4955
4830
  return null;
4956
4831
  }
4957
- return /* @__PURE__ */ React34.createElement(Stack5, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React34.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React34.createElement(RadioGroup, { name: `${id}-options`, value: selectedOption, onChange: handleOptionChange }, dateRangeOptions.map((option) => /* @__PURE__ */ React34.createElement(Radio, { key: `${id}-${option.value}`, value: option.value, label: option.label }))), selectedOption === "custom" && /* @__PURE__ */ React34.createElement(
4832
+ return /* @__PURE__ */ React33.createElement(Stack4, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React33.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React33.createElement(RadioGroup, { name: `${id}-options`, value: selectedOption, onChange: handleOptionChange }, dateRangeOptions.map((option) => /* @__PURE__ */ React33.createElement(Radio, { key: `${id}-${option.value}`, value: option.value, label: option.label }))), selectedOption === "custom" && /* @__PURE__ */ React33.createElement(
4958
4833
  DateRangePicker,
4959
4834
  {
4960
4835
  value: customDateRangeValue,
@@ -4963,7 +4838,7 @@ function DateRange(props) {
4963
4838
  maxDate,
4964
4839
  disableFuture,
4965
4840
  disablePast,
4966
- format,
4841
+ format: "YYYY-MM-DD",
4967
4842
  displayFormat,
4968
4843
  inputReadOnly,
4969
4844
  hideClearButton
@@ -4973,12 +4848,12 @@ function DateRange(props) {
4973
4848
  DateRange.displayName = "DateRange";
4974
4849
 
4975
4850
  // src/components/FilterMenu/components/CurrencyInput.tsx
4976
- import React35, { useCallback as useCallback18 } from "react";
4977
- import { Stack as Stack6 } from "@mui/joy";
4851
+ import React34, { useCallback as useCallback17 } from "react";
4852
+ import { Stack as Stack5 } from "@mui/joy";
4978
4853
  function CurrencyInput3(props) {
4979
4854
  const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
4980
4855
  const [internalValue, setInternalValue] = useControlledState(value, value, onChange);
4981
- const handleCurrencyChange = useCallback18(
4856
+ const handleCurrencyChange = useCallback17(
4982
4857
  (event) => {
4983
4858
  const newValue = event.target.value;
4984
4859
  setInternalValue(newValue);
@@ -4988,7 +4863,7 @@ function CurrencyInput3(props) {
4988
4863
  if (hidden) {
4989
4864
  return null;
4990
4865
  }
4991
- return /* @__PURE__ */ React35.createElement(Stack6, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React35.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React35.createElement(
4866
+ return /* @__PURE__ */ React34.createElement(Stack5, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React34.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React34.createElement(
4992
4867
  CurrencyInput,
4993
4868
  {
4994
4869
  value: internalValue,
@@ -5004,14 +4879,14 @@ function CurrencyInput3(props) {
5004
4879
  CurrencyInput3.displayName = "CurrencyInput";
5005
4880
 
5006
4881
  // src/components/FilterMenu/components/CurrencyRange.tsx
5007
- import React36, { useCallback as useCallback19 } from "react";
5008
- import { Stack as Stack7 } from "@mui/joy";
4882
+ import React35, { useCallback as useCallback18 } from "react";
4883
+ import { Stack as Stack6 } from "@mui/joy";
5009
4884
  function CurrencyRange(props) {
5010
4885
  const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
5011
4886
  const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
5012
4887
  const minValue = internalValue?.[0];
5013
4888
  const maxValue = internalValue?.[1];
5014
- const handleMinChange = useCallback19(
4889
+ const handleMinChange = useCallback18(
5015
4890
  (event) => {
5016
4891
  const newMinValue = event.target.value;
5017
4892
  const currentMaxValue = maxValue;
@@ -5025,7 +4900,7 @@ function CurrencyRange(props) {
5025
4900
  },
5026
4901
  [maxValue, setInternalValue]
5027
4902
  );
5028
- const handleMaxChange = useCallback19(
4903
+ const handleMaxChange = useCallback18(
5029
4904
  (event) => {
5030
4905
  const newMaxValue = event.target.value;
5031
4906
  const currentMinValue = minValue;
@@ -5042,7 +4917,7 @@ function CurrencyRange(props) {
5042
4917
  if (hidden) {
5043
4918
  return null;
5044
4919
  }
5045
- return /* @__PURE__ */ React36.createElement(Stack7, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React36.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React36.createElement(Stack7, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ React36.createElement(
4920
+ return /* @__PURE__ */ React35.createElement(Stack6, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React35.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React35.createElement(Stack6, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ React35.createElement(
5046
4921
  CurrencyInput,
5047
4922
  {
5048
4923
  label: "Minimum",
@@ -5055,7 +4930,7 @@ function CurrencyRange(props) {
5055
4930
  "aria-labelledby": label ? id : void 0,
5056
4931
  "aria-label": "Minimum amount"
5057
4932
  }
5058
- ), /* @__PURE__ */ React36.createElement(
4933
+ ), /* @__PURE__ */ React35.createElement(
5059
4934
  CurrencyInput,
5060
4935
  {
5061
4936
  label: "Maximum",
@@ -5073,20 +4948,20 @@ function CurrencyRange(props) {
5073
4948
  CurrencyRange.displayName = "CurrencyRange";
5074
4949
 
5075
4950
  // src/components/FilterMenu/components/PercentageInput.tsx
5076
- import React38 from "react";
5077
- import { Stack as Stack8, Typography as Typography2 } from "@mui/joy";
4951
+ import React37 from "react";
4952
+ import { Stack as Stack7, Typography as Typography2 } from "@mui/joy";
5078
4953
 
5079
4954
  // src/components/PercentageInput/PercentageInput.tsx
5080
- import React37, { useCallback as useCallback20, useMemo as useMemo14, useState as useState12 } from "react";
4955
+ import React36, { useCallback as useCallback19, useMemo as useMemo14, useState as useState12 } from "react";
5081
4956
  import { NumericFormat as NumericFormat2 } from "react-number-format";
5082
4957
  import { styled as styled20, useThemeProps as useThemeProps6 } from "@mui/joy";
5083
4958
  var padDecimal = (value, decimalScale) => {
5084
4959
  const [integer, decimal = ""] = `${value}`.split(".");
5085
4960
  return Number(`${integer}${decimal.padEnd(decimalScale, "0")}`);
5086
4961
  };
5087
- var TextMaskAdapter7 = React37.forwardRef(function TextMaskAdapter8(props, ref) {
4962
+ var TextMaskAdapter7 = React36.forwardRef(function TextMaskAdapter8(props, ref) {
5088
4963
  const { onChange, min, max, ...innerProps } = props;
5089
- return /* @__PURE__ */ React37.createElement(
4964
+ return /* @__PURE__ */ React36.createElement(
5090
4965
  NumericFormat2,
5091
4966
  {
5092
4967
  ...innerProps,
@@ -5111,7 +4986,7 @@ var PercentageInputRoot = styled20(Input_default, {
5111
4986
  slot: "Root",
5112
4987
  overridesResolver: (props, styles) => styles.root
5113
4988
  })({});
5114
- var PercentageInput = React37.forwardRef(
4989
+ var PercentageInput = React36.forwardRef(
5115
4990
  function PercentageInput2(inProps, ref) {
5116
4991
  const props = useThemeProps6({ props: inProps, name: "PercentageInput" });
5117
4992
  const {
@@ -5134,7 +5009,7 @@ var PercentageInput = React37.forwardRef(
5134
5009
  const [_value, setValue] = useControlledState(
5135
5010
  props.value,
5136
5011
  props.defaultValue,
5137
- useCallback20((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
5012
+ useCallback19((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
5138
5013
  );
5139
5014
  const [internalError, setInternalError] = useState12(
5140
5015
  max && _value && _value > max || min && _value && _value < min
@@ -5145,7 +5020,7 @@ var PercentageInput = React37.forwardRef(
5145
5020
  }
5146
5021
  return _value;
5147
5022
  }, [_value, useMinorUnit, maxDecimalScale]);
5148
- const handleChange = useCallback20(
5023
+ const handleChange = useCallback19(
5149
5024
  (event) => {
5150
5025
  if (event.target.value === "") {
5151
5026
  setValue(void 0);
@@ -5162,7 +5037,7 @@ var PercentageInput = React37.forwardRef(
5162
5037
  },
5163
5038
  [setValue, useMinorUnit, maxDecimalScale, min, max]
5164
5039
  );
5165
- return /* @__PURE__ */ React37.createElement(
5040
+ return /* @__PURE__ */ React36.createElement(
5166
5041
  PercentageInputRoot,
5167
5042
  {
5168
5043
  ...innerProps,
@@ -5209,7 +5084,7 @@ var PercentageInput3 = ({
5209
5084
  if (hidden) {
5210
5085
  return null;
5211
5086
  }
5212
- return /* @__PURE__ */ React38.createElement(Stack8, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React38.createElement(Typography2, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React38.createElement(
5087
+ return /* @__PURE__ */ React37.createElement(Stack7, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React37.createElement(Typography2, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React37.createElement(
5213
5088
  PercentageInput,
5214
5089
  {
5215
5090
  value: _value,
@@ -5224,8 +5099,8 @@ var PercentageInput3 = ({
5224
5099
  };
5225
5100
 
5226
5101
  // src/components/FilterMenu/components/PercentageRange.tsx
5227
- import React39, { useCallback as useCallback21 } from "react";
5228
- import { Stack as Stack9 } from "@mui/joy";
5102
+ import React38, { useCallback as useCallback20 } from "react";
5103
+ import { Stack as Stack8 } from "@mui/joy";
5229
5104
  function PercentageRange(props) {
5230
5105
  const { id, label, value, onChange, hidden, useMinorUnit, maxDecimalScale, min, max } = props;
5231
5106
  const [internalValue, setInternalValue] = useControlledState(
@@ -5235,7 +5110,7 @@ function PercentageRange(props) {
5235
5110
  );
5236
5111
  const minValue = internalValue?.[0];
5237
5112
  const maxValue = internalValue?.[1];
5238
- const handleMinChange = useCallback21(
5113
+ const handleMinChange = useCallback20(
5239
5114
  (event) => {
5240
5115
  const newMinValue = event.target.value;
5241
5116
  const currentMaxValue = maxValue;
@@ -5247,7 +5122,7 @@ function PercentageRange(props) {
5247
5122
  },
5248
5123
  [maxValue, setInternalValue]
5249
5124
  );
5250
- const handleMaxChange = useCallback21(
5125
+ const handleMaxChange = useCallback20(
5251
5126
  (event) => {
5252
5127
  const newMaxValue = event.target.value;
5253
5128
  const currentMinValue = minValue;
@@ -5262,7 +5137,7 @@ function PercentageRange(props) {
5262
5137
  if (hidden) {
5263
5138
  return null;
5264
5139
  }
5265
- return /* @__PURE__ */ React39.createElement(Stack9, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React39.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React39.createElement(Stack9, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ React39.createElement(
5140
+ return /* @__PURE__ */ React38.createElement(Stack8, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React38.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React38.createElement(Stack8, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ React38.createElement(
5266
5141
  PercentageInput,
5267
5142
  {
5268
5143
  label: "Minimum",
@@ -5276,7 +5151,7 @@ function PercentageRange(props) {
5276
5151
  "aria-label": "Minimum percentage",
5277
5152
  placeholder: "0%"
5278
5153
  }
5279
- ), /* @__PURE__ */ React39.createElement(
5154
+ ), /* @__PURE__ */ React38.createElement(
5280
5155
  PercentageInput,
5281
5156
  {
5282
5157
  label: "Maximum",
@@ -5295,13 +5170,13 @@ function PercentageRange(props) {
5295
5170
  PercentageRange.displayName = "PercentageRange";
5296
5171
 
5297
5172
  // src/components/FilterMenu/components/Autocomplete.tsx
5298
- import React40, { useCallback as useCallback22 } from "react";
5299
- import { Stack as Stack10 } from "@mui/joy";
5173
+ import React39, { useCallback as useCallback21 } from "react";
5174
+ import { Stack as Stack9 } from "@mui/joy";
5300
5175
  function Autocomplete2(props) {
5301
5176
  const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
5302
5177
  const [internalValue, setInternalValue] = useControlledState(value, void 0, onChange);
5303
5178
  const autocompleteValue = typeof internalValue === "string" || typeof internalValue === "number" ? String(internalValue) : void 0;
5304
- const handleChange = useCallback22(
5179
+ const handleChange = useCallback21(
5305
5180
  (event) => {
5306
5181
  const val = event.target.value;
5307
5182
  if (val) {
@@ -5316,7 +5191,7 @@ function Autocomplete2(props) {
5316
5191
  if (hidden) {
5317
5192
  return null;
5318
5193
  }
5319
- return /* @__PURE__ */ React40.createElement(Stack10, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React40.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React40.createElement(
5194
+ return /* @__PURE__ */ React39.createElement(Stack9, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ React39.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ React39.createElement(
5320
5195
  Autocomplete,
5321
5196
  {
5322
5197
  value: autocompleteValue,
@@ -5333,7 +5208,6 @@ Autocomplete2.displayName = "Autocomplete";
5333
5208
  // src/components/FilterMenu/FilterMenu.tsx
5334
5209
  var componentMap = {
5335
5210
  "checkbox-group": CheckboxGroup,
5336
- "filterable-checkbox-group": FilterableCheckboxGroup2,
5337
5211
  "radio-group": RadioGroup2,
5338
5212
  "date-range": DateRange,
5339
5213
  "currency-input": CurrencyInput3,
@@ -5350,7 +5224,7 @@ function FilterMenu(props) {
5350
5224
  void 0
5351
5225
  // onChange는 Apply 버튼에서만 호출
5352
5226
  );
5353
- const handleFilterChange = useCallback23(
5227
+ const handleFilterChange = useCallback22(
5354
5228
  (filterId, value) => {
5355
5229
  setInternalValues((prev) => ({
5356
5230
  ...prev,
@@ -5359,17 +5233,17 @@ function FilterMenu(props) {
5359
5233
  },
5360
5234
  [setInternalValues]
5361
5235
  );
5362
- const handleApply = useCallback23(() => {
5236
+ const handleApply = useCallback22(() => {
5363
5237
  onChange?.(internalValues);
5364
5238
  onClose?.();
5365
5239
  }, [onChange, onClose, internalValues]);
5366
- const handleClear = useCallback23(() => {
5240
+ const handleClear = useCallback22(() => {
5367
5241
  const clearedValues = resetValues || {};
5368
5242
  setInternalValues(clearedValues);
5369
5243
  onChange?.(clearedValues);
5370
5244
  onClose?.();
5371
5245
  }, [resetValues, setInternalValues, onChange, onClose]);
5372
- return /* @__PURE__ */ React41.createElement(
5246
+ return /* @__PURE__ */ React40.createElement(
5373
5247
  ModalDialog,
5374
5248
  {
5375
5249
  sx: {
@@ -5379,9 +5253,9 @@ function FilterMenu(props) {
5379
5253
  top: "initial"
5380
5254
  }
5381
5255
  },
5382
- /* @__PURE__ */ React41.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ React41.createElement(Stack11, { spacing: 6 }, filters?.map((filter) => {
5256
+ /* @__PURE__ */ React40.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ React40.createElement(Stack10, { spacing: 6 }, filters?.map((filter) => {
5383
5257
  const FilterComponent = componentMap[filter.type];
5384
- return FilterComponent ? /* @__PURE__ */ React41.createElement(
5258
+ return FilterComponent ? /* @__PURE__ */ React40.createElement(
5385
5259
  FilterComponent,
5386
5260
  {
5387
5261
  key: filter.id,
@@ -5393,13 +5267,13 @@ function FilterMenu(props) {
5393
5267
  }
5394
5268
  ) : null;
5395
5269
  }))),
5396
- /* @__PURE__ */ React41.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ React41.createElement(Button2, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), useReset && !useClear && /* @__PURE__ */ React41.createElement(Button2, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Reset"), /* @__PURE__ */ React41.createElement(Button2, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5270
+ /* @__PURE__ */ React40.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ React40.createElement(Button2, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), useReset && !useClear && /* @__PURE__ */ React40.createElement(Button2, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Reset"), /* @__PURE__ */ React40.createElement(Button2, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5397
5271
  );
5398
5272
  }
5399
5273
  FilterMenu.displayName = "FilterMenu";
5400
5274
 
5401
5275
  // src/components/Uploader/Uploader.tsx
5402
- import React42, { useCallback as useCallback24, useEffect as useEffect10, useMemo as useMemo15, useRef as useRef9, useState as useState13 } from "react";
5276
+ import React41, { useCallback as useCallback23, useEffect as useEffect10, useMemo as useMemo15, useRef as useRef9, useState as useState13 } from "react";
5403
5277
  import { styled as styled21, Input as Input2 } from "@mui/joy";
5404
5278
  import MuiFileUploadIcon from "@mui/icons-material/CloudUploadRounded";
5405
5279
  import MuiUploadFileIcon from "@mui/icons-material/UploadFileRounded";
@@ -5476,7 +5350,7 @@ var getFileSize = (n) => {
5476
5350
  };
5477
5351
  var Preview = (props) => {
5478
5352
  const { files, uploaded, onDelete } = props;
5479
- return /* @__PURE__ */ React42.createElement(PreviewRoot, { gap: 1 }, [...uploaded, ...files].map((file) => /* @__PURE__ */ React42.createElement(UploadCard, { key: file.name, size: "sm", color: "neutral" }, /* @__PURE__ */ React42.createElement(Stack_default, { direction: "row", alignItems: "center", gap: 2 }, /* @__PURE__ */ React42.createElement(UploadFileIcon, null), /* @__PURE__ */ React42.createElement(Stack_default, { flex: "1", sx: { overflow: "hidden" } }, /* @__PURE__ */ React42.createElement(
5353
+ return /* @__PURE__ */ React41.createElement(PreviewRoot, { gap: 1 }, [...uploaded, ...files].map((file) => /* @__PURE__ */ React41.createElement(UploadCard, { key: file.name, size: "sm", color: "neutral" }, /* @__PURE__ */ React41.createElement(Stack_default, { direction: "row", alignItems: "center", gap: 2 }, /* @__PURE__ */ React41.createElement(UploadFileIcon, null), /* @__PURE__ */ React41.createElement(Stack_default, { flex: "1", sx: { overflow: "hidden" } }, /* @__PURE__ */ React41.createElement(
5480
5354
  Typography_default,
5481
5355
  {
5482
5356
  level: "body-sm",
@@ -5488,7 +5362,7 @@ var Preview = (props) => {
5488
5362
  }
5489
5363
  },
5490
5364
  file.name
5491
- ), !!file.size && /* @__PURE__ */ React42.createElement(Typography_default, { level: "body-xs", fontWeight: "300", lineHeight: "1.33", textColor: "text.tertiary" }, getFileSize(file.size))), /* @__PURE__ */ React42.createElement(IconButton_default, { onClick: () => onDelete?.(file) }, /* @__PURE__ */ React42.createElement(ClearIcon2, null))))));
5365
+ ), !!file.size && /* @__PURE__ */ React41.createElement(Typography_default, { level: "body-xs", fontWeight: "300", lineHeight: "1.33", textColor: "text.tertiary" }, getFileSize(file.size))), /* @__PURE__ */ React41.createElement(IconButton_default, { onClick: () => onDelete?.(file) }, /* @__PURE__ */ React41.createElement(ClearIcon2, null))))));
5492
5366
  };
5493
5367
  var UploaderRoot = styled21(Stack_default, {
5494
5368
  name: "Uploader",
@@ -5531,7 +5405,7 @@ var UploaderIcon = styled21(MuiFileUploadIcon, {
5531
5405
  }
5532
5406
  })
5533
5407
  );
5534
- var Uploader = React42.memo(
5408
+ var Uploader = React41.memo(
5535
5409
  (props) => {
5536
5410
  const {
5537
5411
  accept,
@@ -5599,7 +5473,7 @@ var Uploader = React42.memo(
5599
5473
  () => !maxCount || maxCount && [...uploaded, ...files].length !== maxCount,
5600
5474
  [files, maxCount, uploaded]
5601
5475
  );
5602
- const addFiles = useCallback24(
5476
+ const addFiles = useCallback23(
5603
5477
  (uploads) => {
5604
5478
  try {
5605
5479
  const types = parsedAccepts.map((type) => type.replace(".", "")) || [];
@@ -5691,14 +5565,14 @@ var Uploader = React42.memo(
5691
5565
  }
5692
5566
  }
5693
5567
  }, [inputRef, files, minCount]);
5694
- const handleFileChanged = useCallback24(
5568
+ const handleFileChanged = useCallback23(
5695
5569
  (event) => {
5696
5570
  const files2 = Array.from(event.target.files || []);
5697
5571
  addFiles(files2);
5698
5572
  },
5699
5573
  [addFiles]
5700
5574
  );
5701
- const handleDeleteFile = useCallback24(
5575
+ const handleDeleteFile = useCallback23(
5702
5576
  (deletedFile) => {
5703
5577
  if (deletedFile instanceof File) {
5704
5578
  setFiles((current) => {
@@ -5718,10 +5592,10 @@ var Uploader = React42.memo(
5718
5592
  },
5719
5593
  [name, onChange, onDelete]
5720
5594
  );
5721
- const handleUploaderButtonClick = useCallback24(() => {
5595
+ const handleUploaderButtonClick = useCallback23(() => {
5722
5596
  inputRef.current?.click();
5723
5597
  }, []);
5724
- const uploader = /* @__PURE__ */ React42.createElement(
5598
+ const uploader = /* @__PURE__ */ React41.createElement(
5725
5599
  FileDropZone,
5726
5600
  {
5727
5601
  state: previewState,
@@ -5730,8 +5604,8 @@ var Uploader = React42.memo(
5730
5604
  ref: dropZoneRef,
5731
5605
  onClick: handleUploaderButtonClick
5732
5606
  },
5733
- /* @__PURE__ */ React42.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React42.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
5734
- /* @__PURE__ */ React42.createElement(
5607
+ /* @__PURE__ */ React41.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React41.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
5608
+ /* @__PURE__ */ React41.createElement(
5735
5609
  VisuallyHiddenInput,
5736
5610
  {
5737
5611
  disabled,
@@ -5754,7 +5628,7 @@ var Uploader = React42.memo(
5754
5628
  }
5755
5629
  )
5756
5630
  );
5757
- return /* @__PURE__ */ React42.createElement(UploaderRoot, null, showDropZone && /* @__PURE__ */ React42.createElement(FormControl_default, { size, error: !!(error || errorText), disabled, required: !!minCount }, label && /* @__PURE__ */ React42.createElement(FormLabel_default, null, label), uploader, /* @__PURE__ */ React42.createElement(FormHelperText_default, null, /* @__PURE__ */ React42.createElement(Stack_default, null, errorText && /* @__PURE__ */ React42.createElement("div", null, errorText), /* @__PURE__ */ React42.createElement("div", null, helperText)))), [...uploaded, ...files].length > 0 && /* @__PURE__ */ React42.createElement(Preview, { files, uploaded, onDelete: handleDeleteFile }));
5631
+ return /* @__PURE__ */ React41.createElement(UploaderRoot, null, showDropZone && /* @__PURE__ */ React41.createElement(FormControl_default, { size, error: !!(error || errorText), disabled, required: !!minCount }, label && /* @__PURE__ */ React41.createElement(FormLabel_default, null, label), uploader, /* @__PURE__ */ React41.createElement(FormHelperText_default, null, /* @__PURE__ */ React41.createElement(Stack_default, null, errorText && /* @__PURE__ */ React41.createElement("div", null, errorText), /* @__PURE__ */ React41.createElement("div", null, helperText)))), [...uploaded, ...files].length > 0 && /* @__PURE__ */ React41.createElement(Preview, { files, uploaded, onDelete: handleDeleteFile }));
5758
5632
  }
5759
5633
  );
5760
5634
  Uploader.displayName = "Uploader";
@@ -5763,7 +5637,7 @@ Uploader.displayName = "Uploader";
5763
5637
  import { Grid } from "@mui/joy";
5764
5638
 
5765
5639
  // src/components/IconMenuButton/IconMenuButton.tsx
5766
- import React43 from "react";
5640
+ import React42 from "react";
5767
5641
  import { MenuButton as JoyMenuButton2, IconButton as JoyIconButton2 } from "@mui/joy";
5768
5642
  function IconMenuButton(props) {
5769
5643
  const {
@@ -5777,7 +5651,7 @@ function IconMenuButton(props) {
5777
5651
  placement = "bottom"
5778
5652
  } = props;
5779
5653
  if (!items.length) {
5780
- return /* @__PURE__ */ React43.createElement(
5654
+ return /* @__PURE__ */ React42.createElement(
5781
5655
  JoyIconButton2,
5782
5656
  {
5783
5657
  component: props.buttonComponent ?? "button",
@@ -5791,7 +5665,7 @@ function IconMenuButton(props) {
5791
5665
  icon
5792
5666
  );
5793
5667
  }
5794
- return /* @__PURE__ */ React43.createElement(Dropdown_default, null, /* @__PURE__ */ React43.createElement(
5668
+ return /* @__PURE__ */ React42.createElement(Dropdown_default, null, /* @__PURE__ */ React42.createElement(
5795
5669
  JoyMenuButton2,
5796
5670
  {
5797
5671
  slots: { root: JoyIconButton2 },
@@ -5808,12 +5682,12 @@ function IconMenuButton(props) {
5808
5682
  }
5809
5683
  },
5810
5684
  icon
5811
- ), /* @__PURE__ */ React43.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React43.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5685
+ ), /* @__PURE__ */ React42.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React42.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5812
5686
  }
5813
5687
  IconMenuButton.displayName = "IconMenuButton";
5814
5688
 
5815
5689
  // src/components/Markdown/Markdown.tsx
5816
- import React44, { lazy, Suspense, useEffect as useEffect11, useState as useState14 } from "react";
5690
+ import React43, { lazy, Suspense, useEffect as useEffect11, useState as useState14 } from "react";
5817
5691
  import { Skeleton } from "@mui/joy";
5818
5692
  import { Link as Link2 } from "@mui/joy";
5819
5693
  import remarkGfm from "remark-gfm";
@@ -5842,12 +5716,12 @@ var Markdown = (props) => {
5842
5716
  if (!rehypeAccent2) {
5843
5717
  return null;
5844
5718
  }
5845
- return /* @__PURE__ */ React44.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ React44.createElement(
5719
+ return /* @__PURE__ */ React43.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ React43.createElement(
5846
5720
  Suspense,
5847
5721
  {
5848
- fallback: fallback || /* @__PURE__ */ React44.createElement(Typography, null, /* @__PURE__ */ React44.createElement(Skeleton, null, content || ""))
5722
+ fallback: fallback || /* @__PURE__ */ React43.createElement(Typography, null, /* @__PURE__ */ React43.createElement(Skeleton, null, content || ""))
5849
5723
  },
5850
- /* @__PURE__ */ React44.createElement(
5724
+ /* @__PURE__ */ React43.createElement(
5851
5725
  LazyReactMarkdown,
5852
5726
  {
5853
5727
  ...markdownOptions,
@@ -5855,15 +5729,15 @@ var Markdown = (props) => {
5855
5729
  rehypePlugins: [[rehypeAccent2, { accentColor }]],
5856
5730
  remarkPlugins: [remarkGfm],
5857
5731
  components: {
5858
- h1: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { color, textColor, level: "h1" }, children),
5859
- h2: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { color, textColor, level: "h2" }, children),
5860
- h3: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { color, textColor, level: "h3" }, children),
5861
- h4: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { color, textColor, level: "h4" }, children),
5862
- p: ({ children, node }) => /* @__PURE__ */ React44.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
5863
- a: ({ children, href }) => /* @__PURE__ */ React44.createElement(Link2, { href, target: defaultLinkAction }, children),
5864
- hr: () => /* @__PURE__ */ React44.createElement(Divider, null),
5865
- b: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { fontWeight: boldFontWeight }, children),
5866
- strong: ({ children }) => /* @__PURE__ */ React44.createElement(Typography, { fontWeight: boldFontWeight }, children),
5732
+ h1: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h1" }, children),
5733
+ h2: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h2" }, children),
5734
+ h3: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h3" }, children),
5735
+ h4: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h4" }, children),
5736
+ p: ({ children, node }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
5737
+ a: ({ children, href }) => /* @__PURE__ */ React43.createElement(Link2, { href, target: defaultLinkAction }, children),
5738
+ hr: () => /* @__PURE__ */ React43.createElement(Divider, null),
5739
+ b: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { fontWeight: boldFontWeight }, children),
5740
+ strong: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { fontWeight: boldFontWeight }, children),
5867
5741
  ...markdownOptions?.components
5868
5742
  }
5869
5743
  }
@@ -5873,7 +5747,7 @@ var Markdown = (props) => {
5873
5747
  Markdown.displayName = "Markdown";
5874
5748
 
5875
5749
  // src/components/MenuButton/MenuButton.tsx
5876
- import React45 from "react";
5750
+ import React44 from "react";
5877
5751
  import { MenuButton as JoyMenuButton3, Button as JoyButton2 } from "@mui/joy";
5878
5752
  import ExpandMoreIcon from "@mui/icons-material/ExpandMore";
5879
5753
  function MenuButton(props) {
@@ -5891,7 +5765,7 @@ function MenuButton(props) {
5891
5765
  placement = "bottom"
5892
5766
  } = props;
5893
5767
  if (!items.length) {
5894
- return /* @__PURE__ */ React45.createElement(
5768
+ return /* @__PURE__ */ React44.createElement(
5895
5769
  JoyButton2,
5896
5770
  {
5897
5771
  component: props.buttonComponent ?? "button",
@@ -5902,12 +5776,12 @@ function MenuButton(props) {
5902
5776
  loading,
5903
5777
  startDecorator,
5904
5778
  ...props.buttonComponentProps ?? {},
5905
- endDecorator: showIcon ? /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator, /* @__PURE__ */ React45.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator)
5779
+ endDecorator: showIcon ? /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator, /* @__PURE__ */ React44.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator)
5906
5780
  },
5907
5781
  buttonText
5908
5782
  );
5909
5783
  }
5910
- return /* @__PURE__ */ React45.createElement(Dropdown_default, null, /* @__PURE__ */ React45.createElement(
5784
+ return /* @__PURE__ */ React44.createElement(Dropdown_default, null, /* @__PURE__ */ React44.createElement(
5911
5785
  JoyMenuButton3,
5912
5786
  {
5913
5787
  component: props.buttonComponent ?? "button",
@@ -5918,15 +5792,15 @@ function MenuButton(props) {
5918
5792
  loading,
5919
5793
  startDecorator,
5920
5794
  ...props.buttonComponentProps ?? {},
5921
- endDecorator: showIcon ? /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator, /* @__PURE__ */ React45.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator)
5795
+ endDecorator: showIcon ? /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator, /* @__PURE__ */ React44.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator)
5922
5796
  },
5923
5797
  buttonText
5924
- ), /* @__PURE__ */ React45.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React45.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5798
+ ), /* @__PURE__ */ React44.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React44.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5925
5799
  }
5926
5800
  MenuButton.displayName = "MenuButton";
5927
5801
 
5928
5802
  // src/components/MonthPicker/MonthPicker.tsx
5929
- import React46, { forwardRef as forwardRef9, useCallback as useCallback25, useEffect as useEffect12, useImperativeHandle as useImperativeHandle4, useRef as useRef10, useState as useState15 } from "react";
5803
+ import React45, { forwardRef as forwardRef9, useCallback as useCallback24, useEffect as useEffect12, useImperativeHandle as useImperativeHandle4, useRef as useRef10, useState as useState15 } from "react";
5930
5804
  import CalendarTodayIcon3 from "@mui/icons-material/CalendarToday";
5931
5805
  import { styled as styled22, useThemeProps as useThemeProps7 } from "@mui/joy";
5932
5806
  import { FocusTrap as FocusTrap3, ClickAwayListener as ClickAwayListener3, Popper as Popper4 } from "@mui/base";
@@ -6013,9 +5887,9 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6013
5887
  const [value, setValue, isControlled] = useControlledState(
6014
5888
  props.value,
6015
5889
  props.defaultValue || "",
6016
- useCallback25((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
5890
+ useCallback24((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6017
5891
  );
6018
- const getFormattedDisplayValue = useCallback25(
5892
+ const getFormattedDisplayValue = useCallback24(
6019
5893
  (inputValue) => {
6020
5894
  if (!inputValue) return "";
6021
5895
  try {
@@ -6038,7 +5912,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6038
5912
  useEffect12(() => {
6039
5913
  setDisplayValue(getFormattedDisplayValue(value));
6040
5914
  }, [value, getFormattedDisplayValue]);
6041
- const handleChange = useCallback25(
5915
+ const handleChange = useCallback24(
6042
5916
  (event) => {
6043
5917
  const newValue = event.target.value;
6044
5918
  setValue(newValue);
@@ -6048,21 +5922,21 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6048
5922
  },
6049
5923
  [setValue, getFormattedDisplayValue, isControlled]
6050
5924
  );
6051
- const handleCalendarToggle = useCallback25(
5925
+ const handleCalendarToggle = useCallback24(
6052
5926
  (event) => {
6053
5927
  setAnchorEl(anchorEl ? null : event.currentTarget);
6054
5928
  innerRef.current?.focus();
6055
5929
  },
6056
5930
  [anchorEl, setAnchorEl, innerRef]
6057
5931
  );
6058
- const handleInputMouseDown = useCallback25(
5932
+ const handleInputMouseDown = useCallback24(
6059
5933
  (event) => {
6060
5934
  event.preventDefault();
6061
5935
  buttonRef.current?.focus();
6062
5936
  },
6063
5937
  [buttonRef]
6064
5938
  );
6065
- return /* @__PURE__ */ React46.createElement(MonthPickerRoot, null, /* @__PURE__ */ React46.createElement(FocusTrap3, { open: true }, /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(
5939
+ return /* @__PURE__ */ React45.createElement(MonthPickerRoot, null, /* @__PURE__ */ React45.createElement(FocusTrap3, { open: true }, /* @__PURE__ */ React45.createElement(React45.Fragment, null, /* @__PURE__ */ React45.createElement(
6066
5940
  Input_default,
6067
5941
  {
6068
5942
  ...innerProps,
@@ -6092,7 +5966,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6092
5966
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
6093
5967
  fontFamily: "monospace"
6094
5968
  },
6095
- endDecorator: /* @__PURE__ */ React46.createElement(
5969
+ endDecorator: /* @__PURE__ */ React45.createElement(
6096
5970
  IconButton_default,
6097
5971
  {
6098
5972
  ref: buttonRef,
@@ -6104,12 +5978,12 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6104
5978
  "aria-expanded": open,
6105
5979
  disabled
6106
5980
  },
6107
- /* @__PURE__ */ React46.createElement(CalendarTodayIcon3, null)
5981
+ /* @__PURE__ */ React45.createElement(CalendarTodayIcon3, null)
6108
5982
  ),
6109
5983
  label,
6110
5984
  helperText
6111
5985
  }
6112
- ), open && /* @__PURE__ */ React46.createElement(ClickAwayListener3, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React46.createElement(
5986
+ ), open && /* @__PURE__ */ React45.createElement(ClickAwayListener3, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React45.createElement(
6113
5987
  StyledPopper3,
6114
5988
  {
6115
5989
  id: "month-picker-popper",
@@ -6128,7 +6002,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6128
6002
  "aria-label": "Calendar Tooltip",
6129
6003
  "aria-expanded": open
6130
6004
  },
6131
- /* @__PURE__ */ React46.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React46.createElement(
6005
+ /* @__PURE__ */ React45.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React45.createElement(
6132
6006
  Calendar_default,
6133
6007
  {
6134
6008
  view: "month",
@@ -6149,14 +6023,14 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6149
6023
  disablePast,
6150
6024
  locale
6151
6025
  }
6152
- ), /* @__PURE__ */ React46.createElement(
6026
+ ), /* @__PURE__ */ React45.createElement(
6153
6027
  DialogActions_default,
6154
6028
  {
6155
6029
  sx: {
6156
6030
  p: 1
6157
6031
  }
6158
6032
  },
6159
- /* @__PURE__ */ React46.createElement(
6033
+ /* @__PURE__ */ React45.createElement(
6160
6034
  Button_default,
6161
6035
  {
6162
6036
  size,
@@ -6179,7 +6053,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6179
6053
  });
6180
6054
 
6181
6055
  // src/components/MonthRangePicker/MonthRangePicker.tsx
6182
- import React47, { forwardRef as forwardRef10, useCallback as useCallback26, useEffect as useEffect13, useImperativeHandle as useImperativeHandle5, useMemo as useMemo16, useRef as useRef11, useState as useState16 } from "react";
6056
+ import React46, { forwardRef as forwardRef10, useCallback as useCallback25, useEffect as useEffect13, useImperativeHandle as useImperativeHandle5, useMemo as useMemo16, useRef as useRef11, useState as useState16 } from "react";
6183
6057
  import { IMaskInput as IMaskInput3, IMask as IMask3 } from "react-imask";
6184
6058
  import CalendarTodayIcon4 from "@mui/icons-material/CalendarToday";
6185
6059
  import { styled as styled23, useThemeProps as useThemeProps8 } from "@mui/joy";
@@ -6237,9 +6111,9 @@ var parseDates2 = (str) => {
6237
6111
  var formatToPattern3 = (format) => {
6238
6112
  return `${format} - ${format}`.replace(/YYYY/g, "Y").replace(/MM/g, "m").replace(/[^YMm\s]/g, (match) => `${match}\``);
6239
6113
  };
6240
- var TextMaskAdapter9 = React47.forwardRef(function TextMaskAdapter10(props, ref) {
6114
+ var TextMaskAdapter9 = React46.forwardRef(function TextMaskAdapter10(props, ref) {
6241
6115
  const { onChange, format, ...other } = props;
6242
- return /* @__PURE__ */ React47.createElement(
6116
+ return /* @__PURE__ */ React46.createElement(
6243
6117
  IMaskInput3,
6244
6118
  {
6245
6119
  ...other,
@@ -6291,7 +6165,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6291
6165
  const [value, setValue] = useControlledState(
6292
6166
  props.value,
6293
6167
  props.defaultValue || "",
6294
- useCallback26((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6168
+ useCallback25((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6295
6169
  );
6296
6170
  const [anchorEl, setAnchorEl] = useState16(null);
6297
6171
  const open = Boolean(anchorEl);
@@ -6302,20 +6176,20 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6302
6176
  }
6303
6177
  }, [anchorEl, innerRef]);
6304
6178
  useImperativeHandle5(ref, () => innerRef.current, [innerRef]);
6305
- const handleChange = useCallback26(
6179
+ const handleChange = useCallback25(
6306
6180
  (event) => {
6307
6181
  setValue(event.target.value);
6308
6182
  },
6309
6183
  [setValue]
6310
6184
  );
6311
- const handleCalendarToggle = useCallback26(
6185
+ const handleCalendarToggle = useCallback25(
6312
6186
  (event) => {
6313
6187
  setAnchorEl(anchorEl ? null : event.currentTarget);
6314
6188
  innerRef.current?.focus();
6315
6189
  },
6316
6190
  [anchorEl, setAnchorEl, innerRef]
6317
6191
  );
6318
- const handleCalendarChange = useCallback26(
6192
+ const handleCalendarChange = useCallback25(
6319
6193
  ([date1, date2]) => {
6320
6194
  if (!date1 || !date2) return;
6321
6195
  setValue(formatValueString4([date1, date2], format));
@@ -6323,7 +6197,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6323
6197
  },
6324
6198
  [setValue, setAnchorEl, format]
6325
6199
  );
6326
- return /* @__PURE__ */ React47.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ React47.createElement(FocusTrap4, { open: true }, /* @__PURE__ */ React47.createElement(React47.Fragment, null, /* @__PURE__ */ React47.createElement(
6200
+ return /* @__PURE__ */ React46.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ React46.createElement(FocusTrap4, { open: true }, /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(
6327
6201
  Input_default,
6328
6202
  {
6329
6203
  ...innerProps,
@@ -6345,7 +6219,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6345
6219
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
6346
6220
  fontFamily: "monospace"
6347
6221
  },
6348
- endDecorator: /* @__PURE__ */ React47.createElement(
6222
+ endDecorator: /* @__PURE__ */ React46.createElement(
6349
6223
  IconButton_default,
6350
6224
  {
6351
6225
  variant: "plain",
@@ -6355,12 +6229,12 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6355
6229
  "aria-haspopup": "dialog",
6356
6230
  "aria-expanded": open
6357
6231
  },
6358
- /* @__PURE__ */ React47.createElement(CalendarTodayIcon4, null)
6232
+ /* @__PURE__ */ React46.createElement(CalendarTodayIcon4, null)
6359
6233
  ),
6360
6234
  label,
6361
6235
  helperText
6362
6236
  }
6363
- ), open && /* @__PURE__ */ React47.createElement(ClickAwayListener4, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React47.createElement(
6237
+ ), open && /* @__PURE__ */ React46.createElement(ClickAwayListener4, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React46.createElement(
6364
6238
  StyledPopper4,
6365
6239
  {
6366
6240
  id: "month-range-picker-popper",
@@ -6379,7 +6253,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6379
6253
  "aria-label": "Calendar Tooltip",
6380
6254
  "aria-expanded": open
6381
6255
  },
6382
- /* @__PURE__ */ React47.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React47.createElement(
6256
+ /* @__PURE__ */ React46.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React46.createElement(
6383
6257
  Calendar_default,
6384
6258
  {
6385
6259
  view: "month",
@@ -6392,14 +6266,14 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6392
6266
  disableFuture,
6393
6267
  disablePast
6394
6268
  }
6395
- ), /* @__PURE__ */ React47.createElement(
6269
+ ), /* @__PURE__ */ React46.createElement(
6396
6270
  DialogActions_default,
6397
6271
  {
6398
6272
  sx: {
6399
6273
  p: 1
6400
6274
  }
6401
6275
  },
6402
- /* @__PURE__ */ React47.createElement(
6276
+ /* @__PURE__ */ React46.createElement(
6403
6277
  Button_default,
6404
6278
  {
6405
6279
  size,
@@ -6418,14 +6292,14 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6418
6292
  MonthRangePicker.displayName = "MonthRangePicker";
6419
6293
 
6420
6294
  // src/components/NavigationGroup/NavigationGroup.tsx
6421
- import React48 from "react";
6295
+ import React47 from "react";
6422
6296
  import {
6423
6297
  Accordion as JoyAccordion2,
6424
6298
  AccordionSummary as JoyAccordionSummary2,
6425
6299
  AccordionDetails as JoyAccordionDetails2,
6426
6300
  styled as styled24,
6427
6301
  accordionSummaryClasses,
6428
- Stack as Stack12
6302
+ Stack as Stack11
6429
6303
  } from "@mui/joy";
6430
6304
  var AccordionSummary2 = styled24(JoyAccordionSummary2, {
6431
6305
  name: "NavigationGroup",
@@ -6449,11 +6323,11 @@ var AccordionDetails2 = styled24(JoyAccordionDetails2, {
6449
6323
  }));
6450
6324
  function NavigationGroup(props) {
6451
6325
  const { title, children, startDecorator, level, ...rest } = props;
6452
- return /* @__PURE__ */ React48.createElement(JoyAccordion2, { ...rest }, /* @__PURE__ */ React48.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ React48.createElement(Stack12, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ React48.createElement(AccordionDetails2, null, children));
6326
+ return /* @__PURE__ */ React47.createElement(JoyAccordion2, { ...rest }, /* @__PURE__ */ React47.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ React47.createElement(Stack11, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ React47.createElement(AccordionDetails2, null, children));
6453
6327
  }
6454
6328
 
6455
6329
  // src/components/NavigationItem/NavigationItem.tsx
6456
- import React49 from "react";
6330
+ import React48 from "react";
6457
6331
  import {
6458
6332
  ListItem as JoyListItem,
6459
6333
  ListItemButton as JoyListItemButton,
@@ -6488,7 +6362,7 @@ function NavigationItem(props) {
6488
6362
  const handleClick = () => {
6489
6363
  onClick?.(id);
6490
6364
  };
6491
- return /* @__PURE__ */ React49.createElement(JoyListItem, { ...rest }, /* @__PURE__ */ React49.createElement(
6365
+ return /* @__PURE__ */ React48.createElement(JoyListItem, { ...rest }, /* @__PURE__ */ React48.createElement(
6492
6366
  ListItemButton,
6493
6367
  {
6494
6368
  level,
@@ -6497,21 +6371,21 @@ function NavigationItem(props) {
6497
6371
  "aria-current": selected,
6498
6372
  onClick: handleClick
6499
6373
  },
6500
- startDecorator && /* @__PURE__ */ React49.createElement(JoyListItemDecorator, null, startDecorator),
6374
+ startDecorator && /* @__PURE__ */ React48.createElement(JoyListItemDecorator, null, startDecorator),
6501
6375
  children
6502
6376
  ));
6503
6377
  }
6504
6378
 
6505
6379
  // src/components/Navigator/Navigator.tsx
6506
- import React50 from "react";
6380
+ import React49 from "react";
6507
6381
  function Navigator(props) {
6508
6382
  const { items, level = 0, onSelect } = props;
6509
6383
  const handleItemClick = (id) => {
6510
6384
  onSelect?.(id);
6511
6385
  };
6512
- return /* @__PURE__ */ React50.createElement("div", null, items.map((item, index) => {
6386
+ return /* @__PURE__ */ React49.createElement("div", null, items.map((item, index) => {
6513
6387
  if (item.type === "item") {
6514
- return /* @__PURE__ */ React50.createElement(
6388
+ return /* @__PURE__ */ React49.createElement(
6515
6389
  NavigationItem,
6516
6390
  {
6517
6391
  key: item.id,
@@ -6524,7 +6398,7 @@ function Navigator(props) {
6524
6398
  item.title
6525
6399
  );
6526
6400
  } else if (item.type === "group") {
6527
- return /* @__PURE__ */ React50.createElement(
6401
+ return /* @__PURE__ */ React49.createElement(
6528
6402
  NavigationGroup,
6529
6403
  {
6530
6404
  key: `${item.title}-${index}`,
@@ -6542,7 +6416,7 @@ function Navigator(props) {
6542
6416
  Navigator.displayName = "Navigator";
6543
6417
 
6544
6418
  // src/components/ProfileMenu/ProfileMenu.tsx
6545
- import React51, { useCallback as useCallback27, useMemo as useMemo17 } from "react";
6419
+ import React50, { useCallback as useCallback26, useMemo as useMemo17 } from "react";
6546
6420
  import { Dropdown as Dropdown2, ListDivider, menuItemClasses, styled as styled26, MenuButton as MenuButton2 } from "@mui/joy";
6547
6421
  import { ClickAwayListener as ClickAwayListener5 } from "@mui/base";
6548
6422
  import DropdownIcon from "@mui/icons-material/ArrowDropDown";
@@ -6554,7 +6428,7 @@ function ProfileCard(props) {
6554
6428
  const { children, chip, caption, size } = props;
6555
6429
  const captionLevel = useMemo17(() => size === "sm" ? "body-xs" : "body-sm", [size]);
6556
6430
  const nameLevel = useMemo17(() => size === "sm" ? "body-sm" : "body-md", [size]);
6557
- return /* @__PURE__ */ React51.createElement(StyledProfileCard, { px: 4, py: 2 }, /* @__PURE__ */ React51.createElement(Stack, { direction: "row", gap: 2 }, /* @__PURE__ */ React51.createElement(Typography, { level: nameLevel, fontWeight: "bold", textColor: "text.primary" }, children), chip && /* @__PURE__ */ React51.createElement(Chip, { size, color: "neutral", variant: "outlined" }, chip)), caption && /* @__PURE__ */ React51.createElement(Typography, { level: captionLevel, textColor: "text.tertiary" }, caption));
6431
+ return /* @__PURE__ */ React50.createElement(StyledProfileCard, { px: 4, py: 2 }, /* @__PURE__ */ React50.createElement(Stack, { direction: "row", gap: 2 }, /* @__PURE__ */ React50.createElement(Typography, { level: nameLevel, fontWeight: "bold", textColor: "text.primary" }, children), chip && /* @__PURE__ */ React50.createElement(Chip, { size, color: "neutral", variant: "outlined" }, chip)), caption && /* @__PURE__ */ React50.createElement(Typography, { level: captionLevel, textColor: "text.tertiary" }, caption));
6558
6432
  }
6559
6433
  ProfileCard.displayName = "ProfileCard";
6560
6434
  var StyledProfileMenuButton = styled26(MenuButton2, {
@@ -6566,16 +6440,16 @@ var StyledProfileMenuButton = styled26(MenuButton2, {
6566
6440
  }));
6567
6441
  function ProfileMenuButton(props) {
6568
6442
  const { size = "md", src, alt, children, getInitial, ...innerProps } = props;
6569
- return /* @__PURE__ */ React51.createElement(
6443
+ return /* @__PURE__ */ React50.createElement(
6570
6444
  StyledProfileMenuButton,
6571
6445
  {
6572
6446
  variant: "plain",
6573
6447
  color: "neutral",
6574
6448
  size,
6575
- endDecorator: /* @__PURE__ */ React51.createElement(DropdownIcon, null),
6449
+ endDecorator: /* @__PURE__ */ React50.createElement(DropdownIcon, null),
6576
6450
  ...innerProps
6577
6451
  },
6578
- /* @__PURE__ */ React51.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
6452
+ /* @__PURE__ */ React50.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
6579
6453
  );
6580
6454
  }
6581
6455
  ProfileMenuButton.displayName = "ProfileMenuButton";
@@ -6594,9 +6468,9 @@ function ProfileMenu(props) {
6594
6468
  const [open, setOpen] = useControlledState(
6595
6469
  _open,
6596
6470
  defaultOpen ?? false,
6597
- useCallback27((value) => onOpenChange?.(value), [onOpenChange])
6471
+ useCallback26((value) => onOpenChange?.(value), [onOpenChange])
6598
6472
  );
6599
- return /* @__PURE__ */ React51.createElement(ClickAwayListener5, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ React51.createElement("div", null, /* @__PURE__ */ React51.createElement(Dropdown2, { open }, /* @__PURE__ */ React51.createElement(
6473
+ return /* @__PURE__ */ React50.createElement(ClickAwayListener5, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ React50.createElement("div", null, /* @__PURE__ */ React50.createElement(Dropdown2, { open }, /* @__PURE__ */ React50.createElement(
6600
6474
  ProfileMenuButton,
6601
6475
  {
6602
6476
  size,
@@ -6606,7 +6480,7 @@ function ProfileMenu(props) {
6606
6480
  getInitial
6607
6481
  },
6608
6482
  profile.name
6609
- ), /* @__PURE__ */ React51.createElement(ProfileMenuRoot, { size, placement: "bottom-end", ...innerProps, onClose: () => setOpen(false) }, /* @__PURE__ */ React51.createElement(ProfileCard, { size, caption: profile.caption, chip: profile.chip }, profile.name), !!menuItems.length && /* @__PURE__ */ React51.createElement(ListDivider, null), menuItems.map(({ label, ...menuProps }) => /* @__PURE__ */ React51.createElement(
6483
+ ), /* @__PURE__ */ React50.createElement(ProfileMenuRoot, { size, placement: "bottom-end", ...innerProps, onClose: () => setOpen(false) }, /* @__PURE__ */ React50.createElement(ProfileCard, { size, caption: profile.caption, chip: profile.chip }, profile.name), !!menuItems.length && /* @__PURE__ */ React50.createElement(ListDivider, null), menuItems.map(({ label, ...menuProps }) => /* @__PURE__ */ React50.createElement(
6610
6484
  MenuItem,
6611
6485
  {
6612
6486
  key: label,
@@ -6622,7 +6496,7 @@ function ProfileMenu(props) {
6622
6496
  ProfileMenu.displayName = "ProfileMenu";
6623
6497
 
6624
6498
  // src/components/RadioTileGroup/RadioTileGroup.tsx
6625
- import React52 from "react";
6499
+ import React51 from "react";
6626
6500
  import { styled as styled27, radioClasses, sheetClasses } from "@mui/joy";
6627
6501
  var RadioTileGroupRoot = styled27(RadioGroup, {
6628
6502
  name: "RadioTileGroup",
@@ -6710,7 +6584,7 @@ function RadioTileGroup(props) {
6710
6584
  error,
6711
6585
  required
6712
6586
  } = props;
6713
- const radioGroup = /* @__PURE__ */ React52.createElement(
6587
+ const radioGroup = /* @__PURE__ */ React51.createElement(
6714
6588
  RadioTileGroupRoot,
6715
6589
  {
6716
6590
  overlay: true,
@@ -6721,7 +6595,7 @@ function RadioTileGroup(props) {
6721
6595
  flex,
6722
6596
  columns
6723
6597
  },
6724
- options.map((option) => /* @__PURE__ */ React52.createElement(
6598
+ options.map((option) => /* @__PURE__ */ React51.createElement(
6725
6599
  RadioTileSheet,
6726
6600
  {
6727
6601
  key: option.value,
@@ -6731,7 +6605,7 @@ function RadioTileGroup(props) {
6731
6605
  flex,
6732
6606
  textAlign
6733
6607
  },
6734
- /* @__PURE__ */ React52.createElement(
6608
+ /* @__PURE__ */ React51.createElement(
6735
6609
  Radio,
6736
6610
  {
6737
6611
  id: `${option.value}`,
@@ -6759,7 +6633,7 @@ function RadioTileGroup(props) {
6759
6633
  }
6760
6634
  }
6761
6635
  ),
6762
- option.startDecorator && /* @__PURE__ */ React52.createElement(
6636
+ option.startDecorator && /* @__PURE__ */ React51.createElement(
6763
6637
  Box_default,
6764
6638
  {
6765
6639
  sx: {
@@ -6780,20 +6654,20 @@ function RadioTileGroup(props) {
6780
6654
  )
6781
6655
  ))
6782
6656
  );
6783
- return /* @__PURE__ */ React52.createElement(FormControl_default, { required, disabled: allDisabled, error, size, sx, className }, label && /* @__PURE__ */ React52.createElement(FormLabel_default, null, label), radioGroup, helperText && /* @__PURE__ */ React52.createElement(FormHelperText_default, null, helperText));
6657
+ return /* @__PURE__ */ React51.createElement(FormControl_default, { required, disabled: allDisabled, error, size, sx, className }, label && /* @__PURE__ */ React51.createElement(FormLabel_default, null, label), radioGroup, helperText && /* @__PURE__ */ React51.createElement(FormHelperText_default, null, helperText));
6784
6658
  }
6785
6659
  RadioTileGroup.displayName = "RadioTileGroup";
6786
6660
 
6787
6661
  // src/components/RadioList/RadioList.tsx
6788
- import React53 from "react";
6662
+ import React52 from "react";
6789
6663
  function RadioList(props) {
6790
6664
  const { items, ...innerProps } = props;
6791
- return /* @__PURE__ */ React53.createElement(RadioGroup, { ...innerProps }, items.map((item) => /* @__PURE__ */ React53.createElement(Radio, { key: `${item.value}`, value: item.value, label: item.label })));
6665
+ return /* @__PURE__ */ React52.createElement(RadioGroup, { ...innerProps }, items.map((item) => /* @__PURE__ */ React52.createElement(Radio, { key: `${item.value}`, value: item.value, label: item.label })));
6792
6666
  }
6793
6667
  RadioList.displayName = "RadioList";
6794
6668
 
6795
6669
  // src/components/Stepper/Stepper.tsx
6796
- import React54 from "react";
6670
+ import React53 from "react";
6797
6671
  import {
6798
6672
  Stepper as JoyStepper,
6799
6673
  Step as JoyStep,
@@ -6829,7 +6703,7 @@ function Stepper(props) {
6829
6703
  stepOrientation = "horizontal"
6830
6704
  } = props;
6831
6705
  const effectiveStepOrientation = orientation === "vertical" ? "horizontal" : stepOrientation;
6832
- return /* @__PURE__ */ React54.createElement(
6706
+ return /* @__PURE__ */ React53.createElement(
6833
6707
  MotionStepper,
6834
6708
  {
6835
6709
  orientation,
@@ -6868,23 +6742,23 @@ function Stepper(props) {
6868
6742
  const completed = activeStep > i + 1;
6869
6743
  const disabled = activeStep < i + 1;
6870
6744
  const hasContent = step.label || step.extraContent;
6871
- return /* @__PURE__ */ React54.createElement(
6745
+ return /* @__PURE__ */ React53.createElement(
6872
6746
  Step,
6873
6747
  {
6874
6748
  key: `step-${i}`,
6875
- indicator: /* @__PURE__ */ React54.createElement(StepIndicator, { variant: disabled ? "outlined" : "solid", color: disabled ? "neutral" : "primary" }, completed ? /* @__PURE__ */ React54.createElement(CheckIcon, null) : step.indicatorContent),
6749
+ indicator: /* @__PURE__ */ React53.createElement(StepIndicator, { variant: disabled ? "outlined" : "solid", color: disabled ? "neutral" : "primary" }, completed ? /* @__PURE__ */ React53.createElement(CheckIcon, null) : step.indicatorContent),
6876
6750
  active,
6877
6751
  completed,
6878
6752
  disabled,
6879
6753
  orientation: effectiveStepOrientation
6880
6754
  },
6881
- hasContent && /* @__PURE__ */ React54.createElement(
6755
+ hasContent && /* @__PURE__ */ React53.createElement(
6882
6756
  Stack_default,
6883
6757
  {
6884
6758
  sx: orientation === "horizontal" && effectiveStepOrientation === "vertical" ? { alignItems: "center" } : {}
6885
6759
  },
6886
- step.label && /* @__PURE__ */ React54.createElement(Typography_default, { level: "title-sm" }, step.label),
6887
- step.extraContent && /* @__PURE__ */ React54.createElement(Typography_default, { level: "body-xs" }, step.extraContent)
6760
+ step.label && /* @__PURE__ */ React53.createElement(Typography_default, { level: "title-sm" }, step.label),
6761
+ step.extraContent && /* @__PURE__ */ React53.createElement(Typography_default, { level: "body-xs" }, step.extraContent)
6888
6762
  )
6889
6763
  );
6890
6764
  })
@@ -6893,7 +6767,7 @@ function Stepper(props) {
6893
6767
  Stepper.displayName = "Stepper";
6894
6768
 
6895
6769
  // src/components/Switch/Switch.tsx
6896
- import React55 from "react";
6770
+ import React54 from "react";
6897
6771
  import { Switch as JoySwitch, styled as styled29, switchClasses } from "@mui/joy";
6898
6772
  import { motion as motion27 } from "framer-motion";
6899
6773
  var MotionSwitch = motion27(JoySwitch);
@@ -6915,14 +6789,14 @@ var StyledThumb = styled29(motion27.div)({
6915
6789
  right: "var(--Switch-thumbOffset)"
6916
6790
  }
6917
6791
  });
6918
- var Thumb = (props) => /* @__PURE__ */ React55.createElement(StyledThumb, { ...props, layout: true, transition: spring });
6792
+ var Thumb = (props) => /* @__PURE__ */ React54.createElement(StyledThumb, { ...props, layout: true, transition: spring });
6919
6793
  var spring = {
6920
6794
  type: "spring",
6921
6795
  stiffness: 700,
6922
6796
  damping: 30
6923
6797
  };
6924
6798
  var Switch = (props) => {
6925
- return /* @__PURE__ */ React55.createElement(
6799
+ return /* @__PURE__ */ React54.createElement(
6926
6800
  MotionSwitch,
6927
6801
  {
6928
6802
  ...props,
@@ -6936,7 +6810,7 @@ var Switch = (props) => {
6936
6810
  Switch.displayName = "Switch";
6937
6811
 
6938
6812
  // src/components/Tabs/Tabs.tsx
6939
- import React56, { forwardRef as forwardRef11 } from "react";
6813
+ import React55, { forwardRef as forwardRef11 } from "react";
6940
6814
  import {
6941
6815
  Tabs as JoyTabs,
6942
6816
  Tab as JoyTab,
@@ -6960,14 +6834,14 @@ var StyledTab = styled30(JoyTab)(({ theme }) => ({
6960
6834
  }
6961
6835
  }));
6962
6836
  var Tab = forwardRef11(function Tab2({ startDecorator, endDecorator, children, ...props }, ref) {
6963
- return /* @__PURE__ */ React56.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
6837
+ return /* @__PURE__ */ React55.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
6964
6838
  });
6965
6839
  Tab.displayName = "Tab";
6966
6840
  var TabList = JoyTabList;
6967
6841
  var TabPanel = JoyTabPanel;
6968
6842
 
6969
6843
  // src/components/ThemeProvider/ThemeProvider.tsx
6970
- import React57 from "react";
6844
+ import React56 from "react";
6971
6845
  import { CssBaseline, CssVarsProvider, checkboxClasses, extendTheme, inputClasses } from "@mui/joy";
6972
6846
  var colorScheme = {
6973
6847
  palette: {
@@ -7246,7 +7120,7 @@ var defaultTheme = extendTheme({
7246
7120
  });
7247
7121
  function ThemeProvider(props) {
7248
7122
  const theme = props.theme || defaultTheme;
7249
- return /* @__PURE__ */ React57.createElement(React57.Fragment, null, /* @__PURE__ */ React57.createElement(CssVarsProvider, { theme }, /* @__PURE__ */ React57.createElement(CssBaseline, null), props.children));
7123
+ return /* @__PURE__ */ React56.createElement(React56.Fragment, null, /* @__PURE__ */ React56.createElement(CssVarsProvider, { theme }, /* @__PURE__ */ React56.createElement(CssBaseline, null), props.children));
7250
7124
  }
7251
7125
  ThemeProvider.displayName = "ThemeProvider";
7252
7126
  export {