@activecollab/components 2.0.279 → 2.0.280

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,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.Filter = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactFocusLock = require("react-focus-lock");
9
+ var _InputSubmenu = require("./InputSubmenu");
9
10
  var _StartMenu = require("./StartMenu");
10
11
  var _Styles = require("./Styles");
11
12
  var _Submenu = require("./Submenu");
@@ -14,7 +15,7 @@ var _CounterButton = require("../CounterButton");
14
15
  var _Icons = require("../Icons");
15
16
  var _Select = require("../Select");
16
17
  var _Transitions = require("../Transitions");
17
- var _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue"];
18
+ var _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue", "type", "inputPlaceholder", "saveLabel", "clearLabel"];
18
19
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
19
20
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
20
21
  function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
@@ -126,6 +127,27 @@ var Filter = exports.Filter = function Filter(_ref) {
126
127
  setFilter(newFilters);
127
128
  onChange(newFilters);
128
129
  }, [filter, menu, onChange]);
130
+ var handleInputSave = (0, _react.useCallback)(function (id, value) {
131
+ var newFilters = {};
132
+ if (value.trim()) {
133
+ newFilters = _objectSpread(_objectSpread({}, filter), {}, {
134
+ [id]: [value]
135
+ });
136
+ } else {
137
+ newFilters = _objectSpread({}, filter);
138
+ delete newFilters[id];
139
+ }
140
+ setFilter(newFilters);
141
+ onChange(newFilters);
142
+ setIndex();
143
+ }, [filter, onChange, setIndex]);
144
+ var handleInputClear = (0, _react.useCallback)(function (id) {
145
+ var newFilters = _objectSpread({}, filter);
146
+ delete newFilters[id];
147
+ setFilter(newFilters);
148
+ onChange(newFilters);
149
+ setIndex();
150
+ }, [filter, onChange, setIndex]);
129
151
  var count = (0, _react.useMemo)(function () {
130
152
  var c = 0;
131
153
  Object.values(filter).forEach(function (entry) {
@@ -142,7 +164,7 @@ var Filter = exports.Filter = function Filter(_ref) {
142
164
  }
143
165
  for (var entry of data) {
144
166
  var _entry$submenu;
145
- if (((_entry$submenu = entry.submenu) === null || _entry$submenu === void 0 ? void 0 : _entry$submenu.length) > 1) {
167
+ if (entry.type === "input" || ((_entry$submenu = entry.submenu) === null || _entry$submenu === void 0 ? void 0 : _entry$submenu.length) > 1) {
146
168
  return true;
147
169
  }
148
170
  }
@@ -188,7 +210,7 @@ var Filter = exports.Filter = function Filter(_ref) {
188
210
  shouldRenderSubmenus: shouldRenderSubmenus,
189
211
  emptyFilterText: emptyFilterText
190
212
  }, children))), shouldRenderSubmenus && data.map(function (_ref2, index) {
191
- var _filter$id;
213
+ var _filter$id$, _filter$id, _filter$id2;
192
214
  var id = _ref2.id,
193
215
  title = _ref2.title,
194
216
  submenu = _ref2.submenu,
@@ -196,6 +218,12 @@ var Filter = exports.Filter = function Filter(_ref) {
196
218
  disableInternalSort = _ref2.disableInternalSort,
197
219
  isSingleSelect = _ref2.isSingleSelect,
198
220
  defaultValue = _ref2.defaultValue,
221
+ _ref2$type = _ref2.type,
222
+ submenuType = _ref2$type === void 0 ? "select" : _ref2$type,
223
+ inputPlaceholder = _ref2.inputPlaceholder,
224
+ _ref2$saveLabel = _ref2.saveLabel,
225
+ saveLabel = _ref2$saveLabel === void 0 ? "Save" : _ref2$saveLabel,
226
+ clearLabel = _ref2.clearLabel,
199
227
  rest = _objectWithoutProperties(_ref2, _excluded);
200
228
  return /*#__PURE__*/_react.default.createElement(_Transitions.SlideLeftRightTransition, {
201
229
  key: "filter-submenu-".concat(index),
@@ -215,7 +243,18 @@ var Filter = exports.Filter = function Filter(_ref) {
215
243
  indexPage: menu === "index"
216
244
  }, /*#__PURE__*/_react.default.createElement(_reactFocusLock.MoveFocusInside, {
217
245
  disabled: enteredMenu !== id
218
- }, /*#__PURE__*/_react.default.createElement(_Select.Select, _extends({
246
+ }, submenuType === "input" ? /*#__PURE__*/_react.default.createElement(_InputSubmenu.InputSubmenu, {
247
+ value: (_filter$id$ = (_filter$id = filter[id]) === null || _filter$id === void 0 ? void 0 : _filter$id[0]) !== null && _filter$id$ !== void 0 ? _filter$id$ : "",
248
+ placeholder: inputPlaceholder,
249
+ saveLabel: saveLabel,
250
+ clearLabel: clearLabel,
251
+ onSave: function onSave(value) {
252
+ return handleInputSave(id, value);
253
+ },
254
+ onClear: function onClear() {
255
+ return handleInputClear(id);
256
+ }
257
+ }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Select.Select, _extends({
219
258
  options: submenu,
220
259
  selected: filter[id],
221
260
  onChange: handleChange,
@@ -227,11 +266,11 @@ var Filter = exports.Filter = function Filter(_ref) {
227
266
  disableSearch: Boolean(submenu.length <= 7),
228
267
  disabledInternalSort: disableInternalSort,
229
268
  defaultValue: defaultValue
230
- }, rest)), (_filter$id = filter[id]) !== null && _filter$id !== void 0 && _filter$id.length ? /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooter, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
269
+ }, rest)), (_filter$id2 = filter[id]) !== null && _filter$id2 !== void 0 && _filter$id2.length ? /*#__PURE__*/_react.default.createElement(_Styles.StyledMenuFooter, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
231
270
  variant: "text colored",
232
271
  size: "small",
233
272
  onClick: handleReset
234
- }, resetLabel)) : null)));
273
+ }, resetLabel)) : null))));
235
274
  }))));
236
275
  };
