@activecollab/components 1.0.324 → 1.0.326

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.
Files changed (63) hide show
  1. package/dist/cjs/components/ComboBox/ComboBox.js +3 -2
  2. package/dist/cjs/components/ComboBox/ComboBox.js.map +1 -1
  3. package/dist/cjs/components/CounterButton/CounterButton.js +5 -1
  4. package/dist/cjs/components/CounterButton/CounterButton.js.map +1 -1
  5. package/dist/cjs/components/CounterButton/Styles.js +4 -2
  6. package/dist/cjs/components/CounterButton/Styles.js.map +1 -1
  7. package/dist/cjs/components/Filter/Filter.js +11 -4
  8. package/dist/cjs/components/Filter/Filter.js.map +1 -1
  9. package/dist/cjs/components/Icons/collection/Move.js +48 -0
  10. package/dist/cjs/components/Icons/collection/Move.js.map +1 -0
  11. package/dist/cjs/components/Icons/collection/index.js +7 -0
  12. package/dist/cjs/components/Icons/collection/index.js.map +1 -1
  13. package/dist/cjs/components/Input/Input.js +4 -2
  14. package/dist/cjs/components/Input/Input.js.map +1 -1
  15. package/dist/cjs/components/Toolbar/Toolbar.js +34 -0
  16. package/dist/cjs/components/Toolbar/Toolbar.js.map +1 -0
  17. package/dist/cjs/components/Toolbar/Toolbar.styles.js +14 -0
  18. package/dist/cjs/components/Toolbar/Toolbar.styles.js.map +1 -0
  19. package/dist/cjs/components/Toolbar/index.js +17 -0
  20. package/dist/cjs/components/Toolbar/index.js.map +1 -0
  21. package/dist/esm/components/ComboBox/ComboBox.d.ts.map +1 -1
  22. package/dist/esm/components/ComboBox/ComboBox.js +3 -2
  23. package/dist/esm/components/ComboBox/ComboBox.js.map +1 -1
  24. package/dist/esm/components/CounterButton/CounterButton.d.ts +2 -0
  25. package/dist/esm/components/CounterButton/CounterButton.d.ts.map +1 -1
  26. package/dist/esm/components/CounterButton/CounterButton.js +5 -1
  27. package/dist/esm/components/CounterButton/CounterButton.js.map +1 -1
  28. package/dist/esm/components/CounterButton/Styles.d.ts.map +1 -1
  29. package/dist/esm/components/CounterButton/Styles.js +4 -2
  30. package/dist/esm/components/CounterButton/Styles.js.map +1 -1
  31. package/dist/esm/components/Filter/Filter.d.ts +8 -1
  32. package/dist/esm/components/Filter/Filter.d.ts.map +1 -1
  33. package/dist/esm/components/Filter/Filter.js +11 -4
  34. package/dist/esm/components/Filter/Filter.js.map +1 -1
  35. package/dist/esm/components/Icons/collection/Move.d.ts +23 -0
  36. package/dist/esm/components/Icons/collection/Move.d.ts.map +1 -0
  37. package/dist/esm/components/Icons/collection/Move.js +41 -0
  38. package/dist/esm/components/Icons/collection/Move.js.map +1 -0
  39. package/dist/esm/components/Icons/collection/index.d.ts +1 -0
  40. package/dist/esm/components/Icons/collection/index.d.ts.map +1 -1
  41. package/dist/esm/components/Icons/collection/index.js +1 -0
  42. package/dist/esm/components/Icons/collection/index.js.map +1 -1
  43. package/dist/esm/components/Input/Input.d.ts +1 -0
  44. package/dist/esm/components/Input/Input.d.ts.map +1 -1
  45. package/dist/esm/components/Input/Input.js +4 -2
  46. package/dist/esm/components/Input/Input.js.map +1 -1
  47. package/dist/esm/components/Toolbar/Toolbar.d.ts +10 -0
  48. package/dist/esm/components/Toolbar/Toolbar.d.ts.map +1 -0
  49. package/dist/esm/components/Toolbar/Toolbar.js +27 -0
  50. package/dist/esm/components/Toolbar/Toolbar.js.map +1 -0
  51. package/dist/esm/components/Toolbar/Toolbar.styles.d.ts +3 -0
  52. package/dist/esm/components/Toolbar/Toolbar.styles.d.ts.map +1 -0
  53. package/dist/esm/components/Toolbar/Toolbar.styles.js +6 -0
  54. package/dist/esm/components/Toolbar/Toolbar.styles.js.map +1 -0
  55. package/dist/esm/components/Toolbar/index.d.ts +2 -0
  56. package/dist/esm/components/Toolbar/index.d.ts.map +1 -0
  57. package/dist/esm/components/Toolbar/index.js +2 -0
  58. package/dist/esm/components/Toolbar/index.js.map +1 -0
  59. package/dist/index.js +66 -11
  60. package/dist/index.js.map +1 -1
  61. package/dist/index.min.js +1 -1
  62. package/dist/index.min.js.map +1 -1
  63. package/package.json +1 -1
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Toolbar = Toolbar;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _helpers = require("../../helpers");
9
+ var _Toolbar = require("./Toolbar.styles");
10
+ var _classnames = _interopRequireDefault(require("classnames"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function Toolbar(_ref) {
13
+ var _ref$open = _ref.open,
14
+ open = _ref$open === void 0 ? false : _ref$open,
15
+ _ref$renderInPortal = _ref.renderInPortal,
16
+ renderInPortal = _ref$renderInPortal === void 0 ? true : _ref$renderInPortal,
17
+ children = _ref.children,
18
+ className = _ref.className;
19
+ // Abstract content with default values.
20
+ var TOOLBAR_CONTENT = /*#__PURE__*/_react.default.createElement(_Toolbar.StyledToolbar, {
21
+ className: (0, _classnames.default)("c-toolbar", className),
22
+ role: "toolbar",
23
+ tabIndex: -1,
24
+ "aria-orientation": "horizontal",
25
+ "aria-modal": "true"
26
+ }, children);
27
+
28
+ // If `renderInPortal` prop is present, render toolbar content in Portal.
29
+ // default: true
30
+ if (renderInPortal) open ? /*#__PURE__*/_react.default.createElement(_helpers.Portal, null, TOOLBAR_CONTENT) : null;
31
+ return open ? TOOLBAR_CONTENT : null;
32
+ }
33
+ Toolbar.displayName = "Toolbar";
34
+ //# sourceMappingURL=Toolbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolbar.js","names":["Toolbar","open","renderInPortal","children","className","TOOLBAR_CONTENT","classNames","displayName"],"sources":["../../../../src/components/Toolbar/Toolbar.tsx"],"sourcesContent":["import React, { HTMLAttributes, PropsWithoutRef } from \"react\";\nimport { Portal } from \"../../helpers\";\nimport { StyledToolbar } from \"./Toolbar.styles\";\nimport classNames from \"classnames\";\n\nexport interface ToolbarProps extends HTMLAttributes<HTMLDivElement> {\n open: boolean;\n renderInPortal?: boolean;\n}\n\nexport function Toolbar({\n open = false,\n renderInPortal = true,\n children,\n className,\n}: PropsWithoutRef<ToolbarProps>) {\n // Abstract content with default values.\n const TOOLBAR_CONTENT = (\n <StyledToolbar\n className={classNames(\"c-toolbar\", className)}\n role=\"toolbar\"\n tabIndex={-1}\n aria-orientation=\"horizontal\"\n aria-modal=\"true\"\n >\n {children}\n </StyledToolbar>\n );\n\n // If `renderInPortal` prop is present, render toolbar content in Portal.\n // default: true\n if (renderInPortal) open ? <Portal>{TOOLBAR_CONTENT}</Portal> : null;\n\n return open ? TOOLBAR_CONTENT : null;\n}\n\nToolbar.displayName = \"Toolbar\";\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AAAoC;AAO7B,SAASA,OAAO,OAKW;EAAA,qBAJhCC,IAAI;IAAJA,IAAI,0BAAG,KAAK;IAAA,2BACZC,cAAc;IAAdA,cAAc,oCAAG,IAAI;IACrBC,QAAQ,QAARA,QAAQ;IACRC,SAAS,QAATA,SAAS;EAET;EACA,IAAMC,eAAe,gBACnB,6BAAC,sBAAa;IACZ,SAAS,EAAE,IAAAC,mBAAU,EAAC,WAAW,EAAEF,SAAS,CAAE;IAC9C,IAAI,EAAC,SAAS;IACd,QAAQ,EAAE,CAAC,CAAE;IACb,oBAAiB,YAAY;IAC7B,cAAW;EAAM,GAEhBD,QAAQ,CAEZ;;EAED;EACA;EACA,IAAID,cAAc,EAAED,IAAI,gBAAG,6BAAC,eAAM,QAAEI,eAAe,CAAU,GAAG,IAAI;EAEpE,OAAOJ,IAAI,GAAGI,eAAe,GAAG,IAAI;AACtC;AAEAL,OAAO,CAACO,WAAW,GAAG,SAAS"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledToolbar = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ var StyledToolbar = _styledComponents.default.div.withConfig({
10
+ displayName: "Toolbarstyles__StyledToolbar",
11
+ componentId: "sc-n5xxbc-0"
12
+ })(["box-sizing:border-box;background-color:var(--page-paper-main);border-radius:8px;border:1px solid var(--color-theme-300);box-shadow:0px 64px 64px rgba(0,0,0,0.06),0px 32px 32px rgba(0,0,0,0.03),0px 16px 16px rgba(0,0,0,0.02),0px 4px 4px rgba(0,0,0,0.02),0px 2px 2px rgba(0,0,0,0.02);bottom:24px;display:flex;left:50%;padding:12px 16px;position:fixed;transform:translateX(-50%);width:100%;max-width:800px;"]);
13
+ exports.StyledToolbar = StyledToolbar;
14
+ //# sourceMappingURL=Toolbar.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toolbar.styles.js","names":["StyledToolbar","styled","div"],"sources":["../../../../src/components/Toolbar/Toolbar.styles.ts"],"sourcesContent":["import styled from \"styled-components\";\nimport type { ToolbarProps } from \"./Toolbar\";\n\nexport const StyledToolbar = styled.div<Partial<ToolbarProps>>`\n box-sizing: border-box;\n background-color: var(--page-paper-main);\n border-radius: 8px;\n border: 1px solid var(--color-theme-300);\n box-shadow: 0px 64px 64px rgba(0, 0, 0, 0.06),\n 0px 32px 32px rgba(0, 0, 0, 0.03), 0px 16px 16px rgba(0, 0, 0, 0.02),\n 0px 4px 4px rgba(0, 0, 0, 0.02), 0px 2px 2px rgba(0, 0, 0, 0.02);\n bottom: 24px;\n display: flex;\n left: 50%;\n padding: 12px 16px;\n position: fixed;\n transform: translateX(-50%);\n width: 100%;\n max-width: 800px;\n`;\n"],"mappings":";;;;;;AAAA;AAAuC;AAGhC,IAAMA,aAAa,GAAGC,yBAAM,CAACC,GAAG;EAAA;EAAA;AAAA,2ZAgBtC;AAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _Toolbar = require("./Toolbar");
7
+ Object.keys(_Toolbar).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Toolbar[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _Toolbar[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../src/components/Toolbar/index.ts"],"sourcesContent":["export * from \"./Toolbar\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAOH,MAAM,OAAO,CAAC;AAIf,OAAO,EACL,kBAAkB,EAEnB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAWhE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAgB3C,MAAM,WAAW,cACf,SAAQ,IAAI,CACV,kBAAkB,EAClB,cAAc,GAAG,SAAS,GAAG,oBAAoB,CAClD;IACD,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,CACT,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,KACxD,IAAI,CAAC;IACV,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB;IAClB,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,gBAAgB,EACtC,IAAI,EAAE,CAAC,EACP,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,KAClB,GAAG,CAAC,OAAO,CAAC;IACjB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9C,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,cAAc,CAggBvC,CAAC"}
1
+ {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EAOH,MAAM,OAAO,CAAC;AAIf,OAAO,EACL,kBAAkB,EAEnB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAWhE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAgB3C,MAAM,WAAW,cACf,SAAQ,IAAI,CACV,kBAAkB,EAClB,cAAc,GAAG,SAAS,GAAG,oBAAoB,CAClD;IACD,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,CACT,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,KACxD,IAAI,CAAC;IACV,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oBAAoB;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB;IAClB,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,gBAAgB,EACtC,IAAI,EAAE,CAAC,EACP,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,KAClB,GAAG,CAAC,OAAO,CAAC;IACjB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9C,sCAAsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4BAA4B;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,cAAc,CAigBvC,CAAC"}
@@ -320,7 +320,7 @@ export var ComboBox = function ComboBox(_ref) {
320
320
  className: classNames("c-combo-box-input-wrapper", inputWrapperClassName),
321
321
  onClick: function onClick() {
322
322
  var _elementRef$current;
323
- (_elementRef$current = elementRef.current) == null ? void 0 : _elementRef$current.focus();
323
+ (_elementRef$current = elementRef.current) == null ? void 0 : _elementRef$current.click();
324
324
  },
325
325
  $_css3: autoSize === "auto" ? "auto" : undefined,
326
326
  $_css4: autoSize === "auto" && scrollWrapper ? "scroll" : undefined,
@@ -359,10 +359,11 @@ export var ComboBox = function ComboBox(_ref) {
359
359
  }))))) : /*#__PURE__*/React.createElement(StyledComboBoxInput, {
360
360
  className: classNames("c-combo-box-input", inputWrapperClassName),
361
361
  onBlur: handleBlur,
362
- onClick: onOpen,
362
+ wrapperClick: onOpen,
363
363
  onFocus: function onFocus() {
364
364
  setFocused(!focused);
365
365
  },
366
+ onClick: onOpen,
366
367
  wrapRef: comboBoxRef,
367
368
  ref: handleRef,
368
369
  value: loading && loadingText ? loadingText : value,
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.js","names":["React","useCallback","useState","useEffect","useRef","useMemo","Fragment","RadioButton","Autocomplete","IconButton","isOptionGroup","useForkRef","Popper","RemoveScroll","SpinnerLoader","OptionContent","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","StyledComboBoxList","StyledChipWrapper","InputAdornment","Checkbox","Chip","StyledInput","StyledInputWrapper","useOnClickOutside","Avatar","Trigger","Typography","Portal","ConditionalWrapper","classNames","useIsFirstRender","MultiAvatar","ComboBox","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","prop","selectedName","value","map","v","find","q","id","name","setValue","focused","setFocused","handleOnChange","e","target","childNode","elementRef","handleRef","wrapperRef","chipWrapper","comboBoxRef","open","setOpen","isFirstRender","current","contains","handleOnKeyDown","key","stopPropagation","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","autoSize","length","startAdornment","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","optionItem","child","avatarSize","showXIcon","hasSelected","display","flex","alignSelf","width","children","zIndex","clientWidth","displayName"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RadioButton } from \"../RadioButton\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport { IconButton } from \"../IconButton\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Popper } from \"../Popper\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\nimport tw from \"twin.macro\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport classNames from \"classnames\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { MultiAvatar } from \"../MultiAvatar\";\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper close */\n onClose?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(false);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n }\n },\n [focused, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (type === \"multiple\") {\n onChange?.([]);\n onClear?.();\n } else {\n onChange?.(\"\");\n onClear?.();\n }\n\n setOpen(false);\n },\n [type, onChange, onClear]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color=\"#303037\"\n onClose={showOnClose ? onClose : undefined}\n size={size}\n variant=\"Caption 2\"\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? \"80px\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.focus();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n onClick={onOpen}\n onFocus={() => {\n setFocused(!focused);\n }}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </InputAdornment>\n ) : null\n }\n />\n )}\n\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList $width={comboBoxRef.current?.clientWidth}>\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.js","names":["React","useCallback","useState","useEffect","useRef","useMemo","Fragment","RadioButton","Autocomplete","IconButton","isOptionGroup","useForkRef","Popper","RemoveScroll","SpinnerLoader","OptionContent","StyledComboBoxCloseSmallIcon","StyledComboBoxCollapseExpandSingleIcon","StyledComboBoxInput","StyledComboBoxList","StyledChipWrapper","InputAdornment","Checkbox","Chip","StyledInput","StyledInputWrapper","useOnClickOutside","Avatar","Trigger","Typography","Portal","ConditionalWrapper","classNames","useIsFirstRender","MultiAvatar","ComboBox","options","selected","loading","loadingText","onChange","placeholder","handleEmptyAction","disabled","size","invalid","type","renderChip","forceCloseMenu","renderOption","limitChips","hiddenNumberText","inPortal","inputWrapperClassName","scrollWrapper","onClose","onClear","prop","selectedName","value","map","v","find","q","id","name","setValue","focused","setFocused","handleOnChange","e","target","childNode","elementRef","handleRef","wrapperRef","chipWrapper","comboBoxRef","open","setOpen","isFirstRender","current","contains","handleOnKeyDown","key","stopPropagation","focus","blur","emptyAction","handleChange","selectedValue","onOpen","handleRenderOption","option","props","image","color","textColor","handleDeselect","handleMouseDown","preventDefault","handleBlur","renderChipAdornment","index","avatarProps","leftAdornment","undefined","Array","isArray","includes","newSelected","filter","item","showOnClose","autoSize","length","startAdornment","elements","total","forEach","isGrouped","push","groupedOptions","o","_index","hidden","splice","optionItem","child","avatarSize","showXIcon","hasSelected","click","display","flex","alignSelf","width","children","zIndex","clientWidth","displayName"],"sources":["../../../../src/components/ComboBox/ComboBox.tsx"],"sourcesContent":["import React, {\n FC,\n useCallback,\n useState,\n useEffect,\n useRef,\n useMemo,\n Fragment,\n} from \"react\";\nimport { RadioButton } from \"../RadioButton\";\nimport { Autocomplete } from \"../Autocomplete\";\nimport { IconButton } from \"../IconButton\";\nimport {\n IAutocompleteProps,\n isOptionGroup,\n} from \"../Autocomplete/Autocomplete\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Popper } from \"../Popper\";\nimport { IOptionGroupProps, IOptionItemProps } from \"../Select\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { SpinnerLoader } from \"../Loaders/Spinner/SpinnerLoader\";\nimport { OptionContent } from \"../Select/OptionContent/OptionContent\";\nimport {\n StyledComboBoxCloseSmallIcon,\n StyledComboBoxCollapseExpandSingleIcon,\n StyledComboBoxInput,\n StyledComboBoxList,\n StyledChipWrapper,\n} from \"./Styles\";\nimport { InputSize } from \"../Input/types\";\nimport { InputAdornment } from \"../Input/InputAdornment\";\nimport { Checkbox } from \"../Checkbox\";\nimport { Chip } from \"../Chip\";\nimport { StyledInput, StyledInputWrapper } from \"../Input/Styles\";\nimport { useOnClickOutside } from \"../../hooks/useOnClickOutside\";\nimport { Avatar, AvatarProps } from \"../Avatar\";\nimport { Trigger } from \"../Trigger\";\nimport { Typography } from \"../Typography/Typography\";\nimport tw from \"twin.macro\";\nimport { Portal } from \"../../helpers\";\nimport { ConditionalWrapper } from \"../../helpers/ConditionWrapper/ConditionWrapper\";\nimport classNames from \"classnames\";\nimport { useIsFirstRender } from \"../../hooks/useIsFirstRender\";\nimport { MultiAvatar } from \"../MultiAvatar\";\n\nexport interface IComboBoxProps\n extends Omit<\n IAutocompleteProps,\n \"handleChange\" | \"inputEl\" | \"clearInputOnSelect\"\n > {\n /** Set combobox in to loading state */\n loading?: boolean;\n /** Text to display while in loading state */\n loadingText?: string;\n /** onChange callback */\n onChange?: (\n e: (string | number)[] | string | number | null | undefined\n ) => void;\n /** Placeholder for Select input */\n placeholder?: string;\n /** disable Input element */\n disabled?: boolean;\n /** Combobox size */\n size?: InputSize;\n /** Invalid state */\n invalid?: boolean;\n /** Render Chip */\n renderChip?: <T extends IOptionItemProps>(\n item: T,\n key?: string | number\n ) => JSX.Element;\n /** Close menu on change */\n forceCloseMenu?: boolean;\n /** Limit chips */\n limitChips?: number;\n /** Hidden number text */\n hiddenNumberText?: (hidden: number) => string;\n /** Render Autocomplete in <Portal> */\n inPortal?: boolean;\n /** inputWrapperClassName */\n inputWrapperClassName?: string;\n /** scrollWrapper */\n scrollWrapper?: boolean;\n /** onClose (f) will be called when Popper close */\n onClose?: () => void;\n /** onClear (f) will be called when user clear input on X icon*/\n onClear?: () => void;\n}\n\nexport const ComboBox: FC<IComboBoxProps> = ({\n options = [],\n selected,\n loading = false,\n loadingText,\n onChange,\n placeholder,\n handleEmptyAction,\n disabled = false,\n size = \"regular\",\n invalid = false,\n type = \"single\",\n renderChip,\n forceCloseMenu = type === \"single\",\n renderOption,\n limitChips = 2,\n hiddenNumberText,\n inPortal = false,\n inputWrapperClassName,\n scrollWrapper,\n onClose,\n onClear,\n ...prop\n}) => {\n const selectedName = useMemo(() => {\n let value = \"\";\n if (!selected) {\n return value;\n }\n options.map((v) => {\n if ((v as IOptionGroupProps)?.options) {\n return (v as IOptionGroupProps).options.find((q) => {\n if (q.id === selected) {\n value = q.name;\n return;\n }\n });\n } else {\n if (v.id === selected) {\n value = v.name;\n return;\n }\n }\n });\n return value;\n }, [options, selected]);\n const [value, setValue] = useState(selectedName);\n const [focused, setFocused] = useState<boolean>(false);\n const handleOnChange = useCallback((e) => setValue(e.target.value), []);\n const childNode = useRef<HTMLInputElement | null>();\n const elementRef = useRef<HTMLInputElement | null>(null);\n const handleRef = useForkRef(childNode, elementRef);\n const wrapperRef = useRef<HTMLDivElement>(null);\n const chipWrapper = useRef<HTMLDivElement>(null);\n const comboBoxRef = useRef<HTMLDivElement | null>(null);\n\n const [open, setOpen] = useState(false);\n const isFirstRender = useIsFirstRender();\n\n useOnClickOutside(wrapperRef, (e) => {\n if (e.target && comboBoxRef.current?.contains(e.target as Node)) {\n return;\n }\n setOpen(false);\n });\n\n const handleOnKeyDown = useCallback(\n (e) => {\n if (e.key === \"Escape\" && open) {\n setOpen(false);\n setValue(selectedName);\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\" && type === \"multiple\") {\n setValue(\"\");\n }\n\n if (e.key === \"Enter\" && !open && focused) {\n setOpen(true);\n }\n },\n [focused, open, selectedName, type]\n );\n\n useEffect(() => {\n open && childNode?.current?.focus();\n !open && childNode?.current?.blur();\n }, [childNode, open]);\n\n useEffect(() => {\n setValue(selectedName);\n }, [selectedName]);\n\n useEffect(() => {\n if (!open && !isFirstRender && !focused) {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }\n }, [focused, isFirstRender, onClose, open]);\n\n const emptyAction = useCallback(\n (v) => {\n handleEmptyAction?.(v);\n setOpen(false);\n },\n [handleEmptyAction]\n );\n\n const handleChange = useCallback(\n (selectedValue) => {\n if (selectedValue !== selected && typeof onChange === \"function\") {\n onChange(selectedValue);\n }\n if (forceCloseMenu) {\n setOpen(false);\n }\n },\n [forceCloseMenu, onChange, selected]\n );\n\n const onOpen = useCallback(() => {\n if (!disabled) {\n setOpen(true);\n }\n }, [disabled]);\n\n const handleRenderOption = useCallback(\n (option, props) => {\n if (typeof renderOption === \"function\") {\n return renderOption(option, props);\n }\n if (type === \"multiple\") {\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <Checkbox {...props} />\n </>\n );\n }\n return (\n <>\n <OptionContent\n imageUrl={option.image}\n color={option.color}\n textColor={option.textColor}\n name={option.name}\n />\n <RadioButton {...props} />\n </>\n );\n },\n [type, renderOption]\n );\n\n const handleDeselect = useCallback(\n (e) => {\n e.stopPropagation();\n if (type === \"multiple\") {\n onChange?.([]);\n onClear?.();\n } else {\n onChange?.(\"\");\n onClear?.();\n }\n\n setOpen(false);\n },\n [type, onChange, onClear]\n );\n\n const handleMouseDown = useCallback((e) => {\n e.preventDefault();\n }, []);\n\n const handleBlur = useCallback(() => {\n setValue(selectedName);\n setFocused(!focused);\n }, [focused, selectedName]);\n\n const renderChipAdornment = useCallback(\n (option, index) => {\n if (typeof renderChip === \"function\") {\n return renderChip(option, index);\n }\n const avatarProps: Partial<AvatarProps> = {\n size: 18,\n };\n switch (size) {\n case \"big\":\n avatarProps.size = 22;\n break;\n case \"small\":\n avatarProps.size = 14;\n break;\n }\n const leftAdornment = option.image ? (\n <Avatar\n css={`\n ${tw`tw-my-0.5`}\n ${tw`tw-mr-0.5`}\n `}\n url={option.image}\n {...avatarProps}\n />\n ) : undefined;\n\n const onClose = (e) => {\n e.preventDefault();\n e.stopPropagation();\n if (Array.isArray(selected) && selected.includes(option.id)) {\n if (typeof onChange === \"function\") {\n const newSelected = selected.filter((item) => item !== option.id);\n onChange(newSelected);\n }\n }\n };\n\n let showOnClose = true;\n if (disabled) {\n showOnClose = false;\n }\n if (option.color) {\n showOnClose = false;\n }\n\n return (\n <Chip\n className=\"c-combo-box-chip\"\n leftAdornment={leftAdornment}\n label={option.name}\n key={index}\n backgroundColor={option.color}\n color=\"#303037\"\n onClose={showOnClose ? onClose : undefined}\n size={size}\n variant=\"Caption 2\"\n />\n );\n },\n [disabled, onChange, renderChip, selected, size]\n );\n\n const autoSize = useMemo(() => {\n if (\n type === \"multiple\" &&\n open &&\n Array.isArray(selected) &&\n selected.length > 1\n ) {\n return \"auto\";\n }\n return size;\n }, [open, selected, size, type]);\n\n const startAdornment = useMemo(() => {\n if (type === \"multiple\" && Array.isArray(selected) && selected.length > 0) {\n const elements: JSX.Element[] = [];\n let total = 0;\n options.forEach((option, index) => {\n const isGrouped = isOptionGroup(option);\n if (selected.includes(option.id) && !isGrouped) {\n total = total + 1;\n elements.push(renderChipAdornment(option, index));\n } else if (isGrouped) {\n const groupedOptions = option.options.filter((o) =>\n selected.includes(o.id)\n );\n total = total + groupedOptions.length;\n if (groupedOptions.length > 0) {\n groupedOptions.forEach((o, _index) => {\n elements.push(renderChipAdornment(o, `${index}_${_index}`));\n });\n }\n }\n });\n let hidden = 0;\n if (!open && limitChips > 0 && elements.length > limitChips) {\n hidden = elements.splice(\n limitChips,\n elements.length - limitChips\n ).length;\n }\n\n return (\n <Fragment>\n {elements}\n {hidden > 0 && (\n <Typography\n variant={\n size === \"small\"\n ? \"Caption 1\"\n : size === \"regular\"\n ? \"Body 2\"\n : \"Body 1\"\n }\n css={`\n display: flex;\n flex-shrink: 0;\n align-items: center;\n `}\n >\n {typeof hiddenNumberText === \"function\"\n ? hiddenNumberText(hidden)\n : `+${hidden}`}\n </Typography>\n )}\n </Fragment>\n );\n }\n if (type === \"single\" && selected) {\n let optionItem;\n options.forEach((option) => {\n if (isOptionGroup(option)) {\n optionItem = option.options.find((child) => child.id === selected);\n } else if (!optionItem && option.id === selected) {\n optionItem = option;\n }\n });\n if (optionItem && optionItem.image) {\n const avatarSize = size === \"big\" ? 22 : size === \"regular\" ? 18 : 14;\n if (Array.isArray(optionItem.image)) {\n return <MultiAvatar url={optionItem.image} size={avatarSize} />;\n }\n return <Avatar url={optionItem.image} size={avatarSize} />;\n }\n }\n\n return undefined;\n }, [\n type,\n selected,\n options,\n open,\n limitChips,\n hiddenNumberText,\n renderChipAdornment,\n size,\n ]);\n\n const showXIcon =\n Array.isArray(selected) && type === \"multiple\" && selected.length > 0;\n\n const hasSelected =\n type === \"multiple\" && Array.isArray(selected) && selected.length > 0;\n\n return (\n <div className=\"c-combo-box\">\n {type === \"multiple\" ? (\n <>\n <StyledInputWrapper\n $disabled={disabled}\n $size={size}\n $invalid={invalid}\n ref={comboBoxRef}\n css={`\n display: flex;\n justify-content: space-between;\n flex: 1;\n height: ${autoSize === \"auto\" ? \"auto\" : undefined};\n overflow-y: ${autoSize === \"auto\" && scrollWrapper\n ? \"scroll\"\n : undefined};\n max-height: ${autoSize === \"auto\" && scrollWrapper\n ? \"80px\"\n : undefined};\n `}\n className={classNames(\n \"c-combo-box-input-wrapper\",\n inputWrapperClassName\n )}\n onClick={() => {\n elementRef.current?.click();\n }}\n >\n <StyledChipWrapper\n $autoSize={autoSize}\n $open={open}\n ref={chipWrapper}\n >\n {startAdornment}\n <StyledInput\n className=\"c-combo-box-input\"\n onBlur={handleBlur}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={!hasSelected ? placeholder : undefined}\n disabled={disabled}\n $size={size}\n $loading={loading}\n style={{\n display: \"flex\",\n flex: 1,\n alignSelf: \"center\",\n width: autoSize === \"auto\" ? \"auto\" : \"100%\",\n }}\n />\n </StyledChipWrapper>\n {!disabled && (\n <>\n {loading ? (\n <SpinnerLoader />\n ) : (\n <>\n {showXIcon && (\n <Trigger\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n data-testid=\"deselect-all\"\n css={`\n display: flex;\n justify-content: center;\n `}\n >\n <StyledComboBoxCloseSmallIcon />\n </Trigger>\n )}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </>\n )}\n </>\n )}\n </StyledInputWrapper>\n </>\n ) : (\n <StyledComboBoxInput\n className={classNames(\"c-combo-box-input\", inputWrapperClassName)}\n onBlur={handleBlur}\n wrapperClick={onOpen}\n onFocus={() => {\n setFocused(!focused);\n }}\n onClick={onOpen}\n wrapRef={comboBoxRef}\n ref={handleRef}\n value={loading && loadingText ? loadingText : value}\n onKeyDown={handleOnKeyDown}\n onChange={handleOnChange}\n placeholder={placeholder}\n disabled={disabled}\n size={size}\n invalid={invalid}\n $loading={loading}\n startAdornment={startAdornment}\n endAdornment={\n !disabled ? (\n <InputAdornment disablePointerEvents={disabled}>\n {loading ? (\n <SpinnerLoader />\n ) : selected ? (\n <IconButton\n onMouseDown={handleMouseDown}\n onClick={handleDeselect}\n variant=\"text gray\"\n size=\"small\"\n >\n <StyledComboBoxCloseSmallIcon />\n </IconButton>\n ) : null}\n <StyledComboBoxCollapseExpandSingleIcon $open={open} />\n </InputAdornment>\n ) : null\n }\n />\n )}\n\n {!disabled ? (\n <ConditionalWrapper\n condition={inPortal}\n wrap={(children) => <Portal>{children}</Portal>}\n >\n <Popper\n anchorEl={comboBoxRef.current}\n open={open}\n placement=\"bottom\"\n style={{\n zIndex: 10,\n width: comboBoxRef.current?.clientWidth,\n }}\n ref={wrapperRef}\n strategy=\"fixed\"\n >\n <RemoveScroll noIsolation allowPinchZoom>\n <StyledComboBoxList $width={comboBoxRef.current?.clientWidth}>\n <Autocomplete\n {...prop}\n inputEl={childNode}\n selected={selected}\n handleChange={handleChange}\n renderOption={handleRenderOption}\n options={options}\n type={type}\n handleEmptyAction={emptyAction}\n />\n </StyledComboBoxList>\n </RemoveScroll>\n </Popper>\n </ConditionalWrapper>\n ) : null}\n </div>\n );\n};\n\nComboBox.displayName = \"ComboBox\";\n"],"mappings":"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"}
@@ -14,6 +14,8 @@ export interface ICounterButtonProps {
14
14
  tooltipText?: string;
15
15
  /** Applies passed classes */
16
16
  className?: string;
17
+ /** Disabled state of a button */
18
+ disabled?: boolean;
17
19
  }
18
20
  export declare const CounterButton: React.ForwardRefExoticComponent<ICounterButtonProps & React.RefAttributes<HTMLDivElement>>;
19
21
  //# sourceMappingURL=CounterButton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CounterButton.d.ts","sourceRoot":"","sources":["../../../../src/components/CounterButton/CounterButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,YAAY,EAAE,MAAM,OAAO,CAAC;AAYxD,MAAM,WAAW,mBAAmB;IAClC,uBAAuB;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW;IACX,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,UAAU,EAAE,CAAC,KAAK,CAAC,KAAA,KAAK,IAAI,CAAC;IAC7B,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,4FA8DzB,CAAC"}
1
+ {"version":3,"file":"CounterButton.d.ts","sourceRoot":"","sources":["../../../../src/components/CounterButton/CounterButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,YAAY,EAAE,MAAM,OAAO,CAAC;AAYxD,MAAM,WAAW,mBAAmB;IAClC,uBAAuB;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW;IACX,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,UAAU,EAAE,CAAC,KAAK,CAAC,KAAA,KAAK,IAAI,CAAC;IAC7B,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,4FAiEzB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- var _excluded = ["label", "icon", "active", "counter", "tooltipText", "onClearAll", "className"];
3
+ var _excluded = ["label", "icon", "active", "counter", "tooltipText", "onClearAll", "className", "disabled"];
4
4
  import React, { forwardRef } from "react";
5
5
  import classNames from "classnames";
6
6
  import { Tooltip } from "../Tooltip/Tooltip";
@@ -15,11 +15,15 @@ export var CounterButton = /*#__PURE__*/forwardRef(function (_ref, ref) {
15
15
  tooltipText = _ref.tooltipText,
16
16
  onClearAll = _ref.onClearAll,
17
17
  className = _ref.className,
18
+ _ref$disabled = _ref.disabled,
19
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
18
20
  args = _objectWithoutPropertiesLoose(_ref, _excluded);
19
21
  return /*#__PURE__*/React.createElement(StyledCounterButtonWrapper, {
20
22
  ref: ref,
21
23
  className: className
22
24
  }, /*#__PURE__*/React.createElement(StyledCounterButton, _extends({
25
+ disabled: disabled,
26
+ "aria-disabled": disabled,
23
27
  className: classNames("c-counter-button", {
24
28
  "c-counter-button__selected": counter
25
29
  })
@@ -1 +1 @@
1
- {"version":3,"file":"CounterButton.js","names":["React","forwardRef","classNames","Tooltip","CloseSmallIcon","StyledCounterButton","StyledCounterButtonCounter","StyledCounterButtonLabel","StyledCounterButtonReset","StyledCounterButtonWrapper","CounterButton","ref","label","icon","active","counter","tooltipText","onClearAll","className","args","cloneElement","displayName"],"sources":["../../../../src/components/CounterButton/CounterButton.tsx"],"sourcesContent":["import React, { forwardRef, ReactElement } from \"react\";\nimport classNames from \"classnames\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport CloseSmallIcon from \"../Icons/collection/CloseSmall\";\nimport {\n StyledCounterButton,\n StyledCounterButtonCounter,\n StyledCounterButtonLabel,\n StyledCounterButtonReset,\n StyledCounterButtonWrapper,\n} from \"./Styles\";\n\nexport interface ICounterButtonProps {\n /** Set active state */\n active?: boolean;\n /** Label for value */\n label?: string;\n /** Icon */\n icon?: ReactElement;\n /** Number of applied filters */\n counter?: number;\n /** OnClearAll callback */\n onClearAll: (event?) => void;\n /** Tooltip content */\n tooltipText?: string;\n /** Applies passed classes */\n className?: string;\n}\n\nexport const CounterButton = forwardRef<HTMLDivElement, ICounterButtonProps>(\n (\n {\n label,\n icon,\n active,\n counter = 0,\n tooltipText,\n onClearAll,\n className,\n ...args\n },\n ref\n ) => {\n return (\n <StyledCounterButtonWrapper ref={ref} className={className}>\n <StyledCounterButton\n className={classNames(\"c-counter-button\", {\n \"c-counter-button__selected\": counter,\n })}\n {...args}\n variant=\"text gray\"\n $active={counter > 0 || active}\n $selected={counter > 0}\n >\n {icon &&\n React.cloneElement(icon, {\n className: classNames(\"c-counter-button__icon\"),\n })}\n {label && (\n <StyledCounterButtonLabel\n color=\"secondary\"\n weight=\"medium\"\n className=\"c-counter-button__label\"\n $active={counter > 0 || active}\n >\n {label}\n </StyledCounterButtonLabel>\n )}\n {counter > 0 ? (\n <StyledCounterButtonCounter className=\"c-counter-button__counter\">\n {counter}\n </StyledCounterButtonCounter>\n ) : null}\n </StyledCounterButton>\n {counter > 0 ? (\n <Tooltip\n title={`${tooltipText}`}\n popperTooltipClassName=\"z-index-1300\"\n >\n <StyledCounterButtonReset\n variant=\"text colored\"\n className=\"c-counter-button__reset\"\n onClick={onClearAll}\n >\n <CloseSmallIcon />\n </StyledCounterButtonReset>\n </Tooltip>\n ) : null}\n </StyledCounterButtonWrapper>\n );\n }\n);\n\nCounterButton.displayName = \"CounterButton\";\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAsB,OAAO;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,OAAOC,cAAc,MAAM,gCAAgC;AAC3D,SACEC,mBAAmB,EACnBC,0BAA0B,EAC1BC,wBAAwB,EACxBC,wBAAwB,EACxBC,0BAA0B,QACrB,UAAU;AAmBjB,OAAO,IAAMC,aAAa,gBAAGT,UAAU,CACrC,gBAWEU,GAAG,EACA;EAAA,IAVDC,KAAK,QAALA,KAAK;IACLC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IAAA,oBACNC,OAAO;IAAPA,OAAO,6BAAG,CAAC;IACXC,WAAW,QAAXA,WAAW;IACXC,UAAU,QAAVA,UAAU;IACVC,SAAS,QAATA,SAAS;IACNC,IAAI;EAIT,oBACE,oBAAC,0BAA0B;IAAC,GAAG,EAAER,GAAI;IAAC,SAAS,EAAEO;EAAU,gBACzD,oBAAC,mBAAmB;IAClB,SAAS,EAAEhB,UAAU,CAAC,kBAAkB,EAAE;MACxC,4BAA4B,EAAEa;IAChC,CAAC;EAAE,GACCI,IAAI;IACR,OAAO,EAAC,WAAW;IACnB,OAAO,EAAEJ,OAAO,GAAG,CAAC,IAAID,MAAO;IAC/B,SAAS,EAAEC,OAAO,GAAG;EAAE,IAEtBF,IAAI,iBACHb,KAAK,CAACoB,YAAY,CAACP,IAAI,EAAE;IACvBK,SAAS,EAAEhB,UAAU,CAAC,wBAAwB;EAChD,CAAC,CAAC,EACHU,KAAK,iBACJ,oBAAC,wBAAwB;IACvB,KAAK,EAAC,WAAW;IACjB,MAAM,EAAC,QAAQ;IACf,SAAS,EAAC,yBAAyB;IACnC,OAAO,EAAEG,OAAO,GAAG,CAAC,IAAID;EAAO,GAE9BF,KAAK,CAET,EACAG,OAAO,GAAG,CAAC,gBACV,oBAAC,0BAA0B;IAAC,SAAS,EAAC;EAA2B,GAC9DA,OAAO,CACmB,GAC3B,IAAI,CACY,EACrBA,OAAO,GAAG,CAAC,gBACV,oBAAC,OAAO;IACN,KAAK,OAAKC,WAAc;IACxB,sBAAsB,EAAC;EAAc,gBAErC,oBAAC,wBAAwB;IACvB,OAAO,EAAC,cAAc;IACtB,SAAS,EAAC,yBAAyB;IACnC,OAAO,EAAEC;EAAW,gBAEpB,oBAAC,cAAc,OAAG,CACO,CACnB,GACR,IAAI,CACmB;AAEjC,CAAC,CACF;AAEDP,aAAa,CAACW,WAAW,GAAG,eAAe"}
1
+ {"version":3,"file":"CounterButton.js","names":["React","forwardRef","classNames","Tooltip","CloseSmallIcon","StyledCounterButton","StyledCounterButtonCounter","StyledCounterButtonLabel","StyledCounterButtonReset","StyledCounterButtonWrapper","CounterButton","ref","label","icon","active","counter","tooltipText","onClearAll","className","disabled","args","cloneElement","displayName"],"sources":["../../../../src/components/CounterButton/CounterButton.tsx"],"sourcesContent":["import React, { forwardRef, ReactElement } from \"react\";\nimport classNames from \"classnames\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport CloseSmallIcon from \"../Icons/collection/CloseSmall\";\nimport {\n StyledCounterButton,\n StyledCounterButtonCounter,\n StyledCounterButtonLabel,\n StyledCounterButtonReset,\n StyledCounterButtonWrapper,\n} from \"./Styles\";\n\nexport interface ICounterButtonProps {\n /** Set active state */\n active?: boolean;\n /** Label for value */\n label?: string;\n /** Icon */\n icon?: ReactElement;\n /** Number of applied filters */\n counter?: number;\n /** OnClearAll callback */\n onClearAll: (event?) => void;\n /** Tooltip content */\n tooltipText?: string;\n /** Applies passed classes */\n className?: string;\n /** Disabled state of a button */\n disabled?: boolean;\n}\n\nexport const CounterButton = forwardRef<HTMLDivElement, ICounterButtonProps>(\n (\n {\n label,\n icon,\n active,\n counter = 0,\n tooltipText,\n onClearAll,\n className,\n disabled = false,\n ...args\n },\n ref\n ) => {\n return (\n <StyledCounterButtonWrapper ref={ref} className={className}>\n <StyledCounterButton\n disabled={disabled}\n aria-disabled={disabled}\n className={classNames(\"c-counter-button\", {\n \"c-counter-button__selected\": counter,\n })}\n {...args}\n variant=\"text gray\"\n $active={counter > 0 || active}\n $selected={counter > 0}\n >\n {icon &&\n React.cloneElement(icon, {\n className: classNames(\"c-counter-button__icon\"),\n })}\n {label && (\n <StyledCounterButtonLabel\n color=\"secondary\"\n weight=\"medium\"\n className=\"c-counter-button__label\"\n $active={counter > 0 || active}\n >\n {label}\n </StyledCounterButtonLabel>\n )}\n {counter > 0 ? (\n <StyledCounterButtonCounter className=\"c-counter-button__counter\">\n {counter}\n </StyledCounterButtonCounter>\n ) : null}\n </StyledCounterButton>\n {counter > 0 ? (\n <Tooltip\n title={`${tooltipText}`}\n popperTooltipClassName=\"z-index-1300\"\n >\n <StyledCounterButtonReset\n variant=\"text colored\"\n className=\"c-counter-button__reset\"\n onClick={onClearAll}\n >\n <CloseSmallIcon />\n </StyledCounterButtonReset>\n </Tooltip>\n ) : null}\n </StyledCounterButtonWrapper>\n );\n }\n);\n\nCounterButton.displayName = \"CounterButton\";\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAsB,OAAO;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,OAAOC,cAAc,MAAM,gCAAgC;AAC3D,SACEC,mBAAmB,EACnBC,0BAA0B,EAC1BC,wBAAwB,EACxBC,wBAAwB,EACxBC,0BAA0B,QACrB,UAAU;AAqBjB,OAAO,IAAMC,aAAa,gBAAGT,UAAU,CACrC,gBAYEU,GAAG,EACA;EAAA,IAXDC,KAAK,QAALA,KAAK;IACLC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IAAA,oBACNC,OAAO;IAAPA,OAAO,6BAAG,CAAC;IACXC,WAAW,QAAXA,WAAW;IACXC,UAAU,QAAVA,UAAU;IACVC,SAAS,QAATA,SAAS;IAAA,qBACTC,QAAQ;IAARA,QAAQ,8BAAG,KAAK;IACbC,IAAI;EAIT,oBACE,oBAAC,0BAA0B;IAAC,GAAG,EAAET,GAAI;IAAC,SAAS,EAAEO;EAAU,gBACzD,oBAAC,mBAAmB;IAClB,QAAQ,EAAEC,QAAS;IACnB,iBAAeA,QAAS;IACxB,SAAS,EAAEjB,UAAU,CAAC,kBAAkB,EAAE;MACxC,4BAA4B,EAAEa;IAChC,CAAC;EAAE,GACCK,IAAI;IACR,OAAO,EAAC,WAAW;IACnB,OAAO,EAAEL,OAAO,GAAG,CAAC,IAAID,MAAO;IAC/B,SAAS,EAAEC,OAAO,GAAG;EAAE,IAEtBF,IAAI,iBACHb,KAAK,CAACqB,YAAY,CAACR,IAAI,EAAE;IACvBK,SAAS,EAAEhB,UAAU,CAAC,wBAAwB;EAChD,CAAC,CAAC,EACHU,KAAK,iBACJ,oBAAC,wBAAwB;IACvB,KAAK,EAAC,WAAW;IACjB,MAAM,EAAC,QAAQ;IACf,SAAS,EAAC,yBAAyB;IACnC,OAAO,EAAEG,OAAO,GAAG,CAAC,IAAID;EAAO,GAE9BF,KAAK,CAET,EACAG,OAAO,GAAG,CAAC,gBACV,oBAAC,0BAA0B;IAAC,SAAS,EAAC;EAA2B,GAC9DA,OAAO,CACmB,GAC3B,IAAI,CACY,EACrBA,OAAO,GAAG,CAAC,gBACV,oBAAC,OAAO;IACN,KAAK,OAAKC,WAAc;IACxB,sBAAsB,EAAC;EAAc,gBAErC,oBAAC,wBAAwB;IACvB,OAAO,EAAC,cAAc;IACtB,SAAS,EAAC,yBAAyB;IACnC,OAAO,EAAEC;EAAW,gBAEpB,oBAAC,cAAc,OAAG,CACO,CACnB,GACR,IAAI,CACmB;AAEjC,CAAC,CACF;AAEDP,aAAa,CAACY,WAAW,GAAG,eAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/CounterButton/Styles.ts"],"names":[],"mappings":";AAOA,UAAU,wBAAwB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,0BAA0B,oEAKtC,CAAC;AAIF,eAAO,MAAM,mBAAmB;;4FAsB/B,CAAC;AAIF,eAAO,MAAM,0BAA0B;;SAWtC,CAAC;AAIF,eAAO,MAAM,wBAAwB;;sEAWpC,CAAC;AAIF,eAAO,MAAM,wBAAwB;;SAgBpC,CAAC"}
1
+ {"version":3,"file":"Styles.d.ts","sourceRoot":"","sources":["../../../../src/components/CounterButton/Styles.ts"],"names":[],"mappings":";AAOA,UAAU,wBAAwB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,0BAA0B,oEAKtC,CAAC;AAIF,eAAO,MAAM,mBAAmB;;4FA8B/B,CAAC;AAIF,eAAO,MAAM,0BAA0B;;SAWtC,CAAC;AAIF,eAAO,MAAM,wBAAwB;;sEAWpC,CAAC;AAIF,eAAO,MAAM,wBAAwB;;SAgBpC,CAAC"}
@@ -13,10 +13,12 @@ StyledCounterButtonWrapper.displayName = "StyledCounterButtonWrapper";
13
13
  export var StyledCounterButton = styled(Button).withConfig({
14
14
  displayName: "Styles__StyledCounterButton",
15
15
  componentId: "sc-1ecrcba-1"
16
- })(["", " ", ""], function (props) {
17
- return props.$active && css(["padding:0 8px;svg{fill:var(--color-primary);}&:hover{background:var(--color-primary-300);}"]);
16
+ })(["", " ", " ", ""], function (props) {
17
+ return props.$active && !props.disabled && css(["padding:0 8px;svg{fill:var(--color-primary);}&:hover{background:var(--color-primary-300);}"]);
18
18
  }, function (props) {
19
19
  return props.$selected && css(["border-top-right-radius:0;border-bottom-right-radius:0;background-color:var(--color-primary-200);"]);
20
+ }, function (props) {
21
+ return props.disabled && css(["pointer-events:none;opacity:0.5;"]);
20
22
  });
21
23
  StyledCounterButton.displayName = "StyledCounterButton";
22
24
  export var StyledCounterButtonCounter = styled.div.withConfig({
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["styled","css","Body2","Button","BoxSizingStyle","FontStyle","StyledCounterButtonWrapper","div","displayName","StyledCounterButton","props","$active","$selected","StyledCounterButtonCounter","StyledCounterButtonReset","StyledCounterButtonLabel"],"sources":["../../../../src/components/CounterButton/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\nimport { Body2 } from \"../Typography/Variants/Body2\";\nimport { Button } from \"../Button/Button\";\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\n\ninterface StyledCounterButtonProps {\n $active?: boolean;\n $selected?: boolean;\n}\n\nexport const StyledCounterButtonWrapper = styled.div`\n ${tw`tw-flex`}\n ${FontStyle}\n ${BoxSizingStyle}\n width: fit-content;\n`;\n\nStyledCounterButtonWrapper.displayName = \"StyledCounterButtonWrapper\";\n\nexport const StyledCounterButton = styled(Button)<StyledCounterButtonProps>`\n ${(props) =>\n props.$active &&\n css`\n padding: 0 8px;\n\n svg {\n fill: var(--color-primary);\n }\n\n &:hover {\n background: var(--color-primary-300);\n }\n `}\n\n ${(props) =>\n props.$selected &&\n css`\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n background-color: var(--color-primary-200);\n `}\n`;\n\nStyledCounterButton.displayName = \"StyledCounterButton\";\n\nexport const StyledCounterButtonCounter = styled.div<{ $selected?: boolean }>`\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 margin-right: -6px;\n`;\n\nStyledCounterButtonCounter.displayName = \"StyledCounterButtonCounter\";\n\nexport const StyledCounterButtonReset = styled(Button)`\n background-color: var(--color-primary-200);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n\n &:hover,\n &:focus-visible {\n background-color: var(--color-primary-300);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n`;\n\nStyledCounterButtonReset.displayName = \"StyledCounterButtonReset\";\n\nexport const StyledCounterButtonLabel = styled(Body2)<{ $active?: boolean }>`\n ${tw`tw-pointer-events-none`}\n\n ${StyledCounterButton}:hover && {\n ${(props) =>\n !props.$active &&\n css`\n color: var(--color-theme-900);\n `}\n }\n\n ${(props) =>\n props.$active &&\n css`\n color: var(--color-primary);\n `}\n`;\n\nStyledCounterButtonLabel.displayName = \"StyledCounterButtonLabel\";\n"],"mappings":"AAAA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAE/C,SAASC,KAAK,QAAQ,8BAA8B;AACpD,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,SAAS,QAAQ,cAAc;AAOxC,OAAO,IAAMC,0BAA0B,GAAGN,MAAM,CAACO,GAAG;EAAA;EAAA;AAAA,0CAC9C;EAAA;AAAQ,CAAC,EACXF,SAAS,EACTD,cAAc,CAEjB;AAEDE,0BAA0B,CAACE,WAAW,GAAG,4BAA4B;AAErE,OAAO,IAAMC,mBAAmB,GAAGT,MAAM,CAACG,MAAM,CAAC;EAAA;EAAA;AAAA,kBAC7C,UAACO,KAAK;EAAA,OACNA,KAAK,CAACC,OAAO,IACbV,GAAG,gGAUF;AAAA,GAED,UAACS,KAAK;EAAA,OACNA,KAAK,CAACE,SAAS,IACfX,GAAG,uGAIF;AAAA,EACJ;AAEDQ,mBAAmB,CAACD,WAAW,GAAG,qBAAqB;AAEvD,OAAO,IAAMK,0BAA0B,GAAGb,MAAM,CAACO,GAAG;EAAA;EAAA;AAAA,6MAWnD;AAEDM,0BAA0B,CAACL,WAAW,GAAG,4BAA4B;AAErE,OAAO,IAAMM,wBAAwB,GAAGd,MAAM,CAACG,MAAM,CAAC;EAAA;EAAA;AAAA,+NAWrD;AAEDW,wBAAwB,CAACN,WAAW,GAAG,0BAA0B;AAEjE,OAAO,IAAMO,wBAAwB,GAAGf,MAAM,CAACE,KAAK,CAAC;EAAA;EAAA;AAAA,qCAC/C;EAAA;AAAuB,CAAC,EAE1BO,mBAAmB,EACjB,UAACC,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,OAAO,IACdV,GAAG,mCAEF;AAAA,GAGH,UAACS,KAAK;EAAA,OACNA,KAAK,CAACC,OAAO,IACbV,GAAG,iCAEF;AAAA,EACJ;AAEDc,wBAAwB,CAACP,WAAW,GAAG,0BAA0B"}
1
+ {"version":3,"file":"Styles.js","names":["styled","css","Body2","Button","BoxSizingStyle","FontStyle","StyledCounterButtonWrapper","div","displayName","StyledCounterButton","props","$active","disabled","$selected","StyledCounterButtonCounter","StyledCounterButtonReset","StyledCounterButtonLabel"],"sources":["../../../../src/components/CounterButton/Styles.ts"],"sourcesContent":["import styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\nimport { Body2 } from \"../Typography/Variants/Body2\";\nimport { Button } from \"../Button/Button\";\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\n\ninterface StyledCounterButtonProps {\n $active?: boolean;\n $selected?: boolean;\n}\n\nexport const StyledCounterButtonWrapper = styled.div`\n ${tw`tw-flex`}\n ${FontStyle}\n ${BoxSizingStyle}\n width: fit-content;\n`;\n\nStyledCounterButtonWrapper.displayName = \"StyledCounterButtonWrapper\";\n\nexport const StyledCounterButton = styled(Button)<StyledCounterButtonProps>`\n ${(props) =>\n props.$active &&\n !props.disabled &&\n css`\n padding: 0 8px;\n\n svg {\n fill: var(--color-primary);\n }\n\n &:hover {\n background: var(--color-primary-300);\n }\n `}\n\n ${(props) =>\n props.$selected &&\n css`\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n background-color: var(--color-primary-200);\n `}\n\n ${(props) =>\n props.disabled &&\n css`\n pointer-events: none;\n opacity: 0.5;\n `}\n`;\n\nStyledCounterButton.displayName = \"StyledCounterButton\";\n\nexport const StyledCounterButtonCounter = styled.div<{ $selected?: boolean }>`\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 margin-right: -6px;\n`;\n\nStyledCounterButtonCounter.displayName = \"StyledCounterButtonCounter\";\n\nexport const StyledCounterButtonReset = styled(Button)`\n background-color: var(--color-primary-200);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n\n &:hover,\n &:focus-visible {\n background-color: var(--color-primary-300);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n`;\n\nStyledCounterButtonReset.displayName = \"StyledCounterButtonReset\";\n\nexport const StyledCounterButtonLabel = styled(Body2)<{ $active?: boolean }>`\n ${tw`tw-pointer-events-none`}\n\n ${StyledCounterButton}:hover && {\n ${(props) =>\n !props.$active &&\n css`\n color: var(--color-theme-900);\n `}\n }\n\n ${(props) =>\n props.$active &&\n css`\n color: var(--color-primary);\n `}\n`;\n\nStyledCounterButtonLabel.displayName = \"StyledCounterButtonLabel\";\n"],"mappings":"AAAA,OAAOA,MAAM,IAAIC,GAAG,QAAQ,mBAAmB;AAE/C,SAASC,KAAK,QAAQ,8BAA8B;AACpD,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,cAAc,QAAQ,mBAAmB;AAClD,SAASC,SAAS,QAAQ,cAAc;AAOxC,OAAO,IAAMC,0BAA0B,GAAGN,MAAM,CAACO,GAAG;EAAA;EAAA;AAAA,0CAC9C;EAAA;AAAQ,CAAC,EACXF,SAAS,EACTD,cAAc,CAEjB;AAEDE,0BAA0B,CAACE,WAAW,GAAG,4BAA4B;AAErE,OAAO,IAAMC,mBAAmB,GAAGT,MAAM,CAACG,MAAM,CAAC;EAAA;EAAA;AAAA,uBAC7C,UAACO,KAAK;EAAA,OACNA,KAAK,CAACC,OAAO,IACb,CAACD,KAAK,CAACE,QAAQ,IACfX,GAAG,gGAUF;AAAA,GAED,UAACS,KAAK;EAAA,OACNA,KAAK,CAACG,SAAS,IACfZ,GAAG,uGAIF;AAAA,GAEC,UAACS,KAAK;EAAA,OACRA,KAAK,CAACE,QAAQ,IACdX,GAAG,sCAGF;AAAA,EACJ;AAEDQ,mBAAmB,CAACD,WAAW,GAAG,qBAAqB;AAEvD,OAAO,IAAMM,0BAA0B,GAAGd,MAAM,CAACO,GAAG;EAAA;EAAA;AAAA,6MAWnD;AAEDO,0BAA0B,CAACN,WAAW,GAAG,4BAA4B;AAErE,OAAO,IAAMO,wBAAwB,GAAGf,MAAM,CAACG,MAAM,CAAC;EAAA;EAAA;AAAA,+NAWrD;AAEDY,wBAAwB,CAACP,WAAW,GAAG,0BAA0B;AAEjE,OAAO,IAAMQ,wBAAwB,GAAGhB,MAAM,CAACE,KAAK,CAAC;EAAA;EAAA;AAAA,qCAC/C;EAAA;AAAuB,CAAC,EAE1BO,mBAAmB,EACjB,UAACC,KAAK;EAAA,OACN,CAACA,KAAK,CAACC,OAAO,IACdV,GAAG,mCAEF;AAAA,GAGH,UAACS,KAAK;EAAA,OACNA,KAAK,CAACC,OAAO,IACbV,GAAG,iCAEF;AAAA,EACJ;AAEDe,wBAAwB,CAACR,WAAW,GAAG,0BAA0B"}
@@ -1,4 +1,5 @@
1
- import { FC } from "react";
1
+ import { FC, ReactElement } from "react";
2
+ import { Placement } from "@popperjs/core";
2
3
  import { IOptionGroupProps, IOptionItemProps } from "../Select";
3
4
  export declare type DataType = {
4
5
  id: number | string;
@@ -31,6 +32,12 @@ export interface FilterProps {
31
32
  noResultText: string;
32
33
  /** Text to show when there are no submenus to display */
33
34
  emptyFilterText?: string;
35
+ /** Position of the dropped menu. */
36
+ position?: Placement;
37
+ /** Icon of the trigger element. */
38
+ icon?: ReactElement;
39
+ /** Disabled state of the trigger. */
40
+ disabled?: boolean;
34
41
  }
35
42
  export declare const Filter: FC<FilterProps>;
36
43
  //# sourceMappingURL=Filter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../../src/components/Filter/Filter.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAA6C,MAAM,OAAO,CAAC;AAK7E,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAU,MAAM,WAAW,CAAC;AAMxE,oBAAY,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;CACvB,CAAC;AAEF,oBAAY,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;CAC1B;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,WAAW,CA4MlC,CAAC"}
1
+ {"version":3,"file":"Filter.d.ts","sourceRoot":"","sources":["../../../../src/components/Filter/Filter.tsx"],"names":[],"mappings":"AAAA,OAAc,EACZ,EAAE,EACF,YAAY,EAKb,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAI3C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAU,MAAM,WAAW,CAAC;AAMxE,oBAAY,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;CACvB,CAAC;AAEF,oBAAY,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;CACpB;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,WAAW,CAgNlC,CAAC"}
@@ -25,7 +25,13 @@ export var Filter = function Filter(_ref) {
25
25
  width = _ref$width === void 0 ? 260 : _ref$width,
26
26
  noResultText = _ref.noResultText,
27
27
  emptyFilterText = _ref.emptyFilterText,
28
- children = _ref.children;
28
+ children = _ref.children,
29
+ _ref$icon = _ref.icon,
30
+ icon = _ref$icon === void 0 ? /*#__PURE__*/React.createElement(FilterIcon, null) : _ref$icon,
31
+ _ref$position = _ref.position,
32
+ position = _ref$position === void 0 ? "bottom-end" : _ref$position,
33
+ _ref$disabled = _ref.disabled,
34
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled;
29
35
  var _useState = useState(false),
30
36
  open = _useState[0],
31
37
  setOpen = _useState[1];
@@ -118,14 +124,15 @@ export var Filter = function Filter(_ref) {
118
124
  open: open,
119
125
  onOpen: handleOpen,
120
126
  onClose: handleClose,
121
- position: "bottom-end",
127
+ position: position,
122
128
  target: /*#__PURE__*/React.createElement(CounterButton, {
123
129
  active: open,
124
130
  label: label,
125
- icon: /*#__PURE__*/React.createElement(FilterIcon, null),
131
+ icon: icon,
126
132
  counter: count,
127
133
  tooltipText: clearAllText,
128
- onClearAll: handleClearAll
134
+ onClearAll: handleClearAll,
135
+ disabled: disabled
129
136
  })
130
137
  }, /*#__PURE__*/React.createElement(ResizeTransition, {
131
138
  in: true
@@ -1 +1 @@
1
- {"version":3,"file":"Filter.js","names":["React","useCallback","useEffect","useMemo","useState","MoveFocusInside","Button","CounterButton","FilterIcon","Select","ResizeTransition","SlideLeftRightTransition","StartMenu","StyledMenu","StyledMenuFooter","Submenu","Filter","data","selected","label","clearAllText","resetLabel","onChange","width","noResultText","emptyFilterText","children","open","setOpen","menu","setMenu","isLeft","setIsLeft","height","setHeight","enteredMenu","setEnteredMenu","filter","setFilter","Object","keys","length","handleOpen","handleClose","handleHeight","element","offsetHeight","handleItemClick","value","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","count","c","values","forEach","entry","shouldRenderSubmenus","submenu","map","index","id","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","Boolean"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, { FC, useCallback, useEffect, useMemo, useState } from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\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};\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}\n\nexport const Filter: FC<FilterProps> = ({\n data,\n selected = {},\n label,\n clearAllText,\n resetLabel = \"Reset\",\n onChange,\n width = 260,\n noResultText,\n emptyFilterText,\n children,\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 Object.values(filter).forEach((entry) => (c += entry.length));\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=\"bottom-end\"\n target={\n <CounterButton\n active={open}\n label={label}\n icon={<FilterIcon />}\n counter={count}\n tooltipText={clearAllText}\n onClearAll={handleClearAll}\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 }: 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 />\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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"}
1
+ {"version":3,"file":"Filter.js","names":["React","useCallback","useEffect","useMemo","useState","MoveFocusInside","Button","CounterButton","FilterIcon","Select","ResizeTransition","SlideLeftRightTransition","StartMenu","StyledMenu","StyledMenuFooter","Submenu","Filter","data","selected","label","clearAllText","resetLabel","onChange","width","noResultText","emptyFilterText","children","icon","position","disabled","open","setOpen","menu","setMenu","isLeft","setIsLeft","height","setHeight","enteredMenu","setEnteredMenu","filter","setFilter","Object","keys","length","handleOpen","handleClose","handleHeight","element","offsetHeight","handleItemClick","value","setIndex","handleChange","selectedArray","newFilters","handleClearAll","event","stopPropagation","handleReset","count","c","values","forEach","entry","shouldRenderSubmenus","submenu","map","index","id","title","searchPlaceholder","disableInternalSort","isSingleSelect","defaultValue","Boolean"],"sources":["../../../../src/components/Filter/Filter.tsx"],"sourcesContent":["import React, {\n FC,\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { MoveFocusInside } from \"react-focus-lock\";\nimport { Placement } from \"@popperjs/core\";\nimport { Button } from \"../Button\";\nimport { CounterButton } from \"../CounterButton\";\nimport { FilterIcon } from \"../Icons\";\nimport { IOptionGroupProps, IOptionItemProps, Select } from \"../Select\";\nimport { ResizeTransition, SlideLeftRightTransition } from \"../Transitions\";\nimport { StartMenu } from \"./StartMenu\";\nimport { StyledMenu, StyledMenuFooter } from \"./Styles\";\nimport { Submenu } from \"./Submenu\";\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};\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}\n\nexport const Filter: FC<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}) => {\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 Object.values(filter).forEach((entry) => (c += entry.length));\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 />\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 }: 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 />\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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"}
@@ -0,0 +1,23 @@
1
+ import React from "react";
2
+ /**
3
+ * @component MoveIcon
4
+ * @description
5
+ *
6
+ * The React Icon component is a visual element that displays an icon to represent a concept, object, or action.
7
+ * The Icon component is
8
+ * customizable, allowing for variations in size, color, and style to fit the needs of the application.
9
+ *
10
+ *
11
+ * @example
12
+ * return (
13
+ * <MoveIcon className="mr-2" />
14
+ * )
15
+ *
16
+ * @see
17
+ * https://system.activecollab.com/?path=/story/foundation-icons-icons--icons
18
+ * @see
19
+ * https://design.activecollab.com/docs/foundations/icons
20
+ */
21
+ declare const MoveIcon: React.ForwardRefExoticComponent<Pick<React.SVGProps<SVGSVGElement>, "string" | "style" | "clipPath" | "filter" | "mask" | "path" | "key" | "css" | "name" | "type" | "className" | "id" | "lang" | "tabIndex" | "role" | "color" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "tw" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "height" | "max" | "media" | "method" | "min" | "target" | "width" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "alignmentBaseline" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "azimuth" | "baseFrequency" | "baselineShift" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clip" | "clipPathUnits" | "clipRule" | "colorInterpolation" | "colorInterpolationFilters" | "colorProfile" | "colorRendering" | "contentScriptType" | "contentStyleType" | "cursor" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "direction" | "display" | "divisor" | "dominantBaseline" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "end" | "exponent" | "externalResourcesRequired" | "fill" | "fillOpacity" | "fillRule" | "filterRes" | "filterUnits" | "floodColor" | "floodOpacity" | "focusable" | "fontFamily" | "fontSize" | "fontSizeAdjust" | "fontStretch" | "fontStyle" | "fontVariant" | "fontWeight" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphOrientationVertical" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "href" | "imageRendering" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "letterSpacing" | "lightingColor" | "limitingConeAngle" | "local" | "markerEnd" | "markerHeight" | "markerMid" | "markerStart" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "mode" | "numOctaves" | "offset" | "opacity" | "operator" | "order" | "orient" | "orientation" | "origin" | "overflow" | "overlinePosition" | "overlineThickness" | "paintOrder" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "pointerEvents" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rotate" | "rx" | "ry" | "scale" | "seed" | "shapeRendering" | "slope" | "spacing" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "stopColor" | "stopOpacity" | "strikethroughPosition" | "strikethroughThickness" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textAnchor" | "textDecoration" | "textLength" | "textRendering" | "to" | "transform" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeBidi" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "values" | "vectorEffect" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "visibility" | "vMathematical" | "widths" | "wordSpacing" | "writingMode" | "x1" | "x2" | "x" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "y" | "yChannelSelector" | "z" | "zoomAndPan"> & React.RefAttributes<SVGSVGElement>>;
22
+ export default MoveIcon;
23
+ //# sourceMappingURL=Move.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Move.d.ts","sourceRoot":"","sources":["../../../../../src/components/Icons/collection/Move.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,QAAQ,qlPAoBb,CAAC;AAEF,eAAe,QAAQ,CAAC"}