@skbkontur/react-ui 0.0.0-a8f1c3e7a1 → 0.0.0-aa4659ca48

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 (1206) hide show
  1. package/CHANGELOG.md +217 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +17 -26
  4. package/cjs/components/Autocomplete/Autocomplete.js +61 -56
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/ArrowLeftIcon.d.ts +1 -1
  7. package/cjs/components/Button/ArrowRightIcon.d.ts +1 -1
  8. package/cjs/components/Button/Button.d.ts +27 -14
  9. package/cjs/components/Button/Button.js +44 -20
  10. package/cjs/components/Button/Button.js.map +1 -1
  11. package/cjs/components/Button/Button.mixins.d.ts +0 -1
  12. package/cjs/components/Button/Button.mixins.js +2 -9
  13. package/cjs/components/Button/Button.mixins.js.map +1 -1
  14. package/cjs/components/Button/Button.styles.d.ts +3 -3
  15. package/cjs/components/Button/Button.styles.js +48 -58
  16. package/cjs/components/Button/Button.styles.js.map +1 -1
  17. package/cjs/components/Button/ButtonArrow.js +13 -14
  18. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  19. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  20. package/cjs/components/Calendar/Calendar.js +1 -0
  21. package/cjs/components/Calendar/Calendar.js.map +1 -1
  22. package/cjs/components/Center/Center.d.ts +2 -0
  23. package/cjs/components/Center/Center.js +1 -0
  24. package/cjs/components/Center/Center.js.map +1 -1
  25. package/cjs/components/Checkbox/Checkbox.d.ts +7 -16
  26. package/cjs/components/Checkbox/Checkbox.js +24 -54
  27. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  28. package/cjs/components/Checkbox/Checkbox.styles.d.ts +0 -3
  29. package/cjs/components/Checkbox/Checkbox.styles.js +16 -43
  30. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  31. package/cjs/components/Checkbox/CheckedIcon.d.ts +1 -1
  32. package/cjs/components/Checkbox/IndeterminateIcon.d.ts +1 -1
  33. package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
  34. package/cjs/components/ComboBox/ComboBox.js +26 -1
  35. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  36. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +15 -45
  37. package/cjs/components/CurrencyInput/CurrencyInput.js +17 -55
  38. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  39. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
  40. package/cjs/components/CurrencyInput/CursorHelper.js +5 -2
  41. package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
  42. package/cjs/components/CurrencyInput/constants.js +1 -2
  43. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  44. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  45. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  46. package/cjs/components/DateInput/CalendarIcon.d.ts +1 -1
  47. package/cjs/components/DateInput/DateInput.d.ts +5 -2
  48. package/cjs/components/DateInput/DateInput.js +7 -25
  49. package/cjs/components/DateInput/DateInput.js.map +1 -1
  50. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  51. package/cjs/components/DateInput/helpers/InternalDateMediator.js +1 -10
  52. package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  53. package/cjs/components/DatePicker/DatePicker.d.ts +8 -35
  54. package/cjs/components/DatePicker/DatePicker.js +6 -60
  55. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  56. package/cjs/components/DateRangePicker/DateRangePicker.d.ts +34 -28
  57. package/cjs/components/DateRangePicker/DateRangePicker.js +24 -1
  58. package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  59. package/cjs/components/DateRangePicker/DateRangePickerInput.js +2 -2
  60. package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
  61. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  62. package/cjs/components/Dropdown/Dropdown.js +2 -82
  63. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  64. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  65. package/cjs/components/DropdownMenu/DropdownMenu.js +3 -1
  66. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  67. package/cjs/components/FileUploader/FileUploader.js +1 -0
  68. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  69. package/cjs/components/FileUploader/UploadIcon.d.ts +1 -1
  70. package/cjs/components/FxInput/FxInput.d.ts +25 -21
  71. package/cjs/components/FxInput/FxInput.js +129 -68
  72. package/cjs/components/FxInput/FxInput.js.map +1 -1
  73. package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
  74. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  75. package/cjs/components/FxInput/MathFunctionIcon.d.ts +1 -1
  76. package/cjs/components/FxInput/UndoIcon.d.ts +1 -1
  77. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  78. package/cjs/components/Gapped/Gapped.js +1 -25
  79. package/cjs/components/Gapped/Gapped.js.map +1 -1
  80. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  81. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  82. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  83. package/cjs/components/GlobalLoader/useParams.d.ts +2 -2
  84. package/cjs/components/Group/Group.d.ts +4 -4
  85. package/cjs/components/Group/Group.js +80 -41
  86. package/cjs/components/Group/Group.js.map +1 -1
  87. package/cjs/components/Group/Group.styles.d.ts +1 -1
  88. package/cjs/components/Group/Group.styles.js +7 -7
  89. package/cjs/components/Group/Group.styles.js.map +1 -1
  90. package/cjs/components/Hint/Hint.d.ts +2 -0
  91. package/cjs/components/Hint/Hint.js +1 -0
  92. package/cjs/components/Hint/Hint.js.map +1 -1
  93. package/cjs/components/Input/Input.d.ts +33 -66
  94. package/cjs/components/Input/Input.js +31 -181
  95. package/cjs/components/Input/Input.js.map +1 -1
  96. package/cjs/components/Input/Input.styles.d.ts +0 -7
  97. package/cjs/components/Input/Input.styles.js +14 -76
  98. package/cjs/components/Input/Input.styles.js.map +1 -1
  99. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -0
  100. package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
  101. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  102. package/cjs/components/Kebab/Kebab.d.ts +4 -2
  103. package/cjs/components/Kebab/Kebab.js +9 -29
  104. package/cjs/components/Kebab/Kebab.js.map +1 -1
  105. package/cjs/components/Kebab/KebabIcon.d.ts +1 -1
  106. package/cjs/components/Link/Link.d.ts +12 -10
  107. package/cjs/components/Link/Link.js +11 -2
  108. package/cjs/components/Link/Link.js.map +1 -1
  109. package/cjs/components/Loader/Loader.d.ts +7 -36
  110. package/cjs/components/Loader/Loader.js +9 -59
  111. package/cjs/components/Loader/Loader.js.map +1 -1
  112. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  113. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
  114. package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  115. package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
  116. package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  117. package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
  118. package/cjs/components/MaskedInput/MaskedInput.js +44 -9
  119. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  120. package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -1
  121. package/cjs/components/MenuFooter/MenuFooter.js +0 -1
  122. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  123. package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -1
  124. package/cjs/components/MenuHeader/MenuHeader.js +0 -1
  125. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  126. package/cjs/components/MenuItem/MenuItem.d.ts +2 -17
  127. package/cjs/components/MenuItem/MenuItem.js +5 -34
  128. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  129. package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -2
  130. package/cjs/components/MenuItem/MenuItem.styles.js +12 -17
  131. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  132. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -1
  133. package/cjs/components/MiniModal/MiniModal.styles.js +4 -2
  134. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  135. package/cjs/components/MiniModal/MiniModalBody.js +10 -2
  136. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  137. package/cjs/components/Modal/Modal.d.ts +1 -1
  138. package/cjs/components/Modal/Modal.js +2 -18
  139. package/cjs/components/Modal/Modal.js.map +1 -1
  140. package/cjs/components/Modal/Modal.styles.d.ts +8 -21
  141. package/cjs/components/Modal/Modal.styles.js +82 -168
  142. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  143. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  144. package/cjs/components/Modal/ModalBody.js +2 -6
  145. package/cjs/components/Modal/ModalBody.js.map +1 -1
  146. package/cjs/components/Modal/ModalClose.js +1 -6
  147. package/cjs/components/Modal/ModalClose.js.map +1 -1
  148. package/cjs/components/Modal/ModalFooter.js +2 -5
  149. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  150. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  151. package/cjs/components/Modal/ModalHeader.js +9 -7
  152. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  153. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  154. package/cjs/components/Paging/DotsIcon.js +13 -0
  155. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  156. package/cjs/components/Paging/ForwardIcon.d.ts +4 -1
  157. package/cjs/components/Paging/ForwardIcon.js +13 -1
  158. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  159. package/cjs/components/Paging/NavigationHelper.js +5 -7
  160. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  161. package/cjs/components/Paging/Paging.d.ts +14 -3
  162. package/cjs/components/Paging/Paging.js +116 -58
  163. package/cjs/components/Paging/Paging.js.map +1 -1
  164. package/cjs/components/Paging/Paging.styles.d.ts +16 -1
  165. package/cjs/components/Paging/Paging.styles.js +123 -28
  166. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  167. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  168. package/cjs/components/Paging/PagingHelper.js +18 -11
  169. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  170. package/cjs/components/PasswordInput/ClosedIcon.d.ts +1 -1
  171. package/cjs/components/PasswordInput/OpenedIcon.d.ts +1 -1
  172. package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -18
  173. package/cjs/components/PasswordInput/PasswordInput.js +22 -46
  174. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  175. package/cjs/components/Radio/Radio.d.ts +4 -1
  176. package/cjs/components/Radio/Radio.js +9 -10
  177. package/cjs/components/Radio/Radio.js.map +1 -1
  178. package/cjs/components/Radio/Radio.styles.d.ts +0 -2
  179. package/cjs/components/Radio/Radio.styles.js +19 -31
  180. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  181. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -1
  182. package/cjs/components/RadioGroup/RadioGroup.js +1 -15
  183. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  184. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
  185. package/cjs/components/RadioGroup/RadioGroup.styles.js +5 -10
  186. package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
  187. package/cjs/components/ResponsiveLayout/decorator.d.ts +4 -2
  188. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +3 -14
  189. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
  190. package/cjs/components/ScrollContainer/ScrollContainer.js +3 -19
  191. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  192. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  193. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +10 -20
  194. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  195. package/cjs/components/Select/ArrowDownIcon.d.ts +1 -1
  196. package/cjs/components/Select/Select.d.ts +4 -1
  197. package/cjs/components/Select/Select.js +10 -6
  198. package/cjs/components/Select/Select.js.map +1 -1
  199. package/cjs/components/SidePage/SidePage.js +5 -12
  200. package/cjs/components/SidePage/SidePage.js.map +1 -1
  201. package/cjs/components/SidePage/SidePage.styles.d.ts +2 -7
  202. package/cjs/components/SidePage/SidePage.styles.js +41 -74
  203. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  204. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  205. package/cjs/components/SidePage/SidePageBody.js +1 -0
  206. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  207. package/cjs/components/SidePage/SidePageCloseButton.js +3 -7
  208. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  209. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  210. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  211. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  212. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  213. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  214. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  215. package/cjs/components/SidePage/SidePageHeader.d.ts +10 -7
  216. package/cjs/components/SidePage/SidePageHeader.js +31 -51
  217. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  218. package/cjs/components/SingleToast/SingleToast.d.ts +17 -4
  219. package/cjs/components/SingleToast/SingleToast.js +28 -5
  220. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  221. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  222. package/cjs/components/Spinner/Spinner.js +2 -33
  223. package/cjs/components/Spinner/Spinner.js.map +1 -1
  224. package/cjs/components/Spinner/Spinner.styles.js +10 -15
  225. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  226. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  227. package/cjs/components/Sticky/Sticky.js +4 -30
  228. package/cjs/components/Sticky/Sticky.js.map +1 -1
  229. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  230. package/cjs/components/Switcher/Switcher.js +8 -26
  231. package/cjs/components/Switcher/Switcher.js.map +1 -1
  232. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -1
  233. package/cjs/components/Switcher/Switcher.styles.js +14 -17
  234. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  235. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  236. package/cjs/components/Tabs/Indicator.js +1 -0
  237. package/cjs/components/Tabs/Indicator.js.map +1 -1
  238. package/cjs/components/Tabs/Tab.d.ts +2 -0
  239. package/cjs/components/Tabs/Tab.js +1 -0
  240. package/cjs/components/Tabs/Tab.js.map +1 -1
  241. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  242. package/cjs/components/Tabs/Tabs.js +1 -0
  243. package/cjs/components/Tabs/Tabs.js.map +1 -1
  244. package/cjs/components/Textarea/Textarea.d.ts +10 -47
  245. package/cjs/components/Textarea/Textarea.js +28 -66
  246. package/cjs/components/Textarea/Textarea.js.map +1 -1
  247. package/cjs/components/Textarea/Textarea.styles.js +3 -2
  248. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  249. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  250. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  251. package/cjs/components/Toast/Toast.d.ts +30 -16
  252. package/cjs/components/Toast/Toast.js +57 -52
  253. package/cjs/components/Toast/Toast.js.map +1 -1
  254. package/cjs/components/Toast/ToastView.d.ts +7 -15
  255. package/cjs/components/Toast/ToastView.js +19 -22
  256. package/cjs/components/Toast/ToastView.js.map +1 -1
  257. package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
  258. package/cjs/components/Toast/ToastView.styles.js +43 -9
  259. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  260. package/cjs/components/Toggle/Toggle.d.ts +4 -11
  261. package/cjs/components/Toggle/Toggle.js +4 -14
  262. package/cjs/components/Toggle/Toggle.js.map +1 -1
  263. package/cjs/components/Token/Token.d.ts +2 -0
  264. package/cjs/components/Token/Token.js +1 -0
  265. package/cjs/components/Token/Token.js.map +1 -1
  266. package/cjs/components/TokenInput/TokenInput.d.ts +9 -3
  267. package/cjs/components/TokenInput/TokenInput.js +74 -58
  268. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  269. package/cjs/components/Tooltip/Tooltip.d.ts +14 -10
  270. package/cjs/components/Tooltip/Tooltip.js +96 -19
  271. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  272. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  273. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  274. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  275. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  276. package/cjs/components/TooltipMenu/TooltipMenu.js +4 -2
  277. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  278. package/cjs/components/__stories__/Form.js +95 -0
  279. package/cjs/components/__stories__/Form.js.map +1 -0
  280. package/cjs/index.d.ts +2 -0
  281. package/cjs/index.js +1 -0
  282. package/cjs/index.js.map +1 -1
  283. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  284. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
  285. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  286. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  287. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
  288. package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
  289. package/cjs/internal/ClearCrossIcon/CrossIcon.d.ts +1 -1
  290. package/cjs/internal/CloseButtonIcon/CrossIcon.d.ts +1 -1
  291. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  292. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  293. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  294. package/cjs/internal/CommonWrapper/types.d.ts +1 -1
  295. package/cjs/internal/CommonWrapper/types.js.map +1 -1
  296. package/cjs/internal/ComponentTable.js +2 -3
  297. package/cjs/internal/ComponentTable.js.map +1 -1
  298. package/cjs/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
  299. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +1 -1
  300. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  301. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  302. package/cjs/internal/CustomComboBox/ComboBoxView.js +48 -6
  303. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  304. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
  305. package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -10
  306. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  307. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
  308. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +18 -24
  309. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  310. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  311. package/cjs/internal/DateSelect/DateSelect.js +2 -19
  312. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  313. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
  314. package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
  315. package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
  316. package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
  317. package/cjs/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
  318. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  319. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  320. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  321. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  322. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  323. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  324. package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -13
  325. package/cjs/internal/InputLikeText/InputLikeText.js +17 -111
  326. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  327. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  328. package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
  329. package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
  330. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  331. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
  332. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  333. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  334. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
  335. package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
  336. package/cjs/internal/Menu/Menu.d.ts +4 -3
  337. package/cjs/internal/Menu/Menu.js +4 -10
  338. package/cjs/internal/Menu/Menu.js.map +1 -1
  339. package/cjs/internal/Menu/Menu.styles.d.ts +0 -2
  340. package/cjs/internal/Menu/Menu.styles.js +9 -23
  341. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  342. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  343. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  344. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  345. package/cjs/internal/Popup/Popup.d.ts +41 -61
  346. package/cjs/internal/Popup/Popup.js +58 -118
  347. package/cjs/internal/Popup/Popup.js.map +1 -1
  348. package/cjs/internal/Popup/PopupPin.d.ts +16 -42
  349. package/cjs/internal/Popup/PopupPin.js +130 -224
  350. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  351. package/cjs/internal/Popup/PopupPin.styles.d.ts +5 -1
  352. package/cjs/internal/Popup/PopupPin.styles.js +25 -3
  353. package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
  354. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  355. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  356. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  357. package/cjs/internal/PopupMenu/validatePositions.js +5 -2
  358. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  359. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  360. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  361. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  362. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  363. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  364. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  365. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
  366. package/cjs/internal/ResizeDetector/ResizeDetector.js +8 -1
  367. package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  368. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
  369. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js +7 -1
  370. package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
  371. package/cjs/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  372. package/cjs/internal/SpinnerIcon/SpinnerIcon.js +1 -55
  373. package/cjs/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
  374. package/cjs/internal/ThemePlayground/HintPlayground.js +7 -4
  375. package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
  376. package/cjs/internal/ThemePlayground/Playground.js +5 -1
  377. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  378. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  379. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  380. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  381. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  382. package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
  383. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  384. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  385. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  386. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  387. package/cjs/internal/icons2022/LoadingIcon.d.ts +1 -1
  388. package/cjs/internal/icons2022/LoadingIcon.js +0 -1
  389. package/cjs/internal/icons2022/LoadingIcon.js.map +1 -1
  390. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  391. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  392. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  393. package/cjs/internal/icons2022/iconSizer.d.ts +1 -1
  394. package/cjs/internal/themes/BasicTheme.d.ts +86 -57
  395. package/cjs/internal/themes/BasicTheme.js +144 -67
  396. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  397. package/cjs/internal/themes/DarkTheme6_0.d.ts +1 -0
  398. package/cjs/internal/themes/DarkTheme6_0.js +575 -0
  399. package/cjs/internal/themes/DarkTheme6_0.js.map +1 -0
  400. package/cjs/internal/themes/LightTheme6_0.d.ts +1 -0
  401. package/cjs/internal/themes/{LightTheme5_0.js → LightTheme6_0.js} +4 -4
  402. package/cjs/internal/themes/{LightTheme5_0.js.map → LightTheme6_0.js.map} +1 -1
  403. package/cjs/lib/blink.d.ts +15 -0
  404. package/cjs/lib/blink.js +65 -0
  405. package/cjs/lib/blink.js.map +1 -0
  406. package/cjs/lib/client.d.ts +0 -2
  407. package/cjs/lib/client.js +1 -3
  408. package/cjs/lib/client.js.map +1 -1
  409. package/cjs/lib/createPropsGetter.d.ts +1 -1
  410. package/cjs/lib/currentEnvironment.js +0 -1
  411. package/cjs/lib/currentEnvironment.js.map +1 -1
  412. package/cjs/lib/date/InternalDate.js +5 -4
  413. package/cjs/lib/date/InternalDate.js.map +1 -1
  414. package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
  415. package/cjs/lib/date/InternalDateGetter.js +2 -2
  416. package/cjs/lib/date/InternalDateGetter.js.map +1 -1
  417. package/cjs/lib/delay.mts +3 -0
  418. package/cjs/lib/dom/getDOMRect.d.ts +1 -1
  419. package/cjs/lib/dom/getScrollWidth.js +4 -2
  420. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  421. package/cjs/lib/events/MouseDrag.js +1 -7
  422. package/cjs/lib/events/MouseDrag.js.map +1 -1
  423. package/cjs/lib/events/keyboard/identifiers.js +2 -10
  424. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  425. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
  426. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
  427. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +1 -13
  428. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  429. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  430. package/cjs/lib/forwardRefAndName.js +0 -1
  431. package/cjs/lib/forwardRefAndName.js.map +1 -1
  432. package/cjs/lib/listenFocusOutside.js +3 -1
  433. package/cjs/lib/listenFocusOutside.js.map +1 -1
  434. package/cjs/lib/locale/decorators.d.ts +3 -2
  435. package/cjs/lib/needsPolyfillPlaceholder.js +1 -3
  436. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  437. package/cjs/lib/rootNode/getRootNode.js +2 -2
  438. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  439. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +3 -2
  440. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  441. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  442. package/cjs/lib/size/SizeControlContext.d.ts +6 -0
  443. package/cjs/lib/size/SizeControlContext.js +16 -0
  444. package/cjs/lib/size/SizeControlContext.js.map +1 -0
  445. package/cjs/lib/size/SizeDecorator.d.ts +33 -0
  446. package/cjs/lib/size/SizeDecorator.js +41 -0
  447. package/cjs/lib/size/SizeDecorator.js.map +1 -0
  448. package/cjs/lib/size/constants.d.ts +2 -0
  449. package/cjs/lib/size/constants.js +3 -0
  450. package/cjs/lib/size/constants.js.map +1 -0
  451. package/cjs/lib/size/index.d.ts +1 -0
  452. package/cjs/lib/size/index.js +1 -0
  453. package/cjs/lib/size/index.js.map +1 -0
  454. package/cjs/lib/size/useSizeControl.d.ts +2 -0
  455. package/cjs/lib/size/useSizeControl.js +10 -0
  456. package/cjs/lib/size/useSizeControl.js.map +1 -0
  457. package/cjs/lib/styles/Mixins.js +1 -3
  458. package/cjs/lib/styles/Mixins.js.map +1 -1
  459. package/cjs/lib/theming/Emotion.d.ts +7 -7
  460. package/cjs/lib/theming/ThemeHelpers.js +1 -1
  461. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  462. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  463. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  464. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -3
  465. package/cjs/lib/theming/themes/DarkTheme.js +3 -7
  466. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  467. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -3
  468. package/cjs/lib/theming/themes/LightTheme.js +3 -7
  469. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  470. package/cjs/lib/typeGuards.js +1 -1
  471. package/cjs/lib/typeGuards.js.map +1 -1
  472. package/cjs/lib/utils.d.ts +20 -5
  473. package/cjs/lib/utils.js +39 -16
  474. package/cjs/lib/utils.js.map +1 -1
  475. package/cjs/lib/withClassWrapper.js +5 -2
  476. package/cjs/lib/withClassWrapper.js.map +1 -1
  477. package/cjs/test-setup.d.ts +1 -0
  478. package/cjs/vitest.config.d.ts +2 -0
  479. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -47
  480. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  481. package/components/Autocomplete/Autocomplete.d.ts +17 -26
  482. package/components/Button/ArrowLeftIcon.d.ts +1 -1
  483. package/components/Button/ArrowRightIcon.d.ts +1 -1
  484. package/components/Button/Button/Button.js +45 -27
  485. package/components/Button/Button/Button.js.map +1 -1
  486. package/components/Button/Button.d.ts +27 -14
  487. package/components/Button/Button.mixins/Button.mixins.js +1 -4
  488. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  489. package/components/Button/Button.mixins.d.ts +0 -1
  490. package/components/Button/Button.styles/Button.styles.js +29 -29
  491. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  492. package/components/Button/Button.styles.d.ts +3 -3
  493. package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
  494. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  495. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  496. package/components/Calendar/Calendar.d.ts +2 -0
  497. package/components/Center/Center/Center.js.map +1 -1
  498. package/components/Center/Center.d.ts +2 -0
  499. package/components/Checkbox/Checkbox/Checkbox.js +17 -43
  500. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  501. package/components/Checkbox/Checkbox.d.ts +7 -16
  502. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +16 -25
  503. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  504. package/components/Checkbox/Checkbox.styles.d.ts +0 -3
  505. package/components/Checkbox/CheckedIcon.d.ts +1 -1
  506. package/components/Checkbox/IndeterminateIcon.d.ts +1 -1
  507. package/components/ComboBox/ComboBox/ComboBox.js +2 -1
  508. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  509. package/components/ComboBox/ComboBox.d.ts +22 -3
  510. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +20 -61
  511. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  512. package/components/CurrencyInput/CurrencyInput.d.ts +15 -45
  513. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
  514. package/components/CurrencyInput/CursorHelper/CursorHelper.js +3 -1
  515. package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
  516. package/components/CurrencyInput/constants/constants.js +0 -1
  517. package/components/CurrencyInput/constants/constants.js.map +1 -1
  518. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  519. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  520. package/components/DateInput/CalendarIcon.d.ts +1 -1
  521. package/components/DateInput/DateInput/DateInput.js +14 -24
  522. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  523. package/components/DateInput/DateInput.d.ts +5 -2
  524. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
  525. package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
  526. package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
  527. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  528. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  529. package/components/DatePicker/DatePicker.d.ts +8 -35
  530. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +14 -1
  531. package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
  532. package/components/DateRangePicker/DateRangePicker.d.ts +34 -28
  533. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +2 -2
  534. package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
  535. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  536. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  537. package/components/Dropdown/Dropdown.d.ts +2 -47
  538. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +4 -3
  539. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  540. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  541. package/components/FileUploader/FileUploader/FileUploader.js +1 -0
  542. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  543. package/components/FileUploader/UploadIcon.d.ts +1 -1
  544. package/components/FxInput/FxInput/FxInput.js +112 -72
  545. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  546. package/components/FxInput/FxInput.d.ts +25 -21
  547. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
  548. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  549. package/components/FxInput/MathFunctionIcon.d.ts +1 -1
  550. package/components/FxInput/UndoIcon.d.ts +1 -1
  551. package/components/Gapped/Gapped/Gapped.js +1 -16
  552. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  553. package/components/Gapped/Gapped.d.ts +2 -15
  554. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  555. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  556. package/components/GlobalLoader/useParams.d.ts +2 -2
  557. package/components/Group/Group/Group.js +68 -37
  558. package/components/Group/Group/Group.js.map +1 -1
  559. package/components/Group/Group.d.ts +4 -4
  560. package/components/Group/Group.styles/Group.styles.js +5 -5
  561. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  562. package/components/Group/Group.styles.d.ts +1 -1
  563. package/components/Hint/Hint/Hint.js.map +1 -1
  564. package/components/Hint/Hint.d.ts +2 -0
  565. package/components/Input/Input/Input.js +42 -166
  566. package/components/Input/Input/Input.js.map +1 -1
  567. package/components/Input/Input.d.ts +33 -66
  568. package/components/Input/Input.styles/Input.styles.js +15 -37
  569. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  570. package/components/Input/Input.styles.d.ts +0 -7
  571. package/components/Input/InputLayout/InputLayout/InputLayout.js +5 -2
  572. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  573. package/components/Input/InputLayout/InputLayout.d.ts +1 -0
  574. package/components/Kebab/Kebab/Kebab.js +8 -26
  575. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  576. package/components/Kebab/Kebab.d.ts +4 -2
  577. package/components/Kebab/KebabIcon.d.ts +1 -1
  578. package/components/Link/Link/Link.js +5 -2
  579. package/components/Link/Link/Link.js.map +1 -1
  580. package/components/Link/Link.d.ts +12 -10
  581. package/components/Loader/Loader/Loader.js +4 -37
  582. package/components/Loader/Loader/Loader.js.map +1 -1
  583. package/components/Loader/Loader.d.ts +7 -36
  584. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
  585. package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
  586. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
  587. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
  588. package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
  589. package/components/MaskedInput/MaskedInput/MaskedInput.js +29 -7
  590. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  591. package/components/MaskedInput/MaskedInput.d.ts +9 -0
  592. package/components/MenuFooter/MenuFooter/MenuFooter.js +0 -2
  593. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  594. package/components/MenuFooter/MenuFooter.d.ts +1 -1
  595. package/components/MenuHeader/MenuHeader/MenuHeader.js +0 -2
  596. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  597. package/components/MenuHeader/MenuHeader.d.ts +1 -1
  598. package/components/MenuItem/MenuItem/MenuItem.js +3 -17
  599. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  600. package/components/MenuItem/MenuItem.d.ts +2 -17
  601. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +12 -15
  602. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  603. package/components/MenuItem/MenuItem.styles.d.ts +1 -2
  604. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +2 -2
  605. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  606. package/components/MiniModal/MiniModal.styles.d.ts +1 -1
  607. package/components/MiniModal/MiniModalBody/MiniModalBody.js +11 -5
  608. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  609. package/components/Modal/Modal/Modal.js +8 -16
  610. package/components/Modal/Modal/Modal.js.map +1 -1
  611. package/components/Modal/Modal.d.ts +1 -1
  612. package/components/Modal/Modal.styles/Modal.styles.js +55 -95
  613. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  614. package/components/Modal/Modal.styles.d.ts +8 -21
  615. package/components/Modal/ModalBody/ModalBody.js +1 -3
  616. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  617. package/components/Modal/ModalBody.d.ts +2 -0
  618. package/components/Modal/ModalClose/ModalClose.js +1 -3
  619. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  620. package/components/Modal/ModalFooter/ModalFooter.js +2 -4
  621. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  622. package/components/Modal/ModalHeader/ModalHeader.js +4 -4
  623. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  624. package/components/Modal/ModalHeader.d.ts +5 -0
  625. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  626. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  627. package/components/Paging/DotsIcon/package.json +6 -0
  628. package/components/Paging/DotsIcon.d.ts +3 -0
  629. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  630. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  631. package/components/Paging/ForwardIcon.d.ts +4 -1
  632. package/components/Paging/NavigationHelper/NavigationHelper.js +4 -7
  633. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  634. package/components/Paging/Paging/Paging.js +89 -57
  635. package/components/Paging/Paging/Paging.js.map +1 -1
  636. package/components/Paging/Paging.d.ts +14 -3
  637. package/components/Paging/Paging.styles/Paging.styles.js +61 -16
  638. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  639. package/components/Paging/Paging.styles.d.ts +16 -1
  640. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  641. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  642. package/components/Paging/PagingHelper.d.ts +1 -1
  643. package/components/PasswordInput/ClosedIcon.d.ts +1 -1
  644. package/components/PasswordInput/OpenedIcon.d.ts +1 -1
  645. package/components/PasswordInput/PasswordInput/PasswordInput.js +17 -37
  646. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  647. package/components/PasswordInput/PasswordInput.d.ts +10 -18
  648. package/components/Radio/Radio/Radio.js +10 -11
  649. package/components/Radio/Radio/Radio.js.map +1 -1
  650. package/components/Radio/Radio.d.ts +4 -1
  651. package/components/Radio/Radio.styles/Radio.styles.js +19 -25
  652. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  653. package/components/Radio/Radio.styles.d.ts +0 -2
  654. package/components/RadioGroup/RadioGroup/RadioGroup.js +18 -23
  655. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  656. package/components/RadioGroup/RadioGroup.d.ts +2 -1
  657. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +5 -8
  658. package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
  659. package/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
  660. package/components/ResponsiveLayout/decorator.d.ts +4 -2
  661. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +2 -15
  662. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  663. package/components/ScrollContainer/ScrollContainer.d.ts +3 -14
  664. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
  665. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +10 -13
  666. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  667. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
  668. package/components/Select/ArrowDownIcon.d.ts +1 -1
  669. package/components/Select/Select/Select.js +14 -13
  670. package/components/Select/Select/Select.js.map +1 -1
  671. package/components/Select/Select.d.ts +4 -1
  672. package/components/SidePage/SidePage/SidePage.js +6 -11
  673. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  674. package/components/SidePage/SidePage.styles/SidePage.styles.js +27 -43
  675. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  676. package/components/SidePage/SidePage.styles.d.ts +2 -7
  677. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  678. package/components/SidePage/SidePageBody.d.ts +2 -0
  679. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +1 -3
  680. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  681. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  682. package/components/SidePage/SidePageContainer.d.ts +2 -0
  683. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  684. package/components/SidePage/SidePageFooter.d.ts +2 -0
  685. package/components/SidePage/SidePageHeader/SidePageHeader.js +32 -65
  686. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  687. package/components/SidePage/SidePageHeader.d.ts +10 -7
  688. package/components/SingleToast/SingleToast/SingleToast.js +23 -14
  689. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  690. package/components/SingleToast/SingleToast.d.ts +17 -4
  691. package/components/Spinner/Spinner/Spinner.js +1 -19
  692. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  693. package/components/Spinner/Spinner.d.ts +2 -18
  694. package/components/Spinner/Spinner.styles/Spinner.styles.js +2 -3
  695. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  696. package/components/Sticky/Sticky/Sticky.js +6 -21
  697. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  698. package/components/Sticky/Sticky.d.ts +2 -13
  699. package/components/Switcher/Switcher/Switcher.js +14 -22
  700. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  701. package/components/Switcher/Switcher.d.ts +6 -21
  702. package/components/Switcher/Switcher.styles/Switcher.styles.js +9 -11
  703. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  704. package/components/Switcher/Switcher.styles.d.ts +1 -1
  705. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  706. package/components/Tabs/Indicator.d.ts +2 -0
  707. package/components/Tabs/Tab/Tab.js.map +1 -1
  708. package/components/Tabs/Tab.d.ts +2 -0
  709. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  710. package/components/Tabs/Tabs.d.ts +2 -0
  711. package/components/Textarea/Textarea/Textarea.js +26 -60
  712. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  713. package/components/Textarea/Textarea.d.ts +10 -47
  714. package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
  715. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  716. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  717. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  718. package/components/Toast/Toast/Toast.js +46 -41
  719. package/components/Toast/Toast/Toast.js.map +1 -1
  720. package/components/Toast/Toast.d.ts +30 -16
  721. package/components/Toast/ToastView/ToastView.js +20 -22
  722. package/components/Toast/ToastView/ToastView.js.map +1 -1
  723. package/components/Toast/ToastView.d.ts +7 -15
  724. package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
  725. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  726. package/components/Toast/ToastView.styles.d.ts +4 -0
  727. package/components/Toggle/Toggle/Toggle.js +11 -20
  728. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  729. package/components/Toggle/Toggle.d.ts +4 -11
  730. package/components/Token/Token/Token.js.map +1 -1
  731. package/components/Token/Token.d.ts +2 -0
  732. package/components/TokenInput/TokenInput/TokenInput.js +106 -88
  733. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  734. package/components/TokenInput/TokenInput.d.ts +9 -3
  735. package/components/Tooltip/Tooltip/Tooltip.js +96 -48
  736. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  737. package/components/Tooltip/Tooltip.d.ts +14 -10
  738. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  739. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  740. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  741. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +4 -3
  742. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  743. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  744. package/components/__stories__/Form/Form.js +98 -0
  745. package/components/__stories__/Form/Form.js.map +1 -0
  746. package/components/__stories__/Form/package.json +6 -0
  747. package/index.d.ts +2 -0
  748. package/index.js +2 -0
  749. package/index.js.map +1 -1
  750. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
  751. package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  752. package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
  753. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
  754. package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
  755. package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
  756. package/internal/ClearCrossIcon/CrossIcon.d.ts +1 -1
  757. package/internal/CloseButtonIcon/CrossIcon.d.ts +1 -1
  758. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  759. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  760. package/internal/CommonWrapper/types/types.js.map +1 -1
  761. package/internal/CommonWrapper/types.d.ts +1 -1
  762. package/internal/ComponentTable/ComponentTable.js +0 -2
  763. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  764. package/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
  765. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +0 -1
  766. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  767. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +69 -40
  768. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  769. package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
  770. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +18 -19
  771. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  772. package/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
  773. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +18 -23
  774. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  775. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
  776. package/internal/DateSelect/DateSelect/DateSelect.js +2 -11
  777. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  778. package/internal/DateSelect/DateSelect.d.ts +0 -10
  779. package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
  780. package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
  781. package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
  782. package/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
  783. package/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
  784. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  785. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  786. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  787. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
  788. package/internal/InputLikeText/InputLikeText/InputLikeText.js +22 -115
  789. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  790. package/internal/InputLikeText/InputLikeText.d.ts +4 -13
  791. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
  792. package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
  793. package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
  794. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
  795. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
  796. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
  797. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
  798. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
  799. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
  800. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
  801. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  802. package/internal/Menu/Menu/Menu.js +2 -5
  803. package/internal/Menu/Menu/Menu.js.map +1 -1
  804. package/internal/Menu/Menu.d.ts +4 -3
  805. package/internal/Menu/Menu.styles/Menu.styles.js +9 -15
  806. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  807. package/internal/Menu/Menu.styles.d.ts +0 -2
  808. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  809. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  810. package/internal/Popup/Popup/Popup.js +29 -94
  811. package/internal/Popup/Popup/Popup.js.map +1 -1
  812. package/internal/Popup/Popup.d.ts +41 -61
  813. package/internal/Popup/PopupPin/PopupPin.js +115 -172
  814. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  815. package/internal/Popup/PopupPin.d.ts +16 -42
  816. package/internal/Popup/PopupPin.styles/PopupPin.styles.js +15 -3
  817. package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
  818. package/internal/Popup/PopupPin.styles.d.ts +5 -1
  819. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  820. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  821. package/internal/PopupMenu/validatePositions/validatePositions.js +3 -1
  822. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  823. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  824. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  825. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  826. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  827. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  828. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  829. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js +1 -1
  830. package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
  831. package/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
  832. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js +4 -1
  833. package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
  834. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
  835. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js +0 -41
  836. package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js.map +1 -1
  837. package/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
  838. package/internal/ThemePlayground/HintPlayground/HintPlayground.js +10 -8
  839. package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
  840. package/internal/ThemePlayground/Playground/Playground.js +8 -5
  841. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  842. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  843. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  844. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  845. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  846. package/internal/ThemePlayground/helpers.d.ts +1 -1
  847. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  848. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  849. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  850. package/internal/ZIndex/ZIndex.d.ts +3 -3
  851. package/internal/icons2022/LoadingIcon/LoadingIcon.js +0 -1
  852. package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
  853. package/internal/icons2022/LoadingIcon.d.ts +1 -1
  854. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  855. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  856. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  857. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  858. package/internal/icons2022/iconSizer.d.ts +1 -1
  859. package/internal/themes/BasicTheme/BasicTheme.js +176 -103
  860. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  861. package/internal/themes/BasicTheme.d.ts +86 -57
  862. package/internal/themes/DarkTheme6_0/DarkTheme6_0.js +409 -0
  863. package/internal/themes/DarkTheme6_0/DarkTheme6_0.js.map +1 -0
  864. package/internal/themes/DarkTheme6_0/package.json +6 -0
  865. package/internal/themes/DarkTheme6_0.d.ts +1 -0
  866. package/internal/themes/{LightTheme5_0/LightTheme5_0.js → LightTheme6_0/LightTheme6_0.js} +5 -5
  867. package/internal/themes/{LightTheme5_0/LightTheme5_0.js.map → LightTheme6_0/LightTheme6_0.js.map} +1 -1
  868. package/internal/themes/LightTheme6_0/package.json +6 -0
  869. package/internal/themes/LightTheme6_0.d.ts +1 -0
  870. package/lib/blink/blink.js +63 -0
  871. package/lib/blink/blink.js.map +1 -0
  872. package/lib/blink/package.json +6 -0
  873. package/lib/blink.d.ts +15 -0
  874. package/lib/client/client.js +0 -2
  875. package/lib/client/client.js.map +1 -1
  876. package/lib/client.d.ts +0 -2
  877. package/lib/createPropsGetter.d.ts +1 -1
  878. package/lib/currentEnvironment/currentEnvironment.js +2 -3
  879. package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
  880. package/lib/date/InternalDate/InternalDate.js +5 -4
  881. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  882. package/lib/date/InternalDateGetter/InternalDateGetter.js +2 -2
  883. package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
  884. package/lib/date/InternalDateGetter.d.ts +1 -1
  885. package/lib/delay.d.mts +1 -0
  886. package/lib/delay.mts +3 -0
  887. package/lib/dom/getDOMRect.d.ts +1 -1
  888. package/lib/dom/getScrollWidth/getScrollWidth.js +3 -1
  889. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  890. package/lib/events/MouseDrag/MouseDrag.js +0 -7
  891. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  892. package/lib/events/keyboard/identifiers/identifiers.js +1 -10
  893. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  894. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
  895. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +1 -7
  896. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  897. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
  898. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  899. package/lib/forwardRefAndName.d.ts +1 -1
  900. package/lib/listenFocusOutside/listenFocusOutside.js +3 -1
  901. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  902. package/lib/locale/decorators.d.ts +3 -2
  903. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +1 -2
  904. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  905. package/lib/rootNode/getRootNode/getRootNode.js +1 -1
  906. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  907. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  908. package/lib/rootNode/rootNodeDecorator.d.ts +3 -2
  909. package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
  910. package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
  911. package/lib/size/SizeControlContext/package.json +6 -0
  912. package/lib/size/SizeControlContext.d.ts +6 -0
  913. package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
  914. package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
  915. package/lib/size/SizeDecorator/package.json +6 -0
  916. package/lib/size/SizeDecorator.d.ts +33 -0
  917. package/lib/size/constants/constants.js +1 -0
  918. package/lib/size/constants/constants.js.map +1 -0
  919. package/lib/size/constants/package.json +6 -0
  920. package/lib/size/constants.d.ts +2 -0
  921. package/lib/size/index/index.js +1 -0
  922. package/lib/size/index/index.js.map +1 -0
  923. package/{internal/InternalMaskedInput → lib/size}/index/package.json +1 -1
  924. package/lib/size/index.d.ts +1 -0
  925. package/{internal/InternalMaskedInput → lib/size}/package.json +1 -1
  926. package/lib/size/useSizeControl/package.json +6 -0
  927. package/lib/size/useSizeControl/useSizeControl.js +7 -0
  928. package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
  929. package/lib/size/useSizeControl.d.ts +2 -0
  930. package/lib/styles/Mixins/Mixins.js +1 -1
  931. package/lib/styles/Mixins/Mixins.js.map +1 -1
  932. package/lib/theming/Emotion.d.ts +7 -7
  933. package/lib/theming/ThemeHelpers/ThemeHelpers.js +1 -1
  934. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  935. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  936. package/lib/theming/ThemeVersions.d.ts +1 -1
  937. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -7
  938. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  939. package/lib/theming/themes/DarkTheme.d.ts +1 -3
  940. package/lib/theming/themes/LightTheme/LightTheme.js +3 -7
  941. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  942. package/lib/theming/themes/LightTheme.d.ts +1 -3
  943. package/lib/typeGuards/typeGuards.js +1 -1
  944. package/lib/typeGuards/typeGuards.js.map +1 -1
  945. package/lib/utils/utils.js +32 -14
  946. package/lib/utils/utils.js.map +1 -1
  947. package/lib/utils.d.ts +20 -5
  948. package/lib/withClassWrapper/withClassWrapper.js +3 -1
  949. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  950. package/package.json +23 -39
  951. package/test-setup.d.ts +1 -0
  952. package/vitest.config.d.ts +2 -0
  953. package/cjs/components/Autocomplete/Autocomplete.md +0 -113
  954. package/cjs/components/Button/Button.md +0 -261
  955. package/cjs/components/Calendar/Calendar.md +0 -276
  956. package/cjs/components/Calendar/CalendarDay.md +0 -70
  957. package/cjs/components/Center/Center.md +0 -26
  958. package/cjs/components/Checkbox/Checkbox.md +0 -171
  959. package/cjs/components/ComboBox/ComboBox.md +0 -574
  960. package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
  961. package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
  962. package/cjs/components/DateInput/DateInput.md +0 -111
  963. package/cjs/components/DatePicker/DatePicker.md +0 -368
  964. package/cjs/components/Dropdown/Dropdown.md +0 -45
  965. package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
  966. package/cjs/components/FileUploader/FileUploader.md +0 -131
  967. package/cjs/components/FxInput/FxInput.md +0 -31
  968. package/cjs/components/Gapped/Gapped.md +0 -44
  969. package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
  970. package/cjs/components/Group/Group.md +0 -19
  971. package/cjs/components/Hint/Hint.md +0 -86
  972. package/cjs/components/Input/Input.md +0 -86
  973. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
  974. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +0 -46
  975. package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +0 -1
  976. package/cjs/components/Kebab/Kebab.md +0 -306
  977. package/cjs/components/Link/Link.md +0 -182
  978. package/cjs/components/Loader/Loader.md +0 -33
  979. package/cjs/components/MaskedInput/MaskedInput.md +0 -114
  980. package/cjs/components/MenuFooter/MenuFooter.md +0 -27
  981. package/cjs/components/MenuHeader/MenuHeader.md +0 -35
  982. package/cjs/components/MenuItem/MenuItem.md +0 -139
  983. package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
  984. package/cjs/components/MiniModal/MiniModal.md +0 -231
  985. package/cjs/components/Modal/Modal.md +0 -56
  986. package/cjs/components/Paging/Paging.md +0 -57
  987. package/cjs/components/PasswordInput/PasswordInput.md +0 -29
  988. package/cjs/components/Radio/Radio.md +0 -57
  989. package/cjs/components/RadioGroup/RadioGroup.md +0 -44
  990. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  991. package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
  992. package/cjs/components/Select/Select.md +0 -113
  993. package/cjs/components/SidePage/SidePage.md +0 -65
  994. package/cjs/components/SingleToast/SingleToast.md +0 -36
  995. package/cjs/components/Spinner/Spinner.md +0 -36
  996. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  997. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +0 -197
  998. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +0 -1
  999. package/cjs/components/Sticky/Sticky.md +0 -28
  1000. package/cjs/components/Switcher/Switcher.md +0 -111
  1001. package/cjs/components/Tabs/Tab.md +0 -73
  1002. package/cjs/components/Tabs/Tabs.md +0 -54
  1003. package/cjs/components/Textarea/Textarea.md +0 -58
  1004. package/cjs/components/Toast/Toast.md +0 -69
  1005. package/cjs/components/Toast/ToastStatic.d.ts +0 -10
  1006. package/cjs/components/Toast/ToastStatic.js +0 -53
  1007. package/cjs/components/Toast/ToastStatic.js.map +0 -1
  1008. package/cjs/components/Toggle/Toggle.md +0 -110
  1009. package/cjs/components/Token/Token.md +0 -48
  1010. package/cjs/components/TokenInput/TokenInput.md +0 -277
  1011. package/cjs/components/Tooltip/Tooltip.md +0 -322
  1012. package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
  1013. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  1014. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  1015. package/cjs/internal/DataTids/DataTids.js +0 -50
  1016. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  1017. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  1018. package/cjs/internal/DataTids/DataTids.styles.js +0 -42
  1019. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  1020. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  1021. package/cjs/internal/DataTids/componentsDataTids.js +0 -15
  1022. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  1023. package/cjs/internal/InputLikeText/HiddenInput.d.ts +0 -13
  1024. package/cjs/internal/InputLikeText/HiddenInput.js +0 -43
  1025. package/cjs/internal/InputLikeText/HiddenInput.js.map +0 -1
  1026. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
  1027. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +0 -241
  1028. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
  1029. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
  1030. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js +0 -30
  1031. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +0 -1
  1032. package/cjs/internal/InternalMaskedInput/index.d.ts +0 -1
  1033. package/cjs/internal/InternalMaskedInput/index.js +0 -1
  1034. package/cjs/internal/InternalMaskedInput/index.js.map +0 -1
  1035. package/cjs/internal/ThemePlayground/Playground.md +0 -7
  1036. package/cjs/internal/themes/BasicLightTheme.d.ts +0 -5
  1037. package/cjs/internal/themes/BasicLightTheme.js +0 -6
  1038. package/cjs/internal/themes/BasicLightTheme.js.map +0 -1
  1039. package/cjs/internal/themes/DarkTheme5_0.d.ts +0 -1
  1040. package/cjs/internal/themes/DarkTheme5_0.js +0 -570
  1041. package/cjs/internal/themes/DarkTheme5_0.js.map +0 -1
  1042. package/cjs/internal/themes/DarkTheme5_1.d.ts +0 -1
  1043. package/cjs/internal/themes/DarkTheme5_1.js +0 -41
  1044. package/cjs/internal/themes/DarkTheme5_1.js.map +0 -1
  1045. package/cjs/internal/themes/DarkTheme5_2.d.ts +0 -1
  1046. package/cjs/internal/themes/DarkTheme5_2.js +0 -29
  1047. package/cjs/internal/themes/DarkTheme5_2.js.map +0 -1
  1048. package/cjs/internal/themes/LightTheme5_0.d.ts +0 -1
  1049. package/cjs/internal/themes/LightTheme5_1.d.ts +0 -1
  1050. package/cjs/internal/themes/LightTheme5_1.js +0 -41
  1051. package/cjs/internal/themes/LightTheme5_1.js.map +0 -1
  1052. package/cjs/internal/themes/LightTheme5_2.d.ts +0 -1
  1053. package/cjs/internal/themes/LightTheme5_2.js +0 -27
  1054. package/cjs/internal/themes/LightTheme5_2.js.map +0 -1
  1055. package/cjs/lib/SSRSafe.d.ts +0 -2
  1056. package/cjs/lib/SSRSafe.js +0 -5
  1057. package/cjs/lib/SSRSafe.js.map +0 -1
  1058. package/cjs/lib/events/fixClickFocusIE.d.ts +0 -1
  1059. package/cjs/lib/events/fixClickFocusIE.js +0 -20
  1060. package/cjs/lib/events/fixClickFocusIE.js.map +0 -1
  1061. package/cjs/lib/events/stopPropagation.d.ts +0 -1
  1062. package/cjs/lib/events/stopPropagation.js +0 -7
  1063. package/cjs/lib/events/stopPropagation.js.map +0 -1
  1064. package/cjs/lib/events/tabListener.d.ts +0 -1
  1065. package/cjs/lib/events/tabListener.js +0 -2
  1066. package/cjs/lib/events/tabListener.js.map +0 -1
  1067. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  1068. package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
  1069. package/cjs/lib/theming/ThemeContext.md +0 -265
  1070. package/components/Autocomplete/Autocomplete.md +0 -113
  1071. package/components/Button/Button.md +0 -261
  1072. package/components/Calendar/Calendar.md +0 -276
  1073. package/components/Calendar/CalendarDay.md +0 -70
  1074. package/components/Center/Center.md +0 -26
  1075. package/components/Checkbox/Checkbox.md +0 -171
  1076. package/components/ComboBox/ComboBox.md +0 -574
  1077. package/components/CurrencyInput/CurrencyInput.md +0 -39
  1078. package/components/CurrencyLabel/CurrencyLabel.md +0 -29
  1079. package/components/DateInput/DateInput.md +0 -111
  1080. package/components/DatePicker/DatePicker.md +0 -368
  1081. package/components/Dropdown/Dropdown.md +0 -45
  1082. package/components/DropdownMenu/DropdownMenu.md +0 -290
  1083. package/components/FileUploader/FileUploader.md +0 -131
  1084. package/components/FxInput/FxInput.md +0 -31
  1085. package/components/Gapped/Gapped.md +0 -44
  1086. package/components/GlobalLoader/GlobalLoader.md +0 -97
  1087. package/components/Group/Group.md +0 -19
  1088. package/components/Hint/Hint.md +0 -86
  1089. package/components/Input/Input.md +0 -86
  1090. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +0 -29
  1091. package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +0 -1
  1092. package/components/Input/InputLayout/PolyfillPlaceholder/package.json +0 -6
  1093. package/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
  1094. package/components/Kebab/Kebab.md +0 -306
  1095. package/components/Link/Link.md +0 -182
  1096. package/components/Loader/Loader.md +0 -33
  1097. package/components/MaskedInput/MaskedInput.md +0 -114
  1098. package/components/MenuFooter/MenuFooter.md +0 -27
  1099. package/components/MenuHeader/MenuHeader.md +0 -35
  1100. package/components/MenuItem/MenuItem.md +0 -139
  1101. package/components/MenuSeparator/MenuSeparator.md +0 -14
  1102. package/components/MiniModal/MiniModal.md +0 -231
  1103. package/components/Modal/Modal.md +0 -56
  1104. package/components/Paging/Paging.md +0 -57
  1105. package/components/PasswordInput/PasswordInput.md +0 -29
  1106. package/components/Radio/Radio.md +0 -57
  1107. package/components/RadioGroup/RadioGroup.md +0 -44
  1108. package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
  1109. package/components/ScrollContainer/ScrollContainer.md +0 -224
  1110. package/components/Select/Select.md +0 -113
  1111. package/components/SidePage/SidePage.md +0 -65
  1112. package/components/SingleToast/SingleToast.md +0 -36
  1113. package/components/Spinner/Spinner.md +0 -36
  1114. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +0 -146
  1115. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +0 -1
  1116. package/components/Spinner/SpinnerFallbackAnimation/package.json +0 -6
  1117. package/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
  1118. package/components/Sticky/Sticky.md +0 -28
  1119. package/components/Switcher/Switcher.md +0 -111
  1120. package/components/Tabs/Tab.md +0 -73
  1121. package/components/Tabs/Tabs.md +0 -54
  1122. package/components/Textarea/Textarea.md +0 -58
  1123. package/components/Toast/Toast.md +0 -69
  1124. package/components/Toast/ToastStatic/ToastStatic.js +0 -39
  1125. package/components/Toast/ToastStatic/ToastStatic.js.map +0 -1
  1126. package/components/Toast/ToastStatic/package.json +0 -6
  1127. package/components/Toast/ToastStatic.d.ts +0 -10
  1128. package/components/Toggle/Toggle.md +0 -110
  1129. package/components/Token/Token.md +0 -48
  1130. package/components/TokenInput/TokenInput.md +0 -277
  1131. package/components/Tooltip/Tooltip.md +0 -322
  1132. package/components/TooltipMenu/TooltipMenu.md +0 -241
  1133. package/internal/DataTids/DATATIDS.md +0 -12
  1134. package/internal/DataTids/DataTids/DataTids.js +0 -69
  1135. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  1136. package/internal/DataTids/DataTids/package.json +0 -6
  1137. package/internal/DataTids/DataTids.d.ts +0 -12
  1138. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
  1139. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  1140. package/internal/DataTids/DataTids.styles/package.json +0 -6
  1141. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  1142. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
  1143. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  1144. package/internal/DataTids/componentsDataTids/package.json +0 -6
  1145. package/internal/DataTids/componentsDataTids.d.ts +0 -5
  1146. package/internal/InputLikeText/HiddenInput/HiddenInput.js +0 -42
  1147. package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +0 -1
  1148. package/internal/InputLikeText/HiddenInput/package.json +0 -6
  1149. package/internal/InputLikeText/HiddenInput.d.ts +0 -13
  1150. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +0 -191
  1151. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
  1152. package/internal/InternalMaskedInput/InternalMaskedInput/package.json +0 -6
  1153. package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
  1154. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js +0 -14
  1155. package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map +0 -1
  1156. package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +0 -6
  1157. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
  1158. package/internal/InternalMaskedInput/index/index.js +0 -1
  1159. package/internal/InternalMaskedInput/index/index.js.map +0 -1
  1160. package/internal/InternalMaskedInput/index.d.ts +0 -1
  1161. package/internal/ThemePlayground/Playground.md +0 -7
  1162. package/internal/themes/BasicLightTheme/BasicLightTheme.js +0 -6
  1163. package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +0 -1
  1164. package/internal/themes/BasicLightTheme/package.json +0 -6
  1165. package/internal/themes/BasicLightTheme.d.ts +0 -5
  1166. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +0 -409
  1167. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +0 -1
  1168. package/internal/themes/DarkTheme5_0/package.json +0 -6
  1169. package/internal/themes/DarkTheme5_0.d.ts +0 -1
  1170. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +0 -52
  1171. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +0 -1
  1172. package/internal/themes/DarkTheme5_1/package.json +0 -6
  1173. package/internal/themes/DarkTheme5_1.d.ts +0 -1
  1174. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +0 -27
  1175. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +0 -1
  1176. package/internal/themes/DarkTheme5_2/package.json +0 -6
  1177. package/internal/themes/DarkTheme5_2.d.ts +0 -1
  1178. package/internal/themes/LightTheme5_0/package.json +0 -6
  1179. package/internal/themes/LightTheme5_0.d.ts +0 -1
  1180. package/internal/themes/LightTheme5_1/LightTheme5_1.js +0 -52
  1181. package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +0 -1
  1182. package/internal/themes/LightTheme5_1/package.json +0 -6
  1183. package/internal/themes/LightTheme5_1.d.ts +0 -1
  1184. package/internal/themes/LightTheme5_2/LightTheme5_2.js +0 -27
  1185. package/internal/themes/LightTheme5_2/LightTheme5_2.js.map +0 -1
  1186. package/internal/themes/LightTheme5_2/package.json +0 -6
  1187. package/internal/themes/LightTheme5_2.d.ts +0 -1
  1188. package/lib/SSRSafe/SSRSafe.js +0 -4
  1189. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  1190. package/lib/SSRSafe/package.json +0 -6
  1191. package/lib/SSRSafe.d.ts +0 -2
  1192. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +0 -18
  1193. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +0 -1
  1194. package/lib/events/fixClickFocusIE/package.json +0 -6
  1195. package/lib/events/fixClickFocusIE.d.ts +0 -1
  1196. package/lib/events/stopPropagation/package.json +0 -6
  1197. package/lib/events/stopPropagation/stopPropagation.js +0 -7
  1198. package/lib/events/stopPropagation/stopPropagation.js.map +0 -1
  1199. package/lib/events/stopPropagation.d.ts +0 -1
  1200. package/lib/events/tabListener/package.json +0 -6
  1201. package/lib/events/tabListener/tabListener.js +0 -2
  1202. package/lib/events/tabListener/tabListener.js.map +0 -1
  1203. package/lib/events/tabListener.d.ts +0 -1
  1204. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
  1205. package/lib/locale/LOCALECONTEXT.md +0 -222
  1206. package/lib/theming/ThemeContext.md +0 -265
