@itcase/ui 1.2.30 → 1.2.31

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 (264) hide show
  1. package/dist/{Badge-TyPbVqR_.js → Badge-BMKD9teI.js} +6 -2
  2. package/dist/{Badge-BZYBmgBK.js → Badge-DQnTpE4I.js} +6 -2
  3. package/dist/{Button-avhviao1.js → Button-DS2l65oq.js} +4 -4
  4. package/dist/{Button-BcOsYgoT.js → Button-x4mnZJoS.js} +3 -3
  5. package/dist/Divider-3upWnf8a.js +71 -0
  6. package/dist/Divider-DE2Q5J36.js +68 -0
  7. package/dist/{DropdownItem-toApJyeB.js → DropdownItem-CT9Dmiub.js} +38 -14
  8. package/dist/DropdownItem-DzDP45iO.js +179 -0
  9. package/dist/{Icon-ClsRaxDk.js → Icon-B7BJo5kW.js} +14 -19
  10. package/dist/{Icon-B2BwTQnP.js → Icon-PoesVPJn.js} +13 -18
  11. package/dist/{Input-BaicBuyd.js → Input-DXbt_RWB.js} +1 -2
  12. package/dist/{Input-DbzsXvEf.js → Input-HGM-rzzr.js} +1 -2
  13. package/dist/{Label-fp2Bus_T.js → Label-BBm19sQ-.js} +3 -6
  14. package/dist/{Label-BfotYOmD.js → Label-Chm6tl6E.js} +3 -6
  15. package/dist/{Link-CzC1kU5C.js → Link-CeQuavin.js} +1 -1
  16. package/dist/Loader-CqEocvjh.js +56 -0
  17. package/dist/Loader-DRTOGvF1.js +59 -0
  18. package/dist/{MenuItem-BJ3uGKCH.js → MenuItem-DPJ_9FxW.js} +14 -3
  19. package/dist/{MenuItem-BEYVY0Vf.js → MenuItem-zHzWXIvQ.js} +15 -4
  20. package/dist/{Scrollbar-CrGXCZ_F.js → Scrollbar-Bo7z7ELm.js} +10 -13
  21. package/dist/{Scrollbar-DVlIZzvz.js → Scrollbar-CKbA0jQU.js} +10 -13
  22. package/dist/{Text-CC0xnhmx.js → Text-1b-Bk7yG.js} +3 -4
  23. package/dist/{Text-kxGZButz.js → Text-DlSG_p4u.js} +3 -4
  24. package/dist/{Title-CQ_Fr1hO.js → Title-mkus84Rh.js} +3 -6
  25. package/dist/{Title-Ze_OL1Co.js → Title-o5ofk8ge.js} +3 -6
  26. package/dist/{Tooltip-PrwacZFC.js → Tooltip-CNJN2lf5.js} +19 -3
  27. package/dist/{Tooltip-ccRCMYQM.js → Tooltip-f5EWhsGj.js} +19 -3
  28. package/dist/appearance/Avatar.js +5 -0
  29. package/dist/appearance/Code.js +5 -0
  30. package/dist/appearance/Divider.js +5 -0
  31. package/dist/appearance/DropdownItem.js +5 -0
  32. package/dist/appearance/Modal.js +5 -0
  33. package/dist/appearance/Response.js +95 -21
  34. package/dist/appearance/SiteMenu.js +5 -0
  35. package/dist/appearance/Switch.js +5 -0
  36. package/dist/appearance/Tile.js +5 -0
  37. package/dist/cjs/appearance/Avatar.js +7 -0
  38. package/dist/cjs/appearance/Code.js +7 -0
  39. package/dist/cjs/appearance/Divider.js +7 -0
  40. package/dist/cjs/appearance/DropdownItem.js +7 -0
  41. package/dist/cjs/appearance/Modal.js +7 -0
  42. package/dist/cjs/appearance/Response.js +95 -21
  43. package/dist/cjs/appearance/SiteMenu.js +7 -0
  44. package/dist/cjs/appearance/Switch.js +7 -0
  45. package/dist/cjs/appearance/Tile.js +7 -0
  46. package/dist/cjs/components/Accordion.js +6 -6
  47. package/dist/cjs/components/Avatar.js +22 -8
  48. package/dist/cjs/components/Badge.js +2 -3
  49. package/dist/cjs/components/Breadcrumbs.js +4 -8
  50. package/dist/cjs/components/Button.js +7 -8
  51. package/dist/cjs/components/Caption.js +0 -1
  52. package/dist/cjs/components/Card.js +3 -12
  53. package/dist/cjs/components/Cell.js +7 -12
  54. package/dist/cjs/components/Checkbox.js +1 -5
  55. package/dist/cjs/components/Chips.js +1 -2
  56. package/dist/cjs/components/Choice.js +6 -7
  57. package/dist/cjs/components/Code.js +31 -10
  58. package/dist/cjs/components/ContextMenu.js +9 -21
  59. package/dist/cjs/components/CookiesWarning.js +9 -15
  60. package/dist/cjs/components/DadataHintField.js +1 -2
  61. package/dist/cjs/components/DatePicker.js +8 -9
  62. package/dist/cjs/components/Divider.js +3 -2
  63. package/dist/cjs/components/Dot.js +1 -3
  64. package/dist/cjs/components/Dropdown.js +6 -4
  65. package/dist/cjs/components/Flex.js +0 -1
  66. package/dist/cjs/components/Grid.js +1 -8
  67. package/dist/cjs/components/Group.js +0 -1
  68. package/dist/cjs/components/HTMLContent.js +0 -1
  69. package/dist/cjs/components/Icon.js +5 -6
  70. package/dist/cjs/components/Image.js +0 -1
  71. package/dist/cjs/components/Input.js +1 -2
  72. package/dist/cjs/components/InputMask.js +7 -9
  73. package/dist/cjs/components/InputPassword.js +5 -6
  74. package/dist/cjs/components/Label.js +4 -5
  75. package/dist/cjs/components/LanguageSelector.js +5 -6
  76. package/dist/cjs/components/Link.js +0 -1
  77. package/dist/cjs/components/List.js +0 -1
  78. package/dist/cjs/components/Loader.js +2 -3
  79. package/dist/cjs/components/Logo.js +0 -1
  80. package/dist/cjs/components/Menu.js +2 -3
  81. package/dist/cjs/components/MenuItem.js +2 -3
  82. package/dist/cjs/components/Modal.js +27 -7
  83. package/dist/cjs/components/ModalSheetBottom.js +34 -0
  84. package/dist/cjs/components/Notification.js +7 -6
  85. package/dist/cjs/components/Overlay.js +0 -1
  86. package/dist/cjs/components/Page.js +3 -46
  87. package/dist/cjs/components/Pagination.js +8 -7
  88. package/dist/cjs/components/Panel.js +1 -2
  89. package/dist/cjs/components/Radio.js +1 -3
  90. package/dist/cjs/components/RangeSlider.js +0 -1
  91. package/dist/cjs/components/Response.js +20 -15
  92. package/dist/cjs/components/SVGContent.js +0 -1
  93. package/dist/cjs/components/ScrollOnDrag.js +0 -1
  94. package/dist/cjs/components/ScrollToView.js +0 -1
  95. package/dist/cjs/components/Scrollbar.js +1 -1
  96. package/dist/cjs/components/Search.js +9 -12
  97. package/dist/cjs/components/Segmented.js +1 -2
  98. package/dist/cjs/components/Select.js +7 -7
  99. package/dist/cjs/components/SiteMenu.js +18 -8
  100. package/dist/cjs/components/Swiper.js +6 -8
  101. package/dist/cjs/components/Switch.js +12 -3
  102. package/dist/cjs/components/Tab.js +4 -4
  103. package/dist/cjs/components/Text.js +1 -2
  104. package/dist/cjs/components/Textarea.js +0 -1
  105. package/dist/cjs/components/Tile.js +22 -6
  106. package/dist/cjs/components/Title.js +1 -2
  107. package/dist/cjs/components/Tooltip.js +3 -4
  108. package/dist/cjs/components/Video.js +0 -1
  109. package/dist/cjs/components/Wrapper.js +3 -8
  110. package/dist/cjs/context/Notifications.js +0 -5
  111. package/dist/cjs/context/UIContext.js +0 -9
  112. package/dist/cjs/hooks/useDeviceTargetClass.js +0 -1
  113. package/dist/cjs/hooks/useStyles.js +0 -1
  114. package/dist/components/Accordion.js +8 -8
  115. package/dist/components/Avatar.js +23 -10
  116. package/dist/components/Badge.js +2 -3
  117. package/dist/components/Breadcrumbs.js +6 -10
  118. package/dist/components/Button.js +8 -9
  119. package/dist/components/Caption.js +0 -1
  120. package/dist/components/Card.js +3 -12
  121. package/dist/components/Cell.js +8 -13
  122. package/dist/components/Checkbox.js +1 -5
  123. package/dist/components/Chips.js +1 -2
  124. package/dist/components/Choice.js +7 -8
  125. package/dist/components/Code.js +32 -12
  126. package/dist/components/ContextMenu.js +10 -22
  127. package/dist/components/CookiesWarning.js +10 -16
  128. package/dist/components/DadataHintField.js +2 -3
  129. package/dist/components/DatePicker.js +10 -11
  130. package/dist/components/Divider.js +2 -2
  131. package/dist/components/Dot.js +1 -3
  132. package/dist/components/Dropdown.js +7 -6
  133. package/dist/components/Flex.js +0 -1
  134. package/dist/components/Grid.js +1 -8
  135. package/dist/components/Group.js +0 -1
  136. package/dist/components/HTMLContent.js +0 -1
  137. package/dist/components/Icon.js +6 -7
  138. package/dist/components/Image.js +0 -1
  139. package/dist/components/Input.js +1 -2
  140. package/dist/components/InputMask.js +7 -9
  141. package/dist/components/InputPassword.js +6 -7
  142. package/dist/components/Label.js +4 -5
  143. package/dist/components/LanguageSelector.js +6 -7
  144. package/dist/components/Link.js +2 -3
  145. package/dist/components/List.js +2 -3
  146. package/dist/components/Loader.js +2 -3
  147. package/dist/components/Logo.js +2 -3
  148. package/dist/components/Menu.js +4 -5
  149. package/dist/components/MenuItem.js +4 -5
  150. package/dist/components/Modal.js +27 -8
  151. package/dist/components/ModalSheetBottom.js +32 -0
  152. package/dist/components/Notification.js +8 -7
  153. package/dist/components/Overlay.js +0 -1
  154. package/dist/components/Page.js +3 -46
  155. package/dist/components/Pagination.js +10 -9
  156. package/dist/components/Panel.js +1 -2
  157. package/dist/components/Radio.js +1 -3
  158. package/dist/components/RangeSlider.js +0 -1
  159. package/dist/components/Response.js +21 -16
  160. package/dist/components/SVGContent.js +0 -1
  161. package/dist/components/ScrollOnDrag.js +1 -2
  162. package/dist/components/ScrollToView.js +0 -1
  163. package/dist/components/Scrollbar.js +1 -1
  164. package/dist/components/Search.js +10 -13
  165. package/dist/components/Segmented.js +1 -2
  166. package/dist/components/Select.js +9 -9
  167. package/dist/components/SiteMenu.js +19 -10
  168. package/dist/components/Swiper.js +6 -8
  169. package/dist/components/Switch.js +12 -4
  170. package/dist/components/Tab.js +6 -6
  171. package/dist/components/Text.js +1 -2
  172. package/dist/components/Textarea.js +0 -1
  173. package/dist/components/Tile.js +22 -7
  174. package/dist/components/Title.js +1 -2
  175. package/dist/components/Tooltip.js +3 -4
  176. package/dist/components/Video.js +0 -1
  177. package/dist/components/Wrapper.js +3 -8
  178. package/dist/context/Notifications.js +1 -6
  179. package/dist/context/UIContext.js +0 -9
  180. package/dist/css/components/ModalSheetBottom/ModalSheetBottom.css +29 -0
  181. package/dist/hooks/useDeviceTargetClass.js +0 -1
  182. package/dist/hooks/useStyles.js +0 -1
  183. package/dist/stories/Response.stories.js +38 -12
  184. package/dist/{tslib.es6-w7hdJ3oZ.js → tslib.es6-5FtW-kfi.js} +1 -1
  185. package/dist/types/appearance/Avatar/index.d.ts +2 -0
  186. package/dist/types/appearance/Code/index.d.ts +2 -0
  187. package/dist/types/appearance/Divider/index.d.ts +2 -0
  188. package/dist/types/appearance/DropdownItem/index.d.ts +2 -0
  189. package/dist/types/appearance/Modal/index.d.ts +2 -0
  190. package/dist/types/appearance/SiteMenu/index.d.ts +2 -0
  191. package/dist/types/appearance/Switch/index.d.ts +2 -0
  192. package/dist/types/appearance/Tile/index.d.ts +2 -0
  193. package/dist/types/components/Avatar/Avatar.d.ts +3 -2
  194. package/dist/types/components/Avatar/Avatar.interface.d.ts +25 -11
  195. package/dist/types/components/Avatar/index.d.ts +1 -1
  196. package/dist/types/components/Badge/Badge.d.ts +6 -0
  197. package/dist/types/components/Breadcrumbs/BreadcrumbsItem.d.ts +0 -5
  198. package/dist/types/components/Button/Button.interface.d.ts +6 -6
  199. package/dist/types/components/Card/Card.d.ts +0 -10
  200. package/dist/types/components/Cell/Cell.d.ts +0 -6
  201. package/dist/types/components/Checkbox/Checkbox.d.ts +0 -5
  202. package/dist/types/components/Code/Code.d.ts +6 -8
  203. package/dist/types/components/Code/Code.interface.d.ts +21 -2
  204. package/dist/types/components/Code/index.d.ts +1 -1
  205. package/dist/types/components/ContextMenu/ContextMenu.d.ts +0 -5
  206. package/dist/types/components/CookiesWarning/CookiesWarning.d.ts +0 -7
  207. package/dist/types/components/Divider/Divider.d.ts +3 -2
  208. package/dist/types/components/Divider/Divider.interface.d.ts +11 -0
  209. package/dist/types/components/Divider/index.d.ts +1 -1
  210. package/dist/types/components/Dot/Dot.d.ts +0 -3
  211. package/dist/types/components/Dropdown/Dropdown.d.ts +0 -7
  212. package/dist/types/components/Dropdown/Dropdown.interface.d.ts +28 -15
  213. package/dist/types/components/Dropdown/DropdownItem.d.ts +5 -4
  214. package/dist/types/components/Dropdown/index.d.ts +2 -2
  215. package/dist/types/components/Grid/Grid.d.ts +0 -5
  216. package/dist/types/components/Grid/GridRow.d.ts +0 -5
  217. package/dist/types/components/Label/Label.d.ts +0 -5
  218. package/dist/types/components/Loader/Loader.interface.d.ts +3 -3
  219. package/dist/types/components/MenuItem/MenuItem.interface.d.ts +2 -2
  220. package/dist/types/components/Modal/Modal.d.ts +3 -2
  221. package/dist/types/components/Modal/Modal.interface.d.ts +22 -6
  222. package/dist/types/components/Modal/index.d.ts +2 -2
  223. package/dist/types/components/ModalSheetBottom/ModalSheetBottom.d.ts +3 -0
  224. package/dist/types/components/ModalSheetBottom/ModalSheetBottom.interface.d.ts +11 -0
  225. package/dist/types/components/ModalSheetBottom/index.d.ts +1 -0
  226. package/dist/types/components/Notification/Notification.interface.d.ts +8 -7
  227. package/dist/types/components/Page/Page.d.ts +3 -0
  228. package/dist/types/components/Page/Page.interface.d.ts +18 -0
  229. package/dist/types/components/Page/index.d.ts +1 -42
  230. package/dist/types/components/Radio/Radio.d.ts +0 -1
  231. package/dist/types/components/Response/Response.interface.d.ts +4 -4
  232. package/dist/types/components/Scrollbar/Scrollbar.d.ts +0 -5
  233. package/dist/types/components/Search/Search.interface.d.ts +9 -9
  234. package/dist/types/components/SiteMenu/SiteMenu.d.ts +3 -2
  235. package/dist/types/components/SiteMenu/SiteMenu.interface.d.ts +18 -5
  236. package/dist/types/components/SiteMenu/index.d.ts +2 -2
  237. package/dist/types/components/Swiper/Swiper.d.ts +0 -1
  238. package/dist/types/components/Switch/Switch.d.ts +3 -2
  239. package/dist/types/components/Switch/Switch.interface.d.ts +17 -4
  240. package/dist/types/components/Switch/index.d.ts +1 -1
  241. package/dist/types/components/Text/Text.d.ts +0 -5
  242. package/dist/types/components/Text/Text.interface.d.ts +1 -1
  243. package/dist/types/components/Tile/Tile.d.ts +3 -2
  244. package/dist/types/components/Tile/Tile.interface.d.ts +21 -9
  245. package/dist/types/components/Tile/index.d.ts +1 -1
  246. package/dist/types/components/Title/Title.d.ts +0 -5
  247. package/dist/types/components/Wrapper/Wrapper.d.ts +0 -6
  248. package/dist/types/context/Notifications.d.ts +0 -7
  249. package/dist/types/context/UIContext.d.ts +10 -2
  250. package/dist/types/icons/index.d.ts +2 -2
  251. package/dist/types/types/componentProps/appearanceKeys.d.ts +1 -1
  252. package/package.json +12 -15
  253. package/dist/Divider-BjB5MD6u.js +0 -50
  254. package/dist/Divider-U5UdY-ef.js +0 -48
  255. package/dist/DropdownItem-CFkRx8LX.js +0 -156
  256. package/dist/Loader-CU_5Ydmy.js +0 -53
  257. package/dist/Loader-Ck59IXGG.js +0 -56
  258. package/dist/types/constants/componentProps/align.d.ts +0 -2
  259. package/dist/types/constants/componentProps/alignDirection.d.ts +0 -2
  260. package/dist/types/constants/componentProps/fill.d.ts +0 -2
  261. package/dist/types/constants/componentProps/horizontalResizeMode.d.ts +0 -2
  262. package/dist/types/constants/componentProps/position.d.ts +0 -2
  263. package/dist/types/constants/componentProps/verticalResizeMode.d.ts +0 -2
  264. /package/dist/css/{styles → mediaqueries}/mediaqueries.css +0 -0
