@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
@@ -23,10 +23,6 @@ import { rootNode } from "../../../lib/rootNode";
23
23
  import { createPropsGetter } from "../../../lib/createPropsGetter";
24
24
  import { styles } from "../InputLikeText.styles";
25
25
  import { HiddenInput } from "../HiddenInput";
26
- export var InputLikeTextDataTids = {
27
- root: 'InputLikeText__root',
28
- input: 'InputLikeText__input'
29
- };
30
26
  export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
31
27
  _inheritsLoose(InputLikeText, _React$Component);
32
28
 
@@ -118,9 +114,7 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
118
114
 
119
115
  var className = cx(styles.root(), jsInputStyles.root(_this.theme), _this.getSizeClassName(), (_cx = {}, _cx[jsInputStyles.disabled(_this.theme)] = !!disabled, _cx[jsInputStyles.borderless()] = !!borderless, _cx[jsInputStyles.focus(_this.theme)] = focused, _cx[jsInputStyles.blink(_this.theme)] = blinking, _cx[jsInputStyles.warning(_this.theme)] = !!warning, _cx[jsInputStyles.error(_this.theme)] = !!error, _cx[jsInputStyles.focusFallback(_this.theme)] = focused && (isIE11 || isEdge), _cx[jsInputStyles.warningFallback(_this.theme)] = !!warning && (isIE11 || isEdge), _cx[jsInputStyles.errorFallback(_this.theme)] = !!error && (isIE11 || isEdge), _cx[jsInputStyles.hideBlinkingCursor()] = isMobile, _cx));
120
116
  var wrapperClass = cx(jsInputStyles.wrapper(), (_cx2 = {}, _cx2[styles.userSelectContain()] = focused, _cx2));