237
276
  //# sourceMappingURL=Filter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.js","names":["_react","_interopRequireWildcard","require","_reactFocusLock","_StartMenu","_Styles","_Submenu","_Button","_CounterButton","_Icons","_Select","_Transitions","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","Filter","exports","_ref","data","_ref$selected","selected","label","clearAllText","_ref$resetLabel","resetLabel","onChange","_ref$width","width","noResultText","emptyFilterText","children","_ref$icon","icon","createElement","FilterIcon","_ref$position","position","_ref$disabled","disabled","className","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","menu","setMenu","_useState5","_useState6","isLeft","setIsLeft","_useState7","_useState8","height","setHeight","_useState9","_useState0","enteredMenu","setEnteredMenu","_useState1","_useState10","setFilter","useEffect","handleOpen","useCallback","handleClose","handleHeight","element","_element$offsetHeight","offsetHeight","handleItemClick","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","count","useMemo","c","values","entry","shouldRenderSubmenus","_entry$submenu","submenu","StyledMenu","onOpen","onClose","target","CounterButton","active","counter","tooltipText","onClearAll","labelClassName","ResizeTransition","in","style","SlideLeftRightTransition","direction","onEnter","onEntered","MoveFocusInside","StartMenu","onHeightChange","onItemClick","map","_ref2","index","_filter$id","id","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","rest","key","concat","Submenu","onBack","indexPage","Select","options","type","autoHeightMax","placeholder","keepSameOptionsOrder","Boolean","disableSearch","disabledInternalSort","StyledMenuFooter","Button","variant","size","onClick"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useState,\n PropsWithChildren,\n} from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\n\nimport { Placement } from \"@popperjs/core\";\n\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\n\nexport type DataType = {\n id: number | string;\n title: string;\n searchPlaceholder?: string;\n disableInternalSort?: boolean;\n submenu: Array<IOptionGroupProps | IOptionItemProps>;\n isSingleSelect?: boolean;\n defaultValue?: string;\n emptyValue?: string;\n emptyAction?: (e: string | undefined) => void;\n};\n\nexport type SelectedType = {\n [key: number | string]: Array<string>;\n};\n\nexport interface FilterProps {\n /** Data rendered in submenus */\n data: Array<DataType>;\n /** Selected data inside submenus */\n selected?: SelectedType;\n /** Main filter label */\n label: string;\n /** Filter width */\n width?: number;\n /** Text displayed for the tooltip of clear all button */\n clearAllText: string;\n /** Handler for changes on the filter */\n onChange: (selected: SelectedType) => void;\n /** Label for reset button inside submenu */\n resetLabel?: string;\n /** Text to show when search results are empty */\n noResultText: string;\n /** Text to show when there are no submenus to display */\n emptyFilterText?: string;\n /** Position of the dropped menu. */\n position?: Placement;\n /** Icon of the trigger element. */\n icon?: ReactElement;\n /** Disabled state of the trigger. */\n disabled?: boolean;\n /** Applies passed classes for label text */\n className?: string;\n}\n\nexport const Filter: FC<PropsWithChildren<FilterProps>> = ({\n data,\n selected = {},\n label,\n clearAllText,\n resetLabel = \"Reset\",\n onChange,\n width = 260,\n noResultText,\n emptyFilterText,\n children,\n icon = <FilterIcon />,\n position = \"bottom-end\",\n disabled = false,\n className,\n}) => {\n const [open, setOpen] = useState(false);\n const [menu, setMenu] = useState<number | string>(\"index\");\n const [isLeft, setIsLeft] = useState(true);\n const [height, setHeight] = useState(0);\n const [enteredMenu, setEnteredMenu] = useState<number | string>(\"index\");\n const [filter, setFilter] = useState<SelectedType>(() => selected);\n\n useEffect(() => {\n if (Object.keys(selected).length > 0 || Object.keys(filter).length > 0) {\n setFilter(selected);\n }\n }, [selected, filter]);\n\n const handleOpen = useCallback(() => {\n setOpen(true);\n }, []);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n setMenu(\"index\");\n setHeight(0);\n }, []);\n\n const handleHeight = useCallback((element) => {\n setHeight(element?.offsetHeight ?? 0);\n }, []);\n\n const handleItemClick = useCallback((value) => {\n setMenu(value);\n setIsLeft(true);\n }, []);\n\n const setIndex = useCallback(() => {\n setMenu(\"index\");\n setIsLeft(false);\n }, []);\n\n const handleChange = useCallback(\n (selectedArray) => {\n let newFilters = {};\n if (selectedArray.length) {\n newFilters = {\n ...filter,\n [menu]: selectedArray,\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[menu];\n }\n setFilter(newFilters);\n onChange(newFilters);\n },\n [filter, menu, onChange]\n );\n\n const handleClearAll = useCallback(\n (event) => {\n event.stopPropagation();\n setFilter({});\n onChange({});\n },\n [onChange]\n );\n\n const handleReset = useCallback(() => {\n const newFilters = { ...filter };\n delete newFilters[menu];\n setFilter(newFilters);\n onChange(newFilters);\n }, [filter, menu, onChange]);\n\n const count = useMemo(() => {\n let c = 0;\n\n Object.values(filter).forEach((entry) => {\n if (typeof entry === \"string\") {\n return (c += 1);\n }\n\n return (c += entry.length);\n });\n return c;\n }, [filter]);\n\n const shouldRenderSubmenus = useMemo(() => {\n if (data.length === 0) {\n return false;\n }\n\n for (const entry of data) {\n if (entry.submenu?.length > 1) {\n return true;\n }\n }\n\n return false;\n }, [data]);\n\n return (\n <StyledMenu\n open={open}\n onOpen={handleOpen}\n onClose={handleClose}\n position={position}\n target={\n <CounterButton\n active={open}\n label={label}\n icon={icon}\n counter={count}\n tooltipText={clearAllText}\n onClearAll={handleClearAll}\n disabled={disabled}\n labelClassName={className}\n />\n }\n >\n <ResizeTransition in>\n <div style={{ height, width }}>\n <SlideLeftRightTransition\n in={menu === \"index\"}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(\"index\")}\n >\n <MoveFocusInside>\n <StartMenu\n data={data}\n selected={filter}\n style={{ width }}\n onHeightChange={setHeight}\n onItemClick={handleItemClick}\n shouldRenderSubmenus={shouldRenderSubmenus}\n emptyFilterText={emptyFilterText}\n >\n {children}\n </StartMenu>\n </MoveFocusInside>\n </SlideLeftRightTransition>\n {shouldRenderSubmenus &&\n data.map(\n (\n {\n id,\n title,\n submenu,\n searchPlaceholder,\n disableInternalSort,\n isSingleSelect,\n defaultValue,\n ...rest\n }: DataType,\n index: number\n ) => (\n <SlideLeftRightTransition\n key={`filter-submenu-${index}`}\n in={menu === id}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(id)}\n >\n <Submenu\n title={title}\n onBack={setIndex}\n onHeightChange={setHeight}\n style={{ width }}\n indexPage={menu === \"index\"}\n >\n <MoveFocusInside disabled={enteredMenu !== id}>\n <Select\n options={submenu}\n selected={filter[id]}\n onChange={handleChange}\n type={isSingleSelect ? \"single\" : \"multiple\"}\n autoHeightMax={255}\n placeholder={searchPlaceholder}\n noResultText={noResultText}\n keepSameOptionsOrder={Boolean(submenu.length <= 7)}\n disableSearch={Boolean(submenu.length <= 7)}\n disabledInternalSort={disableInternalSort}\n defaultValue={defaultValue}\n {...rest}\n />\n {filter[id]?.length ? (\n <StyledMenuFooter>\n <Button\n variant=\"text colored\"\n size=\"small\"\n onClick={handleReset}\n >\n {resetLabel}\n </Button>\n </StyledMenuFooter>\n ) : null}\n </MoveFocusInside>\n </Submenu>\n </SlideLeftRightTransition>\n )\n )}\n </div>\n </ResizeTransition>\n </StyledMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Filter.js","names":["_react","_interopRequireWildcard","require","_reactFocusLock","_InputSubmenu","_StartMenu","_Styles","_Submenu","_Button","_CounterButton","_Icons","_Select","_Transitions","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","keys","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","iterator","u","next","done","return","isArray","Filter","exports","_ref","data","_ref$selected","selected","label","clearAllText","_ref$resetLabel","resetLabel","onChange","_ref$width","width","noResultText","emptyFilterText","children","_ref$icon","icon","createElement","FilterIcon","_ref$position","position","_ref$disabled","disabled","className","_useState","useState","_useState2","open","setOpen","_useState3","_useState4","menu","setMenu","_useState5","_useState6","isLeft","setIsLeft","_useState7","_useState8","height","setHeight","_useState9","_useState0","enteredMenu","setEnteredMenu","_useState1","_useState10","setFilter","useEffect","handleOpen","useCallback","handleClose","handleHeight","element","_element$offsetHeight","offsetHeight","handleItemClick","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","handleInputSave","id","trim","handleInputClear","count","useMemo","c","values","entry","shouldRenderSubmenus","_entry$submenu","type","submenu","StyledMenu","onOpen","onClose","target","CounterButton","active","counter","tooltipText","onClearAll","labelClassName","ResizeTransition","in","style","SlideLeftRightTransition","direction","onEnter","onEntered","MoveFocusInside","StartMenu","onHeightChange","onItemClick","map","_ref2","index","_filter$id$","_filter$id","_filter$id2","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","_ref2$type","submenuType","inputPlaceholder","_ref2$saveLabel","saveLabel","clearLabel","rest","key","concat","Submenu","onBack","indexPage","InputSubmenu","placeholder","onSave","onClear","Fragment","Select","options","autoHeightMax","keepSameOptionsOrder","Boolean","disableSearch","disabledInternalSort","StyledMenuFooter","Button","variant","size","onClick"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useState,\n PropsWithChildren,\n} from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\n\nimport { Placement } from \"@popperjs/core\";\n\nimport { InputSubmenu } from \"./InputSubmenu\";\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\n\nexport type DataType = {\n id: number | string;\n title: string;\n searchPlaceholder?: string;\n disableInternalSort?: boolean;\n submenu: Array<IOptionGroupProps | IOptionItemProps>;\n isSingleSelect?: boolean;\n defaultValue?: string;\n emptyValue?: string;\n emptyAction?: (e: string | undefined) => void;\n /** Type of submenu - 'select' renders options list, 'input' renders an input field with save button */\n type?: \"select\" | \"input\";\n /** Placeholder text for input field (only used when type='input') */\n inputPlaceholder?: string;\n /** Label for the save button (only used when type='input') */\n saveLabel?: string;\n /** Label for the clear button (only used when type='input') */\n clearLabel?: string;\n};\n\nexport type SelectedType = {\n [key: number | string]: Array<string>;\n};\n\nexport interface FilterProps {\n /** Data rendered in submenus */\n data: Array<DataType>;\n /** Selected data inside submenus */\n selected?: SelectedType;\n /** Main filter label */\n label: string;\n /** Filter width */\n width?: number;\n /** Text displayed for the tooltip of clear all button */\n clearAllText: string;\n /** Handler for changes on the filter */\n onChange: (selected: SelectedType) => void;\n /** Label for reset button inside submenu */\n resetLabel?: string;\n /** Text to show when search results are empty */\n noResultText: string;\n /** Text to show when there are no submenus to display */\n emptyFilterText?: string;\n /** Position of the dropped menu. */\n position?: Placement;\n /** Icon of the trigger element. */\n icon?: ReactElement;\n /** Disabled state of the trigger. */\n disabled?: boolean;\n /** Applies passed classes for label text */\n className?: string;\n}\n\nexport const Filter: FC<PropsWithChildren<FilterProps>> = ({\n data,\n selected = {},\n label,\n clearAllText,\n resetLabel = \"Reset\",\n onChange,\n width = 260,\n noResultText,\n emptyFilterText,\n children,\n icon = <FilterIcon />,\n position = \"bottom-end\",\n disabled = false,\n className,\n}) => {\n const [open, setOpen] = useState(false);\n const [menu, setMenu] = useState<number | string>(\"index\");\n const [isLeft, setIsLeft] = useState(true);\n const [height, setHeight] = useState(0);\n const [enteredMenu, setEnteredMenu] = useState<number | string>(\"index\");\n const [filter, setFilter] = useState<SelectedType>(() => selected);\n\n useEffect(() => {\n if (Object.keys(selected).length > 0 || Object.keys(filter).length > 0) {\n setFilter(selected);\n }\n }, [selected, filter]);\n\n const handleOpen = useCallback(() => {\n setOpen(true);\n }, []);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n setMenu(\"index\");\n setHeight(0);\n }, []);\n\n const handleHeight = useCallback((element) => {\n setHeight(element?.offsetHeight ?? 0);\n }, []);\n\n const handleItemClick = useCallback((value) => {\n setMenu(value);\n setIsLeft(true);\n }, []);\n\n const setIndex = useCallback(() => {\n setMenu(\"index\");\n setIsLeft(false);\n }, []);\n\n const handleChange = useCallback(\n (selectedArray) => {\n let newFilters = {};\n if (selectedArray.length) {\n newFilters = {\n ...filter,\n [menu]: selectedArray,\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[menu];\n }\n setFilter(newFilters);\n onChange(newFilters);\n },\n [filter, menu, onChange]\n );\n\n const handleClearAll = useCallback(\n (event) => {\n event.stopPropagation();\n setFilter({});\n onChange({});\n },\n [onChange]\n );\n\n const handleReset = useCallback(() => {\n const newFilters = { ...filter };\n delete newFilters[menu];\n setFilter(newFilters);\n onChange(newFilters);\n }, [filter, menu, onChange]);\n\n const handleInputSave = useCallback(\n (id: number | string, value: string) => {\n let newFilters = {};\n if (value.trim()) {\n newFilters = {\n ...filter,\n [id]: [value],\n };\n } else {\n newFilters = { ...filter };\n delete newFilters[id];\n }\n setFilter(newFilters);\n onChange(newFilters);\n setIndex();\n },\n [filter, onChange, setIndex]\n );\n\n const handleInputClear = useCallback(\n (id: number | string) => {\n const newFilters = { ...filter };\n delete newFilters[id];\n setFilter(newFilters);\n onChange(newFilters);\n setIndex();\n },\n [filter, onChange, setIndex]\n );\n\n const count = useMemo(() => {\n let c = 0;\n\n Object.values(filter).forEach((entry) => {\n if (typeof entry === \"string\") {\n return (c += 1);\n }\n\n return (c += entry.length);\n });\n return c;\n }, [filter]);\n\n const shouldRenderSubmenus = useMemo(() => {\n if (data.length === 0) {\n return false;\n }\n\n for (const entry of data) {\n if (entry.type === \"input\" || entry.submenu?.length > 1) {\n return true;\n }\n }\n\n return false;\n }, [data]);\n\n return (\n <StyledMenu\n open={open}\n onOpen={handleOpen}\n onClose={handleClose}\n position={position}\n target={\n <CounterButton\n active={open}\n label={label}\n icon={icon}\n counter={count}\n tooltipText={clearAllText}\n onClearAll={handleClearAll}\n disabled={disabled}\n labelClassName={className}\n />\n }\n >\n <ResizeTransition in>\n <div style={{ height, width }}>\n <SlideLeftRightTransition\n in={menu === \"index\"}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(\"index\")}\n >\n <MoveFocusInside>\n <StartMenu\n data={data}\n selected={filter}\n style={{ width }}\n onHeightChange={setHeight}\n onItemClick={handleItemClick}\n shouldRenderSubmenus={shouldRenderSubmenus}\n emptyFilterText={emptyFilterText}\n >\n {children}\n </StartMenu>\n </MoveFocusInside>\n </SlideLeftRightTransition>\n {shouldRenderSubmenus &&\n data.map(\n (\n {\n id,\n title,\n submenu,\n searchPlaceholder,\n disableInternalSort,\n isSingleSelect,\n defaultValue,\n type: submenuType = \"select\",\n inputPlaceholder,\n saveLabel = \"Save\",\n clearLabel,\n ...rest\n }: DataType,\n index: number\n ) => (\n <SlideLeftRightTransition\n key={`filter-submenu-${index}`}\n in={menu === id}\n direction={isLeft ? \"left\" : \"right\"}\n onEnter={handleHeight}\n onEntered={() => setEnteredMenu(id)}\n >\n <Submenu\n title={title}\n onBack={setIndex}\n onHeightChange={setHeight}\n style={{ width }}\n indexPage={menu === \"index\"}\n >\n <MoveFocusInside disabled={enteredMenu !== id}>\n {submenuType === \"input\" ? (\n <InputSubmenu\n value={filter[id]?.[0] ?? \"\"}\n placeholder={inputPlaceholder}\n saveLabel={saveLabel}\n clearLabel={clearLabel}\n onSave={(value) => handleInputSave(id, value)}\n onClear={() => handleInputClear(id)}\n />\n ) : (\n <>\n <Select\n options={submenu}\n selected={filter[id]}\n onChange={handleChange}\n type={isSingleSelect ? \"single\" : \"multiple\"}\n autoHeightMax={255}\n placeholder={searchPlaceholder}\n noResultText={noResultText}\n keepSameOptionsOrder={Boolean(submenu.length <= 7)}\n disableSearch={Boolean(submenu.length <= 7)}\n disabledInternalSort={disableInternalSort}\n defaultValue={defaultValue}\n {...rest}\n />\n {filter[id]?.length ? (\n <StyledMenuFooter>\n <Button\n variant=\"text colored\"\n size=\"small\"\n onClick={handleReset}\n >\n {resetLabel}\n </Button>\n </StyledMenuFooter>\n ) : null}\n </>\n )}\n </MoveFocusInside>\n </Submenu>\n </SlideLeftRightTransition>\n )\n )}\n </div>\n </ResizeTransition>\n </StyledMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.InputSubmenu = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _Styles = require("./Styles");
