@ceed/ads 1.8.0-next.4 → 1.8.0-next.6

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.
@@ -6,6 +6,15 @@ interface FilterMenuProps {
6
6
  defaultValues?: Record<string, any>;
7
7
  onChange?: (values: Record<string, any>) => void;
8
8
  onClose?: () => void;
9
+ /**
10
+ * 필터에 있는 모든 옵션을 비우는 버튼을 제공하는 옵션.
11
+ * 일반적으로 아이콘 필터 버튼을 사용해서 필터가 모두 제공될 때 사용한다.
12
+ */
13
+ useReset?: boolean;
14
+ /**
15
+ * 하나의 필터 항목만 값을 비우는 버튼을 제공하는 옵션. filters가 1개만 있을때 Clear 버튼을 표시하고 2개 이상이면 의미 없다.
16
+ */
17
+ useClear?: boolean;
9
18
  }
10
19
  declare function FilterMenu(props: FilterMenuProps): React.JSX.Element;
11
20
  declare namespace FilterMenu {
@@ -39,7 +39,7 @@ export interface FilterPercentageInputItem extends FilterBaseItem<number>, Pick<
39
39
  export interface FilterPercentageRangeItem extends FilterBaseItem<[number, number]>, Pick<PercentageInputProps, "useMinorUnit" | "maxDecimalScale" | "min" | "max"> {
40
40
  type: "percentage-range";
41
41
  }
42
- export interface FilterAutocompleteItem extends FilterBaseItem<string | number>, Pick<AutocompleteProps<any, boolean>, "options" | "multiple"> {
42
+ export interface FilterAutocompleteItem extends FilterBaseItem<string | number>, Pick<AutocompleteProps<any, boolean>, "options" | "multiple" | "placeholder"> {
43
43
  type: "autocomplete";
44
44
  }
45
45
  export type FilterItem = FilterCheckboxGroupItem | FilterRadioGroupItem | FilterDateRangeItem | FilterCurrencyInputItem | FilterCurrencyRangeItem | FilterPercentageInputItem | FilterPercentageRangeItem | FilterAutocompleteItem;
@@ -23,6 +23,7 @@ export { Divider } from "./Divider";
23
23
  export { InsetDrawer } from "./InsetDrawer";
24
24
  export { Dropdown } from "./Dropdown";
25
25
  export { FilterMenu } from "./FilterMenu";
26
+ export type * from "./FilterMenu";
26
27
  export { Uploader } from "./Uploader";
27
28
  export { FormControl } from "./FormControl";
28
29
  export { FormHelperText } from "./FormHelperText";
package/dist/index.cjs CHANGED
@@ -5206,15 +5206,7 @@ PercentageRange.displayName = "PercentageRange";
5206
5206
  var import_react38 = __toESM(require("react"));
5207
5207
  var import_joy50 = require("@mui/joy");
5208
5208
  function Autocomplete2(props) {
5209
- const {
5210
- id,
5211
- label,
5212
- value,
5213
- onChange,
5214
- options,
5215
- multiple,
5216
- hidden
5217
- } = props;
5209
+ const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
5218
5210
  const [internalValue, setInternalValue] = useControlledState(
5219
5211
  value,
5220
5212
  void 0,
@@ -5252,6 +5244,7 @@ function Autocomplete2(props) {
5252
5244
  onChange: handleChange,
5253
5245
  options,
5254
5246
  multiple,
5247
+ placeholder,
5255
5248
  "aria-labelledby": label ? id : void 0
5256
5249
  }
5257
5250
  ));
@@ -5270,7 +5263,15 @@ var componentMap = {
5270
5263
  autocomplete: Autocomplete2
5271
5264
  };
5272
5265
  function FilterMenu(props) {
5273
- const { filters, values, defaultValues, onChange, onClose } = props;
5266
+ const {
5267
+ filters,
5268
+ values,
5269
+ defaultValues,
5270
+ onChange,
5271
+ onClose,
5272
+ useClear,
5273
+ useReset
5274
+ } = props;
5274
5275
  const [internalValues, setInternalValues] = useControlledState(
5275
5276
  values,
5276
5277
  defaultValues || {},
@@ -5320,7 +5321,25 @@ function FilterMenu(props) {
5320
5321
  }
5321
5322
  ) : null;
5322
5323
  }))),
5323
- /* @__PURE__ */ import_react39.default.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, /* @__PURE__ */ import_react39.default.createElement(import_joy51.Button, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), /* @__PURE__ */ import_react39.default.createElement(import_joy51.Button, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5324
+ /* @__PURE__ */ import_react39.default.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ import_react39.default.createElement(
5325
+ import_joy51.Button,
5326
+ {
5327
+ variant: "plain",
5328
+ color: "neutral",
5329
+ size: "md",
5330
+ onClick: handleClear
5331
+ },
5332
+ "Clear"
5333
+ ), useReset && !useClear && /* @__PURE__ */ import_react39.default.createElement(
5334
+ import_joy51.Button,
5335
+ {
5336
+ variant: "plain",
5337
+ color: "neutral",
5338
+ size: "md",
5339
+ onClick: handleClear
5340
+ },
5341
+ "Reset"
5342
+ ), /* @__PURE__ */ import_react39.default.createElement(import_joy51.Button, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5324
5343
  );
5325
5344
  }