121
- return /*#__PURE__*/React.createElement("span", _extends({
122
- "data-tid": InputLikeTextDataTids.root
123
- }, rest, {
117
+ return /*#__PURE__*/React.createElement("span", _extends({}, rest, {
124
118
  className: className,
125
119
  style: {
126
120
  width: width,
@@ -138,7 +132,7 @@ export var InputLikeText = rootNode(_class = (_temp = _class2 = /*#__PURE__*/fun
138
132
  }), leftSide, /*#__PURE__*/React.createElement("span", {
139
133
  className: wrapperClass
140
134
  }, /*#__PURE__*/React.createElement("span", {
141
- "data-tid": InputLikeTextDataTids.input,
135
+ "data-tid": "InputLikeText__input",
142
136
  className: cx(jsInputStyles.input(_this.theme), (_cx3 = {}, _cx3[styles.absolute()] = !takeContentWidth, _cx3[jsInputStyles.inputFocus(_this.theme)] = focused, _cx3[jsInputStyles.inputDisabled(_this.theme)] = disabled, _cx3))
143
137
  }, _this.props.children), _this.renderPlaceholder()), rightSide, isIE11 && focused && /*#__PURE__*/React.createElement(HiddenInput, {
144
138
  nodeRef: _this.hiddenInputRef
@@ -1 +1 @@
1
- {"version":3,"sources":["InputLikeText.tsx"],"names":["React","isNonNullable","isKeyTab","isShortcutPaste","MouseDrag","isEdge","isIE11","isMobile","removeAllSelections","selectNodeContents","styles","jsInputStyles","ThemeContext","CommonWrapper","cx","findRenderContainer","rootNode","createPropsGetter","HiddenInput","InputLikeTextDataTids","root","input","InputLikeText","getProps","defaultProps","state","blinking","focused","node","hiddenInput","lastSelectedInnerNode","frozen","frozenBlur","dragging","selectInnerNode","start","end","document","body","setTimeout","focusTimeout","clearInterval","window","focus","renderMain","props","innerRef","tabIndex","placeholder","align","borderless","width","size","error","warning","onValueChange","disabled","prefix","suffix","leftIcon","rightIcon","value","onMouseDragStart","onMouseDragEnd","takeContentWidth","rest","leftSide","renderLeftSide","rightSide","renderRightSide","className","theme","getSizeClassName","blink","focusFallback","warningFallback","errorFallback","hideBlinkingCursor","wrapperClass","wrapper","userSelectContain","textAlign","undefined","handleFocus","handleBlur","handleKeyDown","handleMouseDown","absolute","inputFocus","inputDisabled","children","renderPlaceholder","hiddenInputRef","renderLeftIcon","renderIcon","getIconClassname","renderRightIcon","icon","iconNode","Function","useDefaultColor","iconDisabled","renderPrefix","prefixDisabled","renderSuffix","suffixDisabled","sideContainer","rightContainer","hasValue","placeholderDisabled","placeholderFocus","handleDocumentMouseDown","e","target","Node","contains","defrost","handleDocumentKeyDown","onKeyDown","handleMouseDragStart","documentElement","classList","add","userSelectNone","handleMouseDragEnd","remove","setAttribute","setState","onFocus","removeAttribute","stopPropagation","onBlur","el","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","blur","blinkTimeout","getNode","componentDidMount","listen","addEventListener","componentWillUnmount","clearTimeout","stop","removeEventListener","render","setRootNode","right","rightIconLarge","leftIconLarge","rightIconMedium","leftIconMedium","rightIconSmall","leftIconSmall","Component","__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';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyTab, isShortcutPaste } from '../../lib/events/keyboard/identifiers';\nimport { MouseDrag, MouseDragEventHandler } from '../../lib/events/MouseDrag';\nimport { isEdge, isIE11, isMobile } from '../../lib/client';\nimport { Nullable } from '../../typings/utility-types';\nimport { removeAllSelections, selectNodeContents } from '../../components/DateInput/helpers/SelectionHelpers';\nimport { InputProps, InputIconType, InputState } from '../../components/Input';\nimport { styles as jsInputStyles } from '../../components/Input/Input.styles';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { findRenderContainer } from '../../lib/listenFocusOutside';\nimport { TSetRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './InputLikeText.styles';\nimport { HiddenInput } from './HiddenInput';\n\nexport interface InputLikeTextProps extends CommonProps, InputProps {\n children?: React.ReactNode;\n innerRef?: (el: HTMLElement | null) => void;\n onFocus?: React.FocusEventHandler<HTMLElement>;\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onMouseDragStart?: MouseDragEventHandler;\n onMouseDragEnd?: MouseDragEventHandler;\n takeContentWidth?: boolean;\n}\n\nexport type InputLikeTextState = Omit<InputState, 'needsPolyfillPlaceholder'>;\n\nexport const InputLikeTextDataTids = {\n root: 'InputLikeText__root',\n input: 'InputLikeText__input',\n} as const;\n\ntype DefaultProps = Required<Pick<InputLikeTextProps, 'size'>>;\n\n@rootNode\nexport class InputLikeText extends React.Component<InputLikeTextProps, InputLikeTextState> {\n public static __KONTUR_REACT_UI__ = 'InputLikeText';\n\n public static defaultProps: DefaultProps = { size: 'small' };\n\n private getProps = createPropsGetter(InputLikeText.defaultProps);\n\n public state = { blinking: false, focused: false };\n\n private theme!: Theme;\n private node: HTMLElement | null = null;\n private hiddenInput: HTMLInputElement | null = null;\n private lastSelectedInnerNode: [HTMLElement, number, number] | null = null;\n private frozen = false;\n private frozenBlur = false;\n private dragging = false;\n private focusTimeout: Nullable<number>;\n private blinkTimeout: Nullable<number>;\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.node) {\n this.node.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.node) {\n this.node.blur();\n }\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.props.disabled) {\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = window.setTimeout(() => this.setState({ blinking: false }), 150);\n });\n }\n\n public getNode(): HTMLElement | null {\n return this.node;\n }\n\n public selectInnerNode = (node: HTMLElement | null, start = 0, end = 1) => {\n if (this.dragging || !node) {\n return;\n }\n if (isIE11 && findRenderContainer(node, document.body)) {\n // Code below causes Popup to close after triggering the focus event on the body in IE11\n return;\n }\n this.frozen = true;\n this.frozenBlur = true;\n\n this.lastSelectedInnerNode = [node, start, end];\n setTimeout(() => selectNodeContents(node, start, end), 0);\n if (this.focusTimeout) {\n clearInterval(this.focusTimeout);\n }\n this.focusTimeout = window.setTimeout(() => (isIE11 || isEdge) && this.node && this.node.focus(), 0);\n };\n\n public componentDidMount() {\n if (this.node) {\n MouseDrag.listen(this.node).onMouseDragStart(this.handleMouseDragStart).onMouseDragEnd(this.handleMouseDragEnd);\n }\n document.addEventListener('mousedown', this.handleDocumentMouseDown);\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n }\n MouseDrag.stop(this.node);\n document.removeEventListener('mousedown', this.handleDocumentMouseDown);\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = (props: CommonWrapperRestProps<InputLikeTextProps>) => {\n const {\n innerRef,\n tabIndex,\n placeholder,\n align,\n borderless,\n width,\n size,\n error,\n warning,\n onValueChange,\n disabled,\n prefix,\n suffix,\n leftIcon,\n rightIcon,\n value,\n onMouseDragStart,\n onMouseDragEnd,\n takeContentWidth,\n ...rest\n } = props;\n\n const { focused, blinking } = this.state;\n\n const leftSide = this.renderLeftSide();\n const rightSide = this.renderRightSide();\n\n const className = cx(styles.root(), jsInputStyles.root(this.theme), this.getSizeClassName(), {\n [jsInputStyles.disabled(this.theme)]: !!disabled,\n [jsInputStyles.borderless()]: !!borderless,\n [jsInputStyles.focus(this.theme)]: focused,\n [jsInputStyles.blink(this.theme)]: blinking,\n [jsInputStyles.warning(this.theme)]: !!warning,\n [jsInputStyles.error(this.theme)]: !!error,\n [jsInputStyles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [jsInputStyles.warningFallback(this.theme)]: !!warning && (isIE11 || isEdge),\n [jsInputStyles.errorFallback(this.theme)]: !!error && (isIE11 || isEdge),\n [jsInputStyles.hideBlinkingCursor()]: isMobile,\n });\n\n const wrapperClass = cx(jsInputStyles.wrapper(), {\n [styles.userSelectContain()]: focused,\n });\n\n return (\n <span\n data-tid={InputLikeTextDataTids.root}\n {...rest}\n className={className}\n style={{ width, textAlign: align }}\n tabIndex={disabled ? undefined : 0}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.innerRef}\n onKeyDown={this.handleKeyDown}\n onMouseDown={this.handleMouseDown}\n >\n <input type=\"hidden\" value={value} />\n {leftSide}\n <span className={wrapperClass}>\n <span\n data-tid={InputLikeTextDataTids.input}\n className={cx(jsInputStyles.input(this.theme), {\n [styles.absolute()]: !takeContentWidth,\n [jsInputStyles.inputFocus(this.theme)]: focused,\n [jsInputStyles.inputDisabled(this.theme)]: disabled,\n })}\n >\n {this.props.children}\n </span>\n {this.renderPlaceholder()}\n </span>\n {rightSide}\n {isIE11 && focused && <HiddenInput nodeRef={this.hiddenInputRef} />}\n </span>\n );\n };\n\n private getIconClassname(right = false) {\n switch (this.getProps().size) {\n case 'large':\n return right ? jsInputStyles.rightIconLarge(this.theme) : jsInputStyles.leftIconLarge(this.theme);\n case 'medium':\n return right ? jsInputStyles.rightIconMedium(this.theme) : jsInputStyles.leftIconMedium(this.theme);\n case 'small':\n default:\n return right ? jsInputStyles.rightIconSmall(this.theme) : jsInputStyles.leftIconSmall(this.theme);\n }\n }\n\n private renderLeftIcon = () => {\n return this.renderIcon(this.props.leftIcon, this.getIconClassname());\n };\n\n private renderRightIcon = () => {\n return this.renderIcon(this.props.rightIcon, this.getIconClassname(true));\n };\n\n private renderIcon = (icon: InputIconType, className: string): JSX.Element | null => {\n if (!icon) {\n return null;\n }\n\n const { disabled } = this.props;\n const iconNode = icon instanceof Function ? icon() : icon;\n\n return (\n <span\n className={cx(jsInputStyles.icon(), className, jsInputStyles.useDefaultColor(this.theme), {\n [jsInputStyles.iconDisabled()]: disabled,\n })}\n >\n {iconNode}\n </span>\n );\n };\n\n private renderPrefix = (): JSX.Element | null => {\n const { prefix, disabled } = this.props;\n\n if (!prefix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.prefix(this.theme), { [jsInputStyles.prefixDisabled(this.theme)]: disabled })}>\n {prefix}\n </span>\n );\n };\n\n private renderSuffix = (): JSX.Element | null => {\n const { suffix, disabled } = this.props;\n\n if (!suffix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.suffix(this.theme), { [jsInputStyles.suffixDisabled(this.theme)]: disabled })}>\n {suffix}\n </span>\n );\n };\n\n private renderLeftSide = (): JSX.Element | null => {\n const leftIcon = this.renderLeftIcon();\n const prefix = this.renderPrefix();\n\n if (!leftIcon && !prefix) {\n return null;\n }\n\n return (\n <span className={jsInputStyles.sideContainer()}>\n {leftIcon}\n {prefix}\n </span>\n );\n };\n\n private renderRightSide = (): JSX.Element | null => {\n const rightIcon = this.renderRightIcon();\n const suffix = this.renderSuffix();\n\n if (!rightIcon && !suffix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.sideContainer(), jsInputStyles.rightContainer())}>\n {rightIcon}\n {suffix}\n </span>\n );\n };\n\n private renderPlaceholder = (): JSX.Element | null => {\n const { children, placeholder, disabled } = this.props;\n const { focused } = this.state;\n const hasValue = isNonNullable(children) && children !== '';\n\n if (!hasValue && placeholder) {\n return (\n <span\n className={cx(jsInputStyles.placeholder(this.theme), {\n [jsInputStyles.placeholderDisabled(this.theme)]: disabled,\n [jsInputStyles.placeholderFocus(this.theme)]: focused,\n })}\n >\n {placeholder}\n </span>\n );\n }\n return null;\n };\n\n private handleDocumentMouseDown = (e: MouseEvent) => {\n if (this.state.focused && this.node && e.target instanceof Node && !this.node.contains(e.target)) {\n this.defrost();\n }\n };\n\n private handleDocumentKeyDown = (e: KeyboardEvent) => {\n if (this.state.focused && isKeyTab(e)) {\n this.defrost();\n }\n };\n\n private handleMouseDown = () => {\n this.frozen = true;\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.props.disabled) {\n return;\n }\n\n if (isIE11 && isShortcutPaste(e) && this.hiddenInput) {\n this.frozen = true;\n setTimeout(() => {\n if (this.lastSelectedInnerNode) {\n this.selectInnerNode(...this.lastSelectedInnerNode);\n }\n if (this.node) {\n this.node.focus();\n }\n }, 0);\n\n this.hiddenInput.focus();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e as React.KeyboardEvent<HTMLInputElement>);\n }\n };\n\n private handleMouseDragStart: MouseDragEventHandler = (e) => {\n this.dragging = true;\n document.documentElement.classList.add(styles.userSelectNone());\n\n if (this.props.onMouseDragStart) {\n this.props.onMouseDragStart(e);\n }\n };\n\n private handleMouseDragEnd: MouseDragEventHandler = (e) => {\n // Дожидаемся onMouseUp\n setTimeout(() => {\n this.dragging = false;\n\n if (this.props.onMouseDragEnd) {\n this.props.onMouseDragEnd(e);\n }\n }, 0);\n\n document.documentElement.classList.remove(styles.userSelectNone());\n };\n\n private handleFocus = (e: React.FocusEvent<HTMLElement>) => {\n if (isMobile) {\n e.target.setAttribute('contenteditable', 'true');\n }\n\n if (this.props.disabled) {\n if (isIE11) {\n selectNodeContents(document.body, 0, 0);\n }\n return;\n }\n\n if ((isIE11 || isEdge) && this.frozen) {\n this.frozen = false;\n if (this.state.focused) {\n return;\n }\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLElement>) => {\n if (isMobile) {\n e.target.removeAttribute('contenteditable');\n }\n\n if (this.props.disabled) {\n e.stopPropagation();\n return;\n }\n\n if ((isIE11 || isEdge) && this.frozenBlur) {\n this.frozenBlur = false;\n return;\n }\n if ((isIE11 || isEdge) && this.frozen) {\n return;\n }\n\n removeAllSelections();\n\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(e);\n }\n };\n\n private hiddenInputRef = (el: HTMLInputElement | null) => {\n this.hiddenInput = el;\n };\n\n private innerRef = (el: HTMLElement | null) => {\n if (this.props.innerRef) {\n this.props.innerRef(el);\n }\n this.node = el;\n };\n\n private defrost = (): void => {\n this.frozen = false;\n this.frozenBlur = false;\n };\n\n private getSizeClassName = () => {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [jsInputStyles.sizeLarge(this.theme)]: true,\n [jsInputStyles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [jsInputStyles.sizeMedium(this.theme)]: true,\n [jsInputStyles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [jsInputStyles.sizeSmall(this.theme)]: true,\n [jsInputStyles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n };\n}\n"]}
1
+ {"version":3,"sources":["InputLikeText.tsx"],"names":["React","isNonNullable","isKeyTab","isShortcutPaste","MouseDrag","isEdge","isIE11","isMobile","removeAllSelections","selectNodeContents","styles","jsInputStyles","ThemeContext","CommonWrapper","cx","findRenderContainer","rootNode","createPropsGetter","HiddenInput","InputLikeText","getProps","defaultProps","state","blinking","focused","node","hiddenInput","lastSelectedInnerNode","frozen","frozenBlur","dragging","selectInnerNode","start","end","document","body","setTimeout","focusTimeout","clearInterval","window","focus","renderMain","props","innerRef","tabIndex","placeholder","align","borderless","width","size","error","warning","onValueChange","disabled","prefix","suffix","leftIcon","rightIcon","value","onMouseDragStart","onMouseDragEnd","takeContentWidth","rest","leftSide","renderLeftSide","rightSide","renderRightSide","className","root","theme","getSizeClassName","blink","focusFallback","warningFallback","errorFallback","hideBlinkingCursor","wrapperClass","wrapper","userSelectContain","textAlign","undefined","handleFocus","handleBlur","handleKeyDown","handleMouseDown","input","absolute","inputFocus","inputDisabled","children","renderPlaceholder","hiddenInputRef","renderLeftIcon","renderIcon","getIconClassname","renderRightIcon","icon","iconNode","Function","useDefaultColor","iconDisabled","renderPrefix","prefixDisabled","renderSuffix","suffixDisabled","sideContainer","rightContainer","hasValue","placeholderDisabled","placeholderFocus","handleDocumentMouseDown","e","target","Node","contains","defrost","handleDocumentKeyDown","onKeyDown","handleMouseDragStart","documentElement","classList","add","userSelectNone","handleMouseDragEnd","remove","setAttribute","setState","onFocus","removeAttribute","stopPropagation","onBlur","el","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","blur","blinkTimeout","getNode","componentDidMount","listen","addEventListener","componentWillUnmount","clearTimeout","stop","removeEventListener","render","setRootNode","right","rightIconLarge","leftIconLarge","rightIconMedium","leftIconMedium","rightIconSmall","leftIconSmall","Component","__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';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyTab, isShortcutPaste } from '../../lib/events/keyboard/identifiers';\nimport { MouseDrag, MouseDragEventHandler } from '../../lib/events/MouseDrag';\nimport { isEdge, isIE11, isMobile } from '../../lib/client';\nimport { Nullable } from '../../typings/utility-types';\nimport { removeAllSelections, selectNodeContents } from '../../components/DateInput/helpers/SelectionHelpers';\nimport { InputProps, InputIconType, InputState } from '../../components/Input';\nimport { styles as jsInputStyles } from '../../components/Input/Input.styles';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { findRenderContainer } from '../../lib/listenFocusOutside';\nimport { TSetRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './InputLikeText.styles';\nimport { HiddenInput } from './HiddenInput';\n\nexport interface InputLikeTextProps extends CommonProps, InputProps {\n children?: React.ReactNode;\n innerRef?: (el: HTMLElement | null) => void;\n onFocus?: React.FocusEventHandler<HTMLElement>;\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onMouseDragStart?: MouseDragEventHandler;\n onMouseDragEnd?: MouseDragEventHandler;\n takeContentWidth?: boolean;\n}\n\nexport type InputLikeTextState = Omit<InputState, 'needsPolyfillPlaceholder'>;\n\ntype DefaultProps = Required<Pick<InputLikeTextProps, 'size'>>;\n\n@rootNode\nexport class InputLikeText extends React.Component<InputLikeTextProps, InputLikeTextState> {\n public static __KONTUR_REACT_UI__ = 'InputLikeText';\n\n public static defaultProps: DefaultProps = { size: 'small' };\n\n private getProps = createPropsGetter(InputLikeText.defaultProps);\n\n public state = { blinking: false, focused: false };\n\n private theme!: Theme;\n private node: HTMLElement | null = null;\n private hiddenInput: HTMLInputElement | null = null;\n private lastSelectedInnerNode: [HTMLElement, number, number] | null = null;\n private frozen = false;\n private frozenBlur = false;\n private dragging = false;\n private focusTimeout: Nullable<number>;\n private blinkTimeout: Nullable<number>;\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.node) {\n this.node.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.node) {\n this.node.blur();\n }\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.props.disabled) {\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = window.setTimeout(() => this.setState({ blinking: false }), 150);\n });\n }\n\n public getNode(): HTMLElement | null {\n return this.node;\n }\n\n public selectInnerNode = (node: HTMLElement | null, start = 0, end = 1) => {\n if (this.dragging || !node) {\n return;\n }\n if (isIE11 && findRenderContainer(node, document.body)) {\n // Code below causes Popup to close after triggering the focus event on the body in IE11\n return;\n }\n this.frozen = true;\n this.frozenBlur = true;\n\n this.lastSelectedInnerNode = [node, start, end];\n setTimeout(() => selectNodeContents(node, start, end), 0);\n if (this.focusTimeout) {\n clearInterval(this.focusTimeout);\n }\n this.focusTimeout = window.setTimeout(() => (isIE11 || isEdge) && this.node && this.node.focus(), 0);\n };\n\n public componentDidMount() {\n if (this.node) {\n MouseDrag.listen(this.node).onMouseDragStart(this.handleMouseDragStart).onMouseDragEnd(this.handleMouseDragEnd);\n }\n document.addEventListener('mousedown', this.handleDocumentMouseDown);\n document.addEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n }\n MouseDrag.stop(this.node);\n document.removeEventListener('mousedown', this.handleDocumentMouseDown);\n document.removeEventListener('keydown', this.handleDocumentKeyDown);\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = (props: CommonWrapperRestProps<InputLikeTextProps>) => {\n const {\n innerRef,\n tabIndex,\n placeholder,\n align,\n borderless,\n width,\n size,\n error,\n warning,\n onValueChange,\n disabled,\n prefix,\n suffix,\n leftIcon,\n rightIcon,\n value,\n onMouseDragStart,\n onMouseDragEnd,\n takeContentWidth,\n ...rest\n } = props;\n\n const { focused, blinking } = this.state;\n\n const leftSide = this.renderLeftSide();\n const rightSide = this.renderRightSide();\n\n const className = cx(styles.root(), jsInputStyles.root(this.theme), this.getSizeClassName(), {\n [jsInputStyles.disabled(this.theme)]: !!disabled,\n [jsInputStyles.borderless()]: !!borderless,\n [jsInputStyles.focus(this.theme)]: focused,\n [jsInputStyles.blink(this.theme)]: blinking,\n [jsInputStyles.warning(this.theme)]: !!warning,\n [jsInputStyles.error(this.theme)]: !!error,\n [jsInputStyles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [jsInputStyles.warningFallback(this.theme)]: !!warning && (isIE11 || isEdge),\n [jsInputStyles.errorFallback(this.theme)]: !!error && (isIE11 || isEdge),\n [jsInputStyles.hideBlinkingCursor()]: isMobile,\n });\n\n const wrapperClass = cx(jsInputStyles.wrapper(), {\n [styles.userSelectContain()]: focused,\n });\n\n return (\n <span\n {...rest}\n className={className}\n style={{ width, textAlign: align }}\n tabIndex={disabled ? undefined : 0}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.innerRef}\n onKeyDown={this.handleKeyDown}\n onMouseDown={this.handleMouseDown}\n >\n <input type=\"hidden\" value={value} />\n {leftSide}\n <span className={wrapperClass}>\n <span\n data-tid=\"InputLikeText__input\"\n className={cx(jsInputStyles.input(this.theme), {\n [styles.absolute()]: !takeContentWidth,\n [jsInputStyles.inputFocus(this.theme)]: focused,\n [jsInputStyles.inputDisabled(this.theme)]: disabled,\n })}\n >\n {this.props.children}\n </span>\n {this.renderPlaceholder()}\n </span>\n {rightSide}\n {isIE11 && focused && <HiddenInput nodeRef={this.hiddenInputRef} />}\n </span>\n );\n };\n\n private getIconClassname(right = false) {\n switch (this.getProps().size) {\n case 'large':\n return right ? jsInputStyles.rightIconLarge(this.theme) : jsInputStyles.leftIconLarge(this.theme);\n case 'medium':\n return right ? jsInputStyles.rightIconMedium(this.theme) : jsInputStyles.leftIconMedium(this.theme);\n case 'small':\n default:\n return right ? jsInputStyles.rightIconSmall(this.theme) : jsInputStyles.leftIconSmall(this.theme);\n }\n }\n\n private renderLeftIcon = () => {\n return this.renderIcon(this.props.leftIcon, this.getIconClassname());\n };\n\n private renderRightIcon = () => {\n return this.renderIcon(this.props.rightIcon, this.getIconClassname(true));\n };\n\n private renderIcon = (icon: InputIconType, className: string): JSX.Element | null => {\n if (!icon) {\n return null;\n }\n\n const { disabled } = this.props;\n const iconNode = icon instanceof Function ? icon() : icon;\n\n return (\n <span\n className={cx(jsInputStyles.icon(), className, jsInputStyles.useDefaultColor(this.theme), {\n [jsInputStyles.iconDisabled()]: disabled,\n })}\n >\n {iconNode}\n </span>\n );\n };\n\n private renderPrefix = (): JSX.Element | null => {\n const { prefix, disabled } = this.props;\n\n if (!prefix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.prefix(this.theme), { [jsInputStyles.prefixDisabled(this.theme)]: disabled })}>\n {prefix}\n </span>\n );\n };\n\n private renderSuffix = (): JSX.Element | null => {\n const { suffix, disabled } = this.props;\n\n if (!suffix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.suffix(this.theme), { [jsInputStyles.suffixDisabled(this.theme)]: disabled })}>\n {suffix}\n </span>\n );\n };\n\n private renderLeftSide = (): JSX.Element | null => {\n const leftIcon = this.renderLeftIcon();\n const prefix = this.renderPrefix();\n\n if (!leftIcon && !prefix) {\n return null;\n }\n\n return (\n <span className={jsInputStyles.sideContainer()}>\n {leftIcon}\n {prefix}\n </span>\n );\n };\n\n private renderRightSide = (): JSX.Element | null => {\n const rightIcon = this.renderRightIcon();\n const suffix = this.renderSuffix();\n\n if (!rightIcon && !suffix) {\n return null;\n }\n\n return (\n <span className={cx(jsInputStyles.sideContainer(), jsInputStyles.rightContainer())}>\n {rightIcon}\n {suffix}\n </span>\n );\n };\n\n private renderPlaceholder = (): JSX.Element | null => {\n const { children, placeholder, disabled } = this.props;\n const { focused } = this.state;\n const hasValue = isNonNullable(children) && children !== '';\n\n if (!hasValue && placeholder) {\n return (\n <span\n className={cx(jsInputStyles.placeholder(this.theme), {\n [jsInputStyles.placeholderDisabled(this.theme)]: disabled,\n [jsInputStyles.placeholderFocus(this.theme)]: focused,\n })}\n >\n {placeholder}\n </span>\n );\n }\n return null;\n };\n\n private handleDocumentMouseDown = (e: MouseEvent) => {\n if (this.state.focused && this.node && e.target instanceof Node && !this.node.contains(e.target)) {\n this.defrost();\n }\n };\n\n private handleDocumentKeyDown = (e: KeyboardEvent) => {\n if (this.state.focused && isKeyTab(e)) {\n this.defrost();\n }\n };\n\n private handleMouseDown = () => {\n this.frozen = true;\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\n if (this.props.disabled) {\n return;\n }\n\n if (isIE11 && isShortcutPaste(e) && this.hiddenInput) {\n this.frozen = true;\n setTimeout(() => {\n if (this.lastSelectedInnerNode) {\n this.selectInnerNode(...this.lastSelectedInnerNode);\n }\n if (this.node) {\n this.node.focus();\n }\n }, 0);\n\n this.hiddenInput.focus();\n }\n\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e as React.KeyboardEvent<HTMLInputElement>);\n }\n };\n\n private handleMouseDragStart: MouseDragEventHandler = (e) => {\n this.dragging = true;\n document.documentElement.classList.add(styles.userSelectNone());\n\n if (this.props.onMouseDragStart) {\n this.props.onMouseDragStart(e);\n }\n };\n\n private handleMouseDragEnd: MouseDragEventHandler = (e) => {\n // Дожидаемся onMouseUp\n setTimeout(() => {\n this.dragging = false;\n\n if (this.props.onMouseDragEnd) {\n this.props.onMouseDragEnd(e);\n }\n }, 0);\n\n document.documentElement.classList.remove(styles.userSelectNone());\n };\n\n private handleFocus = (e: React.FocusEvent<HTMLElement>) => {\n if (isMobile) {\n e.target.setAttribute('contenteditable', 'true');\n }\n\n if (this.props.disabled) {\n if (isIE11) {\n selectNodeContents(document.body, 0, 0);\n }\n return;\n }\n\n if ((isIE11 || isEdge) && this.frozen) {\n this.frozen = false;\n if (this.state.focused) {\n return;\n }\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLElement>) => {\n if (isMobile) {\n e.target.removeAttribute('contenteditable');\n }\n\n if (this.props.disabled) {\n e.stopPropagation();\n return;\n }\n\n if ((isIE11 || isEdge) && this.frozenBlur) {\n this.frozenBlur = false;\n return;\n }\n if ((isIE11 || isEdge) && this.frozen) {\n return;\n }\n\n removeAllSelections();\n\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(e);\n }\n };\n\n private hiddenInputRef = (el: HTMLInputElement | null) => {\n this.hiddenInput = el;\n };\n\n private innerRef = (el: HTMLElement | null) => {\n if (this.props.innerRef) {\n this.props.innerRef(el);\n }\n this.node = el;\n };\n\n private defrost = (): void => {\n this.frozen = false;\n this.frozenBlur = false;\n };\n\n private getSizeClassName = () => {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [jsInputStyles.sizeLarge(this.theme)]: true,\n [jsInputStyles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [jsInputStyles.sizeMedium(this.theme)]: true,\n [jsInputStyles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [jsInputStyles.sizeSmall(this.theme)]: true,\n [jsInputStyles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n };\n}\n"]}
@@ -1,78 +1,74 @@
1
- import React from 'react';
2
- import { MouseDragEventHandler } from '../../lib/events/MouseDrag';
3
- import { InputProps, InputState } from '../../components/Input';
4
- import { CommonProps } from '../CommonWrapper';
5
- export interface InputLikeTextProps extends CommonProps, InputProps {
6
- children?: React.ReactNode;
7
- innerRef?: (el: HTMLElement | null) => void;
8
- onFocus?: React.FocusEventHandler<HTMLElement>;
9
- onBlur?: React.FocusEventHandler<HTMLElement>;
10
- onMouseDragStart?: MouseDragEventHandler;
11
- onMouseDragEnd?: MouseDragEventHandler;
12
- takeContentWidth?: boolean;
13
- }
14
- export declare type InputLikeTextState = Omit<InputState, 'needsPolyfillPlaceholder'>;
15
- export declare const InputLikeTextDataTids: {
16
- readonly root: "InputLikeText__root";
17
- readonly input: "InputLikeText__input";
18
- };
19
- declare type DefaultProps = Required<Pick<InputLikeTextProps, 'size'>>;
20
- export declare class InputLikeText extends React.Component<InputLikeTextProps, InputLikeTextState> {
21
- static __KONTUR_REACT_UI__: string;
22
- static defaultProps: DefaultProps;
23
- private getProps;
24
- state: {
25
- blinking: boolean;
26
- focused: boolean;
27
- };
28
- private theme;
29
- private node;
30
- private hiddenInput;
31
- private lastSelectedInnerNode;
32
- private frozen;
33
- private frozenBlur;
34
- private dragging;
35
- private focusTimeout;
36
- private blinkTimeout;
37
- private setRootNode;
38
- /**
39
- * @public
40
- */
41
- focus(): void;
42
- /**
43
- * @public
44
- */
45
- blur(): void;
46
- /**
47
- * @public
48
- */
49
- blink(): void;
50
- getNode(): HTMLElement | null;
51
- selectInnerNode: (node: HTMLElement | null, start?: number, end?: number) => void;
52
- componentDidMount(): void;
53
- componentWillUnmount(): void;
54
- render(): JSX.Element;
55
- private renderMain;
56
- private getIconClassname;
57
- private renderLeftIcon;
58
- private renderRightIcon;
59
- private renderIcon;
60
- private renderPrefix;
61
- private renderSuffix;
62
- private renderLeftSide;
63
- private renderRightSide;
64
- private renderPlaceholder;
65
- private handleDocumentMouseDown;
66
- private handleDocumentKeyDown;
67
- private handleMouseDown;
68
- private handleKeyDown;
69
- private handleMouseDragStart;
70
- private handleMouseDragEnd;
71
- private handleFocus;
72
- private handleBlur;
73
- private hiddenInputRef;
74
- private innerRef;
75
- private defrost;
76
- private getSizeClassName;
77
- }
78
- export {};
1
+ import React from 'react';
2
+ import { MouseDragEventHandler } from '../../lib/events/MouseDrag';
3
+ import { InputProps, InputState } from '../../components/Input';
4
+ import { CommonProps } from '../CommonWrapper';
5
+ export interface InputLikeTextProps extends CommonProps, InputProps {
6
+ children?: React.ReactNode;
7
+ innerRef?: (el: HTMLElement | null) => void;
8
+ onFocus?: React.FocusEventHandler<HTMLElement>;
9
+ onBlur?: React.FocusEventHandler<HTMLElement>;
10
+ onMouseDragStart?: MouseDragEventHandler;
11
+ onMouseDragEnd?: MouseDragEventHandler;
12
+ takeContentWidth?: boolean;
13
+ }
14
+ export declare type InputLikeTextState = Omit<InputState, 'needsPolyfillPlaceholder'>;
15
+ declare type DefaultProps = Required<Pick<InputLikeTextProps, 'size'>>;
16
+ export declare class InputLikeText extends React.Component<InputLikeTextProps, InputLikeTextState> {
17
+ static __KONTUR_REACT_UI__: string;
18
+ static defaultProps: DefaultProps;
19
+ private getProps;
20
+ state: {
21
+ blinking: boolean;
22
+ focused: boolean;
23
+ };
24
+ private theme;
25
+ private node;
26
+ private hiddenInput;
27
+ private lastSelectedInnerNode;
28
+ private frozen;
29
+ private frozenBlur;
30
+ private dragging;
31
+ private focusTimeout;
32
+ private blinkTimeout;
33
+ private setRootNode;
34
+ /**
35
+ * @public
36
+ */
37
+ focus(): void;
38
+ /**
39
+ * @public
40
+ */
41
+ blur(): void;
42
+ /**
43
+ * @public
44
+ */
45
+ blink(): void;
46
+ getNode(): HTMLElement | null;
47
+ selectInnerNode: (node: HTMLElement | null, start?: number, end?: number) => void;
48
+ componentDidMount(): void;
49
+ componentWillUnmount(): void;
50
+ render(): JSX.Element;
51
+ private renderMain;
52
+ private getIconClassname;
53
+ private renderLeftIcon;
54
+ private renderRightIcon;
55
+ private renderIcon;
56
+ private renderPrefix;
57
+ private renderSuffix;
58
+ private renderLeftSide;
59
+ private renderRightSide;
60
+ private renderPlaceholder;
61
+ private handleDocumentMouseDown;
62
+ private handleDocumentKeyDown;
63
+ private handleMouseDown;
64
+ private handleKeyDown;
65
+ private handleMouseDragStart;
66
+ private handleMouseDragEnd;
67
+ private handleFocus;
68
+ private handleBlur;
69
+ private hiddenInputRef;
70
+ private innerRef;
71
+ private defrost;
72
+ private getSizeClassName;
73
+ }
74
+ export {};
@@ -1,7 +1,7 @@
1
- export declare const styles: {
2
- root(): string;
3
- absolute(): string;
4
- userSelectContain(): string;
5
- userSelectNone(): string;
6
- rightSide(): string;
7
- };
1
+ export declare const styles: {
2
+ root(): string;
3
+ absolute(): string;
4
+ userSelectContain(): string;
5
+ userSelectNone(): string;
6
+ rightSide(): string;
7
+ };
@@ -1 +1 @@
1
- export * from './InputLikeText';
1
+ export * from './InputLikeText';
@@ -19,9 +19,6 @@ import { ThemeFactory } from "../../../lib/theming/ThemeFactory";
19
19
  import { styles } from "../InternalMenu.styles";
20
20
  import { isActiveElement } from "../isActiveElement";
21
21
  import { addIconPaddingIfPartOfMenu } from "../addIconPaddingIfPartOfMenu";
22
- export var InternalMenuDataTids = {
23
- root: 'InternalMenu__root'
24
- };
25
22
  export var InternalMenu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
26
23
  _inheritsLoose(InternalMenu, _React$PureComponent);
27
24
 
@@ -255,7 +252,6 @@ export var InternalMenu = rootNode(_class = (_temp = _class2 = /*#__PURE__*/func
255
252
  preventWindowScroll = _this$getProps.preventWindowScroll;
256
253
 
257
254
  return /*#__PURE__*/React.createElement("div", {
258
- "data-tid": InternalMenuDataTids.root,
259
255
  className: cx((_cx3 = {}, _cx3[styles.root(this.theme)] = true, _cx3[styles.shadow(this.theme)] = hasShadow, _cx3)),
260
256
  style: {
261
257
  width: width,
@@ -1 +1 @@
1
- {"version":3,"sources":["InternalMenu.tsx"],"names":["React","isHTMLElement","isNonNullable","isNullable","isKeyArrowDown","isKeyArrowUp","isKeyEnter","ScrollContainer","isMenuItem","createPropsGetter","ThemeContext","cx","getRootNode","rootNode","getDOMRect","MenuSeparator","ThemeFactory","styles","isActiveElement","addIconPaddingIfPartOfMenu","InternalMenuDataTids","root","InternalMenu","getProps","defaultProps","state","highlightedIndex","maxHeight","scrollState","renderHeader","wrapper","headerWrapper","el","header","contentWrapper","props","menuSeparatorWrapper","theme","renderMenuSeparatorWithNoMargin","renderFooter","footerWrapper","footer","create","menuSeparatorMarginY","focusOnRootElement","focus","shouldRecalculateMaxHeight","prevProps","children","prevMaxHeight","prevHeader","prevFooter","prevChildrenCount","Children","count","calculateMaxHeight","parsedMaxHeight","window","rootElementMaxHeight","getComputedStyle","parseFloat","calculatedMaxHeight","height","setState","setInitialSelection","i","initialSelectedItemIndex","moveDown","refScrollContainer","scrollContainer","scrollToSelected","highlighted","HTMLElement","scrollTo","highlightItem","index","unhighlight","moveUp","move","handleKeyDown","e","onKeyDown","defaultPrevented","preventDefault","onClick","handleScrollStateChange","componentDidMount","componentDidUpdate","render","renderMain","enableIconPadding","toArray","some","x","isValidElement","icon","isEmpty","hasShadow","width","preventWindowScroll","shadow","setRootNode","map","child","type","modifiedChild","highlight","ref","originalRef","menuItem","refHighlighted","cloneElement","select","bind","onMouseEnter","event","onMouseLeave","current","shouldHandleHref","item","childrenToArray","href","target","open","location","onItemClick","step","cyclicSelection","length","filter","PureComponent","__KONTUR_REACT_UI__","ret","forEach","push"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isHTMLElement } from '../../lib/SSRSafe';\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { ScrollContainer, ScrollContainerScrollState } from '../../components/ScrollContainer';\nimport { isMenuItem, MenuItem, MenuItemProps } from '../../components/MenuItem';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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 { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\n\nimport { styles } from './InternalMenu.styles';\nimport { isActiveElement } from './isActiveElement';\nimport { addIconPaddingIfPartOfMenu } from './addIconPaddingIfPartOfMenu';\n\ninterface MenuProps {\n children?: React.ReactNode;\n hasShadow?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n\n // Циклический перебор айтемов меню (по-дефолтну включен)\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\ninterface MenuState {\n highlightedIndex: number;\n maxHeight: number | string;\n scrollState: ScrollContainerScrollState;\n}\n\nexport const InternalMenuDataTids = {\n root: 'InternalMenu__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll' | 'cyclicSelection' | 'initialSelectedItemIndex'\n >\n>;\n\n@rootNode\nexport class InternalMenu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'InternalMenu';\n\n public static defaultProps: DefaultProps = {\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(InternalMenu.defaultProps);\n\n public state: MenuState = {\n highlightedIndex: -1,\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n };\n\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private highlighted: Nullable<MenuItem>;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n\n public componentDidMount() {\n this.setInitialSelection();\n this.calculateMaxHeight();\n }\n\n public componentDidUpdate(prevProps: MenuProps) {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus() {\n this.focusOnRootElement();\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 enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, width, maxHeight, preventWindowScroll } = this.getProps();\n\n return (\n <div\n data-tid={InternalMenuDataTids.root}\n className={cx({\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow,\n })}\n style={{\n width,\n maxHeight: this.state.maxHeight,\n }}\n onKeyDown={this.handleKeyDown}\n ref={this.setRootNode}\n tabIndex={0}\n >\n {this.props.header ? this.renderHeader() : null}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChange={this.handleScrollStateChange}\n >\n {React.Children.map(this.props.children, (child, index) => {\n if (typeof child === 'string' || typeof child === 'number' || isNullable(child)) {\n return child;\n }\n if (React.isValidElement(child) && typeof child.type === 'string') {\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 const originalRef = ref;\n if (highlight) {\n ref = (menuItem) => this.refHighlighted(originalRef, menuItem);\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: (event) => {\n this.highlightItem(index);\n if (isMenuItem(modifiedChild) && modifiedChild.props.onMouseEnter) {\n modifiedChild.props.onMouseEnter(event);\n }\n },\n onMouseLeave: (event) => {\n this.unhighlight();\n if (isMenuItem(modifiedChild) && modifiedChild.props.onMouseLeave) {\n modifiedChild.props.onMouseLeave(event);\n }\n },\n });\n }\n\n return modifiedChild;\n })}\n </ScrollContainer>\n {this.props.footer ? this.renderFooter() : null}\n </div>\n );\n }\n\n private renderHeader = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.headerWrapper()]: true,\n })}\n ref={(el) => (this.header = el)}\n >\n <div className={styles.contentWrapper()}>{this.props.header}</div>\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.footerWrapper()]: true,\n })}\n ref={(el) => (this.footer = el)}\n >\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeContext.Provider>\n );\n };\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isHTMLElement(rootNode)) {\n rootNode?.focus();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && typeof window !== 'undefined' && rootNode) {\n const rootElementMaxHeight = window.getComputedStyle(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.moveDown();\n }\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: string | ((instance: MenuItem | null) => void) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (!originalRef || typeof originalRef === 'string') {\n return;\n }\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n } else if (typeof originalRef === 'object') {\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n originalRef.current = 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 select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n\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 as React.MouseEvent<HTMLElement>);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick(event);\n }\n return true;\n }\n return false;\n }\n\n private highlightItem = (index: number): void => {\n this.setState({ highlightedIndex: index });\n\n const rootNode = getRootNode(this);\n if (isHTMLElement(rootNode)) {\n rootNode?.focus();\n }\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n this.setState((state, props) => {\n const children = childrenToArray(props.children);\n if (!children.some(isActiveElement)) {\n return null;\n }\n let index = state.highlightedIndex;\n do {\n index += step;\n if (!this.getProps().cyclicSelection && (index < 0 || index > children.length)) {\n return null;\n }\n\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 return { highlightedIndex: index };\n }\n } while (index !== state.highlightedIndex);\n return null;\n }, this.scrollToSelected);\n }\n\n private moveUp = () => {\n this.move(-1);\n };\n\n private moveDown = () => {\n this.move(1);\n };\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(e);\n }\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(e)) {\n e.preventDefault();\n this.moveUp();\n } else if (isKeyArrowDown(e)) {\n e.preventDefault();\n this.moveDown();\n } else if (isKeyEnter(e)) {\n if (this.highlighted && this.highlighted.props.onClick) {\n this.highlighted.props.onClick(e);\n }\n }\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollState) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\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"]}
1
+ {"version":3,"sources":["InternalMenu.tsx"],"names":["React","isHTMLElement","isNonNullable","isNullable","isKeyArrowDown","isKeyArrowUp","isKeyEnter","ScrollContainer","isMenuItem","createPropsGetter","ThemeContext","cx","getRootNode","rootNode","getDOMRect","MenuSeparator","ThemeFactory","styles","isActiveElement","addIconPaddingIfPartOfMenu","InternalMenu","getProps","defaultProps","state","highlightedIndex","maxHeight","scrollState","renderHeader","wrapper","headerWrapper","el","header","contentWrapper","props","menuSeparatorWrapper","theme","renderMenuSeparatorWithNoMargin","renderFooter","footerWrapper","footer","create","menuSeparatorMarginY","focusOnRootElement","focus","shouldRecalculateMaxHeight","prevProps","children","prevMaxHeight","prevHeader","prevFooter","prevChildrenCount","Children","count","calculateMaxHeight","parsedMaxHeight","window","rootElementMaxHeight","getComputedStyle","parseFloat","calculatedMaxHeight","height","setState","setInitialSelection","i","initialSelectedItemIndex","moveDown","refScrollContainer","scrollContainer","scrollToSelected","highlighted","HTMLElement","scrollTo","highlightItem","index","unhighlight","moveUp","move","handleKeyDown","e","onKeyDown","defaultPrevented","preventDefault","onClick","handleScrollStateChange","componentDidMount","componentDidUpdate","render","renderMain","enableIconPadding","toArray","some","x","isValidElement","icon","isEmpty","hasShadow","width","preventWindowScroll","root","shadow","setRootNode","map","child","type","modifiedChild","highlight","ref","originalRef","menuItem","refHighlighted","cloneElement","select","bind","onMouseEnter","event","onMouseLeave","current","shouldHandleHref","item","childrenToArray","href","target","open","location","onItemClick","step","cyclicSelection","length","filter","PureComponent","__KONTUR_REACT_UI__","ret","forEach","push"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isHTMLElement } from '../../lib/SSRSafe';\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { ScrollContainer, ScrollContainerScrollState } from '../../components/ScrollContainer';\nimport { isMenuItem, MenuItem, MenuItemProps } from '../../components/MenuItem';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\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 { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\n\nimport { styles } from './InternalMenu.styles';\nimport { isActiveElement } from './isActiveElement';\nimport { addIconPaddingIfPartOfMenu } from './addIconPaddingIfPartOfMenu';\n\ninterface MenuProps {\n children?: React.ReactNode;\n hasShadow?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n\n // Циклический перебор айтемов меню (по-дефолтну включен)\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\ninterface MenuState {\n highlightedIndex: number;\n maxHeight: number | string;\n scrollState: ScrollContainerScrollState;\n}\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n 'width' | 'maxHeight' | 'hasShadow' | 'preventWindowScroll' | 'cyclicSelection' | 'initialSelectedItemIndex'\n >\n>;\n\n@rootNode\nexport class InternalMenu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'InternalMenu';\n\n public static defaultProps: DefaultProps = {\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(InternalMenu.defaultProps);\n\n public state: MenuState = {\n highlightedIndex: -1,\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n };\n\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private highlighted: Nullable<MenuItem>;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n\n public componentDidMount() {\n this.setInitialSelection();\n this.calculateMaxHeight();\n }\n\n public componentDidUpdate(prevProps: MenuProps) {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus() {\n this.focusOnRootElement();\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 enableIconPadding = React.Children.toArray(this.props.children).some(\n (x) => React.isValidElement(x) && x.props.icon,\n );\n\n if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, width, maxHeight, preventWindowScroll } = this.getProps();\n\n return (\n <div\n className={cx({\n [styles.root(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow,\n })}\n style={{\n width,\n maxHeight: this.state.maxHeight,\n }}\n onKeyDown={this.handleKeyDown}\n ref={this.setRootNode}\n tabIndex={0}\n >\n {this.props.header ? this.renderHeader() : null}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChange={this.handleScrollStateChange}\n >\n {React.Children.map(this.props.children, (child, index) => {\n if (typeof child === 'string' || typeof child === 'number' || isNullable(child)) {\n return child;\n }\n if (React.isValidElement(child) && typeof child.type === 'string') {\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 const originalRef = ref;\n if (highlight) {\n ref = (menuItem) => this.refHighlighted(originalRef, menuItem);\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: (event) => {\n this.highlightItem(index);\n if (isMenuItem(modifiedChild) && modifiedChild.props.onMouseEnter) {\n modifiedChild.props.onMouseEnter(event);\n }\n },\n onMouseLeave: (event) => {\n this.unhighlight();\n if (isMenuItem(modifiedChild) && modifiedChild.props.onMouseLeave) {\n modifiedChild.props.onMouseLeave(event);\n }\n },\n });\n }\n\n return modifiedChild;\n })}\n </ScrollContainer>\n {this.props.footer ? this.renderFooter() : null}\n </div>\n );\n }\n\n private renderHeader = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.headerWrapper()]: true,\n })}\n ref={(el) => (this.header = el)}\n >\n <div className={styles.contentWrapper()}>{this.props.header}</div>\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.footerWrapper()]: true,\n })}\n ref={(el) => (this.footer = el)}\n >\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeContext.Provider>\n );\n };\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isHTMLElement(rootNode)) {\n rootNode?.focus();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && typeof window !== 'undefined' && rootNode) {\n const rootElementMaxHeight = window.getComputedStyle(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.moveDown();\n }\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: string | ((instance: MenuItem | null) => void) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (!originalRef || typeof originalRef === 'string') {\n return;\n }\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n } else if (typeof originalRef === 'object') {\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n originalRef.current = 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 select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n\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 as React.MouseEvent<HTMLElement>);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick(event);\n }\n return true;\n }\n return false;\n }\n\n private highlightItem = (index: number): void => {\n this.setState({ highlightedIndex: index });\n\n const rootNode = getRootNode(this);\n if (isHTMLElement(rootNode)) {\n rootNode?.focus();\n }\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n this.setState((state, props) => {\n const children = childrenToArray(props.children);\n if (!children.some(isActiveElement)) {\n return null;\n }\n let index = state.highlightedIndex;\n do {\n index += step;\n if (!this.getProps().cyclicSelection && (index < 0 || index > children.length)) {\n return null;\n }\n\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 return { highlightedIndex: index };\n }\n } while (index !== state.highlightedIndex);\n return null;\n }, this.scrollToSelected);\n }\n\n private moveUp = () => {\n this.move(-1);\n };\n\n private moveDown = () => {\n this.move(1);\n };\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(e);\n }\n\n if (e.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(e)) {\n e.preventDefault();\n this.moveUp();\n } else if (isKeyArrowDown(e)) {\n e.preventDefault();\n this.moveDown();\n } else if (isKeyEnter(e)) {\n if (this.highlighted && this.highlighted.props.onClick) {\n this.highlighted.props.onClick(e);\n }\n }\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollState) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\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"]}