@skbkontur/react-ui 3.9.3 → 3.10.0-beta.1

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 (1049) hide show
  1. package/README.md +57 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +113 -112
  3. package/cjs/components/Autocomplete/Autocomplete.js +11 -5
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Autocomplete/index.d.ts +1 -1
  6. package/cjs/components/Button/Button.d.ts +161 -160
  7. package/cjs/components/Button/Button.js +7 -3
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  10. package/cjs/components/Button/Button.styles.d.ts +67 -67
  11. package/cjs/components/Button/Corners.d.ts +6 -6
  12. package/cjs/components/Button/index.d.ts +1 -1
  13. package/cjs/components/Center/Center.d.ts +25 -24
  14. package/cjs/components/Center/Center.js +10 -3
  15. package/cjs/components/Center/Center.js.map +1 -1
  16. package/cjs/components/Center/Center.styles.d.ts +7 -7
  17. package/cjs/components/Center/index.d.ts +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +96 -95
  19. package/cjs/components/Checkbox/Checkbox.js +11 -4
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/Checkbox/Checkbox.styles.d.ts +22 -22
  22. package/cjs/components/Checkbox/index.d.ts +1 -1
  23. package/cjs/components/ComboBox/ComboBox.d.ts +184 -182
  24. package/cjs/components/ComboBox/ComboBox.js +100 -70
  25. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  26. package/cjs/components/ComboBox/index.d.ts +1 -1
  27. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  28. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  29. package/cjs/components/CurrencyInput/CurrencyInput.js +7 -4
  30. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  31. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  32. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  33. package/cjs/components/CurrencyInput/CursorHelper.d.ts +10 -10
  34. package/cjs/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  35. package/cjs/components/CurrencyInput/constants.d.ts +2 -2
  36. package/cjs/components/CurrencyInput/index.d.ts +1 -1
  37. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  38. package/cjs/components/CurrencyLabel/index.d.ts +1 -1
  39. package/cjs/components/DateInput/DateFragmentsView.d.ts +20 -20
  40. package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  41. package/cjs/components/DateInput/DateInput.d.ts +107 -106
  42. package/cjs/components/DateInput/DateInput.js +6 -3
  43. package/cjs/components/DateInput/DateInput.js.map +1 -1
  44. package/cjs/components/DateInput/DateInput.styles.d.ts +10 -10
  45. package/cjs/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  46. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  47. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  48. package/cjs/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  49. package/cjs/components/DateInput/helpers/inputNumber.d.ts +5 -5
  50. package/cjs/components/DateInput/index.d.ts +1 -1
  51. package/cjs/components/DatePicker/DatePicker.d.ts +134 -132
  52. package/cjs/components/DatePicker/DatePicker.js +17 -7
  53. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  54. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -3
  55. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  56. package/cjs/components/DatePicker/Picker.d.ts +33 -33
  57. package/cjs/components/DatePicker/Picker.styles.d.ts +5 -5
  58. package/cjs/components/DatePicker/index.d.ts +1 -1
  59. package/cjs/components/DatePicker/locale/index.d.ts +4 -4
  60. package/cjs/components/DatePicker/locale/locales/en.d.ts +2 -2
  61. package/cjs/components/DatePicker/locale/locales/ru.d.ts +2 -2
  62. package/cjs/components/DatePicker/locale/types.d.ts +5 -5
  63. package/cjs/components/Dropdown/Dropdown.d.ts +124 -123
  64. package/cjs/components/Dropdown/Dropdown.js +11 -4
  65. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  66. package/cjs/components/Dropdown/index.d.ts +1 -1
  67. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +65 -64
  68. package/cjs/components/DropdownMenu/DropdownMenu.js +7 -4
  69. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  70. package/cjs/components/DropdownMenu/index.d.ts +1 -1
  71. package/cjs/components/FxInput/FxInput.d.ts +50 -49
  72. package/cjs/components/FxInput/FxInput.js +9 -2
  73. package/cjs/components/FxInput/FxInput.js.map +1 -1
  74. package/cjs/components/FxInput/index.d.ts +1 -1
  75. package/cjs/components/Gapped/Gapped.d.ts +58 -56
  76. package/cjs/components/Gapped/Gapped.js +22 -14
  77. package/cjs/components/Gapped/Gapped.js.map +1 -1
  78. package/cjs/components/Gapped/index.d.ts +1 -1
  79. package/cjs/components/Group/Group.d.ts +14 -13
  80. package/cjs/components/Group/Group.js +10 -7
  81. package/cjs/components/Group/Group.js.map +1 -1
  82. package/cjs/components/Group/Group.styles.d.ts +8 -8
  83. package/cjs/components/Group/index.d.ts +1 -1
  84. package/cjs/components/Hint/Hint.d.ts +80 -79
  85. package/cjs/components/Hint/Hint.js +7 -4
  86. package/cjs/components/Hint/Hint.js.map +1 -1
  87. package/cjs/components/Hint/Hint.styles.d.ts +5 -5
  88. package/cjs/components/Hint/index.d.ts +1 -1
  89. package/cjs/components/Input/Input.d.ts +157 -154
  90. package/cjs/components/Input/Input.js +13 -5
  91. package/cjs/components/Input/Input.js.map +1 -1
  92. package/cjs/components/Input/Input.styles.d.ts +42 -42
  93. package/cjs/components/Input/index.d.ts +1 -1
  94. package/cjs/components/Kebab/Kebab.d.ts +71 -70
  95. package/cjs/components/Kebab/Kebab.js +8 -5
  96. package/cjs/components/Kebab/Kebab.js.map +1 -1
  97. package/cjs/components/Kebab/Kebab.styles.d.ts +12 -12
  98. package/cjs/components/Kebab/index.d.ts +1 -1
  99. package/cjs/components/Link/Link.d.ts +72 -71
  100. package/cjs/components/Link/Link.js +11 -3
  101. package/cjs/components/Link/Link.js.map +1 -1
  102. package/cjs/components/Link/Link.mixins.d.ts +3 -3
  103. package/cjs/components/Link/Link.styles.d.ts +15 -15
  104. package/cjs/components/Link/index.d.ts +1 -1
  105. package/cjs/components/Loader/Loader.d.ts +100 -99
  106. package/cjs/components/Loader/Loader.js +11 -7
  107. package/cjs/components/Loader/Loader.js.map +1 -1
  108. package/cjs/components/Loader/Loader.styles.d.ts +8 -8
  109. package/cjs/components/Loader/index.d.ts +1 -1
  110. package/cjs/components/MenuHeader/MenuHeader.d.ts +20 -20
  111. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  112. package/cjs/components/MenuHeader/index.d.ts +1 -1
  113. package/cjs/components/MenuItem/MenuItem.d.ts +94 -93
  114. package/cjs/components/MenuItem/MenuItem.js +13 -7
  115. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  116. package/cjs/components/MenuItem/MenuItem.styles.d.ts +13 -13
  117. package/cjs/components/MenuItem/index.d.ts +1 -1
  118. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  119. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  120. package/cjs/components/MenuSeparator/index.d.ts +1 -1
  121. package/cjs/components/Modal/Modal.d.ts +87 -87
  122. package/cjs/components/Modal/Modal.styles.d.ts +26 -26
  123. package/cjs/components/Modal/ModalBody.d.ts +21 -20
  124. package/cjs/components/Modal/ModalBody.js +9 -6
  125. package/cjs/components/Modal/ModalBody.js.map +1 -1
  126. package/cjs/components/Modal/ModalClose.d.ts +2 -2
  127. package/cjs/components/Modal/ModalContext.d.ts +15 -15
  128. package/cjs/components/Modal/ModalFooter.d.ts +21 -21
  129. package/cjs/components/Modal/ModalHeader.d.ts +17 -17
  130. package/cjs/components/Modal/index.d.ts +4 -4
  131. package/cjs/components/Paging/NavigationHelper.d.ts +7 -7
  132. package/cjs/components/Paging/Paging.d.ts +90 -90
  133. package/cjs/components/Paging/Paging.js +6 -5
  134. package/cjs/components/Paging/Paging.js.map +1 -1
  135. package/cjs/components/Paging/Paging.styles.d.ts +16 -16
  136. package/cjs/components/Paging/PagingHelper.d.ts +2 -2
  137. package/cjs/components/Paging/index.d.ts +1 -1
  138. package/cjs/components/Paging/locale/index.d.ts +4 -4
  139. package/cjs/components/Paging/locale/locales/en.d.ts +2 -2
  140. package/cjs/components/Paging/locale/locales/ru.d.ts +2 -2
  141. package/cjs/components/Paging/locale/types.d.ts +3 -3
  142. package/cjs/components/PasswordInput/PasswordInput.d.ts +49 -48
  143. package/cjs/components/PasswordInput/PasswordInput.js +13 -6
  144. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  145. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  146. package/cjs/components/PasswordInput/index.d.ts +1 -1
  147. package/cjs/components/Radio/Radio.d.ts +77 -82
  148. package/cjs/components/Radio/Radio.js +11 -10
  149. package/cjs/components/Radio/Radio.js.map +1 -1
  150. package/cjs/components/Radio/Radio.styles.d.ts +19 -19
  151. package/cjs/components/Radio/index.d.ts +1 -1
  152. package/cjs/components/RadioGroup/Prevent.d.ts +8 -8
  153. package/cjs/components/RadioGroup/RadioGroup.d.ts +117 -132
  154. package/cjs/components/RadioGroup/RadioGroup.js +25 -29
  155. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  156. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  157. package/cjs/components/RadioGroup/RadioGroupContext.d.ts +10 -0
  158. package/cjs/components/RadioGroup/RadioGroupContext.js +21 -0
  159. package/cjs/components/RadioGroup/RadioGroupContext.js.map +1 -0
  160. package/cjs/components/RadioGroup/index.d.ts +1 -1
  161. package/cjs/components/ScrollContainer/ScrollBar.d.ts +37 -37
  162. package/cjs/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  163. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +84 -83
  164. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  165. package/cjs/components/ScrollContainer/ScrollContainer.js +8 -5
  166. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  167. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +16 -16
  168. package/cjs/components/ScrollContainer/index.d.ts +1 -1
  169. package/cjs/components/Select/Item.d.ts +7 -7
  170. package/cjs/components/Select/Select.d.ts +179 -178
  171. package/cjs/components/Select/Select.js +6 -4
  172. package/cjs/components/Select/Select.js.map +1 -1
  173. package/cjs/components/Select/Select.styles.d.ts +17 -17
  174. package/cjs/components/Select/index.d.ts +1 -1
  175. package/cjs/components/Select/locale/index.d.ts +4 -4
  176. package/cjs/components/Select/locale/locales/en.d.ts +2 -2
  177. package/cjs/components/Select/locale/locales/ru.d.ts +2 -2
  178. package/cjs/components/Select/locale/types.d.ts +4 -4
  179. package/cjs/components/Select/selectTheme.d.ts +3 -3
  180. package/cjs/components/SidePage/SidePage.d.ts +104 -104
  181. package/cjs/components/SidePage/SidePage.styles.d.ts +37 -37
  182. package/cjs/components/SidePage/SidePageBody.d.ts +19 -18
  183. package/cjs/components/SidePage/SidePageBody.js +9 -6
  184. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  185. package/cjs/components/SidePage/SidePageContainer.d.ts +15 -14
  186. package/cjs/components/SidePage/SidePageContainer.js +9 -6
  187. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  188. package/cjs/components/SidePage/SidePageContext.d.ts +15 -15
  189. package/cjs/components/SidePage/SidePageFooter.d.ts +36 -37
  190. package/cjs/components/SidePage/SidePageFooter.js +11 -12
  191. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  192. package/cjs/components/SidePage/SidePageHeader.d.ts +41 -40
  193. package/cjs/components/SidePage/SidePageHeader.js +6 -3
  194. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  195. package/cjs/components/SidePage/index.d.ts +5 -5
  196. package/cjs/components/Spinner/Spinner.d.ts +48 -47
  197. package/cjs/components/Spinner/Spinner.js +8 -5
  198. package/cjs/components/Spinner/Spinner.js.map +1 -1
  199. package/cjs/components/Spinner/Spinner.styles.d.ts +11 -11
  200. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  201. package/cjs/components/Spinner/index.d.ts +1 -1
  202. package/cjs/components/Spinner/locale/index.d.ts +4 -4
  203. package/cjs/components/Spinner/locale/locales/en.d.ts +2 -2
  204. package/cjs/components/Spinner/locale/locales/ru.d.ts +2 -2
  205. package/cjs/components/Spinner/locale/types.d.ts +4 -4
  206. package/cjs/components/Sticky/Sticky.d.ts +54 -53
  207. package/cjs/components/Sticky/Sticky.js +8 -5
  208. package/cjs/components/Sticky/Sticky.js.map +1 -1
  209. package/cjs/components/Sticky/Sticky.styles.d.ts +7 -7
  210. package/cjs/components/Sticky/index.d.ts +1 -1
  211. package/cjs/components/Switcher/Switcher.d.ts +56 -55
  212. package/cjs/components/Switcher/Switcher.js +6 -3
  213. package/cjs/components/Switcher/Switcher.js.map +1 -1
  214. package/cjs/components/Switcher/Switcher.styles.d.ts +10 -10
  215. package/cjs/components/Switcher/index.d.ts +1 -1
  216. package/cjs/components/Switcher/switcherTheme.d.ts +2 -2
  217. package/cjs/components/Tabs/Indicator.d.ts +28 -27
  218. package/cjs/components/Tabs/Indicator.js +16 -15
  219. package/cjs/components/Tabs/Indicator.js.map +1 -1
  220. package/cjs/components/Tabs/Indicator.styles.d.ts +8 -8
  221. package/cjs/components/Tabs/Tab.d.ts +121 -120
  222. package/cjs/components/Tabs/Tab.js +13 -9
  223. package/cjs/components/Tabs/Tab.js.map +1 -1
  224. package/cjs/components/Tabs/Tab.styles.d.ts +27 -27
  225. package/cjs/components/Tabs/Tabs.d.ts +62 -61
  226. package/cjs/components/Tabs/Tabs.js +9 -9
  227. package/cjs/components/Tabs/Tabs.js.map +1 -1
  228. package/cjs/components/Tabs/Tabs.styles.d.ts +5 -5
  229. package/cjs/components/Tabs/TabsContext.d.ts +14 -14
  230. package/cjs/components/Tabs/index.d.ts +2 -2
  231. package/cjs/components/Textarea/Textarea.d.ts +185 -184
  232. package/cjs/components/Textarea/Textarea.js +12 -5
  233. package/cjs/components/Textarea/Textarea.js.map +1 -1
  234. package/cjs/components/Textarea/Textarea.styles.d.ts +15 -15
  235. package/cjs/components/Textarea/TextareaCounter.d.ts +13 -13
  236. package/cjs/components/Textarea/TextareaHelpers.d.ts +11 -11
  237. package/cjs/components/Textarea/index.d.ts +1 -1
  238. package/cjs/components/Toast/Toast.d.ts +56 -55
  239. package/cjs/components/Toast/Toast.js +7 -4
  240. package/cjs/components/Toast/Toast.js.map +1 -1
  241. package/cjs/components/Toast/Toast.styles.d.ts +6 -6
  242. package/cjs/components/Toast/ToastStatic.d.ts +8 -8
  243. package/cjs/components/Toast/ToastView.d.ts +38 -37
  244. package/cjs/components/Toast/ToastView.js +8 -5
  245. package/cjs/components/Toast/ToastView.js.map +1 -1
  246. package/cjs/components/Toast/ToastView.styles.d.ts +8 -8
  247. package/cjs/components/Toast/index.d.ts +1 -1
  248. package/cjs/components/Toggle/Toggle.d.ts +107 -106
  249. package/cjs/components/Toggle/Toggle.js +9 -6
  250. package/cjs/components/Toggle/Toggle.js.map +1 -1
  251. package/cjs/components/Toggle/Toggle.styles.d.ts +30 -30
  252. package/cjs/components/Toggle/index.d.ts +1 -1
  253. package/cjs/components/Token/Token.d.ts +36 -35
  254. package/cjs/components/Token/Token.js +7 -4
  255. package/cjs/components/Token/Token.js.map +1 -1
  256. package/cjs/components/Token/Token.styles.d.ts +29 -29
  257. package/cjs/components/Token/index.d.ts +1 -1
  258. package/cjs/components/TokenInput/TextWidthHelper.d.ts +18 -18
  259. package/cjs/components/TokenInput/TokenInput.d.ts +194 -193
  260. package/cjs/components/TokenInput/TokenInput.js +9 -7
  261. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  262. package/cjs/components/TokenInput/TokenInput.styles.d.ts +15 -15
  263. package/cjs/components/TokenInput/TokenInputMenu.d.ts +18 -18
  264. package/cjs/components/TokenInput/TokenInputReducer.d.ts +25 -25
  265. package/cjs/components/TokenInput/index.d.ts +1 -1
  266. package/cjs/components/TokenInput/locale/index.d.ts +4 -4
  267. package/cjs/components/TokenInput/locale/locales/en.d.ts +2 -2
  268. package/cjs/components/TokenInput/locale/locales/ru.d.ts +2 -2
  269. package/cjs/components/TokenInput/locale/types.d.ts +4 -4
  270. package/cjs/components/Tooltip/Tooltip.d.ts +173 -171
  271. package/cjs/components/Tooltip/Tooltip.js +16 -5
  272. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  273. package/cjs/components/Tooltip/Tooltip.styles.d.ts +5 -5
  274. package/cjs/components/Tooltip/index.d.ts +1 -1
  275. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +65 -64
  276. package/cjs/components/TooltipMenu/TooltipMenu.js +8 -5
  277. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  278. package/cjs/components/TooltipMenu/index.d.ts +1 -1
  279. package/cjs/index.d.ts +48 -48
  280. package/cjs/internal/BGRuler.d.ts +30 -30
  281. package/cjs/internal/Calendar/Calendar.d.ts +66 -66
  282. package/cjs/internal/Calendar/Calendar.styles.d.ts +5 -5
  283. package/cjs/internal/Calendar/CalendarDateShape.d.ts +14 -14
  284. package/cjs/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  285. package/cjs/internal/Calendar/CalendarUtils.d.ts +19 -19
  286. package/cjs/internal/Calendar/DayCellView.d.ts +13 -13
  287. package/cjs/internal/Calendar/DayCellView.styles.d.ts +7 -7
  288. package/cjs/internal/Calendar/DayCellViewModel.d.ts +8 -8
  289. package/cjs/internal/Calendar/Month.d.ts +33 -33
  290. package/cjs/internal/Calendar/MonthView.d.ts +21 -21
  291. package/cjs/internal/Calendar/MonthView.styles.d.ts +9 -9
  292. package/cjs/internal/Calendar/MonthViewModel.d.ts +14 -14
  293. package/cjs/internal/Calendar/config.d.ts +9 -9
  294. package/cjs/internal/Calendar/index.d.ts +2 -2
  295. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +30 -23
  296. package/cjs/internal/CommonWrapper/CommonWrapper.js +40 -15
  297. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  298. package/cjs/internal/CommonWrapper/index.d.ts +1 -1
  299. package/cjs/internal/ComponentCombinator.d.ts +25 -25
  300. package/cjs/internal/ComponentTable.d.ts +21 -21
  301. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  302. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +3 -2
  303. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  304. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +90 -87
  305. package/cjs/internal/CustomComboBox/ComboBoxView.js +15 -5
  306. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  307. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +136 -135
  308. package/cjs/internal/CustomComboBox/CustomComboBox.js +8 -5
  309. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  310. package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  311. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  312. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  313. package/cjs/internal/CustomComboBox/index.d.ts +2 -2
  314. package/cjs/internal/CustomComboBox/locale/index.d.ts +4 -4
  315. package/cjs/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  316. package/cjs/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  317. package/cjs/internal/CustomComboBox/locale/types.d.ts +5 -5
  318. package/cjs/internal/DateSelect/DateSelect.d.ts +93 -93
  319. package/cjs/internal/DateSelect/DateSelect.js +3 -3
  320. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  321. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  322. package/cjs/internal/DateSelect/index.d.ts +1 -1
  323. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +43 -46
  324. package/cjs/internal/DropdownContainer/DropdownContainer.js +8 -13
  325. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  326. package/cjs/internal/DropdownContainer/index.d.ts +1 -1
  327. package/cjs/internal/FocusTrap/FocusTrap.d.ts +17 -16
  328. package/cjs/internal/FocusTrap/FocusTrap.js +12 -9
  329. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  330. package/cjs/internal/FocusTrap/index.d.ts +1 -1
  331. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  332. package/cjs/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  333. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  334. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +12 -4
  335. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  336. package/cjs/internal/IgnoreLayerClick/index.d.ts +1 -1
  337. package/cjs/internal/InputLikeText/HiddenInput.d.ts +13 -13
  338. package/cjs/internal/InputLikeText/InputLikeText.d.ts +73 -72
  339. package/cjs/internal/InputLikeText/InputLikeText.js +10 -3
  340. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  341. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  342. package/cjs/internal/InputLikeText/index.d.ts +1 -1
  343. package/cjs/internal/InternalMenu/InternalMenu.d.ts +63 -64
  344. package/cjs/internal/InternalMenu/InternalMenu.js +16 -22
  345. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  346. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  347. package/cjs/internal/InternalMenu/index.d.ts +1 -1
  348. package/cjs/internal/InternalMenu/isActiveElement.d.ts +3 -3
  349. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  350. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  351. package/cjs/internal/MaskCharLowLine/index.d.ts +1 -1
  352. package/cjs/internal/MaskedInput/MaskedInput.d.ts +40 -40
  353. package/cjs/internal/MaskedInput/MaskedInput.js +3 -3
  354. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  355. package/cjs/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  356. package/cjs/internal/MaskedInput/index.d.ts +1 -1
  357. package/cjs/internal/Menu/Menu.d.ts +63 -62
  358. package/cjs/internal/Menu/Menu.js +9 -6
  359. package/cjs/internal/Menu/Menu.js.map +1 -1
  360. package/cjs/internal/Menu/Menu.styles.d.ts +6 -6
  361. package/cjs/internal/Menu/index.d.ts +1 -1
  362. package/cjs/internal/Menu/isActiveElement.d.ts +3 -3
  363. package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  364. package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  365. package/cjs/internal/NativeDateInput/index.d.ts +1 -1
  366. package/cjs/internal/NativeDateInput/utils.d.ts +7 -7
  367. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  368. package/cjs/internal/Popup/Popup.d.ts +161 -161
  369. package/cjs/internal/Popup/Popup.js +23 -22
  370. package/cjs/internal/Popup/Popup.js.map +1 -1
  371. package/cjs/internal/Popup/Popup.styles.d.ts +16 -16
  372. package/cjs/internal/Popup/PopupHelper.d.ts +26 -26
  373. package/cjs/internal/Popup/PopupPin.d.ts +56 -56
  374. package/cjs/internal/Popup/PopupPin.styles.d.ts +3 -3
  375. package/cjs/internal/Popup/index.d.ts +1 -1
  376. package/cjs/internal/PopupMenu/PopupMenu.d.ts +85 -84
  377. package/cjs/internal/PopupMenu/PopupMenu.js +7 -4
  378. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  379. package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  380. package/cjs/internal/PopupMenu/PopupMenuPositions.d.ts +2 -2
  381. package/cjs/internal/PopupMenu/index.d.ts +1 -1
  382. package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
  383. package/cjs/internal/RenderContainer/RenderContainer.d.ts +17 -16
  384. package/cjs/internal/RenderContainer/RenderContainer.js +17 -6
  385. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  386. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
  387. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +14 -13
  388. package/cjs/internal/RenderContainer/RenderInnerContainer.js +9 -4
  389. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  390. package/cjs/internal/RenderContainer/index.d.ts +1 -1
  391. package/cjs/internal/RenderLayer/RenderLayer.d.ts +29 -27
  392. package/cjs/internal/RenderLayer/RenderLayer.js +13 -7
  393. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  394. package/cjs/internal/RenderLayer/index.d.ts +1 -1
  395. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  396. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  397. package/cjs/internal/ResizeDetector/index.d.ts +1 -1
  398. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  399. package/cjs/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  400. package/cjs/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  401. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  402. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  403. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  404. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  405. package/cjs/internal/ThemePlayground/Playground.d.ts +31 -31
  406. package/cjs/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  407. package/cjs/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  408. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  409. package/cjs/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  410. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  411. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  412. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  413. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  414. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  415. package/cjs/internal/ThemePlayground/VariableValue.d.ts +45 -45
  416. package/cjs/internal/ThemePlayground/constants.d.ts +18 -18
  417. package/cjs/internal/ThemePlayground/darkTheme.d.ts +255 -255
  418. package/cjs/internal/ThemePlayground/helpers.d.ts +2 -2
  419. package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  420. package/cjs/internal/ThemeShowcase/ThemeShowcase.js +20 -19
  421. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  422. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  423. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  424. package/cjs/internal/ZIndex/ZIndex.d.ts +34 -34
  425. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  426. package/cjs/internal/ZIndex/index.d.ts +1 -1
  427. package/cjs/internal/icons/16px/icon.styles.d.ts +4 -4
  428. package/cjs/internal/icons/16px/index.d.ts +22 -21
  429. package/cjs/internal/icons/16px/index.js +108 -51
  430. package/cjs/internal/icons/16px/index.js.map +1 -1
  431. package/cjs/internal/icons/20px/Icon.d.ts +30 -30
  432. package/cjs/internal/icons/20px/icon.styles.d.ts +4 -4
  433. package/cjs/internal/icons/20px/index.d.ts +2 -2
  434. package/cjs/internal/icons/20px/svg.d.ts +14 -14
  435. package/cjs/internal/icons/CloudIcon.d.ts +1 -1
  436. package/cjs/internal/icons/CrossIcon.d.ts +1 -1
  437. package/cjs/internal/icons/SpinnerIcon.d.ts +23 -23
  438. package/cjs/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  439. package/cjs/internal/themes/DefaultTheme.d.ts +766 -766
  440. package/cjs/internal/themes/FlatTheme.d.ts +132 -132
  441. package/cjs/internal/themes/Theme8px.d.ts +271 -271
  442. package/cjs/lib/ConditionalHandler.d.ts +11 -11
  443. package/cjs/lib/LayoutEvents.d.ts +4 -4
  444. package/cjs/lib/ModalStack.d.ts +14 -14
  445. package/cjs/lib/SSRSafe.d.ts +4 -4
  446. package/cjs/lib/Supports.d.ts +1 -1
  447. package/cjs/lib/Upgrades.d.ts +6 -6
  448. package/cjs/lib/animation/index.d.ts +6 -6
  449. package/cjs/lib/animation/presets.d.ts +18 -18
  450. package/cjs/lib/animation/stepper.d.ts +1 -1
  451. package/cjs/lib/client.d.ts +16 -16
  452. package/cjs/lib/createPropsGetter.d.ts +2 -2
  453. package/cjs/lib/currentEnvironment.d.ts +3 -3
  454. package/cjs/lib/date/InternalDate.d.ts +58 -58
  455. package/cjs/lib/date/InternalDateCalculator.d.ts +6 -6
  456. package/cjs/lib/date/InternalDateGetter.d.ts +15 -15
  457. package/cjs/lib/date/InternalDateSetter.d.ts +6 -6
  458. package/cjs/lib/date/InternalDateTransformer.d.ts +12 -12
  459. package/cjs/lib/date/InternalDateValidator.d.ts +12 -12
  460. package/cjs/lib/date/constants.d.ts +28 -28
  461. package/cjs/lib/date/localeSets.d.ts +5 -5
  462. package/cjs/lib/date/types.d.ts +90 -90
  463. package/cjs/lib/dom/getScrollWidth.d.ts +1 -1
  464. package/cjs/lib/dom/tabbableHelpers.d.ts +16 -16
  465. package/cjs/lib/events/MouseDrag.d.ts +58 -58
  466. package/cjs/lib/events/fixClickFocusIE.d.ts +1 -1
  467. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  468. package/cjs/lib/events/keyListener.d.ts +7 -7
  469. package/cjs/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  470. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  471. package/cjs/lib/events/keyboard/extractCode.d.ts +3 -3
  472. package/cjs/lib/events/keyboard/identifiers.d.ts +48 -48
  473. package/cjs/lib/events/stopPropagation.d.ts +1 -1
  474. package/cjs/lib/events/tabListener.d.ts +1 -1
  475. package/cjs/lib/extractKeyboardAction.d.ts +13 -13
  476. package/cjs/lib/filterProps.d.ts +12 -12
  477. package/cjs/lib/forwardRefAndName.d.ts +5 -5
  478. package/cjs/lib/getDisplayName.d.ts +3 -3
  479. package/cjs/lib/listenFocusOutside.d.ts +8 -8
  480. package/cjs/lib/locale/LocaleContext.d.ts +7 -7
  481. package/cjs/lib/locale/LocaleHelper.d.ts +9 -9
  482. package/cjs/lib/locale/constants.d.ts +2 -2
  483. package/cjs/lib/locale/decorators.d.ts +36 -36
  484. package/cjs/lib/locale/index.d.ts +3 -3
  485. package/cjs/lib/locale/types.d.ts +19 -19
  486. package/cjs/lib/memo.d.ts +1 -1
  487. package/cjs/lib/net/fetch.d.ts +13 -13
  488. package/cjs/lib/polyfillPlaceholder.d.ts +1 -1
  489. package/cjs/lib/reactGetTextContent.d.ts +2 -2
  490. package/cjs/lib/rootNode/getRootNode.d.ts +3 -0
  491. package/cjs/lib/rootNode/getRootNode.js +22 -0
  492. package/cjs/lib/rootNode/getRootNode.js.map +1 -0
  493. package/cjs/lib/rootNode/index.d.ts +2 -0
  494. package/cjs/lib/rootNode/index.js +2 -0
  495. package/cjs/lib/rootNode/index.js.map +1 -0
  496. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +33 -0
  497. package/cjs/lib/rootNode/rootNodeDecorator.js +31 -0
  498. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -0
  499. package/cjs/lib/styles/ColorFactory.d.ts +11 -11
  500. package/cjs/lib/styles/ColorFunctions.d.ts +11 -11
  501. package/cjs/lib/styles/ColorHelpers.d.ts +20 -20
  502. package/cjs/lib/styles/ColorKeywords.d.ts +150 -150
  503. package/cjs/lib/styles/ColorObject.d.ts +52 -52
  504. package/cjs/lib/styles/DimensionFunctions.d.ts +1 -1
  505. package/cjs/lib/styles/HoldSelectionColor.d.ts +1 -1
  506. package/cjs/lib/styles/Mixins.d.ts +2 -2
  507. package/cjs/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  508. package/cjs/lib/theming/AnimationKeyframes.d.ts +9 -9
  509. package/cjs/lib/theming/Emotion.d.ts +15 -15
  510. package/cjs/lib/theming/Emotion.js +1 -0
  511. package/cjs/lib/theming/Emotion.js.map +1 -1
  512. package/cjs/lib/theming/Theme.d.ts +3 -3
  513. package/cjs/lib/theming/ThemeContext.d.ts +2 -2
  514. package/cjs/lib/theming/ThemeFactory.d.ts +8 -8
  515. package/cjs/lib/theming/ThemeHelpers.d.ts +11 -11
  516. package/cjs/lib/theming/themes/DefaultTheme.d.ts +1 -1
  517. package/cjs/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  518. package/cjs/lib/theming/themes/FlatTheme.d.ts +1 -1
  519. package/cjs/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  520. package/cjs/lib/utils.d.ts +28 -28
  521. package/cjs/lib/withClassWrapper.d.ts +71 -68
  522. package/cjs/lib/withClassWrapper.js.map +1 -1
  523. package/components/Autocomplete/Autocomplete/Autocomplete.js +19 -16
  524. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  525. package/components/Autocomplete/Autocomplete.d.ts +113 -112
  526. package/components/Autocomplete/index.d.ts +1 -1
  527. package/components/Button/Button/Button.js +15 -12
  528. package/components/Button/Button/Button.js.map +1 -1
  529. package/components/Button/Button.d.ts +161 -160
  530. package/components/Button/Button.mixins.d.ts +6 -6
  531. package/components/Button/Button.styles.d.ts +67 -67
  532. package/components/Button/Corners.d.ts +6 -6
  533. package/components/Button/index.d.ts +1 -1
  534. package/components/Center/Center/Center.js +14 -9
  535. package/components/Center/Center/Center.js.map +1 -1
  536. package/components/Center/Center.d.ts +25 -24
  537. package/components/Center/Center.styles.d.ts +7 -7
  538. package/components/Center/index.d.ts +1 -1
  539. package/components/Checkbox/Checkbox/Checkbox.js +16 -10
  540. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  541. package/components/Checkbox/Checkbox.d.ts +96 -95
  542. package/components/Checkbox/Checkbox.styles.d.ts +22 -22
  543. package/components/Checkbox/index.d.ts +1 -1
  544. package/components/ComboBox/ComboBox/ComboBox.js +38 -32
  545. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  546. package/components/ComboBox/ComboBox.d.ts +184 -182
  547. package/components/ComboBox/index.d.ts +1 -1
  548. package/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  549. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +29 -27
  550. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  551. package/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  552. package/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  553. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  554. package/components/CurrencyInput/CursorHelper.d.ts +10 -10
  555. package/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  556. package/components/CurrencyInput/constants.d.ts +2 -2
  557. package/components/CurrencyInput/index.d.ts +1 -1
  558. package/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  559. package/components/CurrencyLabel/index.d.ts +1 -1
  560. package/components/DateInput/DateFragmentsView.d.ts +20 -20
  561. package/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  562. package/components/DateInput/DateInput/DateInput.js +7 -3
  563. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  564. package/components/DateInput/DateInput.d.ts +107 -106
  565. package/components/DateInput/DateInput.styles.d.ts +10 -10
  566. package/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  567. package/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  568. package/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  569. package/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  570. package/components/DateInput/helpers/inputNumber.d.ts +5 -5
  571. package/components/DateInput/index.d.ts +1 -1
  572. package/components/DatePicker/DatePicker/DatePicker.js +29 -22
  573. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  574. package/components/DatePicker/DatePicker.d.ts +134 -132
  575. package/components/DatePicker/DatePicker.styles.d.ts +3 -3
  576. package/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  577. package/components/DatePicker/Picker.d.ts +33 -33
  578. package/components/DatePicker/Picker.styles.d.ts +5 -5
  579. package/components/DatePicker/index.d.ts +1 -1
  580. package/components/DatePicker/locale/index.d.ts +4 -4
  581. package/components/DatePicker/locale/locales/en.d.ts +2 -2
  582. package/components/DatePicker/locale/locales/ru.d.ts +2 -2
  583. package/components/DatePicker/locale/types.d.ts +5 -5
  584. package/components/Dropdown/Dropdown/Dropdown.js +15 -13
  585. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  586. package/components/Dropdown/Dropdown.d.ts +124 -123
  587. package/components/Dropdown/index.d.ts +1 -1
  588. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +15 -9
  589. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  590. package/components/DropdownMenu/DropdownMenu.d.ts +65 -64
  591. package/components/DropdownMenu/index.d.ts +1 -1
  592. package/components/FxInput/FxInput/FxInput.js +13 -9
  593. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  594. package/components/FxInput/FxInput.d.ts +50 -49
  595. package/components/FxInput/index.d.ts +1 -1
  596. package/components/Gapped/Gapped/Gapped.js +24 -21
  597. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  598. package/components/Gapped/Gapped.d.ts +58 -56
  599. package/components/Gapped/index.d.ts +1 -1
  600. package/components/Group/Group/Group.js +22 -9
  601. package/components/Group/Group/Group.js.map +1 -1
  602. package/components/Group/Group.d.ts +14 -13
  603. package/components/Group/Group.styles.d.ts +8 -8
  604. package/components/Group/index.d.ts +1 -1
  605. package/components/Hint/Hint/Hint.js +18 -12
  606. package/components/Hint/Hint/Hint.js.map +1 -1
  607. package/components/Hint/Hint.d.ts +80 -79
  608. package/components/Hint/Hint.styles.d.ts +5 -5
  609. package/components/Hint/index.d.ts +1 -1
  610. package/components/Input/Input/Input.js +21 -14
  611. package/components/Input/Input/Input.js.map +1 -1
  612. package/components/Input/Input.d.ts +157 -154
  613. package/components/Input/Input.styles.d.ts +42 -42
  614. package/components/Input/index.d.ts +1 -1
  615. package/components/Kebab/Kebab/Kebab.js +12 -7
  616. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  617. package/components/Kebab/Kebab.d.ts +71 -70
  618. package/components/Kebab/Kebab.styles.d.ts +12 -12
  619. package/components/Kebab/index.d.ts +1 -1
  620. package/components/Link/Link/Link.js +15 -11
  621. package/components/Link/Link/Link.js.map +1 -1
  622. package/components/Link/Link.d.ts +72 -71
  623. package/components/Link/Link.mixins.d.ts +3 -3
  624. package/components/Link/Link.styles.d.ts +15 -15
  625. package/components/Link/index.d.ts +1 -1
  626. package/components/Loader/Loader/Loader.js +19 -13
  627. package/components/Loader/Loader/Loader.js.map +1 -1
  628. package/components/Loader/Loader.d.ts +100 -99
  629. package/components/Loader/Loader.styles.d.ts +8 -8
  630. package/components/Loader/index.d.ts +1 -1
  631. package/components/MenuHeader/MenuHeader.d.ts +20 -20
  632. package/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  633. package/components/MenuHeader/index.d.ts +1 -1
  634. package/components/MenuItem/MenuItem/MenuItem.js +21 -14
  635. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  636. package/components/MenuItem/MenuItem.d.ts +94 -93
  637. package/components/MenuItem/MenuItem.styles.d.ts +13 -13
  638. package/components/MenuItem/index.d.ts +1 -1
  639. package/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  640. package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  641. package/components/MenuSeparator/index.d.ts +1 -1
  642. package/components/Modal/Modal.d.ts +87 -87
  643. package/components/Modal/Modal.styles.d.ts +26 -26
  644. package/components/Modal/ModalBody/ModalBody.js +16 -10
  645. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  646. package/components/Modal/ModalBody.d.ts +21 -20
  647. package/components/Modal/ModalClose.d.ts +2 -2
  648. package/components/Modal/ModalContext.d.ts +15 -15
  649. package/components/Modal/ModalFooter.d.ts +21 -21
  650. package/components/Modal/ModalHeader.d.ts +17 -17
  651. package/components/Modal/index.d.ts +4 -4
  652. package/components/Paging/NavigationHelper.d.ts +7 -7
  653. package/components/Paging/Paging/Paging.js +17 -14
  654. package/components/Paging/Paging/Paging.js.map +1 -1
  655. package/components/Paging/Paging.d.ts +90 -90
  656. package/components/Paging/Paging.styles.d.ts +16 -16
  657. package/components/Paging/PagingHelper.d.ts +2 -2
  658. package/components/Paging/index.d.ts +1 -1
  659. package/components/Paging/locale/index.d.ts +4 -4
  660. package/components/Paging/locale/locales/en.d.ts +2 -2
  661. package/components/Paging/locale/locales/ru.d.ts +2 -2
  662. package/components/Paging/locale/types.d.ts +3 -3
  663. package/components/PasswordInput/PasswordInput/PasswordInput.js +18 -14
  664. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  665. package/components/PasswordInput/PasswordInput.d.ts +49 -48
  666. package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  667. package/components/PasswordInput/index.d.ts +1 -1
  668. package/components/Radio/Radio/Radio.js +17 -19
  669. package/components/Radio/Radio/Radio.js.map +1 -1
  670. package/components/Radio/Radio.d.ts +77 -82
  671. package/components/Radio/Radio.styles.d.ts +19 -19
  672. package/components/Radio/index.d.ts +1 -1
  673. package/components/RadioGroup/Prevent.d.ts +8 -8
  674. package/components/RadioGroup/RadioGroup/RadioGroup.js +36 -29
  675. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  676. package/components/RadioGroup/RadioGroup.d.ts +117 -132
  677. package/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  678. package/components/RadioGroup/RadioGroupContext/RadioGroupContext.js +12 -0
  679. package/components/RadioGroup/RadioGroupContext/RadioGroupContext.js.map +1 -0
  680. package/components/RadioGroup/RadioGroupContext/package.json +6 -0
  681. package/components/RadioGroup/RadioGroupContext.d.ts +10 -0
  682. package/components/RadioGroup/index.d.ts +1 -1
  683. package/components/ScrollContainer/ScrollBar.d.ts +37 -37
  684. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +13 -8
  685. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  686. package/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  687. package/components/ScrollContainer/ScrollContainer.d.ts +84 -83
  688. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  689. package/components/ScrollContainer/ScrollContainer.styles.d.ts +16 -16
  690. package/components/ScrollContainer/index.d.ts +1 -1
  691. package/components/Select/Item.d.ts +7 -7
  692. package/components/Select/Select/Select.js +8 -5
  693. package/components/Select/Select/Select.js.map +1 -1
  694. package/components/Select/Select.d.ts +179 -178
  695. package/components/Select/Select.styles.d.ts +17 -17
  696. package/components/Select/index.d.ts +1 -1
  697. package/components/Select/locale/index.d.ts +4 -4
  698. package/components/Select/locale/locales/en.d.ts +2 -2
  699. package/components/Select/locale/locales/ru.d.ts +2 -2
  700. package/components/Select/locale/types.d.ts +4 -4
  701. package/components/Select/selectTheme.d.ts +3 -3
  702. package/components/SidePage/SidePage.d.ts +104 -104
  703. package/components/SidePage/SidePage.styles.d.ts +37 -37
  704. package/components/SidePage/SidePageBody/SidePageBody.js +16 -10
  705. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  706. package/components/SidePage/SidePageBody.d.ts +19 -18
  707. package/components/SidePage/SidePageContainer/SidePageContainer.js +16 -9
  708. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  709. package/components/SidePage/SidePageContainer.d.ts +15 -14
  710. package/components/SidePage/SidePageContext.d.ts +15 -15
  711. package/components/SidePage/SidePageFooter/SidePageFooter.js +22 -19
  712. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  713. package/components/SidePage/SidePageFooter.d.ts +36 -37
  714. package/components/SidePage/SidePageHeader/SidePageHeader.js +15 -10
  715. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  716. package/components/SidePage/SidePageHeader.d.ts +41 -40
  717. package/components/SidePage/index.d.ts +5 -5
  718. package/components/Spinner/Spinner/Spinner.js +8 -3
  719. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  720. package/components/Spinner/Spinner.d.ts +48 -47
  721. package/components/Spinner/Spinner.styles.d.ts +11 -11
  722. package/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  723. package/components/Spinner/index.d.ts +1 -1
  724. package/components/Spinner/locale/index.d.ts +4 -4
  725. package/components/Spinner/locale/locales/en.d.ts +2 -2
  726. package/components/Spinner/locale/locales/ru.d.ts +2 -2
  727. package/components/Spinner/locale/types.d.ts +4 -4
  728. package/components/Sticky/Sticky/Sticky.js +13 -8
  729. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  730. package/components/Sticky/Sticky.d.ts +54 -53
  731. package/components/Sticky/Sticky.styles.d.ts +7 -7
  732. package/components/Sticky/index.d.ts +1 -1
  733. package/components/Switcher/Switcher/Switcher.js +11 -6
  734. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  735. package/components/Switcher/Switcher.d.ts +56 -55
  736. package/components/Switcher/Switcher.styles.d.ts +10 -10
  737. package/components/Switcher/index.d.ts +1 -1
  738. package/components/Switcher/switcherTheme.d.ts +2 -2
  739. package/components/Tabs/Indicator/Indicator.js +16 -14
  740. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  741. package/components/Tabs/Indicator.d.ts +28 -27
  742. package/components/Tabs/Indicator.styles.d.ts +8 -8
  743. package/components/Tabs/Tab/Tab.js +31 -34
  744. package/components/Tabs/Tab/Tab.js.map +1 -1
  745. package/components/Tabs/Tab.d.ts +121 -120
  746. package/components/Tabs/Tab.styles.d.ts +27 -27
  747. package/components/Tabs/Tabs/Tabs.js +20 -20
  748. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  749. package/components/Tabs/Tabs.d.ts +62 -61
  750. package/components/Tabs/Tabs.styles.d.ts +5 -5
  751. package/components/Tabs/TabsContext.d.ts +14 -14
  752. package/components/Tabs/index.d.ts +2 -2
  753. package/components/Textarea/Textarea/Textarea.js +21 -17
  754. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  755. package/components/Textarea/Textarea.d.ts +185 -184
  756. package/components/Textarea/Textarea.styles.d.ts +15 -15
  757. package/components/Textarea/TextareaCounter.d.ts +13 -13
  758. package/components/Textarea/TextareaHelpers.d.ts +11 -11
  759. package/components/Textarea/index.d.ts +1 -1
  760. package/components/Toast/Toast/Toast.js +19 -13
  761. package/components/Toast/Toast/Toast.js.map +1 -1
  762. package/components/Toast/Toast.d.ts +56 -55
  763. package/components/Toast/Toast.styles.d.ts +6 -6
  764. package/components/Toast/ToastStatic.d.ts +8 -8
  765. package/components/Toast/ToastView/ToastView.js +10 -5
  766. package/components/Toast/ToastView/ToastView.js.map +1 -1
  767. package/components/Toast/ToastView.d.ts +38 -37
  768. package/components/Toast/ToastView.styles.d.ts +8 -8
  769. package/components/Toast/index.d.ts +1 -1
  770. package/components/Toggle/Toggle/Toggle.js +16 -11
  771. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  772. package/components/Toggle/Toggle.d.ts +107 -106
  773. package/components/Toggle/Toggle.styles.d.ts +30 -30
  774. package/components/Toggle/index.d.ts +1 -1
  775. package/components/Token/Token/Token.js +11 -4
  776. package/components/Token/Token/Token.js.map +1 -1
  777. package/components/Token/Token.d.ts +36 -35
  778. package/components/Token/Token.styles.d.ts +29 -29
  779. package/components/Token/index.d.ts +1 -1
  780. package/components/TokenInput/TextWidthHelper.d.ts +18 -18
  781. package/components/TokenInput/TokenInput/TokenInput.js +11 -5
  782. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  783. package/components/TokenInput/TokenInput.d.ts +194 -193
  784. package/components/TokenInput/TokenInput.styles.d.ts +15 -15
  785. package/components/TokenInput/TokenInputMenu.d.ts +18 -18
  786. package/components/TokenInput/TokenInputReducer.d.ts +25 -25
  787. package/components/TokenInput/index.d.ts +1 -1
  788. package/components/TokenInput/locale/index.d.ts +4 -4
  789. package/components/TokenInput/locale/locales/en.d.ts +2 -2
  790. package/components/TokenInput/locale/locales/ru.d.ts +2 -2
  791. package/components/TokenInput/locale/types.d.ts +4 -4
  792. package/components/Tooltip/Tooltip/Tooltip.js +24 -15
  793. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  794. package/components/Tooltip/Tooltip.d.ts +173 -171
  795. package/components/Tooltip/Tooltip.styles.d.ts +5 -5
  796. package/components/Tooltip/index.d.ts +1 -1
  797. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +23 -17
  798. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  799. package/components/TooltipMenu/TooltipMenu.d.ts +65 -64
  800. package/components/TooltipMenu/index.d.ts +1 -1
  801. package/index.d.ts +48 -48
  802. package/internal/BGRuler.d.ts +30 -30
  803. package/internal/Calendar/Calendar.d.ts +66 -66
  804. package/internal/Calendar/Calendar.styles.d.ts +5 -5
  805. package/internal/Calendar/CalendarDateShape.d.ts +14 -14
  806. package/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  807. package/internal/Calendar/CalendarUtils.d.ts +19 -19
  808. package/internal/Calendar/DayCellView.d.ts +13 -13
  809. package/internal/Calendar/DayCellView.styles.d.ts +7 -7
  810. package/internal/Calendar/DayCellViewModel.d.ts +8 -8
  811. package/internal/Calendar/Month.d.ts +33 -33
  812. package/internal/Calendar/MonthView.d.ts +21 -21
  813. package/internal/Calendar/MonthView.styles.d.ts +9 -9
  814. package/internal/Calendar/MonthViewModel.d.ts +14 -14
  815. package/internal/Calendar/config.d.ts +9 -9
  816. package/internal/Calendar/index.d.ts +2 -2
  817. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +36 -7
  818. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  819. package/internal/CommonWrapper/CommonWrapper.d.ts +30 -23
  820. package/internal/CommonWrapper/index.d.ts +1 -1
  821. package/internal/ComponentCombinator.d.ts +25 -25
  822. package/internal/ComponentTable.d.ts +21 -21
  823. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +5 -3
  824. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  825. package/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  826. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +23 -13
  827. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  828. package/internal/CustomComboBox/ComboBoxView.d.ts +90 -87
  829. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +12 -4
  830. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  831. package/internal/CustomComboBox/CustomComboBox.d.ts +136 -135
  832. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  833. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  834. package/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  835. package/internal/CustomComboBox/index.d.ts +2 -2
  836. package/internal/CustomComboBox/locale/index.d.ts +4 -4
  837. package/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  838. package/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  839. package/internal/CustomComboBox/locale/types.d.ts +5 -5
  840. package/internal/DateSelect/DateSelect/DateSelect.js +5 -5
  841. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  842. package/internal/DateSelect/DateSelect.d.ts +93 -93
  843. package/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  844. package/internal/DateSelect/index.d.ts +1 -1
  845. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +11 -15
  846. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  847. package/internal/DropdownContainer/DropdownContainer.d.ts +43 -46
  848. package/internal/DropdownContainer/index.d.ts +1 -1
  849. package/internal/FocusTrap/FocusTrap/FocusTrap.js +17 -9
  850. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  851. package/internal/FocusTrap/FocusTrap.d.ts +17 -16
  852. package/internal/FocusTrap/index.d.ts +1 -1
  853. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  854. package/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  855. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +13 -7
  856. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  857. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  858. package/internal/IgnoreLayerClick/index.d.ts +1 -1
  859. package/internal/InputLikeText/HiddenInput.d.ts +13 -13
  860. package/internal/InputLikeText/InputLikeText/InputLikeText.js +11 -6
  861. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  862. package/internal/InputLikeText/InputLikeText.d.ts +73 -72
  863. package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  864. package/internal/InputLikeText/index.d.ts +1 -1
  865. package/internal/InternalMenu/InternalMenu/InternalMenu.js +24 -25
  866. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  867. package/internal/InternalMenu/InternalMenu.d.ts +63 -64
  868. package/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  869. package/internal/InternalMenu/index.d.ts +1 -1
  870. package/internal/InternalMenu/isActiveElement.d.ts +3 -3
  871. package/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  872. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  873. package/internal/MaskCharLowLine/index.d.ts +1 -1
  874. package/internal/MaskedInput/MaskedInput/MaskedInput.js +7 -7
  875. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  876. package/internal/MaskedInput/MaskedInput.d.ts +40 -40
  877. package/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  878. package/internal/MaskedInput/index.d.ts +1 -1
  879. package/internal/Menu/Menu/Menu.js +11 -8
  880. package/internal/Menu/Menu/Menu.js.map +1 -1
  881. package/internal/Menu/Menu.d.ts +63 -62
  882. package/internal/Menu/Menu.styles.d.ts +6 -6
  883. package/internal/Menu/index.d.ts +1 -1
  884. package/internal/Menu/isActiveElement.d.ts +3 -3
  885. package/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  886. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  887. package/internal/NativeDateInput/index.d.ts +1 -1
  888. package/internal/NativeDateInput/utils.d.ts +7 -7
  889. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  890. package/internal/Popup/Popup/Popup.js +61 -61
  891. package/internal/Popup/Popup/Popup.js.map +1 -1
  892. package/internal/Popup/Popup.d.ts +161 -161
  893. package/internal/Popup/Popup.styles.d.ts +16 -16
  894. package/internal/Popup/PopupHelper.d.ts +26 -26
  895. package/internal/Popup/PopupPin.d.ts +56 -56
  896. package/internal/Popup/PopupPin.styles.d.ts +3 -3
  897. package/internal/Popup/index.d.ts +1 -1
  898. package/internal/PopupMenu/PopupMenu/PopupMenu.js +12 -7
  899. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  900. package/internal/PopupMenu/PopupMenu.d.ts +85 -84
  901. package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  902. package/internal/PopupMenu/PopupMenuPositions.d.ts +2 -2
  903. package/internal/PopupMenu/index.d.ts +1 -1
  904. package/internal/PopupMenu/validatePositions.d.ts +2 -2
  905. package/internal/RenderContainer/RenderContainer/RenderContainer.js +13 -8
  906. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  907. package/internal/RenderContainer/RenderContainer.d.ts +17 -16
  908. package/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
  909. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +20 -6
  910. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  911. package/internal/RenderContainer/RenderInnerContainer.d.ts +14 -13
  912. package/internal/RenderContainer/index.d.ts +1 -1
  913. package/internal/RenderLayer/RenderLayer/RenderLayer.js +20 -18
  914. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  915. package/internal/RenderLayer/RenderLayer.d.ts +29 -27
  916. package/internal/RenderLayer/index.d.ts +1 -1
  917. package/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  918. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  919. package/internal/ResizeDetector/index.d.ts +1 -1
  920. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  921. package/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  922. package/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  923. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  924. package/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  925. package/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  926. package/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  927. package/internal/ThemePlayground/Playground.d.ts +31 -31
  928. package/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  929. package/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  930. package/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  931. package/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  932. package/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  933. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  934. package/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  935. package/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  936. package/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  937. package/internal/ThemePlayground/VariableValue.d.ts +45 -45
  938. package/internal/ThemePlayground/constants.d.ts +18 -18
  939. package/internal/ThemePlayground/darkTheme.d.ts +255 -255
  940. package/internal/ThemePlayground/helpers.d.ts +2 -2
  941. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +35 -43
  942. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  943. package/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  944. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  945. package/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  946. package/internal/ZIndex/ZIndex.d.ts +34 -34
  947. package/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  948. package/internal/ZIndex/index.d.ts +1 -1
  949. package/internal/icons/16px/icon.styles.d.ts +4 -4
  950. package/internal/icons/16px/index/index.js +83 -51
  951. package/internal/icons/16px/index/index.js.map +1 -1
  952. package/internal/icons/16px/index.d.ts +22 -21
  953. package/internal/icons/20px/Icon.d.ts +30 -30
  954. package/internal/icons/20px/icon.styles.d.ts +4 -4
  955. package/internal/icons/20px/index.d.ts +2 -2
  956. package/internal/icons/20px/svg.d.ts +14 -14
  957. package/internal/icons/CloudIcon.d.ts +1 -1
  958. package/internal/icons/CrossIcon.d.ts +1 -1
  959. package/internal/icons/SpinnerIcon.d.ts +23 -23
  960. package/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  961. package/internal/themes/DefaultTheme.d.ts +766 -766
  962. package/internal/themes/FlatTheme.d.ts +132 -132
  963. package/internal/themes/Theme8px.d.ts +271 -271
  964. package/lib/ConditionalHandler.d.ts +11 -11
  965. package/lib/LayoutEvents.d.ts +4 -4
  966. package/lib/ModalStack.d.ts +14 -14
  967. package/lib/SSRSafe.d.ts +4 -4
  968. package/lib/Supports.d.ts +1 -1
  969. package/lib/Upgrades.d.ts +6 -6
  970. package/lib/animation/index.d.ts +6 -6
  971. package/lib/animation/presets.d.ts +18 -18
  972. package/lib/animation/stepper.d.ts +1 -1
  973. package/lib/client.d.ts +16 -16
  974. package/lib/createPropsGetter.d.ts +2 -2
  975. package/lib/currentEnvironment.d.ts +3 -3
  976. package/lib/date/InternalDate.d.ts +58 -58
  977. package/lib/date/InternalDateCalculator.d.ts +6 -6
  978. package/lib/date/InternalDateGetter.d.ts +15 -15
  979. package/lib/date/InternalDateSetter.d.ts +6 -6
  980. package/lib/date/InternalDateTransformer.d.ts +12 -12
  981. package/lib/date/InternalDateValidator.d.ts +12 -12
  982. package/lib/date/constants.d.ts +28 -28
  983. package/lib/date/localeSets.d.ts +5 -5
  984. package/lib/date/types.d.ts +90 -90
  985. package/lib/dom/getScrollWidth.d.ts +1 -1
  986. package/lib/dom/tabbableHelpers.d.ts +16 -16
  987. package/lib/events/MouseDrag.d.ts +58 -58
  988. package/lib/events/fixClickFocusIE.d.ts +1 -1
  989. package/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  990. package/lib/events/keyListener.d.ts +7 -7
  991. package/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  992. package/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  993. package/lib/events/keyboard/extractCode.d.ts +3 -3
  994. package/lib/events/keyboard/identifiers.d.ts +48 -48
  995. package/lib/events/stopPropagation.d.ts +1 -1
  996. package/lib/events/tabListener.d.ts +1 -1
  997. package/lib/extractKeyboardAction.d.ts +13 -13
  998. package/lib/filterProps.d.ts +12 -12
  999. package/lib/forwardRefAndName.d.ts +5 -5
  1000. package/lib/getDisplayName.d.ts +3 -3
  1001. package/lib/listenFocusOutside.d.ts +8 -8
  1002. package/lib/locale/LocaleContext.d.ts +7 -7
  1003. package/lib/locale/LocaleHelper.d.ts +9 -9
  1004. package/lib/locale/constants.d.ts +2 -2
  1005. package/lib/locale/decorators.d.ts +36 -36
  1006. package/lib/locale/index.d.ts +3 -3
  1007. package/lib/locale/types.d.ts +19 -19
  1008. package/lib/memo.d.ts +1 -1
  1009. package/lib/net/fetch.d.ts +13 -13
  1010. package/lib/polyfillPlaceholder.d.ts +1 -1
  1011. package/lib/reactGetTextContent.d.ts +2 -2
  1012. package/lib/rootNode/getRootNode/getRootNode.js +20 -0
  1013. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -0
  1014. package/lib/rootNode/getRootNode/package.json +6 -0
  1015. package/lib/rootNode/getRootNode.d.ts +3 -0
  1016. package/lib/rootNode/index/index.js +2 -0
  1017. package/lib/rootNode/index/index.js.map +1 -0
  1018. package/lib/rootNode/index/package.json +6 -0
  1019. package/lib/rootNode/index.d.ts +2 -0
  1020. package/lib/rootNode/package.json +6 -0
  1021. package/lib/rootNode/rootNodeDecorator/package.json +6 -0
  1022. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +37 -0
  1023. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -0
  1024. package/lib/rootNode/rootNodeDecorator.d.ts +33 -0
  1025. package/lib/styles/ColorFactory.d.ts +11 -11
  1026. package/lib/styles/ColorFunctions.d.ts +11 -11
  1027. package/lib/styles/ColorHelpers.d.ts +20 -20
  1028. package/lib/styles/ColorKeywords.d.ts +150 -150
  1029. package/lib/styles/ColorObject.d.ts +52 -52
  1030. package/lib/styles/DimensionFunctions.d.ts +1 -1
  1031. package/lib/styles/HoldSelectionColor.d.ts +1 -1
  1032. package/lib/styles/Mixins.d.ts +2 -2
  1033. package/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  1034. package/lib/theming/AnimationKeyframes.d.ts +9 -9
  1035. package/lib/theming/Emotion/Emotion.js +1 -0
  1036. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1037. package/lib/theming/Emotion.d.ts +15 -15
  1038. package/lib/theming/Theme.d.ts +3 -3
  1039. package/lib/theming/ThemeContext.d.ts +2 -2
  1040. package/lib/theming/ThemeFactory.d.ts +8 -8
  1041. package/lib/theming/ThemeHelpers.d.ts +11 -11
  1042. package/lib/theming/themes/DefaultTheme.d.ts +1 -1
  1043. package/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  1044. package/lib/theming/themes/FlatTheme.d.ts +1 -1
  1045. package/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  1046. package/lib/utils.d.ts +28 -28
  1047. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  1048. package/lib/withClassWrapper.d.ts +71 -68
  1049. package/package.json +2 -5
