@skbkontur/react-ui 0.0.0-95a1dbe516 → 0.0.0-9cd4422b72

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 (1181) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.d.ts +0 -1
  2. package/cjs/components/Autocomplete/Autocomplete.js +7 -16
  3. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/Autocomplete/Autocomplete.styles.d.ts +1 -2
  5. package/cjs/components/Autocomplete/Autocomplete.styles.js +6 -9
  6. package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -1
  7. package/cjs/components/Button/Button.d.ts +10 -4
  8. package/cjs/components/Button/Button.js +53 -12
  9. package/cjs/components/Button/Button.js.map +1 -1
  10. package/cjs/components/Button/Button.md +10 -0
  11. package/cjs/components/Button/Button.mixins.d.ts +6 -7
  12. package/cjs/components/Button/Button.mixins.js +96 -97
  13. package/cjs/components/Button/Button.mixins.js.map +1 -1
  14. package/cjs/components/Button/Button.styles.d.ts +5 -3
  15. package/cjs/components/Button/Button.styles.js +579 -558
  16. package/cjs/components/Button/Button.styles.js.map +1 -1
  17. package/cjs/components/Button/ButtonArrow.d.ts +1 -2
  18. package/cjs/components/Button/ButtonArrow.js +29 -38
  19. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  20. package/cjs/components/Button/ButtonIcon.js +15 -18
  21. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  22. package/cjs/components/Button/ButtonIcon.styles.d.ts +1 -2
  23. package/cjs/components/Button/ButtonIcon.styles.js +54 -57
  24. package/cjs/components/Button/ButtonIcon.styles.js.map +1 -1
  25. package/cjs/components/Button/LoadingButtonIcon.js +4 -7
  26. package/cjs/components/Button/LoadingButtonIcon.js.map +1 -1
  27. package/cjs/components/Calendar/Calendar.d.ts +0 -1
  28. package/cjs/components/Calendar/Calendar.js +7 -17
  29. package/cjs/components/Calendar/Calendar.js.map +1 -1
  30. package/cjs/components/Calendar/Calendar.styles.d.ts +1 -2
  31. package/cjs/components/Calendar/Calendar.styles.js +19 -22
  32. package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
  33. package/cjs/components/Calendar/DayCellView.js +12 -14
  34. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  35. package/cjs/components/Calendar/DayCellView.styles.d.ts +1 -2
  36. package/cjs/components/Calendar/DayCellView.styles.js +34 -37
  37. package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
  38. package/cjs/components/Calendar/Month.js +8 -18
  39. package/cjs/components/Calendar/Month.js.map +1 -1
  40. package/cjs/components/Calendar/MonthView.js +11 -13
  41. package/cjs/components/Calendar/MonthView.js.map +1 -1
  42. package/cjs/components/Calendar/MonthView.styles.d.ts +1 -2
  43. package/cjs/components/Calendar/MonthView.styles.js +33 -36
  44. package/cjs/components/Calendar/MonthView.styles.js.map +1 -1
  45. package/cjs/components/Center/Center.d.ts +0 -1
  46. package/cjs/components/Center/Center.js +10 -19
  47. package/cjs/components/Center/Center.js.map +1 -1
  48. package/cjs/components/Center/Center.styles.d.ts +1 -2
  49. package/cjs/components/Center/Center.styles.js +17 -20
  50. package/cjs/components/Center/Center.styles.js.map +1 -1
  51. package/cjs/components/Checkbox/Checkbox.d.ts +0 -1
  52. package/cjs/components/Checkbox/Checkbox.js +28 -39
  53. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  54. package/cjs/components/Checkbox/Checkbox.mixins.d.ts +2 -3
  55. package/cjs/components/Checkbox/Checkbox.mixins.js +26 -25
  56. package/cjs/components/Checkbox/Checkbox.mixins.js.map +1 -1
  57. package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -2
  58. package/cjs/components/Checkbox/Checkbox.styles.js +142 -145
  59. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  60. package/cjs/components/DateInput/DateFragmentsView.d.ts +0 -1
  61. package/cjs/components/DateInput/DateFragmentsView.js +2 -14
  62. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  63. package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +1 -2
  64. package/cjs/components/DateInput/DateFragmentsView.styles.js +25 -28
  65. package/cjs/components/DateInput/DateFragmentsView.styles.js.map +1 -1
  66. package/cjs/components/DateInput/DateInput.d.ts +0 -1
  67. package/cjs/components/DateInput/DateInput.js +11 -20
  68. package/cjs/components/DateInput/DateInput.js.map +1 -1
  69. package/cjs/components/DateInput/DateInput.styles.d.ts +1 -2
  70. package/cjs/components/DateInput/DateInput.styles.js +28 -29
  71. package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
  72. package/cjs/components/DatePicker/DatePicker.d.ts +0 -1
  73. package/cjs/components/DatePicker/DatePicker.js +5 -16
  74. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  75. package/cjs/components/DatePicker/DatePicker.styles.d.ts +1 -2
  76. package/cjs/components/DatePicker/DatePicker.styles.js +23 -26
  77. package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
  78. package/cjs/components/DatePicker/Picker.d.ts +0 -1
  79. package/cjs/components/DatePicker/Picker.js +2 -13
  80. package/cjs/components/DatePicker/Picker.js.map +1 -1
  81. package/cjs/components/Dropdown/Dropdown.js +2 -2
  82. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  83. package/cjs/components/DropdownMenu/DropdownMenu.js +2 -2
  84. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  85. package/cjs/components/FileUploader/FileUploader.js +36 -41
  86. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  87. package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -2
  88. package/cjs/components/FileUploader/FileUploader.mixins.js +7 -8
  89. package/cjs/components/FileUploader/FileUploader.mixins.js.map +1 -1
  90. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -2
  91. package/cjs/components/FileUploader/FileUploader.styles.js +177 -176
  92. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  93. package/cjs/components/FxInput/FxInput.js +2 -2
  94. package/cjs/components/FxInput/FxInput.js.map +1 -1
  95. package/cjs/components/FxInput/FxInputRestoreBtn.js +3 -3
  96. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  97. package/cjs/components/GlobalLoader/GlobalLoaderView.js +13 -17
  98. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  99. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +2 -3
  100. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +78 -84
  101. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
  102. package/cjs/components/Group/Group.d.ts +0 -1
  103. package/cjs/components/Group/Group.js +14 -24
  104. package/cjs/components/Group/Group.js.map +1 -1
  105. package/cjs/components/Group/Group.styles.d.ts +1 -2
  106. package/cjs/components/Group/Group.styles.js +20 -23
  107. package/cjs/components/Group/Group.styles.js.map +1 -1
  108. package/cjs/components/Hint/Hint.d.ts +0 -1
  109. package/cjs/components/Hint/Hint.js +2 -12
  110. package/cjs/components/Hint/Hint.js.map +1 -1
  111. package/cjs/components/Hint/Hint.styles.d.ts +1 -2
  112. package/cjs/components/Hint/Hint.styles.js +14 -17
  113. package/cjs/components/Hint/Hint.styles.js.map +1 -1
  114. package/cjs/components/Input/Input.d.ts +0 -1
  115. package/cjs/components/Input/Input.js +29 -46
  116. package/cjs/components/Input/Input.js.map +1 -1
  117. package/cjs/components/Input/Input.styles.d.ts +1 -2
  118. package/cjs/components/Input/Input.styles.js +236 -239
  119. package/cjs/components/Input/Input.styles.js.map +1 -1
  120. package/cjs/components/Input/InputLayout/InputLayout.js +1 -4
  121. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  122. package/cjs/components/Input/InputLayout/InputLayout.styles.d.ts +1 -2
  123. package/cjs/components/Input/InputLayout/InputLayout.styles.js +31 -34
  124. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  125. package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -3
  126. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  127. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +7 -11
  128. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  129. package/cjs/components/Input/InputLayout/InputLayoutAsideText.js +4 -8
  130. package/cjs/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
  131. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +6 -8
  132. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +1 -1
  133. package/cjs/components/Kebab/Kebab.d.ts +0 -1
  134. package/cjs/components/Kebab/Kebab.js +18 -24
  135. package/cjs/components/Kebab/Kebab.js.map +1 -1
  136. package/cjs/components/Kebab/Kebab.styles.d.ts +1 -2
  137. package/cjs/components/Kebab/Kebab.styles.js +60 -63
  138. package/cjs/components/Kebab/Kebab.styles.js.map +1 -1
  139. package/cjs/components/Link/Link.d.ts +18 -17
  140. package/cjs/components/Link/Link.js +99 -60
  141. package/cjs/components/Link/Link.js.map +1 -1
  142. package/cjs/components/Link/Link.md +21 -0
  143. package/cjs/components/Link/Link.styles.d.ts +4 -2
  144. package/cjs/components/Link/Link.styles.js +172 -148
  145. package/cjs/components/Link/Link.styles.js.map +1 -1
  146. package/cjs/components/Link/LinkIcon.js +7 -9
  147. package/cjs/components/Link/LinkIcon.js.map +1 -1
  148. package/cjs/components/Loader/Loader.d.ts +0 -1
  149. package/cjs/components/Loader/Loader.js +2 -16
  150. package/cjs/components/Loader/Loader.js.map +1 -1
  151. package/cjs/components/Loader/Loader.styles.d.ts +1 -2
  152. package/cjs/components/Loader/Loader.styles.js +19 -22
  153. package/cjs/components/Loader/Loader.styles.js.map +1 -1
  154. package/cjs/components/MenuFooter/MenuFooter.js +13 -15
  155. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  156. package/cjs/components/MenuFooter/MenuFooter.mixins.d.ts +2 -3
  157. package/cjs/components/MenuFooter/MenuFooter.mixins.js +21 -23
  158. package/cjs/components/MenuFooter/MenuFooter.mixins.js.map +1 -1
  159. package/cjs/components/MenuFooter/MenuFooter.styles.d.ts +1 -2
  160. package/cjs/components/MenuFooter/MenuFooter.styles.js +61 -64
  161. package/cjs/components/MenuFooter/MenuFooter.styles.js.map +1 -1
  162. package/cjs/components/MenuHeader/MenuHeader.js +13 -15
  163. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  164. package/cjs/components/MenuHeader/MenuHeader.mixins.d.ts +2 -3
  165. package/cjs/components/MenuHeader/MenuHeader.mixins.js +21 -23
  166. package/cjs/components/MenuHeader/MenuHeader.mixins.js.map +1 -1
  167. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +1 -2
  168. package/cjs/components/MenuHeader/MenuHeader.styles.js +61 -64
  169. package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  170. package/cjs/components/MenuItem/MenuItem.d.ts +0 -1
  171. package/cjs/components/MenuItem/MenuItem.js +24 -37
  172. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  173. package/cjs/components/MenuItem/MenuItem.mixins.d.ts +3 -4
  174. package/cjs/components/MenuItem/MenuItem.mixins.js +39 -38
  175. package/cjs/components/MenuItem/MenuItem.mixins.js.map +1 -1
  176. package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -2
  177. package/cjs/components/MenuItem/MenuItem.styles.js +108 -113
  178. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  179. package/cjs/components/MenuSeparator/MenuSeparator.js +6 -8
  180. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  181. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -2
  182. package/cjs/components/MenuSeparator/MenuSeparator.styles.js +11 -14
  183. package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
  184. package/cjs/components/MiniModal/MiniModal.js +4 -5
  185. package/cjs/components/MiniModal/MiniModal.js.map +1 -1
  186. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -2
  187. package/cjs/components/MiniModal/MiniModal.styles.js +44 -47
  188. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  189. package/cjs/components/MiniModal/MiniModalBody.js +3 -11
  190. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  191. package/cjs/components/MiniModal/MiniModalFooter.js +10 -12
  192. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -1
  193. package/cjs/components/MiniModal/MiniModalHeader.js +5 -10
  194. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -1
  195. package/cjs/components/MiniModal/MiniModalIndent.js +4 -6
  196. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -1
  197. package/cjs/components/Modal/Modal.d.ts +0 -1
  198. package/cjs/components/Modal/Modal.js +2 -19
  199. package/cjs/components/Modal/Modal.js.map +1 -1
  200. package/cjs/components/Modal/Modal.styles.d.ts +1 -2
  201. package/cjs/components/Modal/Modal.styles.js +207 -210
  202. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  203. package/cjs/components/Modal/ModalBody.d.ts +0 -1
  204. package/cjs/components/Modal/ModalBody.js +12 -23
  205. package/cjs/components/Modal/ModalBody.js.map +1 -1
  206. package/cjs/components/Modal/ModalClose.js +9 -11
  207. package/cjs/components/Modal/ModalClose.js.map +1 -1
  208. package/cjs/components/Modal/ModalFooter.js +8 -10
  209. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  210. package/cjs/components/Modal/ModalHeader.js +10 -12
  211. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  212. package/cjs/components/Modal/ModalSeparator.js +5 -7
  213. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  214. package/cjs/components/Paging/Paging.d.ts +0 -1
  215. package/cjs/components/Paging/Paging.js +30 -45
  216. package/cjs/components/Paging/Paging.js.map +1 -1
  217. package/cjs/components/Paging/Paging.styles.d.ts +1 -2
  218. package/cjs/components/Paging/Paging.styles.js +79 -82
  219. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  220. package/cjs/components/PasswordInput/PasswordInput.d.ts +0 -1
  221. package/cjs/components/PasswordInput/PasswordInput.js +8 -19
  222. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  223. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +1 -2
  224. package/cjs/components/PasswordInput/PasswordInput.styles.js +33 -36
  225. package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  226. package/cjs/components/Radio/Radio.d.ts +0 -1
  227. package/cjs/components/Radio/Radio.js +27 -41
  228. package/cjs/components/Radio/Radio.js.map +1 -1
  229. package/cjs/components/Radio/Radio.mixins.d.ts +5 -6
  230. package/cjs/components/Radio/Radio.mixins.js +48 -52
  231. package/cjs/components/Radio/Radio.mixins.js.map +1 -1
  232. package/cjs/components/Radio/Radio.styles.d.ts +1 -2
  233. package/cjs/components/Radio/Radio.styles.js +128 -146
  234. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  235. package/cjs/components/RadioGroup/RadioGroup.d.ts +0 -1
  236. package/cjs/components/RadioGroup/RadioGroup.js +8 -19
  237. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  238. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -2
  239. package/cjs/components/RadioGroup/RadioGroup.styles.js +15 -18
  240. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  241. package/cjs/components/ScrollContainer/ScrollBar.d.ts +0 -1
  242. package/cjs/components/ScrollContainer/ScrollBar.js +8 -17
  243. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  244. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -3
  245. package/cjs/components/ScrollContainer/ScrollContainer.js +6 -19
  246. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  247. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -2
  248. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +48 -51
  249. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  250. package/cjs/components/Select/Select.d.ts +1 -2
  251. package/cjs/components/Select/Select.js +4 -17
  252. package/cjs/components/Select/Select.js.map +1 -1
  253. package/cjs/components/Select/Select.styles.d.ts +1 -2
  254. package/cjs/components/Select/Select.styles.js +60 -63
  255. package/cjs/components/Select/Select.styles.js.map +1 -1
  256. package/cjs/components/SidePage/SidePage.d.ts +0 -1
  257. package/cjs/components/SidePage/SidePage.js +2 -15
  258. package/cjs/components/SidePage/SidePage.js.map +1 -1
  259. package/cjs/components/SidePage/SidePage.styles.d.ts +1 -2
  260. package/cjs/components/SidePage/SidePage.styles.js +201 -204
  261. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  262. package/cjs/components/SidePage/SidePageBody.d.ts +0 -1
  263. package/cjs/components/SidePage/SidePageBody.js +8 -18
  264. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  265. package/cjs/components/SidePage/SidePageCloseButton.js +5 -8
  266. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  267. package/cjs/components/SidePage/SidePageContainer.d.ts +0 -1
  268. package/cjs/components/SidePage/SidePageContainer.js +15 -26
  269. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  270. package/cjs/components/SidePage/SidePageFooter.d.ts +0 -1
  271. package/cjs/components/SidePage/SidePageFooter.js +4 -14
  272. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  273. package/cjs/components/SidePage/SidePageHeader.d.ts +0 -1
  274. package/cjs/components/SidePage/SidePageHeader.js +15 -29
  275. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  276. package/cjs/components/Spinner/Spinner.d.ts +0 -1
  277. package/cjs/components/Spinner/Spinner.js +8 -24
  278. package/cjs/components/Spinner/Spinner.js.map +1 -1
  279. package/cjs/components/Spinner/Spinner.styles.d.ts +1 -2
  280. package/cjs/components/Spinner/Spinner.styles.js +71 -81
  281. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  282. package/cjs/components/Sticky/Sticky.d.ts +0 -2
  283. package/cjs/components/Sticky/Sticky.js +1 -14
  284. package/cjs/components/Sticky/Sticky.js.map +1 -1
  285. package/cjs/components/Sticky/Sticky.styles.d.ts +1 -2
  286. package/cjs/components/Sticky/Sticky.styles.js +17 -20
  287. package/cjs/components/Sticky/Sticky.styles.js.map +1 -1
  288. package/cjs/components/Switcher/Switcher.d.ts +0 -1
  289. package/cjs/components/Switcher/Switcher.js +7 -18
  290. package/cjs/components/Switcher/Switcher.js.map +1 -1
  291. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -2
  292. package/cjs/components/Switcher/Switcher.styles.js +40 -43
  293. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  294. package/cjs/components/Tabs/Indicator.d.ts +0 -1
  295. package/cjs/components/Tabs/Indicator.js +2 -12
  296. package/cjs/components/Tabs/Indicator.js.map +1 -1
  297. package/cjs/components/Tabs/Indicator.styles.d.ts +1 -2
  298. package/cjs/components/Tabs/Indicator.styles.js +24 -27
  299. package/cjs/components/Tabs/Indicator.styles.js.map +1 -1
  300. package/cjs/components/Tabs/Tab.d.ts +0 -1
  301. package/cjs/components/Tabs/Tab.js +3 -12
  302. package/cjs/components/Tabs/Tab.js.map +1 -1
  303. package/cjs/components/Tabs/Tab.styles.d.ts +3 -4
  304. package/cjs/components/Tabs/Tab.styles.js +116 -121
  305. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  306. package/cjs/components/Tabs/Tabs.js +2 -9
  307. package/cjs/components/Tabs/Tabs.js.map +1 -1
  308. package/cjs/components/Tabs/Tabs.styles.d.ts +1 -2
  309. package/cjs/components/Tabs/Tabs.styles.js +18 -22
  310. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  311. package/cjs/components/Textarea/Textarea.d.ts +0 -1
  312. package/cjs/components/Textarea/Textarea.js +15 -27
  313. package/cjs/components/Textarea/Textarea.js.map +1 -1
  314. package/cjs/components/Textarea/Textarea.mixins.d.ts +3 -4
  315. package/cjs/components/Textarea/Textarea.mixins.js +16 -16
  316. package/cjs/components/Textarea/Textarea.mixins.js.map +1 -1
  317. package/cjs/components/Textarea/Textarea.styles.d.ts +1 -2
  318. package/cjs/components/Textarea/Textarea.styles.js +109 -112
  319. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  320. package/cjs/components/Textarea/TextareaCounter.js +11 -17
  321. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  322. package/cjs/components/Toast/Toast.d.ts +0 -1
  323. package/cjs/components/Toast/Toast.js +3 -14
  324. package/cjs/components/Toast/Toast.js.map +1 -1
  325. package/cjs/components/Toast/Toast.styles.d.ts +1 -2
  326. package/cjs/components/Toast/Toast.styles.js +14 -17
  327. package/cjs/components/Toast/Toast.styles.js.map +1 -1
  328. package/cjs/components/Toast/ToastView.d.ts +0 -1
  329. package/cjs/components/Toast/ToastView.js +8 -19
  330. package/cjs/components/Toast/ToastView.js.map +1 -1
  331. package/cjs/components/Toast/ToastView.styles.d.ts +1 -2
  332. package/cjs/components/Toast/ToastView.styles.js +44 -47
  333. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  334. package/cjs/components/Toggle/Toggle.d.ts +0 -1
  335. package/cjs/components/Toggle/Toggle.js +2 -22
  336. package/cjs/components/Toggle/Toggle.js.map +1 -1
  337. package/cjs/components/Toggle/Toggle.mixins.d.ts +7 -8
  338. package/cjs/components/Toggle/Toggle.mixins.js +64 -69
  339. package/cjs/components/Toggle/Toggle.mixins.js.map +1 -1
  340. package/cjs/components/Toggle/Toggle.styles.d.ts +1 -2
  341. package/cjs/components/Toggle/Toggle.styles.js +256 -259
  342. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  343. package/cjs/components/Token/Token.d.ts +2 -3
  344. package/cjs/components/Token/Token.js +2 -13
  345. package/cjs/components/Token/Token.js.map +1 -1
  346. package/cjs/components/Token/Token.mixins.d.ts +1 -2
  347. package/cjs/components/Token/Token.mixins.js +15 -17
  348. package/cjs/components/Token/Token.mixins.js.map +1 -1
  349. package/cjs/components/Token/Token.styles.d.ts +2 -3
  350. package/cjs/components/Token/Token.styles.js +163 -171
  351. package/cjs/components/Token/Token.styles.js.map +1 -1
  352. package/cjs/components/Token/TokenView.js +11 -14
  353. package/cjs/components/Token/TokenView.js.map +1 -1
  354. package/cjs/components/TokenInput/TextWidthHelper.d.ts +0 -2
  355. package/cjs/components/TokenInput/TextWidthHelper.js +1 -16
  356. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  357. package/cjs/components/TokenInput/TokenInput.d.ts +0 -1
  358. package/cjs/components/TokenInput/TokenInput.js +3 -14
  359. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  360. package/cjs/components/TokenInput/TokenInput.mixins.d.ts +2 -3
  361. package/cjs/components/TokenInput/TokenInput.mixins.js +11 -11
  362. package/cjs/components/TokenInput/TokenInput.mixins.js.map +1 -1
  363. package/cjs/components/TokenInput/TokenInput.styles.d.ts +1 -2
  364. package/cjs/components/TokenInput/TokenInput.styles.js +85 -88
  365. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  366. package/cjs/components/TokenInput/TokenInputMenu.js +2 -2
  367. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  368. package/cjs/components/Tooltip/Tooltip.d.ts +0 -1
  369. package/cjs/components/Tooltip/Tooltip.js +3 -14
  370. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  371. package/cjs/components/Tooltip/Tooltip.styles.d.ts +1 -2
  372. package/cjs/components/Tooltip/Tooltip.styles.js +17 -20
  373. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  374. package/cjs/components/TooltipMenu/TooltipMenu.js +4 -4
  375. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  376. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +7 -9
  377. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  378. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +1 -2
  379. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +21 -24
  380. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
  381. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -3
  382. package/cjs/internal/CommonWrapper/CommonWrapper.js +4 -17
  383. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  384. package/cjs/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
  385. package/cjs/internal/CommonWrapper/utils/extractCommonProps.js.map +1 -0
  386. package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.js → utils/getCommonVisualStateDataAttributes.js} +3 -4
  387. package/cjs/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes.js.map +1 -0
  388. package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
  389. package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.js → utils/getVisualStateDataAttributes.js} +3 -3
  390. package/cjs/internal/CommonWrapper/utils/getVisualStateDataAttributes.js.map +1 -0
  391. package/cjs/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
  392. package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js +1 -0
  393. package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js.map +1 -0
  394. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +2 -3
  395. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  396. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +0 -1
  397. package/cjs/internal/CustomComboBox/ComboBoxView.js +8 -21
  398. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  399. package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +1 -2
  400. package/cjs/internal/CustomComboBox/CustomComboBox.styles.js +11 -14
  401. package/cjs/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
  402. package/cjs/internal/DataTids/DataTids.js +16 -29
  403. package/cjs/internal/DataTids/DataTids.js.map +1 -1
  404. package/cjs/internal/DataTids/DataTids.styles.d.ts +1 -2
  405. package/cjs/internal/DataTids/DataTids.styles.js +17 -20
  406. package/cjs/internal/DataTids/DataTids.styles.js.map +1 -1
  407. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -1
  408. package/cjs/internal/DateSelect/DateSelect.js +2 -13
  409. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  410. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +1 -2
  411. package/cjs/internal/DateSelect/DateSelect.styles.js +78 -81
  412. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  413. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -2
  414. package/cjs/internal/DropdownContainer/DropdownContainer.js +1 -15
  415. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  416. package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +1 -2
  417. package/cjs/internal/DropdownContainer/DropdownContainer.styles.js +5 -8
  418. package/cjs/internal/DropdownContainer/DropdownContainer.styles.js.map +1 -1
  419. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +19 -21
  420. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  421. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +1 -2
  422. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +57 -57
  423. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -1
  424. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +5 -8
  425. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  426. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +7 -9
  427. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  428. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +1 -2
  429. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +23 -23
  430. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
  431. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +15 -1
  432. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +14 -19
  433. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  434. package/cjs/internal/InputLikeText/HiddenInput.js +21 -26
  435. package/cjs/internal/InputLikeText/HiddenInput.js.map +1 -1
  436. package/cjs/internal/InputLikeText/InputLikeText.d.ts +0 -1
  437. package/cjs/internal/InputLikeText/InputLikeText.js +47 -75
  438. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  439. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -2
  440. package/cjs/internal/InputLikeText/InputLikeText.styles.js +17 -20
  441. package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
  442. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -1
  443. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +2 -12
  444. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
  445. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +1 -2
  446. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js +12 -15
  447. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -1
  448. package/cjs/internal/InternalMenu/InternalMenu.d.ts +0 -1
  449. package/cjs/internal/InternalMenu/InternalMenu.js +15 -28
  450. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  451. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +1 -2
  452. package/cjs/internal/InternalMenu/InternalMenu.styles.js +32 -35
  453. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  454. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js +1 -7
  455. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  456. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +1 -2
  457. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js +5 -8
  458. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
  459. package/cjs/internal/MaskedInputElement/MaskedInputElement.js +5 -7
  460. package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -1
  461. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +1 -2
  462. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +12 -15
  463. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -1
  464. package/cjs/internal/Menu/Menu.d.ts +0 -1
  465. package/cjs/internal/Menu/Menu.js +26 -40
  466. package/cjs/internal/Menu/Menu.js.map +1 -1
  467. package/cjs/internal/Menu/Menu.styles.d.ts +1 -2
  468. package/cjs/internal/Menu/Menu.styles.js +52 -55
  469. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  470. package/cjs/internal/MenuMessage/MenuMessage.js +12 -13
  471. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  472. package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +1 -2
  473. package/cjs/internal/MenuMessage/MenuMessage.styles.js +35 -38
  474. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  475. package/cjs/internal/MobilePopup/MobilePopup.d.ts +0 -1
  476. package/cjs/internal/MobilePopup/MobilePopup.js +4 -15
  477. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  478. package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +1 -2
  479. package/cjs/internal/MobilePopup/MobilePopup.styles.js +32 -32
  480. package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
  481. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -1
  482. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +12 -22
  483. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  484. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +1 -2
  485. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +24 -24
  486. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
  487. package/cjs/internal/NativeDateInput/NativeDateInput.js +1 -9
  488. package/cjs/internal/NativeDateInput/NativeDateInput.js.map +1 -1
  489. package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +1 -2
  490. package/cjs/internal/NativeDateInput/NativeDateInput.styles.js +7 -7
  491. package/cjs/internal/NativeDateInput/NativeDateInput.styles.js.map +1 -1
  492. package/cjs/internal/Popup/Popup.d.ts +0 -1
  493. package/cjs/internal/Popup/Popup.js +5 -16
  494. package/cjs/internal/Popup/Popup.js.map +1 -1
  495. package/cjs/internal/Popup/Popup.styles.d.ts +1 -2
  496. package/cjs/internal/Popup/Popup.styles.js +49 -52
  497. package/cjs/internal/Popup/Popup.styles.js.map +1 -1
  498. package/cjs/internal/Popup/PopupPin.js +4 -11
  499. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  500. package/cjs/internal/Popup/PopupPin.styles.d.ts +1 -2
  501. package/cjs/internal/Popup/PopupPin.styles.js +5 -8
  502. package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
  503. package/cjs/internal/PopupMenu/PopupMenu.d.ts +0 -1
  504. package/cjs/internal/PopupMenu/PopupMenu.js +5 -17
  505. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  506. package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +1 -2
  507. package/cjs/internal/PopupMenu/PopupMenu.styles.js +8 -11
  508. package/cjs/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
  509. package/cjs/internal/ResizeDetector/ResizeDetector.js +1 -8
  510. package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  511. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -2
  512. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js +14 -17
  513. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
  514. package/cjs/internal/TextWidthHelper/TextWidthHelper.js +1 -9
  515. package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
  516. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +1 -2
  517. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js +10 -10
  518. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -1
  519. package/cjs/internal/ThemePlayground/ComponentsGroup.js +2 -6
  520. package/cjs/internal/ThemePlayground/ComponentsGroup.js.map +1 -1
  521. package/cjs/internal/ThemePlayground/Playground.d.ts +0 -1
  522. package/cjs/internal/ThemePlayground/Playground.js +4 -16
  523. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  524. package/cjs/internal/ThemePlayground/Playground.styles.d.ts +1 -2
  525. package/cjs/internal/ThemePlayground/Playground.styles.js +72 -75
  526. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  527. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +2 -2
  528. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  529. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -1
  530. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +5 -16
  531. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  532. package/cjs/internal/ThemePlayground/ThemeEditor.js +2 -12
  533. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  534. package/cjs/internal/ThemePlayground/VariableValue.d.ts +0 -1
  535. package/cjs/internal/ThemePlayground/VariableValue.js +7 -22
  536. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  537. package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +0 -1
  538. package/cjs/internal/ThemeShowcase/ThemeShowcase.js +133 -139
  539. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  540. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +1 -2
  541. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js +77 -80
  542. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
  543. package/cjs/internal/icons/16px/icon.styles.d.ts +1 -2
  544. package/cjs/internal/icons/16px/icon.styles.js +8 -11
  545. package/cjs/internal/icons/16px/icon.styles.js.map +1 -1
  546. package/cjs/internal/icons/16px/index.js +2 -5
  547. package/cjs/internal/icons/16px/index.js.map +1 -1
  548. package/cjs/internal/icons/20px/icon.styles.d.ts +1 -2
  549. package/cjs/internal/icons/20px/icon.styles.js +8 -11
  550. package/cjs/internal/icons/20px/icon.styles.js.map +1 -1
  551. package/cjs/internal/icons/20px/svg.js +4 -10
  552. package/cjs/internal/icons/20px/svg.js.map +1 -1
  553. package/cjs/internal/icons/SpinnerIcon.js +6 -8
  554. package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
  555. package/cjs/internal/icons/SpinnerIcon.styles.d.ts +1 -2
  556. package/cjs/internal/icons/SpinnerIcon.styles.js +14 -17
  557. package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
  558. package/cjs/internal/icons2022/BaseIcon.js +1 -4
  559. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  560. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +1 -2
  561. package/cjs/internal/icons2022/BaseIcon.styles.js +6 -9
  562. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -1
  563. package/cjs/internal/icons2022/LoadingIcon.js +3 -10
  564. package/cjs/internal/icons2022/LoadingIcon.js.map +1 -1
  565. package/cjs/lib/styles/Mixins.d.ts +2 -3
  566. package/cjs/lib/styles/Mixins.js +5 -5
  567. package/cjs/lib/styles/Mixins.js.map +1 -1
  568. package/cjs/lib/theming/AnimationKeyframes.d.ts +1 -2
  569. package/cjs/lib/theming/AnimationKeyframes.js +18 -19
  570. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  571. package/cjs/lib/theming/Emotion.d.ts +8 -9
  572. package/cjs/lib/theming/Emotion.js +10 -21
  573. package/cjs/lib/theming/Emotion.js.map +1 -1
  574. package/cjs/lib/theming/ThemeContext.d.ts +0 -2
  575. package/cjs/lib/theming/ThemeContext.js +1 -3
  576. package/cjs/lib/theming/ThemeContext.js.map +1 -1
  577. package/cjs/lib/theming/useTheme.js +3 -1
  578. package/cjs/lib/theming/useTheme.js.map +1 -1
  579. package/cjs/typings/react-ref.d.ts +34 -0
  580. package/cjs/typings/utility-types.d.ts +2 -0
  581. package/components/Autocomplete/Autocomplete/Autocomplete.js +11 -14
  582. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  583. package/components/Autocomplete/Autocomplete.d.ts +0 -1
  584. package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js +6 -8
  585. package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js.map +1 -1
  586. package/components/Autocomplete/Autocomplete.styles.d.ts +1 -2
  587. package/components/Button/Button/Button.js +91 -52
  588. package/components/Button/Button/Button.js.map +1 -1
  589. package/components/Button/Button.d.ts +10 -4
  590. package/components/Button/Button.md +10 -0
  591. package/components/Button/Button.mixins/Button.mixins.js +15 -26
  592. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  593. package/components/Button/Button.mixins.d.ts +6 -7
  594. package/components/Button/Button.styles/Button.styles.js +267 -266
  595. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  596. package/components/Button/Button.styles.d.ts +5 -3
  597. package/components/Button/ButtonArrow/ButtonArrow.js +15 -19
  598. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  599. package/components/Button/ButtonArrow.d.ts +1 -2
  600. package/components/Button/ButtonIcon/ButtonIcon.js +8 -10
  601. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  602. package/components/Button/ButtonIcon.styles/ButtonIcon.styles.js +43 -45
  603. package/components/Button/ButtonIcon.styles/ButtonIcon.styles.js.map +1 -1
  604. package/components/Button/ButtonIcon.styles.d.ts +1 -2
  605. package/components/Button/LoadingButtonIcon/LoadingButtonIcon.js +4 -7
  606. package/components/Button/LoadingButtonIcon/LoadingButtonIcon.js.map +1 -1
  607. package/components/Calendar/Calendar/Calendar.js +7 -11
  608. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  609. package/components/Calendar/Calendar.d.ts +0 -1
  610. package/components/Calendar/Calendar.styles/Calendar.styles.js +13 -15
  611. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
  612. package/components/Calendar/Calendar.styles.d.ts +1 -2
  613. package/components/Calendar/DayCellView/DayCellView.js +9 -11
  614. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  615. package/components/Calendar/DayCellView.styles/DayCellView.styles.js +21 -23
  616. package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  617. package/components/Calendar/DayCellView.styles.d.ts +1 -2
  618. package/components/Calendar/Month/Month.js +6 -11
  619. package/components/Calendar/Month/Month.js.map +1 -1
  620. package/components/Calendar/MonthView/MonthView.js +7 -9
  621. package/components/Calendar/MonthView/MonthView.js.map +1 -1
  622. package/components/Calendar/MonthView.styles/MonthView.styles.js +25 -27
  623. package/components/Calendar/MonthView.styles/MonthView.styles.js.map +1 -1
  624. package/components/Calendar/MonthView.styles.d.ts +1 -2
  625. package/components/Center/Center/Center.js +7 -13
  626. package/components/Center/Center/Center.js.map +1 -1
  627. package/components/Center/Center.d.ts +0 -1
  628. package/components/Center/Center.styles/Center.styles.js +18 -20
  629. package/components/Center/Center.styles/Center.styles.js.map +1 -1
  630. package/components/Center/Center.styles.d.ts +1 -2
  631. package/components/Checkbox/Checkbox/Checkbox.js +15 -27
  632. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  633. package/components/Checkbox/Checkbox.d.ts +0 -1
  634. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js +8 -11
  635. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js.map +1 -1
  636. package/components/Checkbox/Checkbox.mixins.d.ts +2 -3
  637. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +78 -80
  638. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  639. package/components/Checkbox/Checkbox.styles.d.ts +1 -2
  640. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +10 -16
  641. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  642. package/components/DateInput/DateFragmentsView.d.ts +0 -1
  643. package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js +21 -23
  644. package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js.map +1 -1
  645. package/components/DateInput/DateFragmentsView.styles.d.ts +1 -2
  646. package/components/DateInput/DateInput/DateInput.js +10 -18
  647. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  648. package/components/DateInput/DateInput.d.ts +0 -1
  649. package/components/DateInput/DateInput.styles/DateInput.styles.js +23 -24
  650. package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
  651. package/components/DateInput/DateInput.styles.d.ts +1 -2
  652. package/components/DatePicker/DatePicker/DatePicker.js +14 -20
  653. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  654. package/components/DatePicker/DatePicker.d.ts +0 -1
  655. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js +12 -14
  656. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
  657. package/components/DatePicker/DatePicker.styles.d.ts +1 -2
  658. package/components/DatePicker/Picker/Picker.js +12 -17
  659. package/components/DatePicker/Picker/Picker.js.map +1 -1
  660. package/components/DatePicker/Picker.d.ts +0 -1
  661. package/components/Dropdown/Dropdown/Dropdown.js +3 -3
  662. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  663. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +3 -3
  664. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  665. package/components/FileUploader/FileUploader/FileUploader.js +24 -26
  666. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  667. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js +3 -4
  668. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js.map +1 -1
  669. package/components/FileUploader/FileUploader.mixins.d.ts +1 -2
  670. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +100 -101
  671. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  672. package/components/FileUploader/FileUploader.styles.d.ts +1 -2
  673. package/components/FxInput/FxInput/FxInput.js +2 -2
  674. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  675. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +3 -3
  676. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  677. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +6 -10
  678. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  679. package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +48 -52
  680. package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -1
  681. package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +2 -3
  682. package/components/Group/Group/Group.js +10 -14
  683. package/components/Group/Group/Group.js.map +1 -1
  684. package/components/Group/Group.d.ts +0 -1
  685. package/components/Group/Group.styles/Group.styles.js +21 -23
  686. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  687. package/components/Group/Group.styles.d.ts +1 -2
  688. package/components/Hint/Hint/Hint.js +16 -20
  689. package/components/Hint/Hint/Hint.js.map +1 -1
  690. package/components/Hint/Hint.d.ts +0 -1
  691. package/components/Hint/Hint.styles/Hint.styles.js +9 -11
  692. package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
  693. package/components/Hint/Hint.styles.d.ts +1 -2
  694. package/components/Input/Input/Input.js +24 -36
  695. package/components/Input/Input/Input.js.map +1 -1
  696. package/components/Input/Input.d.ts +0 -1
  697. package/components/Input/Input.styles/Input.styles.js +127 -129
  698. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  699. package/components/Input/Input.styles.d.ts +1 -2
  700. package/components/Input/InputLayout/InputLayout/InputLayout.js +1 -4
  701. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  702. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +28 -30
  703. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  704. package/components/Input/InputLayout/InputLayout.styles.d.ts +1 -2
  705. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +2 -4
  706. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  707. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +5 -7
  708. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  709. package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js +5 -7
  710. package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js.map +1 -1
  711. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +6 -8
  712. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +1 -1
  713. package/components/Kebab/Kebab/Kebab.js +20 -22
  714. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  715. package/components/Kebab/Kebab.d.ts +0 -1
  716. package/components/Kebab/Kebab.styles/Kebab.styles.js +42 -44
  717. package/components/Kebab/Kebab.styles/Kebab.styles.js.map +1 -1
  718. package/components/Kebab/Kebab.styles.d.ts +1 -2
  719. package/components/Link/Link/Link.js +88 -50
  720. package/components/Link/Link/Link.js.map +1 -1
  721. package/components/Link/Link.d.ts +18 -17
  722. package/components/Link/Link.md +21 -0
  723. package/components/Link/Link.styles/Link.styles.js +100 -93
  724. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  725. package/components/Link/Link.styles.d.ts +4 -2
  726. package/components/Link/LinkIcon/LinkIcon.js +6 -8
  727. package/components/Link/LinkIcon/LinkIcon.js.map +1 -1
  728. package/components/Loader/Loader/Loader.js +10 -15
  729. package/components/Loader/Loader/Loader.js.map +1 -1
  730. package/components/Loader/Loader.d.ts +0 -1
  731. package/components/Loader/Loader.styles/Loader.styles.js +18 -20
  732. package/components/Loader/Loader.styles/Loader.styles.js.map +1 -1
  733. package/components/Loader/Loader.styles.d.ts +1 -2
  734. package/components/MenuFooter/MenuFooter/MenuFooter.js +7 -9
  735. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  736. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js +7 -10
  737. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js.map +1 -1
  738. package/components/MenuFooter/MenuFooter.mixins.d.ts +2 -3
  739. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js +24 -26
  740. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js.map +1 -1
  741. package/components/MenuFooter/MenuFooter.styles.d.ts +1 -2
  742. package/components/MenuHeader/MenuHeader/MenuHeader.js +6 -8
  743. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  744. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js +7 -10
  745. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js.map +1 -1
  746. package/components/MenuHeader/MenuHeader.mixins.d.ts +2 -3
  747. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js +24 -26
  748. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
  749. package/components/MenuHeader/MenuHeader.styles.d.ts +1 -2
  750. package/components/MenuItem/MenuItem/MenuItem.js +18 -29
  751. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  752. package/components/MenuItem/MenuItem.d.ts +0 -1
  753. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js +15 -20
  754. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js.map +1 -1
  755. package/components/MenuItem/MenuItem.mixins.d.ts +3 -4
  756. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +64 -66
  757. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  758. package/components/MenuItem/MenuItem.styles.d.ts +1 -2
  759. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +7 -9
  760. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  761. package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js +9 -11
  762. package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
  763. package/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -2
  764. package/components/MiniModal/MiniModal/MiniModal.js +4 -5
  765. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  766. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +36 -38
  767. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  768. package/components/MiniModal/MiniModal.styles.d.ts +1 -2
  769. package/components/MiniModal/MiniModalBody/MiniModalBody.js +6 -10
  770. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  771. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +7 -9
  772. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
  773. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +6 -8
  774. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
  775. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +6 -8
  776. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -1
  777. package/components/Modal/Modal/Modal.js +15 -19
  778. package/components/Modal/Modal/Modal.js.map +1 -1
  779. package/components/Modal/Modal.d.ts +0 -1
  780. package/components/Modal/Modal.styles/Modal.styles.js +129 -131
  781. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  782. package/components/Modal/Modal.styles.d.ts +1 -2
  783. package/components/Modal/ModalBody/ModalBody.js +10 -14
  784. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  785. package/components/Modal/ModalBody.d.ts +0 -1
  786. package/components/Modal/ModalClose/ModalClose.js +7 -9
  787. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  788. package/components/Modal/ModalFooter/ModalFooter.js +5 -7
  789. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  790. package/components/Modal/ModalHeader/ModalHeader.js +5 -7
  791. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  792. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -8
  793. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  794. package/components/Paging/Paging/Paging.js +22 -27
  795. package/components/Paging/Paging/Paging.js.map +1 -1
  796. package/components/Paging/Paging.d.ts +0 -1
  797. package/components/Paging/Paging.styles/Paging.styles.js +51 -53
  798. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  799. package/components/Paging/Paging.styles.d.ts +1 -2
  800. package/components/PasswordInput/PasswordInput/PasswordInput.js +9 -16
  801. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  802. package/components/PasswordInput/PasswordInput.d.ts +0 -1
  803. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js +27 -29
  804. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
  805. package/components/PasswordInput/PasswordInput.styles.d.ts +1 -2
  806. package/components/Radio/Radio/Radio.js +16 -27
  807. package/components/Radio/Radio/Radio.js.map +1 -1
  808. package/components/Radio/Radio.d.ts +0 -1
  809. package/components/Radio/Radio.mixins/Radio.mixins.js +17 -26
  810. package/components/Radio/Radio.mixins/Radio.mixins.js.map +1 -1
  811. package/components/Radio/Radio.mixins.d.ts +5 -6
  812. package/components/Radio/Radio.styles/Radio.styles.js +75 -77
  813. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  814. package/components/Radio/Radio.styles.d.ts +1 -2
  815. package/components/RadioGroup/RadioGroup/RadioGroup.js +8 -13
  816. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  817. package/components/RadioGroup/RadioGroup.d.ts +0 -1
  818. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +15 -17
  819. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  820. package/components/RadioGroup/RadioGroup.styles.d.ts +1 -2
  821. package/components/ScrollContainer/ScrollBar/ScrollBar.js +14 -22
  822. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  823. package/components/ScrollContainer/ScrollBar.d.ts +0 -1
  824. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +5 -15
  825. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  826. package/components/ScrollContainer/ScrollContainer.d.ts +1 -3
  827. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +39 -41
  828. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  829. package/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -2
  830. package/components/Select/Select/Select.js +16 -24
  831. package/components/Select/Select/Select.js.map +1 -1
  832. package/components/Select/Select.d.ts +1 -2
  833. package/components/Select/Select.styles/Select.styles.js +48 -50
  834. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  835. package/components/Select/Select.styles.d.ts +1 -2
  836. package/components/SidePage/SidePage/SidePage.js +11 -17
  837. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  838. package/components/SidePage/SidePage.d.ts +0 -1
  839. package/components/SidePage/SidePage.styles/SidePage.styles.js +140 -142
  840. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  841. package/components/SidePage/SidePage.styles.d.ts +1 -2
  842. package/components/SidePage/SidePageBody/SidePageBody.js +11 -15
  843. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  844. package/components/SidePage/SidePageBody.d.ts +0 -1
  845. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +6 -9
  846. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  847. package/components/SidePage/SidePageContainer/SidePageContainer.js +8 -12
  848. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  849. package/components/SidePage/SidePageContainer.d.ts +0 -1
  850. package/components/SidePage/SidePageFooter/SidePageFooter.js +9 -13
  851. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  852. package/components/SidePage/SidePageFooter.d.ts +0 -1
  853. package/components/SidePage/SidePageHeader/SidePageHeader.js +11 -17
  854. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  855. package/components/SidePage/SidePageHeader.d.ts +0 -1
  856. package/components/Spinner/Spinner/Spinner.js +10 -16
  857. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  858. package/components/Spinner/Spinner.d.ts +0 -1
  859. package/components/Spinner/Spinner.styles/Spinner.styles.js +43 -46
  860. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  861. package/components/Spinner/Spinner.styles.d.ts +1 -2
  862. package/components/Sticky/Sticky/Sticky.js +4 -14
  863. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  864. package/components/Sticky/Sticky.d.ts +0 -2
  865. package/components/Sticky/Sticky.styles/Sticky.styles.js +18 -20
  866. package/components/Sticky/Sticky.styles/Sticky.styles.js.map +1 -1
  867. package/components/Sticky/Sticky.styles.d.ts +1 -2
  868. package/components/Switcher/Switcher/Switcher.js +11 -17
  869. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  870. package/components/Switcher/Switcher.d.ts +0 -1
  871. package/components/Switcher/Switcher.styles/Switcher.styles.js +29 -31
  872. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  873. package/components/Switcher/Switcher.styles.d.ts +1 -2
  874. package/components/Tabs/Indicator/Indicator.js +7 -11
  875. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  876. package/components/Tabs/Indicator.d.ts +0 -1
  877. package/components/Tabs/Indicator.styles/Indicator.styles.js +18 -20
  878. package/components/Tabs/Indicator.styles/Indicator.styles.js.map +1 -1
  879. package/components/Tabs/Indicator.styles.d.ts +1 -2
  880. package/components/Tabs/Tab/Tab.js +11 -15
  881. package/components/Tabs/Tab/Tab.js.map +1 -1
  882. package/components/Tabs/Tab.d.ts +0 -1
  883. package/components/Tabs/Tab.styles/Tab.styles.js +84 -90
  884. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  885. package/components/Tabs/Tab.styles.d.ts +3 -4
  886. package/components/Tabs/Tabs/Tabs.js +33 -36
  887. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  888. package/components/Tabs/Tabs.styles/Tabs.styles.js +17 -19
  889. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  890. package/components/Tabs/Tabs.styles.d.ts +1 -2
  891. package/components/Textarea/Textarea/Textarea.js +12 -22
  892. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  893. package/components/Textarea/Textarea.d.ts +0 -1
  894. package/components/Textarea/Textarea.mixins/Textarea.mixins.js +7 -12
  895. package/components/Textarea/Textarea.mixins/Textarea.mixins.js.map +1 -1
  896. package/components/Textarea/Textarea.mixins.d.ts +3 -4
  897. package/components/Textarea/Textarea.styles/Textarea.styles.js +69 -71
  898. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  899. package/components/Textarea/Textarea.styles.d.ts +1 -2
  900. package/components/Textarea/TextareaCounter/TextareaCounter.js +8 -10
  901. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  902. package/components/Toast/Toast/Toast.js +7 -12
  903. package/components/Toast/Toast/Toast.js.map +1 -1
  904. package/components/Toast/Toast.d.ts +0 -1
  905. package/components/Toast/Toast.styles/Toast.styles.js +15 -17
  906. package/components/Toast/Toast.styles/Toast.styles.js.map +1 -1
  907. package/components/Toast/Toast.styles.d.ts +1 -2
  908. package/components/Toast/ToastView/ToastView.js +5 -10
  909. package/components/Toast/ToastView/ToastView.js.map +1 -1
  910. package/components/Toast/ToastView.d.ts +0 -1
  911. package/components/Toast/ToastView.styles/ToastView.styles.js +29 -31
  912. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  913. package/components/Toast/ToastView.styles.d.ts +1 -2
  914. package/components/Toggle/Toggle/Toggle.js +15 -33
  915. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  916. package/components/Toggle/Toggle.d.ts +0 -1
  917. package/components/Toggle/Toggle.mixins/Toggle.mixins.js +22 -35
  918. package/components/Toggle/Toggle.mixins/Toggle.mixins.js.map +1 -1
  919. package/components/Toggle/Toggle.mixins.d.ts +7 -8
  920. package/components/Toggle/Toggle.styles/Toggle.styles.js +129 -131
  921. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  922. package/components/Toggle/Toggle.styles.d.ts +1 -2
  923. package/components/Token/Token/Token.js +7 -12
  924. package/components/Token/Token/Token.js.map +1 -1
  925. package/components/Token/Token.d.ts +2 -3
  926. package/components/Token/Token.mixins/Token.mixins.js +3 -4
  927. package/components/Token/Token.mixins/Token.mixins.js.map +1 -1
  928. package/components/Token/Token.mixins.d.ts +1 -2
  929. package/components/Token/Token.styles/Token.styles.js +156 -161
  930. package/components/Token/Token.styles/Token.styles.js.map +1 -1
  931. package/components/Token/Token.styles.d.ts +2 -3
  932. package/components/Token/TokenView/TokenView.js +8 -10
  933. package/components/Token/TokenView/TokenView.js.map +1 -1
  934. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -15
  935. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  936. package/components/TokenInput/TextWidthHelper.d.ts +0 -2
  937. package/components/TokenInput/TokenInput/TokenInput.js +11 -19
  938. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  939. package/components/TokenInput/TokenInput.d.ts +0 -1
  940. package/components/TokenInput/TokenInput.mixins/TokenInput.mixins.js +5 -8
  941. package/components/TokenInput/TokenInput.mixins/TokenInput.mixins.js.map +1 -1
  942. package/components/TokenInput/TokenInput.mixins.d.ts +2 -3
  943. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +55 -57
  944. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  945. package/components/TokenInput/TokenInput.styles.d.ts +1 -2
  946. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +3 -3
  947. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  948. package/components/Tooltip/Tooltip/Tooltip.js +16 -22
  949. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  950. package/components/Tooltip/Tooltip.d.ts +0 -1
  951. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +9 -11
  952. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  953. package/components/Tooltip/Tooltip.styles.d.ts +1 -2
  954. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +3 -3
  955. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  956. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +5 -8
  957. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  958. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +15 -17
  959. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -1
  960. package/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +1 -2
  961. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +5 -16
  962. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  963. package/internal/CommonWrapper/CommonWrapper.d.ts +1 -3
  964. package/internal/CommonWrapper/utils/extractCommonProps/extractCommonProps.js.map +1 -0
  965. package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/package.json +1 -1
  966. package/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
  967. package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/getCommonVisualStateDataAttributes.js +1 -5
  968. package/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +1 -0
  969. package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/package.json +1 -1
  970. package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/getVisualStateDataAttributes.js +3 -3
  971. package/internal/CommonWrapper/utils/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +1 -0
  972. package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/package.json +1 -1
  973. package/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
  974. package/internal/CommonWrapper/utils/tryGetBoolean/package.json +6 -0
  975. package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js +3 -0
  976. package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js.map +1 -0
  977. package/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
  978. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +3 -3
  979. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  980. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +10 -15
  981. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  982. package/internal/CustomComboBox/ComboBoxView.d.ts +0 -1
  983. package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js +12 -14
  984. package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js.map +1 -1
  985. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +1 -2
  986. package/internal/DataTids/DataTids/DataTids.js +26 -30
  987. package/internal/DataTids/DataTids/DataTids.js.map +1 -1
  988. package/internal/DataTids/DataTids.styles/DataTids.styles.js +18 -20
  989. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +1 -1
  990. package/internal/DataTids/DataTids.styles.d.ts +1 -2
  991. package/internal/DateSelect/DateSelect/DateSelect.js +18 -26
  992. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  993. package/internal/DateSelect/DateSelect.d.ts +0 -1
  994. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +54 -56
  995. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  996. package/internal/DateSelect/DateSelect.styles.d.ts +1 -2
  997. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +4 -14
  998. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  999. package/internal/DropdownContainer/DropdownContainer.d.ts +0 -2
  1000. package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js +6 -8
  1001. package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js.map +1 -1
  1002. package/internal/DropdownContainer/DropdownContainer.styles.d.ts +1 -2
  1003. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +16 -18
  1004. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  1005. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +49 -50
  1006. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -1
  1007. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +1 -2
  1008. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js +6 -9
  1009. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  1010. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +9 -11
  1011. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  1012. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +19 -20
  1013. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -1
  1014. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +1 -2
  1015. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +14 -24
  1016. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  1017. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +15 -1
  1018. package/internal/InputLikeText/HiddenInput/HiddenInput.js +14 -16
  1019. package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +1 -1
  1020. package/internal/InputLikeText/InputLikeText/InputLikeText.js +26 -46
  1021. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1022. package/internal/InputLikeText/InputLikeText.d.ts +0 -1
  1023. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +18 -20
  1024. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
  1025. package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -2
  1026. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +7 -11
  1027. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
  1028. package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -1
  1029. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js +12 -14
  1030. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map +1 -1
  1031. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +1 -2
  1032. package/internal/InternalMenu/InternalMenu/InternalMenu.js +13 -19
  1033. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1034. package/internal/InternalMenu/InternalMenu.d.ts +0 -1
  1035. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +27 -29
  1036. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  1037. package/internal/InternalMenu/InternalMenu.styles.d.ts +1 -2
  1038. package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js +1 -4
  1039. package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  1040. package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js +6 -8
  1041. package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js.map +1 -1
  1042. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +1 -2
  1043. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +7 -9
  1044. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -1
  1045. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +12 -14
  1046. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -1
  1047. package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +1 -2
  1048. package/internal/Menu/Menu/Menu.js +20 -30
  1049. package/internal/Menu/Menu/Menu.js.map +1 -1
  1050. package/internal/Menu/Menu.d.ts +0 -1
  1051. package/internal/Menu/Menu.styles/Menu.styles.js +42 -44
  1052. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  1053. package/internal/Menu/Menu.styles.d.ts +1 -2
  1054. package/internal/MenuMessage/MenuMessage/MenuMessage.js +10 -12
  1055. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  1056. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +26 -28
  1057. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
  1058. package/internal/MenuMessage/MenuMessage.styles.d.ts +1 -2
  1059. package/internal/MobilePopup/MobilePopup/MobilePopup.js +12 -17
  1060. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  1061. package/internal/MobilePopup/MobilePopup.d.ts +0 -1
  1062. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +25 -26
  1063. package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
  1064. package/internal/MobilePopup/MobilePopup.styles.d.ts +1 -2
  1065. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +10 -14
  1066. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  1067. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -1
  1068. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +19 -20
  1069. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
  1070. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +1 -2
  1071. package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js +16 -20
  1072. package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js.map +1 -1
  1073. package/internal/NativeDateInput/NativeDateInput.styles/NativeDateInput.styles.js +7 -8
  1074. package/internal/NativeDateInput/NativeDateInput.styles/NativeDateInput.styles.js.map +1 -1
  1075. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +1 -2
  1076. package/internal/Popup/Popup/Popup.js +8 -13
  1077. package/internal/Popup/Popup/Popup.js.map +1 -1
  1078. package/internal/Popup/Popup.d.ts +0 -1
  1079. package/internal/Popup/Popup.styles/Popup.styles.js +42 -44
  1080. package/internal/Popup/Popup.styles/Popup.styles.js.map +1 -1
  1081. package/internal/Popup/Popup.styles.d.ts +1 -2
  1082. package/internal/Popup/PopupPin/PopupPin.js +10 -14
  1083. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  1084. package/internal/Popup/PopupPin.styles/PopupPin.styles.js +6 -8
  1085. package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
  1086. package/internal/Popup/PopupPin.styles.d.ts +1 -2
  1087. package/internal/PopupMenu/PopupMenu/PopupMenu.js +8 -15
  1088. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1089. package/internal/PopupMenu/PopupMenu.d.ts +0 -1
  1090. package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js +9 -11
  1091. package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js.map +1 -1
  1092. package/internal/PopupMenu/PopupMenu.styles.d.ts +1 -2
  1093. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js +14 -19
  1094. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
  1095. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js +15 -17
  1096. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
  1097. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -2
  1098. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +7 -13
  1099. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -1
  1100. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js +10 -11
  1101. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js.map +1 -1
  1102. package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +1 -2
  1103. package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js +1 -4
  1104. package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js.map +1 -1
  1105. package/internal/ThemePlayground/Playground/Playground.js +9 -16
  1106. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  1107. package/internal/ThemePlayground/Playground.d.ts +0 -1
  1108. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +63 -65
  1109. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  1110. package/internal/ThemePlayground/Playground.styles.d.ts +1 -2
  1111. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +2 -2
  1112. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  1113. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +9 -16
  1114. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  1115. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -1
  1116. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js +9 -15
  1117. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  1118. package/internal/ThemePlayground/VariableValue/VariableValue.js +18 -27
  1119. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1120. package/internal/ThemePlayground/VariableValue.d.ts +0 -1
  1121. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +261 -200
  1122. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  1123. package/internal/ThemeShowcase/ThemeShowcase.d.ts +0 -1
  1124. package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js +76 -78
  1125. package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
  1126. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +1 -2
  1127. package/internal/icons/16px/icon.styles/icon.styles.js +9 -11
  1128. package/internal/icons/16px/icon.styles/icon.styles.js.map +1 -1
  1129. package/internal/icons/16px/icon.styles.d.ts +1 -2
  1130. package/internal/icons/16px/index/index.js +1 -4
  1131. package/internal/icons/16px/index/index.js.map +1 -1
  1132. package/internal/icons/20px/icon.styles/icon.styles.js +9 -11
  1133. package/internal/icons/20px/icon.styles/icon.styles.js.map +1 -1
  1134. package/internal/icons/20px/icon.styles.d.ts +1 -2
  1135. package/internal/icons/20px/svg/svg.js +1 -4
  1136. package/internal/icons/20px/svg/svg.js.map +1 -1
  1137. package/internal/icons/SpinnerIcon/SpinnerIcon.js +12 -14
  1138. package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
  1139. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js +15 -17
  1140. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
  1141. package/internal/icons/SpinnerIcon.styles.d.ts +1 -2
  1142. package/internal/icons2022/BaseIcon/BaseIcon.js +1 -4
  1143. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  1144. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +6 -8
  1145. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -1
  1146. package/internal/icons2022/BaseIcon.styles.d.ts +1 -2
  1147. package/internal/icons2022/LoadingIcon/LoadingIcon.js +5 -7
  1148. package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
  1149. package/lib/styles/Mixins/Mixins.js +5 -4
  1150. package/lib/styles/Mixins/Mixins.js.map +1 -1
  1151. package/lib/styles/Mixins.d.ts +2 -3
  1152. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +14 -15
  1153. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  1154. package/lib/theming/AnimationKeyframes.d.ts +1 -2
  1155. package/lib/theming/Emotion/Emotion.js +22 -25
  1156. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1157. package/lib/theming/Emotion.d.ts +8 -9
  1158. package/lib/theming/ThemeContext/ThemeContext.js +0 -2
  1159. package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
  1160. package/lib/theming/ThemeContext.d.ts +0 -2
  1161. package/lib/theming/useTheme/useTheme.js.map +1 -1
  1162. package/package.json +2 -2
  1163. package/typings/react-ref.d.ts +34 -0
  1164. package/typings/utility-types.d.ts +2 -0
  1165. package/cjs/internal/CommonWrapper/extractCommonProps.js.map +0 -1
  1166. package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.js.map +0 -1
  1167. package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.js.map +0 -1
  1168. package/cjs/lib/theming/StyleContainer.d.ts +0 -4
  1169. package/cjs/lib/theming/StyleContainer.js +0 -21
  1170. package/cjs/lib/theming/StyleContainer.js.map +0 -1
  1171. package/internal/CommonWrapper/extractCommonProps/extractCommonProps.js.map +0 -1
  1172. package/internal/CommonWrapper/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +0 -1
  1173. package/internal/CommonWrapper/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +0 -1
  1174. package/lib/theming/StyleContainer/StyleContainer.js +0 -21
  1175. package/lib/theming/StyleContainer/StyleContainer.js.map +0 -1
  1176. package/lib/theming/StyleContainer/package.json +0 -6
  1177. package/lib/theming/StyleContainer.d.ts +0 -4
  1178. /package/cjs/internal/CommonWrapper/{extractCommonProps.js → utils/extractCommonProps.js} +0 -0
  1179. /package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
  1180. /package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/extractCommonProps.js +0 -0
  1181. /package/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["Kebab.tsx"],"names":["React","PropTypes","isElement","globalObject","isKonturIcon","isKeyArrowVertical","isKeyEnter","isKeySpace","someKeys","LayoutEvents","keyListener","PopupMenu","MenuKebabIcon","isTestEnv","ThemeFactory","CommonWrapper","EmotionConsumer","rootNode","createPropsGetter","isTheme2022","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ThemeConsumer","ThemeProvider","getStyles","KebabIcon","KebabDataTids","caption","Kebab","getProps","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","styles","emotion","handleFocus","handleBlur","cx","kebab","theme","kebabSmall","kebabMedium","kebabLarge","kebab2022","opened","focused","props","renderIcon2022","renderIcon","e","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","requestAnimationFrame","isTabPressed","componentDidMount","addListener","componentWillUnmount","render","create","popupPinOffset","kebabPinOffset","popupMargin","kebabMargin","popupPinSize","kebabPinSize","menuScrollContainerContentWrapperPaddingY","menuLegacyPaddingY","renderMain","positions","disableAnimations","onOpen","onClose","flags","hasPin","kebabHintRemovePin","setRootNode","preventIconsOffset","menuMaxHeight","popupMenuId","children","icon","iconsmall","iconmedium","iconlarge","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","node","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MenuKebabIcon } from '../../internal/icons/16px';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ThemeConsumer, ThemeProvider } from '../../lib/theming/ThemeContext';\n\nimport { getStyles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n disabled?: boolean;\n size?: SizeProp;\n /**\n * Список позиций доступных для расположения выпадашки.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n menuMaxHeight?: number | string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Кастомная иконка\n */\n icon?: React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private emotion!: Emotion;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeProvider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.kebabPinOffset,\n popupMargin: theme.kebabMargin,\n popupPinSize: theme.kebabPinSize,\n menuScrollContainerContentWrapperPaddingY: theme.menuLegacyPaddingY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeProvider>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n const hasPin = !getFullReactUIFlagsContext(flags).kebabHintRemovePin || !isTheme2022(this.theme);\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n popupHasPin={hasPin}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n const styles = getStyles(this.emotion);\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={this.emotion.cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n isTheme2022(this.theme) && styles.kebab2022(),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {isTheme2022(this.theme) ? this.renderIcon2022() : this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <MenuKebabIcon /> } = this.getProps();\n const styles = getStyles(this.emotion);\n return (\n <div\n className={this.emotion.cx({\n [styles.icon(this.theme)]: true,\n [styles.iconsmall(this.theme)]: size === 'small',\n [styles.iconmedium(this.theme)]: size === 'medium',\n [styles.iconlarge(this.theme)]: size === 'large',\n })}\n >\n {icon}\n </div>\n );\n }\n\n private renderIcon2022() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"]}
