@ceed/ads 1.15.0 → 1.16.0-next.10
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/components/FilterMenu/components/FilterableCheckboxGroup.d.ts +11 -0
- package/dist/components/FilterMenu/types.d.ts +10 -2
- package/dist/components/FilterableCheckboxGroup/FilterableCheckboxGroup.d.ts +23 -0
- package/dist/components/FilterableCheckboxGroup/index.d.ts +3 -0
- package/dist/components/Pagination/Pagination.d.ts +1 -0
- package/dist/components/ProfileMenu/ProfileMenu.d.ts +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/inputs/FilterMenu.md +20 -0
- package/dist/components/inputs/FilterableCheckboxGroup.md +205 -0
- package/dist/components/inputs/llms.txt +1 -0
- package/dist/components/navigation/Pagination.md +11 -2
- package/dist/index.cjs +741 -387
- package/dist/index.d.ts +1 -1
- package/dist/index.js +548 -194
- package/dist/llms.txt +1 -0
- package/framer/index.js +43 -43
- package/package.json +4 -3
package/dist/index.cjs
CHANGED
|
@@ -85,17 +85,17 @@ __export(index_exports, {
|
|
|
85
85
|
AccordionSummary: () => AccordionSummary,
|
|
86
86
|
Accordions: () => Accordions,
|
|
87
87
|
Alert: () => Alert,
|
|
88
|
-
AspectRatio: () =>
|
|
88
|
+
AspectRatio: () => import_joy71.AspectRatio,
|
|
89
89
|
Autocomplete: () => Autocomplete,
|
|
90
|
-
AutocompleteListbox: () =>
|
|
91
|
-
AutocompleteOption: () =>
|
|
90
|
+
AutocompleteListbox: () => import_joy71.AutocompleteListbox,
|
|
91
|
+
AutocompleteOption: () => import_joy71.AutocompleteOption,
|
|
92
92
|
Avatar: () => Avatar,
|
|
93
93
|
AvatarGroup: () => import_joy11.AvatarGroup,
|
|
94
|
-
Badge: () =>
|
|
94
|
+
Badge: () => import_joy71.Badge,
|
|
95
95
|
Box: () => Box,
|
|
96
96
|
Breadcrumbs: () => Breadcrumbs,
|
|
97
97
|
Button: () => Button,
|
|
98
|
-
ButtonGroup: () =>
|
|
98
|
+
ButtonGroup: () => import_joy71.ButtonGroup,
|
|
99
99
|
Calendar: () => Calendar,
|
|
100
100
|
Card: () => Card,
|
|
101
101
|
CardActions: () => CardActions,
|
|
@@ -104,9 +104,9 @@ __export(index_exports, {
|
|
|
104
104
|
CardOverflow: () => CardOverflow,
|
|
105
105
|
Checkbox: () => Checkbox,
|
|
106
106
|
Chip: () => Chip,
|
|
107
|
-
CircularProgress: () =>
|
|
107
|
+
CircularProgress: () => import_joy71.CircularProgress,
|
|
108
108
|
Container: () => Container,
|
|
109
|
-
CssBaseline: () =>
|
|
109
|
+
CssBaseline: () => import_joy70.CssBaseline,
|
|
110
110
|
CurrencyInput: () => CurrencyInput,
|
|
111
111
|
DataTable: () => DataTable,
|
|
112
112
|
DatePicker: () => DatePicker,
|
|
@@ -116,27 +116,28 @@ __export(index_exports, {
|
|
|
116
116
|
DialogFrame: () => DialogFrame,
|
|
117
117
|
DialogTitle: () => DialogTitle,
|
|
118
118
|
Divider: () => Divider,
|
|
119
|
-
Drawer: () =>
|
|
119
|
+
Drawer: () => import_joy71.Drawer,
|
|
120
120
|
Dropdown: () => import_joy14.Dropdown,
|
|
121
121
|
FilterMenu: () => FilterMenu,
|
|
122
|
+
FilterableCheckboxGroup: () => FilterableCheckboxGroup,
|
|
122
123
|
FormControl: () => FormControl,
|
|
123
124
|
FormHelperText: () => FormHelperText,
|
|
124
125
|
FormLabel: () => FormLabel,
|
|
125
|
-
Grid: () =>
|
|
126
|
+
Grid: () => import_joy56.Grid,
|
|
126
127
|
IconButton: () => IconButton,
|
|
127
128
|
IconMenuButton: () => IconMenuButton,
|
|
128
129
|
InfoSign: () => InfoSign,
|
|
129
130
|
Input: () => Input,
|
|
130
131
|
InsetDrawer: () => InsetDrawer,
|
|
131
|
-
LinearProgress: () =>
|
|
132
|
-
Link: () =>
|
|
133
|
-
List: () =>
|
|
134
|
-
ListDivider: () =>
|
|
135
|
-
ListItem: () =>
|
|
136
|
-
ListItemButton: () =>
|
|
137
|
-
ListItemContent: () =>
|
|
138
|
-
ListItemDecorator: () =>
|
|
139
|
-
ListSubheader: () =>
|
|
132
|
+
LinearProgress: () => import_joy71.LinearProgress,
|
|
133
|
+
Link: () => import_joy71.Link,
|
|
134
|
+
List: () => import_joy71.List,
|
|
135
|
+
ListDivider: () => import_joy71.ListDivider,
|
|
136
|
+
ListItem: () => import_joy71.ListItem,
|
|
137
|
+
ListItemButton: () => import_joy71.ListItemButton,
|
|
138
|
+
ListItemContent: () => import_joy71.ListItemContent,
|
|
139
|
+
ListItemDecorator: () => import_joy71.ListItemDecorator,
|
|
140
|
+
ListSubheader: () => import_joy71.ListSubheader,
|
|
140
141
|
Markdown: () => Markdown,
|
|
141
142
|
Menu: () => Menu,
|
|
142
143
|
MenuButton: () => MenuButton,
|
|
@@ -161,11 +162,11 @@ __export(index_exports, {
|
|
|
161
162
|
RadioTileGroup: () => RadioTileGroup,
|
|
162
163
|
Select: () => Select,
|
|
163
164
|
Sheet: () => Sheet,
|
|
164
|
-
Skeleton: () =>
|
|
165
|
-
Slider: () =>
|
|
165
|
+
Skeleton: () => import_joy71.Skeleton,
|
|
166
|
+
Slider: () => import_joy71.Slider,
|
|
166
167
|
Stack: () => import_joy3.Stack,
|
|
167
168
|
Step: () => Step,
|
|
168
|
-
StepButton: () =>
|
|
169
|
+
StepButton: () => import_joy71.StepButton,
|
|
169
170
|
StepIndicator: () => StepIndicator,
|
|
170
171
|
Stepper: () => Stepper,
|
|
171
172
|
Switch: () => Switch,
|
|
@@ -181,84 +182,84 @@ __export(index_exports, {
|
|
|
181
182
|
Tooltip: () => Tooltip,
|
|
182
183
|
Typography: () => Typography,
|
|
183
184
|
Uploader: () => Uploader,
|
|
184
|
-
accordionClasses: () =>
|
|
185
|
-
accordionDetailsClasses: () =>
|
|
186
|
-
accordionSummaryClasses: () =>
|
|
187
|
-
accordionsClasses: () =>
|
|
188
|
-
alertClasses: () =>
|
|
189
|
-
aspectRatioClasses: () =>
|
|
190
|
-
autocompleteClasses: () =>
|
|
191
|
-
autocompleteListboxClasses: () =>
|
|
192
|
-
autocompleteOptionClasses: () =>
|
|
193
|
-
avatarClasses: () =>
|
|
194
|
-
avatarGroupClasses: () =>
|
|
195
|
-
badgeClasses: () =>
|
|
196
|
-
boxClasses: () =>
|
|
197
|
-
breadcrumbsClasses: () =>
|
|
198
|
-
buttonClasses: () =>
|
|
199
|
-
cardActionsClasses: () =>
|
|
200
|
-
cardClasses: () =>
|
|
201
|
-
cardContentClasses: () =>
|
|
202
|
-
cardCoverClasses: () =>
|
|
203
|
-
cardOverflowClasses: () =>
|
|
204
|
-
checkboxClasses: () =>
|
|
205
|
-
chipClasses: () =>
|
|
206
|
-
circularProgressClasses: () =>
|
|
207
|
-
dialogActionsClasses: () =>
|
|
208
|
-
dialogContentClasses: () =>
|
|
209
|
-
dialogTitleClasses: () =>
|
|
210
|
-
dividerClasses: () =>
|
|
211
|
-
drawerClasses: () =>
|
|
212
|
-
extendTheme: () =>
|
|
213
|
-
formControlClasses: () =>
|
|
214
|
-
formHelperTextClasses: () =>
|
|
215
|
-
formLabelClasses: () =>
|
|
216
|
-
gridClasses: () =>
|
|
217
|
-
iconButtonClasses: () =>
|
|
218
|
-
inputClasses: () =>
|
|
219
|
-
linearProgressClasses: () =>
|
|
220
|
-
linkClasses: () =>
|
|
221
|
-
listClasses: () =>
|
|
222
|
-
listDividerClasses: () =>
|
|
223
|
-
listItemButtonClasses: () =>
|
|
224
|
-
listItemClasses: () =>
|
|
225
|
-
listItemContentClasses: () =>
|
|
226
|
-
listItemDecoratorClasses: () =>
|
|
227
|
-
listSubheaderClasses: () =>
|
|
228
|
-
menuButtonClasses: () =>
|
|
229
|
-
menuClasses: () =>
|
|
230
|
-
menuItemClasses: () =>
|
|
231
|
-
modalClasses: () =>
|
|
232
|
-
modalCloseClasses: () =>
|
|
233
|
-
modalDialogClasses: () =>
|
|
234
|
-
modalOverflowClasses: () =>
|
|
235
|
-
optionClasses: () =>
|
|
236
|
-
radioClasses: () =>
|
|
237
|
-
radioGroupClasses: () =>
|
|
238
|
-
selectClasses: () =>
|
|
239
|
-
sheetClasses: () =>
|
|
240
|
-
skeletonClasses: () =>
|
|
241
|
-
sliderClasses: () =>
|
|
242
|
-
stackClasses: () =>
|
|
243
|
-
stepButtonClasses: () =>
|
|
244
|
-
stepClasses: () =>
|
|
245
|
-
stepperClasses: () =>
|
|
246
|
-
styled: () =>
|
|
247
|
-
switchClasses: () =>
|
|
248
|
-
tabListClasses: () =>
|
|
249
|
-
tabPanelClasses: () =>
|
|
250
|
-
tableClasses: () =>
|
|
251
|
-
tabsClasses: () =>
|
|
252
|
-
textareaClasses: () =>
|
|
185
|
+
accordionClasses: () => import_joy71.accordionClasses,
|
|
186
|
+
accordionDetailsClasses: () => import_joy71.accordionDetailsClasses,
|
|
187
|
+
accordionSummaryClasses: () => import_joy71.accordionSummaryClasses,
|
|
188
|
+
accordionsClasses: () => import_joy71.accordionGroupClasses,
|
|
189
|
+
alertClasses: () => import_joy71.alertClasses,
|
|
190
|
+
aspectRatioClasses: () => import_joy71.aspectRatioClasses,
|
|
191
|
+
autocompleteClasses: () => import_joy71.autocompleteClasses,
|
|
192
|
+
autocompleteListboxClasses: () => import_joy71.autocompleteListboxClasses,
|
|
193
|
+
autocompleteOptionClasses: () => import_joy71.autocompleteOptionClasses,
|
|
194
|
+
avatarClasses: () => import_joy71.avatarClasses,
|
|
195
|
+
avatarGroupClasses: () => import_joy71.avatarGroupClasses,
|
|
196
|
+
badgeClasses: () => import_joy71.badgeClasses,
|
|
197
|
+
boxClasses: () => import_joy71.boxClasses,
|
|
198
|
+
breadcrumbsClasses: () => import_joy71.breadcrumbsClasses,
|
|
199
|
+
buttonClasses: () => import_joy71.buttonClasses,
|
|
200
|
+
cardActionsClasses: () => import_joy71.cardActionsClasses,
|
|
201
|
+
cardClasses: () => import_joy71.cardClasses,
|
|
202
|
+
cardContentClasses: () => import_joy71.cardContentClasses,
|
|
203
|
+
cardCoverClasses: () => import_joy71.cardCoverClasses,
|
|
204
|
+
cardOverflowClasses: () => import_joy71.cardOverflowClasses,
|
|
205
|
+
checkboxClasses: () => import_joy71.checkboxClasses,
|
|
206
|
+
chipClasses: () => import_joy71.chipClasses,
|
|
207
|
+
circularProgressClasses: () => import_joy71.circularProgressClasses,
|
|
208
|
+
dialogActionsClasses: () => import_joy71.dialogActionsClasses,
|
|
209
|
+
dialogContentClasses: () => import_joy71.dialogContentClasses,
|
|
210
|
+
dialogTitleClasses: () => import_joy71.dialogTitleClasses,
|
|
211
|
+
dividerClasses: () => import_joy71.dividerClasses,
|
|
212
|
+
drawerClasses: () => import_joy71.drawerClasses,
|
|
213
|
+
extendTheme: () => import_joy70.extendTheme,
|
|
214
|
+
formControlClasses: () => import_joy71.formControlClasses,
|
|
215
|
+
formHelperTextClasses: () => import_joy71.formHelperTextClasses,
|
|
216
|
+
formLabelClasses: () => import_joy71.formLabelClasses,
|
|
217
|
+
gridClasses: () => import_joy71.gridClasses,
|
|
218
|
+
iconButtonClasses: () => import_joy71.iconButtonClasses,
|
|
219
|
+
inputClasses: () => import_joy71.inputClasses,
|
|
220
|
+
linearProgressClasses: () => import_joy71.linearProgressClasses,
|
|
221
|
+
linkClasses: () => import_joy71.linkClasses,
|
|
222
|
+
listClasses: () => import_joy71.listClasses,
|
|
223
|
+
listDividerClasses: () => import_joy71.listDividerClasses,
|
|
224
|
+
listItemButtonClasses: () => import_joy71.listItemButtonClasses,
|
|
225
|
+
listItemClasses: () => import_joy71.listItemClasses,
|
|
226
|
+
listItemContentClasses: () => import_joy71.listItemContentClasses,
|
|
227
|
+
listItemDecoratorClasses: () => import_joy71.listItemDecoratorClasses,
|
|
228
|
+
listSubheaderClasses: () => import_joy71.listSubheaderClasses,
|
|
229
|
+
menuButtonClasses: () => import_joy71.menuButtonClasses,
|
|
230
|
+
menuClasses: () => import_joy71.menuClasses,
|
|
231
|
+
menuItemClasses: () => import_joy71.menuItemClasses,
|
|
232
|
+
modalClasses: () => import_joy71.modalClasses,
|
|
233
|
+
modalCloseClasses: () => import_joy71.modalCloseClasses,
|
|
234
|
+
modalDialogClasses: () => import_joy71.modalDialogClasses,
|
|
235
|
+
modalOverflowClasses: () => import_joy71.modalOverflowClasses,
|
|
236
|
+
optionClasses: () => import_joy71.optionClasses,
|
|
237
|
+
radioClasses: () => import_joy71.radioClasses,
|
|
238
|
+
radioGroupClasses: () => import_joy71.radioGroupClasses,
|
|
239
|
+
selectClasses: () => import_joy71.selectClasses,
|
|
240
|
+
sheetClasses: () => import_joy71.sheetClasses,
|
|
241
|
+
skeletonClasses: () => import_joy71.skeletonClasses,
|
|
242
|
+
sliderClasses: () => import_joy71.sliderClasses,
|
|
243
|
+
stackClasses: () => import_joy71.stackClasses,
|
|
244
|
+
stepButtonClasses: () => import_joy71.stepButtonClasses,
|
|
245
|
+
stepClasses: () => import_joy71.stepClasses,
|
|
246
|
+
stepperClasses: () => import_joy71.stepperClasses,
|
|
247
|
+
styled: () => import_joy71.styled,
|
|
248
|
+
switchClasses: () => import_joy71.switchClasses,
|
|
249
|
+
tabListClasses: () => import_joy71.tabListClasses,
|
|
250
|
+
tabPanelClasses: () => import_joy71.tabPanelClasses,
|
|
251
|
+
tableClasses: () => import_joy71.tableClasses,
|
|
252
|
+
tabsClasses: () => import_joy71.tabsClasses,
|
|
253
|
+
textareaClasses: () => import_joy71.textareaClasses,
|
|
253
254
|
theme: () => defaultTheme,
|
|
254
|
-
tooltipClasses: () =>
|
|
255
|
-
typographyClasses: () =>
|
|
256
|
-
useColorScheme: () =>
|
|
257
|
-
useTheme: () =>
|
|
258
|
-
useThemeProps: () =>
|
|
255
|
+
tooltipClasses: () => import_joy71.tooltipClasses,
|
|
256
|
+
typographyClasses: () => import_joy71.typographyClasses,
|
|
257
|
+
useColorScheme: () => import_joy71.useColorScheme,
|
|
258
|
+
useTheme: () => import_joy71.useTheme,
|
|
259
|
+
useThemeProps: () => import_joy71.useThemeProps
|
|
259
260
|
});
|
|
260
261
|
module.exports = __toCommonJS(index_exports);
|
|
261
|
-
var
|
|
262
|
+
var import_joy71 = require("@mui/joy");
|
|
262
263
|
|
|
263
264
|
// src/components/Accordions/Accordions.tsx
|
|
264
265
|
var import_react = __toESM(require("react"));
|
|
@@ -3526,8 +3527,10 @@ TableBody.displayName = "TableBody";
|
|
|
3526
3527
|
|
|
3527
3528
|
// src/components/Pagination/Pagination.tsx
|
|
3528
3529
|
var import_react27 = __toESM(require("react"));
|
|
3529
|
-
var
|
|
3530
|
-
var
|
|
3530
|
+
var import_ChevronLeftRounded = __toESM(require("@mui/icons-material/ChevronLeftRounded"));
|
|
3531
|
+
var import_ChevronRightRounded = __toESM(require("@mui/icons-material/ChevronRightRounded"));
|
|
3532
|
+
var import_FirstPageRounded = __toESM(require("@mui/icons-material/FirstPageRounded"));
|
|
3533
|
+
var import_LastPageRounded = __toESM(require("@mui/icons-material/LastPageRounded"));
|
|
3531
3534
|
var import_joy35 = require("@mui/joy");
|
|
3532
3535
|
var PaginationButton = (0, import_joy35.styled)(Button_default, {
|
|
3533
3536
|
name: "Pagination",
|
|
@@ -3586,6 +3589,7 @@ function Pagination(props) {
|
|
|
3586
3589
|
onPageChange,
|
|
3587
3590
|
rowCount,
|
|
3588
3591
|
size = "md",
|
|
3592
|
+
variant = "standard",
|
|
3589
3593
|
...innerProps
|
|
3590
3594
|
} = props;
|
|
3591
3595
|
const [paginationModel, setPaginationModel] = useControlledState(
|
|
@@ -3612,6 +3616,87 @@ function Pagination(props) {
|
|
|
3612
3616
|
setPaginationModel({ ...paginationModel, page: lastPage });
|
|
3613
3617
|
}
|
|
3614
3618
|
}, [rowCount, paginationModel, lastPage, setPaginationModel]);
|
|
3619
|
+
const pageOptions = Array.from({ length: lastPage }, (_, i) => ({
|
|
3620
|
+
label: `${i + 1}`,
|
|
3621
|
+
value: `${i + 1}`
|
|
3622
|
+
}));
|
|
3623
|
+
if (variant === "compact") {
|
|
3624
|
+
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(
|
|
3625
|
+
PaginationIconButton,
|
|
3626
|
+
{
|
|
3627
|
+
size,
|
|
3628
|
+
variant: "plain",
|
|
3629
|
+
color: "neutral",
|
|
3630
|
+
onClick: () => handlePageChange(firstPage),
|
|
3631
|
+
disabled: paginationModel.page === firstPage,
|
|
3632
|
+
"aria-label": "First page"
|
|
3633
|
+
},
|
|
3634
|
+
/* @__PURE__ */ import_react27.default.createElement(import_FirstPageRounded.default, null)
|
|
3635
|
+
), /* @__PURE__ */ import_react27.default.createElement(
|
|
3636
|
+
PaginationIconButton,
|
|
3637
|
+
{
|
|
3638
|
+
size,
|
|
3639
|
+
variant: "plain",
|
|
3640
|
+
color: "neutral",
|
|
3641
|
+
onClick: () => handlePageChange(paginationModel.page - 1),
|
|
3642
|
+
disabled: paginationModel.page === firstPage,
|
|
3643
|
+
"aria-label": "Previous page"
|
|
3644
|
+
},
|
|
3645
|
+
/* @__PURE__ */ import_react27.default.createElement(import_ChevronLeftRounded.default, null)
|
|
3646
|
+
)), /* @__PURE__ */ import_react27.default.createElement(
|
|
3647
|
+
Autocomplete_default,
|
|
3648
|
+
{
|
|
3649
|
+
size,
|
|
3650
|
+
value: `${paginationModel.page}`,
|
|
3651
|
+
onChange: (event) => {
|
|
3652
|
+
if (event.target.value) {
|
|
3653
|
+
handlePageChange(parseInt(event.target.value, 10));
|
|
3654
|
+
}
|
|
3655
|
+
},
|
|
3656
|
+
options: pageOptions,
|
|
3657
|
+
sx: {
|
|
3658
|
+
width: {
|
|
3659
|
+
sm: "80px",
|
|
3660
|
+
md: "100px",
|
|
3661
|
+
lg: "120px"
|
|
3662
|
+
}[size]
|
|
3663
|
+
}
|
|
3664
|
+
}
|
|
3665
|
+
), /* @__PURE__ */ import_react27.default.createElement(
|
|
3666
|
+
Typography_default,
|
|
3667
|
+
{
|
|
3668
|
+
level: `body-${size}`,
|
|
3669
|
+
sx: (theme) => ({
|
|
3670
|
+
color: theme.palette.text.secondary,
|
|
3671
|
+
fontWeight: 500
|
|
3672
|
+
})
|
|
3673
|
+
},
|
|
3674
|
+
"/ ",
|
|
3675
|
+
lastPage
|
|
3676
|
+
), /* @__PURE__ */ import_react27.default.createElement(Stack_default, { direction: "row" }, /* @__PURE__ */ import_react27.default.createElement(
|
|
3677
|
+
PaginationIconButton,
|
|
3678
|
+
{
|
|
3679
|
+
size,
|
|
3680
|
+
variant: "plain",
|
|
3681
|
+
color: "neutral",
|
|
3682
|
+
onClick: () => handlePageChange(paginationModel.page + 1),
|
|
3683
|
+
disabled: paginationModel.page === lastPage,
|
|
3684
|
+
"aria-label": "Next page"
|
|
3685
|
+
},
|
|
3686
|
+
/* @__PURE__ */ import_react27.default.createElement(import_ChevronRightRounded.default, null)
|
|
3687
|
+
), /* @__PURE__ */ import_react27.default.createElement(
|
|
3688
|
+
PaginationIconButton,
|
|
3689
|
+
{
|
|
3690
|
+
size,
|
|
3691
|
+
variant: "plain",
|
|
3692
|
+
color: "neutral",
|
|
3693
|
+
onClick: () => handlePageChange(lastPage),
|
|
3694
|
+
disabled: paginationModel.page === lastPage,
|
|
3695
|
+
"aria-label": "Last page"
|
|
3696
|
+
},
|
|
3697
|
+
/* @__PURE__ */ import_react27.default.createElement(import_LastPageRounded.default, null)
|
|
3698
|
+
))));
|
|
3699
|
+
}
|
|
3615
3700
|
return /* @__PURE__ */ import_react27.default.createElement(PaginationRoot, { ...innerProps }, /* @__PURE__ */ import_react27.default.createElement(PaginationContainer, { direction: "row", size, alignItems: "center" }, /* @__PURE__ */ import_react27.default.createElement(
|
|
3616
3701
|
PaginationIconButton,
|
|
3617
3702
|
{
|
|
@@ -3622,7 +3707,7 @@ function Pagination(props) {
|
|
|
3622
3707
|
disabled: paginationModel.page === firstPage,
|
|
3623
3708
|
"aria-label": "Previous page"
|
|
3624
3709
|
},
|
|
3625
|
-
/* @__PURE__ */ import_react27.default.createElement(
|
|
3710
|
+
/* @__PURE__ */ import_react27.default.createElement(import_ChevronLeftRounded.default, null)
|
|
3626
3711
|
), paginationModel.page !== firstPage && /* @__PURE__ */ import_react27.default.createElement(PaginationButton, { size, variant: "plain", color: "neutral", onClick: () => handlePageChange(firstPage) }, firstPage), isMoreBeforePages && /* @__PURE__ */ import_react27.default.createElement(
|
|
3627
3712
|
PaginationButton,
|
|
3628
3713
|
{
|
|
@@ -3653,7 +3738,7 @@ function Pagination(props) {
|
|
|
3653
3738
|
disabled: paginationModel.page === lastPage,
|
|
3654
3739
|
"aria-label": "Next page"
|
|
3655
3740
|
},
|
|
3656
|
-
/* @__PURE__ */ import_react27.default.createElement(
|
|
3741
|
+
/* @__PURE__ */ import_react27.default.createElement(import_ChevronRightRounded.default, null)
|
|
3657
3742
|
)));
|
|
3658
3743
|
}
|
|
3659
3744
|
Pagination.displayName = "Pagination";
|
|
@@ -4473,17 +4558,254 @@ var InsetDrawer = (0, import_joy42.styled)(import_joy42.Drawer)(({ theme }) => (
|
|
|
4473
4558
|
}
|
|
4474
4559
|
}));
|
|
4475
4560
|
|
|
4561
|
+
// src/components/FilterableCheckboxGroup/FilterableCheckboxGroup.tsx
|
|
4562
|
+
var import_react33 = __toESM(require("react"));
|
|
4563
|
+
var import_Search = __toESM(require("@mui/icons-material/Search"));
|
|
4564
|
+
var import_react_virtual3 = require("@tanstack/react-virtual");
|
|
4565
|
+
function LabelWithTooltip(props) {
|
|
4566
|
+
const { label, size } = props;
|
|
4567
|
+
const labelContentRef = (0, import_react33.useRef)(null);
|
|
4568
|
+
const [isOverflowing, setIsOverflowing] = (0, import_react33.useState)(false);
|
|
4569
|
+
const labelContent = /* @__PURE__ */ import_react33.default.createElement(
|
|
4570
|
+
"span",
|
|
4571
|
+
{
|
|
4572
|
+
ref: labelContentRef,
|
|
4573
|
+
style: {
|
|
4574
|
+
textOverflow: "ellipsis",
|
|
4575
|
+
overflow: "hidden",
|
|
4576
|
+
whiteSpace: "nowrap",
|
|
4577
|
+
display: "block",
|
|
4578
|
+
position: "relative",
|
|
4579
|
+
zIndex: 1,
|
|
4580
|
+
cursor: "pointer"
|
|
4581
|
+
}
|
|
4582
|
+
},
|
|
4583
|
+
label
|
|
4584
|
+
);
|
|
4585
|
+
(0, import_react33.useEffect)(() => {
|
|
4586
|
+
const element = labelContentRef.current;
|
|
4587
|
+
if (element) {
|
|
4588
|
+
setIsOverflowing(element.scrollWidth > element.clientWidth);
|
|
4589
|
+
}
|
|
4590
|
+
}, [label]);
|
|
4591
|
+
if (isOverflowing) {
|
|
4592
|
+
return /* @__PURE__ */ import_react33.default.createElement(Tooltip_default, { variant: "solid", size, title: label, placement: "bottom-start" }, labelContent);
|
|
4593
|
+
}
|
|
4594
|
+
return labelContent;
|
|
4595
|
+
}
|
|
4596
|
+
function FilterableCheckboxGroup(props) {
|
|
4597
|
+
const {
|
|
4598
|
+
value,
|
|
4599
|
+
options,
|
|
4600
|
+
label,
|
|
4601
|
+
placeholder,
|
|
4602
|
+
helperText,
|
|
4603
|
+
size = "md",
|
|
4604
|
+
required,
|
|
4605
|
+
onChange,
|
|
4606
|
+
maxHeight = 300,
|
|
4607
|
+
disabled
|
|
4608
|
+
} = props;
|
|
4609
|
+
const [searchTerm, setSearchTerm] = (0, import_react33.useState)("");
|
|
4610
|
+
const [sortedOptions, setSortedOptions] = (0, import_react33.useState)(options);
|
|
4611
|
+
const [internalValue, setInternalValue] = useControlledState(
|
|
4612
|
+
value,
|
|
4613
|
+
value ?? [],
|
|
4614
|
+
(0, import_react33.useCallback)((newValue) => onChange?.(newValue), [onChange])
|
|
4615
|
+
);
|
|
4616
|
+
const parentRef = (0, import_react33.useRef)(null);
|
|
4617
|
+
const isInitialSortRef = (0, import_react33.useRef)(false);
|
|
4618
|
+
const filteredOptions = (0, import_react33.useMemo)(() => {
|
|
4619
|
+
if (!searchTerm) return sortedOptions;
|
|
4620
|
+
return sortedOptions.filter((option) => option.label.toLowerCase().includes(searchTerm.toLowerCase()));
|
|
4621
|
+
}, [sortedOptions, searchTerm]);
|
|
4622
|
+
const itemSize = (0, import_react33.useMemo)(() => {
|
|
4623
|
+
switch (size) {
|
|
4624
|
+
case "sm":
|
|
4625
|
+
return 28;
|
|
4626
|
+
case "md":
|
|
4627
|
+
return 32;
|
|
4628
|
+
case "lg":
|
|
4629
|
+
return 36;
|
|
4630
|
+
}
|
|
4631
|
+
}, [size]);
|
|
4632
|
+
const noOptionsFontSize = (0, import_react33.useMemo)(() => {
|
|
4633
|
+
switch (size) {
|
|
4634
|
+
case "sm":
|
|
4635
|
+
return "14px";
|
|
4636
|
+
case "md":
|
|
4637
|
+
return "16px";
|
|
4638
|
+
case "lg":
|
|
4639
|
+
return "18px";
|
|
4640
|
+
}
|
|
4641
|
+
}, [size]);
|
|
4642
|
+
const virtualizer = (0, import_react_virtual3.useVirtualizer)({
|
|
4643
|
+
count: filteredOptions.length,
|
|
4644
|
+
estimateSize: () => itemSize,
|
|
4645
|
+
measureElement: (element) => element.clientHeight,
|
|
4646
|
+
getScrollElement: () => parentRef.current,
|
|
4647
|
+
overscan: 5
|
|
4648
|
+
});
|
|
4649
|
+
const items = virtualizer.getVirtualItems();
|
|
4650
|
+
(0, import_react33.useEffect)(() => {
|
|
4651
|
+
if (isInitialSortRef.current) return;
|
|
4652
|
+
const initialValue = value ?? [];
|
|
4653
|
+
const sorted = [...options].sort((a, b) => {
|
|
4654
|
+
const aSelected = initialValue.includes(a.value);
|
|
4655
|
+
const bSelected = initialValue.includes(b.value);
|
|
4656
|
+
if (aSelected !== bSelected) {
|
|
4657
|
+
return aSelected ? -1 : 1;
|
|
4658
|
+
}
|
|
4659
|
+
const aIsAlpha = /^[a-zA-Z]/.test(a.label);
|
|
4660
|
+
const bIsAlpha = /^[a-zA-Z]/.test(b.label);
|
|
4661
|
+
if (aIsAlpha !== bIsAlpha) {
|
|
4662
|
+
return aIsAlpha ? -1 : 1;
|
|
4663
|
+
}
|
|
4664
|
+
return a.label.localeCompare(b.label);
|
|
4665
|
+
});
|
|
4666
|
+
setSortedOptions(sorted);
|
|
4667
|
+
isInitialSortRef.current = true;
|
|
4668
|
+
}, [options, value]);
|
|
4669
|
+
(0, import_react33.useEffect)(() => {
|
|
4670
|
+
virtualizer.measure();
|
|
4671
|
+
}, [virtualizer, filteredOptions]);
|
|
4672
|
+
const handleSearchChange = (0, import_react33.useCallback)((event) => {
|
|
4673
|
+
setSearchTerm(event.target.value);
|
|
4674
|
+
}, []);
|
|
4675
|
+
const handleCheckboxChange = (0, import_react33.useCallback)(
|
|
4676
|
+
(optionValue) => (event) => {
|
|
4677
|
+
const checked = event.target.checked;
|
|
4678
|
+
const newValue = checked ? [...internalValue, optionValue] : internalValue.filter((v) => v !== optionValue);
|
|
4679
|
+
setInternalValue(newValue);
|
|
4680
|
+
},
|
|
4681
|
+
[internalValue, setInternalValue]
|
|
4682
|
+
);
|
|
4683
|
+
const handleSelectAll = (0, import_react33.useCallback)(
|
|
4684
|
+
(event) => {
|
|
4685
|
+
const checked = event.target.checked;
|
|
4686
|
+
const enabledOptions = filteredOptions.filter((option) => !option.disabled);
|
|
4687
|
+
const disabledSelectedValues = internalValue.filter(
|
|
4688
|
+
(v) => filteredOptions.some((opt) => opt.value === v && opt.disabled)
|
|
4689
|
+
);
|
|
4690
|
+
if (checked) {
|
|
4691
|
+
const enabledValues = enabledOptions.map((option) => option.value);
|
|
4692
|
+
setInternalValue([...disabledSelectedValues, ...enabledValues]);
|
|
4693
|
+
} else {
|
|
4694
|
+
setInternalValue(disabledSelectedValues);
|
|
4695
|
+
}
|
|
4696
|
+
},
|
|
4697
|
+
[filteredOptions, internalValue, setInternalValue]
|
|
4698
|
+
);
|
|
4699
|
+
const enabledFilteredOptions = (0, import_react33.useMemo)(() => filteredOptions.filter((option) => !option.disabled), [filteredOptions]);
|
|
4700
|
+
const isAllSelected = enabledFilteredOptions.length > 0 && enabledFilteredOptions.every((option) => internalValue.includes(option.value));
|
|
4701
|
+
const isIndeterminate = !isAllSelected && enabledFilteredOptions.some((option) => internalValue.includes(option.value));
|
|
4702
|
+
return /* @__PURE__ */ import_react33.default.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ import_react33.default.createElement(
|
|
4703
|
+
Input_default,
|
|
4704
|
+
{
|
|
4705
|
+
label,
|
|
4706
|
+
helperText,
|
|
4707
|
+
required,
|
|
4708
|
+
variant: "outlined",
|
|
4709
|
+
color: "neutral",
|
|
4710
|
+
placeholder,
|
|
4711
|
+
value: searchTerm,
|
|
4712
|
+
onChange: handleSearchChange,
|
|
4713
|
+
size,
|
|
4714
|
+
disabled,
|
|
4715
|
+
endDecorator: /* @__PURE__ */ import_react33.default.createElement(import_Search.default, null)
|
|
4716
|
+
}
|
|
4717
|
+
), filteredOptions.length === 0 ? /* @__PURE__ */ import_react33.default.createElement(
|
|
4718
|
+
Stack_default,
|
|
4719
|
+
{
|
|
4720
|
+
sx: (theme) => ({
|
|
4721
|
+
padding: "20px 12px",
|
|
4722
|
+
justifyContent: "center",
|
|
4723
|
+
alignItems: "center",
|
|
4724
|
+
fontSize: noOptionsFontSize,
|
|
4725
|
+
color: theme.palette.neutral.softDisabledColor
|
|
4726
|
+
})
|
|
4727
|
+
},
|
|
4728
|
+
"No options found."
|
|
4729
|
+
) : /* @__PURE__ */ import_react33.default.createElement(
|
|
4730
|
+
"div",
|
|
4731
|
+
{
|
|
4732
|
+
ref: parentRef,
|
|
4733
|
+
style: {
|
|
4734
|
+
overflow: "auto",
|
|
4735
|
+
maxHeight: typeof maxHeight === "number" ? `${maxHeight}px` : maxHeight,
|
|
4736
|
+
padding: "8px 0px",
|
|
4737
|
+
marginTop: "8px"
|
|
4738
|
+
}
|
|
4739
|
+
},
|
|
4740
|
+
!searchTerm && /* @__PURE__ */ import_react33.default.createElement(
|
|
4741
|
+
Checkbox_default,
|
|
4742
|
+
{
|
|
4743
|
+
label: "Select all",
|
|
4744
|
+
checked: isAllSelected,
|
|
4745
|
+
indeterminate: isIndeterminate,
|
|
4746
|
+
onChange: handleSelectAll,
|
|
4747
|
+
size,
|
|
4748
|
+
disabled,
|
|
4749
|
+
slotProps: {
|
|
4750
|
+
action: {
|
|
4751
|
+
sx: { top: 0, left: 0, bottom: 0, right: 0 }
|
|
4752
|
+
}
|
|
4753
|
+
},
|
|
4754
|
+
sx: { width: "100%", height: itemSize }
|
|
4755
|
+
}
|
|
4756
|
+
),
|
|
4757
|
+
/* @__PURE__ */ import_react33.default.createElement(
|
|
4758
|
+
Stack_default,
|
|
4759
|
+
{
|
|
4760
|
+
sx: {
|
|
4761
|
+
height: `${virtualizer.getTotalSize()}px`,
|
|
4762
|
+
position: "relative"
|
|
4763
|
+
}
|
|
4764
|
+
},
|
|
4765
|
+
items.map((virtualRow) => {
|
|
4766
|
+
const option = filteredOptions[virtualRow.index];
|
|
4767
|
+
return /* @__PURE__ */ import_react33.default.createElement(
|
|
4768
|
+
Checkbox_default,
|
|
4769
|
+
{
|
|
4770
|
+
key: virtualRow.key,
|
|
4771
|
+
label: /* @__PURE__ */ import_react33.default.createElement(LabelWithTooltip, { label: option.label, size }),
|
|
4772
|
+
checked: internalValue.includes(option.value),
|
|
4773
|
+
onChange: handleCheckboxChange(option.value),
|
|
4774
|
+
size,
|
|
4775
|
+
disabled: disabled || option.disabled,
|
|
4776
|
+
slotProps: {
|
|
4777
|
+
action: {
|
|
4778
|
+
sx: { top: 0, left: 0, bottom: 0, right: 0 }
|
|
4779
|
+
// NOTE: 불필요한 좌우 스크롤 방지
|
|
4780
|
+
}
|
|
4781
|
+
},
|
|
4782
|
+
sx: {
|
|
4783
|
+
position: "absolute",
|
|
4784
|
+
top: 0,
|
|
4785
|
+
left: 0,
|
|
4786
|
+
width: "100%",
|
|
4787
|
+
height: `${virtualRow.size}px`,
|
|
4788
|
+
transform: `translateY(${virtualRow.start}px)`
|
|
4789
|
+
}
|
|
4790
|
+
}
|
|
4791
|
+
);
|
|
4792
|
+
})
|
|
4793
|
+
)
|
|
4794
|
+
));
|
|
4795
|
+
}
|
|
4796
|
+
FilterableCheckboxGroup.displayName = "FilterableCheckboxGroup";
|
|
4797
|
+
|
|
4476
4798
|
// src/components/FilterMenu/FilterMenu.tsx
|
|
4477
|
-
var
|
|
4478
|
-
var
|
|
4799
|
+
var import_react44 = __toESM(require("react"));
|
|
4800
|
+
var import_joy54 = require("@mui/joy");
|
|
4479
4801
|
|
|
4480
4802
|
// src/components/FilterMenu/components/CheckboxGroup.tsx
|
|
4481
|
-
var
|
|
4803
|
+
var import_react34 = __toESM(require("react"));
|
|
4482
4804
|
var import_joy43 = require("@mui/joy");
|
|
4483
4805
|
function CheckboxGroup(props) {
|
|
4484
4806
|
const { id, label, options, value, onChange, hidden } = props;
|
|
4485
4807
|
const [internalValue, setInternalValue] = useControlledState(value, [], onChange);
|
|
4486
|
-
const handleCheckboxChange = (0,
|
|
4808
|
+
const handleCheckboxChange = (0, import_react34.useCallback)(
|
|
4487
4809
|
(optionValue) => (event) => {
|
|
4488
4810
|
const checked = event.target.checked;
|
|
4489
4811
|
let newValue;
|
|
@@ -4499,7 +4821,7 @@ function CheckboxGroup(props) {
|
|
|
4499
4821
|
if (hidden) {
|
|
4500
4822
|
return null;
|
|
4501
4823
|
}
|
|
4502
|
-
return /* @__PURE__ */
|
|
4824
|
+
return /* @__PURE__ */ import_react34.default.createElement(import_joy43.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react34.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), options.map((option) => /* @__PURE__ */ import_react34.default.createElement(
|
|
4503
4825
|
Checkbox_default,
|
|
4504
4826
|
{
|
|
4505
4827
|
key: `${id}-${option.value}`,
|
|
@@ -4511,25 +4833,54 @@ function CheckboxGroup(props) {
|
|
|
4511
4833
|
}
|
|
4512
4834
|
CheckboxGroup.displayName = "CheckboxGroup";
|
|
4513
4835
|
|
|
4836
|
+
// src/components/FilterMenu/components/FilterableCheckboxGroup.tsx
|
|
4837
|
+
var import_react35 = __toESM(require("react"));
|
|
4838
|
+
var import_joy44 = require("@mui/joy");
|
|
4839
|
+
function FilterableCheckboxGroup2(props) {
|
|
4840
|
+
const { id, label, options, value, onChange, hidden, placeholder, maxHeight } = props;
|
|
4841
|
+
const [internalValue, setInternalValue] = useControlledState(value, [], onChange);
|
|
4842
|
+
const handleChange = (0, import_react35.useCallback)(
|
|
4843
|
+
(newValue) => {
|
|
4844
|
+
setInternalValue(newValue);
|
|
4845
|
+
},
|
|
4846
|
+
[setInternalValue]
|
|
4847
|
+
);
|
|
4848
|
+
if (hidden) {
|
|
4849
|
+
return null;
|
|
4850
|
+
}
|
|
4851
|
+
return /* @__PURE__ */ import_react35.default.createElement(import_joy44.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react35.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react35.default.createElement(
|
|
4852
|
+
FilterableCheckboxGroup,
|
|
4853
|
+
{
|
|
4854
|
+
value: internalValue ?? [],
|
|
4855
|
+
onChange: handleChange,
|
|
4856
|
+
options,
|
|
4857
|
+
placeholder,
|
|
4858
|
+
maxHeight,
|
|
4859
|
+
size: "sm"
|
|
4860
|
+
}
|
|
4861
|
+
));
|
|
4862
|
+
}
|
|
4863
|
+
FilterableCheckboxGroup2.displayName = "FilterableCheckboxGroup";
|
|
4864
|
+
|
|
4514
4865
|
// src/components/FilterMenu/components/RadioGroup.tsx
|
|
4515
|
-
var
|
|
4866
|
+
var import_react36 = __toESM(require("react"));
|
|
4516
4867
|
|
|
4517
4868
|
// src/components/Radio/Radio.tsx
|
|
4518
|
-
var
|
|
4869
|
+
var import_joy45 = require("@mui/joy");
|
|
4519
4870
|
var import_framer_motion26 = require("framer-motion");
|
|
4520
|
-
var MotionRadio = (0, import_framer_motion26.motion)(
|
|
4871
|
+
var MotionRadio = (0, import_framer_motion26.motion)(import_joy45.Radio);
|
|
4521
4872
|
var Radio = MotionRadio;
|
|
4522
4873
|
Radio.displayName = "Radio";
|
|
4523
|
-
var MotionRadioGroup = (0, import_framer_motion26.motion)(
|
|
4874
|
+
var MotionRadioGroup = (0, import_framer_motion26.motion)(import_joy45.RadioGroup);
|
|
4524
4875
|
var RadioGroup = MotionRadioGroup;
|
|
4525
4876
|
RadioGroup.displayName = "RadioGroup";
|
|
4526
4877
|
|
|
4527
4878
|
// src/components/FilterMenu/components/RadioGroup.tsx
|
|
4528
|
-
var
|
|
4879
|
+
var import_joy46 = require("@mui/joy");
|
|
4529
4880
|
function RadioGroup2(props) {
|
|
4530
4881
|
const { id, label, options, value, onChange, hidden } = props;
|
|
4531
4882
|
const [internalValue, setInternalValue] = useControlledState(value, value ?? "", onChange);
|
|
4532
|
-
const handleRadioChange = (0,
|
|
4883
|
+
const handleRadioChange = (0, import_react36.useCallback)(
|
|
4533
4884
|
(event) => {
|
|
4534
4885
|
const newValue = event.target.value;
|
|
4535
4886
|
const option = options.find((opt) => opt.value.toString() === newValue);
|
|
@@ -4541,13 +4892,13 @@ function RadioGroup2(props) {
|
|
|
4541
4892
|
if (hidden) {
|
|
4542
4893
|
return null;
|
|
4543
4894
|
}
|
|
4544
|
-
return /* @__PURE__ */
|
|
4895
|
+
return /* @__PURE__ */ import_react36.default.createElement(import_joy46.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react36.default.createElement(import_joy46.Stack, { spacing: 1 }, /* @__PURE__ */ import_react36.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label)), /* @__PURE__ */ import_react36.default.createElement(RadioGroup, { name: id, value: internalValue?.toString(), onChange: handleRadioChange }, options.map((option) => /* @__PURE__ */ import_react36.default.createElement(Radio, { key: `${id}-${option.value}`, value: option.value.toString(), label: option.label }))));
|
|
4545
4896
|
}
|
|
4546
4897
|
RadioGroup2.displayName = "RadioGroup";
|
|
4547
4898
|
|
|
4548
4899
|
// src/components/FilterMenu/components/DateRange.tsx
|
|
4549
|
-
var
|
|
4550
|
-
var
|
|
4900
|
+
var import_react37 = __toESM(require("react"));
|
|
4901
|
+
var import_joy47 = require("@mui/joy");
|
|
4551
4902
|
function DateRange(props) {
|
|
4552
4903
|
const {
|
|
4553
4904
|
id,
|
|
@@ -4559,14 +4910,13 @@ function DateRange(props) {
|
|
|
4559
4910
|
maxDate,
|
|
4560
4911
|
disableFuture,
|
|
4561
4912
|
disablePast,
|
|
4562
|
-
format = "YYYY/MM/DD",
|
|
4563
4913
|
displayFormat,
|
|
4564
4914
|
inputReadOnly,
|
|
4565
4915
|
hideClearButton
|
|
4566
4916
|
} = props;
|
|
4567
4917
|
const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
|
|
4568
|
-
const [selectedOption, setSelectedOption] = (0,
|
|
4569
|
-
const dateRangeOptions = (0,
|
|
4918
|
+
const [selectedOption, setSelectedOption] = (0, import_react37.useState)("all-time");
|
|
4919
|
+
const dateRangeOptions = (0, import_react37.useMemo)(
|
|
4570
4920
|
() => [
|
|
4571
4921
|
{ label: "All Time", value: "all-time" },
|
|
4572
4922
|
{ label: "This Month", value: "this-month" },
|
|
@@ -4576,7 +4926,7 @@ function DateRange(props) {
|
|
|
4576
4926
|
],
|
|
4577
4927
|
[]
|
|
4578
4928
|
);
|
|
4579
|
-
const getDateRangeForOption = (0,
|
|
4929
|
+
const getDateRangeForOption = (0, import_react37.useCallback)(
|
|
4580
4930
|
(option) => {
|
|
4581
4931
|
const now = /* @__PURE__ */ new Date();
|
|
4582
4932
|
const currentYear = now.getFullYear();
|
|
@@ -4615,7 +4965,7 @@ function DateRange(props) {
|
|
|
4615
4965
|
},
|
|
4616
4966
|
[internalValue]
|
|
4617
4967
|
);
|
|
4618
|
-
const determineOptionFromValue = (0,
|
|
4968
|
+
const determineOptionFromValue = (0, import_react37.useCallback)(
|
|
4619
4969
|
(value2) => {
|
|
4620
4970
|
if (!value2) {
|
|
4621
4971
|
return "all-time";
|
|
@@ -4631,17 +4981,17 @@ function DateRange(props) {
|
|
|
4631
4981
|
},
|
|
4632
4982
|
[getDateRangeForOption]
|
|
4633
4983
|
);
|
|
4634
|
-
const customDateRangeValue = (0,
|
|
4984
|
+
const customDateRangeValue = (0, import_react37.useMemo)(() => {
|
|
4635
4985
|
if (selectedOption === "custom" && internalValue) {
|
|
4636
4986
|
return `${internalValue[0]} - ${internalValue[1]}`;
|
|
4637
4987
|
}
|
|
4638
4988
|
return "";
|
|
4639
4989
|
}, [selectedOption, internalValue]);
|
|
4640
|
-
(0,
|
|
4990
|
+
(0, import_react37.useEffect)(() => {
|
|
4641
4991
|
const newOption = determineOptionFromValue(internalValue);
|
|
4642
4992
|
setSelectedOption(newOption);
|
|
4643
4993
|
}, [internalValue, determineOptionFromValue]);
|
|
4644
|
-
const handleOptionChange = (0,
|
|
4994
|
+
const handleOptionChange = (0, import_react37.useCallback)(
|
|
4645
4995
|
(event) => {
|
|
4646
4996
|
const newOption = event.target.value;
|
|
4647
4997
|
setSelectedOption(newOption);
|
|
@@ -4650,25 +5000,28 @@ function DateRange(props) {
|
|
|
4650
5000
|
},
|
|
4651
5001
|
[getDateRangeForOption, setInternalValue]
|
|
4652
5002
|
);
|
|
4653
|
-
const handleCustomDateChange = (0,
|
|
5003
|
+
const handleCustomDateChange = (0, import_react37.useCallback)(
|
|
4654
5004
|
(event) => {
|
|
4655
5005
|
const dateRangeString = event.target.value;
|
|
4656
5006
|
if (dateRangeString && dateRangeString.includes(" - ")) {
|
|
4657
5007
|
const [startDate, endDate] = dateRangeString.split(" - ");
|
|
4658
5008
|
if (startDate && endDate) {
|
|
4659
5009
|
const newValue = [startDate, endDate];
|
|
4660
|
-
|
|
5010
|
+
const hasChanged = !internalValue || internalValue[0] !== startDate || internalValue[1] !== endDate;
|
|
5011
|
+
if (hasChanged) {
|
|
5012
|
+
setInternalValue(newValue);
|
|
5013
|
+
}
|
|
4661
5014
|
}
|
|
4662
5015
|
} else if (!dateRangeString) {
|
|
4663
5016
|
setInternalValue(null);
|
|
4664
5017
|
}
|
|
4665
5018
|
},
|
|
4666
|
-
[setInternalValue]
|
|
5019
|
+
[setInternalValue, internalValue]
|
|
4667
5020
|
);
|
|
4668
5021
|
if (hidden) {
|
|
4669
5022
|
return null;
|
|
4670
5023
|
}
|
|
4671
|
-
return /* @__PURE__ */
|
|
5024
|
+
return /* @__PURE__ */ import_react37.default.createElement(import_joy47.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react37.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react37.default.createElement(RadioGroup, { name: `${id}-options`, value: selectedOption, onChange: handleOptionChange }, dateRangeOptions.map((option) => /* @__PURE__ */ import_react37.default.createElement(Radio, { key: `${id}-${option.value}`, value: option.value, label: option.label }))), selectedOption === "custom" && /* @__PURE__ */ import_react37.default.createElement(
|
|
4672
5025
|
DateRangePicker,
|
|
4673
5026
|
{
|
|
4674
5027
|
value: customDateRangeValue,
|
|
@@ -4677,7 +5030,7 @@ function DateRange(props) {
|
|
|
4677
5030
|
maxDate,
|
|
4678
5031
|
disableFuture,
|
|
4679
5032
|
disablePast,
|
|
4680
|
-
format,
|
|
5033
|
+
format: "YYYY-MM-DD",
|
|
4681
5034
|
displayFormat,
|
|
4682
5035
|
inputReadOnly,
|
|
4683
5036
|
hideClearButton
|
|
@@ -4687,12 +5040,12 @@ function DateRange(props) {
|
|
|
4687
5040
|
DateRange.displayName = "DateRange";
|
|
4688
5041
|
|
|
4689
5042
|
// src/components/FilterMenu/components/CurrencyInput.tsx
|
|
4690
|
-
var
|
|
4691
|
-
var
|
|
5043
|
+
var import_react38 = __toESM(require("react"));
|
|
5044
|
+
var import_joy48 = require("@mui/joy");
|
|
4692
5045
|
function CurrencyInput3(props) {
|
|
4693
5046
|
const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
|
|
4694
5047
|
const [internalValue, setInternalValue] = useControlledState(value, value, onChange);
|
|
4695
|
-
const handleCurrencyChange = (0,
|
|
5048
|
+
const handleCurrencyChange = (0, import_react38.useCallback)(
|
|
4696
5049
|
(event) => {
|
|
4697
5050
|
const newValue = event.target.value;
|
|
4698
5051
|
setInternalValue(newValue);
|
|
@@ -4702,7 +5055,7 @@ function CurrencyInput3(props) {
|
|
|
4702
5055
|
if (hidden) {
|
|
4703
5056
|
return null;
|
|
4704
5057
|
}
|
|
4705
|
-
return /* @__PURE__ */
|
|
5058
|
+
return /* @__PURE__ */ import_react38.default.createElement(import_joy48.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react38.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react38.default.createElement(
|
|
4706
5059
|
CurrencyInput,
|
|
4707
5060
|
{
|
|
4708
5061
|
value: internalValue,
|
|
@@ -4718,14 +5071,14 @@ function CurrencyInput3(props) {
|
|
|
4718
5071
|
CurrencyInput3.displayName = "CurrencyInput";
|
|
4719
5072
|
|
|
4720
5073
|
// src/components/FilterMenu/components/CurrencyRange.tsx
|
|
4721
|
-
var
|
|
4722
|
-
var
|
|
5074
|
+
var import_react39 = __toESM(require("react"));
|
|
5075
|
+
var import_joy49 = require("@mui/joy");
|
|
4723
5076
|
function CurrencyRange(props) {
|
|
4724
5077
|
const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
|
|
4725
5078
|
const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
|
|
4726
5079
|
const minValue = internalValue?.[0];
|
|
4727
5080
|
const maxValue = internalValue?.[1];
|
|
4728
|
-
const handleMinChange = (0,
|
|
5081
|
+
const handleMinChange = (0, import_react39.useCallback)(
|
|
4729
5082
|
(event) => {
|
|
4730
5083
|
const newMinValue = event.target.value;
|
|
4731
5084
|
const currentMaxValue = maxValue;
|
|
@@ -4739,7 +5092,7 @@ function CurrencyRange(props) {
|
|
|
4739
5092
|
},
|
|
4740
5093
|
[maxValue, setInternalValue]
|
|
4741
5094
|
);
|
|
4742
|
-
const handleMaxChange = (0,
|
|
5095
|
+
const handleMaxChange = (0, import_react39.useCallback)(
|
|
4743
5096
|
(event) => {
|
|
4744
5097
|
const newMaxValue = event.target.value;
|
|
4745
5098
|
const currentMinValue = minValue;
|
|
@@ -4756,7 +5109,7 @@ function CurrencyRange(props) {
|
|
|
4756
5109
|
if (hidden) {
|
|
4757
5110
|
return null;
|
|
4758
5111
|
}
|
|
4759
|
-
return /* @__PURE__ */
|
|
5112
|
+
return /* @__PURE__ */ import_react39.default.createElement(import_joy49.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react39.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react39.default.createElement(import_joy49.Stack, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ import_react39.default.createElement(
|
|
4760
5113
|
CurrencyInput,
|
|
4761
5114
|
{
|
|
4762
5115
|
label: "Minimum",
|
|
@@ -4769,7 +5122,7 @@ function CurrencyRange(props) {
|
|
|
4769
5122
|
"aria-labelledby": label ? id : void 0,
|
|
4770
5123
|
"aria-label": "Minimum amount"
|
|
4771
5124
|
}
|
|
4772
|
-
), /* @__PURE__ */
|
|
5125
|
+
), /* @__PURE__ */ import_react39.default.createElement(
|
|
4773
5126
|
CurrencyInput,
|
|
4774
5127
|
{
|
|
4775
5128
|
label: "Maximum",
|
|
@@ -4787,20 +5140,20 @@ function CurrencyRange(props) {
|
|
|
4787
5140
|
CurrencyRange.displayName = "CurrencyRange";
|
|
4788
5141
|
|
|
4789
5142
|
// src/components/FilterMenu/components/PercentageInput.tsx
|
|
4790
|
-
var
|
|
4791
|
-
var
|
|
5143
|
+
var import_react41 = __toESM(require("react"));
|
|
5144
|
+
var import_joy51 = require("@mui/joy");
|
|
4792
5145
|
|
|
4793
5146
|
// src/components/PercentageInput/PercentageInput.tsx
|
|
4794
|
-
var
|
|
5147
|
+
var import_react40 = __toESM(require("react"));
|
|
4795
5148
|
var import_react_number_format2 = require("react-number-format");
|
|
4796
|
-
var
|
|
5149
|
+
var import_joy50 = require("@mui/joy");
|
|
4797
5150
|
var padDecimal = (value, decimalScale) => {
|
|
4798
5151
|
const [integer, decimal = ""] = `${value}`.split(".");
|
|
4799
5152
|
return Number(`${integer}${decimal.padEnd(decimalScale, "0")}`);
|
|
4800
5153
|
};
|
|
4801
|
-
var TextMaskAdapter7 =
|
|
5154
|
+
var TextMaskAdapter7 = import_react40.default.forwardRef(function TextMaskAdapter8(props, ref) {
|
|
4802
5155
|
const { onChange, min, max, ...innerProps } = props;
|
|
4803
|
-
return /* @__PURE__ */
|
|
5156
|
+
return /* @__PURE__ */ import_react40.default.createElement(
|
|
4804
5157
|
import_react_number_format2.NumericFormat,
|
|
4805
5158
|
{
|
|
4806
5159
|
...innerProps,
|
|
@@ -4820,14 +5173,14 @@ var TextMaskAdapter7 = import_react38.default.forwardRef(function TextMaskAdapte
|
|
|
4820
5173
|
}
|
|
4821
5174
|
);
|
|
4822
5175
|
});
|
|
4823
|
-
var PercentageInputRoot = (0,
|
|
5176
|
+
var PercentageInputRoot = (0, import_joy50.styled)(Input_default, {
|
|
4824
5177
|
name: "PercentageInput",
|
|
4825
5178
|
slot: "Root",
|
|
4826
5179
|
overridesResolver: (props, styles) => styles.root
|
|
4827
5180
|
})({});
|
|
4828
|
-
var PercentageInput =
|
|
5181
|
+
var PercentageInput = import_react40.default.forwardRef(
|
|
4829
5182
|
function PercentageInput2(inProps, ref) {
|
|
4830
|
-
const props = (0,
|
|
5183
|
+
const props = (0, import_joy50.useThemeProps)({ props: inProps, name: "PercentageInput" });
|
|
4831
5184
|
const {
|
|
4832
5185
|
name,
|
|
4833
5186
|
onChange,
|
|
@@ -4848,18 +5201,18 @@ var PercentageInput = import_react38.default.forwardRef(
|
|
|
4848
5201
|
const [_value, setValue] = useControlledState(
|
|
4849
5202
|
props.value,
|
|
4850
5203
|
props.defaultValue,
|
|
4851
|
-
(0,
|
|
5204
|
+
(0, import_react40.useCallback)((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
|
|
4852
5205
|
);
|
|
4853
|
-
const [internalError, setInternalError] = (0,
|
|
5206
|
+
const [internalError, setInternalError] = (0, import_react40.useState)(
|
|
4854
5207
|
max && _value && _value > max || min && _value && _value < min
|
|
4855
5208
|
);
|
|
4856
|
-
const value = (0,
|
|
5209
|
+
const value = (0, import_react40.useMemo)(() => {
|
|
4857
5210
|
if (_value && useMinorUnit) {
|
|
4858
5211
|
return _value / Math.pow(10, maxDecimalScale);
|
|
4859
5212
|
}
|
|
4860
5213
|
return _value;
|
|
4861
5214
|
}, [_value, useMinorUnit, maxDecimalScale]);
|
|
4862
|
-
const handleChange = (0,
|
|
5215
|
+
const handleChange = (0, import_react40.useCallback)(
|
|
4863
5216
|
(event) => {
|
|
4864
5217
|
if (event.target.value === "") {
|
|
4865
5218
|
setValue(void 0);
|
|
@@ -4876,7 +5229,7 @@ var PercentageInput = import_react38.default.forwardRef(
|
|
|
4876
5229
|
},
|
|
4877
5230
|
[setValue, useMinorUnit, maxDecimalScale, min, max]
|
|
4878
5231
|
);
|
|
4879
|
-
return /* @__PURE__ */
|
|
5232
|
+
return /* @__PURE__ */ import_react40.default.createElement(
|
|
4880
5233
|
PercentageInputRoot,
|
|
4881
5234
|
{
|
|
4882
5235
|
...innerProps,
|
|
@@ -4923,7 +5276,7 @@ var PercentageInput3 = ({
|
|
|
4923
5276
|
if (hidden) {
|
|
4924
5277
|
return null;
|
|
4925
5278
|
}
|
|
4926
|
-
return /* @__PURE__ */
|
|
5279
|
+
return /* @__PURE__ */ import_react41.default.createElement(import_joy51.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react41.default.createElement(import_joy51.Typography, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react41.default.createElement(
|
|
4927
5280
|
PercentageInput,
|
|
4928
5281
|
{
|
|
4929
5282
|
value: _value,
|
|
@@ -4938,8 +5291,8 @@ var PercentageInput3 = ({
|
|
|
4938
5291
|
};
|
|
4939
5292
|
|
|
4940
5293
|
// src/components/FilterMenu/components/PercentageRange.tsx
|
|
4941
|
-
var
|
|
4942
|
-
var
|
|
5294
|
+
var import_react42 = __toESM(require("react"));
|
|
5295
|
+
var import_joy52 = require("@mui/joy");
|
|
4943
5296
|
function PercentageRange(props) {
|
|
4944
5297
|
const { id, label, value, onChange, hidden, useMinorUnit, maxDecimalScale, min, max } = props;
|
|
4945
5298
|
const [internalValue, setInternalValue] = useControlledState(
|
|
@@ -4949,7 +5302,7 @@ function PercentageRange(props) {
|
|
|
4949
5302
|
);
|
|
4950
5303
|
const minValue = internalValue?.[0];
|
|
4951
5304
|
const maxValue = internalValue?.[1];
|
|
4952
|
-
const handleMinChange = (0,
|
|
5305
|
+
const handleMinChange = (0, import_react42.useCallback)(
|
|
4953
5306
|
(event) => {
|
|
4954
5307
|
const newMinValue = event.target.value;
|
|
4955
5308
|
const currentMaxValue = maxValue;
|
|
@@ -4961,7 +5314,7 @@ function PercentageRange(props) {
|
|
|
4961
5314
|
},
|
|
4962
5315
|
[maxValue, setInternalValue]
|
|
4963
5316
|
);
|
|
4964
|
-
const handleMaxChange = (0,
|
|
5317
|
+
const handleMaxChange = (0, import_react42.useCallback)(
|
|
4965
5318
|
(event) => {
|
|
4966
5319
|
const newMaxValue = event.target.value;
|
|
4967
5320
|
const currentMinValue = minValue;
|
|
@@ -4976,7 +5329,7 @@ function PercentageRange(props) {
|
|
|
4976
5329
|
if (hidden) {
|
|
4977
5330
|
return null;
|
|
4978
5331
|
}
|
|
4979
|
-
return /* @__PURE__ */
|
|
5332
|
+
return /* @__PURE__ */ import_react42.default.createElement(import_joy52.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react42.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react42.default.createElement(import_joy52.Stack, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ import_react42.default.createElement(
|
|
4980
5333
|
PercentageInput,
|
|
4981
5334
|
{
|
|
4982
5335
|
label: "Minimum",
|
|
@@ -4990,7 +5343,7 @@ function PercentageRange(props) {
|
|
|
4990
5343
|
"aria-label": "Minimum percentage",
|
|
4991
5344
|
placeholder: "0%"
|
|
4992
5345
|
}
|
|
4993
|
-
), /* @__PURE__ */
|
|
5346
|
+
), /* @__PURE__ */ import_react42.default.createElement(
|
|
4994
5347
|
PercentageInput,
|
|
4995
5348
|
{
|
|
4996
5349
|
label: "Maximum",
|
|
@@ -5009,13 +5362,13 @@ function PercentageRange(props) {
|
|
|
5009
5362
|
PercentageRange.displayName = "PercentageRange";
|
|
5010
5363
|
|
|
5011
5364
|
// src/components/FilterMenu/components/Autocomplete.tsx
|
|
5012
|
-
var
|
|
5013
|
-
var
|
|
5365
|
+
var import_react43 = __toESM(require("react"));
|
|
5366
|
+
var import_joy53 = require("@mui/joy");
|
|
5014
5367
|
function Autocomplete2(props) {
|
|
5015
5368
|
const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
|
|
5016
5369
|
const [internalValue, setInternalValue] = useControlledState(value, void 0, onChange);
|
|
5017
5370
|
const autocompleteValue = typeof internalValue === "string" || typeof internalValue === "number" ? String(internalValue) : void 0;
|
|
5018
|
-
const handleChange = (0,
|
|
5371
|
+
const handleChange = (0, import_react43.useCallback)(
|
|
5019
5372
|
(event) => {
|
|
5020
5373
|
const val = event.target.value;
|
|
5021
5374
|
if (val) {
|
|
@@ -5030,7 +5383,7 @@ function Autocomplete2(props) {
|
|
|
5030
5383
|
if (hidden) {
|
|
5031
5384
|
return null;
|
|
5032
5385
|
}
|
|
5033
|
-
return /* @__PURE__ */
|
|
5386
|
+
return /* @__PURE__ */ import_react43.default.createElement(import_joy53.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react43.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react43.default.createElement(
|
|
5034
5387
|
Autocomplete,
|
|
5035
5388
|
{
|
|
5036
5389
|
value: autocompleteValue,
|
|
@@ -5047,6 +5400,7 @@ Autocomplete2.displayName = "Autocomplete";
|
|
|
5047
5400
|
// src/components/FilterMenu/FilterMenu.tsx
|
|
5048
5401
|
var componentMap = {
|
|
5049
5402
|
"checkbox-group": CheckboxGroup,
|
|
5403
|
+
"filterable-checkbox-group": FilterableCheckboxGroup2,
|
|
5050
5404
|
"radio-group": RadioGroup2,
|
|
5051
5405
|
"date-range": DateRange,
|
|
5052
5406
|
"currency-input": CurrencyInput3,
|
|
@@ -5063,7 +5417,7 @@ function FilterMenu(props) {
|
|
|
5063
5417
|
void 0
|
|
5064
5418
|
// onChange는 Apply 버튼에서만 호출
|
|
5065
5419
|
);
|
|
5066
|
-
const handleFilterChange = (0,
|
|
5420
|
+
const handleFilterChange = (0, import_react44.useCallback)(
|
|
5067
5421
|
(filterId, value) => {
|
|
5068
5422
|
setInternalValues((prev) => ({
|
|
5069
5423
|
...prev,
|
|
@@ -5072,17 +5426,17 @@ function FilterMenu(props) {
|
|
|
5072
5426
|
},
|
|
5073
5427
|
[setInternalValues]
|
|
5074
5428
|
);
|
|
5075
|
-
const handleApply = (0,
|
|
5429
|
+
const handleApply = (0, import_react44.useCallback)(() => {
|
|
5076
5430
|
onChange?.(internalValues);
|
|
5077
5431
|
onClose?.();
|
|
5078
5432
|
}, [onChange, onClose, internalValues]);
|
|
5079
|
-
const handleClear = (0,
|
|
5433
|
+
const handleClear = (0, import_react44.useCallback)(() => {
|
|
5080
5434
|
const clearedValues = resetValues || {};
|
|
5081
5435
|
setInternalValues(clearedValues);
|
|
5082
5436
|
onChange?.(clearedValues);
|
|
5083
5437
|
onClose?.();
|
|
5084
5438
|
}, [resetValues, setInternalValues, onChange, onClose]);
|
|
5085
|
-
return /* @__PURE__ */
|
|
5439
|
+
return /* @__PURE__ */ import_react44.default.createElement(
|
|
5086
5440
|
ModalDialog,
|
|
5087
5441
|
{
|
|
5088
5442
|
sx: {
|
|
@@ -5092,9 +5446,9 @@ function FilterMenu(props) {
|
|
|
5092
5446
|
top: "initial"
|
|
5093
5447
|
}
|
|
5094
5448
|
},
|
|
5095
|
-
/* @__PURE__ */
|
|
5449
|
+
/* @__PURE__ */ import_react44.default.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ import_react44.default.createElement(import_joy54.Stack, { spacing: 6 }, filters?.map((filter) => {
|
|
5096
5450
|
const FilterComponent = componentMap[filter.type];
|
|
5097
|
-
return FilterComponent ? /* @__PURE__ */
|
|
5451
|
+
return FilterComponent ? /* @__PURE__ */ import_react44.default.createElement(
|
|
5098
5452
|
FilterComponent,
|
|
5099
5453
|
{
|
|
5100
5454
|
key: filter.id,
|
|
@@ -5106,14 +5460,14 @@ function FilterMenu(props) {
|
|
|
5106
5460
|
}
|
|
5107
5461
|
) : null;
|
|
5108
5462
|
}))),
|
|
5109
|
-
/* @__PURE__ */
|
|
5463
|
+
/* @__PURE__ */ import_react44.default.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ import_react44.default.createElement(import_joy54.Button, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), useReset && !useClear && /* @__PURE__ */ import_react44.default.createElement(import_joy54.Button, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Reset"), /* @__PURE__ */ import_react44.default.createElement(import_joy54.Button, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
|
|
5110
5464
|
);
|
|
5111
5465
|
}
|
|
5112
5466
|
FilterMenu.displayName = "FilterMenu";
|
|
5113
5467
|
|
|
5114
5468
|
// src/components/Uploader/Uploader.tsx
|
|
5115
|
-
var
|
|
5116
|
-
var
|
|
5469
|
+
var import_react45 = __toESM(require("react"));
|
|
5470
|
+
var import_joy55 = require("@mui/joy");
|
|
5117
5471
|
var import_CloudUploadRounded = __toESM(require("@mui/icons-material/CloudUploadRounded"));
|
|
5118
5472
|
var import_UploadFileRounded = __toESM(require("@mui/icons-material/UploadFileRounded"));
|
|
5119
5473
|
var import_ClearRounded = __toESM(require("@mui/icons-material/ClearRounded"));
|
|
@@ -5135,7 +5489,7 @@ var esmFiles = {
|
|
|
5135
5489
|
"@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/prevent-unhandled.js"
|
|
5136
5490
|
)
|
|
5137
5491
|
};
|
|
5138
|
-
var VisuallyHiddenInput = (0,
|
|
5492
|
+
var VisuallyHiddenInput = (0, import_joy55.styled)(import_joy55.Input)({
|
|
5139
5493
|
width: "1px",
|
|
5140
5494
|
height: "1px",
|
|
5141
5495
|
overflow: "hidden",
|
|
@@ -5144,18 +5498,18 @@ var VisuallyHiddenInput = (0, import_joy54.styled)(import_joy54.Input)({
|
|
|
5144
5498
|
clipPath: "inset(50%)",
|
|
5145
5499
|
position: "absolute"
|
|
5146
5500
|
});
|
|
5147
|
-
var PreviewRoot = (0,
|
|
5501
|
+
var PreviewRoot = (0, import_joy55.styled)(Stack_default, {
|
|
5148
5502
|
name: "Uploader",
|
|
5149
5503
|
slot: "PreviewRoot"
|
|
5150
5504
|
})({});
|
|
5151
|
-
var UploadCard = (0,
|
|
5505
|
+
var UploadCard = (0, import_joy55.styled)(Card, {
|
|
5152
5506
|
name: "Uploader",
|
|
5153
5507
|
slot: "UploadCard"
|
|
5154
5508
|
})(({ theme }) => ({
|
|
5155
5509
|
padding: theme.spacing(2.5),
|
|
5156
5510
|
border: `1px solid ${theme.palette.neutral.outlinedBorder}`
|
|
5157
5511
|
}));
|
|
5158
|
-
var UploadFileIcon = (0,
|
|
5512
|
+
var UploadFileIcon = (0, import_joy55.styled)(import_UploadFileRounded.default, {
|
|
5159
5513
|
name: "Uploader",
|
|
5160
5514
|
slot: "UploadFileIcon"
|
|
5161
5515
|
})(({ theme }) => ({
|
|
@@ -5163,7 +5517,7 @@ var UploadFileIcon = (0, import_joy54.styled)(import_UploadFileRounded.default,
|
|
|
5163
5517
|
width: "32px",
|
|
5164
5518
|
height: "32px"
|
|
5165
5519
|
}));
|
|
5166
|
-
var ClearIcon2 = (0,
|
|
5520
|
+
var ClearIcon2 = (0, import_joy55.styled)(import_ClearRounded.default, {
|
|
5167
5521
|
name: "Uploader",
|
|
5168
5522
|
slot: "ClearIcon"
|
|
5169
5523
|
})(({ theme }) => ({
|
|
@@ -5189,7 +5543,7 @@ var getFileSize = (n) => {
|
|
|
5189
5543
|
};
|
|
5190
5544
|
var Preview = (props) => {
|
|
5191
5545
|
const { files, uploaded, onDelete } = props;
|
|
5192
|
-
return /* @__PURE__ */
|
|
5546
|
+
return /* @__PURE__ */ import_react45.default.createElement(PreviewRoot, { gap: 1 }, [...uploaded, ...files].map((file) => /* @__PURE__ */ import_react45.default.createElement(UploadCard, { key: file.name, size: "sm", color: "neutral" }, /* @__PURE__ */ import_react45.default.createElement(Stack_default, { direction: "row", alignItems: "center", gap: 2 }, /* @__PURE__ */ import_react45.default.createElement(UploadFileIcon, null), /* @__PURE__ */ import_react45.default.createElement(Stack_default, { flex: "1", sx: { overflow: "hidden" } }, /* @__PURE__ */ import_react45.default.createElement(
|
|
5193
5547
|
Typography_default,
|
|
5194
5548
|
{
|
|
5195
5549
|
level: "body-sm",
|
|
@@ -5201,15 +5555,15 @@ var Preview = (props) => {
|
|
|
5201
5555
|
}
|
|
5202
5556
|
},
|
|
5203
5557
|
file.name
|
|
5204
|
-
), !!file.size && /* @__PURE__ */
|
|
5558
|
+
), !!file.size && /* @__PURE__ */ import_react45.default.createElement(Typography_default, { level: "body-xs", fontWeight: "300", lineHeight: "1.33", textColor: "text.tertiary" }, getFileSize(file.size))), /* @__PURE__ */ import_react45.default.createElement(IconButton_default, { onClick: () => onDelete?.(file) }, /* @__PURE__ */ import_react45.default.createElement(ClearIcon2, null))))));
|
|
5205
5559
|
};
|
|
5206
|
-
var UploaderRoot = (0,
|
|
5560
|
+
var UploaderRoot = (0, import_joy55.styled)(Stack_default, {
|
|
5207
5561
|
name: "Uploader",
|
|
5208
5562
|
slot: "root"
|
|
5209
5563
|
})(({ theme }) => ({
|
|
5210
5564
|
gap: theme.spacing(2)
|
|
5211
5565
|
}));
|
|
5212
|
-
var FileDropZone = (0,
|
|
5566
|
+
var FileDropZone = (0, import_joy55.styled)(Sheet_default, {
|
|
5213
5567
|
name: "Uploader",
|
|
5214
5568
|
slot: "dropZone",
|
|
5215
5569
|
shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"
|
|
@@ -5230,7 +5584,7 @@ var FileDropZone = (0, import_joy54.styled)(Sheet_default, {
|
|
|
5230
5584
|
}
|
|
5231
5585
|
})
|
|
5232
5586
|
);
|
|
5233
|
-
var UploaderIcon = (0,
|
|
5587
|
+
var UploaderIcon = (0, import_joy55.styled)(import_CloudUploadRounded.default, {
|
|
5234
5588
|
name: "Uploader",
|
|
5235
5589
|
slot: "iconContainer",
|
|
5236
5590
|
shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"
|
|
@@ -5244,7 +5598,7 @@ var UploaderIcon = (0, import_joy54.styled)(import_CloudUploadRounded.default, {
|
|
|
5244
5598
|
}
|
|
5245
5599
|
})
|
|
5246
5600
|
);
|
|
5247
|
-
var Uploader =
|
|
5601
|
+
var Uploader = import_react45.default.memo(
|
|
5248
5602
|
(props) => {
|
|
5249
5603
|
const {
|
|
5250
5604
|
accept,
|
|
@@ -5261,14 +5615,14 @@ var Uploader = import_react43.default.memo(
|
|
|
5261
5615
|
error: errorProp,
|
|
5262
5616
|
helperText: helperTextProp
|
|
5263
5617
|
} = props;
|
|
5264
|
-
const dropZoneRef = (0,
|
|
5265
|
-
const inputRef = (0,
|
|
5266
|
-
const [errorText, setErrorText] = (0,
|
|
5267
|
-
const [files, setFiles] = (0,
|
|
5268
|
-
const [uploaded, setUploaded] = (0,
|
|
5269
|
-
const [previewState, setPreviewState] = (0,
|
|
5270
|
-
const accepts = (0,
|
|
5271
|
-
const parsedAccepts = (0,
|
|
5618
|
+
const dropZoneRef = (0, import_react45.useRef)(null);
|
|
5619
|
+
const inputRef = (0, import_react45.useRef)(null);
|
|
5620
|
+
const [errorText, setErrorText] = (0, import_react45.useState)();
|
|
5621
|
+
const [files, setFiles] = (0, import_react45.useState)([]);
|
|
5622
|
+
const [uploaded, setUploaded] = (0, import_react45.useState)(props.uploaded || []);
|
|
5623
|
+
const [previewState, setPreviewState] = (0, import_react45.useState)("idle");
|
|
5624
|
+
const accepts = (0, import_react45.useMemo)(() => accept.split(",").map((accept2) => accept2.trim()), [accept]);
|
|
5625
|
+
const parsedAccepts = (0, import_react45.useMemo)(
|
|
5272
5626
|
() => accepts.flatMap((type) => {
|
|
5273
5627
|
if (["image/*", "video/*", "audio/*"].includes(type)) {
|
|
5274
5628
|
return ALL_EXTENSIONS_BY_TYPE[type];
|
|
@@ -5277,7 +5631,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5277
5631
|
}),
|
|
5278
5632
|
[accepts]
|
|
5279
5633
|
);
|
|
5280
|
-
const helperText = (0,
|
|
5634
|
+
const helperText = (0, import_react45.useMemo)(() => {
|
|
5281
5635
|
if (helperTextProp) {
|
|
5282
5636
|
return helperTextProp;
|
|
5283
5637
|
}
|
|
@@ -5307,12 +5661,12 @@ var Uploader = import_react43.default.memo(
|
|
|
5307
5661
|
}
|
|
5308
5662
|
return helperTexts.join(", ");
|
|
5309
5663
|
}, [accepts, maxFileTotalSize, maxCount, helperTextProp]);
|
|
5310
|
-
const error = (0,
|
|
5311
|
-
const showDropZone = (0,
|
|
5664
|
+
const error = (0, import_react45.useMemo)(() => !!errorText || errorProp, [errorProp, errorText]);
|
|
5665
|
+
const showDropZone = (0, import_react45.useMemo)(
|
|
5312
5666
|
() => !maxCount || maxCount && [...uploaded, ...files].length !== maxCount,
|
|
5313
5667
|
[files, maxCount, uploaded]
|
|
5314
5668
|
);
|
|
5315
|
-
const addFiles = (0,
|
|
5669
|
+
const addFiles = (0, import_react45.useCallback)(
|
|
5316
5670
|
(uploads) => {
|
|
5317
5671
|
try {
|
|
5318
5672
|
const types = parsedAccepts.map((type) => type.replace(".", "")) || [];
|
|
@@ -5357,7 +5711,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5357
5711
|
},
|
|
5358
5712
|
[files, uploaded, maxCount, parsedAccepts, maxFileSize, maxFileTotalSize, name, onChange]
|
|
5359
5713
|
);
|
|
5360
|
-
(0,
|
|
5714
|
+
(0, import_react45.useEffect)(() => {
|
|
5361
5715
|
if (!dropZoneRef.current || disabled) {
|
|
5362
5716
|
return;
|
|
5363
5717
|
}
|
|
@@ -5395,7 +5749,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5395
5749
|
);
|
|
5396
5750
|
return () => cleanup?.();
|
|
5397
5751
|
}, [disabled, addFiles]);
|
|
5398
|
-
(0,
|
|
5752
|
+
(0, import_react45.useEffect)(() => {
|
|
5399
5753
|
if (inputRef.current && minCount) {
|
|
5400
5754
|
if (files.length < minCount) {
|
|
5401
5755
|
inputRef.current.setCustomValidity(`At least ${minCount} files are required.`);
|
|
@@ -5404,14 +5758,14 @@ var Uploader = import_react43.default.memo(
|
|
|
5404
5758
|
}
|
|
5405
5759
|
}
|
|
5406
5760
|
}, [inputRef, files, minCount]);
|
|
5407
|
-
const handleFileChanged = (0,
|
|
5761
|
+
const handleFileChanged = (0, import_react45.useCallback)(
|
|
5408
5762
|
(event) => {
|
|
5409
5763
|
const files2 = Array.from(event.target.files || []);
|
|
5410
5764
|
addFiles(files2);
|
|
5411
5765
|
},
|
|
5412
5766
|
[addFiles]
|
|
5413
5767
|
);
|
|
5414
|
-
const handleDeleteFile = (0,
|
|
5768
|
+
const handleDeleteFile = (0, import_react45.useCallback)(
|
|
5415
5769
|
(deletedFile) => {
|
|
5416
5770
|
if (deletedFile instanceof File) {
|
|
5417
5771
|
setFiles((current) => {
|
|
@@ -5431,10 +5785,10 @@ var Uploader = import_react43.default.memo(
|
|
|
5431
5785
|
},
|
|
5432
5786
|
[name, onChange, onDelete]
|
|
5433
5787
|
);
|
|
5434
|
-
const handleUploaderButtonClick = (0,
|
|
5788
|
+
const handleUploaderButtonClick = (0, import_react45.useCallback)(() => {
|
|
5435
5789
|
inputRef.current?.click();
|
|
5436
5790
|
}, []);
|
|
5437
|
-
const uploader = /* @__PURE__ */
|
|
5791
|
+
const uploader = /* @__PURE__ */ import_react45.default.createElement(
|
|
5438
5792
|
FileDropZone,
|
|
5439
5793
|
{
|
|
5440
5794
|
state: previewState,
|
|
@@ -5443,8 +5797,8 @@ var Uploader = import_react43.default.memo(
|
|
|
5443
5797
|
ref: dropZoneRef,
|
|
5444
5798
|
onClick: handleUploaderButtonClick
|
|
5445
5799
|
},
|
|
5446
|
-
/* @__PURE__ */
|
|
5447
|
-
/* @__PURE__ */
|
|
5800
|
+
/* @__PURE__ */ import_react45.default.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ import_react45.default.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
|
|
5801
|
+
/* @__PURE__ */ import_react45.default.createElement(
|
|
5448
5802
|
VisuallyHiddenInput,
|
|
5449
5803
|
{
|
|
5450
5804
|
disabled,
|
|
@@ -5467,17 +5821,17 @@ var Uploader = import_react43.default.memo(
|
|
|
5467
5821
|
}
|
|
5468
5822
|
)
|
|
5469
5823
|
);
|
|
5470
|
-
return /* @__PURE__ */
|
|
5824
|
+
return /* @__PURE__ */ import_react45.default.createElement(UploaderRoot, null, showDropZone && /* @__PURE__ */ import_react45.default.createElement(FormControl_default, { size, error: !!(error || errorText), disabled, required: !!minCount }, label && /* @__PURE__ */ import_react45.default.createElement(FormLabel_default, null, label), uploader, /* @__PURE__ */ import_react45.default.createElement(FormHelperText_default, null, /* @__PURE__ */ import_react45.default.createElement(Stack_default, null, errorText && /* @__PURE__ */ import_react45.default.createElement("div", null, errorText), /* @__PURE__ */ import_react45.default.createElement("div", null, helperText)))), [...uploaded, ...files].length > 0 && /* @__PURE__ */ import_react45.default.createElement(Preview, { files, uploaded, onDelete: handleDeleteFile }));
|
|
5471
5825
|
}
|
|
5472
5826
|
);
|
|
5473
5827
|
Uploader.displayName = "Uploader";
|
|
5474
5828
|
|
|
5475
5829
|
// src/components/Grid/Grid.tsx
|
|
5476
|
-
var
|
|
5830
|
+
var import_joy56 = require("@mui/joy");
|
|
5477
5831
|
|
|
5478
5832
|
// src/components/IconMenuButton/IconMenuButton.tsx
|
|
5479
|
-
var
|
|
5480
|
-
var
|
|
5833
|
+
var import_react46 = __toESM(require("react"));
|
|
5834
|
+
var import_joy57 = require("@mui/joy");
|
|
5481
5835
|
function IconMenuButton(props) {
|
|
5482
5836
|
const {
|
|
5483
5837
|
size,
|
|
@@ -5490,8 +5844,8 @@ function IconMenuButton(props) {
|
|
|
5490
5844
|
placement = "bottom"
|
|
5491
5845
|
} = props;
|
|
5492
5846
|
if (!items.length) {
|
|
5493
|
-
return /* @__PURE__ */
|
|
5494
|
-
|
|
5847
|
+
return /* @__PURE__ */ import_react46.default.createElement(
|
|
5848
|
+
import_joy57.IconButton,
|
|
5495
5849
|
{
|
|
5496
5850
|
component: props.buttonComponent ?? "button",
|
|
5497
5851
|
size,
|
|
@@ -5504,10 +5858,10 @@ function IconMenuButton(props) {
|
|
|
5504
5858
|
icon
|
|
5505
5859
|
);
|
|
5506
5860
|
}
|
|
5507
|
-
return /* @__PURE__ */
|
|
5508
|
-
|
|
5861
|
+
return /* @__PURE__ */ import_react46.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react46.default.createElement(
|
|
5862
|
+
import_joy57.MenuButton,
|
|
5509
5863
|
{
|
|
5510
|
-
slots: { root:
|
|
5864
|
+
slots: { root: import_joy57.IconButton },
|
|
5511
5865
|
slotProps: {
|
|
5512
5866
|
root: {
|
|
5513
5867
|
component: props.buttonComponent ?? "button",
|
|
@@ -5521,19 +5875,19 @@ function IconMenuButton(props) {
|
|
|
5521
5875
|
}
|
|
5522
5876
|
},
|
|
5523
5877
|
icon
|
|
5524
|
-
), /* @__PURE__ */
|
|
5878
|
+
), /* @__PURE__ */ import_react46.default.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ import_react46.default.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
|
|
5525
5879
|
}
|
|
5526
5880
|
IconMenuButton.displayName = "IconMenuButton";
|
|
5527
5881
|
|
|
5528
5882
|
// src/components/Markdown/Markdown.tsx
|
|
5529
|
-
var
|
|
5530
|
-
var import_joy57 = require("@mui/joy");
|
|
5883
|
+
var import_react47 = __toESM(require("react"));
|
|
5531
5884
|
var import_joy58 = require("@mui/joy");
|
|
5885
|
+
var import_joy59 = require("@mui/joy");
|
|
5532
5886
|
var import_remark_gfm = __toESM(require("remark-gfm"));
|
|
5533
|
-
var LazyReactMarkdown = (0,
|
|
5887
|
+
var LazyReactMarkdown = (0, import_react47.lazy)(() => import("react-markdown"));
|
|
5534
5888
|
var Markdown = (props) => {
|
|
5535
|
-
const [rehypeAccent2, setRehypeAccent] = (0,
|
|
5536
|
-
(0,
|
|
5889
|
+
const [rehypeAccent2, setRehypeAccent] = (0, import_react47.useState)(null);
|
|
5890
|
+
(0, import_react47.useEffect)(() => {
|
|
5537
5891
|
const loadRehypeAccent = async () => {
|
|
5538
5892
|
const module2 = await Promise.resolve().then(() => (init_rehype_accent(), rehype_accent_exports));
|
|
5539
5893
|
setRehypeAccent(() => module2.rehypeAccent);
|
|
@@ -5555,12 +5909,12 @@ var Markdown = (props) => {
|
|
|
5555
5909
|
if (!rehypeAccent2) {
|
|
5556
5910
|
return null;
|
|
5557
5911
|
}
|
|
5558
|
-
return /* @__PURE__ */
|
|
5559
|
-
|
|
5912
|
+
return /* @__PURE__ */ import_react47.default.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ import_react47.default.createElement(
|
|
5913
|
+
import_react47.Suspense,
|
|
5560
5914
|
{
|
|
5561
|
-
fallback: fallback || /* @__PURE__ */
|
|
5915
|
+
fallback: fallback || /* @__PURE__ */ import_react47.default.createElement(Typography, null, /* @__PURE__ */ import_react47.default.createElement(import_joy58.Skeleton, null, content || ""))
|
|
5562
5916
|
},
|
|
5563
|
-
/* @__PURE__ */
|
|
5917
|
+
/* @__PURE__ */ import_react47.default.createElement(
|
|
5564
5918
|
LazyReactMarkdown,
|
|
5565
5919
|
{
|
|
5566
5920
|
...markdownOptions,
|
|
@@ -5568,15 +5922,15 @@ var Markdown = (props) => {
|
|
|
5568
5922
|
rehypePlugins: [[rehypeAccent2, { accentColor }]],
|
|
5569
5923
|
remarkPlugins: [import_remark_gfm.default],
|
|
5570
5924
|
components: {
|
|
5571
|
-
h1: ({ children }) => /* @__PURE__ */
|
|
5572
|
-
h2: ({ children }) => /* @__PURE__ */
|
|
5573
|
-
h3: ({ children }) => /* @__PURE__ */
|
|
5574
|
-
h4: ({ children }) => /* @__PURE__ */
|
|
5575
|
-
p: ({ children, node }) => /* @__PURE__ */
|
|
5576
|
-
a: ({ children, href }) => /* @__PURE__ */
|
|
5577
|
-
hr: () => /* @__PURE__ */
|
|
5578
|
-
b: ({ children }) => /* @__PURE__ */
|
|
5579
|
-
strong: ({ children }) => /* @__PURE__ */
|
|
5925
|
+
h1: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { color, textColor, level: "h1" }, children),
|
|
5926
|
+
h2: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { color, textColor, level: "h2" }, children),
|
|
5927
|
+
h3: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { color, textColor, level: "h3" }, children),
|
|
5928
|
+
h4: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { color, textColor, level: "h4" }, children),
|
|
5929
|
+
p: ({ children, node }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
|
|
5930
|
+
a: ({ children, href }) => /* @__PURE__ */ import_react47.default.createElement(import_joy59.Link, { href, target: defaultLinkAction }, children),
|
|
5931
|
+
hr: () => /* @__PURE__ */ import_react47.default.createElement(Divider, null),
|
|
5932
|
+
b: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
|
|
5933
|
+
strong: ({ children }) => /* @__PURE__ */ import_react47.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
|
|
5580
5934
|
...markdownOptions?.components
|
|
5581
5935
|
}
|
|
5582
5936
|
}
|
|
@@ -5586,8 +5940,8 @@ var Markdown = (props) => {
|
|
|
5586
5940
|
Markdown.displayName = "Markdown";
|
|
5587
5941
|
|
|
5588
5942
|
// src/components/MenuButton/MenuButton.tsx
|
|
5589
|
-
var
|
|
5590
|
-
var
|
|
5943
|
+
var import_react48 = __toESM(require("react"));
|
|
5944
|
+
var import_joy60 = require("@mui/joy");
|
|
5591
5945
|
var import_ExpandMore = __toESM(require("@mui/icons-material/ExpandMore"));
|
|
5592
5946
|
function MenuButton(props) {
|
|
5593
5947
|
const {
|
|
@@ -5604,8 +5958,8 @@ function MenuButton(props) {
|
|
|
5604
5958
|
placement = "bottom"
|
|
5605
5959
|
} = props;
|
|
5606
5960
|
if (!items.length) {
|
|
5607
|
-
return /* @__PURE__ */
|
|
5608
|
-
|
|
5961
|
+
return /* @__PURE__ */ import_react48.default.createElement(
|
|
5962
|
+
import_joy60.Button,
|
|
5609
5963
|
{
|
|
5610
5964
|
component: props.buttonComponent ?? "button",
|
|
5611
5965
|
size,
|
|
@@ -5615,13 +5969,13 @@ function MenuButton(props) {
|
|
|
5615
5969
|
loading,
|
|
5616
5970
|
startDecorator,
|
|
5617
5971
|
...props.buttonComponentProps ?? {},
|
|
5618
|
-
endDecorator: showIcon ? /* @__PURE__ */
|
|
5972
|
+
endDecorator: showIcon ? /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, endDecorator, /* @__PURE__ */ import_react48.default.createElement(import_ExpandMore.default, null)) : /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, endDecorator)
|
|
5619
5973
|
},
|
|
5620
5974
|
buttonText
|
|
5621
5975
|
);
|
|
5622
5976
|
}
|
|
5623
|
-
return /* @__PURE__ */
|
|
5624
|
-
|
|
5977
|
+
return /* @__PURE__ */ import_react48.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react48.default.createElement(
|
|
5978
|
+
import_joy60.MenuButton,
|
|
5625
5979
|
{
|
|
5626
5980
|
component: props.buttonComponent ?? "button",
|
|
5627
5981
|
size,
|
|
@@ -5631,25 +5985,25 @@ function MenuButton(props) {
|
|
|
5631
5985
|
loading,
|
|
5632
5986
|
startDecorator,
|
|
5633
5987
|
...props.buttonComponentProps ?? {},
|
|
5634
|
-
endDecorator: showIcon ? /* @__PURE__ */
|
|
5988
|
+
endDecorator: showIcon ? /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, endDecorator, /* @__PURE__ */ import_react48.default.createElement(import_ExpandMore.default, null)) : /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, endDecorator)
|
|
5635
5989
|
},
|
|
5636
5990
|
buttonText
|
|
5637
|
-
), /* @__PURE__ */
|
|
5991
|
+
), /* @__PURE__ */ import_react48.default.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ import_react48.default.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
|
|
5638
5992
|
}
|
|
5639
5993
|
MenuButton.displayName = "MenuButton";
|
|
5640
5994
|
|
|
5641
5995
|
// src/components/MonthPicker/MonthPicker.tsx
|
|
5642
|
-
var
|
|
5996
|
+
var import_react49 = __toESM(require("react"));
|
|
5643
5997
|
var import_CalendarToday3 = __toESM(require("@mui/icons-material/CalendarToday"));
|
|
5644
|
-
var
|
|
5998
|
+
var import_joy61 = require("@mui/joy");
|
|
5645
5999
|
var import_base4 = require("@mui/base");
|
|
5646
|
-
var StyledPopper3 = (0,
|
|
6000
|
+
var StyledPopper3 = (0, import_joy61.styled)(import_base4.Popper, {
|
|
5647
6001
|
name: "MonthPicker",
|
|
5648
6002
|
slot: "popper"
|
|
5649
6003
|
})(({ theme }) => ({
|
|
5650
6004
|
zIndex: theme.zIndex.tooltip
|
|
5651
6005
|
}));
|
|
5652
|
-
var CalendarSheet3 = (0,
|
|
6006
|
+
var CalendarSheet3 = (0, import_joy61.styled)(Sheet_default, {
|
|
5653
6007
|
name: "MonthPicker",
|
|
5654
6008
|
slot: "sheet",
|
|
5655
6009
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5658,7 +6012,7 @@ var CalendarSheet3 = (0, import_joy60.styled)(Sheet_default, {
|
|
|
5658
6012
|
boxShadow: theme.shadow.md,
|
|
5659
6013
|
borderRadius: theme.radius.md
|
|
5660
6014
|
}));
|
|
5661
|
-
var MonthPickerRoot = (0,
|
|
6015
|
+
var MonthPickerRoot = (0, import_joy61.styled)("div", {
|
|
5662
6016
|
name: "MonthPicker",
|
|
5663
6017
|
slot: "root",
|
|
5664
6018
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5694,8 +6048,8 @@ function parseDate3(dateString, format) {
|
|
|
5694
6048
|
const result = new Date(year, month, day);
|
|
5695
6049
|
return result;
|
|
5696
6050
|
}
|
|
5697
|
-
var MonthPicker = (0,
|
|
5698
|
-
const props = (0,
|
|
6051
|
+
var MonthPicker = (0, import_react49.forwardRef)((inProps, ref) => {
|
|
6052
|
+
const props = (0, import_joy61.useThemeProps)({ props: inProps, name: "MonthPicker" });
|
|
5699
6053
|
const {
|
|
5700
6054
|
onChange,
|
|
5701
6055
|
disabled,
|
|
@@ -5721,14 +6075,14 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5721
6075
|
locale,
|
|
5722
6076
|
...innerProps
|
|
5723
6077
|
} = props;
|
|
5724
|
-
const innerRef = (0,
|
|
5725
|
-
const buttonRef = (0,
|
|
6078
|
+
const innerRef = (0, import_react49.useRef)(null);
|
|
6079
|
+
const buttonRef = (0, import_react49.useRef)(null);
|
|
5726
6080
|
const [value, setValue, isControlled] = useControlledState(
|
|
5727
6081
|
props.value,
|
|
5728
6082
|
props.defaultValue || "",
|
|
5729
|
-
(0,
|
|
6083
|
+
(0, import_react49.useCallback)((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
|
|
5730
6084
|
);
|
|
5731
|
-
const getFormattedDisplayValue = (0,
|
|
6085
|
+
const getFormattedDisplayValue = (0, import_react49.useCallback)(
|
|
5732
6086
|
(inputValue) => {
|
|
5733
6087
|
if (!inputValue) return "";
|
|
5734
6088
|
try {
|
|
@@ -5739,19 +6093,19 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5739
6093
|
},
|
|
5740
6094
|
[format, displayFormat, locale]
|
|
5741
6095
|
);
|
|
5742
|
-
const [displayValue, setDisplayValue] = (0,
|
|
5743
|
-
const [anchorEl, setAnchorEl] = (0,
|
|
6096
|
+
const [displayValue, setDisplayValue] = (0, import_react49.useState)(() => getFormattedDisplayValue(value));
|
|
6097
|
+
const [anchorEl, setAnchorEl] = (0, import_react49.useState)(null);
|
|
5744
6098
|
const open = Boolean(anchorEl);
|
|
5745
|
-
(0,
|
|
6099
|
+
(0, import_react49.useEffect)(() => {
|
|
5746
6100
|
if (!anchorEl) {
|
|
5747
6101
|
innerRef.current?.blur();
|
|
5748
6102
|
}
|
|
5749
6103
|
}, [anchorEl, innerRef]);
|
|
5750
|
-
(0,
|
|
5751
|
-
(0,
|
|
6104
|
+
(0, import_react49.useImperativeHandle)(ref, () => innerRef.current, [innerRef]);
|
|
6105
|
+
(0, import_react49.useEffect)(() => {
|
|
5752
6106
|
setDisplayValue(getFormattedDisplayValue(value));
|
|
5753
6107
|
}, [value, getFormattedDisplayValue]);
|
|
5754
|
-
const handleChange = (0,
|
|
6108
|
+
const handleChange = (0, import_react49.useCallback)(
|
|
5755
6109
|
(event) => {
|
|
5756
6110
|
const newValue = event.target.value;
|
|
5757
6111
|
setValue(newValue);
|
|
@@ -5761,21 +6115,21 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5761
6115
|
},
|
|
5762
6116
|
[setValue, getFormattedDisplayValue, isControlled]
|
|
5763
6117
|
);
|
|
5764
|
-
const handleCalendarToggle = (0,
|
|
6118
|
+
const handleCalendarToggle = (0, import_react49.useCallback)(
|
|
5765
6119
|
(event) => {
|
|
5766
6120
|
setAnchorEl(anchorEl ? null : event.currentTarget);
|
|
5767
6121
|
innerRef.current?.focus();
|
|
5768
6122
|
},
|
|
5769
6123
|
[anchorEl, setAnchorEl, innerRef]
|
|
5770
6124
|
);
|
|
5771
|
-
const handleInputMouseDown = (0,
|
|
6125
|
+
const handleInputMouseDown = (0, import_react49.useCallback)(
|
|
5772
6126
|
(event) => {
|
|
5773
6127
|
event.preventDefault();
|
|
5774
6128
|
buttonRef.current?.focus();
|
|
5775
6129
|
},
|
|
5776
6130
|
[buttonRef]
|
|
5777
6131
|
);
|
|
5778
|
-
return /* @__PURE__ */
|
|
6132
|
+
return /* @__PURE__ */ import_react49.default.createElement(MonthPickerRoot, null, /* @__PURE__ */ import_react49.default.createElement(import_base4.FocusTrap, { open: true }, /* @__PURE__ */ import_react49.default.createElement(import_react49.default.Fragment, null, /* @__PURE__ */ import_react49.default.createElement(
|
|
5779
6133
|
Input_default,
|
|
5780
6134
|
{
|
|
5781
6135
|
...innerProps,
|
|
@@ -5805,7 +6159,7 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5805
6159
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
5806
6160
|
fontFamily: "monospace"
|
|
5807
6161
|
},
|
|
5808
|
-
endDecorator: /* @__PURE__ */
|
|
6162
|
+
endDecorator: /* @__PURE__ */ import_react49.default.createElement(
|
|
5809
6163
|
IconButton_default,
|
|
5810
6164
|
{
|
|
5811
6165
|
ref: buttonRef,
|
|
@@ -5817,12 +6171,12 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5817
6171
|
"aria-expanded": open,
|
|
5818
6172
|
disabled
|
|
5819
6173
|
},
|
|
5820
|
-
/* @__PURE__ */
|
|
6174
|
+
/* @__PURE__ */ import_react49.default.createElement(import_CalendarToday3.default, null)
|
|
5821
6175
|
),
|
|
5822
6176
|
label,
|
|
5823
6177
|
helperText
|
|
5824
6178
|
}
|
|
5825
|
-
), open && /* @__PURE__ */
|
|
6179
|
+
), open && /* @__PURE__ */ import_react49.default.createElement(import_base4.ClickAwayListener, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ import_react49.default.createElement(
|
|
5826
6180
|
StyledPopper3,
|
|
5827
6181
|
{
|
|
5828
6182
|
id: "month-picker-popper",
|
|
@@ -5841,7 +6195,7 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5841
6195
|
"aria-label": "Calendar Tooltip",
|
|
5842
6196
|
"aria-expanded": open
|
|
5843
6197
|
},
|
|
5844
|
-
/* @__PURE__ */
|
|
6198
|
+
/* @__PURE__ */ import_react49.default.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ import_react49.default.createElement(
|
|
5845
6199
|
Calendar_default,
|
|
5846
6200
|
{
|
|
5847
6201
|
view: "month",
|
|
@@ -5862,14 +6216,14 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5862
6216
|
disablePast,
|
|
5863
6217
|
locale
|
|
5864
6218
|
}
|
|
5865
|
-
), /* @__PURE__ */
|
|
6219
|
+
), /* @__PURE__ */ import_react49.default.createElement(
|
|
5866
6220
|
DialogActions_default,
|
|
5867
6221
|
{
|
|
5868
6222
|
sx: {
|
|
5869
6223
|
p: 1
|
|
5870
6224
|
}
|
|
5871
6225
|
},
|
|
5872
|
-
/* @__PURE__ */
|
|
6226
|
+
/* @__PURE__ */ import_react49.default.createElement(
|
|
5873
6227
|
Button_default,
|
|
5874
6228
|
{
|
|
5875
6229
|
size,
|
|
@@ -5892,18 +6246,18 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5892
6246
|
});
|
|
5893
6247
|
|
|
5894
6248
|
// src/components/MonthRangePicker/MonthRangePicker.tsx
|
|
5895
|
-
var
|
|
6249
|
+
var import_react50 = __toESM(require("react"));
|
|
5896
6250
|
var import_react_imask3 = require("react-imask");
|
|
5897
6251
|
var import_CalendarToday4 = __toESM(require("@mui/icons-material/CalendarToday"));
|
|
5898
|
-
var
|
|
6252
|
+
var import_joy62 = require("@mui/joy");
|
|
5899
6253
|
var import_base5 = require("@mui/base");
|
|
5900
|
-
var StyledPopper4 = (0,
|
|
6254
|
+
var StyledPopper4 = (0, import_joy62.styled)(import_base5.Popper, {
|
|
5901
6255
|
name: "MonthRangePicker",
|
|
5902
6256
|
slot: "popper"
|
|
5903
6257
|
})(({ theme }) => ({
|
|
5904
6258
|
zIndex: theme.zIndex.tooltip
|
|
5905
6259
|
}));
|
|
5906
|
-
var CalendarSheet4 = (0,
|
|
6260
|
+
var CalendarSheet4 = (0, import_joy62.styled)(Sheet_default, {
|
|
5907
6261
|
name: "MonthRangePicker",
|
|
5908
6262
|
slot: "sheet",
|
|
5909
6263
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5913,7 +6267,7 @@ var CalendarSheet4 = (0, import_joy61.styled)(Sheet_default, {
|
|
|
5913
6267
|
boxShadow: theme.shadow.md,
|
|
5914
6268
|
borderRadius: theme.radius.md
|
|
5915
6269
|
}));
|
|
5916
|
-
var MonthRangePickerRoot = (0,
|
|
6270
|
+
var MonthRangePickerRoot = (0, import_joy62.styled)("div", {
|
|
5917
6271
|
name: "MonthRangePicker",
|
|
5918
6272
|
slot: "root",
|
|
5919
6273
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5950,9 +6304,9 @@ var parseDates2 = (str) => {
|
|
|
5950
6304
|
var formatToPattern3 = (format) => {
|
|
5951
6305
|
return `${format} - ${format}`.replace(/YYYY/g, "Y").replace(/MM/g, "m").replace(/[^YMm\s]/g, (match) => `${match}\``);
|
|
5952
6306
|
};
|
|
5953
|
-
var TextMaskAdapter9 =
|
|
6307
|
+
var TextMaskAdapter9 = import_react50.default.forwardRef(function TextMaskAdapter10(props, ref) {
|
|
5954
6308
|
const { onChange, format, ...other } = props;
|
|
5955
|
-
return /* @__PURE__ */
|
|
6309
|
+
return /* @__PURE__ */ import_react50.default.createElement(
|
|
5956
6310
|
import_react_imask3.IMaskInput,
|
|
5957
6311
|
{
|
|
5958
6312
|
...other,
|
|
@@ -5980,8 +6334,8 @@ var TextMaskAdapter9 = import_react48.default.forwardRef(function TextMaskAdapte
|
|
|
5980
6334
|
}
|
|
5981
6335
|
);
|
|
5982
6336
|
});
|
|
5983
|
-
var MonthRangePicker = (0,
|
|
5984
|
-
const props = (0,
|
|
6337
|
+
var MonthRangePicker = (0, import_react50.forwardRef)((inProps, ref) => {
|
|
6338
|
+
const props = (0, import_joy62.useThemeProps)({ props: inProps, name: "MonthRangePicker" });
|
|
5985
6339
|
const {
|
|
5986
6340
|
onChange,
|
|
5987
6341
|
disabled,
|
|
@@ -6000,35 +6354,35 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6000
6354
|
size,
|
|
6001
6355
|
...innerProps
|
|
6002
6356
|
} = props;
|
|
6003
|
-
const innerRef = (0,
|
|
6357
|
+
const innerRef = (0, import_react50.useRef)(null);
|
|
6004
6358
|
const [value, setValue] = useControlledState(
|
|
6005
6359
|
props.value,
|
|
6006
6360
|
props.defaultValue || "",
|
|
6007
|
-
(0,
|
|
6361
|
+
(0, import_react50.useCallback)((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
|
|
6008
6362
|
);
|
|
6009
|
-
const [anchorEl, setAnchorEl] = (0,
|
|
6363
|
+
const [anchorEl, setAnchorEl] = (0, import_react50.useState)(null);
|
|
6010
6364
|
const open = Boolean(anchorEl);
|
|
6011
|
-
const calendarValue = (0,
|
|
6012
|
-
(0,
|
|
6365
|
+
const calendarValue = (0, import_react50.useMemo)(() => value ? parseDates2(value) : void 0, [value]);
|
|
6366
|
+
(0, import_react50.useEffect)(() => {
|
|
6013
6367
|
if (!anchorEl) {
|
|
6014
6368
|
innerRef.current?.blur();
|
|
6015
6369
|
}
|
|
6016
6370
|
}, [anchorEl, innerRef]);
|
|
6017
|
-
(0,
|
|
6018
|
-
const handleChange = (0,
|
|
6371
|
+
(0, import_react50.useImperativeHandle)(ref, () => innerRef.current, [innerRef]);
|
|
6372
|
+
const handleChange = (0, import_react50.useCallback)(
|
|
6019
6373
|
(event) => {
|
|
6020
6374
|
setValue(event.target.value);
|
|
6021
6375
|
},
|
|
6022
6376
|
[setValue]
|
|
6023
6377
|
);
|
|
6024
|
-
const handleCalendarToggle = (0,
|
|
6378
|
+
const handleCalendarToggle = (0, import_react50.useCallback)(
|
|
6025
6379
|
(event) => {
|
|
6026
6380
|
setAnchorEl(anchorEl ? null : event.currentTarget);
|
|
6027
6381
|
innerRef.current?.focus();
|
|
6028
6382
|
},
|
|
6029
6383
|
[anchorEl, setAnchorEl, innerRef]
|
|
6030
6384
|
);
|
|
6031
|
-
const handleCalendarChange = (0,
|
|
6385
|
+
const handleCalendarChange = (0, import_react50.useCallback)(
|
|
6032
6386
|
([date1, date2]) => {
|
|
6033
6387
|
if (!date1 || !date2) return;
|
|
6034
6388
|
setValue(formatValueString4([date1, date2], format));
|
|
@@ -6036,7 +6390,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6036
6390
|
},
|
|
6037
6391
|
[setValue, setAnchorEl, format]
|
|
6038
6392
|
);
|
|
6039
|
-
return /* @__PURE__ */
|
|
6393
|
+
return /* @__PURE__ */ import_react50.default.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ import_react50.default.createElement(import_base5.FocusTrap, { open: true }, /* @__PURE__ */ import_react50.default.createElement(import_react50.default.Fragment, null, /* @__PURE__ */ import_react50.default.createElement(
|
|
6040
6394
|
Input_default,
|
|
6041
6395
|
{
|
|
6042
6396
|
...innerProps,
|
|
@@ -6058,7 +6412,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6058
6412
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6059
6413
|
fontFamily: "monospace"
|
|
6060
6414
|
},
|
|
6061
|
-
endDecorator: /* @__PURE__ */
|
|
6415
|
+
endDecorator: /* @__PURE__ */ import_react50.default.createElement(
|
|
6062
6416
|
IconButton_default,
|
|
6063
6417
|
{
|
|
6064
6418
|
variant: "plain",
|
|
@@ -6068,12 +6422,12 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6068
6422
|
"aria-haspopup": "dialog",
|
|
6069
6423
|
"aria-expanded": open
|
|
6070
6424
|
},
|
|
6071
|
-
/* @__PURE__ */
|
|
6425
|
+
/* @__PURE__ */ import_react50.default.createElement(import_CalendarToday4.default, null)
|
|
6072
6426
|
),
|
|
6073
6427
|
label,
|
|
6074
6428
|
helperText
|
|
6075
6429
|
}
|
|
6076
|
-
), open && /* @__PURE__ */
|
|
6430
|
+
), open && /* @__PURE__ */ import_react50.default.createElement(import_base5.ClickAwayListener, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ import_react50.default.createElement(
|
|
6077
6431
|
StyledPopper4,
|
|
6078
6432
|
{
|
|
6079
6433
|
id: "month-range-picker-popper",
|
|
@@ -6092,7 +6446,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6092
6446
|
"aria-label": "Calendar Tooltip",
|
|
6093
6447
|
"aria-expanded": open
|
|
6094
6448
|
},
|
|
6095
|
-
/* @__PURE__ */
|
|
6449
|
+
/* @__PURE__ */ import_react50.default.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ import_react50.default.createElement(
|
|
6096
6450
|
Calendar_default,
|
|
6097
6451
|
{
|
|
6098
6452
|
view: "month",
|
|
@@ -6105,14 +6459,14 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6105
6459
|
disableFuture,
|
|
6106
6460
|
disablePast
|
|
6107
6461
|
}
|
|
6108
|
-
), /* @__PURE__ */
|
|
6462
|
+
), /* @__PURE__ */ import_react50.default.createElement(
|
|
6109
6463
|
DialogActions_default,
|
|
6110
6464
|
{
|
|
6111
6465
|
sx: {
|
|
6112
6466
|
p: 1
|
|
6113
6467
|
}
|
|
6114
6468
|
},
|
|
6115
|
-
/* @__PURE__ */
|
|
6469
|
+
/* @__PURE__ */ import_react50.default.createElement(
|
|
6116
6470
|
Button_default,
|
|
6117
6471
|
{
|
|
6118
6472
|
size,
|
|
@@ -6131,22 +6485,22 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6131
6485
|
MonthRangePicker.displayName = "MonthRangePicker";
|
|
6132
6486
|
|
|
6133
6487
|
// src/components/NavigationGroup/NavigationGroup.tsx
|
|
6134
|
-
var
|
|
6135
|
-
var
|
|
6136
|
-
var AccordionSummary2 = (0,
|
|
6488
|
+
var import_react51 = __toESM(require("react"));
|
|
6489
|
+
var import_joy63 = require("@mui/joy");
|
|
6490
|
+
var AccordionSummary2 = (0, import_joy63.styled)(import_joy63.AccordionSummary, {
|
|
6137
6491
|
name: "NavigationGroup",
|
|
6138
6492
|
slot: "Summary",
|
|
6139
6493
|
shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
|
|
6140
6494
|
})(({ theme, useIcon, level }) => ({
|
|
6141
|
-
[`& .${
|
|
6495
|
+
[`& .${import_joy63.accordionSummaryClasses.button}`]: {
|
|
6142
6496
|
padding: theme.spacing(4, 6, 4, (useIcon ? 6 : 8) + (level || 0) * 8),
|
|
6143
|
-
[`&.${
|
|
6497
|
+
[`&.${import_joy63.accordionSummaryClasses.expanded}`]: {
|
|
6144
6498
|
color: theme.palette.primary.plainColor,
|
|
6145
6499
|
"--Icon-color": theme.palette.primary.plainColor
|
|
6146
6500
|
}
|
|
6147
6501
|
}
|
|
6148
6502
|
}));
|
|
6149
|
-
var AccordionDetails2 = (0,
|
|
6503
|
+
var AccordionDetails2 = (0, import_joy63.styled)(import_joy63.AccordionDetails, {
|
|
6150
6504
|
name: "NavigationGroup",
|
|
6151
6505
|
slot: "Details"
|
|
6152
6506
|
})(({ theme }) => ({
|
|
@@ -6155,13 +6509,13 @@ var AccordionDetails2 = (0, import_joy62.styled)(import_joy62.AccordionDetails,
|
|
|
6155
6509
|
}));
|
|
6156
6510
|
function NavigationGroup(props) {
|
|
6157
6511
|
const { title, children, startDecorator, level, ...rest } = props;
|
|
6158
|
-
return /* @__PURE__ */
|
|
6512
|
+
return /* @__PURE__ */ import_react51.default.createElement(import_joy63.Accordion, { ...rest }, /* @__PURE__ */ import_react51.default.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ import_react51.default.createElement(import_joy63.Stack, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ import_react51.default.createElement(AccordionDetails2, null, children));
|
|
6159
6513
|
}
|
|
6160
6514
|
|
|
6161
6515
|
// src/components/NavigationItem/NavigationItem.tsx
|
|
6162
|
-
var
|
|
6163
|
-
var
|
|
6164
|
-
var ListItemButton = (0,
|
|
6516
|
+
var import_react52 = __toESM(require("react"));
|
|
6517
|
+
var import_joy64 = require("@mui/joy");
|
|
6518
|
+
var ListItemButton = (0, import_joy64.styled)(import_joy64.ListItemButton, {
|
|
6165
6519
|
name: "NavigationItem",
|
|
6166
6520
|
slot: "Button",
|
|
6167
6521
|
shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
|
|
@@ -6175,7 +6529,7 @@ var ListItemButton = (0, import_joy63.styled)(import_joy63.ListItemButton, {
|
|
|
6175
6529
|
"&:active": {
|
|
6176
6530
|
backgroundColor: theme.palette.neutral.plainActiveBg
|
|
6177
6531
|
},
|
|
6178
|
-
[`&.${
|
|
6532
|
+
[`&.${import_joy64.listItemButtonClasses.selected}`]: {
|
|
6179
6533
|
color: theme.palette.primary.plainColor,
|
|
6180
6534
|
"--Icon-color": theme.palette.primary.plainColor,
|
|
6181
6535
|
"&:not(:hover):not(:active)": {
|
|
@@ -6188,7 +6542,7 @@ function NavigationItem(props) {
|
|
|
6188
6542
|
const handleClick = () => {
|
|
6189
6543
|
onClick?.(id);
|
|
6190
6544
|
};
|
|
6191
|
-
return /* @__PURE__ */
|
|
6545
|
+
return /* @__PURE__ */ import_react52.default.createElement(import_joy64.ListItem, { ...rest }, /* @__PURE__ */ import_react52.default.createElement(
|
|
6192
6546
|
ListItemButton,
|
|
6193
6547
|
{
|
|
6194
6548
|
level,
|
|
@@ -6197,21 +6551,21 @@ function NavigationItem(props) {
|
|
|
6197
6551
|
"aria-current": selected,
|
|
6198
6552
|
onClick: handleClick
|
|
6199
6553
|
},
|
|
6200
|
-
startDecorator && /* @__PURE__ */
|
|
6554
|
+
startDecorator && /* @__PURE__ */ import_react52.default.createElement(import_joy64.ListItemDecorator, null, startDecorator),
|
|
6201
6555
|
children
|
|
6202
6556
|
));
|
|
6203
6557
|
}
|
|
6204
6558
|
|
|
6205
6559
|
// src/components/Navigator/Navigator.tsx
|
|
6206
|
-
var
|
|
6560
|
+
var import_react53 = __toESM(require("react"));
|
|
6207
6561
|
function Navigator(props) {
|
|
6208
6562
|
const { items, level = 0, onSelect } = props;
|
|
6209
6563
|
const handleItemClick = (id) => {
|
|
6210
6564
|
onSelect?.(id);
|
|
6211
6565
|
};
|
|
6212
|
-
return /* @__PURE__ */
|
|
6566
|
+
return /* @__PURE__ */ import_react53.default.createElement("div", null, items.map((item, index) => {
|
|
6213
6567
|
if (item.type === "item") {
|
|
6214
|
-
return /* @__PURE__ */
|
|
6568
|
+
return /* @__PURE__ */ import_react53.default.createElement(
|
|
6215
6569
|
NavigationItem,
|
|
6216
6570
|
{
|
|
6217
6571
|
key: item.id,
|
|
@@ -6224,7 +6578,7 @@ function Navigator(props) {
|
|
|
6224
6578
|
item.title
|
|
6225
6579
|
);
|
|
6226
6580
|
} else if (item.type === "group") {
|
|
6227
|
-
return /* @__PURE__ */
|
|
6581
|
+
return /* @__PURE__ */ import_react53.default.createElement(
|
|
6228
6582
|
NavigationGroup,
|
|
6229
6583
|
{
|
|
6230
6584
|
key: `${item.title}-${index}`,
|
|
@@ -6242,22 +6596,22 @@ function Navigator(props) {
|
|
|
6242
6596
|
Navigator.displayName = "Navigator";
|
|
6243
6597
|
|
|
6244
6598
|
// src/components/ProfileMenu/ProfileMenu.tsx
|
|
6245
|
-
var
|
|
6246
|
-
var
|
|
6599
|
+
var import_react54 = __toESM(require("react"));
|
|
6600
|
+
var import_joy65 = require("@mui/joy");
|
|
6247
6601
|
var import_base6 = require("@mui/base");
|
|
6248
6602
|
var import_ArrowDropDown = __toESM(require("@mui/icons-material/ArrowDropDown"));
|
|
6249
|
-
var StyledProfileCard = (0,
|
|
6603
|
+
var StyledProfileCard = (0, import_joy65.styled)(import_joy3.Stack, {
|
|
6250
6604
|
name: "ProfileMenu",
|
|
6251
6605
|
slot: "item"
|
|
6252
6606
|
})({});
|
|
6253
6607
|
function ProfileCard(props) {
|
|
6254
6608
|
const { children, chip, caption, size } = props;
|
|
6255
|
-
const captionLevel = (0,
|
|
6256
|
-
const nameLevel = (0,
|
|
6257
|
-
return /* @__PURE__ */
|
|
6609
|
+
const captionLevel = (0, import_react54.useMemo)(() => size === "sm" ? "body-xs" : "body-sm", [size]);
|
|
6610
|
+
const nameLevel = (0, import_react54.useMemo)(() => size === "sm" ? "body-sm" : "body-md", [size]);
|
|
6611
|
+
return /* @__PURE__ */ import_react54.default.createElement(StyledProfileCard, { px: 4, py: 2 }, /* @__PURE__ */ import_react54.default.createElement(import_joy3.Stack, { direction: "row", gap: 2 }, /* @__PURE__ */ import_react54.default.createElement(Typography, { level: nameLevel, fontWeight: "bold", textColor: "text.primary" }, children), chip && /* @__PURE__ */ import_react54.default.createElement(Chip, { size, color: "neutral", variant: "outlined" }, chip)), caption && /* @__PURE__ */ import_react54.default.createElement(Typography, { level: captionLevel, textColor: "text.tertiary" }, caption));
|
|
6258
6612
|
}
|
|
6259
6613
|
ProfileCard.displayName = "ProfileCard";
|
|
6260
|
-
var StyledProfileMenuButton = (0,
|
|
6614
|
+
var StyledProfileMenuButton = (0, import_joy65.styled)(import_joy65.MenuButton, {
|
|
6261
6615
|
name: "ProfileMenu",
|
|
6262
6616
|
slot: "button"
|
|
6263
6617
|
})(({ theme }) => ({
|
|
@@ -6266,26 +6620,26 @@ var StyledProfileMenuButton = (0, import_joy64.styled)(import_joy64.MenuButton,
|
|
|
6266
6620
|
}));
|
|
6267
6621
|
function ProfileMenuButton(props) {
|
|
6268
6622
|
const { size = "md", src, alt, children, getInitial, ...innerProps } = props;
|
|
6269
|
-
return /* @__PURE__ */
|
|
6623
|
+
return /* @__PURE__ */ import_react54.default.createElement(
|
|
6270
6624
|
StyledProfileMenuButton,
|
|
6271
6625
|
{
|
|
6272
6626
|
variant: "plain",
|
|
6273
6627
|
color: "neutral",
|
|
6274
6628
|
size,
|
|
6275
|
-
endDecorator: /* @__PURE__ */
|
|
6629
|
+
endDecorator: /* @__PURE__ */ import_react54.default.createElement(import_ArrowDropDown.default, null),
|
|
6276
6630
|
...innerProps
|
|
6277
6631
|
},
|
|
6278
|
-
/* @__PURE__ */
|
|
6632
|
+
/* @__PURE__ */ import_react54.default.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
|
|
6279
6633
|
);
|
|
6280
6634
|
}
|
|
6281
6635
|
ProfileMenuButton.displayName = "ProfileMenuButton";
|
|
6282
|
-
var ProfileMenuRoot = (0,
|
|
6636
|
+
var ProfileMenuRoot = (0, import_joy65.styled)(Menu, {
|
|
6283
6637
|
name: "ProfileMenu",
|
|
6284
6638
|
slot: "root"
|
|
6285
6639
|
})(({ theme }) => ({
|
|
6286
6640
|
border: "none",
|
|
6287
6641
|
"--ListItem-paddingX": theme.spacing(4),
|
|
6288
|
-
[`.${
|
|
6642
|
+
[`.${import_joy65.menuItemClasses.root}`]: {
|
|
6289
6643
|
border: "none"
|
|
6290
6644
|
}
|
|
6291
6645
|
}));
|
|
@@ -6294,9 +6648,9 @@ function ProfileMenu(props) {
|
|
|
6294
6648
|
const [open, setOpen] = useControlledState(
|
|
6295
6649
|
_open,
|
|
6296
6650
|
defaultOpen ?? false,
|
|
6297
|
-
(0,
|
|
6651
|
+
(0, import_react54.useCallback)((value) => onOpenChange?.(value), [onOpenChange])
|
|
6298
6652
|
);
|
|
6299
|
-
return /* @__PURE__ */
|
|
6653
|
+
return /* @__PURE__ */ import_react54.default.createElement(import_base6.ClickAwayListener, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ import_react54.default.createElement("div", null, /* @__PURE__ */ import_react54.default.createElement(import_joy65.Dropdown, { open }, /* @__PURE__ */ import_react54.default.createElement(
|
|
6300
6654
|
ProfileMenuButton,
|
|
6301
6655
|
{
|
|
6302
6656
|
size,
|
|
@@ -6306,7 +6660,7 @@ function ProfileMenu(props) {
|
|
|
6306
6660
|
getInitial
|
|
6307
6661
|
},
|
|
6308
6662
|
profile.name
|
|
6309
|
-
), /* @__PURE__ */
|
|
6663
|
+
), /* @__PURE__ */ import_react54.default.createElement(ProfileMenuRoot, { size, placement: "bottom-end", ...innerProps, onClose: () => setOpen(false) }, /* @__PURE__ */ import_react54.default.createElement(ProfileCard, { size, caption: profile.caption, chip: profile.chip }, profile.name), !!menuItems.length && /* @__PURE__ */ import_react54.default.createElement(import_joy65.ListDivider, null), menuItems.map(({ label, ...menuProps }) => /* @__PURE__ */ import_react54.default.createElement(
|
|
6310
6664
|
MenuItem,
|
|
6311
6665
|
{
|
|
6312
6666
|
key: label,
|
|
@@ -6322,9 +6676,9 @@ function ProfileMenu(props) {
|
|
|
6322
6676
|
ProfileMenu.displayName = "ProfileMenu";
|
|
6323
6677
|
|
|
6324
6678
|
// src/components/RadioTileGroup/RadioTileGroup.tsx
|
|
6325
|
-
var
|
|
6326
|
-
var
|
|
6327
|
-
var RadioTileGroupRoot = (0,
|
|
6679
|
+
var import_react55 = __toESM(require("react"));
|
|
6680
|
+
var import_joy66 = require("@mui/joy");
|
|
6681
|
+
var RadioTileGroupRoot = (0, import_joy66.styled)(RadioGroup, {
|
|
6328
6682
|
name: "RadioTileGroup",
|
|
6329
6683
|
slot: "root",
|
|
6330
6684
|
shouldForwardProp: (prop) => prop !== "flex" && prop !== "columns"
|
|
@@ -6336,28 +6690,28 @@ var RadioTileGroupRoot = (0, import_joy65.styled)(RadioGroup, {
|
|
|
6336
6690
|
display: "grid",
|
|
6337
6691
|
gridTemplateColumns: `repeat(${columns}, 1fr)`
|
|
6338
6692
|
},
|
|
6339
|
-
[`& .${
|
|
6693
|
+
[`& .${import_joy66.sheetClasses.root}.${import_joy66.radioClasses.disabled}`]: {
|
|
6340
6694
|
borderColor: theme.palette.neutral.outlinedDisabledBorder
|
|
6341
6695
|
},
|
|
6342
|
-
[`& .${
|
|
6343
|
-
[`& .${
|
|
6696
|
+
[`& .${import_joy66.radioClasses.root}`]: {
|
|
6697
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6344
6698
|
borderRadius: theme.radius.md
|
|
6345
6699
|
},
|
|
6346
|
-
[`&.${
|
|
6347
|
-
[`& .${
|
|
6700
|
+
[`&.${import_joy66.radioClasses.checked}`]: {
|
|
6701
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6348
6702
|
inset: -1,
|
|
6349
6703
|
border: "2px solid",
|
|
6350
6704
|
borderColor: theme.palette.primary.outlinedColor
|
|
6351
6705
|
},
|
|
6352
|
-
[`&.${
|
|
6353
|
-
[`& .${
|
|
6706
|
+
[`&.${import_joy66.radioClasses.disabled}`]: {
|
|
6707
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6354
6708
|
borderColor: theme.palette.neutral.outlinedBorder
|
|
6355
6709
|
}
|
|
6356
6710
|
}
|
|
6357
6711
|
}
|
|
6358
6712
|
}
|
|
6359
6713
|
}));
|
|
6360
|
-
var RadioTileSheet = (0,
|
|
6714
|
+
var RadioTileSheet = (0, import_joy66.styled)(Sheet, {
|
|
6361
6715
|
name: "RadioTileGroup",
|
|
6362
6716
|
slot: "tile",
|
|
6363
6717
|
shouldForwardProp: (prop) => prop !== "disabled" && prop !== "size" && prop !== "flex" && prop !== "textAlign"
|
|
@@ -6410,7 +6764,7 @@ function RadioTileGroup(props) {
|
|
|
6410
6764
|
error,
|
|
6411
6765
|
required
|
|
6412
6766
|
} = props;
|
|
6413
|
-
const radioGroup = /* @__PURE__ */
|
|
6767
|
+
const radioGroup = /* @__PURE__ */ import_react55.default.createElement(
|
|
6414
6768
|
RadioTileGroupRoot,
|
|
6415
6769
|
{
|
|
6416
6770
|
overlay: true,
|
|
@@ -6421,7 +6775,7 @@ function RadioTileGroup(props) {
|
|
|
6421
6775
|
flex,
|
|
6422
6776
|
columns
|
|
6423
6777
|
},
|
|
6424
|
-
options.map((option) => /* @__PURE__ */
|
|
6778
|
+
options.map((option) => /* @__PURE__ */ import_react55.default.createElement(
|
|
6425
6779
|
RadioTileSheet,
|
|
6426
6780
|
{
|
|
6427
6781
|
key: option.value,
|
|
@@ -6431,7 +6785,7 @@ function RadioTileGroup(props) {
|
|
|
6431
6785
|
flex,
|
|
6432
6786
|
textAlign
|
|
6433
6787
|
},
|
|
6434
|
-
/* @__PURE__ */
|
|
6788
|
+
/* @__PURE__ */ import_react55.default.createElement(
|
|
6435
6789
|
Radio,
|
|
6436
6790
|
{
|
|
6437
6791
|
id: `${option.value}`,
|
|
@@ -6459,7 +6813,7 @@ function RadioTileGroup(props) {
|
|
|
6459
6813
|
}
|
|
6460
6814
|
}
|
|
6461
6815
|
),
|
|
6462
|
-
option.startDecorator && /* @__PURE__ */
|
|
6816
|
+
option.startDecorator && /* @__PURE__ */ import_react55.default.createElement(
|
|
6463
6817
|
Box_default,
|
|
6464
6818
|
{
|
|
6465
6819
|
sx: {
|
|
@@ -6480,32 +6834,32 @@ function RadioTileGroup(props) {
|
|
|
6480
6834
|
)
|
|
6481
6835
|
))
|
|
6482
6836
|
);
|
|
6483
|
-
return /* @__PURE__ */
|
|
6837
|
+
return /* @__PURE__ */ import_react55.default.createElement(FormControl_default, { required, disabled: allDisabled, error, size, sx, className }, label && /* @__PURE__ */ import_react55.default.createElement(FormLabel_default, null, label), radioGroup, helperText && /* @__PURE__ */ import_react55.default.createElement(FormHelperText_default, null, helperText));
|
|
6484
6838
|
}
|
|
6485
6839
|
RadioTileGroup.displayName = "RadioTileGroup";
|
|
6486
6840
|
|
|
6487
6841
|
// src/components/RadioList/RadioList.tsx
|
|
6488
|
-
var
|
|
6842
|
+
var import_react56 = __toESM(require("react"));
|
|
6489
6843
|
function RadioList(props) {
|
|
6490
6844
|
const { items, ...innerProps } = props;
|
|
6491
|
-
return /* @__PURE__ */
|
|
6845
|
+
return /* @__PURE__ */ import_react56.default.createElement(RadioGroup, { ...innerProps }, items.map((item) => /* @__PURE__ */ import_react56.default.createElement(Radio, { key: `${item.value}`, value: item.value, label: item.label })));
|
|
6492
6846
|
}
|
|
6493
6847
|
RadioList.displayName = "RadioList";
|
|
6494
6848
|
|
|
6495
6849
|
// src/components/Stepper/Stepper.tsx
|
|
6496
|
-
var
|
|
6497
|
-
var
|
|
6850
|
+
var import_react57 = __toESM(require("react"));
|
|
6851
|
+
var import_joy67 = require("@mui/joy");
|
|
6498
6852
|
var import_Check = __toESM(require("@mui/icons-material/Check"));
|
|
6499
6853
|
var import_framer_motion27 = require("framer-motion");
|
|
6500
|
-
var Step = (0,
|
|
6854
|
+
var Step = (0, import_joy67.styled)(import_joy67.Step)({});
|
|
6501
6855
|
Step.displayName = "Step";
|
|
6502
|
-
var StepIndicator = (0,
|
|
6856
|
+
var StepIndicator = (0, import_joy67.styled)(import_joy67.StepIndicator)({});
|
|
6503
6857
|
StepIndicator.displayName = "StepIndicator";
|
|
6504
|
-
var StyledStepper = (0,
|
|
6858
|
+
var StyledStepper = (0, import_joy67.styled)(import_joy67.Stepper)(({ theme }) => ({
|
|
6505
6859
|
"--StepIndicator-size": "24px",
|
|
6506
6860
|
"--Step-gap": theme.spacing(2),
|
|
6507
6861
|
"--joy-palette-success-solidBg": "var(--joy-palette-success-400)",
|
|
6508
|
-
[`& .${
|
|
6862
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6509
6863
|
fontSize: "var(--ceed-fontSize-xs)"
|
|
6510
6864
|
}
|
|
6511
6865
|
}));
|
|
@@ -6522,31 +6876,31 @@ function Stepper(props) {
|
|
|
6522
6876
|
stepOrientation = "horizontal"
|
|
6523
6877
|
} = props;
|
|
6524
6878
|
const effectiveStepOrientation = orientation === "vertical" ? "horizontal" : stepOrientation;
|
|
6525
|
-
return /* @__PURE__ */
|
|
6879
|
+
return /* @__PURE__ */ import_react57.default.createElement(
|
|
6526
6880
|
MotionStepper,
|
|
6527
6881
|
{
|
|
6528
6882
|
orientation,
|
|
6529
6883
|
sx: (theme) => ({
|
|
6530
6884
|
"--StepIndicator-size": "24px",
|
|
6531
6885
|
"--Step-gap": theme.spacing(2),
|
|
6532
|
-
[`& .${
|
|
6886
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6533
6887
|
fontSize: "var(--ceed-fontSize-xs)"
|
|
6534
6888
|
},
|
|
6535
|
-
[`& .${
|
|
6889
|
+
[`& .${import_joy67.stepClasses.completed}`]: {
|
|
6536
6890
|
"&::after": { bgcolor: activeLineColor },
|
|
6537
|
-
[`& .${
|
|
6891
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6538
6892
|
bgcolor: activeColor
|
|
6539
6893
|
}
|
|
6540
6894
|
},
|
|
6541
|
-
[`& .${
|
|
6895
|
+
[`& .${import_joy67.stepClasses.active}`]: {
|
|
6542
6896
|
"&::after": { bgcolor: inactiveLineColor },
|
|
6543
|
-
[`& .${
|
|
6897
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6544
6898
|
bgcolor: activeColor
|
|
6545
6899
|
}
|
|
6546
6900
|
},
|
|
6547
|
-
[`& .${
|
|
6901
|
+
[`& .${import_joy67.stepClasses.disabled}`]: {
|
|
6548
6902
|
"&::after": { bgcolor: inactiveLineColor },
|
|
6549
|
-
[`& .${
|
|
6903
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6550
6904
|
bgcolor: theme.vars.palette.background.surface,
|
|
6551
6905
|
borderColor: theme.vars.palette.neutral.outlinedBorder,
|
|
6552
6906
|
borderWidth: "1px",
|
|
@@ -6561,23 +6915,23 @@ function Stepper(props) {
|
|
|
6561
6915
|
const completed = activeStep > i + 1;
|
|
6562
6916
|
const disabled = activeStep < i + 1;
|
|
6563
6917
|
const hasContent = step.label || step.extraContent;
|
|
6564
|
-
return /* @__PURE__ */
|
|
6918
|
+
return /* @__PURE__ */ import_react57.default.createElement(
|
|
6565
6919
|
Step,
|
|
6566
6920
|
{
|
|
6567
6921
|
key: `step-${i}`,
|
|
6568
|
-
indicator: /* @__PURE__ */
|
|
6922
|
+
indicator: /* @__PURE__ */ import_react57.default.createElement(StepIndicator, { variant: disabled ? "outlined" : "solid", color: disabled ? "neutral" : "primary" }, completed ? /* @__PURE__ */ import_react57.default.createElement(import_Check.default, null) : step.indicatorContent),
|
|
6569
6923
|
active,
|
|
6570
6924
|
completed,
|
|
6571
6925
|
disabled,
|
|
6572
6926
|
orientation: effectiveStepOrientation
|
|
6573
6927
|
},
|
|
6574
|
-
hasContent && /* @__PURE__ */
|
|
6928
|
+
hasContent && /* @__PURE__ */ import_react57.default.createElement(
|
|
6575
6929
|
Stack_default,
|
|
6576
6930
|
{
|
|
6577
6931
|
sx: orientation === "horizontal" && effectiveStepOrientation === "vertical" ? { alignItems: "center" } : {}
|
|
6578
6932
|
},
|
|
6579
|
-
step.label && /* @__PURE__ */
|
|
6580
|
-
step.extraContent && /* @__PURE__ */
|
|
6933
|
+
step.label && /* @__PURE__ */ import_react57.default.createElement(Typography_default, { level: "title-sm" }, step.label),
|
|
6934
|
+
step.extraContent && /* @__PURE__ */ import_react57.default.createElement(Typography_default, { level: "body-xs" }, step.extraContent)
|
|
6581
6935
|
)
|
|
6582
6936
|
);
|
|
6583
6937
|
})
|
|
@@ -6586,11 +6940,11 @@ function Stepper(props) {
|
|
|
6586
6940
|
Stepper.displayName = "Stepper";
|
|
6587
6941
|
|
|
6588
6942
|
// src/components/Switch/Switch.tsx
|
|
6589
|
-
var
|
|
6590
|
-
var
|
|
6943
|
+
var import_react58 = __toESM(require("react"));
|
|
6944
|
+
var import_joy68 = require("@mui/joy");
|
|
6591
6945
|
var import_framer_motion28 = require("framer-motion");
|
|
6592
|
-
var MotionSwitch = (0, import_framer_motion28.motion)(
|
|
6593
|
-
var StyledThumb = (0,
|
|
6946
|
+
var MotionSwitch = (0, import_framer_motion28.motion)(import_joy68.Switch);
|
|
6947
|
+
var StyledThumb = (0, import_joy68.styled)(import_framer_motion28.motion.div)({
|
|
6594
6948
|
"--Icon-fontSize": "calc(var(--Switch-thumbSize) * 0.75)",
|
|
6595
6949
|
display: "inline-flex",
|
|
6596
6950
|
justifyContent: "center",
|
|
@@ -6603,19 +6957,19 @@ var StyledThumb = (0, import_joy67.styled)(import_framer_motion28.motion.div)({
|
|
|
6603
6957
|
boxShadow: "var(--Switch-thumbShadow)",
|
|
6604
6958
|
color: "var(--Switch-thumbColor)",
|
|
6605
6959
|
backgroundColor: "var(--Switch-thumbBackground)",
|
|
6606
|
-
[`&.${
|
|
6960
|
+
[`&.${import_joy68.switchClasses.checked}`]: {
|
|
6607
6961
|
left: "unset",
|
|
6608
6962
|
right: "var(--Switch-thumbOffset)"
|
|
6609
6963
|
}
|
|
6610
6964
|
});
|
|
6611
|
-
var Thumb = (props) => /* @__PURE__ */
|
|
6965
|
+
var Thumb = (props) => /* @__PURE__ */ import_react58.default.createElement(StyledThumb, { ...props, layout: true, transition: spring });
|
|
6612
6966
|
var spring = {
|
|
6613
6967
|
type: "spring",
|
|
6614
6968
|
stiffness: 700,
|
|
6615
6969
|
damping: 30
|
|
6616
6970
|
};
|
|
6617
6971
|
var Switch = (props) => {
|
|
6618
|
-
return /* @__PURE__ */
|
|
6972
|
+
return /* @__PURE__ */ import_react58.default.createElement(
|
|
6619
6973
|
MotionSwitch,
|
|
6620
6974
|
{
|
|
6621
6975
|
...props,
|
|
@@ -6629,32 +6983,32 @@ var Switch = (props) => {
|
|
|
6629
6983
|
Switch.displayName = "Switch";
|
|
6630
6984
|
|
|
6631
6985
|
// src/components/Tabs/Tabs.tsx
|
|
6632
|
-
var
|
|
6633
|
-
var
|
|
6634
|
-
var StyledTabs = (0,
|
|
6986
|
+
var import_react59 = __toESM(require("react"));
|
|
6987
|
+
var import_joy69 = require("@mui/joy");
|
|
6988
|
+
var StyledTabs = (0, import_joy69.styled)(import_joy69.Tabs)(({ theme }) => ({
|
|
6635
6989
|
backgroundColor: theme.palette.background.body
|
|
6636
6990
|
}));
|
|
6637
6991
|
var Tabs = StyledTabs;
|
|
6638
6992
|
Tabs.displayName = "Tabs";
|
|
6639
|
-
var StyledTab = (0,
|
|
6993
|
+
var StyledTab = (0, import_joy69.styled)(import_joy69.Tab)(({ theme }) => ({
|
|
6640
6994
|
gap: theme.spacing(2),
|
|
6641
|
-
[`&:not(.${
|
|
6995
|
+
[`&:not(.${import_joy69.tabClasses.selected})`]: {
|
|
6642
6996
|
color: theme.palette.neutral[700]
|
|
6643
6997
|
},
|
|
6644
|
-
[`&.${
|
|
6998
|
+
[`&.${import_joy69.tabClasses.variantPlain}`]: {
|
|
6645
6999
|
backgroundColor: theme.palette.background.body
|
|
6646
7000
|
}
|
|
6647
7001
|
}));
|
|
6648
|
-
var Tab = (0,
|
|
6649
|
-
return /* @__PURE__ */
|
|
7002
|
+
var Tab = (0, import_react59.forwardRef)(function Tab2({ startDecorator, endDecorator, children, ...props }, ref) {
|
|
7003
|
+
return /* @__PURE__ */ import_react59.default.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
|
|
6650
7004
|
});
|
|
6651
7005
|
Tab.displayName = "Tab";
|
|
6652
|
-
var TabList =
|
|
6653
|
-
var TabPanel =
|
|
7006
|
+
var TabList = import_joy69.TabList;
|
|
7007
|
+
var TabPanel = import_joy69.TabPanel;
|
|
6654
7008
|
|
|
6655
7009
|
// src/components/ThemeProvider/ThemeProvider.tsx
|
|
6656
|
-
var
|
|
6657
|
-
var
|
|
7010
|
+
var import_react60 = __toESM(require("react"));
|
|
7011
|
+
var import_joy70 = require("@mui/joy");
|
|
6658
7012
|
var colorScheme = {
|
|
6659
7013
|
palette: {
|
|
6660
7014
|
danger: {
|
|
@@ -6707,7 +7061,7 @@ var colorScheme = {
|
|
|
6707
7061
|
}
|
|
6708
7062
|
}
|
|
6709
7063
|
};
|
|
6710
|
-
var defaultTheme = (0,
|
|
7064
|
+
var defaultTheme = (0, import_joy70.extendTheme)({
|
|
6711
7065
|
cssVarPrefix: "ceed",
|
|
6712
7066
|
spacing: 4,
|
|
6713
7067
|
breakpoints: {
|
|
@@ -6734,7 +7088,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6734
7088
|
},
|
|
6735
7089
|
styleOverrides: {
|
|
6736
7090
|
root: {
|
|
6737
|
-
[`.${
|
|
7091
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6738
7092
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6739
7093
|
"font-family": "monospace"
|
|
6740
7094
|
}
|
|
@@ -6747,7 +7101,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6747
7101
|
},
|
|
6748
7102
|
styleOverrides: {
|
|
6749
7103
|
root: {
|
|
6750
|
-
[`.${
|
|
7104
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6751
7105
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6752
7106
|
"font-family": "monospace"
|
|
6753
7107
|
}
|
|
@@ -6760,7 +7114,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6760
7114
|
},
|
|
6761
7115
|
styleOverrides: {
|
|
6762
7116
|
root: {
|
|
6763
|
-
[`.${
|
|
7117
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6764
7118
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6765
7119
|
"font-family": "monospace"
|
|
6766
7120
|
}
|
|
@@ -6773,7 +7127,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6773
7127
|
},
|
|
6774
7128
|
styleOverrides: {
|
|
6775
7129
|
root: {
|
|
6776
|
-
[`.${
|
|
7130
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6777
7131
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6778
7132
|
"font-family": "monospace"
|
|
6779
7133
|
}
|
|
@@ -6786,7 +7140,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6786
7140
|
},
|
|
6787
7141
|
styleOverrides: {
|
|
6788
7142
|
root: {
|
|
6789
|
-
[`.${
|
|
7143
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6790
7144
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6791
7145
|
"font-family": "monospace"
|
|
6792
7146
|
}
|
|
@@ -6799,7 +7153,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6799
7153
|
},
|
|
6800
7154
|
styleOverrides: {
|
|
6801
7155
|
root: {
|
|
6802
|
-
[`.${
|
|
7156
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6803
7157
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6804
7158
|
"font-family": "monospace"
|
|
6805
7159
|
}
|
|
@@ -6877,7 +7231,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6877
7231
|
outline: `${theme.palette.primary[500]} solid 2px`,
|
|
6878
7232
|
outlineOffset: "-2px"
|
|
6879
7233
|
},
|
|
6880
|
-
[`& .${
|
|
7234
|
+
[`& .${import_joy70.checkboxClasses.root}`]: {
|
|
6881
7235
|
verticalAlign: "middle"
|
|
6882
7236
|
}
|
|
6883
7237
|
})
|
|
@@ -6932,6 +7286,6 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6932
7286
|
});
|
|
6933
7287
|
function ThemeProvider(props) {
|
|
6934
7288
|
const theme = props.theme || defaultTheme;
|
|
6935
|
-
return /* @__PURE__ */
|
|
7289
|
+
return /* @__PURE__ */ import_react60.default.createElement(import_react60.default.Fragment, null, /* @__PURE__ */ import_react60.default.createElement(import_joy70.CssVarsProvider, { theme }, /* @__PURE__ */ import_react60.default.createElement(import_joy70.CssBaseline, null), props.children));
|
|
6936
7290
|
}
|
|
6937
7291
|
ThemeProvider.displayName = "ThemeProvider";
|