package/README.md CHANGED
@@ -45,6 +45,63 @@ Upgrade.setSpecificityLevel(1);
45
45
 
46
46
  Специфичность должна устанавливаться в коде раньше импорта любых компонентов из библиотеки.
47
47
 
48
+ ### StrictMode
49
+
50
+ Начиная с версии 3.10.0 (?) библиотека поддерживает работу в StrictMode.
51
+
52
+ Некоторым компонентам библиотеки необходимо иметь доступ до корневой DOM-ноды своих
53
+ children. Ранее для этого использовался метод findDomNode, который в StrictMode запрещён.
54
+ Теперь получение DOM-ноды реализовано в библиотеке через ref, из-за чего появились некоторые
55
+ требования к компонентам, передаваемым в Hint, Tooltip, Popup или Tab:
56
+
57
+ - при передаче функциональных компонентов, они должны использовать `React.ForwardRef`;
58
+
59
+ ```js static
60
+ import { Hint } from '@skbkontur/react-ui';
61
+
62
+ const CustomFunctionComponent = React.forwardRef(
63
+ (props, ref) => <div ref={ref}>children text</div>
64
+ );
65
+
66
+ export const withFunctionChildren = () => (
67
+ <React.StrictMode>
68
+ <Hint pos="top" text="Something will never be changed" manual opened>
69
+ <CustomFunctionComponent />
70
+ </Hint>
71
+ </React.StrictMode>
72
+ );
73
+ ```
74
+
75
+ - при передаче классовых компонентов, их инстанс должен реализовывать метод `getRootNode`, возвращающий DOM-ноду.
76
+
77
+ ```js static
78
+ import { Hint } from '@skbkontur/react-ui';
79
+
80
+ class CustomClassComponent extends React.Component {
81
+ rootNode = React.createRef();
82
+
83
+ render() {
84
+ return <div ref={this.rootNode}>children text</div>;
85
+ }
86
+
87
+ getRootNode() {
88
+ return this.rootNode.current;
89
+ }
90
+ }
91
+
92
+ export const withClassChildren = () => (
93
+ <React.StrictMode>
94
+ <Hint pos="top" text="Something will never be changed" manual opened>
95
+ <CustomClassComponent />
96
+ </Hint>
97
+ </React.StrictMode>
98
+ );
99
+ ```
100
+
101
+ В случае несоблюдения требования, будет использоваться старый метод findDomNode, который не совместим с StrictMode.
102
+
103
+ Подробнее в [пулл-реквесте](https://github.com/skbkontur/retail-ui/pull/2518)
104
+
48
105
  ## FAQ
49
106
 
50
107
  ### Отключение анимаций во время тестирования
@@ -1,112 +1,113 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { InputProps } from '../Input';
4
- import { Nullable, Override } from '../../typings/utility-types';
5
- import { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
6
- declare function renderItem(item: any): any;
7
- export interface AutocompleteProps extends CommonProps, Override<InputProps, {
8
- /** Функция отрисовки элемента меню */
9
- renderItem: (item: string) => React.ReactNode;
10
- /** Промис, резолвящий элементы меню */
11
- source?: string[] | ((patter: string) => Promise<string[]>);
12
- /** Отключает использование портала */
13
- disablePortal: boolean;
14
- /** Отрисовка тени у выпадающего меню */
15
- hasShadow: boolean;
16
- /** Выравнивание выпадающего меню */
17
- menuAlign: 'left' | 'right';
18
- /** Максимальная высота меню */
19
- menuMaxHeight: number | string;
20
- /** Ширина меню */
21
- menuWidth?: number | string;
22
- /** Отключить скролл окна, когда меню открыто */
23
- preventWindowScroll: boolean;
24
- /** Вызывается при изменении `value` */
25
- onValueChange: (value: string) => void;
26
- /** onBlur */
27
- onBlur?: () => void;
28
- /** Размер инпута */
29
- size: InputProps['size'];
30
- /** value */
31
- value: string;
32
- }> {
33
- }
34
- export interface AutocompleteState {
35
- items: Nullable<string[]>;
36
- selected: number;
37
- focused: boolean;
38
- }
39
- /**
40
- * Стандартный инпут с подсказками.
41
- *
42
- * Все свойства передаются во внутренний *Input*.
43
- */
44
- export declare class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {
45
- static __KONTUR_REACT_UI__: string;
46
- static propTypes: {
47
- /**
48
- * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент
49
- * — *item*.
50
- */
51
- renderItem: PropTypes.Requireable<(...args: any[]) => any>;
52
- /**
53
- * Если передан массив, то совпадения ищутся по этому массиву.
54
- *
55
- * Если передается функция, то она должна возвращать thenable, который
56
- * резолвится уже отфильтрованным массивом. Возвращенный thenable может
57
- * иметь метод cancel, который будет вызван при отмене поиска (пользователь
58
- * изменил строку поиска, автокомплит потерял фокус).
59
- * ```
60
- * function(pattern) {
61
- * return service.findAll(pattern);
62
- * }
63
- * ```
64
- */
65
- source: PropTypes.Requireable<any[] | ((...args: any[]) => any)>;
66
- };
67
- static defaultProps: {
68
- renderItem: typeof renderItem;
69
- size: string;
70
- disablePortal: boolean;
71
- hasShadow: boolean;
72
- menuMaxHeight: number;
73
- menuAlign: string;
74
- preventWindowScroll: boolean;
75
- };
76
- state: AutocompleteState;
77
- private theme;
78
- private opened;
79
- private input;
80
- private menu;
81
- private rootSpan;
82
- private requestId;
83
- private getProps;
84
- /**
85
- * @public
86
- */
87
- focus(): void;
88
- /**
89
- * @public
90
- */
91
- blur(): void;
92
- componentDidUpdate(prevProps: AutocompleteProps): void;
93
- render(): JSX.Element;
94
- renderMain: (props: CommonWrapperRestProps<AutocompleteProps>) => JSX.Element;
95
- private renderMenu;
96
- private getInputWidth;
97
- private handleValueChange;
98
- private handleFocus;
99
- private handleBlur;
100
- private handleClickOutside;
101
- private handleKeyDown;
102
- private handleMenuItemClick;
103
- private getAnchor;
104
- private handleItemClick;
105
- private choose;
106
- private updateItems;
107
- private fireChange;
108
- private refInput;
109
- private refMenu;
110
- private refRootSpan;
111
- }
112
- export {};
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import { InputProps } from '../Input';
4
+ import { Nullable, Override } from '../../typings/utility-types';
5
+ import { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
6
+ declare function renderItem(item: any): any;
7
+ export interface AutocompleteProps extends CommonProps, Override<InputProps, {
8
+ /** Функция отрисовки элемента меню */
9
+ renderItem: (item: string) => React.ReactNode;
10
+ /** Промис, резолвящий элементы меню */
11
+ source?: string[] | ((patter: string) => Promise<string[]>);
12
+ /** Отключает использование портала */
13
+ disablePortal: boolean;
14
+ /** Отрисовка тени у выпадающего меню */
15
+ hasShadow: boolean;
16
+ /** Выравнивание выпадающего меню */
17
+ menuAlign: 'left' | 'right';
18
+ /** Максимальная высота меню */
19
+ menuMaxHeight: number | string;
20
+ /** Ширина меню */
21
+ menuWidth?: number | string;
22
+ /** Отключить скролл окна, когда меню открыто */
23
+ preventWindowScroll: boolean;
24
+ /** Вызывается при изменении `value` */
25
+ onValueChange: (value: string) => void;
26
+ /** onBlur */
27
+ onBlur?: () => void;
28
+ /** Размер инпута */
29
+ size: InputProps['size'];
30
+ /** value */
31
+ value: string;
32
+ }> {
33
+ }
34
+ export interface AutocompleteState {
35
+ items: Nullable<string[]>;
36
+ selected: number;
37
+ focused: boolean;
38
+ }
39
+ /**
40
+ * Стандартный инпут с подсказками.
41
+ *
42
+ * Все свойства передаются во внутренний *Input*.
43
+ */
44
+ export declare class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {
45
+ static __KONTUR_REACT_UI__: string;
46
+ static propTypes: {
47
+ /**
48
+ * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент
49
+ * — *item*.
50
+ */
51
+ renderItem: PropTypes.Requireable<(...args: any[]) => any>;
52
+ /**
53
+ * Если передан массив, то совпадения ищутся по этому массиву.
54
+ *
55
+ * Если передается функция, то она должна возвращать thenable, который
56
+ * резолвится уже отфильтрованным массивом. Возвращенный thenable может
57
+ * иметь метод cancel, который будет вызван при отмене поиска (пользователь
58
+ * изменил строку поиска, автокомплит потерял фокус).
59
+ * ```
60
+ * function(pattern) {
61
+ * return service.findAll(pattern);
62
+ * }
63
+ * ```
64
+ */
65
+ source: PropTypes.Requireable<any[] | ((...args: any[]) => any)>;
66
+ };
67
+ static defaultProps: {
68
+ renderItem: typeof renderItem;
69
+ size: string;
70
+ disablePortal: boolean;
71
+ hasShadow: boolean;
72
+ menuMaxHeight: number;
73
+ menuAlign: string;
74
+ preventWindowScroll: boolean;
75
+ };
76
+ state: AutocompleteState;
77
+ private theme;
78
+ private opened;
79
+ private input;
80
+ private menu;
81
+ private rootSpan;
82
+ private requestId;
83
+ private getProps;
84
+ private setRootNode;
85
+ /**
86
+ * @public
87
+ */
88
+ focus(): void;
89
+ /**
90
+ * @public
91
+ */
92
+ blur(): void;
93
+ componentDidUpdate(prevProps: AutocompleteProps): void;
94
+ render(): JSX.Element;
95
+ renderMain: (props: CommonWrapperRestProps<AutocompleteProps>) => JSX.Element;
96
+ private renderMenu;
97
+ private getInputWidth;
98
+ private handleValueChange;
99
+ private handleFocus;
100
+ private handleBlur;
101
+ private handleClickOutside;
102
+ private handleKeyDown;
103
+ private handleMenuItemClick;
104
+ private getAnchor;
105
+ private handleItemClick;
106
+ private choose;
107
+ private updateItems;
108
+ private fireChange;
109
+ private refInput;
110
+ private refMenu;
111
+ private refRootSpan;
112
+ }
113
+ export {};
@@ -1,6 +1,5 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.Autocomplete = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _propTypes = _interopRequireDefault(require("prop-types"));
3
- var _reactDom = require("react-dom");
4
3
 
5
4
  var _ThemeContext = require("../../lib/theming/ThemeContext");
6
5
 
@@ -14,6 +13,7 @@ var _createPropsGetter = require("../../lib/createPropsGetter");
14
13
 
15
14
  var _fixClickFocusIE = require("../../lib/events/fixClickFocusIE");
16
15
  var _CommonWrapper = require("../../internal/CommonWrapper");
16
+ var _rootNode = require("../../lib/rootNode");var _class, _class2, _temp;
17
17
 
18
18
  function match(pattern, items) {
19
19
  if (!pattern || !items) {
@@ -72,7 +72,8 @@ function renderItem(item) {
72
72
  *
73
73
  * Все свойства передаются во внутренний *Input*.
74
74
  */var
75
- Autocomplete = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(Autocomplete, _React$Component);function Autocomplete() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
75
+
76
+ Autocomplete = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(Autocomplete, _React$Component);function Autocomplete() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
76
77
 
77
78
 
78
79
 
@@ -123,6 +124,11 @@ Autocomplete = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.def
123
124
  requestId = 0;_this.
124
125
 
125
126
  getProps = (0, _createPropsGetter.createPropsGetter)(Autocomplete.defaultProps);_this.
127
+ setRootNode = void 0;_this.
128
+
129
+
130
+
131
+
126
132
 
127
133
 
128
134
 
@@ -310,7 +316,7 @@ Autocomplete = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.def
310
316
 
311
317
 
312
318
  getAnchor = function () {
313
- return (0, _reactDom.findDOMNode)((0, _assertThisInitialized2.default)(_this));
319
+ return (0, _rootNode.getRootNode)((0, _assertThisInitialized2.default)(_this));
314
320
  };_this.
315
321
 
316
322
 
@@ -386,7 +392,7 @@ Autocomplete = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.def
386
392
  * @public
387
393
  */_proto.focus = function focus() {if (this.input) {this.input.focus();}} /**
388
394
  * @public
389
- */;_proto.blur = function blur() {this.handleBlur();};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (prevProps.value !== this.props.value) {this.updateItems(this.props.value || '');}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, _this2.props, _this2.renderMain);});};_proto.renderMenu = function renderMenu() {var _this3 = this;var items = this.state.items;var menuProps = { ref: this.refMenu, maxHeight: this.props.menuMaxHeight, hasShadow: this.props.hasShadow, width: this.props.menuWidth || this.props.width && this.getInputWidth(this.rootSpan), preventWindowScroll: this.props.preventWindowScroll };if (!items || items.length === 0) {return null;}return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { offsetY: 1, getParent: this.getAnchor, align: this.props.menuAlign, disablePortal: this.props.disablePortal }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, menuProps, items.map(function (item, i) {return /*#__PURE__*/_react.default.createElement(_MenuItem.MenuItem, { onClick: _this3.handleMenuItemClick(i), key: i }, _this3.getProps().renderItem(item));})));};_proto.handleMenuItemClick = function handleMenuItemClick(i) {var _this4 = this;return function (event) {return _this4.handleItemClick(event, i);};};_proto.handleItemClick = function handleItemClick(event, index) {if (event.button) {return;}event.preventDefault();this.choose(index);};_proto.choose = function choose(index) {if (!this.state.items) {return;}var value = this.state.items[index];this.opened = false;this.setState({ selected: -1, items: null });this.fireChange(value);this.blur();};_proto.updateItems = function updateItems(value) {var _this5 = this;if (!this.opened) {return;}var pattern = value.trim();var source = this.props.source;if (!source) {return;}var promise;var expectingId = this.requestId += 1;if (typeof source === 'function') {promise = source(pattern);} else {promise = match(pattern, source);}promise.then(function (items) {if (_this5.opened && expectingId === _this5.requestId) {_this5.setState({ items: items, selected: -1 });}});};_proto.fireChange = function fireChange(value) {if (this.props.onValueChange) {this.props.onValueChange(value);}};return Autocomplete;}(_react.default.Component);exports.Autocomplete = Autocomplete;Autocomplete.__KONTUR_REACT_UI__ = 'Autocomplete';Autocomplete.propTypes = { /**
395
+ */;_proto.blur = function blur() {this.handleBlur();};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (prevProps.value !== this.props.value) {this.updateItems(this.props.value || '');}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.renderMenu = function renderMenu() {var _this3 = this;var items = this.state.items;var menuProps = { ref: this.refMenu, maxHeight: this.props.menuMaxHeight, hasShadow: this.props.hasShadow, width: this.props.menuWidth || this.props.width && this.getInputWidth(this.rootSpan), preventWindowScroll: this.props.preventWindowScroll };if (!items || items.length === 0) {return null;}return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { offsetY: 1, getParent: this.getAnchor, align: this.props.menuAlign, disablePortal: this.props.disablePortal }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, menuProps, items.map(function (item, i) {return /*#__PURE__*/_react.default.createElement(_MenuItem.MenuItem, { onClick: _this3.handleMenuItemClick(i), key: i }, _this3.getProps().renderItem(item));})));};_proto.handleMenuItemClick = function handleMenuItemClick(i) {var _this4 = this;return function (event) {return _this4.handleItemClick(event, i);};};_proto.handleItemClick = function handleItemClick(event, index) {if (event.button) {return;}event.preventDefault();this.choose(index);};_proto.choose = function choose(index) {if (!this.state.items) {return;}var value = this.state.items[index];this.opened = false;this.setState({ selected: -1, items: null });this.fireChange(value);this.blur();};_proto.updateItems = function updateItems(value) {var _this5 = this;if (!this.opened) {return;}var pattern = value.trim();var source = this.props.source;if (!source) {return;}var promise;var expectingId = this.requestId += 1;if (typeof source === 'function') {promise = source(pattern);} else {promise = match(pattern, source);}promise.then(function (items) {if (_this5.opened && expectingId === _this5.requestId) {_this5.setState({ items: items, selected: -1 });}});};_proto.fireChange = function fireChange(value) {if (this.props.onValueChange) {this.props.onValueChange(value);}};return Autocomplete;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Autocomplete', _class2.propTypes = { /**
390
396
  * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент
