@chayns-components/core 5.0.0-beta.173 → 5.0.0-beta.175

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 (57) hide show
  1. package/lib/components/combobox/ComboBox.js +45 -35
  2. package/lib/components/combobox/ComboBox.js.map +1 -1
  3. package/lib/components/combobox/ComboBox.styles.d.ts +3 -1
  4. package/lib/components/combobox/ComboBox.styles.js +12 -6
  5. package/lib/components/combobox/ComboBox.styles.js.map +1 -1
  6. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.d.ts +3 -1
  7. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.js +6 -0
  8. package/lib/components/combobox/combobox-item/ComboBoxItem.styles.js.map +1 -1
  9. package/lib/components/filter-button/FilterButton.d.ts +22 -0
  10. package/lib/components/filter-button/FilterButton.js +89 -0
  11. package/lib/components/filter-button/FilterButton.js.map +1 -0
  12. package/lib/components/filter-button/FilterButton.styles.d.ts +1 -0
  13. package/lib/components/filter-button/FilterButton.styles.js +15 -0
  14. package/lib/components/filter-button/FilterButton.styles.js.map +1 -0
  15. package/lib/components/filter-button/filter-button-item/FilterButtonItem.d.ts +14 -0
  16. package/lib/components/filter-button/filter-button-item/FilterButtonItem.js +48 -0
  17. package/lib/components/filter-button/filter-button-item/FilterButtonItem.js.map +1 -0
  18. package/lib/components/filter-button/filter-button-item/FilterButtonItem.styles.d.ts +26 -0
  19. package/lib/components/filter-button/filter-button-item/FilterButtonItem.styles.js +109 -0
  20. package/lib/components/filter-button/filter-button-item/FilterButtonItem.styles.js.map +1 -0
  21. package/lib/components/filter-button/interface.d.ts +15 -0
  22. package/lib/components/filter-button/interface.js +19 -0
  23. package/lib/components/filter-button/interface.js.map +1 -0
  24. package/lib/components/search-box/SearchBox.d.ts +26 -0
  25. package/lib/components/search-box/SearchBox.js +149 -0
  26. package/lib/components/search-box/SearchBox.js.map +1 -0
  27. package/lib/components/search-box/SearchBox.styles.d.ts +6 -0
  28. package/lib/components/search-box/SearchBox.styles.js +51 -0
  29. package/lib/components/search-box/SearchBox.styles.js.map +1 -0
  30. package/lib/components/search-box/interface.d.ts +4 -0
  31. package/lib/components/search-box/interface.js +6 -0
  32. package/lib/components/search-box/interface.js.map +1 -0
  33. package/lib/components/search-box/search-box-item/SearchBoxItem.d.ts +9 -0
  34. package/lib/components/search-box/search-box-item/SearchBoxItem.js +30 -0
  35. package/lib/components/search-box/search-box-item/SearchBoxItem.js.map +1 -0
  36. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.d.ts +6 -0
  37. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.js +30 -0
  38. package/lib/components/search-box/search-box-item/SearchBoxItem.styles.js.map +1 -0
  39. package/lib/components/search-box/utils.d.ts +7 -0
  40. package/lib/components/search-box/utils.js +23 -0
  41. package/lib/components/search-box/utils.js.map +1 -0
  42. package/lib/components/sharing-bar/SharingBar.d.ts +9 -0
  43. package/lib/components/sharing-bar/SharingBar.js +12 -9
  44. package/lib/components/sharing-bar/SharingBar.js.map +1 -1
  45. package/lib/components/sharing-bar/SharingBar.styles.d.ts +3 -1
  46. package/lib/components/sharing-bar/SharingBar.styles.js +8 -1
  47. package/lib/components/sharing-bar/SharingBar.styles.js.map +1 -1
  48. package/lib/components/slider/Slider.js +1 -1
  49. package/lib/components/slider/Slider.js.map +1 -1
  50. package/lib/index.d.ts +4 -0
  51. package/lib/index.js +14 -0
  52. package/lib/index.js.map +1 -1
  53. package/lib/{components/combobox/utils.js → utils/calculate.js} +1 -1
  54. package/lib/utils/calculate.js.map +1 -0
  55. package/package.json +2 -2
  56. package/lib/components/combobox/utils.js.map +0 -1
  57. /package/lib/{components/combobox/utils.d.ts → utils/calculate.d.ts} +0 -0
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
+ var _calculate = require("../../utils/calculate");
8
9
  var _Icon = _interopRequireDefault(require("../icon/Icon"));
9
10
  var _ComboBoxItem = _interopRequireDefault(require("./combobox-item/ComboBoxItem"));
10
11
  var _ComboBox = require("./ComboBox.styles");
11
- var _utils = require("./utils");
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
14
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -20,13 +20,13 @@ const ComboBox = _ref => {
20
20
  selectedItem
21
21
  } = _ref;
22
22
  const [item, setItem] = (0, _react.useState)();
23
- const [isAnimation, setIsAnimation] = (0, _react.useState)(false);
23
+ const [isAnimating, setIsAnimating] = (0, _react.useState)(false);
24
24
  const [minWidth, setMinWidth] = (0, _react.useState)(0);
25
25
  const [height, setHeight] = (0, _react.useState)(0);
26
26
  const ref = (0, _react.useRef)(null);
27
27
  const handleClick = (0, _react.useCallback)(event => {
28
28
  if (ref.current && !ref.current.contains(event.target)) {
29
- setIsAnimation(false);
29
+ setIsAnimating(false);
30
30
  }
31
31
  }, [ref]);