1
+ {"version":3,"sources":["Kebab.tsx"],"names":["React","PropTypes","isElement","globalObject","isKonturIcon","isKeyArrowVertical","isKeyEnter","isKeySpace","someKeys","LayoutEvents","keyListener","PopupMenu","ThemeContext","MenuKebabIcon","isTestEnv","ThemeFactory","CommonWrapper","cx","rootNode","createPropsGetter","isTheme2022","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","getVisualStateDataAttributes","styles","KebabIcon","KebabDataTids","caption","Kebab","getProps","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","handleFocus","handleBlur","kebab","theme","kebabSmall","kebabMedium","kebabLarge","kebab2022","opened","focused","props","renderIcon2022","renderIcon","e","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","requestAnimationFrame","isTabPressed","componentDidMount","addListener","componentWillUnmount","render","create","popupPinOffset","kebabPinOffset","popupMargin","kebabMargin","popupPinSize","kebabPinSize","menuScrollContainerContentWrapperPaddingY","menuLegacyPaddingY","renderMain","positions","disableAnimations","onOpen","onClose","flags","hasPin","kebabHintRemovePin","setRootNode","preventIconsOffset","menuMaxHeight","popupMenuId","children","icon","iconsmall","iconmedium","iconlarge","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","node","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MenuKebabIcon } from '../../internal/icons/16px';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n disabled?: boolean;\n size?: SizeProp;\n /**\n * Список позиций доступных для расположения выпадашки.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n menuMaxHeight?: number | string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Кастомная иконка\n */\n icon?: React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.kebabPinOffset,\n popupMargin: theme.kebabMargin,\n popupPinSize: theme.kebabPinSize,\n menuScrollContainerContentWrapperPaddingY: theme.menuLegacyPaddingY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n const hasPin = !getFullReactUIFlagsContext(flags).kebabHintRemovePin || !isTheme2022(this.theme);\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled })}\n >\n <PopupMenu\n popupHasPin={hasPin}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n isTheme2022(this.theme) && styles.kebab2022(),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {isTheme2022(this.theme) ? this.renderIcon2022() : this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <MenuKebabIcon /> } = this.getProps();\n return (\n <div\n className={cx({\n [styles.icon(this.theme)]: true,\n [styles.iconsmall(this.theme)]: size === 'small',\n [styles.iconmedium(this.theme)]: size === 'medium',\n [styles.iconlarge(this.theme)]: size === 'large',\n })}\n >\n {icon}\n </div>\n );\n }\n\n private renderIcon2022() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"]}
@@ -46,7 +46,6 @@ export declare class Kebab extends React.Component<KebabProps, KebabState> {
46
46
  private getProps;
47
47
  state: KebabState;
48
48
  private theme;
49
- private emotion;
50
49
  private setRootNode;
51
50
  private listener;
52
51
  componentDidMount(): void;
@@ -2,47 +2,45 @@ import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTempla
2
2
 
3
3
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
4
4
 
5
- import { memoizeStyle } from "../../../lib/theming/Emotion";
6
- export var getStyles = function getStyles(emotion) {
7
- return memoizeStyle({
8
- kebab: function kebab(t) {
9
- return emotion.css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: inline-block;\n text-align: center;\n border: ", ";\n box-sizing: border-box;\n border-radius: ", ";\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ", ";\n\n &:hover {\n background: ", ";\n }\n\n &:active {\n background: ", ";\n }\n "])), t.kebabBorder, t.kebabBorderRadius, t.kebabBackground, t.kebabBackgroundHover, t.kebabBackgroundActive);
10
- },
11
- kebabSmall: function kebabSmall(t) {
12
- return emotion.css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeSmall, t.kebabSizeSmall);
13
- },
14
- kebabMedium: function kebabMedium(t) {
15
- return emotion.css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeMedium, t.kebabSizeMedium);
16
- },
17
- kebabLarge: function kebabLarge(t) {
18
- return emotion.css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeLarge, t.kebabSizeLarge);
19
- },
20
- kebab2022: function kebab2022() {
21
- return emotion.css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n "])));
22
- },
23
- focused: function focused(t) {
24
- return emotion.css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n background: ", ";\n border-color: ", ";\n "])), t.kebabBackgroundHover, t.borderColorFocus);
25
- },
26
- opened: function opened(t) {
27
- return emotion.css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n background: ", " !important; // override kebab:hover style\n cursor: default;\n "])), t.kebabBackgroundActive);
28
- },
29
- disabled: function disabled() {
30
- return emotion.css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n cursor: default;\n\n &:hover {\n background: none;\n }\n "])));
31
- },
32
- icon: function icon(t) {
33
- return emotion.css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n color: ", ";\n line-height: 1;\n "])), t.kebabIconColor);
34
- },
35
- iconsmall: function iconsmall(t) {
36
- return emotion.css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteralLoose(["\n margin-top: 2px;\n font-size: ", ";\n "])), t.kebabIconSizeSmall);
37
- },
38
- iconmedium: function iconmedium(t) {
39
- return emotion.css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteralLoose(["\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ", ";\n "])), t.kebabIconSizeMedium);
40
- },
41
- iconlarge: function iconlarge(t) {
42
- return emotion.css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteralLoose(["\n margin-top: -2px;\n margin-left: 1px;\n font-size: ", ";\n "])), t.kebabIconSizeLarge);
43
- },
44
- menu: function menu(t) {
45
- return emotion.css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteralLoose(["\n overflow: hidden;\n border-radius: ", ";\n "])), t.popupBorderRadius);
46
- }
47
- });
48
- };
5
+ import { css, memoizeStyle } from "../../../lib/theming/Emotion";
6
+ export var styles = memoizeStyle({
7
+ kebab: function kebab(t) {
8
+ return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: inline-block;\n text-align: center;\n border: ", ";\n box-sizing: border-box;\n border-radius: ", ";\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ", ";\n\n &:hover {\n background: ", ";\n }\n\n &:active {\n background: ", ";\n }\n "])), t.kebabBorder, t.kebabBorderRadius, t.kebabBackground, t.kebabBackgroundHover, t.kebabBackgroundActive);
9
+ },
10
+ kebabSmall: function kebabSmall(t) {
11
+ return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeSmall, t.kebabSizeSmall);
12
+ },
13
+ kebabMedium: function kebabMedium(t) {
14
+ return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeMedium, t.kebabSizeMedium);
15
+ },
16
+ kebabLarge: function kebabLarge(t) {
17
+ return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeLarge, t.kebabSizeLarge);
18
+ },
19
+ kebab2022: function kebab2022() {
20
+ return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n "])));
21
+ },
22
+ focused: function focused(t) {
23
+ return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n background: ", ";\n border-color: ", ";\n "])), t.kebabBackgroundHover, t.borderColorFocus);
24
+ },
25
+ opened: function opened(t) {
26
+ return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n background: ", " !important; // override kebab:hover style\n cursor: default;\n "])), t.kebabBackgroundActive);
27
+ },
28
+ disabled: function disabled() {
29
+ return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n cursor: default;\n\n &:hover {\n background: none;\n }\n "])));
30
+ },
31
+ icon: function icon(t) {
32
+ return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n color: ", ";\n line-height: 1;\n "])), t.kebabIconColor);
33
+ },
34
+ iconsmall: function iconsmall(t) {
35
+ return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteralLoose(["\n margin-top: 2px;\n font-size: ", ";\n "])), t.kebabIconSizeSmall);
36
+ },
37
+ iconmedium: function iconmedium(t) {
38
+ return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteralLoose(["\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ", ";\n "])), t.kebabIconSizeMedium);
39
+ },
40
+ iconlarge: function iconlarge(t) {
41
+ return css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteralLoose(["\n margin-top: -2px;\n margin-left: 1px;\n font-size: ", ";\n "])), t.kebabIconSizeLarge);
42
+ },
43
+ menu: function menu(t) {
44
+ return css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteralLoose(["\n overflow: hidden;\n border-radius: ", ";\n "])), t.popupBorderRadius);
45
+ }
46
+ });
@@ -1 +1 @@
1
- {"version":3,"sources":["Kebab.styles.ts"],"names":["memoizeStyle","getStyles","emotion","kebab","t","css","kebabBorder","kebabBorderRadius","kebabBackground","kebabBackgroundHover","kebabBackgroundActive","kebabSmall","kebabSizeSmall","kebabMedium","kebabSizeMedium","kebabLarge","kebabSizeLarge","kebab2022","focused","borderColorFocus","opened","disabled","icon","kebabIconColor","iconsmall","kebabIconSizeSmall","iconmedium","kebabIconSizeMedium","iconlarge","kebabIconSizeLarge","menu","popupBorderRadius"],"mappings":";;AAEA,SAASA,YAAT,QAA6B,2BAA7B;;;AAGA,OAAO,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAACC,OAAD;AACvBF,IAAAA,YAAY,CAAC;AACXG,MAAAA,KADW,iBACLC,CADK,EACK;AACd,eAAOF,OAAO,CAACG,GAAf;;;AAGYD,QAAAA,CAAC,CAACE,WAHd;;AAKmBF,QAAAA,CAAC,CAACG,iBALrB;;;;;AAUgBH,QAAAA,CAAC,CAACI,eAVlB;;;AAakBJ,QAAAA,CAAC,CAACK,oBAbpB;;;;AAiBkBL,QAAAA,CAAC,CAACM,qBAjBpB;;;AAoBD,OAtBU;;AAwBXC,MAAAA,UAxBW,sBAwBAP,CAxBA,EAwBU;AACnB,eAAOF,OAAO,CAACG,GAAf;AACWD,QAAAA,CAAC,CAACQ,cADb;AAEYR,QAAAA,CAAC,CAACQ,cAFd;;AAID,OA7BU;;AA+BXC,MAAAA,WA/BW,uBA+BCT,CA/BD,EA+BW;AACpB,eAAOF,OAAO,CAACG,GAAf;AACWD,QAAAA,CAAC,CAACU,eADb;AAEYV,QAAAA,CAAC,CAACU,eAFd;;AAID,OApCU;;AAsCXC,MAAAA,UAtCW,sBAsCAX,CAtCA,EAsCU;AACnB,eAAOF,OAAO,CAACG,GAAf;AACWD,QAAAA,CAAC,CAACY,cADb;AAEYZ,QAAAA,CAAC,CAACY,cAFd;;AAID,OA3CU;;AA6CXC,MAAAA,SA7CW,uBA6CC;AACV,eAAOf,OAAO,CAACG,GAAf;;;;;AAKD,OAnDU;;AAqDXa,MAAAA,OArDW,mBAqDHd,CArDG,EAqDO;AAChB,eAAOF,OAAO,CAACG,GAAf;AACgBD,QAAAA,CAAC,CAACK,oBADlB;AAEkBL,QAAAA,CAAC,CAACe,gBAFpB;;AAID,OA1DU;;AA4DXC,MAAAA,MA5DW,kBA4DJhB,CA5DI,EA4DM;AACf,eAAOF,OAAO,CAACG,GAAf;AACgBD,QAAAA,CAAC,CAACM,qBADlB;;;AAID,OAjEU;;AAmEXW,MAAAA,QAnEW,sBAmEA;AACT,eAAOnB,OAAO,CAACG,GAAf;;;;;;;AAOD,OA3EU;;AA6EXiB,MAAAA,IA7EW,gBA6ENlB,CA7EM,EA6EI;AACb,eAAOF,OAAO,CAACG,GAAf;AACWD,QAAAA,CAAC,CAACmB,cADb;;;AAID,OAlFU;;AAoFXC,MAAAA,SApFW,qBAoFDpB,CApFC,EAoFS;AAClB,eAAOF,OAAO,CAACG,GAAf;;AAEeD,QAAAA,CAAC,CAACqB,kBAFjB;;AAID,OAzFU;;AA2FXC,MAAAA,UA3FW,sBA2FAtB,CA3FA,EA2FU;AACnB,eAAOF,OAAO,CAACG,GAAf;;;AAGeD,QAAAA,CAAC,CAACuB,mBAHjB;;AAKD,OAjGU;;AAmGXC,MAAAA,SAnGW,qBAmGDxB,CAnGC,EAmGS;AAClB,eAAOF,OAAO,CAACG,GAAf;;;AAGeD,QAAAA,CAAC,CAACyB,kBAHjB;;AAKD,OAzGU;;AA2GXC,MAAAA,IA3GW,gBA2GN1B,CA3GM,EA2GI;AACb,eAAOF,OAAO,CAACG,GAAf;;AAEmBD,QAAAA,CAAC,CAAC2B,iBAFrB;;AAID,OAhHU,EAAD,CADW,GAAlB","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const getStyles = (emotion: Emotion) =>\n memoizeStyle({\n kebab(t: Theme) {\n return emotion.css`\n display: inline-block;\n text-align: center;\n border: ${t.kebabBorder};\n box-sizing: border-box;\n border-radius: ${t.kebabBorderRadius};\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ${t.kebabBackground};\n\n &:hover {\n background: ${t.kebabBackgroundHover};\n }\n\n &:active {\n background: ${t.kebabBackgroundActive};\n }\n `;\n },\n\n kebabSmall(t: Theme) {\n return emotion.css`\n width: ${t.kebabSizeSmall};\n height: ${t.kebabSizeSmall};\n `;\n },\n\n kebabMedium(t: Theme) {\n return emotion.css`\n width: ${t.kebabSizeMedium};\n height: ${t.kebabSizeMedium};\n `;\n },\n\n kebabLarge(t: Theme) {\n return emotion.css`\n width: ${t.kebabSizeLarge};\n height: ${t.kebabSizeLarge};\n `;\n },\n\n kebab2022() {\n return emotion.css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n `;\n },\n\n focused(t: Theme) {\n return emotion.css`\n background: ${t.kebabBackgroundHover};\n border-color: ${t.borderColorFocus};\n `;\n },\n\n opened(t: Theme) {\n return emotion.css`\n background: ${t.kebabBackgroundActive} !important; // override kebab:hover style\n cursor: default;\n `;\n },\n\n disabled() {\n return emotion.css`\n cursor: default;\n\n &:hover {\n background: none;\n }\n `;\n },\n\n icon(t: Theme) {\n return emotion.css`\n color: ${t.kebabIconColor};\n line-height: 1;\n `;\n },\n\n iconsmall(t: Theme) {\n return emotion.css`\n margin-top: 2px;\n font-size: ${t.kebabIconSizeSmall};\n `;\n },\n\n iconmedium(t: Theme) {\n return emotion.css`\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ${t.kebabIconSizeMedium};\n `;\n },\n\n iconlarge(t: Theme) {\n return emotion.css`\n margin-top: -2px;\n margin-left: 1px;\n font-size: ${t.kebabIconSizeLarge};\n `;\n },\n\n menu(t: Theme) {\n return emotion.css`\n overflow: hidden;\n border-radius: ${t.popupBorderRadius};\n `;\n },\n });\n"]}
1
+ {"version":3,"sources":["Kebab.styles.ts"],"names":["css","memoizeStyle","styles","kebab","t","kebabBorder","kebabBorderRadius","kebabBackground","kebabBackgroundHover","kebabBackgroundActive","kebabSmall","kebabSizeSmall","kebabMedium","kebabSizeMedium","kebabLarge","kebabSizeLarge","kebab2022","focused","borderColorFocus","opened","disabled","icon","kebabIconColor","iconsmall","kebabIconSizeSmall","iconmedium","kebabIconSizeMedium","iconlarge","kebabIconSizeLarge","menu","popupBorderRadius"],"mappings":"gVAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,KADiC,iBAC3BC,CAD2B,EACjB;AACd,WAAOJ,GAAP;;;AAGYI,IAAAA,CAAC,CAACC,WAHd;;AAKmBD,IAAAA,CAAC,CAACE,iBALrB;;;;;AAUgBF,IAAAA,CAAC,CAACG,eAVlB;;;AAakBH,IAAAA,CAAC,CAACI,oBAbpB;;;;AAiBkBJ,IAAAA,CAAC,CAACK,qBAjBpB;;;AAoBD,GAtBgC;;AAwBjCC,EAAAA,UAxBiC,sBAwBtBN,CAxBsB,EAwBZ;AACnB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACO,cADb;AAEYP,IAAAA,CAAC,CAACO,cAFd;;AAID,GA7BgC;;AA+BjCC,EAAAA,WA/BiC,uBA+BrBR,CA/BqB,EA+BX;AACpB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACS,eADb;AAEYT,IAAAA,CAAC,CAACS,eAFd;;AAID,GApCgC;;AAsCjCC,EAAAA,UAtCiC,sBAsCtBV,CAtCsB,EAsCZ;AACnB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACW,cADb;AAEYX,IAAAA,CAAC,CAACW,cAFd;;AAID,GA3CgC;;AA6CjCC,EAAAA,SA7CiC,uBA6CrB;AACV,WAAOhB,GAAP;;;;;AAKD,GAnDgC;;AAqDjCiB,EAAAA,OArDiC,mBAqDzBb,CArDyB,EAqDf;AAChB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACI,oBADlB;AAEkBJ,IAAAA,CAAC,CAACc,gBAFpB;;AAID,GA1DgC;;AA4DjCC,EAAAA,MA5DiC,kBA4D1Bf,CA5D0B,EA4DhB;AACf,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACK,qBADlB;;;AAID,GAjEgC;;AAmEjCW,EAAAA,QAnEiC,sBAmEtB;AACT,WAAOpB,GAAP;;;;;;;AAOD,GA3EgC;;AA6EjCqB,EAAAA,IA7EiC,gBA6E5BjB,CA7E4B,EA6ElB;AACb,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACkB,cADb;;;AAID,GAlFgC;;AAoFjCC,EAAAA,SApFiC,qBAoFvBnB,CApFuB,EAoFb;AAClB,WAAOJ,GAAP;;AAEeI,IAAAA,CAAC,CAACoB,kBAFjB;;AAID,GAzFgC;;AA2FjCC,EAAAA,UA3FiC,sBA2FtBrB,CA3FsB,EA2FZ;AACnB,WAAOJ,GAAP;;;AAGeI,IAAAA,CAAC,CAACsB,mBAHjB;;AAKD,GAjGgC;;AAmGjCC,EAAAA,SAnGiC,qBAmGvBvB,CAnGuB,EAmGb;AAClB,WAAOJ,GAAP;;;AAGeI,IAAAA,CAAC,CAACwB,kBAHjB;;AAKD,GAzGgC;;AA2GjCC,EAAAA,IA3GiC,gBA2G5BzB,CA3G4B,EA2GlB;AACb,WAAOJ,GAAP;;AAEmBI,IAAAA,CAAC,CAAC0B,iBAFrB;;AAID,GAhHgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n kebab(t: Theme) {\n return css`\n display: inline-block;\n text-align: center;\n border: ${t.kebabBorder};\n box-sizing: border-box;\n border-radius: ${t.kebabBorderRadius};\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ${t.kebabBackground};\n\n &:hover {\n background: ${t.kebabBackgroundHover};\n }\n\n &:active {\n background: ${t.kebabBackgroundActive};\n }\n `;\n },\n\n kebabSmall(t: Theme) {\n return css`\n width: ${t.kebabSizeSmall};\n height: ${t.kebabSizeSmall};\n `;\n },\n\n kebabMedium(t: Theme) {\n return css`\n width: ${t.kebabSizeMedium};\n height: ${t.kebabSizeMedium};\n `;\n },\n\n kebabLarge(t: Theme) {\n return css`\n width: ${t.kebabSizeLarge};\n height: ${t.kebabSizeLarge};\n `;\n },\n\n kebab2022() {\n return css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n `;\n },\n\n focused(t: Theme) {\n return css`\n background: ${t.kebabBackgroundHover};\n border-color: ${t.borderColorFocus};\n `;\n },\n\n opened(t: Theme) {\n return css`\n background: ${t.kebabBackgroundActive} !important; // override kebab:hover style\n cursor: default;\n `;\n },\n\n disabled() {\n return css`\n cursor: default;\n\n &:hover {\n background: none;\n }\n `;\n },\n\n icon(t: Theme) {\n return css`\n color: ${t.kebabIconColor};\n line-height: 1;\n `;\n },\n\n iconsmall(t: Theme) {\n return css`\n margin-top: 2px;\n font-size: ${t.kebabIconSizeSmall};\n `;\n },\n\n iconmedium(t: Theme) {\n return css`\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ${t.kebabIconSizeMedium};\n `;\n },\n\n iconlarge(t: Theme) {\n return css`\n margin-top: -2px;\n margin-left: 1px;\n font-size: ${t.kebabIconSizeLarge};\n `;\n },\n\n menu(t: Theme) {\n return css`\n overflow: hidden;\n border-radius: ${t.popupBorderRadius};\n `;\n },\n});\n"]}
@@ -1,6 +1,5 @@
1
- import type { Emotion } from '@emotion/css/create-instance';
2
1
  import { Theme } from '../../lib/theming/Theme';