391
397
  * — *item*.
392
398
  */renderItem: _propTypes.default.func, /**
@@ -401,4 +407,4 @@ Autocomplete = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.def
401
407
  * return service.findAll(pattern);
402
408
  * }
403
409
  * ```
404
- */source: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.func]) };Autocomplete.defaultProps = { renderItem: renderItem, size: 'small', disablePortal: false, hasShadow: true, menuMaxHeight: 300, menuAlign: 'left', preventWindowScroll: true };
410
+ */source: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.func]) }, _class2.defaultProps = { renderItem: renderItem, size: 'small', disablePortal: false, hasShadow: true, menuMaxHeight: 300, menuAlign: 'left', preventWindowScroll: true }, _temp)) || _class;exports.Autocomplete = Autocomplete;
@@ -1 +1 @@
1
- {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","toLowerCase","filteredItems","filter","item","includes","renderItem","Autocomplete","state","selected","focused","theme","opened","input","menu","rootSpan","requestId","getProps","defaultProps","renderMain","props","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","inputWidth","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","display","refRootSpan","renderMenu","getInputWidth","target","Element","getBoundingClientRect","value","fireChange","event","setState","blur","e","preventDefault","up","down","enter","getAnchor","el","refMenu","span","focus","componentDidUpdate","prevProps","updateItems","render","menuProps","maxHeight","menuWidth","length","map","i","handleMenuItemClick","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array","size"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { findDOMNode } from 'react-dom';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n pattern = pattern.toLowerCase();\n const filteredItems = items.filter((item) => item.toLowerCase().includes(pattern));\n return Promise.resolve(filteredItems);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size: InputProps['size'];\n /** value */\n value: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n}\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n };\n\n private theme!: Theme;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private rootSpan: Nullable<HTMLSpanElement>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <CommonWrapper {...this.props}>{this.renderMain}</CommonWrapper>;\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span style={{ display: 'inline-block', width }} ref={this.refRootSpan}>\n <Input {...inputProps} />\n {this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const menuProps = {\n ref: this.refMenu,\n maxHeight: this.props.menuMaxHeight,\n hasShadow: this.props.hasShadow,\n width: this.props.menuWidth || (this.props.width && this.getInputWidth(this.rootSpan)),\n preventWindowScroll: this.props.preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer\n offsetY={1}\n getParent={this.getAnchor}\n align={this.props.menuAlign}\n disablePortal={this.props.disablePortal}\n >\n <Menu {...menuProps}>\n {items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })}\n </Menu>\n </DropdownContainer>\n );\n }\n\n private getInputWidth = (target: Nullable<HTMLSpanElement>) => {\n if (target instanceof Element) {\n return target.getBoundingClientRect().width;\n }\n\n return 0;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return findDOMNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n const expectingId = (this.requestId += 1);\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n}\n"]}
1
+ {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","toLowerCase","filteredItems","filter","item","includes","renderItem","Autocomplete","rootNode","state","selected","focused","theme","opened","input","menu","rootSpan","requestId","getProps","defaultProps","setRootNode","renderMain","props","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","inputWidth","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","display","refRootSpan","renderMenu","getInputWidth","target","Element","getBoundingClientRect","value","fireChange","event","setState","blur","e","preventDefault","up","down","enter","getAnchor","el","refMenu","span","focus","componentDidUpdate","prevProps","updateItems","render","menuProps","maxHeight","menuWidth","length","map","i","handleMenuItemClick","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array","size"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n pattern = pattern.toLowerCase();\n const filteredItems = items.filter((item) => item.toLowerCase().includes(pattern));\n return Promise.resolve(filteredItems);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size: InputProps['size'];\n /** value */\n value: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n}\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\n@rootNode\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n };\n\n private theme!: Theme;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private rootSpan: Nullable<HTMLSpanElement>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span style={{ display: 'inline-block', width }} ref={this.refRootSpan}>\n <Input {...inputProps} />\n {this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const menuProps = {\n ref: this.refMenu,\n maxHeight: this.props.menuMaxHeight,\n hasShadow: this.props.hasShadow,\n width: this.props.menuWidth || (this.props.width && this.getInputWidth(this.rootSpan)),\n preventWindowScroll: this.props.preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer\n offsetY={1}\n getParent={this.getAnchor}\n align={this.props.menuAlign}\n disablePortal={this.props.disablePortal}\n >\n <Menu {...menuProps}>\n {items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })}\n </Menu>\n </DropdownContainer>\n );\n }\n\n private getInputWidth = (target: Nullable<HTMLSpanElement>) => {\n if (target instanceof Element) {\n return target.getBoundingClientRect().width;\n }\n\n return 0;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return getRootNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n const expectingId = (this.requestId += 1);\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n}\n"]}
@@ -1 +1 @@
1
- export * from './Autocomplete';
1
+ export * from './Autocomplete';