9
+ var _Button = require("../Button");
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
11
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
12
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
14
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
16
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
17
+ var InputSubmenu = exports.InputSubmenu = function InputSubmenu(_ref) {
18
+ var _ref$value = _ref.value,
19
+ value = _ref$value === void 0 ? "" : _ref$value,
20
+ placeholder = _ref.placeholder,
21
+ saveLabel = _ref.saveLabel,
22
+ _ref$clearLabel = _ref.clearLabel,
23
+ clearLabel = _ref$clearLabel === void 0 ? "Clear" : _ref$clearLabel,
24
+ onSave = _ref.onSave,
25
+ onClear = _ref.onClear;
26
+ var _useState = (0, _react.useState)(value),
27
+ _useState2 = _slicedToArray(_useState, 2),
28
+ inputValue = _useState2[0],
29
+ setInputValue = _useState2[1];
30
+ (0, _react.useEffect)(function () {
31
+ setInputValue(value);
32
+ }, [value]);
33
+ var handleChange = (0, _react.useCallback)(function (event) {
34
+ setInputValue(event.target.value);
35
+ }, []);
36
+ var handleSave = (0, _react.useCallback)(function () {
37
+ onSave(inputValue);
38
+ }, [inputValue, onSave]);
39
+ var handleKeyDown = (0, _react.useCallback)(function (event) {
40
+ if (event.key === "Enter") {
41
+ onSave(inputValue);
42
+ }
43
+ }, [inputValue, onSave]);
44
+ return /*#__PURE__*/_react.default.createElement(_Styles.StyledInputSubmenu, null, /*#__PURE__*/_react.default.createElement(_Styles.StyledInput, {
45
+ value: inputValue,
46
+ onChange: handleChange,
47
+ onKeyDown: handleKeyDown,
48
+ placeholder: placeholder
49
+ }), /*#__PURE__*/_react.default.createElement(_Styles.StyledInputSubmenuFooter, null, /*#__PURE__*/_react.default.createElement(_Button.Button, {
50
+ variant: "primary",
51
+ size: "small",
52
+ onClick: handleSave
53
+ }, saveLabel), /*#__PURE__*/_react.default.createElement(_Button.Button, {
54
+ variant: "text gray",
55
+ size: "small",
56
+ onClick: onClear
57
+ }, clearLabel)));
58
+ };
59
+ //# sourceMappingURL=InputSubmenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputSubmenu.js","names":["_react","_interopRequireWildcard","require","_Styles","_Button","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","InputSubmenu","exports","_ref","_ref$value","placeholder","saveLabel","_ref$clearLabel","clearLabel","onSave","onClear","_useState","useState","_useState2","inputValue","setInputValue","useEffect","handleChange","useCallback","event","target","handleSave","handleKeyDown","key","createElement","StyledInputSubmenu","StyledInput","onChange","onKeyDown","StyledInputSubmenuFooter","Button","variant","size","onClick"],"sources":["../../../../src/components/Filter/InputSubmenu.tsx"],"sourcesContent":["import React, { FC, useState, useCallback, useEffect } from \"react\";\n\nimport {\n StyledInputSubmenu,\n StyledInputSubmenuFooter,\n StyledInput,\n} from \"./Styles\";\nimport { Button } from \"../Button\";\n\ninterface InputSubmenuProps {\n value?: string;\n placeholder?: string;\n saveLabel: string;\n clearLabel?: string;\n onSave: (value: string) => void;\n onClear: () => void;\n}\n\nexport const InputSubmenu: FC<InputSubmenuProps> = ({\n value = \"\",\n placeholder,\n saveLabel,\n clearLabel = \"Clear\",\n onSave,\n onClear,\n}) => {\n const [inputValue, setInputValue] = useState(value);\n\n useEffect(() => {\n setInputValue(value);\n }, [value]);\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setInputValue(event.target.value);\n },\n []\n );\n\n const handleSave = useCallback(() => {\n onSave(inputValue);\n }, [inputValue, onSave]);\n\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === \"Enter\") {\n onSave(inputValue);\n }\n },\n [inputValue, onSave]\n );\n\n return (\n <StyledInputSubmenu>\n <StyledInput\n value={inputValue}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n />\n <StyledInputSubmenuFooter>\n <Button variant=\"primary\" size=\"small\" onClick={handleSave}>\n {saveLabel}\n </Button>\n <Button variant=\"text gray\" size=\"small\" onClick={onClear}>\n {clearLabel}\n </Button>\n </StyledInputSubmenuFooter>\n </StyledInputSubmenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -33,7 +33,8 @@ var StartMenu = exports.StartMenu = function StartMenu(_ref) {
33
33
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledStartMenuList, null, shouldRenderSubmenus ? data.map(function (_ref2, index) {
34
34
  var id = _ref2.id,
35
35
  title = _ref2.title,
36
- submenu = _ref2.submenu;
36
+ submenu = _ref2.submenu,
37
+ type = _ref2.type;
37
38
  var count = 0;
38
39
  // Popricati o ovome kada je selected[id] vrednost 0.
39
40
  if (typeof selected[id] === "string") {
@@ -42,7 +43,7 @@ var StartMenu = exports.StartMenu = function StartMenu(_ref) {
42
43
  var _selected$id;
43
44
  count = (_selected$id = selected[id]) === null || _selected$id === void 0 ? void 0 : _selected$id.length;
44
45
  }
45
- if ((submenu === null || submenu === void 0 ? void 0 : submenu.length) > 1) {
46
+ if (type === "input" || (submenu === null || submenu === void 0 ? void 0 : submenu.length) > 1) {
46
47
  return /*#__PURE__*/_react.default.createElement(_Styles.StyledStartMenuListItem, {
47
48
  key: "filter-list-item-".concat(index),
48
49
  onClick: function onClick() {
@@ -1 +1 @@
1
- {"version":3,"file":"StartMenu.js","names":["_react","_interopRequireWildcard","require","_Styles","_utils","_Badge","_Icons","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","StartMenu","exports","_ref","data","selected","onItemClick","style","onHeightChange","shouldRenderSubmenus","emptyFilterText","children","ref","useRef","dimensions","useResizeObserver","height","useEffect","createElement","StyledStartMenuList","map","_ref2","index","id","title","submenu","count","_selected$id","length","StyledStartMenuListItem","key","concat","onClick","StyledStartMenuTitle","Badge","dimension","value","isStandalone","ArrowRightIcon","StyledStartMenuNoResults"],"sources":["../../../../src/components/Filter/StartMenu.tsx"],"sourcesContent":["import React, { FC, useRef, useEffect, HTMLAttributes } from \"react\";\n\nimport { DataType, SelectedType } from \"./Filter\";\nimport {\n StyledStartMenuTitle,\n StyledStartMenuListItem,\n StyledStartMenuList,\n StyledStartMenuNoResults,\n} from \"./Styles\";\nimport { useResizeObserver } from \"../../utils\";\nimport { Badge } from \"../Badge\";\nimport { ArrowRightIcon } from \"../Icons\";\n\nexport interface StartMenuProps {\n data: Array<DataType>;\n selected: SelectedType;\n onItemClick: (id: number | string) => void;\n onHeightChange: (height: number) => void;\n shouldRenderSubmenus: boolean;\n emptyFilterText?: string;\n}\n\nexport const StartMenu: FC<StartMenuProps & HTMLAttributes<HTMLDivElement>> = ({\n data,\n selected,\n onItemClick,\n style,\n onHeightChange,\n shouldRenderSubmenus,\n emptyFilterText,\n children,\n}) => {\n const ref = useRef(null);\n const dimensions = useResizeObserver(ref);\n const height = dimensions?.height;\n\n useEffect(() => {\n if (height && height > 0) {\n onHeightChange(height);\n }\n }, [height, onHeightChange]);\n\n return (\n <div style={style} ref={ref}>\n <StyledStartMenuList>\n {shouldRenderSubmenus ? (\n data.map(({ id, title, submenu }, index: number) => {\n let count = 0;\n // Popricati o ovome kada je selected[id] vrednost 0.\n if (typeof selected[id] === \"string\") {\n count += 1;\n } else {\n count = selected[id]?.length;\n }\n\n if (submenu?.length > 1) {\n return (\n <StyledStartMenuListItem\n key={`filter-list-item-${index}`}\n onClick={() => onItemClick(id)}\n >\n <StyledStartMenuTitle>{title}</StyledStartMenuTitle>\n {count > 0 ? (\n <Badge dimension={16} value={count} isStandalone={true} />\n ) : null}\n <ArrowRightIcon />\n </StyledStartMenuListItem>\n );\n }\n })\n ) : emptyFilterText ? (\n <StyledStartMenuNoResults>{emptyFilterText}</StyledStartMenuNoResults>\n ) : null}\n {children}\n </StyledStartMenuList>\n </div>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StartMenu.js","names":["_react","_interopRequireWildcard","require","_Styles","_utils","_Badge","_Icons","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","StartMenu","exports","_ref","data","selected","onItemClick","style","onHeightChange","shouldRenderSubmenus","emptyFilterText","children","ref","useRef","dimensions","useResizeObserver","height","useEffect","createElement","StyledStartMenuList","map","_ref2","index","id","title","submenu","type","count","_selected$id","length","StyledStartMenuListItem","key","concat","onClick","StyledStartMenuTitle","Badge","dimension","value","isStandalone","ArrowRightIcon","StyledStartMenuNoResults"],"sources":["../../../../src/components/Filter/StartMenu.tsx"],"sourcesContent":["import React, { FC, useRef, useEffect, HTMLAttributes } from \"react\";\n\nimport { DataType, SelectedType } from \"./Filter\";\nimport {\n StyledStartMenuTitle,\n StyledStartMenuListItem,\n StyledStartMenuList,\n StyledStartMenuNoResults,\n} from \"./Styles\";\nimport { useResizeObserver } from \"../../utils\";\nimport { Badge } from \"../Badge\";\nimport { ArrowRightIcon } from \"../Icons\";\n\nexport interface StartMenuProps {\n data: Array<DataType>;\n selected: SelectedType;\n onItemClick: (id: number | string) => void;\n onHeightChange: (height: number) => void;\n shouldRenderSubmenus: boolean;\n emptyFilterText?: string;\n}\n\nexport const StartMenu: FC<StartMenuProps & HTMLAttributes<HTMLDivElement>> = ({\n data,\n selected,\n onItemClick,\n style,\n onHeightChange,\n shouldRenderSubmenus,\n emptyFilterText,\n children,\n}) => {\n const ref = useRef(null);\n const dimensions = useResizeObserver(ref);\n const height = dimensions?.height;\n\n useEffect(() => {\n if (height && height > 0) {\n onHeightChange(height);\n }\n }, [height, onHeightChange]);\n\n return (\n <div style={style} ref={ref}>\n <StyledStartMenuList>\n {shouldRenderSubmenus ? (\n data.map(({ id, title, submenu, type }, index: number) => {\n let count = 0;\n // Popricati o ovome kada je selected[id] vrednost 0.\n if (typeof selected[id] === \"string\") {\n count += 1;\n } else {\n count = selected[id]?.length;\n }\n\n if (type === \"input\" || submenu?.length > 1) {\n return (\n <StyledStartMenuListItem\n key={`filter-list-item-${index}`}\n onClick={() => onItemClick(id)}\n >\n <StyledStartMenuTitle>{title}</StyledStartMenuTitle>\n {count > 0 ? (\n <Badge dimension={16} value={count} isStandalone={true} />\n ) : null}\n <ArrowRightIcon />\n </StyledStartMenuListItem>\n );\n }\n })\n ) : emptyFilterText ? (\n <StyledStartMenuNoResults>{emptyFilterText}</StyledStartMenuNoResults>\n ) : null}\n {children}\n </StyledStartMenuList>\n </div>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledStartMenuTitle = exports.StyledStartMenuNoResults = exports.StyledStartMenuListItem = exports.StyledStartMenuList = exports.StyledStartMenuDot = exports.StyledMenuFooter = exports.StyledMenu = void 0;
6
+ exports.StyledStartMenuTitle = exports.StyledStartMenuNoResults = exports.StyledStartMenuListItem = exports.StyledStartMenuList = exports.StyledStartMenuDot = exports.StyledMenuFooter = exports.StyledMenu = exports.StyledInputSubmenuFooter = exports.StyledInputSubmenu = exports.StyledInput = void 0;
7
7
  var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _Input = require("../Input");
8
9
  var _List = require("../List");
9
10
  var _Menu = require("../Menu");
10
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -54,6 +55,29 @@ var StyledStartMenuDot = exports.StyledStartMenuDot = _styledComponents.default.
54
55
  displayName: "Styles__StyledStartMenuDot",
55
56
  componentId: "sc-lxuoiz-6"
56
57
  })(["border-radius:50%;background-color:var(--color-primary);color:var(--page-paper-main);line-height:15px;width:15px;font-weight:bold;font-size:10px;text-align:center;margin-left:4px;"]);
58
+ var StyledInputSubmenu = exports.StyledInputSubmenu = _styledComponents.default.div.withConfig({
59
+ displayName: "Styles__StyledInputSubmenu",
60
+ componentId: "sc-lxuoiz-7"
61
+ })(["", ""], {
62
+ "paddingLeft": "0.75rem",
63
+ "paddingRight": "0.75rem",
64
+ "paddingBottom": "0.5rem",
65
+ "paddingTop": "0.75rem"
66
+ });
67
+ var StyledInputSubmenuFooter = exports.StyledInputSubmenuFooter = (0, _styledComponents.default)(_Menu.MenuFooter).withConfig({
68
+ displayName: "Styles__StyledInputSubmenuFooter",
69
+ componentId: "sc-lxuoiz-8"
70
+ })(["", " height:auto;"], {
71
+ "justifyContent": "space-between",
72
+ "paddingTop": "0.75rem"
73
+ });
74
+ var StyledInput = exports.StyledInput = (0, _styledComponents.default)(_Input.Input).withConfig({
75
+ displayName: "Styles__StyledInput",
76
+ componentId: "sc-lxuoiz-9"
77
+ })(["", ""], {
78
+ "marginBottom": "1.25rem",
79
+ "width": "100%"
80
+ });
57
81
  StyledMenu.displayName = "StyledMenu";
58
82
  StyledMenuFooter.displayName = "StyledMenuFooter";
59
83
  StyledStartMenuList.displayName = "StyledStartMenuList";
@@ -61,4 +85,7 @@ StyledStartMenuListItem.displayName = "StyledStartMenuListItem";
61
85
  StyledStartMenuTitle.displayName = "StyledStartMenuTitle";
62
86
  StyledStartMenuDot.displayName = "StyledStartMenuDot";
63
87
  StyledStartMenuNoResults.displayName = "StyledStartMenuNoResults";
88
+ StyledInputSubmenu.displayName = "StyledInputSubmenu";
89
+ StyledInputSubmenuFooter.displayName = "StyledInputSubmenuFooter";
90
+ StyledInput.displayName = "StyledInput";
64
91
  //# sourceMappingURL=Styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireDefault","require","_List","_Menu","e","__esModule","default","StyledMenu","exports","styled","Menu","withConfig","displayName","componentId","StyledMenuFooter","MenuFooter","StyledStartMenuList","List","StyledStartMenuListItem","ListItem","StyledStartMenuTitle","div","StyledStartMenuNoResults","StyledStartMenuDot","span"],"sources":["../../../../src/components/Filter/Styles.ts"],"sourcesContent":["import styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { ListItem, ListProps, List, ListItemProps } from \"../List\";\nimport { Menu, IMenu, MenuFooter, IMenuFooter } from \"../Menu\";\n\nexport const StyledMenu = styled(Menu)<IMenu>`\n ${tw`tw-relative`}\n ${tw`tw-overflow-hidden`}\n`;\n\nexport const StyledMenuFooter = styled(MenuFooter)<IMenuFooter>`\n ${tw`tw-justify-center`}\n`;\n\nexport const StyledStartMenuList = styled(List)<ListProps>`\n ${tw`tw-py-2`}\n`;\n\nexport const StyledStartMenuListItem = styled(ListItem)<ListItemProps>`\n ${tw`tw-pr-3`}\n`;\n\nexport const StyledStartMenuTitle = styled.div`\n ${tw`tw-flex-1`}\n`;\n\nexport const StyledStartMenuNoResults = styled.div`\n ${tw`tw-py-0.5`}\n ${tw`tw-text-center`}\n`;\n\nexport const StyledStartMenuDot = styled.span`\n border-radius: 50%;\n background-color: var(--color-primary);\n color: var(--page-paper-main);\n line-height: 15px;\n width: 15px;\n font-weight: bold;\n font-size: 10px;\n text-align: center;\n margin-left: 4px;\n`;\n\nStyledMenu.displayName = \"StyledMenu\";\nStyledMenuFooter.displayName = \"StyledMenuFooter\";\nStyledStartMenuList.displayName = \"StyledStartMenuList\";\nStyledStartMenuListItem.displayName = \"StyledStartMenuListItem\";\nStyledStartMenuTitle.displayName = \"StyledStartMenuTitle\";\nStyledStartMenuDot.displayName = \"StyledStartMenuDot\";\nStyledStartMenuNoResults.displayName = \"StyledStartMenuNoResults\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAA+D,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,IAAMG,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAAE,yBAAM,EAACC,UAAI,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,kBAChC;EAAA;AAAY,CAAC,EACb;EAAA;AAAmB,CAAC,CACzB;AAEM,IAAMC,gBAAgB,GAAAN,OAAA,CAAAM,gBAAA,GAAG,IAAAL,yBAAM,EAACM,gBAAU,CAAC,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC5C;EAAA;AAAkB,CAAC,CACxB;AAEM,IAAMG,mBAAmB,GAAAR,OAAA,CAAAQ,mBAAA,GAAG,IAAAP,yBAAM,EAACQ,UAAI,CAAC,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACzC;EAAA;EAAA;AAAQ,CAAC,CACd;AAEM,IAAMK,uBAAuB,GAAAV,OAAA,CAAAU,uBAAA,GAAG,IAAAT,yBAAM,EAACU,cAAQ,CAAC,CAAAR,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACjD;EAAA;AAAQ,CAAC,CACd;AAEM,IAAMO,oBAAoB,GAAAZ,OAAA,CAAAY,oBAAA,GAAGX,yBAAM,CAACY,GAAG,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACxC;EAAA;AAAU,CAAC,CAChB;AAEM,IAAMS,wBAAwB,GAAAd,OAAA,CAAAc,wBAAA,GAAGb,yBAAM,CAACY,GAAG,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,kBAC5C;EAAA;EAAA;AAAU,CAAC,EACX;EAAA;AAAe,CAAC,CACrB;AAEM,IAAMU,kBAAkB,GAAAf,OAAA,CAAAe,kBAAA,GAAGd,yBAAM,CAACe,IAAI,CAAAb,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,2LAU5C;AAEDN,UAAU,CAACK,WAAW,GAAG,YAAY;AACrCE,gBAAgB,CAACF,WAAW,GAAG,kBAAkB;AACjDI,mBAAmB,CAACJ,WAAW,GAAG,qBAAqB;AACvDM,uBAAuB,CAACN,WAAW,GAAG,yBAAyB;AAC/DQ,oBAAoB,CAACR,WAAW,GAAG,sBAAsB;AACzDW,kBAAkB,CAACX,WAAW,GAAG,oBAAoB;AACrDU,wBAAwB,CAACV,WAAW,GAAG,0BAA0B","ignoreList":[]}
1
+ {"version":3,"file":"Styles.js","names":["_styledComponents","_interopRequireDefault","require","_Input","_List","_Menu","e","__esModule","default","StyledMenu","exports","styled","Menu","withConfig","displayName","componentId","StyledMenuFooter","MenuFooter","StyledStartMenuList","List","StyledStartMenuListItem","ListItem","StyledStartMenuTitle","div","StyledStartMenuNoResults","StyledStartMenuDot","span","StyledInputSubmenu","StyledInputSubmenuFooter","StyledInput","Input"],"sources":["../../../../src/components/Filter/Styles.ts"],"sourcesContent":["import styled from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { Input } from \"../Input\";\nimport { ListItem, ListProps, List, ListItemProps } from \"../List\";\nimport { Menu, IMenu, MenuFooter, IMenuFooter } from \"../Menu\";\n\nexport const StyledMenu = styled(Menu)<IMenu>`\n ${tw`tw-relative`}\n ${tw`tw-overflow-hidden`}\n`;\n\nexport const StyledMenuFooter = styled(MenuFooter)<IMenuFooter>`\n ${tw`tw-justify-center`}\n`;\n\nexport const StyledStartMenuList = styled(List)<ListProps>`\n ${tw`tw-py-2`}\n`;\n\nexport const StyledStartMenuListItem = styled(ListItem)<ListItemProps>`\n ${tw`tw-pr-3`}\n`;\n\nexport const StyledStartMenuTitle = styled.div`\n ${tw`tw-flex-1`}\n`;\n\nexport const StyledStartMenuNoResults = styled.div`\n ${tw`tw-py-0.5`}\n ${tw`tw-text-center`}\n`;\n\nexport const StyledStartMenuDot = styled.span`\n border-radius: 50%;\n background-color: var(--color-primary);\n color: var(--page-paper-main);\n line-height: 15px;\n width: 15px;\n font-weight: bold;\n font-size: 10px;\n text-align: center;\n margin-left: 4px;\n`;\n\nexport const StyledInputSubmenu = styled.div`\n ${tw`tw-px-3 tw-pt-3 tw-pb-2`}\n`;\n\nexport const StyledInputSubmenuFooter = styled(MenuFooter)<IMenuFooter>`\n ${tw`tw-justify-between tw-pt-3`}\n height: auto;\n`;\n\nexport const StyledInput = styled(Input)`\n ${tw`tw-w-full tw-mb-5`}\n`;\n\nStyledMenu.displayName = \"StyledMenu\";\nStyledMenuFooter.displayName = \"StyledMenuFooter\";\nStyledStartMenuList.displayName = \"StyledStartMenuList\";\nStyledStartMenuListItem.displayName = \"StyledStartMenuListItem\";\nStyledStartMenuTitle.displayName = \"StyledStartMenuTitle\";\nStyledStartMenuDot.displayName = \"StyledStartMenuDot\";\nStyledStartMenuNoResults.displayName = \"StyledStartMenuNoResults\";\nStyledInputSubmenu.displayName = \"StyledInputSubmenu\";\nStyledInputSubmenuFooter.displayName = \"StyledInputSubmenuFooter\";\nStyledInput.displayName = \"StyledInput\";\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAA+D,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,IAAMG,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAAE,yBAAM,EAACC,UAAI,CAAC,CAAAC,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,kBAChC;EAAA;AAAY,CAAC,EACb;EAAA;AAAmB,CAAC,CACzB;AAEM,IAAMC,gBAAgB,GAAAN,OAAA,CAAAM,gBAAA,GAAG,IAAAL,yBAAM,EAACM,gBAAU,CAAC,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAC5C;EAAA;AAAkB,CAAC,CACxB;AAEM,IAAMG,mBAAmB,GAAAR,OAAA,CAAAQ,mBAAA,GAAG,IAAAP,yBAAM,EAACQ,UAAI,CAAC,CAAAN,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACzC;EAAA;EAAA;AAAQ,CAAC,CACd;AAEM,IAAMK,uBAAuB,GAAAV,OAAA,CAAAU,uBAAA,GAAG,IAAAT,yBAAM,EAACU,cAAQ,CAAC,CAAAR,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACjD;EAAA;AAAQ,CAAC,CACd;AAEM,IAAMO,oBAAoB,GAAAZ,OAAA,CAAAY,oBAAA,GAAGX,yBAAM,CAACY,GAAG,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACxC;EAAA;AAAU,CAAC,CAChB;AAEM,IAAMS,wBAAwB,GAAAd,OAAA,CAAAc,wBAAA,GAAGb,yBAAM,CAACY,GAAG,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,kBAC5C;EAAA;EAAA;AAAU,CAAC,EACX;EAAA;AAAe,CAAC,CACrB;AAEM,IAAMU,kBAAkB,GAAAf,OAAA,CAAAe,kBAAA,GAAGd,yBAAM,CAACe,IAAI,CAAAb,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,2LAU5C;AAEM,IAAMY,kBAAkB,GAAAjB,OAAA,CAAAiB,kBAAA,GAAGhB,yBAAM,CAACY,GAAG,CAAAV,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aACtC;EAAA;EAAA;EAAA;EAAA;AAAwB,CAAC,CAC9B;AAEM,IAAMa,wBAAwB,GAAAlB,OAAA,CAAAkB,wBAAA,GAAG,IAAAjB,yBAAM,EAACM,gBAAU,CAAC,CAAAJ,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,0BACpD;EAAA;EAAA;AAA2B,CAAC,CAEjC;AAEM,IAAMc,WAAW,GAAAnB,OAAA,CAAAmB,WAAA,GAAG,IAAAlB,yBAAM,EAACmB,YAAK,CAAC,CAAAjB,UAAA;EAAAC,WAAA;EAAAC,WAAA;AAAA,aAClC;EAAA;EAAA;AAAkB,CAAC,CACxB;AAEDN,UAAU,CAACK,WAAW,GAAG,YAAY;AACrCE,gBAAgB,CAACF,WAAW,GAAG,kBAAkB;AACjDI,mBAAmB,CAACJ,WAAW,GAAG,qBAAqB;AACvDM,uBAAuB,CAACN,WAAW,GAAG,yBAAyB;AAC/DQ,oBAAoB,CAACR,WAAW,GAAG,sBAAsB;AACzDW,kBAAkB,CAACX,WAAW,GAAG,oBAAoB;AACrDU,wBAAwB,CAACV,WAAW,GAAG,0BAA0B;AACjEa,kBAAkB,CAACb,WAAW,GAAG,oBAAoB;AACrDc,wBAAwB,CAACd,WAAW,GAAG,0BAA0B;AACjEe,WAAW,CAACf,WAAW,GAAG,aAAa","ignoreList":[]}
@@ -11,6 +11,14 @@ export type DataType = {
11
11
  defaultValue?: string;
12
12
  emptyValue?: string;
13
13
  emptyAction?: (e: string | undefined) => void;
14
+ /** Type of submenu - 'select' renders options list, 'input' renders an input field with save button */
15
+ type?: "select" | "input";
16
+ /** Placeholder text for input field (only used when type='input') */
17
+ inputPlaceholder?: string;
18
+ /** Label for the save button (only used when type='input') */
19
+ saveLabel?: string;
20
+ /** Label for the clear button (only used when type='input') */
21
+ clearLabel?: string;
14
22
  };
15
23
  export type SelectedType = {
16
24
  [key: number | string]: Array<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../../src/components/Filter/Filter.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EACF,YAAY,EAKZ,iBAAiB,EAClB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAQ3C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAU,MAAM,WAAW,CAAC;AAGxE,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,KAAK,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,CAAC;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,mCAAmC;IACnC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,CA2NrD,CAAC"}
1
+ {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../../src/components/Filter/Filter.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EACF,YAAY,EAKZ,iBAAiB,EAClB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAS3C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAU,MAAM,WAAW,CAAC;AAGxE,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,KAAK,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,CAAC;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IAC9C,uGAAuG;IACvG,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,gCAAgC;IAChC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,mCAAmC;IACnC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,CA0QrD,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
- const _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue"];
3
+ const _excluded = ["id", "title", "submenu", "searchPlaceholder", "disableInternalSort", "isSingleSelect", "defaultValue", "type", "inputPlaceholder", "saveLabel", "clearLabel"];
4
4
  import React, { useCallback, useEffect, useMemo, useState } from "react";
5
5
  import { MoveFocusInside } from "react-focus-lock";
6
+ import { InputSubmenu } from "./InputSubmenu";
6
7
  import { StartMenu } from "./StartMenu";
7
8
  import { StyledMenu, StyledMenuFooter } from "./Styles";
8
9
  import { Submenu } from "./Submenu";
@@ -83,6 +84,27 @@ export const Filter = _ref => {
83
84
  setFilter(newFilters);
84
85
  onChange(newFilters);
85
86
  }, [filter, menu, onChange]);
87
+ const handleInputSave = useCallback((id, value) => {
88
+ let newFilters = {};
89
+ if (value.trim()) {
90
+ newFilters = _extends({}, filter, {
91
+ [id]: [value]
92
+ });
93
+ } else {
94
+ newFilters = _extends({}, filter);
95
+ delete newFilters[id];
96
+ }
97
+ setFilter(newFilters);
98
+ onChange(newFilters);
99
+ setIndex();
100
+ }, [filter, onChange, setIndex]);
101
+ const handleInputClear = useCallback(id => {
102
+ const newFilters = _extends({}, filter);
103
+ delete newFilters[id];
104
+ setFilter(newFilters);
105
+ onChange(newFilters);
106
+ setIndex();
107
+ }, [filter, onChange, setIndex]);
86
108
  const count = useMemo(() => {
87
109
  let c = 0;
88
110
  Object.values(filter).forEach(entry => {
@@ -99,7 +121,7 @@ export const Filter = _ref => {
99
121
  }
100
122
  for (const entry of data) {
101
123
  var _entry$submenu;
102
- if (((_entry$submenu = entry.submenu) == null ? void 0 : _entry$submenu.length) > 1) {
124
+ if (entry.type === "input" || ((_entry$submenu = entry.submenu) == null ? void 0 : _entry$submenu.length) > 1) {
103
125
  return true;
104
126
  }
105
127
  }
@@ -143,7 +165,7 @@ export const Filter = _ref => {
143
165
  shouldRenderSubmenus: shouldRenderSubmenus,
144
166
  emptyFilterText: emptyFilterText
145
167
  }, children))), shouldRenderSubmenus && data.map((_ref2, index) => {
146
- var _filter$id;
168
+ var _filter$id$, _filter$id, _filter$id2;
147
169
  let {
148
170
  id,
149
171
  title,
@@ -151,7 +173,11 @@ export const Filter = _ref => {
151
173
  searchPlaceholder,
152
174
  disableInternalSort,
153
175
  isSingleSelect,
154
- defaultValue
176
+ defaultValue,
177
+ type: submenuType = "select",
178
+ inputPlaceholder,
179
+ saveLabel = "Save",
180
+ clearLabel
155
181
  } = _ref2,
156
182
  rest = _objectWithoutPropertiesLoose(_ref2, _excluded);
157
183
  return /*#__PURE__*/React.createElement(SlideLeftRightTransition, {
@@ -170,7 +196,14 @@ export const Filter = _ref => {
170
196
  indexPage: menu === "index"
171
197
  }, /*#__PURE__*/React.createElement(MoveFocusInside, {
172
198
  disabled: enteredMenu !== id
173
- }, /*#__PURE__*/React.createElement(Select, _extends({
199
+ }, submenuType === "input" ? /*#__PURE__*/React.createElement(InputSubmenu, {
200
+ value: (_filter$id$ = (_filter$id = filter[id]) == null ? void 0 : _filter$id[0]) != null ? _filter$id$ : "",
201
+ placeholder: inputPlaceholder,
202
+ saveLabel: saveLabel,
203
+ clearLabel: clearLabel,
204
+ onSave: value => handleInputSave(id, value),
205
+ onClear: () => handleInputClear(id)
206
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Select, _extends({
174
207
  options: submenu,
175
208
  selected: filter[id],
176
209
  onChange: handleChange,
@@ -182,11 +215,11 @@ export const Filter = _ref => {
182
215
  disableSearch: Boolean(submenu.length <= 7),
183
216
  disabledInternalSort: disableInternalSort,
184
217
  defaultValue: defaultValue
185
- }, rest)), (_filter$id = filter[id]) != null && _filter$id.length ? /*#__PURE__*/React.createElement(StyledMenuFooter, null, /*#__PURE__*/React.createElement(Button, {
218
+ }, rest)), (_filter$id2 = filter[id]) != null && _filter$id2.length ? /*#__PURE__*/React.createElement(StyledMenuFooter, null, /*#__PURE__*/React.createElement(Button, {
186
219
  variant: "text colored",
187
220
  size: "small",
188
221
  onClick: handleReset
189
- }, resetLabel)) : null)));
222
+ }, resetLabel)) : null))));
190
223
  }))));
191
224
  };
192
225
  //# sourceMappingURL=Filter.js.map