@skbkontur/react-ui 3.9.4 → 3.10.0-fileuploader.3

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 (1329) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +57 -0
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +113 -112
  4. package/cjs/components/Autocomplete/Autocomplete.js +11 -5
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Autocomplete/index.d.ts +1 -1
  7. package/cjs/components/Button/Button.d.ts +161 -160
  8. package/cjs/components/Button/Button.js +9 -4
  9. package/cjs/components/Button/Button.js.map +1 -1
  10. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  11. package/cjs/components/Button/Button.styles.d.ts +68 -67
  12. package/cjs/components/Button/Button.styles.js +38 -28
  13. package/cjs/components/Button/Button.styles.js.map +1 -1
  14. package/cjs/components/Button/Corners.d.ts +6 -6
  15. package/cjs/components/Button/index.d.ts +1 -1
  16. package/cjs/components/Center/Center.d.ts +25 -24
  17. package/cjs/components/Center/Center.js +10 -3
  18. package/cjs/components/Center/Center.js.map +1 -1
  19. package/cjs/components/Center/Center.styles.d.ts +7 -7
  20. package/cjs/components/Center/index.d.ts +1 -1
  21. package/cjs/components/Checkbox/Checkbox.d.ts +96 -95
  22. package/cjs/components/Checkbox/Checkbox.js +10 -4
  23. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  24. package/cjs/components/Checkbox/Checkbox.styles.d.ts +22 -22
  25. package/cjs/components/Checkbox/index.d.ts +1 -1
  26. package/cjs/components/ComboBox/ComboBox.d.ts +184 -182
  27. package/cjs/components/ComboBox/ComboBox.js +100 -70
  28. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  29. package/cjs/components/ComboBox/index.d.ts +1 -1
  30. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  31. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  32. package/cjs/components/CurrencyInput/CurrencyInput.js +7 -4
  33. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  34. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  35. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  36. package/cjs/components/CurrencyInput/CursorHelper.d.ts +10 -10
  37. package/cjs/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  38. package/cjs/components/CurrencyInput/constants.d.ts +2 -2
  39. package/cjs/components/CurrencyInput/index.d.ts +1 -1
  40. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  41. package/cjs/components/CurrencyLabel/index.d.ts +1 -1
  42. package/cjs/components/DateInput/DateFragmentsView.d.ts +20 -20
  43. package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  44. package/cjs/components/DateInput/DateInput.d.ts +107 -106
  45. package/cjs/components/DateInput/DateInput.js +6 -3
  46. package/cjs/components/DateInput/DateInput.js.map +1 -1
  47. package/cjs/components/DateInput/DateInput.styles.d.ts +10 -10
  48. package/cjs/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  49. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  50. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  51. package/cjs/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  52. package/cjs/components/DateInput/helpers/inputNumber.d.ts +5 -5
  53. package/cjs/components/DateInput/index.d.ts +1 -1
  54. package/cjs/components/DatePicker/DatePicker.d.ts +134 -132
  55. package/cjs/components/DatePicker/DatePicker.js +17 -7
  56. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  57. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -3
  58. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  59. package/cjs/components/DatePicker/Picker.d.ts +33 -33
  60. package/cjs/components/DatePicker/Picker.styles.d.ts +5 -5
  61. package/cjs/components/DatePicker/index.d.ts +1 -1
  62. package/cjs/components/DatePicker/locale/index.d.ts +4 -4
  63. package/cjs/components/DatePicker/locale/locales/en.d.ts +2 -2
  64. package/cjs/components/DatePicker/locale/locales/ru.d.ts +2 -2
  65. package/cjs/components/DatePicker/locale/types.d.ts +5 -5
  66. package/cjs/components/Dropdown/Dropdown.d.ts +124 -123
  67. package/cjs/components/Dropdown/Dropdown.js +11 -4
  68. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  69. package/cjs/components/Dropdown/index.d.ts +1 -1
  70. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +65 -64
  71. package/cjs/components/DropdownMenu/DropdownMenu.js +7 -4
  72. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  73. package/cjs/components/DropdownMenu/index.d.ts +1 -1
  74. package/cjs/components/FileUploader/FileUploader.d.ts +42 -0
  75. package/cjs/components/FileUploader/FileUploader.js +283 -0
  76. package/cjs/components/FileUploader/FileUploader.js.map +1 -0
  77. package/cjs/components/FileUploader/FileUploader.md +67 -0
  78. package/cjs/components/FileUploader/FileUploader.styles.d.ts +21 -0
  79. package/cjs/components/FileUploader/FileUploader.styles.js +167 -0
  80. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -0
  81. package/cjs/components/FileUploader/index.d.ts +4 -0
  82. package/cjs/components/FileUploader/index.js +4 -0
  83. package/cjs/components/FileUploader/index.js.map +1 -0
  84. package/cjs/components/FileUploader/locale/index.d.ts +4 -0
  85. package/cjs/components/FileUploader/locale/index.js +11 -0
  86. package/cjs/components/FileUploader/locale/index.js.map +1 -0
  87. package/cjs/components/FileUploader/locale/locales/en.d.ts +2 -0
  88. package/cjs/components/FileUploader/locale/locales/en.js +7 -0
  89. package/cjs/components/FileUploader/locale/locales/en.js.map +1 -0
  90. package/cjs/components/FileUploader/locale/locales/ru.d.ts +2 -0
  91. package/cjs/components/FileUploader/locale/locales/ru.js +7 -0
  92. package/cjs/components/FileUploader/locale/locales/ru.js.map +1 -0
  93. package/cjs/components/FileUploader/locale/types.d.ts +6 -0
  94. package/cjs/components/FileUploader/locale/types.js +1 -0
  95. package/cjs/components/FileUploader/locale/types.js.map +1 -0
  96. package/cjs/components/FxInput/FxInput.d.ts +50 -49
  97. package/cjs/components/FxInput/FxInput.js +9 -2
  98. package/cjs/components/FxInput/FxInput.js.map +1 -1
  99. package/cjs/components/FxInput/index.d.ts +1 -1
  100. package/cjs/components/Gapped/Gapped.d.ts +58 -57
  101. package/cjs/components/Gapped/Gapped.js +8 -5
  102. package/cjs/components/Gapped/Gapped.js.map +1 -1
  103. package/cjs/components/Gapped/index.d.ts +1 -1
  104. package/cjs/components/Group/Group.d.ts +14 -13
  105. package/cjs/components/Group/Group.js +10 -7
  106. package/cjs/components/Group/Group.js.map +1 -1
  107. package/cjs/components/Group/Group.styles.d.ts +8 -8
  108. package/cjs/components/Group/index.d.ts +1 -1
  109. package/cjs/components/Hint/Hint.d.ts +81 -79
  110. package/cjs/components/Hint/Hint.js +7 -20
  111. package/cjs/components/Hint/Hint.js.map +1 -1
  112. package/cjs/components/Hint/Hint.styles.d.ts +5 -5
  113. package/cjs/components/Hint/index.d.ts +1 -1
  114. package/cjs/components/Input/Input.d.ts +157 -154
  115. package/cjs/components/Input/Input.js +13 -5
  116. package/cjs/components/Input/Input.js.map +1 -1
  117. package/cjs/components/Input/Input.styles.d.ts +42 -42
  118. package/cjs/components/Input/index.d.ts +1 -1
  119. package/cjs/components/Kebab/Kebab.d.ts +71 -70
  120. package/cjs/components/Kebab/Kebab.js +8 -5
  121. package/cjs/components/Kebab/Kebab.js.map +1 -1
  122. package/cjs/components/Kebab/Kebab.styles.d.ts +12 -12
  123. package/cjs/components/Kebab/index.d.ts +1 -1
  124. package/cjs/components/Link/Link.d.ts +72 -71
  125. package/cjs/components/Link/Link.js +11 -3
  126. package/cjs/components/Link/Link.js.map +1 -1
  127. package/cjs/components/Link/Link.mixins.d.ts +3 -3
  128. package/cjs/components/Link/Link.styles.d.ts +15 -15
  129. package/cjs/components/Link/index.d.ts +1 -1
  130. package/cjs/components/Loader/Loader.d.ts +100 -99
  131. package/cjs/components/Loader/Loader.js +9 -6
  132. package/cjs/components/Loader/Loader.js.map +1 -1
  133. package/cjs/components/Loader/Loader.styles.d.ts +8 -8
  134. package/cjs/components/Loader/index.d.ts +1 -1
  135. package/cjs/components/MenuHeader/MenuHeader.d.ts +20 -20
  136. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  137. package/cjs/components/MenuHeader/index.d.ts +1 -1
  138. package/cjs/components/MenuItem/MenuItem.d.ts +94 -93
  139. package/cjs/components/MenuItem/MenuItem.js +11 -8
  140. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  141. package/cjs/components/MenuItem/MenuItem.styles.d.ts +13 -13
  142. package/cjs/components/MenuItem/index.d.ts +1 -1
  143. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  144. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  145. package/cjs/components/MenuSeparator/index.d.ts +1 -1
  146. package/cjs/components/Modal/Modal.d.ts +87 -87
  147. package/cjs/components/Modal/Modal.js +1 -1
  148. package/cjs/components/Modal/Modal.js.map +1 -1
  149. package/cjs/components/Modal/Modal.styles.d.ts +26 -26
  150. package/cjs/components/Modal/ModalBody.d.ts +21 -20
  151. package/cjs/components/Modal/ModalBody.js +9 -6
  152. package/cjs/components/Modal/ModalBody.js.map +1 -1
  153. package/cjs/components/Modal/ModalClose.d.ts +2 -2
  154. package/cjs/components/Modal/ModalContext.d.ts +15 -15
  155. package/cjs/components/Modal/ModalFooter.d.ts +21 -21
  156. package/cjs/components/Modal/ModalHeader.d.ts +17 -17
  157. package/cjs/components/Modal/index.d.ts +4 -4
  158. package/cjs/components/Paging/NavigationHelper.d.ts +7 -7
  159. package/cjs/components/Paging/Paging.d.ts +90 -90
  160. package/cjs/components/Paging/Paging.js +6 -5
  161. package/cjs/components/Paging/Paging.js.map +1 -1
  162. package/cjs/components/Paging/Paging.styles.d.ts +16 -16
  163. package/cjs/components/Paging/PagingHelper.d.ts +2 -2
  164. package/cjs/components/Paging/index.d.ts +1 -1
  165. package/cjs/components/Paging/locale/index.d.ts +4 -4
  166. package/cjs/components/Paging/locale/locales/en.d.ts +2 -2
  167. package/cjs/components/Paging/locale/locales/ru.d.ts +2 -2
  168. package/cjs/components/Paging/locale/types.d.ts +3 -3
  169. package/cjs/components/PasswordInput/PasswordInput.d.ts +49 -48
  170. package/cjs/components/PasswordInput/PasswordInput.js +13 -6
  171. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  172. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  173. package/cjs/components/PasswordInput/index.d.ts +1 -1
  174. package/cjs/components/Radio/Radio.d.ts +77 -82
  175. package/cjs/components/Radio/Radio.js +11 -10
  176. package/cjs/components/Radio/Radio.js.map +1 -1
  177. package/cjs/components/Radio/Radio.styles.d.ts +19 -19
  178. package/cjs/components/Radio/index.d.ts +1 -1
  179. package/cjs/components/RadioGroup/Prevent.d.ts +8 -8
  180. package/cjs/components/RadioGroup/RadioGroup.d.ts +117 -131
  181. package/cjs/components/RadioGroup/RadioGroup.js +16 -19
  182. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  183. package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  184. package/cjs/components/RadioGroup/RadioGroupContext.d.ts +10 -0
  185. package/cjs/components/RadioGroup/RadioGroupContext.js +21 -0
  186. package/cjs/components/RadioGroup/RadioGroupContext.js.map +1 -0
  187. package/cjs/components/RadioGroup/index.d.ts +1 -1
  188. package/cjs/components/ScrollContainer/ScrollBar.d.ts +37 -37
  189. package/cjs/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  190. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +84 -83
  191. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  192. package/cjs/components/ScrollContainer/ScrollContainer.js +8 -5
  193. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  194. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +16 -16
  195. package/cjs/components/ScrollContainer/index.d.ts +1 -1
  196. package/cjs/components/Select/Item.d.ts +7 -7
  197. package/cjs/components/Select/Select.d.ts +179 -178
  198. package/cjs/components/Select/Select.js +6 -4
  199. package/cjs/components/Select/Select.js.map +1 -1
  200. package/cjs/components/Select/Select.styles.d.ts +17 -17
  201. package/cjs/components/Select/index.d.ts +1 -1
  202. package/cjs/components/Select/locale/index.d.ts +4 -4
  203. package/cjs/components/Select/locale/locales/en.d.ts +2 -2
  204. package/cjs/components/Select/locale/locales/ru.d.ts +2 -2
  205. package/cjs/components/Select/locale/types.d.ts +4 -4
  206. package/cjs/components/Select/selectTheme.d.ts +3 -3
  207. package/cjs/components/SidePage/SidePage.d.ts +105 -104
  208. package/cjs/components/SidePage/SidePage.js +4 -1
  209. package/cjs/components/SidePage/SidePage.js.map +1 -1
  210. package/cjs/components/SidePage/SidePage.styles.d.ts +37 -37
  211. package/cjs/components/SidePage/SidePageBody.d.ts +19 -18
  212. package/cjs/components/SidePage/SidePageBody.js +9 -6
  213. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  214. package/cjs/components/SidePage/SidePageContainer.d.ts +15 -14
  215. package/cjs/components/SidePage/SidePageContainer.js +9 -6
  216. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  217. package/cjs/components/SidePage/SidePageContext.d.ts +15 -15
  218. package/cjs/components/SidePage/SidePageFooter.d.ts +36 -37
  219. package/cjs/components/SidePage/SidePageFooter.js +11 -12
  220. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  221. package/cjs/components/SidePage/SidePageHeader.d.ts +41 -40
  222. package/cjs/components/SidePage/SidePageHeader.js +6 -3
  223. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  224. package/cjs/components/SidePage/index.d.ts +5 -5
  225. package/cjs/components/Spinner/Spinner.d.ts +56 -47
  226. package/cjs/components/Spinner/Spinner.js +29 -8
  227. package/cjs/components/Spinner/Spinner.js.map +1 -1
  228. package/cjs/components/Spinner/Spinner.md +1 -0
  229. package/cjs/components/Spinner/Spinner.styles.d.ts +12 -11
  230. package/cjs/components/Spinner/Spinner.styles.js +13 -10
  231. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  232. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  233. package/cjs/components/Spinner/index.d.ts +1 -1
  234. package/cjs/components/Spinner/locale/index.d.ts +4 -4
  235. package/cjs/components/Spinner/locale/locales/en.d.ts +2 -2
  236. package/cjs/components/Spinner/locale/locales/ru.d.ts +2 -2
  237. package/cjs/components/Spinner/locale/types.d.ts +4 -4
  238. package/cjs/components/Sticky/Sticky.d.ts +54 -53
  239. package/cjs/components/Sticky/Sticky.js +8 -5
  240. package/cjs/components/Sticky/Sticky.js.map +1 -1
  241. package/cjs/components/Sticky/Sticky.styles.d.ts +7 -7
  242. package/cjs/components/Sticky/index.d.ts +1 -1
  243. package/cjs/components/Switcher/Switcher.d.ts +56 -55
  244. package/cjs/components/Switcher/Switcher.js +6 -3
  245. package/cjs/components/Switcher/Switcher.js.map +1 -1
  246. package/cjs/components/Switcher/Switcher.styles.d.ts +10 -10
  247. package/cjs/components/Switcher/Switcher.styles.js +4 -2
  248. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  249. package/cjs/components/Switcher/index.d.ts +1 -1
  250. package/cjs/components/Switcher/switcherTheme.d.ts +2 -2
  251. package/cjs/components/Tabs/Indicator.d.ts +28 -27
  252. package/cjs/components/Tabs/Indicator.js +16 -15
  253. package/cjs/components/Tabs/Indicator.js.map +1 -1
  254. package/cjs/components/Tabs/Indicator.styles.d.ts +8 -8
  255. package/cjs/components/Tabs/Tab.d.ts +121 -120
  256. package/cjs/components/Tabs/Tab.js +13 -9
  257. package/cjs/components/Tabs/Tab.js.map +1 -1
  258. package/cjs/components/Tabs/Tab.styles.d.ts +27 -27
  259. package/cjs/components/Tabs/Tabs.d.ts +62 -61
  260. package/cjs/components/Tabs/Tabs.js +9 -9
  261. package/cjs/components/Tabs/Tabs.js.map +1 -1
  262. package/cjs/components/Tabs/Tabs.styles.d.ts +5 -5
  263. package/cjs/components/Tabs/TabsContext.d.ts +14 -14
  264. package/cjs/components/Tabs/index.d.ts +2 -2
  265. package/cjs/components/Textarea/Textarea.d.ts +185 -184
  266. package/cjs/components/Textarea/Textarea.js +12 -5
  267. package/cjs/components/Textarea/Textarea.js.map +1 -1
  268. package/cjs/components/Textarea/Textarea.styles.d.ts +15 -15
  269. package/cjs/components/Textarea/TextareaCounter.d.ts +13 -13
  270. package/cjs/components/Textarea/TextareaHelpers.d.ts +11 -11
  271. package/cjs/components/Textarea/index.d.ts +1 -1
  272. package/cjs/components/Toast/Toast.d.ts +58 -55
  273. package/cjs/components/Toast/Toast.js +15 -4
  274. package/cjs/components/Toast/Toast.js.map +1 -1
  275. package/cjs/components/Toast/Toast.styles.d.ts +6 -6
  276. package/cjs/components/Toast/ToastStatic.d.ts +8 -8
  277. package/cjs/components/Toast/ToastView.d.ts +38 -37
  278. package/cjs/components/Toast/ToastView.js +8 -5
  279. package/cjs/components/Toast/ToastView.js.map +1 -1
  280. package/cjs/components/Toast/ToastView.styles.d.ts +8 -8
  281. package/cjs/components/Toast/index.d.ts +1 -1
  282. package/cjs/components/Toggle/Toggle.d.ts +107 -106
  283. package/cjs/components/Toggle/Toggle.js +9 -6
  284. package/cjs/components/Toggle/Toggle.js.map +1 -1
  285. package/cjs/components/Toggle/Toggle.styles.d.ts +30 -30
  286. package/cjs/components/Toggle/index.d.ts +1 -1
  287. package/cjs/components/Token/Token.d.ts +36 -35
  288. package/cjs/components/Token/Token.js +7 -4
  289. package/cjs/components/Token/Token.js.map +1 -1
  290. package/cjs/components/Token/Token.styles.d.ts +29 -29
  291. package/cjs/components/Token/index.d.ts +1 -1
  292. package/cjs/components/TokenInput/TextWidthHelper.d.ts +18 -18
  293. package/cjs/components/TokenInput/TokenInput.d.ts +194 -193
  294. package/cjs/components/TokenInput/TokenInput.js +11 -8
  295. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  296. package/cjs/components/TokenInput/TokenInput.styles.d.ts +15 -15
  297. package/cjs/components/TokenInput/TokenInputMenu.d.ts +18 -18
  298. package/cjs/components/TokenInput/TokenInputReducer.d.ts +25 -25
  299. package/cjs/components/TokenInput/index.d.ts +1 -1
  300. package/cjs/components/TokenInput/locale/index.d.ts +4 -4
  301. package/cjs/components/TokenInput/locale/locales/en.d.ts +2 -2
  302. package/cjs/components/TokenInput/locale/locales/ru.d.ts +2 -2
  303. package/cjs/components/TokenInput/locale/types.d.ts +4 -4
  304. package/cjs/components/Tooltip/Tooltip.d.ts +160 -171
  305. package/cjs/components/Tooltip/Tooltip.js +28 -30
  306. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  307. package/cjs/components/Tooltip/Tooltip.styles.d.ts +5 -5
  308. package/cjs/components/Tooltip/index.d.ts +1 -1
  309. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +65 -64
  310. package/cjs/components/TooltipMenu/TooltipMenu.js +8 -5
  311. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  312. package/cjs/components/TooltipMenu/index.d.ts +1 -1
  313. package/cjs/hooks/useDrop.d.ts +11 -0
  314. package/cjs/hooks/useDrop.js +75 -0
  315. package/cjs/hooks/useDrop.js.map +1 -0
  316. package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -0
  317. package/cjs/hooks/useEffectWithoutInitCall.js +13 -0
  318. package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -0
  319. package/cjs/hooks/useMemoObject.d.ts +1 -0
  320. package/cjs/hooks/useMemoObject.js +5 -0
  321. package/cjs/hooks/useMemoObject.js.map +1 -0
  322. package/cjs/index.d.ts +50 -48
  323. package/cjs/index.js +3 -1
  324. package/cjs/index.js.map +1 -1
  325. package/cjs/internal/BGRuler.d.ts +30 -30
  326. package/cjs/internal/Calendar/Calendar.d.ts +66 -66
  327. package/cjs/internal/Calendar/Calendar.styles.d.ts +5 -5
  328. package/cjs/internal/Calendar/CalendarDateShape.d.ts +14 -14
  329. package/cjs/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  330. package/cjs/internal/Calendar/CalendarUtils.d.ts +19 -19
  331. package/cjs/internal/Calendar/DayCellView.d.ts +13 -13
  332. package/cjs/internal/Calendar/DayCellView.styles.d.ts +7 -7
  333. package/cjs/internal/Calendar/DayCellViewModel.d.ts +8 -8
  334. package/cjs/internal/Calendar/Month.d.ts +33 -33
  335. package/cjs/internal/Calendar/MonthView.d.ts +21 -21
  336. package/cjs/internal/Calendar/MonthView.styles.d.ts +9 -9
  337. package/cjs/internal/Calendar/MonthViewModel.d.ts +14 -14
  338. package/cjs/internal/Calendar/config.d.ts +9 -9
  339. package/cjs/internal/Calendar/index.d.ts +2 -2
  340. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +31 -23
  341. package/cjs/internal/CommonWrapper/CommonWrapper.js +38 -15
  342. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  343. package/cjs/internal/CommonWrapper/index.d.ts +1 -1
  344. package/cjs/internal/ComponentCombinator.d.ts +25 -25
  345. package/cjs/internal/ComponentTable.d.ts +21 -21
  346. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  347. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +3 -2
  348. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  349. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +90 -87
  350. package/cjs/internal/CustomComboBox/ComboBoxView.js +15 -5
  351. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  352. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +136 -135
  353. package/cjs/internal/CustomComboBox/CustomComboBox.js +8 -5
  354. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  355. package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  356. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  357. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  358. package/cjs/internal/CustomComboBox/index.d.ts +2 -2
  359. package/cjs/internal/CustomComboBox/locale/index.d.ts +4 -4
  360. package/cjs/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  361. package/cjs/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  362. package/cjs/internal/CustomComboBox/locale/types.d.ts +5 -5
  363. package/cjs/internal/DateSelect/DateSelect.d.ts +93 -93
  364. package/cjs/internal/DateSelect/DateSelect.js +3 -3
  365. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  366. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  367. package/cjs/internal/DateSelect/index.d.ts +1 -1
  368. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +43 -46
  369. package/cjs/internal/DropdownContainer/DropdownContainer.js +8 -13
  370. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  371. package/cjs/internal/DropdownContainer/index.d.ts +1 -1
  372. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
  373. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +16 -0
  374. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -0
  375. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
  376. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +106 -0
  377. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -0
  378. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +12 -0
  379. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +188 -0
  380. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -0
  381. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
  382. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +68 -0
  383. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -0
  384. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +10 -0
  385. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +30 -0
  386. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
  387. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -0
  388. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +22 -0
  389. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -0
  390. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
  391. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js +16 -0
  392. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js.map +1 -0
  393. package/cjs/internal/FileUploaderControl/fileUtils.d.ts +14 -0
  394. package/cjs/internal/FileUploaderControl/fileUtils.js +26 -0
  395. package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -0
  396. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
  397. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js +4 -0
  398. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js.map +1 -0
  399. package/cjs/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
  400. package/cjs/internal/FileUploaderControl/hooks/useUpload.js +51 -0
  401. package/cjs/internal/FileUploaderControl/hooks/useUpload.js.map +1 -0
  402. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
  403. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js +19 -0
  404. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -0
  405. package/cjs/internal/FocusTrap/FocusTrap.d.ts +17 -16
  406. package/cjs/internal/FocusTrap/FocusTrap.js +12 -9
  407. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  408. package/cjs/internal/FocusTrap/index.d.ts +1 -1
  409. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  410. package/cjs/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  411. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  412. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +12 -4
  413. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  414. package/cjs/internal/IgnoreLayerClick/index.d.ts +1 -1
  415. package/cjs/internal/InputLikeText/HiddenInput.d.ts +13 -13
  416. package/cjs/internal/InputLikeText/InputLikeText.d.ts +73 -72
  417. package/cjs/internal/InputLikeText/InputLikeText.js +10 -3
  418. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  419. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  420. package/cjs/internal/InputLikeText/index.d.ts +1 -1
  421. package/cjs/internal/InternalMenu/InternalMenu.d.ts +63 -64
  422. package/cjs/internal/InternalMenu/InternalMenu.js +16 -22
  423. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  424. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  425. package/cjs/internal/InternalMenu/index.d.ts +1 -1
  426. package/cjs/internal/InternalMenu/isActiveElement.d.ts +3 -3
  427. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  428. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  429. package/cjs/internal/MaskCharLowLine/index.d.ts +1 -1
  430. package/cjs/internal/MaskedInput/MaskedInput.d.ts +40 -40
  431. package/cjs/internal/MaskedInput/MaskedInput.js +3 -3
  432. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  433. package/cjs/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  434. package/cjs/internal/MaskedInput/index.d.ts +1 -1
  435. package/cjs/internal/Menu/Menu.d.ts +63 -62
  436. package/cjs/internal/Menu/Menu.js +9 -6
  437. package/cjs/internal/Menu/Menu.js.map +1 -1
  438. package/cjs/internal/Menu/Menu.styles.d.ts +6 -6
  439. package/cjs/internal/Menu/index.d.ts +1 -1
  440. package/cjs/internal/Menu/isActiveElement.d.ts +3 -3
  441. package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  442. package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  443. package/cjs/internal/NativeDateInput/index.d.ts +1 -1
  444. package/cjs/internal/NativeDateInput/utils.d.ts +7 -7
  445. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  446. package/cjs/internal/Popup/Popup.d.ts +162 -161
  447. package/cjs/internal/Popup/Popup.js +61 -49
  448. package/cjs/internal/Popup/Popup.js.map +1 -1
  449. package/cjs/internal/Popup/Popup.styles.d.ts +16 -16
  450. package/cjs/internal/Popup/PopupHelper.d.ts +26 -26
  451. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  452. package/cjs/internal/Popup/PopupPin.d.ts +56 -56
  453. package/cjs/internal/Popup/PopupPin.styles.d.ts +3 -3
  454. package/cjs/internal/Popup/index.d.ts +1 -1
  455. package/cjs/internal/Popup/types.d.ts +1 -0
  456. package/cjs/internal/Popup/types.js +1 -0
  457. package/cjs/internal/Popup/types.js.map +1 -0
  458. package/cjs/internal/PopupMenu/PopupMenu.d.ts +85 -84
  459. package/cjs/internal/PopupMenu/PopupMenu.js +23 -6
  460. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  461. package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  462. package/cjs/internal/PopupMenu/index.d.ts +1 -1
  463. package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
  464. package/cjs/internal/PopupMenu/validatePositions.js +2 -4
  465. package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
  466. package/cjs/internal/RenderContainer/RenderContainer.d.ts +16 -16
  467. package/cjs/internal/RenderContainer/RenderContainer.js +2 -1
  468. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  469. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
  470. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
  471. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -3
  472. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  473. package/cjs/internal/RenderContainer/index.d.ts +1 -1
  474. package/cjs/internal/RenderLayer/RenderLayer.d.ts +29 -27
  475. package/cjs/internal/RenderLayer/RenderLayer.js +13 -7
  476. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  477. package/cjs/internal/RenderLayer/index.d.ts +1 -1
  478. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  479. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  480. package/cjs/internal/ResizeDetector/index.d.ts +1 -1
  481. package/cjs/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
  482. package/cjs/internal/TextWidthHelper/TextWidthHelper.js +34 -0
  483. package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -0
  484. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
  485. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js +23 -0
  486. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -0
  487. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  488. package/cjs/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  489. package/cjs/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  490. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  491. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  492. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  493. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  494. package/cjs/internal/ThemePlayground/Playground.d.ts +32 -31
  495. package/cjs/internal/ThemePlayground/Playground.js +11 -1
  496. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  497. package/cjs/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  498. package/cjs/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  499. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  500. package/cjs/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  501. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  502. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  503. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  504. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  505. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  506. package/cjs/internal/ThemePlayground/VariableValue.d.ts +45 -45
  507. package/cjs/internal/ThemePlayground/constants.d.ts +18 -18
  508. package/cjs/internal/ThemePlayground/darkTheme.d.ts +270 -255
  509. package/cjs/internal/ThemePlayground/darkTheme.js +25 -1
  510. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  511. package/cjs/internal/ThemePlayground/helpers.d.ts +2 -2
  512. package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  513. package/cjs/internal/ThemeShowcase/ThemeShowcase.js +20 -19
  514. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  515. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  516. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  517. package/cjs/internal/ZIndex/ZIndex.d.ts +36 -34
  518. package/cjs/internal/ZIndex/ZIndex.js +45 -34
  519. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  520. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  521. package/cjs/internal/ZIndex/index.d.ts +1 -1
  522. package/cjs/internal/icons/16px/icon.styles.d.ts +4 -4
  523. package/cjs/internal/icons/16px/index.d.ts +25 -21
  524. package/cjs/internal/icons/16px/index.js +151 -52
  525. package/cjs/internal/icons/16px/index.js.map +1 -1
  526. package/cjs/internal/icons/20px/Icon.d.ts +30 -30
  527. package/cjs/internal/icons/20px/icon.styles.d.ts +4 -4
  528. package/cjs/internal/icons/20px/index.d.ts +2 -2
  529. package/cjs/internal/icons/20px/svg.d.ts +14 -14
  530. package/cjs/internal/icons/CloudIcon.d.ts +1 -1
  531. package/cjs/internal/icons/CrossIcon.d.ts +1 -1
  532. package/cjs/internal/icons/SpinnerIcon.d.ts +26 -23
  533. package/cjs/internal/icons/SpinnerIcon.js +5 -2
  534. package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
  535. package/cjs/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  536. package/cjs/internal/themes/DefaultTheme.d.ts +789 -766
  537. package/cjs/internal/themes/DefaultTheme.js +64 -1
  538. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  539. package/cjs/internal/themes/FlatTheme.d.ts +132 -132
  540. package/cjs/internal/themes/Theme8px.d.ts +271 -271
  541. package/cjs/lib/ConditionalHandler.d.ts +11 -11
  542. package/cjs/lib/LayoutEvents.d.ts +4 -4
  543. package/cjs/lib/ModalStack.d.ts +14 -14
  544. package/cjs/lib/ModalStack.js +16 -17
  545. package/cjs/lib/ModalStack.js.map +1 -1
  546. package/cjs/lib/SSRSafe.d.ts +4 -4
  547. package/cjs/lib/Supports.d.ts +1 -1
  548. package/cjs/lib/Upgrades.d.ts +6 -6
  549. package/cjs/lib/animation/index.d.ts +6 -6
  550. package/cjs/lib/animation/presets.d.ts +18 -18
  551. package/cjs/lib/animation/stepper.d.ts +1 -1
  552. package/cjs/lib/callChildRef/callChildRef.d.ts +3 -0
  553. package/cjs/lib/callChildRef/callChildRef.js +19 -0
  554. package/cjs/lib/callChildRef/callChildRef.js.map +1 -0
  555. package/cjs/lib/client.d.ts +16 -16
  556. package/cjs/lib/createPropsGetter.d.ts +2 -2
  557. package/cjs/lib/currentEnvironment.d.ts +3 -3
  558. package/cjs/lib/date/InternalDate.d.ts +58 -58
  559. package/cjs/lib/date/InternalDateCalculator.d.ts +6 -6
  560. package/cjs/lib/date/InternalDateGetter.d.ts +15 -15
  561. package/cjs/lib/date/InternalDateSetter.d.ts +6 -6
  562. package/cjs/lib/date/InternalDateTransformer.d.ts +12 -12
  563. package/cjs/lib/date/InternalDateValidator.d.ts +12 -12
  564. package/cjs/lib/date/constants.d.ts +28 -28
  565. package/cjs/lib/date/localeSets.d.ts +5 -5
  566. package/cjs/lib/date/types.d.ts +90 -90
  567. package/cjs/lib/dom/getScrollWidth.d.ts +1 -1
  568. package/cjs/lib/dom/tabbableHelpers.d.ts +16 -16
  569. package/cjs/lib/events/MouseDrag.d.ts +58 -58
  570. package/cjs/lib/events/fixClickFocusIE.d.ts +1 -1
  571. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  572. package/cjs/lib/events/keyListener.d.ts +7 -7
  573. package/cjs/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  574. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  575. package/cjs/lib/events/keyboard/extractCode.d.ts +3 -3
  576. package/cjs/lib/events/keyboard/identifiers.d.ts +48 -48
  577. package/cjs/lib/events/stopPropagation.d.ts +1 -1
  578. package/cjs/lib/events/tabListener.d.ts +1 -1
  579. package/cjs/lib/extractKeyboardAction.d.ts +13 -13
  580. package/cjs/lib/filterProps.d.ts +12 -12
  581. package/cjs/lib/forwardRefAndName.d.ts +5 -5
  582. package/cjs/lib/getDisplayName.d.ts +3 -3
  583. package/cjs/lib/listenFocusOutside.d.ts +8 -8
  584. package/cjs/lib/locale/LocaleContext.d.ts +7 -7
  585. package/cjs/lib/locale/LocaleHelper.d.ts +9 -9
  586. package/cjs/lib/locale/constants.d.ts +2 -2
  587. package/cjs/lib/locale/decorators.d.ts +36 -36
  588. package/cjs/lib/locale/index.d.ts +3 -3
  589. package/cjs/lib/locale/types.d.ts +21 -19
  590. package/cjs/lib/locale/types.js +2 -0
  591. package/cjs/lib/locale/types.js.map +1 -1
  592. package/cjs/lib/locale/useLocaleForControl.d.ts +3 -0
  593. package/cjs/lib/locale/useLocaleForControl.js +14 -0
  594. package/cjs/lib/locale/useLocaleForControl.js.map +1 -0
  595. package/cjs/lib/memo.d.ts +1 -1
  596. package/cjs/lib/net/fetch.d.ts +13 -13
  597. package/cjs/lib/polyfillPlaceholder.d.ts +1 -1
  598. package/cjs/lib/reactGetTextContent.d.ts +2 -2
  599. package/cjs/lib/rootNode/getRootNode.d.ts +3 -0
  600. package/cjs/lib/rootNode/getRootNode.js +27 -0
  601. package/cjs/lib/rootNode/getRootNode.js.map +1 -0
  602. package/cjs/lib/rootNode/index.d.ts +2 -0
  603. package/cjs/lib/rootNode/index.js +2 -0
  604. package/cjs/lib/rootNode/index.js.map +1 -0
  605. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +33 -0
  606. package/cjs/lib/rootNode/rootNodeDecorator.js +31 -0
  607. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -0
  608. package/cjs/lib/stringUtils.d.ts +1 -0
  609. package/cjs/lib/stringUtils.js +13 -0
  610. package/cjs/lib/stringUtils.js.map +1 -0
  611. package/cjs/lib/styles/ColorFactory.d.ts +11 -11
  612. package/cjs/lib/styles/ColorFunctions.d.ts +11 -11
  613. package/cjs/lib/styles/ColorHelpers.d.ts +20 -20
  614. package/cjs/lib/styles/ColorKeywords.d.ts +150 -150
  615. package/cjs/lib/styles/ColorObject.d.ts +52 -52
  616. package/cjs/lib/styles/DimensionFunctions.d.ts +1 -1
  617. package/cjs/lib/styles/HoldSelectionColor.d.ts +1 -1
  618. package/cjs/lib/styles/Mixins.d.ts +2 -2
  619. package/cjs/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  620. package/cjs/lib/theming/AnimationKeyframes.d.ts +9 -9
  621. package/cjs/lib/theming/AnimationKeyframes.js +1 -1
  622. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  623. package/cjs/lib/theming/Emotion.d.ts +15 -15
  624. package/cjs/lib/theming/Emotion.js +1 -0
  625. package/cjs/lib/theming/Emotion.js.map +1 -1
  626. package/cjs/lib/theming/Theme.d.ts +3 -3
  627. package/cjs/lib/theming/ThemeContext.d.ts +2 -2
  628. package/cjs/lib/theming/ThemeFactory.d.ts +8 -8
  629. package/cjs/lib/theming/ThemeHelpers.d.ts +11 -11
  630. package/cjs/lib/theming/themes/DefaultTheme.d.ts +1 -1
  631. package/cjs/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  632. package/cjs/lib/theming/themes/FlatTheme.d.ts +1 -1
  633. package/cjs/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  634. package/cjs/lib/theming/useTheme.d.ts +1 -0
  635. package/cjs/lib/theming/useTheme.js +7 -0
  636. package/cjs/lib/theming/useTheme.js.map +1 -0
  637. package/cjs/lib/uidUtils.d.ts +1 -0
  638. package/cjs/lib/uidUtils.js +5 -0
  639. package/cjs/lib/uidUtils.js.map +1 -0
  640. package/cjs/lib/utils.d.ts +64 -28
  641. package/cjs/lib/utils.js +95 -4
  642. package/cjs/lib/utils.js.map +1 -1
  643. package/cjs/lib/withClassWrapper.d.ts +71 -71
  644. package/cjs/typings/html-props.d.ts +123 -0
  645. package/components/Autocomplete/Autocomplete/Autocomplete.js +19 -16
  646. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  647. package/components/Autocomplete/Autocomplete.d.ts +113 -112
  648. package/components/Autocomplete/index.d.ts +1 -1
  649. package/components/Button/Button/Button.js +14 -15
  650. package/components/Button/Button/Button.js.map +1 -1
  651. package/components/Button/Button.d.ts +161 -160
  652. package/components/Button/Button.mixins.d.ts +6 -6
  653. package/components/Button/Button.styles/Button.styles.js +31 -28
  654. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  655. package/components/Button/Button.styles.d.ts +68 -67
  656. package/components/Button/Corners.d.ts +6 -6
  657. package/components/Button/index.d.ts +1 -1
  658. package/components/Center/Center/Center.js +14 -9
  659. package/components/Center/Center/Center.js.map +1 -1
  660. package/components/Center/Center.d.ts +25 -24
  661. package/components/Center/Center.styles.d.ts +7 -7
  662. package/components/Center/index.d.ts +1 -1
  663. package/components/Checkbox/Checkbox/Checkbox.js +16 -10
  664. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  665. package/components/Checkbox/Checkbox.d.ts +96 -95
  666. package/components/Checkbox/Checkbox.styles.d.ts +22 -22
  667. package/components/Checkbox/index.d.ts +1 -1
  668. package/components/ComboBox/ComboBox/ComboBox.js +38 -32
  669. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  670. package/components/ComboBox/ComboBox.d.ts +184 -182
  671. package/components/ComboBox/index.d.ts +1 -1
  672. package/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  673. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +29 -27
  674. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  675. package/components/CurrencyInput/CurrencyInput.d.ts +106 -106
  676. package/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  677. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
  678. package/components/CurrencyInput/CursorHelper.d.ts +10 -10
  679. package/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  680. package/components/CurrencyInput/constants.d.ts +2 -2
  681. package/components/CurrencyInput/index.d.ts +1 -1
  682. package/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
  683. package/components/CurrencyLabel/index.d.ts +1 -1
  684. package/components/DateInput/DateFragmentsView.d.ts +20 -20
  685. package/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  686. package/components/DateInput/DateInput/DateInput.js +7 -3
  687. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  688. package/components/DateInput/DateInput.d.ts +107 -106
  689. package/components/DateInput/DateInput.styles.d.ts +10 -10
  690. package/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  691. package/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  692. package/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  693. package/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  694. package/components/DateInput/helpers/inputNumber.d.ts +5 -5
  695. package/components/DateInput/index.d.ts +1 -1
  696. package/components/DatePicker/DatePicker/DatePicker.js +29 -22
  697. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  698. package/components/DatePicker/DatePicker.d.ts +134 -132
  699. package/components/DatePicker/DatePicker.styles.d.ts +3 -3
  700. package/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  701. package/components/DatePicker/Picker.d.ts +33 -33
  702. package/components/DatePicker/Picker.styles.d.ts +5 -5
  703. package/components/DatePicker/index.d.ts +1 -1
  704. package/components/DatePicker/locale/index.d.ts +4 -4
  705. package/components/DatePicker/locale/locales/en.d.ts +2 -2
  706. package/components/DatePicker/locale/locales/ru.d.ts +2 -2
  707. package/components/DatePicker/locale/types.d.ts +5 -5
  708. package/components/Dropdown/Dropdown/Dropdown.js +15 -13
  709. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  710. package/components/Dropdown/Dropdown.d.ts +124 -123
  711. package/components/Dropdown/index.d.ts +1 -1
  712. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +15 -9
  713. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  714. package/components/DropdownMenu/DropdownMenu.d.ts +65 -64
  715. package/components/DropdownMenu/index.d.ts +1 -1
  716. package/components/FileUploader/FileUploader/FileUploader.js +270 -0
  717. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -0
  718. package/components/FileUploader/FileUploader/package.json +6 -0
  719. package/components/FileUploader/FileUploader.d.ts +42 -0
  720. package/components/FileUploader/FileUploader.md +67 -0
  721. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +62 -0
  722. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -0
  723. package/components/FileUploader/FileUploader.styles/package.json +6 -0
  724. package/components/FileUploader/FileUploader.styles.d.ts +21 -0
  725. package/components/FileUploader/index/index.js +3 -0
  726. package/components/FileUploader/index/index.js.map +1 -0
  727. package/components/FileUploader/index/package.json +6 -0
  728. package/components/FileUploader/index.d.ts +4 -0
  729. package/components/FileUploader/locale/index/index.js +8 -0
  730. package/components/FileUploader/locale/index/index.js.map +1 -0
  731. package/components/FileUploader/locale/index/package.json +6 -0
  732. package/components/FileUploader/locale/index.d.ts +4 -0
  733. package/components/FileUploader/locale/locales/en/en.js +6 -0
  734. package/components/FileUploader/locale/locales/en/en.js.map +1 -0
  735. package/components/FileUploader/locale/locales/en/package.json +6 -0
  736. package/components/FileUploader/locale/locales/en.d.ts +2 -0
  737. package/components/FileUploader/locale/locales/ru/package.json +6 -0
  738. package/components/FileUploader/locale/locales/ru/ru.js +6 -0
  739. package/components/FileUploader/locale/locales/ru/ru.js.map +1 -0
  740. package/components/FileUploader/locale/locales/ru.d.ts +2 -0
  741. package/components/FileUploader/locale/package.json +6 -0
  742. package/components/FileUploader/locale/types/package.json +6 -0
  743. package/components/FileUploader/locale/types/types.js +0 -0
  744. package/components/FileUploader/locale/types/types.js.map +1 -0
  745. package/components/FileUploader/locale/types.d.ts +6 -0
  746. package/components/FileUploader/package.json +6 -0
  747. package/components/FxInput/FxInput/FxInput.js +13 -9
  748. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  749. package/components/FxInput/FxInput.d.ts +50 -49
  750. package/components/FxInput/index.d.ts +1 -1
  751. package/components/Gapped/Gapped/Gapped.js +15 -11
  752. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  753. package/components/Gapped/Gapped.d.ts +58 -57
  754. package/components/Gapped/index.d.ts +1 -1
  755. package/components/Group/Group/Group.js +22 -9
  756. package/components/Group/Group/Group.js.map +1 -1
  757. package/components/Group/Group.d.ts +14 -13
  758. package/components/Group/Group.styles.d.ts +8 -8
  759. package/components/Group/index.d.ts +1 -1
  760. package/components/Hint/Hint/Hint.js +18 -12
  761. package/components/Hint/Hint/Hint.js.map +1 -1
  762. package/components/Hint/Hint.d.ts +81 -79
  763. package/components/Hint/Hint.styles.d.ts +5 -5
  764. package/components/Hint/index.d.ts +1 -1
  765. package/components/Input/Input/Input.js +21 -14
  766. package/components/Input/Input/Input.js.map +1 -1
  767. package/components/Input/Input.d.ts +157 -154
  768. package/components/Input/Input.styles.d.ts +42 -42
  769. package/components/Input/index.d.ts +1 -1
  770. package/components/Kebab/Kebab/Kebab.js +12 -7
  771. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  772. package/components/Kebab/Kebab.d.ts +71 -70
  773. package/components/Kebab/Kebab.styles.d.ts +12 -12
  774. package/components/Kebab/index.d.ts +1 -1
  775. package/components/Link/Link/Link.js +15 -11
  776. package/components/Link/Link/Link.js.map +1 -1
  777. package/components/Link/Link.d.ts +72 -71
  778. package/components/Link/Link.mixins.d.ts +3 -3
  779. package/components/Link/Link.styles.d.ts +15 -15
  780. package/components/Link/index.d.ts +1 -1
  781. package/components/Loader/Loader/Loader.js +16 -11
  782. package/components/Loader/Loader/Loader.js.map +1 -1
  783. package/components/Loader/Loader.d.ts +100 -99
  784. package/components/Loader/Loader.styles.d.ts +8 -8
  785. package/components/Loader/index.d.ts +1 -1
  786. package/components/MenuHeader/MenuHeader.d.ts +20 -20
  787. package/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  788. package/components/MenuHeader/index.d.ts +1 -1
  789. package/components/MenuItem/MenuItem/MenuItem.js +19 -17
  790. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  791. package/components/MenuItem/MenuItem.d.ts +94 -93
  792. package/components/MenuItem/MenuItem.styles.d.ts +13 -13
  793. package/components/MenuItem/index.d.ts +1 -1
  794. package/components/MenuSeparator/MenuSeparator.d.ts +12 -12
  795. package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  796. package/components/MenuSeparator/index.d.ts +1 -1
  797. package/components/Modal/Modal/Modal.js +1 -1
  798. package/components/Modal/Modal/Modal.js.map +1 -1
  799. package/components/Modal/Modal.d.ts +87 -87
  800. package/components/Modal/Modal.styles.d.ts +26 -26
  801. package/components/Modal/ModalBody/ModalBody.js +16 -10
  802. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  803. package/components/Modal/ModalBody.d.ts +21 -20
  804. package/components/Modal/ModalClose.d.ts +2 -2
  805. package/components/Modal/ModalContext.d.ts +15 -15
  806. package/components/Modal/ModalFooter.d.ts +21 -21
  807. package/components/Modal/ModalHeader.d.ts +17 -17
  808. package/components/Modal/index.d.ts +4 -4
  809. package/components/Paging/NavigationHelper.d.ts +7 -7
  810. package/components/Paging/Paging/Paging.js +17 -14
  811. package/components/Paging/Paging/Paging.js.map +1 -1
  812. package/components/Paging/Paging.d.ts +90 -90
  813. package/components/Paging/Paging.styles.d.ts +16 -16
  814. package/components/Paging/PagingHelper.d.ts +2 -2
  815. package/components/Paging/index.d.ts +1 -1
  816. package/components/Paging/locale/index.d.ts +4 -4
  817. package/components/Paging/locale/locales/en.d.ts +2 -2
  818. package/components/Paging/locale/locales/ru.d.ts +2 -2
  819. package/components/Paging/locale/types.d.ts +3 -3
  820. package/components/PasswordInput/PasswordInput/PasswordInput.js +18 -14
  821. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  822. package/components/PasswordInput/PasswordInput.d.ts +49 -48
  823. package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  824. package/components/PasswordInput/index.d.ts +1 -1
  825. package/components/Radio/Radio/Radio.js +17 -19
  826. package/components/Radio/Radio/Radio.js.map +1 -1
  827. package/components/Radio/Radio.d.ts +77 -82
  828. package/components/Radio/Radio.styles.d.ts +19 -19
  829. package/components/Radio/index.d.ts +1 -1
  830. package/components/RadioGroup/Prevent.d.ts +8 -8
  831. package/components/RadioGroup/RadioGroup/RadioGroup.js +35 -38
  832. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  833. package/components/RadioGroup/RadioGroup.d.ts +117 -131
  834. package/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  835. package/components/RadioGroup/RadioGroupContext/RadioGroupContext.js +12 -0
  836. package/components/RadioGroup/RadioGroupContext/RadioGroupContext.js.map +1 -0
  837. package/components/RadioGroup/RadioGroupContext/package.json +6 -0
  838. package/components/RadioGroup/RadioGroupContext.d.ts +10 -0
  839. package/components/RadioGroup/index.d.ts +1 -1
  840. package/components/ScrollContainer/ScrollBar.d.ts +37 -37
  841. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +13 -8
  842. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  843. package/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  844. package/components/ScrollContainer/ScrollContainer.d.ts +84 -83
  845. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  846. package/components/ScrollContainer/ScrollContainer.styles.d.ts +16 -16
  847. package/components/ScrollContainer/index.d.ts +1 -1
  848. package/components/Select/Item.d.ts +7 -7
  849. package/components/Select/Select/Select.js +8 -5
  850. package/components/Select/Select/Select.js.map +1 -1
  851. package/components/Select/Select.d.ts +179 -178
  852. package/components/Select/Select.styles.d.ts +17 -17
  853. package/components/Select/index.d.ts +1 -1
  854. package/components/Select/locale/index.d.ts +4 -4
  855. package/components/Select/locale/locales/en.d.ts +2 -2
  856. package/components/Select/locale/locales/ru.d.ts +2 -2
  857. package/components/Select/locale/types.d.ts +4 -4
  858. package/components/Select/selectTheme.d.ts +3 -3
  859. package/components/SidePage/SidePage/SidePage.js +6 -3
  860. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  861. package/components/SidePage/SidePage.d.ts +105 -104
  862. package/components/SidePage/SidePage.styles.d.ts +37 -37
  863. package/components/SidePage/SidePageBody/SidePageBody.js +16 -10
  864. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  865. package/components/SidePage/SidePageBody.d.ts +19 -18
  866. package/components/SidePage/SidePageContainer/SidePageContainer.js +16 -9
  867. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  868. package/components/SidePage/SidePageContainer.d.ts +15 -14
  869. package/components/SidePage/SidePageContext.d.ts +15 -15
  870. package/components/SidePage/SidePageFooter/SidePageFooter.js +22 -19
  871. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  872. package/components/SidePage/SidePageFooter.d.ts +36 -37
  873. package/components/SidePage/SidePageHeader/SidePageHeader.js +15 -10
  874. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  875. package/components/SidePage/SidePageHeader.d.ts +41 -40
  876. package/components/SidePage/index.d.ts +5 -5
  877. package/components/Spinner/Spinner/Spinner.js +14 -6
  878. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  879. package/components/Spinner/Spinner.d.ts +56 -47
  880. package/components/Spinner/Spinner.md +1 -0
  881. package/components/Spinner/Spinner.styles/Spinner.styles.js +12 -9
  882. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  883. package/components/Spinner/Spinner.styles.d.ts +12 -11
  884. package/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  885. package/components/Spinner/index.d.ts +1 -1
  886. package/components/Spinner/locale/index.d.ts +4 -4
  887. package/components/Spinner/locale/locales/en.d.ts +2 -2
  888. package/components/Spinner/locale/locales/ru.d.ts +2 -2
  889. package/components/Spinner/locale/types.d.ts +4 -4
  890. package/components/Sticky/Sticky/Sticky.js +13 -8
  891. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  892. package/components/Sticky/Sticky.d.ts +54 -53
  893. package/components/Sticky/Sticky.styles.d.ts +7 -7
  894. package/components/Sticky/index.d.ts +1 -1
  895. package/components/Switcher/Switcher/Switcher.js +11 -6
  896. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  897. package/components/Switcher/Switcher.d.ts +56 -55
  898. package/components/Switcher/Switcher.styles/Switcher.styles.js +3 -1
  899. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  900. package/components/Switcher/Switcher.styles.d.ts +10 -10
  901. package/components/Switcher/index.d.ts +1 -1
  902. package/components/Switcher/switcherTheme.d.ts +2 -2
  903. package/components/Tabs/Indicator/Indicator.js +16 -14
  904. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  905. package/components/Tabs/Indicator.d.ts +28 -27
  906. package/components/Tabs/Indicator.styles.d.ts +8 -8
  907. package/components/Tabs/Tab/Tab.js +31 -34
  908. package/components/Tabs/Tab/Tab.js.map +1 -1
  909. package/components/Tabs/Tab.d.ts +121 -120
  910. package/components/Tabs/Tab.styles.d.ts +27 -27
  911. package/components/Tabs/Tabs/Tabs.js +20 -20
  912. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  913. package/components/Tabs/Tabs.d.ts +62 -61
  914. package/components/Tabs/Tabs.styles.d.ts +5 -5
  915. package/components/Tabs/TabsContext.d.ts +14 -14
  916. package/components/Tabs/index.d.ts +2 -2
  917. package/components/Textarea/Textarea/Textarea.js +21 -17
  918. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  919. package/components/Textarea/Textarea.d.ts +185 -184
  920. package/components/Textarea/Textarea.styles.d.ts +15 -15
  921. package/components/Textarea/TextareaCounter.d.ts +13 -13
  922. package/components/Textarea/TextareaHelpers.d.ts +11 -11
  923. package/components/Textarea/index.d.ts +1 -1
  924. package/components/Toast/Toast/Toast.js +29 -14
  925. package/components/Toast/Toast/Toast.js.map +1 -1
  926. package/components/Toast/Toast.d.ts +58 -55
  927. package/components/Toast/Toast.styles.d.ts +6 -6
  928. package/components/Toast/ToastStatic.d.ts +8 -8
  929. package/components/Toast/ToastView/ToastView.js +10 -5
  930. package/components/Toast/ToastView/ToastView.js.map +1 -1
  931. package/components/Toast/ToastView.d.ts +38 -37
  932. package/components/Toast/ToastView.styles.d.ts +8 -8
  933. package/components/Toast/index.d.ts +1 -1
  934. package/components/Toggle/Toggle/Toggle.js +16 -11
  935. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  936. package/components/Toggle/Toggle.d.ts +107 -106
  937. package/components/Toggle/Toggle.styles.d.ts +30 -30
  938. package/components/Toggle/index.d.ts +1 -1
  939. package/components/Token/Token/Token.js +11 -4
  940. package/components/Token/Token/Token.js.map +1 -1
  941. package/components/Token/Token.d.ts +36 -35
  942. package/components/Token/Token.styles.d.ts +29 -29
  943. package/components/Token/index.d.ts +1 -1
  944. package/components/TokenInput/TextWidthHelper.d.ts +18 -18
  945. package/components/TokenInput/TokenInput/TokenInput.js +12 -6
  946. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  947. package/components/TokenInput/TokenInput.d.ts +194 -193
  948. package/components/TokenInput/TokenInput.styles.d.ts +15 -15
  949. package/components/TokenInput/TokenInputMenu.d.ts +18 -18
  950. package/components/TokenInput/TokenInputReducer.d.ts +25 -25
  951. package/components/TokenInput/index.d.ts +1 -1
  952. package/components/TokenInput/locale/index.d.ts +4 -4
  953. package/components/TokenInput/locale/locales/en.d.ts +2 -2
  954. package/components/TokenInput/locale/locales/ru.d.ts +2 -2
  955. package/components/TokenInput/locale/types.d.ts +4 -4
  956. package/components/Tooltip/Tooltip/Tooltip.js +26 -17
  957. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  958. package/components/Tooltip/Tooltip.d.ts +160 -171
  959. package/components/Tooltip/Tooltip.styles.d.ts +5 -5
  960. package/components/Tooltip/index.d.ts +1 -1
  961. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +23 -17
  962. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  963. package/components/TooltipMenu/TooltipMenu.d.ts +65 -64
  964. package/components/TooltipMenu/index.d.ts +1 -1
  965. package/hooks/useDrop/package.json +6 -0
  966. package/hooks/useDrop/useDrop.js +57 -0
  967. package/hooks/useDrop/useDrop.js.map +1 -0
  968. package/hooks/useDrop.d.ts +11 -0
  969. package/hooks/useEffectWithoutInitCall/package.json +6 -0
  970. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +11 -0
  971. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -0
  972. package/hooks/useEffectWithoutInitCall.d.ts +2 -0
  973. package/hooks/useMemoObject/package.json +6 -0
  974. package/hooks/useMemoObject/useMemoObject.js +6 -0
  975. package/hooks/useMemoObject/useMemoObject.js.map +1 -0
  976. package/hooks/useMemoObject.d.ts +1 -0
  977. package/index.d.ts +50 -48
  978. package/index.js +3 -1
  979. package/index.js.map +1 -1
  980. package/internal/BGRuler.d.ts +30 -30
  981. package/internal/Calendar/Calendar.d.ts +66 -66
  982. package/internal/Calendar/Calendar.styles.d.ts +5 -5
  983. package/internal/Calendar/CalendarDateShape.d.ts +14 -14
  984. package/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  985. package/internal/Calendar/CalendarUtils.d.ts +19 -19
  986. package/internal/Calendar/DayCellView.d.ts +13 -13
  987. package/internal/Calendar/DayCellView.styles.d.ts +7 -7
  988. package/internal/Calendar/DayCellViewModel.d.ts +8 -8
  989. package/internal/Calendar/Month.d.ts +33 -33
  990. package/internal/Calendar/MonthView.d.ts +21 -21
  991. package/internal/Calendar/MonthView.styles.d.ts +9 -9
  992. package/internal/Calendar/MonthViewModel.d.ts +14 -14
  993. package/internal/Calendar/config.d.ts +9 -9
  994. package/internal/Calendar/index.d.ts +2 -2
  995. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +37 -10
  996. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  997. package/internal/CommonWrapper/CommonWrapper.d.ts +31 -23
  998. package/internal/CommonWrapper/index.d.ts +1 -1
  999. package/internal/ComponentCombinator.d.ts +25 -25
  1000. package/internal/ComponentTable.d.ts +21 -21
  1001. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +5 -3
  1002. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  1003. package/internal/CustomComboBox/ComboBoxMenu.d.ts +31 -31
  1004. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +23 -13
  1005. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  1006. package/internal/CustomComboBox/ComboBoxView.d.ts +90 -87
  1007. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +12 -4
  1008. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  1009. package/internal/CustomComboBox/CustomComboBox.d.ts +136 -135
  1010. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  1011. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  1012. package/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  1013. package/internal/CustomComboBox/index.d.ts +2 -2
  1014. package/internal/CustomComboBox/locale/index.d.ts +4 -4
  1015. package/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  1016. package/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  1017. package/internal/CustomComboBox/locale/types.d.ts +5 -5
  1018. package/internal/DateSelect/DateSelect/DateSelect.js +5 -5
  1019. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  1020. package/internal/DateSelect/DateSelect.d.ts +93 -93
  1021. package/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  1022. package/internal/DateSelect/index.d.ts +1 -1
  1023. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +11 -15
  1024. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  1025. package/internal/DropdownContainer/DropdownContainer.d.ts +43 -46
  1026. package/internal/DropdownContainer/index.d.ts +1 -1
  1027. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js +2 -0
  1028. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -0
  1029. package/internal/FileUploaderControl/FileUploaderControlContext/package.json +6 -0
  1030. package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
  1031. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +85 -0
  1032. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -0
  1033. package/internal/FileUploaderControl/FileUploaderControlProvider/package.json +6 -0
  1034. package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
  1035. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +179 -0
  1036. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -0
  1037. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/package.json +6 -0
  1038. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +12 -0
  1039. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +32 -0
  1040. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -0
  1041. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/package.json +6 -0
  1042. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
  1043. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +27 -0
  1044. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
  1045. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/package.json +6 -0
  1046. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +10 -0
  1047. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +14 -0
  1048. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -0
  1049. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/package.json +6 -0
  1050. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -0
  1051. package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js +18 -0
  1052. package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js.map +1 -0
  1053. package/internal/FileUploaderControl/FileUploaderFileValidationResult/package.json +6 -0
  1054. package/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
  1055. package/internal/FileUploaderControl/fileUtils/fileUtils.js +19 -0
  1056. package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -0
  1057. package/internal/FileUploaderControl/fileUtils/package.json +6 -0
  1058. package/internal/FileUploaderControl/fileUtils.d.ts +14 -0
  1059. package/internal/FileUploaderControl/hooks/useControlLocale/package.json +6 -0
  1060. package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js +5 -0
  1061. package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js.map +1 -0
  1062. package/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
  1063. package/internal/FileUploaderControl/hooks/useUpload/package.json +6 -0
  1064. package/internal/FileUploaderControl/hooks/useUpload/useUpload.js +56 -0
  1065. package/internal/FileUploaderControl/hooks/useUpload/useUpload.js.map +1 -0
  1066. package/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
  1067. package/internal/FileUploaderControl/withFileUploaderControlProvider/package.json +6 -0
  1068. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js +16 -0
  1069. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -0
  1070. package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
  1071. package/internal/FocusTrap/FocusTrap/FocusTrap.js +17 -9
  1072. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  1073. package/internal/FocusTrap/FocusTrap.d.ts +17 -16
  1074. package/internal/FocusTrap/index.d.ts +1 -1
  1075. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  1076. package/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  1077. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +13 -7
  1078. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  1079. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  1080. package/internal/IgnoreLayerClick/index.d.ts +1 -1
  1081. package/internal/InputLikeText/HiddenInput.d.ts +13 -13
  1082. package/internal/InputLikeText/InputLikeText/InputLikeText.js +11 -6
  1083. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1084. package/internal/InputLikeText/InputLikeText.d.ts +73 -72
  1085. package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  1086. package/internal/InputLikeText/index.d.ts +1 -1
  1087. package/internal/InternalMenu/InternalMenu/InternalMenu.js +24 -25
  1088. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1089. package/internal/InternalMenu/InternalMenu.d.ts +63 -64
  1090. package/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
  1091. package/internal/InternalMenu/index.d.ts +1 -1
  1092. package/internal/InternalMenu/isActiveElement.d.ts +3 -3
  1093. package/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  1094. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  1095. package/internal/MaskCharLowLine/index.d.ts +1 -1
  1096. package/internal/MaskedInput/MaskedInput/MaskedInput.js +7 -7
  1097. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  1098. package/internal/MaskedInput/MaskedInput.d.ts +40 -40
  1099. package/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  1100. package/internal/MaskedInput/index.d.ts +1 -1
  1101. package/internal/Menu/Menu/Menu.js +11 -8
  1102. package/internal/Menu/Menu/Menu.js.map +1 -1
  1103. package/internal/Menu/Menu.d.ts +63 -62
  1104. package/internal/Menu/Menu.styles.d.ts +6 -6
  1105. package/internal/Menu/index.d.ts +1 -1
  1106. package/internal/Menu/isActiveElement.d.ts +3 -3
  1107. package/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  1108. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  1109. package/internal/NativeDateInput/index.d.ts +1 -1
  1110. package/internal/NativeDateInput/utils.d.ts +7 -7
  1111. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  1112. package/internal/Popup/Popup/Popup.js +82 -70
  1113. package/internal/Popup/Popup/Popup.js.map +1 -1
  1114. package/internal/Popup/Popup.d.ts +162 -161
  1115. package/internal/Popup/Popup.styles.d.ts +16 -16
  1116. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  1117. package/internal/Popup/PopupHelper.d.ts +26 -26
  1118. package/internal/Popup/PopupPin.d.ts +56 -56
  1119. package/internal/Popup/PopupPin.styles.d.ts +3 -3
  1120. package/internal/Popup/index.d.ts +1 -1
  1121. package/internal/Popup/types/package.json +6 -0
  1122. package/internal/Popup/types/types.js +0 -0
  1123. package/internal/Popup/types/types.js.map +1 -0
  1124. package/internal/Popup/types.d.ts +1 -0
  1125. package/internal/PopupMenu/PopupMenu/PopupMenu.js +15 -10
  1126. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1127. package/internal/PopupMenu/PopupMenu.d.ts +85 -84
  1128. package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  1129. package/internal/PopupMenu/index.d.ts +1 -1
  1130. package/internal/PopupMenu/validatePositions/validatePositions.js +2 -2
  1131. package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
  1132. package/internal/PopupMenu/validatePositions.d.ts +2 -2
  1133. package/internal/RenderContainer/RenderContainer/RenderContainer.js +3 -1
  1134. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  1135. package/internal/RenderContainer/RenderContainer.d.ts +16 -16
  1136. package/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
  1137. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  1138. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  1139. package/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
  1140. package/internal/RenderContainer/index.d.ts +1 -1
  1141. package/internal/RenderLayer/RenderLayer/RenderLayer.js +20 -18
  1142. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1143. package/internal/RenderLayer/RenderLayer.d.ts +29 -27
  1144. package/internal/RenderLayer/index.d.ts +1 -1
  1145. package/internal/ResizeDetector/ResizeDetector.d.ts +12 -12
  1146. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +5 -5
  1147. package/internal/ResizeDetector/index.d.ts +1 -1
  1148. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +51 -0
  1149. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -0
  1150. package/internal/TextWidthHelper/TextWidthHelper/package.json +6 -0
  1151. package/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
  1152. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js +14 -0
  1153. package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js.map +1 -0
  1154. package/internal/TextWidthHelper/TextWidthHelper.styles/package.json +6 -0
  1155. package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
  1156. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
  1157. package/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  1158. package/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  1159. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
  1160. package/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
  1161. package/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  1162. package/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  1163. package/internal/ThemePlayground/Playground/Playground.js +11 -1
  1164. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  1165. package/internal/ThemePlayground/Playground.d.ts +32 -31
  1166. package/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  1167. package/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  1168. package/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
  1169. package/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  1170. package/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
  1171. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +51 -51
  1172. package/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
  1173. package/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
  1174. package/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
  1175. package/internal/ThemePlayground/VariableValue.d.ts +45 -45
  1176. package/internal/ThemePlayground/constants.d.ts +18 -18
  1177. package/internal/ThemePlayground/darkTheme/darkTheme.js +26 -1
  1178. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  1179. package/internal/ThemePlayground/darkTheme.d.ts +270 -255
  1180. package/internal/ThemePlayground/helpers.d.ts +2 -2
  1181. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +35 -43
  1182. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  1183. package/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  1184. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +24 -24
  1185. package/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  1186. package/internal/ZIndex/ZIndex/ZIndex.js +20 -8
  1187. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1188. package/internal/ZIndex/ZIndex.d.ts +36 -34
  1189. package/internal/ZIndex/ZIndexStorage.d.ts +18 -18
  1190. package/internal/ZIndex/index.d.ts +1 -1
  1191. package/internal/icons/16px/icon.styles.d.ts +4 -4
  1192. package/internal/icons/16px/index/index.js +125 -51
  1193. package/internal/icons/16px/index/index.js.map +1 -1
  1194. package/internal/icons/16px/index.d.ts +25 -21
  1195. package/internal/icons/20px/Icon.d.ts +30 -30
  1196. package/internal/icons/20px/icon.styles.d.ts +4 -4
  1197. package/internal/icons/20px/index.d.ts +2 -2
  1198. package/internal/icons/20px/svg.d.ts +14 -14
  1199. package/internal/icons/CloudIcon.d.ts +1 -1
  1200. package/internal/icons/CrossIcon.d.ts +1 -1
  1201. package/internal/icons/SpinnerIcon/SpinnerIcon.js +5 -2
  1202. package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
  1203. package/internal/icons/SpinnerIcon.d.ts +26 -23
  1204. package/internal/icons/SpinnerIcon.styles.d.ts +4 -4
  1205. package/internal/themes/DefaultTheme/DefaultTheme.js +67 -0
  1206. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1207. package/internal/themes/DefaultTheme.d.ts +789 -766
  1208. package/internal/themes/FlatTheme.d.ts +132 -132
  1209. package/internal/themes/Theme8px.d.ts +271 -271
  1210. package/lib/ConditionalHandler.d.ts +11 -11
  1211. package/lib/LayoutEvents.d.ts +4 -4
  1212. package/lib/ModalStack/ModalStack.js +9 -13
  1213. package/lib/ModalStack/ModalStack.js.map +1 -1
  1214. package/lib/ModalStack.d.ts +14 -14
  1215. package/lib/SSRSafe.d.ts +4 -4
  1216. package/lib/Supports.d.ts +1 -1
  1217. package/lib/Upgrades.d.ts +6 -6
  1218. package/lib/animation/index.d.ts +6 -6
  1219. package/lib/animation/presets.d.ts +18 -18
  1220. package/lib/animation/stepper.d.ts +1 -1
  1221. package/lib/callChildRef/callChildRef/callChildRef.js +14 -0
  1222. package/lib/callChildRef/callChildRef/callChildRef.js.map +1 -0
  1223. package/lib/callChildRef/callChildRef/package.json +6 -0
  1224. package/lib/callChildRef/callChildRef.d.ts +3 -0
  1225. package/lib/client.d.ts +16 -16
  1226. package/lib/createPropsGetter.d.ts +2 -2
  1227. package/lib/currentEnvironment.d.ts +3 -3
  1228. package/lib/date/InternalDate.d.ts +58 -58
  1229. package/lib/date/InternalDateCalculator.d.ts +6 -6
  1230. package/lib/date/InternalDateGetter.d.ts +15 -15
  1231. package/lib/date/InternalDateSetter.d.ts +6 -6
  1232. package/lib/date/InternalDateTransformer.d.ts +12 -12
  1233. package/lib/date/InternalDateValidator.d.ts +12 -12
  1234. package/lib/date/constants.d.ts +28 -28
  1235. package/lib/date/localeSets.d.ts +5 -5
  1236. package/lib/date/types.d.ts +90 -90
  1237. package/lib/dom/getScrollWidth.d.ts +1 -1
  1238. package/lib/dom/tabbableHelpers.d.ts +16 -16
  1239. package/lib/events/MouseDrag.d.ts +58 -58
  1240. package/lib/events/fixClickFocusIE.d.ts +1 -1
  1241. package/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  1242. package/lib/events/keyListener.d.ts +7 -7
  1243. package/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  1244. package/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
  1245. package/lib/events/keyboard/extractCode.d.ts +3 -3
  1246. package/lib/events/keyboard/identifiers.d.ts +48 -48
  1247. package/lib/events/stopPropagation.d.ts +1 -1
  1248. package/lib/events/tabListener.d.ts +1 -1
  1249. package/lib/extractKeyboardAction.d.ts +13 -13
  1250. package/lib/filterProps.d.ts +12 -12
  1251. package/lib/forwardRefAndName.d.ts +5 -5
  1252. package/lib/getDisplayName.d.ts +3 -3
  1253. package/lib/listenFocusOutside.d.ts +8 -8
  1254. package/lib/locale/LocaleContext.d.ts +7 -7
  1255. package/lib/locale/LocaleHelper.d.ts +9 -9
  1256. package/lib/locale/constants.d.ts +2 -2
  1257. package/lib/locale/decorators.d.ts +36 -36
  1258. package/lib/locale/index.d.ts +3 -3
  1259. package/lib/locale/types/types.js.map +1 -1
  1260. package/lib/locale/types.d.ts +21 -19
  1261. package/lib/locale/useLocaleForControl/package.json +6 -0
  1262. package/lib/locale/useLocaleForControl/useLocaleForControl.js +12 -0
  1263. package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -0
  1264. package/lib/locale/useLocaleForControl.d.ts +3 -0
  1265. package/lib/memo.d.ts +1 -1
  1266. package/lib/net/fetch.d.ts +13 -13
  1267. package/lib/polyfillPlaceholder.d.ts +1 -1
  1268. package/lib/reactGetTextContent.d.ts +2 -2
  1269. package/lib/rootNode/getRootNode/getRootNode.js +25 -0
  1270. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -0
  1271. package/lib/rootNode/getRootNode/package.json +6 -0
  1272. package/lib/rootNode/getRootNode.d.ts +3 -0
  1273. package/lib/rootNode/index/index.js +2 -0
  1274. package/lib/rootNode/index/index.js.map +1 -0
  1275. package/lib/rootNode/index/package.json +6 -0
  1276. package/lib/rootNode/index.d.ts +2 -0
  1277. package/lib/rootNode/package.json +6 -0
  1278. package/lib/rootNode/rootNodeDecorator/package.json +6 -0
  1279. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +37 -0
  1280. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -0
  1281. package/lib/rootNode/rootNodeDecorator.d.ts +33 -0
  1282. package/lib/stringUtils/package.json +6 -0
  1283. package/lib/stringUtils/stringUtils.js +12 -0
  1284. package/lib/stringUtils/stringUtils.js.map +1 -0
  1285. package/lib/stringUtils.d.ts +1 -0
  1286. package/lib/styles/ColorFactory.d.ts +11 -11
  1287. package/lib/styles/ColorFunctions.d.ts +11 -11
  1288. package/lib/styles/ColorHelpers.d.ts +20 -20
  1289. package/lib/styles/ColorKeywords.d.ts +150 -150
  1290. package/lib/styles/ColorObject.d.ts +52 -52
  1291. package/lib/styles/DimensionFunctions.d.ts +1 -1
  1292. package/lib/styles/HoldSelectionColor.d.ts +1 -1
  1293. package/lib/styles/Mixins.d.ts +2 -2
  1294. package/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  1295. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +1 -1
  1296. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  1297. package/lib/theming/AnimationKeyframes.d.ts +9 -9
  1298. package/lib/theming/Emotion/Emotion.js +1 -0
  1299. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1300. package/lib/theming/Emotion.d.ts +15 -15
  1301. package/lib/theming/Theme.d.ts +3 -3
  1302. package/lib/theming/ThemeContext.d.ts +2 -2
  1303. package/lib/theming/ThemeFactory.d.ts +8 -8
  1304. package/lib/theming/ThemeHelpers.d.ts +11 -11
  1305. package/lib/theming/themes/DefaultTheme.d.ts +1 -1
  1306. package/lib/theming/themes/DefaultThemeOld.d.ts +1 -1
  1307. package/lib/theming/themes/FlatTheme.d.ts +1 -1
  1308. package/lib/theming/themes/FlatThemeOld.d.ts +1 -1
  1309. package/lib/theming/useTheme/package.json +6 -0
  1310. package/lib/theming/useTheme/useTheme.js +5 -0
  1311. package/lib/theming/useTheme/useTheme.js.map +1 -0
  1312. package/lib/theming/useTheme.d.ts +1 -0
  1313. package/lib/uidUtils/package.json +6 -0
  1314. package/lib/uidUtils/uidUtils.js +4 -0
  1315. package/lib/uidUtils/uidUtils.js.map +1 -0
  1316. package/lib/uidUtils.d.ts +1 -0
  1317. package/lib/utils/utils.js +95 -1
  1318. package/lib/utils/utils.js.map +1 -1
  1319. package/lib/utils.d.ts +64 -28
  1320. package/lib/withClassWrapper.d.ts +71 -71
  1321. package/package.json +11 -5
  1322. package/typings/html-props.d.ts +123 -0
  1323. package/cjs/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
  1324. package/cjs/internal/PopupMenu/PopupMenuPositions.js +0 -15
  1325. package/cjs/internal/PopupMenu/PopupMenuPositions.js.map +0 -1
  1326. package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js +0 -1
  1327. package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js.map +0 -1
  1328. package/internal/PopupMenu/PopupMenuPositions/package.json +0 -6
  1329. package/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
