@ceed/cds 1.15.0-next.7 → 1.15.0-next.9

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.cjs CHANGED
@@ -85,26 +85,26 @@ __export(index_exports, {
85
85
  AccordionSummary: () => AccordionSummary,
86
86
  Accordions: () => Accordions,
87
87
  Alert: () => Alert,
88
- AspectRatio: () => import_joy61.AspectRatio,
88
+ AspectRatio: () => import_joy60.AspectRatio,
89
89
  Autocomplete: () => Autocomplete,
90
- AutocompleteListbox: () => import_joy61.AutocompleteListbox,
91
- AutocompleteOption: () => import_joy61.AutocompleteOption,
90
+ AutocompleteListbox: () => import_joy60.AutocompleteListbox,
91
+ AutocompleteOption: () => import_joy60.AutocompleteOption,
92
92
  Avatar: () => Avatar,
93
93
  AvatarGroup: () => import_joy11.AvatarGroup,
94
- Badge: () => import_joy61.Badge,
94
+ Badge: () => import_joy60.Badge,
95
95
  Box: () => Box,
96
96
  Breadcrumbs: () => Breadcrumbs,
97
97
  Button: () => Button,
98
- ButtonGroup: () => import_joy61.ButtonGroup,
98
+ ButtonGroup: () => import_joy60.ButtonGroup,
99
99
  Calendar: () => Calendar,
100
- Card: () => import_joy61.Card,
101
- CardActions: () => import_joy61.CardActions,
102
- CardContent: () => import_joy61.CardContent,
103
- CardCover: () => import_joy61.CardCover,
104
- CardOverflow: () => import_joy61.CardOverflow,
100
+ Card: () => import_joy60.Card,
101
+ CardActions: () => import_joy60.CardActions,
102
+ CardContent: () => import_joy60.CardContent,
103
+ CardCover: () => import_joy60.CardCover,
104
+ CardOverflow: () => import_joy60.CardOverflow,
105
105
  Checkbox: () => Checkbox,
106
- Chip: () => import_joy61.Chip,
107
- CircularProgress: () => import_joy61.CircularProgress,
106
+ Chip: () => import_joy60.Chip,
107
+ CircularProgress: () => import_joy60.CircularProgress,
108
108
  Container: () => Container,
109
109
  CurrencyInput: () => CurrencyInput,
110
110
  DataTable: () => DataTable,
@@ -121,21 +121,21 @@ __export(index_exports, {
121
121
  FormControl: () => FormControl,
122
122
  FormHelperText: () => FormHelperText,
123
123
  FormLabel: () => FormLabel,
124
- Grid: () => import_joy45.Grid,
124
+ Grid: () => import_joy44.Grid,
125
125
  IconButton: () => IconButton,
126
126
  IconMenuButton: () => IconMenuButton,
127
127
  InfoSign: () => InfoSign,
128
128
  Input: () => Input,
129
129
  InsetDrawer: () => InsetDrawer,
130
- LinearProgress: () => import_joy61.LinearProgress,
131
- Link: () => import_joy61.Link,
132
- List: () => import_joy61.List,
133
- ListDivider: () => import_joy61.ListDivider,
134
- ListItem: () => import_joy61.ListItem,
135
- ListItemButton: () => import_joy61.ListItemButton,
136
- ListItemContent: () => import_joy61.ListItemContent,
137
- ListItemDecorator: () => import_joy61.ListItemDecorator,
138
- ListSubheader: () => import_joy61.ListSubheader,
130
+ LinearProgress: () => import_joy60.LinearProgress,
131
+ Link: () => import_joy60.Link,
132
+ List: () => import_joy60.List,
133
+ ListDivider: () => import_joy60.ListDivider,
134
+ ListItem: () => import_joy60.ListItem,
135
+ ListItemButton: () => import_joy60.ListItemButton,
136
+ ListItemContent: () => import_joy60.ListItemContent,
137
+ ListItemDecorator: () => import_joy60.ListItemDecorator,
138
+ ListSubheader: () => import_joy60.ListSubheader,
139
139
  Markdown: () => Markdown,
140
140
  Menu: () => Menu,
141
141
  MenuButton: () => MenuButton,
@@ -158,11 +158,11 @@ __export(index_exports, {
158
158
  RadioList: () => RadioList,
159
159
  Select: () => Select,
160
160
  Sheet: () => Sheet,
161
- Skeleton: () => import_joy61.Skeleton,
162
- Slider: () => import_joy61.Slider,
161
+ Skeleton: () => import_joy60.Skeleton,
162
+ Slider: () => import_joy60.Slider,
163
163
  Stack: () => import_joy3.Stack,
164
164
  Step: () => Step,
165
- StepButton: () => import_joy61.StepButton,
165
+ StepButton: () => import_joy60.StepButton,
166
166
  StepIndicator: () => StepIndicator,
167
167
  Stepper: () => Stepper,
168
168
  Switch: () => Switch,
@@ -178,84 +178,84 @@ __export(index_exports, {
178
178
  Tooltip: () => Tooltip,
179
179
  Typography: () => Typography,
180
180
  Uploader: () => Uploader,
181
- accordionClasses: () => import_joy61.accordionClasses,
182
- accordionDetailsClasses: () => import_joy61.accordionDetailsClasses,
183
- accordionSummaryClasses: () => import_joy61.accordionSummaryClasses,
184
- accordionsClasses: () => import_joy61.accordionGroupClasses,
185
- alertClasses: () => import_joy61.alertClasses,
186
- aspectRatioClasses: () => import_joy61.aspectRatioClasses,
187
- autocompleteClasses: () => import_joy61.autocompleteClasses,
188
- autocompleteListboxClasses: () => import_joy61.autocompleteListboxClasses,
189
- autocompleteOptionClasses: () => import_joy61.autocompleteOptionClasses,
190
- avatarClasses: () => import_joy61.avatarClasses,
191
- avatarGroupClasses: () => import_joy61.avatarGroupClasses,
192
- badgeClasses: () => import_joy61.badgeClasses,
193
- boxClasses: () => import_joy61.boxClasses,
194
- breadcrumbsClasses: () => import_joy61.breadcrumbsClasses,
195
- buttonClasses: () => import_joy61.buttonClasses,
196
- cardActionsClasses: () => import_joy61.cardActionsClasses,
197
- cardClasses: () => import_joy61.cardClasses,
198
- cardContentClasses: () => import_joy61.cardContentClasses,
199
- cardCoverClasses: () => import_joy61.cardCoverClasses,
200
- cardOverflowClasses: () => import_joy61.cardOverflowClasses,
201
- checkboxClasses: () => import_joy61.checkboxClasses,
202
- chipClasses: () => import_joy61.chipClasses,
203
- circularProgressClasses: () => import_joy61.circularProgressClasses,
204
- dialogActionsClasses: () => import_joy61.dialogActionsClasses,
205
- dialogContentClasses: () => import_joy61.dialogContentClasses,
206
- dialogTitleClasses: () => import_joy61.dialogTitleClasses,
207
- dividerClasses: () => import_joy61.dividerClasses,
208
- drawerClasses: () => import_joy61.drawerClasses,
209
- extendTheme: () => import_joy59.extendTheme,
210
- formControlClasses: () => import_joy61.formControlClasses,
211
- formHelperTextClasses: () => import_joy61.formHelperTextClasses,
212
- formLabelClasses: () => import_joy61.formLabelClasses,
213
- gridClasses: () => import_joy61.gridClasses,
214
- iconButtonClasses: () => import_joy61.iconButtonClasses,
215
- inputClasses: () => import_joy61.inputClasses,
216
- linearProgressClasses: () => import_joy61.linearProgressClasses,
217
- linkClasses: () => import_joy61.linkClasses,
218
- listClasses: () => import_joy61.listClasses,
219
- listDividerClasses: () => import_joy61.listDividerClasses,
220
- listItemButtonClasses: () => import_joy61.listItemButtonClasses,
221
- listItemClasses: () => import_joy61.listItemClasses,
222
- listItemContentClasses: () => import_joy61.listItemContentClasses,
223
- listItemDecoratorClasses: () => import_joy61.listItemDecoratorClasses,
224
- listSubheaderClasses: () => import_joy61.listSubheaderClasses,
225
- menuButtonClasses: () => import_joy61.menuButtonClasses,
226
- menuClasses: () => import_joy61.menuClasses,
227
- menuItemClasses: () => import_joy61.menuItemClasses,
228
- modalClasses: () => import_joy61.modalClasses,
229
- modalCloseClasses: () => import_joy61.modalCloseClasses,
230
- modalDialogClasses: () => import_joy61.modalDialogClasses,
231
- modalOverflowClasses: () => import_joy61.modalOverflowClasses,
232
- optionClasses: () => import_joy61.optionClasses,
233
- radioClasses: () => import_joy61.radioClasses,
234
- radioGroupClasses: () => import_joy61.radioGroupClasses,
235
- selectClasses: () => import_joy61.selectClasses,
236
- sheetClasses: () => import_joy61.sheetClasses,
237
- skeletonClasses: () => import_joy61.skeletonClasses,
238
- sliderClasses: () => import_joy61.sliderClasses,
239
- stackClasses: () => import_joy61.stackClasses,
240
- stepButtonClasses: () => import_joy61.stepButtonClasses,
241
- stepClasses: () => import_joy61.stepClasses,
242
- stepperClasses: () => import_joy61.stepperClasses,
243
- styled: () => import_joy61.styled,
244
- switchClasses: () => import_joy61.switchClasses,
245
- tabListClasses: () => import_joy61.tabListClasses,
246
- tabPanelClasses: () => import_joy61.tabPanelClasses,
247
- tableClasses: () => import_joy61.tableClasses,
248
- tabsClasses: () => import_joy61.tabsClasses,
249
- textareaClasses: () => import_joy61.textareaClasses,
181
+ accordionClasses: () => import_joy60.accordionClasses,
182
+ accordionDetailsClasses: () => import_joy60.accordionDetailsClasses,
183
+ accordionSummaryClasses: () => import_joy60.accordionSummaryClasses,
184
+ accordionsClasses: () => import_joy60.accordionGroupClasses,
185
+ alertClasses: () => import_joy60.alertClasses,
186
+ aspectRatioClasses: () => import_joy60.aspectRatioClasses,
187
+ autocompleteClasses: () => import_joy60.autocompleteClasses,
188
+ autocompleteListboxClasses: () => import_joy60.autocompleteListboxClasses,
189
+ autocompleteOptionClasses: () => import_joy60.autocompleteOptionClasses,
190
+ avatarClasses: () => import_joy60.avatarClasses,
191
+ avatarGroupClasses: () => import_joy60.avatarGroupClasses,
192
+ badgeClasses: () => import_joy60.badgeClasses,
193
+ boxClasses: () => import_joy60.boxClasses,
194
+ breadcrumbsClasses: () => import_joy60.breadcrumbsClasses,
195
+ buttonClasses: () => import_joy60.buttonClasses,
196
+ cardActionsClasses: () => import_joy60.cardActionsClasses,
197
+ cardClasses: () => import_joy60.cardClasses,
198
+ cardContentClasses: () => import_joy60.cardContentClasses,
199
+ cardCoverClasses: () => import_joy60.cardCoverClasses,
200
+ cardOverflowClasses: () => import_joy60.cardOverflowClasses,
201
+ checkboxClasses: () => import_joy60.checkboxClasses,
202
+ chipClasses: () => import_joy60.chipClasses,
203
+ circularProgressClasses: () => import_joy60.circularProgressClasses,
204
+ dialogActionsClasses: () => import_joy60.dialogActionsClasses,
205
+ dialogContentClasses: () => import_joy60.dialogContentClasses,
206
+ dialogTitleClasses: () => import_joy60.dialogTitleClasses,
207
+ dividerClasses: () => import_joy60.dividerClasses,
208
+ drawerClasses: () => import_joy60.drawerClasses,
209
+ extendTheme: () => import_joy58.extendTheme,
210
+ formControlClasses: () => import_joy60.formControlClasses,
211
+ formHelperTextClasses: () => import_joy60.formHelperTextClasses,
212
+ formLabelClasses: () => import_joy60.formLabelClasses,
213
+ gridClasses: () => import_joy60.gridClasses,
214
+ iconButtonClasses: () => import_joy60.iconButtonClasses,
215
+ inputClasses: () => import_joy60.inputClasses,
216
+ linearProgressClasses: () => import_joy60.linearProgressClasses,
217
+ linkClasses: () => import_joy60.linkClasses,
218
+ listClasses: () => import_joy60.listClasses,
219
+ listDividerClasses: () => import_joy60.listDividerClasses,
220
+ listItemButtonClasses: () => import_joy60.listItemButtonClasses,
221
+ listItemClasses: () => import_joy60.listItemClasses,
222
+ listItemContentClasses: () => import_joy60.listItemContentClasses,
223
+ listItemDecoratorClasses: () => import_joy60.listItemDecoratorClasses,
224
+ listSubheaderClasses: () => import_joy60.listSubheaderClasses,
225
+ menuButtonClasses: () => import_joy60.menuButtonClasses,
226
+ menuClasses: () => import_joy60.menuClasses,
227
+ menuItemClasses: () => import_joy60.menuItemClasses,
228
+ modalClasses: () => import_joy60.modalClasses,
229
+ modalCloseClasses: () => import_joy60.modalCloseClasses,
230
+ modalDialogClasses: () => import_joy60.modalDialogClasses,
231
+ modalOverflowClasses: () => import_joy60.modalOverflowClasses,
232
+ optionClasses: () => import_joy60.optionClasses,
233
+ radioClasses: () => import_joy60.radioClasses,
234
+ radioGroupClasses: () => import_joy60.radioGroupClasses,
235
+ selectClasses: () => import_joy60.selectClasses,
236
+ sheetClasses: () => import_joy60.sheetClasses,
237
+ skeletonClasses: () => import_joy60.skeletonClasses,
238
+ sliderClasses: () => import_joy60.sliderClasses,
239
+ stackClasses: () => import_joy60.stackClasses,
240
+ stepButtonClasses: () => import_joy60.stepButtonClasses,
241
+ stepClasses: () => import_joy60.stepClasses,
242
+ stepperClasses: () => import_joy60.stepperClasses,
243
+ styled: () => import_joy60.styled,
244
+ switchClasses: () => import_joy60.switchClasses,
245
+ tabListClasses: () => import_joy60.tabListClasses,
246
+ tabPanelClasses: () => import_joy60.tabPanelClasses,
247
+ tableClasses: () => import_joy60.tableClasses,
248
+ tabsClasses: () => import_joy60.tabsClasses,
249
+ textareaClasses: () => import_joy60.textareaClasses,
250
250
  theme: () => defaultTheme,
251
- tooltipClasses: () => import_joy61.tooltipClasses,
252
- typographyClasses: () => import_joy61.typographyClasses,
253
- useColorScheme: () => import_joy61.useColorScheme,
254
- useTheme: () => import_joy61.useTheme,
255
- useThemeProps: () => import_joy61.useThemeProps
251
+ tooltipClasses: () => import_joy60.tooltipClasses,
252
+ typographyClasses: () => import_joy60.typographyClasses,
253
+ useColorScheme: () => import_joy60.useColorScheme,
254
+ useTheme: () => import_joy60.useTheme,
255
+ useThemeProps: () => import_joy60.useThemeProps
256
256
  });
257
257
  module.exports = __toCommonJS(index_exports);
258
- var import_joy61 = require("@mui/joy");
258
+ var import_joy60 = require("@mui/joy");
259
259
 
260
260
  // src/components/Accordions/Accordions.tsx
261
261
  var import_react = __toESM(require("react"));
@@ -3528,8 +3528,10 @@ TableBody.displayName = "TableBody";
3528
3528
 
3529
3529
  // src/components/Pagination/Pagination.tsx
3530
3530
  var import_react27 = __toESM(require("react"));
3531
- var import_ChevronLeft2 = __toESM(require("@mui/icons-material/ChevronLeft"));
3532
- var import_ChevronRight2 = __toESM(require("@mui/icons-material/ChevronRight"));
3531
+ var import_ChevronLeftRounded = __toESM(require("@mui/icons-material/ChevronLeftRounded"));
3532
+ var import_ChevronRightRounded = __toESM(require("@mui/icons-material/ChevronRightRounded"));
3533
+ var import_FirstPageRounded = __toESM(require("@mui/icons-material/FirstPageRounded"));
3534
+ var import_LastPageRounded = __toESM(require("@mui/icons-material/LastPageRounded"));
3533
3535
  var import_joy35 = require("@mui/joy");
3534
3536
  var PaginationButton = (0, import_joy35.styled)(Button_default, {
3535
3537
  name: "Pagination",
@@ -3588,6 +3590,7 @@ function Pagination(props) {
3588
3590
  onPageChange,
3589
3591
  rowCount,
3590
3592
  size = "md",
3593
+ variant = "standard",
3591
3594
  ...innerProps
3592
3595
  } = props;
3593
3596
  const [paginationModel, setPaginationModel] = useControlledState(
@@ -3614,6 +3617,87 @@ function Pagination(props) {
3614
3617
  setPaginationModel({ ...paginationModel, page: lastPage });
3615
3618
  }
3616
3619
  }, [rowCount, paginationModel, lastPage, setPaginationModel]);
3620
+ const pageOptions = Array.from({ length: lastPage }, (_, i) => ({
3621
+ label: `${i + 1}`,
3622
+ value: `${i + 1}`
3623
+ }));
3624
+ if (variant === "compact") {
3625
+ return /* @__PURE__ */ import_react27.default.createElement(PaginationRoot, { ...innerProps }, /* @__PURE__ */ import_react27.default.createElement(PaginationContainer, { direction: "row", size, alignItems: "center" }, /* @__PURE__ */ import_react27.default.createElement(Stack_default, { direction: "row" }, /* @__PURE__ */ import_react27.default.createElement(
3626
+ PaginationIconButton,
3627
+ {
3628
+ size,
3629
+ variant: "plain",
3630
+ color: "neutral",
3631
+ onClick: () => handlePageChange(firstPage),
3632
+ disabled: paginationModel.page === firstPage,
3633
+ "aria-label": "First page"
3634
+ },
3635
+ /* @__PURE__ */ import_react27.default.createElement(import_FirstPageRounded.default, null)
3636
+ ), /* @__PURE__ */ import_react27.default.createElement(
3637
+ PaginationIconButton,
3638
+ {
3639
+ size,
3640
+ variant: "plain",
3641
+ color: "neutral",
3642
+ onClick: () => handlePageChange(paginationModel.page - 1),
3643
+ disabled: paginationModel.page === firstPage,
3644
+ "aria-label": "Previous page"
3645
+ },
3646
+ /* @__PURE__ */ import_react27.default.createElement(import_ChevronLeftRounded.default, null)
3647
+ )), /* @__PURE__ */ import_react27.default.createElement(
3648
+ Autocomplete_default,
3649
+ {
3650
+ size,
3651
+ value: `${paginationModel.page}`,
3652
+ onChange: (event) => {
3653
+ if (event.target.value) {
3654
+ handlePageChange(parseInt(event.target.value, 10));
3655
+ }
3656
+ },
3657
+ options: pageOptions,
3658
+ sx: {
3659
+ width: {
3660
+ sm: "80px",
3661
+ md: "100px",
3662
+ lg: "120px"
3663
+ }[size]
3664
+ }
3665
+ }
3666
+ ), /* @__PURE__ */ import_react27.default.createElement(
3667
+ Typography_default,
3668
+ {
3669
+ level: `body-${size}`,
3670
+ sx: (theme) => ({
3671
+ color: theme.palette.text.secondary,
3672
+ fontWeight: 500
3673
+ })
3674
+ },
3675
+ "/ ",
3676
+ lastPage
3677
+ ), /* @__PURE__ */ import_react27.default.createElement(Stack_default, { direction: "row" }, /* @__PURE__ */ import_react27.default.createElement(
3678
+ PaginationIconButton,
3679
+ {
3680
+ size,
3681
+ variant: "plain",
3682
+ color: "neutral",
3683
+ onClick: () => handlePageChange(paginationModel.page + 1),
3684
+ disabled: paginationModel.page === lastPage,
3685
+ "aria-label": "Next page"
3686
+ },
3687
+ /* @__PURE__ */ import_react27.default.createElement(import_ChevronRightRounded.default, null)
3688
+ ), /* @__PURE__ */ import_react27.default.createElement(
3689
+ PaginationIconButton,
3690
+ {
3691
+ size,
3692
+ variant: "plain",
3693
+ color: "neutral",
3694
+ onClick: () => handlePageChange(lastPage),
3695
+ disabled: paginationModel.page === lastPage,
3696
+ "aria-label": "Last page"
3697
+ },
3698
+ /* @__PURE__ */ import_react27.default.createElement(import_LastPageRounded.default, null)
3699
+ ))));
3700
+ }
3617
3701
  return /* @__PURE__ */ import_react27.default.createElement(PaginationRoot, { ...innerProps }, /* @__PURE__ */ import_react27.default.createElement(PaginationContainer, { direction: "row", size, alignItems: "center" }, /* @__PURE__ */ import_react27.default.createElement(
3618
3702
  PaginationIconButton,
3619
3703
  {
@@ -3624,7 +3708,7 @@ function Pagination(props) {
3624
3708
  disabled: paginationModel.page === firstPage,
3625
3709
  "aria-label": "Previous page"
3626
3710
  },
3627
- /* @__PURE__ */ import_react27.default.createElement(import_ChevronLeft2.default, null)
3711
+ /* @__PURE__ */ import_react27.default.createElement(import_ChevronLeftRounded.default, null)
3628
3712
  ), paginationModel.page !== firstPage && /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { size, variant: "plain", color: "neutral", onClick: () => handlePageChange(firstPage) }, firstPage), isMoreBeforePages && /* @__PURE__ */ import_react27.default.createElement(
3629
3713
  PaginationButton,
3630
3714
  {
@@ -3635,7 +3719,7 @@ function Pagination(props) {
3635
3719
  "aria-label": "More previous pages"
3636
3720
  },
3637
3721
  "..."
3638
- ), beforePages.map((p) => /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { key: p, size, variant: "plain", color: "neutral", onClick: () => handlePageChange(p) }, p)), /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { active: "active", size, "aria-current": "page" }, paginationModel.page), afterPages.map((p) => /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { key: p, size, variant: "plain", color: "neutral", onClick: () => handlePageChange(p) }, p)), isMoreAfterPages && /* @__PURE__ */ import_react27.default.createElement(
3722
+ ), beforePages.map((p) => /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { key: p, size, variant: "plain", color: "neutral", onClick: () => handlePageChange(p) }, p)), /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { active: "true", size, "aria-current": "page" }, paginationModel.page), afterPages.map((p) => /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { key: p, size, variant: "plain", color: "neutral", onClick: () => handlePageChange(p) }, p)), isMoreAfterPages && /* @__PURE__ */ import_react27.default.createElement(
3639
3723
  PaginationButton,
3640
3724
  {
3641
3725
  size,
@@ -3655,7 +3739,7 @@ function Pagination(props) {
3655
3739
  disabled: paginationModel.page === lastPage,
3656
3740
  "aria-label": "Next page"
3657
3741
  },
3658
- /* @__PURE__ */ import_react27.default.createElement(import_ChevronRight2.default, null)
3742
+ /* @__PURE__ */ import_react27.default.createElement(import_ChevronRightRounded.default, null)
3659
3743
  )));
3660
3744
  }
3661
3745
  Pagination.displayName = "Pagination";
@@ -4500,11 +4584,52 @@ var InsetDrawer = (0, import_joy43.styled)(import_joy43.Drawer)(({ theme }) => (
4500
4584
 
4501
4585
  // src/components/FilterableCheckboxGroup/FilterableCheckboxGroup.tsx
4502
4586
  var import_react34 = __toESM(require("react"));
4503
- var import_joy44 = require("@mui/joy");
4504
4587
  var import_Search = __toESM(require("@mui/icons-material/Search"));
4505
4588
  var import_react_virtual3 = require("@tanstack/react-virtual");
4589
+ function LabelWithTooltip(props) {
4590
+ const { label, size } = props;
4591
+ const labelContentRef = (0, import_react34.useRef)(null);
4592
+ const [isOverflowing, setIsOverflowing] = (0, import_react34.useState)(false);
4593
+ const labelContent = /* @__PURE__ */ import_react34.default.createElement(
4594
+ "span",
4595
+ {
4596
+ ref: labelContentRef,
4597
+ style: {
4598
+ textOverflow: "ellipsis",
4599
+ overflow: "hidden",
4600
+ whiteSpace: "nowrap",
4601
+ display: "block",
4602
+ position: "relative",
4603
+ zIndex: 1,
4604
+ cursor: "pointer"
4605
+ }
4606
+ },
4607
+ label
4608
+ );
4609
+ (0, import_react34.useEffect)(() => {
4610
+ const element = labelContentRef.current;
4611
+ if (element) {
4612
+ setIsOverflowing(element.scrollWidth > element.clientWidth);
4613
+ }
4614
+ }, [label]);
4615
+ if (isOverflowing) {
4616
+ return /* @__PURE__ */ import_react34.default.createElement(Tooltip_default, { variant: "solid", size, title: label, placement: "bottom-start" }, labelContent);
4617
+ }
4618
+ return labelContent;
4619
+ }
4506
4620
  function FilterableCheckboxGroup(props) {
4507
- const { value, options, label, placeholder, helperText, size = "md", required, onChange, maxHeight = 300 } = props;
4621
+ const {
4622
+ value,
4623
+ options,
4624
+ label,
4625
+ placeholder,
4626
+ helperText,
4627
+ size = "md",
4628
+ required,
4629
+ onChange,
4630
+ maxHeight = 300,
4631
+ disabled
4632
+ } = props;
4508
4633
  const [searchTerm, setSearchTerm] = (0, import_react34.useState)("");
4509
4634
  const [sortedOptions, setSortedOptions] = (0, import_react34.useState)(options);
4510
4635
  const [internalValue, setInternalValue] = useControlledState(
@@ -4582,37 +4707,47 @@ function FilterableCheckboxGroup(props) {
4582
4707
  const handleSelectAll = (0, import_react34.useCallback)(
4583
4708
  (event) => {
4584
4709
  const checked = event.target.checked;
4710
+ const enabledOptions = filteredOptions.filter((option) => !option.disabled);
4711
+ const disabledSelectedValues = internalValue.filter(
4712
+ (v) => filteredOptions.some((opt) => opt.value === v && opt.disabled)
4713
+ );
4585
4714
  if (checked) {
4586
- setInternalValue(filteredOptions.map((option) => option.value));
4715
+ const enabledValues = enabledOptions.map((option) => option.value);
4716
+ setInternalValue([...disabledSelectedValues, ...enabledValues]);
4587
4717
  } else {
4588
- setInternalValue([]);
4718
+ setInternalValue(disabledSelectedValues);
4589
4719
  }
4590
4720
  },
4591
- [filteredOptions, setInternalValue]
4721
+ [filteredOptions, internalValue, setInternalValue]
4592
4722
  );
4593
- const isAllSelected = filteredOptions.length > 0 && filteredOptions.every((option) => internalValue.includes(option.value));
4594
- const isIndeterminate = !isAllSelected && filteredOptions.some((option) => internalValue.includes(option.value));
4595
- return /* @__PURE__ */ import_react34.default.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ import_react34.default.createElement(FormControl_default, { required, size }, label && /* @__PURE__ */ import_react34.default.createElement(FormLabel_default, null, label), /* @__PURE__ */ import_react34.default.createElement(
4596
- import_joy44.Input,
4723
+ const enabledFilteredOptions = (0, import_react34.useMemo)(() => filteredOptions.filter((option) => !option.disabled), [filteredOptions]);
4724
+ const isAllSelected = enabledFilteredOptions.length > 0 && enabledFilteredOptions.every((option) => internalValue.includes(option.value));
4725
+ const isIndeterminate = !isAllSelected && enabledFilteredOptions.some((option) => internalValue.includes(option.value));
4726
+ return /* @__PURE__ */ import_react34.default.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ import_react34.default.createElement(
4727
+ Input_default,
4597
4728
  {
4729
+ label,
4730
+ helperText,
4731
+ required,
4598
4732
  variant: "outlined",
4599
4733
  color: "neutral",
4600
4734
  placeholder,
4601
4735
  value: searchTerm,
4602
4736
  onChange: handleSearchChange,
4603
4737
  size,
4738
+ disabled,
4604
4739
  endDecorator: /* @__PURE__ */ import_react34.default.createElement(import_Search.default, null)
4605
4740
  }
4606
- ), helperText && /* @__PURE__ */ import_react34.default.createElement(FormHelperText_default, null, helperText)), filteredOptions.length === 0 ? /* @__PURE__ */ import_react34.default.createElement(
4607
- import_joy44.Stack,
4741
+ ), filteredOptions.length === 0 ? /* @__PURE__ */ import_react34.default.createElement(
4742
+ Stack_default,
4608
4743
  {
4609
- sx: {
4744
+ sx: (theme) => ({
4610
4745
  padding: "20px 12px",
4611
4746
  justifyContent: "center",
4612
4747
  alignItems: "center",
4613
4748
  fontSize: noOptionsFontSize,
4614
- color: "#A2AAB8"
4615
- }
4749
+ color: theme.palette.neutral.softDisabledColor
4750
+ })
4616
4751
  },
4617
4752
  "No options found."
4618
4753
  ) : /* @__PURE__ */ import_react34.default.createElement(
@@ -4634,6 +4769,7 @@ function FilterableCheckboxGroup(props) {
4634
4769
  indeterminate: isIndeterminate,
4635
4770
  onChange: handleSelectAll,
4636
4771
  size,
4772
+ disabled,
4637
4773
  slotProps: {
4638
4774
  action: {
4639
4775
  sx: { top: 0, left: 0, bottom: 0, right: 0 }
@@ -4643,7 +4779,7 @@ function FilterableCheckboxGroup(props) {
4643
4779
  }
4644
4780
  ),
4645
4781
  /* @__PURE__ */ import_react34.default.createElement(
4646
- import_joy44.Stack,
4782
+ Stack_default,
4647
4783
  {
4648
4784
  sx: {
4649
4785
  height: `${virtualizer.getTotalSize()}px`,
@@ -4656,13 +4792,15 @@ function FilterableCheckboxGroup(props) {
4656
4792
  Checkbox_default,
4657
4793
  {
4658
4794
  key: virtualRow.key,
4659
- label: option.label,
4795
+ label: /* @__PURE__ */ import_react34.default.createElement(LabelWithTooltip, { label: option.label, size }),
4660
4796
  checked: internalValue.includes(option.value),
4661
4797
  onChange: handleCheckboxChange(option.value),
4662
4798
  size,
4799
+ disabled: disabled || option.disabled,
4663
4800
  slotProps: {
4664
4801
  action: {
4665
4802
  sx: { top: 0, left: 0, bottom: 0, right: 0 }
4803
+ // NOTE: 불필요한 좌우 스크롤 방지
4666
4804
  }
4667
4805
  },
4668
4806
  sx: {
@@ -4682,11 +4820,11 @@ function FilterableCheckboxGroup(props) {
4682
4820
  FilterableCheckboxGroup.displayName = "FilterableCheckboxGroup";
4683
4821
 
4684
4822
  // src/components/Grid/Grid.tsx
4685
- var import_joy45 = require("@mui/joy");
4823
+ var import_joy44 = require("@mui/joy");
4686
4824
 
4687
4825
  // src/components/IconMenuButton/IconMenuButton.tsx
4688
4826
  var import_react35 = __toESM(require("react"));
4689
- var import_joy46 = require("@mui/joy");
4827
+ var import_joy45 = require("@mui/joy");
4690
4828
  function IconMenuButton(props) {
4691
4829
  const {
4692
4830
  size,
@@ -4700,7 +4838,7 @@ function IconMenuButton(props) {
4700
4838
  } = props;
4701
4839
  if (!items.length) {
4702
4840
  return /* @__PURE__ */ import_react35.default.createElement(
4703
- import_joy46.IconButton,
4841
+ import_joy45.IconButton,
4704
4842
  {
4705
4843
  component: props.buttonComponent ?? "button",
4706
4844
  size,
@@ -4714,9 +4852,9 @@ function IconMenuButton(props) {
4714
4852
  );
4715
4853
  }
4716
4854
  return /* @__PURE__ */ import_react35.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react35.default.createElement(
4717
- import_joy46.MenuButton,
4855
+ import_joy45.MenuButton,
4718
4856
  {
4719
- slots: { root: import_joy46.IconButton },
4857
+ slots: { root: import_joy45.IconButton },
4720
4858
  slotProps: {
4721
4859
  root: {
4722
4860
  component: props.buttonComponent ?? "button",
@@ -4736,8 +4874,8 @@ IconMenuButton.displayName = "IconMenuButton";
4736
4874
 
4737
4875
  // src/components/Markdown/Markdown.tsx
4738
4876
  var import_react36 = __toESM(require("react"));
4877
+ var import_joy46 = require("@mui/joy");
4739
4878
  var import_joy47 = require("@mui/joy");
4740
- var import_joy48 = require("@mui/joy");
4741
4879
  var import_remark_gfm = __toESM(require("remark-gfm"));
4742
4880
  var LazyReactMarkdown = (0, import_react36.lazy)(() => import("react-markdown"));
4743
4881
  var Markdown = (props) => {
@@ -4767,7 +4905,7 @@ var Markdown = (props) => {
4767
4905
  return /* @__PURE__ */ import_react36.default.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ import_react36.default.createElement(
4768
4906
  import_react36.Suspense,
4769
4907
  {
4770
- fallback: fallback || /* @__PURE__ */ import_react36.default.createElement(Typography, null, /* @__PURE__ */ import_react36.default.createElement(import_joy47.Skeleton, null, content || ""))
4908
+ fallback: fallback || /* @__PURE__ */ import_react36.default.createElement(Typography, null, /* @__PURE__ */ import_react36.default.createElement(import_joy46.Skeleton, null, content || ""))
4771
4909
  },
4772
4910
  /* @__PURE__ */ import_react36.default.createElement(
4773
4911
  LazyReactMarkdown,
@@ -4782,7 +4920,7 @@ var Markdown = (props) => {
4782
4920
  h3: ({ children }) => /* @__PURE__ */ import_react36.default.createElement(Typography, { color, textColor, level: "h3" }, children),
4783
4921
  h4: ({ children }) => /* @__PURE__ */ import_react36.default.createElement(Typography, { color, textColor, level: "h4" }, children),
4784
4922
  p: ({ children, node }) => /* @__PURE__ */ import_react36.default.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
4785
- a: ({ children, href }) => /* @__PURE__ */ import_react36.default.createElement(import_joy48.Link, { href, target: defaultLinkAction }, children),
4923
+ a: ({ children, href }) => /* @__PURE__ */ import_react36.default.createElement(import_joy47.Link, { href, target: defaultLinkAction }, children),
4786
4924
  hr: () => /* @__PURE__ */ import_react36.default.createElement(Divider, null),
4787
4925
  b: ({ children }) => /* @__PURE__ */ import_react36.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
4788
4926
  strong: ({ children }) => /* @__PURE__ */ import_react36.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
@@ -4796,7 +4934,7 @@ Markdown.displayName = "Markdown";
4796
4934
 
4797
4935
  // src/components/MenuButton/MenuButton.tsx
4798
4936
  var import_react37 = __toESM(require("react"));
4799
- var import_joy49 = require("@mui/joy");
4937
+ var import_joy48 = require("@mui/joy");
4800
4938
  var import_ExpandMore = __toESM(require("@mui/icons-material/ExpandMore"));
4801
4939
  function MenuButton(props) {
4802
4940
  const {
@@ -4814,7 +4952,7 @@ function MenuButton(props) {
4814
4952
  } = props;
4815
4953
  if (!items.length) {
4816
4954
  return /* @__PURE__ */ import_react37.default.createElement(
4817
- import_joy49.Button,
4955
+ import_joy48.Button,
4818
4956
  {
4819
4957
  component: props.buttonComponent ?? "button",
4820
4958
  size,
@@ -4830,7 +4968,7 @@ function MenuButton(props) {
4830
4968
  );
4831
4969
  }
4832
4970
  return /* @__PURE__ */ import_react37.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react37.default.createElement(
4833
- import_joy49.MenuButton,
4971
+ import_joy48.MenuButton,
4834
4972
  {
4835
4973
  component: props.buttonComponent ?? "button",
4836
4974
  size,
@@ -4850,15 +4988,15 @@ MenuButton.displayName = "MenuButton";
4850
4988
  // src/components/MonthPicker/MonthPicker.tsx
4851
4989
  var import_react38 = __toESM(require("react"));
4852
4990
  var import_CalendarToday3 = __toESM(require("@mui/icons-material/CalendarToday"));
4853
- var import_joy50 = require("@mui/joy");
4991
+ var import_joy49 = require("@mui/joy");
4854
4992
  var import_base4 = require("@mui/base");
4855
- var StyledPopper3 = (0, import_joy50.styled)(import_base4.Popper, {
4993
+ var StyledPopper3 = (0, import_joy49.styled)(import_base4.Popper, {
4856
4994
  name: "MonthPicker",
4857
4995
  slot: "popper"
4858
4996
  })(({ theme }) => ({
4859
4997
  zIndex: theme.zIndex.tooltip
4860
4998
  }));
4861
- var CalendarSheet3 = (0, import_joy50.styled)(Sheet_default, {
4999
+ var CalendarSheet3 = (0, import_joy49.styled)(Sheet_default, {
4862
5000
  name: "MonthPicker",
4863
5001
  slot: "sheet",
4864
5002
  overridesResolver: (props, styles) => styles.root
@@ -4867,7 +5005,7 @@ var CalendarSheet3 = (0, import_joy50.styled)(Sheet_default, {
4867
5005
  boxShadow: theme.shadow.md,
4868
5006
  borderRadius: theme.radius.md
4869
5007
  }));
4870
- var MonthPickerRoot = (0, import_joy50.styled)("div", {
5008
+ var MonthPickerRoot = (0, import_joy49.styled)("div", {
4871
5009
  name: "MonthPicker",
4872
5010
  slot: "root",
4873
5011
  overridesResolver: (props, styles) => styles.root
@@ -4904,7 +5042,7 @@ function parseDate3(dateString, format) {
4904
5042
  return result;
4905
5043
  }
4906
5044
  var MonthPicker = (0, import_react38.forwardRef)((inProps, ref) => {
4907
- const props = (0, import_joy50.useThemeProps)({ props: inProps, name: "MonthPicker" });
5045
+ const props = (0, import_joy49.useThemeProps)({ props: inProps, name: "MonthPicker" });
4908
5046
  const {
4909
5047
  onChange,
4910
5048
  disabled,
@@ -5104,15 +5242,15 @@ var MonthPicker = (0, import_react38.forwardRef)((inProps, ref) => {
5104
5242
  var import_react39 = __toESM(require("react"));
5105
5243
  var import_react_imask3 = require("react-imask");
5106
5244
  var import_CalendarToday4 = __toESM(require("@mui/icons-material/CalendarToday"));
5107
- var import_joy51 = require("@mui/joy");
5245
+ var import_joy50 = require("@mui/joy");
5108
5246
  var import_base5 = require("@mui/base");
5109
- var StyledPopper4 = (0, import_joy51.styled)(import_base5.Popper, {
5247
+ var StyledPopper4 = (0, import_joy50.styled)(import_base5.Popper, {
5110
5248
  name: "MonthRangePicker",
5111
5249
  slot: "popper"
5112
5250
  })(({ theme }) => ({
5113
5251
  zIndex: theme.zIndex.tooltip
5114
5252
  }));
5115
- var CalendarSheet4 = (0, import_joy51.styled)(Sheet_default, {
5253
+ var CalendarSheet4 = (0, import_joy50.styled)(Sheet_default, {
5116
5254
  name: "MonthRangePicker",
5117
5255
  slot: "sheet",
5118
5256
  overridesResolver: (props, styles) => styles.root
@@ -5122,7 +5260,7 @@ var CalendarSheet4 = (0, import_joy51.styled)(Sheet_default, {
5122
5260
  boxShadow: theme.shadow.md,
5123
5261
  borderRadius: theme.radius.md
5124
5262
  }));
5125
- var MonthRangePickerRoot = (0, import_joy51.styled)("div", {
5263
+ var MonthRangePickerRoot = (0, import_joy50.styled)("div", {
5126
5264
  name: "MonthRangePicker",
5127
5265
  slot: "root",
5128
5266
  overridesResolver: (props, styles) => styles.root
@@ -5190,7 +5328,7 @@ var TextMaskAdapter7 = import_react39.default.forwardRef(function TextMaskAdapte
5190
5328
  );
5191
5329
  });
5192
5330
  var MonthRangePicker = (0, import_react39.forwardRef)((inProps, ref) => {
5193
- const props = (0, import_joy51.useThemeProps)({ props: inProps, name: "MonthRangePicker" });
5331
+ const props = (0, import_joy50.useThemeProps)({ props: inProps, name: "MonthRangePicker" });
5194
5332
  const {
5195
5333
  onChange,
5196
5334
  disabled,
@@ -5341,21 +5479,21 @@ MonthRangePicker.displayName = "MonthRangePicker";
5341
5479
 
5342
5480
  // src/components/NavigationGroup/NavigationGroup.tsx
5343
5481
  var import_react40 = __toESM(require("react"));
5344
- var import_joy52 = require("@mui/joy");
5345
- var AccordionSummary2 = (0, import_joy52.styled)(import_joy52.AccordionSummary, {
5482
+ var import_joy51 = require("@mui/joy");
5483
+ var AccordionSummary2 = (0, import_joy51.styled)(import_joy51.AccordionSummary, {
5346
5484
  name: "NavigationGroup",
5347
5485
  slot: "Summary",
5348
5486
  shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
5349
5487
  })(({ theme, useIcon, level }) => ({
5350
- [`& .${import_joy52.accordionSummaryClasses.button}`]: {
5488
+ [`& .${import_joy51.accordionSummaryClasses.button}`]: {
5351
5489
  padding: theme.spacing(4, 6, 4, (useIcon ? 6 : 8) + (level || 0) * 8),
5352
- [`&.${import_joy52.accordionSummaryClasses.expanded}`]: {
5490
+ [`&.${import_joy51.accordionSummaryClasses.expanded}`]: {
5353
5491
  color: theme.palette.primary.plainColor,
5354
5492
  "--Icon-color": theme.palette.primary.plainColor
5355
5493
  }
5356
5494
  }
5357
5495
  }));
5358
- var AccordionDetails2 = (0, import_joy52.styled)(import_joy52.AccordionDetails, {
5496
+ var AccordionDetails2 = (0, import_joy51.styled)(import_joy51.AccordionDetails, {
5359
5497
  name: "NavigationGroup",
5360
5498
  slot: "Details"
5361
5499
  })(({ theme }) => ({
@@ -5364,13 +5502,13 @@ var AccordionDetails2 = (0, import_joy52.styled)(import_joy52.AccordionDetails,
5364
5502
  }));
5365
5503
  function NavigationGroup(props) {
5366
5504
  const { title, children, startDecorator, level, ...rest } = props;
5367
- return /* @__PURE__ */ import_react40.default.createElement(import_joy52.Accordion, { ...rest }, /* @__PURE__ */ import_react40.default.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ import_react40.default.createElement(import_joy52.Stack, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ import_react40.default.createElement(AccordionDetails2, null, children));
5505
+ return /* @__PURE__ */ import_react40.default.createElement(import_joy51.Accordion, { ...rest }, /* @__PURE__ */ import_react40.default.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ import_react40.default.createElement(import_joy51.Stack, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ import_react40.default.createElement(AccordionDetails2, null, children));
5368
5506
  }
5369
5507
 
5370
5508
  // src/components/NavigationItem/NavigationItem.tsx
5371
5509
  var import_react41 = __toESM(require("react"));
5372
- var import_joy53 = require("@mui/joy");
5373
- var ListItemButton = (0, import_joy53.styled)(import_joy53.ListItemButton, {
5510
+ var import_joy52 = require("@mui/joy");
5511
+ var ListItemButton = (0, import_joy52.styled)(import_joy52.ListItemButton, {
5374
5512
  name: "NavigationItem",
5375
5513
  slot: "Button",
5376
5514
  shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
@@ -5384,7 +5522,7 @@ var ListItemButton = (0, import_joy53.styled)(import_joy53.ListItemButton, {
5384
5522
  "&:active": {
5385
5523
  backgroundColor: theme.palette.neutral.plainActiveBg
5386
5524
  },
5387
- [`&.${import_joy53.listItemButtonClasses.selected}`]: {
5525
+ [`&.${import_joy52.listItemButtonClasses.selected}`]: {
5388
5526
  color: theme.palette.primary.plainColor,
5389
5527
  "--Icon-color": theme.palette.primary.plainColor,
5390
5528
  "&:not(:hover):not(:active)": {
@@ -5397,7 +5535,7 @@ function NavigationItem(props) {
5397
5535
  const handleClick = () => {
5398
5536
  onClick?.(id);
5399
5537
  };
5400
- return /* @__PURE__ */ import_react41.default.createElement(import_joy53.ListItem, { ...rest }, /* @__PURE__ */ import_react41.default.createElement(
5538
+ return /* @__PURE__ */ import_react41.default.createElement(import_joy52.ListItem, { ...rest }, /* @__PURE__ */ import_react41.default.createElement(
5401
5539
  ListItemButton,
5402
5540
  {
5403
5541
  level,
@@ -5406,7 +5544,7 @@ function NavigationItem(props) {
5406
5544
  "aria-current": selected,
5407
5545
  onClick: handleClick
5408
5546
  },
5409
- startDecorator && /* @__PURE__ */ import_react41.default.createElement(import_joy53.ListItemDecorator, null, startDecorator),
5547
+ startDecorator && /* @__PURE__ */ import_react41.default.createElement(import_joy52.ListItemDecorator, null, startDecorator),
5410
5548
  children
5411
5549
  ));
5412
5550
  }
@@ -5453,7 +5591,7 @@ Navigator.displayName = "Navigator";
5453
5591
  // src/components/PercentageInput/PercentageInput.tsx
5454
5592
  var import_react43 = __toESM(require("react"));
5455
5593
  var import_react_number_format2 = require("react-number-format");
5456
- var import_joy54 = require("@mui/joy");
5594
+ var import_joy53 = require("@mui/joy");
5457
5595
  var padDecimal = (value, decimalScale) => {
5458
5596
  const [integer, decimal = ""] = `${value}`.split(".");
5459
5597
  return Number(`${integer}${decimal.padEnd(decimalScale, "0")}`);
@@ -5480,14 +5618,14 @@ var TextMaskAdapter9 = import_react43.default.forwardRef(function TextMaskAdapte
5480
5618
  }
5481
5619
  );
5482
5620
  });
5483
- var PercentageInputRoot = (0, import_joy54.styled)(Input_default, {
5621
+ var PercentageInputRoot = (0, import_joy53.styled)(Input_default, {
5484
5622
  name: "PercentageInput",
5485
5623
  slot: "Root",
5486
5624
  overridesResolver: (props, styles) => styles.root
5487
5625
  })({});
5488
5626
  var PercentageInput = import_react43.default.forwardRef(
5489
5627
  function PercentageInput2(inProps, ref) {
5490
- const props = (0, import_joy54.useThemeProps)({ props: inProps, name: "PercentageInput" });
5628
+ const props = (0, import_joy53.useThemeProps)({ props: inProps, name: "PercentageInput" });
5491
5629
  const {
5492
5630
  name,
5493
5631
  onChange,
@@ -5567,12 +5705,12 @@ var PercentageInput = import_react43.default.forwardRef(
5567
5705
  PercentageInput.displayName = "PercentageInput";
5568
5706
 
5569
5707
  // src/components/Radio/Radio.tsx
5570
- var import_joy55 = require("@mui/joy");
5708
+ var import_joy54 = require("@mui/joy");
5571
5709
  var import_framer_motion27 = require("framer-motion");
5572
- var MotionRadio = (0, import_framer_motion27.motion)(import_joy55.Radio);
5710
+ var MotionRadio = (0, import_framer_motion27.motion)(import_joy54.Radio);
5573
5711
  var Radio = MotionRadio;
5574
5712
  Radio.displayName = "Radio";
5575
- var MotionRadioGroup = (0, import_framer_motion27.motion)(import_joy55.RadioGroup);
5713
+ var MotionRadioGroup = (0, import_framer_motion27.motion)(import_joy54.RadioGroup);
5576
5714
  var RadioGroup = MotionRadioGroup;
5577
5715
  RadioGroup.displayName = "RadioGroup";
5578
5716
 
@@ -5586,18 +5724,18 @@ RadioList.displayName = "RadioList";
5586
5724
 
5587
5725
  // src/components/Stepper/Stepper.tsx
5588
5726
  var import_react45 = __toESM(require("react"));
5589
- var import_joy56 = require("@mui/joy");
5727
+ var import_joy55 = require("@mui/joy");
5590
5728
  var import_Check = __toESM(require("@mui/icons-material/Check"));
5591
5729
  var import_framer_motion28 = require("framer-motion");
5592
- var Step = (0, import_joy56.styled)(import_joy56.Step)({});
5730
+ var Step = (0, import_joy55.styled)(import_joy55.Step)({});
5593
5731
  Step.displayName = "Step";
5594
- var StepIndicator = (0, import_joy56.styled)(import_joy56.StepIndicator)({});
5732
+ var StepIndicator = (0, import_joy55.styled)(import_joy55.StepIndicator)({});
5595
5733
  StepIndicator.displayName = "StepIndicator";
5596
- var StyledStepper = (0, import_joy56.styled)(import_joy56.Stepper)(({ theme }) => ({
5734
+ var StyledStepper = (0, import_joy55.styled)(import_joy55.Stepper)(({ theme }) => ({
5597
5735
  "--StepIndicator-size": "24px",
5598
5736
  "--Step-gap": theme.spacing(2),
5599
5737
  "--joy-palette-success-solidBg": "var(--joy-palette-success-400)",
5600
- [`& .${import_joy56.stepIndicatorClasses.root}`]: {
5738
+ [`& .${import_joy55.stepIndicatorClasses.root}`]: {
5601
5739
  fontSize: "var(--ceed-fontSize-xs)"
5602
5740
  }
5603
5741
  }));
@@ -5621,24 +5759,24 @@ function Stepper(props) {
5621
5759
  sx: (theme) => ({
5622
5760
  "--StepIndicator-size": "24px",
5623
5761
  "--Step-gap": theme.spacing(2),
5624
- [`& .${import_joy56.stepIndicatorClasses.root}`]: {
5762
+ [`& .${import_joy55.stepIndicatorClasses.root}`]: {
5625
5763
  fontSize: "var(--ceed-fontSize-xs)"
5626
5764
  },
5627
- [`& .${import_joy56.stepClasses.completed}`]: {
5765
+ [`& .${import_joy55.stepClasses.completed}`]: {
5628
5766
  "&::after": { bgcolor: activeLineColor },
5629
- [`& .${import_joy56.stepIndicatorClasses.root}`]: {
5767
+ [`& .${import_joy55.stepIndicatorClasses.root}`]: {
5630
5768
  bgcolor: activeColor
5631
5769
  }
5632
5770
  },
5633
- [`& .${import_joy56.stepClasses.active}`]: {
5771
+ [`& .${import_joy55.stepClasses.active}`]: {
5634
5772
  "&::after": { bgcolor: inactiveLineColor },
5635
- [`& .${import_joy56.stepIndicatorClasses.root}`]: {
5773
+ [`& .${import_joy55.stepIndicatorClasses.root}`]: {
5636
5774
  bgcolor: activeColor
5637
5775
  }
5638
5776
  },
5639
- [`& .${import_joy56.stepClasses.disabled}`]: {
5777
+ [`& .${import_joy55.stepClasses.disabled}`]: {
5640
5778
  "&::after": { bgcolor: inactiveLineColor },
5641
- [`& .${import_joy56.stepIndicatorClasses.root}`]: {
5779
+ [`& .${import_joy55.stepIndicatorClasses.root}`]: {
5642
5780
  bgcolor: theme.vars.palette.background.surface,
5643
5781
  borderColor: theme.vars.palette.neutral.outlinedBorder,
5644
5782
  borderWidth: "1px",
@@ -5679,10 +5817,10 @@ Stepper.displayName = "Stepper";
5679
5817
 
5680
5818
  // src/components/Switch/Switch.tsx
5681
5819
  var import_react46 = __toESM(require("react"));
5682
- var import_joy57 = require("@mui/joy");
5820
+ var import_joy56 = require("@mui/joy");
5683
5821
  var import_framer_motion29 = require("framer-motion");
5684
- var MotionSwitch = (0, import_framer_motion29.motion)(import_joy57.Switch);
5685
- var StyledThumb = (0, import_joy57.styled)(import_framer_motion29.motion.div)({
5822
+ var MotionSwitch = (0, import_framer_motion29.motion)(import_joy56.Switch);
5823
+ var StyledThumb = (0, import_joy56.styled)(import_framer_motion29.motion.div)({
5686
5824
  "--Icon-fontSize": "calc(var(--Switch-thumbSize) * 0.75)",
5687
5825
  display: "inline-flex",
5688
5826
  justifyContent: "center",
@@ -5695,7 +5833,7 @@ var StyledThumb = (0, import_joy57.styled)(import_framer_motion29.motion.div)({
5695
5833
  boxShadow: "var(--Switch-thumbShadow)",
5696
5834
  color: "var(--Switch-thumbColor)",
5697
5835
  backgroundColor: "var(--Switch-thumbBackground)",
5698
- [`&.${import_joy57.switchClasses.checked}`]: {
5836
+ [`&.${import_joy56.switchClasses.checked}`]: {
5699
5837
  left: "unset",
5700
5838
  right: "var(--Switch-thumbOffset)"
5701
5839
  }
@@ -5722,18 +5860,18 @@ Switch.displayName = "Switch";
5722
5860
 
5723
5861
  // src/components/Tabs/Tabs.tsx
5724
5862
  var import_react47 = __toESM(require("react"));
5725
- var import_joy58 = require("@mui/joy");
5726
- var StyledTabs = (0, import_joy58.styled)(import_joy58.Tabs)(({ theme }) => ({
5863
+ var import_joy57 = require("@mui/joy");
5864
+ var StyledTabs = (0, import_joy57.styled)(import_joy57.Tabs)(({ theme }) => ({
5727
5865
  backgroundColor: theme.palette.background.body
5728
5866
  }));
5729
5867
  var Tabs = StyledTabs;
5730
5868
  Tabs.displayName = "Tabs";
5731
- var StyledTab = (0, import_joy58.styled)(import_joy58.Tab)(({ theme }) => ({
5869
+ var StyledTab = (0, import_joy57.styled)(import_joy57.Tab)(({ theme }) => ({
5732
5870
  gap: theme.spacing(2),
5733
- [`&:not(.${import_joy58.tabClasses.selected})`]: {
5871
+ [`&:not(.${import_joy57.tabClasses.selected})`]: {
5734
5872
  color: theme.palette.neutral[700]
5735
5873
  },
5736
- [`&.${import_joy58.tabClasses.variantPlain}`]: {
5874
+ [`&.${import_joy57.tabClasses.variantPlain}`]: {
5737
5875
  backgroundColor: theme.palette.background.body
5738
5876
  }
5739
5877
  }));
@@ -5741,12 +5879,12 @@ var Tab = (0, import_react47.forwardRef)(function Tab2({ startDecorator, endDeco
5741
5879
  return /* @__PURE__ */ import_react47.default.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
5742
5880
  });
5743
5881
  Tab.displayName = "Tab";
5744
- var TabList = import_joy58.TabList;
5745
- var TabPanel = import_joy58.TabPanel;
5882
+ var TabList = import_joy57.TabList;
5883
+ var TabPanel = import_joy57.TabPanel;
5746
5884
 
5747
5885
  // src/components/ThemeProvider/ThemeProvider.tsx
5748
5886
  var import_react48 = __toESM(require("react"));
5749
- var import_joy59 = require("@mui/joy");
5887
+ var import_joy58 = require("@mui/joy");
5750
5888
  var colorScheme = {
5751
5889
  palette: {
5752
5890
  danger: {
@@ -5799,7 +5937,7 @@ var colorScheme = {
5799
5937
  }
5800
5938
  }
5801
5939
  };
5802
- var defaultTheme = (0, import_joy59.extendTheme)({
5940
+ var defaultTheme = (0, import_joy58.extendTheme)({
5803
5941
  cssVarPrefix: "ceed",
5804
5942
  spacing: 4,
5805
5943
  breakpoints: {
@@ -5851,7 +5989,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5851
5989
  },
5852
5990
  styleOverrides: {
5853
5991
  root: {
5854
- [`.${import_joy59.inputClasses.root}`]: {
5992
+ [`.${import_joy58.inputClasses.root}`]: {
5855
5993
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
5856
5994
  "font-family": "monospace"
5857
5995
  }
@@ -5864,7 +6002,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5864
6002
  },
5865
6003
  styleOverrides: {
5866
6004
  root: {
5867
- [`.${import_joy59.inputClasses.root}`]: {
6005
+ [`.${import_joy58.inputClasses.root}`]: {
5868
6006
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
5869
6007
  "font-family": "monospace"
5870
6008
  }
@@ -5877,7 +6015,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5877
6015
  },
5878
6016
  styleOverrides: {
5879
6017
  root: {
5880
- [`.${import_joy59.inputClasses.root}`]: {
6018
+ [`.${import_joy58.inputClasses.root}`]: {
5881
6019
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
5882
6020
  "font-family": "monospace"
5883
6021
  }
@@ -5890,7 +6028,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5890
6028
  },
5891
6029
  styleOverrides: {
5892
6030
  root: {
5893
- [`.${import_joy59.inputClasses.root}`]: {
6031
+ [`.${import_joy58.inputClasses.root}`]: {
5894
6032
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
5895
6033
  "font-family": "monospace"
5896
6034
  }
@@ -5903,7 +6041,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5903
6041
  },
5904
6042
  styleOverrides: {
5905
6043
  root: {
5906
- [`.${import_joy59.inputClasses.root}`]: {
6044
+ [`.${import_joy58.inputClasses.root}`]: {
5907
6045
  // NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
5908
6046
  "font-family": "monospace"
5909
6047
  }
@@ -5945,7 +6083,7 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5945
6083
  outline: `${theme.palette.primary[500]} solid 2px`,
5946
6084
  outlineOffset: "-2px"
5947
6085
  },
5948
- [`& .${import_joy59.checkboxClasses.root}`]: {
6086
+ [`& .${import_joy58.checkboxClasses.root}`]: {
5949
6087
  verticalAlign: "middle"
5950
6088
  }
5951
6089
  })
@@ -5995,13 +6133,13 @@ var defaultTheme = (0, import_joy59.extendTheme)({
5995
6133
  });
5996
6134
  function ThemeProvider(props) {
5997
6135
  const theme = props.theme || defaultTheme;
5998
- return /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, /* @__PURE__ */ import_react48.default.createElement(import_joy59.CssVarsProvider, { theme }, /* @__PURE__ */ import_react48.default.createElement(import_joy59.CssBaseline, null), props.children));
6136
+ return /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, /* @__PURE__ */ import_react48.default.createElement(import_joy58.CssVarsProvider, { theme }, /* @__PURE__ */ import_react48.default.createElement(import_joy58.CssBaseline, null), props.children));
5999
6137
  }
6000
6138
  ThemeProvider.displayName = "ThemeProvider";
6001
6139
 
6002
6140
  // src/components/Uploader/Uploader.tsx
6003
6141
  var import_react49 = __toESM(require("react"));
6004
- var import_joy60 = require("@mui/joy");
6142
+ var import_joy59 = require("@mui/joy");
6005
6143
  var import_CloudUploadRounded = __toESM(require("@mui/icons-material/CloudUploadRounded"));
6006
6144
  var import_UploadFileRounded = __toESM(require("@mui/icons-material/UploadFileRounded"));
6007
6145
  var import_ClearRounded = __toESM(require("@mui/icons-material/ClearRounded"));
@@ -6023,7 +6161,7 @@ var esmFiles = {
6023
6161
  "@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/prevent-unhandled.js"
6024
6162
  )
6025
6163
  };
6026
- var VisuallyHiddenInput = (0, import_joy60.styled)(import_joy60.Input)({
6164
+ var VisuallyHiddenInput = (0, import_joy59.styled)(import_joy59.Input)({
6027
6165
  width: "1px",
6028
6166
  height: "1px",
6029
6167
  overflow: "hidden",
@@ -6032,18 +6170,18 @@ var VisuallyHiddenInput = (0, import_joy60.styled)(import_joy60.Input)({
6032
6170
  clipPath: "inset(50%)",
6033
6171
  position: "absolute"
6034
6172
  });
6035
- var PreviewRoot = (0, import_joy60.styled)(Stack_default, {
6173
+ var PreviewRoot = (0, import_joy59.styled)(Stack_default, {
6036
6174
  name: "Uploader",
6037
6175
  slot: "PreviewRoot"
6038
6176
  })({});
6039
- var UploadCard = (0, import_joy60.styled)(Card, {
6177
+ var UploadCard = (0, import_joy59.styled)(Card, {
6040
6178
  name: "Uploader",
6041
6179
  slot: "UploadCard"
6042
6180
  })(({ theme }) => ({
6043
6181
  padding: theme.spacing(2.5),
6044
6182
  border: `1px solid ${theme.palette.neutral.outlinedBorder}`
6045
6183
  }));
6046
- var UploadFileIcon = (0, import_joy60.styled)(import_UploadFileRounded.default, {
6184
+ var UploadFileIcon = (0, import_joy59.styled)(import_UploadFileRounded.default, {
6047
6185
  name: "Uploader",
6048
6186
  slot: "UploadFileIcon"
6049
6187
  })(({ theme }) => ({
@@ -6051,7 +6189,7 @@ var UploadFileIcon = (0, import_joy60.styled)(import_UploadFileRounded.default,
6051
6189
  width: "32px",
6052
6190
  height: "32px"
6053
6191
  }));
6054
- var ClearIcon2 = (0, import_joy60.styled)(import_ClearRounded.default, {
6192
+ var ClearIcon2 = (0, import_joy59.styled)(import_ClearRounded.default, {
6055
6193
  name: "Uploader",
6056
6194
  slot: "ClearIcon"
6057
6195
  })(({ theme }) => ({
@@ -6091,13 +6229,13 @@ var Preview = (props) => {
6091
6229
  file.name
6092
6230
  ), !!file.size && /* @__PURE__ */ import_react49.default.createElement(Typography_default, { level: "body-xs", fontWeight: "300", lineHeight: "1.33", textColor: "text.tertiary" }, getFileSize(file.size))), /* @__PURE__ */ import_react49.default.createElement(IconButton_default, { onClick: () => onDelete?.(file) }, /* @__PURE__ */ import_react49.default.createElement(ClearIcon2, null))))));
6093
6231
  };
6094
- var UploaderRoot = (0, import_joy60.styled)(Stack_default, {
6232
+ var UploaderRoot = (0, import_joy59.styled)(Stack_default, {
6095
6233
  name: "Uploader",
6096
6234
  slot: "root"
6097
6235
  })(({ theme }) => ({
6098
6236
  gap: theme.spacing(2)
6099
6237
  }));
6100
- var FileDropZone = (0, import_joy60.styled)(Sheet_default, {
6238
+ var FileDropZone = (0, import_joy59.styled)(Sheet_default, {
6101
6239
  name: "Uploader",
6102
6240
  slot: "dropZone",
6103
6241
  shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"
@@ -6118,7 +6256,7 @@ var FileDropZone = (0, import_joy60.styled)(Sheet_default, {
6118
6256
  }
6119
6257
  })
6120
6258
  );
6121
- var UploaderIcon = (0, import_joy60.styled)(import_CloudUploadRounded.default, {
6259
+ var UploaderIcon = (0, import_joy59.styled)(import_CloudUploadRounded.default, {
6122
6260
  name: "Uploader",
6123
6261
  slot: "iconContainer",
6124
6262
  shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"