3
- export declare const getStyles: (emotion: Emotion) => {
2
+ export declare const styles: {
4
3
  kebab(t: Theme): string;
5
4
  kebabSmall(t: Theme): string;
6
5
  kebabMedium(t: Theme): string;
@@ -1,26 +1,28 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
3
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
4
- var _excluded = ["disabled", "href", "icon", "rightIcon", "use", "loading", "_button", "_buttonOpened", "rel", "as", "focused"];
4
+ var _excluded = ["disabled", "href", "hrefLang", "target", "icon", "rightIcon", "use", "loading", "_button", "_buttonOpened", "rel", "as", "component", "focused", "error", "warning", "type", "tabIndex"];
5
5
 
6
6
  var _class, _class2, _temp;
7
7
 
8
8
  import React from 'react';
9
- import PropTypes from 'prop-types';
10
9
  import { globalObject } from '@skbkontur/global-object';
10
+ import { resetButton } from "../../../lib/styles/Mixins";
11
11
  import { keyListener } from "../../../lib/events/keyListener";
12
+ import { ThemeContext } from "../../../lib/theming/ThemeContext";
12
13
  import { isExternalLink } from "../../../lib/utils";
13
14
  import { CommonWrapper } from "../../../internal/CommonWrapper";
14
- import { EmotionConsumer } from "../../../lib/theming/Emotion";
15
+ import { cx } from "../../../lib/theming/Emotion";
15
16
  import { rootNode } from "../../../lib/rootNode";
16
17
  import { createPropsGetter } from "../../../lib/createPropsGetter";
17
18
  import { ThemeFactory } from "../../../lib/theming/ThemeFactory";
18
19
  import { isDarkTheme, isTheme2022 } from "../../../lib/theming/ThemeHelpers";
19
20
  import { isIE11 } from "../../../lib/client";
20
- import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
21
- import { ThemeConsumer } from "../../../lib/theming/ThemeContext";
22
- import { getStyles, globalClasses } from "../Link.styles";
21
+ import { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from "../../../lib/featureFlagsContext";
22
+ import { getVisualStateDataAttributes } from "../../../internal/CommonWrapper/utils/getVisualStateDataAttributes";
23
+ import { globalClasses, styles } from "../Link.styles";
23
24
  import { LinkIcon } from "../LinkIcon";
25
+ var LINK_DEFAULT_ELEMENT = 'a';
24
26
  export var LinkDataTids = {
25
27
  root: 'Link__root'
26
28
  };
@@ -44,24 +46,49 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
44
46
  focusedByTab: false
45
47
  };
46
48
 
49
+ _this.getTabIndex = function (_ref) {
50
+ var nonInteractive = _ref.nonInteractive,
51
+ _ref$tabIndex = _ref.tabIndex,
52
+ tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
53
+ return nonInteractive ? -1 : tabIndex;
54
+ };
55
+
56
+ _this.getRel = function (_ref2) {
57
+ var href = _ref2.href,
58
+ rel = _ref2.rel;
59
+
60
+ if (!rel && href) {
61
+ return "noopener" + (isExternalLink(href) ? ' noreferrer' : '');
62
+ }
63
+
64
+ return rel;
65
+ };
66
+
47
67
  _this.renderMain = function (props) {
48
68
  var disabled = props.disabled,
49
69
  href = props.href,
70
+ hrefLang = props.hrefLang,
71
+ target = props.target,
50
72
  icon = props.icon,
51
73
  rightIcon = props.rightIcon,
52
74
  use = props.use,
53
75
  loading = props.loading,
54
76
  _button = props._button,
55
77
  _buttonOpened = props._buttonOpened,
56
- relOrigin = props.rel,
57
- Component = props.as,
78
+ rel = props.rel,
79
+ as = props.as,
80
+ component = props.component,
58
81
  _props$focused = props.focused,
59
82
  focused = _props$focused === void 0 ? false : _props$focused,
83
+ error = props.error,
84
+ warning = props.warning,
85
+ type = props.type,
86
+ tabIndex = props.tabIndex,
60
87
  rest = _objectWithoutPropertiesLoose(props, _excluded);
61
88
 
62
89
  var _isTheme2022 = isTheme2022(_this.theme);
63
90
 
64
- var styles = getStyles(_this.emotion);
91
+ var Root = component || as;
65
92
  var arrow = null;
66
93
 
67
94
  if (_button) {
@@ -70,12 +97,6 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
70
97
  });
71
98
  }
72
99
 
73
- var rel = relOrigin;
74
-
75
- if (typeof rel === 'undefined' && href) {
76
- rel = "noopener" + (isExternalLink(href) ? ' noreferrer' : '');
77
- }
78
-
79
100
  var isFocused = !disabled && (_this.state.focusedByTab || focused);
80
101
  var leftIconElement = icon && /*#__PURE__*/React.createElement(LinkIcon, {
81
102
  icon: icon,
@@ -88,31 +109,56 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
88
109
  loading: loading,
89
110
  position: "right"
90
111
  });
91
- var linkProps = {
92
- className: _this.emotion.cx(styles.useRoot(), use === 'default' && styles.useDefault(_this.theme), use === 'success' && styles.useSuccess(_this.theme), use === 'danger' && styles.useDanger(_this.theme), use === 'grayed' && styles.useGrayed(_this.theme), !!_button && styles.button(_this.theme), !!_buttonOpened && styles.buttonOpened(_this.theme), _this.getLinkClassName(isFocused, Boolean(disabled || loading), _isTheme2022)),
93
- href: href,
94
- rel: rel,
112
+ var nonInteractive = disabled || loading;
113
+ var linkOnlyProps = {
114
+ href: href || '',
115
+ hrefLang: hrefLang,
116
+ rel: _this.getRel({
117
+ href: href,
118
+ rel: rel
119
+ }),
120
+ target: target
121
+ };
122
+ var buttonOnlyProps = {
123
+ disabled: nonInteractive,
124
+ type: type
125
+ };
126
+ var outlineNode = /*#__PURE__*/React.createElement("div", {
127
+ style: {
128
+ zIndex: -1
129
+ },
130
+ className: cx(styles.outline(_this.theme), warning && styles.outlineWarning(_this.theme), error && styles.outlineError(_this.theme))
131
+ });
132
+
133
+ var rootProps = _extends({
134
+ className: cx(styles.useRoot(), Root === 'button' && resetButton(), use === 'default' && styles.useDefault(_this.theme), use === 'success' && styles.useSuccess(_this.theme), use === 'danger' && styles.useDanger(_this.theme), use === 'grayed' && styles.useGrayed(_this.theme), !!_button && styles.button(_this.theme), !!_buttonOpened && styles.buttonOpened(_this.theme), _this.getLinkClassName(isFocused, Boolean(nonInteractive), _isTheme2022)),
95
135
  onClick: _this.handleClick,
96
136
  onFocus: _this.handleFocus,
97
137
  onBlur: _this.handleBlur,
98
- tabIndex: disabled || loading ? -1 : _this.props.tabIndex
99
- };
138
+ tabIndex: _this.getTabIndex({
139
+ nonInteractive: nonInteractive,
140
+ tabIndex: tabIndex
141
+ })
142
+ }, Root === LINK_DEFAULT_ELEMENT ? linkOnlyProps : {}, Root === 'button' ? buttonOnlyProps : {});
143
+
100
144
  var child = _this.props.children;
101
145
 
102
146
  if (_isTheme2022) {
103
- var _this$emotion$cx, _this$emotion$cx2; // lineTextWrapper нужен для реализации transition у подчеркивания
147
+ var _cx, _cx2; // lineTextWrapper нужен для реализации transition у подчеркивания
104
148
 
105
149
 
106
150
  child = /*#__PURE__*/React.createElement("span", {
107
- className: _this.emotion.cx(globalClasses.textWrapper, styles.lineTextWrapper(_this.theme), (_this$emotion$cx = {}, _this$emotion$cx[styles.lineTextWrapperFocused(_this.theme)] = isFocused, _this$emotion$cx))
151
+ className: cx(globalClasses.textWrapper, styles.lineTextWrapper(_this.theme), (_cx = {}, _cx[styles.lineTextWrapperFocused(_this.theme)] = isFocused, _cx))
108
152
  }, /*#__PURE__*/React.createElement("span", {
109
- className: _this.emotion.cx(globalClasses.text, (_this$emotion$cx2 = {}, _this$emotion$cx2[styles.lineText(_this.theme)] = !isIE11, _this$emotion$cx2[styles.lineTextIE11(_this.theme)] = isIE11, _this$emotion$cx2))
153
+ className: cx(globalClasses.text, (_cx2 = {}, _cx2[styles.lineText(_this.theme)] = !isIE11, _cx2[styles.lineTextIE11(_this.theme)] = isIE11, _cx2))
110
154
  }, _this.props.children));
111
155
  }
112
156
 
113
- return /*#__PURE__*/React.createElement(Component, _extends({
157
+ return /*#__PURE__*/React.createElement(Root, _extends({
114
158
  "data-tid": LinkDataTids.root
115
- }, rest, linkProps), leftIconElement, child, rightIconElement, arrow);
159
+ }, rest, rootProps, getVisualStateDataAttributes({
160
+ disabled: disabled
161
+ })), leftIconElement, outlineNode, child, rightIconElement, arrow);
116
162
  };
