@itcase/ui 1.8.123 → 1.8.125

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 (246) hide show
  1. package/dist/Avatar_cjs_AwXEUY8j.js +161 -0
  2. package/dist/Avatar_es_BtlaCRc5.js +157 -0
  3. package/dist/{Button_cjs_Ce97psFT.js → Button_cjs_C34BU1BK.js} +46 -34
  4. package/dist/{Button_es_CZss7cXh.js → Button_es_DnlzLBUT.js} +46 -34
  5. package/dist/ChipsGroup_cjs_DfAKN5CA.js +344 -0
  6. package/dist/{ChipsGroup_es_ayPPUwQ7.js → ChipsGroup_es_DBKY2UyF.js} +48 -35
  7. package/dist/DatePicker_cjs_DfbeIL2m.js +182 -0
  8. package/dist/DatePicker_es_BIJNx427.js +178 -0
  9. package/dist/Divider_cjs_DrmV2ezS.js +105 -0
  10. package/dist/Divider_es_BiYozVBS.js +101 -0
  11. package/dist/DropdownItem_cjs_vHuzXW9M.js +211 -0
  12. package/dist/DropdownItem_es_DVHWWgnU.js +206 -0
  13. package/dist/Group_cjs_DmfeUcFI.js +59 -0
  14. package/dist/Group_es_BU5k8f5S.js +55 -0
  15. package/dist/{Icon_cjs_Cz6IyOkb.js → Icon_cjs_BVLGzj7Y.js} +170 -157
  16. package/dist/{Icon_es_BrwLifge.js → Icon_es_DkVkzTha.js} +170 -157
  17. package/dist/Image_cjs_BUM81t4Y.js +28 -0
  18. package/dist/Image_es_C-IjVkKX.js +26 -0
  19. package/dist/{Input_cjs_DRPK_RHK.js → Input_cjs_DDi5JVAV.js} +27 -19
  20. package/dist/{Input_es_Cv5nEb_n.js → Input_es_BnCXATnh.js} +27 -19
  21. package/dist/{Label_cjs_DMoaOoHi.js → Label_cjs_DwAmukik.js} +45 -33
  22. package/dist/{Label_es_SULlg9bL.js → Label_es_B2kcstsG.js} +45 -33
  23. package/dist/{Link_cjs_C5UsZUiF.js → Link_cjs_qKXVfU8e.js} +43 -30
  24. package/dist/{Link_es_XiqbdwLp.js → Link_es_P2b6ya7P.js} +43 -30
  25. package/dist/Loader_cjs_DIDsIq3J.js +143 -0
  26. package/dist/Loader_es_CmSggwbR.js +139 -0
  27. package/dist/Overlay_cjs_tGA2fU43.js +42 -0
  28. package/dist/Overlay_es_BS7OTFoy.js +38 -0
  29. package/dist/{Scrollbar_cjs_DcKOfcNp.js → Scrollbar_cjs_Cp-7v2Mt.js} +1 -1
  30. package/dist/{Scrollbar_es_CThJeCLF.js → Scrollbar_es_CcMgNvGi.js} +1 -1
  31. package/dist/Text_cjs_BDTjOTVB.js +69 -0
  32. package/dist/Text_es_CnymlElo.js +65 -0
  33. package/dist/cjs/components/Accordion.js +37 -34
  34. package/dist/cjs/components/Avatar.js +5 -6
  35. package/dist/cjs/components/AvatarStack/stories/__mock__.js +1 -1
  36. package/dist/cjs/components/AvatarStack.js +17 -16
  37. package/dist/cjs/components/Badge.js +3 -4
  38. package/dist/cjs/components/Breadcrumbs/stories/__mock__.js +1 -1
  39. package/dist/cjs/components/Breadcrumbs.js +27 -23
  40. package/dist/cjs/components/Button.js +5 -6
  41. package/dist/cjs/components/Cell/stories/__mock__.js +1 -1
  42. package/dist/cjs/components/Cell.js +28 -25
  43. package/dist/cjs/components/Checkbox.js +33 -26
  44. package/dist/cjs/components/Checkmark.js +28 -23
  45. package/dist/cjs/components/Chips/stories/__mock__.js +1 -1
  46. package/dist/cjs/components/Chips.js +4 -5
  47. package/dist/cjs/components/Choice/stories/__mock__.js +2 -2
  48. package/dist/cjs/components/Choice.js +46 -40
  49. package/dist/cjs/components/Code.js +34 -26
  50. package/dist/cjs/components/CookiesWarning.js +23 -23
  51. package/dist/cjs/components/Dadata.js +14 -9
  52. package/dist/cjs/components/DatePeriod.js +32 -30
  53. package/dist/cjs/components/DatePicker.js +8 -9
  54. package/dist/cjs/components/Divider.js +1 -2
  55. package/dist/cjs/components/Dot.js +5 -6
  56. package/dist/cjs/components/Drawer.js +23 -21
  57. package/dist/cjs/components/Dropdown/stories/__mock__.js +6 -6
  58. package/dist/cjs/components/Dropdown.js +5 -6
  59. package/dist/cjs/components/Flex.js +11 -12
  60. package/dist/cjs/components/Grid.js +15 -16
  61. package/dist/cjs/components/Group.js +1 -2
  62. package/dist/cjs/components/HTMLContent.js +5 -6
  63. package/dist/cjs/components/HeroTitle.js +17 -16
  64. package/dist/cjs/components/Icon.js +3 -4
  65. package/dist/cjs/components/Image.js +1 -2
  66. package/dist/cjs/components/Input.js +1 -2
  67. package/dist/cjs/components/InputPassword.js +34 -26
  68. package/dist/cjs/components/Label.js +4 -5
  69. package/dist/cjs/components/Link.js +1 -2
  70. package/dist/cjs/components/List.js +39 -28
  71. package/dist/cjs/components/Loader.js +2 -3
  72. package/dist/cjs/components/Logo.js +10 -11
  73. package/dist/cjs/components/MenuItem.js +36 -33
  74. package/dist/cjs/components/Modal.js +40 -38
  75. package/dist/cjs/components/ModalSheetBottom.js +17 -18
  76. package/dist/cjs/components/Notification/stories/__mock__.js +1 -1
  77. package/dist/cjs/components/Notification.js +31 -24
  78. package/dist/cjs/components/Overlay.js +1 -2
  79. package/dist/cjs/components/Pagination.js +43 -41
  80. package/dist/cjs/components/Radio.js +34 -26
  81. package/dist/cjs/components/RangeSlider.js +8 -9
  82. package/dist/cjs/components/Response/img.js +1 -1
  83. package/dist/cjs/components/Response.js +45 -34
  84. package/dist/cjs/components/SVGContent.js +6 -7
  85. package/dist/cjs/components/ScrollOnDrag/stories/__mock__.js +2 -2
  86. package/dist/cjs/components/ScrollOnDrag.js +7 -8
  87. package/dist/cjs/components/ScrollToView.js +8 -9
  88. package/dist/cjs/components/Scrollbar/stories/__mock__.js +1 -1
  89. package/dist/cjs/components/Scrollbar.js +1 -1
  90. package/dist/cjs/components/Search.js +39 -31
  91. package/dist/cjs/components/Segmented/stories/__mock__.js +23 -10
  92. package/dist/cjs/components/Segmented.js +46 -41
  93. package/dist/cjs/components/Select.js +118 -113
  94. package/dist/cjs/components/Swiper/stories/__mock__.js +3 -3
  95. package/dist/cjs/components/Swiper.js +27 -29
  96. package/dist/cjs/components/Switch.js +33 -26
  97. package/dist/cjs/components/Tab/stories/__mock__.js +1 -1
  98. package/dist/cjs/components/Tab.js +33 -29
  99. package/dist/cjs/components/Text.js +1 -2
  100. package/dist/cjs/components/Textarea.js +26 -18
  101. package/dist/cjs/components/Tile.js +21 -17
  102. package/dist/cjs/components/Title.js +3 -4
  103. package/dist/cjs/components/Tooltip.js +3 -4
  104. package/dist/cjs/components/Video/stories/__mocks__.js +1 -1
  105. package/dist/cjs/components/Video.js +3 -4
  106. package/dist/cjs/components/Warning.js +26 -20
  107. package/dist/cjs/context/Notifications.js +38 -42
  108. package/dist/cjs/context/UIContext.js +19 -17
  109. package/dist/cjs/context/UrlAssetPrefix.js +3 -3
  110. package/dist/cjs/hoc/urlWithAssetPrefix.js +13 -16
  111. package/dist/cjs/hooks/useActiveClasses/useActiveClasses.helpers.js +13 -40
  112. package/dist/cjs/hooks/useActiveClasses/useActiveClasses.interface.js +1 -1
  113. package/dist/cjs/hooks/useActiveClasses/useActiveClasses.js +25 -29
  114. package/dist/cjs/hooks/useAppearanceConfig/useAppearanceConfig.js +13 -15
  115. package/dist/cjs/hooks/useAppearanceConfig.js +0 -1
  116. package/dist/cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +21 -28
  117. package/dist/cjs/hooks/useDevicePropsGenerator.js +0 -1
  118. package/dist/cjs/hooks/useDeviceTargetClass.js +0 -1
  119. package/dist/cjs/hooks/useStyles/styleAttributes.js +1 -1
  120. package/dist/cjs/hooks/useStyles/useStyles.js +0 -1
  121. package/dist/cjs/hooks/useStyles.js +0 -1
  122. package/dist/cjs/hooks/useViewportFix.js +5 -5
  123. package/dist/cjs/hooks.js +1 -1
  124. package/dist/cjs/utils/setViewportProperty.js +3 -3
  125. package/dist/components/Accordion.js +37 -34
  126. package/dist/components/Avatar.js +5 -6
  127. package/dist/components/AvatarStack/stories/__mock__.js +1 -1
  128. package/dist/components/AvatarStack.js +17 -16
  129. package/dist/components/Badge.js +3 -4
  130. package/dist/components/Breadcrumbs/stories/__mock__.js +1 -1
  131. package/dist/components/Breadcrumbs.js +27 -23
  132. package/dist/components/Button.js +5 -6
  133. package/dist/components/Cell/stories/__mock__.js +1 -1
  134. package/dist/components/Cell.js +28 -25
  135. package/dist/components/Checkbox.js +33 -26
  136. package/dist/components/Checkmark.js +28 -23
  137. package/dist/components/Chips/stories/__mock__.js +1 -1
  138. package/dist/components/Chips.js +4 -5
  139. package/dist/components/Choice/stories/__mock__.js +2 -2
  140. package/dist/components/Choice.js +46 -40
  141. package/dist/components/Code.js +34 -26
  142. package/dist/components/CookiesWarning.js +23 -23
  143. package/dist/components/Dadata.js +14 -9
  144. package/dist/components/DatePeriod.js +32 -30
  145. package/dist/components/DatePicker.js +8 -9
  146. package/dist/components/Divider.js +1 -2
  147. package/dist/components/Dot.js +5 -6
  148. package/dist/components/Drawer.js +23 -21
  149. package/dist/components/Dropdown/stories/__mock__.js +6 -6
  150. package/dist/components/Dropdown.js +5 -6
  151. package/dist/components/Flex.js +11 -12
  152. package/dist/components/Grid.js +15 -16
  153. package/dist/components/Group.js +1 -2
  154. package/dist/components/HTMLContent.js +5 -6
  155. package/dist/components/HeroTitle.js +17 -16
  156. package/dist/components/Icon.js +3 -4
  157. package/dist/components/Image.js +1 -2
  158. package/dist/components/Input.js +1 -2
  159. package/dist/components/InputPassword.js +34 -26
  160. package/dist/components/Label.js +4 -5
  161. package/dist/components/Link.js +1 -2
  162. package/dist/components/List.js +39 -28
  163. package/dist/components/Loader.js +2 -3
  164. package/dist/components/Logo.js +10 -11
  165. package/dist/components/MenuItem.js +36 -33
  166. package/dist/components/Modal.js +40 -38
  167. package/dist/components/ModalSheetBottom.js +17 -18
  168. package/dist/components/Notification/stories/__mock__.js +1 -1
  169. package/dist/components/Notification.js +31 -24
  170. package/dist/components/Overlay.js +1 -2
  171. package/dist/components/Pagination.js +43 -41
  172. package/dist/components/Radio.js +34 -26
  173. package/dist/components/RangeSlider.js +8 -9
  174. package/dist/components/Response/img.js +1 -1
  175. package/dist/components/Response.js +45 -34
  176. package/dist/components/SVGContent.js +6 -7
  177. package/dist/components/ScrollOnDrag/stories/__mock__.js +2 -2
  178. package/dist/components/ScrollOnDrag.js +7 -8
  179. package/dist/components/ScrollToView.js +8 -9
  180. package/dist/components/Scrollbar/stories/__mock__.js +1 -1
  181. package/dist/components/Scrollbar.js +1 -1
  182. package/dist/components/Search.js +39 -31
  183. package/dist/components/Segmented/stories/__mock__.js +23 -10
  184. package/dist/components/Segmented.js +46 -41
  185. package/dist/components/Select.js +118 -113
  186. package/dist/components/Swiper/stories/__mock__.js +3 -3
  187. package/dist/components/Swiper.js +27 -29
  188. package/dist/components/Switch.js +33 -26
  189. package/dist/components/Tab/stories/__mock__.js +1 -1
  190. package/dist/components/Tab.js +33 -29
  191. package/dist/components/Text.js +1 -2
  192. package/dist/components/Textarea.js +26 -18
  193. package/dist/components/Tile.js +21 -17
  194. package/dist/components/Title.js +3 -4
  195. package/dist/components/Tooltip.js +3 -4
  196. package/dist/components/Video/stories/__mocks__.js +1 -1
  197. package/dist/components/Video.js +3 -4
  198. package/dist/components/Warning.js +26 -20
  199. package/dist/context/Notifications.js +38 -42
  200. package/dist/context/UIContext.js +19 -17
  201. package/dist/context/UrlAssetPrefix.js +3 -3
  202. package/dist/css/components/Tile/Tile.css +3 -3
  203. package/dist/hoc/urlWithAssetPrefix.js +13 -16
  204. package/dist/hooks/useActiveClasses/useActiveClasses.helpers.js +13 -40
  205. package/dist/hooks/useActiveClasses/useActiveClasses.interface.js +1 -1
  206. package/dist/hooks/useActiveClasses/useActiveClasses.js +25 -29
  207. package/dist/hooks/useAppearanceConfig/useAppearanceConfig.js +13 -15
  208. package/dist/hooks/useAppearanceConfig.js +0 -1
  209. package/dist/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +21 -28
  210. package/dist/hooks/useDevicePropsGenerator.js +0 -1
  211. package/dist/hooks/useDeviceTargetClass.js +0 -1
  212. package/dist/hooks/useStyles/styleAttributes.js +1 -1
  213. package/dist/hooks/useStyles/useStyles.js +0 -1
  214. package/dist/hooks/useStyles.js +0 -1
  215. package/dist/hooks/useViewportFix.js +5 -5
  216. package/dist/hooks.js +1 -1
  217. package/dist/types/components/Button/Button.appearance.d.ts +232 -232
  218. package/dist/types/components/Button/Button.d.ts +4 -4
  219. package/dist/types/components/Button/Button.interface.d.ts +5 -5
  220. package/dist/types/components/Pagination/Pagination.d.ts +1 -1
  221. package/dist/types/components/Select/SelectContainer.d.ts +1 -1
  222. package/dist/types/components/Text/Text.appearance.d.ts +58 -58
  223. package/dist/types/components/Text/Text.interface.d.ts +1 -1
  224. package/dist/utils/setViewportProperty.js +3 -3
  225. package/package.json +3 -3
  226. package/dist/Avatar_cjs_CLJnKU39.js +0 -157
  227. package/dist/Avatar_es_BgN-fbOj.js +0 -153
  228. package/dist/ChipsGroup_cjs_C8L3ZeD_.js +0 -331
  229. package/dist/DatePicker_cjs_BzEtDAb8.js +0 -183
  230. package/dist/DatePicker_es_DRyCMO0I.js +0 -179
  231. package/dist/Divider_cjs_DUYtmwn2.js +0 -97
  232. package/dist/Divider_es_CCLBFIx6.js +0 -93
  233. package/dist/DropdownItem_cjs_Bhss6lyM.js +0 -207
  234. package/dist/DropdownItem_es_BXl6lPJx.js +0 -202
  235. package/dist/Group_cjs_CsJ6ICKK.js +0 -59
  236. package/dist/Group_es_DRqIIM9m.js +0 -55
  237. package/dist/Image_cjs_DRhhc66R.js +0 -29
  238. package/dist/Image_es_BpMidmve.js +0 -27
  239. package/dist/Loader_cjs_D3lnxPlI.js +0 -132
  240. package/dist/Loader_es_BUSqFrCd.js +0 -128
  241. package/dist/Overlay_cjs_CcfJYN5o.js +0 -41
  242. package/dist/Overlay_es_DF3DAdxS.js +0 -37
  243. package/dist/Text_cjs_0EINiUq4.js +0 -68
  244. package/dist/Text_es_CwV9rjFD.js +0 -64
  245. package/dist/tslib.es6_cjs_CCZ3TN_7.js +0 -59
  246. package/dist/tslib.es6_es_Bwu1Cn-t.js +0 -56
