@skbkontur/react-ui 4.10.0 → 4.11.0-revert-datatids

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 (1223) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +117 -119
  3. package/cjs/components/Autocomplete/Autocomplete.js +9 -11
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Autocomplete/Autocomplete.styles.d.ts +4 -4
  6. package/cjs/components/Autocomplete/index.d.ts +1 -1
  7. package/cjs/components/Button/Button.d.ts +157 -160
  8. package/cjs/components/Button/Button.js +3 -7
  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 +72 -72
  12. package/cjs/components/Button/index.d.ts +1 -1
  13. package/cjs/components/Center/Center.d.ts +26 -29
  14. package/cjs/components/Center/Center.js +2 -7
  15. package/cjs/components/Center/Center.js.map +1 -1
  16. package/cjs/components/Center/Center.styles.d.ts +7 -7
  17. package/cjs/components/Center/index.d.ts +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +101 -104
  19. package/cjs/components/Checkbox/Checkbox.js +2 -8
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/Checkbox/Checkbox.styles.d.ts +24 -24
  22. package/cjs/components/Checkbox/index.d.ts +1 -1
  23. package/cjs/components/ComboBox/ComboBox.d.ts +195 -194
  24. package/cjs/components/ComboBox/ComboBox.js +1 -0
  25. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  26. package/cjs/components/ComboBox/index.d.ts +1 -1
  27. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  28. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +103 -106
  29. package/cjs/components/CurrencyInput/CurrencyInput.js +2 -7
  30. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  31. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  32. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +20 -20
  33. package/cjs/components/CurrencyInput/CursorHelper.d.ts +10 -10
  34. package/cjs/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  35. package/cjs/components/CurrencyInput/constants.d.ts +5 -5
  36. package/cjs/components/CurrencyInput/index.d.ts +1 -1
  37. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +20 -23
  38. package/cjs/components/CurrencyLabel/CurrencyLabel.js +2 -6
  39. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  40. package/cjs/components/CurrencyLabel/index.d.ts +1 -1
  41. package/cjs/components/DateInput/DateFragmentsView.d.ts +20 -20
  42. package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  43. package/cjs/components/DateInput/DateInput.d.ts +104 -104
  44. package/cjs/components/DateInput/DateInput.styles.d.ts +10 -10
  45. package/cjs/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  46. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  47. package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  48. package/cjs/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  49. package/cjs/components/DateInput/helpers/inputNumber.d.ts +5 -5
  50. package/cjs/components/DateInput/index.d.ts +1 -1
  51. package/cjs/components/DatePicker/DatePicker.d.ts +129 -133
  52. package/cjs/components/DatePicker/DatePicker.js +3 -9
  53. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  54. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -3
  55. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  56. package/cjs/components/DatePicker/Picker.d.ts +33 -33
  57. package/cjs/components/DatePicker/Picker.js +2 -7
  58. package/cjs/components/DatePicker/Picker.js.map +1 -1
  59. package/cjs/components/DatePicker/Picker.styles.d.ts +5 -5
  60. package/cjs/components/DatePicker/index.d.ts +1 -1
  61. package/cjs/components/DatePicker/locale/index.d.ts +4 -4
  62. package/cjs/components/DatePicker/locale/locales/en.d.ts +2 -2
  63. package/cjs/components/DatePicker/locale/locales/ru.d.ts +2 -2
  64. package/cjs/components/DatePicker/locale/types.d.ts +5 -5
  65. package/cjs/components/Dropdown/Dropdown.d.ts +125 -128
  66. package/cjs/components/Dropdown/Dropdown.js +2 -7
  67. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  68. package/cjs/components/Dropdown/index.d.ts +1 -1
  69. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +62 -62
  70. package/cjs/components/DropdownMenu/index.d.ts +1 -1
  71. package/cjs/components/FileUploader/FileUploader.d.ts +51 -56
  72. package/cjs/components/FileUploader/FileUploader.js +4 -15
  73. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  74. package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -1
  75. package/cjs/components/FileUploader/FileUploader.styles.d.ts +33 -33
  76. package/cjs/components/FileUploader/index.d.ts +5 -5
  77. package/cjs/components/FileUploader/locale/index.d.ts +4 -4
  78. package/cjs/components/FileUploader/locale/locales/en.d.ts +2 -2
  79. package/cjs/components/FileUploader/locale/locales/ru.d.ts +2 -2
  80. package/cjs/components/FileUploader/locale/types.d.ts +6 -6
  81. package/cjs/components/FxInput/FxInput.d.ts +50 -53
  82. package/cjs/components/FxInput/FxInput.js +2 -6
  83. package/cjs/components/FxInput/FxInput.js.map +1 -1
  84. package/cjs/components/FxInput/index.d.ts +1 -1
  85. package/cjs/components/Gapped/Gapped.d.ts +56 -60
  86. package/cjs/components/Gapped/Gapped.js +3 -8
  87. package/cjs/components/Gapped/Gapped.js.map +1 -1
  88. package/cjs/components/Gapped/index.d.ts +1 -1
  89. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +103 -106
  90. package/cjs/components/GlobalLoader/GlobalLoader.js +2 -6
  91. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  92. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +13 -13
  93. package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -16
  94. package/cjs/components/GlobalLoader/index.d.ts +1 -1
  95. package/cjs/components/GlobalLoader/useParams.d.ts +22 -22
  96. package/cjs/components/Group/Group.d.ts +15 -18
  97. package/cjs/components/Group/Group.js +3 -7
  98. package/cjs/components/Group/Group.js.map +1 -1
  99. package/cjs/components/Group/Group.styles.d.ts +8 -8
  100. package/cjs/components/Group/index.d.ts +1 -1
  101. package/cjs/components/Hint/Hint.d.ts +85 -85
  102. package/cjs/components/Hint/Hint.styles.d.ts +6 -6
  103. package/cjs/components/Hint/index.d.ts +1 -1
  104. package/cjs/components/Input/Input.d.ts +154 -157
  105. package/cjs/components/Input/Input.js +2 -6
  106. package/cjs/components/Input/Input.js.map +1 -1
  107. package/cjs/components/Input/Input.styles.d.ts +43 -43
  108. package/cjs/components/Input/index.d.ts +1 -1
  109. package/cjs/components/Kebab/Kebab.d.ts +53 -53
  110. package/cjs/components/Kebab/Kebab.styles.d.ts +12 -12
  111. package/cjs/components/Kebab/index.d.ts +1 -1
  112. package/cjs/components/Link/Link.d.ts +70 -73
  113. package/cjs/components/Link/Link.js +2 -6
  114. package/cjs/components/Link/Link.js.map +1 -1
  115. package/cjs/components/Link/Link.mixins.d.ts +3 -3
  116. package/cjs/components/Link/Link.styles.d.ts +15 -15
  117. package/cjs/components/Link/index.d.ts +1 -1
  118. package/cjs/components/Loader/Loader.d.ts +113 -117
  119. package/cjs/components/Loader/Loader.js +2 -7
  120. package/cjs/components/Loader/Loader.js.map +1 -1
  121. package/cjs/components/Loader/Loader.styles.d.ts +8 -8
  122. package/cjs/components/Loader/index.d.ts +1 -1
  123. package/cjs/components/MenuHeader/MenuHeader.d.ts +20 -23
  124. package/cjs/components/MenuHeader/MenuHeader.js +2 -7
  125. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  126. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  127. package/cjs/components/MenuHeader/index.d.ts +1 -1
  128. package/cjs/components/MenuItem/MenuItem.d.ts +107 -111
  129. package/cjs/components/MenuItem/MenuItem.js +4 -10
  130. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  131. package/cjs/components/MenuItem/MenuItem.styles.d.ts +15 -15
  132. package/cjs/components/MenuItem/index.d.ts +1 -1
  133. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +12 -15
  134. package/cjs/components/MenuSeparator/MenuSeparator.js +3 -7
  135. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  136. package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  137. package/cjs/components/MenuSeparator/index.d.ts +1 -1
  138. package/cjs/components/Modal/Modal.d.ts +89 -94
  139. package/cjs/components/Modal/Modal.js +2 -8
  140. package/cjs/components/Modal/Modal.js.map +1 -1
  141. package/cjs/components/Modal/Modal.styles.d.ts +40 -40
  142. package/cjs/components/Modal/Modal.styles.js +1 -1
  143. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  144. package/cjs/components/Modal/ModalBody.d.ts +23 -23
  145. package/cjs/components/Modal/ModalClose.d.ts +2 -2
  146. package/cjs/components/Modal/ModalClose.js +2 -3
  147. package/cjs/components/Modal/ModalClose.js.map +1 -1
  148. package/cjs/components/Modal/ModalContext.d.ts +16 -16
  149. package/cjs/components/Modal/ModalFooter.d.ts +35 -38
  150. package/cjs/components/Modal/ModalFooter.js +2 -7
  151. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  152. package/cjs/components/Modal/ModalHeader.d.ts +17 -20
  153. package/cjs/components/Modal/ModalHeader.js +2 -8
  154. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  155. package/cjs/components/Modal/index.d.ts +4 -4
  156. package/cjs/components/Paging/NavigationHelper.d.ts +7 -7
  157. package/cjs/components/Paging/Paging.d.ts +97 -104
  158. package/cjs/components/Paging/Paging.js +7 -15
  159. package/cjs/components/Paging/Paging.js.map +1 -1
  160. package/cjs/components/Paging/Paging.styles.d.ts +20 -20
  161. package/cjs/components/Paging/PagingDefaultComponent.d.ts +9 -9
  162. package/cjs/components/Paging/PagingHelper.d.ts +2 -2
  163. package/cjs/components/Paging/index.d.ts +1 -1
  164. package/cjs/components/Paging/locale/index.d.ts +4 -4
  165. package/cjs/components/Paging/locale/locales/en.d.ts +2 -2
  166. package/cjs/components/Paging/locale/locales/ru.d.ts +2 -2
  167. package/cjs/components/Paging/locale/types.d.ts +3 -3
  168. package/cjs/components/PasswordInput/PasswordInput.d.ts +52 -57
  169. package/cjs/components/PasswordInput/PasswordInput.js +4 -12
  170. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  171. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  172. package/cjs/components/PasswordInput/PasswordInputIcon.d.ts +3 -3
  173. package/cjs/components/PasswordInput/index.d.ts +1 -1
  174. package/cjs/components/Radio/Radio.d.ts +78 -81
  175. package/cjs/components/Radio/Radio.js +2 -6
  176. package/cjs/components/Radio/Radio.js.map +1 -1
  177. package/cjs/components/Radio/Radio.styles.d.ts +21 -21
  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 +107 -110
  181. package/cjs/components/RadioGroup/RadioGroup.js +2 -6
  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 -10
  185. package/cjs/components/RadioGroup/index.d.ts +1 -1
  186. package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +12 -12
  187. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +11 -11
  188. package/cjs/components/ResponsiveLayout/decorator.d.ts +33 -33
  189. package/cjs/components/ResponsiveLayout/index.d.ts +3 -3
  190. package/cjs/components/ResponsiveLayout/types.d.ts +11 -11
  191. package/cjs/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
  192. package/cjs/components/ScrollContainer/ScrollBar.d.ts +41 -41
  193. package/cjs/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  194. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +97 -101
  195. package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  196. package/cjs/components/ScrollContainer/ScrollContainer.js +4 -14
  197. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  198. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +21 -21
  199. package/cjs/components/ScrollContainer/index.d.ts +1 -1
  200. package/cjs/components/Select/Item.d.ts +9 -9
  201. package/cjs/components/Select/Select.d.ts +160 -162
  202. package/cjs/components/Select/Select.js +4 -11
  203. package/cjs/components/Select/Select.js.map +1 -1
  204. package/cjs/components/Select/Select.styles.d.ts +18 -18
  205. package/cjs/components/Select/index.d.ts +1 -1
  206. package/cjs/components/Select/locale/index.d.ts +4 -4
  207. package/cjs/components/Select/locale/locales/en.d.ts +2 -2
  208. package/cjs/components/Select/locale/locales/ru.d.ts +2 -2
  209. package/cjs/components/Select/locale/types.d.ts +4 -4
  210. package/cjs/components/Select/selectTheme.d.ts +3 -3
  211. package/cjs/components/SidePage/SidePage.d.ts +111 -115
  212. package/cjs/components/SidePage/SidePage.js +2 -7
  213. package/cjs/components/SidePage/SidePage.js.map +1 -1
  214. package/cjs/components/SidePage/SidePage.styles.d.ts +48 -48
  215. package/cjs/components/SidePage/SidePageBody.d.ts +20 -23
  216. package/cjs/components/SidePage/SidePageBody.js +3 -10
  217. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  218. package/cjs/components/SidePage/SidePageContainer.d.ts +16 -19
  219. package/cjs/components/SidePage/SidePageContainer.js +2 -7
  220. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  221. package/cjs/components/SidePage/SidePageContext.d.ts +17 -17
  222. package/cjs/components/SidePage/SidePageFooter.d.ts +49 -52
  223. package/cjs/components/SidePage/SidePageFooter.js +3 -11
  224. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  225. package/cjs/components/SidePage/SidePageHeader.d.ts +44 -48
  226. package/cjs/components/SidePage/SidePageHeader.js +4 -9
  227. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  228. package/cjs/components/SidePage/index.d.ts +5 -5
  229. package/cjs/components/Spinner/Spinner.d.ts +67 -70
  230. package/cjs/components/Spinner/Spinner.js +2 -6
  231. package/cjs/components/Spinner/Spinner.js.map +1 -1
  232. package/cjs/components/Spinner/Spinner.styles.d.ts +13 -13
  233. package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  234. package/cjs/components/Spinner/index.d.ts +1 -1
  235. package/cjs/components/Spinner/locale/index.d.ts +4 -4
  236. package/cjs/components/Spinner/locale/locales/en.d.ts +2 -2
  237. package/cjs/components/Spinner/locale/locales/ru.d.ts +2 -2
  238. package/cjs/components/Spinner/locale/types.d.ts +4 -4
  239. package/cjs/components/Sticky/Sticky.d.ts +60 -63
  240. package/cjs/components/Sticky/Sticky.js +3 -7
  241. package/cjs/components/Sticky/Sticky.js.map +1 -1
  242. package/cjs/components/Sticky/Sticky.styles.d.ts +7 -7
  243. package/cjs/components/Sticky/index.d.ts +1 -1
  244. package/cjs/components/Switcher/Switcher.d.ts +66 -69
  245. package/cjs/components/Switcher/Switcher.js +3 -7
  246. package/cjs/components/Switcher/Switcher.js.map +1 -1
  247. package/cjs/components/Switcher/Switcher.styles.d.ts +11 -11
  248. package/cjs/components/Switcher/helpers.d.ts +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 -28
  252. package/cjs/components/Tabs/Indicator.js +2 -4
  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 +113 -116
  256. package/cjs/components/Tabs/Tab.js +2 -7
  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 +56 -60
  260. package/cjs/components/Tabs/Tabs.js +2 -11
  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 +183 -187
  266. package/cjs/components/Textarea/Textarea.js +2 -7
  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 +12 -12
  270. package/cjs/components/Textarea/TextareaCounter.js +6 -6
  271. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  272. package/cjs/components/Textarea/TextareaHelpers.d.ts +11 -11
  273. package/cjs/components/Textarea/index.d.ts +1 -1
  274. package/cjs/components/Toast/Toast.d.ts +58 -64
  275. package/cjs/components/Toast/Toast.js +2 -9
  276. package/cjs/components/Toast/Toast.js.map +1 -1
  277. package/cjs/components/Toast/Toast.styles.d.ts +6 -6
  278. package/cjs/components/Toast/ToastStatic.d.ts +8 -8
  279. package/cjs/components/Toast/ToastStatic.js +1 -1
  280. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  281. package/cjs/components/Toast/ToastView.d.ts +38 -38
  282. package/cjs/components/Toast/ToastView.js +4 -5
  283. package/cjs/components/Toast/ToastView.js.map +1 -1
  284. package/cjs/components/Toast/ToastView.styles.d.ts +8 -8
  285. package/cjs/components/Toast/index.d.ts +1 -1
  286. package/cjs/components/Toggle/Toggle.d.ts +106 -109
  287. package/cjs/components/Toggle/Toggle.js +2 -6
  288. package/cjs/components/Toggle/Toggle.js.map +1 -1
  289. package/cjs/components/Toggle/Toggle.styles.d.ts +30 -30
  290. package/cjs/components/Toggle/index.d.ts +1 -1
  291. package/cjs/components/Token/Token.d.ts +36 -39
  292. package/cjs/components/Token/Token.js +3 -8
  293. package/cjs/components/Token/Token.js.map +1 -1
  294. package/cjs/components/Token/Token.styles.d.ts +29 -29
  295. package/cjs/components/Token/index.d.ts +1 -1
  296. package/cjs/components/TokenInput/TextWidthHelper.d.ts +18 -18
  297. package/cjs/components/TokenInput/TokenInput.d.ts +210 -214
  298. package/cjs/components/TokenInput/TokenInput.js +2 -7
  299. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  300. package/cjs/components/TokenInput/TokenInput.styles.d.ts +15 -15
  301. package/cjs/components/TokenInput/TokenInputMenu.d.ts +19 -19
  302. package/cjs/components/TokenInput/TokenInputMenu.js +3 -4
  303. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  304. package/cjs/components/TokenInput/TokenInputReducer.d.ts +25 -25
  305. package/cjs/components/TokenInput/index.d.ts +1 -1
  306. package/cjs/components/TokenInput/locale/index.d.ts +4 -4
  307. package/cjs/components/TokenInput/locale/locales/en.d.ts +2 -2
  308. package/cjs/components/TokenInput/locale/locales/ru.d.ts +2 -2
  309. package/cjs/components/TokenInput/locale/types.d.ts +4 -4
  310. package/cjs/components/Tooltip/Tooltip.d.ts +160 -164
  311. package/cjs/components/Tooltip/Tooltip.js +3 -9
  312. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  313. package/cjs/components/Tooltip/Tooltip.styles.d.ts +5 -5
  314. package/cjs/components/Tooltip/index.d.ts +1 -1
  315. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +66 -69
  316. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -6
  317. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  318. package/cjs/components/TooltipMenu/index.d.ts +1 -1
  319. package/cjs/hooks/useDrop.d.ts +11 -11
  320. package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -2
  321. package/cjs/hooks/useMemoObject.d.ts +2 -2
  322. package/cjs/index.d.ts +56 -56
  323. package/cjs/internal/BGRuler.d.ts +28 -28
  324. package/cjs/internal/Calendar/Calendar.d.ts +57 -63
  325. package/cjs/internal/Calendar/Calendar.js +2 -9
  326. package/cjs/internal/Calendar/Calendar.js.map +1 -1
  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.js +4 -5
  337. package/cjs/internal/Calendar/MonthView.js.map +1 -1
  338. package/cjs/internal/Calendar/MonthView.styles.d.ts +10 -10
  339. package/cjs/internal/Calendar/MonthViewModel.d.ts +14 -14
  340. package/cjs/internal/Calendar/config.d.ts +2 -2
  341. package/cjs/internal/Calendar/index.d.ts +2 -2
  342. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +33 -33
  343. package/cjs/internal/CommonWrapper/index.d.ts +1 -1
  344. package/cjs/internal/ComponentCombinator.d.ts +23 -23
  345. package/cjs/internal/ComponentTable.d.ts +22 -22
  346. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +33 -40
  347. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +4 -22
  348. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  349. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +96 -95
  350. package/cjs/internal/CustomComboBox/ComboBoxView.js +4 -5
  351. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  352. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +139 -141
  353. package/cjs/internal/CustomComboBox/CustomComboBox.js +5 -7
  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 +91 -95
  364. package/cjs/internal/DateSelect/DateSelect.js +3 -8
  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 +45 -41
  369. package/cjs/internal/DropdownContainer/DropdownContainer.js +11 -6
  370. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  371. package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -3
  372. package/cjs/internal/DropdownContainer/getManualPosition.d.ts +19 -0
  373. package/cjs/internal/DropdownContainer/getManualPosition.js +41 -0
  374. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -0
  375. package/cjs/internal/DropdownContainer/index.d.ts +1 -1
  376. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +14 -14
  377. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -14
  378. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +15 -22
  379. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +6 -14
  380. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  381. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +18 -18
  382. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +12 -15
  383. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +2 -6
  384. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  385. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +8 -8
  386. package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -7
  387. package/cjs/internal/FileUploaderControl/fileUtils.d.ts +14 -14
  388. package/cjs/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -1
  389. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  390. package/cjs/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -3
  391. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -3
  392. package/cjs/internal/FocusTrap/FocusTrap.d.ts +17 -17
  393. package/cjs/internal/FocusTrap/index.d.ts +1 -1
  394. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  395. package/cjs/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  396. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  397. package/cjs/internal/IgnoreLayerClick/index.d.ts +1 -1
  398. package/cjs/internal/InputLikeText/HiddenInput.d.ts +13 -13
  399. package/cjs/internal/InputLikeText/InputLikeText.d.ts +74 -78
  400. package/cjs/internal/InputLikeText/InputLikeText.js +4 -10
  401. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  402. package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  403. package/cjs/internal/InputLikeText/index.d.ts +1 -1
  404. package/cjs/internal/InternalMenu/InternalMenu.d.ts +63 -66
  405. package/cjs/internal/InternalMenu/InternalMenu.js +3 -8
  406. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  407. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +10 -10
  408. package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -2
  409. package/cjs/internal/InternalMenu/index.d.ts +1 -1
  410. package/cjs/internal/InternalMenu/isActiveElement.d.ts +3 -3
  411. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  412. package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  413. package/cjs/internal/MaskCharLowLine/index.d.ts +1 -1
  414. package/cjs/internal/MaskedInput/MaskedInput.d.ts +43 -46
  415. package/cjs/internal/MaskedInput/MaskedInput.js +3 -7
  416. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  417. package/cjs/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  418. package/cjs/internal/MaskedInput/index.d.ts +1 -1
  419. package/cjs/internal/Menu/Menu.d.ts +67 -70
  420. package/cjs/internal/Menu/Menu.js +3 -8
  421. package/cjs/internal/Menu/Menu.js.map +1 -1
  422. package/cjs/internal/Menu/Menu.styles.d.ts +9 -9
  423. package/cjs/internal/Menu/index.d.ts +1 -1
  424. package/cjs/internal/Menu/isActiveElement.d.ts +3 -3
  425. package/cjs/internal/MobilePopup/MobilePopup.d.ts +34 -38
  426. package/cjs/internal/MobilePopup/MobilePopup.js +3 -10
  427. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  428. package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +10 -10
  429. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +15 -15
  430. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +10 -10
  431. package/cjs/internal/MobilePopup/MobilePopupHeader/index.d.ts +1 -1
  432. package/cjs/internal/MobilePopup/index.d.ts +1 -1
  433. package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  434. package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  435. package/cjs/internal/NativeDateInput/index.d.ts +1 -1
  436. package/cjs/internal/NativeDateInput/utils.d.ts +7 -7
  437. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  438. package/cjs/internal/Popup/Popup.d.ts +166 -171
  439. package/cjs/internal/Popup/Popup.js +4 -10
  440. package/cjs/internal/Popup/Popup.js.map +1 -1
  441. package/cjs/internal/Popup/Popup.styles.d.ts +16 -16
  442. package/cjs/internal/Popup/PopupHelper.d.ts +26 -26
  443. package/cjs/internal/Popup/PopupPin.d.ts +56 -56
  444. package/cjs/internal/Popup/PopupPin.js +1 -2
  445. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  446. package/cjs/internal/Popup/PopupPin.styles.d.ts +3 -3
  447. package/cjs/internal/Popup/index.d.ts +1 -1
  448. package/cjs/internal/Popup/types.d.ts +2 -2
  449. package/cjs/internal/PopupMenu/PopupMenu.d.ts +87 -91
  450. package/cjs/internal/PopupMenu/PopupMenu.js +4 -9
  451. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  452. package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  453. package/cjs/internal/PopupMenu/index.d.ts +1 -1
  454. package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
  455. package/cjs/internal/RenderContainer/RenderContainer.d.ts +16 -16
  456. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +13 -13
  457. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +21 -21
  458. package/cjs/internal/RenderContainer/index.d.ts +1 -1
  459. package/cjs/internal/RenderLayer/RenderLayer.d.ts +31 -31
  460. package/cjs/internal/RenderLayer/index.d.ts +1 -1
  461. package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +13 -13
  462. package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +6 -6
  463. package/cjs/internal/ResizeDetector/index.d.ts +1 -1
  464. package/cjs/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -15
  465. package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -4
  466. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +18 -18
  467. package/cjs/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  468. package/cjs/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  469. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +12 -12
  470. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +12 -12
  471. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  472. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  473. package/cjs/internal/ThemePlayground/Playground.d.ts +30 -30
  474. package/cjs/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  475. package/cjs/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  476. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +15 -15
  477. package/cjs/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  478. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +4 -4
  479. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +16 -16
  480. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +53 -53
  481. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +36 -36
  482. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +4 -4
  483. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +9 -9
  484. package/cjs/internal/ThemePlayground/VariableValue.d.ts +43 -43
  485. package/cjs/internal/ThemePlayground/constants.d.ts +19 -19
  486. package/cjs/internal/ThemePlayground/darkTheme.d.ts +269 -269
  487. package/cjs/internal/ThemePlayground/helpers.d.ts +2 -2
  488. package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  489. package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +27 -27
  490. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  491. package/cjs/internal/ZIndex/ZIndex.d.ts +46 -46
  492. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +21 -21
  493. package/cjs/internal/ZIndex/index.d.ts +1 -1
  494. package/cjs/internal/icons/16px/icon.styles.d.ts +4 -4
  495. package/cjs/internal/icons/16px/index.d.ts +25 -25
  496. package/cjs/internal/icons/20px/Icon.d.ts +30 -30
  497. package/cjs/internal/icons/20px/icon.styles.d.ts +4 -4
  498. package/cjs/internal/icons/20px/index.d.ts +2 -2
  499. package/cjs/internal/icons/20px/svg.d.ts +14 -14
  500. package/cjs/internal/icons/CloudIcon.d.ts +1 -1
  501. package/cjs/internal/icons/CrossIcon.d.ts +1 -1
  502. package/cjs/internal/icons/SpinnerIcon.d.ts +27 -27
  503. package/cjs/internal/icons/SpinnerIcon.styles.d.ts +6 -6
  504. package/cjs/internal/themes/DarkTheme.d.ts +138 -138
  505. package/cjs/internal/themes/DefaultTheme.d.ts +898 -898
  506. package/cjs/internal/themes/NotFlat.d.ts +133 -133
  507. package/cjs/internal/themes/OldColors.d.ts +116 -116
  508. package/cjs/internal/themes/Theme2022.d.ts +67 -67
  509. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -5
  510. package/cjs/lib/ConditionalHandler.d.ts +12 -12
  511. package/cjs/lib/InstanceWithAnchorElement.d.ts +5 -5
  512. package/cjs/lib/LayoutEvents.d.ts +4 -4
  513. package/cjs/lib/ModalStack.d.ts +14 -14
  514. package/cjs/lib/SSRSafe.d.ts +7 -7
  515. package/cjs/lib/Supports.d.ts +1 -1
  516. package/cjs/lib/Upgrades.d.ts +6 -6
  517. package/cjs/lib/animation/index.d.ts +6 -6
  518. package/cjs/lib/animation/presets.d.ts +18 -18
  519. package/cjs/lib/animation/stepper.d.ts +1 -1
  520. package/cjs/lib/callChildRef/callChildRef.d.ts +3 -3
  521. package/cjs/lib/client.d.ts +16 -16
  522. package/cjs/lib/createPropsGetter.d.ts +3 -3
  523. package/cjs/lib/currentEnvironment.d.ts +3 -3
  524. package/cjs/lib/date/InternalDate.d.ts +58 -58
  525. package/cjs/lib/date/InternalDateCalculator.d.ts +6 -6
  526. package/cjs/lib/date/InternalDateGetter.d.ts +15 -15
  527. package/cjs/lib/date/InternalDateSetter.d.ts +6 -6
  528. package/cjs/lib/date/InternalDateTransformer.d.ts +12 -12
  529. package/cjs/lib/date/InternalDateValidator.d.ts +12 -12
  530. package/cjs/lib/date/constants.d.ts +28 -28
  531. package/cjs/lib/date/localeSets.d.ts +5 -5
  532. package/cjs/lib/date/types.d.ts +94 -94
  533. package/cjs/lib/dom/getDOMRect.d.ts +11 -11
  534. package/cjs/lib/dom/getScrollWidth.d.ts +1 -1
  535. package/cjs/lib/dom/tabbableHelpers.d.ts +16 -16
  536. package/cjs/lib/events/MouseDrag.d.ts +58 -58
  537. package/cjs/lib/events/fixClickFocusIE.d.ts +1 -1
  538. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  539. package/cjs/lib/events/keyListener.d.ts +7 -7
  540. package/cjs/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  541. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +7 -7
  542. package/cjs/lib/events/keyboard/extractCode.d.ts +3 -3
  543. package/cjs/lib/events/keyboard/identifiers.d.ts +48 -48
  544. package/cjs/lib/events/stopPropagation.d.ts +1 -1
  545. package/cjs/lib/events/tabListener.d.ts +1 -1
  546. package/cjs/lib/extractKeyboardAction.d.ts +13 -13
  547. package/cjs/lib/filterProps.d.ts +12 -12
  548. package/cjs/lib/forwardRefAndName.d.ts +5 -5
  549. package/cjs/lib/getDisplayName.d.ts +3 -3
  550. package/cjs/lib/listenFocusOutside.d.ts +8 -8
  551. package/cjs/lib/locale/LocaleContext.d.ts +7 -7
  552. package/cjs/lib/locale/LocaleHelper.d.ts +9 -9
  553. package/cjs/lib/locale/constants.d.ts +2 -2
  554. package/cjs/lib/locale/decorators.d.ts +36 -36
  555. package/cjs/lib/locale/index.d.ts +3 -3
  556. package/cjs/lib/locale/types.d.ts +21 -21
  557. package/cjs/lib/locale/useLocaleForControl.d.ts +3 -3
  558. package/cjs/lib/memo.d.ts +3 -3
  559. package/cjs/lib/needsPolyfillPlaceholder.d.ts +6 -6
  560. package/cjs/lib/net/fetch.d.ts +13 -13
  561. package/cjs/lib/reactGetTextContent.d.ts +2 -2
  562. package/cjs/lib/rootNode/getRootNode.d.ts +12 -12
  563. package/cjs/lib/rootNode/index.d.ts +2 -2
  564. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +52 -52
  565. package/cjs/lib/stringUtils.d.ts +1 -1
  566. package/cjs/lib/styles/ColorFactory.d.ts +11 -11
  567. package/cjs/lib/styles/ColorFunctions.d.ts +11 -11
  568. package/cjs/lib/styles/ColorHelpers.d.ts +21 -21
  569. package/cjs/lib/styles/ColorKeywords.d.ts +150 -150
  570. package/cjs/lib/styles/ColorObject.d.ts +52 -52
  571. package/cjs/lib/styles/DimensionFunctions.d.ts +1 -1
  572. package/cjs/lib/styles/HoldSelectionColor.d.ts +1 -1
  573. package/cjs/lib/styles/Mixins.d.ts +2 -2
  574. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  575. package/cjs/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  576. package/cjs/lib/theming/AnimationKeyframes.d.ts +7 -7
  577. package/cjs/lib/theming/Emotion.d.ts +15 -15
  578. package/cjs/lib/theming/Theme.d.ts +3 -3
  579. package/cjs/lib/theming/ThemeContext.d.ts +2 -2
  580. package/cjs/lib/theming/ThemeFactory.d.ts +7 -7
  581. package/cjs/lib/theming/ThemeFactory.js +7 -0
  582. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  583. package/cjs/lib/theming/ThemeHelpers.d.ts +15 -6
  584. package/cjs/lib/theming/ThemeHelpers.js +24 -5
  585. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  586. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -1
  587. package/cjs/lib/theming/themes/DarkTheme.js +1 -1
  588. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  589. package/cjs/lib/theming/themes/DefaultTheme.d.ts +1 -1
  590. package/cjs/lib/theming/themes/DefaultTheme8pxOld.d.ts +1 -1
  591. package/cjs/lib/theming/themes/DefaultThemeMobile.d.ts +3 -3
  592. package/cjs/lib/theming/themes/FlatTheme8pxOld.d.ts +1 -1
  593. package/cjs/lib/theming/themes/Theme2022.d.ts +1 -1
  594. package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -1
  595. package/cjs/lib/theming/themes/Theme2022Dark.js +4 -3
  596. package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -1
  597. package/cjs/lib/theming/useTheme.d.ts +1 -1
  598. package/cjs/lib/uidUtils.d.ts +1 -1
  599. package/cjs/lib/utils.d.ts +80 -80
  600. package/cjs/lib/withClassWrapper.d.ts +71 -71
  601. package/components/Autocomplete/Autocomplete/Autocomplete.js +4 -6
  602. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  603. package/components/Autocomplete/Autocomplete.d.ts +117 -119
  604. package/components/Autocomplete/Autocomplete.styles.d.ts +4 -4
  605. package/components/Autocomplete/index.d.ts +1 -1
  606. package/components/Button/Button/Button.js +0 -4
  607. package/components/Button/Button/Button.js.map +1 -1
  608. package/components/Button/Button.d.ts +157 -160
  609. package/components/Button/Button.mixins.d.ts +6 -6
  610. package/components/Button/Button.styles.d.ts +72 -72
  611. package/components/Button/index.d.ts +1 -1
  612. package/components/Center/Center/Center.js +1 -6
  613. package/components/Center/Center/Center.js.map +1 -1
  614. package/components/Center/Center.d.ts +26 -29
  615. package/components/Center/Center.styles.d.ts +7 -7
  616. package/components/Center/index.d.ts +1 -1
  617. package/components/Checkbox/Checkbox/Checkbox.js +0 -4
  618. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  619. package/components/Checkbox/Checkbox.d.ts +101 -104
  620. package/components/Checkbox/Checkbox.styles.d.ts +24 -24
  621. package/components/Checkbox/index.d.ts +1 -1
  622. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  623. package/components/ComboBox/ComboBox.d.ts +195 -194
  624. package/components/ComboBox/index.d.ts +1 -1
  625. package/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
  626. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +1 -6
  627. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  628. package/components/CurrencyInput/CurrencyInput.d.ts +103 -106
  629. package/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
  630. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +20 -20
  631. package/components/CurrencyInput/CursorHelper.d.ts +10 -10
  632. package/components/CurrencyInput/SelectionHelper.d.ts +11 -11
  633. package/components/CurrencyInput/constants.d.ts +5 -5
  634. package/components/CurrencyInput/index.d.ts +1 -1
  635. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +1 -6
  636. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  637. package/components/CurrencyLabel/CurrencyLabel.d.ts +20 -23
  638. package/components/CurrencyLabel/index.d.ts +1 -1
  639. package/components/DateInput/DateFragmentsView.d.ts +20 -20
  640. package/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
  641. package/components/DateInput/DateInput.d.ts +104 -104
  642. package/components/DateInput/DateInput.styles.d.ts +10 -10
  643. package/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
  644. package/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
  645. package/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
  646. package/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
  647. package/components/DateInput/helpers/inputNumber.d.ts +5 -5
  648. package/components/DateInput/index.d.ts +1 -1
  649. package/components/DatePicker/DatePicker/DatePicker.js +1 -6
  650. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  651. package/components/DatePicker/DatePicker.d.ts +129 -133
  652. package/components/DatePicker/DatePicker.styles.d.ts +3 -3
  653. package/components/DatePicker/DatePickerHelpers.d.ts +2 -2
  654. package/components/DatePicker/Picker/Picker.js +1 -3
  655. package/components/DatePicker/Picker/Picker.js.map +1 -1
  656. package/components/DatePicker/Picker.d.ts +33 -33
  657. package/components/DatePicker/Picker.styles.d.ts +5 -5
  658. package/components/DatePicker/index.d.ts +1 -1
  659. package/components/DatePicker/locale/index.d.ts +4 -4
  660. package/components/DatePicker/locale/locales/en.d.ts +2 -2
  661. package/components/DatePicker/locale/locales/ru.d.ts +2 -2
  662. package/components/DatePicker/locale/types.d.ts +5 -5
  663. package/components/Dropdown/Dropdown/Dropdown.js +5 -9
  664. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  665. package/components/Dropdown/Dropdown.d.ts +125 -128
  666. package/components/Dropdown/index.d.ts +1 -1
  667. package/components/DropdownMenu/DropdownMenu.d.ts +62 -62
  668. package/components/DropdownMenu/index.d.ts +1 -1
  669. package/components/FileUploader/FileUploader/FileUploader.js +2 -9
  670. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  671. package/components/FileUploader/FileUploader.d.ts +51 -56
  672. package/components/FileUploader/FileUploader.mixins.d.ts +1 -1
  673. package/components/FileUploader/FileUploader.styles.d.ts +33 -33
  674. package/components/FileUploader/index.d.ts +5 -5
  675. package/components/FileUploader/locale/index.d.ts +4 -4
  676. package/components/FileUploader/locale/locales/en.d.ts +2 -2
  677. package/components/FileUploader/locale/locales/ru.d.ts +2 -2
  678. package/components/FileUploader/locale/types.d.ts +6 -6
  679. package/components/FxInput/FxInput/FxInput.js +0 -4
  680. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  681. package/components/FxInput/FxInput.d.ts +50 -53
  682. package/components/FxInput/index.d.ts +1 -1
  683. package/components/Gapped/Gapped/Gapped.js +1 -8
  684. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  685. package/components/Gapped/Gapped.d.ts +56 -60
  686. package/components/Gapped/index.d.ts +1 -1
  687. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +1 -4
  688. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  689. package/components/GlobalLoader/GlobalLoader.d.ts +103 -106
  690. package/components/GlobalLoader/GlobalLoaderView.d.ts +13 -13
  691. package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -16
  692. package/components/GlobalLoader/index.d.ts +1 -1
  693. package/components/GlobalLoader/useParams.d.ts +22 -22
  694. package/components/Group/Group/Group.js +0 -4
  695. package/components/Group/Group/Group.js.map +1 -1
  696. package/components/Group/Group.d.ts +15 -18
  697. package/components/Group/Group.styles.d.ts +8 -8
  698. package/components/Group/index.d.ts +1 -1
  699. package/components/Hint/Hint.d.ts +85 -85
  700. package/components/Hint/Hint.styles.d.ts +6 -6
  701. package/components/Hint/index.d.ts +1 -1
  702. package/components/Input/Input/Input.js +1 -6
  703. package/components/Input/Input/Input.js.map +1 -1
  704. package/components/Input/Input.d.ts +154 -157
  705. package/components/Input/Input.styles.d.ts +43 -43
  706. package/components/Input/index.d.ts +1 -1
  707. package/components/Kebab/Kebab.d.ts +53 -53
  708. package/components/Kebab/Kebab.styles.d.ts +12 -12
  709. package/components/Kebab/index.d.ts +1 -1
  710. package/components/Link/Link/Link.js +1 -6
  711. package/components/Link/Link/Link.js.map +1 -1
  712. package/components/Link/Link.d.ts +70 -73
  713. package/components/Link/Link.mixins.d.ts +3 -3
  714. package/components/Link/Link.styles.d.ts +15 -15
  715. package/components/Link/index.d.ts +1 -1
  716. package/components/Loader/Loader/Loader.js +2 -6
  717. package/components/Loader/Loader/Loader.js.map +1 -1
  718. package/components/Loader/Loader.d.ts +113 -117
  719. package/components/Loader/Loader.styles.d.ts +8 -8
  720. package/components/Loader/index.d.ts +1 -1
  721. package/components/MenuHeader/MenuHeader/MenuHeader.js +0 -4
  722. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  723. package/components/MenuHeader/MenuHeader.d.ts +20 -23
  724. package/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
  725. package/components/MenuHeader/index.d.ts +1 -1
  726. package/components/MenuItem/MenuItem/MenuItem.js +9 -14
  727. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  728. package/components/MenuItem/MenuItem.d.ts +107 -111
  729. package/components/MenuItem/MenuItem.styles.d.ts +15 -15
  730. package/components/MenuItem/index.d.ts +1 -1
  731. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +0 -4
  732. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  733. package/components/MenuSeparator/MenuSeparator.d.ts +12 -15
  734. package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
  735. package/components/MenuSeparator/index.d.ts +1 -1
  736. package/components/Modal/Modal/Modal.js +2 -7
  737. package/components/Modal/Modal/Modal.js.map +1 -1
  738. package/components/Modal/Modal.d.ts +89 -94
  739. package/components/Modal/Modal.styles/Modal.styles.js +1 -1
  740. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  741. package/components/Modal/Modal.styles.d.ts +40 -40
  742. package/components/Modal/ModalBody.d.ts +23 -23
  743. package/components/Modal/ModalClose/ModalClose.js +1 -2
  744. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  745. package/components/Modal/ModalClose.d.ts +2 -2
  746. package/components/Modal/ModalContext.d.ts +16 -16
  747. package/components/Modal/ModalFooter/ModalFooter.js +0 -4
  748. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  749. package/components/Modal/ModalFooter.d.ts +35 -38
  750. package/components/Modal/ModalHeader/ModalHeader.js +0 -4
  751. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  752. package/components/Modal/ModalHeader.d.ts +17 -20
  753. package/components/Modal/index.d.ts +4 -4
  754. package/components/Paging/NavigationHelper.d.ts +7 -7
  755. package/components/Paging/Paging/Paging.js +5 -12
  756. package/components/Paging/Paging/Paging.js.map +1 -1
  757. package/components/Paging/Paging.d.ts +97 -104
  758. package/components/Paging/Paging.styles.d.ts +20 -20
  759. package/components/Paging/PagingDefaultComponent.d.ts +9 -9
  760. package/components/Paging/PagingHelper.d.ts +2 -2
  761. package/components/Paging/index.d.ts +1 -1
  762. package/components/Paging/locale/index.d.ts +4 -4
  763. package/components/Paging/locale/locales/en.d.ts +2 -2
  764. package/components/Paging/locale/locales/ru.d.ts +2 -2
  765. package/components/Paging/locale/types.d.ts +3 -3
  766. package/components/PasswordInput/PasswordInput/PasswordInput.js +2 -8
  767. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  768. package/components/PasswordInput/PasswordInput.d.ts +52 -57
  769. package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
  770. package/components/PasswordInput/PasswordInputIcon.d.ts +3 -3
  771. package/components/PasswordInput/index.d.ts +1 -1
  772. package/components/Radio/Radio/Radio.js +1 -6
  773. package/components/Radio/Radio/Radio.js.map +1 -1
  774. package/components/Radio/Radio.d.ts +78 -81
  775. package/components/Radio/Radio.styles.d.ts +21 -21
  776. package/components/Radio/index.d.ts +1 -1
  777. package/components/RadioGroup/Prevent.d.ts +8 -8
  778. package/components/RadioGroup/RadioGroup/RadioGroup.js +0 -4
  779. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  780. package/components/RadioGroup/RadioGroup.d.ts +107 -110
  781. package/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
  782. package/components/RadioGroup/RadioGroupContext.d.ts +10 -10
  783. package/components/RadioGroup/index.d.ts +1 -1
  784. package/components/ResponsiveLayout/ResponsiveLayout.d.ts +12 -12
  785. package/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +11 -11
  786. package/components/ResponsiveLayout/decorator.d.ts +33 -33
  787. package/components/ResponsiveLayout/index.d.ts +3 -3
  788. package/components/ResponsiveLayout/types.d.ts +11 -11
  789. package/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
  790. package/components/ScrollContainer/ScrollBar.d.ts +41 -41
  791. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -6
  792. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  793. package/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
  794. package/components/ScrollContainer/ScrollContainer.d.ts +97 -101
  795. package/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
  796. package/components/ScrollContainer/ScrollContainer.styles.d.ts +21 -21
  797. package/components/ScrollContainer/index.d.ts +1 -1
  798. package/components/Select/Item.d.ts +9 -9
  799. package/components/Select/Select/Select.js +2 -5
  800. package/components/Select/Select/Select.js.map +1 -1
  801. package/components/Select/Select.d.ts +160 -162
  802. package/components/Select/Select.styles.d.ts +18 -18
  803. package/components/Select/index.d.ts +1 -1
  804. package/components/Select/locale/index.d.ts +4 -4
  805. package/components/Select/locale/locales/en.d.ts +2 -2
  806. package/components/Select/locale/locales/ru.d.ts +2 -2
  807. package/components/Select/locale/types.d.ts +4 -4
  808. package/components/Select/selectTheme.d.ts +3 -3
  809. package/components/SidePage/SidePage/SidePage.js +2 -6
  810. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  811. package/components/SidePage/SidePage.d.ts +111 -115
  812. package/components/SidePage/SidePage.styles.d.ts +48 -48
  813. package/components/SidePage/SidePageBody/SidePageBody.js +6 -10
  814. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  815. package/components/SidePage/SidePageBody.d.ts +20 -23
  816. package/components/SidePage/SidePageContainer/SidePageContainer.js +6 -10
  817. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  818. package/components/SidePage/SidePageContainer.d.ts +16 -19
  819. package/components/SidePage/SidePageContext.d.ts +17 -17
  820. package/components/SidePage/SidePageFooter/SidePageFooter.js +6 -10
  821. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  822. package/components/SidePage/SidePageFooter.d.ts +49 -52
  823. package/components/SidePage/SidePageHeader/SidePageHeader.js +7 -12
  824. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  825. package/components/SidePage/SidePageHeader.d.ts +44 -48
  826. package/components/SidePage/index.d.ts +5 -5
  827. package/components/Spinner/Spinner/Spinner.js +0 -4
  828. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  829. package/components/Spinner/Spinner.d.ts +67 -70
  830. package/components/Spinner/Spinner.styles.d.ts +13 -13
  831. package/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
  832. package/components/Spinner/index.d.ts +1 -1
  833. package/components/Spinner/locale/index.d.ts +4 -4
  834. package/components/Spinner/locale/locales/en.d.ts +2 -2
  835. package/components/Spinner/locale/locales/ru.d.ts +2 -2
  836. package/components/Spinner/locale/types.d.ts +4 -4
  837. package/components/Sticky/Sticky/Sticky.js +0 -4
  838. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  839. package/components/Sticky/Sticky.d.ts +60 -63
  840. package/components/Sticky/Sticky.styles.d.ts +7 -7
  841. package/components/Sticky/index.d.ts +1 -1
  842. package/components/Switcher/Switcher/Switcher.js +0 -4
  843. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  844. package/components/Switcher/Switcher.d.ts +66 -69
  845. package/components/Switcher/Switcher.styles.d.ts +11 -11
  846. package/components/Switcher/helpers.d.ts +1 -1
  847. package/components/Switcher/index.d.ts +1 -1
  848. package/components/Switcher/switcherTheme.d.ts +2 -2
  849. package/components/Tabs/Indicator/Indicator.js +0 -2
  850. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  851. package/components/Tabs/Indicator.d.ts +28 -28
  852. package/components/Tabs/Indicator.styles.d.ts +8 -8
  853. package/components/Tabs/Tab/Tab.js +0 -4
  854. package/components/Tabs/Tab/Tab.js.map +1 -1
  855. package/components/Tabs/Tab.d.ts +113 -116
  856. package/components/Tabs/Tab.styles.d.ts +27 -27
  857. package/components/Tabs/Tabs/Tabs.js +0 -5
  858. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  859. package/components/Tabs/Tabs.d.ts +56 -60
  860. package/components/Tabs/Tabs.styles.d.ts +5 -5
  861. package/components/Tabs/TabsContext.d.ts +14 -14
  862. package/components/Tabs/index.d.ts +2 -2
  863. package/components/Textarea/Textarea/Textarea.js +1 -7
  864. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  865. package/components/Textarea/Textarea.d.ts +183 -187
  866. package/components/Textarea/Textarea.styles.d.ts +15 -15
  867. package/components/Textarea/TextareaCounter/TextareaCounter.js +0 -2
  868. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  869. package/components/Textarea/TextareaCounter.d.ts +12 -12
  870. package/components/Textarea/TextareaHelpers.d.ts +11 -11
  871. package/components/Textarea/index.d.ts +1 -1
  872. package/components/Toast/Toast/Toast.js +10 -16
  873. package/components/Toast/Toast/Toast.js.map +1 -1
  874. package/components/Toast/Toast.d.ts +58 -64
  875. package/components/Toast/Toast.styles.d.ts +6 -6
  876. package/components/Toast/ToastStatic/ToastStatic.js +2 -2
  877. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  878. package/components/Toast/ToastStatic.d.ts +8 -8
  879. package/components/Toast/ToastView/ToastView.js +3 -4
  880. package/components/Toast/ToastView/ToastView.js.map +1 -1
  881. package/components/Toast/ToastView.d.ts +38 -38
  882. package/components/Toast/ToastView.styles.d.ts +8 -8
  883. package/components/Toast/index.d.ts +1 -1
  884. package/components/Toggle/Toggle/Toggle.js +0 -4
  885. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  886. package/components/Toggle/Toggle.d.ts +106 -109
  887. package/components/Toggle/Toggle.styles.d.ts +30 -30
  888. package/components/Toggle/index.d.ts +1 -1
  889. package/components/Token/Token/Token.js +0 -4
  890. package/components/Token/Token/Token.js.map +1 -1
  891. package/components/Token/Token.d.ts +36 -39
  892. package/components/Token/Token.styles.d.ts +29 -29
  893. package/components/Token/index.d.ts +1 -1
  894. package/components/TokenInput/TextWidthHelper.d.ts +18 -18
  895. package/components/TokenInput/TokenInput/TokenInput.js +0 -5
  896. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  897. package/components/TokenInput/TokenInput.d.ts +210 -214
  898. package/components/TokenInput/TokenInput.styles.d.ts +15 -15
  899. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +0 -2
  900. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  901. package/components/TokenInput/TokenInputMenu.d.ts +19 -19
  902. package/components/TokenInput/TokenInputReducer.d.ts +25 -25
  903. package/components/TokenInput/index.d.ts +1 -1
  904. package/components/TokenInput/locale/index.d.ts +4 -4
  905. package/components/TokenInput/locale/locales/en.d.ts +2 -2
  906. package/components/TokenInput/locale/locales/ru.d.ts +2 -2
  907. package/components/TokenInput/locale/types.d.ts +4 -4
  908. package/components/Tooltip/Tooltip/Tooltip.js +1 -7
  909. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  910. package/components/Tooltip/Tooltip.d.ts +160 -164
  911. package/components/Tooltip/Tooltip.styles.d.ts +5 -5
  912. package/components/Tooltip/index.d.ts +1 -1
  913. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +0 -4
  914. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  915. package/components/TooltipMenu/TooltipMenu.d.ts +66 -69
  916. package/components/TooltipMenu/index.d.ts +1 -1
  917. package/hooks/useDrop.d.ts +11 -11
  918. package/hooks/useEffectWithoutInitCall.d.ts +2 -2
  919. package/hooks/useMemoObject.d.ts +2 -2
  920. package/index.d.ts +56 -56
  921. package/internal/BGRuler.d.ts +28 -28
  922. package/internal/Calendar/Calendar/Calendar.js +1 -7
  923. package/internal/Calendar/Calendar/Calendar.js.map +1 -1
  924. package/internal/Calendar/Calendar.d.ts +57 -63
  925. package/internal/Calendar/Calendar.styles.d.ts +5 -5
  926. package/internal/Calendar/CalendarDateShape.d.ts +14 -14
  927. package/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
  928. package/internal/Calendar/CalendarUtils.d.ts +19 -19
  929. package/internal/Calendar/DayCellView.d.ts +13 -13
  930. package/internal/Calendar/DayCellView.styles.d.ts +7 -7
  931. package/internal/Calendar/DayCellViewModel.d.ts +8 -8
  932. package/internal/Calendar/Month.d.ts +33 -33
  933. package/internal/Calendar/MonthView/MonthView.js +3 -4
  934. package/internal/Calendar/MonthView/MonthView.js.map +1 -1
  935. package/internal/Calendar/MonthView.d.ts +21 -21
  936. package/internal/Calendar/MonthView.styles.d.ts +10 -10
  937. package/internal/Calendar/MonthViewModel.d.ts +14 -14
  938. package/internal/Calendar/config.d.ts +2 -2
  939. package/internal/Calendar/index.d.ts +2 -2
  940. package/internal/CommonWrapper/CommonWrapper.d.ts +33 -33
  941. package/internal/CommonWrapper/index.d.ts +1 -1
  942. package/internal/ComponentCombinator.d.ts +23 -23
  943. package/internal/ComponentTable.d.ts +22 -22
  944. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +5 -12
  945. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  946. package/internal/CustomComboBox/ComboBoxMenu.d.ts +33 -40
  947. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +3 -3
  948. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  949. package/internal/CustomComboBox/ComboBoxView.d.ts +96 -95
  950. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +1 -3
  951. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  952. package/internal/CustomComboBox/CustomComboBox.d.ts +139 -141
  953. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
  954. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
  955. package/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
  956. package/internal/CustomComboBox/index.d.ts +2 -2
  957. package/internal/CustomComboBox/locale/index.d.ts +4 -4
  958. package/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
  959. package/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
  960. package/internal/CustomComboBox/locale/types.d.ts +5 -5
  961. package/internal/DateSelect/DateSelect/DateSelect.js +2 -6
  962. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  963. package/internal/DateSelect/DateSelect.d.ts +91 -95
  964. package/internal/DateSelect/DateSelect.styles.d.ts +19 -19
  965. package/internal/DateSelect/index.d.ts +1 -1
  966. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +17 -4
  967. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  968. package/internal/DropdownContainer/DropdownContainer.d.ts +45 -41
  969. package/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -3
  970. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +36 -0
  971. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -0
  972. package/internal/DropdownContainer/getManualPosition/package.json +6 -0
  973. package/internal/DropdownContainer/getManualPosition.d.ts +19 -0
  974. package/internal/DropdownContainer/index.d.ts +1 -1
  975. package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +14 -14
  976. package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -14
  977. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +5 -12
  978. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  979. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +15 -22
  980. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +18 -18
  981. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +1 -4
  982. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  983. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +12 -15
  984. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +8 -8
  985. package/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -7
  986. package/internal/FileUploaderControl/fileUtils.d.ts +14 -14
  987. package/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -1
  988. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  989. package/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -3
  990. package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -3
  991. package/internal/FocusTrap/FocusTrap.d.ts +17 -17
  992. package/internal/FocusTrap/index.d.ts +1 -1
  993. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
  994. package/internal/HideBodyVerticalScroll/index.d.ts +1 -1
  995. package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
  996. package/internal/IgnoreLayerClick/index.d.ts +1 -1
  997. package/internal/InputLikeText/HiddenInput.d.ts +13 -13
  998. package/internal/InputLikeText/InputLikeText/InputLikeText.js +2 -8
  999. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1000. package/internal/InputLikeText/InputLikeText.d.ts +74 -78
  1001. package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
  1002. package/internal/InputLikeText/index.d.ts +1 -1
  1003. package/internal/InternalMenu/InternalMenu/InternalMenu.js +0 -4
  1004. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1005. package/internal/InternalMenu/InternalMenu.d.ts +63 -66
  1006. package/internal/InternalMenu/InternalMenu.styles.d.ts +10 -10
  1007. package/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -2
  1008. package/internal/InternalMenu/index.d.ts +1 -1
  1009. package/internal/InternalMenu/isActiveElement.d.ts +3 -3
  1010. package/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
  1011. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
  1012. package/internal/MaskCharLowLine/index.d.ts +1 -1
  1013. package/internal/MaskedInput/MaskedInput/MaskedInput.js +0 -4
  1014. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  1015. package/internal/MaskedInput/MaskedInput.d.ts +43 -46
  1016. package/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
  1017. package/internal/MaskedInput/index.d.ts +1 -1
  1018. package/internal/Menu/Menu/Menu.js +0 -4
  1019. package/internal/Menu/Menu/Menu.js.map +1 -1
  1020. package/internal/Menu/Menu.d.ts +67 -70
  1021. package/internal/Menu/Menu.styles.d.ts +9 -9
  1022. package/internal/Menu/index.d.ts +1 -1
  1023. package/internal/Menu/isActiveElement.d.ts +3 -3
  1024. package/internal/MobilePopup/MobilePopup/MobilePopup.js +0 -6
  1025. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  1026. package/internal/MobilePopup/MobilePopup.d.ts +34 -38
  1027. package/internal/MobilePopup/MobilePopup.styles.d.ts +10 -10
  1028. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +15 -15
  1029. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +10 -10
  1030. package/internal/MobilePopup/MobilePopupHeader/index.d.ts +1 -1
  1031. package/internal/MobilePopup/index.d.ts +1 -1
  1032. package/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
  1033. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
  1034. package/internal/NativeDateInput/index.d.ts +1 -1
  1035. package/internal/NativeDateInput/utils.d.ts +7 -7
  1036. package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
  1037. package/internal/Popup/Popup/Popup.js +2 -7
  1038. package/internal/Popup/Popup/Popup.js.map +1 -1
  1039. package/internal/Popup/Popup.d.ts +166 -171
  1040. package/internal/Popup/Popup.styles.d.ts +16 -16
  1041. package/internal/Popup/PopupHelper.d.ts +26 -26
  1042. package/internal/Popup/PopupPin/PopupPin.js +0 -2
  1043. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  1044. package/internal/Popup/PopupPin.d.ts +56 -56
  1045. package/internal/Popup/PopupPin.styles.d.ts +3 -3
  1046. package/internal/Popup/index.d.ts +1 -1
  1047. package/internal/Popup/types.d.ts +2 -2
  1048. package/internal/PopupMenu/PopupMenu/PopupMenu.js +2 -7
  1049. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1050. package/internal/PopupMenu/PopupMenu.d.ts +87 -91
  1051. package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
  1052. package/internal/PopupMenu/index.d.ts +1 -1
  1053. package/internal/PopupMenu/validatePositions.d.ts +2 -2
  1054. package/internal/RenderContainer/RenderContainer.d.ts +16 -16
  1055. package/internal/RenderContainer/RenderContainerTypes.d.ts +13 -13
  1056. package/internal/RenderContainer/RenderInnerContainer.d.ts +21 -21
  1057. package/internal/RenderContainer/index.d.ts +1 -1
  1058. package/internal/RenderLayer/RenderLayer.d.ts +31 -31
  1059. package/internal/RenderLayer/index.d.ts +1 -1
  1060. package/internal/ResizeDetector/ResizeDetector.d.ts +13 -13
  1061. package/internal/ResizeDetector/ResizeDetector.styles.d.ts +6 -6
  1062. package/internal/ResizeDetector/index.d.ts +1 -1
  1063. package/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -15
  1064. package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -4
  1065. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +18 -18
  1066. package/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
  1067. package/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
  1068. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +12 -12
  1069. package/internal/ThemePlayground/FxInputPlayground.d.ts +12 -12
  1070. package/internal/ThemePlayground/HintPlayground.d.ts +6 -6
  1071. package/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
  1072. package/internal/ThemePlayground/Playground.d.ts +30 -30
  1073. package/internal/ThemePlayground/Playground.styles.d.ts +23 -23
  1074. package/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
  1075. package/internal/ThemePlayground/SelectPlayground.d.ts +15 -15
  1076. package/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
  1077. package/internal/ThemePlayground/SizesGroup.d.ts +4 -4
  1078. package/internal/ThemePlayground/SwitcherPlayground.d.ts +16 -16
  1079. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +53 -53
  1080. package/internal/ThemePlayground/ThemeEditor.d.ts +36 -36
  1081. package/internal/ThemePlayground/TogglePlayground.d.ts +4 -4
  1082. package/internal/ThemePlayground/TokenInputPlayground.d.ts +9 -9
  1083. package/internal/ThemePlayground/VariableValue.d.ts +43 -43
  1084. package/internal/ThemePlayground/constants.d.ts +19 -19
  1085. package/internal/ThemePlayground/darkTheme.d.ts +269 -269
  1086. package/internal/ThemePlayground/helpers.d.ts +2 -2
  1087. package/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
  1088. package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +27 -27
  1089. package/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
  1090. package/internal/ZIndex/ZIndex.d.ts +46 -46
  1091. package/internal/ZIndex/ZIndexStorage.d.ts +21 -21
  1092. package/internal/ZIndex/index.d.ts +1 -1
  1093. package/internal/icons/16px/icon.styles.d.ts +4 -4
  1094. package/internal/icons/16px/index.d.ts +25 -25
  1095. package/internal/icons/20px/Icon.d.ts +30 -30
  1096. package/internal/icons/20px/icon.styles.d.ts +4 -4
  1097. package/internal/icons/20px/index.d.ts +2 -2
  1098. package/internal/icons/20px/svg.d.ts +14 -14
  1099. package/internal/icons/CloudIcon.d.ts +1 -1
  1100. package/internal/icons/CrossIcon.d.ts +1 -1
  1101. package/internal/icons/SpinnerIcon.d.ts +27 -27
  1102. package/internal/icons/SpinnerIcon.styles.d.ts +6 -6
  1103. package/internal/themes/DarkTheme.d.ts +138 -138
  1104. package/internal/themes/DefaultTheme.d.ts +898 -898
  1105. package/internal/themes/NotFlat.d.ts +133 -133
  1106. package/internal/themes/OldColors.d.ts +116 -116
  1107. package/internal/themes/Theme2022.d.ts +67 -67
  1108. package/internal/themes/Theme2022Dark.d.ts +5 -5
  1109. package/lib/ConditionalHandler.d.ts +12 -12
  1110. package/lib/InstanceWithAnchorElement.d.ts +5 -5
  1111. package/lib/LayoutEvents.d.ts +4 -4
  1112. package/lib/ModalStack.d.ts +14 -14
  1113. package/lib/SSRSafe.d.ts +7 -7
  1114. package/lib/Supports.d.ts +1 -1
  1115. package/lib/Upgrades.d.ts +6 -6
  1116. package/lib/animation/index.d.ts +6 -6
  1117. package/lib/animation/presets.d.ts +18 -18
  1118. package/lib/animation/stepper.d.ts +1 -1
  1119. package/lib/callChildRef/callChildRef.d.ts +3 -3
  1120. package/lib/client.d.ts +16 -16
  1121. package/lib/createPropsGetter.d.ts +3 -3
  1122. package/lib/currentEnvironment.d.ts +3 -3
  1123. package/lib/date/InternalDate.d.ts +58 -58
  1124. package/lib/date/InternalDateCalculator.d.ts +6 -6
  1125. package/lib/date/InternalDateGetter.d.ts +15 -15
  1126. package/lib/date/InternalDateSetter.d.ts +6 -6
  1127. package/lib/date/InternalDateTransformer.d.ts +12 -12
  1128. package/lib/date/InternalDateValidator.d.ts +12 -12
  1129. package/lib/date/constants.d.ts +28 -28
  1130. package/lib/date/localeSets.d.ts +5 -5
  1131. package/lib/date/types.d.ts +94 -94
  1132. package/lib/dom/getDOMRect.d.ts +11 -11
  1133. package/lib/dom/getScrollWidth.d.ts +1 -1
  1134. package/lib/dom/tabbableHelpers.d.ts +16 -16
  1135. package/lib/events/MouseDrag.d.ts +58 -58
  1136. package/lib/events/fixClickFocusIE.d.ts +1 -1
  1137. package/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
  1138. package/lib/events/keyListener.d.ts +7 -7
  1139. package/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
  1140. package/lib/events/keyboard/KeyboardMapKeys.d.ts +7 -7
  1141. package/lib/events/keyboard/extractCode.d.ts +3 -3
  1142. package/lib/events/keyboard/identifiers.d.ts +48 -48
  1143. package/lib/events/stopPropagation.d.ts +1 -1
  1144. package/lib/events/tabListener.d.ts +1 -1
  1145. package/lib/extractKeyboardAction.d.ts +13 -13
  1146. package/lib/filterProps.d.ts +12 -12
  1147. package/lib/forwardRefAndName.d.ts +5 -5
  1148. package/lib/getDisplayName.d.ts +3 -3
  1149. package/lib/listenFocusOutside.d.ts +8 -8
  1150. package/lib/locale/LocaleContext.d.ts +7 -7
  1151. package/lib/locale/LocaleHelper.d.ts +9 -9
  1152. package/lib/locale/constants.d.ts +2 -2
  1153. package/lib/locale/decorators.d.ts +36 -36
  1154. package/lib/locale/index.d.ts +3 -3
  1155. package/lib/locale/types.d.ts +21 -21
  1156. package/lib/locale/useLocaleForControl.d.ts +3 -3
  1157. package/lib/memo.d.ts +3 -3
  1158. package/lib/needsPolyfillPlaceholder.d.ts +6 -6
  1159. package/lib/net/fetch.d.ts +13 -13
  1160. package/lib/reactGetTextContent.d.ts +2 -2
  1161. package/lib/rootNode/getRootNode.d.ts +12 -12
  1162. package/lib/rootNode/index.d.ts +2 -2
  1163. package/lib/rootNode/rootNodeDecorator.d.ts +52 -52
  1164. package/lib/stringUtils.d.ts +1 -1
  1165. package/lib/styles/ColorFactory.d.ts +11 -11
  1166. package/lib/styles/ColorFunctions.d.ts +11 -11
  1167. package/lib/styles/ColorHelpers.d.ts +21 -21
  1168. package/lib/styles/ColorKeywords.d.ts +150 -150
  1169. package/lib/styles/ColorObject.d.ts +52 -52
  1170. package/lib/styles/DimensionFunctions.d.ts +1 -1
  1171. package/lib/styles/HoldSelectionColor.d.ts +1 -1
  1172. package/lib/styles/Mixins.d.ts +2 -2
  1173. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  1174. package/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
  1175. package/lib/theming/AnimationKeyframes.d.ts +7 -7
  1176. package/lib/theming/Emotion.d.ts +15 -15
  1177. package/lib/theming/Theme.d.ts +3 -3
  1178. package/lib/theming/ThemeContext.d.ts +2 -2
  1179. package/lib/theming/ThemeFactory/ThemeFactory.js +7 -1
  1180. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  1181. package/lib/theming/ThemeFactory.d.ts +7 -7
  1182. package/lib/theming/ThemeHelpers/ThemeHelpers.js +18 -4
  1183. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  1184. package/lib/theming/ThemeHelpers.d.ts +15 -6
  1185. package/lib/theming/themes/DarkTheme/DarkTheme.js +2 -2
  1186. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  1187. package/lib/theming/themes/DarkTheme.d.ts +1 -1
  1188. package/lib/theming/themes/DefaultTheme.d.ts +1 -1
  1189. package/lib/theming/themes/DefaultTheme8pxOld.d.ts +1 -1
  1190. package/lib/theming/themes/DefaultThemeMobile.d.ts +3 -3
  1191. package/lib/theming/themes/FlatTheme8pxOld.d.ts +1 -1
  1192. package/lib/theming/themes/Theme2022.d.ts +1 -1
  1193. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +2 -1
  1194. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1195. package/lib/theming/themes/Theme2022Dark.d.ts +1 -1
  1196. package/lib/theming/useTheme.d.ts +1 -1
  1197. package/lib/uidUtils.d.ts +1 -1
  1198. package/lib/utils.d.ts +80 -80
  1199. package/lib/withClassWrapper.d.ts +71 -71
  1200. package/package.json +2 -5
  1201. package/cjs/internal/DataTids/DATATIDS.md +0 -12
  1202. package/cjs/internal/DataTids/DataTids.d.ts +0 -12
  1203. package/cjs/internal/DataTids/DataTids.js +0 -50
  1204. package/cjs/internal/DataTids/DataTids.js.map +0 -1
  1205. package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
  1206. package/cjs/internal/DataTids/DataTids.styles.js +0 -41
  1207. package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
  1208. package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
  1209. package/cjs/internal/DataTids/componentsDataTids.js +0 -16
  1210. package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
  1211. package/internal/DataTids/DATATIDS.md +0 -12
  1212. package/internal/DataTids/DataTids/DataTids.js +0 -69
  1213. package/internal/DataTids/DataTids/DataTids.js.map +0 -1
  1214. package/internal/DataTids/DataTids/package.json +0 -6
  1215. package/internal/DataTids/DataTids.d.ts +0 -12
  1216. package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -22
  1217. package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
  1218. package/internal/DataTids/DataTids.styles/package.json +0 -6
  1219. package/internal/DataTids/DataTids.styles.d.ts +0 -7
  1220. package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -14
  1221. package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
  1222. package/internal/DataTids/componentsDataTids/package.json +0 -6
  1223. package/internal/DataTids/componentsDataTids.d.ts +0 -5