32
32
  (0, _react.useEffect)(() => {
@@ -41,7 +41,7 @@ const ComboBox = _ref => {
41
41
  */
42
42
  const handleSetSelectedItem = (0, _react.useCallback)(itemToSelect => {
43
43
  setItem(itemToSelect);
44
- setIsAnimation(false);
44
+ setIsAnimating(false);
45
45
  if (onSelect) {
46
46
  onSelect(itemToSelect);
47
47
  }
@@ -57,9 +57,9 @@ const ComboBox = _ref => {
57
57
  } = _ref2;
58
58
  return text;
59
59
  });
60
- setHeight((0, _utils.calculateContentHeight)(textArray));
60
+ setHeight((0, _calculate.calculateContentHeight)(textArray));
61
61
  textArray.push(placeholder);
62
- setMinWidth((0, _utils.calculateContentWidth)(textArray) + 45);
62
+ setMinWidth((0, _calculate.calculateContentWidth)(textArray) + 45);
63
63
  }, [list, placeholder]);
64
64
 
65
65
  /**
@@ -91,40 +91,50 @@ const ComboBox = _ref => {
91
91
  return items;
92
92
  }, [handleSetSelectedItem, list]);
93
93
 
94
+ /**
95
+ * This function resets the placeholder
96
+ */
97
+ const placeholderText = (0, _react.useMemo)(() => {
98
+ let text = placeholder;
99
+ if (!selectedItem) {
100
+ text = placeholder;
101
+ } else if (item !== null && item !== void 0 && item.text) {
102
+ text = item.text;
103
+ }
104
+ return text;
105
+ }, [item === null || item === void 0 ? void 0 : item.text, placeholder, selectedItem]);
106
+
94
107
  /**
95
108
  * This function opens the content of the combobox
96
109
  */
97
110
  const handleHeaderClick = () => {
98
- setIsAnimation(prevState => !prevState);
111
+ setIsAnimating(prevState => !prevState);
99
112
  };
100
- return (0, _react.useMemo)(() => {
101
- var _item$text;
102
- return /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBox, {
103
- ref: ref
104
- }, /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxHeader, {
105
- minWidth: minWidth,
106
- onClick: handleHeaderClick,
107
- isOpen: isAnimation
108
- }, /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxPlaceholder, null, (_item$text = item === null || item === void 0 ? void 0 : item.text) !== null && _item$text !== void 0 ? _item$text : placeholder), /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxIconWrapper, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
109
- icons: ['fa fa-chevron-down']
110
- }))), /*#__PURE__*/_react.default.createElement(_ComboBox.StyledMotionComboBoxBody, {
111
- height: height,
112
- initial: {
113
- height: 0,
114
- opacity: 0
115
- },
116
- animate: isAnimation ? {
117
- height: 'fit-content',
118
- opacity: 1
119
- } : {
120
- height: 0,
121
- opacity: 0
122
- },
123
- transition: {
124
- duration: 0.2
125
- }
126
- }, content));
127
- }, [content, isAnimation, item === null || item === void 0 ? void 0 : item.text, minWidth, placeholder]);
113
+ return (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBox, {
114
+ ref: ref
115
+ }, /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxHeader, {
116
+ minWidth: minWidth,
117
+ onClick: handleHeaderClick,
118
+ isOpen: isAnimating
119
+ }, /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxPlaceholder, null, placeholderText), /*#__PURE__*/_react.default.createElement(_ComboBox.StyledComboBoxIconWrapper, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
120
+ icons: ['fa fa-chevron-down']
121
+ }))), /*#__PURE__*/_react.default.createElement(_ComboBox.StyledMotionComboBoxBody, {
122
+ height: height,
123
+ initial: {
124
+ height: 0,
125
+ opacity: 0
126
+ },
127
+ animate: isAnimating ? {
128
+ height: 'fit-content',
129
+ opacity: 1
130
+ } : {
131
+ height: 0,
132
+ opacity: 0
133
+ },
134
+ transition: {
135
+ duration: 0.2
136
+ }
137
+ }, content)), [content, height, isAnimating, item === null || item === void 0 ? void 0 : item.text, minWidth, placeholder]);
128
138
  };
129
139
  ComboBox.displayName = 'ComboBox';