117
163
 
118
164
  _this.handleFocus = function () {
@@ -136,14 +182,16 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
136
182
  };
137
183
 
138
184
  _this.handleClick = function (event) {
139
- var _this$props = _this.props,
140
- onClick = _this$props.onClick,
141
- disabled = _this$props.disabled,
142
- loading = _this$props.loading;
185
+ var _ref3 = _this.props,
186
+ onClick = _ref3.onClick,
187
+ disabled = _ref3.disabled,
188
+ loading = _ref3.loading,
189
+ href = _ref3.href; // we have to check for 'to' prop in case Root is react-router link
143
190
 
144
- var href = _this.getProps().href;
191
+ var to = Object.prototype.hasOwnProperty.call(_this.props, 'to');
192
+ var destination = href || to;
145
193
 
146
- if (!href) {
194
+ if (!destination) {
147
195
  event.preventDefault();
148
196
  }
149
197
 
@@ -162,14 +210,11 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
162
210
 
163
211
  return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
164
212
  _this2.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;
165
- return /*#__PURE__*/React.createElement(EmotionConsumer, null, function (emotion) {
166
- _this2.emotion = emotion;
167
- return /*#__PURE__*/React.createElement(ThemeConsumer, null, function (theme) {
168
- _this2.theme = _this2.props.theme ? ThemeFactory.create(_this2.props.theme, theme) : theme;
169
- return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
170
- rootNodeRef: _this2.setRootNode
171
- }, _this2.getProps()), _this2.renderMain);
172
- });
213
+ return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
214
+ _this2.theme = _this2.props.theme ? ThemeFactory.create(_this2.props.theme, theme) : theme;
215
+ return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
216
+ rootNodeRef: _this2.setRootNode
217
+ }, _this2.getProps()), _this2.renderMain);
173
218
  });