5326
5345
  FilterMenu.displayName = "FilterMenu";
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export { useTheme, useColorScheme, useThemeProps, ButtonGroup, alertClasses, boxClasses, buttonClasses, checkboxClasses, dividerClasses, iconButtonClasses, inputClasses, menuClasses, menuButtonClasses, menuItemClasses, optionClasses, radioClasses, radioGroupClasses, selectClasses, switchClasses, tableClasses, textareaClasses, typographyClasses, formControlClasses, formLabelClasses, formHelperTextClasses, gridClasses, stackClasses, sheetClasses, modalClasses, modalCloseClasses, modalDialogClasses, modalOverflowClasses, dialogTitleClasses, dialogContentClasses, dialogActionsClasses, tooltipClasses, tabsClasses, tabListClasses, tabPanelClasses, accordionClasses, accordionDetailsClasses, accordionGroupClasses as accordionsClasses, accordionSummaryClasses, AutocompleteListbox, AutocompleteOption, autocompleteClasses, autocompleteListboxClasses, autocompleteOptionClasses, avatarClasses, avatarGroupClasses, AspectRatio, aspectRatioClasses, Badge, badgeClasses, breadcrumbsClasses, cardClasses, cardActionsClasses, cardContentClasses, cardCoverClasses, cardOverflowClasses, chipClasses, CircularProgress, circularProgressClasses, Drawer, drawerClasses, LinearProgress, linearProgressClasses, List, listClasses, ListDivider, listDividerClasses, ListItem, listItemClasses, ListItemButton, listItemButtonClasses, ListItemContent, listItemContentClasses, ListItemDecorator, listItemDecoratorClasses, ListSubheader, listSubheaderClasses, Link, linkClasses, Slider, sliderClasses, stepClasses, StepButton, stepButtonClasses, stepperClasses, Skeleton, skeletonClasses, styled, } from "@mui/joy";
2
2
  export type { ButtonProps, Theme } from "@mui/joy";
3
3
  export { Accordion, Accordions, Alert, Autocomplete, AccordionDetails, AccordionSummary, Avatar, AvatarGroup, Box, Breadcrumbs, Button, Calendar, Card, CardActions, CardContent, CardCover, CardOverflow, Checkbox, Chip, Container, CssBaseline, CurrencyInput, DataTable, DatePicker, DateRangePicker, DialogActions, DialogContent, DialogTitle, DialogFrame, Divider, Dropdown, FilterMenu, extendTheme, InsetDrawer, Uploader, FormControl, FormHelperText, FormLabel, Grid, IconButton, IconMenuButton, InfoSign, Input, Markdown, Menu, MenuButton, MenuItem, Modal, ModalClose, ModalDialog, ModalOverflow, ModalFrame, MonthPicker, MonthRangePicker, PercentageInput, ProfileMenu, Pagination, NavigationGroup, NavigationItem, Navigator, Radio, RadioGroup, RadioList, Select, Option, Sheet, Stack, Step, StepIndicator, Stepper, Switch, theme, Table, TableHead, TableBody, Tabs, Tab, TabList, TabPanel, Textarea, ThemeProvider, Tooltip, Typography, } from "./components";
4
+ export type * from "./components";
package/dist/index.js CHANGED
@@ -5176,15 +5176,7 @@ PercentageRange.displayName = "PercentageRange";
5176
5176
  import React36, { useCallback as useCallback18 } from "react";
5177
5177
  import { Stack as Stack9 } from "@mui/joy";
5178
5178
  function Autocomplete2(props) {
5179
- const {
5180
- id,
5181
- label,
5182
- value,
5183
- onChange,
5184
- options,
5185
- multiple,
5186
- hidden
5187
- } = props;
5179
+ const { id, label, value, onChange, options, multiple, hidden, placeholder } = props;
5188
5180
  const [internalValue, setInternalValue] = useControlledState(
5189
5181
  value,
5190
5182
  void 0,
@@ -5222,6 +5214,7 @@ function Autocomplete2(props) {
5222
5214
  onChange: handleChange,
5223
5215
  options,
5224
5216
  multiple,
5217
+ placeholder,
5225
5218
  "aria-labelledby": label ? id : void 0
5226
5219
  }
5227
5220
  ));
@@ -5240,7 +5233,15 @@ var componentMap = {
5240
5233
  autocomplete: Autocomplete2
5241
5234
  };
5242
5235
  function FilterMenu(props) {
5243
- const { filters, values, defaultValues, onChange, onClose } = props;
5236
+ const {
5237
+ filters,
5238
+ values,
5239
+ defaultValues,
5240
+ onChange,
5241
+ onClose,
5242
+ useClear,
5243
+ useReset
5244
+ } = props;
5244
5245
  const [internalValues, setInternalValues] = useControlledState(
5245
5246
  values,
5246
5247
  defaultValues || {},
@@ -5290,7 +5291,25 @@ function FilterMenu(props) {
5290
5291
  }
5291
5292
  ) : null;
5292
5293
  }))),
5293
- /* @__PURE__ */ React37.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, /* @__PURE__ */ React37.createElement(Button2, { variant: "plain", color: "neutral", size: "md", onClick: handleClear }, "Clear"), /* @__PURE__ */ React37.createElement(Button2, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5294
+ /* @__PURE__ */ React37.createElement(DialogActions, { sx: { justifyContent: "space-between" } }, useClear && filters?.length === 1 && /* @__PURE__ */ React37.createElement(
5295
+ Button2,
5296
+ {
5297
+ variant: "plain",
5298
+ color: "neutral",
5299
+ size: "md",
5300
+ onClick: handleClear
5301
+ },
5302
+ "Clear"
5303
+ ), useReset && !useClear && /* @__PURE__ */ React37.createElement(
5304
+ Button2,
5305
+ {
5306
+ variant: "plain",
5307
+ color: "neutral",
5308
+ size: "md",
5309
+ onClick: handleClear
5310
+ },
5311
+ "Reset"
5312
+ ), /* @__PURE__ */ React37.createElement(Button2, { variant: "solid", color: "primary", size: "md", onClick: handleApply }, "Apply"))
5294
5313
  );
5295
5314
  }
5296
5315
  FilterMenu.displayName = "FilterMenu";