@@ -1,207 +0,0 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var React = require('react');
5
- var clsx = require('clsx');
6
- var useDevicePropsGenerator = require('./cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
7
- var useStyles = require('./cjs/hooks/useStyles/useStyles.js');
8
- var Icon = require('./Icon_cjs_Cz6IyOkb.js');
9
- var useAppearanceConfig = require('./cjs/hooks/useAppearanceConfig/useAppearanceConfig.js');
10
- var Divider = require('./Divider_cjs_DUYtmwn2.js');
11
- var Text = require('./Text_cjs_0EINiUq4.js');
12
- var tslib_es6 = require('./tslib.es6_cjs_CCZ3TN_7.js');
13
-
14
- function Dropdown(props) {
15
- var className = props.className, appearance = props.appearance, _a = props.animationClose, animationClose = _a === void 0 ? 'dropdown_animation_close' : _a, _b = props.animationOpen, animationOpen = _b === void 0 ? 'dropdown_animation_open' : _b, dropdownList = props.dropdownList, before = props.before, after = props.after, isOpen = props.isOpen, isSkeleton = props.isSkeleton, setIsOpen = props.setIsOpen, onClickItem = props.onClickItem, children = props.children;
16
- var dropdownRef = React.useRef(null);
17
- // const [isOpen, setIsOpen] = useState(false)
18
- var _c = React.useState({
19
- className: '',
20
- }), animationState = _c[0], setAnimationState = _c[1];
21
- var onAnimationEnd = React.useCallback(function () {
22
- // When component is change his visibility(display) in DOM,
23
- // animation of close can run unnecessary on showing element.
24
- // const dropdownElement = dropdownRef.current
25
- setAnimationState(function (prevState) { return ({
26
- className: isOpen ? prevState.className : '',
27
- }); });
28
- }, [isOpen]);
29
- React.useEffect(function () {
30
- if (animationOpen && animationClose) {
31
- setAnimationState(function () { return ({
32
- className: isOpen ? animationOpen : animationClose,
33
- }); });
34
- }
35
- }, [isOpen, animationOpen, animationClose]);
36
- // Close dropdown by click outside
37
- React.useEffect(function () {
38
- // Add a handler to keep track of the click target.
39
- function onClickWindow(event) {
40
- var dropdownElement = dropdownRef.current;
41
- if (dropdownElement && animationOpen) {
42
- // Is event target inside of dropdown element
43
- var isContainsTarget = dropdownElement.contains(event.target);
44
- // Is dropdown element has "open" class
45
- var hasOpenClass = dropdownElement.classList.contains(animationOpen);
46
- if (!isContainsTarget && hasOpenClass) {
47
- // Trigger close event with animation
48
- // dropdownElement.click() - trigger "onClickWindow" again
49
- setIsOpen(false);
50
- }
51
- }
52
- }
53
- // Add event listener for current dropdown on first render
54
- window.addEventListener('click', onClickWindow);
55
- return function () {
56
- // Remove event listener for current dropdown on unmount
57
- window.removeEventListener('click', onClickWindow);
58
- };
59
- // eslint-disable-next-line react-hooks/exhaustive-deps
60
- }, []);
61
- var propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props);
62
- var alignmentClass = propsGenerator.alignmentClass, fillClass = propsGenerator.fillClass, fillHoverClass = propsGenerator.fillHoverClass, elevationClass = propsGenerator.elevationClass, shapeClass = propsGenerator.shapeClass, shapeStrengthClass = propsGenerator.shapeStrengthClass;
63
- var styles = useStyles.useStyles(props).styles;
64
- return (jsxRuntime.jsxs("div", { className: clsx(className, 'dropdown', alignmentClass && "alignment_".concat(alignmentClass), shapeClass && "shape_".concat(shapeClass), shapeStrengthClass && "shape-strength_".concat(shapeStrengthClass), elevationClass && "elevation_".concat(elevationClass), isOpen ? 'dropdown_state_open' : 'dropdown_state_close', animationState.className), ref: dropdownRef, style: styles, children: [before, (children || dropdownList) && (jsxRuntime.jsxs("div", { className: clsx('dropdown__wrapper', fillClass && "fill_".concat(fillClass), fillHoverClass && "fill_hover_".concat(fillHoverClass)),
65
- // Add "onAnimationEnd" only for wrapper for ignore dropdown button
66
- onAnimationEnd: onAnimationEnd, children: [dropdownList === null || dropdownList === void 0 ? void 0 : dropdownList.map(function (item) { return (jsxRuntime.jsx(DropdownItem, { appearance: appearance, label: item.label, badgeValue: item.badgeValue, emptyMessage: item.emptyMessage, iconAfter: item.iconAfter, iconBefore: item.iconBefore, iconSrc: item.icon, isActive: item.isActive, isSkeleton: isSkeleton, onClick: item.onClick || (function (event) { return onClickItem === null || onClickItem === void 0 ? void 0 : onClickItem(item, event); }) }, item.key)); }), children] })), after] }));
67
- }
68
-
69
- var dropdownAppearanceAccent = {
70
- accentPrimary: {
71
- fill: 'accentPrimary',
72
- fillActive: 'accentPrimaryActive',
73
- fillActiveHover: 'accentHoverPrimary',
74
- fillHover: 'accentHoverPrimary',
75
- labelTextColor: 'accentTextPrimary',
76
- labelTextColorActive: 'accentTextPrimary',
77
- labelTextColorActiveHover: 'accentTextPrimary',
78
- labelTextColorHover: 'accentTextPrimary',
79
- badgeAppearance: 'surfacePrimary',
80
- dividerFill: 'surfaceTertiary',
81
- emptyMessageTextColor: 'accentTextPrimary',
82
- iconAfterFillIcon: 'accentItemPrimary',
83
- iconBeforeFillIcon: 'accentItemPrimary',
84
- },
85
- accentSecondary: {
86
- fill: 'accentPrimary',
87
- fillHover: 'accentPrimaryHover',
88
- labelTextColor: 'accentTextSecondary',
89
- labelTextColorHover: 'accentTextSecondary',
90
- borderColor: 'accentBorderPrimary',
91
- },
92
- };
93
-
94
- var dropdownAppearanceSize = {
95
- sizeL: {
96
- size: 'l',
97
- labelTextSize: 'm',
98
- badgeSize: 'xs',
99
- badgeTextSize: 'xs',
100
- dividerSize: 's',
101
- emptyMessageTextSize: 'm',
102
- iconAfterFillSize: '24',
103
- iconAfterSize: '24',
104
- iconBeforeFillSize: '24',
105
- iconBeforeSize: '24',
106
- },
107
- sizeS: {
108
- size: 's',
109
- labelTextSize: 's',
110
- badgeSize: 'xs',
111
- badgeTextSize: 'xs',
112
- dividerSize: 's',
113
- emptyMessageTextSize: 'm',
114
- iconAfterFillSize: '16',
115
- iconAfterSize: '16',
116
- iconBeforeFillSize: '16',
117
- iconBeforeSize: '16',
118
- },
119
- sizeXS: {
120
- size: 'xs',
121
- labelTextSize: 'xs',
122
- badgeSize: 'xs',
123
- badgeTextSize: 'xs',
124
- dividerSize: 's',
125
- emptyMessageTextSize: 'xs',
126
- iconAfterFillSize: '12',
127
- iconAfterSize: '12',
128
- iconBeforeFillSize: '12',
129
- iconBeforeSize: '12',
130
- },
131
- };
132
-
133
- var dropdownAppearanceStyle = {
134
- solid: {
135
- borderColor: 'none',
136
- },
137
- outlined: {
138
- fill: 'none',
139
- },
140
- full: {},
141
- ghost: {
142
- fill: 'none',
143
- borderColor: 'none',
144
- },
145
- };
146
-
147
- var dropdownAppearanceSurface = {
148
- surfacePrimary: {
149
- fill: 'surfacePrimary',
150
- fillActive: 'surfacePrimaryActive',
151
- fillHover: 'surfaceHoverPrimary',
152
- labelTextColor: 'surfaceTextPrimary',
153
- labelTextColorActive: 'surfaceTextPrimary',
154
- labelTextColorActiveHover: 'surfaceTextPrimary',
155
- labelTextColorHover: 'surfaceTextPrimary',
156
- badgeAppearance: 'accentPrimary',
157
- dividerFill: 'surfaceTertiary',
158
- emptyMessageTextColor: 'surfaceTextPrimary',
159
- iconAfterFillIcon: 'surfaceItemPrimary',
160
- iconBeforeFillIcon: 'surfaceItemPrimary',
161
- },
162
- surfaceSecondary: {
163
- fill: 'surfaceSecondary',
164
- fillHover: 'surfaceSecondaryHover',
165
- labelTextColor: 'surfaceTextPrimary',
166
- loaderFill: 'surfaceSecondary',
167
- loaderItemFill: 'surfaceItemPrimary',
168
- },
169
- surfaceTertiary: {
170
- fill: 'surfaceTertiary',
171
- fillHover: 'surfaceTertiaryHover',
172
- labelTextColor: 'surfaceTextPrimary',
173
- },
174
- surfaceQuaternary: {
175
- fill: 'surfaceQuaternary',
176
- fillHover: 'surfaceQuaternaryHover',
177
- labelTextColor: 'surfaceTextPrimary',
178
- },
179
- };
180
-
181
- var dropdownItemAppearance = tslib_es6.__assign(tslib_es6.__assign(tslib_es6.__assign(tslib_es6.__assign({}, dropdownAppearanceSurface), dropdownAppearanceStyle), dropdownAppearanceAccent), dropdownAppearanceSize);
182
-
183
- var dropdownItemConfig = {
184
- appearance: dropdownItemAppearance,
185
- setAppearance: function (appearanceConfig) {
186
- dropdownItemConfig.appearance = appearanceConfig;
187
- },
188
- };
189
- function DropdownItem(props) {
190
- var className = props.className, appearance = props.appearance, label = props.label, desc = props.desc, isDisabled = props.isDisabled, badgeValue = props.badgeValue, emptyMessage = props.emptyMessage, showDivider = props.showDivider, before = props.before, after = props.after, isActive = props.isActive, isHover = props.isHover, isSkeleton = props.isSkeleton, onClick = props.onClick, onMouseEnter = props.onMouseEnter, children = props.children;
191
- var appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, dropdownItemConfig);
192
- var propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
193
- var directionClass = propsGenerator.directionClass, justifyContentClass = propsGenerator.justifyContentClass, fillActiveClass = propsGenerator.fillActiveClass, fillActiveHoverClass = propsGenerator.fillActiveHoverClass, fillClass = propsGenerator.fillClass, fillDisabledClass = propsGenerator.fillDisabledClass, fillHoverClass = propsGenerator.fillHoverClass, labelTextAlign = propsGenerator.labelTextAlign, labelTextColor = propsGenerator.labelTextColor, labelTextColorActive = propsGenerator.labelTextColorActive, labelTextColorActiveHover = propsGenerator.labelTextColorActiveHover, labelTextColorHover = propsGenerator.labelTextColorHover, labelTextSize = propsGenerator.labelTextSize, labelTextStyle = propsGenerator.labelTextStyle, labelTextWeight = propsGenerator.labelTextWeight, labelTextWrap = propsGenerator.labelTextWrap, descTextColor = propsGenerator.descTextColor, descTextColorHover = propsGenerator.descTextColorHover, descTextGradient = propsGenerator.descTextGradient, descTextSize = propsGenerator.descTextSize, descTextStyle = propsGenerator.descTextStyle, descTextWeight = propsGenerator.descTextWeight, descTextWrap = propsGenerator.descTextWrap, badgeAppearance = propsGenerator.badgeAppearance, badgeShape = propsGenerator.badgeShape, badgeSize = propsGenerator.badgeSize, badgeTextColor = propsGenerator.badgeTextColor, badgeTextSize = propsGenerator.badgeTextSize, dividerDirection = propsGenerator.dividerDirection, dividerFill = propsGenerator.dividerFill, dividerSize = propsGenerator.dividerSize, emptyMessageTextColor = propsGenerator.emptyMessageTextColor, emptyMessageTextColorHover = propsGenerator.emptyMessageTextColorHover, emptyMessageTextSize = propsGenerator.emptyMessageTextSize, emptyMessageTextStyle = propsGenerator.emptyMessageTextStyle, emptyMessageTextWeight = propsGenerator.emptyMessageTextWeight, emptyMessageTextWrap = propsGenerator.emptyMessageTextWrap, iconAfter = propsGenerator.iconAfter, iconAfterFill = propsGenerator.iconAfterFill, iconAfterFillIcon = propsGenerator.iconAfterFillIcon, iconAfterFillSize = propsGenerator.iconAfterFillSize, iconAfterShape = propsGenerator.iconAfterShape, iconAfterSize = propsGenerator.iconAfterSize, iconAfterSrc = propsGenerator.iconAfterSrc, iconBadgeAppearance = propsGenerator.iconBadgeAppearance, iconBadgeShape = propsGenerator.iconBadgeShape, iconBadgeSize = propsGenerator.iconBadgeSize, iconBadgeTextColor = propsGenerator.iconBadgeTextColor, iconBadgeTextSize = propsGenerator.iconBadgeTextSize, iconBadgeValue = propsGenerator.iconBadgeValue, iconBefore = propsGenerator.iconBefore, iconBeforeFill = propsGenerator.iconBeforeFill, iconBeforeFillIcon = propsGenerator.iconBeforeFillIcon, iconBeforeFillSize = propsGenerator.iconBeforeFillSize, iconBeforeShape = propsGenerator.iconBeforeShape, iconBeforeSize = propsGenerator.iconBeforeSize, iconBeforeSrc = propsGenerator.iconBeforeSrc, shapeClass = propsGenerator.shapeClass, sizeClass = propsGenerator.sizeClass, widthClass = propsGenerator.widthClass;
194
- // @ts-expect-error
195
- var dropdownItem = useStyles.useStyles(props).styles;
196
- return (jsxRuntime.jsxs("div", { className: clsx('dropdown__item', isActive && 'dropdown__item_state_active', isHover && 'dropdown__item_state_hover', directionClass && "dropdown__item_direction_".concat(directionClass), className, !isActive
197
- ? fillClass && "fill_".concat(fillClass)
198
- : fillActiveClass && "fill_active_".concat(fillActiveClass), !isActive
199
- ? fillHoverClass && "fill_hover_".concat(fillHoverClass)
200
- : fillActiveHoverClass && "fill_active_hover_".concat(fillActiveHoverClass), fillDisabledClass && "fill_disabled_".concat(fillDisabledClass), sizeClass && "dropdown__item_size_".concat(sizeClass), shapeClass && "dropdown__item_shape_".concat(shapeClass), widthClass && "dropdown__item_width_".concat(widthClass), isDisabled && "dropdown__item_state_disabled", onClick && 'cursor_type_pointer', isSkeleton && "dropdown__item_skeleton", justifyContentClass &&
201
- "dropdown__item_justify-content_".concat(justifyContentClass)), style: dropdownItem, onClick: onClick, onMouseEnter: onMouseEnter, children: [jsxRuntime.jsx("div", { className: "dropdown__item-wrapper", children: jsxRuntime.jsxs(React.Fragment, { children: [before, (iconBefore || iconBeforeSrc) && (jsxRuntime.jsx(Icon.Icon, { className: clsx('dropdown__item_before', iconBadgeValue && 'dropdown__item_before-badge'), fill: iconBeforeFill, fillSize: iconBeforeFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: 'dropdown__item_before_badge', badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconBeforeFillIcon, iconSize: iconBeforeSize, imageSrc: iconBeforeSrc, shape: iconBeforeShape, SvgImage: iconBefore })), children || (jsxRuntime.jsxs(React.Fragment, { children: [label && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-label", size: labelTextSize, textAlign: labelTextAlign, textColor: !isActive && labelTextColor, textColorActive: "accentTextPrimary", textColorActive: isActive && labelTextColorActive, textColorHover: !isActive && labelTextColorHover, textColorHoverActive: isActive && labelTextColorActiveHover, textStyle: labelTextStyle, textWeight: labelTextWeight, textWrap: labelTextWrap, isActive: isActive, children: label })), badgeValue && (jsxRuntime.jsx(Icon.Badge, { appearance: badgeAppearance, size: badgeSize, textColor: badgeTextColor, textSize: badgeTextSize, shape: badgeShape, value: badgeValue })), desc && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-desc", size: descTextSize, textColor: descTextColor, textColorGradient: descTextGradient, textColorHover: descTextColorHover, textStyle: descTextStyle, textWeight: descTextWeight, textWrap: descTextWrap, isActive: isActive, children: desc })), emptyMessage && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item", size: emptyMessageTextSize, textColor: emptyMessageTextColor, textColorHover: emptyMessageTextColorHover, textStyle: emptyMessageTextStyle, textWeight: emptyMessageTextWeight, textWrap: emptyMessageTextWrap, isActive: isActive, children: emptyMessage }))] })), after, (iconAfter || iconAfterSrc) && (jsxRuntime.jsx(Icon.Icon, { className: clsx('dropdown__item_after', iconBadgeValue && 'dropdown__item_after-badge'), fill: iconAfterFill, fillSize: iconAfterFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: 'dropdown__item_after_badge', badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconAfterFillIcon, iconSize: iconAfterSize, imageSrc: iconAfterSrc, shape: iconAfterShape, SvgImage: iconAfter }))] }) }), showDivider && (jsxRuntime.jsx(Divider.Divider, { width: "fill", direction: dividerDirection, size: dividerSize, fill: dividerFill }))] }));
202
- }
203
-
204
- exports.Dropdown = Dropdown;
205
- exports.DropdownItem = DropdownItem;
206
- exports.dropdownItemAppearance = dropdownItemAppearance;
207
- exports.dropdownItemConfig = dropdownItemConfig;
@@ -1,202 +0,0 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import React, { useRef, useState, useCallback, useEffect } from 'react';
3
- import clsx from 'clsx';
4
- import { useDevicePropsGenerator } from './hooks/useDevicePropsGenerator/useDevicePropsGenerator.js';
5
- import { useStyles } from './hooks/useStyles/useStyles.js';
6
- import { I as Icon, B as Badge } from './Icon_es_BrwLifge.js';
7
- import { useAppearanceConfig } from './hooks/useAppearanceConfig/useAppearanceConfig.js';
8
- import { D as Divider } from './Divider_es_CCLBFIx6.js';
9
- import { T as Text } from './Text_es_CwV9rjFD.js';
10
- import { _ as __assign } from './tslib.es6_es_Bwu1Cn-t.js';
11
-
12
- function Dropdown(props) {
13
- var className = props.className, appearance = props.appearance, _a = props.animationClose, animationClose = _a === void 0 ? 'dropdown_animation_close' : _a, _b = props.animationOpen, animationOpen = _b === void 0 ? 'dropdown_animation_open' : _b, dropdownList = props.dropdownList, before = props.before, after = props.after, isOpen = props.isOpen, isSkeleton = props.isSkeleton, setIsOpen = props.setIsOpen, onClickItem = props.onClickItem, children = props.children;
14
- var dropdownRef = useRef(null);
15
- // const [isOpen, setIsOpen] = useState(false)
16
- var _c = useState({
17
- className: '',
18
- }), animationState = _c[0], setAnimationState = _c[1];
19
- var onAnimationEnd = useCallback(function () {
20
- // When component is change his visibility(display) in DOM,
21
- // animation of close can run unnecessary on showing element.
22
- // const dropdownElement = dropdownRef.current
23
- setAnimationState(function (prevState) { return ({
24
- className: isOpen ? prevState.className : '',
25
- }); });
26
- }, [isOpen]);
27
- useEffect(function () {
28
- if (animationOpen && animationClose) {
29
- setAnimationState(function () { return ({
30
- className: isOpen ? animationOpen : animationClose,
31
- }); });
32
- }
33
- }, [isOpen, animationOpen, animationClose]);
34
- // Close dropdown by click outside
35
- useEffect(function () {
36
- // Add a handler to keep track of the click target.
37
- function onClickWindow(event) {
38
- var dropdownElement = dropdownRef.current;
39
- if (dropdownElement && animationOpen) {
40
- // Is event target inside of dropdown element
41
- var isContainsTarget = dropdownElement.contains(event.target);
42
- // Is dropdown element has "open" class
43
- var hasOpenClass = dropdownElement.classList.contains(animationOpen);
44
- if (!isContainsTarget && hasOpenClass) {
45
- // Trigger close event with animation
46
- // dropdownElement.click() - trigger "onClickWindow" again
47
- setIsOpen(false);
48
- }
49
- }
50
- }
51
- // Add event listener for current dropdown on first render
52
- window.addEventListener('click', onClickWindow);
53
- return function () {
54
- // Remove event listener for current dropdown on unmount
55
- window.removeEventListener('click', onClickWindow);
56
- };
57
- // eslint-disable-next-line react-hooks/exhaustive-deps
58
- }, []);
59
- var propsGenerator = useDevicePropsGenerator(props);
60
- var alignmentClass = propsGenerator.alignmentClass, fillClass = propsGenerator.fillClass, fillHoverClass = propsGenerator.fillHoverClass, elevationClass = propsGenerator.elevationClass, shapeClass = propsGenerator.shapeClass, shapeStrengthClass = propsGenerator.shapeStrengthClass;
61
- var styles = useStyles(props).styles;
62
- return (jsxs("div", { className: clsx(className, 'dropdown', alignmentClass && "alignment_".concat(alignmentClass), shapeClass && "shape_".concat(shapeClass), shapeStrengthClass && "shape-strength_".concat(shapeStrengthClass), elevationClass && "elevation_".concat(elevationClass), isOpen ? 'dropdown_state_open' : 'dropdown_state_close', animationState.className), ref: dropdownRef, style: styles, children: [before, (children || dropdownList) && (jsxs("div", { className: clsx('dropdown__wrapper', fillClass && "fill_".concat(fillClass), fillHoverClass && "fill_hover_".concat(fillHoverClass)),
63
- // Add "onAnimationEnd" only for wrapper for ignore dropdown button
64
- onAnimationEnd: onAnimationEnd, children: [dropdownList === null || dropdownList === void 0 ? void 0 : dropdownList.map(function (item) { return (jsx(DropdownItem, { appearance: appearance, label: item.label, badgeValue: item.badgeValue, emptyMessage: item.emptyMessage, iconAfter: item.iconAfter, iconBefore: item.iconBefore, iconSrc: item.icon, isActive: item.isActive, isSkeleton: isSkeleton, onClick: item.onClick || (function (event) { return onClickItem === null || onClickItem === void 0 ? void 0 : onClickItem(item, event); }) }, item.key)); }), children] })), after] }));
65
- }
66
-
67
- var dropdownAppearanceAccent = {
68
- accentPrimary: {
69
- fill: 'accentPrimary',
70
- fillActive: 'accentPrimaryActive',
71
- fillActiveHover: 'accentHoverPrimary',
72
- fillHover: 'accentHoverPrimary',
73
- labelTextColor: 'accentTextPrimary',
74
- labelTextColorActive: 'accentTextPrimary',
75
- labelTextColorActiveHover: 'accentTextPrimary',
76
- labelTextColorHover: 'accentTextPrimary',
77
- badgeAppearance: 'surfacePrimary',
78
- dividerFill: 'surfaceTertiary',
79
- emptyMessageTextColor: 'accentTextPrimary',
80
- iconAfterFillIcon: 'accentItemPrimary',
81
- iconBeforeFillIcon: 'accentItemPrimary',
82
- },
83
- accentSecondary: {
84
- fill: 'accentPrimary',
85
- fillHover: 'accentPrimaryHover',
86
- labelTextColor: 'accentTextSecondary',
87
- labelTextColorHover: 'accentTextSecondary',
88
- borderColor: 'accentBorderPrimary',
89
- },
90
- };
91
-
92
- var dropdownAppearanceSize = {
93
- sizeL: {
94
- size: 'l',
95
- labelTextSize: 'm',
96
- badgeSize: 'xs',
97
- badgeTextSize: 'xs',
98
- dividerSize: 's',
99
- emptyMessageTextSize: 'm',
100
- iconAfterFillSize: '24',
101
- iconAfterSize: '24',
102
- iconBeforeFillSize: '24',
103
- iconBeforeSize: '24',
104
- },
105
- sizeS: {
106
- size: 's',
107
- labelTextSize: 's',
108
- badgeSize: 'xs',
109
- badgeTextSize: 'xs',
110
- dividerSize: 's',
111
- emptyMessageTextSize: 'm',
112
- iconAfterFillSize: '16',
113
- iconAfterSize: '16',
114
- iconBeforeFillSize: '16',
115
- iconBeforeSize: '16',
116
- },
117
- sizeXS: {
118
- size: 'xs',
119
- labelTextSize: 'xs',
120
- badgeSize: 'xs',
121
- badgeTextSize: 'xs',
122
- dividerSize: 's',
123
- emptyMessageTextSize: 'xs',
124
- iconAfterFillSize: '12',
125
- iconAfterSize: '12',
126
- iconBeforeFillSize: '12',
127
- iconBeforeSize: '12',
128
- },
129
- };
130
-
131
- var dropdownAppearanceStyle = {
132
- solid: {
133
- borderColor: 'none',
134
- },
135
- outlined: {
136
- fill: 'none',
137
- },
138
- full: {},
139
- ghost: {
140
- fill: 'none',
141
- borderColor: 'none',
142
- },
143
- };
144
-
145
- var dropdownAppearanceSurface = {
146
- surfacePrimary: {
147
- fill: 'surfacePrimary',
148
- fillActive: 'surfacePrimaryActive',
149
- fillHover: 'surfaceHoverPrimary',
150
- labelTextColor: 'surfaceTextPrimary',
151
- labelTextColorActive: 'surfaceTextPrimary',
152
- labelTextColorActiveHover: 'surfaceTextPrimary',
153
- labelTextColorHover: 'surfaceTextPrimary',
154
- badgeAppearance: 'accentPrimary',
155
- dividerFill: 'surfaceTertiary',
156
- emptyMessageTextColor: 'surfaceTextPrimary',
157
- iconAfterFillIcon: 'surfaceItemPrimary',
158
- iconBeforeFillIcon: 'surfaceItemPrimary',
159
- },
160
- surfaceSecondary: {
161
- fill: 'surfaceSecondary',
162
- fillHover: 'surfaceSecondaryHover',
163
- labelTextColor: 'surfaceTextPrimary',
164
- loaderFill: 'surfaceSecondary',
165
- loaderItemFill: 'surfaceItemPrimary',
166
- },
167
- surfaceTertiary: {
168
- fill: 'surfaceTertiary',
169
- fillHover: 'surfaceTertiaryHover',
170
- labelTextColor: 'surfaceTextPrimary',
171
- },
172
- surfaceQuaternary: {
173
- fill: 'surfaceQuaternary',
174
- fillHover: 'surfaceQuaternaryHover',
175
- labelTextColor: 'surfaceTextPrimary',
176
- },
177
- };
178
-
179
- var dropdownItemAppearance = __assign(__assign(__assign(__assign({}, dropdownAppearanceSurface), dropdownAppearanceStyle), dropdownAppearanceAccent), dropdownAppearanceSize);
180
-
181
- var dropdownItemConfig = {
182
- appearance: dropdownItemAppearance,
183
- setAppearance: function (appearanceConfig) {
184
- dropdownItemConfig.appearance = appearanceConfig;
185
- },
186
- };
187
- function DropdownItem(props) {
188
- var className = props.className, appearance = props.appearance, label = props.label, desc = props.desc, isDisabled = props.isDisabled, badgeValue = props.badgeValue, emptyMessage = props.emptyMessage, showDivider = props.showDivider, before = props.before, after = props.after, isActive = props.isActive, isHover = props.isHover, isSkeleton = props.isSkeleton, onClick = props.onClick, onMouseEnter = props.onMouseEnter, children = props.children;
189
- var appearanceConfig = useAppearanceConfig(appearance, dropdownItemConfig);
190
- var propsGenerator = useDevicePropsGenerator(props, appearanceConfig);
191
- var directionClass = propsGenerator.directionClass, justifyContentClass = propsGenerator.justifyContentClass, fillActiveClass = propsGenerator.fillActiveClass, fillActiveHoverClass = propsGenerator.fillActiveHoverClass, fillClass = propsGenerator.fillClass, fillDisabledClass = propsGenerator.fillDisabledClass, fillHoverClass = propsGenerator.fillHoverClass, labelTextAlign = propsGenerator.labelTextAlign, labelTextColor = propsGenerator.labelTextColor, labelTextColorActive = propsGenerator.labelTextColorActive, labelTextColorActiveHover = propsGenerator.labelTextColorActiveHover, labelTextColorHover = propsGenerator.labelTextColorHover, labelTextSize = propsGenerator.labelTextSize, labelTextStyle = propsGenerator.labelTextStyle, labelTextWeight = propsGenerator.labelTextWeight, labelTextWrap = propsGenerator.labelTextWrap, descTextColor = propsGenerator.descTextColor, descTextColorHover = propsGenerator.descTextColorHover, descTextGradient = propsGenerator.descTextGradient, descTextSize = propsGenerator.descTextSize, descTextStyle = propsGenerator.descTextStyle, descTextWeight = propsGenerator.descTextWeight, descTextWrap = propsGenerator.descTextWrap, badgeAppearance = propsGenerator.badgeAppearance, badgeShape = propsGenerator.badgeShape, badgeSize = propsGenerator.badgeSize, badgeTextColor = propsGenerator.badgeTextColor, badgeTextSize = propsGenerator.badgeTextSize, dividerDirection = propsGenerator.dividerDirection, dividerFill = propsGenerator.dividerFill, dividerSize = propsGenerator.dividerSize, emptyMessageTextColor = propsGenerator.emptyMessageTextColor, emptyMessageTextColorHover = propsGenerator.emptyMessageTextColorHover, emptyMessageTextSize = propsGenerator.emptyMessageTextSize, emptyMessageTextStyle = propsGenerator.emptyMessageTextStyle, emptyMessageTextWeight = propsGenerator.emptyMessageTextWeight, emptyMessageTextWrap = propsGenerator.emptyMessageTextWrap, iconAfter = propsGenerator.iconAfter, iconAfterFill = propsGenerator.iconAfterFill, iconAfterFillIcon = propsGenerator.iconAfterFillIcon, iconAfterFillSize = propsGenerator.iconAfterFillSize, iconAfterShape = propsGenerator.iconAfterShape, iconAfterSize = propsGenerator.iconAfterSize, iconAfterSrc = propsGenerator.iconAfterSrc, iconBadgeAppearance = propsGenerator.iconBadgeAppearance, iconBadgeShape = propsGenerator.iconBadgeShape, iconBadgeSize = propsGenerator.iconBadgeSize, iconBadgeTextColor = propsGenerator.iconBadgeTextColor, iconBadgeTextSize = propsGenerator.iconBadgeTextSize, iconBadgeValue = propsGenerator.iconBadgeValue, iconBefore = propsGenerator.iconBefore, iconBeforeFill = propsGenerator.iconBeforeFill, iconBeforeFillIcon = propsGenerator.iconBeforeFillIcon, iconBeforeFillSize = propsGenerator.iconBeforeFillSize, iconBeforeShape = propsGenerator.iconBeforeShape, iconBeforeSize = propsGenerator.iconBeforeSize, iconBeforeSrc = propsGenerator.iconBeforeSrc, shapeClass = propsGenerator.shapeClass, sizeClass = propsGenerator.sizeClass, widthClass = propsGenerator.widthClass;
192
- // @ts-expect-error
193
- var dropdownItem = useStyles(props).styles;
194
- return (jsxs("div", { className: clsx('dropdown__item', isActive && 'dropdown__item_state_active', isHover && 'dropdown__item_state_hover', directionClass && "dropdown__item_direction_".concat(directionClass), className, !isActive
195
- ? fillClass && "fill_".concat(fillClass)
196
- : fillActiveClass && "fill_active_".concat(fillActiveClass), !isActive
197
- ? fillHoverClass && "fill_hover_".concat(fillHoverClass)
198
- : fillActiveHoverClass && "fill_active_hover_".concat(fillActiveHoverClass), fillDisabledClass && "fill_disabled_".concat(fillDisabledClass), sizeClass && "dropdown__item_size_".concat(sizeClass), shapeClass && "dropdown__item_shape_".concat(shapeClass), widthClass && "dropdown__item_width_".concat(widthClass), isDisabled && "dropdown__item_state_disabled", onClick && 'cursor_type_pointer', isSkeleton && "dropdown__item_skeleton", justifyContentClass &&
199
- "dropdown__item_justify-content_".concat(justifyContentClass)), style: dropdownItem, onClick: onClick, onMouseEnter: onMouseEnter, children: [jsx("div", { className: "dropdown__item-wrapper", children: jsxs(React.Fragment, { children: [before, (iconBefore || iconBeforeSrc) && (jsx(Icon, { className: clsx('dropdown__item_before', iconBadgeValue && 'dropdown__item_before-badge'), fill: iconBeforeFill, fillSize: iconBeforeFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: 'dropdown__item_before_badge', badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconBeforeFillIcon, iconSize: iconBeforeSize, imageSrc: iconBeforeSrc, shape: iconBeforeShape, SvgImage: iconBefore })), children || (jsxs(React.Fragment, { children: [label && (jsx(Text, { className: "dropdown__item-label", size: labelTextSize, textAlign: labelTextAlign, textColor: !isActive && labelTextColor, textColorActive: "accentTextPrimary", textColorActive: isActive && labelTextColorActive, textColorHover: !isActive && labelTextColorHover, textColorHoverActive: isActive && labelTextColorActiveHover, textStyle: labelTextStyle, textWeight: labelTextWeight, textWrap: labelTextWrap, isActive: isActive, children: label })), badgeValue && (jsx(Badge, { appearance: badgeAppearance, size: badgeSize, textColor: badgeTextColor, textSize: badgeTextSize, shape: badgeShape, value: badgeValue })), desc && (jsx(Text, { className: "dropdown__item-desc", size: descTextSize, textColor: descTextColor, textColorGradient: descTextGradient, textColorHover: descTextColorHover, textStyle: descTextStyle, textWeight: descTextWeight, textWrap: descTextWrap, isActive: isActive, children: desc })), emptyMessage && (jsx(Text, { className: "dropdown__item", size: emptyMessageTextSize, textColor: emptyMessageTextColor, textColorHover: emptyMessageTextColorHover, textStyle: emptyMessageTextStyle, textWeight: emptyMessageTextWeight, textWrap: emptyMessageTextWrap, isActive: isActive, children: emptyMessage }))] })), after, (iconAfter || iconAfterSrc) && (jsx(Icon, { className: clsx('dropdown__item_after', iconBadgeValue && 'dropdown__item_after-badge'), fill: iconAfterFill, fillSize: iconAfterFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: 'dropdown__item_after_badge', badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconAfterFillIcon, iconSize: iconAfterSize, imageSrc: iconAfterSrc, shape: iconAfterShape, SvgImage: iconAfter }))] }) }), showDivider && (jsx(Divider, { width: "fill", direction: dividerDirection, size: dividerSize, fill: dividerFill }))] }));
200
- }
201
-
202
- export { Dropdown as D, DropdownItem as a, dropdownItemConfig as b, dropdownItemAppearance as d };
@@ -1,59 +0,0 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var React = require('react');
5
- var clsx = require('clsx');
6
- var useAppearanceConfig = require('./cjs/hooks/useAppearanceConfig/useAppearanceConfig.js');
7
- var useDevicePropsGenerator = require('./cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
8
- var useStyles = require('./cjs/hooks/useStyles/useStyles.js');
9
-
10
- var groupAppearance = {
11
- dev: {
12
- direction: 'horizontal',
13
- fill: 'surfacePrimary',
14
- fillHover: 'surfacePrimaryHover',
15
- borderColor: 'surfaceBorderPrimary',
16
- borderWidth: 1,
17
- },
18
- };
19
-
20
- var groupConfig = {
21
- appearance: groupAppearance,
22
- setAppearance: function (appearanceConfig) {
23
- groupConfig.appearance = appearanceConfig;
24
- },
25
- };
26
- var Group = React.forwardRef(function Group(props, ref) {
27
- var id = props.id, dataTestId = props.dataTestId, dataTour = props.dataTour, className = props.className, name = props.name, appearance = props.appearance, isDisabled = props.isDisabled, htmlFor = props.htmlFor, scroll = props.scroll, style = props.style, _a = props.tag, Tag = _a === void 0 ? 'div' : _a, isActive = props.isActive, onClick = props.onClick, onMouseDown = props.onMouseDown, children = props.children;
28
- var appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, groupConfig);
29
- var propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
30
- var directionClass = propsGenerator.directionClass, flexGrowClass = propsGenerator.flexGrowClass, justifyContentClass = propsGenerator.justifyContentClass, alignClass = propsGenerator.alignClass, alignDirectionClass = propsGenerator.alignDirectionClass, fillActiveClass = propsGenerator.fillActiveClass, fillActiveHoverClass = propsGenerator.fillActiveHoverClass, fillClass = propsGenerator.fillClass, fillDisabledClass = propsGenerator.fillDisabledClass, fillHoverClass = propsGenerator.fillHoverClass, borderColorActiveClass = propsGenerator.borderColorActiveClass, borderColorActiveHoverClass = propsGenerator.borderColorActiveHoverClass, borderColorClass = propsGenerator.borderColorClass, borderColorHoverClass = propsGenerator.borderColorHoverClass, borderTypeClass = propsGenerator.borderTypeClass, borderWidthClass = propsGenerator.borderWidthClass, textColorActiveClass = propsGenerator.textColorActiveClass, textColorClass = propsGenerator.textColorClass, textColorHoverClass = propsGenerator.textColorHoverClass, columnsClass = propsGenerator.columnsClass, elevationClass = propsGenerator.elevationClass, heightClass = propsGenerator.heightClass, iconFillHoverClass = propsGenerator.iconFillHoverClass, shapeClass = propsGenerator.shapeClass, stackingClass = propsGenerator.stackingClass, widthClass = propsGenerator.widthClass, wrapClass = propsGenerator.wrapClass;
31
- // @ts-expect-error
32
- var groupStyles = useStyles.useStyles(props).styles;
33
- return (jsxRuntime.jsx(Tag, { id: id, "data-test-id": dataTestId, "data-tour": dataTour, className: clsx(className, 'group', widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), columnsClass && "group_columns_".concat(columnsClass), alignDirectionClass && "align_".concat(alignDirectionClass), directionClass && "group_direction_".concat(directionClass), alignClass && "align_".concat(alignClass), justifyContentClass && "justify-content_".concat(justifyContentClass), textColorClass && "group_text-color_".concat(textColorClass), textColorActiveClass &&
34
- "group_text-color_active_".concat(textColorActiveClass), textColorHoverClass && "group_text-color_hover_".concat(textColorHoverClass), iconFillHoverClass && "group_icon_fill_hover_".concat(iconFillHoverClass), !isDisabled
35
- ? !isActive
36
- ? fillClass && "fill_".concat(fillClass)
37
- : fillActiveClass && "fill_active_".concat(fillActiveClass)
38
- : fillDisabledClass && "fill_".concat(fillDisabledClass), !isDisabled
39
- ? !isActive
40
- ? fillHoverClass && "fill_hover_".concat(fillHoverClass)
41
- : fillActiveHoverClass &&
42
- "fill_active_hover_".concat(fillActiveHoverClass)
43
- : fillDisabledClass && "fill_".concat(fillDisabledClass), scroll && "group_scroll_".concat(scroll), stackingClass && "group_stacking_".concat(stackingClass), wrapClass && "group_wrap_".concat(wrapClass), flexGrowClass && "flex-grow_".concat(flexGrowClass), shapeClass && "group_shape_".concat(shapeClass), !isDisabled
44
- ? !isActive
45
- ? borderColorClass && "border-color_".concat(borderColorClass)
46
- : borderColorActiveClass &&
47
- "border-color_active_".concat(borderColorActiveClass)
48
- : fillDisabledClass && "fill_".concat(fillDisabledClass), !isDisabled
49
- ? !isActive
50
- ? borderColorHoverClass &&
51
- "border-color_hover_".concat(borderColorHoverClass)
52
- : borderColorActiveHoverClass &&
53
- "border-color_active_hover_".concat(borderColorActiveHoverClass)
54
- : fillDisabledClass && "fill_".concat(fillDisabledClass), borderWidthClass && "border-width_".concat(borderWidthClass), borderTypeClass && "border_type_".concat(borderTypeClass), elevationClass && "elevation_".concat(elevationClass), onClick && 'cursor_type_pointer'), name: name, ref: ref, htmlFor: htmlFor, style: Object.assign({}, groupStyles, style), onClick: onClick, onMouseDown: onMouseDown, children: children }));
55
- });
56
-
57
- exports.Group = Group;
58
- exports.groupAppearance = groupAppearance;
59
- exports.groupConfig = groupConfig;
@@ -1,55 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import React from 'react';
3
- import clsx from 'clsx';
4
- import { useAppearanceConfig } from './hooks/useAppearanceConfig/useAppearanceConfig.js';
5
- import { useDevicePropsGenerator } from './hooks/useDevicePropsGenerator/useDevicePropsGenerator.js';
6
- import { useStyles } from './hooks/useStyles/useStyles.js';
7
-
8
- var groupAppearance = {
9
- dev: {
10
- direction: 'horizontal',
11
- fill: 'surfacePrimary',
12
- fillHover: 'surfacePrimaryHover',
13
- borderColor: 'surfaceBorderPrimary',
14
- borderWidth: 1,
15
- },
16
- };
17
-
18
- var groupConfig = {
19
- appearance: groupAppearance,
20
- setAppearance: function (appearanceConfig) {
21
- groupConfig.appearance = appearanceConfig;
22
- },
23
- };
24
- var Group = React.forwardRef(function Group(props, ref) {
25
- var id = props.id, dataTestId = props.dataTestId, dataTour = props.dataTour, className = props.className, name = props.name, appearance = props.appearance, isDisabled = props.isDisabled, htmlFor = props.htmlFor, scroll = props.scroll, style = props.style, _a = props.tag, Tag = _a === void 0 ? 'div' : _a, isActive = props.isActive, onClick = props.onClick, onMouseDown = props.onMouseDown, children = props.children;
26
- var appearanceConfig = useAppearanceConfig(appearance, groupConfig);
27
- var propsGenerator = useDevicePropsGenerator(props, appearanceConfig);
28
- var directionClass = propsGenerator.directionClass, flexGrowClass = propsGenerator.flexGrowClass, justifyContentClass = propsGenerator.justifyContentClass, alignClass = propsGenerator.alignClass, alignDirectionClass = propsGenerator.alignDirectionClass, fillActiveClass = propsGenerator.fillActiveClass, fillActiveHoverClass = propsGenerator.fillActiveHoverClass, fillClass = propsGenerator.fillClass, fillDisabledClass = propsGenerator.fillDisabledClass, fillHoverClass = propsGenerator.fillHoverClass, borderColorActiveClass = propsGenerator.borderColorActiveClass, borderColorActiveHoverClass = propsGenerator.borderColorActiveHoverClass, borderColorClass = propsGenerator.borderColorClass, borderColorHoverClass = propsGenerator.borderColorHoverClass, borderTypeClass = propsGenerator.borderTypeClass, borderWidthClass = propsGenerator.borderWidthClass, textColorActiveClass = propsGenerator.textColorActiveClass, textColorClass = propsGenerator.textColorClass, textColorHoverClass = propsGenerator.textColorHoverClass, columnsClass = propsGenerator.columnsClass, elevationClass = propsGenerator.elevationClass, heightClass = propsGenerator.heightClass, iconFillHoverClass = propsGenerator.iconFillHoverClass, shapeClass = propsGenerator.shapeClass, stackingClass = propsGenerator.stackingClass, widthClass = propsGenerator.widthClass, wrapClass = propsGenerator.wrapClass;
29
- // @ts-expect-error
30
- var groupStyles = useStyles(props).styles;
31
- return (jsx(Tag, { id: id, "data-test-id": dataTestId, "data-tour": dataTour, className: clsx(className, 'group', widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), columnsClass && "group_columns_".concat(columnsClass), alignDirectionClass && "align_".concat(alignDirectionClass), directionClass && "group_direction_".concat(directionClass), alignClass && "align_".concat(alignClass), justifyContentClass && "justify-content_".concat(justifyContentClass), textColorClass && "group_text-color_".concat(textColorClass), textColorActiveClass &&
32
- "group_text-color_active_".concat(textColorActiveClass), textColorHoverClass && "group_text-color_hover_".concat(textColorHoverClass), iconFillHoverClass && "group_icon_fill_hover_".concat(iconFillHoverClass), !isDisabled
33
- ? !isActive
34
- ? fillClass && "fill_".concat(fillClass)
35
- : fillActiveClass && "fill_active_".concat(fillActiveClass)
36
- : fillDisabledClass && "fill_".concat(fillDisabledClass), !isDisabled
37
- ? !isActive
38
- ? fillHoverClass && "fill_hover_".concat(fillHoverClass)
39
- : fillActiveHoverClass &&
40
- "fill_active_hover_".concat(fillActiveHoverClass)
41
- : fillDisabledClass && "fill_".concat(fillDisabledClass), scroll && "group_scroll_".concat(scroll), stackingClass && "group_stacking_".concat(stackingClass), wrapClass && "group_wrap_".concat(wrapClass), flexGrowClass && "flex-grow_".concat(flexGrowClass), shapeClass && "group_shape_".concat(shapeClass), !isDisabled
42
- ? !isActive
43
- ? borderColorClass && "border-color_".concat(borderColorClass)
44
- : borderColorActiveClass &&
45
- "border-color_active_".concat(borderColorActiveClass)
46
- : fillDisabledClass && "fill_".concat(fillDisabledClass), !isDisabled
47
- ? !isActive
48
- ? borderColorHoverClass &&
49
- "border-color_hover_".concat(borderColorHoverClass)
50
- : borderColorActiveHoverClass &&
51
- "border-color_active_hover_".concat(borderColorActiveHoverClass)
52
- : fillDisabledClass && "fill_".concat(fillDisabledClass), borderWidthClass && "border-width_".concat(borderWidthClass), borderTypeClass && "border_type_".concat(borderTypeClass), elevationClass && "elevation_".concat(elevationClass), onClick && 'cursor_type_pointer'), name: name, ref: ref, htmlFor: htmlFor, style: Object.assign({}, groupStyles, style), onClick: onClick, onMouseDown: onMouseDown, children: children }));
53
- });
54
-
55
- export { Group as G, groupAppearance as a, groupConfig as g };
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var React = require('react');
5
- var clsx = require('clsx');
6
- var urlWithAssetPrefix = require('./cjs/hoc/urlWithAssetPrefix.js');
7
- var useDevicePropsGenerator = require('./cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
8
- var useStyles = require('./cjs/hooks/useStyles/useStyles.js');
9
-
10
- var Image = urlWithAssetPrefix.urlWithAssetPrefix(function Image(props) {
11
- var className = props.className, type = props.type, src = props.src, title = props.title, alt = props.alt, caption = props.caption, imageClassName = props.imageClassName, imageWrapperClassName = props.imageWrapperClassName, mode = props.mode, overlay = props.overlay, placeholderUrl = props.placeholderUrl, before = props.before, after = props.after, isSkeleton = props.isSkeleton, onClick = props.onClick, onError = props.onError, children = props.children;
12
- var propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props);
13
- var fillClass = propsGenerator.fillClass, fillHoverClass = propsGenerator.fillHoverClass, borderColorClass = propsGenerator.borderColorClass, borderColorImageClass = propsGenerator.borderColorImageClass, borderTypeClass = propsGenerator.borderTypeClass, borderWidthClass = propsGenerator.borderWidthClass, cursorClass = propsGenerator.cursorClass, heightClass = propsGenerator.heightClass, horizontalAlignClass = propsGenerator.horizontalAlignClass, imageHeightClass = propsGenerator.imageHeightClass, imageWidthClass = propsGenerator.imageWidthClass, resizeModeClass = propsGenerator.resizeModeClass, shapeClass = propsGenerator.shapeClass, verticalAlignClass = propsGenerator.verticalAlignClass, widthClass = propsGenerator.widthClass;
14
- var _a = useStyles.useStyles(props), imageStyles = _a.image, styles = _a.styles, wrapperStyles = _a.wrapper;
15
- console.log(styles);
16
- var onErrorImage = React.useCallback(function (event) {
17
- if (onError) {
18
- onError(event);
19
- }
20
- else if (placeholderUrl && !event.target.src.endsWith(placeholderUrl)) {
21
- event.target.src = placeholderUrl;
22
- }
23
- }, [onError, placeholderUrl]);
24
- return (jsxRuntime.jsxs("div", { className: clsx(className, 'image', mode && "image_mode_".concat(mode), type && "image_type_".concat(type), cursorClass && "cursor_".concat(cursorClass), horizontalAlignClass &&
25
- "image_horizontal-align_".concat(horizontalAlignClass), verticalAlignClass && "image_vertical-align_".concat(verticalAlignClass), shapeClass && "image_shape_".concat(shapeClass), fillClass && "fill_".concat(fillClass), fillHoverClass && "fill_hover_".concat(fillHoverClass), resizeModeClass && "image_resize-mode_".concat(resizeModeClass), widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), isSkeleton && 'image_skeleton'), style: styles, onClick: onClick, children: [before, jsxRuntime.jsxs("div", { className: clsx('image__wrapper', imageWrapperClassName), style: wrapperStyles, children: [jsxRuntime.jsx("img", { className: clsx('image__item', imageWidthClass && "width_".concat(imageWidthClass), imageHeightClass && "height_".concat(imageHeightClass), imageClassName, borderWidthClass && "border-width_".concat(borderWidthClass), borderColorClass && "border-color_".concat(borderColorClass), borderTypeClass && "border_type_".concat(borderTypeClass), borderColorImageClass &&
26
- "border-color-image_".concat(borderColorImageClass)), src: src, title: title || alt, alt: alt || title, style: imageStyles, onError: onErrorImage }), overlay, caption, children] }), after] }));
27
- });
28
-
29
- exports.Image = Image;
@@ -1,27 +0,0 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { useCallback } from 'react';
3
- import clsx from 'clsx';
4
- import { urlWithAssetPrefix } from './hoc/urlWithAssetPrefix.js';
5
- import { useDevicePropsGenerator } from './hooks/useDevicePropsGenerator/useDevicePropsGenerator.js';
6
- import { useStyles } from './hooks/useStyles/useStyles.js';
7
-
8
- var Image = urlWithAssetPrefix(function Image(props) {
9
- var className = props.className, type = props.type, src = props.src, title = props.title, alt = props.alt, caption = props.caption, imageClassName = props.imageClassName, imageWrapperClassName = props.imageWrapperClassName, mode = props.mode, overlay = props.overlay, placeholderUrl = props.placeholderUrl, before = props.before, after = props.after, isSkeleton = props.isSkeleton, onClick = props.onClick, onError = props.onError, children = props.children;
10
- var propsGenerator = useDevicePropsGenerator(props);
11
- var fillClass = propsGenerator.fillClass, fillHoverClass = propsGenerator.fillHoverClass, borderColorClass = propsGenerator.borderColorClass, borderColorImageClass = propsGenerator.borderColorImageClass, borderTypeClass = propsGenerator.borderTypeClass, borderWidthClass = propsGenerator.borderWidthClass, cursorClass = propsGenerator.cursorClass, heightClass = propsGenerator.heightClass, horizontalAlignClass = propsGenerator.horizontalAlignClass, imageHeightClass = propsGenerator.imageHeightClass, imageWidthClass = propsGenerator.imageWidthClass, resizeModeClass = propsGenerator.resizeModeClass, shapeClass = propsGenerator.shapeClass, verticalAlignClass = propsGenerator.verticalAlignClass, widthClass = propsGenerator.widthClass;
12
- var _a = useStyles(props), imageStyles = _a.image, styles = _a.styles, wrapperStyles = _a.wrapper;
13
- console.log(styles);
14
- var onErrorImage = useCallback(function (event) {
15
- if (onError) {
16
- onError(event);
17
- }
18
- else if (placeholderUrl && !event.target.src.endsWith(placeholderUrl)) {
19
- event.target.src = placeholderUrl;
20
- }
21
- }, [onError, placeholderUrl]);
22
- return (jsxs("div", { className: clsx(className, 'image', mode && "image_mode_".concat(mode), type && "image_type_".concat(type), cursorClass && "cursor_".concat(cursorClass), horizontalAlignClass &&
23
- "image_horizontal-align_".concat(horizontalAlignClass), verticalAlignClass && "image_vertical-align_".concat(verticalAlignClass), shapeClass && "image_shape_".concat(shapeClass), fillClass && "fill_".concat(fillClass), fillHoverClass && "fill_hover_".concat(fillHoverClass), resizeModeClass && "image_resize-mode_".concat(resizeModeClass), widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), isSkeleton && 'image_skeleton'), style: styles, onClick: onClick, children: [before, jsxs("div", { className: clsx('image__wrapper', imageWrapperClassName), style: wrapperStyles, children: [jsx("img", { className: clsx('image__item', imageWidthClass && "width_".concat(imageWidthClass), imageHeightClass && "height_".concat(imageHeightClass), imageClassName, borderWidthClass && "border-width_".concat(borderWidthClass), borderColorClass && "border-color_".concat(borderColorClass), borderTypeClass && "border_type_".concat(borderTypeClass), borderColorImageClass &&
24
- "border-color-image_".concat(borderColorImageClass)), src: src, title: title || alt, alt: alt || title, style: imageStyles, onError: onErrorImage }), overlay, caption, children] }), after] }));
25
- });
26
-
27
- export { Image as I };