@@ -1,64 +1,63 @@
1
- import React from 'react';
2
- import { ScrollContainerScrollState } from '../../components/ScrollContainer';
3
- interface MenuProps {
4
- children?: React.ReactNode;
5
- hasShadow?: boolean;
6
- maxHeight?: number | string;
7
- onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;
8
- width?: number | string;
9
- preventWindowScroll?: boolean;
10
- onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
11
- header?: React.ReactNode;
12
- footer?: React.ReactNode;
13
- cyclicSelection?: boolean;
14
- initialSelectedItemIndex?: number;
15
- }
16
- interface MenuState {
17
- highlightedIndex: number;
18
- maxHeight: number | string;
19
- scrollState: ScrollContainerScrollState;
20
- }
21
- export declare class InternalMenu extends React.Component<MenuProps, MenuState> {
22
- static __KONTUR_REACT_UI__: string;
23
- static defaultProps: {
24
- width: string;
25
- maxHeight: number;
26
- hasShadow: boolean;
27
- preventWindowScroll: boolean;
28
- cyclicSelection: boolean;
29
- initialSelectedItemIndex: number;
30
- };
31
- state: MenuState;
32
- private theme;
33
- private scrollContainer;
34
- private highlighted;
35
- private rootElement;
36
- private header;
37
- private footer;
38
- private getProps;
39
- componentDidMount(): void;
40
- componentDidUpdate(prevProps: MenuProps, prevState: MenuState): void;
41
- UNSAFE_componentWillReceiveProps(nextProps: MenuProps): void;
42
- focus(): void;
43
- render(): JSX.Element;
44
- private renderMain;
45
- private renderHeader;
46
- private renderFooter;
47
- private focusOnRootElement;
48
- private shouldRecalculateMaxHeight;
49
- private calculateMaxHeight;
50
- private setInitialSelection;
51
- private refScrollContainer;
52
- private refHighlighted;
53
- private scrollToSelected;
54
- private select;
55
- private highlightItem;
56
- private unhighlight;
57
- private move;
58
- private moveUp;
59
- private moveDown;
60
- private isEmpty;
61
- private handleKeyDown;
62
- private handleScrollStateChange;
63
- }
64
- export {};
1
+ import React from 'react';
2
+ import { ScrollContainerScrollState } from '../../components/ScrollContainer';
3
+ interface MenuProps {
4
+ children?: React.ReactNode;
5
+ hasShadow?: boolean;
6
+ maxHeight?: number | string;
7
+ onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;
8
+ width?: number | string;
9
+ preventWindowScroll?: boolean;
10
+ onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
11
+ header?: React.ReactNode;
12
+ footer?: React.ReactNode;
13
+ cyclicSelection?: boolean;
14
+ initialSelectedItemIndex?: number;
15
+ }
16
+ interface MenuState {
17
+ highlightedIndex: number;
18
+ maxHeight: number | string;
19
+ scrollState: ScrollContainerScrollState;
20
+ }
21
+ export declare class InternalMenu extends React.PureComponent<MenuProps, MenuState> {
22
+ static __KONTUR_REACT_UI__: string;
23
+ static defaultProps: {
24
+ width: string;
25
+ maxHeight: number;
26
+ hasShadow: boolean;
27
+ preventWindowScroll: boolean;
28
+ cyclicSelection: boolean;
29
+ initialSelectedItemIndex: number;
30
+ };
31
+ state: MenuState;
32
+ private theme;
33
+ private scrollContainer;
34
+ private highlighted;
35
+ private setRootNode;
36
+ private header;
37
+ private footer;
38
+ private getProps;
39
+ componentDidMount(): void;
40
+ componentDidUpdate(prevProps: MenuProps, prevState: MenuState): void;
41
+ focus(): void;
42
+ render(): JSX.Element;
43
+ private renderMain;
44
+ private renderHeader;
45
+ private renderFooter;
46
+ private focusOnRootElement;
47
+ private shouldRecalculateMaxHeight;
48
+ private calculateMaxHeight;
49
+ private setInitialSelection;
50
+ private refScrollContainer;
51
+ private refHighlighted;
52
+ private scrollToSelected;
53
+ private select;
54
+ private highlightItem;
55
+ private unhighlight;
56
+ private move;
57
+ private moveUp;
58
+ private moveDown;
59
+ private isEmpty;
60
+ private handleKeyDown;
61
+ private handleScrollStateChange;
62
+ }
63
+ export {};
@@ -1,9 +1,9 @@
1
- import { Theme } from '../../lib/theming/Theme';
2
- export declare const styles: {
3
- root(t: Theme): string;
4
- shadow(t: Theme): string;
5
- header(): string;
6
- footer(): string;
7
- fixedHeader(): string;
8
- fixedFooter(): string;
9
- };
1
+ import { Theme } from '../../lib/theming/Theme';
2
+ export declare const styles: {
3
+ root(t: Theme): string;
4
+ shadow(t: Theme): string;
5
+ header(): string;
6
+ footer(): string;
7
+ fixedHeader(): string;
8
+ fixedFooter(): string;
9
+ };
@@ -1 +1 @@
1
- export * from './InternalMenu';
1
+ export * from './InternalMenu';
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- import { MenuItem, MenuItemProps } from '../../components/MenuItem';
3
- export declare function isActiveElement(element: any): element is React.ComponentElement<MenuItemProps, MenuItem>;
1
+ import React from 'react';
2
+ import { MenuItem, MenuItemProps } from '../../components/MenuItem';
3
+ export declare function isActiveElement(element: any): element is React.ComponentElement<MenuItemProps, MenuItem>;
@@ -1,9 +1,9 @@
1
- /**
2
- * FIGURE SPACE
3
- *
4
- * space equal to tabular width of a font this is equivalent to the digit width of fonts with fixed-width digits
5
- *
6
- * @see http://www.fileformat.info/info/unicode/char/2007/index.htm
7
- */
8
- export declare const MASK_CHAR_EXEMPLAR: string;
9
- export declare const MaskCharLowLine: () => JSX.Element;
1
+ /**
2
+ * FIGURE SPACE
3
+ *
4
+ * space equal to tabular width of a font this is equivalent to the digit width of fonts with fixed-width digits
5
+ *
6
+ * @see http://www.fileformat.info/info/unicode/char/2007/index.htm
7
+ */
8
+ export declare const MASK_CHAR_EXEMPLAR: string;
9
+ export declare const MaskCharLowLine: () => JSX.Element;
@@ -1,3 +1,3 @@
1
- export declare const styles: {
2
- root(): string;
3
- };
1
+ export declare const styles: {
2
+ root(): string;
3
+ };
@@ -1 +1 @@
1
- export * from './MaskCharLowLine';
1
+ export * from './MaskCharLowLine';
@@ -7,13 +7,13 @@ import { ThemeContext } from "../../../lib/theming/ThemeContext";
7
7
  import { MaskCharLowLine } from "../../MaskCharLowLine";