@@ -5,7 +5,7 @@ var clsx = require('clsx');
5
5
  var index = require('./cjs/appearance/Badge.js');
6
6
  var useDeviceTargetClass = require('./cjs/hooks/useDeviceTargetClass.js');
7
7
  var useStyles = require('./cjs/hooks/useStyles.js');
8
- var Text = require('./Text-CC0xnhmx.js');
8
+ var Text = require('./Text-1b-Bk7yG.js');
9
9
 
10
10
  var badgeConfig = {
11
11
  appearance: index.badgeAppearance,
@@ -15,7 +15,7 @@ var badgeConfig = {
15
15
  };
16
16
  function Badge(props) {
17
17
  var _a, _b;
18
- var children = props.children, appearance = props.appearance, className = props.className, mode = props.mode; props.shape; props.size; var textColor = props.textColor, textSize = props.textSize, value = props.value;
18
+ var children = props.children, appearance = props.appearance, className = props.className, mode = props.mode, textColor = props.textColor, textSize = props.textSize, value = props.value;
19
19
  var borderColorClass = useDeviceTargetClass.useDeviceTargetClass(props, {
20
20
  prefix: 'border-color_',
21
21
  propsKey: 'borderColor',
@@ -62,6 +62,10 @@ function Badge(props) {
62
62
  ((_b = "fill_hover_".concat(appearanceConfig.fillHover)) === null || _b === void 0 ? void 0 : _b.replace(/([A-Z])/g, '-$1').toLowerCase())), positionClass, sizeClass, shapeClass), style: badgeStyles, children: children ||
63
63
  (value && (jsxRuntime.jsx(Text.Text, { size: textSize, textColor: textColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.textColor), children: value }))) }));