@@ -2,11 +2,11 @@ import type { Theme } from '../../lib/theming/Theme';
2
2
  export declare const styles: {
3
3
  root(): string;
4
4
  wrap(): string;
5
+ wrapCustomWidth(): string;
5
6
  input(): string;
6
7
  caption(t: Theme): string;
7
8
  captionSmall(t: Theme): string;
8
9
  captionMedium(t: Theme): string;
9
10
  captionLarge(t: Theme): string;
10
11
  error(t: Theme): string;
11
- error5_1(t: Theme): string;
12
12
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","throttle","globalObject","isInstanceOf","LayoutEvents","ThemeContext","cx","getRootNode","rootNode","getDOMRect","styles","TabsContext","TabsDataTids","Indicator","_class","_Indicator","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","context","state","eventListener","removeTabUpdatesListener","reflow","_this$context","getTab","activeTab","node","nodeStyles","getStyles","stylesUpdated","some","prop","setState","_inheritsLoose","_proto","prototype","componentDidMount","addListener","props","tabUpdates","on","componentWillUnmount","cancel","remove","componentDidUpdate","render","_this2","createElement","Consumer","theme","renderMain","_this$context2","indicators","getIndicators","error","warning","success","primary","disabled","indicatorRoot","className","root","style","ref","setRootNode","htmlNode","HTMLElement","rect","vertical","width","tabBorderWidth","left","offsetLeft","top","offsetTop","height","bottom","parseInt","offsetHeight","right","Component","contextType"],"sources":["Indicator.tsx"],"sourcesContent":["import React from 'react';\nimport throttle from 'lodash.throttle';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './Indicator.styles';\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext } from './TabsContext';\nimport type { TabIndicators } from './Tab';\nimport { TabsDataTids } from './Tabs';\n\nexport interface IndicatorProps {\n className?: string;\n tabUpdates: {\n on: (x0: () => void) => () => void;\n };\n vertical: boolean;\n}\n\nexport interface IndicatorState {\n styles: React.CSSProperties;\n}\n\n@rootNode\nexport class Indicator extends React.Component<IndicatorProps, IndicatorState> {\n public static contextType = TabsContext;\n public context: TabsContextType = this.context;\n\n public state: IndicatorState = {\n styles: {},\n };\n\n private theme!: Theme;\n\n private eventListener: Nullable<{\n remove: () => void;\n }> = null;\n\n private removeTabUpdatesListener: Nullable<() => void> = null;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.eventListener = LayoutEvents.addListener(this.reflow);\n this.removeTabUpdatesListener = this.props.tabUpdates.on(this.reflow);\n this.reflow();\n }\n\n public componentWillUnmount() {\n this.reflow.cancel();\n\n if (this.eventListener) {\n this.eventListener.remove();\n }\n if (this.removeTabUpdatesListener) {\n this.removeTabUpdatesListener();\n }\n }\n\n public componentDidUpdate() {\n this.reflow();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { getTab, activeTab } = this.context;\n const node = getTab(activeTab);\n const indicators: TabIndicators = (node && node.getIndicators && node.getIndicators()) || {\n error: false,\n warning: false,\n success: false,\n primary: false,\n disabled: false,\n };\n return (\n <div\n data-tid={TabsDataTids.indicatorRoot}\n className={cx(\n styles.root(this.theme),\n indicators.primary && styles.primary(this.theme),\n indicators.success && styles.success(this.theme),\n indicators.warning && styles.warning(this.theme),\n indicators.error && styles.error(this.theme),\n this.props.className,\n )}\n style={this.state.styles}\n ref={this.setRootNode}\n />\n );\n }\n\n private reflow = throttle(() => {\n const { getTab, activeTab } = this.context;\n const node = getTab(activeTab);\n const nodeStyles = this.getStyles(node);\n const stylesUpdated = ['left', 'top', 'width', 'height'].some(\n (prop) => nodeStyles[prop as keyof React.CSSProperties] !== this.state.styles[prop as keyof React.CSSProperties],\n );\n if (stylesUpdated) {\n this.setState({ styles: nodeStyles });\n }\n }, 100);\n\n private getStyles(node: any): React.CSSProperties {\n const htmlNode = getRootNode(node);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement)) {\n const rect = getDOMRect(htmlNode);\n if (this.props.vertical) {\n return {\n width: this.theme.tabBorderWidth,\n left: htmlNode.offsetLeft,\n top: htmlNode.offsetTop,\n height: rect.bottom - rect.top,\n };\n }\n\n const tabBorderWidth = parseInt(this.theme.tabBorderWidth, 10) || 0;\n return {\n left: htmlNode.offsetLeft,\n top: htmlNode.offsetHeight + htmlNode.offsetTop - tabBorderWidth,\n width: rect.right - rect.left,\n };\n }\n\n return {};\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","throttle","globalObject","isInstanceOf","LayoutEvents","ThemeContext","cx","getRootNode","rootNode","getDOMRect","styles","TabsContext","TabsDataTids","Indicator","_class","_Indicator","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","context","state","eventListener","removeTabUpdatesListener","reflow","_this$context","getTab","activeTab","node","nodeStyles","getStyles","stylesUpdated","some","prop","setState","_inheritsLoose","_proto","prototype","componentDidMount","addListener","props","tabUpdates","on","componentWillUnmount","cancel","remove","componentDidUpdate","render","_this2","createElement","Consumer","theme","renderMain","_this$context2","indicators","getIndicators","error","warning","success","primary","disabled","indicatorRoot","className","root","style","ref","setRootNode","htmlNode","HTMLElement","rect","vertical","width","tabBorderWidth","left","offsetLeft","top","offsetTop","height","bottom","parseInt","offsetHeight","right","Component","contextType"],"sources":["Indicator.tsx"],"sourcesContent":["import React from 'react';\nimport throttle from 'lodash.throttle';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './Indicator.styles';\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext } from './TabsContext';\nimport type { TabIndicators } from './Tab';\nimport { TabsDataTids } from './Tabs';\n\nexport interface IndicatorProps {\n className?: string;\n tabUpdates: {\n on: (x0: () => void) => () => void;\n };\n vertical: boolean;\n}\n\nexport interface IndicatorState {\n styles: React.CSSProperties;\n}\n\n@rootNode\nexport class Indicator extends React.Component<IndicatorProps, IndicatorState> {\n public static contextType = TabsContext;\n public context: TabsContextType = this.context;\n\n public state: IndicatorState = {\n styles: {},\n };\n\n private theme!: Theme;\n\n private eventListener: Nullable<{\n remove: () => void;\n }> = null;\n\n private removeTabUpdatesListener: Nullable<() => void> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.eventListener = LayoutEvents.addListener(this.reflow);\n this.removeTabUpdatesListener = this.props.tabUpdates.on(this.reflow);\n this.reflow();\n }\n\n public componentWillUnmount() {\n this.reflow.cancel();\n\n if (this.eventListener) {\n this.eventListener.remove();\n }\n if (this.removeTabUpdatesListener) {\n this.removeTabUpdatesListener();\n }\n }\n\n public componentDidUpdate() {\n this.reflow();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { getTab, activeTab } = this.context;\n const node = getTab(activeTab);\n const indicators: TabIndicators = (node && node.getIndicators && node.getIndicators()) || {\n error: false,\n warning: false,\n success: false,\n primary: false,\n disabled: false,\n };\n return (\n <div\n data-tid={TabsDataTids.indicatorRoot}\n className={cx(\n styles.root(this.theme),\n indicators.primary && styles.primary(this.theme),\n indicators.success && styles.success(this.theme),\n indicators.warning && styles.warning(this.theme),\n indicators.error && styles.error(this.theme),\n this.props.className,\n )}\n style={this.state.styles}\n ref={this.setRootNode}\n />\n );\n }\n\n private reflow = throttle(() => {\n const { getTab, activeTab } = this.context;\n const node = getTab(activeTab);\n const nodeStyles = this.getStyles(node);\n const stylesUpdated = ['left', 'top', 'width', 'height'].some(\n (prop) => nodeStyles[prop as keyof React.CSSProperties] !== this.state.styles[prop as keyof React.CSSProperties],\n );\n if (stylesUpdated) {\n this.setState({ styles: nodeStyles });\n }\n }, 100);\n\n private getStyles(node: any): React.CSSProperties {\n const htmlNode = getRootNode(node);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement)) {\n const rect = getDOMRect(htmlNode);\n if (this.props.vertical) {\n return {\n width: this.theme.tabBorderWidth,\n left: htmlNode.offsetLeft,\n top: htmlNode.offsetTop,\n height: rect.bottom - rect.top,\n };\n }\n\n const tabBorderWidth = parseInt(this.theme.tabBorderWidth, 10) || 0;\n return {\n left: htmlNode.offsetLeft,\n top: htmlNode.offsetHeight + htmlNode.offsetTop - tabBorderWidth,\n width: rect.right - rect.left,\n };\n }\n\n return {};\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { TGetRootNode } from '../../lib/rootNode';
2
3
  import type { TabsContextType } from './TabsContext';
