@ceed/ads 1.16.0-next.9 → 1.16.0

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,
@@ -4862,7 +4735,7 @@ function DateRange(props) {
4862
4735
  ],
4863
4736
  []
4864
4737
  );
4865
- const getDateRangeForOption = useCallback17(
4738
+ const getDateRangeForOption = useCallback16(
4866
4739
  (option) => {
4867
4740
  const now = /* @__PURE__ */ new Date();
4868
4741
  const currentYear = now.getFullYear();
@@ -4901,7 +4774,7 @@ function DateRange(props) {
4901
4774
  },
4902
4775
  [internalValue]
4903
4776
  );
4904
- const determineOptionFromValue = useCallback17(
4777
+ const determineOptionFromValue = useCallback16(
4905
4778
  (value2) => {
4906
4779
  if (!value2) {
4907
4780
  return "all-time";
@@ -4927,7 +4800,7 @@ function DateRange(props) {
4927
4800
  const newOption = determineOptionFromValue(internalValue);
4928
4801
  setSelectedOption(newOption);
4929
4802
  }, [internalValue, determineOptionFromValue]);
4930
- const handleOptionChange = useCallback17(
4803
+ const handleOptionChange = useCallback16(
4931
4804
  (event) => {
4932
4805
  const newOption = event.target.value;
4933
4806
  setSelectedOption(newOption);
@@ -4936,7 +4809,7 @@ function DateRange(props) {
4936
4809
  },
4937
4810
  [getDateRangeForOption, setInternalValue]
4938
4811
  );
4939
- const handleCustomDateChange = useCallback17(
4812
+ const handleCustomDateChange = useCallback16(
4940
4813
  (event) => {
4941
4814
  const dateRangeString = event.target.value;
4942
4815
  if (dateRangeString && dateRangeString.includes(" - ")) {
@@ -4954,7 +4827,7 @@ function DateRange(props) {
4954
4827
  if (hidden) {
4955
4828
  return null;
4956
4829
  }
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(
4830
+ 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
4831
  DateRangePicker,
4959
4832
  {
4960
4833
  value: customDateRangeValue,
@@ -4973,12 +4846,12 @@ function DateRange(props) {
4973
4846
  DateRange.displayName = "DateRange";
4974
4847
 
4975
4848
  // src/components/FilterMenu/components/CurrencyInput.tsx
4976
- import React35, { useCallback as useCallback18 } from "react";
4977
- import { Stack as Stack6 } from "@mui/joy";
4849
+ import React34, { useCallback as useCallback17 } from "react";
4850
+ import { Stack as Stack5 } from "@mui/joy";
4978
4851
  function CurrencyInput3(props) {
4979
4852
  const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
4980
4853
  const [internalValue, setInternalValue] = useControlledState(value, value, onChange);
4981
- const handleCurrencyChange = useCallback18(
4854
+ const handleCurrencyChange = useCallback17(
4982
4855
  (event) => {
4983
4856
  const newValue = event.target.value;
4984
4857
  setInternalValue(newValue);
@@ -4988,7 +4861,7 @@ function CurrencyInput3(props) {
4988
4861
  if (hidden) {
4989
4862
  return null;
4990
4863
  }
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(
4864
+ 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
4865
  CurrencyInput,
4993
4866
  {
4994
4867
  value: internalValue,
@@ -5004,14 +4877,14 @@ function CurrencyInput3(props) {
5004
4877
  CurrencyInput3.displayName = "CurrencyInput";
5005
4878
 
5006
4879
  // src/components/FilterMenu/components/CurrencyRange.tsx
5007
- import React36, { useCallback as useCallback19 } from "react";
5008
- import { Stack as Stack7 } from "@mui/joy";
4880
+ import React35, { useCallback as useCallback18 } from "react";
4881
+ import { Stack as Stack6 } from "@mui/joy";
5009
4882
  function CurrencyRange(props) {
5010
4883
  const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
5011
4884
  const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
5012
4885
  const minValue = internalValue?.[0];
5013
4886
  const maxValue = internalValue?.[1];
5014
- const handleMinChange = useCallback19(
4887
+ const handleMinChange = useCallback18(
5015
4888
  (event) => {
5016
4889
  const newMinValue = event.target.value;
5017
4890
  const currentMaxValue = maxValue;
@@ -5025,7 +4898,7 @@ function CurrencyRange(props) {
5025
4898
  },
5026
4899
  [maxValue, setInternalValue]
5027
4900
  );
5028
- const handleMaxChange = useCallback19(
4901
+ const handleMaxChange = useCallback18(
5029
4902
  (event) => {
5030
4903
  const newMaxValue = event.target.value;
5031
4904
  const currentMinValue = minValue;
@@ -5042,7 +4915,7 @@ function CurrencyRange(props) {
5042
4915
  if (hidden) {
5043
4916
  return null;
5044
4917
  }
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(
4918
+ 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
4919
  CurrencyInput,
5047
4920
  {
5048
4921
  label: "Minimum",
@@ -5055,7 +4928,7 @@ function CurrencyRange(props) {
5055
4928
  "aria-labelledby": label ? id : void 0,
5056
4929
  "aria-label": "Minimum amount"
5057
4930
  }
5058
- ), /* @__PURE__ */ React36.createElement(
4931
+ ), /* @__PURE__ */ React35.createElement(
5059
4932
  CurrencyInput,
5060
4933
  {
5061
4934
  label: "Maximum",
@@ -5073,20 +4946,20 @@ function CurrencyRange(props) {
5073
4946
  CurrencyRange.displayName = "CurrencyRange";
5074
4947
 
5075
4948
  // src/components/FilterMenu/components/PercentageInput.tsx
5076
- import React38 from "react";
5077
- import { Stack as Stack8, Typography as Typography2 } from "@mui/joy";
4949
+ import React37 from "react";
4950
+ import { Stack as Stack7, Typography as Typography2 } from "@mui/joy";
5078
4951
 
5079
4952
  // src/components/PercentageInput/PercentageInput.tsx
5080
- import React37, { useCallback as useCallback20, useMemo as useMemo14, useState as useState12 } from "react";
4953
+ import React36, { useCallback as useCallback19, useMemo as useMemo14, useState as useState12 } from "react";
5081
4954
  import { NumericFormat as NumericFormat2 } from "react-number-format";
5082
4955
  import { styled as styled20, useThemeProps as useThemeProps6 } from "@mui/joy";
5083
4956
  var padDecimal = (value, decimalScale) => {
5084
4957
  const [integer, decimal = ""] = `${value}`.split(".");
5085
4958
  return Number(`${integer}${decimal.padEnd(decimalScale, "0")}`);
5086
4959
  };
5087
- var TextMaskAdapter7 = React37.forwardRef(function TextMaskAdapter8(props, ref) {
4960
+ var TextMaskAdapter7 = React36.forwardRef(function TextMaskAdapter8(props, ref) {
5088
4961
  const { onChange, min, max, ...innerProps } = props;
5089
- return /* @__PURE__ */ React37.createElement(
4962
+ return /* @__PURE__ */ React36.createElement(
5090
4963
  NumericFormat2,
5091
4964
  {
5092
4965
  ...innerProps,
@@ -5111,7 +4984,7 @@ var PercentageInputRoot = styled20(Input_default, {
5111
4984
  slot: "Root",
5112
4985
  overridesResolver: (props, styles) => styles.root
5113
4986
  })({});
5114
- var PercentageInput = React37.forwardRef(
4987
+ var PercentageInput = React36.forwardRef(
5115
4988
  function PercentageInput2(inProps, ref) {
5116
4989
  const props = useThemeProps6({ props: inProps, name: "PercentageInput" });
5117
4990
  const {
@@ -5134,7 +5007,7 @@ var PercentageInput = React37.forwardRef(
5134
5007
  const [_value, setValue] = useControlledState(
5135
5008
  props.value,
5136
5009
  props.defaultValue,
5137
- useCallback20((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
5010
+ useCallback19((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
5138
5011
  );
5139
5012
  const [internalError, setInternalError] = useState12(
5140
5013
  max && _value && _value > max || min && _value && _value < min
@@ -5145,7 +5018,7 @@ var PercentageInput = React37.forwardRef(
5145
5018
  }
5146
5019
  return _value;
5147
5020
  }, [_value, useMinorUnit, maxDecimalScale]);
5148
- const handleChange = useCallback20(
5021
+ const handleChange = useCallback19(
5149
5022
  (event) => {
5150
5023
  if (event.target.value === "") {
5151
5024
  setValue(void 0);
@@ -5162,7 +5035,7 @@ var PercentageInput = React37.forwardRef(
5162
5035
  },
5163
5036
  [setValue, useMinorUnit, maxDecimalScale, min, max]
5164
5037
  );
5165
- return /* @__PURE__ */ React37.createElement(
5038
+ return /* @__PURE__ */ React36.createElement(
5166
5039
  PercentageInputRoot,
5167
5040
  {
5168
5041
  ...innerProps,
@@ -5209,7 +5082,7 @@ var PercentageInput3 = ({
5209
5082
  if (hidden) {
5210
5083
  return null;
5211
5084
  }
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(
5085
+ 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
5086
  PercentageInput,
5214
5087
  {
5215
5088
  value: _value,
@@ -5224,8 +5097,8 @@ var PercentageInput3 = ({
5224
5097
  };
5225
5098
 
5226
5099
  // src/components/FilterMenu/components/PercentageRange.tsx
5227
- import React39, { useCallback as useCallback21 } from "react";
5228
- import { Stack as Stack9 } from "@mui/joy";
5100
+ import React38, { useCallback as useCallback20 } from "react";
5101
+ import { Stack as Stack8 } from "@mui/joy";
5229
5102
  function PercentageRange(props) {
5230
5103
  const { id, label, value, onChange, hidden, useMinorUnit, maxDecimalScale, min, max } = props;
5231
5104
  const [internalValue, setInternalValue] = useControlledState(
@@ -5235,7 +5108,7 @@ function PercentageRange(props) {
5235
5108
  );
5236
5109
  const minValue = internalValue?.[0];
5237
5110
  const maxValue = internalValue?.[1];
5238
- const handleMinChange = useCallback21(
5111
+ const handleMinChange = useCallback20(
5239
5112
  (event) => {
5240
5113
  const newMinValue = event.target.value;
5241
5114
  const currentMaxValue = maxValue;
@@ -5247,7 +5120,7 @@ function PercentageRange(props) {
5247
5120
  },
5248
5121
  [maxValue, setInternalValue]
5249
5122
  );
5250
- const handleMaxChange = useCallback21(
5123
+ const handleMaxChange = useCallback20(
5251
5124
  (event) => {
5252
5125
  const newMaxValue = event.target.value;
5253
5126
  const currentMinValue = minValue;
@@ -5262,7 +5135,7 @@ function PercentageRange(props) {
5262
5135
  if (hidden) {
5263
5136
  return null;
5264
5137
  }
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(
5138
+ 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
5139
  PercentageInput,
5267
5140
  {
5268
5141
  label: "Minimum",
@@ -5276,7 +5149,7 @@ function PercentageRange(props) {
5276
5149
  "aria-label": "Minimum percentage",
5277
5150
  placeholder: "0%"
5278
5151
  }
5279
- ), /* @__PURE__ */ React39.createElement(
5152
+ ), /* @__PURE__ */ React38.createElement(
5280
5153
  PercentageInput,
5281
5154
  {
5282
5155
  label: "Maximum",
@@ -5295,13 +5168,13 @@ function PercentageRange(props) {
5295
5168
  PercentageRange.displayName = "PercentageRange";
5296
5169
 
5297
5170
  // src/components/FilterMenu/components/Autocomplete.tsx
5298
- import React40, { useCallback as useCallback22 } from "react";
5299
- import { Stack as Stack10 } from "@mui/joy";
5171
+ import React39, { useCallback as useCallback21 } from "react";
5172
+ import { Stack as Stack9 } from "@mui/joy";
5300
5173
  function Autocomplete2(props) {
5301
5174
  const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
5302
5175
  const [internalValue, setInternalValue] = useControlledState(value, void 0, onChange);
5303
5176
  const autocompleteValue = typeof internalValue === "string" || typeof internalValue === "number" ? String(internalValue) : void 0;
5304
- const handleChange = useCallback22(
5177
+ const handleChange = useCallback21(
5305
5178
  (event) => {
5306
5179
  const val = event.target.value;
5307
5180
  if (val) {
@@ -5316,7 +5189,7 @@ function Autocomplete2(props) {
5316
5189
  if (hidden) {
5317
5190
  return null;
5318
5191
  }
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(
5192
+ 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
5193
  Autocomplete,
5321
5194
  {
5322
5195
  value: autocompleteValue,
@@ -5333,7 +5206,6 @@ Autocomplete2.displayName = "Autocomplete";
5333
5206
  // src/components/FilterMenu/FilterMenu.tsx
5334
5207
  var componentMap = {
5335
5208
  "checkbox-group": CheckboxGroup,
5336
- "filterable-checkbox-group": FilterableCheckboxGroup2,
5337
5209
  "radio-group": RadioGroup2,
5338
5210
  "date-range": DateRange,
5339
5211
  "currency-input": CurrencyInput3,
@@ -5350,7 +5222,7 @@ function FilterMenu(props) {
5350
5222
  void 0
5351
5223
  // onChange는 Apply 버튼에서만 호출
5352
5224
  );
5353
- const handleFilterChange = useCallback23(
5225
+ const handleFilterChange = useCallback22(
5354
5226
  (filterId, value) => {
5355
5227
  setInternalValues((prev) => ({
5356
5228
  ...prev,
@@ -5359,17 +5231,17 @@ function FilterMenu(props) {
5359
5231
  },
5360
5232
  [setInternalValues]
5361
5233
  );
5362
- const handleApply = useCallback23(() => {
5234
+ const handleApply = useCallback22(() => {
5363
5235
  onChange?.(internalValues);
5364
5236
  onClose?.();
5365
5237
  }, [onChange, onClose, internalValues]);
5366
- const handleClear = useCallback23(() => {
5238
+ const handleClear = useCallback22(() => {
5367
5239
  const clearedValues = resetValues || {};
5368
5240
  setInternalValues(clearedValues);
5369
5241
  onChange?.(clearedValues);
5370
5242
  onClose?.();
5371
5243
  }, [resetValues, setInternalValues, onChange, onClose]);
5372
- return /* @__PURE__ */ React41.createElement(
5244
+ return /* @__PURE__ */ React40.createElement(
5373
5245
  ModalDialog,
5374
5246
  {
5375
5247
  sx: {
@@ -5379,9 +5251,9 @@ function FilterMenu(props) {
5379
5251
  top: "initial"
5380
5252
  }
5381
5253
  },
5382
- /* @__PURE__ */ React41.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ React41.createElement(Stack11, { spacing: 6 }, filters?.map((filter) => {
5254
+ /* @__PURE__ */ React40.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ React40.createElement(Stack10, { spacing: 6 }, filters?.map((filter) => {
5383
5255
  const FilterComponent = componentMap[filter.type];
5384
- return FilterComponent ? /* @__PURE__ */ React41.createElement(
5256
+ return FilterComponent ? /* @__PURE__ */ React40.createElement(
5385
5257
  FilterComponent,
5386
5258
  {
5387
5259
  key: filter.id,
@@ -5393,13 +5265,13 @@ function FilterMenu(props) {
5393
5265
  }
5394
5266
  ) : null;
5395
5267
  }))),
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"))
5268
+ /* @__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
5269
  );
5398
5270
  }
5399
5271
  FilterMenu.displayName = "FilterMenu";
5400
5272
 
5401
5273
  // 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";
5274
+ import React41, { useCallback as useCallback23, useEffect as useEffect10, useMemo as useMemo15, useRef as useRef9, useState as useState13 } from "react";
5403
5275
  import { styled as styled21, Input as Input2 } from "@mui/joy";
5404
5276
  import MuiFileUploadIcon from "@mui/icons-material/CloudUploadRounded";
5405
5277
  import MuiUploadFileIcon from "@mui/icons-material/UploadFileRounded";
@@ -5476,7 +5348,7 @@ var getFileSize = (n) => {
5476
5348
  };
5477
5349
  var Preview = (props) => {
5478
5350
  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(
5351
+ 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
5352
  Typography_default,
5481
5353
  {
5482
5354
  level: "body-sm",
@@ -5488,7 +5360,7 @@ var Preview = (props) => {
5488
5360
  }
5489
5361
  },
5490
5362
  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))))));
5363
+ ), !!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
5364
  };
5493
5365
  var UploaderRoot = styled21(Stack_default, {
5494
5366
  name: "Uploader",
@@ -5531,7 +5403,7 @@ var UploaderIcon = styled21(MuiFileUploadIcon, {
5531
5403
  }
5532
5404
  })
5533
5405
  );
5534
- var Uploader = React42.memo(
5406
+ var Uploader = React41.memo(
5535
5407
  (props) => {
5536
5408
  const {
5537
5409
  accept,
@@ -5599,7 +5471,7 @@ var Uploader = React42.memo(
5599
5471
  () => !maxCount || maxCount && [...uploaded, ...files].length !== maxCount,
5600
5472
  [files, maxCount, uploaded]
5601
5473
  );
5602
- const addFiles = useCallback24(
5474
+ const addFiles = useCallback23(
5603
5475
  (uploads) => {
5604
5476
  try {
5605
5477
  const types = parsedAccepts.map((type) => type.replace(".", "")) || [];
@@ -5691,14 +5563,14 @@ var Uploader = React42.memo(
5691
5563
  }
5692
5564
  }
5693
5565
  }, [inputRef, files, minCount]);
5694
- const handleFileChanged = useCallback24(
5566
+ const handleFileChanged = useCallback23(
5695
5567
  (event) => {
5696
5568
  const files2 = Array.from(event.target.files || []);
5697
5569
  addFiles(files2);
5698
5570
  },
5699
5571
  [addFiles]
5700
5572
  );
5701
- const handleDeleteFile = useCallback24(
5573
+ const handleDeleteFile = useCallback23(
5702
5574
  (deletedFile) => {
5703
5575
  if (deletedFile instanceof File) {
5704
5576
  setFiles((current) => {
@@ -5718,10 +5590,10 @@ var Uploader = React42.memo(
5718
5590
  },
5719
5591
  [name, onChange, onDelete]
5720
5592
  );
5721
- const handleUploaderButtonClick = useCallback24(() => {
5593
+ const handleUploaderButtonClick = useCallback23(() => {
5722
5594
  inputRef.current?.click();
5723
5595
  }, []);
5724
- const uploader = /* @__PURE__ */ React42.createElement(
5596
+ const uploader = /* @__PURE__ */ React41.createElement(
5725
5597
  FileDropZone,
5726
5598
  {
5727
5599
  state: previewState,
@@ -5730,8 +5602,8 @@ var Uploader = React42.memo(
5730
5602
  ref: dropZoneRef,
5731
5603
  onClick: handleUploaderButtonClick
5732
5604
  },
5733
- /* @__PURE__ */ React42.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React42.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
5734
- /* @__PURE__ */ React42.createElement(
5605
+ /* @__PURE__ */ React41.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ React41.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
5606
+ /* @__PURE__ */ React41.createElement(
5735
5607
  VisuallyHiddenInput,
5736
5608
  {
5737
5609
  disabled,
@@ -5754,7 +5626,7 @@ var Uploader = React42.memo(
5754
5626
  }
5755
5627
  )
5756
5628
  );
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 }));
5629
+ 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
5630
  }
5759
5631
  );
5760
5632
  Uploader.displayName = "Uploader";
@@ -5763,7 +5635,7 @@ Uploader.displayName = "Uploader";
5763
5635
  import { Grid } from "@mui/joy";
5764
5636
 
5765
5637
  // src/components/IconMenuButton/IconMenuButton.tsx
5766
- import React43 from "react";
5638
+ import React42 from "react";
5767
5639
  import { MenuButton as JoyMenuButton2, IconButton as JoyIconButton2 } from "@mui/joy";
5768
5640
  function IconMenuButton(props) {
5769
5641
  const {
@@ -5777,7 +5649,7 @@ function IconMenuButton(props) {
5777
5649
  placement = "bottom"
5778
5650
  } = props;
5779
5651
  if (!items.length) {
5780
- return /* @__PURE__ */ React43.createElement(
5652
+ return /* @__PURE__ */ React42.createElement(
5781
5653
  JoyIconButton2,
5782
5654
  {
5783
5655
  component: props.buttonComponent ?? "button",
@@ -5791,7 +5663,7 @@ function IconMenuButton(props) {
5791
5663
  icon
5792
5664
  );
5793
5665
  }
5794
- return /* @__PURE__ */ React43.createElement(Dropdown_default, null, /* @__PURE__ */ React43.createElement(
5666
+ return /* @__PURE__ */ React42.createElement(Dropdown_default, null, /* @__PURE__ */ React42.createElement(
5795
5667
  JoyMenuButton2,
5796
5668
  {
5797
5669
  slots: { root: JoyIconButton2 },
@@ -5808,12 +5680,12 @@ function IconMenuButton(props) {
5808
5680
  }
5809
5681
  },
5810
5682
  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))));
5683
+ ), /* @__PURE__ */ React42.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React42.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5812
5684
  }
5813
5685
  IconMenuButton.displayName = "IconMenuButton";
5814
5686
 
5815
5687
  // src/components/Markdown/Markdown.tsx
5816
- import React44, { lazy, Suspense, useEffect as useEffect11, useState as useState14 } from "react";
5688
+ import React43, { lazy, Suspense, useEffect as useEffect11, useState as useState14 } from "react";
5817
5689
  import { Skeleton } from "@mui/joy";
5818
5690
  import { Link as Link2 } from "@mui/joy";
5819
5691
  import remarkGfm from "remark-gfm";
@@ -5842,12 +5714,12 @@ var Markdown = (props) => {
5842
5714
  if (!rehypeAccent2) {
5843
5715
  return null;
5844
5716
  }
5845
- return /* @__PURE__ */ React44.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ React44.createElement(
5717
+ return /* @__PURE__ */ React43.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ React43.createElement(
5846
5718
  Suspense,
5847
5719
  {
5848
- fallback: fallback || /* @__PURE__ */ React44.createElement(Typography, null, /* @__PURE__ */ React44.createElement(Skeleton, null, content || ""))
5720
+ fallback: fallback || /* @__PURE__ */ React43.createElement(Typography, null, /* @__PURE__ */ React43.createElement(Skeleton, null, content || ""))
5849
5721
  },
5850
- /* @__PURE__ */ React44.createElement(
5722
+ /* @__PURE__ */ React43.createElement(
5851
5723
  LazyReactMarkdown,
5852
5724
  {
5853
5725
  ...markdownOptions,
@@ -5855,15 +5727,15 @@ var Markdown = (props) => {
5855
5727
  rehypePlugins: [[rehypeAccent2, { accentColor }]],
5856
5728
  remarkPlugins: [remarkGfm],
5857
5729
  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),
5730
+ h1: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h1" }, children),
5731
+ h2: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h2" }, children),
5732
+ h3: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h3" }, children),
5733
+ h4: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: "h4" }, children),
5734
+ p: ({ children, node }) => /* @__PURE__ */ React43.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
5735
+ a: ({ children, href }) => /* @__PURE__ */ React43.createElement(Link2, { href, target: defaultLinkAction }, children),
5736
+ hr: () => /* @__PURE__ */ React43.createElement(Divider, null),
5737
+ b: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { fontWeight: boldFontWeight }, children),
5738
+ strong: ({ children }) => /* @__PURE__ */ React43.createElement(Typography, { fontWeight: boldFontWeight }, children),
5867
5739
  ...markdownOptions?.components
5868
5740
  }
5869
5741
  }
@@ -5873,7 +5745,7 @@ var Markdown = (props) => {
5873
5745
  Markdown.displayName = "Markdown";
5874
5746
 
5875
5747
  // src/components/MenuButton/MenuButton.tsx
5876
- import React45 from "react";
5748
+ import React44 from "react";
5877
5749
  import { MenuButton as JoyMenuButton3, Button as JoyButton2 } from "@mui/joy";
5878
5750
  import ExpandMoreIcon from "@mui/icons-material/ExpandMore";
5879
5751
  function MenuButton(props) {
@@ -5891,7 +5763,7 @@ function MenuButton(props) {
5891
5763
  placement = "bottom"
5892
5764
  } = props;
5893
5765
  if (!items.length) {
5894
- return /* @__PURE__ */ React45.createElement(
5766
+ return /* @__PURE__ */ React44.createElement(
5895
5767
  JoyButton2,
5896
5768
  {
5897
5769
  component: props.buttonComponent ?? "button",
@@ -5902,12 +5774,12 @@ function MenuButton(props) {
5902
5774
  loading,
5903
5775
  startDecorator,
5904
5776
  ...props.buttonComponentProps ?? {},
5905
- endDecorator: showIcon ? /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator, /* @__PURE__ */ React45.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator)
5777
+ endDecorator: showIcon ? /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator, /* @__PURE__ */ React44.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator)
5906
5778
  },
5907
5779
  buttonText
5908
5780
  );
5909
5781
  }
5910
- return /* @__PURE__ */ React45.createElement(Dropdown_default, null, /* @__PURE__ */ React45.createElement(
5782
+ return /* @__PURE__ */ React44.createElement(Dropdown_default, null, /* @__PURE__ */ React44.createElement(
5911
5783
  JoyMenuButton3,
5912
5784
  {
5913
5785
  component: props.buttonComponent ?? "button",
@@ -5918,15 +5790,15 @@ function MenuButton(props) {
5918
5790
  loading,
5919
5791
  startDecorator,
5920
5792
  ...props.buttonComponentProps ?? {},
5921
- endDecorator: showIcon ? /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator, /* @__PURE__ */ React45.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React45.createElement(React45.Fragment, null, endDecorator)
5793
+ endDecorator: showIcon ? /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator, /* @__PURE__ */ React44.createElement(ExpandMoreIcon, null)) : /* @__PURE__ */ React44.createElement(React44.Fragment, null, endDecorator)
5922
5794
  },
5923
5795
  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))));
5796
+ ), /* @__PURE__ */ React44.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ React44.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
5925
5797
  }
5926
5798
  MenuButton.displayName = "MenuButton";
5927
5799
 
5928
5800
  // 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";
5801
+ import React45, { forwardRef as forwardRef9, useCallback as useCallback24, useEffect as useEffect12, useImperativeHandle as useImperativeHandle4, useRef as useRef10, useState as useState15 } from "react";
5930
5802
  import CalendarTodayIcon3 from "@mui/icons-material/CalendarToday";
5931
5803
  import { styled as styled22, useThemeProps as useThemeProps7 } from "@mui/joy";
5932
5804
  import { FocusTrap as FocusTrap3, ClickAwayListener as ClickAwayListener3, Popper as Popper4 } from "@mui/base";
@@ -6013,9 +5885,9 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6013
5885
  const [value, setValue, isControlled] = useControlledState(
6014
5886
  props.value,
6015
5887
  props.defaultValue || "",
6016
- useCallback25((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
5888
+ useCallback24((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6017
5889
  );
6018
- const getFormattedDisplayValue = useCallback25(
5890
+ const getFormattedDisplayValue = useCallback24(
6019
5891
  (inputValue) => {
6020
5892
  if (!inputValue) return "";
6021
5893
  try {
@@ -6038,7 +5910,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6038
5910
  useEffect12(() => {
6039
5911
  setDisplayValue(getFormattedDisplayValue(value));
6040
5912
  }, [value, getFormattedDisplayValue]);
6041
- const handleChange = useCallback25(
5913
+ const handleChange = useCallback24(
6042
5914
  (event) => {
6043
5915
  const newValue = event.target.value;
6044
5916
  setValue(newValue);
@@ -6048,21 +5920,21 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6048
5920
  },
6049
5921
  [setValue, getFormattedDisplayValue, isControlled]
6050
5922
  );
6051
- const handleCalendarToggle = useCallback25(
5923
+ const handleCalendarToggle = useCallback24(
6052
5924
  (event) => {
6053
5925
  setAnchorEl(anchorEl ? null : event.currentTarget);
6054
5926
  innerRef.current?.focus();
6055
5927
  },
6056
5928
  [anchorEl, setAnchorEl, innerRef]
6057
5929
  );
6058
- const handleInputMouseDown = useCallback25(
5930
+ const handleInputMouseDown = useCallback24(
6059
5931
  (event) => {
6060
5932
  event.preventDefault();
6061
5933
  buttonRef.current?.focus();
6062
5934
  },
6063
5935
  [buttonRef]
6064
5936
  );
6065
- return /* @__PURE__ */ React46.createElement(MonthPickerRoot, null, /* @__PURE__ */ React46.createElement(FocusTrap3, { open: true }, /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(
5937
+ return /* @__PURE__ */ React45.createElement(MonthPickerRoot, null, /* @__PURE__ */ React45.createElement(FocusTrap3, { open: true }, /* @__PURE__ */ React45.createElement(React45.Fragment, null, /* @__PURE__ */ React45.createElement(
6066
5938
  Input_default,
6067
5939
  {
6068
5940
  ...innerProps,
@@ -6092,7 +5964,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6092
5964
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
6093
5965
  fontFamily: "monospace"
6094
5966
  },
6095
- endDecorator: /* @__PURE__ */ React46.createElement(
5967
+ endDecorator: /* @__PURE__ */ React45.createElement(
6096
5968
  IconButton_default,
6097
5969
  {
6098
5970
  ref: buttonRef,
@@ -6104,12 +5976,12 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6104
5976
  "aria-expanded": open,
6105
5977
  disabled
6106
5978
  },
6107
- /* @__PURE__ */ React46.createElement(CalendarTodayIcon3, null)
5979
+ /* @__PURE__ */ React45.createElement(CalendarTodayIcon3, null)
6108
5980
  ),
6109
5981
  label,
6110
5982
  helperText
6111
5983
  }
6112
- ), open && /* @__PURE__ */ React46.createElement(ClickAwayListener3, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React46.createElement(
5984
+ ), open && /* @__PURE__ */ React45.createElement(ClickAwayListener3, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React45.createElement(
6113
5985
  StyledPopper3,
6114
5986
  {
6115
5987
  id: "month-picker-popper",
@@ -6128,7 +6000,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6128
6000
  "aria-label": "Calendar Tooltip",
6129
6001
  "aria-expanded": open
6130
6002
  },
6131
- /* @__PURE__ */ React46.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React46.createElement(
6003
+ /* @__PURE__ */ React45.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React45.createElement(
6132
6004
  Calendar_default,
6133
6005
  {
6134
6006
  view: "month",
@@ -6149,14 +6021,14 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6149
6021
  disablePast,
6150
6022
  locale
6151
6023
  }
6152
- ), /* @__PURE__ */ React46.createElement(
6024
+ ), /* @__PURE__ */ React45.createElement(
6153
6025
  DialogActions_default,
6154
6026
  {
6155
6027
  sx: {
6156
6028
  p: 1
6157
6029
  }
6158
6030
  },
6159
- /* @__PURE__ */ React46.createElement(
6031
+ /* @__PURE__ */ React45.createElement(
6160
6032
  Button_default,
6161
6033
  {
6162
6034
  size,
@@ -6179,7 +6051,7 @@ var MonthPicker = forwardRef9((inProps, ref) => {
6179
6051
  });
6180
6052
 
6181
6053
  // 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";
6054
+ 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
6055
  import { IMaskInput as IMaskInput3, IMask as IMask3 } from "react-imask";
6184
6056
  import CalendarTodayIcon4 from "@mui/icons-material/CalendarToday";
6185
6057
  import { styled as styled23, useThemeProps as useThemeProps8 } from "@mui/joy";
@@ -6237,9 +6109,9 @@ var parseDates2 = (str) => {
6237
6109
  var formatToPattern3 = (format) => {
6238
6110
  return `${format} - ${format}`.replace(/YYYY/g, "Y").replace(/MM/g, "m").replace(/[^YMm\s]/g, (match) => `${match}\``);
6239
6111
  };
6240
- var TextMaskAdapter9 = React47.forwardRef(function TextMaskAdapter10(props, ref) {
6112
+ var TextMaskAdapter9 = React46.forwardRef(function TextMaskAdapter10(props, ref) {
6241
6113
  const { onChange, format, ...other } = props;
6242
- return /* @__PURE__ */ React47.createElement(
6114
+ return /* @__PURE__ */ React46.createElement(
6243
6115
  IMaskInput3,
6244
6116
  {
6245
6117
  ...other,
@@ -6291,7 +6163,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6291
6163
  const [value, setValue] = useControlledState(
6292
6164
  props.value,
6293
6165
  props.defaultValue || "",
6294
- useCallback26((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6166
+ useCallback25((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
6295
6167
  );
6296
6168
  const [anchorEl, setAnchorEl] = useState16(null);
6297
6169
  const open = Boolean(anchorEl);
@@ -6302,20 +6174,20 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6302
6174
  }
6303
6175
  }, [anchorEl, innerRef]);
6304
6176
  useImperativeHandle5(ref, () => innerRef.current, [innerRef]);
6305
- const handleChange = useCallback26(
6177
+ const handleChange = useCallback25(
6306
6178
  (event) => {
6307
6179
  setValue(event.target.value);
6308
6180
  },
6309
6181
  [setValue]
6310
6182
  );
6311
- const handleCalendarToggle = useCallback26(
6183
+ const handleCalendarToggle = useCallback25(
6312
6184
  (event) => {
6313
6185
  setAnchorEl(anchorEl ? null : event.currentTarget);
6314
6186
  innerRef.current?.focus();
6315
6187
  },
6316
6188
  [anchorEl, setAnchorEl, innerRef]
6317
6189
  );
6318
- const handleCalendarChange = useCallback26(
6190
+ const handleCalendarChange = useCallback25(
6319
6191
  ([date1, date2]) => {
6320
6192
  if (!date1 || !date2) return;
6321
6193
  setValue(formatValueString4([date1, date2], format));
@@ -6323,7 +6195,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6323
6195
  },
6324
6196
  [setValue, setAnchorEl, format]
6325
6197
  );
6326
- return /* @__PURE__ */ React47.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ React47.createElement(FocusTrap4, { open: true }, /* @__PURE__ */ React47.createElement(React47.Fragment, null, /* @__PURE__ */ React47.createElement(
6198
+ return /* @__PURE__ */ React46.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ React46.createElement(FocusTrap4, { open: true }, /* @__PURE__ */ React46.createElement(React46.Fragment, null, /* @__PURE__ */ React46.createElement(
6327
6199
  Input_default,
6328
6200
  {
6329
6201
  ...innerProps,
@@ -6345,7 +6217,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6345
6217
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
6346
6218
  fontFamily: "monospace"
6347
6219
  },
6348
- endDecorator: /* @__PURE__ */ React47.createElement(
6220
+ endDecorator: /* @__PURE__ */ React46.createElement(
6349
6221
  IconButton_default,
6350
6222
  {
6351
6223
  variant: "plain",
@@ -6355,12 +6227,12 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6355
6227
  "aria-haspopup": "dialog",
6356
6228
  "aria-expanded": open
6357
6229
  },
6358
- /* @__PURE__ */ React47.createElement(CalendarTodayIcon4, null)
6230
+ /* @__PURE__ */ React46.createElement(CalendarTodayIcon4, null)
6359
6231
  ),
6360
6232
  label,
6361
6233
  helperText
6362
6234
  }
6363
- ), open && /* @__PURE__ */ React47.createElement(ClickAwayListener4, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React47.createElement(
6235
+ ), open && /* @__PURE__ */ React46.createElement(ClickAwayListener4, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ React46.createElement(
6364
6236
  StyledPopper4,
6365
6237
  {
6366
6238
  id: "month-range-picker-popper",
@@ -6379,7 +6251,7 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6379
6251
  "aria-label": "Calendar Tooltip",
6380
6252
  "aria-expanded": open
6381
6253
  },
6382
- /* @__PURE__ */ React47.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React47.createElement(
6254
+ /* @__PURE__ */ React46.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ React46.createElement(
6383
6255
  Calendar_default,
6384
6256
  {
6385
6257
  view: "month",
@@ -6392,14 +6264,14 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6392
6264
  disableFuture,
6393
6265
  disablePast
6394
6266
  }
6395
- ), /* @__PURE__ */ React47.createElement(
6267
+ ), /* @__PURE__ */ React46.createElement(
6396
6268
  DialogActions_default,
6397
6269
  {
6398
6270
  sx: {
6399
6271
  p: 1
6400
6272
  }
6401
6273
  },
6402
- /* @__PURE__ */ React47.createElement(
6274
+ /* @__PURE__ */ React46.createElement(
6403
6275
  Button_default,
6404
6276
  {
6405
6277
  size,
@@ -6418,14 +6290,14 @@ var MonthRangePicker = forwardRef10((inProps, ref) => {
6418
6290
  MonthRangePicker.displayName = "MonthRangePicker";
6419
6291
 
6420
6292
  // src/components/NavigationGroup/NavigationGroup.tsx
6421
- import React48 from "react";
6293
+ import React47 from "react";
6422
6294
  import {
6423
6295
  Accordion as JoyAccordion2,
6424
6296
  AccordionSummary as JoyAccordionSummary2,
6425
6297
  AccordionDetails as JoyAccordionDetails2,
6426
6298
  styled as styled24,
6427
6299
  accordionSummaryClasses,
6428
- Stack as Stack12
6300
+ Stack as Stack11
6429
6301
  } from "@mui/joy";
6430
6302
  var AccordionSummary2 = styled24(JoyAccordionSummary2, {
6431
6303
  name: "NavigationGroup",
@@ -6449,11 +6321,11 @@ var AccordionDetails2 = styled24(JoyAccordionDetails2, {
6449
6321
  }));
6450
6322
  function NavigationGroup(props) {
6451
6323
  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));
6324
+ 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
6325
  }
6454
6326
 
6455
6327
  // src/components/NavigationItem/NavigationItem.tsx
6456
- import React49 from "react";
6328
+ import React48 from "react";
6457
6329
  import {
6458
6330
  ListItem as JoyListItem,
6459
6331
  ListItemButton as JoyListItemButton,
@@ -6488,7 +6360,7 @@ function NavigationItem(props) {
6488
6360
  const handleClick = () => {
6489
6361
  onClick?.(id);
6490
6362
  };
6491
- return /* @__PURE__ */ React49.createElement(JoyListItem, { ...rest }, /* @__PURE__ */ React49.createElement(
6363
+ return /* @__PURE__ */ React48.createElement(JoyListItem, { ...rest }, /* @__PURE__ */ React48.createElement(
6492
6364
  ListItemButton,
6493
6365
  {
6494
6366
  level,
@@ -6497,21 +6369,21 @@ function NavigationItem(props) {
6497
6369
  "aria-current": selected,
6498
6370
  onClick: handleClick
6499
6371
  },
6500
- startDecorator && /* @__PURE__ */ React49.createElement(JoyListItemDecorator, null, startDecorator),
6372
+ startDecorator && /* @__PURE__ */ React48.createElement(JoyListItemDecorator, null, startDecorator),
6501
6373
  children
6502
6374
  ));
6503
6375
  }
6504
6376
 
6505
6377
  // src/components/Navigator/Navigator.tsx
6506
- import React50 from "react";
6378
+ import React49 from "react";
6507
6379
  function Navigator(props) {
6508
6380
  const { items, level = 0, onSelect } = props;
6509
6381
  const handleItemClick = (id) => {
6510
6382
  onSelect?.(id);
6511
6383
  };
6512
- return /* @__PURE__ */ React50.createElement("div", null, items.map((item, index) => {
6384
+ return /* @__PURE__ */ React49.createElement("div", null, items.map((item, index) => {
6513
6385
  if (item.type === "item") {
6514
- return /* @__PURE__ */ React50.createElement(
6386
+ return /* @__PURE__ */ React49.createElement(
6515
6387
  NavigationItem,
6516
6388
  {
6517
6389
  key: item.id,
@@ -6524,7 +6396,7 @@ function Navigator(props) {
6524
6396
  item.title
6525
6397
  );
6526
6398
  } else if (item.type === "group") {
6527
- return /* @__PURE__ */ React50.createElement(
6399
+ return /* @__PURE__ */ React49.createElement(
6528
6400
  NavigationGroup,
6529
6401
  {
6530
6402
  key: `${item.title}-${index}`,
@@ -6542,7 +6414,7 @@ function Navigator(props) {
6542
6414
  Navigator.displayName = "Navigator";
6543
6415
 
6544
6416
  // src/components/ProfileMenu/ProfileMenu.tsx
6545
- import React51, { useCallback as useCallback27, useMemo as useMemo17 } from "react";
6417
+ import React50, { useCallback as useCallback26, useMemo as useMemo17 } from "react";
6546
6418
  import { Dropdown as Dropdown2, ListDivider, menuItemClasses, styled as styled26, MenuButton as MenuButton2 } from "@mui/joy";
6547
6419
  import { ClickAwayListener as ClickAwayListener5 } from "@mui/base";
6548
6420
  import DropdownIcon from "@mui/icons-material/ArrowDropDown";
@@ -6554,7 +6426,7 @@ function ProfileCard(props) {
6554
6426
  const { children, chip, caption, size } = props;
6555
6427
  const captionLevel = useMemo17(() => size === "sm" ? "body-xs" : "body-sm", [size]);
6556
6428
  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));
6429
+ 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
6430
  }
6559
6431
  ProfileCard.displayName = "ProfileCard";
6560
6432
  var StyledProfileMenuButton = styled26(MenuButton2, {
@@ -6566,16 +6438,16 @@ var StyledProfileMenuButton = styled26(MenuButton2, {
6566
6438
  }));
6567
6439
  function ProfileMenuButton(props) {
6568
6440
  const { size = "md", src, alt, children, getInitial, ...innerProps } = props;
6569
- return /* @__PURE__ */ React51.createElement(
6441
+ return /* @__PURE__ */ React50.createElement(
6570
6442
  StyledProfileMenuButton,
6571
6443
  {
6572
6444
  variant: "plain",
6573
6445
  color: "neutral",
6574
6446
  size,
6575
- endDecorator: /* @__PURE__ */ React51.createElement(DropdownIcon, null),
6447
+ endDecorator: /* @__PURE__ */ React50.createElement(DropdownIcon, null),
6576
6448
  ...innerProps
6577
6449
  },
6578
- /* @__PURE__ */ React51.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
6450
+ /* @__PURE__ */ React50.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
6579
6451
  );
6580
6452
  }
6581
6453
  ProfileMenuButton.displayName = "ProfileMenuButton";
@@ -6594,9 +6466,9 @@ function ProfileMenu(props) {
6594
6466
  const [open, setOpen] = useControlledState(
6595
6467
  _open,
6596
6468
  defaultOpen ?? false,
6597
- useCallback27((value) => onOpenChange?.(value), [onOpenChange])
6469
+ useCallback26((value) => onOpenChange?.(value), [onOpenChange])
6598
6470
  );
6599
- return /* @__PURE__ */ React51.createElement(ClickAwayListener5, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ React51.createElement("div", null, /* @__PURE__ */ React51.createElement(Dropdown2, { open }, /* @__PURE__ */ React51.createElement(
6471
+ return /* @__PURE__ */ React50.createElement(ClickAwayListener5, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ React50.createElement("div", null, /* @__PURE__ */ React50.createElement(Dropdown2, { open }, /* @__PURE__ */ React50.createElement(
6600
6472
  ProfileMenuButton,
6601
6473
  {
6602
6474
  size,
@@ -6606,7 +6478,7 @@ function ProfileMenu(props) {
6606
6478
  getInitial
6607
6479
  },
6608
6480
  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(
6481
+ ), /* @__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
6482
  MenuItem,
6611
6483
  {
6612
6484
  key: label,
@@ -6622,7 +6494,7 @@ function ProfileMenu(props) {
6622
6494
  ProfileMenu.displayName = "ProfileMenu";
6623
6495
 
6624
6496
  // src/components/RadioTileGroup/RadioTileGroup.tsx
6625
- import React52 from "react";
6497
+ import React51 from "react";
6626
6498
  import { styled as styled27, radioClasses, sheetClasses } from "@mui/joy";
6627
6499
  var RadioTileGroupRoot = styled27(RadioGroup, {
6628
6500
  name: "RadioTileGroup",
@@ -6710,7 +6582,7 @@ function RadioTileGroup(props) {
6710
6582
  error,
6711
6583
  required
6712
6584
  } = props;
6713
- const radioGroup = /* @__PURE__ */ React52.createElement(
6585
+ const radioGroup = /* @__PURE__ */ React51.createElement(
6714
6586
  RadioTileGroupRoot,
6715
6587
  {
6716
6588
  overlay: true,
@@ -6721,7 +6593,7 @@ function RadioTileGroup(props) {
6721
6593
  flex,
6722
6594
  columns
6723
6595
  },
6724
- options.map((option) => /* @__PURE__ */ React52.createElement(
6596
+ options.map((option) => /* @__PURE__ */ React51.createElement(
6725
6597
  RadioTileSheet,
6726
6598
  {
6727
6599
  key: option.value,
@@ -6731,7 +6603,7 @@ function RadioTileGroup(props) {
6731
6603
  flex,
6732
6604
  textAlign
6733
6605
  },
6734
- /* @__PURE__ */ React52.createElement(
6606
+ /* @__PURE__ */ React51.createElement(
6735
6607
  Radio,
6736
6608
  {
6737
6609
  id: `${option.value}`,
@@ -6759,7 +6631,7 @@ function RadioTileGroup(props) {
6759
6631
  }
6760
6632
  }
6761
6633
  ),
6762
- option.startDecorator && /* @__PURE__ */ React52.createElement(
6634
+ option.startDecorator && /* @__PURE__ */ React51.createElement(
6763
6635
  Box_default,
6764
6636
  {
6765
6637
  sx: {
@@ -6780,20 +6652,20 @@ function RadioTileGroup(props) {
6780
6652
  )
6781
6653
  ))
6782
6654
  );
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));
6655
+ 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
6656
  }
6785
6657
  RadioTileGroup.displayName = "RadioTileGroup";
6786
6658
 
6787
6659
  // src/components/RadioList/RadioList.tsx
6788
- import React53 from "react";
6660
+ import React52 from "react";
6789
6661
  function RadioList(props) {
6790
6662
  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 })));
6663
+ return /* @__PURE__ */ React52.createElement(RadioGroup, { ...innerProps }, items.map((item) => /* @__PURE__ */ React52.createElement(Radio, { key: `${item.value}`, value: item.value, label: item.label })));
6792
6664
  }
6793
6665
  RadioList.displayName = "RadioList";
6794
6666
 
6795
6667
  // src/components/Stepper/Stepper.tsx
6796
- import React54 from "react";
6668
+ import React53 from "react";
6797
6669
  import {
6798
6670
  Stepper as JoyStepper,
6799
6671
  Step as JoyStep,
@@ -6829,7 +6701,7 @@ function Stepper(props) {
6829
6701
  stepOrientation = "horizontal"
6830
6702
  } = props;
6831
6703
  const effectiveStepOrientation = orientation === "vertical" ? "horizontal" : stepOrientation;
6832
- return /* @__PURE__ */ React54.createElement(
6704
+ return /* @__PURE__ */ React53.createElement(
6833
6705
  MotionStepper,
6834
6706
  {
6835
6707
  orientation,
@@ -6868,23 +6740,23 @@ function Stepper(props) {
6868
6740
  const completed = activeStep > i + 1;
6869
6741
  const disabled = activeStep < i + 1;
6870
6742
  const hasContent = step.label || step.extraContent;
6871
- return /* @__PURE__ */ React54.createElement(
6743
+ return /* @__PURE__ */ React53.createElement(
6872
6744
  Step,
6873
6745
  {
6874
6746
  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),
6747
+ indicator: /* @__PURE__ */ React53.createElement(StepIndicator, { variant: disabled ? "outlined" : "solid", color: disabled ? "neutral" : "primary" }, completed ? /* @__PURE__ */ React53.createElement(CheckIcon, null) : step.indicatorContent),
6876
6748
  active,
6877
6749
  completed,
6878
6750
  disabled,
6879
6751
  orientation: effectiveStepOrientation
6880
6752
  },
6881
- hasContent && /* @__PURE__ */ React54.createElement(
6753
+ hasContent && /* @__PURE__ */ React53.createElement(
6882
6754
  Stack_default,
6883
6755
  {
6884
6756
  sx: orientation === "horizontal" && effectiveStepOrientation === "vertical" ? { alignItems: "center" } : {}
6885
6757
  },
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)
6758
+ step.label && /* @__PURE__ */ React53.createElement(Typography_default, { level: "title-sm" }, step.label),
6759
+ step.extraContent && /* @__PURE__ */ React53.createElement(Typography_default, { level: "body-xs" }, step.extraContent)
6888
6760
  )
6889
6761
  );
6890
6762
  })
@@ -6893,7 +6765,7 @@ function Stepper(props) {
6893
6765
  Stepper.displayName = "Stepper";
6894
6766
 
6895
6767
  // src/components/Switch/Switch.tsx
6896
- import React55 from "react";
6768
+ import React54 from "react";
6897
6769
  import { Switch as JoySwitch, styled as styled29, switchClasses } from "@mui/joy";
6898
6770
  import { motion as motion27 } from "framer-motion";
6899
6771
  var MotionSwitch = motion27(JoySwitch);
@@ -6915,14 +6787,14 @@ var StyledThumb = styled29(motion27.div)({
6915
6787
  right: "var(--Switch-thumbOffset)"
6916
6788
  }
6917
6789
  });
6918
- var Thumb = (props) => /* @__PURE__ */ React55.createElement(StyledThumb, { ...props, layout: true, transition: spring });
6790
+ var Thumb = (props) => /* @__PURE__ */ React54.createElement(StyledThumb, { ...props, layout: true, transition: spring });
6919
6791
  var spring = {
6920
6792
  type: "spring",
6921
6793
  stiffness: 700,
6922
6794
  damping: 30
6923
6795
  };
6924
6796
  var Switch = (props) => {
6925
- return /* @__PURE__ */ React55.createElement(
6797
+ return /* @__PURE__ */ React54.createElement(
6926
6798
  MotionSwitch,
6927
6799
  {
6928
6800
  ...props,
@@ -6936,7 +6808,7 @@ var Switch = (props) => {
6936
6808
  Switch.displayName = "Switch";
6937
6809
 
6938
6810
  // src/components/Tabs/Tabs.tsx
6939
- import React56, { forwardRef as forwardRef11 } from "react";
6811
+ import React55, { forwardRef as forwardRef11 } from "react";
6940
6812
  import {
6941
6813
  Tabs as JoyTabs,
6942
6814
  Tab as JoyTab,
@@ -6960,14 +6832,14 @@ var StyledTab = styled30(JoyTab)(({ theme }) => ({
6960
6832
  }
6961
6833
  }));
6962
6834
  var Tab = forwardRef11(function Tab2({ startDecorator, endDecorator, children, ...props }, ref) {
6963
- return /* @__PURE__ */ React56.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
6835
+ return /* @__PURE__ */ React55.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
6964
6836
  });
6965
6837
  Tab.displayName = "Tab";
6966
6838
  var TabList = JoyTabList;
6967
6839
  var TabPanel = JoyTabPanel;
6968
6840
 
6969
6841
  // src/components/ThemeProvider/ThemeProvider.tsx
6970
- import React57 from "react";
6842
+ import React56 from "react";
6971
6843
  import { CssBaseline, CssVarsProvider, checkboxClasses, extendTheme, inputClasses } from "@mui/joy";
6972
6844
  var colorScheme = {
6973
6845
  palette: {
@@ -7246,7 +7118,7 @@ var defaultTheme = extendTheme({
7246
7118
  });
7247
7119
  function ThemeProvider(props) {
7248
7120
  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));
7121
+ return /* @__PURE__ */ React56.createElement(React56.Fragment, null, /* @__PURE__ */ React56.createElement(CssVarsProvider, { theme }, /* @__PURE__ */ React56.createElement(CssBaseline, null), props.children));
7250
7122
  }
7251
7123
  ThemeProvider.displayName = "ThemeProvider";
7252
7124
  export {