64
64
  }
65
+ Badge.defaultProps = {
66
+ shape: 'circular',
67
+ size: 'm',
68
+ };
65
69
 
66
70
  exports.Badge = Badge;
67
71
  exports.badgeConfig = badgeConfig;
@@ -3,7 +3,7 @@ import clsx from 'clsx';
3
3
  import { badgeAppearance } from './appearance/Badge.js';
4
4
  import { useDeviceTargetClass } from './hooks/useDeviceTargetClass.js';
5
5
  import { useStyles } from './hooks/useStyles.js';
6
- import { T as Text } from './Text-kxGZButz.js';
6
+ import { T as Text } from './Text-DlSG_p4u.js';
7
7
 
8
8
  var badgeConfig = {
9
9
  appearance: badgeAppearance,
@@ -13,7 +13,7 @@ var badgeConfig = {
13
13
  };
14
14
  function Badge(props) {
15
15
  var _a, _b;
16
- var children = props.children, appearance = props.appearance, className = props.className, mode = props.mode; props.shape; props.size; var textColor = props.textColor, textSize = props.textSize, value = props.value;
16
+ var children = props.children, appearance = props.appearance, className = props.className, mode = props.mode, textColor = props.textColor, textSize = props.textSize, value = props.value;
17
17
  var borderColorClass = useDeviceTargetClass(props, {
18
18
  prefix: 'border-color_',
19
19
  propsKey: 'borderColor',
@@ -60,5 +60,9 @@ function Badge(props) {
60
60
  ((_b = "fill_hover_".concat(appearanceConfig.fillHover)) === null || _b === void 0 ? void 0 : _b.replace(/([A-Z])/g, '-$1').toLowerCase())), positionClass, sizeClass, shapeClass), style: badgeStyles, children: children ||
61
61
  (value && (jsx(Text, { size: textSize, textColor: textColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.textColor), children: value }))) }));
62
62
  }