@@ -1,66 +1,63 @@
1
- import React from 'react';
2
- import { ScrollContainerScrollState } from '../../components/ScrollContainer';
3
- interface MenuProps {
4
- children?: React.ReactNode;
5
- hasShadow?: boolean;
6
- /**
7
- * Максимальная высота применяется только для скролл контейнера
8
- *
9
- * Высота `header` и `footer` в нее не включены
10
- */
11
- maxHeight?: number | string;
12
- onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;
13
- width?: number | string;
14
- preventWindowScroll?: boolean;
15
- onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
16
- header?: React.ReactNode;
17
- footer?: React.ReactNode;
18
- cyclicSelection?: boolean;
19
- initialSelectedItemIndex?: number;
20
- }
21
- interface MenuState {
22
- highlightedIndex: number;
23
- maxHeight: number | string;
24
- scrollState: ScrollContainerScrollState;
25
- }
26
- export declare const InternalMenuDataTids: {
27
- readonly root: "InternalMenu__root";
28
- };
29
- declare type DefaultProps = Required<Pick<MenuProps, 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll' | 'cyclicSelection' | 'initialSelectedItemIndex'>>;
30
- export declare class InternalMenu extends React.PureComponent<MenuProps, MenuState> {
31
- static __KONTUR_REACT_UI__: string;
32
- static defaultProps: DefaultProps;
33
- private getProps;
34
- state: MenuState;
35
- private theme;
36
- private scrollContainer;
37
- private highlighted;
38
- private setRootNode;
39
- private header;
40
- private footer;
41
- componentDidMount(): void;
42
- componentDidUpdate(prevProps: MenuProps): void;
43
- focus(): void;
44
- render(): JSX.Element;
45
- private renderMain;
46
- private renderHeader;
47
- private renderFooter;
48
- private renderMenuSeparatorWithNoMargin;
49
- private focusOnRootElement;
50
- private shouldRecalculateMaxHeight;
51
- private calculateMaxHeight;
52
- private setInitialSelection;
53
- private refScrollContainer;
54
- private refHighlighted;
55
- private scrollToSelected;
56
- private select;
57
- private highlightItem;
58
- private unhighlight;
59
- private move;
60
- private moveUp;
61
- private moveDown;
62
- private isEmpty;
63
- private handleKeyDown;
64
- private handleScrollStateChange;
65
- }
66
- export {};
1
+ import React from 'react';
2
+ import { ScrollContainerScrollState } from '../../components/ScrollContainer';
3
+ interface MenuProps {
4
+ children?: React.ReactNode;
5
+ hasShadow?: boolean;
6
+ /**
7
+ * Максимальная высота применяется только для скролл контейнера
8
+ *
9
+ * Высота `header` и `footer` в нее не включены
10
+ */
11
+ maxHeight?: number | string;
12
+ onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;
13
+ width?: number | string;
14
+ preventWindowScroll?: boolean;
15
+ onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;
16
+ header?: React.ReactNode;
17
+ footer?: React.ReactNode;
18
+ cyclicSelection?: boolean;
19
+ initialSelectedItemIndex?: number;
20
+ }
21
+ interface MenuState {
22
+ highlightedIndex: number;
23
+ maxHeight: number | string;
24
+ scrollState: ScrollContainerScrollState;
25
+ }
26
+ declare type DefaultProps = Required<Pick<MenuProps, 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll' | 'cyclicSelection' | 'initialSelectedItemIndex'>>;
27
+ export declare class InternalMenu extends React.PureComponent<MenuProps, MenuState> {
28
+ static __KONTUR_REACT_UI__: string;
29
+ static defaultProps: DefaultProps;
30
+ private getProps;
31
+ state: MenuState;
32
+ private theme;
33
+ private scrollContainer;
34
+ private highlighted;
35
+ private setRootNode;
36
+ private header;
37
+ private footer;
38
+ componentDidMount(): void;
39
+ componentDidUpdate(prevProps: MenuProps): void;
40
+ focus(): void;
41
+ render(): JSX.Element;
42
+ private renderMain;
43
+ private renderHeader;
44
+ private renderFooter;
45
+ private renderMenuSeparatorWithNoMargin;
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,10 +1,10 @@
1
- import { Theme } from '../../lib/theming/Theme';
2
- export declare const styles: {
3
- root(t: Theme): string;
4
- shadow(t: Theme): string;
5
- wrapper(): string;
6
- headerWrapper(): string;
7
- footerWrapper(): string;
8
- contentWrapper(): string;
9
- menuSeparatorWrapper(t: Theme): string;
10
- };
1
+ import { Theme } from '../../lib/theming/Theme';
2
+ export declare const styles: {
3
+ root(t: Theme): string;
4
+ shadow(t: Theme): string;
5
+ wrapper(): string;
6
+ headerWrapper(): string;
7
+ footerWrapper(): string;
8
+ contentWrapper(): string;
9
+ menuSeparatorWrapper(t: Theme): string;
10
+ };
@@ -1,2 +1,2 @@
1
- import React from 'react';
2
- export declare const addIconPaddingIfPartOfMenu: (child: React.ReactNode, enableIconPadding: boolean) => {} | null | undefined;
1
+ import React from 'react';
2
+ export declare const addIconPaddingIfPartOfMenu: (child: React.ReactNode, enableIconPadding: boolean) => {} | null | undefined;
@@ -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';
@@ -13,9 +13,6 @@ import { MaskCharLowLine } from "../../MaskCharLowLine";
13
13
  import { cx } from "../../../lib/theming/Emotion";
14
14
  import { createPropsGetter } from "../../../lib/createPropsGetter";
15
15
  import { styles } from "../MaskedInput.styles";
16
- export var MaskedInputDataTids = {
17
- root: 'MaskedInput__root'
18
- };
19
16
  export var MaskedInput = /*#__PURE__*/function (_React$PureComponent) {
20
17
  _inheritsLoose(MaskedInput, _React$PureComponent);
21
18
 
@@ -190,7 +187,6 @@ export var MaskedInput = /*#__PURE__*/function (_React$PureComponent) {
190
187
  }) : _char;
191
188
  });