3
4
  export interface IndicatorProps {
4
5
  className?: string;
@@ -17,6 +18,7 @@ export declare class Indicator extends React.Component<IndicatorProps, Indicator
17
18
  private theme;
18
19
  private eventListener;
19
20
  private removeTabUpdatesListener;
21
+ getRootNode: TGetRootNode;
20
22
  private setRootNode;
21
23
  componentDidMount(): void;
22
24
  componentWillUnmount(): void;
@@ -1 +1 @@
1
- {"version":3,"names":["React","invariant","globalObject","ResizeDetector","isKeyArrow","isKeyArrowLeft","isKeyArrowUp","keyListener","isFunctionalComponent","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","getVisualStateDataAttributes","TabsContext","TabsContextDefaultValue","globalClasses","horizontalStyles","styles","verticalStyles","TabDataTids","root","Tab","_class","_Tab","_React$Component","props","_this","call","context","getProps","defaultProps","state","focusedByKeyboard","tabComponent","getUnderlyingNode","getId","id","href","refTabComponent","instance","getTabInstance","switchTab","event","disabled","preventDefault","_this$getProps","component","onClick","defaultPrevented","handleKeyDown","e","onKeyDown","delta","shiftFocus","handleFocus","requestAnimationFrame","isTabPressed","isArrowPressed","setState","handleBlur","_inheritsLoose","_proto","prototype","componentDidMount","addTab","componentDidUpdate","activeTab","notifyUpdate","componentWillUnmount","removeTab","render","_this2","createElement","Consumer","theme","renderMain","getIndicators","error","Boolean","warning","success","primary","_cx","_cx2","_this$props","children","ariaDescribedby","ariaLabel","_this$getProps2","Component","isActive","isVertical","vertical","orientationStyles","_extends","rootNodeRef","setRootNode","active","className","rootSmall","size","rootMedium","rootLarge","verticalSmall","verticalMedium","verticalLarge","onBlur","onFocus","tabIndex","ref","onResize","focus","focusSmall","focusMedium","focusLarge","__KONTUR_REACT_UI__","displayName","contextType"],"sources":["Tab.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ResizeDetector } from '../../internal/ResizeDetector';\nimport { isKeyArrow, isKeyArrowLeft, isKeyArrowUp } from '../../lib/events/keyboard/identifiers';\nimport { keyListener } from '../../lib/events/keyListener';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isFunctionalComponent } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext, TabsContextDefaultValue } from './TabsContext';\nimport { globalClasses, horizontalStyles, styles, verticalStyles } from './Tab.styles';\n\nexport interface TabIndicators {\n error: boolean;\n warning: boolean;\n success: boolean;\n primary: boolean;\n disabled: boolean;\n}\n\nexport const TabDataTids = {\n root: 'Tab__root',\n} as const;\n\nexport interface TabProps<T extends string = string>\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n CommonProps {\n /** Позволяет передавать свой компонент, строку или функцию, которая заменит собой элемент используемый в компоненте по умолчанию.\n * Реализует паттерн [render prop](https://www.patterns.dev/posts/render-props-pattern). */\n component?: React.ComponentType<any> | string;\n\n /** Задает HTML-атрибут `href` - адрес, на который следует перейти. */\n href?: string;\n\n /** Задает уникальный идентификатор таба. По нему компонент `<Tabs />` определяет какой `<Tab />` сейчас выбран. */\n id?: T;\n\n /**`HTML`-событие `onclick`. */\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** `HTML`-событие `onkeydown`. */\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Устанавливает визульное состояние валидации \"успех\". */\n success?: boolean;\n\n /** Задает визульное состояние главного элемента. */\n primary?: boolean;\n}\n\nexport interface TabState {\n focusedByKeyboard: boolean;\n}\n\ntype DefaultProps = Required<Pick<TabProps, 'component' | 'href'>>;\n\n/**\n * Вложенный элемент компонента Tabs.\n */\n@rootNode\nexport class Tab<T extends string = string> extends React.Component<TabProps<T>, TabState> {\n public static __KONTUR_REACT_UI__ = 'Tab';\n public static displayName = 'Tab';\n\n public static contextType = TabsContext;\n public context: TabsContextType = this.context;\n\n public static defaultProps: DefaultProps = {\n component: 'a',\n href: '',\n };\n\n private getProps = createPropsGetter(Tab.defaultProps);\n\n public state: TabState = {\n focusedByKeyboard: false,\n };\n\n private theme!: Theme;\n private tabComponent: Nullable<React.ReactElement<Tab<T>>> = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: TabProps<T>) {\n super(props);\n invariant(this.context !== TabsContextDefaultValue, 'Tab should be placed inside Tabs component');\n }\n\n public componentDidMount() {\n const id = this.getId();\n if (typeof id === 'string') {\n this.context.addTab(id, this.getTabInstance);\n }\n }\n\n public componentDidUpdate() {\n if (this.context.activeTab === this.props.id) {\n this.context.notifyUpdate();\n }\n }\n\n public componentWillUnmount() {\n const id = this.getId();\n if (typeof id === 'string') {\n this.context.removeTab(id);\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getIndicators() {\n return {\n error: Boolean(this.props.error),\n warning: Boolean(this.props.warning),\n success: Boolean(this.props.success),\n primary: Boolean(this.props.primary),\n disabled: Boolean(this.props.disabled),\n };\n }\n\n public getUnderlyingNode = () => this.tabComponent;\n\n private renderMain() {\n const {\n children,\n disabled,\n error,\n warning,\n success,\n primary,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { component: Component, href } = this.getProps();\n\n let isActive = false;\n let isVertical = false;\n\n const id = this.getId();\n if (typeof id === 'string') {\n isActive = this.context.activeTab === this.getId();\n isVertical = this.context.vertical;\n }\n const orientationStyles = isVertical ? verticalStyles : horizontalStyles;\n\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...getVisualStateDataAttributes({ active: isActive, disabled })}\n {...this.props}\n >\n <Component\n data-tid={TabDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: this.context.size === 'small',\n [styles.rootMedium(this.theme)]: this.context.size === 'medium',\n [styles.rootLarge(this.theme)]: this.context.size === 'large',\n [styles.verticalSmall(this.theme)]: !!isVertical && this.context.size === 'small',\n [styles.verticalMedium(this.theme)]: !!isVertical && this.context.size === 'medium',\n [styles.verticalLarge(this.theme)]: !!isVertical && this.context.size === 'large',\n [orientationStyles.primary(this.theme)]: !!primary,\n [orientationStyles.success(this.theme)]: !!success,\n [orientationStyles.warning(this.theme)]: !!warning,\n [orientationStyles.error(this.theme)]: !!error,\n [styles.active()]: !!isActive,\n [orientationStyles.active(this.theme)]: !!isActive,\n [styles.disabled(this.theme)]: !!disabled,\n [orientationStyles.disabled()]: !!disabled,\n })}\n onBlur={this.handleBlur}\n onClick={this.switchTab}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n tabIndex={disabled ? -1 : 0}\n ref={isFunctionalComponent(Component) ? null : this.refTabComponent}\n href={href}\n aria-describedby={ariaDescribedby}\n aria-label={ariaLabel}\n >\n <ResizeDetector onResize={this.context.notifyUpdate}>{children}</ResizeDetector>\n {this.state.focusedByKeyboard && (\n <div\n className={cx(globalClasses.focus, {\n [styles.focusSmall(this.theme)]: this.context.size === 'small',\n [styles.focusMedium(this.theme)]: this.context.size === 'medium',\n [styles.focusLarge(this.theme)]: this.context.size === 'large',\n })}\n />\n )}\n </Component>\n </CommonWrapper>\n );\n }\n\n private getId = () => this.props.id || this.getProps().href;\n\n private refTabComponent = (instance: React.ReactElement<any>) => {\n this.tabComponent = instance;\n };\n\n private getTabInstance = () => this;\n\n private switchTab = (event: React.MouseEvent<HTMLElement>) => {\n if (this.props.disabled) {\n event.preventDefault();\n return;\n }\n const { href, component } = this.getProps();\n\n const id = this.props.id || href;\n if (this.props.onClick) {\n this.props.onClick(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n if (typeof id === 'string') {\n this.context.switchTab(id);\n }\n if (component === 'a' && !href) {\n event.preventDefault();\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.props.disabled) {\n return;\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n if (e.defaultPrevented) {\n return;\n }\n }\n const id = this.getId();\n if (typeof id !== 'string') {\n return;\n }\n if (!isKeyArrow(e)) {\n return;\n }\n e.preventDefault();\n const delta = isKeyArrowLeft(e) || isKeyArrowUp(e) ? -1 : 1;\n this.context.shiftFocus(id, delta);\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n // focus event fires before keyDown eventlistener\n // so we should check focusKeyPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed || keyListener.isArrowPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n };\n\n private handleBlur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focusedByKeyboard: false });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","invariant","globalObject","ResizeDetector","isKeyArrow","isKeyArrowLeft","isKeyArrowUp","keyListener","isFunctionalComponent","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","getVisualStateDataAttributes","TabsContext","TabsContextDefaultValue","globalClasses","horizontalStyles","styles","verticalStyles","TabDataTids","root","Tab","_class","_Tab","_React$Component","props","_this","call","context","getProps","defaultProps","state","focusedByKeyboard","tabComponent","getUnderlyingNode","getId","id","href","refTabComponent","instance","getTabInstance","switchTab","event","disabled","preventDefault","_this$getProps","component","onClick","defaultPrevented","handleKeyDown","e","onKeyDown","delta","shiftFocus","handleFocus","requestAnimationFrame","isTabPressed","isArrowPressed","setState","handleBlur","_inheritsLoose","_proto","prototype","componentDidMount","addTab","componentDidUpdate","activeTab","notifyUpdate","componentWillUnmount","removeTab","render","_this2","createElement","Consumer","theme","renderMain","getIndicators","error","Boolean","warning","success","primary","_cx","_cx2","_this$props","children","ariaDescribedby","ariaLabel","_this$getProps2","Component","isActive","isVertical","vertical","orientationStyles","_extends","rootNodeRef","setRootNode","active","className","rootSmall","size","rootMedium","rootLarge","verticalSmall","verticalMedium","verticalLarge","onBlur","onFocus","tabIndex","ref","onResize","focus","focusSmall","focusMedium","focusLarge","__KONTUR_REACT_UI__","displayName","contextType"],"sources":["Tab.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { ResizeDetector } from '../../internal/ResizeDetector';\nimport { isKeyArrow, isKeyArrowLeft, isKeyArrowUp } from '../../lib/events/keyboard/identifiers';\nimport { keyListener } from '../../lib/events/keyListener';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isFunctionalComponent } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext, TabsContextDefaultValue } from './TabsContext';\nimport { globalClasses, horizontalStyles, styles, verticalStyles } from './Tab.styles';\n\nexport interface TabIndicators {\n error: boolean;\n warning: boolean;\n success: boolean;\n primary: boolean;\n disabled: boolean;\n}\n\nexport const TabDataTids = {\n root: 'Tab__root',\n} as const;\n\nexport interface TabProps<T extends string = string>\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n CommonProps {\n /** Позволяет передавать свой компонент, строку или функцию, которая заменит собой элемент используемый в компоненте по умолчанию.\n * Реализует паттерн [render prop](https://www.patterns.dev/posts/render-props-pattern). */\n component?: React.ComponentType<any> | string;\n\n /** Задает HTML-атрибут `href` - адрес, на который следует перейти. */\n href?: string;\n\n /** Задает уникальный идентификатор таба. По нему компонент `<Tabs />` определяет какой `<Tab />` сейчас выбран. */\n id?: T;\n\n /**`HTML`-событие `onclick`. */\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n\n /** `HTML`-событие `onkeydown`. */\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Устанавливает визульное состояние валидации \"успех\". */\n success?: boolean;\n\n /** Задает визульное состояние главного элемента. */\n primary?: boolean;\n}\n\nexport interface TabState {\n focusedByKeyboard: boolean;\n}\n\ntype DefaultProps = Required<Pick<TabProps, 'component' | 'href'>>;\n\n/**\n * Вложенный элемент компонента Tabs.\n */\n@rootNode\nexport class Tab<T extends string = string> extends React.Component<TabProps<T>, TabState> {\n public static __KONTUR_REACT_UI__ = 'Tab';\n public static displayName = 'Tab';\n\n public static contextType = TabsContext;\n public context: TabsContextType = this.context;\n\n public static defaultProps: DefaultProps = {\n component: 'a',\n href: '',\n };\n\n private getProps = createPropsGetter(Tab.defaultProps);\n\n public state: TabState = {\n focusedByKeyboard: false,\n };\n\n private theme!: Theme;\n private tabComponent: Nullable<React.ReactElement<Tab<T>>> = null;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n constructor(props: TabProps<T>) {\n super(props);\n invariant(this.context !== TabsContextDefaultValue, 'Tab should be placed inside Tabs component');\n }\n\n public componentDidMount() {\n const id = this.getId();\n if (typeof id === 'string') {\n this.context.addTab(id, this.getTabInstance);\n }\n }\n\n public componentDidUpdate() {\n if (this.context.activeTab === this.props.id) {\n this.context.notifyUpdate();\n }\n }\n\n public componentWillUnmount() {\n const id = this.getId();\n if (typeof id === 'string') {\n this.context.removeTab(id);\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getIndicators() {\n return {\n error: Boolean(this.props.error),\n warning: Boolean(this.props.warning),\n success: Boolean(this.props.success),\n primary: Boolean(this.props.primary),\n disabled: Boolean(this.props.disabled),\n };\n }\n\n public getUnderlyingNode = () => this.tabComponent;\n\n private renderMain() {\n const {\n children,\n disabled,\n error,\n warning,\n success,\n primary,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { component: Component, href } = this.getProps();\n\n let isActive = false;\n let isVertical = false;\n\n const id = this.getId();\n if (typeof id === 'string') {\n isActive = this.context.activeTab === this.getId();\n isVertical = this.context.vertical;\n }\n const orientationStyles = isVertical ? verticalStyles : horizontalStyles;\n\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...getVisualStateDataAttributes({ active: isActive, disabled })}\n {...this.props}\n >\n <Component\n data-tid={TabDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: this.context.size === 'small',\n [styles.rootMedium(this.theme)]: this.context.size === 'medium',\n [styles.rootLarge(this.theme)]: this.context.size === 'large',\n [styles.verticalSmall(this.theme)]: !!isVertical && this.context.size === 'small',\n [styles.verticalMedium(this.theme)]: !!isVertical && this.context.size === 'medium',\n [styles.verticalLarge(this.theme)]: !!isVertical && this.context.size === 'large',\n [orientationStyles.primary(this.theme)]: !!primary,\n [orientationStyles.success(this.theme)]: !!success,\n [orientationStyles.warning(this.theme)]: !!warning,\n [orientationStyles.error(this.theme)]: !!error,\n [styles.active()]: !!isActive,\n [orientationStyles.active(this.theme)]: !!isActive,\n [styles.disabled(this.theme)]: !!disabled,\n [orientationStyles.disabled()]: !!disabled,\n })}\n onBlur={this.handleBlur}\n onClick={this.switchTab}\n onFocus={this.handleFocus}\n onKeyDown={this.handleKeyDown}\n tabIndex={disabled ? -1 : 0}\n ref={isFunctionalComponent(Component) ? null : this.refTabComponent}\n href={href}\n aria-describedby={ariaDescribedby}\n aria-label={ariaLabel}\n >\n <ResizeDetector onResize={this.context.notifyUpdate}>{children}</ResizeDetector>\n {this.state.focusedByKeyboard && (\n <div\n className={cx(globalClasses.focus, {\n [styles.focusSmall(this.theme)]: this.context.size === 'small',\n [styles.focusMedium(this.theme)]: this.context.size === 'medium',\n [styles.focusLarge(this.theme)]: this.context.size === 'large',\n })}\n />\n )}\n </Component>\n </CommonWrapper>\n );\n }\n\n private getId = () => this.props.id || this.getProps().href;\n\n private refTabComponent = (instance: React.ReactElement<any>) => {\n this.tabComponent = instance;\n };\n\n private getTabInstance = () => this;\n\n private switchTab = (event: React.MouseEvent<HTMLElement>) => {\n if (this.props.disabled) {\n event.preventDefault();\n return;\n }\n const { href, component } = this.getProps();\n\n const id = this.props.id || href;\n if (this.props.onClick) {\n this.props.onClick(event);\n if (event.defaultPrevented) {\n return;\n }\n }\n if (typeof id === 'string') {\n this.context.switchTab(id);\n }\n if (component === 'a' && !href) {\n event.preventDefault();\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.props.disabled) {\n return;\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n if (e.defaultPrevented) {\n return;\n }\n }\n const id = this.getId();\n if (typeof id !== 'string') {\n return;\n }\n if (!isKeyArrow(e)) {\n return;\n }\n e.preventDefault();\n const delta = isKeyArrowLeft(e) || isKeyArrowUp(e) ? -1 : 1;\n this.context.shiftFocus(id, delta);\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n // focus event fires before keyDown eventlistener\n // so we should check focusKeyPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed || keyListener.isArrowPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n };\n\n private handleBlur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ focusedByKeyboard: false });\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
3
  import type { Nullable } from '../../typings/utility-types';
4
4
  import type { CommonProps } from '../../internal/CommonWrapper';
5
+ import type { TGetRootNode } from '../../lib/rootNode';
5
6
  import type { TabsContextType } from './TabsContext';
6
7
  export interface TabIndicators {
7
8
  error: boolean;
@@ -53,6 +54,7 @@ export declare class Tab<T extends string = string> extends React.Component<TabP
53
54
  state: TabState;
54
55
  private theme;
55
56
  private tabComponent;
57
+ getRootNode: TGetRootNode;
56
58
  private setRootNode;
57
59
  constructor(props: TabProps<T>);
58
60
  componentDidMount(): void;
@@ -1 +1 @@
1
- {"version":3,"names":["React","globalObject","ThemeContext","CommonWrapper","cx","getRootNode","rootNode","createPropsGetter","isInstanceOf","Indicator","styles","TabsContext","Tab","TabsDataTids","root","indicatorRoot","Tabs","_class","_Tabs","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","tabs","tabUpdates","on","cb","index","listeners","push","splice","shiftFocus","fromTab","delta","_this2","findIndex","x","id","newIndex","Math","max","min","tab","tabNode","getNode","htmlNode","HTMLElement","focus","notifyUpdate","forEach","switchTab","_this$props","props","onValueChange","value","getTab","_ref","find","_ref$getNode","addTab","removeTab","filter","_inheritsLoose","_proto","prototype","render","_this3","_this$props2","width","children","indicatorClassName","ariaDescribedby","_this$getProps","vertical","size","createElement","Consumer","theme","_cx","_extends","rootNodeRef","setRootNode","className","rootSmall","rootMedium","rootLarge","style","Provider","activeTab","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Tabs.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode } from '../../lib/rootNode/getRootNode';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { Indicator } from './Indicator';\nimport { styles } from './Tabs.styles';\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext } from './TabsContext';\nimport { Tab } from './Tab';\n\ntype ValueBaseType = string;\ninterface TabType<T extends ValueBaseType> {\n getNode: () => Tab<T> | null;\n id: T;\n}\n\nexport interface TabsProps<T extends ValueBaseType = string> extends CommonProps {\n /** Задает кастомный класс подчёркиванию таба. */\n indicatorClassName?: string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает текущий активный `<Tab />`. Принимает `id` таба. */\n value: T;\n\n /** Задает функцию, изменяющую текущий активный `<Tab />`. */\n onValueChange?: (value: T) => void;\n\n /** Задает расположение элементов по вертикали.\n * @default false */\n vertical?: boolean;\n\n /** Задает ширину компонента Tabs. */\n width?: number | string;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const TabsDataTids = {\n root: 'Tabs__root',\n indicatorRoot: 'Indicator__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TabsProps, 'vertical' | 'size'>>;\n\n/**\n * Родитель компонента Tab. Связывает `Tab`'ы в группу и позволяет управлять их состоянием, помогают в навигации.\n *\n * Используйте `Tabs` для второстепенной навигации, для группировки или фильтрации контента.\n *\n * Не используйте `Tabs` для основной навигации. Для этого лучше подходит главное меню на цветной плашке — оно более заметно на странице.\n * Не используйте `Tabs` для переключения состояний — для этого есть RadioGroup, Toggle и Switcher.\n */\n@rootNode\nexport class Tabs<T extends string = string> extends React.Component<TabsProps<T>> {\n public static __KONTUR_REACT_UI__ = 'Tabs';\n public static displayName = 'Tabs';\n\n public static defaultProps: DefaultProps = {\n vertical: false,\n size: 'large',\n };\n\n private getProps = createPropsGetter(Tabs.defaultProps);\n\n public static Tab = Tab;\n\n private theme!: Theme;\n\n private tabs: Array<TabType<T>> = [];\n\n private tabUpdates = {\n on: (cb: () => void) => {\n const index = this.listeners.push(cb);\n return () => {\n this.listeners.splice(index, 1);\n };\n },\n };\n\n private listeners: Array<typeof emptyHandler> = [];\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n const { value, width, children, indicatorClassName, 'aria-describedby': ariaDescribedby } = this.props;\n const { vertical, size } = this.getProps();\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TabsDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: size === 'small',\n [styles.rootMedium(this.theme)]: size === 'medium',\n [styles.rootLarge(this.theme)]: size === 'large',\n [styles.vertical()]: vertical,\n })}\n style={{ width }}\n aria-describedby={ariaDescribedby}\n >\n <TabsContext.Provider\n value={{\n vertical,\n activeTab: value,\n size,\n getTab: this.getTab,\n addTab: this.addTab,\n removeTab: this.removeTab,\n notifyUpdate: this.notifyUpdate,\n shiftFocus: this.shiftFocus,\n switchTab: this.switchTab,\n }}\n >\n {children}\n <Indicator\n className={indicatorClassName}\n tabUpdates={this.tabUpdates}\n vertical={this.getProps().vertical}\n />\n </TabsContext.Provider>\n </div>\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private shiftFocus: TabsContextType<T>['shiftFocus'] = (fromTab, delta) => {\n const { tabs } = this;\n const index = tabs.findIndex((x) => x.id === fromTab);\n const newIndex = Math.max(0, Math.min(index + delta, tabs.length - 1));\n const tab = tabs[newIndex];\n\n const tabNode = tab.getNode();\n const htmlNode = getRootNode(tabNode);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement) && typeof htmlNode.focus === 'function') {\n htmlNode.focus();\n }\n };\n\n private notifyUpdate: TabsContextType<T>['notifyUpdate'] = () => {\n this.listeners.forEach((cb) => cb());\n };\n\n private switchTab: TabsContextType<T>['switchTab'] = (id) => {\n const { onValueChange, value } = this.props;\n if (id !== value && onValueChange) {\n onValueChange(id);\n }\n };\n\n private getTab: TabsContextType<T>['getTab'] = (id) => {\n const { getNode = null } = this.tabs.find((x) => x.id === id) || {};\n return getNode && getNode();\n };\n\n private addTab: TabsContextType<T>['addTab'] = (id, getNode) => {\n this.tabs = this.tabs.concat({ id, getNode });\n };\n\n private removeTab: TabsContextType<T>['removeTab'] = (id) => {\n this.tabs = this.tabs.filter((tab) => tab.id !== id);\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","globalObject","ThemeContext","CommonWrapper","cx","getRootNode","rootNode","createPropsGetter","isInstanceOf","Indicator","styles","TabsContext","Tab","TabsDataTids","root","indicatorRoot","Tabs","_class","_Tabs","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","tabs","tabUpdates","on","cb","index","listeners","push","splice","shiftFocus","fromTab","delta","_this2","findIndex","x","id","newIndex","Math","max","min","tab","tabNode","getNode","htmlNode","HTMLElement","focus","notifyUpdate","forEach","switchTab","_this$props","props","onValueChange","value","getTab","_ref","find","_ref$getNode","addTab","removeTab","filter","_inheritsLoose","_proto","prototype","render","_this3","_this$props2","width","children","indicatorClassName","ariaDescribedby","_this$getProps","vertical","size","createElement","Consumer","theme","_cx","_extends","rootNodeRef","setRootNode","className","rootSmall","rootMedium","rootLarge","style","Provider","activeTab","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Tabs.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { emptyHandler } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode } from '../../lib/rootNode/getRootNode';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { Indicator } from './Indicator';\nimport { styles } from './Tabs.styles';\nimport type { TabsContextType } from './TabsContext';\nimport { TabsContext } from './TabsContext';\nimport { Tab } from './Tab';\n\ntype ValueBaseType = string;\ninterface TabType<T extends ValueBaseType> {\n getNode: () => Tab<T> | null;\n id: T;\n}\n\nexport interface TabsProps<T extends ValueBaseType = string> extends CommonProps {\n /** Задает кастомный класс подчёркиванию таба. */\n indicatorClassName?: string;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает текущий активный `<Tab />`. Принимает `id` таба. */\n value: T;\n\n /** Задает функцию, изменяющую текущий активный `<Tab />`. */\n onValueChange?: (value: T) => void;\n\n /** Задает расположение элементов по вертикали.\n * @default false */\n vertical?: boolean;\n\n /** Задает ширину компонента Tabs. */\n width?: number | string;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const TabsDataTids = {\n root: 'Tabs__root',\n indicatorRoot: 'Indicator__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TabsProps, 'vertical' | 'size'>>;\n\n/**\n * Родитель компонента Tab. Связывает `Tab`'ы в группу и позволяет управлять их состоянием, помогают в навигации.\n *\n * Используйте `Tabs` для второстепенной навигации, для группировки или фильтрации контента.\n *\n * Не используйте `Tabs` для основной навигации. Для этого лучше подходит главное меню на цветной плашке — оно более заметно на странице.\n * Не используйте `Tabs` для переключения состояний — для этого есть RadioGroup, Toggle и Switcher.\n */\n@rootNode\nexport class Tabs<T extends string = string> extends React.Component<TabsProps<T>> {\n public static __KONTUR_REACT_UI__ = 'Tabs';\n public static displayName = 'Tabs';\n\n public static defaultProps: DefaultProps = {\n vertical: false,\n size: 'large',\n };\n\n private getProps = createPropsGetter(Tabs.defaultProps);\n\n public static Tab = Tab;\n\n private theme!: Theme;\n\n private tabs: Array<TabType<T>> = [];\n\n private tabUpdates = {\n on: (cb: () => void) => {\n const index = this.listeners.push(cb);\n return () => {\n this.listeners.splice(index, 1);\n };\n },\n };\n\n private listeners: Array<typeof emptyHandler> = [];\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render(): JSX.Element {\n const { value, width, children, indicatorClassName, 'aria-describedby': ariaDescribedby } = this.props;\n const { vertical, size } = this.getProps();\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TabsDataTids.root}\n className={cx({\n [styles.rootSmall(this.theme)]: size === 'small',\n [styles.rootMedium(this.theme)]: size === 'medium',\n [styles.rootLarge(this.theme)]: size === 'large',\n [styles.vertical()]: vertical,\n })}\n style={{ width }}\n aria-describedby={ariaDescribedby}\n >\n <TabsContext.Provider\n value={{\n vertical,\n activeTab: value,\n size,\n getTab: this.getTab,\n addTab: this.addTab,\n removeTab: this.removeTab,\n notifyUpdate: this.notifyUpdate,\n shiftFocus: this.shiftFocus,\n switchTab: this.switchTab,\n }}\n >\n {children}\n <Indicator\n className={indicatorClassName}\n tabUpdates={this.tabUpdates}\n vertical={this.getProps().vertical}\n />\n </TabsContext.Provider>\n </div>\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private shiftFocus: TabsContextType<T>['shiftFocus'] = (fromTab, delta) => {\n const { tabs } = this;\n const index = tabs.findIndex((x) => x.id === fromTab);\n const newIndex = Math.max(0, Math.min(index + delta, tabs.length - 1));\n const tab = tabs[newIndex];\n\n const tabNode = tab.getNode();\n const htmlNode = getRootNode(tabNode);\n\n if (isInstanceOf(htmlNode, globalObject.HTMLElement) && typeof htmlNode.focus === 'function') {\n htmlNode.focus();\n }\n };\n\n private notifyUpdate: TabsContextType<T>['notifyUpdate'] = () => {\n this.listeners.forEach((cb) => cb());\n };\n\n private switchTab: TabsContextType<T>['switchTab'] = (id) => {\n const { onValueChange, value } = this.props;\n if (id !== value && onValueChange) {\n onValueChange(id);\n }\n };\n\n private getTab: TabsContextType<T>['getTab'] = (id) => {\n const { getNode = null } = this.tabs.find((x) => x.id === id) || {};\n return getNode && getNode();\n };\n\n private addTab: TabsContextType<T>['addTab'] = (id, getNode) => {\n this.tabs = this.tabs.concat({ id, getNode });\n };\n\n private removeTab: TabsContextType<T>['removeTab'] = (id) => {\n this.tabs = this.tabs.filter((tab) => tab.id !== id);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  import type { AriaAttributes } from 'react';
2
2
  import React from 'react';
3
3
  import type { CommonProps } from '../../internal/CommonWrapper';
4
+ import type { TGetRootNode } from '../../lib/rootNode';
4
5
  import type { SizeProp } from '../../lib/types/props';
5
6
  import { Tab } from './Tab';
6
7
  type ValueBaseType = string;
@@ -44,6 +45,7 @@ export declare class Tabs<T extends string = string> extends React.Component<Tab
44
45
  private tabs;
45
46
  private tabUpdates;
46
47
  private listeners;
48
+ getRootNode: TGetRootNode;
47
49
  private setRootNode;
48
50
  render(): JSX.Element;
49
51
  private shiftFocus;
@@ -4,26 +4,27 @@ import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
4
4
  var _excluded = ["width", "error", "warning", "size", "autoResize", "resize", "onCut", "onPaste", "maxRows", "onFocus", "selectAllOnFocus", "placeholder", "onValueChange", "showLengthCounter", "lengthCounter", "counterHelp", "extraRow", "disableAnimations", "disabled"];
5
5
  var _class, _Textarea;
6
6
  import React from 'react';
7
- import PropTypes from 'prop-types';
8
7
  import throttle from 'lodash.throttle';
9
8
  import { globalObject } from '@skbkontur/global-object';
9
+ import warning from 'warning';
10
10
  import { isKeyEnter } from "../../../lib/events/keyboard/identifiers";
11
11
  import { needsPolyfillPlaceholder } from "../../../lib/needsPolyfillPlaceholder";
12
12
  import * as LayoutEvents from "../../../lib/LayoutEvents";
13
13
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
14
14
  import { RenderLayer } from "../../../internal/RenderLayer";
15
15
  import { ResizeDetector } from "../../../internal/ResizeDetector";
16
- import { isIE11, isSafariWithTextareaBug } from "../../../lib/client";
16
+ import { isSafariWithTextareaBug } from "../../../lib/client";
17
17
  import { CommonWrapper } from "../../../internal/CommonWrapper";
18
18
  import { isTestEnv } from "../../../lib/currentEnvironment";
19
19
  import { cx } from "../../../lib/theming/Emotion";
20
20
  import { rootNode } from "../../../lib/rootNode";
21
21
  import { createPropsGetter } from "../../../lib/createPropsGetter";
22
+ import { withSize } from "../../../lib/size/SizeDecorator";
22
23
  import { getTextAreaHeight } from "../TextareaHelpers";
23
24
  import { styles } from "../Textarea.styles";
24
25
  import { TextareaCounter } from "../TextareaCounter";
25
26
  import { TextareaWithSafari17Workaround } from "../TextareaWithSafari17Workaround";
26
- var DEFAULT_WIDTH = 250;
27
+ export var DEFAULT_WIDTH = 250;
27
28
  var AUTORESIZE_THROTTLE_DEFAULT_WAIT = 100;
28
29
  export var TextareaDataTids = {
29
30
  root: 'Textarea__root',
@@ -37,13 +38,22 @@ export var TextareaDataTids = {
37
38
  * Принимает все атрибуты `React.TextareaHTMLAttributes<HTMLTextAreaElement>`.
38
39
  * Пропы **`className` и `style` игнорируются**.
39
40
  */
40
- export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_React$Component) {
41
+
42
+ export var Textarea = rootNode(_class = withSize(_class = (_Textarea = /*#__PURE__*/function (_React$Component) {
41
43
  function Textarea() {
42
44
  var _this;
43
45
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
44
46
  args[_key] = arguments[_key];
45
47
  }
46
48
  _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
49
+ _this.clear = function () {
50
+ if (_this.node) {
51
+ _this.node.value = '';
52
+ }
53
+ if (_this.fakeNode) {
54
+ _this.fakeNode.value = '';
55
+ }
56
+ };
47
57
  _this.getProps = createPropsGetter(Textarea.defaultProps);
48
58
  _this.state = {
49
59
  needsPolyfillPlaceholder: needsPolyfillPlaceholder,
@@ -65,7 +75,8 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
65
75
  _this.setSelectionRange = function (start, end) {
66
76
  var _globalObject$documen;
67
77
  if (!_this.node) {
68
- throw new Error('Cannot call "setSelectionRange" on unmounted Input');
78
+ warning(false, 'Cannot call "setSelectionRange" on unmounted Input');
79
+ return;
69
80
  }
70
81
  if (((_globalObject$documen = globalObject.document) == null ? void 0 : _globalObject$documen.activeElement) !== _this.node) {
71
82
  _this.focus();
@@ -81,10 +92,6 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
81
92
  _this.setSelectionRange(0, _this.node.value.length);
82
93
  }
83
94
  };
84
- _this.delaySelectAll = function () {
85
- var _globalObject$request;
86
- return _this.selectAllId = (_globalObject$request = globalObject.requestAnimationFrame == null ? void 0 : globalObject.requestAnimationFrame(_this.selectAll)) != null ? _globalObject$request : null;
87
- };
88
95
  _this.cancelDelayedSelectAll = function () {
89
96
  if (_this.selectAllId) {
90
97
  globalObject.cancelAnimationFrame == null || globalObject.cancelAnimationFrame(_this.selectAllId);
@@ -122,7 +129,8 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
122
129
  };
123
130
  var textareaClassNames = cx(_this.getTextareaSizeClassName(), (_cx = {}, _cx[styles.textarea(_this.theme)] = true, _cx[styles.hovering(_this.theme)] = !error && !warning, _cx[styles.disabled(_this.theme)] = disabled, _cx[styles.error(_this.theme)] = !!error, _cx[styles.warning(_this.theme)] = !!warning, _cx[styles.disableAnimations()] = _this.isAnimationsDisabled(), _cx));
124
131
  var textareaStyle = {
125
- resize: autoResize ? 'none' : resize
132
+ resize: autoResize ? 'none' : resize,
133
+ textAlign: _this.props.align
126
134
  };
127
135
  var placeholderPolyfill = null;
128
136
  if (_this.state.needsPolyfillPlaceholder && !textareaProps.value && !textareaProps.defaultValue) {
@@ -145,7 +153,7 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
145
153
  var counter = showLengthCounter && isCounterVisible && _this.node && /*#__PURE__*/
146
154
  React.createElement(TextareaCounter, {
147
155
  textarea: _this.node,
148
- size: _this.getProps().size,
156
+ size: _this.size,
149
157
  help: counterHelp,
150
158
  value: textareaProps.value,
151
159
  length: (_ref = (_textareaProps$maxLen = textareaProps.maxLength) != null ? _textareaProps$maxLen : lengthCounter) != null ? _ref : 0,
@@ -166,7 +174,8 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
166
174
  className: cx(_this.getRootSizeClassName(), (_cx2 = {}, _cx2[styles.root()] = true, _cx2))
167
175
  }), placeholderPolyfill, /*#__PURE__*/
168
176
  React.createElement(ResizeDetector, {
169
- onResize: _this.reflowCounter
177
+ onResize: _this.reflowCounter,
178
+ alignBaseline: true
170
179
  }, /*#__PURE__*/
171
180
  React.createElement(Component, _extends({}, textareaProps, {
172
181
  className: textareaClassNames,
@@ -286,7 +295,7 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
286
295
  });
287
296
  if (_this.props.selectAllOnFocus) {
288
297
  // https://github.com/facebook/react/issues/7769
289
- _this.node && !isIE11 ? _this.selectAll() : _this.delaySelectAll();
298
+ _this.node && _this.selectAll();
290
299
  }
291
300
  if (_this.props.onFocus) {
292
301
  _this.props.onFocus(event);
@@ -297,7 +306,7 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
297
306
  _inheritsLoose(Textarea, _React$Component);
298
307
  var _proto = Textarea.prototype;
299
308
  _proto.getRootSizeClassName = function getRootSizeClassName() {
300
- switch (this.getProps().size) {
309
+ switch (this.size) {
301
310
  case 'large':
302
311
  return styles.rootLarge(this.theme);
303
312
  case 'medium':
@@ -308,7 +317,7 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
308
317
  }
309
318
  };
310
319
  _proto.getTextareaSizeClassName = function getTextareaSizeClassName() {
311
- switch (this.getProps().size) {
320
+ switch (this.size) {
312
321
  case 'large':
313
322
  return styles.textareaLarge(this.theme);
314
323
  case 'medium':
@@ -387,52 +396,9 @@ export var Textarea = rootNode(_class = (_Textarea = /*#__PURE__*/function (_Rea
387
396
  }
388
397
  };
389
398
  return Textarea;
390
- }(React.Component), _Textarea.__KONTUR_REACT_UI__ = 'Textarea', _Textarea.displayName = 'Textarea', _Textarea.propTypes = {
391
- error: PropTypes.bool,
392
- warning: PropTypes.bool,
393
- disabled: PropTypes.bool,
394
- autoResize: PropTypes.bool,
395
- extraRow: PropTypes.bool,
396
- disableAnimations: PropTypes.bool,
397
- maxRows: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
398
- resize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
399
- width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
400
- id: PropTypes.string,
401
- name: PropTypes.string,
402
- title: PropTypes.string,
403
- spellCheck: PropTypes.bool,
404
- role: PropTypes.string,
405
- maxLength: PropTypes.number,
406
- tabIndex: PropTypes.number,
407
- rows: PropTypes.number,
408
- placeholder: PropTypes.string,
409
- value: PropTypes.string,
410
- defaultValue: PropTypes.string,
411
- onValueChange: PropTypes.func,
412
- onMouseEnter: PropTypes.func,
413
- onMouseLeave: PropTypes.func,
414
- onMouseOver: PropTypes.func,
415
- onMouseMove: PropTypes.func,
416
- onMouseOut: PropTypes.func,
417
- onMouseUp: PropTypes.func,
418
- onMouseDown: PropTypes.func,
419
- onClick: PropTypes.func,
420
- onDoubleClick: PropTypes.func,
421
- onKeyDown: PropTypes.func,
422
- onKeyPress: PropTypes.func,
423
- onKeyUp: PropTypes.func,
424
- onInput: PropTypes.func,
425
- onFocus: PropTypes.func,
426
- onBlur: PropTypes.func,
427
- onScroll: PropTypes.func,
428
- onWheel: PropTypes.func,
429
- onCut: PropTypes.func,
430
- onPaste: PropTypes.func,
431
- onCopy: PropTypes.func
432
- }, _Textarea.defaultProps = {
399
+ }(React.Component), _Textarea.__KONTUR_REACT_UI__ = 'Textarea', _Textarea.displayName = 'Textarea', _Textarea.defaultProps = {
433
400
  rows: 3,
434
401
  maxRows: 15,
435
402
  extraRow: true,
436
- size: 'small',
437
403
  disableAnimations: isTestEnv
438
- }, _Textarea)) || _class;
404
+ }, _Textarea)) || _class) || _class;