63
+ Badge.defaultProps = {
64
+ shape: 'circular',
65
+ size: 'm',
66
+ };
63
67
 
64
68
  export { Badge as B, badgeConfig as b };
@@ -4,10 +4,10 @@ import clsx from 'clsx';
4
4
  import { buttonAppearance } from './appearance/Button.js';
5
5
  import { useDeviceTargetClass } from './hooks/useDeviceTargetClass.js';
6
6
  import { useStyles } from './hooks/useStyles.js';
7
- import { I as Icon } from './Icon-ClsRaxDk.js';
8
- import { a as LinkWrapper } from './Link-CzC1kU5C.js';
9
- import { L as Loader } from './Loader-CU_5Ydmy.js';
10
- import { T as Text } from './Text-kxGZButz.js';
7
+ import { I as Icon } from './Icon-B7BJo5kW.js';
8
+ import { a as LinkWrapper } from './Link-CeQuavin.js';
9
+ import { L as Loader } from './Loader-CqEocvjh.js';
10
+ import { T as Text } from './Text-DlSG_p4u.js';
11
11
 
12
12
  var buttonConfig = {
13
13
  appearance: buttonAppearance,
@@ -6,10 +6,10 @@ var clsx = require('clsx');
6
6
  var index = require('./cjs/appearance/Button.js');
7
7
  var useDeviceTargetClass = require('./cjs/hooks/useDeviceTargetClass.js');
8
8
  var useStyles = require('./cjs/hooks/useStyles.js');
9
- var Icon = require('./Icon-B2BwTQnP.js');
9
+ var Icon = require('./Icon-PoesVPJn.js');
10
10
  var Link = require('./Link-CqWzwh8V.js');
11
- var Loader = require('./Loader-Ck59IXGG.js');
12
- var Text = require('./Text-CC0xnhmx.js');
11
+ var Loader = require('./Loader-DRTOGvF1.js');
12
+ var Text = require('./Text-1b-Bk7yG.js');
13
13
 
14
14
  var buttonConfig = {
15
15
  appearance: index.buttonAppearance,
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var clsx = require('clsx');
5
+ var index = require('./cjs/appearance/Divider.js');
6
+ var useDeviceTargetClass = require('./cjs/hooks/useDeviceTargetClass.js');
7
+ var useStyles = require('./cjs/hooks/useStyles.js');
8
+
9
+ var dividerConfig = {
10
+ appearance: index.dividerAppearance,
11
+ setAppearance: function (newComponent) {
12
+ dividerConfig.appearance = newComponent;
13
+ },
14
+ };
15
+ function Divider(props) {
16
+ var appearance = props.appearance, className = props.className;
17
+ var directionClass = useDeviceTargetClass.useDeviceTargetClass(props, {
18
+ prefix: 'divider_direction_',
19
+ propsKey: 'direction',
20
+ });
21
+ var fillClass = useDeviceTargetClass.useDeviceTargetClass(props, {
22
+ prefix: 'fill_',
23
+ propsKey: 'fill',
24
+ });
25
+ var fillHoverClass = useDeviceTargetClass.useDeviceTargetClass(props, {
26
+ prefix: 'fill_hover_',
27
+ propsKey: 'fillHover',
28
+ });
29
+ var fillActiveClass = useDeviceTargetClass.useDeviceTargetClass(props, {
30
+ prefix: 'fill_active_',
31
+ propsKey: 'fillActive',
32
+ });
33
+ var fillActiveHoverClass = useDeviceTargetClass.useDeviceTargetClass(props, {
34
+ prefix: 'fill_active_hover_',
35
+ propsKey: 'fillActiveHover',
36
+ });
37
+ var fillDisabledClass = useDeviceTargetClass.useDeviceTargetClass(props, {
38
+ prefix: 'fill_disabled_',
39
+ propsKey: 'fillDisabled',
40
+ });
41
+ var sizeClass = useDeviceTargetClass.useDeviceTargetClass(props, {
42
+ prefix: 'divider_size_',
43
+ propsKey: 'size',
44
+ });
45
+ var widthClass = useDeviceTargetClass.useDeviceTargetClass(props, {
46
+ prefix: 'width_',
47
+ propsKey: 'width',
48
+ });
49
+ // @ts-expect-error
50
+ var hrStyles = useStyles.useStyles(props).styles;
51
+ var appearanceConfig = appearance && dividerConfig.appearance && dividerConfig.appearance[appearance];
52
+ return (jsxRuntime.jsx("hr", { className: clsx(className, 'divider', widthClass ||
53
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.width) &&
54
+ "width_".concat(appearanceConfig.width).replace(/([A-Z])/g, '-$1').toLowerCase()), directionClass ||
55
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.direction) &&
56
+ "divider_direction_".concat(appearanceConfig.direction)
57
+ .replace(/([A-Z])/g, '-$1')
58
+ .toLowerCase()), sizeClass ||
59
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.size) &&
60
+ "divider_size_".concat(appearanceConfig.size).replace(/([A-Z])/g, '-$1').toLowerCase()), fillClass ||
61
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fill) &&
62
+ "fill_".concat(appearanceConfig.fill).replace(/([A-Z])/g, '-$1').toLowerCase()), fillHoverClass ||
63
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fillHover) &&
64
+ "fill_hover_".concat(appearanceConfig.fillHover).replace(/([A-Z])/g, '-$1').toLowerCase()), fillActiveClass, fillActiveHoverClass, fillDisabledClass), style: hrStyles }));
65
+ }
66
+ Divider.defaultProps = {
67
+ size: 'xs',
68
+ };
69
+
70
+ exports.Divider = Divider;
71
+ exports.dividerConfig = dividerConfig;
@@ -0,0 +1,68 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import clsx from 'clsx';
3
+ import { dividerAppearance } from './appearance/Divider.js';
4
+ import { useDeviceTargetClass } from './hooks/useDeviceTargetClass.js';
5
+ import { useStyles } from './hooks/useStyles.js';
6
+
7
+ var dividerConfig = {
8
+ appearance: dividerAppearance,
9
+ setAppearance: function (newComponent) {
10
+ dividerConfig.appearance = newComponent;
11
+ },
12
+ };
13
+ function Divider(props) {
14
+ var appearance = props.appearance, className = props.className;
15
+ var directionClass = useDeviceTargetClass(props, {
16
+ prefix: 'divider_direction_',
17
+ propsKey: 'direction',
18
+ });
19
+ var fillClass = useDeviceTargetClass(props, {
20
+ prefix: 'fill_',
21
+ propsKey: 'fill',
22
+ });
23
+ var fillHoverClass = useDeviceTargetClass(props, {
24
+ prefix: 'fill_hover_',
25
+ propsKey: 'fillHover',
26
+ });
27
+ var fillActiveClass = useDeviceTargetClass(props, {
28
+ prefix: 'fill_active_',
29
+ propsKey: 'fillActive',
30
+ });
31
+ var fillActiveHoverClass = useDeviceTargetClass(props, {
32
+ prefix: 'fill_active_hover_',
33
+ propsKey: 'fillActiveHover',
34
+ });
35
+ var fillDisabledClass = useDeviceTargetClass(props, {
36
+ prefix: 'fill_disabled_',
37
+ propsKey: 'fillDisabled',
38
+ });
39
+ var sizeClass = useDeviceTargetClass(props, {
40
+ prefix: 'divider_size_',
41
+ propsKey: 'size',
42
+ });
43
+ var widthClass = useDeviceTargetClass(props, {
44
+ prefix: 'width_',
45
+ propsKey: 'width',
46
+ });
47
+ // @ts-expect-error
48
+ var hrStyles = useStyles(props).styles;
49
+ var appearanceConfig = appearance && dividerConfig.appearance && dividerConfig.appearance[appearance];
50
+ return (jsx("hr", { className: clsx(className, 'divider', widthClass ||
51
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.width) &&
52
+ "width_".concat(appearanceConfig.width).replace(/([A-Z])/g, '-$1').toLowerCase()), directionClass ||
53
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.direction) &&
54
+ "divider_direction_".concat(appearanceConfig.direction)
55
+ .replace(/([A-Z])/g, '-$1')
56
+ .toLowerCase()), sizeClass ||
57
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.size) &&
58
+ "divider_size_".concat(appearanceConfig.size).replace(/([A-Z])/g, '-$1').toLowerCase()), fillClass ||
59
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fill) &&
60
+ "fill_".concat(appearanceConfig.fill).replace(/([A-Z])/g, '-$1').toLowerCase()), fillHoverClass ||
61
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fillHover) &&
62
+ "fill_hover_".concat(appearanceConfig.fillHover).replace(/([A-Z])/g, '-$1').toLowerCase()), fillActiveClass, fillActiveHoverClass, fillDisabledClass), style: hrStyles }));
63
+ }
64
+ Divider.defaultProps = {
65
+ size: 'xs',
66
+ };
67
+
68
+ export { Divider as D, dividerConfig as d };
@@ -5,17 +5,18 @@ var React = require('react');
5
5
  var clsx = require('clsx');