192
189
  return /*#__PURE__*/React.createElement("span", {
193
- "data-tid": MaskedInputDataTids.root,
194
190
  className: styles.container(),
195
191
  "x-ms-format-detection": "none"
196
192
  }, /*#__PURE__*/React.createElement(ReactInputMask, _extends({}, inputProps, {
@@ -1 +1 @@
1
- {"version":3,"sources":["MaskedInput.tsx"],"names":["React","ReactInputMask","isNonNullable","ThemeContext","MaskCharLowLine","cx","createPropsGetter","styles","MaskedInputDataTids","root","MaskedInput","props","getProps","defaultProps","input","reactInputMask","getValue","value","toString","defaultValue","refInput","refMaskedInput","handleChange","event","target","state","handleUnexpectedInput","setState","originValue","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","theme","renderMain","hasLeftIcon","hasRightIcon","maxLength","style","inputProps","leftHelper","textAlign","color","slice","leftClass","inputMaskLeft","rightHelper","map","_char","i","container","inputMask","PureComponent","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React from 'react';\nimport ReactInputMask, { InputState, MaskOptions } from 'react-input-mask';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { cx } from '../../lib/theming/Emotion';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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\n // Users can unmask value themselves. In these cases we take origin value length\n originValue: string;\n\n emptyValue: string;\n focused: boolean;\n}\n\ntype DefaultProps = Required<Pick<MaskedInputProps, 'maskChar'>>;\n\nexport const MaskedInputDataTids = {\n root: 'MaskedInput__root',\n} as const;\n\nexport class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {\n public static __KONTUR_REACT_UI__ = 'MaskedInput';\n\n public static defaultProps: DefaultProps = {\n maskChar: '_',\n };\n\n private getProps = createPropsGetter(MaskedInput.defaultProps);\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 originValue: 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, originValue } = this.state;\n\n const leftHelper = style?.textAlign !== 'right' && (\n <span style={{ color: 'transparent' }}>{emptyValue.slice(0, originValue.length)}</span>\n );\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n\n const rightHelper = emptyValue\n .slice(originValue.length)\n .split('')\n .map((_char, i) => (_char === '_' ? <MaskCharLowLine key={i} /> : _char));\n\n return (\n <span data-tid={MaskedInputDataTids.root} 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 if (isNonNullable(props.value)) {\n return props.value.toString();\n }\n\n if (isNonNullable(props.defaultValue)) {\n return props.defaultValue.toString();\n }\n\n return '';\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, originValue: 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.getProps().maskChar);\n\n if (newState.value !== oldState.value && userInput === null) {\n this.setState({\n value: newState.value,\n originValue: newState.value,\n });\n }\n\n options.mask.split('').forEach((char: string, index: number) => {\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","isNonNullable","ThemeContext","MaskCharLowLine","cx","createPropsGetter","styles","MaskedInput","props","getProps","defaultProps","input","reactInputMask","getValue","value","toString","defaultValue","refInput","refMaskedInput","handleChange","event","target","state","handleUnexpectedInput","setState","originValue","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","theme","renderMain","hasLeftIcon","hasRightIcon","maxLength","style","inputProps","leftHelper","textAlign","color","slice","leftClass","inputMaskLeft","rightHelper","map","_char","i","container","inputMask","PureComponent","__KONTUR_REACT_UI__"],"mappings":"+XAAA;AACA;AACA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,cAAP,MAAwD,kBAAxD;;AAEA,SAASC,aAAT,QAA8B,iBAA9B;AACA,SAASC,YAAT,QAA6B,gCAA7B;;AAEA,SAASC,eAAT,QAAgC,oBAAhC;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,iBAAT,QAAkC,6BAAlC;;AAEA,SAASC,MAAT,QAAuB,sBAAvB;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,WAAaC,WAAb;;;;;;;;;;;;;AAaE,uBAAmBC,MAAnB,EAA4C;AAC1C,4CAAMA,MAAN,UAD0C,MANpCC,QAMoC,GANzBJ,iBAAiB,CAACE,WAAW,CAACG,YAAb,CAMQ,OAJrCC,KAIqC,GAJJ,IAII,OAFpCC,cAEoC,GAFI,IAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFpCC,IAAAA,QAvFoC,GAuFzB,UAACL,KAAD,EAAqC;AACtD,UAAIP,aAAa,CAACO,KAAK,CAACM,KAAP,CAAjB,EAAgC;AAC9B,eAAON,KAAK,CAACM,KAAN,CAAYC,QAAZ,EAAP;AACD;;AAED,UAAId,aAAa,CAACO,KAAK,CAACQ,YAAP,CAAjB,EAAuC;AACrC,eAAOR,KAAK,CAACQ,YAAN,CAAmBD,QAAnB,EAAP;AACD;;AAED,aAAO,EAAP;AACD,KAjG2C;;AAmGpCE,IAAAA,QAnGoC,GAmGzB,UAACN,KAAD,EAAoC;AACrD,YAAKA,KAAL,GAAaA,KAAb;AACD,KArG2C;;AAuGpCO,IAAAA,cAvGoC,GAuGnB,UAACN,cAAD,EAAoC;AAC3D,YAAKA,cAAL,GAAsBA,cAAtB;AACD,KAzG2C;;AA2GpCO,IAAAA,YA3GoC,GA2GrB,UAACC,KAAD,EAAgD;AACrE,UAAIA,KAAK,CAACC,MAAN,CAAaP,KAAb,KAAuB,MAAKQ,KAAL,CAAWR,KAAtC,EAA6C;AAC3C,cAAKS,qBAAL;AACD,OAFD,MAEO;AACL,cAAKC,QAAL,CAAc,EAAEV,KAAK,EAAEM,KAAK,CAACC,MAAN,CAAaP,KAAtB,EAA6BW,WAAW,EAAEL,KAAK,CAACC,MAAN,CAAaP,KAAvD,EAAd;AACA,YAAI,MAAKN,KAAL,CAAWkB,aAAf,EAA8B;AAC5B,gBAAKlB,KAAL,CAAWkB,aAAX,CAAyBN,KAAK,CAACC,MAAN,CAAaP,KAAtC;AACD;AACD,YAAI,MAAKN,KAAL,CAAWmB,QAAf,EAAyB;AACvB,gBAAKnB,KAAL,CAAWmB,QAAX,CAAoBP,KAApB;AACD;AACF;AACF,KAvH2C;;AAyHpCQ,IAAAA,WAzHoC,GAyHtB,UAACR,KAAD,EAA+C;AACnE,YAAKI,QAAL,CAAc,EAAEK,OAAO,EAAE,IAAX,EAAd;;AAEA,UAAI,MAAKrB,KAAL,CAAWsB,OAAf,EAAwB;AACtB,cAAKtB,KAAL,CAAWsB,OAAX,CAAmBV,KAAnB;AACD;AACF,KA/H2C;;AAiIpCW,IAAAA,UAjIoC,GAiIvB,UAACX,KAAD,EAA+C;AAClE,YAAKI,QAAL,CAAc,EAAEK,OAAO,EAAE,KAAX,EAAd;;AAEA,UAAI,MAAKrB,KAAL,CAAWwB,MAAf,EAAuB;AACrB,cAAKxB,KAAL,CAAWwB,MAAX,CAAkBZ,KAAlB;AACD;AACF,KAvI2C;;AAyIpCa,IAAAA,UAzIoC,GAyIvB;AACnBC,IAAAA,QADmB;AAEnBC,IAAAA,QAFmB;AAGnBC,IAAAA,SAHmB;AAInBC,IAAAA,OAJmB;AAKhB;AACH,UAAMC,gBAAgB,GAAG,IAAIC,KAAJ,CAAUF,OAAO,CAACG,IAAR,CAAaC,MAAvB,EAA+BC,IAA/B,CAAoC,MAAKjC,QAAL,GAAgBkC,QAApD,CAAzB;;AAEA,UAAIT,QAAQ,CAACpB,KAAT,KAAmBqB,QAAQ,CAACrB,KAA5B,IAAqCsB,SAAS,KAAK,IAAvD,EAA6D;AAC3D,cAAKZ,QAAL,CAAc;AACZV,UAAAA,KAAK,EAAEoB,QAAQ,CAACpB,KADJ;AAEZW,UAAAA,WAAW,EAAES,QAAQ,CAACpB,KAFV,EAAd;;AAID;;AAEDuB,MAAAA,OAAO,CAACG,IAAR,CAAaI,KAAb,CAAmB,EAAnB,EAAuBC,OAAvB,CAA+B,UAACC,MAAD,EAAeC,KAAf,EAAiC;AAC9D,YAAIV,OAAO,CAACW,UAAR,CAAmBC,QAAnB,CAA4BF,KAA5B,CAAJ,EAAwC;AACtCT,UAAAA,gBAAgB,CAACS,KAAD,CAAhB,GAA0BD,MAA1B;AACD;;AAED,YAAIZ,QAAQ,CAACpB,KAAT,CAAeiC,KAAf,CAAJ,EAA2B;AACzBT,UAAAA,gBAAgB,CAACS,KAAD,CAAhB,GAA0Bb,QAAQ,CAACpB,KAAT,CAAeiC,KAAf,CAA1B;AACD;AACF,OARD;;AAUA,UAAMG,UAAU,GAAGZ,gBAAgB,CAACa,IAAjB,CAAsB,EAAtB,CAAnB;;AAEA,UAAI,MAAK7B,KAAL,CAAW4B,UAAX,KAA0BA,UAA9B,EAA0C;AACxC,cAAK1B,QAAL,CAAc;AACZ0B,UAAAA,UAAU,EAAVA,UADY,EAAd;;AAGD;;AAED,aAAOhB,QAAP;AACD,KA3K2C;;AA6KpCkB,IAAAA,aA7KoC,GA6KpB,oBAAM,MAAK5C,KAAL,CAAW6C,cAAX,IAA6B,MAAK/B,KAAL,CAAWO,OAA9C,EA7KoB;;AA+KpCN,IAAAA,qBA/KoC,GA+KZ,YAAM;AACpC,UAAI,MAAKf,KAAL,CAAW8C,iBAAf,EAAkC;AAChC,cAAK9C,KAAL,CAAW8C,iBAAX,CAA6B,MAAKhC,KAAL,CAAWR,KAAxC;AACD;AACF,KAnL2C,CAG1C,MAAKQ,KAAL,GAAa,EACXR,KAAK,EAAE,MAAKD,QAAL,CAAcL,MAAd,CADI,EAEXiB,WAAW,EAAE,MAAKZ,QAAL,CAAcL,MAAd,CAFF,EAGX0C,UAAU,EAAE,EAHD,EAIXrB,OAAO,EAAE,KAJE,EAAb,CAH0C,aAS3C,CAtBH,0CAwBS0B,iBAxBT,GAwBE,6BAA2B,CACzB,IAAI,KAAK3C,cAAT,EAAyB,CACvB;AACA,WAAKA,cAAL,CAAoB4C,WAApB,GACD,CACF,CA7BH,QA+BSC,kBA/BT,GA+BE,4BAA0BC,SAA1B,EAAuD,CACrD,IAAI,KAAKlD,KAAL,CAAWM,KAAX,KAAqB4C,SAAS,CAAC5C,KAAnC,EAA0C,CACxC,KAAKU,QAAL,CAAc,EACZV,KAAK,EAAE,KAAKN,KAAL,CAAWM,KAAX,GAAmB,KAAKN,KAAL,CAAWM,KAAX,CAAiBC,QAAjB,EAAnB,GAAiD,EAD5C,EAAd,EAGD,CACF,CArCH,QAuCS4C,MAvCT,GAuCE,kBAAgB,mBACd,oBACE,oBAAC,YAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,OAAO,MAAI,CAACC,UAAL,EAAP,CACD,CAJH,CADF,CAQD,CAhDH,QAkDUA,UAlDV,GAkDE,sBAAqB,CACnB,kBAWI,KAAKrD,KAXT,CACEmC,QADF,eACEA,QADF,CAEEU,cAFF,eAEEA,cAFF,CAGES,WAHF,eAGEA,WAHF,CAIEC,YAJF,eAIEA,YAJF,CAKEC,SALF,eAKEA,SALF,CAMEtC,aANF,eAMEA,aANF,CAOE4B,iBAPF,eAOEA,iBAPF,CAQEtC,YARF,eAQEA,YARF,CASEiD,KATF,eASEA,KATF,CAUKC,UAVL,yDAYA,kBAA2C,KAAK5C,KAAhD,CAAQ4B,UAAR,eAAQA,UAAR,CAAoBpC,KAApB,eAAoBA,KAApB,CAA2BW,WAA3B,eAA2BA,WAA3B,CAEA,IAAM0C,UAAU,GAAG,CAAAF,KAAK,QAAL,YAAAA,KAAK,CAAEG,SAAP,MAAqB,OAArB,iBACjB,8BAAM,KAAK,EAAE,EAAEC,KAAK,EAAE,aAAT,EAAb,IAAwCnB,UAAU,CAACoB,KAAX,CAAiB,CAAjB,EAAoB7C,WAAW,CAACgB,MAAhC,CAAxC,CADF,CAGA,IAAM8B,SAAS,GAAG,CAAAN,KAAK,QAAL,YAAAA,KAAK,CAAEG,SAAP,MAAqB,OAArB,IAAgC9D,MAAM,CAACkE,aAAP,EAAlD,CAEA,IAAMC,WAAW,GAAGvB,UAAU,CAC3BoB,KADiB,CACX7C,WAAW,CAACgB,MADD,EAEjBG,KAFiB,CAEX,EAFW,EAGjB8B,GAHiB,CAGb,UAACC,KAAD,EAAQC,CAAR,UAAeD,KAAK,KAAK,GAAV,gBAAgB,oBAAC,eAAD,IAAiB,GAAG,EAAEC,CAAtB,GAAhB,GAA8CD,KAA7D,EAHa,CAApB,CAKA,oBACE,8BAAM,SAAS,EAAErE,MAAM,CAACuE,SAAP,EAAjB,EAAqC,yBAAsB,MAA3D,iBACE,oBAAC,cAAD,eACMX,UADN,IAEE,QAAQ,EAAE,IAFZ,EAGE,uBAAuB,EAAE,KAAKjC,UAHhC,EAIE,cAAc,EAAE,KAJlB,EAKE,QAAQ,EAAE,KAAKd,YALjB,EAME,OAAO,EAAE,KAAKS,WANhB,EAOE,MAAM,EAAE,KAAKG,UAPf,EAQE,KAAK,EAAEjB,KART,EASE,QAAQ,EAAE,KAAKG,QATjB,EAUE,GAAG,EAAE,KAAKC,cAVZ,EAWE,KAAK,eAAO+C,KAAP,CAXP,IADF,EAcG,KAAKb,aAAL,mBACC,8BAAM,SAAS,EAAEhD,EAAE,CAACE,MAAM,CAACwE,SAAP,CAAiB,KAAKlB,KAAtB,CAAD,EAA+BW,SAA/B,CAAnB,IACGJ,UADH,EAEGM,WAFH,CAfJ,CADF,CAuBD,CAlGH,sBAAiC1E,KAAK,CAACgF,aAAvC,EAAaxE,W,CACGyE,mB,GAAsB,a,CADzBzE,W,CAGGG,Y,GAA6B,EACzCiC,QAAQ,EAAE,GAD+B,E","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport React from 'react';\nimport ReactInputMask, { InputState, MaskOptions } from 'react-input-mask';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { cx } from '../../lib/theming/Emotion';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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\n // Users can unmask value themselves. In these cases we take origin value length\n originValue: string;\n\n emptyValue: string;\n focused: boolean;\n}\n\ntype DefaultProps = Required<Pick<MaskedInputProps, 'maskChar'>>;\n\nexport class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {\n public static __KONTUR_REACT_UI__ = 'MaskedInput';\n\n public static defaultProps: DefaultProps = {\n maskChar: '_',\n };\n\n private getProps = createPropsGetter(MaskedInput.defaultProps);\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 originValue: 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, originValue } = this.state;\n\n const leftHelper = style?.textAlign !== 'right' && (\n <span style={{ color: 'transparent' }}>{emptyValue.slice(0, originValue.length)}</span>\n );\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n\n const rightHelper = emptyValue\n .slice(originValue.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 if (isNonNullable(props.value)) {\n return props.value.toString();\n }\n\n if (isNonNullable(props.defaultValue)) {\n return props.defaultValue.toString();\n }\n\n return '';\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, originValue: 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.getProps().maskChar);\n\n if (newState.value !== oldState.value && userInput === null) {\n this.setState({\n value: newState.value,\n originValue: newState.value,\n });\n }\n\n options.mask.split('').forEach((char: string, index: number) => {\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,46 +1,43 @@
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
- originValue: string;
17
- emptyValue: string;
18
- focused: boolean;
19
- }
20
- declare type DefaultProps = Required<Pick<MaskedInputProps, 'maskChar'>>;
21
- export declare const MaskedInputDataTids: {
22
- readonly root: "MaskedInput__root";
23
- };
24
- export declare class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {
25
- static __KONTUR_REACT_UI__: string;
26
- static defaultProps: DefaultProps;
27
- private getProps;
28
- input: HTMLInputElement | null;
29
- private theme;
30
- private reactInputMask;
31
- constructor(props: MaskedInputProps);
32
- componentDidMount(): void;
33
- componentDidUpdate(prevProps: MaskedInputProps): void;
34
- render(): JSX.Element;
35
- private renderMain;
36
- private getValue;
37
- private refInput;
38
- private refMaskedInput;
39
- private handleChange;
40
- private handleFocus;
41
- private handleBlur;
42
- private preprocess;
43
- private isMaskVisible;
44
- private handleUnexpectedInput;
45
- }
46
- 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
+ originValue: string;
17
+ emptyValue: string;
18
+ focused: boolean;
19
+ }
20
+ declare type DefaultProps = Required<Pick<MaskedInputProps, 'maskChar'>>;
21
+ export declare class MaskedInput extends React.PureComponent<MaskedInputProps, MaskedInputState> {
22
+ static __KONTUR_REACT_UI__: string;
23
+ static defaultProps: DefaultProps;
24
+ private getProps;
25
+ input: HTMLInputElement | null;
26
+ private theme;
27
+ private reactInputMask;
28
+ constructor(props: MaskedInputProps);
29
+ componentDidMount(): void;
30
+ componentDidUpdate(prevProps: MaskedInputProps): void;
31
+ render(): JSX.Element;
32
+ private renderMain;
33
+ private getValue;
34
+ private refInput;
35
+ private refMaskedInput;
36
+ private handleChange;
37
+ private handleFocus;
38
+ private handleBlur;
39
+ private preprocess;
40
+ private isMaskVisible;
41
+ private handleUnexpectedInput;
42
+ }
43
+ 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';
@@ -14,9 +14,6 @@ import { isIE11 } from "../../../lib/client";
14
14
  import { createPropsGetter } from "../../../lib/createPropsGetter";
15
15
  import { styles } from "../Menu.styles";
16
16
  import { isActiveElement } from "../isActiveElement";
17
- export var MenuDataTids = {
18
- root: 'Menu__root'
19
- };
20
17
  export var Menu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
21
18
  _inheritsLoose(Menu, _React$Component);
22
19
 
@@ -186,7 +183,6 @@ export var Menu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_R
186
183
  preventWindowScroll = _this$getProps.preventWindowScroll;
187
184
 
188
185
  return /*#__PURE__*/React.createElement("div", {
189
- "data-tid": MenuDataTids.root,
190
186
  className: cx(getAlignRightClass(this.props), (_cx = {}, _cx[styles.root(this.theme)] = true, _cx[styles.shadow(this.theme)] = hasShadow, _cx)),
191
187
  style: getStyle(this.props),
192
188
  ref: this.setRootNode
@@ -1 +1 @@
1
- {"version":3,"sources":["Menu.tsx"],"names":["React","isNonNullable","ScrollContainer","ThemeContext","cx","getRootNode","rootNode","addIconPaddingIfPartOfMenu","isIE11","createPropsGetter","styles","isActiveElement","MenuDataTids","root","Menu","getProps","defaultProps","state","highlightedIndex","unmounted","getChildList","enableIconPadding","Children","toArray","props","children","some","x","isValidElement","icon","map","child","index","modifiedChild","highlight","ref","refHighlighted","bind","cloneElement","onClick","select","onMouseEnter","onMouseLeave","unhighlight","refScrollContainer","scrollContainer","scrollToSelected","highlighted","HTMLElement","scrollTo","scrollToTop","scrollToBottom","setState","componentWillUnmount","render","theme","renderMain","up","move","down","enter","event","reset","hasHighlightedItem","highlightItem","isEmpty","hasShadow","maxHeight","preventWindowScroll","getAlignRightClass","shadow","getStyle","setRootNode","disableScrollContainer","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","window","open","location","onItemClick","step","activeElements","filter","length","indexOf","Component","__KONTUR_REACT_UI__","align","width","ret","forEach","push","maxWidth","minWidth","alignRight","alignRightIE11","alignRightIE11FixAutoWidth"],"mappings":"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","sourcesContent":["import React, { CSSProperties } from 'react';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { ScrollContainer } from '../../components/ScrollContainer';\nimport { MenuItem, MenuItemProps } from '../../components/MenuItem';\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';\nimport { addIconPaddingIfPartOfMenu } from '../InternalMenu/addIconPaddingIfPartOfMenu';\nimport { isIE11 } from '../../lib/client';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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 * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n}\n\nexport const MenuDataTids = {\n root: 'Menu__root',\n} as const;\n\ntype DefaultProps = Required<Pick<MenuProps, 'align' | 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll'>>;\n\n@rootNode\nexport class Menu extends React.Component<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\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 if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, maxHeight, preventWindowScroll } = this.getProps();\n\n return (\n <div\n data-tid={MenuDataTids.root}\n className={cx(getAlignRightClass(this.props), {\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow,\n })}\n style={getStyle(this.props)}\n ref={this.setRootNode}\n >\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n disabled={this.props.disableScrollContainer}\n >\n <div className={styles.scrollContainer(this.theme)}>{this.getChildList()}</div>\n </ScrollContainer>\n </div>\n );\n }\n\n private getChildList = () => {\n const enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n return React.Children.map(this.props.children, (child, index) => {\n if (!child) {\n return child;\n }\n\n if (typeof child === 'string' || typeof child === 'number') {\n return child;\n }\n\n const modifiedChild = addIconPaddingIfPartOfMenu(child, enableIconPadding);\n\n if (isActiveElement(modifiedChild)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = modifiedChild.ref;\n if (highlight && typeof modifiedChild.ref !== 'string') {\n ref = this.refHighlighted.bind(this, modifiedChild.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(modifiedChild, {\n ref,\n state: highlight ? 'hover' : modifiedChild.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n\n return modifiedChild;\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 const rootNode = getRootNode(this.highlighted);\n // TODO: Remove this check once IF-647 is resolved\n if (rootNode instanceof HTMLElement) {\n this.scrollContainer.scrollTo(rootNode);\n }\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(isNonNullable).length;\n }\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\nconst getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: props.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: props.maxHeight,\n };\n};\n\nconst getAlignRightClass = (props: MenuProps) => {\n if (props.align === 'right') {\n return cx({\n [styles.alignRight()]: !isIE11,\n [styles.alignRightIE11()]: isIE11,\n [styles.alignRightIE11FixAutoWidth()]: isIE11 && props.width === 'auto',\n });\n }\n\n return null;\n};\n"]}
1
+ {"version":3,"sources":["Menu.tsx"],"names":["React","isNonNullable","ScrollContainer","ThemeContext","cx","getRootNode","rootNode","addIconPaddingIfPartOfMenu","isIE11","createPropsGetter","styles","isActiveElement","Menu","getProps","defaultProps","state","highlightedIndex","unmounted","getChildList","enableIconPadding","Children","toArray","props","children","some","x","isValidElement","icon","map","child","index","modifiedChild","highlight","ref","refHighlighted","bind","cloneElement","onClick","select","onMouseEnter","onMouseLeave","unhighlight","refScrollContainer","scrollContainer","scrollToSelected","highlighted","HTMLElement","scrollTo","scrollToTop","scrollToBottom","setState","componentWillUnmount","render","theme","renderMain","up","move","down","enter","event","reset","hasHighlightedItem","highlightItem","isEmpty","hasShadow","maxHeight","preventWindowScroll","getAlignRightClass","root","shadow","getStyle","setRootNode","disableScrollContainer","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","window","open","location","onItemClick","step","activeElements","filter","length","indexOf","Component","__KONTUR_REACT_UI__","align","width","ret","forEach","push","maxWidth","minWidth","alignRight","alignRightIE11","alignRightIE11FixAutoWidth"],"mappings":"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","sourcesContent":["import React, { CSSProperties } from 'react';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { ScrollContainer } from '../../components/ScrollContainer';\nimport { MenuItem, MenuItemProps } from '../../components/MenuItem';\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';\nimport { addIconPaddingIfPartOfMenu } from '../InternalMenu/addIconPaddingIfPartOfMenu';\nimport { isIE11 } from '../../lib/client';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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 * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n}\n\ntype DefaultProps = Required<Pick<MenuProps, 'align' | 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll'>>;\n\n@rootNode\nexport class Menu extends React.Component<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\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 if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, maxHeight, preventWindowScroll } = this.getProps();\n\n return (\n <div\n className={cx(getAlignRightClass(this.props), {\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow,\n })}\n style={getStyle(this.props)}\n ref={this.setRootNode}\n >\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n disabled={this.props.disableScrollContainer}\n >\n <div className={styles.scrollContainer(this.theme)}>{this.getChildList()}</div>\n </ScrollContainer>\n </div>\n );\n }\n\n private getChildList = () => {\n const enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n return React.Children.map(this.props.children, (child, index) => {\n if (!child) {\n return child;\n }\n\n if (typeof child === 'string' || typeof child === 'number') {\n return child;\n }\n\n const modifiedChild = addIconPaddingIfPartOfMenu(child, enableIconPadding);\n\n if (isActiveElement(modifiedChild)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = modifiedChild.ref;\n if (highlight && typeof modifiedChild.ref !== 'string') {\n ref = this.refHighlighted.bind(this, modifiedChild.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(modifiedChild, {\n ref,\n state: highlight ? 'hover' : modifiedChild.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n\n return modifiedChild;\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 const rootNode = getRootNode(this.highlighted);\n // TODO: Remove this check once IF-647 is resolved\n if (rootNode instanceof HTMLElement) {\n this.scrollContainer.scrollTo(rootNode);\n }\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(isNonNullable).length;\n }\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\nconst getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: props.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: props.maxHeight,\n };\n};\n\nconst getAlignRightClass = (props: MenuProps) => {\n if (props.align === 'right') {\n return cx({\n [styles.alignRight()]: !isIE11,\n [styles.alignRightIE11()]: isIE11,\n [styles.alignRightIE11FixAutoWidth()]: isIE11 && props.width === 'auto',\n });\n }\n\n return null;\n};\n"]}