@ceed/ads 1.15.0 → 1.16.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/FilterableCheckboxGroup/FilterableCheckboxGroup.d.ts +21 -0
- package/dist/components/FilterableCheckboxGroup/index.d.ts +3 -0
- package/dist/components/ProfileMenu/ProfileMenu.d.ts +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/inputs/FilterableCheckboxGroup.md +179 -0
- package/dist/components/inputs/llms.txt +1 -0
- package/dist/index.cjs +564 -380
- package/dist/index.d.ts +1 -1
- package/dist/index.js +375 -191
- package/dist/llms.txt +1 -0
- package/framer/index.js +42 -42
- 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"));
|
|
@@ -4473,17 +4474,200 @@ var InsetDrawer = (0, import_joy42.styled)(import_joy42.Drawer)(({ theme }) => (
|
|
|
4473
4474
|
}
|
|
4474
4475
|
}));
|
|
4475
4476
|
|
|
4477
|
+
// src/components/FilterableCheckboxGroup/FilterableCheckboxGroup.tsx
|
|
4478
|
+
var import_react33 = __toESM(require("react"));
|
|
4479
|
+
var import_joy43 = require("@mui/joy");
|
|
4480
|
+
var import_Search = __toESM(require("@mui/icons-material/Search"));
|
|
4481
|
+
var import_react_virtual3 = require("@tanstack/react-virtual");
|
|
4482
|
+
function FilterableCheckboxGroup(props) {
|
|
4483
|
+
const { value, options, label, placeholder, helperText, size = "md", required, onChange, maxHeight = 300 } = props;
|
|
4484
|
+
const [searchTerm, setSearchTerm] = (0, import_react33.useState)("");
|
|
4485
|
+
const [sortedOptions, setSortedOptions] = (0, import_react33.useState)(options);
|
|
4486
|
+
const [internalValue, setInternalValue] = useControlledState(
|
|
4487
|
+
value,
|
|
4488
|
+
value ?? [],
|
|
4489
|
+
(0, import_react33.useCallback)((newValue) => onChange?.(newValue), [onChange])
|
|
4490
|
+
);
|
|
4491
|
+
const parentRef = (0, import_react33.useRef)(null);
|
|
4492
|
+
const isInitialSortRef = (0, import_react33.useRef)(false);
|
|
4493
|
+
const filteredOptions = (0, import_react33.useMemo)(() => {
|
|
4494
|
+
if (!searchTerm) return sortedOptions;
|
|
4495
|
+
return sortedOptions.filter((option) => option.label.toLowerCase().includes(searchTerm.toLowerCase()));
|
|
4496
|
+
}, [sortedOptions, searchTerm]);
|
|
4497
|
+
const itemSize = (0, import_react33.useMemo)(() => {
|
|
4498
|
+
switch (size) {
|
|
4499
|
+
case "sm":
|
|
4500
|
+
return 28;
|
|
4501
|
+
case "md":
|
|
4502
|
+
return 32;
|
|
4503
|
+
case "lg":
|
|
4504
|
+
return 36;
|
|
4505
|
+
}
|
|
4506
|
+
}, [size]);
|
|
4507
|
+
const noOptionsFontSize = (0, import_react33.useMemo)(() => {
|
|
4508
|
+
switch (size) {
|
|
4509
|
+
case "sm":
|
|
4510
|
+
return "14px";
|
|
4511
|
+
case "md":
|
|
4512
|
+
return "16px";
|
|
4513
|
+
case "lg":
|
|
4514
|
+
return "18px";
|
|
4515
|
+
}
|
|
4516
|
+
}, [size]);
|
|
4517
|
+
const virtualizer = (0, import_react_virtual3.useVirtualizer)({
|
|
4518
|
+
count: filteredOptions.length,
|
|
4519
|
+
estimateSize: () => itemSize,
|
|
4520
|
+
measureElement: (element) => element.clientHeight,
|
|
4521
|
+
getScrollElement: () => parentRef.current,
|
|
4522
|
+
overscan: 5
|
|
4523
|
+
});
|
|
4524
|
+
const items = virtualizer.getVirtualItems();
|
|
4525
|
+
(0, import_react33.useEffect)(() => {
|
|
4526
|
+
if (isInitialSortRef.current) return;
|
|
4527
|
+
const initialValue = value ?? [];
|
|
4528
|
+
const sorted = [...options].sort((a, b) => {
|
|
4529
|
+
const aSelected = initialValue.includes(a.value);
|
|
4530
|
+
const bSelected = initialValue.includes(b.value);
|
|
4531
|
+
if (aSelected !== bSelected) {
|
|
4532
|
+
return aSelected ? -1 : 1;
|
|
4533
|
+
}
|
|
4534
|
+
const aIsAlpha = /^[a-zA-Z]/.test(a.label);
|
|
4535
|
+
const bIsAlpha = /^[a-zA-Z]/.test(b.label);
|
|
4536
|
+
if (aIsAlpha !== bIsAlpha) {
|
|
4537
|
+
return aIsAlpha ? -1 : 1;
|
|
4538
|
+
}
|
|
4539
|
+
return a.label.localeCompare(b.label);
|
|
4540
|
+
});
|
|
4541
|
+
setSortedOptions(sorted);
|
|
4542
|
+
isInitialSortRef.current = true;
|
|
4543
|
+
}, [options, value]);
|
|
4544
|
+
(0, import_react33.useEffect)(() => {
|
|
4545
|
+
virtualizer.measure();
|
|
4546
|
+
}, [virtualizer, filteredOptions]);
|
|
4547
|
+
const handleSearchChange = (0, import_react33.useCallback)((event) => {
|
|
4548
|
+
setSearchTerm(event.target.value);
|
|
4549
|
+
}, []);
|
|
4550
|
+
const handleCheckboxChange = (0, import_react33.useCallback)(
|
|
4551
|
+
(optionValue) => (event) => {
|
|
4552
|
+
const checked = event.target.checked;
|
|
4553
|
+
const newValue = checked ? [...internalValue, optionValue] : internalValue.filter((v) => v !== optionValue);
|
|
4554
|
+
setInternalValue(newValue);
|
|
4555
|
+
},
|
|
4556
|
+
[internalValue, setInternalValue]
|
|
4557
|
+
);
|
|
4558
|
+
const handleSelectAll = (0, import_react33.useCallback)(
|
|
4559
|
+
(event) => {
|
|
4560
|
+
const checked = event.target.checked;
|
|
4561
|
+
if (checked) {
|
|
4562
|
+
setInternalValue(filteredOptions.map((option) => option.value));
|
|
4563
|
+
} else {
|
|
4564
|
+
setInternalValue([]);
|
|
4565
|
+
}
|
|
4566
|
+
},
|
|
4567
|
+
[filteredOptions, setInternalValue]
|
|
4568
|
+
);
|
|
4569
|
+
const isAllSelected = filteredOptions.length > 0 && filteredOptions.every((option) => internalValue.includes(option.value));
|
|
4570
|
+
const isIndeterminate = !isAllSelected && filteredOptions.some((option) => internalValue.includes(option.value));
|
|
4571
|
+
return /* @__PURE__ */ import_react33.default.createElement("div", { style: { width: "100%" } }, /* @__PURE__ */ import_react33.default.createElement(FormControl_default, { required, size }, label && /* @__PURE__ */ import_react33.default.createElement(FormLabel_default, null, label), /* @__PURE__ */ import_react33.default.createElement(
|
|
4572
|
+
import_joy43.Input,
|
|
4573
|
+
{
|
|
4574
|
+
variant: "outlined",
|
|
4575
|
+
color: "neutral",
|
|
4576
|
+
placeholder,
|
|
4577
|
+
value: searchTerm,
|
|
4578
|
+
onChange: handleSearchChange,
|
|
4579
|
+
size,
|
|
4580
|
+
endDecorator: /* @__PURE__ */ import_react33.default.createElement(import_Search.default, null)
|
|
4581
|
+
}
|
|
4582
|
+
), helperText && /* @__PURE__ */ import_react33.default.createElement(FormHelperText_default, null, helperText)), filteredOptions.length === 0 ? /* @__PURE__ */ import_react33.default.createElement(
|
|
4583
|
+
import_joy43.Stack,
|
|
4584
|
+
{
|
|
4585
|
+
sx: {
|
|
4586
|
+
padding: "20px 12px",
|
|
4587
|
+
justifyContent: "center",
|
|
4588
|
+
alignItems: "center",
|
|
4589
|
+
fontSize: noOptionsFontSize,
|
|
4590
|
+
color: "#A2AAB8"
|
|
4591
|
+
}
|
|
4592
|
+
},
|
|
4593
|
+
"No options found."
|
|
4594
|
+
) : /* @__PURE__ */ import_react33.default.createElement(
|
|
4595
|
+
"div",
|
|
4596
|
+
{
|
|
4597
|
+
ref: parentRef,
|
|
4598
|
+
style: {
|
|
4599
|
+
overflow: "auto",
|
|
4600
|
+
maxHeight: typeof maxHeight === "number" ? `${maxHeight}px` : maxHeight,
|
|
4601
|
+
padding: "8px 0px",
|
|
4602
|
+
marginTop: "8px"
|
|
4603
|
+
}
|
|
4604
|
+
},
|
|
4605
|
+
!searchTerm && /* @__PURE__ */ import_react33.default.createElement(
|
|
4606
|
+
Checkbox_default,
|
|
4607
|
+
{
|
|
4608
|
+
label: "Select all",
|
|
4609
|
+
checked: isAllSelected,
|
|
4610
|
+
indeterminate: isIndeterminate,
|
|
4611
|
+
onChange: handleSelectAll,
|
|
4612
|
+
size,
|
|
4613
|
+
slotProps: {
|
|
4614
|
+
action: {
|
|
4615
|
+
sx: { top: 0, left: 0, bottom: 0, right: 0 }
|
|
4616
|
+
}
|
|
4617
|
+
},
|
|
4618
|
+
sx: { width: "100%", height: itemSize }
|
|
4619
|
+
}
|
|
4620
|
+
),
|
|
4621
|
+
/* @__PURE__ */ import_react33.default.createElement(
|
|
4622
|
+
import_joy43.Stack,
|
|
4623
|
+
{
|
|
4624
|
+
sx: {
|
|
4625
|
+
height: `${virtualizer.getTotalSize()}px`,
|
|
4626
|
+
position: "relative"
|
|
4627
|
+
}
|
|
4628
|
+
},
|
|
4629
|
+
items.map((virtualRow) => {
|
|
4630
|
+
const option = filteredOptions[virtualRow.index];
|
|
4631
|
+
return /* @__PURE__ */ import_react33.default.createElement(
|
|
4632
|
+
Checkbox_default,
|
|
4633
|
+
{
|
|
4634
|
+
key: virtualRow.key,
|
|
4635
|
+
label: option.label,
|
|
4636
|
+
checked: internalValue.includes(option.value),
|
|
4637
|
+
onChange: handleCheckboxChange(option.value),
|
|
4638
|
+
size,
|
|
4639
|
+
slotProps: {
|
|
4640
|
+
action: {
|
|
4641
|
+
sx: { top: 0, left: 0, bottom: 0, right: 0 }
|
|
4642
|
+
}
|
|
4643
|
+
},
|
|
4644
|
+
sx: {
|
|
4645
|
+
position: "absolute",
|
|
4646
|
+
top: 0,
|
|
4647
|
+
left: 0,
|
|
4648
|
+
width: "100%",
|
|
4649
|
+
height: `${virtualRow.size}px`,
|
|
4650
|
+
transform: `translateY(${virtualRow.start}px)`
|
|
4651
|
+
}
|
|
4652
|
+
}
|
|
4653
|
+
);
|
|
4654
|
+
})
|
|
4655
|
+
)
|
|
4656
|
+
));
|
|
4657
|
+
}
|
|
4658
|
+
FilterableCheckboxGroup.displayName = "FilterableCheckboxGroup";
|
|
4659
|
+
|
|
4476
4660
|
// src/components/FilterMenu/FilterMenu.tsx
|
|
4477
|
-
var
|
|
4478
|
-
var
|
|
4661
|
+
var import_react43 = __toESM(require("react"));
|
|
4662
|
+
var import_joy54 = require("@mui/joy");
|
|
4479
4663
|
|
|
4480
4664
|
// src/components/FilterMenu/components/CheckboxGroup.tsx
|
|
4481
|
-
var
|
|
4482
|
-
var
|
|
4665
|
+
var import_react34 = __toESM(require("react"));
|
|
4666
|
+
var import_joy44 = require("@mui/joy");
|
|
4483
4667
|
function CheckboxGroup(props) {
|
|
4484
4668
|
const { id, label, options, value, onChange, hidden } = props;
|
|
4485
4669
|
const [internalValue, setInternalValue] = useControlledState(value, [], onChange);
|
|
4486
|
-
const handleCheckboxChange = (0,
|
|
4670
|
+
const handleCheckboxChange = (0, import_react34.useCallback)(
|
|
4487
4671
|
(optionValue) => (event) => {
|
|
4488
4672
|
const checked = event.target.checked;
|
|
4489
4673
|
let newValue;
|
|
@@ -4499,7 +4683,7 @@ function CheckboxGroup(props) {
|
|
|
4499
4683
|
if (hidden) {
|
|
4500
4684
|
return null;
|
|
4501
4685
|
}
|
|
4502
|
-
return /* @__PURE__ */
|
|
4686
|
+
return /* @__PURE__ */ import_react34.default.createElement(import_joy44.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
4687
|
Checkbox_default,
|
|
4504
4688
|
{
|
|
4505
4689
|
key: `${id}-${option.value}`,
|
|
@@ -4512,24 +4696,24 @@ function CheckboxGroup(props) {
|
|
|
4512
4696
|
CheckboxGroup.displayName = "CheckboxGroup";
|
|
4513
4697
|
|
|
4514
4698
|
// src/components/FilterMenu/components/RadioGroup.tsx
|
|
4515
|
-
var
|
|
4699
|
+
var import_react35 = __toESM(require("react"));
|
|
4516
4700
|
|
|
4517
4701
|
// src/components/Radio/Radio.tsx
|
|
4518
|
-
var
|
|
4702
|
+
var import_joy45 = require("@mui/joy");
|
|
4519
4703
|
var import_framer_motion26 = require("framer-motion");
|
|
4520
|
-
var MotionRadio = (0, import_framer_motion26.motion)(
|
|
4704
|
+
var MotionRadio = (0, import_framer_motion26.motion)(import_joy45.Radio);
|
|
4521
4705
|
var Radio = MotionRadio;
|
|
4522
4706
|
Radio.displayName = "Radio";
|
|
4523
|
-
var MotionRadioGroup = (0, import_framer_motion26.motion)(
|
|
4707
|
+
var MotionRadioGroup = (0, import_framer_motion26.motion)(import_joy45.RadioGroup);
|
|
4524
4708
|
var RadioGroup = MotionRadioGroup;
|
|
4525
4709
|
RadioGroup.displayName = "RadioGroup";
|
|
4526
4710
|
|
|
4527
4711
|
// src/components/FilterMenu/components/RadioGroup.tsx
|
|
4528
|
-
var
|
|
4712
|
+
var import_joy46 = require("@mui/joy");
|
|
4529
4713
|
function RadioGroup2(props) {
|
|
4530
4714
|
const { id, label, options, value, onChange, hidden } = props;
|
|
4531
4715
|
const [internalValue, setInternalValue] = useControlledState(value, value ?? "", onChange);
|
|
4532
|
-
const handleRadioChange = (0,
|
|
4716
|
+
const handleRadioChange = (0, import_react35.useCallback)(
|
|
4533
4717
|
(event) => {
|
|
4534
4718
|
const newValue = event.target.value;
|
|
4535
4719
|
const option = options.find((opt) => opt.value.toString() === newValue);
|
|
@@ -4541,13 +4725,13 @@ function RadioGroup2(props) {
|
|
|
4541
4725
|
if (hidden) {
|
|
4542
4726
|
return null;
|
|
4543
4727
|
}
|
|
4544
|
-
return /* @__PURE__ */
|
|
4728
|
+
return /* @__PURE__ */ import_react35.default.createElement(import_joy46.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react35.default.createElement(import_joy46.Stack, { spacing: 1 }, /* @__PURE__ */ import_react35.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label)), /* @__PURE__ */ import_react35.default.createElement(RadioGroup, { name: id, value: internalValue?.toString(), onChange: handleRadioChange }, options.map((option) => /* @__PURE__ */ import_react35.default.createElement(Radio, { key: `${id}-${option.value}`, value: option.value.toString(), label: option.label }))));
|
|
4545
4729
|
}
|
|
4546
4730
|
RadioGroup2.displayName = "RadioGroup";
|
|
4547
4731
|
|
|
4548
4732
|
// src/components/FilterMenu/components/DateRange.tsx
|
|
4549
|
-
var
|
|
4550
|
-
var
|
|
4733
|
+
var import_react36 = __toESM(require("react"));
|
|
4734
|
+
var import_joy47 = require("@mui/joy");
|
|
4551
4735
|
function DateRange(props) {
|
|
4552
4736
|
const {
|
|
4553
4737
|
id,
|
|
@@ -4565,8 +4749,8 @@ function DateRange(props) {
|
|
|
4565
4749
|
hideClearButton
|
|
4566
4750
|
} = props;
|
|
4567
4751
|
const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
|
|
4568
|
-
const [selectedOption, setSelectedOption] = (0,
|
|
4569
|
-
const dateRangeOptions = (0,
|
|
4752
|
+
const [selectedOption, setSelectedOption] = (0, import_react36.useState)("all-time");
|
|
4753
|
+
const dateRangeOptions = (0, import_react36.useMemo)(
|
|
4570
4754
|
() => [
|
|
4571
4755
|
{ label: "All Time", value: "all-time" },
|
|
4572
4756
|
{ label: "This Month", value: "this-month" },
|
|
@@ -4576,7 +4760,7 @@ function DateRange(props) {
|
|
|
4576
4760
|
],
|
|
4577
4761
|
[]
|
|
4578
4762
|
);
|
|
4579
|
-
const getDateRangeForOption = (0,
|
|
4763
|
+
const getDateRangeForOption = (0, import_react36.useCallback)(
|
|
4580
4764
|
(option) => {
|
|
4581
4765
|
const now = /* @__PURE__ */ new Date();
|
|
4582
4766
|
const currentYear = now.getFullYear();
|
|
@@ -4615,7 +4799,7 @@ function DateRange(props) {
|
|
|
4615
4799
|
},
|
|
4616
4800
|
[internalValue]
|
|
4617
4801
|
);
|
|
4618
|
-
const determineOptionFromValue = (0,
|
|
4802
|
+
const determineOptionFromValue = (0, import_react36.useCallback)(
|
|
4619
4803
|
(value2) => {
|
|
4620
4804
|
if (!value2) {
|
|
4621
4805
|
return "all-time";
|
|
@@ -4631,17 +4815,17 @@ function DateRange(props) {
|
|
|
4631
4815
|
},
|
|
4632
4816
|
[getDateRangeForOption]
|
|
4633
4817
|
);
|
|
4634
|
-
const customDateRangeValue = (0,
|
|
4818
|
+
const customDateRangeValue = (0, import_react36.useMemo)(() => {
|
|
4635
4819
|
if (selectedOption === "custom" && internalValue) {
|
|
4636
4820
|
return `${internalValue[0]} - ${internalValue[1]}`;
|
|
4637
4821
|
}
|
|
4638
4822
|
return "";
|
|
4639
4823
|
}, [selectedOption, internalValue]);
|
|
4640
|
-
(0,
|
|
4824
|
+
(0, import_react36.useEffect)(() => {
|
|
4641
4825
|
const newOption = determineOptionFromValue(internalValue);
|
|
4642
4826
|
setSelectedOption(newOption);
|
|
4643
4827
|
}, [internalValue, determineOptionFromValue]);
|
|
4644
|
-
const handleOptionChange = (0,
|
|
4828
|
+
const handleOptionChange = (0, import_react36.useCallback)(
|
|
4645
4829
|
(event) => {
|
|
4646
4830
|
const newOption = event.target.value;
|
|
4647
4831
|
setSelectedOption(newOption);
|
|
@@ -4650,7 +4834,7 @@ function DateRange(props) {
|
|
|
4650
4834
|
},
|
|
4651
4835
|
[getDateRangeForOption, setInternalValue]
|
|
4652
4836
|
);
|
|
4653
|
-
const handleCustomDateChange = (0,
|
|
4837
|
+
const handleCustomDateChange = (0, import_react36.useCallback)(
|
|
4654
4838
|
(event) => {
|
|
4655
4839
|
const dateRangeString = event.target.value;
|
|
4656
4840
|
if (dateRangeString && dateRangeString.includes(" - ")) {
|
|
@@ -4668,7 +4852,7 @@ function DateRange(props) {
|
|
|
4668
4852
|
if (hidden) {
|
|
4669
4853
|
return null;
|
|
4670
4854
|
}
|
|
4671
|
-
return /* @__PURE__ */
|
|
4855
|
+
return /* @__PURE__ */ import_react36.default.createElement(import_joy47.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__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}-options`, value: selectedOption, onChange: handleOptionChange }, dateRangeOptions.map((option) => /* @__PURE__ */ import_react36.default.createElement(Radio, { key: `${id}-${option.value}`, value: option.value, label: option.label }))), selectedOption === "custom" && /* @__PURE__ */ import_react36.default.createElement(
|
|
4672
4856
|
DateRangePicker,
|
|
4673
4857
|
{
|
|
4674
4858
|
value: customDateRangeValue,
|
|
@@ -4687,12 +4871,12 @@ function DateRange(props) {
|
|
|
4687
4871
|
DateRange.displayName = "DateRange";
|
|
4688
4872
|
|
|
4689
4873
|
// src/components/FilterMenu/components/CurrencyInput.tsx
|
|
4690
|
-
var
|
|
4691
|
-
var
|
|
4874
|
+
var import_react37 = __toESM(require("react"));
|
|
4875
|
+
var import_joy48 = require("@mui/joy");
|
|
4692
4876
|
function CurrencyInput3(props) {
|
|
4693
4877
|
const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
|
|
4694
4878
|
const [internalValue, setInternalValue] = useControlledState(value, value, onChange);
|
|
4695
|
-
const handleCurrencyChange = (0,
|
|
4879
|
+
const handleCurrencyChange = (0, import_react37.useCallback)(
|
|
4696
4880
|
(event) => {
|
|
4697
4881
|
const newValue = event.target.value;
|
|
4698
4882
|
setInternalValue(newValue);
|
|
@@ -4702,7 +4886,7 @@ function CurrencyInput3(props) {
|
|
|
4702
4886
|
if (hidden) {
|
|
4703
4887
|
return null;
|
|
4704
4888
|
}
|
|
4705
|
-
return /* @__PURE__ */
|
|
4889
|
+
return /* @__PURE__ */ import_react37.default.createElement(import_joy48.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(
|
|
4706
4890
|
CurrencyInput,
|
|
4707
4891
|
{
|
|
4708
4892
|
value: internalValue,
|
|
@@ -4718,14 +4902,14 @@ function CurrencyInput3(props) {
|
|
|
4718
4902
|
CurrencyInput3.displayName = "CurrencyInput";
|
|
4719
4903
|
|
|
4720
4904
|
// src/components/FilterMenu/components/CurrencyRange.tsx
|
|
4721
|
-
var
|
|
4722
|
-
var
|
|
4905
|
+
var import_react38 = __toESM(require("react"));
|
|
4906
|
+
var import_joy49 = require("@mui/joy");
|
|
4723
4907
|
function CurrencyRange(props) {
|
|
4724
4908
|
const { id, label, value, onChange, hidden, max, placeholder, useMinorUnit, currency = "USD" } = props;
|
|
4725
4909
|
const [internalValue, setInternalValue] = useControlledState(value, null, onChange);
|
|
4726
4910
|
const minValue = internalValue?.[0];
|
|
4727
4911
|
const maxValue = internalValue?.[1];
|
|
4728
|
-
const handleMinChange = (0,
|
|
4912
|
+
const handleMinChange = (0, import_react38.useCallback)(
|
|
4729
4913
|
(event) => {
|
|
4730
4914
|
const newMinValue = event.target.value;
|
|
4731
4915
|
const currentMaxValue = maxValue;
|
|
@@ -4739,7 +4923,7 @@ function CurrencyRange(props) {
|
|
|
4739
4923
|
},
|
|
4740
4924
|
[maxValue, setInternalValue]
|
|
4741
4925
|
);
|
|
4742
|
-
const handleMaxChange = (0,
|
|
4926
|
+
const handleMaxChange = (0, import_react38.useCallback)(
|
|
4743
4927
|
(event) => {
|
|
4744
4928
|
const newMaxValue = event.target.value;
|
|
4745
4929
|
const currentMinValue = minValue;
|
|
@@ -4756,7 +4940,7 @@ function CurrencyRange(props) {
|
|
|
4756
4940
|
if (hidden) {
|
|
4757
4941
|
return null;
|
|
4758
4942
|
}
|
|
4759
|
-
return /* @__PURE__ */
|
|
4943
|
+
return /* @__PURE__ */ import_react38.default.createElement(import_joy49.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(import_joy49.Stack, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ import_react38.default.createElement(
|
|
4760
4944
|
CurrencyInput,
|
|
4761
4945
|
{
|
|
4762
4946
|
label: "Minimum",
|
|
@@ -4769,7 +4953,7 @@ function CurrencyRange(props) {
|
|
|
4769
4953
|
"aria-labelledby": label ? id : void 0,
|
|
4770
4954
|
"aria-label": "Minimum amount"
|
|
4771
4955
|
}
|
|
4772
|
-
), /* @__PURE__ */
|
|
4956
|
+
), /* @__PURE__ */ import_react38.default.createElement(
|
|
4773
4957
|
CurrencyInput,
|
|
4774
4958
|
{
|
|
4775
4959
|
label: "Maximum",
|
|
@@ -4787,20 +4971,20 @@ function CurrencyRange(props) {
|
|
|
4787
4971
|
CurrencyRange.displayName = "CurrencyRange";
|
|
4788
4972
|
|
|
4789
4973
|
// src/components/FilterMenu/components/PercentageInput.tsx
|
|
4790
|
-
var
|
|
4791
|
-
var
|
|
4974
|
+
var import_react40 = __toESM(require("react"));
|
|
4975
|
+
var import_joy51 = require("@mui/joy");
|
|
4792
4976
|
|
|
4793
4977
|
// src/components/PercentageInput/PercentageInput.tsx
|
|
4794
|
-
var
|
|
4978
|
+
var import_react39 = __toESM(require("react"));
|
|
4795
4979
|
var import_react_number_format2 = require("react-number-format");
|
|
4796
|
-
var
|
|
4980
|
+
var import_joy50 = require("@mui/joy");
|
|
4797
4981
|
var padDecimal = (value, decimalScale) => {
|
|
4798
4982
|
const [integer, decimal = ""] = `${value}`.split(".");
|
|
4799
4983
|
return Number(`${integer}${decimal.padEnd(decimalScale, "0")}`);
|
|
4800
4984
|
};
|
|
4801
|
-
var TextMaskAdapter7 =
|
|
4985
|
+
var TextMaskAdapter7 = import_react39.default.forwardRef(function TextMaskAdapter8(props, ref) {
|
|
4802
4986
|
const { onChange, min, max, ...innerProps } = props;
|
|
4803
|
-
return /* @__PURE__ */
|
|
4987
|
+
return /* @__PURE__ */ import_react39.default.createElement(
|
|
4804
4988
|
import_react_number_format2.NumericFormat,
|
|
4805
4989
|
{
|
|
4806
4990
|
...innerProps,
|
|
@@ -4820,14 +5004,14 @@ var TextMaskAdapter7 = import_react38.default.forwardRef(function TextMaskAdapte
|
|
|
4820
5004
|
}
|
|
4821
5005
|
);
|
|
4822
5006
|
});
|
|
4823
|
-
var PercentageInputRoot = (0,
|
|
5007
|
+
var PercentageInputRoot = (0, import_joy50.styled)(Input_default, {
|
|
4824
5008
|
name: "PercentageInput",
|
|
4825
5009
|
slot: "Root",
|
|
4826
5010
|
overridesResolver: (props, styles) => styles.root
|
|
4827
5011
|
})({});
|
|
4828
|
-
var PercentageInput =
|
|
5012
|
+
var PercentageInput = import_react39.default.forwardRef(
|
|
4829
5013
|
function PercentageInput2(inProps, ref) {
|
|
4830
|
-
const props = (0,
|
|
5014
|
+
const props = (0, import_joy50.useThemeProps)({ props: inProps, name: "PercentageInput" });
|
|
4831
5015
|
const {
|
|
4832
5016
|
name,
|
|
4833
5017
|
onChange,
|
|
@@ -4848,18 +5032,18 @@ var PercentageInput = import_react38.default.forwardRef(
|
|
|
4848
5032
|
const [_value, setValue] = useControlledState(
|
|
4849
5033
|
props.value,
|
|
4850
5034
|
props.defaultValue,
|
|
4851
|
-
(0,
|
|
5035
|
+
(0, import_react39.useCallback)((value2) => onChange?.({ target: { name, value: value2 } }), [onChange, name])
|
|
4852
5036
|
);
|
|
4853
|
-
const [internalError, setInternalError] = (0,
|
|
5037
|
+
const [internalError, setInternalError] = (0, import_react39.useState)(
|
|
4854
5038
|
max && _value && _value > max || min && _value && _value < min
|
|
4855
5039
|
);
|
|
4856
|
-
const value = (0,
|
|
5040
|
+
const value = (0, import_react39.useMemo)(() => {
|
|
4857
5041
|
if (_value && useMinorUnit) {
|
|
4858
5042
|
return _value / Math.pow(10, maxDecimalScale);
|
|
4859
5043
|
}
|
|
4860
5044
|
return _value;
|
|
4861
5045
|
}, [_value, useMinorUnit, maxDecimalScale]);
|
|
4862
|
-
const handleChange = (0,
|
|
5046
|
+
const handleChange = (0, import_react39.useCallback)(
|
|
4863
5047
|
(event) => {
|
|
4864
5048
|
if (event.target.value === "") {
|
|
4865
5049
|
setValue(void 0);
|
|
@@ -4876,7 +5060,7 @@ var PercentageInput = import_react38.default.forwardRef(
|
|
|
4876
5060
|
},
|
|
4877
5061
|
[setValue, useMinorUnit, maxDecimalScale, min, max]
|
|
4878
5062
|
);
|
|
4879
|
-
return /* @__PURE__ */
|
|
5063
|
+
return /* @__PURE__ */ import_react39.default.createElement(
|
|
4880
5064
|
PercentageInputRoot,
|
|
4881
5065
|
{
|
|
4882
5066
|
...innerProps,
|
|
@@ -4923,7 +5107,7 @@ var PercentageInput3 = ({
|
|
|
4923
5107
|
if (hidden) {
|
|
4924
5108
|
return null;
|
|
4925
5109
|
}
|
|
4926
|
-
return /* @__PURE__ */
|
|
5110
|
+
return /* @__PURE__ */ import_react40.default.createElement(import_joy51.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react40.default.createElement(import_joy51.Typography, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react40.default.createElement(
|
|
4927
5111
|
PercentageInput,
|
|
4928
5112
|
{
|
|
4929
5113
|
value: _value,
|
|
@@ -4938,8 +5122,8 @@ var PercentageInput3 = ({
|
|
|
4938
5122
|
};
|
|
4939
5123
|
|
|
4940
5124
|
// src/components/FilterMenu/components/PercentageRange.tsx
|
|
4941
|
-
var
|
|
4942
|
-
var
|
|
5125
|
+
var import_react41 = __toESM(require("react"));
|
|
5126
|
+
var import_joy52 = require("@mui/joy");
|
|
4943
5127
|
function PercentageRange(props) {
|
|
4944
5128
|
const { id, label, value, onChange, hidden, useMinorUnit, maxDecimalScale, min, max } = props;
|
|
4945
5129
|
const [internalValue, setInternalValue] = useControlledState(
|
|
@@ -4949,7 +5133,7 @@ function PercentageRange(props) {
|
|
|
4949
5133
|
);
|
|
4950
5134
|
const minValue = internalValue?.[0];
|
|
4951
5135
|
const maxValue = internalValue?.[1];
|
|
4952
|
-
const handleMinChange = (0,
|
|
5136
|
+
const handleMinChange = (0, import_react41.useCallback)(
|
|
4953
5137
|
(event) => {
|
|
4954
5138
|
const newMinValue = event.target.value;
|
|
4955
5139
|
const currentMaxValue = maxValue;
|
|
@@ -4961,7 +5145,7 @@ function PercentageRange(props) {
|
|
|
4961
5145
|
},
|
|
4962
5146
|
[maxValue, setInternalValue]
|
|
4963
5147
|
);
|
|
4964
|
-
const handleMaxChange = (0,
|
|
5148
|
+
const handleMaxChange = (0, import_react41.useCallback)(
|
|
4965
5149
|
(event) => {
|
|
4966
5150
|
const newMaxValue = event.target.value;
|
|
4967
5151
|
const currentMinValue = minValue;
|
|
@@ -4976,7 +5160,7 @@ function PercentageRange(props) {
|
|
|
4976
5160
|
if (hidden) {
|
|
4977
5161
|
return null;
|
|
4978
5162
|
}
|
|
4979
|
-
return /* @__PURE__ */
|
|
5163
|
+
return /* @__PURE__ */ import_react41.default.createElement(import_joy52.Stack, { spacing: 3, role: "group", "aria-labelledby": id }, !!label && /* @__PURE__ */ import_react41.default.createElement(Typography_default, { id, level: "title-sm", component: "label", textColor: "text.tertiary" }, label), /* @__PURE__ */ import_react41.default.createElement(import_joy52.Stack, { direction: "row", spacing: 2, alignItems: "flex-end" }, /* @__PURE__ */ import_react41.default.createElement(
|
|
4980
5164
|
PercentageInput,
|
|
4981
5165
|
{
|
|
4982
5166
|
label: "Minimum",
|
|
@@ -4990,7 +5174,7 @@ function PercentageRange(props) {
|
|
|
4990
5174
|
"aria-label": "Minimum percentage",
|
|
4991
5175
|
placeholder: "0%"
|
|
4992
5176
|
}
|
|
4993
|
-
), /* @__PURE__ */
|
|
5177
|
+
), /* @__PURE__ */ import_react41.default.createElement(
|
|
4994
5178
|
PercentageInput,
|
|
4995
5179
|
{
|
|
4996
5180
|
label: "Maximum",
|
|
@@ -5009,13 +5193,13 @@ function PercentageRange(props) {
|
|
|
5009
5193
|
PercentageRange.displayName = "PercentageRange";
|
|
5010
5194
|
|
|
5011
5195
|
// src/components/FilterMenu/components/Autocomplete.tsx
|
|
5012
|
-
var
|
|
5013
|
-
var
|
|
5196
|
+
var import_react42 = __toESM(require("react"));
|
|
5197
|
+
var import_joy53 = require("@mui/joy");
|
|
5014
5198
|
function Autocomplete2(props) {
|
|
5015
5199
|
const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
|
|
5016
5200
|
const [internalValue, setInternalValue] = useControlledState(value, void 0, onChange);
|
|
5017
5201
|
const autocompleteValue = typeof internalValue === "string" || typeof internalValue === "number" ? String(internalValue) : void 0;
|
|
5018
|
-
const handleChange = (0,
|
|
5202
|
+
const handleChange = (0, import_react42.useCallback)(
|
|
5019
5203
|
(event) => {
|
|
5020
5204
|
const val = event.target.value;
|
|
5021
5205
|
if (val) {
|
|
@@ -5030,7 +5214,7 @@ function Autocomplete2(props) {
|
|
|
5030
5214
|
if (hidden) {
|
|
5031
5215
|
return null;
|
|
5032
5216
|
}
|
|
5033
|
-
return /* @__PURE__ */
|
|
5217
|
+
return /* @__PURE__ */ import_react42.default.createElement(import_joy53.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(
|
|
5034
5218
|
Autocomplete,
|
|
5035
5219
|
{
|
|
5036
5220
|
value: autocompleteValue,
|
|
@@ -5063,7 +5247,7 @@ function FilterMenu(props) {
|
|
|
5063
5247
|
void 0
|
|
5064
5248
|
// onChange는 Apply 버튼에서만 호출
|
|
5065
5249
|
);
|
|
5066
|
-
const handleFilterChange = (0,
|
|
5250
|
+
const handleFilterChange = (0, import_react43.useCallback)(
|
|
5067
5251
|
(filterId, value) => {
|
|
5068
5252
|
setInternalValues((prev) => ({
|
|
5069
5253
|
...prev,
|
|
@@ -5072,17 +5256,17 @@ function FilterMenu(props) {
|
|
|
5072
5256
|
},
|
|
5073
5257
|
[setInternalValues]
|
|
5074
5258
|
);
|
|
5075
|
-
const handleApply = (0,
|
|
5259
|
+
const handleApply = (0, import_react43.useCallback)(() => {
|
|
5076
5260
|
onChange?.(internalValues);
|
|
5077
5261
|
onClose?.();
|
|
5078
5262
|
}, [onChange, onClose, internalValues]);
|
|
5079
|
-
const handleClear = (0,
|
|
5263
|
+
const handleClear = (0, import_react43.useCallback)(() => {
|
|
5080
5264
|
const clearedValues = resetValues || {};
|
|
5081
5265
|
setInternalValues(clearedValues);
|
|
5082
5266
|
onChange?.(clearedValues);
|
|
5083
5267
|
onClose?.();
|
|
5084
5268
|
}, [resetValues, setInternalValues, onChange, onClose]);
|
|
5085
|
-
return /* @__PURE__ */
|
|
5269
|
+
return /* @__PURE__ */ import_react43.default.createElement(
|
|
5086
5270
|
ModalDialog,
|
|
5087
5271
|
{
|
|
5088
5272
|
sx: {
|
|
@@ -5092,9 +5276,9 @@ function FilterMenu(props) {
|
|
|
5092
5276
|
top: "initial"
|
|
5093
5277
|
}
|
|
5094
5278
|
},
|
|
5095
|
-
/* @__PURE__ */
|
|
5279
|
+
/* @__PURE__ */ import_react43.default.createElement(DialogContent, { sx: { paddingTop: 5 } }, /* @__PURE__ */ import_react43.default.createElement(import_joy54.Stack, { spacing: 6 }, filters?.map((filter) => {
|
|
5096
5280
|
const FilterComponent = componentMap[filter.type];
|
|
5097
|
-
return FilterComponent ? /* @__PURE__ */
|
|
5281
|
+
return FilterComponent ? /* @__PURE__ */ import_react43.default.createElement(
|
|
5098
5282
|
FilterComponent,
|
|
5099
5283
|
{
|
|
5100
5284
|
key: filter.id,
|
|
@@ -5106,14 +5290,14 @@ function FilterMenu(props) {
|
|
|
5106
5290
|
}
|
|
5107
5291
|
) : null;
|
|
5108
5292
|
}))),
|
|
5109
|
-
/* @__PURE__ */
|
|
5293
|
+
/* @__PURE__ */ import_react43.default.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ import_react43.default.createElement(import_joy54.Button, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), useReset && !useClear && /* @__PURE__ */ import_react43.default.createElement(import_joy54.Button, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Reset"), /* @__PURE__ */ import_react43.default.createElement(import_joy54.Button, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
|
|
5110
5294
|
);
|
|
5111
5295
|
}
|
|
5112
5296
|
FilterMenu.displayName = "FilterMenu";
|
|
5113
5297
|
|
|
5114
5298
|
// src/components/Uploader/Uploader.tsx
|
|
5115
|
-
var
|
|
5116
|
-
var
|
|
5299
|
+
var import_react44 = __toESM(require("react"));
|
|
5300
|
+
var import_joy55 = require("@mui/joy");
|
|
5117
5301
|
var import_CloudUploadRounded = __toESM(require("@mui/icons-material/CloudUploadRounded"));
|
|
5118
5302
|
var import_UploadFileRounded = __toESM(require("@mui/icons-material/UploadFileRounded"));
|
|
5119
5303
|
var import_ClearRounded = __toESM(require("@mui/icons-material/ClearRounded"));
|
|
@@ -5135,7 +5319,7 @@ var esmFiles = {
|
|
|
5135
5319
|
"@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/prevent-unhandled.js"
|
|
5136
5320
|
)
|
|
5137
5321
|
};
|
|
5138
|
-
var VisuallyHiddenInput = (0,
|
|
5322
|
+
var VisuallyHiddenInput = (0, import_joy55.styled)(import_joy55.Input)({
|
|
5139
5323
|
width: "1px",
|
|
5140
5324
|
height: "1px",
|
|
5141
5325
|
overflow: "hidden",
|
|
@@ -5144,18 +5328,18 @@ var VisuallyHiddenInput = (0, import_joy54.styled)(import_joy54.Input)({
|
|
|
5144
5328
|
clipPath: "inset(50%)",
|
|
5145
5329
|
position: "absolute"
|
|
5146
5330
|
});
|
|
5147
|
-
var PreviewRoot = (0,
|
|
5331
|
+
var PreviewRoot = (0, import_joy55.styled)(Stack_default, {
|
|
5148
5332
|
name: "Uploader",
|
|
5149
5333
|
slot: "PreviewRoot"
|
|
5150
5334
|
})({});
|
|
5151
|
-
var UploadCard = (0,
|
|
5335
|
+
var UploadCard = (0, import_joy55.styled)(Card, {
|
|
5152
5336
|
name: "Uploader",
|
|
5153
5337
|
slot: "UploadCard"
|
|
5154
5338
|
})(({ theme }) => ({
|
|
5155
5339
|
padding: theme.spacing(2.5),
|
|
5156
5340
|
border: `1px solid ${theme.palette.neutral.outlinedBorder}`
|
|
5157
5341
|
}));
|
|
5158
|
-
var UploadFileIcon = (0,
|
|
5342
|
+
var UploadFileIcon = (0, import_joy55.styled)(import_UploadFileRounded.default, {
|
|
5159
5343
|
name: "Uploader",
|
|
5160
5344
|
slot: "UploadFileIcon"
|
|
5161
5345
|
})(({ theme }) => ({
|
|
@@ -5163,7 +5347,7 @@ var UploadFileIcon = (0, import_joy54.styled)(import_UploadFileRounded.default,
|
|
|
5163
5347
|
width: "32px",
|
|
5164
5348
|
height: "32px"
|
|
5165
5349
|
}));
|
|
5166
|
-
var ClearIcon2 = (0,
|
|
5350
|
+
var ClearIcon2 = (0, import_joy55.styled)(import_ClearRounded.default, {
|
|
5167
5351
|
name: "Uploader",
|
|
5168
5352
|
slot: "ClearIcon"
|
|
5169
5353
|
})(({ theme }) => ({
|
|
@@ -5189,7 +5373,7 @@ var getFileSize = (n) => {
|
|
|
5189
5373
|
};
|
|
5190
5374
|
var Preview = (props) => {
|
|
5191
5375
|
const { files, uploaded, onDelete } = props;
|
|
5192
|
-
return /* @__PURE__ */
|
|
5376
|
+
return /* @__PURE__ */ import_react44.default.createElement(PreviewRoot, { gap: 1 }, [...uploaded, ...files].map((file) => /* @__PURE__ */ import_react44.default.createElement(UploadCard, { key: file.name, size: "sm", color: "neutral" }, /* @__PURE__ */ import_react44.default.createElement(Stack_default, { direction: "row", alignItems: "center", gap: 2 }, /* @__PURE__ */ import_react44.default.createElement(UploadFileIcon, null), /* @__PURE__ */ import_react44.default.createElement(Stack_default, { flex: "1", sx: { overflow: "hidden" } }, /* @__PURE__ */ import_react44.default.createElement(
|
|
5193
5377
|
Typography_default,
|
|
5194
5378
|
{
|
|
5195
5379
|
level: "body-sm",
|
|
@@ -5201,15 +5385,15 @@ var Preview = (props) => {
|
|
|
5201
5385
|
}
|
|
5202
5386
|
},
|
|
5203
5387
|
file.name
|
|
5204
|
-
), !!file.size && /* @__PURE__ */
|
|
5388
|
+
), !!file.size && /* @__PURE__ */ import_react44.default.createElement(Typography_default, { level: "body-xs", fontWeight: "300", lineHeight: "1.33", textColor: "text.tertiary" }, getFileSize(file.size))), /* @__PURE__ */ import_react44.default.createElement(IconButton_default, { onClick: () => onDelete?.(file) }, /* @__PURE__ */ import_react44.default.createElement(ClearIcon2, null))))));
|
|
5205
5389
|
};
|
|
5206
|
-
var UploaderRoot = (0,
|
|
5390
|
+
var UploaderRoot = (0, import_joy55.styled)(Stack_default, {
|
|
5207
5391
|
name: "Uploader",
|
|
5208
5392
|
slot: "root"
|
|
5209
5393
|
})(({ theme }) => ({
|
|
5210
5394
|
gap: theme.spacing(2)
|
|
5211
5395
|
}));
|
|
5212
|
-
var FileDropZone = (0,
|
|
5396
|
+
var FileDropZone = (0, import_joy55.styled)(Sheet_default, {
|
|
5213
5397
|
name: "Uploader",
|
|
5214
5398
|
slot: "dropZone",
|
|
5215
5399
|
shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"
|
|
@@ -5230,7 +5414,7 @@ var FileDropZone = (0, import_joy54.styled)(Sheet_default, {
|
|
|
5230
5414
|
}
|
|
5231
5415
|
})
|
|
5232
5416
|
);
|
|
5233
|
-
var UploaderIcon = (0,
|
|
5417
|
+
var UploaderIcon = (0, import_joy55.styled)(import_CloudUploadRounded.default, {
|
|
5234
5418
|
name: "Uploader",
|
|
5235
5419
|
slot: "iconContainer",
|
|
5236
5420
|
shouldForwardProp: (prop) => prop !== "error" && prop !== "disabled"
|
|
@@ -5244,7 +5428,7 @@ var UploaderIcon = (0, import_joy54.styled)(import_CloudUploadRounded.default, {
|
|
|
5244
5428
|
}
|
|
5245
5429
|
})
|
|
5246
5430
|
);
|
|
5247
|
-
var Uploader =
|
|
5431
|
+
var Uploader = import_react44.default.memo(
|
|
5248
5432
|
(props) => {
|
|
5249
5433
|
const {
|
|
5250
5434
|
accept,
|
|
@@ -5261,14 +5445,14 @@ var Uploader = import_react43.default.memo(
|
|
|
5261
5445
|
error: errorProp,
|
|
5262
5446
|
helperText: helperTextProp
|
|
5263
5447
|
} = 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,
|
|
5448
|
+
const dropZoneRef = (0, import_react44.useRef)(null);
|
|
5449
|
+
const inputRef = (0, import_react44.useRef)(null);
|
|
5450
|
+
const [errorText, setErrorText] = (0, import_react44.useState)();
|
|
5451
|
+
const [files, setFiles] = (0, import_react44.useState)([]);
|
|
5452
|
+
const [uploaded, setUploaded] = (0, import_react44.useState)(props.uploaded || []);
|
|
5453
|
+
const [previewState, setPreviewState] = (0, import_react44.useState)("idle");
|
|
5454
|
+
const accepts = (0, import_react44.useMemo)(() => accept.split(",").map((accept2) => accept2.trim()), [accept]);
|
|
5455
|
+
const parsedAccepts = (0, import_react44.useMemo)(
|
|
5272
5456
|
() => accepts.flatMap((type) => {
|
|
5273
5457
|
if (["image/*", "video/*", "audio/*"].includes(type)) {
|
|
5274
5458
|
return ALL_EXTENSIONS_BY_TYPE[type];
|
|
@@ -5277,7 +5461,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5277
5461
|
}),
|
|
5278
5462
|
[accepts]
|
|
5279
5463
|
);
|
|
5280
|
-
const helperText = (0,
|
|
5464
|
+
const helperText = (0, import_react44.useMemo)(() => {
|
|
5281
5465
|
if (helperTextProp) {
|
|
5282
5466
|
return helperTextProp;
|
|
5283
5467
|
}
|
|
@@ -5307,12 +5491,12 @@ var Uploader = import_react43.default.memo(
|
|
|
5307
5491
|
}
|
|
5308
5492
|
return helperTexts.join(", ");
|
|
5309
5493
|
}, [accepts, maxFileTotalSize, maxCount, helperTextProp]);
|
|
5310
|
-
const error = (0,
|
|
5311
|
-
const showDropZone = (0,
|
|
5494
|
+
const error = (0, import_react44.useMemo)(() => !!errorText || errorProp, [errorProp, errorText]);
|
|
5495
|
+
const showDropZone = (0, import_react44.useMemo)(
|
|
5312
5496
|
() => !maxCount || maxCount && [...uploaded, ...files].length !== maxCount,
|
|
5313
5497
|
[files, maxCount, uploaded]
|
|
5314
5498
|
);
|
|
5315
|
-
const addFiles = (0,
|
|
5499
|
+
const addFiles = (0, import_react44.useCallback)(
|
|
5316
5500
|
(uploads) => {
|
|
5317
5501
|
try {
|
|
5318
5502
|
const types = parsedAccepts.map((type) => type.replace(".", "")) || [];
|
|
@@ -5357,7 +5541,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5357
5541
|
},
|
|
5358
5542
|
[files, uploaded, maxCount, parsedAccepts, maxFileSize, maxFileTotalSize, name, onChange]
|
|
5359
5543
|
);
|
|
5360
|
-
(0,
|
|
5544
|
+
(0, import_react44.useEffect)(() => {
|
|
5361
5545
|
if (!dropZoneRef.current || disabled) {
|
|
5362
5546
|
return;
|
|
5363
5547
|
}
|
|
@@ -5395,7 +5579,7 @@ var Uploader = import_react43.default.memo(
|
|
|
5395
5579
|
);
|
|
5396
5580
|
return () => cleanup?.();
|
|
5397
5581
|
}, [disabled, addFiles]);
|
|
5398
|
-
(0,
|
|
5582
|
+
(0, import_react44.useEffect)(() => {
|
|
5399
5583
|
if (inputRef.current && minCount) {
|
|
5400
5584
|
if (files.length < minCount) {
|
|
5401
5585
|
inputRef.current.setCustomValidity(`At least ${minCount} files are required.`);
|
|
@@ -5404,14 +5588,14 @@ var Uploader = import_react43.default.memo(
|
|
|
5404
5588
|
}
|
|
5405
5589
|
}
|
|
5406
5590
|
}, [inputRef, files, minCount]);
|
|
5407
|
-
const handleFileChanged = (0,
|
|
5591
|
+
const handleFileChanged = (0, import_react44.useCallback)(
|
|
5408
5592
|
(event) => {
|
|
5409
5593
|
const files2 = Array.from(event.target.files || []);
|
|
5410
5594
|
addFiles(files2);
|
|
5411
5595
|
},
|
|
5412
5596
|
[addFiles]
|
|
5413
5597
|
);
|
|
5414
|
-
const handleDeleteFile = (0,
|
|
5598
|
+
const handleDeleteFile = (0, import_react44.useCallback)(
|
|
5415
5599
|
(deletedFile) => {
|
|
5416
5600
|
if (deletedFile instanceof File) {
|
|
5417
5601
|
setFiles((current) => {
|
|
@@ -5431,10 +5615,10 @@ var Uploader = import_react43.default.memo(
|
|
|
5431
5615
|
},
|
|
5432
5616
|
[name, onChange, onDelete]
|
|
5433
5617
|
);
|
|
5434
|
-
const handleUploaderButtonClick = (0,
|
|
5618
|
+
const handleUploaderButtonClick = (0, import_react44.useCallback)(() => {
|
|
5435
5619
|
inputRef.current?.click();
|
|
5436
5620
|
}, []);
|
|
5437
|
-
const uploader = /* @__PURE__ */
|
|
5621
|
+
const uploader = /* @__PURE__ */ import_react44.default.createElement(
|
|
5438
5622
|
FileDropZone,
|
|
5439
5623
|
{
|
|
5440
5624
|
state: previewState,
|
|
@@ -5443,8 +5627,8 @@ var Uploader = import_react43.default.memo(
|
|
|
5443
5627
|
ref: dropZoneRef,
|
|
5444
5628
|
onClick: handleUploaderButtonClick
|
|
5445
5629
|
},
|
|
5446
|
-
/* @__PURE__ */
|
|
5447
|
-
/* @__PURE__ */
|
|
5630
|
+
/* @__PURE__ */ import_react44.default.createElement(Stack_default, { alignItems: "center", gap: 1 }, /* @__PURE__ */ import_react44.default.createElement(UploaderIcon, { state: previewState, error: !!(error || errorText), disabled })),
|
|
5631
|
+
/* @__PURE__ */ import_react44.default.createElement(
|
|
5448
5632
|
VisuallyHiddenInput,
|
|
5449
5633
|
{
|
|
5450
5634
|
disabled,
|
|
@@ -5467,17 +5651,17 @@ var Uploader = import_react43.default.memo(
|
|
|
5467
5651
|
}
|
|
5468
5652
|
)
|
|
5469
5653
|
);
|
|
5470
|
-
return /* @__PURE__ */
|
|
5654
|
+
return /* @__PURE__ */ import_react44.default.createElement(UploaderRoot, null, showDropZone && /* @__PURE__ */ import_react44.default.createElement(FormControl_default, { size, error: !!(error || errorText), disabled, required: !!minCount }, label && /* @__PURE__ */ import_react44.default.createElement(FormLabel_default, null, label), uploader, /* @__PURE__ */ import_react44.default.createElement(FormHelperText_default, null, /* @__PURE__ */ import_react44.default.createElement(Stack_default, null, errorText && /* @__PURE__ */ import_react44.default.createElement("div", null, errorText), /* @__PURE__ */ import_react44.default.createElement("div", null, helperText)))), [...uploaded, ...files].length > 0 && /* @__PURE__ */ import_react44.default.createElement(Preview, { files, uploaded, onDelete: handleDeleteFile }));
|
|
5471
5655
|
}
|
|
5472
5656
|
);
|
|
5473
5657
|
Uploader.displayName = "Uploader";
|
|
5474
5658
|
|
|
5475
5659
|
// src/components/Grid/Grid.tsx
|
|
5476
|
-
var
|
|
5660
|
+
var import_joy56 = require("@mui/joy");
|
|
5477
5661
|
|
|
5478
5662
|
// src/components/IconMenuButton/IconMenuButton.tsx
|
|
5479
|
-
var
|
|
5480
|
-
var
|
|
5663
|
+
var import_react45 = __toESM(require("react"));
|
|
5664
|
+
var import_joy57 = require("@mui/joy");
|
|
5481
5665
|
function IconMenuButton(props) {
|
|
5482
5666
|
const {
|
|
5483
5667
|
size,
|
|
@@ -5490,8 +5674,8 @@ function IconMenuButton(props) {
|
|
|
5490
5674
|
placement = "bottom"
|
|
5491
5675
|
} = props;
|
|
5492
5676
|
if (!items.length) {
|
|
5493
|
-
return /* @__PURE__ */
|
|
5494
|
-
|
|
5677
|
+
return /* @__PURE__ */ import_react45.default.createElement(
|
|
5678
|
+
import_joy57.IconButton,
|
|
5495
5679
|
{
|
|
5496
5680
|
component: props.buttonComponent ?? "button",
|
|
5497
5681
|
size,
|
|
@@ -5504,10 +5688,10 @@ function IconMenuButton(props) {
|
|
|
5504
5688
|
icon
|
|
5505
5689
|
);
|
|
5506
5690
|
}
|
|
5507
|
-
return /* @__PURE__ */
|
|
5508
|
-
|
|
5691
|
+
return /* @__PURE__ */ import_react45.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react45.default.createElement(
|
|
5692
|
+
import_joy57.MenuButton,
|
|
5509
5693
|
{
|
|
5510
|
-
slots: { root:
|
|
5694
|
+
slots: { root: import_joy57.IconButton },
|
|
5511
5695
|
slotProps: {
|
|
5512
5696
|
root: {
|
|
5513
5697
|
component: props.buttonComponent ?? "button",
|
|
@@ -5521,19 +5705,19 @@ function IconMenuButton(props) {
|
|
|
5521
5705
|
}
|
|
5522
5706
|
},
|
|
5523
5707
|
icon
|
|
5524
|
-
), /* @__PURE__ */
|
|
5708
|
+
), /* @__PURE__ */ import_react45.default.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ import_react45.default.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
|
|
5525
5709
|
}
|
|
5526
5710
|
IconMenuButton.displayName = "IconMenuButton";
|
|
5527
5711
|
|
|
5528
5712
|
// src/components/Markdown/Markdown.tsx
|
|
5529
|
-
var
|
|
5530
|
-
var import_joy57 = require("@mui/joy");
|
|
5713
|
+
var import_react46 = __toESM(require("react"));
|
|
5531
5714
|
var import_joy58 = require("@mui/joy");
|
|
5715
|
+
var import_joy59 = require("@mui/joy");
|
|
5532
5716
|
var import_remark_gfm = __toESM(require("remark-gfm"));
|
|
5533
|
-
var LazyReactMarkdown = (0,
|
|
5717
|
+
var LazyReactMarkdown = (0, import_react46.lazy)(() => import("react-markdown"));
|
|
5534
5718
|
var Markdown = (props) => {
|
|
5535
|
-
const [rehypeAccent2, setRehypeAccent] = (0,
|
|
5536
|
-
(0,
|
|
5719
|
+
const [rehypeAccent2, setRehypeAccent] = (0, import_react46.useState)(null);
|
|
5720
|
+
(0, import_react46.useEffect)(() => {
|
|
5537
5721
|
const loadRehypeAccent = async () => {
|
|
5538
5722
|
const module2 = await Promise.resolve().then(() => (init_rehype_accent(), rehype_accent_exports));
|
|
5539
5723
|
setRehypeAccent(() => module2.rehypeAccent);
|
|
@@ -5555,12 +5739,12 @@ var Markdown = (props) => {
|
|
|
5555
5739
|
if (!rehypeAccent2) {
|
|
5556
5740
|
return null;
|
|
5557
5741
|
}
|
|
5558
|
-
return /* @__PURE__ */
|
|
5559
|
-
|
|
5742
|
+
return /* @__PURE__ */ import_react46.default.createElement(Typography, { component: "div", color, textColor, level: defaultLevel, ...innerProps }, /* @__PURE__ */ import_react46.default.createElement(
|
|
5743
|
+
import_react46.Suspense,
|
|
5560
5744
|
{
|
|
5561
|
-
fallback: fallback || /* @__PURE__ */
|
|
5745
|
+
fallback: fallback || /* @__PURE__ */ import_react46.default.createElement(Typography, null, /* @__PURE__ */ import_react46.default.createElement(import_joy58.Skeleton, null, content || ""))
|
|
5562
5746
|
},
|
|
5563
|
-
/* @__PURE__ */
|
|
5747
|
+
/* @__PURE__ */ import_react46.default.createElement(
|
|
5564
5748
|
LazyReactMarkdown,
|
|
5565
5749
|
{
|
|
5566
5750
|
...markdownOptions,
|
|
@@ -5568,15 +5752,15 @@ var Markdown = (props) => {
|
|
|
5568
5752
|
rehypePlugins: [[rehypeAccent2, { accentColor }]],
|
|
5569
5753
|
remarkPlugins: [import_remark_gfm.default],
|
|
5570
5754
|
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__ */
|
|
5755
|
+
h1: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { color, textColor, level: "h1" }, children),
|
|
5756
|
+
h2: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { color, textColor, level: "h2" }, children),
|
|
5757
|
+
h3: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { color, textColor, level: "h3" }, children),
|
|
5758
|
+
h4: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { color, textColor, level: "h4" }, children),
|
|
5759
|
+
p: ({ children, node }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { color, textColor, level: defaultLevel, ...node?.properties }, children),
|
|
5760
|
+
a: ({ children, href }) => /* @__PURE__ */ import_react46.default.createElement(import_joy59.Link, { href, target: defaultLinkAction }, children),
|
|
5761
|
+
hr: () => /* @__PURE__ */ import_react46.default.createElement(Divider, null),
|
|
5762
|
+
b: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
|
|
5763
|
+
strong: ({ children }) => /* @__PURE__ */ import_react46.default.createElement(Typography, { fontWeight: boldFontWeight }, children),
|
|
5580
5764
|
...markdownOptions?.components
|
|
5581
5765
|
}
|
|
5582
5766
|
}
|
|
@@ -5586,8 +5770,8 @@ var Markdown = (props) => {
|
|
|
5586
5770
|
Markdown.displayName = "Markdown";
|
|
5587
5771
|
|
|
5588
5772
|
// src/components/MenuButton/MenuButton.tsx
|
|
5589
|
-
var
|
|
5590
|
-
var
|
|
5773
|
+
var import_react47 = __toESM(require("react"));
|
|
5774
|
+
var import_joy60 = require("@mui/joy");
|
|
5591
5775
|
var import_ExpandMore = __toESM(require("@mui/icons-material/ExpandMore"));
|
|
5592
5776
|
function MenuButton(props) {
|
|
5593
5777
|
const {
|
|
@@ -5604,8 +5788,8 @@ function MenuButton(props) {
|
|
|
5604
5788
|
placement = "bottom"
|
|
5605
5789
|
} = props;
|
|
5606
5790
|
if (!items.length) {
|
|
5607
|
-
return /* @__PURE__ */
|
|
5608
|
-
|
|
5791
|
+
return /* @__PURE__ */ import_react47.default.createElement(
|
|
5792
|
+
import_joy60.Button,
|
|
5609
5793
|
{
|
|
5610
5794
|
component: props.buttonComponent ?? "button",
|
|
5611
5795
|
size,
|
|
@@ -5615,13 +5799,13 @@ function MenuButton(props) {
|
|
|
5615
5799
|
loading,
|
|
5616
5800
|
startDecorator,
|
|
5617
5801
|
...props.buttonComponentProps ?? {},
|
|
5618
|
-
endDecorator: showIcon ? /* @__PURE__ */
|
|
5802
|
+
endDecorator: showIcon ? /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, endDecorator, /* @__PURE__ */ import_react47.default.createElement(import_ExpandMore.default, null)) : /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, endDecorator)
|
|
5619
5803
|
},
|
|
5620
5804
|
buttonText
|
|
5621
5805
|
);
|
|
5622
5806
|
}
|
|
5623
|
-
return /* @__PURE__ */
|
|
5624
|
-
|
|
5807
|
+
return /* @__PURE__ */ import_react47.default.createElement(Dropdown_default, null, /* @__PURE__ */ import_react47.default.createElement(
|
|
5808
|
+
import_joy60.MenuButton,
|
|
5625
5809
|
{
|
|
5626
5810
|
component: props.buttonComponent ?? "button",
|
|
5627
5811
|
size,
|
|
@@ -5631,25 +5815,25 @@ function MenuButton(props) {
|
|
|
5631
5815
|
loading,
|
|
5632
5816
|
startDecorator,
|
|
5633
5817
|
...props.buttonComponentProps ?? {},
|
|
5634
|
-
endDecorator: showIcon ? /* @__PURE__ */
|
|
5818
|
+
endDecorator: showIcon ? /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, endDecorator, /* @__PURE__ */ import_react47.default.createElement(import_ExpandMore.default, null)) : /* @__PURE__ */ import_react47.default.createElement(import_react47.default.Fragment, null, endDecorator)
|
|
5635
5819
|
},
|
|
5636
5820
|
buttonText
|
|
5637
|
-
), /* @__PURE__ */
|
|
5821
|
+
), /* @__PURE__ */ import_react47.default.createElement(Menu, { placement, size }, items.map((i) => /* @__PURE__ */ import_react47.default.createElement(MenuItem, { key: i.text, component: i.component, ...i.componentProps ?? {} }, i.text))));
|
|
5638
5822
|
}
|
|
5639
5823
|
MenuButton.displayName = "MenuButton";
|
|
5640
5824
|
|
|
5641
5825
|
// src/components/MonthPicker/MonthPicker.tsx
|
|
5642
|
-
var
|
|
5826
|
+
var import_react48 = __toESM(require("react"));
|
|
5643
5827
|
var import_CalendarToday3 = __toESM(require("@mui/icons-material/CalendarToday"));
|
|
5644
|
-
var
|
|
5828
|
+
var import_joy61 = require("@mui/joy");
|
|
5645
5829
|
var import_base4 = require("@mui/base");
|
|
5646
|
-
var StyledPopper3 = (0,
|
|
5830
|
+
var StyledPopper3 = (0, import_joy61.styled)(import_base4.Popper, {
|
|
5647
5831
|
name: "MonthPicker",
|
|
5648
5832
|
slot: "popper"
|
|
5649
5833
|
})(({ theme }) => ({
|
|
5650
5834
|
zIndex: theme.zIndex.tooltip
|
|
5651
5835
|
}));
|
|
5652
|
-
var CalendarSheet3 = (0,
|
|
5836
|
+
var CalendarSheet3 = (0, import_joy61.styled)(Sheet_default, {
|
|
5653
5837
|
name: "MonthPicker",
|
|
5654
5838
|
slot: "sheet",
|
|
5655
5839
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5658,7 +5842,7 @@ var CalendarSheet3 = (0, import_joy60.styled)(Sheet_default, {
|
|
|
5658
5842
|
boxShadow: theme.shadow.md,
|
|
5659
5843
|
borderRadius: theme.radius.md
|
|
5660
5844
|
}));
|
|
5661
|
-
var MonthPickerRoot = (0,
|
|
5845
|
+
var MonthPickerRoot = (0, import_joy61.styled)("div", {
|
|
5662
5846
|
name: "MonthPicker",
|
|
5663
5847
|
slot: "root",
|
|
5664
5848
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5694,8 +5878,8 @@ function parseDate3(dateString, format) {
|
|
|
5694
5878
|
const result = new Date(year, month, day);
|
|
5695
5879
|
return result;
|
|
5696
5880
|
}
|
|
5697
|
-
var MonthPicker = (0,
|
|
5698
|
-
const props = (0,
|
|
5881
|
+
var MonthPicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
5882
|
+
const props = (0, import_joy61.useThemeProps)({ props: inProps, name: "MonthPicker" });
|
|
5699
5883
|
const {
|
|
5700
5884
|
onChange,
|
|
5701
5885
|
disabled,
|
|
@@ -5721,14 +5905,14 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5721
5905
|
locale,
|
|
5722
5906
|
...innerProps
|
|
5723
5907
|
} = props;
|
|
5724
|
-
const innerRef = (0,
|
|
5725
|
-
const buttonRef = (0,
|
|
5908
|
+
const innerRef = (0, import_react48.useRef)(null);
|
|
5909
|
+
const buttonRef = (0, import_react48.useRef)(null);
|
|
5726
5910
|
const [value, setValue, isControlled] = useControlledState(
|
|
5727
5911
|
props.value,
|
|
5728
5912
|
props.defaultValue || "",
|
|
5729
|
-
(0,
|
|
5913
|
+
(0, import_react48.useCallback)((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
|
|
5730
5914
|
);
|
|
5731
|
-
const getFormattedDisplayValue = (0,
|
|
5915
|
+
const getFormattedDisplayValue = (0, import_react48.useCallback)(
|
|
5732
5916
|
(inputValue) => {
|
|
5733
5917
|
if (!inputValue) return "";
|
|
5734
5918
|
try {
|
|
@@ -5739,19 +5923,19 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5739
5923
|
},
|
|
5740
5924
|
[format, displayFormat, locale]
|
|
5741
5925
|
);
|
|
5742
|
-
const [displayValue, setDisplayValue] = (0,
|
|
5743
|
-
const [anchorEl, setAnchorEl] = (0,
|
|
5926
|
+
const [displayValue, setDisplayValue] = (0, import_react48.useState)(() => getFormattedDisplayValue(value));
|
|
5927
|
+
const [anchorEl, setAnchorEl] = (0, import_react48.useState)(null);
|
|
5744
5928
|
const open = Boolean(anchorEl);
|
|
5745
|
-
(0,
|
|
5929
|
+
(0, import_react48.useEffect)(() => {
|
|
5746
5930
|
if (!anchorEl) {
|
|
5747
5931
|
innerRef.current?.blur();
|
|
5748
5932
|
}
|
|
5749
5933
|
}, [anchorEl, innerRef]);
|
|
5750
|
-
(0,
|
|
5751
|
-
(0,
|
|
5934
|
+
(0, import_react48.useImperativeHandle)(ref, () => innerRef.current, [innerRef]);
|
|
5935
|
+
(0, import_react48.useEffect)(() => {
|
|
5752
5936
|
setDisplayValue(getFormattedDisplayValue(value));
|
|
5753
5937
|
}, [value, getFormattedDisplayValue]);
|
|
5754
|
-
const handleChange = (0,
|
|
5938
|
+
const handleChange = (0, import_react48.useCallback)(
|
|
5755
5939
|
(event) => {
|
|
5756
5940
|
const newValue = event.target.value;
|
|
5757
5941
|
setValue(newValue);
|
|
@@ -5761,21 +5945,21 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5761
5945
|
},
|
|
5762
5946
|
[setValue, getFormattedDisplayValue, isControlled]
|
|
5763
5947
|
);
|
|
5764
|
-
const handleCalendarToggle = (0,
|
|
5948
|
+
const handleCalendarToggle = (0, import_react48.useCallback)(
|
|
5765
5949
|
(event) => {
|
|
5766
5950
|
setAnchorEl(anchorEl ? null : event.currentTarget);
|
|
5767
5951
|
innerRef.current?.focus();
|
|
5768
5952
|
},
|
|
5769
5953
|
[anchorEl, setAnchorEl, innerRef]
|
|
5770
5954
|
);
|
|
5771
|
-
const handleInputMouseDown = (0,
|
|
5955
|
+
const handleInputMouseDown = (0, import_react48.useCallback)(
|
|
5772
5956
|
(event) => {
|
|
5773
5957
|
event.preventDefault();
|
|
5774
5958
|
buttonRef.current?.focus();
|
|
5775
5959
|
},
|
|
5776
5960
|
[buttonRef]
|
|
5777
5961
|
);
|
|
5778
|
-
return /* @__PURE__ */
|
|
5962
|
+
return /* @__PURE__ */ import_react48.default.createElement(MonthPickerRoot, null, /* @__PURE__ */ import_react48.default.createElement(import_base4.FocusTrap, { open: true }, /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, /* @__PURE__ */ import_react48.default.createElement(
|
|
5779
5963
|
Input_default,
|
|
5780
5964
|
{
|
|
5781
5965
|
...innerProps,
|
|
@@ -5805,7 +5989,7 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5805
5989
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
5806
5990
|
fontFamily: "monospace"
|
|
5807
5991
|
},
|
|
5808
|
-
endDecorator: /* @__PURE__ */
|
|
5992
|
+
endDecorator: /* @__PURE__ */ import_react48.default.createElement(
|
|
5809
5993
|
IconButton_default,
|
|
5810
5994
|
{
|
|
5811
5995
|
ref: buttonRef,
|
|
@@ -5817,12 +6001,12 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5817
6001
|
"aria-expanded": open,
|
|
5818
6002
|
disabled
|
|
5819
6003
|
},
|
|
5820
|
-
/* @__PURE__ */
|
|
6004
|
+
/* @__PURE__ */ import_react48.default.createElement(import_CalendarToday3.default, null)
|
|
5821
6005
|
),
|
|
5822
6006
|
label,
|
|
5823
6007
|
helperText
|
|
5824
6008
|
}
|
|
5825
|
-
), open && /* @__PURE__ */
|
|
6009
|
+
), open && /* @__PURE__ */ import_react48.default.createElement(import_base4.ClickAwayListener, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ import_react48.default.createElement(
|
|
5826
6010
|
StyledPopper3,
|
|
5827
6011
|
{
|
|
5828
6012
|
id: "month-picker-popper",
|
|
@@ -5841,7 +6025,7 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5841
6025
|
"aria-label": "Calendar Tooltip",
|
|
5842
6026
|
"aria-expanded": open
|
|
5843
6027
|
},
|
|
5844
|
-
/* @__PURE__ */
|
|
6028
|
+
/* @__PURE__ */ import_react48.default.createElement(CalendarSheet3, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ import_react48.default.createElement(
|
|
5845
6029
|
Calendar_default,
|
|
5846
6030
|
{
|
|
5847
6031
|
view: "month",
|
|
@@ -5862,14 +6046,14 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5862
6046
|
disablePast,
|
|
5863
6047
|
locale
|
|
5864
6048
|
}
|
|
5865
|
-
), /* @__PURE__ */
|
|
6049
|
+
), /* @__PURE__ */ import_react48.default.createElement(
|
|
5866
6050
|
DialogActions_default,
|
|
5867
6051
|
{
|
|
5868
6052
|
sx: {
|
|
5869
6053
|
p: 1
|
|
5870
6054
|
}
|
|
5871
6055
|
},
|
|
5872
|
-
/* @__PURE__ */
|
|
6056
|
+
/* @__PURE__ */ import_react48.default.createElement(
|
|
5873
6057
|
Button_default,
|
|
5874
6058
|
{
|
|
5875
6059
|
size,
|
|
@@ -5892,18 +6076,18 @@ var MonthPicker = (0, import_react47.forwardRef)((inProps, ref) => {
|
|
|
5892
6076
|
});
|
|
5893
6077
|
|
|
5894
6078
|
// src/components/MonthRangePicker/MonthRangePicker.tsx
|
|
5895
|
-
var
|
|
6079
|
+
var import_react49 = __toESM(require("react"));
|
|
5896
6080
|
var import_react_imask3 = require("react-imask");
|
|
5897
6081
|
var import_CalendarToday4 = __toESM(require("@mui/icons-material/CalendarToday"));
|
|
5898
|
-
var
|
|
6082
|
+
var import_joy62 = require("@mui/joy");
|
|
5899
6083
|
var import_base5 = require("@mui/base");
|
|
5900
|
-
var StyledPopper4 = (0,
|
|
6084
|
+
var StyledPopper4 = (0, import_joy62.styled)(import_base5.Popper, {
|
|
5901
6085
|
name: "MonthRangePicker",
|
|
5902
6086
|
slot: "popper"
|
|
5903
6087
|
})(({ theme }) => ({
|
|
5904
6088
|
zIndex: theme.zIndex.tooltip
|
|
5905
6089
|
}));
|
|
5906
|
-
var CalendarSheet4 = (0,
|
|
6090
|
+
var CalendarSheet4 = (0, import_joy62.styled)(Sheet_default, {
|
|
5907
6091
|
name: "MonthRangePicker",
|
|
5908
6092
|
slot: "sheet",
|
|
5909
6093
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5913,7 +6097,7 @@ var CalendarSheet4 = (0, import_joy61.styled)(Sheet_default, {
|
|
|
5913
6097
|
boxShadow: theme.shadow.md,
|
|
5914
6098
|
borderRadius: theme.radius.md
|
|
5915
6099
|
}));
|
|
5916
|
-
var MonthRangePickerRoot = (0,
|
|
6100
|
+
var MonthRangePickerRoot = (0, import_joy62.styled)("div", {
|
|
5917
6101
|
name: "MonthRangePicker",
|
|
5918
6102
|
slot: "root",
|
|
5919
6103
|
overridesResolver: (props, styles) => styles.root
|
|
@@ -5950,9 +6134,9 @@ var parseDates2 = (str) => {
|
|
|
5950
6134
|
var formatToPattern3 = (format) => {
|
|
5951
6135
|
return `${format} - ${format}`.replace(/YYYY/g, "Y").replace(/MM/g, "m").replace(/[^YMm\s]/g, (match) => `${match}\``);
|
|
5952
6136
|
};
|
|
5953
|
-
var TextMaskAdapter9 =
|
|
6137
|
+
var TextMaskAdapter9 = import_react49.default.forwardRef(function TextMaskAdapter10(props, ref) {
|
|
5954
6138
|
const { onChange, format, ...other } = props;
|
|
5955
|
-
return /* @__PURE__ */
|
|
6139
|
+
return /* @__PURE__ */ import_react49.default.createElement(
|
|
5956
6140
|
import_react_imask3.IMaskInput,
|
|
5957
6141
|
{
|
|
5958
6142
|
...other,
|
|
@@ -5980,8 +6164,8 @@ var TextMaskAdapter9 = import_react48.default.forwardRef(function TextMaskAdapte
|
|
|
5980
6164
|
}
|
|
5981
6165
|
);
|
|
5982
6166
|
});
|
|
5983
|
-
var MonthRangePicker = (0,
|
|
5984
|
-
const props = (0,
|
|
6167
|
+
var MonthRangePicker = (0, import_react49.forwardRef)((inProps, ref) => {
|
|
6168
|
+
const props = (0, import_joy62.useThemeProps)({ props: inProps, name: "MonthRangePicker" });
|
|
5985
6169
|
const {
|
|
5986
6170
|
onChange,
|
|
5987
6171
|
disabled,
|
|
@@ -6000,35 +6184,35 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6000
6184
|
size,
|
|
6001
6185
|
...innerProps
|
|
6002
6186
|
} = props;
|
|
6003
|
-
const innerRef = (0,
|
|
6187
|
+
const innerRef = (0, import_react49.useRef)(null);
|
|
6004
6188
|
const [value, setValue] = useControlledState(
|
|
6005
6189
|
props.value,
|
|
6006
6190
|
props.defaultValue || "",
|
|
6007
|
-
(0,
|
|
6191
|
+
(0, import_react49.useCallback)((value2) => onChange?.({ target: { name: props.name, value: value2 } }), [props.name, onChange])
|
|
6008
6192
|
);
|
|
6009
|
-
const [anchorEl, setAnchorEl] = (0,
|
|
6193
|
+
const [anchorEl, setAnchorEl] = (0, import_react49.useState)(null);
|
|
6010
6194
|
const open = Boolean(anchorEl);
|
|
6011
|
-
const calendarValue = (0,
|
|
6012
|
-
(0,
|
|
6195
|
+
const calendarValue = (0, import_react49.useMemo)(() => value ? parseDates2(value) : void 0, [value]);
|
|
6196
|
+
(0, import_react49.useEffect)(() => {
|
|
6013
6197
|
if (!anchorEl) {
|
|
6014
6198
|
innerRef.current?.blur();
|
|
6015
6199
|
}
|
|
6016
6200
|
}, [anchorEl, innerRef]);
|
|
6017
|
-
(0,
|
|
6018
|
-
const handleChange = (0,
|
|
6201
|
+
(0, import_react49.useImperativeHandle)(ref, () => innerRef.current, [innerRef]);
|
|
6202
|
+
const handleChange = (0, import_react49.useCallback)(
|
|
6019
6203
|
(event) => {
|
|
6020
6204
|
setValue(event.target.value);
|
|
6021
6205
|
},
|
|
6022
6206
|
[setValue]
|
|
6023
6207
|
);
|
|
6024
|
-
const handleCalendarToggle = (0,
|
|
6208
|
+
const handleCalendarToggle = (0, import_react49.useCallback)(
|
|
6025
6209
|
(event) => {
|
|
6026
6210
|
setAnchorEl(anchorEl ? null : event.currentTarget);
|
|
6027
6211
|
innerRef.current?.focus();
|
|
6028
6212
|
},
|
|
6029
6213
|
[anchorEl, setAnchorEl, innerRef]
|
|
6030
6214
|
);
|
|
6031
|
-
const handleCalendarChange = (0,
|
|
6215
|
+
const handleCalendarChange = (0, import_react49.useCallback)(
|
|
6032
6216
|
([date1, date2]) => {
|
|
6033
6217
|
if (!date1 || !date2) return;
|
|
6034
6218
|
setValue(formatValueString4([date1, date2], format));
|
|
@@ -6036,7 +6220,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6036
6220
|
},
|
|
6037
6221
|
[setValue, setAnchorEl, format]
|
|
6038
6222
|
);
|
|
6039
|
-
return /* @__PURE__ */
|
|
6223
|
+
return /* @__PURE__ */ import_react49.default.createElement(MonthRangePickerRoot, null, /* @__PURE__ */ import_react49.default.createElement(import_base5.FocusTrap, { open: true }, /* @__PURE__ */ import_react49.default.createElement(import_react49.default.Fragment, null, /* @__PURE__ */ import_react49.default.createElement(
|
|
6040
6224
|
Input_default,
|
|
6041
6225
|
{
|
|
6042
6226
|
...innerProps,
|
|
@@ -6058,7 +6242,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6058
6242
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6059
6243
|
fontFamily: "monospace"
|
|
6060
6244
|
},
|
|
6061
|
-
endDecorator: /* @__PURE__ */
|
|
6245
|
+
endDecorator: /* @__PURE__ */ import_react49.default.createElement(
|
|
6062
6246
|
IconButton_default,
|
|
6063
6247
|
{
|
|
6064
6248
|
variant: "plain",
|
|
@@ -6068,12 +6252,12 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6068
6252
|
"aria-haspopup": "dialog",
|
|
6069
6253
|
"aria-expanded": open
|
|
6070
6254
|
},
|
|
6071
|
-
/* @__PURE__ */
|
|
6255
|
+
/* @__PURE__ */ import_react49.default.createElement(import_CalendarToday4.default, null)
|
|
6072
6256
|
),
|
|
6073
6257
|
label,
|
|
6074
6258
|
helperText
|
|
6075
6259
|
}
|
|
6076
|
-
), open && /* @__PURE__ */
|
|
6260
|
+
), open && /* @__PURE__ */ import_react49.default.createElement(import_base5.ClickAwayListener, { onClickAway: () => setAnchorEl(null) }, /* @__PURE__ */ import_react49.default.createElement(
|
|
6077
6261
|
StyledPopper4,
|
|
6078
6262
|
{
|
|
6079
6263
|
id: "month-range-picker-popper",
|
|
@@ -6092,7 +6276,7 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6092
6276
|
"aria-label": "Calendar Tooltip",
|
|
6093
6277
|
"aria-expanded": open
|
|
6094
6278
|
},
|
|
6095
|
-
/* @__PURE__ */
|
|
6279
|
+
/* @__PURE__ */ import_react49.default.createElement(CalendarSheet4, { tabIndex: -1, role: "presentation" }, /* @__PURE__ */ import_react49.default.createElement(
|
|
6096
6280
|
Calendar_default,
|
|
6097
6281
|
{
|
|
6098
6282
|
view: "month",
|
|
@@ -6105,14 +6289,14 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6105
6289
|
disableFuture,
|
|
6106
6290
|
disablePast
|
|
6107
6291
|
}
|
|
6108
|
-
), /* @__PURE__ */
|
|
6292
|
+
), /* @__PURE__ */ import_react49.default.createElement(
|
|
6109
6293
|
DialogActions_default,
|
|
6110
6294
|
{
|
|
6111
6295
|
sx: {
|
|
6112
6296
|
p: 1
|
|
6113
6297
|
}
|
|
6114
6298
|
},
|
|
6115
|
-
/* @__PURE__ */
|
|
6299
|
+
/* @__PURE__ */ import_react49.default.createElement(
|
|
6116
6300
|
Button_default,
|
|
6117
6301
|
{
|
|
6118
6302
|
size,
|
|
@@ -6131,22 +6315,22 @@ var MonthRangePicker = (0, import_react48.forwardRef)((inProps, ref) => {
|
|
|
6131
6315
|
MonthRangePicker.displayName = "MonthRangePicker";
|
|
6132
6316
|
|
|
6133
6317
|
// src/components/NavigationGroup/NavigationGroup.tsx
|
|
6134
|
-
var
|
|
6135
|
-
var
|
|
6136
|
-
var AccordionSummary2 = (0,
|
|
6318
|
+
var import_react50 = __toESM(require("react"));
|
|
6319
|
+
var import_joy63 = require("@mui/joy");
|
|
6320
|
+
var AccordionSummary2 = (0, import_joy63.styled)(import_joy63.AccordionSummary, {
|
|
6137
6321
|
name: "NavigationGroup",
|
|
6138
6322
|
slot: "Summary",
|
|
6139
6323
|
shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
|
|
6140
6324
|
})(({ theme, useIcon, level }) => ({
|
|
6141
|
-
[`& .${
|
|
6325
|
+
[`& .${import_joy63.accordionSummaryClasses.button}`]: {
|
|
6142
6326
|
padding: theme.spacing(4, 6, 4, (useIcon ? 6 : 8) + (level || 0) * 8),
|
|
6143
|
-
[`&.${
|
|
6327
|
+
[`&.${import_joy63.accordionSummaryClasses.expanded}`]: {
|
|
6144
6328
|
color: theme.palette.primary.plainColor,
|
|
6145
6329
|
"--Icon-color": theme.palette.primary.plainColor
|
|
6146
6330
|
}
|
|
6147
6331
|
}
|
|
6148
6332
|
}));
|
|
6149
|
-
var AccordionDetails2 = (0,
|
|
6333
|
+
var AccordionDetails2 = (0, import_joy63.styled)(import_joy63.AccordionDetails, {
|
|
6150
6334
|
name: "NavigationGroup",
|
|
6151
6335
|
slot: "Details"
|
|
6152
6336
|
})(({ theme }) => ({
|
|
@@ -6155,13 +6339,13 @@ var AccordionDetails2 = (0, import_joy62.styled)(import_joy62.AccordionDetails,
|
|
|
6155
6339
|
}));
|
|
6156
6340
|
function NavigationGroup(props) {
|
|
6157
6341
|
const { title, children, startDecorator, level, ...rest } = props;
|
|
6158
|
-
return /* @__PURE__ */
|
|
6342
|
+
return /* @__PURE__ */ import_react50.default.createElement(import_joy63.Accordion, { ...rest }, /* @__PURE__ */ import_react50.default.createElement(AccordionSummary2, { useIcon: !!startDecorator, level }, /* @__PURE__ */ import_react50.default.createElement(import_joy63.Stack, { direction: "row", gap: 4 }, startDecorator, title)), /* @__PURE__ */ import_react50.default.createElement(AccordionDetails2, null, children));
|
|
6159
6343
|
}
|
|
6160
6344
|
|
|
6161
6345
|
// src/components/NavigationItem/NavigationItem.tsx
|
|
6162
|
-
var
|
|
6163
|
-
var
|
|
6164
|
-
var ListItemButton = (0,
|
|
6346
|
+
var import_react51 = __toESM(require("react"));
|
|
6347
|
+
var import_joy64 = require("@mui/joy");
|
|
6348
|
+
var ListItemButton = (0, import_joy64.styled)(import_joy64.ListItemButton, {
|
|
6165
6349
|
name: "NavigationItem",
|
|
6166
6350
|
slot: "Button",
|
|
6167
6351
|
shouldForwardProp: (prop) => prop !== "useIcon" && prop !== "level"
|
|
@@ -6175,7 +6359,7 @@ var ListItemButton = (0, import_joy63.styled)(import_joy63.ListItemButton, {
|
|
|
6175
6359
|
"&:active": {
|
|
6176
6360
|
backgroundColor: theme.palette.neutral.plainActiveBg
|
|
6177
6361
|
},
|
|
6178
|
-
[`&.${
|
|
6362
|
+
[`&.${import_joy64.listItemButtonClasses.selected}`]: {
|
|
6179
6363
|
color: theme.palette.primary.plainColor,
|
|
6180
6364
|
"--Icon-color": theme.palette.primary.plainColor,
|
|
6181
6365
|
"&:not(:hover):not(:active)": {
|
|
@@ -6188,7 +6372,7 @@ function NavigationItem(props) {
|
|
|
6188
6372
|
const handleClick = () => {
|
|
6189
6373
|
onClick?.(id);
|
|
6190
6374
|
};
|
|
6191
|
-
return /* @__PURE__ */
|
|
6375
|
+
return /* @__PURE__ */ import_react51.default.createElement(import_joy64.ListItem, { ...rest }, /* @__PURE__ */ import_react51.default.createElement(
|
|
6192
6376
|
ListItemButton,
|
|
6193
6377
|
{
|
|
6194
6378
|
level,
|
|
@@ -6197,21 +6381,21 @@ function NavigationItem(props) {
|
|
|
6197
6381
|
"aria-current": selected,
|
|
6198
6382
|
onClick: handleClick
|
|
6199
6383
|
},
|
|
6200
|
-
startDecorator && /* @__PURE__ */
|
|
6384
|
+
startDecorator && /* @__PURE__ */ import_react51.default.createElement(import_joy64.ListItemDecorator, null, startDecorator),
|
|
6201
6385
|
children
|
|
6202
6386
|
));
|
|
6203
6387
|
}
|
|
6204
6388
|
|
|
6205
6389
|
// src/components/Navigator/Navigator.tsx
|
|
6206
|
-
var
|
|
6390
|
+
var import_react52 = __toESM(require("react"));
|
|
6207
6391
|
function Navigator(props) {
|
|
6208
6392
|
const { items, level = 0, onSelect } = props;
|
|
6209
6393
|
const handleItemClick = (id) => {
|
|
6210
6394
|
onSelect?.(id);
|
|
6211
6395
|
};
|
|
6212
|
-
return /* @__PURE__ */
|
|
6396
|
+
return /* @__PURE__ */ import_react52.default.createElement("div", null, items.map((item, index) => {
|
|
6213
6397
|
if (item.type === "item") {
|
|
6214
|
-
return /* @__PURE__ */
|
|
6398
|
+
return /* @__PURE__ */ import_react52.default.createElement(
|
|
6215
6399
|
NavigationItem,
|
|
6216
6400
|
{
|
|
6217
6401
|
key: item.id,
|
|
@@ -6224,7 +6408,7 @@ function Navigator(props) {
|
|
|
6224
6408
|
item.title
|
|
6225
6409
|
);
|
|
6226
6410
|
} else if (item.type === "group") {
|
|
6227
|
-
return /* @__PURE__ */
|
|
6411
|
+
return /* @__PURE__ */ import_react52.default.createElement(
|
|
6228
6412
|
NavigationGroup,
|
|
6229
6413
|
{
|
|
6230
6414
|
key: `${item.title}-${index}`,
|
|
@@ -6242,22 +6426,22 @@ function Navigator(props) {
|
|
|
6242
6426
|
Navigator.displayName = "Navigator";
|
|
6243
6427
|
|
|
6244
6428
|
// src/components/ProfileMenu/ProfileMenu.tsx
|
|
6245
|
-
var
|
|
6246
|
-
var
|
|
6429
|
+
var import_react53 = __toESM(require("react"));
|
|
6430
|
+
var import_joy65 = require("@mui/joy");
|
|
6247
6431
|
var import_base6 = require("@mui/base");
|
|
6248
6432
|
var import_ArrowDropDown = __toESM(require("@mui/icons-material/ArrowDropDown"));
|
|
6249
|
-
var StyledProfileCard = (0,
|
|
6433
|
+
var StyledProfileCard = (0, import_joy65.styled)(import_joy3.Stack, {
|
|
6250
6434
|
name: "ProfileMenu",
|
|
6251
6435
|
slot: "item"
|
|
6252
6436
|
})({});
|
|
6253
6437
|
function ProfileCard(props) {
|
|
6254
6438
|
const { children, chip, caption, size } = props;
|
|
6255
|
-
const captionLevel = (0,
|
|
6256
|
-
const nameLevel = (0,
|
|
6257
|
-
return /* @__PURE__ */
|
|
6439
|
+
const captionLevel = (0, import_react53.useMemo)(() => size === "sm" ? "body-xs" : "body-sm", [size]);
|
|
6440
|
+
const nameLevel = (0, import_react53.useMemo)(() => size === "sm" ? "body-sm" : "body-md", [size]);
|
|
6441
|
+
return /* @__PURE__ */ import_react53.default.createElement(StyledProfileCard, { px: 4, py: 2 }, /* @__PURE__ */ import_react53.default.createElement(import_joy3.Stack, { direction: "row", gap: 2 }, /* @__PURE__ */ import_react53.default.createElement(Typography, { level: nameLevel, fontWeight: "bold", textColor: "text.primary" }, children), chip && /* @__PURE__ */ import_react53.default.createElement(Chip, { size, color: "neutral", variant: "outlined" }, chip)), caption && /* @__PURE__ */ import_react53.default.createElement(Typography, { level: captionLevel, textColor: "text.tertiary" }, caption));
|
|
6258
6442
|
}
|
|
6259
6443
|
ProfileCard.displayName = "ProfileCard";
|
|
6260
|
-
var StyledProfileMenuButton = (0,
|
|
6444
|
+
var StyledProfileMenuButton = (0, import_joy65.styled)(import_joy65.MenuButton, {
|
|
6261
6445
|
name: "ProfileMenu",
|
|
6262
6446
|
slot: "button"
|
|
6263
6447
|
})(({ theme }) => ({
|
|
@@ -6266,26 +6450,26 @@ var StyledProfileMenuButton = (0, import_joy64.styled)(import_joy64.MenuButton,
|
|
|
6266
6450
|
}));
|
|
6267
6451
|
function ProfileMenuButton(props) {
|
|
6268
6452
|
const { size = "md", src, alt, children, getInitial, ...innerProps } = props;
|
|
6269
|
-
return /* @__PURE__ */
|
|
6453
|
+
return /* @__PURE__ */ import_react53.default.createElement(
|
|
6270
6454
|
StyledProfileMenuButton,
|
|
6271
6455
|
{
|
|
6272
6456
|
variant: "plain",
|
|
6273
6457
|
color: "neutral",
|
|
6274
6458
|
size,
|
|
6275
|
-
endDecorator: /* @__PURE__ */
|
|
6459
|
+
endDecorator: /* @__PURE__ */ import_react53.default.createElement(import_ArrowDropDown.default, null),
|
|
6276
6460
|
...innerProps
|
|
6277
6461
|
},
|
|
6278
|
-
/* @__PURE__ */
|
|
6462
|
+
/* @__PURE__ */ import_react53.default.createElement(Avatar, { variant: "soft", color: "primary", size, src, alt, getInitial }, children)
|
|
6279
6463
|
);
|
|
6280
6464
|
}
|
|
6281
6465
|
ProfileMenuButton.displayName = "ProfileMenuButton";
|
|
6282
|
-
var ProfileMenuRoot = (0,
|
|
6466
|
+
var ProfileMenuRoot = (0, import_joy65.styled)(Menu, {
|
|
6283
6467
|
name: "ProfileMenu",
|
|
6284
6468
|
slot: "root"
|
|
6285
6469
|
})(({ theme }) => ({
|
|
6286
6470
|
border: "none",
|
|
6287
6471
|
"--ListItem-paddingX": theme.spacing(4),
|
|
6288
|
-
[`.${
|
|
6472
|
+
[`.${import_joy65.menuItemClasses.root}`]: {
|
|
6289
6473
|
border: "none"
|
|
6290
6474
|
}
|
|
6291
6475
|
}));
|
|
@@ -6294,9 +6478,9 @@ function ProfileMenu(props) {
|
|
|
6294
6478
|
const [open, setOpen] = useControlledState(
|
|
6295
6479
|
_open,
|
|
6296
6480
|
defaultOpen ?? false,
|
|
6297
|
-
(0,
|
|
6481
|
+
(0, import_react53.useCallback)((value) => onOpenChange?.(value), [onOpenChange])
|
|
6298
6482
|
);
|
|
6299
|
-
return /* @__PURE__ */
|
|
6483
|
+
return /* @__PURE__ */ import_react53.default.createElement(import_base6.ClickAwayListener, { onClickAway: () => setOpen(false) }, /* @__PURE__ */ import_react53.default.createElement("div", null, /* @__PURE__ */ import_react53.default.createElement(import_joy65.Dropdown, { open }, /* @__PURE__ */ import_react53.default.createElement(
|
|
6300
6484
|
ProfileMenuButton,
|
|
6301
6485
|
{
|
|
6302
6486
|
size,
|
|
@@ -6306,7 +6490,7 @@ function ProfileMenu(props) {
|
|
|
6306
6490
|
getInitial
|
|
6307
6491
|
},
|
|
6308
6492
|
profile.name
|
|
6309
|
-
), /* @__PURE__ */
|
|
6493
|
+
), /* @__PURE__ */ import_react53.default.createElement(ProfileMenuRoot, { size, placement: "bottom-end", ...innerProps, onClose: () => setOpen(false) }, /* @__PURE__ */ import_react53.default.createElement(ProfileCard, { size, caption: profile.caption, chip: profile.chip }, profile.name), !!menuItems.length && /* @__PURE__ */ import_react53.default.createElement(import_joy65.ListDivider, null), menuItems.map(({ label, ...menuProps }) => /* @__PURE__ */ import_react53.default.createElement(
|
|
6310
6494
|
MenuItem,
|
|
6311
6495
|
{
|
|
6312
6496
|
key: label,
|
|
@@ -6322,9 +6506,9 @@ function ProfileMenu(props) {
|
|
|
6322
6506
|
ProfileMenu.displayName = "ProfileMenu";
|
|
6323
6507
|
|
|
6324
6508
|
// src/components/RadioTileGroup/RadioTileGroup.tsx
|
|
6325
|
-
var
|
|
6326
|
-
var
|
|
6327
|
-
var RadioTileGroupRoot = (0,
|
|
6509
|
+
var import_react54 = __toESM(require("react"));
|
|
6510
|
+
var import_joy66 = require("@mui/joy");
|
|
6511
|
+
var RadioTileGroupRoot = (0, import_joy66.styled)(RadioGroup, {
|
|
6328
6512
|
name: "RadioTileGroup",
|
|
6329
6513
|
slot: "root",
|
|
6330
6514
|
shouldForwardProp: (prop) => prop !== "flex" && prop !== "columns"
|
|
@@ -6336,28 +6520,28 @@ var RadioTileGroupRoot = (0, import_joy65.styled)(RadioGroup, {
|
|
|
6336
6520
|
display: "grid",
|
|
6337
6521
|
gridTemplateColumns: `repeat(${columns}, 1fr)`
|
|
6338
6522
|
},
|
|
6339
|
-
[`& .${
|
|
6523
|
+
[`& .${import_joy66.sheetClasses.root}.${import_joy66.radioClasses.disabled}`]: {
|
|
6340
6524
|
borderColor: theme.palette.neutral.outlinedDisabledBorder
|
|
6341
6525
|
},
|
|
6342
|
-
[`& .${
|
|
6343
|
-
[`& .${
|
|
6526
|
+
[`& .${import_joy66.radioClasses.root}`]: {
|
|
6527
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6344
6528
|
borderRadius: theme.radius.md
|
|
6345
6529
|
},
|
|
6346
|
-
[`&.${
|
|
6347
|
-
[`& .${
|
|
6530
|
+
[`&.${import_joy66.radioClasses.checked}`]: {
|
|
6531
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6348
6532
|
inset: -1,
|
|
6349
6533
|
border: "2px solid",
|
|
6350
6534
|
borderColor: theme.palette.primary.outlinedColor
|
|
6351
6535
|
},
|
|
6352
|
-
[`&.${
|
|
6353
|
-
[`& .${
|
|
6536
|
+
[`&.${import_joy66.radioClasses.disabled}`]: {
|
|
6537
|
+
[`& .${import_joy66.radioClasses.action}`]: {
|
|
6354
6538
|
borderColor: theme.palette.neutral.outlinedBorder
|
|
6355
6539
|
}
|
|
6356
6540
|
}
|
|
6357
6541
|
}
|
|
6358
6542
|
}
|
|
6359
6543
|
}));
|
|
6360
|
-
var RadioTileSheet = (0,
|
|
6544
|
+
var RadioTileSheet = (0, import_joy66.styled)(Sheet, {
|
|
6361
6545
|
name: "RadioTileGroup",
|
|
6362
6546
|
slot: "tile",
|
|
6363
6547
|
shouldForwardProp: (prop) => prop !== "disabled" && prop !== "size" && prop !== "flex" && prop !== "textAlign"
|
|
@@ -6410,7 +6594,7 @@ function RadioTileGroup(props) {
|
|
|
6410
6594
|
error,
|
|
6411
6595
|
required
|
|
6412
6596
|
} = props;
|
|
6413
|
-
const radioGroup = /* @__PURE__ */
|
|
6597
|
+
const radioGroup = /* @__PURE__ */ import_react54.default.createElement(
|
|
6414
6598
|
RadioTileGroupRoot,
|
|
6415
6599
|
{
|
|
6416
6600
|
overlay: true,
|
|
@@ -6421,7 +6605,7 @@ function RadioTileGroup(props) {
|
|
|
6421
6605
|
flex,
|
|
6422
6606
|
columns
|
|
6423
6607
|
},
|
|
6424
|
-
options.map((option) => /* @__PURE__ */
|
|
6608
|
+
options.map((option) => /* @__PURE__ */ import_react54.default.createElement(
|
|
6425
6609
|
RadioTileSheet,
|
|
6426
6610
|
{
|
|
6427
6611
|
key: option.value,
|
|
@@ -6431,7 +6615,7 @@ function RadioTileGroup(props) {
|
|
|
6431
6615
|
flex,
|
|
6432
6616
|
textAlign
|
|
6433
6617
|
},
|
|
6434
|
-
/* @__PURE__ */
|
|
6618
|
+
/* @__PURE__ */ import_react54.default.createElement(
|
|
6435
6619
|
Radio,
|
|
6436
6620
|
{
|
|
6437
6621
|
id: `${option.value}`,
|
|
@@ -6459,7 +6643,7 @@ function RadioTileGroup(props) {
|
|
|
6459
6643
|
}
|
|
6460
6644
|
}
|
|
6461
6645
|
),
|
|
6462
|
-
option.startDecorator && /* @__PURE__ */
|
|
6646
|
+
option.startDecorator && /* @__PURE__ */ import_react54.default.createElement(
|
|
6463
6647
|
Box_default,
|
|
6464
6648
|
{
|
|
6465
6649
|
sx: {
|
|
@@ -6480,32 +6664,32 @@ function RadioTileGroup(props) {
|
|
|
6480
6664
|
)
|
|
6481
6665
|
))
|
|
6482
6666
|
);
|
|
6483
|
-
return /* @__PURE__ */
|
|
6667
|
+
return /* @__PURE__ */ import_react54.default.createElement(FormControl_default, { required, disabled: allDisabled, error, size, sx, className }, label && /* @__PURE__ */ import_react54.default.createElement(FormLabel_default, null, label), radioGroup, helperText && /* @__PURE__ */ import_react54.default.createElement(FormHelperText_default, null, helperText));
|
|
6484
6668
|
}
|
|
6485
6669
|
RadioTileGroup.displayName = "RadioTileGroup";
|
|
6486
6670
|
|
|
6487
6671
|
// src/components/RadioList/RadioList.tsx
|
|
6488
|
-
var
|
|
6672
|
+
var import_react55 = __toESM(require("react"));
|
|
6489
6673
|
function RadioList(props) {
|
|
6490
6674
|
const { items, ...innerProps } = props;
|
|
6491
|
-
return /* @__PURE__ */
|
|
6675
|
+
return /* @__PURE__ */ import_react55.default.createElement(RadioGroup, { ...innerProps }, items.map((item) => /* @__PURE__ */ import_react55.default.createElement(Radio, { key: `${item.value}`, value: item.value, label: item.label })));
|
|
6492
6676
|
}
|
|
6493
6677
|
RadioList.displayName = "RadioList";
|
|
6494
6678
|
|
|
6495
6679
|
// src/components/Stepper/Stepper.tsx
|
|
6496
|
-
var
|
|
6497
|
-
var
|
|
6680
|
+
var import_react56 = __toESM(require("react"));
|
|
6681
|
+
var import_joy67 = require("@mui/joy");
|
|
6498
6682
|
var import_Check = __toESM(require("@mui/icons-material/Check"));
|
|
6499
6683
|
var import_framer_motion27 = require("framer-motion");
|
|
6500
|
-
var Step = (0,
|
|
6684
|
+
var Step = (0, import_joy67.styled)(import_joy67.Step)({});
|
|
6501
6685
|
Step.displayName = "Step";
|
|
6502
|
-
var StepIndicator = (0,
|
|
6686
|
+
var StepIndicator = (0, import_joy67.styled)(import_joy67.StepIndicator)({});
|
|
6503
6687
|
StepIndicator.displayName = "StepIndicator";
|
|
6504
|
-
var StyledStepper = (0,
|
|
6688
|
+
var StyledStepper = (0, import_joy67.styled)(import_joy67.Stepper)(({ theme }) => ({
|
|
6505
6689
|
"--StepIndicator-size": "24px",
|
|
6506
6690
|
"--Step-gap": theme.spacing(2),
|
|
6507
6691
|
"--joy-palette-success-solidBg": "var(--joy-palette-success-400)",
|
|
6508
|
-
[`& .${
|
|
6692
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6509
6693
|
fontSize: "var(--ceed-fontSize-xs)"
|
|
6510
6694
|
}
|
|
6511
6695
|
}));
|
|
@@ -6522,31 +6706,31 @@ function Stepper(props) {
|
|
|
6522
6706
|
stepOrientation = "horizontal"
|
|
6523
6707
|
} = props;
|
|
6524
6708
|
const effectiveStepOrientation = orientation === "vertical" ? "horizontal" : stepOrientation;
|
|
6525
|
-
return /* @__PURE__ */
|
|
6709
|
+
return /* @__PURE__ */ import_react56.default.createElement(
|
|
6526
6710
|
MotionStepper,
|
|
6527
6711
|
{
|
|
6528
6712
|
orientation,
|
|
6529
6713
|
sx: (theme) => ({
|
|
6530
6714
|
"--StepIndicator-size": "24px",
|
|
6531
6715
|
"--Step-gap": theme.spacing(2),
|
|
6532
|
-
[`& .${
|
|
6716
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6533
6717
|
fontSize: "var(--ceed-fontSize-xs)"
|
|
6534
6718
|
},
|
|
6535
|
-
[`& .${
|
|
6719
|
+
[`& .${import_joy67.stepClasses.completed}`]: {
|
|
6536
6720
|
"&::after": { bgcolor: activeLineColor },
|
|
6537
|
-
[`& .${
|
|
6721
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6538
6722
|
bgcolor: activeColor
|
|
6539
6723
|
}
|
|
6540
6724
|
},
|
|
6541
|
-
[`& .${
|
|
6725
|
+
[`& .${import_joy67.stepClasses.active}`]: {
|
|
6542
6726
|
"&::after": { bgcolor: inactiveLineColor },
|
|
6543
|
-
[`& .${
|
|
6727
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6544
6728
|
bgcolor: activeColor
|
|
6545
6729
|
}
|
|
6546
6730
|
},
|
|
6547
|
-
[`& .${
|
|
6731
|
+
[`& .${import_joy67.stepClasses.disabled}`]: {
|
|
6548
6732
|
"&::after": { bgcolor: inactiveLineColor },
|
|
6549
|
-
[`& .${
|
|
6733
|
+
[`& .${import_joy67.stepIndicatorClasses.root}`]: {
|
|
6550
6734
|
bgcolor: theme.vars.palette.background.surface,
|
|
6551
6735
|
borderColor: theme.vars.palette.neutral.outlinedBorder,
|
|
6552
6736
|
borderWidth: "1px",
|
|
@@ -6561,23 +6745,23 @@ function Stepper(props) {
|
|
|
6561
6745
|
const completed = activeStep > i + 1;
|
|
6562
6746
|
const disabled = activeStep < i + 1;
|
|
6563
6747
|
const hasContent = step.label || step.extraContent;
|
|
6564
|
-
return /* @__PURE__ */
|
|
6748
|
+
return /* @__PURE__ */ import_react56.default.createElement(
|
|
6565
6749
|
Step,
|
|
6566
6750
|
{
|
|
6567
6751
|
key: `step-${i}`,
|
|
6568
|
-
indicator: /* @__PURE__ */
|
|
6752
|
+
indicator: /* @__PURE__ */ import_react56.default.createElement(StepIndicator, { variant: disabled ? "outlined" : "solid", color: disabled ? "neutral" : "primary" }, completed ? /* @__PURE__ */ import_react56.default.createElement(import_Check.default, null) : step.indicatorContent),
|
|
6569
6753
|
active,
|
|
6570
6754
|
completed,
|
|
6571
6755
|
disabled,
|
|
6572
6756
|
orientation: effectiveStepOrientation
|
|
6573
6757
|
},
|
|
6574
|
-
hasContent && /* @__PURE__ */
|
|
6758
|
+
hasContent && /* @__PURE__ */ import_react56.default.createElement(
|
|
6575
6759
|
Stack_default,
|
|
6576
6760
|
{
|
|
6577
6761
|
sx: orientation === "horizontal" && effectiveStepOrientation === "vertical" ? { alignItems: "center" } : {}
|
|
6578
6762
|
},
|
|
6579
|
-
step.label && /* @__PURE__ */
|
|
6580
|
-
step.extraContent && /* @__PURE__ */
|
|
6763
|
+
step.label && /* @__PURE__ */ import_react56.default.createElement(Typography_default, { level: "title-sm" }, step.label),
|
|
6764
|
+
step.extraContent && /* @__PURE__ */ import_react56.default.createElement(Typography_default, { level: "body-xs" }, step.extraContent)
|
|
6581
6765
|
)
|
|
6582
6766
|
);
|
|
6583
6767
|
})
|
|
@@ -6586,11 +6770,11 @@ function Stepper(props) {
|
|
|
6586
6770
|
Stepper.displayName = "Stepper";
|
|
6587
6771
|
|
|
6588
6772
|
// src/components/Switch/Switch.tsx
|
|
6589
|
-
var
|
|
6590
|
-
var
|
|
6773
|
+
var import_react57 = __toESM(require("react"));
|
|
6774
|
+
var import_joy68 = require("@mui/joy");
|
|
6591
6775
|
var import_framer_motion28 = require("framer-motion");
|
|
6592
|
-
var MotionSwitch = (0, import_framer_motion28.motion)(
|
|
6593
|
-
var StyledThumb = (0,
|
|
6776
|
+
var MotionSwitch = (0, import_framer_motion28.motion)(import_joy68.Switch);
|
|
6777
|
+
var StyledThumb = (0, import_joy68.styled)(import_framer_motion28.motion.div)({
|
|
6594
6778
|
"--Icon-fontSize": "calc(var(--Switch-thumbSize) * 0.75)",
|
|
6595
6779
|
display: "inline-flex",
|
|
6596
6780
|
justifyContent: "center",
|
|
@@ -6603,19 +6787,19 @@ var StyledThumb = (0, import_joy67.styled)(import_framer_motion28.motion.div)({
|
|
|
6603
6787
|
boxShadow: "var(--Switch-thumbShadow)",
|
|
6604
6788
|
color: "var(--Switch-thumbColor)",
|
|
6605
6789
|
backgroundColor: "var(--Switch-thumbBackground)",
|
|
6606
|
-
[`&.${
|
|
6790
|
+
[`&.${import_joy68.switchClasses.checked}`]: {
|
|
6607
6791
|
left: "unset",
|
|
6608
6792
|
right: "var(--Switch-thumbOffset)"
|
|
6609
6793
|
}
|
|
6610
6794
|
});
|
|
6611
|
-
var Thumb = (props) => /* @__PURE__ */
|
|
6795
|
+
var Thumb = (props) => /* @__PURE__ */ import_react57.default.createElement(StyledThumb, { ...props, layout: true, transition: spring });
|
|
6612
6796
|
var spring = {
|
|
6613
6797
|
type: "spring",
|
|
6614
6798
|
stiffness: 700,
|
|
6615
6799
|
damping: 30
|
|
6616
6800
|
};
|
|
6617
6801
|
var Switch = (props) => {
|
|
6618
|
-
return /* @__PURE__ */
|
|
6802
|
+
return /* @__PURE__ */ import_react57.default.createElement(
|
|
6619
6803
|
MotionSwitch,
|
|
6620
6804
|
{
|
|
6621
6805
|
...props,
|
|
@@ -6629,32 +6813,32 @@ var Switch = (props) => {
|
|
|
6629
6813
|
Switch.displayName = "Switch";
|
|
6630
6814
|
|
|
6631
6815
|
// src/components/Tabs/Tabs.tsx
|
|
6632
|
-
var
|
|
6633
|
-
var
|
|
6634
|
-
var StyledTabs = (0,
|
|
6816
|
+
var import_react58 = __toESM(require("react"));
|
|
6817
|
+
var import_joy69 = require("@mui/joy");
|
|
6818
|
+
var StyledTabs = (0, import_joy69.styled)(import_joy69.Tabs)(({ theme }) => ({
|
|
6635
6819
|
backgroundColor: theme.palette.background.body
|
|
6636
6820
|
}));
|
|
6637
6821
|
var Tabs = StyledTabs;
|
|
6638
6822
|
Tabs.displayName = "Tabs";
|
|
6639
|
-
var StyledTab = (0,
|
|
6823
|
+
var StyledTab = (0, import_joy69.styled)(import_joy69.Tab)(({ theme }) => ({
|
|
6640
6824
|
gap: theme.spacing(2),
|
|
6641
|
-
[`&:not(.${
|
|
6825
|
+
[`&:not(.${import_joy69.tabClasses.selected})`]: {
|
|
6642
6826
|
color: theme.palette.neutral[700]
|
|
6643
6827
|
},
|
|
6644
|
-
[`&.${
|
|
6828
|
+
[`&.${import_joy69.tabClasses.variantPlain}`]: {
|
|
6645
6829
|
backgroundColor: theme.palette.background.body
|
|
6646
6830
|
}
|
|
6647
6831
|
}));
|
|
6648
|
-
var Tab = (0,
|
|
6649
|
-
return /* @__PURE__ */
|
|
6832
|
+
var Tab = (0, import_react58.forwardRef)(function Tab2({ startDecorator, endDecorator, children, ...props }, ref) {
|
|
6833
|
+
return /* @__PURE__ */ import_react58.default.createElement(StyledTab, { ...props, ref }, startDecorator, children, endDecorator);
|
|
6650
6834
|
});
|
|
6651
6835
|
Tab.displayName = "Tab";
|
|
6652
|
-
var TabList =
|
|
6653
|
-
var TabPanel =
|
|
6836
|
+
var TabList = import_joy69.TabList;
|
|
6837
|
+
var TabPanel = import_joy69.TabPanel;
|
|
6654
6838
|
|
|
6655
6839
|
// src/components/ThemeProvider/ThemeProvider.tsx
|
|
6656
|
-
var
|
|
6657
|
-
var
|
|
6840
|
+
var import_react59 = __toESM(require("react"));
|
|
6841
|
+
var import_joy70 = require("@mui/joy");
|
|
6658
6842
|
var colorScheme = {
|
|
6659
6843
|
palette: {
|
|
6660
6844
|
danger: {
|
|
@@ -6707,7 +6891,7 @@ var colorScheme = {
|
|
|
6707
6891
|
}
|
|
6708
6892
|
}
|
|
6709
6893
|
};
|
|
6710
|
-
var defaultTheme = (0,
|
|
6894
|
+
var defaultTheme = (0, import_joy70.extendTheme)({
|
|
6711
6895
|
cssVarPrefix: "ceed",
|
|
6712
6896
|
spacing: 4,
|
|
6713
6897
|
breakpoints: {
|
|
@@ -6734,7 +6918,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6734
6918
|
},
|
|
6735
6919
|
styleOverrides: {
|
|
6736
6920
|
root: {
|
|
6737
|
-
[`.${
|
|
6921
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6738
6922
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6739
6923
|
"font-family": "monospace"
|
|
6740
6924
|
}
|
|
@@ -6747,7 +6931,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6747
6931
|
},
|
|
6748
6932
|
styleOverrides: {
|
|
6749
6933
|
root: {
|
|
6750
|
-
[`.${
|
|
6934
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6751
6935
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6752
6936
|
"font-family": "monospace"
|
|
6753
6937
|
}
|
|
@@ -6760,7 +6944,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6760
6944
|
},
|
|
6761
6945
|
styleOverrides: {
|
|
6762
6946
|
root: {
|
|
6763
|
-
[`.${
|
|
6947
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6764
6948
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6765
6949
|
"font-family": "monospace"
|
|
6766
6950
|
}
|
|
@@ -6773,7 +6957,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6773
6957
|
},
|
|
6774
6958
|
styleOverrides: {
|
|
6775
6959
|
root: {
|
|
6776
|
-
[`.${
|
|
6960
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6777
6961
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6778
6962
|
"font-family": "monospace"
|
|
6779
6963
|
}
|
|
@@ -6786,7 +6970,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6786
6970
|
},
|
|
6787
6971
|
styleOverrides: {
|
|
6788
6972
|
root: {
|
|
6789
|
-
[`.${
|
|
6973
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6790
6974
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6791
6975
|
"font-family": "monospace"
|
|
6792
6976
|
}
|
|
@@ -6799,7 +6983,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6799
6983
|
},
|
|
6800
6984
|
styleOverrides: {
|
|
6801
6985
|
root: {
|
|
6802
|
-
[`.${
|
|
6986
|
+
[`.${import_joy70.inputClasses.root}`]: {
|
|
6803
6987
|
// NOTE: placeholder char 를 텍스트로 표시하므로 동일한 너비를 가지는 mono font 를 사용해야 이질감이 없다.
|
|
6804
6988
|
"font-family": "monospace"
|
|
6805
6989
|
}
|
|
@@ -6877,7 +7061,7 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6877
7061
|
outline: `${theme.palette.primary[500]} solid 2px`,
|
|
6878
7062
|
outlineOffset: "-2px"
|
|
6879
7063
|
},
|
|
6880
|
-
[`& .${
|
|
7064
|
+
[`& .${import_joy70.checkboxClasses.root}`]: {
|
|
6881
7065
|
verticalAlign: "middle"
|
|
6882
7066
|
}
|
|
6883
7067
|
})
|
|
@@ -6932,6 +7116,6 @@ var defaultTheme = (0, import_joy69.extendTheme)({
|
|
|
6932
7116
|
});
|
|
6933
7117
|
function ThemeProvider(props) {
|
|
6934
7118
|
const theme = props.theme || defaultTheme;
|
|
6935
|
-
return /* @__PURE__ */
|
|
7119
|
+
return /* @__PURE__ */ import_react59.default.createElement(import_react59.default.Fragment, null, /* @__PURE__ */ import_react59.default.createElement(import_joy70.CssVarsProvider, { theme }, /* @__PURE__ */ import_react59.default.createElement(import_joy70.CssBaseline, null), props.children));
|
|
6936
7120
|
}
|
|
6937
7121
|
ThemeProvider.displayName = "ThemeProvider";
|