130
140
  var _default = ComboBox;
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.js","names":["_react","_interopRequireWildcard","require","_Icon","_interopRequireDefault","_ComboBoxItem","_ComboBox","_utils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ComboBox","_ref","placeholder","list","onSelect","selectedItem","item","setItem","useState","isAnimation","setIsAnimation","minWidth","setMinWidth","height","setHeight","ref","useRef","handleClick","useCallback","event","current","contains","target","useEffect","document","addEventListener","removeEventListener","handleSetSelectedItem","itemToSelect","textArray","map","_ref2","text","calculateContentHeight","push","calculateContentWidth","content","useMemo","items","forEach","_ref3","value","createElement","handleHeaderClick","prevState","_item$text","StyledComboBox","StyledComboBoxHeader","onClick","isOpen","StyledComboBoxPlaceholder","StyledComboBoxIconWrapper","icons","StyledMotionComboBoxBody","initial","opacity","animate","transition","duration","displayName","_default","exports"],"sources":["../../../src/components/combobox/ComboBox.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport Icon from '../icon/Icon';\nimport ComboBoxItem from './combobox-item/ComboBoxItem';\nimport {\n StyledComboBox,\n StyledComboBoxHeader,\n StyledComboBoxIconWrapper,\n StyledComboBoxPlaceholder,\n StyledMotionComboBoxBody,\n} from './ComboBox.styles';\nimport { calculateContentHeight, calculateContentWidth } from './utils';\n\nexport interface IComboBoxItem {\n text: string;\n value: string | number;\n}\n\nexport type ComboBoxProps = {\n /**\n * The list of the items that should be displayed.\n */\n list: IComboBoxItem[];\n /**\n * Function that should be executed when an item is selected.\n */\n onSelect?: (comboboxItem: IComboBoxItem) => void;\n /**\n * A text that should be displayed when no item is selected.\n */\n placeholder: string;\n /**\n * An item that should be preselected.\n */\n selectedItem?: IComboBoxItem;\n};\n\nconst ComboBox: FC<ComboBoxProps> = ({ placeholder, list, onSelect, selectedItem }) => {\n const [item, setItem] = useState<IComboBoxItem>();\n const [isAnimation, setIsAnimation] = useState(false);\n const [minWidth, setMinWidth] = useState(0);\n const [height, setHeight] = useState(0);\n\n const ref = useRef<HTMLDivElement>(null);\n\n const handleClick = useCallback(\n (event: MouseEvent) => {\n if (ref.current && !ref.current.contains(event.target as Node)) {\n setIsAnimation(false);\n }\n },\n [ref]\n );\n\n useEffect(() => {\n document.addEventListener('click', handleClick);\n\n return () => {\n document.removeEventListener('click', handleClick);\n };\n }, [handleClick, ref]);\n\n /**\n * This function sets the selected item\n */\n const handleSetSelectedItem = useCallback(\n (itemToSelect: IComboBoxItem) => {\n setItem(itemToSelect);\n setIsAnimation(false);\n\n if (onSelect) {\n onSelect(itemToSelect);\n }\n },\n [onSelect]\n );\n\n /**\n * This function calculates the greatest width\n */\n useEffect(() => {\n const textArray = list.map(({ text }) => text);\n\n setHeight(calculateContentHeight(textArray));\n\n textArray.push(placeholder);\n\n setMinWidth(calculateContentWidth(textArray) + 45);\n }, [list, placeholder]);\n\n /**\n * This function sets the external selected item\n */\n useEffect(() => {\n if (selectedItem) {\n handleSetSelectedItem(selectedItem);\n }\n }, [handleSetSelectedItem, selectedItem]);\n\n /**\n * Function that renders the combobox items\n */\n const content = useMemo(() => {\n const items: ReactNode[] = [];\n\n list.forEach(({ text, value }) => {\n items.push(\n <ComboBoxItem\n key={value}\n value={value}\n text={text}\n onSelect={handleSetSelectedItem}\n />\n );\n });\n\n return items;\n }, [handleSetSelectedItem, list]);\n\n /**\n * This function opens the content of the combobox\n */\n const handleHeaderClick = () => {\n setIsAnimation((prevState) => !prevState);\n };\n\n return useMemo(\n () => (\n <StyledComboBox ref={ref}>\n <StyledComboBoxHeader\n minWidth={minWidth}\n onClick={handleHeaderClick}\n isOpen={isAnimation}\n >\n <StyledComboBoxPlaceholder>\n {item?.text ?? placeholder}\n </StyledComboBoxPlaceholder>\n <StyledComboBoxIconWrapper>\n <Icon icons={['fa fa-chevron-down']} />\n </StyledComboBoxIconWrapper>\n </StyledComboBoxHeader>\n <StyledMotionComboBoxBody\n height={height}\n initial={{ height: 0, opacity: 0 }}\n animate={\n isAnimation\n ? { height: 'fit-content', opacity: 1 }\n : { height: 0, opacity: 0 }\n }\n transition={{\n duration: 0.2,\n }}\n >\n {content}\n </StyledMotionComboBoxBody>\n </StyledComboBox>\n ),\n [content, isAnimation, item?.text, minWidth, placeholder]\n );\n};\n\nComboBox.displayName = 'ComboBox';\n\nexport default ComboBox;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.js","names":["_react","_interopRequireWildcard","require","_calculate","_Icon","_interopRequireDefault","_ComboBoxItem","_ComboBox","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ComboBox","_ref","placeholder","list","onSelect","selectedItem","item","setItem","useState","isAnimating","setIsAnimating","minWidth","setMinWidth","height","setHeight","ref","useRef","handleClick","useCallback","event","current","contains","target","useEffect","document","addEventListener","removeEventListener","handleSetSelectedItem","itemToSelect","textArray","map","_ref2","text","calculateContentHeight","push","calculateContentWidth","content","useMemo","items","forEach","_ref3","value","createElement","placeholderText","handleHeaderClick","prevState","StyledComboBox","StyledComboBoxHeader","onClick","isOpen","StyledComboBoxPlaceholder","StyledComboBoxIconWrapper","icons","StyledMotionComboBoxBody","initial","opacity","animate","transition","duration","displayName","_default","exports"],"sources":["../../../src/components/combobox/ComboBox.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { calculateContentHeight, calculateContentWidth } from '../../utils/calculate';\nimport Icon from '../icon/Icon';\nimport ComboBoxItem from './combobox-item/ComboBoxItem';\nimport {\n StyledComboBox,\n StyledComboBoxHeader,\n StyledComboBoxIconWrapper,\n StyledComboBoxPlaceholder,\n StyledMotionComboBoxBody,\n} from './ComboBox.styles';\n\nexport interface IComboBoxItem {\n text: string;\n value: string | number;\n}\n\nexport type ComboBoxProps = {\n /**\n * The list of the items that should be displayed.\n */\n list: IComboBoxItem[];\n /**\n * Function that should be executed when an item is selected.\n */\n onSelect?: (comboboxItem: IComboBoxItem) => void;\n /**\n * A text that should be displayed when no item is selected.\n */\n placeholder: string;\n /**\n * An item that should be preselected.\n */\n selectedItem?: IComboBoxItem;\n};\n\nconst ComboBox: FC<ComboBoxProps> = ({ placeholder, list, onSelect, selectedItem }) => {\n const [item, setItem] = useState<IComboBoxItem>();\n const [isAnimating, setIsAnimating] = useState(false);\n const [minWidth, setMinWidth] = useState(0);\n const [height, setHeight] = useState(0);\n\n const ref = useRef<HTMLDivElement>(null);\n\n const handleClick = useCallback(\n (event: MouseEvent) => {\n if (ref.current && !ref.current.contains(event.target as Node)) {\n setIsAnimating(false);\n }\n },\n [ref]\n );\n\n useEffect(() => {\n document.addEventListener('click', handleClick);\n\n return () => {\n document.removeEventListener('click', handleClick);\n };\n }, [handleClick, ref]);\n\n /**\n * This function sets the selected item\n */\n const handleSetSelectedItem = useCallback(\n (itemToSelect: IComboBoxItem) => {\n setItem(itemToSelect);\n setIsAnimating(false);\n\n if (onSelect) {\n onSelect(itemToSelect);\n }\n },\n [onSelect]\n );\n\n /**\n * This function calculates the greatest width\n */\n useEffect(() => {\n const textArray = list.map(({ text }) => text);\n\n setHeight(calculateContentHeight(textArray));\n\n textArray.push(placeholder);\n\n setMinWidth(calculateContentWidth(textArray) + 45);\n }, [list, placeholder]);\n\n /**\n * This function sets the external selected item\n */\n useEffect(() => {\n if (selectedItem) {\n handleSetSelectedItem(selectedItem);\n }\n }, [handleSetSelectedItem, selectedItem]);\n\n /**\n * Function that renders the combobox items\n */\n const content = useMemo(() => {\n const items: ReactNode[] = [];\n\n list.forEach(({ text, value }) => {\n items.push(\n <ComboBoxItem\n key={value}\n value={value}\n text={text}\n onSelect={handleSetSelectedItem}\n />\n );\n });\n\n return items;\n }, [handleSetSelectedItem, list]);\n\n /**\n * This function resets the placeholder\n */\n const placeholderText = useMemo(() => {\n let text = placeholder;\n\n if (!selectedItem) {\n text = placeholder;\n } else if (item?.text) {\n text = item.text;\n }\n\n return text;\n }, [item?.text, placeholder, selectedItem]);\n\n /**\n * This function opens the content of the combobox\n */\n const handleHeaderClick = () => {\n setIsAnimating((prevState) => !prevState);\n };\n\n return useMemo(\n () => (\n <StyledComboBox ref={ref}>\n <StyledComboBoxHeader\n minWidth={minWidth}\n onClick={handleHeaderClick}\n isOpen={isAnimating}\n >\n <StyledComboBoxPlaceholder>{placeholderText}</StyledComboBoxPlaceholder>\n <StyledComboBoxIconWrapper>\n <Icon icons={['fa fa-chevron-down']} />\n </StyledComboBoxIconWrapper>\n </StyledComboBoxHeader>\n <StyledMotionComboBoxBody\n height={height}\n initial={{ height: 0, opacity: 0 }}\n animate={\n isAnimating\n ? { height: 'fit-content', opacity: 1 }\n : { height: 0, opacity: 0 }\n }\n transition={{\n duration: 0.2,\n }}\n >\n {content}\n </StyledMotionComboBoxBody>\n </StyledComboBox>\n ),\n [content, height, isAnimating, item?.text, minWidth, placeholder]\n );\n};\n\nComboBox.displayName = 'ComboBox';\n\nexport default ComboBox;\n"],"mappings":"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"}
@@ -5,7 +5,9 @@ export declare const StyledComboBoxHeader: import("styled-components").StyledCom
5
5
  } & {
6
6
  theme: import("../color-scheme-provider/ColorSchemeProvider").Theme;
7
7
  }, never>;