6
6
  var useDeviceTargetClass = require('./cjs/hooks/useDeviceTargetClass.js');
7
7
  var useStyles = require('./cjs/hooks/useStyles.js');
8
- var Divider = require('./Divider-BjB5MD6u.js');
8
+ var index = require('./cjs/appearance/DropdownItem.js');
9
+ var Divider = require('./Divider-3upWnf8a.js');
9
10
  var Link = require('./Link-CqWzwh8V.js');
10
- var Text = require('./Text-CC0xnhmx.js');
11
+ var Text = require('./Text-1b-Bk7yG.js');
11
12
 
12
13
  function Dropdown(props) {
13
- var after = props.after, before = props.before, animationClose = props.animationClose, animationOpen = props.animationOpen, children = props.children, className = props.className, set = props.set, isOpen = props.isOpen, setIsOpen = props.setIsOpen;
14
+ var children = props.children, isOpen = props.isOpen, after = props.after, _a = props.animationClose, animationClose = _a === void 0 ? 'dropdown_animation_close' : _a, _b = props.animationOpen, animationOpen = _b === void 0 ? 'dropdown_animation_open' : _b, before = props.before, className = props.className, _c = props.set, set = _c === void 0 ? 'normal' : _c, setIsOpen = props.setIsOpen;
14
15
  var dropdownRef = React.useRef(null);
15
16
  // const [isOpen, setIsOpen] = useState(false)
16
- var _a = React.useState({
17
+ var _d = React.useState({
17
18
  className: '',
18
- }), animationState = _a[0], setAnimationState = _a[1];
19
+ }), animationState = _d[0], setAnimationState = _d[1];
19
20
  var onAnimationEnd = React.useCallback(function () {
20
21
  // When component is change his visibility(display) in DOM,
21
22
  // animation of close can run unnecessary on showing element.
@@ -82,14 +83,15 @@ function Dropdown(props) {
82
83
  // Add "onAnimationEnd" only for wrapper for ignore dropdown button
83
84
  onAnimationEnd: onAnimationEnd, children: children })), after] }));
84
85
  }
85
- Dropdown.defaultProps = {
86
- animationOpen: 'dropdown_animation_open',
87
- animationClose: 'dropdown_animation_close',
88
- set: 'normal',
89
- };
90
86
 