174
219
  });
175
220
  };
@@ -180,18 +225,11 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
180
225
 
181
226
  var isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;
182
227
  var isFocused = focused && !disabled;
183
- var styles = getStyles(this.emotion);
184
- return !isBorderBottom ? this.emotion.cx(styles.root(this.theme), isFocused && styles.focus(this.theme), disabled && styles.disabled(this.theme), use === 'grayed' && focused && styles.useGrayedFocus(this.theme)) : this.emotion.cx(styles.lineRoot(), disabled && styles.disabled(this.theme), disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme), isFocused && use === 'default' && styles.lineFocus(this.theme), isFocused && use === 'success' && styles.lineFocusSuccess(this.theme), isFocused && use === 'danger' && styles.lineFocusDanger(this.theme), isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme), isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme));
228
+ return !isBorderBottom ? cx(styles.root(this.theme), isFocused && styles.focus(this.theme), disabled && styles.disabled(this.theme), use === 'grayed' && focused && styles.useGrayedFocus(this.theme)) : cx(styles.lineRoot(), disabled && styles.disabled(this.theme), disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme), isFocused && use === 'default' && styles.lineFocus(this.theme), isFocused && use === 'success' && styles.lineFocusSuccess(this.theme), isFocused && use === 'danger' && styles.lineFocusDanger(this.theme), isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme), isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme));
185
229
  };