8
- export declare const StyledComboBoxPlaceholder: import("styled-components").StyledComponent<"p", any, {}, never>;
8
+ export declare const StyledComboBoxPlaceholder: import("styled-components").StyledComponent<"p", any, {
9
+ theme: import("../color-scheme-provider/ColorSchemeProvider").Theme;
10
+ }, never>;
9
11
  export declare const StyledComboBoxIconWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
10
12
  export declare const StyledMotionComboBoxBody: import("styled-components").StyledComponent<import("framer-motion").ForwardRefComponent<HTMLDivElement, import("framer-motion").HTMLMotionProps<"div">>, any, {
11
13
  height: number;
@@ -60,6 +60,12 @@ const StyledComboBoxHeader = _styledComponents.default.div`
60
60
  `;
61
61
  exports.StyledComboBoxHeader = StyledComboBoxHeader;
62
62
  const StyledComboBoxPlaceholder = _styledComponents.default.p`
63
+ color: ${_ref6 => {
64
+ let {
65
+ theme
66
+ } = _ref6;
67
+ return theme.text;
68
+ }};
63
69
  margin: 0;
64
70
  `;
65
71
  exports.StyledComboBoxPlaceholder = StyledComboBoxPlaceholder;
@@ -68,10 +74,10 @@ const StyledComboBoxIconWrapper = _styledComponents.default.div`
68
74
  `;
69
75
  exports.StyledComboBoxIconWrapper = StyledComboBoxIconWrapper;
70
76
  const StyledMotionComboBoxBody = (0, _styledComponents.default)(_framerMotion.motion.div)`
71
- background: ${_ref6 => {
77
+ background: ${_ref7 => {
72
78
  let {
73
79
  theme
74
- } = _ref6;
80
+ } = _ref7;
75
81
  return theme['001'];
76
82
  }};
77
83
  display: flex;
@@ -82,16 +88,16 @@ const StyledMotionComboBoxBody = (0, _styledComponents.default)(_framerMotion.mo
82
88
  border-top: none;
83
89
  cursor: pointer;
84
90
  max-height: 300px;
85
- overflow-y: ${_ref7 => {
91
+ overflow-y: ${_ref8 => {
86
92
  let {
87
93
  height
88
- } = _ref7;
94
+ } = _ref8;
89
95
  return height <= 300 ? 'hidden' : 'auto';
90
96
  }};
91
- box-shadow: 0 0 0 1px rgba(${_ref8 => {
97
+ box-shadow: 0 0 0 1px rgba(${_ref9 => {
92
98
  let {
93
99
  theme
94
- } = _ref8;
100
+ } = _ref9;
95
101
  return theme['009-rgb'];
96
102
  }}, 0.08)
97
103
  inset;
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBox.styles.js","names":["_framerMotion","require","_styledComponents","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","StyledComboBox","styled","div","exports","StyledComboBoxHeader","_ref","theme","_ref2","minWidth","_ref3","_ref4","isOpen","css","_ref5","StyledComboBoxPlaceholder","p","StyledComboBoxIconWrapper","StyledMotionComboBoxBody","motion","_ref6","_ref7","height","_ref8"],"sources":["../../../src/components/combobox/ComboBox.styles.ts"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\n\nexport const StyledComboBox = styled.div`\n width: fit-content;\n`;\n\ntype StyledComboBoxHeaderProps = WithTheme<{\n isOpen: boolean;\n minWidth: number;\n}>;\n\nexport const StyledComboBoxHeader = styled.div<StyledComboBoxHeaderProps>`\n display: flex;\n justify-content: space-between;\n border: 1px solid rgba(160, 160, 160, 0.3);\n padding: 8px 10px;\n cursor: pointer;\n background: ${({ theme }: StyledComboBoxHeaderProps) => theme['001']};\n min-width: ${({ minWidth }) => minWidth}px;\n max-width: ${({ minWidth }) => minWidth}px;\n\n ${({ isOpen }) =>\n isOpen\n ? css`\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n `\n : css`\n border-radius: 3px;\n `}\n\n &:hover {\n background: ${({ theme }: StyledComboBoxHeaderProps) => theme['secondary-103']};\n }\n`;\n\nexport const StyledComboBoxPlaceholder = styled.p`\n margin: 0;\n`;\n\nexport const StyledComboBoxIconWrapper = styled.div`\n margin-left: 5px;\n`;\n\ntype StyledComboBoxBodyProps = WithTheme<{\n height: number;\n}>;\n\nexport const StyledMotionComboBoxBody = styled(motion.div)<StyledComboBoxBodyProps>`\n background: ${({ theme }: StyledComboBoxBodyProps) => theme['001']};\n display: flex;\n flex-direction: column;\n border: 1px solid rgba(160, 160, 160, 0.3);\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n border-top: none;\n cursor: pointer;\n max-height: 300px;\n overflow-y: ${({ height }) => (height <= 300 ? 'hidden' : 'auto')};\n box-shadow: 0 0 0 1px rgba(${({ theme }: StyledComboBoxBodyProps) => theme['009-rgb']}, 0.08)\n inset;\n\n &::-webkit-scrollbar {\n width: 5px;\n }\n\n &::-webkit-scrollbar-thumb {\n background: rgba(160, 160, 160, 1);\n }\n`;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ComboBox.styles.js","names":["_framerMotion","require","_styledComponents","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","StyledComboBox","styled","div","exports","StyledComboBoxHeader","_ref","theme","_ref2","minWidth","_ref3","_ref4","isOpen","css","_ref5","StyledComboBoxPlaceholder","p","_ref6","text","StyledComboBoxIconWrapper","StyledMotionComboBoxBody","motion","_ref7","_ref8","height","_ref9"],"sources":["../../../src/components/combobox/ComboBox.styles.ts"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\nimport type { WithTheme } from '../color-scheme-provider/ColorSchemeProvider';\n\nexport const StyledComboBox = styled.div`\n width: fit-content;\n`;\n\ntype StyledComboBoxHeaderProps = WithTheme<{\n isOpen: boolean;\n minWidth: number;\n}>;\n\nexport const StyledComboBoxHeader = styled.div<StyledComboBoxHeaderProps>`\n display: flex;\n justify-content: space-between;\n border: 1px solid rgba(160, 160, 160, 0.3);\n padding: 8px 10px;\n cursor: pointer;\n background: ${({ theme }: StyledComboBoxHeaderProps) => theme['001']};\n min-width: ${({ minWidth }) => minWidth}px;\n max-width: ${({ minWidth }) => minWidth}px;\n\n ${({ isOpen }) =>\n isOpen\n ? css`\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n `\n : css`\n border-radius: 3px;\n `}\n\n &:hover {\n background: ${({ theme }: StyledComboBoxHeaderProps) => theme['secondary-103']};\n }\n`;\n\ntype StyledComboBoxPlaceholderProps = WithTheme<unknown>;\n\nexport const StyledComboBoxPlaceholder = styled.p<StyledComboBoxPlaceholderProps>`\n color: ${({ theme }: StyledComboBoxPlaceholderProps) => theme.text};\n margin: 0;\n`;\n\nexport const StyledComboBoxIconWrapper = styled.div`\n margin-left: 5px;\n`;\n\ntype StyledComboBoxBodyProps = WithTheme<{\n height: number;\n}>;\n\nexport const StyledMotionComboBoxBody = styled(motion.div)<StyledComboBoxBodyProps>`\n background: ${({ theme }: StyledComboBoxBodyProps) => theme['001']};\n display: flex;\n flex-direction: column;\n border: 1px solid rgba(160, 160, 160, 0.3);\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n border-top: none;\n cursor: pointer;\n max-height: 300px;\n overflow-y: ${({ height }) => (height <= 300 ? 'hidden' : 'auto')};\n box-shadow: 0 0 0 1px rgba(${({ theme }: StyledComboBoxBodyProps) => theme['009-rgb']}, 0.08)\n inset;\n\n &::-webkit-scrollbar {\n width: 5px;\n }\n\n &::-webkit-scrollbar-thumb {\n background: rgba(160, 160, 160, 1);\n }\n`;\n"],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  export declare const StyledComboBoxItem: import("styled-components").StyledComponent<"div", any, {
2
2
  theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
3
3
  }, never>;
4
- export declare const StyledComboBoxItemText: import("styled-components").StyledComponent<"p", any, {}, never>;
4
+ export declare const StyledComboBoxItemText: import("styled-components").StyledComponent<"p", any, {
5
+ theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
6
+ }, never>;
@@ -18,6 +18,12 @@ const StyledComboBoxItem = _styledComponents.default.div`
18
18
  `;
19
19
  exports.StyledComboBoxItem = StyledComboBoxItem;
20
20
  const StyledComboBoxItemText = _styledComponents.default.p`
21
+ color: ${_ref2 => {
22
+ let {
23
+ theme
24
+ } = _ref2;
25
+ return theme.text;
26
+ }};
21
27
  margin: 5px;
22
28
  `;
23
29
  exports.StyledComboBoxItemText = StyledComboBoxItemText;
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBoxItem.styles.js","names":["_styledComponents","_interopRequireDefault","require","obj","__esModule","default","StyledComboBoxItem","styled","div","_ref","theme","exports","StyledComboBoxItemText","p"],"sources":["../../../../src/components/combobox/combobox-item/ComboBoxItem.styles.ts"],"sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledComboBoxItemProps = WithTheme<unknown>;\n\nexport const StyledComboBoxItem = styled.div<StyledComboBoxItemProps>`\n &:hover {\n background: ${({ theme }: StyledComboBoxItemProps) => theme['secondary-103']};\n }\n`;\n\nexport const StyledComboBoxItemText = styled.p`\n margin: 5px;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAKhC,MAAMG,kBAAkB,GAAGC,yBAAM,CAACC,GAA6B;AACtE;AACA,sBAAsBC,IAAA;EAAA,IAAC;IAAEC;EAA+B,CAAC,GAAAD,IAAA;EAAA,OAAKC,KAAK,CAAC,eAAe,CAAC;AAAA,CAAC;AACrF;AACA,CAAC;AAACC,OAAA,CAAAL,kBAAA,GAAAA,kBAAA;AAEK,MAAMM,sBAAsB,GAAGL,yBAAM,CAACM,CAAE;AAC/C;AACA,CAAC;AAACF,OAAA,CAAAC,sBAAA,GAAAA,sBAAA"}
1
+ {"version":3,"file":"ComboBoxItem.styles.js","names":["_styledComponents","_interopRequireDefault","require","obj","__esModule","default","StyledComboBoxItem","styled","div","_ref","theme","exports","StyledComboBoxItemText","p","_ref2","text"],"sources":["../../../../src/components/combobox/combobox-item/ComboBoxItem.styles.ts"],"sourcesContent":["import styled from 'styled-components';\nimport type { WithTheme } from '../../color-scheme-provider/ColorSchemeProvider';\n\ntype StyledComboBoxItemProps = WithTheme<unknown>;\n\nexport const StyledComboBoxItem = styled.div<StyledComboBoxItemProps>`\n &:hover {\n background: ${({ theme }: StyledComboBoxItemProps) => theme['secondary-103']};\n }\n`;\n\ntype StyledComboBoxItemTextProps = WithTheme<unknown>;\n\nexport const StyledComboBoxItemText = styled.p<StyledComboBoxItemTextProps>`\n color: ${({ theme }: StyledComboBoxItemTextProps) => theme.text};\n margin: 5px;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAKhC,MAAMG,kBAAkB,GAAGC,yBAAM,CAACC,GAA6B;AACtE;AACA,sBAAsBC,IAAA;EAAA,IAAC;IAAEC;EAA+B,CAAC,GAAAD,IAAA;EAAA,OAAKC,KAAK,CAAC,eAAe,CAAC;AAAA,CAAC;AACrF;AACA,CAAC;AAACC,OAAA,CAAAL,kBAAA,GAAAA,kBAAA;AAIK,MAAMM,sBAAsB,GAAGL,yBAAM,CAACM,CAA+B;AAC5E,aAAaC,KAAA;EAAA,IAAC;IAAEJ;EAAmC,CAAC,GAAAI,KAAA;EAAA,OAAKJ,KAAK,CAACK,IAAI;AAAA,CAAC;AACpE;AACA,CAAC;AAACJ,OAAA,CAAAC,sBAAA,GAAAA,sBAAA"}
@@ -0,0 +1,22 @@
1
+ import { FC } from 'react';
2
+ import { FilterButtonSize, IFilterButtonItem } from './interface';
3
+ export type FilterButtonProps = {
4
+ /**
5
+ * The items that should be displayed.
6
+ */
7
+ items: IFilterButtonItem[];
8
+ /**
9
+ * A function that should be executed when an item is selected.
10
+ */
11
+ onSelect?: (keys: string[]) => void;
12
+ /**
13
+ * The keys of items that should be selected.
14
+ */
15
+ selectedItemIds?: string[];
16
+ /**
17
+ * The size auf the filter buttons. Use the FilterButtonSize enum.
18
+ */
19
+ size?: FilterButtonSize;
20
+ };
21
+ declare const FilterButton: FC<FilterButtonProps>;
22
+ export default FilterButton;
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _FilterButtonItem = _interopRequireDefault(require("./filter-button-item/FilterButtonItem"));
9
+ var _FilterButton = require("./FilterButton.styles");
10
+ var _interface = require("./interface");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const FilterButton = _ref => {
15
+ let {
16
+ selectedItemIds,
17
+ onSelect,
18
+ items,
19
+ size = _interface.FilterButtonSize.Normal
20
+ } = _ref;
21
+ const [selectedIds, setSelectedIds] = (0, _react.useState)(['all']);
22
+
23
+ /**
24
+ * This function set the selectedItemKey
25
+ */
26
+ (0, _react.useEffect)(() => {
27
+ if (selectedItemIds) {
28
+ setSelectedIds(selectedItemIds);
29
+ }
30
+ }, [selectedItemIds]);
31
+
32
+ /**
33
+ * Function to update the selected items
34
+ */
35
+ const handleSelect = (0, _react.useCallback)(id => {
36
+ let newIds;
37
+ if (id === 'all') {
38
+ newIds = selectedIds.includes('all') ? [] : ['all'];
39
+ } else {
40
+ newIds = selectedIds.includes(id) ? selectedIds.filter(filteredId => filteredId !== id) : [...selectedIds.filter(filteredId => filteredId !== 'all'), id];
41
+ }
42
+ if (newIds.length === 0) {
43
+ newIds = ['all'];
44
+ }
45
+ setSelectedIds(newIds);
46
+ if (typeof onSelect === 'function') {
47
+ onSelect(newIds);
48
+ }
49
+ }, [onSelect, selectedIds]);
50
+ const reactItems = (0, _react.useMemo)(() => {
51
+ if (items.length === 0) {
52
+ return null;
53
+ }
54
+ const array = [/*#__PURE__*/_react.default.createElement(_FilterButtonItem.default, {
55
+ id: "all",
56
+ key: "all",
57
+ onSelect: handleSelect,
58
+ isSelected: selectedIds.includes('all'),
59
+ shape: _interface.FilterButtonItemShape.Rectangular,
60
+ size: size,
61
+ text: "Alle"
62
+ })];
63
+ items.forEach(_ref2 => {
64
+ let {
65
+ icons,
66
+ text,
67
+ color,
68
+ id
69
+ } = _ref2;
70
+ array.push( /*#__PURE__*/_react.default.createElement(_FilterButtonItem.default, {
71
+ color: color,
72
+ icons: icons,
73
+ id: id,
74
+ key: id,
75
+ onSelect: handleSelect,
76
+ isSelected: selectedIds.includes(id),
77
+ shape: _interface.FilterButtonItemShape.Round,
78
+ size: size,
79
+ text: text
80
+ }));
81
+ });
82
+ return array;
83
+ }, [handleSelect, items, selectedIds, size]);
84
+ return (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement(_FilterButton.StyledFilterButton, null, reactItems), [reactItems]);
85
+ };
86
+ FilterButton.displayName = 'FilterButton';
87
+ var _default = FilterButton;
88
+ exports.default = _default;
89
+ //# sourceMappingURL=FilterButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterButton.js","names":["_react","_interopRequireWildcard","require","_FilterButtonItem","_interopRequireDefault","_FilterButton","_interface","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","FilterButton","_ref","selectedItemIds","onSelect","items","size","FilterButtonSize","Normal","selectedIds","setSelectedIds","useState","useEffect","handleSelect","useCallback","id","newIds","includes","filter","filteredId","length","reactItems","useMemo","array","createElement","isSelected","shape","FilterButtonItemShape","Rectangular","text","forEach","_ref2","icons","color","push","Round","StyledFilterButton","displayName","_default","exports"],"sources":["../../../src/components/filter-button/FilterButton.tsx"],"sourcesContent":["import React, { FC, ReactElement, useCallback, useEffect, useMemo, useState } from 'react';\nimport FilterButtonItem from './filter-button-item/FilterButtonItem';\nimport { StyledFilterButton } from './FilterButton.styles';\nimport { FilterButtonItemShape, FilterButtonSize, IFilterButtonItem } from './interface';\n\nexport type FilterButtonProps = {\n /**\n * The items that should be displayed.\n */\n items: IFilterButtonItem[];\n /**\n * A function that should be executed when an item is selected.\n */\n onSelect?: (keys: string[]) => void;\n /**\n * The keys of items that should be selected.\n */\n selectedItemIds?: string[];\n /**\n * The size auf the filter buttons. Use the FilterButtonSize enum.\n */\n size?: FilterButtonSize;\n};\n\nconst FilterButton: FC<FilterButtonProps> = ({\n selectedItemIds,\n onSelect,\n items,\n size = FilterButtonSize.Normal,\n}) => {\n const [selectedIds, setSelectedIds] = useState<string[]>(['all']);\n\n /**\n * This function set the selectedItemKey\n */\n useEffect(() => {\n if (selectedItemIds) {\n setSelectedIds(selectedItemIds);\n }\n }, [selectedItemIds]);\n\n /**\n * Function to update the selected items\n */\n const handleSelect = useCallback(\n (id: string) => {\n let newIds: string[];\n\n if (id === 'all') {\n newIds = selectedIds.includes('all') ? [] : ['all'];\n } else {\n newIds = selectedIds.includes(id)\n ? selectedIds.filter((filteredId) => filteredId !== id)\n : [...selectedIds.filter((filteredId) => filteredId !== 'all'), id];\n }\n\n if (newIds.length === 0) {\n newIds = ['all'];\n }\n\n setSelectedIds(newIds);\n\n if (typeof onSelect === 'function') {\n onSelect(newIds);\n }\n },\n [onSelect, selectedIds]\n );\n\n const reactItems = useMemo(() => {\n if (items.length === 0) {\n return null;\n }\n\n const array: ReactElement[] = [\n <FilterButtonItem\n id=\"all\"\n key=\"all\"\n onSelect={handleSelect}\n isSelected={selectedIds.includes('all')}\n shape={FilterButtonItemShape.Rectangular}\n size={size}\n text=\"Alle\"\n />,\n ];\n\n items.forEach(({ icons, text, color, id }) => {\n array.push(\n <FilterButtonItem\n color={color}\n icons={icons}\n id={id}\n key={id}\n onSelect={handleSelect}\n isSelected={selectedIds.includes(id)}\n shape={FilterButtonItemShape.Round}\n size={size}\n text={text}\n />\n );\n });\n\n return array;\n }, [handleSelect, items, selectedIds, size]);\n\n return useMemo(() => <StyledFilterButton>{reactItems}</StyledFilterButton>, [reactItems]);\n};\n\nFilterButton.displayName = 'FilterButton';\n\nexport default FilterButton;\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const StyledFilterButton: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StyledFilterButton = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ const StyledFilterButton = _styledComponents.default.div`
10
+ display: flex;
11
+ flex-wrap: wrap;
12
+ gap: 10px;
13
+ `;
14
+ exports.StyledFilterButton = StyledFilterButton;
15
+ //# sourceMappingURL=FilterButton.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterButton.styles.js","names":["_styledComponents","_interopRequireDefault","require","obj","__esModule","default","StyledFilterButton","styled","div","exports"],"sources":["../../../src/components/filter-button/FilterButton.styles.ts"],"sourcesContent":["import styled from 'styled-components';\n\nexport const StyledFilterButton = styled.div`\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n`;\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAuC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEhC,MAAMG,kBAAkB,GAAGC,yBAAM,CAACC,GAAI;AAC7C;AACA;AACA;AACA,CAAC;AAACC,OAAA,CAAAH,kBAAA,GAAAA,kBAAA"}
@@ -0,0 +1,14 @@
1
+ import { CSSProperties, FC } from 'react';
2
+ import { FilterButtonItemShape, FilterButtonSize } from '../interface';
3
+ export type FilterButtonItemProps = {
4
+ color?: CSSProperties['color'];
5
+ icons?: string[];
6
+ isSelected: boolean;
7
+ shape: FilterButtonItemShape;
8
+ size: FilterButtonSize;
9
+ text: string;
10
+ id: string;
11
+ onSelect: (key: string) => void;
12
+ };
13
+ declare const FilterButtonItem: FC<FilterButtonItemProps>;
14
+ export default FilterButtonItem;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _Icon = _interopRequireDefault(require("../../icon/Icon"));
9
+ var _interface = require("../interface");
10
+ var _FilterButtonItem = require("./FilterButtonItem.styles");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ const FilterButtonItem = _ref => {
15
+ let {
16
+ icons,
17
+ size,
18
+ shape,
19
+ text,
20
+ color,
21
+ isSelected,
22
+ id,
23
+ onSelect
24
+ } = _ref;
25
+ const handleClick = (0, _react.useCallback)(() => {
26
+ onSelect(id);
27
+ }, [id, onSelect]);
28
+ return (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement(_FilterButtonItem.StyledFilterButtonItem, {
29
+ isSelected: isSelected,
30
+ size: size,
31
+ onClick: handleClick
32
+ }, /*#__PURE__*/_react.default.createElement(_FilterButtonItem.StyledFilterButtonItemLabel, null, icons && /*#__PURE__*/_react.default.createElement(_Icon.default, {
33
+ icons: icons,
34
+ size: size === _interface.FilterButtonSize.Normal ? 15 : 10
35
+ }), /*#__PURE__*/_react.default.createElement(_FilterButtonItem.StyledFilterButtonItemLabelText, null, text)), /*#__PURE__*/_react.default.createElement(_FilterButtonItem.StyledFilterButtonItemBorder, {
36
+ isSelected: isSelected,
37
+ shape: shape,
38
+ color: color
39
+ }), /*#__PURE__*/_react.default.createElement(_FilterButtonItem.StyledMotionFilterButtonItemBackground, {
40
+ isSelected: isSelected,
41
+ shape: shape,
42
+ color: color
43
+ })), [color, handleClick, icons, isSelected, shape, size, text]);
44
+ };
45
+ FilterButtonItem.displayName = 'FilterButtonItem';
46
+ var _default = FilterButtonItem;
47
+ exports.default = _default;
48
+ //# sourceMappingURL=FilterButtonItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterButtonItem.js","names":["_react","_interopRequireWildcard","require","_Icon","_interopRequireDefault","_interface","_FilterButtonItem","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","FilterButtonItem","_ref","icons","size","shape","text","color","isSelected","id","onSelect","handleClick","useCallback","useMemo","createElement","StyledFilterButtonItem","onClick","StyledFilterButtonItemLabel","FilterButtonSize","Normal","StyledFilterButtonItemLabelText","StyledFilterButtonItemBorder","StyledMotionFilterButtonItemBackground","displayName","_default","exports"],"sources":["../../../../src/components/filter-button/filter-button-item/FilterButtonItem.tsx"],"sourcesContent":["import React, { CSSProperties, FC, useCallback, useMemo } from 'react';\nimport Icon from '../../icon/Icon';\nimport { FilterButtonItemShape, FilterButtonSize } from '../interface';\nimport {\n StyledFilterButtonItem,\n StyledFilterButtonItemBorder,\n StyledFilterButtonItemLabel,\n StyledFilterButtonItemLabelText,\n StyledMotionFilterButtonItemBackground,\n} from './FilterButtonItem.styles';\n\nexport type FilterButtonItemProps = {\n color?: CSSProperties['color'];\n icons?: string[];\n isSelected: boolean;\n shape: FilterButtonItemShape;\n size: FilterButtonSize;\n text: string;\n id: string;\n onSelect: (key: string) => void;\n};\n\nconst FilterButtonItem: FC<FilterButtonItemProps> = ({\n icons,\n size,\n shape,\n text,\n color,\n isSelected,\n id,\n onSelect,\n}) => {\n const handleClick = useCallback(() => {\n onSelect(id);\n }, [id, onSelect]);\n\n return useMemo(\n () => (\n <StyledFilterButtonItem isSelected={isSelected} size={size} onClick={handleClick}>\n <StyledFilterButtonItemLabel>\n {icons && (\n <Icon icons={icons} size={size === FilterButtonSize.Normal ? 15 : 10} />\n )}\n <StyledFilterButtonItemLabelText>{text}</StyledFilterButtonItemLabelText>\n </StyledFilterButtonItemLabel>\n <StyledFilterButtonItemBorder isSelected={isSelected} shape={shape} color={color} />\n <StyledMotionFilterButtonItemBackground\n isSelected={isSelected}\n shape={shape}\n color={color}\n />\n </StyledFilterButtonItem>\n ),\n [color, handleClick, icons, isSelected, shape, size, text]\n );\n};\n\nFilterButtonItem.displayName = 'FilterButtonItem';\n\nexport default FilterButtonItem;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AAMmC,SAAAE,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAV,wBAAAM,GAAA,EAAAI,WAAA,SAAAA,WAAA,IAAAJ,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAQ,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,CAAAT,OAAA,GAAAF,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAanC,MAAMW,gBAA2C,GAAGC,IAAA,IAS9C;EAAA,IAT+C;IACjDC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,UAAU;IACVC,EAAE;IACFC;EACJ,CAAC,GAAAR,IAAA;EACG,MAAMS,WAAW,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAClCF,QAAQ,CAACD,EAAE,CAAC;EAChB,CAAC,EAAE,CAACA,EAAE,EAAEC,QAAQ,CAAC,CAAC;EAElB,OAAO,IAAAG,cAAO,EACV,mBACIzC,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACpC,iBAAA,CAAAqC,sBAAsB;IAACP,UAAU,EAAEA,UAAW;IAACJ,IAAI,EAAEA,IAAK;IAACY,OAAO,EAAEL;EAAY,gBAC7EvC,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACpC,iBAAA,CAAAuC,2BAA2B,QACvBd,KAAK,iBACF/B,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACvC,KAAA,CAAAM,OAAI;IAACsB,KAAK,EAAEA,KAAM;IAACC,IAAI,EAAEA,IAAI,KAAKc,2BAAgB,CAACC,MAAM,GAAG,EAAE,GAAG;EAAG,CAAE,CAC1E,eACD/C,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACpC,iBAAA,CAAA0C,+BAA+B,QAAEd,IAAsC,CAC/C,CAAC,eAC9BlC,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACpC,iBAAA,CAAA2C,4BAA4B;IAACb,UAAU,EAAEA,UAAW;IAACH,KAAK,EAAEA,KAAM;IAACE,KAAK,EAAEA;EAAM,CAAE,CAAC,eACpFnC,MAAA,CAAAS,OAAA,CAAAiC,aAAA,CAACpC,iBAAA,CAAA4C,sCAAsC;IACnCd,UAAU,EAAEA,UAAW;IACvBH,KAAK,EAAEA,KAAM;IACbE,KAAK,EAAEA;EAAM,CAChB,CACmB,CAC3B,EACD,CAACA,KAAK,EAAEI,WAAW,EAAER,KAAK,EAAEK,UAAU,EAAEH,KAAK,EAAED,IAAI,EAAEE,IAAI,CAC7D,CAAC;AACL,CAAC;AAEDL,gBAAgB,CAACsB,WAAW,GAAG,kBAAkB;AAAC,IAAAC,QAAA,GAEnCvB,gBAAgB;AAAAwB,OAAA,CAAA5C,OAAA,GAAA2C,QAAA"}
@@ -0,0 +1,26 @@
1
+ import type { CSSProperties } from 'react';
2
+ import { FilterButtonItemShape, FilterButtonSize } from '../interface';
3
+ export declare const StyledFilterButtonItem: import("styled-components").StyledComponent<"div", any, {
4
+ size: FilterButtonSize;
5
+ isSelected: boolean;
6
+ } & {
7
+ theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
8
+ }, never>;
9
+ export declare const StyledFilterButtonItemLabel: import("styled-components").StyledComponent<"div", any, {}, never>;
10
+ export declare const StyledFilterButtonItemLabelText: import("styled-components").StyledComponent<"p", any, {
11
+ theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
12
+ }, never>;
13
+ export declare const StyledFilterButtonItemBorder: import("styled-components").StyledComponent<"div", any, {
14
+ shape: FilterButtonItemShape;
15
+ color: CSSProperties['color'];
16
+ isSelected: boolean;
17
+ } & {
18
+ theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
19
+ }, never>;
20
+ export declare const StyledMotionFilterButtonItemBackground: import("styled-components").StyledComponent<import("framer-motion").ForwardRefComponent<HTMLDivElement, import("framer-motion").HTMLMotionProps<"div">>, any, {
21
+ shape: FilterButtonItemShape;
22
+ color: CSSProperties['color'];
23
+ isSelected: boolean;
24
+ } & {
25
+ theme: import("../../color-scheme-provider/ColorSchemeProvider").Theme;
26
+ }, never>;