87
+ var dropdownItemConfig = {
88
+ appearance: index.dropdownItemAppearance,
89
+ setAppearance: function (newComponent) {
90
+ dropdownItemConfig.appearance = newComponent;
91
+ },
92
+ };
91
93
  function DropdownItem(props) {
92
- var after = props.after, before = props.before, children = props.children, className = props.className, desc = props.desc, descTextColor = props.descTextColor, descTextColorHover = props.descTextColorHover, descTextGradient = props.descTextGradient, descTextSize = props.descTextSize, descTextStyle = props.descTextStyle, descTextWeight = props.descTextWeight, descTextWrap = props.descTextWrap, dividerDirection = props.dividerDirection, dividerFill = props.dividerFill, dividerSize = props.dividerSize, href = props.href, label = props.label, labelTextAlign = props.labelTextAlign, labelTextColor = props.labelTextColor, labelTextColorActive = props.labelTextColorActive, labelTextColorHover = props.labelTextColorHover, labelTextGradient = props.labelTextGradient, labelTextSize = props.labelTextSize, labelTextStyle = props.labelTextStyle, labelTextWeight = props.labelTextWeight, labelTextWrap = props.labelTextWrap, link = props.link, linkFill = props.linkFill, rel = props.rel, set = props.set, showDivider = props.showDivider, target = props.target, underline = props.underline, isActive = props.isActive, isHover = props.isHover, onClick = props.onClick, onMouseEnter = props.onMouseEnter;
94
+ var children = props.children, isActive = props.isActive, isHover = props.isHover, after = props.after, appearance = props.appearance, before = props.before, className = props.className, desc = props.desc, descTextColor = props.descTextColor, descTextColorHover = props.descTextColorHover, descTextGradient = props.descTextGradient, descTextSize = props.descTextSize, descTextStyle = props.descTextStyle, descTextWeight = props.descTextWeight, descTextWrap = props.descTextWrap, dividerDirection = props.dividerDirection, dividerFill = props.dividerFill, dividerSize = props.dividerSize, href = props.href, label = props.label, labelTextAlign = props.labelTextAlign, labelTextColor = props.labelTextColor, labelTextColorActive = props.labelTextColorActive, labelTextColorHover = props.labelTextColorHover, labelTextGradient = props.labelTextGradient, labelTextSize = props.labelTextSize, labelTextStyle = props.labelTextStyle, labelTextWeight = props.labelTextWeight, labelTextWrap = props.labelTextWrap, link = props.link, linkFill = props.linkFill, rel = props.rel, set = props.set, showDivider = props.showDivider, target = props.target, underline = props.underline, onClick = props.onClick, onMouseEnter = props.onMouseEnter;
93
95
  var alignDirectionClass = useDeviceTargetClass.useDeviceTargetClass(props, {
94
96
  prefix: 'align_',
95
97
  propsKey: 'alignDirection',
@@ -147,13 +149,35 @@ function DropdownItem(props) {
147
149
  });
148
150
  // @ts-expect-error
149
151
  var dropdownItem = useStyles.useStyles(props).styles;
150
- return (jsxRuntime.jsxs("div", { className: clsx('dropdown__item', isActive && 'dropdown__item_state_active', isHover && 'dropdown__item_state_hover', directionClass, className, fillClass, fillHoverClass, fillActiveClass, fillActiveHoverClass, fillDisabledClass, sizeClass, shapeClass, typeClass, widthClass, onClick && 'cursor_type_pointer', set && "dropdown__item_set_".concat(set), justifyContentClass), style: dropdownItem, onClick: onClick, onMouseEnter: onMouseEnter, children: [jsxRuntime.jsx("div", { className: "dropdown__item-wrapper", children: jsxRuntime.jsx(Link.Link, { href: link || href, className: clsx('dropdown__item-link', alignDirectionClass, alignClass), underline: underline, fill: linkFill, target: target, rel: rel, children: jsxRuntime.jsxs(React.Fragment, { children: [before, children || (jsxRuntime.jsxs(React.Fragment, { children: [label && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-label", size: labelTextSize, textAlign: labelTextAlign, textColor: labelTextColor, textColorActive: isActive ? labelTextColorActive : undefined, textColorHover: labelTextColorHover, textColorGradient: labelTextGradient, textStyle: labelTextStyle, textWeight: labelTextWeight, textWrap: labelTextWrap, children: label })), desc && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-desc", size: descTextSize, textColor: descTextColor, textColorHover: descTextColorHover, textColorGradient: descTextGradient, textStyle: descTextStyle, textWeight: descTextWeight, textWrap: descTextWrap, children: desc }))] })), after] }) }) }), showDivider && (jsxRuntime.jsx(Divider.Divider, { direction: dividerDirection, fill: dividerFill || 'surfaceTertiary', size: dividerSize, width: "fill" }))] }));
152
+ var appearanceConfig = appearance && dropdownItemConfig.appearance && dropdownItemConfig.appearance[appearance];
153
+ return (jsxRuntime.jsxs("div", { className: clsx('dropdown__item', isActive && 'dropdown__item_state_active', isHover && 'dropdown__item_state_hover', directionClass ||
154
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.direction) &&
155
+ "dropdown__item_direction_".concat(appearanceConfig.direction)
156
+ .replace(/([A-Z])/g, '-$1')
157
+ .toLowerCase()), className, fillClass ||
158
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fill) &&
159
+ "fill_".concat(appearanceConfig.fill).replace(/([A-Z])/g, '-$1').toLowerCase()), fillHoverClass ||
160
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fillHover) &&
161
+ "fill_hover_".concat(appearanceConfig.fillHover).replace(/([A-Z])/g, '-$1').toLowerCase()), fillActiveClass, fillActiveHoverClass, fillDisabledClass, sizeClass ||
162
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.size) &&
163
+ "dropdown__item_size_".concat(appearanceConfig.size)
164
+ .replace(/([A-Z])/g, '-$1')
165
+ .toLowerCase()), shapeClass ||
166
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.shape) &&
167
+ "dropdown__item_shape_".concat(appearanceConfig.shape)
168
+ .replace(/([A-Z])/g, '-$1')
169
+ .toLowerCase()), typeClass, widthClass ||
170
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.width) &&
171
+ "dropdown__item_width_".concat(appearanceConfig.width)
172
+ .replace(/([A-Z])/g, '-$1')
173
+ .toLowerCase()), onClick && 'cursor_type_pointer', set && "dropdown__item_set_".concat(set), justifyContentClass), style: dropdownItem, onClick: onClick, onMouseEnter: onMouseEnter, children: [jsxRuntime.jsx("div", { className: "dropdown__item-wrapper", children: jsxRuntime.jsx(Link.Link, { className: clsx('dropdown__item-link', alignDirectionClass, alignClass), fill: linkFill, href: link || href, rel: rel, target: target, underline: underline, children: jsxRuntime.jsxs(React.Fragment, { children: [before, children || (jsxRuntime.jsxs(React.Fragment, { children: [label && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-label", size: labelTextSize || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.labelTextSize), textAlign: labelTextAlign, textColor: labelTextColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.labelTextColor), textColorActive: isActive ? labelTextColorActive : undefined, textColorGradient: labelTextGradient, textColorHover: labelTextColorHover, textStyle: labelTextStyle, textWeight: labelTextWeight, textWrap: labelTextWrap, children: label })), desc && (jsxRuntime.jsx(Text.Text, { className: "dropdown__item-desc", size: descTextSize || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.descTextSize), textColor: descTextColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.descTextColor), textColorGradient: descTextGradient, textColorHover: descTextColorHover, textStyle: descTextStyle, textWeight: descTextWeight, textWrap: descTextWrap, children: desc }))] })), after] }) }) }), showDivider && (jsxRuntime.jsx(Divider.Divider, { width: "fill", fill: dividerFill || 'surfaceTertiary', direction: dividerDirection, size: dividerSize }))] }));
151
174
  }
152
175
  DropdownItem.defaultProps = {
153
- size: 'l',
154
- LinkComponent: 'a',
155
176
  width: 'fixed',
177
+ LinkComponent: 'a',
178
+ size: 'l',
156
179
  };
157
180
 
158
181
  exports.Dropdown = Dropdown;
159
182
  exports.DropdownItem = DropdownItem;
183
+ exports.dropdownItemConfig = dropdownItemConfig;
@@ -0,0 +1,179 @@
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import React, { useRef, useState, useCallback, useEffect } from 'react';
3
+ import clsx from 'clsx';
4
+ import { useDeviceTargetClass } from './hooks/useDeviceTargetClass.js';
5
+ import { useStyles } from './hooks/useStyles.js';
6
+ import { dropdownItemAppearance } from './appearance/DropdownItem.js';
7
+ import { D as Divider } from './Divider-DE2Q5J36.js';
8
+ import { L as Link } from './Link-CeQuavin.js';
9
+ import { T as Text } from './Text-DlSG_p4u.js';
10
+
11
+ function Dropdown(props) {
12
+ var children = props.children, isOpen = props.isOpen, after = props.after, _a = props.animationClose, animationClose = _a === void 0 ? 'dropdown_animation_close' : _a, _b = props.animationOpen, animationOpen = _b === void 0 ? 'dropdown_animation_open' : _b, before = props.before, className = props.className, _c = props.set, set = _c === void 0 ? 'normal' : _c, setIsOpen = props.setIsOpen;
13
+ var dropdownRef = useRef(null);
14
+ // const [isOpen, setIsOpen] = useState(false)
15
+ var _d = useState({
16
+ className: '',
17
+ }), animationState = _d[0], setAnimationState = _d[1];
18
+ var onAnimationEnd = useCallback(function () {
19
+ // When component is change his visibility(display) in DOM,
20
+ // animation of close can run unnecessary on showing element.
21
+ // const dropdownElement = dropdownRef.current
22
+ setAnimationState(function (prevState) { return ({
23
+ className: isOpen ? prevState.className : '',
24
+ }); });
25
+ }, [isOpen]);
26
+ useEffect(function () {
27
+ if (animationOpen && animationClose) {
28
+ setAnimationState(function () { return ({
29
+ className: isOpen ? animationOpen : animationClose,
30
+ }); });
31
+ }
32
+ }, [isOpen]);
33
+ // Close dropdown by click outside
34
+ useEffect(function () {
35
+ // Add a handler to keep track of the click target.
36
+ function onClickWindow(event) {
37
+ var dropdownElement = dropdownRef.current;
38
+ if (dropdownElement && animationOpen) {
39
+ // Is event target inside of dropdown element
40
+ var isContainsTarget = dropdownElement.contains(event.target);
41
+ // Is dropdown element has "open" class
42
+ var hasOpenClass = dropdownElement.classList.contains(animationOpen);
43
+ if (!isContainsTarget && hasOpenClass) {
44
+ // Trigger close event with animation
45
+ // dropdownElement.click() - trigger "onClickWindow" again
46
+ setIsOpen(false);
47
+ }
48
+ }
49
+ }
50
+ // Add event listener for current dropdown on first render
51
+ window.addEventListener('click', onClickWindow);
52
+ return function () {
53
+ // Remove event listener for current dropdown on unmount
54
+ window.removeEventListener('click', onClickWindow);
55
+ };
56
+ // eslint-disable-next-line react-hooks/exhaustive-deps
57
+ }, []);
58
+ var fillClass = useDeviceTargetClass(props, {
59
+ prefix: 'fill_',
60
+ propsKey: 'fill',
61
+ });
62
+ var fillHoverClass = useDeviceTargetClass(props, {
63
+ prefix: 'fill_hover_',
64
+ propsKey: 'fillHover',
65
+ });
66
+ var shapeClass = useDeviceTargetClass(props, {
67
+ prefix: 'dropdown_shape_',
68
+ propsKey: 'shape',
69
+ });
70
+ var elevationClass = useDeviceTargetClass(props, {
71
+ prefix: 'elevation_',
72
+ propsKey: 'elevation',
73
+ });
74
+ var alignmentClass = useDeviceTargetClass(props, {
75
+ prefix: 'alignment_',
76
+ propsKey: 'alignment',
77
+ });
78
+ // @ts-expect-error
79
+ var styles = useStyles(props).styles;
80
+ return (jsxs("div", { className: clsx(className, 'dropdown', alignmentClass, set && "dropdown_set_".concat(set), shapeClass, elevationClass, isOpen ? 'dropdown_state_open' : 'dropdown_state_close', animationState.className), ref: dropdownRef, style: styles, children: [before, children && (jsx("div", { className: clsx('dropdown__wrapper', fillClass, fillHoverClass),
81
+ // Add "onAnimationEnd" only for wrapper for ignore dropdown button
82
+ onAnimationEnd: onAnimationEnd, children: children })), after] }));
83
+ }
84
+
85
+ var dropdownItemConfig = {
86
+ appearance: dropdownItemAppearance,
87
+ setAppearance: function (newComponent) {
88
+ dropdownItemConfig.appearance = newComponent;
89
+ },
90
+ };
91
+ function DropdownItem(props) {
92
+ var children = props.children, isActive = props.isActive, isHover = props.isHover, after = props.after, appearance = props.appearance, before = props.before, className = props.className, desc = props.desc, descTextColor = props.descTextColor, descTextColorHover = props.descTextColorHover, descTextGradient = props.descTextGradient, descTextSize = props.descTextSize, descTextStyle = props.descTextStyle, descTextWeight = props.descTextWeight, descTextWrap = props.descTextWrap, dividerDirection = props.dividerDirection, dividerFill = props.dividerFill, dividerSize = props.dividerSize, href = props.href, label = props.label, labelTextAlign = props.labelTextAlign, labelTextColor = props.labelTextColor, labelTextColorActive = props.labelTextColorActive, labelTextColorHover = props.labelTextColorHover, labelTextGradient = props.labelTextGradient, labelTextSize = props.labelTextSize, labelTextStyle = props.labelTextStyle, labelTextWeight = props.labelTextWeight, labelTextWrap = props.labelTextWrap, link = props.link, linkFill = props.linkFill, rel = props.rel, set = props.set, showDivider = props.showDivider, target = props.target, underline = props.underline, onClick = props.onClick, onMouseEnter = props.onMouseEnter;
93
+ var alignDirectionClass = useDeviceTargetClass(props, {
94
+ prefix: 'align_',
95
+ propsKey: 'alignDirection',
96
+ });
97
+ var alignClass = useDeviceTargetClass(props, {
98
+ prefix: 'align_',
99
+ propsKey: 'align',
100
+ });
101
+ var directionClass = useDeviceTargetClass(props, {
102
+ prefix: 'dropdown__item_direction_',
103
+ propsKey: 'direction',
104
+ });
105
+ var fillClass = useDeviceTargetClass(props, {
106
+ prefix: 'fill_',
107
+ propsKey: 'fill',
108
+ });
109
+ var fillHoverClass = useDeviceTargetClass(props, {
110
+ prefix: 'fill_hover_',
111
+ propsKey: 'fillHover',
112
+ });
113
+ var fillActiveClass = useDeviceTargetClass(props, {
114
+ prefix: 'fill_active_',
115
+ propsKey: 'fillActive',
116
+ });
117
+ var fillActiveHoverClass = useDeviceTargetClass(props, {
118
+ prefix: 'fill_active_hover_',
119
+ propsKey: 'fillActiveHover',
120
+ });
121
+ var fillDisabledClass = useDeviceTargetClass(props, {
122
+ prefix: 'fill_disabled_',
123
+ propsKey: 'fillDisabled',
124
+ });
125
+ useDeviceTargetClass(props, {
126
+ propsKey: 'linkFill',
127
+ });
128
+ var sizeClass = useDeviceTargetClass(props, {
129
+ prefix: 'dropdown__item_size_',
130
+ propsKey: 'size',
131
+ });
132
+ var shapeClass = useDeviceTargetClass(props, {
133
+ prefix: 'dropdown__item_shape_',
134
+ propsKey: 'shape',
135
+ });
136
+ var justifyContentClass = useDeviceTargetClass(props, {
137
+ prefix: 'dropdown__item_justify-content_',
138
+ propsKey: 'justifyContent',
139
+ });
140
+ var typeClass = useDeviceTargetClass(props, {
141
+ prefix: 'dropdown__item_type_',
142
+ propsKey: 'type',
143
+ });
144
+ var widthClass = useDeviceTargetClass(props, {
145
+ prefix: 'dropdown__item_width_',
146
+ propsKey: 'width',
147
+ });
148
+ // @ts-expect-error
149
+ var dropdownItem = useStyles(props).styles;
150
+ var appearanceConfig = appearance && dropdownItemConfig.appearance && dropdownItemConfig.appearance[appearance];
151
+ return (jsxs("div", { className: clsx('dropdown__item', isActive && 'dropdown__item_state_active', isHover && 'dropdown__item_state_hover', directionClass ||
152
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.direction) &&
153
+ "dropdown__item_direction_".concat(appearanceConfig.direction)
154
+ .replace(/([A-Z])/g, '-$1')
155
+ .toLowerCase()), className, fillClass ||
156
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fill) &&
157
+ "fill_".concat(appearanceConfig.fill).replace(/([A-Z])/g, '-$1').toLowerCase()), fillHoverClass ||
158
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.fillHover) &&
159
+ "fill_hover_".concat(appearanceConfig.fillHover).replace(/([A-Z])/g, '-$1').toLowerCase()), fillActiveClass, fillActiveHoverClass, fillDisabledClass, sizeClass ||
160
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.size) &&
161
+ "dropdown__item_size_".concat(appearanceConfig.size)
162
+ .replace(/([A-Z])/g, '-$1')
163
+ .toLowerCase()), shapeClass ||
164
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.shape) &&
165
+ "dropdown__item_shape_".concat(appearanceConfig.shape)
166
+ .replace(/([A-Z])/g, '-$1')
167
+ .toLowerCase()), typeClass, widthClass ||
168
+ ((appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.width) &&
169
+ "dropdown__item_width_".concat(appearanceConfig.width)
170
+ .replace(/([A-Z])/g, '-$1')
171
+ .toLowerCase()), onClick && 'cursor_type_pointer', set && "dropdown__item_set_".concat(set), justifyContentClass), style: dropdownItem, onClick: onClick, onMouseEnter: onMouseEnter, children: [jsx("div", { className: "dropdown__item-wrapper", children: jsx(Link, { className: clsx('dropdown__item-link', alignDirectionClass, alignClass), fill: linkFill, href: link || href, rel: rel, target: target, underline: underline, children: jsxs(React.Fragment, { children: [before, children || (jsxs(React.Fragment, { children: [label && (jsx(Text, { className: "dropdown__item-label", size: labelTextSize || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.labelTextSize), textAlign: labelTextAlign, textColor: labelTextColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.labelTextColor), textColorActive: isActive ? labelTextColorActive : undefined, textColorGradient: labelTextGradient, textColorHover: labelTextColorHover, textStyle: labelTextStyle, textWeight: labelTextWeight, textWrap: labelTextWrap, children: label })), desc && (jsx(Text, { className: "dropdown__item-desc", size: descTextSize || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.descTextSize), textColor: descTextColor || (appearanceConfig === null || appearanceConfig === void 0 ? void 0 : appearanceConfig.descTextColor), textColorGradient: descTextGradient, textColorHover: descTextColorHover, textStyle: descTextStyle, textWeight: descTextWeight, textWrap: descTextWrap, children: desc }))] })), after] }) }) }), showDivider && (jsx(Divider, { width: "fill", fill: dividerFill || 'surfaceTertiary', direction: dividerDirection, size: dividerSize }))] }));
172
+ }
173
+ DropdownItem.defaultProps = {
174
+ width: 'fixed',
175
+ LinkComponent: 'a',
176
+ size: 'l',
177
+ };
178
+
179
+ export { Dropdown as D, DropdownItem as a, dropdownItemConfig as d };
@@ -1,3 +1,4 @@
1
+ import { _ as __assign } from './tslib.es6-5FtW-kfi.js';
1
2
  import { jsx, jsxs } from 'react/jsx-runtime';