8
8
  import { cx } from "../../../lib/theming/Emotion";
9
9
  import { styles } from "../MaskedInput.styles";
10
- export var MaskedInput = /*#__PURE__*/function (_React$Component) {
11
- _inheritsLoose(MaskedInput, _React$Component);
10
+ export var MaskedInput = /*#__PURE__*/function (_React$PureComponent) {
11
+ _inheritsLoose(MaskedInput, _React$PureComponent);
12
12
 
13
13
  function MaskedInput(_props) {
14
14
  var _this;
15
15
 
16
- _this = _React$Component.call(this, _props) || this;
16
+ _this = _React$PureComponent.call(this, _props) || this;
17
17
  _this.input = null;
18
18
  _this.theme = void 0;
19
19
  _this.reactInputMask = null;
@@ -126,10 +126,10 @@ export var MaskedInput = /*#__PURE__*/function (_React$Component) {
126
126
  }
127
127
  };
128
128
 
129
- _proto.UNSAFE_componentWillReceiveProps = function UNSAFE_componentWillReceiveProps(nextProps) {
130
- if (this.props.value !== nextProps.value) {
129
+ _proto.componentDidUpdate = function componentDidUpdate(prevProps) {
130
+ if (this.props.value !== prevProps.value) {
131
131
  this.setState({
132
- value: nextProps.value ? nextProps.value.toString() : ''
132
+ value: this.props.value ? this.props.value.toString() : ''
133
133
  });
134
134
  }
135
135
  };
@@ -190,7 +190,7 @@ export var MaskedInput = /*#__PURE__*/function (_React$Component) {
190
190
  };
191
191
 
192
192
  return MaskedInput;
193
- }(React.Component);
193
+ }(React.PureComponent);
194
194
  MaskedInput.__KONTUR_REACT_UI__ = 'MaskedInput';
195
195
  MaskedInput.defaultProps = {
196
196
  maskChar: '_'
@@ -1 +1 @@
1
- {"version":3,"sources":["MaskedInput.tsx"],"names":["React","ReactInputMask","ThemeContext","MaskCharLowLine","cx","styles","MaskedInput","props","input","theme","reactInputMask","getValue","value","defaultValue","undefined","toString","refInput","refMaskedInput","handleChange","event","target","state","handleUnexpectedInput","setState","onValueChange","onChange","handleFocus","focused","onFocus","handleBlur","onBlur","preprocess","newState","oldState","userInput","options","visibleMaskChars","Array","mask","length","fill","maskChar","split","forEach","char","index","permanents","includes","emptyValue","join","isMaskVisible","alwaysShowMask","onUnexpectedInput","componentDidMount","forceUpdate","UNSAFE_componentWillReceiveProps","nextProps","render","renderMain","hasLeftIcon","hasRightIcon","maxLength","style","inputProps","leftHelper","textAlign","color","slice","leftClass","inputMaskLeft","rightHelper","map","_char","i","container","inputMask","Component","__KONTUR_REACT_UI__","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactInputMask, { InputState, MaskOptions } from 'react-input-mask';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './MaskedInput.styles';\n\nexport interface MaskedInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n mask: string;\n maskChar: string | null;\n formatChars?: { [key: string]: string };\n alwaysShowMask?: boolean;\n hasLeftIcon?: boolean;\n hasRightIcon?: boolean;\n onUnexpectedInput?: (value: string) => void;\n onValueChange?: (value: string) => void;\n}\n\ninterface MaskedInputState {\n value: string;\n emptyValue: string;\n focused: boolean;\n}\n\nexport class MaskedInput extends React.Component<MaskedInputProps, MaskedInputState> {\n public static __KONTUR_REACT_UI__ = 'MaskedInput';\n\n public static defaultProps: Partial<MaskedInputProps> = {\n maskChar: '_',\n };\n\n public input: HTMLInputElement | null = null;\n private theme!: Theme;\n private reactInputMask: ReactInputMask | null = null;\n\n public constructor(props: MaskedInputProps) {\n super(props);\n\n this.state = {\n value: this.getValue(props),\n emptyValue: '',\n focused: false,\n };\n }\n\n public componentDidMount() {\n if (this.reactInputMask) {\n // FIXME: принудительно вызываем beforeMaskedValueChange, чтобы получить emptyValue\n this.reactInputMask.forceUpdate();\n }\n }\n\n public UNSAFE_componentWillReceiveProps(nextProps: MaskedInputProps) {\n if (this.props.value !== nextProps.value) {\n this.setState({\n value: nextProps.value ? nextProps.value.toString() : '',\n });\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n maskChar,\n alwaysShowMask,\n hasLeftIcon,\n hasRightIcon,\n maxLength,\n onValueChange,\n onUnexpectedInput,\n defaultValue,\n style,\n ...inputProps\n } = this.props;\n const { emptyValue, value } = this.state;\n\n const leftHelper = style?.textAlign !== 'right' && (\n <span style={{ color: 'transparent' }}>{emptyValue.slice(0, value.length)}</span>\n );\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n\n const rightHelper = emptyValue\n .slice(value.length)\n .split('')\n .map((_char, i) => (_char === '_' ? <MaskCharLowLine key={i} /> : _char));\n\n return (\n <span className={styles.container()} x-ms-format-detection=\"none\">\n <ReactInputMask\n {...inputProps}\n maskChar={null}\n beforeMaskedValueChange={this.preprocess}\n alwaysShowMask={false}\n onChange={this.handleChange}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n value={value}\n inputRef={this.refInput}\n ref={this.refMaskedInput}\n style={{ ...style }}\n />\n {this.isMaskVisible() && (\n <span className={cx(styles.inputMask(this.theme), leftClass)}>\n {leftHelper}\n {rightHelper}\n </span>\n )}\n </span>\n );\n }\n\n private getValue = (props: MaskedInputProps): string => {\n const { value, defaultValue } = props;\n\n return value !== undefined ? value.toString() : defaultValue !== undefined ? defaultValue.toString() : '';\n };\n\n private refInput = (input: HTMLInputElement | null) => {\n this.input = input;\n };\n\n private refMaskedInput = (reactInputMask: ReactInputMask) => {\n this.reactInputMask = reactInputMask;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (event.target.value === this.state.value) {\n this.handleUnexpectedInput();\n } else {\n this.setState({ value: event.target.value });\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private preprocess = (\n newState: InputState,\n oldState: InputState,\n userInput: string,\n options: MaskOptions & Pick<MaskedInputProps, 'mask'>,\n ) => {\n const visibleMaskChars = new Array(options.mask.length).fill(this.props.maskChar);\n\n if (newState.value !== oldState.value && userInput === null) {\n this.setState({\n value: newState.value,\n });\n }\n\n options.mask.split('').forEach((char, index) => {\n if (options.permanents.includes(index)) {\n visibleMaskChars[index] = char;\n }\n\n if (newState.value[index]) {\n visibleMaskChars[index] = newState.value[index];\n }\n });\n\n const emptyValue = visibleMaskChars.join('');\n\n if (this.state.emptyValue !== emptyValue) {\n this.setState({\n emptyValue,\n });\n }\n\n return newState;\n };\n\n private isMaskVisible = () => this.props.alwaysShowMask || this.state.focused;\n\n private handleUnexpectedInput = () => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(this.state.value);\n }\n };\n}\n"]}
1
+ {"version":3,"sources":["MaskedInput.tsx"],"names":["React","ReactInputMask","ThemeContext","MaskCharLowLine","cx","styles","MaskedInput","props","input","theme","reactInputMask","getValue","value","defaultValue","undefined","toString","refInput","refMaskedInput","handleChange","event","target","state","handleUnexpectedInput","setState","onValueChange","onChange","handleFocus","focused","onFocus","handleBlur","onBlur","preprocess","newState","oldState","userInput","options","visibleMaskChars","Array","mask","length","fill","maskChar","split","forEach","char","index","permanents","includes","emptyValue","join","isMaskVisible","alwaysShowMask","onUnexpectedInput","componentDidMount","forceUpdate","componentDidUpdate","prevProps","render","renderMain","hasLeftIcon","hasRightIcon","maxLength","style","inputProps","leftHelper","textAlign","color","slice","leftClass","inputMaskLeft","rightHelper","map","_char","i","container","inputMask","PureComponent","__KONTUR_REACT_UI__","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactInputMask, { InputState, MaskOptions } from 'react-input-mask';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './MaskedInput.styles';\n\nexport interface MaskedInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n mask: string;\n maskChar: string | null;\n formatChars?: { [key: string]: string };\n alwaysShowMask?: boolean;\n hasLeftIcon?: boolean;\n hasRightIcon?: boolean;\n onUnexpectedInput?: (value: string) => void;\n onValueChange?: (value: string) => void;\n}\n\ninterface MaskedInputState {\n value: string;\n emptyValue: string;\n focused: boolean;\n}\n\nexport class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {\n public static __KONTUR_REACT_UI__ = 'MaskedInput';\n\n public static defaultProps: Partial<MaskedInputProps> = {\n maskChar: '_',\n };\n\n public input: HTMLInputElement | null = null;\n private theme!: Theme;\n private reactInputMask: ReactInputMask | null = null;\n\n public constructor(props: MaskedInputProps) {\n super(props);\n\n this.state = {\n value: this.getValue(props),\n emptyValue: '',\n focused: false,\n };\n }\n\n public componentDidMount() {\n if (this.reactInputMask) {\n // FIXME: принудительно вызываем beforeMaskedValueChange, чтобы получить emptyValue\n this.reactInputMask.forceUpdate();\n }\n }\n\n public componentDidUpdate(prevProps: MaskedInputProps) {\n if (this.props.value !== prevProps.value) {\n this.setState({\n value: this.props.value ? this.props.value.toString() : '',\n });\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n maskChar,\n alwaysShowMask,\n hasLeftIcon,\n hasRightIcon,\n maxLength,\n onValueChange,\n onUnexpectedInput,\n defaultValue,\n style,\n ...inputProps\n } = this.props;\n const { emptyValue, value } = this.state;\n\n const leftHelper = style?.textAlign !== 'right' && (\n <span style={{ color: 'transparent' }}>{emptyValue.slice(0, value.length)}</span>\n );\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n\n const rightHelper = emptyValue\n .slice(value.length)\n .split('')\n .map((_char, i) => (_char === '_' ? <MaskCharLowLine key={i} /> : _char));\n\n return (\n <span className={styles.container()} x-ms-format-detection=\"none\">\n <ReactInputMask\n {...inputProps}\n maskChar={null}\n beforeMaskedValueChange={this.preprocess}\n alwaysShowMask={false}\n onChange={this.handleChange}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n value={value}\n inputRef={this.refInput}\n ref={this.refMaskedInput}\n style={{ ...style }}\n />\n {this.isMaskVisible() && (\n <span className={cx(styles.inputMask(this.theme), leftClass)}>\n {leftHelper}\n {rightHelper}\n </span>\n )}\n </span>\n );\n }\n\n private getValue = (props: MaskedInputProps): string => {\n const { value, defaultValue } = props;\n\n return value !== undefined ? value.toString() : defaultValue !== undefined ? defaultValue.toString() : '';\n };\n\n private refInput = (input: HTMLInputElement | null) => {\n this.input = input;\n };\n\n private refMaskedInput = (reactInputMask: ReactInputMask) => {\n this.reactInputMask = reactInputMask;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (event.target.value === this.state.value) {\n this.handleUnexpectedInput();\n } else {\n this.setState({ value: event.target.value });\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private preprocess = (\n newState: InputState,\n oldState: InputState,\n userInput: string,\n options: MaskOptions & Pick<MaskedInputProps, 'mask'>,\n ) => {\n const visibleMaskChars = new Array(options.mask.length).fill(this.props.maskChar);\n\n if (newState.value !== oldState.value && userInput === null) {\n this.setState({\n value: newState.value,\n });\n }\n\n options.mask.split('').forEach((char, index) => {\n if (options.permanents.includes(index)) {\n visibleMaskChars[index] = char;\n }\n\n if (newState.value[index]) {\n visibleMaskChars[index] = newState.value[index];\n }\n });\n\n const emptyValue = visibleMaskChars.join('');\n\n if (this.state.emptyValue !== emptyValue) {\n this.setState({\n emptyValue,\n });\n }\n\n return newState;\n };\n\n private isMaskVisible = () => this.props.alwaysShowMask || this.state.focused;\n\n private handleUnexpectedInput = () => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(this.state.value);\n }\n };\n}\n"]}
@@ -1,40 +1,40 @@
1
- import React from 'react';
2
- export interface MaskedInputProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
- mask: string;
4
- maskChar: string | null;
5
- formatChars?: {
6
- [key: string]: string;
7
- };
8
- alwaysShowMask?: boolean;
9
- hasLeftIcon?: boolean;
10
- hasRightIcon?: boolean;
11
- onUnexpectedInput?: (value: string) => void;
12
- onValueChange?: (value: string) => void;
13
- }
14
- interface MaskedInputState {
15
- value: string;
16
- emptyValue: string;
17
- focused: boolean;
18
- }
19
- export declare class MaskedInput extends React.Component<MaskedInputProps, MaskedInputState> {
20
- static __KONTUR_REACT_UI__: string;
21
- static defaultProps: Partial<MaskedInputProps>;
22
- input: HTMLInputElement | null;
23
- private theme;
24
- private reactInputMask;
25
- constructor(props: MaskedInputProps);
26
- componentDidMount(): void;
27
- UNSAFE_componentWillReceiveProps(nextProps: MaskedInputProps): void;
28
- render(): JSX.Element;
29
- private renderMain;
30
- private getValue;
31
- private refInput;
32
- private refMaskedInput;
33
- private handleChange;
34
- private handleFocus;
35
- private handleBlur;
36
- private preprocess;
37
- private isMaskVisible;
38
- private handleUnexpectedInput;
39
- }
40
- export {};
1
+ import React from 'react';
2
+ export interface MaskedInputProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
+ mask: string;
4
+ maskChar: string | null;
5
+ formatChars?: {
6
+ [key: string]: string;
7
+ };
8
+ alwaysShowMask?: boolean;
9
+ hasLeftIcon?: boolean;
10
+ hasRightIcon?: boolean;
11
+ onUnexpectedInput?: (value: string) => void;
12
+ onValueChange?: (value: string) => void;
13
+ }
14
+ interface MaskedInputState {
15
+ value: string;
16
+ emptyValue: string;
17
+ focused: boolean;
18
+ }
19
+ export declare class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {
20
+ static __KONTUR_REACT_UI__: string;
21
+ static defaultProps: Partial<MaskedInputProps>;
22
+ input: HTMLInputElement | null;
23
+ private theme;
24
+ private reactInputMask;
25
+ constructor(props: MaskedInputProps);
26
+ componentDidMount(): void;
27
+ componentDidUpdate(prevProps: MaskedInputProps): void;
28
+ render(): JSX.Element;
29
+ private renderMain;
30
+ private getValue;
31
+ private refInput;
32
+ private refMaskedInput;
33
+ private handleChange;
34
+ private handleFocus;
35
+ private handleBlur;
36
+ private preprocess;
37
+ private isMaskVisible;
38
+ private handleUnexpectedInput;
39
+ }
40
+ export {};
@@ -1,6 +1,6 @@
1
- import { Theme } from '../../lib/theming/Theme';
2
- export declare const styles: {
3
- container(): string;
4
- inputMask(t: Theme): string;
5
- inputMaskLeft(): string;
6
- };
1
+ import { Theme } from '../../lib/theming/Theme';
2
+ export declare const styles: {
3
+ container(): string;
4
+ inputMask(t: Theme): string;
5
+ inputMaskLeft(): string;
6
+ };
@@ -1 +1 @@
1
- export * from './MaskedInput';
1
+ export * from './MaskedInput';
@@ -1,14 +1,17 @@
1
1
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
2
+
3
+ var _class, _class2, _temp;
4
+
2
5
  import React from 'react';
3
- import ReactDOM from 'react-dom';
4
6
  import { ScrollContainer } from "../../../components/ScrollContainer";
5
7
  import { isMenuItem } from "../../../components/MenuItem";
6
8
  import { isMenuHeader } from "../../../components/MenuHeader";
7
9
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
8
10
  import { cx } from "../../../lib/theming/Emotion";
11
+ import { getRootNode, rootNode } from "../../../lib/rootNode";
9
12
  import { styles } from "../Menu.styles";
10
13
  import { isActiveElement } from "../isActiveElement";
11
- export var Menu = /*#__PURE__*/function (_React$Component) {
14
+ export var Menu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
12
15
  _inheritsLoose(Menu, _React$Component);
13
16
 
14
17
  function Menu() {
@@ -26,6 +29,7 @@ export var Menu = /*#__PURE__*/function (_React$Component) {
26
29
  _this.scrollContainer = void 0;
27
30
  _this.highlighted = void 0;
28
31
  _this.unmounted = false;
32
+ _this.setRootNode = void 0;
29
33
 
30
34
  _this.refScrollContainer = function (scrollContainer) {
31
35
  _this.scrollContainer = scrollContainer;
@@ -33,7 +37,7 @@ export var Menu = /*#__PURE__*/function (_React$Component) {
33
37
 
34
38
  _this.scrollToSelected = function () {
35
39
  if (_this.scrollContainer && _this.highlighted) {
36
- _this.scrollContainer.scrollTo(ReactDOM.findDOMNode(_this.highlighted));
40
+ _this.scrollContainer.scrollTo(getRootNode(_this.highlighted));
37
41
  }
38
42
  };
39
43
 
@@ -142,7 +146,8 @@ export var Menu = /*#__PURE__*/function (_React$Component) {
142
146
  style: {
143
147
  width: this.props.width,
144
148
  maxHeight: this.props.maxHeight
145
- }
149
+ },
150
+ ref: this.setRootNode
146
151
  }, /*#__PURE__*/React.createElement(ScrollContainer, {
147
152
  ref: this.refScrollContainer,
148
153
  maxHeight: this.props.maxHeight,
@@ -287,14 +292,12 @@ export var Menu = /*#__PURE__*/function (_React$Component) {
287
292
  };
288
293
 
289
294
  return Menu;
290
- }(React.Component);
291
- Menu.__KONTUR_REACT_UI__ = 'Menu';
292
- Menu.defaultProps = {
295
+ }(React.Component), _class2.__KONTUR_REACT_UI__ = 'Menu', _class2.defaultProps = {
293
296
  width: 'auto',
294
297
  maxHeight: 300,
295
298
  hasShadow: true,
296
299
  preventWindowScroll: true
297
- };
300
+ }, _temp)) || _class;
298
301
 
299
302
  function isExist(value) {
300
303
  return value !== null && value !== undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["Menu.tsx"],"names":["React","ReactDOM","ScrollContainer","isMenuItem","isMenuHeader","ThemeContext","cx","styles","isActiveElement","Menu","state","highlightedIndex","theme","scrollContainer","highlighted","unmounted","refScrollContainer","scrollToSelected","scrollTo","findDOMNode","scrollToTop","scrollToBottom","highlight","index","setState","unhighlight","componentWillUnmount","render","renderMain","up","move","down","enter","event","select","reset","hasHighlightedItem","highlightItem","enableIconPadding","Children","toArray","props","children","some","x","isValidElement","icon","isEmpty","root","shadow","hasShadow","width","maxHeight","preventWindowScroll","map","child","cloneElement","_enableIconPadding","ref","refHighlighted","bind","onClick","onMouseEnter","onMouseLeave","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","window","open","location","onItemClick","step","activeElements","filter","length","indexOf","isExist","Component","__KONTUR_REACT_UI__","defaultProps","value","undefined","ret","forEach","push"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { ScrollContainer } from '../../components/ScrollContainer';\nimport { isMenuItem, MenuItem, MenuItemProps } from '../../components/MenuItem';\nimport { isMenuHeader } from '../../components/MenuHeader';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles } from './Menu.styles';\nimport { isActiveElement } from './isActiveElement';\n\nexport interface MenuProps {\n children: React.ReactNode;\n hasShadow?: boolean;\n maxHeight?: number | string;\n onItemClick?: () => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n}\n\nexport class Menu extends React.Component<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n\n public static defaultProps = {\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n };\n\n public state = {\n highlightedIndex: -1,\n };\n\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private highlighted: Nullable<MenuItem>;\n private unmounted = false;\n\n public componentWillUnmount() {\n this.unmounted = true;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n return this.select(this.state.highlightedIndex, true, event);\n }\n\n /**\n * @public\n */\n public reset() {\n this.setState({ highlightedIndex: -1 });\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n return this.state.highlightedIndex !== -1;\n }\n\n public highlightItem(index: number) {\n this.highlight(index);\n }\n\n private renderMain() {\n const enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n if (this.isEmpty()) {\n return null;\n }\n\n return (\n <div\n className={cx({\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: this.props.hasShadow,\n })}\n style={{ width: this.props.width, maxHeight: this.props.maxHeight }}\n >\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={this.props.maxHeight}\n preventWindowScroll={this.props.preventWindowScroll}\n >\n <div className={styles.scrollContainer(this.theme)}>\n {React.Children.map(this.props.children, (child, index) => {\n if (!child) {\n return child;\n }\n if (typeof child === 'string' || typeof child === 'number') {\n return child;\n }\n\n if (enableIconPadding && (isMenuItem(child) || isMenuHeader(child))) {\n child = React.cloneElement(child, {\n _enableIconPadding: true,\n });\n }\n if (isActiveElement(child)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = child.ref;\n if (highlight && typeof child.ref !== 'string') {\n ref = this.refHighlighted.bind(this, child.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(child, {\n ref,\n state: highlight ? 'hover' : child.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n return child;\n })}\n </div>\n </ScrollContainer>\n </div>\n );\n }\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: ((menuItem: MenuItem | null) => any) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n }\n }\n\n private scrollToSelected = () => {\n if (this.scrollContainer && this.highlighted) {\n this.scrollContainer.scrollTo(ReactDOM.findDOMNode(this.highlighted) as HTMLElement);\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n if (isActiveElement(item)) {\n if (shouldHandleHref && item.props.href) {\n if (item.props.target) {\n window.open(item.props.href, item.props.target);\n } else {\n location.href = item.props.href;\n }\n }\n if (item.props.onClick) {\n item.props.onClick(event);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick();\n }\n return true;\n }\n return false;\n }\n\n private highlight = (index: number) => {\n this.setState({ highlightedIndex: index });\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n\n const children = childrenToArray(this.props.children);\n const activeElements = children.filter(isActiveElement);\n if (!activeElements.length) {\n return;\n }\n let index = this.state.highlightedIndex;\n do {\n index += step;\n if (index < 0) {\n index = children.length - 1;\n } else if (index > children.length) {\n index = 0;\n }\n\n const child = children[index];\n if (isActiveElement(child)) {\n this.setState({ highlightedIndex: index }, () => {\n switch (activeElements.indexOf(child)) {\n case 0:\n this.scrollToTop();\n break;\n case activeElements.length - 1:\n this.scrollToBottom();\n break;\n default:\n this.scrollToSelected();\n }\n });\n return;\n }\n } while (index !== this.state.highlightedIndex);\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isExist).length;\n }\n}\n\nfunction isExist(value: any): value is any {\n return value !== null && value !== undefined;\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n"]}
1
+ {"version":3,"sources":["Menu.tsx"],"names":["React","ScrollContainer","isMenuItem","isMenuHeader","ThemeContext","cx","getRootNode","rootNode","styles","isActiveElement","Menu","state","highlightedIndex","theme","scrollContainer","highlighted","unmounted","setRootNode","refScrollContainer","scrollToSelected","scrollTo","scrollToTop","scrollToBottom","highlight","index","setState","unhighlight","componentWillUnmount","render","renderMain","up","move","down","enter","event","select","reset","hasHighlightedItem","highlightItem","enableIconPadding","Children","toArray","props","children","some","x","isValidElement","icon","isEmpty","root","shadow","hasShadow","width","maxHeight","preventWindowScroll","map","child","cloneElement","_enableIconPadding","ref","refHighlighted","bind","onClick","onMouseEnter","onMouseLeave","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","window","open","location","onItemClick","step","activeElements","filter","length","indexOf","isExist","Component","__KONTUR_REACT_UI__","defaultProps","value","undefined","ret","forEach","push"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { ScrollContainer } from '../../components/ScrollContainer';\nimport { isMenuItem, MenuItem, MenuItemProps } from '../../components/MenuItem';\nimport { isMenuHeader } from '../../components/MenuHeader';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Menu.styles';\nimport { isActiveElement } from './isActiveElement';\n\nexport interface MenuProps {\n children: React.ReactNode;\n hasShadow?: boolean;\n maxHeight?: number | string;\n onItemClick?: () => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n}\n\n@rootNode\nexport class Menu extends React.Component<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n\n public static defaultProps = {\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n };\n\n public state = {\n highlightedIndex: -1,\n };\n\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private highlighted: Nullable<MenuItem>;\n private unmounted = false;\n private setRootNode!: TSetRootNode;\n\n public componentWillUnmount() {\n this.unmounted = true;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n return this.select(this.state.highlightedIndex, true, event);\n }\n\n /**\n * @public\n */\n public reset() {\n this.setState({ highlightedIndex: -1 });\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n return this.state.highlightedIndex !== -1;\n }\n\n public highlightItem(index: number) {\n this.highlight(index);\n }\n\n private renderMain() {\n const enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n if (this.isEmpty()) {\n return null;\n }\n\n return (\n <div\n className={cx({\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: this.props.hasShadow,\n })}\n style={{ width: this.props.width, maxHeight: this.props.maxHeight }}\n ref={this.setRootNode}\n >\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={this.props.maxHeight}\n preventWindowScroll={this.props.preventWindowScroll}\n >\n <div className={styles.scrollContainer(this.theme)}>\n {React.Children.map(this.props.children, (child, index) => {\n if (!child) {\n return child;\n }\n if (typeof child === 'string' || typeof child === 'number') {\n return child;\n }\n\n if (enableIconPadding && (isMenuItem(child) || isMenuHeader(child))) {\n child = React.cloneElement(child, {\n _enableIconPadding: true,\n });\n }\n if (isActiveElement(child)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = child.ref;\n if (highlight && typeof child.ref !== 'string') {\n ref = this.refHighlighted.bind(this, child.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(child, {\n ref,\n state: highlight ? 'hover' : child.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n return child;\n })}\n </div>\n </ScrollContainer>\n </div>\n );\n }\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: ((menuItem: MenuItem | null) => any) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n }\n }\n\n private scrollToSelected = () => {\n if (this.scrollContainer && this.highlighted) {\n this.scrollContainer.scrollTo(getRootNode(this.highlighted));\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n if (isActiveElement(item)) {\n if (shouldHandleHref && item.props.href) {\n if (item.props.target) {\n window.open(item.props.href, item.props.target);\n } else {\n location.href = item.props.href;\n }\n }\n if (item.props.onClick) {\n item.props.onClick(event);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick();\n }\n return true;\n }\n return false;\n }\n\n private highlight = (index: number) => {\n this.setState({ highlightedIndex: index });\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n\n const children = childrenToArray(this.props.children);\n const activeElements = children.filter(isActiveElement);\n if (!activeElements.length) {\n return;\n }\n let index = this.state.highlightedIndex;\n do {\n index += step;\n if (index < 0) {\n index = children.length - 1;\n } else if (index > children.length) {\n index = 0;\n }\n\n const child = children[index];\n if (isActiveElement(child)) {\n this.setState({ highlightedIndex: index }, () => {\n switch (activeElements.indexOf(child)) {\n case 0:\n this.scrollToTop();\n break;\n case activeElements.length - 1:\n this.scrollToBottom();\n break;\n default:\n this.scrollToSelected();\n }\n });\n return;\n }\n } while (index !== this.state.highlightedIndex);\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isExist).length;\n }\n}\n\nfunction isExist(value: any): value is any {\n return value !== null && value !== undefined;\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n"]}