186
230
 
187
231
  return Link;
188
- }(React.Component), _class2.__KONTUR_REACT_UI__ = 'Link', _class2.displayName = 'Link', _class2.propTypes = {
189
- disabled: PropTypes.bool,
190
- href: PropTypes.string,
191
- icon: PropTypes.node,
192
- use: PropTypes.oneOf(['default', 'success', 'danger', 'grayed'])
193
- }, _class2.defaultProps = {
194
- href: '',
232
+ }(React.Component), _class2.__KONTUR_REACT_UI__ = 'Link', _class2.displayName = 'Link', _class2.defaultProps = {
195
233
  use: 'default',
196
- as: 'a'
234
+ as: LINK_DEFAULT_ELEMENT
197
235
  }, _temp)) || _class;
@@ -1 +1 @@
1
- {"version":3,"sources":["Link.tsx"],"names":["React","PropTypes","globalObject","keyListener","isExternalLink","CommonWrapper","EmotionConsumer","rootNode","createPropsGetter","ThemeFactory","isDarkTheme","isTheme2022","isIE11","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ThemeConsumer","getStyles","globalClasses","LinkIcon","LinkDataTids","root","Link","getProps","defaultProps","state","focusedByTab","renderMain","props","disabled","href","icon","rightIcon","use","loading","_button","_buttonOpened","relOrigin","rel","Component","as","focused","rest","_isTheme2022","theme","styles","emotion","arrow","isFocused","leftIconElement","rightIconElement","linkProps","className","cx","useRoot","useDefault","useSuccess","useDanger","useGrayed","button","buttonOpened","getLinkClassName","Boolean","onClick","handleClick","onFocus","handleFocus","onBlur","handleBlur","tabIndex","child","children","textWrapper","lineTextWrapper","lineTextWrapperFocused","text","lineText","lineTextIE11","requestAnimationFrame","isTabPressed","setState","event","preventDefault","render","flags","linkFocusOutline","create","setRootNode","isBorderBottom","parseInt","linkLineBorderBottomWidth","focus","useGrayedFocus","lineRoot","disabledDark22Theme","lineFocus","lineFocusSuccess","lineFocusDanger","lineFocusGrayed","focus2022","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","node","oneOf"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { Override } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { isExternalLink } from '../../lib/utils';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter, DefaultizedProps } from '../../lib/createPropsGetter';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { isDarkTheme, isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIE11 } from '../../lib/client';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ThemeConsumer } from '../../lib/theming/ThemeContext';\n\nimport { getStyles, globalClasses } from './Link.styles';\nimport { LinkIcon } from './LinkIcon';\n\nexport interface LinkProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.AnchorHTMLAttributes<HTMLAnchorElement>,\n {\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * HTML-атрибут `href`.\n */\n href?: string;\n /**\n * Добавляет ссылке иконку слева.\n */\n icon?: React.ReactElement;\n /**\n * Добавляет ссылке иконку справа.\n */\n rightIcon?: React.ReactElement;\n /**\n * Тема ссылки.\n */\n use?: 'default' | 'success' | 'danger' | 'grayed';\n /**\n * @ignore\n */\n _button?: boolean;\n /**\n * @ignore\n */\n _buttonOpened?: boolean;\n /**\n * HTML-атрибут `tabindex`.\n */\n tabIndex?: number;\n /**\n * Переводит ссылку в состояние загрузки.\n */\n loading?: boolean;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n /**\n * Компонент, используемый в качестве корневого узла.\n * @ignore\n */\n as?: React.ElementType | keyof React.ReactHTML;\n /**\n * @ignore\n */\n focused?: boolean;\n }\n > {}\n\nexport interface LinkState {\n focusedByTab: boolean;\n}\n\nexport const LinkDataTids = {\n root: 'Link__root',\n} as const;\n\ntype DefaultProps = Required<Pick<LinkProps, 'href' | 'use' | 'as'>>;\ntype DefaultizedLinkProps = DefaultizedProps<LinkProps, DefaultProps>;\n\n/**\n * Элемент ссылки из HTML.\n */\n@rootNode\nexport class Link extends React.Component<LinkProps, LinkState> {\n public static __KONTUR_REACT_UI__ = 'Link';\n public static displayName = 'Link';\n\n public static propTypes = {\n disabled: PropTypes.bool,\n\n href: PropTypes.string,\n\n icon: PropTypes.node,\n\n use: PropTypes.oneOf(['default', 'success', 'danger', 'grayed']),\n };\n\n public static defaultProps: DefaultProps = {\n href: '',\n use: 'default',\n as: 'a',\n };\n\n private getProps = createPropsGetter(Link.defaultProps);\n\n public state: LinkState = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private emotion!: Emotion;\n private setRootNode!: TSetRootNode;\n private linkFocusOutline?: boolean;\n\n public render(): JSX.Element {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderMain = (props: CommonWrapperRestProps<DefaultizedLinkProps>) => {\n const {\n disabled,\n href,\n icon,\n rightIcon,\n use,\n loading,\n _button,\n _buttonOpened,\n rel: relOrigin,\n as: Component,\n focused = false,\n ...rest\n } = props;\n const _isTheme2022 = isTheme2022(this.theme);\n const styles = getStyles(this.emotion);\n\n let arrow = null;\n if (_button) {\n arrow = <span className={styles.arrow()} />;\n }\n\n let rel = relOrigin;\n if (typeof rel === 'undefined' && href) {\n rel = `noopener${isExternalLink(href) ? ' noreferrer' : ''}`;\n }\n\n const isFocused = !disabled && (this.state.focusedByTab || focused);\n\n const leftIconElement = icon && <LinkIcon icon={icon} loading={loading} position=\"left\" />;\n const rightIconElement = rightIcon && (\n <LinkIcon hasBothIcons={!!icon && !!rightIcon} icon={rightIcon} loading={loading} position=\"right\" />\n );\n\n const linkProps = {\n className: this.emotion.cx(\n styles.useRoot(),\n use === 'default' && styles.useDefault(this.theme),\n use === 'success' && styles.useSuccess(this.theme),\n use === 'danger' && styles.useDanger(this.theme),\n use === 'grayed' && styles.useGrayed(this.theme),\n !!_button && styles.button(this.theme),\n !!_buttonOpened && styles.buttonOpened(this.theme),\n this.getLinkClassName(isFocused, Boolean(disabled || loading), _isTheme2022),\n ),\n href,\n rel,\n onClick: this.handleClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n tabIndex: disabled || loading ? -1 : this.props.tabIndex,\n };\n\n let child = this.props.children;\n if (_isTheme2022) {\n // lineTextWrapper нужен для реализации transition у подчеркивания\n child = (\n <span\n className={this.emotion.cx(globalClasses.textWrapper, styles.lineTextWrapper(this.theme), {\n [styles.lineTextWrapperFocused(this.theme)]: isFocused,\n })}\n >\n <span\n className={this.emotion.cx(globalClasses.text, {\n [styles.lineText(this.theme)]: !isIE11,\n [styles.lineTextIE11(this.theme)]: isIE11,\n })}\n >\n {this.props.children}\n </span>\n </span>\n );\n }\n\n return (\n <Component data-tid={LinkDataTids.root} {...rest} {...linkProps}>\n {leftIconElement}\n {child}\n {rightIconElement}\n {arrow}\n </Component>\n );\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n\n private handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\n const { onClick, disabled, loading } = this.props;\n const href = this.getProps().href;\n if (!href) {\n event.preventDefault();\n }\n if (onClick && !disabled && !loading) {\n onClick(event);\n }\n };\n\n private getLinkClassName(focused: boolean, disabled: boolean, _isTheme2022: boolean): string {\n const { use } = this.getProps();\n const isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;\n const isFocused = focused && !disabled;\n const styles = getStyles(this.emotion);\n\n return !isBorderBottom\n ? this.emotion.cx(\n styles.root(this.theme),\n isFocused && styles.focus(this.theme),\n disabled && styles.disabled(this.theme),\n use === 'grayed' && focused && styles.useGrayedFocus(this.theme),\n )\n : this.emotion.cx(\n styles.lineRoot(),\n disabled && styles.disabled(this.theme),\n disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme),\n isFocused && use === 'default' && styles.lineFocus(this.theme),\n isFocused && use === 'success' && styles.lineFocusSuccess(this.theme),\n isFocused && use === 'danger' && styles.lineFocusDanger(this.theme),\n isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme),\n isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme),\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["Link.tsx"],"names":["React","globalObject","resetButton","keyListener","ThemeContext","isExternalLink","CommonWrapper","cx","rootNode","createPropsGetter","ThemeFactory","isDarkTheme","isTheme2022","isIE11","ReactUIFeatureFlagsContext","getFullReactUIFlagsContext","getVisualStateDataAttributes","globalClasses","styles","LinkIcon","LINK_DEFAULT_ELEMENT","LinkDataTids","root","Link","getProps","defaultProps","state","focusedByTab","getTabIndex","nonInteractive","tabIndex","getRel","href","rel","renderMain","props","disabled","hrefLang","target","icon","rightIcon","use","loading","_button","_buttonOpened","as","component","focused","error","warning","type","rest","_isTheme2022","theme","Root","arrow","isFocused","leftIconElement","rightIconElement","linkOnlyProps","buttonOnlyProps","outlineNode","zIndex","outline","outlineWarning","outlineError","rootProps","className","useRoot","useDefault","useSuccess","useDanger","useGrayed","button","buttonOpened","getLinkClassName","Boolean","onClick","handleClick","onFocus","handleFocus","onBlur","handleBlur","child","children","textWrapper","lineTextWrapper","lineTextWrapperFocused","text","lineText","lineTextIE11","requestAnimationFrame","isTabPressed","setState","event","to","Object","prototype","hasOwnProperty","call","destination","preventDefault","render","flags","linkFocusOutline","create","setRootNode","isBorderBottom","parseInt","linkLineBorderBottomWidth","focus","useGrayedFocus","lineRoot","disabledDark22Theme","lineFocus","lineFocusSuccess","lineFocusDanger","lineFocusGrayed","focus2022","Component","__KONTUR_REACT_UI__","displayName"],"mappings":"0cAAA,OAAOA,KAAP,MAAsC,OAAtC;AACA,SAASC,YAAT,QAA6B,0BAA7B;;AAEA,SAASC,WAAT,QAA4B,yBAA5B;;AAEA,SAASC,WAAT,QAA4B,8BAA5B;;AAEA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,cAAT,QAA+B,iBAA/B;AACA,SAAsBC,aAAtB,QAAmE,8BAAnE;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,QAAT,QAAuC,oBAAvC;AACA,SAASC,iBAAT,QAAoD,6BAApD;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,WAAT,EAAsBC,WAAtB,QAAyC,gCAAzC;AACA,SAASC,MAAT,QAAuB,kBAAvB;AACA,SAASC,0BAAT,EAAqCC,0BAArC,QAAuE,+BAAvE;AACA,SAASC,4BAAT,QAA6C,iEAA7C;;AAEA,SAASC,aAAT,EAAwBC,MAAxB,QAAsC,eAAtC;AACA,SAASC,QAAT,QAAyB,YAAzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmEA,IAAMC,oBAAoB,GAAG,GAA7B;;;;;;;;;;AAUA,OAAO,IAAMC,YAAY,GAAG;AAC1BC,EAAAA,IAAI,EAAE,YADoB,EAArB;;;;;;;;;;;;;AAcP,OAJA;AACA;AACA,GAEA,IAAaC,IAAb,GADCf,QACD;;;;;;;;;;AAYUgB,IAAAA,QAZV,GAYqBf,iBAAiB,CAACc,IAAI,CAACE,YAAN,CAZtC;;AAcSC,IAAAA,KAdT,GAc4B;AACxBC,MAAAA,YAAY,EAAE,KADU,EAd5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CUC,IAAAA,WA5CV,GA4CwB;;;;;;AAMhB,SALJC,cAKI,QALJA,cAKI,sBAJJC,QAII,CAJJA,QAII,8BAJO,CAIP;AACJ,aAAOD,cAAc,GAAG,CAAC,CAAJ,GAAQC,QAA7B;AACD,KApDH;;AAsDUC,IAAAA,MAtDV,GAsDmB,iBAAoD,KAAjDC,IAAiD,SAAjDA,IAAiD,CAA3CC,GAA2C,SAA3CA,GAA2C;AACnE,UAAI,CAACA,GAAD,IAAQD,IAAZ,EAAkB;AAChB,6BAAkB3B,cAAc,CAAC2B,IAAD,CAAd,GAAuB,aAAvB,GAAuC,EAAzD;AACD;;AAED,aAAOC,GAAP;AACD,KA5DH;;AA8DUC,IAAAA,UA9DV,GA8DuB,UAACC,KAAD,EAAyD;AAC5E;AACEC,MAAAA,QADF;;;;;;;;;;;;;;;;;;;AAoBID,MAAAA,KApBJ,CACEC,QADF,CAEEJ,IAFF,GAoBIG,KApBJ,CAEEH,IAFF,CAGEK,QAHF,GAoBIF,KApBJ,CAGEE,QAHF,CAIEC,MAJF,GAoBIH,KApBJ,CAIEG,MAJF,CAKEC,IALF,GAoBIJ,KApBJ,CAKEI,IALF,CAMEC,SANF,GAoBIL,KApBJ,CAMEK,SANF,CAOEC,GAPF,GAoBIN,KApBJ,CAOEM,GAPF,CAQEC,OARF,GAoBIP,KApBJ,CAQEO,OARF,CASEC,OATF,GAoBIR,KApBJ,CASEQ,OATF,CAUEC,aAVF,GAoBIT,KApBJ,CAUES,aAVF,CAWEX,GAXF,GAoBIE,KApBJ,CAWEF,GAXF,CAYEY,EAZF,GAoBIV,KApBJ,CAYEU,EAZF,CAaEC,SAbF,GAoBIX,KApBJ,CAaEW,SAbF,kBAoBIX,KApBJ,CAcEY,OAdF,CAcEA,OAdF,+BAcY,KAdZ,kBAeEC,KAfF,GAoBIb,KApBJ,CAeEa,KAfF,CAgBEC,OAhBF,GAoBId,KApBJ,CAgBEc,OAhBF,CAiBEC,IAjBF,GAoBIf,KApBJ,CAiBEe,IAjBF,CAkBEpB,QAlBF,GAoBIK,KApBJ,CAkBEL,QAlBF,CAmBKqB,IAnBL,iCAoBIhB,KApBJ;AAqBA,UAAMiB,YAAY,GAAGxC,WAAW,CAAC,MAAKyC,KAAN,CAAhC;AACA,UAAMC,IAAI,GAAIR,SAAS,IAAID,EAA3B;;AAEA,UAAIU,KAAK,GAAG,IAAZ;AACA,UAAIZ,OAAJ,EAAa;AACXY,QAAAA,KAAK,gBAAG,8BAAM,SAAS,EAAErC,MAAM,CAACqC,KAAP,EAAjB,GAAR;AACD;;AAED,UAAMC,SAAS,GAAG,CAACpB,QAAD,KAAc,MAAKV,KAAL,CAAWC,YAAX,IAA2BoB,OAAzC,CAAlB;;AAEA,UAAMU,eAAe,GAAGlB,IAAI,iBAAI,oBAAC,QAAD,IAAU,IAAI,EAAEA,IAAhB,EAAsB,OAAO,EAAEG,OAA/B,EAAwC,QAAQ,EAAC,MAAjD,GAAhC;AACA,UAAMgB,gBAAgB,GAAGlB,SAAS;AAChC,0BAAC,QAAD,IAAU,YAAY,EAAE,CAAC,CAACD,IAAF,IAAU,CAAC,CAACC,SAApC,EAA+C,IAAI,EAAEA,SAArD,EAAgE,OAAO,EAAEE,OAAzE,EAAkF,QAAQ,EAAC,OAA3F,GADF;;AAGA,UAAMb,cAAc,GAAGO,QAAQ,IAAIM,OAAnC;;AAEA,UAAMiB,aAAa,GAAG;AACpB3B,QAAAA,IAAI,EAAEA,IAAI,IAAI,EADM;AAEpBK,QAAAA,QAAQ,EAARA,QAFoB;AAGpBJ,QAAAA,GAAG,EAAE,MAAKF,MAAL,CAAY,EAAEC,IAAI,EAAJA,IAAF,EAAQC,GAAG,EAAHA,GAAR,EAAZ,CAHe;AAIpBK,QAAAA,MAAM,EAANA,MAJoB,EAAtB;;;AAOA,UAAMsB,eAAe,GAAG,EAAExB,QAAQ,EAAEP,cAAZ,EAA4BqB,IAAI,EAAJA,IAA5B,EAAxB;;AAEA,UAAMW,WAAW;AACf;AACE,QAAA,KAAK,EAAE,EAAEC,MAAM,EAAE,CAAC,CAAX,EADT;AAEE,QAAA,SAAS,EAAEvD,EAAE;AACXW,QAAAA,MAAM,CAAC6C,OAAP,CAAe,MAAKV,KAApB,CADW;AAEXJ,QAAAA,OAAO,IAAI/B,MAAM,CAAC8C,cAAP,CAAsB,MAAKX,KAA3B,CAFA;AAGXL,QAAAA,KAAK,IAAI9B,MAAM,CAAC+C,YAAP,CAAoB,MAAKZ,KAAzB,CAHE,CAFf,GADF;;;;;AAWA,UAAMa,SAAS;AACbC,QAAAA,SAAS,EAAE5D,EAAE;AACXW,QAAAA,MAAM,CAACkD,OAAP,EADW;AAEXd,QAAAA,IAAI,KAAK,QAAT,IAAqBpD,WAAW,EAFrB;AAGXuC,QAAAA,GAAG,KAAK,SAAR,IAAqBvB,MAAM,CAACmD,UAAP,CAAkB,MAAKhB,KAAvB,CAHV;AAIXZ,QAAAA,GAAG,KAAK,SAAR,IAAqBvB,MAAM,CAACoD,UAAP,CAAkB,MAAKjB,KAAvB,CAJV;AAKXZ,QAAAA,GAAG,KAAK,QAAR,IAAoBvB,MAAM,CAACqD,SAAP,CAAiB,MAAKlB,KAAtB,CALT;AAMXZ,QAAAA,GAAG,KAAK,QAAR,IAAoBvB,MAAM,CAACsD,SAAP,CAAiB,MAAKnB,KAAtB,CANT;AAOX,SAAC,CAACV,OAAF,IAAazB,MAAM,CAACuD,MAAP,CAAc,MAAKpB,KAAnB,CAPF;AAQX,SAAC,CAACT,aAAF,IAAmB1B,MAAM,CAACwD,YAAP,CAAoB,MAAKrB,KAAzB,CARR;AASX,cAAKsB,gBAAL,CAAsBnB,SAAtB,EAAiCoB,OAAO,CAAC/C,cAAD,CAAxC,EAA0DuB,YAA1D,CATW,CADA;;AAYbyB,QAAAA,OAAO,EAAE,MAAKC,WAZD;AAabC,QAAAA,OAAO,EAAE,MAAKC,WAbD;AAcbC,QAAAA,MAAM,EAAE,MAAKC,UAdA;AAebpD,QAAAA,QAAQ,EAAE,MAAKF,WAAL,CAAiB,EAAEC,cAAc,EAAdA,cAAF,EAAkBC,QAAQ,EAARA,QAAlB,EAAjB,CAfG;AAgBTwB,MAAAA,IAAI,KAAKlC,oBAAT,GAAgCuC,aAAhC,GAAgD,EAhBvC;AAiBTL,MAAAA,IAAI,KAAK,QAAT,GAAoBM,eAApB,GAAsC,EAjB7B,CAAf;;;AAoBA,UAAIuB,KAAK,GAAG,MAAKhD,KAAL,CAAWiD,QAAvB;AACA,UAAIhC,YAAJ,EAAkB;AAChB;AACA+B,QAAAA,KAAK;AACH;AACE,UAAA,SAAS,EAAE5E,EAAE,CAACU,aAAa,CAACoE,WAAf,EAA4BnE,MAAM,CAACoE,eAAP,CAAuB,MAAKjC,KAA5B,CAA5B;AACVnC,UAAAA,MAAM,CAACqE,sBAAP,CAA8B,MAAKlC,KAAnC,CADU,IACkCG,SADlC,OADf;;;AAKE;AACE,UAAA,SAAS,EAAEjD,EAAE,CAACU,aAAa,CAACuE,IAAf;AACVtE,UAAAA,MAAM,CAACuE,QAAP,CAAgB,MAAKpC,KAArB,CADU,IACoB,CAACxC,MADrB;AAEVK,UAAAA,MAAM,CAACwE,YAAP,CAAoB,MAAKrC,KAAzB,CAFU,IAEwBxC,MAFxB,QADf;;;AAMG,cAAKsB,KAAL,CAAWiD,QANd,CALF,CADF;;;;AAgBD;;AAED;AACE,4BAAC,IAAD,aAAM,YAAU/D,YAAY,CAACC,IAA7B,IAAuC6B,IAAvC,EAAiDe,SAAjD,EAAgElD,4BAA4B,CAAC,EAAEoB,QAAQ,EAARA,QAAF,EAAD,CAA5F;AACGqB,QAAAA,eADH;AAEGI,QAAAA,WAFH;AAGGsB,QAAAA,KAHH;AAIGzB,QAAAA,gBAJH;AAKGH,QAAAA,KALH,CADF;;;AASD,KA1KH;;AA4KUyB,IAAAA,WA5KV,GA4KwB,YAAM;AAC1B,UAAI,CAAC,MAAK7C,KAAL,CAAWC,QAAhB,EAA0B;AACxB;AACA;AACAnC,QAAAA,YAAY,CAAC0F,qBAAb,oBAAA1F,YAAY,CAAC0F,qBAAb,CAAqC,YAAM;AACzC,cAAIxF,WAAW,CAACyF,YAAhB,EAA8B;AAC5B,kBAAKC,QAAL,CAAc,EAAElE,YAAY,EAAE,IAAhB,EAAd;AACD;AACF,SAJD;AAKD;AACF,KAtLH;;AAwLUuD,IAAAA,UAxLV,GAwLuB,YAAM;AACzB,YAAKW,QAAL,CAAc,EAAElE,YAAY,EAAE,KAAhB,EAAd;AACD,KA1LH;;AA4LUmD,IAAAA,WA5LV,GA4LwB,UAACgB,KAAD,EAAgD;AACpE,kBAA6C,MAAK3D,KAAlD,CAAQ0C,OAAR,SAAQA,OAAR,CAAiBzC,QAAjB,SAAiBA,QAAjB,CAA2BM,OAA3B,SAA2BA,OAA3B,CAAoCV,IAApC,SAAoCA,IAApC;AACA;AACA,UAAM+D,EAAE,GAAGC,MAAM,CAACC,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqC,MAAKhE,KAA1C,EAAiD,IAAjD,CAAX;AACA,UAAMiE,WAAW,GAAGpE,IAAI,IAAI+D,EAA5B;;AAEA,UAAI,CAACK,WAAL,EAAkB;AAChBN,QAAAA,KAAK,CAACO,cAAN;AACD;AACD,UAAIxB,OAAO,IAAI,CAACzC,QAAZ,IAAwB,CAACM,OAA7B,EAAsC;AACpCmC,QAAAA,OAAO,CAACiB,KAAD,CAAP;AACD;AACF,KAxMH,kDAsBSQ,MAtBT,GAsBE,kBAA6B,mBAC3B,oBACE,oBAAC,0BAAD,CAA4B,QAA5B,QACG,UAACC,KAAD,EAAW,CACV,MAAI,CAACC,gBAAL,GAAwBzF,0BAA0B,CAACwF,KAAD,CAA1B,CAAkCC,gBAA1D,CACA,oBACE,oBAAC,YAAD,CAAc,QAAd,QACG,UAACnD,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAa,MAAI,CAAClB,KAAL,CAAWkB,KAAX,GAAmB3C,YAAY,CAAC+F,MAAb,CAAoB,MAAI,CAACtE,KAAL,CAAWkB,KAA/B,EAA+CA,KAA/C,CAAnB,GAA2EA,KAAxF,CACA,oBACE,oBAAC,aAAD,aAAe,WAAW,EAAE,MAAI,CAACqD,WAAjC,IAAkD,MAAI,CAAClF,QAAL,EAAlD,GACG,MAAI,CAACU,UADR,CADF,CAKD,CARH,CADF,CAYD,CAfH,CADF,CAmBD,CA1CH;;AA0MUyC,EAAAA,gBA1MV,GA0ME,0BAAyB5B,OAAzB,EAA2CX,QAA3C,EAA8DgB,YAA9D,EAA6F;AAC3F,yBAAgB,KAAK5B,QAAL,EAAhB,CAAQiB,GAAR,kBAAQA,GAAR;AACA,QAAMkE,cAAc,GAAGC,QAAQ,CAAC,KAAKvD,KAAL,CAAWwD,yBAAZ,CAAR,GAAiD,CAAxE;AACA,QAAMrD,SAAS,GAAGT,OAAO,IAAI,CAACX,QAA9B;;AAEA,WAAO,CAACuE,cAAD;AACHpG,IAAAA,EAAE;AACAW,IAAAA,MAAM,CAACI,IAAP,CAAY,KAAK+B,KAAjB,CADA;AAEAG,IAAAA,SAAS,IAAItC,MAAM,CAAC4F,KAAP,CAAa,KAAKzD,KAAlB,CAFb;AAGAjB,IAAAA,QAAQ,IAAIlB,MAAM,CAACkB,QAAP,CAAgB,KAAKiB,KAArB,CAHZ;AAIAZ,IAAAA,GAAG,KAAK,QAAR,IAAoBM,OAApB,IAA+B7B,MAAM,CAAC6F,cAAP,CAAsB,KAAK1D,KAA3B,CAJ/B,CADC;;AAOH9C,IAAAA,EAAE;AACAW,IAAAA,MAAM,CAAC8F,QAAP,EADA;AAEA5E,IAAAA,QAAQ,IAAIlB,MAAM,CAACkB,QAAP,CAAgB,KAAKiB,KAArB,CAFZ;AAGAjB,IAAAA,QAAQ,IAAIgB,YAAZ,IAA4BzC,WAAW,CAAC,KAAK0C,KAAN,CAAvC,IAAuDnC,MAAM,CAAC+F,mBAAP,CAA2B,KAAK5D,KAAhC,CAHvD;AAIAG,IAAAA,SAAS,IAAIf,GAAG,KAAK,SAArB,IAAkCvB,MAAM,CAACgG,SAAP,CAAiB,KAAK7D,KAAtB,CAJlC;AAKAG,IAAAA,SAAS,IAAIf,GAAG,KAAK,SAArB,IAAkCvB,MAAM,CAACiG,gBAAP,CAAwB,KAAK9D,KAA7B,CALlC;AAMAG,IAAAA,SAAS,IAAIf,GAAG,KAAK,QAArB,IAAiCvB,MAAM,CAACkG,eAAP,CAAuB,KAAK/D,KAA5B,CANjC;AAOAG,IAAAA,SAAS,IAAIf,GAAG,KAAK,QAArB,IAAiCvB,MAAM,CAACmG,eAAP,CAAuB,KAAKhE,KAA5B,CAPjC;AAQAG,IAAAA,SAAS,IAAIJ,YAAb,IAA6B,KAAKoD,gBAAlC,IAAsDtF,MAAM,CAACoG,SAAP,CAAiB,KAAKjE,KAAtB,CARtD,CAPN;;AAiBD,GAhOH,eAAqFrD,KAAK,CAACuH,SAA3F,WAIgBC,mBAJhB,GAIsC,MAJtC,UAKgBC,WALhB,GAK8B,MAL9B,UAOgBhG,YAPhB,GAO+B,EAC3BgB,GAAG,EAAE,SADsB,EAE3BI,EAAE,EAAEzB,oBAFuB,EAP/B","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { resetButton } from '../../lib/styles/Mixins';\nimport { PolymorphicPropsWithoutRef } from '../../typings/react-ref';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { isExternalLink } from '../../lib/utils';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter, DefaultizedProps } from '../../lib/createPropsGetter';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { isDarkTheme, isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIE11 } from '../../lib/client';\nimport { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from '../../lib/featureFlagsContext';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { globalClasses, styles } from './Link.styles';\nimport { LinkIcon } from './LinkIcon';\n\ninterface LinkInnerProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'onBlur' | 'onFocus'> {\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * Добавляет ссылке иконку слева.\n */\n icon?: React.ReactElement;\n /**\n * Добавляет ссылке иконку справа.\n */\n rightIcon?: React.ReactElement;\n /**\n * Тема ссылки.\n */\n use?: 'default' | 'success' | 'danger' | 'grayed';\n /**\n * @ignore\n */\n _button?: boolean;\n /**\n * @ignore\n */\n _buttonOpened?: boolean;\n /**\n * HTML-атрибут `tabindex`.\n */\n tabIndex?: number;\n /**\n * Переводит ссылку в состояние загрузки.\n */\n loading?: boolean;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n /**\n * Компонент, используемый в качестве корневого узла.\n * @ignore\n */\n as?: React.ElementType | keyof React.ReactHTML;\n /**\n * @ignore\n */\n focused?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n}\n\nconst LINK_DEFAULT_ELEMENT = 'a';\n\nexport type LinkProps<C extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> = PolymorphicPropsWithoutRef<\n LinkInnerProps,\n C\n>;\nexport interface LinkState {\n focusedByTab: boolean;\n}\n\nexport const LinkDataTids = {\n root: 'Link__root',\n} as const;\n\ntype DefaultProps = Required<Pick<LinkProps, 'use' | 'as'>>;\ntype DefaultizedLinkProps<T extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> = DefaultizedProps<\n LinkProps<T>,\n DefaultProps\n>;\n\n/**\n * Элемент ссылки из HTML.\n */\n@rootNode\nexport class Link<C extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> extends React.Component<\n LinkProps<C>,\n LinkState\n> {\n public static __KONTUR_REACT_UI__ = 'Link';\n public static displayName = 'Link';\n\n public static defaultProps = {\n use: 'default',\n as: LINK_DEFAULT_ELEMENT,\n };\n\n private getProps = createPropsGetter(Link.defaultProps);\n\n public state: LinkState = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private linkFocusOutline?: boolean;\n\n public render(): JSX.Element {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private getTabIndex = ({\n nonInteractive,\n tabIndex = 0,\n }: {\n nonInteractive: boolean | undefined;\n tabIndex: number | undefined;\n }) => {\n return nonInteractive ? -1 : tabIndex;\n };\n\n private getRel = ({ href, rel }: Pick<LinkProps, 'href' | 'rel'>) => {\n if (!rel && href) {\n return `noopener${isExternalLink(href) ? ' noreferrer' : ''}`;\n }\n\n return rel;\n };\n\n private renderMain = (props: CommonWrapperRestProps<DefaultizedLinkProps>) => {\n const {\n disabled,\n href,\n hrefLang,\n target,\n icon,\n rightIcon,\n use,\n loading,\n _button,\n _buttonOpened,\n rel,\n as,\n component,\n focused = false,\n error,\n warning,\n type,\n tabIndex,\n ...rest\n } = props;\n const _isTheme2022 = isTheme2022(this.theme);\n const Root = (component || as) as React.ElementType;\n\n let arrow = null;\n if (_button) {\n arrow = <span className={styles.arrow()} />;\n }\n\n const isFocused = !disabled && (this.state.focusedByTab || focused);\n\n const leftIconElement = icon && <LinkIcon icon={icon} loading={loading} position=\"left\" />;\n const rightIconElement = rightIcon && (\n <LinkIcon hasBothIcons={!!icon && !!rightIcon} icon={rightIcon} loading={loading} position=\"right\" />\n );\n const nonInteractive = disabled || loading;\n\n const linkOnlyProps = {\n href: href || '',\n hrefLang,\n rel: this.getRel({ href, rel }),\n target,\n };\n\n const buttonOnlyProps = { disabled: nonInteractive, type };\n\n const outlineNode = (\n <div\n style={{ zIndex: -1 }}\n className={cx(\n styles.outline(this.theme),\n warning && styles.outlineWarning(this.theme),\n error && styles.outlineError(this.theme),\n )}\n />\n );\n\n const rootProps = {\n className: cx(\n styles.useRoot(),\n Root === 'button' && resetButton(),\n use === 'default' && styles.useDefault(this.theme),\n use === 'success' && styles.useSuccess(this.theme),\n use === 'danger' && styles.useDanger(this.theme),\n use === 'grayed' && styles.useGrayed(this.theme),\n !!_button && styles.button(this.theme),\n !!_buttonOpened && styles.buttonOpened(this.theme),\n this.getLinkClassName(isFocused, Boolean(nonInteractive), _isTheme2022),\n ),\n onClick: this.handleClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n tabIndex: this.getTabIndex({ nonInteractive, tabIndex }),\n ...(Root === LINK_DEFAULT_ELEMENT ? linkOnlyProps : {}),\n ...(Root === 'button' ? buttonOnlyProps : {}),\n };\n\n let child = this.props.children;\n if (_isTheme2022) {\n // lineTextWrapper нужен для реализации transition у подчеркивания\n child = (\n <span\n className={cx(globalClasses.textWrapper, styles.lineTextWrapper(this.theme), {\n [styles.lineTextWrapperFocused(this.theme)]: isFocused,\n })}\n >\n <span\n className={cx(globalClasses.text, {\n [styles.lineText(this.theme)]: !isIE11,\n [styles.lineTextIE11(this.theme)]: isIE11,\n })}\n >\n {this.props.children}\n </span>\n </span>\n );\n }\n\n return (\n <Root data-tid={LinkDataTids.root} {...rest} {...rootProps} {...getVisualStateDataAttributes({ disabled })}>\n {leftIconElement}\n {outlineNode}\n {child}\n {rightIconElement}\n {arrow}\n </Root>\n );\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n\n private handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\n const { onClick, disabled, loading, href } = this.props as LinkProps<'a'>;\n // we have to check for 'to' prop in case Root is react-router link\n const to = Object.prototype.hasOwnProperty.call(this.props, 'to');\n const destination = href || to;\n\n if (!destination) {\n event.preventDefault();\n }\n if (onClick && !disabled && !loading) {\n onClick(event);\n }\n };\n\n private getLinkClassName(focused: boolean, disabled: boolean, _isTheme2022: boolean): string {\n const { use } = this.getProps();\n const isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;\n const isFocused = focused && !disabled;\n\n return !isBorderBottom\n ? cx(\n styles.root(this.theme),\n isFocused && styles.focus(this.theme),\n disabled && styles.disabled(this.theme),\n use === 'grayed' && focused && styles.useGrayedFocus(this.theme),\n )\n : cx(\n styles.lineRoot(),\n disabled && styles.disabled(this.theme),\n disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme),\n isFocused && use === 'default' && styles.lineFocus(this.theme),\n isFocused && use === 'success' && styles.lineFocusSuccess(this.theme),\n isFocused && use === 'danger' && styles.lineFocusDanger(this.theme),\n isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme),\n isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme),\n );\n }\n}\n"]}