2
3
  import React, { useMemo } from 'react';
3
4
  import clsx from 'clsx';
@@ -5,8 +6,8 @@ import SVG from 'react-inlinesvg';
5
6
  import { iconAppearance } from './appearance/Icon.js';
6
7
  import { useDeviceTargetClass } from './hooks/useDeviceTargetClass.js';
7
8
  import { useStyles } from './hooks/useStyles.js';
8
- import { a as LinkWrapper } from './Link-CzC1kU5C.js';
9
- import { T as Tooltip } from './Tooltip-ccRCMYQM.js';
9
+ import { a as LinkWrapper } from './Link-CeQuavin.js';
10
+ import { T as Tooltip } from './Tooltip-f5EWhsGj.js';
10
11
 
11
12
  var iconConfig = {
12
13
  appearance: iconAppearance,
@@ -18,23 +19,16 @@ var Icon = React.forwardRef(function Icon(props, ref) {
18
19
  // TODO: Tooltip doesn't work that anymore
19
20
  // const [isTooltipVisible, setIsTooltipVisible] = useState(false)
20
21
  var id = props.id, width = props.width, height = props.height, after = props.after, Badge = props.Badge, before = props.before, className = props.className, dataTour = props.dataTour, href = props.href, imageSrc = props.imageSrc, link = props.link, linkRel = props.linkRel, linkTarget = props.linkTarget, showTooltip = props.showTooltip, SvgImage = props.SvgImage, tooltipAppearance = props.tooltipAppearance, tooltipText = props.tooltipText, tooltipTextSize = props.tooltipTextSize, tooltipTitle = props.tooltipTitle, tooltipTitleSize = props.tooltipTitleSize, onClick = props.onClick, onMouseEnter = props.onMouseEnter, onMouseLeave = props.onMouseLeave;
21
- // const svgSizes = useMemo(() => {
22
- // const sizes: {
23
- // width?: string
24
- // height?: string
25
- // } = {}
26
- // if (width) {
27
- // sizes.width = width
28
- // }
29
- // if (height) {
30
- // sizes.height = height
31
- // }
32
- // return sizes
33
- // }, [height, width])
34
22
  var ImageComponent = useMemo(function () {
35
23
  if (SvgImage) {
36
- // return <SvgImage {...svgSizes} />
37
- return jsx(SvgImage, { width: width, height: height });
24
+ var sizes = {};
25
+ if (width) {
26
+ sizes.width = width;
27
+ }
28
+ if (height) {
29
+ sizes.height = height;
30
+ }
31
+ return jsx(SvgImage, __assign({}, sizes));
38
32
  }
39
33
  if (imageSrc) {
40
34
  if (imageSrc.endsWith('.svg')) {
@@ -44,7 +38,7 @@ var Icon = React.forwardRef(function Icon(props, ref) {
44
38
  }
45
39
  return null;
46
40
  }, [SvgImage, width, height, imageSrc]);
47
- useDeviceTargetClass(props, {
41
+ var cursorClass = useDeviceTargetClass(props, {
48
42
  prefix: 'cursor_',
49
43
  propsKey: 'cursor',
50
44
  });
@@ -106,7 +100,8 @@ var Icon = React.forwardRef(function Icon(props, ref) {
106
100
  });
107
101
  // @ts-expect-error
108
102
  var iconStyles = useStyles(props).styles;
109
- return (jsxs("div", { className: clsx(className, 'icon', fillClass, fillHoverClass, fillSizeClass, fillDisabledClass, iconFillClass, iconFillHoverClass, iconFillDisabledClass, shapeClass, borderColorClass, borderColorHoverClass, borderWidthClass, borderTypeClass, Badge && 'icon_type_with-badge'), ref: ref, "data-tour": dataTour, id: id, style: iconStyles, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, children: [before, jsxs(LinkWrapper, { className: clsx((link || href || onClick) && 'cursor_type_pointer', link || href ? 'icon__link' : 'icon__item', iconSizeClass), DefaultComponent: "div", href: link || href, rel: linkRel, target: linkTarget, children: [ImageComponent, Badge, showTooltip && (jsx(Tooltip, { className: clsx(className, 'icon__tooltip', alignmentClass), appearance: tooltipAppearance, text: tooltipText, textSize: tooltipTextSize, title: tooltipTitle, titleSize: tooltipTitleSize }))] }), after] }));
103
+ console.log('>>>>' + iconSizeClass);
104
+ return (jsxs("div", { className: clsx(className, 'icon', fillClass, fillHoverClass, fillSizeClass, fillDisabledClass, iconFillClass, iconFillHoverClass, iconFillDisabledClass, shapeClass, borderColorClass, borderColorHoverClass, borderWidthClass, borderTypeClass, Badge && 'icon_type_with-badge', onClick && cursorClass), ref: ref, "data-tour": dataTour, id: id, style: iconStyles, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, children: [before, jsxs(LinkWrapper, { className: clsx((link || href || onClick) && 'cursor_type_pointer', link || href ? 'icon__link' : 'icon__item', iconSizeClass), DefaultComponent: "div", href: link || href, rel: linkRel, target: linkTarget, children: [ImageComponent, Badge, showTooltip && (jsx(Tooltip, { className: clsx(className, 'icon__tooltip', alignmentClass), appearance: tooltipAppearance, text: tooltipText, textSize: tooltipTextSize, title: tooltipTitle, titleSize: tooltipTitleSize }))] }), after] }));
110
105
  });
111
106
  var removeFillStroke = function (code) {
112
107
  return code.replace(/fill=".*?"/g, 'fill=""').replace(/stroke=".*?"/g, 'stroke=""');