@skbkontur/react-ui 0.0.0-b5a1896fa9 → 0.0.0-b821a2f064

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 (1433) hide show
  1. package/CHANGELOG.md +253 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +9 -3
  3. package/cjs/components/Autocomplete/Autocomplete.js +24 -7
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Autocomplete/Autocomplete.md +17 -0
  6. package/cjs/components/Button/Button.d.ts +9 -3
  7. package/cjs/components/Button/Button.js +37 -6
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.md +68 -0
  10. package/cjs/components/Button/Button.mixins.js +1 -1
  11. package/cjs/components/Button/Button.mixins.js.map +1 -1
  12. package/cjs/components/Button/Button.styles.d.ts +3 -1
  13. package/cjs/components/Button/Button.styles.js +78 -64
  14. package/cjs/components/Button/Button.styles.js.map +1 -1
  15. package/cjs/components/Button/ButtonArrow.js +1 -1
  16. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  17. package/cjs/components/Button/ButtonIcon.d.ts +3 -2
  18. package/cjs/components/Button/ButtonIcon.js +2 -4
  19. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  20. package/cjs/components/Button/getInnerLinkTheme.js +10 -4
  21. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  22. package/cjs/components/Calendar/Calendar.d.ts +1 -0
  23. package/cjs/components/Calendar/Calendar.js +8 -6
  24. package/cjs/components/Calendar/Calendar.js.map +1 -1
  25. package/cjs/components/Calendar/Calendar.md +14 -3
  26. package/cjs/components/Calendar/Calendar.styles.js +1 -2
  27. package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
  28. package/cjs/components/Calendar/DayCellView.js +9 -2
  29. package/cjs/components/Calendar/DayCellView.js.map +1 -1
  30. package/cjs/components/Calendar/DayCellView.styles.d.ts +1 -1
  31. package/cjs/components/Calendar/DayCellView.styles.js +4 -4
  32. package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
  33. package/cjs/components/Calendar/locale/locales/en.js +3 -1
  34. package/cjs/components/Calendar/locale/locales/en.js.map +1 -1
  35. package/cjs/components/Calendar/locale/locales/ru.js +3 -1
  36. package/cjs/components/Calendar/locale/locales/ru.js.map +1 -1
  37. package/cjs/components/Calendar/locale/types.d.ts +4 -0
  38. package/cjs/components/Checkbox/Checkbox.d.ts +15 -5
  39. package/cjs/components/Checkbox/Checkbox.js +81 -23
  40. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  41. package/cjs/components/Checkbox/Checkbox.md +18 -0
  42. package/cjs/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  43. package/cjs/components/Checkbox/Checkbox.mixins.js +37 -0
  44. package/cjs/components/Checkbox/Checkbox.mixins.js.map +1 -0
  45. package/cjs/components/Checkbox/Checkbox.styles.d.ts +6 -0
  46. package/cjs/components/Checkbox/Checkbox.styles.js +95 -34
  47. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  48. package/cjs/components/ComboBox/ComboBox.d.ts +6 -8
  49. package/cjs/components/ComboBox/ComboBox.js +2 -1
  50. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  51. package/cjs/components/ComboBox/ComboBox.md +51 -5
  52. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  53. package/cjs/components/CurrencyInput/CurrencyHelper.js +21 -6
  54. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  55. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  56. package/cjs/components/CurrencyInput/CurrencyInput.js +4 -1
  57. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  58. package/cjs/components/DateInput/DateFragmentsView.js +2 -1
  59. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  60. package/cjs/components/DateInput/DateInput.d.ts +5 -1
  61. package/cjs/components/DateInput/DateInput.js +26 -9
  62. package/cjs/components/DateInput/DateInput.js.map +1 -1
  63. package/cjs/components/DateInput/helpers/SelectionHelpers.js +11 -10
  64. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  65. package/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  66. package/cjs/components/DatePicker/DatePicker.js +13 -2
  67. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  68. package/cjs/components/DatePicker/DatePicker.md +15 -0
  69. package/cjs/components/DatePicker/locale/locales/en.js +4 -1
  70. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  71. package/cjs/components/DatePicker/locale/locales/ru.js +4 -1
  72. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  73. package/cjs/components/DatePicker/locale/types.d.ts +3 -1
  74. package/cjs/components/Dropdown/Dropdown.d.ts +4 -7
  75. package/cjs/components/Dropdown/Dropdown.js +4 -3
  76. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  77. package/cjs/components/Dropdown/Dropdown.md +33 -0
  78. package/cjs/components/Dropdown/getDropdownTheme.js +32 -2
  79. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  80. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  81. package/cjs/components/DropdownMenu/DropdownMenu.js +6 -1
  82. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  83. package/cjs/components/DropdownMenu/DropdownMenu.md +28 -0
  84. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js +5 -1
  85. package/cjs/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
  86. package/cjs/components/FileUploader/FileUploader.d.ts +6 -2
  87. package/cjs/components/FileUploader/FileUploader.js +9 -5
  88. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  89. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
  90. package/cjs/components/FileUploader/FileUploader.styles.js +13 -4
  91. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  92. package/cjs/components/FxInput/FxInput.d.ts +4 -2
  93. package/cjs/components/FxInput/FxInput.js +6 -1
  94. package/cjs/components/FxInput/FxInput.js.map +1 -1
  95. package/cjs/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  96. package/cjs/components/FxInput/FxInputRestoreBtn.js +7 -2
  97. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  98. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  99. package/cjs/components/GlobalLoader/GlobalLoader.js +10 -11
  100. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  101. package/cjs/components/GlobalLoader/GlobalLoaderView.js +2 -2
  102. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  103. package/cjs/components/Hint/Hint.js +5 -4
  104. package/cjs/components/Hint/Hint.js.map +1 -1
  105. package/cjs/components/Input/Input.d.ts +7 -7
  106. package/cjs/components/Input/Input.js +23 -16
  107. package/cjs/components/Input/Input.js.map +1 -1
  108. package/cjs/components/Input/Input.styles.js +3 -2
  109. package/cjs/components/Input/Input.styles.js.map +1 -1
  110. package/cjs/components/Input/InputLayout/InputLayout.d.ts +3 -2
  111. package/cjs/components/Input/InputLayout/InputLayout.js +4 -3
  112. package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
  113. package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
  114. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  115. package/cjs/components/Input/InputLayout/InputLayoutAside.js +2 -8
  116. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  117. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +5 -4
  118. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  119. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  120. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
  121. package/cjs/components/Kebab/Kebab.d.ts +3 -2
  122. package/cjs/components/Kebab/Kebab.js +10 -2
  123. package/cjs/components/Kebab/Kebab.js.map +1 -1
  124. package/cjs/components/Kebab/Kebab.md +28 -0
  125. package/cjs/components/Link/Link.d.ts +8 -3
  126. package/cjs/components/Link/Link.js +34 -7
  127. package/cjs/components/Link/Link.js.map +1 -1
  128. package/cjs/components/Link/Link.md +69 -0
  129. package/cjs/components/Link/Link.mixins.d.ts +1 -2
  130. package/cjs/components/Link/Link.mixins.js +5 -16
  131. package/cjs/components/Link/Link.mixins.js.map +1 -1
  132. package/cjs/components/Link/Link.styles.d.ts +5 -0
  133. package/cjs/components/Link/Link.styles.js +104 -37
  134. package/cjs/components/Link/Link.styles.js.map +1 -1
  135. package/cjs/components/Loader/Loader.js +8 -7
  136. package/cjs/components/Loader/Loader.js.map +1 -1
  137. package/cjs/components/MenuFooter/MenuFooter.d.ts +30 -0
  138. package/cjs/components/MenuFooter/MenuFooter.js +83 -0
  139. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -0
  140. package/cjs/components/MenuFooter/MenuFooter.md +27 -0
  141. package/cjs/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  142. package/cjs/components/MenuFooter/MenuFooter.mixins.js +26 -0
  143. package/cjs/components/MenuFooter/MenuFooter.mixins.js.map +1 -0
  144. package/cjs/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  145. package/cjs/components/MenuFooter/MenuFooter.styles.js +65 -0
  146. package/cjs/components/MenuFooter/MenuFooter.styles.js.map +1 -0
  147. package/cjs/components/MenuFooter/index.d.ts +1 -0
  148. package/cjs/components/MenuFooter/index.js +1 -0
  149. package/cjs/components/MenuFooter/index.js.map +1 -0
  150. package/cjs/components/MenuHeader/MenuHeader.d.ts +8 -1
  151. package/cjs/components/MenuHeader/MenuHeader.js +35 -4
  152. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  153. package/cjs/components/MenuHeader/MenuHeader.md +12 -0
  154. package/cjs/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  155. package/cjs/components/MenuHeader/MenuHeader.mixins.js +26 -0
  156. package/cjs/components/MenuHeader/MenuHeader.mixins.js.map +1 -0
  157. package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  158. package/cjs/components/MenuHeader/MenuHeader.styles.js +54 -12
  159. package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  160. package/cjs/components/MenuItem/MenuItem.d.ts +14 -5
  161. package/cjs/components/MenuItem/MenuItem.js +62 -9
  162. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  163. package/cjs/components/MenuItem/MenuItem.md +12 -0
  164. package/cjs/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  165. package/cjs/components/MenuItem/MenuItem.mixins.js +42 -0
  166. package/cjs/components/MenuItem/MenuItem.mixins.js.map +1 -0
  167. package/cjs/components/MenuItem/MenuItem.styles.d.ts +9 -1
  168. package/cjs/components/MenuItem/MenuItem.styles.js +80 -27
  169. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  170. package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
  171. package/cjs/components/MiniModal/MiniModal.js +47 -0
  172. package/cjs/components/MiniModal/MiniModal.js.map +1 -0
  173. package/cjs/components/MiniModal/MiniModal.md +233 -0
  174. package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
  175. package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
  176. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
  177. package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
  178. package/cjs/components/MiniModal/MiniModalBody.js +24 -0
  179. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
  180. package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
  181. package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
  182. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
  183. package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
  184. package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
  185. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
  186. package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
  187. package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
  188. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
  189. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  190. package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
  191. package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
  192. package/cjs/components/MiniModal/index.d.ts +5 -0
  193. package/cjs/components/MiniModal/index.js +5 -0
  194. package/cjs/components/MiniModal/index.js.map +1 -0
  195. package/cjs/components/Modal/Modal.d.ts +6 -0
  196. package/cjs/components/Modal/Modal.js +15 -1
  197. package/cjs/components/Modal/Modal.js.map +1 -1
  198. package/cjs/components/Modal/Modal.md +16 -0
  199. package/cjs/components/Modal/Modal.styles.d.ts +5 -0
  200. package/cjs/components/Modal/Modal.styles.js +56 -39
  201. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  202. package/cjs/components/Modal/ModalClose.js +7 -2
  203. package/cjs/components/Modal/ModalClose.js.map +1 -1
  204. package/cjs/components/Modal/ModalFooter.js +1 -1
  205. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  206. package/cjs/components/Modal/ModalHeader.js +2 -2
  207. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  208. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  209. package/cjs/components/Modal/ModalSeparator.js +5 -0
  210. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  211. package/cjs/components/Modal/getModalTheme.d.ts +2 -2
  212. package/cjs/components/Modal/getModalTheme.js +6 -2
  213. package/cjs/components/Modal/getModalTheme.js.map +1 -1
  214. package/cjs/components/Modal/locale/index.d.ts +4 -0
  215. package/cjs/components/Modal/locale/index.js +11 -0
  216. package/cjs/components/Modal/locale/index.js.map +1 -0
  217. package/cjs/components/Modal/locale/locales/en.d.ts +2 -0
  218. package/cjs/components/Modal/locale/locales/en.js +4 -0
  219. package/cjs/components/Modal/locale/locales/en.js.map +1 -0
  220. package/cjs/components/Modal/locale/locales/ru.d.ts +2 -0
  221. package/cjs/components/Modal/locale/locales/ru.js +4 -0
  222. package/cjs/components/Modal/locale/locales/ru.js.map +1 -0
  223. package/cjs/components/Modal/locale/types.d.ts +3 -0
  224. package/cjs/components/Modal/locale/types.js +1 -0
  225. package/cjs/components/Modal/locale/types.js.map +1 -0
  226. package/cjs/components/Paging/NavigationHelper.js +2 -1
  227. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  228. package/cjs/components/Paging/Paging.js +16 -15
  229. package/cjs/components/Paging/Paging.js.map +1 -1
  230. package/cjs/components/Paging/Paging.styles.d.ts +0 -1
  231. package/cjs/components/Paging/Paging.styles.js +5 -10
  232. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  233. package/cjs/components/PasswordInput/PasswordInput.d.ts +3 -2
  234. package/cjs/components/PasswordInput/PasswordInput.js +17 -6
  235. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  236. package/cjs/components/PasswordInput/PasswordInput.md +19 -0
  237. package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  238. package/cjs/components/PasswordInput/PasswordInput.styles.js +11 -1
  239. package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  240. package/cjs/components/PasswordInput/locale/index.d.ts +4 -0
  241. package/cjs/components/PasswordInput/locale/index.js +11 -0
  242. package/cjs/components/PasswordInput/locale/index.js.map +1 -0
  243. package/cjs/components/PasswordInput/locale/locales/en.d.ts +2 -0
  244. package/cjs/components/PasswordInput/locale/locales/en.js +5 -0
  245. package/cjs/components/PasswordInput/locale/locales/en.js.map +1 -0
  246. package/cjs/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  247. package/cjs/components/PasswordInput/locale/locales/ru.js +5 -0
  248. package/cjs/components/PasswordInput/locale/locales/ru.js.map +1 -0
  249. package/cjs/components/PasswordInput/locale/types.d.ts +4 -0
  250. package/cjs/components/PasswordInput/locale/types.js +1 -0
  251. package/cjs/components/PasswordInput/locale/types.js.map +1 -0
  252. package/cjs/components/Radio/Radio.d.ts +15 -3
  253. package/cjs/components/Radio/Radio.js +60 -7
  254. package/cjs/components/Radio/Radio.js.map +1 -1
  255. package/cjs/components/Radio/Radio.md +18 -0
  256. package/cjs/components/Radio/Radio.mixins.d.ts +5 -0
  257. package/cjs/components/Radio/Radio.mixins.js +71 -0
  258. package/cjs/components/Radio/Radio.mixins.js.map +1 -0
  259. package/cjs/components/Radio/Radio.styles.d.ts +9 -0
  260. package/cjs/components/Radio/Radio.styles.js +93 -57
  261. package/cjs/components/Radio/Radio.styles.js.map +1 -1
  262. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
  263. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  264. package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
  265. package/cjs/components/ScrollContainer/ScrollBar.js +14 -45
  266. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  267. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
  268. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  269. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +22 -5
  270. package/cjs/components/ScrollContainer/ScrollContainer.js +95 -20
  271. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  272. package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
  273. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  274. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
  275. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  276. package/cjs/components/Select/Select.d.ts +13 -10
  277. package/cjs/components/Select/Select.js +39 -16
  278. package/cjs/components/Select/Select.js.map +1 -1
  279. package/cjs/components/Select/Select.md +17 -0
  280. package/cjs/components/Select/Select.styles.js +3 -2
  281. package/cjs/components/Select/Select.styles.js.map +1 -1
  282. package/cjs/components/Select/selectTheme.js +4 -1
  283. package/cjs/components/Select/selectTheme.js.map +1 -1
  284. package/cjs/components/SidePage/SidePage.js +12 -3
  285. package/cjs/components/SidePage/SidePage.js.map +1 -1
  286. package/cjs/components/SidePage/SidePage.md +16 -0
  287. package/cjs/components/SidePage/SidePageCloseButton.d.ts +1 -0
  288. package/cjs/components/SidePage/SidePageCloseButton.js +48 -0
  289. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -0
  290. package/cjs/components/SidePage/SidePageHeader.d.ts +1 -4
  291. package/cjs/components/SidePage/SidePageHeader.js +8 -40
  292. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  293. package/cjs/components/SidePage/locale/index.d.ts +4 -0
  294. package/cjs/components/SidePage/locale/index.js +11 -0
  295. package/cjs/components/SidePage/locale/index.js.map +1 -0
  296. package/cjs/components/SidePage/locale/locales/en.d.ts +2 -0
  297. package/cjs/components/SidePage/locale/locales/en.js +4 -0
  298. package/cjs/components/SidePage/locale/locales/en.js.map +1 -0
  299. package/cjs/components/SidePage/locale/locales/ru.d.ts +2 -0
  300. package/cjs/components/SidePage/locale/locales/ru.js +4 -0
  301. package/cjs/components/SidePage/locale/locales/ru.js.map +1 -0
  302. package/cjs/components/SidePage/locale/types.d.ts +3 -0
  303. package/cjs/components/SidePage/locale/types.js +1 -0
  304. package/cjs/components/SidePage/locale/types.js.map +1 -0
  305. package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
  306. package/cjs/components/SingleToast/SingleToast.js +20 -0
  307. package/cjs/components/SingleToast/SingleToast.js.map +1 -0
  308. package/cjs/components/SingleToast/SingleToast.md +35 -0
  309. package/cjs/components/SingleToast/index.d.ts +1 -0
  310. package/cjs/components/SingleToast/index.js +1 -0
  311. package/cjs/components/SingleToast/index.js.map +1 -0
  312. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
  313. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  314. package/cjs/components/Sticky/Sticky.js +7 -7
  315. package/cjs/components/Sticky/Sticky.js.map +1 -1
  316. package/cjs/components/Switcher/Switcher.d.ts +12 -7
  317. package/cjs/components/Switcher/Switcher.js +16 -5
  318. package/cjs/components/Switcher/Switcher.js.map +1 -1
  319. package/cjs/components/Tabs/Indicator.js +2 -1
  320. package/cjs/components/Tabs/Indicator.js.map +1 -1
  321. package/cjs/components/Tabs/Tab.d.ts +17 -36
  322. package/cjs/components/Tabs/Tab.js +26 -22
  323. package/cjs/components/Tabs/Tab.js.map +1 -1
  324. package/cjs/components/Tabs/Tab.md +71 -0
  325. package/cjs/components/Tabs/Tab.styles.d.ts +9 -3
  326. package/cjs/components/Tabs/Tab.styles.js +106 -68
  327. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  328. package/cjs/components/Tabs/Tabs.d.ts +16 -15
  329. package/cjs/components/Tabs/Tabs.js +14 -5
  330. package/cjs/components/Tabs/Tabs.js.map +1 -1
  331. package/cjs/components/Tabs/Tabs.md +39 -22
  332. package/cjs/components/Tabs/Tabs.styles.d.ts +3 -1
  333. package/cjs/components/Tabs/Tabs.styles.js +23 -7
  334. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  335. package/cjs/components/Tabs/TabsContext.d.ts +2 -0
  336. package/cjs/components/Tabs/TabsContext.js +3 -0
  337. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  338. package/cjs/components/Tabs/helpers.d.ts +6 -0
  339. package/cjs/components/Tabs/helpers.js +31 -0
  340. package/cjs/components/Tabs/helpers.js.map +1 -0
  341. package/cjs/components/Textarea/Textarea.d.ts +12 -3
  342. package/cjs/components/Textarea/Textarea.js +67 -16
  343. package/cjs/components/Textarea/Textarea.js.map +1 -1
  344. package/cjs/components/Textarea/Textarea.md +12 -0
  345. package/cjs/components/Textarea/Textarea.mixins.d.ts +3 -0
  346. package/cjs/components/Textarea/Textarea.mixins.js +22 -0
  347. package/cjs/components/Textarea/Textarea.mixins.js.map +1 -0
  348. package/cjs/components/Textarea/Textarea.styles.d.ts +10 -1
  349. package/cjs/components/Textarea/Textarea.styles.js +64 -23
  350. package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
  351. package/cjs/components/Textarea/TextareaCounter.d.ts +3 -1
  352. package/cjs/components/Textarea/TextareaCounter.js +19 -4
  353. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  354. package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
  355. package/cjs/components/Textarea/TextareaHelpers.js +7 -2
  356. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  357. package/cjs/components/Toast/Toast.d.ts +13 -5
  358. package/cjs/components/Toast/Toast.js +29 -9
  359. package/cjs/components/Toast/Toast.js.map +1 -1
  360. package/cjs/components/Toast/Toast.md +0 -105
  361. package/cjs/components/Toast/ToastStatic.js +4 -3
  362. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  363. package/cjs/components/Toast/ToastView.d.ts +6 -6
  364. package/cjs/components/Toast/ToastView.js +19 -6
  365. package/cjs/components/Toast/ToastView.js.map +1 -1
  366. package/cjs/components/Toast/ToastView.styles.js +5 -2
  367. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  368. package/cjs/components/Toast/locale/index.d.ts +4 -0
  369. package/cjs/components/Toast/locale/index.js +11 -0
  370. package/cjs/components/Toast/locale/index.js.map +1 -0
  371. package/cjs/components/Toast/locale/locales/en.d.ts +2 -0
  372. package/cjs/components/Toast/locale/locales/en.js +4 -0
  373. package/cjs/components/Toast/locale/locales/en.js.map +1 -0
  374. package/cjs/components/Toast/locale/locales/ru.d.ts +2 -0
  375. package/cjs/components/Toast/locale/locales/ru.js +4 -0
  376. package/cjs/components/Toast/locale/locales/ru.js.map +1 -0
  377. package/cjs/components/Toast/locale/types.d.ts +3 -0
  378. package/cjs/components/Toast/locale/types.js +1 -0
  379. package/cjs/components/Toast/locale/types.js.map +1 -0
  380. package/cjs/components/Toggle/Toggle.d.ts +16 -6
  381. package/cjs/components/Toggle/Toggle.js +112 -3
  382. package/cjs/components/Toggle/Toggle.js.map +1 -1
  383. package/cjs/components/Toggle/Toggle.md +18 -2
  384. package/cjs/components/Toggle/Toggle.mixins.d.ts +7 -0
  385. package/cjs/components/Toggle/Toggle.mixins.js +90 -0
  386. package/cjs/components/Toggle/Toggle.mixins.js.map +1 -0
  387. package/cjs/components/Toggle/Toggle.styles.d.ts +21 -1
  388. package/cjs/components/Toggle/Toggle.styles.js +172 -56
  389. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  390. package/cjs/components/Token/Token.d.ts +2 -5
  391. package/cjs/components/Token/Token.js +15 -8
  392. package/cjs/components/Token/Token.js.map +1 -1
  393. package/cjs/components/Token/locale/index.d.ts +4 -0
  394. package/cjs/components/Token/locale/index.js +11 -0
  395. package/cjs/components/Token/locale/index.js.map +1 -0
  396. package/cjs/components/Token/locale/locales/en.d.ts +2 -0
  397. package/cjs/components/Token/locale/locales/en.js +4 -0
  398. package/cjs/components/Token/locale/locales/en.js.map +1 -0
  399. package/cjs/components/Token/locale/locales/ru.d.ts +2 -0
  400. package/cjs/components/Token/locale/locales/ru.js +4 -0
  401. package/cjs/components/Token/locale/locales/ru.js.map +1 -0
  402. package/cjs/components/Token/locale/types.d.ts +3 -0
  403. package/cjs/components/Token/locale/types.js +1 -0
  404. package/cjs/components/Token/locale/types.js.map +1 -0
  405. package/cjs/components/TokenInput/TokenInput.d.ts +5 -5
  406. package/cjs/components/TokenInput/TokenInput.js +52 -16
  407. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  408. package/cjs/components/TokenInput/TokenInput.md +26 -35
  409. package/cjs/components/TokenInput/TokenInput.styles.js +2 -1
  410. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  411. package/cjs/components/TokenInput/TokenInputMenu.d.ts +7 -0
  412. package/cjs/components/TokenInput/TokenInputMenu.js +9 -1
  413. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  414. package/cjs/components/Tooltip/Tooltip.js +5 -5
  415. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  416. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  417. package/cjs/components/TooltipMenu/TooltipMenu.js +10 -2
  418. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  419. package/cjs/components/TooltipMenu/TooltipMenu.md +28 -0
  420. package/cjs/hooks/useDrop.js +3 -2
  421. package/cjs/hooks/useDrop.js.map +1 -1
  422. package/cjs/index.d.ts +4 -0
  423. package/cjs/index.js +4 -0
  424. package/cjs/index.js.map +1 -1
  425. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  426. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +5 -1
  427. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  428. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +2 -1
  429. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
  430. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  431. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +37 -2
  432. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  433. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  434. package/cjs/internal/CustomComboBox/ComboBoxView.js +32 -34
  435. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  436. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  437. package/cjs/internal/CustomComboBox/CustomComboBox.js +32 -16
  438. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  439. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  440. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +7 -2
  441. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  442. package/cjs/internal/DateSelect/DateSelect.d.ts +2 -0
  443. package/cjs/internal/DateSelect/DateSelect.js +50 -18
  444. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  445. package/cjs/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  446. package/cjs/internal/DateSelect/DateSelect.styles.js +26 -4
  447. package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
  448. package/cjs/internal/DateSelect/locale/index.d.ts +4 -0
  449. package/cjs/internal/DateSelect/locale/index.js +11 -0
  450. package/cjs/internal/DateSelect/locale/index.js.map +1 -0
  451. package/cjs/internal/DateSelect/locale/locales/en.d.ts +2 -0
  452. package/cjs/internal/DateSelect/locale/locales/en.js +6 -0
  453. package/cjs/internal/DateSelect/locale/locales/en.js.map +1 -0
  454. package/cjs/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  455. package/cjs/internal/DateSelect/locale/locales/ru.js +6 -0
  456. package/cjs/internal/DateSelect/locale/locales/ru.js.map +1 -0
  457. package/cjs/internal/DateSelect/locale/types.d.ts +5 -0
  458. package/cjs/internal/DateSelect/locale/types.js +1 -0
  459. package/cjs/internal/DateSelect/locale/types.js.map +1 -0
  460. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +3 -3
  461. package/cjs/internal/DropdownContainer/DropdownContainer.js +19 -14
  462. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  463. package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
  464. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
  465. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  466. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +11 -8
  467. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  468. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  469. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +1 -1
  470. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  471. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  472. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -1
  473. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  474. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  475. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -1
  476. package/cjs/internal/FocusTrap/FocusTrap.js +6 -5
  477. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  478. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +19 -20
  479. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  480. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +2 -1
  481. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  482. package/cjs/internal/InputLikeText/InputLikeText.d.ts +1 -0
  483. package/cjs/internal/InputLikeText/InputLikeText.js +30 -18
  484. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  485. package/cjs/internal/InternalMenu/InternalMenu.d.ts +13 -4
  486. package/cjs/internal/InternalMenu/InternalMenu.js +21 -11
  487. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  488. package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  489. package/cjs/internal/InternalMenu/InternalMenu.styles.js +13 -7
  490. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  491. package/cjs/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  492. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js +9 -0
  493. package/cjs/internal/InternalMenu/isIconPaddingEnabled.js.map +1 -0
  494. package/cjs/internal/Menu/Menu.d.ts +42 -8
  495. package/cjs/internal/Menu/Menu.js +273 -79
  496. package/cjs/internal/Menu/Menu.js.map +1 -1
  497. package/cjs/internal/Menu/Menu.styles.d.ts +6 -1
  498. package/cjs/internal/Menu/Menu.styles.js +42 -8
  499. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  500. package/cjs/internal/MenuMessage/MenuMessage.d.ts +3 -1
  501. package/cjs/internal/MenuMessage/MenuMessage.js +18 -3
  502. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  503. package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  504. package/cjs/internal/MenuMessage/MenuMessage.styles.js +21 -6
  505. package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  506. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -2
  507. package/cjs/internal/MobilePopup/MobilePopup.js +1 -1
  508. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  509. package/cjs/internal/Popup/Popup.d.ts +7 -2
  510. package/cjs/internal/Popup/Popup.js +24 -11
  511. package/cjs/internal/Popup/Popup.js.map +1 -1
  512. package/cjs/internal/Popup/PopupHelper.js +9 -7
  513. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  514. package/cjs/internal/PopupMenu/PopupMenu.d.ts +5 -2
  515. package/cjs/internal/PopupMenu/PopupMenu.js +36 -6
  516. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  517. package/cjs/internal/RenderContainer/RenderContainer.js +12 -12
  518. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  519. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
  520. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  521. package/cjs/internal/RenderLayer/RenderLayer.js +3 -2
  522. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  523. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  524. package/cjs/internal/ThemePlayground/SizesGroup.js +1 -0
  525. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  526. package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
  527. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  528. package/cjs/internal/ThemePlayground/constants.js +1 -0
  529. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  530. package/cjs/internal/ThemePlayground/darkTheme.d.ts +1 -1
  531. package/cjs/internal/ThemePlayground/darkTheme.js +1 -1
  532. package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
  533. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  534. package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
  535. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  536. package/cjs/internal/ZIndex/ZIndex.js +2 -2
  537. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  538. package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
  539. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  540. package/cjs/internal/icons/16px/index.d.ts +19 -19
  541. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  542. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  543. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  544. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  545. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  546. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  547. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  548. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  549. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  550. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  551. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  552. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  553. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  554. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  555. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  556. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  557. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  558. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  559. package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
  560. package/cjs/internal/icons2022/BaseIcon.js +3 -7
  561. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  562. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  563. package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
  564. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
  565. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  566. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  567. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  568. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  569. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  570. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  571. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  572. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  573. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  574. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  575. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  576. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  577. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  578. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  579. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  580. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  581. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
  582. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
  583. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  584. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  585. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  586. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  587. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  588. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  589. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  590. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  591. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  592. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  593. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  594. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  595. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  596. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  597. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  598. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  599. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  600. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  601. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  602. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  603. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  604. package/cjs/internal/themes/DarkTheme.d.ts +2 -0
  605. package/cjs/internal/themes/DarkTheme.js +11 -3
  606. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  607. package/cjs/internal/themes/DefaultTheme.d.ts +325 -20
  608. package/cjs/internal/themes/DefaultTheme.js +698 -92
  609. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  610. package/cjs/internal/themes/Theme2022.d.ts +28 -7
  611. package/cjs/internal/themes/Theme2022.js +52 -19
  612. package/cjs/internal/themes/Theme2022.js.map +1 -1
  613. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -11
  614. package/cjs/internal/themes/Theme2022Dark.js +11 -21
  615. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  616. package/cjs/lib/LayoutEvents.js +5 -4
  617. package/cjs/lib/LayoutEvents.js.map +1 -1
  618. package/cjs/lib/ModalStack.js +2 -3
  619. package/cjs/lib/ModalStack.js.map +1 -1
  620. package/cjs/lib/SSRSafe.d.ts +1 -6
  621. package/cjs/lib/SSRSafe.js +4 -48
  622. package/cjs/lib/SSRSafe.js.map +1 -1
  623. package/cjs/lib/Upgrades.d.ts +1 -0
  624. package/cjs/lib/Upgrades.js +3 -1
  625. package/cjs/lib/Upgrades.js.map +1 -1
  626. package/cjs/lib/animation/index.js +6 -4
  627. package/cjs/lib/animation/index.js.map +1 -1
  628. package/cjs/lib/chars.d.ts +1 -1
  629. package/cjs/lib/chars.js +2 -2
  630. package/cjs/lib/chars.js.map +1 -1
  631. package/cjs/lib/client.d.ts +1 -7
  632. package/cjs/lib/client.js +6 -6
  633. package/cjs/lib/client.js.map +1 -1
  634. package/cjs/lib/dom/getScrollWidth.js +4 -4
  635. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  636. package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
  637. package/cjs/lib/dom/tabbableHelpers.js +7 -2
  638. package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
  639. package/cjs/lib/events/MouseDrag.js +11 -11
  640. package/cjs/lib/events/MouseDrag.js.map +1 -1
  641. package/cjs/lib/events/fixClickFocusIE.js +5 -3
  642. package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
  643. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
  644. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  645. package/cjs/lib/events/keyListener.js +9 -11
  646. package/cjs/lib/events/keyListener.js.map +1 -1
  647. package/cjs/lib/events/keyboard/identifiers.js +4 -2
  648. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  649. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +50 -0
  650. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +4 -0
  651. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
  652. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
  653. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  654. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +12 -0
  655. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  656. package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
  657. package/cjs/lib/featureFlagsContext/index.js +3 -0
  658. package/cjs/lib/featureFlagsContext/index.js.map +1 -0
  659. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  660. package/cjs/lib/forwardRefAndName.js +4 -1
  661. package/cjs/lib/forwardRefAndName.js.map +1 -1
  662. package/cjs/lib/listenFocusOutside.js +14 -15
  663. package/cjs/lib/listenFocusOutside.js.map +1 -1
  664. package/cjs/lib/locale/types.d.ts +6 -0
  665. package/cjs/lib/locale/types.js +6 -0
  666. package/cjs/lib/locale/types.js.map +1 -1
  667. package/cjs/lib/needsPolyfillPlaceholder.js +5 -3
  668. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  669. package/cjs/lib/net/fetch.js +24 -18
  670. package/cjs/lib/net/fetch.js.map +1 -1
  671. package/cjs/lib/rootNode/getRootNode.js +5 -6
  672. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  673. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  674. package/cjs/lib/rootNode/rootNodeDecorator.js +7 -3
  675. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  676. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  677. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js +7 -2
  678. package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
  679. package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
  680. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  681. package/cjs/lib/theming/Emotion.js +4 -2
  682. package/cjs/lib/theming/Emotion.js.map +1 -1
  683. package/cjs/lib/types/props.d.ts +1 -0
  684. package/cjs/lib/types/props.js +1 -0
  685. package/cjs/lib/types/props.js.map +1 -0
  686. package/cjs/lib/utils.js +4 -5
  687. package/cjs/lib/utils.js.map +1 -1
  688. package/cjs/typings/global.d.ts +3 -4
  689. package/components/Autocomplete/Autocomplete/Autocomplete.js +18 -5
  690. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  691. package/components/Autocomplete/Autocomplete.d.ts +9 -3
  692. package/components/Autocomplete/Autocomplete.md +17 -0
  693. package/components/Button/Button/Button.js +21 -4
  694. package/components/Button/Button/Button.js.map +1 -1
  695. package/components/Button/Button.d.ts +9 -3
  696. package/components/Button/Button.md +68 -0
  697. package/components/Button/Button.mixins/Button.mixins.js +1 -1
  698. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  699. package/components/Button/Button.styles/Button.styles.js +66 -59
  700. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  701. package/components/Button/Button.styles.d.ts +3 -1
  702. package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
  703. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  704. package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
  705. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  706. package/components/Button/ButtonIcon.d.ts +3 -2
  707. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +10 -4
  708. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  709. package/components/Calendar/Calendar/Calendar.js +8 -6
  710. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  711. package/components/Calendar/Calendar.d.ts +1 -0
  712. package/components/Calendar/Calendar.md +14 -3
  713. package/components/Calendar/Calendar.styles/Calendar.styles.js +1 -1
  714. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
  715. package/components/Calendar/DayCellView/DayCellView.js +7 -1
  716. package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
  717. package/components/Calendar/DayCellView.styles/DayCellView.styles.js +2 -2
  718. package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  719. package/components/Calendar/DayCellView.styles.d.ts +1 -1
  720. package/components/Calendar/locale/locales/en/en.js +2 -1
  721. package/components/Calendar/locale/locales/en/en.js.map +1 -1
  722. package/components/Calendar/locale/locales/ru/ru.js +2 -1
  723. package/components/Calendar/locale/locales/ru/ru.js.map +1 -1
  724. package/components/Calendar/locale/types.d.ts +4 -0
  725. package/components/Checkbox/Checkbox/Checkbox.js +72 -13
  726. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  727. package/components/Checkbox/Checkbox.d.ts +15 -5
  728. package/components/Checkbox/Checkbox.md +18 -0
  729. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js +16 -0
  730. package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js.map +1 -0
  731. package/components/Checkbox/Checkbox.mixins/package.json +6 -0
  732. package/components/Checkbox/Checkbox.mixins.d.ts +2 -0
  733. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +39 -25
  734. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  735. package/components/Checkbox/Checkbox.styles.d.ts +6 -0
  736. package/components/ComboBox/ComboBox/ComboBox.js +1 -0
  737. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  738. package/components/ComboBox/ComboBox.d.ts +6 -8
  739. package/components/ComboBox/ComboBox.md +51 -5
  740. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +32 -4
  741. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  742. package/components/CurrencyInput/CurrencyHelper.d.ts +2 -0
  743. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +3 -1
  744. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  745. package/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  746. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -1
  747. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  748. package/components/DateInput/DateInput/DateInput.js +28 -10
  749. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  750. package/components/DateInput/DateInput.d.ts +5 -1
  751. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -10
  752. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  753. package/components/DatePicker/DatePicker/DatePicker.js +7 -1
  754. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  755. package/components/DatePicker/DatePicker.d.ts +2 -1
  756. package/components/DatePicker/DatePicker.md +15 -0
  757. package/components/DatePicker/locale/locales/en/en.js +4 -2
  758. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  759. package/components/DatePicker/locale/locales/ru/ru.js +4 -2
  760. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  761. package/components/DatePicker/locale/types.d.ts +3 -1
  762. package/components/Dropdown/Dropdown/Dropdown.js +3 -1
  763. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  764. package/components/Dropdown/Dropdown.d.ts +4 -7
  765. package/components/Dropdown/Dropdown.md +33 -0
  766. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +27 -2
  767. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  768. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -0
  769. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  770. package/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  771. package/components/DropdownMenu/DropdownMenu.md +28 -0
  772. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js +5 -1
  773. package/components/DropdownMenu/getDropdownMenuTheme/getDropdownMenuTheme.js.map +1 -1
  774. package/components/FileUploader/FileUploader/FileUploader.js +9 -5
  775. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  776. package/components/FileUploader/FileUploader.d.ts +6 -2
  777. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +3 -3
  778. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  779. package/components/FileUploader/FileUploader.styles.d.ts +1 -1
  780. package/components/FxInput/FxInput/FxInput.js +2 -1
  781. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  782. package/components/FxInput/FxInput.d.ts +4 -2
  783. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +4 -2
  784. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  785. package/components/FxInput/FxInputRestoreBtn.d.ts +3 -2
  786. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +24 -24
  787. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  788. package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  789. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +4 -1
  790. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  791. package/components/Hint/Hint/Hint.js +5 -5
  792. package/components/Hint/Hint/Hint.js.map +1 -1
  793. package/components/Input/Input/Input.js +24 -13
  794. package/components/Input/Input/Input.js.map +1 -1
  795. package/components/Input/Input.d.ts +7 -7
  796. package/components/Input/Input.styles/Input.styles.js +2 -2
  797. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  798. package/components/Input/InputLayout/InputLayout/InputLayout.js +4 -2
  799. package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
  800. package/components/Input/InputLayout/InputLayout.d.ts +3 -2
  801. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
  802. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  803. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +2 -4
  804. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  805. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +7 -5
  806. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  807. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -1
  808. package/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  809. package/components/Kebab/Kebab/Kebab.js +8 -3
  810. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  811. package/components/Kebab/Kebab.d.ts +3 -2
  812. package/components/Kebab/Kebab.md +28 -0
  813. package/components/Link/Link/Link.js +17 -9
  814. package/components/Link/Link/Link.js.map +1 -1
  815. package/components/Link/Link.d.ts +8 -3
  816. package/components/Link/Link.md +69 -0
  817. package/components/Link/Link.mixins/Link.mixins.js +2 -5
  818. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  819. package/components/Link/Link.mixins.d.ts +1 -2
  820. package/components/Link/Link.styles/Link.styles.js +48 -21
  821. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  822. package/components/Link/Link.styles.d.ts +5 -0
  823. package/components/Loader/Loader/Loader.js +9 -6
  824. package/components/Loader/Loader/Loader.js.map +1 -1
  825. package/components/MenuFooter/MenuFooter/MenuFooter.js +74 -0
  826. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -0
  827. package/components/MenuFooter/MenuFooter/package.json +6 -0
  828. package/components/MenuFooter/MenuFooter.d.ts +30 -0
  829. package/components/MenuFooter/MenuFooter.md +27 -0
  830. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js +13 -0
  831. package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js.map +1 -0
  832. package/components/MenuFooter/MenuFooter.mixins/package.json +6 -0
  833. package/components/MenuFooter/MenuFooter.mixins.d.ts +2 -0
  834. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js +29 -0
  835. package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js.map +1 -0
  836. package/components/MenuFooter/MenuFooter.styles/package.json +6 -0
  837. package/components/MenuFooter/MenuFooter.styles.d.ts +10 -0
  838. package/components/MenuFooter/index/index.js +1 -0
  839. package/components/MenuFooter/index/index.js.map +1 -0
  840. package/components/MenuFooter/index/package.json +6 -0
  841. package/components/MenuFooter/index.d.ts +1 -0
  842. package/components/MenuFooter/package.json +6 -0
  843. package/components/MenuHeader/MenuHeader/MenuHeader.js +37 -2
  844. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  845. package/components/MenuHeader/MenuHeader.d.ts +8 -1
  846. package/components/MenuHeader/MenuHeader.md +12 -0
  847. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js +13 -0
  848. package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js.map +1 -0
  849. package/components/MenuHeader/MenuHeader.mixins/package.json +6 -0
  850. package/components/MenuHeader/MenuHeader.mixins.d.ts +2 -0
  851. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js +20 -6
  852. package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
  853. package/components/MenuHeader/MenuHeader.styles.d.ts +6 -1
  854. package/components/MenuItem/MenuItem/MenuItem.js +57 -10
  855. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  856. package/components/MenuItem/MenuItem.d.ts +14 -5
  857. package/components/MenuItem/MenuItem.md +12 -0
  858. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js +24 -0
  859. package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js.map +1 -0
  860. package/components/MenuItem/MenuItem.mixins/package.json +6 -0
  861. package/components/MenuItem/MenuItem.mixins.d.ts +3 -0
  862. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +39 -23
  863. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  864. package/components/MenuItem/MenuItem.styles.d.ts +9 -1
  865. package/components/MiniModal/MiniModal/MiniModal.js +38 -0
  866. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
  867. package/components/MiniModal/MiniModal/package.json +6 -0
  868. package/components/MiniModal/MiniModal.d.ts +18 -0
  869. package/components/MiniModal/MiniModal.md +233 -0
  870. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
  871. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
  872. package/components/MiniModal/MiniModal.styles/package.json +6 -0
  873. package/components/MiniModal/MiniModal.styles.d.ts +14 -0
  874. package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
  875. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
  876. package/components/MiniModal/MiniModalBody/package.json +6 -0
  877. package/components/MiniModal/MiniModalBody.d.ts +7 -0
  878. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
  879. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
  880. package/components/MiniModal/MiniModalFooter/package.json +6 -0
  881. package/components/MiniModal/MiniModalFooter.d.ts +18 -0
  882. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
  883. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
  884. package/components/MiniModal/MiniModalHeader/package.json +6 -0
  885. package/components/MiniModal/MiniModalHeader.d.ts +17 -0
  886. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
  887. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
  888. package/components/MiniModal/MiniModalIndent/package.json +6 -0
  889. package/components/MiniModal/MiniModalIndent.d.ts +6 -0
  890. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
  891. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
  892. package/components/MiniModal/getMiniModalTheme/package.json +6 -0
  893. package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  894. package/components/MiniModal/index/index.js +5 -0
  895. package/components/MiniModal/index/index.js.map +1 -0
  896. package/components/MiniModal/index/package.json +6 -0
  897. package/components/MiniModal/index.d.ts +5 -0
  898. package/components/MiniModal/package.json +6 -0
  899. package/components/Modal/Modal/Modal.js +18 -14
  900. package/components/Modal/Modal/Modal.js.map +1 -1
  901. package/components/Modal/Modal.d.ts +6 -0
  902. package/components/Modal/Modal.md +16 -0
  903. package/components/Modal/Modal.styles/Modal.styles.js +44 -37
  904. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  905. package/components/Modal/Modal.styles.d.ts +5 -0
  906. package/components/Modal/ModalClose/ModalClose.js +6 -1
  907. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  908. package/components/Modal/ModalFooter/ModalFooter.js +1 -1
  909. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  910. package/components/Modal/ModalHeader/ModalHeader.js +2 -2
  911. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  912. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
  913. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  914. package/components/Modal/ModalSeparator.d.ts +5 -0
  915. package/components/Modal/getModalTheme/getModalTheme.js +8 -3
  916. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
  917. package/components/Modal/getModalTheme.d.ts +2 -2
  918. package/components/Modal/locale/index/index.js +8 -0
  919. package/components/Modal/locale/index/index.js.map +1 -0
  920. package/components/Modal/locale/index/package.json +6 -0
  921. package/components/Modal/locale/index.d.ts +4 -0
  922. package/components/Modal/locale/locales/en/en.js +3 -0
  923. package/components/Modal/locale/locales/en/en.js.map +1 -0
  924. package/components/Modal/locale/locales/en/package.json +6 -0
  925. package/components/Modal/locale/locales/en.d.ts +2 -0
  926. package/components/Modal/locale/locales/ru/package.json +6 -0
  927. package/components/Modal/locale/locales/ru/ru.js +3 -0
  928. package/components/Modal/locale/locales/ru/ru.js.map +1 -0
  929. package/components/Modal/locale/locales/ru.d.ts +2 -0
  930. package/components/Modal/locale/package.json +6 -0
  931. package/components/Modal/locale/types/package.json +6 -0
  932. package/components/Modal/locale/types/types.js +1 -0
  933. package/components/Modal/locale/types/types.js.map +1 -0
  934. package/components/Modal/locale/types.d.ts +3 -0
  935. package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
  936. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  937. package/components/Paging/Paging/Paging.js +16 -11
  938. package/components/Paging/Paging/Paging.js.map +1 -1
  939. package/components/Paging/Paging.styles/Paging.styles.js +3 -6
  940. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  941. package/components/Paging/Paging.styles.d.ts +0 -1
  942. package/components/PasswordInput/PasswordInput/PasswordInput.js +12 -6
  943. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  944. package/components/PasswordInput/PasswordInput.d.ts +3 -2
  945. package/components/PasswordInput/PasswordInput.md +19 -0
  946. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js +4 -1
  947. package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
  948. package/components/PasswordInput/PasswordInput.styles.d.ts +1 -0
  949. package/components/PasswordInput/locale/index/index.js +8 -0
  950. package/components/PasswordInput/locale/index/index.js.map +1 -0
  951. package/components/PasswordInput/locale/index/package.json +6 -0
  952. package/components/PasswordInput/locale/index.d.ts +4 -0
  953. package/components/PasswordInput/locale/locales/en/en.js +4 -0
  954. package/components/PasswordInput/locale/locales/en/en.js.map +1 -0
  955. package/components/PasswordInput/locale/locales/en/package.json +6 -0
  956. package/components/PasswordInput/locale/locales/en.d.ts +2 -0
  957. package/components/PasswordInput/locale/locales/ru/package.json +6 -0
  958. package/components/PasswordInput/locale/locales/ru/ru.js +4 -0
  959. package/components/PasswordInput/locale/locales/ru/ru.js.map +1 -0
  960. package/components/PasswordInput/locale/locales/ru.d.ts +2 -0
  961. package/components/PasswordInput/locale/package.json +6 -0
  962. package/components/PasswordInput/locale/types/package.json +6 -0
  963. package/components/PasswordInput/locale/types/types.js +1 -0
  964. package/components/PasswordInput/locale/types/types.js.map +1 -0
  965. package/components/PasswordInput/locale/types.d.ts +4 -0
  966. package/components/Radio/Radio/Radio.js +56 -7
  967. package/components/Radio/Radio/Radio.js.map +1 -1
  968. package/components/Radio/Radio.d.ts +15 -3
  969. package/components/Radio/Radio.md +18 -0
  970. package/components/Radio/Radio.mixins/Radio.mixins.js +28 -0
  971. package/components/Radio/Radio.mixins/Radio.mixins.js.map +1 -0
  972. package/components/Radio/Radio.mixins/package.json +6 -0
  973. package/components/Radio/Radio.mixins.d.ts +5 -0
  974. package/components/Radio/Radio.styles/Radio.styles.js +44 -29
  975. package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
  976. package/components/Radio/Radio.styles.d.ts +9 -0
  977. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
  978. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  979. package/components/ScrollContainer/ScrollBar/ScrollBar.js +16 -50
  980. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  981. package/components/ScrollContainer/ScrollBar.d.ts +4 -7
  982. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +98 -22
  983. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  984. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
  985. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  986. package/components/ScrollContainer/ScrollContainer.d.ts +22 -5
  987. package/components/ScrollContainer/ScrollContainer.md +29 -2
  988. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
  989. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  990. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  991. package/components/Select/Select/Select.js +43 -17
  992. package/components/Select/Select/Select.js.map +1 -1
  993. package/components/Select/Select.d.ts +13 -10
  994. package/components/Select/Select.md +17 -0
  995. package/components/Select/Select.styles/Select.styles.js +1 -1
  996. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  997. package/components/Select/selectTheme/selectTheme.js +3 -1
  998. package/components/Select/selectTheme/selectTheme.js.map +1 -1
  999. package/components/SidePage/SidePage/SidePage.js +8 -7
  1000. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  1001. package/components/SidePage/SidePage.md +16 -0
  1002. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +43 -0
  1003. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -0
  1004. package/components/SidePage/SidePageCloseButton/package.json +6 -0
  1005. package/components/SidePage/SidePageCloseButton.d.ts +1 -0
  1006. package/components/SidePage/SidePageHeader/SidePageHeader.js +7 -39
  1007. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  1008. package/components/SidePage/SidePageHeader.d.ts +1 -4
  1009. package/components/SidePage/locale/index/index.js +8 -0
  1010. package/components/SidePage/locale/index/index.js.map +1 -0
  1011. package/components/SidePage/locale/index/package.json +6 -0
  1012. package/components/SidePage/locale/index.d.ts +4 -0
  1013. package/components/SidePage/locale/locales/en/en.js +3 -0
  1014. package/components/SidePage/locale/locales/en/en.js.map +1 -0
  1015. package/components/SidePage/locale/locales/en/package.json +6 -0
  1016. package/components/SidePage/locale/locales/en.d.ts +2 -0
  1017. package/components/SidePage/locale/locales/ru/package.json +6 -0
  1018. package/components/SidePage/locale/locales/ru/ru.js +3 -0
  1019. package/components/SidePage/locale/locales/ru/ru.js.map +1 -0
  1020. package/components/SidePage/locale/locales/ru.d.ts +2 -0
  1021. package/components/SidePage/locale/package.json +6 -0
  1022. package/components/SidePage/locale/types/package.json +6 -0
  1023. package/components/SidePage/locale/types/types.js +1 -0
  1024. package/components/SidePage/locale/types/types.js.map +1 -0
  1025. package/components/SidePage/locale/types.d.ts +3 -0
  1026. package/components/SingleToast/SingleToast/SingleToast.js +53 -0
  1027. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
  1028. package/components/SingleToast/SingleToast/package.json +6 -0
  1029. package/components/SingleToast/SingleToast.d.ts +11 -0
  1030. package/components/SingleToast/SingleToast.md +35 -0
  1031. package/components/SingleToast/index/index.js +1 -0
  1032. package/components/SingleToast/index/index.js.map +1 -0
  1033. package/components/SingleToast/index/package.json +6 -0
  1034. package/components/SingleToast/index.d.ts +1 -0
  1035. package/components/SingleToast/package.json +6 -0
  1036. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
  1037. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  1038. package/components/Sticky/Sticky/Sticky.js +10 -6
  1039. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  1040. package/components/Switcher/Switcher/Switcher.js +9 -3
  1041. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  1042. package/components/Switcher/Switcher.d.ts +12 -7
  1043. package/components/Tabs/Indicator/Indicator.js +2 -1
  1044. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  1045. package/components/Tabs/Tab/Tab.js +14 -19
  1046. package/components/Tabs/Tab/Tab.js.map +1 -1
  1047. package/components/Tabs/Tab.d.ts +17 -36
  1048. package/components/Tabs/Tab.md +71 -0
  1049. package/components/Tabs/Tab.styles/Tab.styles.js +52 -23
  1050. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  1051. package/components/Tabs/Tab.styles.d.ts +9 -3
  1052. package/components/Tabs/Tabs/Tabs.js +14 -7
  1053. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  1054. package/components/Tabs/Tabs.d.ts +16 -15
  1055. package/components/Tabs/Tabs.md +39 -22
  1056. package/components/Tabs/Tabs.styles/Tabs.styles.js +15 -4
  1057. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  1058. package/components/Tabs/Tabs.styles.d.ts +3 -1
  1059. package/components/Tabs/TabsContext/TabsContext.js +1 -0
  1060. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  1061. package/components/Tabs/TabsContext.d.ts +2 -0
  1062. package/components/Tabs/helpers/helpers.js +28 -0
  1063. package/components/Tabs/helpers/helpers.js.map +1 -0
  1064. package/components/Tabs/helpers/package.json +6 -0
  1065. package/components/Tabs/helpers.d.ts +6 -0
  1066. package/components/Textarea/Textarea/Textarea.js +60 -17
  1067. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  1068. package/components/Textarea/Textarea.d.ts +12 -3
  1069. package/components/Textarea/Textarea.md +12 -0
  1070. package/components/Textarea/Textarea.mixins/Textarea.mixins.js +14 -0
  1071. package/components/Textarea/Textarea.mixins/Textarea.mixins.js.map +1 -0
  1072. package/components/Textarea/Textarea.mixins/package.json +6 -0
  1073. package/components/Textarea/Textarea.mixins.d.ts +3 -0
  1074. package/components/Textarea/Textarea.styles/Textarea.styles.js +43 -15
  1075. package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
  1076. package/components/Textarea/Textarea.styles.d.ts +10 -1
  1077. package/components/Textarea/TextareaCounter/TextareaCounter.js +21 -6
  1078. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  1079. package/components/Textarea/TextareaCounter.d.ts +3 -1
  1080. package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
  1081. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  1082. package/components/Textarea/TextareaHelpers.d.ts +1 -1
  1083. package/components/Toast/Toast/Toast.js +17 -7
  1084. package/components/Toast/Toast/Toast.js.map +1 -1
  1085. package/components/Toast/Toast.d.ts +13 -5
  1086. package/components/Toast/Toast.md +0 -105
  1087. package/components/Toast/ToastStatic/ToastStatic.js +4 -4
  1088. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  1089. package/components/Toast/ToastView/ToastView.js +9 -4
  1090. package/components/Toast/ToastView/ToastView.js.map +1 -1
  1091. package/components/Toast/ToastView.d.ts +6 -6
  1092. package/components/Toast/ToastView.styles/ToastView.styles.js +1 -1
  1093. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  1094. package/components/Toast/locale/index/index.js +8 -0
  1095. package/components/Toast/locale/index/index.js.map +1 -0
  1096. package/components/Toast/locale/index/package.json +6 -0
  1097. package/components/Toast/locale/index.d.ts +4 -0
  1098. package/components/Toast/locale/locales/en/en.js +3 -0
  1099. package/components/Toast/locale/locales/en/en.js.map +1 -0
  1100. package/components/Toast/locale/locales/en/package.json +6 -0
  1101. package/components/Toast/locale/locales/en.d.ts +2 -0
  1102. package/components/Toast/locale/locales/ru/package.json +6 -0
  1103. package/components/Toast/locale/locales/ru/ru.js +3 -0
  1104. package/components/Toast/locale/locales/ru/ru.js.map +1 -0
  1105. package/components/Toast/locale/locales/ru.d.ts +2 -0
  1106. package/components/Toast/locale/package.json +6 -0
  1107. package/components/Toast/locale/types/package.json +6 -0
  1108. package/components/Toast/locale/types/types.js +1 -0
  1109. package/components/Toast/locale/types/types.js.map +1 -0
  1110. package/components/Toast/locale/types.d.ts +3 -0
  1111. package/components/Toggle/Toggle/Toggle.js +119 -10
  1112. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  1113. package/components/Toggle/Toggle.d.ts +16 -6
  1114. package/components/Toggle/Toggle.md +18 -2
  1115. package/components/Toggle/Toggle.mixins/Toggle.mixins.js +35 -0
  1116. package/components/Toggle/Toggle.mixins/Toggle.mixins.js.map +1 -0
  1117. package/components/Toggle/Toggle.mixins/package.json +6 -0
  1118. package/components/Toggle/Toggle.mixins.d.ts +7 -0
  1119. package/components/Toggle/Toggle.styles/Toggle.styles.js +85 -31
  1120. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  1121. package/components/Toggle/Toggle.styles.d.ts +21 -1
  1122. package/components/Token/Token/Token.js +8 -3
  1123. package/components/Token/Token/Token.js.map +1 -1
  1124. package/components/Token/Token.d.ts +2 -5
  1125. package/components/Token/locale/index/index.js +8 -0
  1126. package/components/Token/locale/index/index.js.map +1 -0
  1127. package/components/Token/locale/index/package.json +6 -0
  1128. package/components/Token/locale/index.d.ts +4 -0
  1129. package/components/Token/locale/locales/en/en.js +3 -0
  1130. package/components/Token/locale/locales/en/en.js.map +1 -0
  1131. package/components/Token/locale/locales/en/package.json +6 -0
  1132. package/components/Token/locale/locales/en.d.ts +2 -0
  1133. package/components/Token/locale/locales/ru/package.json +6 -0
  1134. package/components/Token/locale/locales/ru/ru.js +3 -0
  1135. package/components/Token/locale/locales/ru/ru.js.map +1 -0
  1136. package/components/Token/locale/locales/ru.d.ts +2 -0
  1137. package/components/Token/locale/package.json +6 -0
  1138. package/components/Token/locale/types/package.json +6 -0
  1139. package/components/Token/locale/types/types.js +1 -0
  1140. package/components/Token/locale/types/types.js.map +1 -0
  1141. package/components/Token/locale/types.d.ts +3 -0
  1142. package/components/TokenInput/TokenInput/TokenInput.js +63 -15
  1143. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  1144. package/components/TokenInput/TokenInput.d.ts +5 -5
  1145. package/components/TokenInput/TokenInput.md +26 -35
  1146. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
  1147. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  1148. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +1 -0
  1149. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  1150. package/components/TokenInput/TokenInputMenu.d.ts +7 -0
  1151. package/components/Tooltip/Tooltip/Tooltip.js +5 -5
  1152. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  1153. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +8 -2
  1154. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  1155. package/components/TooltipMenu/TooltipMenu.d.ts +2 -2
  1156. package/components/TooltipMenu/TooltipMenu.md +28 -0
  1157. package/hooks/useDrop/useDrop.js +3 -2
  1158. package/hooks/useDrop/useDrop.js.map +1 -1
  1159. package/index.d.ts +4 -0
  1160. package/index.js +4 -0
  1161. package/index.js.map +1 -1
  1162. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
  1163. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  1164. package/internal/CloseButtonIcon/CloseButtonIcon.d.ts +2 -2
  1165. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +1 -1
  1166. package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -1
  1167. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +33 -10
  1168. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  1169. package/internal/CustomComboBox/ComboBoxMenu.d.ts +9 -3
  1170. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +40 -40
  1171. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  1172. package/internal/CustomComboBox/ComboBoxView.d.ts +14 -13
  1173. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +37 -14
  1174. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  1175. package/internal/CustomComboBox/CustomComboBox.d.ts +10 -7
  1176. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +7 -2
  1177. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  1178. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +2 -1
  1179. package/internal/DateSelect/DateSelect/DateSelect.js +51 -36
  1180. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  1181. package/internal/DateSelect/DateSelect.d.ts +2 -0
  1182. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +6 -3
  1183. package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
  1184. package/internal/DateSelect/DateSelect.styles.d.ts +3 -0
  1185. package/internal/DateSelect/locale/index/index.js +8 -0
  1186. package/internal/DateSelect/locale/index/index.js.map +1 -0
  1187. package/internal/DateSelect/locale/index/package.json +6 -0
  1188. package/internal/DateSelect/locale/index.d.ts +4 -0
  1189. package/internal/DateSelect/locale/locales/en/en.js +5 -0
  1190. package/internal/DateSelect/locale/locales/en/en.js.map +1 -0
  1191. package/internal/DateSelect/locale/locales/en/package.json +6 -0
  1192. package/internal/DateSelect/locale/locales/en.d.ts +2 -0
  1193. package/internal/DateSelect/locale/locales/ru/package.json +6 -0
  1194. package/internal/DateSelect/locale/locales/ru/ru.js +5 -0
  1195. package/internal/DateSelect/locale/locales/ru/ru.js.map +1 -0
  1196. package/internal/DateSelect/locale/locales/ru.d.ts +2 -0
  1197. package/internal/DateSelect/locale/package.json +6 -0
  1198. package/internal/DateSelect/locale/types/package.json +6 -0
  1199. package/internal/DateSelect/locale/types/types.js +1 -0
  1200. package/internal/DateSelect/locale/types/types.js.map +1 -0
  1201. package/internal/DateSelect/locale/types.d.ts +5 -0
  1202. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +20 -17
  1203. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  1204. package/internal/DropdownContainer/DropdownContainer.d.ts +3 -3
  1205. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
  1206. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
  1207. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +8 -6
  1208. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  1209. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -6
  1210. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  1211. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  1212. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  1213. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  1214. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -1
  1215. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  1216. package/internal/FocusTrap/FocusTrap/FocusTrap.js +8 -3
  1217. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  1218. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -26
  1219. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  1220. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +2 -1
  1221. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  1222. package/internal/InputLikeText/InputLikeText/InputLikeText.js +48 -27
  1223. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1224. package/internal/InputLikeText/InputLikeText.d.ts +1 -0
  1225. package/internal/InternalMenu/InternalMenu/InternalMenu.js +20 -15
  1226. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1227. package/internal/InternalMenu/InternalMenu.d.ts +13 -4
  1228. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +10 -7
  1229. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  1230. package/internal/InternalMenu/InternalMenu.styles.d.ts +1 -0
  1231. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js +6 -0
  1232. package/internal/InternalMenu/isIconPaddingEnabled/isIconPaddingEnabled.js.map +1 -0
  1233. package/internal/InternalMenu/isIconPaddingEnabled/package.json +6 -0
  1234. package/internal/InternalMenu/isIconPaddingEnabled.d.ts +2 -0
  1235. package/internal/Menu/Menu/Menu.js +201 -46
  1236. package/internal/Menu/Menu/Menu.js.map +1 -1
  1237. package/internal/Menu/Menu.d.ts +42 -8
  1238. package/internal/Menu/Menu.styles/Menu.styles.js +20 -5
  1239. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  1240. package/internal/Menu/Menu.styles.d.ts +6 -1
  1241. package/internal/MenuMessage/MenuMessage/MenuMessage.js +19 -2
  1242. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  1243. package/internal/MenuMessage/MenuMessage.d.ts +3 -1
  1244. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +11 -2
  1245. package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
  1246. package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
  1247. package/internal/MobilePopup/MobilePopup/MobilePopup.js +1 -0
  1248. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  1249. package/internal/MobilePopup/MobilePopup.d.ts +2 -2
  1250. package/internal/Popup/Popup/Popup.js +20 -16
  1251. package/internal/Popup/Popup/Popup.js.map +1 -1
  1252. package/internal/Popup/Popup.d.ts +7 -2
  1253. package/internal/Popup/PopupHelper/PopupHelper.js +8 -5
  1254. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  1255. package/internal/PopupMenu/PopupMenu/PopupMenu.js +31 -7
  1256. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1257. package/internal/PopupMenu/PopupMenu.d.ts +5 -2
  1258. package/internal/RenderContainer/RenderContainer/RenderContainer.js +17 -10
  1259. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  1260. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  1261. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  1262. package/internal/RenderLayer/RenderLayer/RenderLayer.js +10 -5
  1263. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1264. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  1265. package/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  1266. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1267. package/internal/ThemePlayground/constants/constants.js +3 -0
  1268. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  1269. package/internal/ThemePlayground/darkTheme/darkTheme.js +1 -1
  1270. package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
  1271. package/internal/ThemePlayground/darkTheme.d.ts +1 -1
  1272. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
  1273. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  1274. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  1275. package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
  1276. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1277. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
  1278. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1279. package/internal/icons/16px/index.d.ts +19 -19
  1280. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  1281. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  1282. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  1283. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  1284. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  1285. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  1286. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  1287. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  1288. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  1289. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  1290. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  1291. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  1292. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  1293. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  1294. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  1295. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  1296. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  1297. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  1298. package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
  1299. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  1300. package/internal/icons2022/BaseIcon.d.ts +1 -1
  1301. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
  1302. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
  1303. package/internal/icons2022/BaseIcon.styles/package.json +6 -0
  1304. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  1305. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  1306. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  1307. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  1308. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  1309. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  1310. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  1311. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  1312. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  1313. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  1314. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  1315. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  1316. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  1317. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  1318. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  1319. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  1320. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
  1321. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
  1322. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
  1323. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  1324. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  1325. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  1326. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  1327. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  1328. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  1329. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  1330. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  1331. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  1332. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  1333. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  1334. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  1335. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  1336. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  1337. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  1338. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  1339. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  1340. package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  1341. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  1342. package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  1343. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  1344. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  1345. package/internal/themes/DarkTheme/DarkTheme.js +13 -0
  1346. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  1347. package/internal/themes/DarkTheme.d.ts +2 -0
  1348. package/internal/themes/DefaultTheme/DefaultTheme.js +939 -155
  1349. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1350. package/internal/themes/DefaultTheme.d.ts +325 -20
  1351. package/internal/themes/Theme2022/Theme2022.js +83 -54
  1352. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  1353. package/internal/themes/Theme2022.d.ts +28 -7
  1354. package/internal/themes/Theme2022Dark/Theme2022Dark.js +16 -26
  1355. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1356. package/internal/themes/Theme2022Dark.d.ts +5 -11
  1357. package/lib/LayoutEvents/LayoutEvents.js +5 -4
  1358. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  1359. package/lib/ModalStack/ModalStack.js +2 -2
  1360. package/lib/ModalStack/ModalStack.js.map +1 -1
  1361. package/lib/SSRSafe/SSRSafe.js +3 -35
  1362. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1363. package/lib/SSRSafe.d.ts +1 -6
  1364. package/lib/Upgrades/Upgrades.js +3 -1
  1365. package/lib/Upgrades/Upgrades.js.map +1 -1
  1366. package/lib/Upgrades.d.ts +1 -0
  1367. package/lib/animation/index/index.js +6 -3
  1368. package/lib/animation/index/index.js.map +1 -1
  1369. package/lib/chars/chars.js +1 -1
  1370. package/lib/chars/chars.js.map +1 -1
  1371. package/lib/chars.d.ts +1 -1
  1372. package/lib/client/client.js +7 -6
  1373. package/lib/client/client.js.map +1 -1
  1374. package/lib/client.d.ts +1 -7
  1375. package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
  1376. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  1377. package/lib/dom/tabbableHelpers/tabbableHelpers.js +3 -2
  1378. package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
  1379. package/lib/dom/tabbableHelpers.d.ts +2 -1
  1380. package/lib/events/MouseDrag/MouseDrag.js +15 -11
  1381. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1382. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +3 -2
  1383. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
  1384. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
  1385. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  1386. package/lib/events/keyListener/keyListener.js +9 -12
  1387. package/lib/events/keyListener/keyListener.js.map +1 -1
  1388. package/lib/events/keyboard/identifiers/identifiers.js +2 -1
  1389. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  1390. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +50 -0
  1391. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
  1392. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
  1393. package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
  1394. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +4 -0
  1395. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -0
  1396. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  1397. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
  1398. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
  1399. package/lib/featureFlagsContext/index/index.js +2 -0
  1400. package/lib/featureFlagsContext/index/index.js.map +1 -0
  1401. package/lib/featureFlagsContext/index/package.json +6 -0
  1402. package/lib/featureFlagsContext/index.d.ts +2 -0
  1403. package/lib/featureFlagsContext/package.json +6 -0
  1404. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  1405. package/lib/forwardRefAndName.d.ts +1 -1
  1406. package/lib/listenFocusOutside/listenFocusOutside.js +18 -10
  1407. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1408. package/lib/locale/types/types.js.map +1 -1
  1409. package/lib/locale/types.d.ts +6 -0
  1410. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -3
  1411. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  1412. package/lib/net/fetch/fetch.js +29 -21
  1413. package/lib/net/fetch/fetch.js.map +1 -1
  1414. package/lib/rootNode/getRootNode/getRootNode.js +5 -6
  1415. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1416. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +4 -3
  1417. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  1418. package/lib/rootNode/rootNodeDecorator.d.ts +5 -1
  1419. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js +2 -2
  1420. package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js.map +1 -1
  1421. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -1
  1422. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
  1423. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  1424. package/lib/theming/Emotion/Emotion.js +6 -1
  1425. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1426. package/lib/types/props/package.json +6 -0
  1427. package/lib/types/props/props.js +1 -0
  1428. package/lib/types/props/props.js.map +1 -0
  1429. package/lib/types/props.d.ts +1 -0
  1430. package/lib/utils/utils.js +4 -5
  1431. package/lib/utils/utils.js.map +1 -1
  1432. package/package.json +5 -5
  1433. package/typings/global.d.ts +3 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["CustomComboBoxReducer.tsx"],"names":["DEBOUNCE_DELAY","getValueString","value","valueToString","Effect","search","query","dispatch","getState","getProps","getInstance","debouncedSearch","searchEffect","textValue","cancelRequest","cancel","cancelSearch","blur","onBlur","focus","onFocus","valueChange","onValueChange","unexpectedInput","items","onUnexpectedInput","Array","isArray","length","singleItem","valueContent","type","keepFocus","undefined","inputChange","onInputValueChange","returnedValue","inputFocus","input","highlightMenuItem","itemToValue","focused","requestStatus","menu","valueString","index","findIndex","x","highlightItem","requestAnimationFrame","scrollToSelected","ComboBoxRequestStatus","Failed","down","selectMenuItem","event","enter","moveMenuHighlight","direction","resetHighlightedMenuItem","combobox","hasHighlightedItem","reset","reflow","LayoutEvents","emit","selectInputText","inputKeyDown","onInputKeyDown","never","reducer","state","props","action","opened","inputChanged","editing","newState","searchOnFocus","e","effects","nextState","preventDefault","push","prevProps","DefaultState","loading","Pending","shouldResetMenuHighlight","Success","repeatRequest","Unknown"],"mappings":"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","sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\nimport isEqual from 'lodash.isequal';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyArrowUp, isKeyArrowVertical, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable } from '../../typings/utility-types';\n\nimport { CustomComboBox, CustomComboBoxProps, CustomComboBoxState, DefaultState } from './CustomComboBox';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\n\nexport type CustomComboBoxAction<T> =\n | { type: 'ValueChange'; value: T; keepFocus: boolean }\n | { type: 'TextChange'; value: string }\n | { type: 'KeyPress'; event: React.KeyboardEvent }\n | {\n type: 'DidUpdate';\n prevProps: CustomComboBoxProps<T>;\n prevState: CustomComboBoxState<T>;\n }\n | { type: 'Mount' }\n | { type: 'Focus' }\n | { type: 'InputClick' }\n | { type: 'Blur' }\n | { type: 'Reset' }\n | { type: 'Open' }\n | { type: 'Close' }\n | { type: 'Search'; query: string }\n | { type: 'RequestItems' }\n | { type: 'ReceiveItems'; items: T[] }\n | { type: 'RequestFailure'; repeatRequest: () => void }\n | { type: 'CancelRequest' };\n\nexport type CustomComboBoxEffect<T> = (\n dispatch: (action: CustomComboBoxAction<T>) => void,\n getState: () => CustomComboBoxState<T>,\n getProps: () => CustomComboBoxProps<T>,\n getInstance: () => CustomComboBox<T>,\n) => void;\n\ntype Effect = CustomComboBoxEffect<any>;\n\ninterface EffectFactory {\n search: (query: string) => Effect;\n debouncedSearch: Effect & {\n cancel(): void;\n flush(): void;\n };\n cancelRequest: Effect;\n blur: Effect;\n focus: Effect;\n\n valueChange: (value: any) => Effect;\n unexpectedInput: (textValue: string, items: Nullable<any[]>) => Effect;\n inputChange: Effect;\n inputFocus: Effect;\n highlightMenuItem: Effect;\n selectMenuItem: (event: React.KeyboardEvent<HTMLElement>) => Effect;\n inputKeyDown: (event: React.KeyboardEvent<HTMLElement>) => Effect;\n moveMenuHighlight: (direction: 'up' | 'down') => Effect;\n resetHighlightedMenuItem: Effect;\n reflow: Effect;\n selectInputText: Effect;\n}\n\nconst DEBOUNCE_DELAY = 300;\n\nconst getValueString = (value: any, valueToString: CustomComboBoxProps<any>['valueToString']) => {\n return isNonNullable(value) ? valueToString(value) : '';\n};\n\nexport const Effect: EffectFactory = {\n search: (query) => (dispatch, getState, getProps, getInstance) => {\n getInstance().search(query);\n },\n debouncedSearch: debounce((dispatch, getState, getProps, getInstance) => {\n const searchEffect = Effect.search(getState().textValue);\n searchEffect(dispatch, getState, getProps, getInstance);\n }, DEBOUNCE_DELAY),\n cancelRequest: (dispatch, getState, getProps, getInstance) => {\n Effect.debouncedSearch.cancel();\n getInstance().cancelSearch();\n },\n blur: (dispatch, getState, getProps) => {\n const { onBlur } = getProps();\n if (onBlur) {\n onBlur();\n }\n },\n focus: (dispatch, getState, getProps) => {\n const { onFocus } = getProps();\n if (onFocus) {\n onFocus();\n }\n },\n valueChange: (value) => (dispatch, getState, getProps) => {\n const { onValueChange } = getProps();\n if (onValueChange) {\n onValueChange(value);\n }\n },\n unexpectedInput: (textValue, items) => (dispatch, getState, getProps) => {\n const { onUnexpectedInput, valueToString } = getProps();\n\n if (Array.isArray(items) && items.length === 1) {\n const singleItem = items[0];\n const valueContent = getValueString(singleItem, valueToString);\n\n if (valueContent === textValue) {\n dispatch({ type: 'ValueChange', value: singleItem, keepFocus: false });\n return;\n }\n }\n\n if (onUnexpectedInput) {\n const value = onUnexpectedInput(textValue);\n if (value !== undefined) {\n dispatch({ type: 'ValueChange', value, keepFocus: false });\n }\n }\n },\n inputChange: (dispatch, getState, getProps) => {\n const { onInputValueChange } = getProps();\n const { textValue } = getState();\n if (onInputValueChange) {\n const returnedValue = onInputValueChange(textValue);\n if (typeof returnedValue === 'string' && returnedValue !== textValue) {\n dispatch({ type: 'TextChange', value: returnedValue });\n }\n }\n },\n inputFocus: (dispatch, getState, getProps, getInstance) => {\n const { input } = getInstance();\n\n if (!input) {\n return;\n }\n\n input.focus();\n },\n highlightMenuItem: (dispatch, getState, getProps, getInstance) => {\n const { value, itemToValue, valueToString } = getProps();\n const { items, focused, textValue, requestStatus } = getState();\n const { menu } = getInstance();\n const valueString = getValueString(value, valueToString);\n\n if (!menu) {\n return;\n }\n\n if (!focused) {\n return;\n }\n\n let index = -1;\n if (items && items.length && isNonNullable(value)) {\n index = items.findIndex((x) => itemToValue(x) === itemToValue(value));\n }\n menu.highlightItem(index);\n\n if (index >= 0) {\n // @ts-expect-error: Use of private property.\n requestAnimationFrame(() => menu && menu.scrollToSelected());\n return;\n }\n\n if (textValue !== valueString || requestStatus === ComboBoxRequestStatus.Failed) {\n requestAnimationFrame(() => menu && menu.down());\n }\n },\n selectMenuItem: (event) => (dispatch, getState, getProps, getInstance) => {\n const { menu } = getInstance();\n if (menu) {\n menu.enter(event);\n }\n },\n moveMenuHighlight: (direction) => (dispatch, getState, getProps, getInstance) => {\n const { menu } = getInstance();\n if (menu) {\n menu[direction]();\n }\n },\n resetHighlightedMenuItem: (dispatch, getState, getProps, getInstance) => {\n const combobox = getInstance();\n\n if (combobox.menu && combobox.menu.hasHighlightedItem()) {\n combobox.menu.reset();\n }\n },\n reflow: () => {\n LayoutEvents.emit();\n },\n selectInputText: (dispatch, getState, getProps, getInstance) => {\n const combobox = getInstance();\n combobox.selectInputText();\n },\n inputKeyDown: (event) => (dispatch, getState, getProps) => {\n const { onInputKeyDown } = getProps();\n if (onInputKeyDown) {\n onInputKeyDown(event);\n }\n },\n};\n\nconst never = () => null;\n\nexport function reducer<T>(\n state: CustomComboBoxState<T>,\n props: CustomComboBoxProps<T>,\n action: CustomComboBoxAction<T>,\n): Pick<CustomComboBoxState<T>, never> | [Pick<CustomComboBoxState<T>, never>, Array<CustomComboBoxEffect<T>>] {\n switch (action.type) {\n case 'ValueChange': {\n const { value, keepFocus } = action;\n const textValue = getValueString(value, props.valueToString);\n if (keepFocus) {\n return [\n {\n opened: false,\n inputChanged: false,\n editing: true,\n items: null,\n textValue,\n },\n [Effect.valueChange(value), Effect.cancelRequest, Effect.inputFocus],\n ];\n }\n return [\n {\n opened: false,\n inputChanged: false,\n editing: false,\n items: null,\n textValue,\n },\n [Effect.valueChange(value), Effect.cancelRequest],\n ];\n }\n case 'TextChange': {\n const newState = {\n inputChanged: true,\n textValue: action.value,\n };\n if (!action.value && !props.searchOnFocus) {\n return [\n {\n ...newState,\n opened: false,\n items: null,\n },\n [Effect.inputChange],\n ];\n }\n return [newState, [Effect.debouncedSearch, Effect.inputChange]];\n }\n case 'KeyPress': {\n const e = action.event as React.KeyboardEvent<HTMLElement>;\n const effects = [];\n let nextState = state;\n\n switch (true) {\n case isKeyEnter(e):\n e.preventDefault();\n effects.push(Effect.selectMenuItem(e));\n break;\n case isKeyArrowVertical(e):\n e.preventDefault();\n effects.push(Effect.moveMenuHighlight(isKeyArrowUp(e) ? 'up' : 'down'));\n if (!state.opened) {\n effects.push(Effect.search(state.textValue));\n }\n break;\n case isKeyEscape(e):\n nextState = {\n ...state,\n items: null,\n opened: false,\n };\n break;\n }\n return [nextState, [...effects, Effect.inputKeyDown(e)]];\n }\n case 'DidUpdate': {\n if (isEqual(props.value, action.prevProps.value)) {\n return state;\n }\n\n return {\n opened: false,\n textValue: state.editing ? state.textValue : getValueString(props.value, props.valueToString),\n };\n }\n case 'Mount': {\n return {\n textValue: getValueString(props.value, props.valueToString),\n };\n }\n case 'Focus': {\n const newState = {\n focused: true,\n editing: true,\n };\n if (!props.searchOnFocus) {\n return [newState, [Effect.focus]];\n }\n if (state.editing) {\n return [newState, [Effect.search(state.textValue), Effect.focus]];\n }\n return [newState, [Effect.search(''), Effect.focus, Effect.selectInputText]];\n }\n case 'InputClick': {\n const newState = {\n inputChanged: false,\n };\n if (!state.opened && props.searchOnFocus) {\n return [newState, [Effect.search('')]];\n }\n return state;\n }\n case 'Blur': {\n const { inputChanged, items } = state;\n if (!inputChanged) {\n return [\n {\n focused: false,\n opened: false,\n items: null,\n editing: false,\n },\n [Effect.blur, Effect.cancelRequest],\n ];\n }\n\n return [\n {\n focused: false,\n opened: false,\n items: null,\n },\n [Effect.blur, Effect.cancelRequest, Effect.unexpectedInput(state.textValue, items)],\n ];\n }\n case 'Reset': {\n return DefaultState;\n }\n case 'Open': {\n return { opened: true };\n }\n case 'Close': {\n return { opened: false, items: null };\n }\n case 'Search': {\n return [state, [Effect.search(action.query)]];\n }\n case 'RequestItems': {\n return {\n loading: true,\n opened: true,\n requestStatus: ComboBoxRequestStatus.Pending,\n };\n }\n case 'ReceiveItems': {\n const shouldResetMenuHighlight = state.textValue === '';\n return [\n {\n loading: false,\n opened: true,\n items: action.items,\n requestStatus: ComboBoxRequestStatus.Success,\n },\n [shouldResetMenuHighlight ? Effect.resetHighlightedMenuItem : Effect.highlightMenuItem, Effect.reflow],\n ];\n }\n case 'RequestFailure': {\n return [\n {\n loading: false,\n opened: true,\n items: null,\n requestStatus: ComboBoxRequestStatus.Failed,\n repeatRequest: action.repeatRequest,\n },\n [Effect.highlightMenuItem],\n ];\n }\n case 'CancelRequest': {\n return {\n loading: false,\n requestStatus: ComboBoxRequestStatus.Unknown,\n };\n }\n default: {\n never();\n }\n }\n return state;\n}\n"]}
1
+ {"version":3,"sources":["CustomComboBoxReducer.tsx"],"names":["DEBOUNCE_DELAY","getValueString","value","valueToString","Effect","search","query","dispatch","getState","getProps","getInstance","debouncedSearch","searchEffect","textValue","cancelRequest","cancel","cancelSearch","blur","onBlur","focus","onFocus","valueChange","onValueChange","unexpectedInput","items","onUnexpectedInput","Array","isArray","length","singleItem","valueContent","type","keepFocus","undefined","inputChange","onInputValueChange","returnedValue","inputFocus","input","highlightMenuItem","itemToValue","focused","requestStatus","menu","valueString","index","findIndex","x","highlightItem","globalObject","requestAnimationFrame","scrollToSelected","ComboBoxRequestStatus","Failed","down","selectMenuItem","event","enter","moveMenuHighlight","direction","resetHighlightedMenuItem","combobox","hasHighlightedItem","reset","reflow","LayoutEvents","emit","selectInputText","inputKeyDown","onInputKeyDown","never","reducer","state","props","action","opened","inputChanged","editing","newState","searchOnFocus","e","effects","nextState","preventDefault","push","prevProps","DefaultState","loading","Pending","shouldResetMenuHighlight","Success","repeatRequest","Unknown"],"mappings":"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","sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\nimport isEqual from 'lodash.isequal';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyArrowUp, isKeyArrowVertical, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable } from '../../typings/utility-types';\nimport { ComboBoxExtendedItem } from '../../components/ComboBox';\n\nimport { CustomComboBox, CustomComboBoxProps, CustomComboBoxState, DefaultState } from './CustomComboBox';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\n\nexport type CustomComboBoxAction<T> =\n | { type: 'ValueChange'; value: T; keepFocus: boolean }\n | { type: 'TextChange'; value: string }\n | { type: 'KeyPress'; event: React.KeyboardEvent }\n | {\n type: 'DidUpdate';\n prevProps: CustomComboBoxProps<T>;\n prevState: CustomComboBoxState<T>;\n }\n | { type: 'Mount' }\n | { type: 'Focus' }\n | { type: 'InputClick' }\n | { type: 'Blur' }\n | { type: 'Reset' }\n | { type: 'Open' }\n | { type: 'Close' }\n | { type: 'Search'; query: string }\n | { type: 'RequestItems' }\n | { type: 'ReceiveItems'; items: Array<ComboBoxExtendedItem<T>> }\n | { type: 'RequestFailure'; repeatRequest: () => void }\n | { type: 'CancelRequest' };\n\nexport type CustomComboBoxEffect<T> = (\n dispatch: (action: CustomComboBoxAction<T>) => void,\n getState: () => CustomComboBoxState<T>,\n getProps: () => CustomComboBoxProps<T>,\n getInstance: () => CustomComboBox<T>,\n) => void;\n\ntype Effect = CustomComboBoxEffect<any>;\n\ninterface EffectFactory {\n search: (query: string) => Effect;\n debouncedSearch: Effect & {\n cancel(): void;\n flush(): void;\n };\n cancelRequest: Effect;\n blur: Effect;\n focus: Effect;\n\n valueChange: (value: any) => Effect;\n unexpectedInput: (textValue: string, items: Nullable<any[]>) => Effect;\n inputChange: Effect;\n inputFocus: Effect;\n highlightMenuItem: Effect;\n selectMenuItem: (event: React.KeyboardEvent<HTMLElement>) => Effect;\n inputKeyDown: (event: React.KeyboardEvent<HTMLElement>) => Effect;\n moveMenuHighlight: (direction: 'up' | 'down') => Effect;\n resetHighlightedMenuItem: Effect;\n reflow: Effect;\n selectInputText: Effect;\n}\n\nconst DEBOUNCE_DELAY = 300;\n\nconst getValueString = (value: any, valueToString: CustomComboBoxProps<any>['valueToString']) => {\n return isNonNullable(value) ? valueToString(value) : '';\n};\n\nexport const Effect: EffectFactory = {\n search: (query) => (dispatch, getState, getProps, getInstance) => {\n getInstance().search(query);\n },\n debouncedSearch: debounce((dispatch, getState, getProps, getInstance) => {\n const searchEffect = Effect.search(getState().textValue);\n searchEffect(dispatch, getState, getProps, getInstance);\n }, DEBOUNCE_DELAY),\n cancelRequest: (dispatch, getState, getProps, getInstance) => {\n Effect.debouncedSearch.cancel();\n getInstance().cancelSearch();\n },\n blur: (dispatch, getState, getProps) => {\n const { onBlur } = getProps();\n if (onBlur) {\n onBlur();\n }\n },\n focus: (dispatch, getState, getProps) => {\n const { onFocus } = getProps();\n if (onFocus) {\n onFocus();\n }\n },\n valueChange: (value) => (dispatch, getState, getProps) => {\n const { onValueChange } = getProps();\n if (onValueChange) {\n onValueChange(value);\n }\n },\n unexpectedInput: (textValue, items) => (dispatch, getState, getProps) => {\n const { onUnexpectedInput, valueToString } = getProps();\n\n if (Array.isArray(items) && items.length === 1) {\n const singleItem = items[0];\n const valueContent = getValueString(singleItem, valueToString);\n\n if (valueContent === textValue) {\n dispatch({ type: 'ValueChange', value: singleItem, keepFocus: false });\n return;\n }\n }\n\n if (onUnexpectedInput) {\n const value = onUnexpectedInput(textValue);\n if (value !== undefined) {\n dispatch({ type: 'ValueChange', value, keepFocus: false });\n }\n }\n },\n inputChange: (dispatch, getState, getProps) => {\n const { onInputValueChange } = getProps();\n const { textValue } = getState();\n if (onInputValueChange) {\n const returnedValue = onInputValueChange(textValue);\n if (typeof returnedValue === 'string' && returnedValue !== textValue) {\n dispatch({ type: 'TextChange', value: returnedValue });\n }\n }\n },\n inputFocus: (dispatch, getState, getProps, getInstance) => {\n const { input } = getInstance();\n\n if (!input) {\n return;\n }\n\n input.focus();\n },\n highlightMenuItem: (dispatch, getState, getProps, getInstance) => {\n const { value, itemToValue, valueToString } = getProps();\n const { items, focused, textValue, requestStatus } = getState();\n const { menu } = getInstance();\n const valueString = getValueString(value, valueToString);\n\n if (!menu) {\n return;\n }\n\n if (!focused) {\n return;\n }\n\n let index = -1;\n if (items && items.length && isNonNullable(value)) {\n index = items.findIndex((x) => itemToValue(x) === itemToValue(value));\n }\n menu.highlightItem(index);\n\n if (index >= 0) {\n // @ts-expect-error: Use of private property.\n globalObject.requestAnimationFrame?.(() => menu && menu.scrollToSelected());\n return;\n }\n\n if (textValue !== valueString || requestStatus === ComboBoxRequestStatus.Failed) {\n globalObject.requestAnimationFrame?.(() => menu && menu.down());\n }\n },\n selectMenuItem: (event) => (dispatch, getState, getProps, getInstance) => {\n const { menu } = getInstance();\n if (menu) {\n menu.enter(event);\n }\n },\n moveMenuHighlight: (direction) => (dispatch, getState, getProps, getInstance) => {\n const { menu } = getInstance();\n if (menu) {\n menu[direction]();\n }\n },\n resetHighlightedMenuItem: (dispatch, getState, getProps, getInstance) => {\n const combobox = getInstance();\n\n if (combobox.menu && combobox.menu.hasHighlightedItem()) {\n combobox.menu.reset();\n }\n },\n reflow: () => {\n LayoutEvents.emit();\n },\n selectInputText: (dispatch, getState, getProps, getInstance) => {\n const combobox = getInstance();\n combobox.selectInputText();\n },\n inputKeyDown: (event) => (dispatch, getState, getProps) => {\n const { onInputKeyDown } = getProps();\n if (onInputKeyDown) {\n onInputKeyDown(event);\n }\n },\n};\n\nconst never = () => null;\n\nexport function reducer<T>(\n state: CustomComboBoxState<T>,\n props: CustomComboBoxProps<T>,\n action: CustomComboBoxAction<T>,\n): Pick<CustomComboBoxState<T>, never> | [Pick<CustomComboBoxState<T>, never>, Array<CustomComboBoxEffect<T>>] {\n switch (action.type) {\n case 'ValueChange': {\n const { value, keepFocus } = action;\n const textValue = getValueString(value, props.valueToString);\n if (keepFocus) {\n return [\n {\n opened: false,\n inputChanged: false,\n editing: true,\n items: null,\n textValue,\n },\n [Effect.valueChange(value), Effect.cancelRequest, Effect.inputFocus],\n ];\n }\n return [\n {\n opened: false,\n inputChanged: false,\n editing: false,\n items: null,\n textValue,\n },\n [Effect.valueChange(value), Effect.cancelRequest],\n ];\n }\n case 'TextChange': {\n const newState = {\n inputChanged: true,\n textValue: action.value,\n };\n if (!action.value && !props.searchOnFocus) {\n return [\n {\n ...newState,\n opened: false,\n items: null,\n },\n [Effect.inputChange],\n ];\n }\n return [newState, [Effect.debouncedSearch, Effect.inputChange]];\n }\n case 'KeyPress': {\n const e = action.event as React.KeyboardEvent<HTMLElement>;\n const effects = [];\n let nextState = state;\n\n switch (true) {\n case isKeyEnter(e):\n if (!state.opened) {\n break;\n }\n e.preventDefault();\n effects.push(Effect.selectMenuItem(e));\n break;\n case isKeyArrowVertical(e):\n e.preventDefault();\n effects.push(Effect.moveMenuHighlight(isKeyArrowUp(e) ? 'up' : 'down'));\n if (!state.opened) {\n effects.push(Effect.search(state.textValue));\n }\n break;\n case isKeyEscape(e):\n nextState = {\n ...state,\n items: null,\n opened: false,\n };\n break;\n }\n return [nextState, [...effects, Effect.inputKeyDown(e)]];\n }\n case 'DidUpdate': {\n if (isEqual(props.value, action.prevProps.value)) {\n return state;\n }\n\n return {\n opened: false,\n textValue: state.editing ? state.textValue : getValueString(props.value, props.valueToString),\n };\n }\n case 'Mount': {\n return {\n textValue: getValueString(props.value, props.valueToString),\n };\n }\n case 'Focus': {\n const newState = {\n focused: true,\n editing: true,\n };\n if (!props.searchOnFocus) {\n return [newState, [Effect.focus]];\n }\n if (state.editing) {\n return [newState, [Effect.search(state.textValue), Effect.focus]];\n }\n return [newState, [Effect.search(''), Effect.focus, Effect.selectInputText]];\n }\n case 'InputClick': {\n const newState = {\n inputChanged: false,\n };\n if (!state.opened && props.searchOnFocus) {\n return [newState, [Effect.search('')]];\n }\n return state;\n }\n case 'Blur': {\n const { inputChanged, items } = state;\n if (!inputChanged) {\n return [\n {\n focused: false,\n opened: false,\n items: null,\n editing: false,\n },\n [Effect.blur, Effect.cancelRequest],\n ];\n }\n\n return [\n {\n focused: false,\n opened: false,\n items: null,\n },\n [Effect.blur, Effect.cancelRequest, Effect.unexpectedInput(state.textValue, items)],\n ];\n }\n case 'Reset': {\n return DefaultState;\n }\n case 'Open': {\n return { opened: true };\n }\n case 'Close': {\n return { opened: false, items: null };\n }\n case 'Search': {\n return [state, [Effect.search(action.query)]];\n }\n case 'RequestItems': {\n return {\n loading: true,\n opened: true,\n requestStatus: ComboBoxRequestStatus.Pending,\n };\n }\n case 'ReceiveItems': {\n const shouldResetMenuHighlight = state.textValue === '';\n return [\n {\n loading: false,\n opened: true,\n items: action.items,\n requestStatus: ComboBoxRequestStatus.Success,\n },\n [shouldResetMenuHighlight ? Effect.resetHighlightedMenuItem : Effect.highlightMenuItem, Effect.reflow],\n ];\n }\n case 'RequestFailure': {\n return [\n {\n loading: false,\n opened: true,\n items: null,\n requestStatus: ComboBoxRequestStatus.Failed,\n repeatRequest: action.repeatRequest,\n },\n [Effect.highlightMenuItem],\n ];\n }\n case 'CancelRequest': {\n return {\n loading: false,\n requestStatus: ComboBoxRequestStatus.Unknown,\n };\n }\n default: {\n never();\n }\n }\n return state;\n}\n"]}
@@ -23,6 +23,7 @@ export interface DateSelectState {
23
23
  export declare const DateSelectDataTids: {
24
24
  readonly caption: "DateSelect__caption";
25
25
  readonly menuItem: "DateSelect__menuItem";
26
+ readonly menu: "DateSelect__menu";
26
27
  };
27
28
  declare type DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;
28
29
  export declare class DateSelect extends React.PureComponent<DateSelectProps, DateSelectState> {
@@ -70,6 +71,7 @@ export declare class DateSelect extends React.PureComponent<DateSelectProps, Dat
70
71
  */
71
72
  close: () => void;
72
73
  render(): JSX.Element;
74
+ private menuId;
73
75
  private renderMain;
74
76
  private renderMain2022;
75
77
  private refRoot;
@@ -1,5 +1,6 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.DateSelectDataTids = exports.DateSelect = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _propTypes = _interopRequireDefault(require("prop-types"));
3
+ var _globalObject = require("@skbkontur/global-object");
3
4
 
4
5
  var _utils = require("../../lib/utils");
5
6
  var _identifiers = require("../../lib/events/keyboard/identifiers");
@@ -65,7 +66,8 @@ var calculatePos = function calculatePos(pos, minPos, maxPos) {
65
66
 
66
67
  var DateSelectDataTids = {
67
68
  caption: 'DateSelect__caption',
68
- menuItem: 'DateSelect__menuItem' };exports.DateSelectDataTids = DateSelectDataTids;var
69
+ menuItem: 'DateSelect__menuItem',
70
+ menu: 'DateSelect__menu' };exports.DateSelectDataTids = DateSelectDataTids;var
69
71
 
70
72
 
71
73
 
@@ -114,8 +116,8 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
114
116
  itemsContainer = null;_this.
115
117
 
116
118
 
117
- longClickTimer = 0;_this.
118
- setPositionRepeatTimer = 0;_this.
119
+
120
+
119
121
  yearStep = 3;_this.
120
122
  touchStartY = null;_this.
121
123
 
@@ -186,6 +188,29 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
186
188
 
187
189
 
188
190
 
191
+ menuId = DateSelectDataTids.menu + (0, _utils.getRandomID)();_this.
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
189
214
 
190
215
 
191
216
 
@@ -250,12 +275,14 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
250
275
  return;
251
276
  }
252
277
  if (_this.timeout) {
253
- clearTimeout(_this.timeout);
278
+ _globalObject.globalObject.clearTimeout(_this.timeout);
254
279
  }
255
- _this.timeout = setTimeout(function () {return (
280
+ _this.timeout = _globalObject.globalObject.setTimeout(
281
+ function () {return (
256
282
  _this.setState({
257
- nodeTop: (0, _getDOMRect.getDOMRect)(root).top }));});
283
+ nodeTop: (0, _getDOMRect.getDOMRect)(root).top }));},
258
284
 
285
+ 0);
259
286
 
260
287
  };_this.
261
288
 
@@ -380,6 +407,11 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
380
407
 
381
408
 
382
409
 
410
+
411
+
412
+
413
+
414
+
383
415
 
384
416
 
385
417
 
@@ -410,27 +442,27 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
410
442
 
411
443
  handleLongClickUp = function (event) {
412
444
  event.preventDefault();
413
- _this.longClickTimer = window.setTimeout(function () {
414
- _this.setPositionRepeatTimer = window.setInterval(function () {return _this.setPosition(_this.state.pos - itemHeight);}, 100);
445
+ _this.longClickTimer = _globalObject.globalObject.setTimeout(function () {
446
+ _this.setPositionRepeatTimer = _globalObject.globalObject.setInterval(function () {return _this.setPosition(_this.state.pos - itemHeight);}, 100);
415
447
  }, 200);
416
448
  };_this.
417
449
 
418
450
  handleLongClickDown = function (event) {
419
451
  event.preventDefault();
420
- _this.longClickTimer = window.setTimeout(function () {
421
- _this.setPositionRepeatTimer = window.setInterval(function () {return _this.setPosition(_this.state.pos + itemHeight);}, 100);
452
+ _this.longClickTimer = _globalObject.globalObject.setTimeout(function () {
453
+ _this.setPositionRepeatTimer = _globalObject.globalObject.setInterval(function () {return _this.setPosition(_this.state.pos + itemHeight);}, 100);
422
454
  }, 200);
423
455
  };_this.
424
456
 
425
457
  handleLongClickStop = function () {
426
- clearTimeout(_this.longClickTimer);
427
- clearTimeout(_this.setPositionRepeatTimer);
458
+ _globalObject.globalObject.clearTimeout(_this.longClickTimer);
459
+ _globalObject.globalObject.clearTimeout(_this.setPositionRepeatTimer);
428
460
  };_this.
429
461
 
430
462
  getAnchor = function () {return _this.root;};_this.
431
463
 
432
464
  handleWheel = function (event) {
433
- if (!(event instanceof WheelEvent)) {
465
+ if (!(0, _globalObject.isInstanceOf)(event, _globalObject.globalObject.WheelEvent)) {
434
466
  return;
435
467
  }
436
468
  event.preventDefault();
@@ -447,7 +479,7 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
447
479
  };_this.
448
480
 
449
481
  handleTouchStart = function (event) {
450
- if (!(event instanceof TouchEvent)) {
482
+ if (!(0, _globalObject.isInstanceOf)(event, _globalObject.globalObject.TouchEvent)) {
451
483
  return;
452
484
  }
453
485
 
@@ -455,12 +487,12 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
455
487
  };_this.
456
488
 
457
489
  handleTouchMove = function (event) {
458
- if (!(event instanceof TouchEvent)) {
490
+ if (!(0, _globalObject.isInstanceOf)(event, _globalObject.globalObject.TouchEvent) || !(0, _globalObject.isBrowser)(_globalObject.globalObject)) {
459
491
  return;
460
492
  }
461
493
 
462
494
  var clientY = event.changedTouches[0].clientY;
463
- var pixelRatio = window.devicePixelRatio;
495
+ var pixelRatio = _globalObject.globalObject.devicePixelRatio;
464
496
 
465
497
  var deltaY = ((_this.touchStartY || 0) - clientY) / pixelRatio;
466
498
  var pos = _this.state.pos + deltaY + deltaY / itemHeight;
@@ -496,9 +528,9 @@ DateSelect = (_dec = (0, _decorators.locale)('Calendar', _locale.DatePickerLocal
496
528
  handleDown = function (event) {
497
529
  event.preventDefault();
498
530
  _this.setPosition(_this.state.pos + itemHeight * _this.yearStep);
499
- };return _this;}var _proto = DateSelect.prototype;_proto.componentDidUpdate = function componentDidUpdate() {this.setNodeTop();};_proto.componentDidMount = function componentDidMount() {this.listener = LayoutEvents.addListener(this.setNodeTop);this.setNodeTop();window.addEventListener('keydown', this.handleKey);};_proto.componentWillUnmount = function componentWillUnmount() {if (this.listener) {this.listener.remove();}if (this.timeout) {clearTimeout(this.timeout);}if (this.longClickTimer) {clearTimeout(this.longClickTimer);}if (this.setPositionRepeatTimer) {clearTimeout(this.setPositionRepeatTimer);}window.removeEventListener('keydown', this.handleKey);} /**
531
+ };return _this;}var _proto = DateSelect.prototype;_proto.componentDidUpdate = function componentDidUpdate() {this.setNodeTop();};_proto.componentDidMount = function componentDidMount() {this.listener = LayoutEvents.addListener(this.setNodeTop);this.setNodeTop();_globalObject.globalObject.addEventListener == null ? void 0 : _globalObject.globalObject.addEventListener('keydown', this.handleKey);};_proto.componentWillUnmount = function componentWillUnmount() {if (this.listener) {this.listener.remove();}if (this.timeout) {_globalObject.globalObject.clearTimeout(this.timeout);}if (this.longClickTimer) {_globalObject.globalObject.clearTimeout(this.longClickTimer);}if (this.setPositionRepeatTimer) {_globalObject.globalObject.clearTimeout(this.setPositionRepeatTimer);}_globalObject.globalObject.removeEventListener == null ? void 0 : _globalObject.globalObject.removeEventListener('keydown', this.handleKey);} /**
500
532
  * @public
501
- */;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx, _cx2;if ((0, _ThemeHelpers.isTheme2022)(this.theme)) {return this.renderMain2022();}var disabled = this.props.disabled;var width = this.getProps().width;var rootProps = { className: (0, _Emotion.cx)((_cx = {}, _cx[_DateSelect.styles.root(this.theme)] = true, _cx[_DateSelect.styles.disabled()] = Boolean(disabled), _cx)), style: { width: width }, ref: this.refRoot };return /*#__PURE__*/_react.default.createElement("span", rootProps, /*#__PURE__*/_react.default.createElement("div", { "data-tid": DateSelectDataTids.caption, className: _DateSelect.styles.caption(), onClick: this.open }, this.getItem(0), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_DateSelect.styles.arrow(this.theme)] = true, _cx2[_DateSelect.styles.arrowDisabled()] = Boolean(disabled), _cx2)) }, /*#__PURE__*/_react.default.createElement(_px.ArrowTriangleUpDownIcon, { size: 12 }))), this.state.opened && this.renderMenu());};_proto.renderMain2022 = function renderMain2022() {var disabled = this.props.disabled;var width = this.getProps().width;var rootProps = { className: (0, _Emotion.cx)(_DateSelect.styles.root(this.theme), _DateSelect.styles.root2022(), disabled && _DateSelect.styles.disabled()), style: { width: width }, ref: this.refRoot, onClick: this.open };return /*#__PURE__*/_react.default.createElement("span", rootProps, /*#__PURE__*/_react.default.createElement("div", { "data-tid": DateSelectDataTids.caption, className: _DateSelect.styles.caption() }, this.getItem(0)), !disabled && /*#__PURE__*/_react.default.createElement(_ArrowCollapseCVOpenIcon16Regular.ArrowCollapseCVOpenIcon16Regular, { color: "#ADADAD" }), this.state.opened && this.renderMenu());};_proto.disableItems = function disableItems(index) {var value = this.props.value + index;if ((0, _utils.isNonNullable)(this.props.maxValue) && (0, _utils.isNonNullable)(this.props.minValue)) {return value > this.props.maxValue || value < this.props.minValue;}if ((0, _utils.isNonNullable)(this.props.minValue)) {return value < this.props.minValue;}if ((0, _utils.isNonNullable)(this.props.maxValue)) {return value > this.props.maxValue;}};_proto.renderMenu = function renderMenu() {var _this3 = this,_cx3;var _this$state = this.state,top = _this$state.top,height = _this$state.height,nodeTop = _this$state.nodeTop;var shift = this.state.pos % itemHeight;if (shift < 0) {shift += itemHeight;}var from = (this.state.pos - shift + top) / itemHeight;var to = from + Math.ceil((height + shift) / itemHeight);var items = [];var _loop = function _loop(i) {var _cx4;var disableItems = _this3.disableItems(i) || false;var className = (0, _Emotion.cx)((_cx4 = {}, _cx4[_DateSelect.styles.menuItem(_this3.theme)] = true, _cx4[_DateSelect.styles.menuItemSelected(_this3.theme)] = i === 0, _cx4[_DateSelect.styles.menuItemActive(_this3.theme)] = i === _this3.state.current, _cx4[_DateSelect.styles.menuItemDisabled(_this3.theme)] = disableItems, _cx4));var clickHandler = { onMouseDown: preventDefault, onClick: _this3.handleItemClick(i) };items.push( /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({ "data-tid": DateSelectDataTids.menuItem, "data-prop-disabled": disableItems, key: i, className: className, onMouseEnter: function onMouseEnter() {return _this3.setState({ current: i });}, onMouseLeave: function onMouseLeave() {return _this3.setState({ current: null });} }, clickHandler), _this3.getItem(i)));};for (var i = from; i < to; ++i) {_loop(i);}var style = { top: top - 5, left: 0, right: 0 };var shiftStyle = { position: 'relative', top: -shift };var holderClass = (0, _Emotion.cx)((_cx3 = {}, _cx3[_DateSelect.styles.menuHolder(this.theme)] = true, _cx3[_DateSelect.styles.isTopCapped()] = this.state.topCapped, _cx3[_DateSelect.styles.isBotCapped()] = this.state.botCapped, _cx3));var dropdownOffset = -itemHeight;if (nodeTop < -top) {var overflowOffsetDelta = this.state.topCapped ? 6 : 17;dropdownOffset -= nodeTop + top - overflowOffsetDelta;}var iconUp = (0, _ThemeHelpers.isTheme2022)(this.theme) ? /*#__PURE__*/_react.default.createElement(_ArrowCUpIcon16Regular.ArrowCUpIcon16Regular, { color: "#ADADAD" }) : /*#__PURE__*/_react.default.createElement(_px.ArrowChevronUpIcon, null);var iconDown = (0, _ThemeHelpers.isTheme2022)(this.theme) ? /*#__PURE__*/_react.default.createElement(_ArrowCDownIcon16Regular.ArrowCDownIcon16Regular, { color: "#ADADAD" }) : /*#__PURE__*/_react.default.createElement(_px.ArrowChevronDownIcon, null);return /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: true }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { getParent: this.getAnchor, offsetY: dropdownOffset, offsetX: -10 }, /*#__PURE__*/_react.default.createElement("div", { className: holderClass, style: style }, !this.state.topCapped && /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_DateSelect.styles.menu(this.theme), _DateSelect.styles.menuUp()), onClick: this.handleUp, onMouseDown: this.handleLongClickUp, onMouseUp: this.handleLongClickStop, onMouseLeave: this.handleLongClickStop, onTouchStart: this.handleLongClickUp, onTouchEnd: this.handleLongClickStop }, /*#__PURE__*/_react.default.createElement("span", null, iconUp)), /*#__PURE__*/_react.default.createElement("div", { className: _DateSelect.styles.itemsHolder(), style: { height: height } }, /*#__PURE__*/_react.default.createElement("div", { ref: this.refItemsContainer, style: shiftStyle }, items)), !this.state.botCapped && /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_DateSelect.styles.menu(this.theme), _DateSelect.styles.menuDown()), onClick: this.handleDown, onMouseDown: this.handleLongClickDown, onMouseUp: this.handleLongClickStop, onMouseLeave: this.handleLongClickStop, onTouchStart: this.handleLongClickDown, onTouchEnd: this.handleLongClickStop }, /*#__PURE__*/_react.default.createElement("span", null, iconDown))))));};_proto.getItem = function getItem(index) {
533
+ */;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx, _cx2;if ((0, _ThemeHelpers.isTheme2022)(this.theme)) {return this.renderMain2022();}var disabled = this.props.disabled;var width = this.getProps().width;var isInteractiveElement = !disabled;var Tag = isInteractiveElement ? 'button' : 'span';var rootProps = { className: (0, _Emotion.cx)((_cx = {}, _cx[_DateSelect.styles.root(this.theme)] = true, _cx[_DateSelect.styles.disabled()] = Boolean(disabled), _cx)), style: { width: width }, ref: this.refRoot, onClick: this.open, 'aria-expanded': isInteractiveElement ? this.state.opened : undefined, 'aria-controls': !disabled ? this.menuId : undefined, 'aria-label': isInteractiveElement ? this.locale.selectChosenAriaLabel + " " + (this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel) + " " + this.getItem(0) : undefined };return /*#__PURE__*/_react.default.createElement(Tag, rootProps, /*#__PURE__*/_react.default.createElement("div", { "data-tid": DateSelectDataTids.caption, className: _DateSelect.styles.caption() }, this.getItem(0), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_DateSelect.styles.arrow(this.theme)] = true, _cx2[_DateSelect.styles.arrowDisabled()] = Boolean(disabled), _cx2)) }, /*#__PURE__*/_react.default.createElement(_px.ArrowTriangleUpDownIcon, { size: 12 }))), this.state.opened && this.renderMenu(this.menuId));};_proto.renderMain2022 = function renderMain2022() {var disabled = this.props.disabled;var width = this.getProps().width;var isInteractiveElement = !disabled;var Tag = isInteractiveElement ? 'button' : 'span';var rootProps = { className: (0, _Emotion.cx)(_DateSelect.styles.root(this.theme), _DateSelect.styles.root2022(), disabled && _DateSelect.styles.disabled()), style: { width: width }, ref: this.refRoot, onClick: this.open, 'aria-expanded': isInteractiveElement ? this.state.opened : undefined, 'aria-label': isInteractiveElement ? this.locale.selectChosenAriaLabel + " " + (this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel) + " " + this.getItem(0) : undefined };return /*#__PURE__*/_react.default.createElement(Tag, rootProps, /*#__PURE__*/_react.default.createElement("div", { "data-tid": DateSelectDataTids.caption, className: _DateSelect.styles.caption() }, this.getItem(0)), isInteractiveElement && /*#__PURE__*/_react.default.createElement(_ArrowCollapseCVOpenIcon16Regular.ArrowCollapseCVOpenIcon16Regular, { className: (0, _Emotion.cx)(_DateSelect.globalClasses.arrow), color: "#ADADAD" }), this.state.opened && this.renderMenu(this.menuId));};_proto.disableItems = function disableItems(index) {var value = this.props.value + index;if ((0, _utils.isNonNullable)(this.props.maxValue) && (0, _utils.isNonNullable)(this.props.minValue)) {return value > this.props.maxValue || value < this.props.minValue;}if ((0, _utils.isNonNullable)(this.props.minValue)) {return value < this.props.minValue;}if ((0, _utils.isNonNullable)(this.props.maxValue)) {return value > this.props.maxValue;}};_proto.renderMenu = function renderMenu(id) {var _this3 = this,_cx3;var _this$state = this.state,top = _this$state.top,height = _this$state.height,nodeTop = _this$state.nodeTop;var shift = this.state.pos % itemHeight;if (shift < 0) {shift += itemHeight;}var from = (this.state.pos - shift + top) / itemHeight;var to = from + Math.ceil((height + shift) / itemHeight);var items = [];var _loop = function _loop(i) {var _cx4;var disableItems = _this3.disableItems(i) || false;var className = (0, _Emotion.cx)((_cx4 = {}, _cx4[_DateSelect.styles.menuItem(_this3.theme)] = true, _cx4[_DateSelect.styles.menuItemSelected(_this3.theme)] = i === 0, _cx4[_DateSelect.styles.menuItemActive(_this3.theme)] = i === _this3.state.current, _cx4[_DateSelect.styles.menuItemDisabled(_this3.theme)] = disableItems, _cx4));var clickHandler = { onMouseDown: preventDefault, onClick: _this3.handleItemClick(i) };items.push( /*#__PURE__*/_react.default.createElement("button", (0, _extends2.default)({ "aria-label": "\u0412\u044B\u0431\u0440\u0430\u0442\u044C " + (_this3.getProps().type === 'year' ? 'год' : 'месяц') + " " + _this3.getItem(i), "data-tid": DateSelectDataTids.menuItem, "data-prop-disabled": disableItems, key: i, className: className, onMouseEnter: function onMouseEnter() {return _this3.setState({ current: i });}, onMouseLeave: function onMouseLeave() {return _this3.setState({ current: null });} }, clickHandler), _this3.getItem(i)));};for (var i = from; i < to; ++i) {_loop(i);}var style = { top: top - 5, left: 0, right: 0 };var shiftStyle = { position: 'relative', top: -shift };var holderClass = (0, _Emotion.cx)((_cx3 = {}, _cx3[_DateSelect.styles.menuHolder(this.theme)] = true, _cx3[_DateSelect.styles.isTopCapped()] = this.state.topCapped, _cx3[_DateSelect.styles.isBotCapped()] = this.state.botCapped, _cx3));var dropdownOffset = -itemHeight;if (nodeTop < -top) {var overflowOffsetDelta = this.state.topCapped ? 6 : 17;dropdownOffset -= nodeTop + top - overflowOffsetDelta;}var iconUp = (0, _ThemeHelpers.isTheme2022)(this.theme) ? /*#__PURE__*/_react.default.createElement(_ArrowCUpIcon16Regular.ArrowCUpIcon16Regular, { color: "#ADADAD" }) : /*#__PURE__*/_react.default.createElement(_px.ArrowChevronUpIcon, null);var iconDown = (0, _ThemeHelpers.isTheme2022)(this.theme) ? /*#__PURE__*/_react.default.createElement(_ArrowCDownIcon16Regular.ArrowCDownIcon16Regular, { color: "#ADADAD" }) : /*#__PURE__*/_react.default.createElement(_px.ArrowChevronDownIcon, null);return /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: true }, /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { "data-tid": DateSelectDataTids.menu, id: id, getParent: this.getAnchor, offsetY: dropdownOffset, offsetX: -10 }, /*#__PURE__*/_react.default.createElement("div", { className: holderClass, style: style }, !this.state.topCapped && /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_DateSelect.styles.menu(this.theme), _DateSelect.styles.menuUp()), onClick: this.handleUp, onMouseDown: this.handleLongClickUp, onMouseUp: this.handleLongClickStop, onMouseLeave: this.handleLongClickStop, onTouchStart: this.handleLongClickUp, onTouchEnd: this.handleLongClickStop }, /*#__PURE__*/_react.default.createElement("span", null, iconUp)), /*#__PURE__*/_react.default.createElement("div", { className: _DateSelect.styles.itemsHolder(), style: { height: height } }, /*#__PURE__*/_react.default.createElement("div", { ref: this.refItemsContainer, style: shiftStyle }, items)), !this.state.botCapped && /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_DateSelect.styles.menu(this.theme), _DateSelect.styles.menuDown()), onClick: this.handleDown, onMouseDown: this.handleLongClickDown, onMouseUp: this.handleLongClickStop, onMouseLeave: this.handleLongClickStop, onTouchStart: this.handleLongClickDown, onTouchEnd: this.handleLongClickStop }, /*#__PURE__*/_react.default.createElement("span", null, iconDown)))));};_proto.getItem = function getItem(index) {
502
534
  var value = this.props.value + index;
503
535
  if (this.getProps().type === 'month') {var _this$locale$months;
504
536
  return (_this$locale$months = this.locale.months) == null ? void 0 : _this$locale$months[value];
@@ -1 +1 @@
1
- {"version":3,"sources":["DateSelect.tsx"],"names":["itemHeight","visibleYearsCount","itemsToMoveCount","monthsCount","defaultMinYear","defaultMaxYear","calculatePos","pos","minPos","maxPos","DateSelectDataTids","caption","menuItem","DateSelect","DatePickerLocaleHelper","getProps","defaultProps","state","botCapped","current","height","opened","top","topCapped","nodeTop","Infinity","root","itemsContainer","longClickTimer","setPositionRepeatTimer","yearStep","touchStartY","open","props","disabled","setPosition","setState","close","refRoot","element","setNodeTop","timeout","clearTimeout","setTimeout","refItemsContainer","addEventListener","handleWheel","passive","removeEventListener","isMobile","handleTouchStart","handleTouchMove","handleLongClickUp","event","preventDefault","window","setInterval","handleLongClickDown","handleLongClickStop","getAnchor","WheelEvent","stopPropagation","deltaY","deltaMode","TouchEvent","targetTouches","clientY","changedTouches","pixelRatio","devicePixelRatio","handleItemClick","shift","value","onValueChange","handleKey","e","handleUp","handleDown","componentDidUpdate","componentDidMount","listener","LayoutEvents","addListener","componentWillUnmount","remove","render","theme","renderMain","renderMain2022","width","rootProps","className","styles","Boolean","style","ref","getItem","arrow","arrowDisabled","renderMenu","root2022","onClick","disableItems","index","maxValue","minValue","from","to","Math","ceil","items","i","menuItemSelected","menuItemActive","menuItemDisabled","clickHandler","onMouseDown","push","left","right","shiftStyle","position","holderClass","menuHolder","isTopCapped","isBotCapped","dropdownOffset","overflowOffsetDelta","iconUp","iconDown","menu","menuUp","itemsHolder","menuDown","type","locale","months","getMinPos","getMaxPos","calculatedPos","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","number","isRequired","oneOfType","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { DatePickerLocale, DatePickerLocaleHelper } from '../../components/DatePicker/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../RenderLayer';\nimport { DropdownContainer } from '../DropdownContainer';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable } from '../../typings/utility-types';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ArrowTriangleUpDownIcon, ArrowChevronDownIcon, ArrowChevronUpIcon } from '../icons/16px';\nimport { isMobile } from '../../lib/client';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular';\nimport { ArrowCUpIcon16Regular } from '../icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular';\nimport { ArrowCDownIcon16Regular } from '../icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular';\n\nimport { styles } from './DateSelect.styles';\n\nconst itemHeight = 24;\nconst visibleYearsCount = 11;\nconst itemsToMoveCount = -5;\nconst monthsCount = 12;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2100;\n\nexport interface DateSelectProps {\n disabled?: boolean | null;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport interface DateSelectState {\n botCapped: boolean;\n current: Nullable<number>;\n height: number;\n opened: boolean;\n pos: number;\n top: number;\n topCapped: boolean;\n nodeTop: number;\n}\n\nconst calculatePos = (pos: number, minPos: number, maxPos: number) => {\n if (maxPos <= pos) {\n return maxPos;\n }\n\n if (minPos >= pos) {\n return minPos;\n }\n\n return pos;\n};\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps, DateSelectState> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n\n public static propTypes = {\n disabled: PropTypes.bool,\n\n type: PropTypes.string,\n\n value: PropTypes.number.isRequired,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onValueChange: PropTypes.func,\n\n minValue: PropTypes.number,\n\n maxValue: PropTypes.number,\n };\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n public state = {\n botCapped: false,\n current: 0,\n height: 0,\n opened: false,\n pos: 0,\n top: 0,\n topCapped: false,\n nodeTop: Infinity,\n };\n\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private root: HTMLElement | null = null;\n private itemsContainer: HTMLElement | null = null;\n private listener: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private timeout: NodeJS.Timeout | undefined;\n private longClickTimer = 0;\n private setPositionRepeatTimer = 0;\n private yearStep = 3;\n private touchStartY: Nullable<number> = null;\n\n public componentDidUpdate() {\n this.setNodeTop();\n }\n\n public componentDidMount() {\n this.listener = LayoutEvents.addListener(this.setNodeTop);\n this.setNodeTop();\n window.addEventListener('keydown', this.handleKey);\n }\n\n public componentWillUnmount() {\n if (this.listener) {\n this.listener.remove();\n }\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n if (this.longClickTimer) {\n clearTimeout(this.longClickTimer);\n }\n if (this.setPositionRepeatTimer) {\n clearTimeout(this.setPositionRepeatTimer);\n }\n window.removeEventListener('keydown', this.handleKey);\n }\n\n /**\n * @public\n */\n public open = () => {\n if (this.props.disabled) {\n return;\n }\n\n if (this.state.opened) {\n return;\n }\n\n this.setPosition(0);\n this.setState({\n opened: true,\n current: 0,\n });\n };\n\n /**\n * @public\n */\n public close = () => {\n if (!this.state.opened) {\n return;\n }\n\n this.setState({ opened: false });\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 if (isTheme2022(this.theme)) {\n return this.renderMain2022();\n }\n\n const { disabled } = this.props;\n const width = this.getProps().width;\n const rootProps = {\n className: cx({\n [styles.root(this.theme)]: true,\n [styles.disabled()]: Boolean(disabled),\n }),\n style: { width },\n ref: this.refRoot,\n };\n return (\n <span {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()} onClick={this.open}>\n {this.getItem(0)}\n <div\n className={cx({\n [styles.arrow(this.theme)]: true,\n [styles.arrowDisabled()]: Boolean(disabled),\n })}\n >\n <ArrowTriangleUpDownIcon size={12} />\n </div>\n </div>\n {this.state.opened && this.renderMenu()}\n </span>\n );\n }\n\n private renderMain2022() {\n const { disabled } = this.props;\n const width = this.getProps().width;\n const rootProps = {\n className: cx(styles.root(this.theme), styles.root2022(), disabled && styles.disabled()),\n style: { width },\n ref: this.refRoot,\n onClick: this.open,\n };\n\n return (\n <span {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()}>\n {this.getItem(0)}\n </div>\n {!disabled && <ArrowCollapseCVOpenIcon16Regular color=\"#ADADAD\" />}\n {this.state.opened && this.renderMenu()}\n </span>\n );\n }\n\n private refRoot = (element: HTMLElement | null) => {\n this.root = element;\n };\n\n private setNodeTop = () => {\n const root = this.root;\n if (!root) {\n return;\n }\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n this.timeout = setTimeout(() =>\n this.setState({\n nodeTop: getDOMRect(root).top,\n }),\n );\n };\n\n private disableItems(index: number) {\n const value = this.props.value + index;\n if (isNonNullable(this.props.maxValue) && isNonNullable(this.props.minValue)) {\n return value > this.props.maxValue || value < this.props.minValue;\n }\n\n if (isNonNullable(this.props.minValue)) {\n return value < this.props.minValue;\n }\n\n if (isNonNullable(this.props.maxValue)) {\n return value > this.props.maxValue;\n }\n }\n\n private renderMenu(): React.ReactNode {\n const { top, height, nodeTop } = this.state;\n\n let shift = this.state.pos % itemHeight;\n if (shift < 0) {\n shift += itemHeight;\n }\n\n const from = (this.state.pos - shift + top) / itemHeight;\n const to = from + Math.ceil((height + shift) / itemHeight);\n const items = [];\n\n for (let i = from; i < to; ++i) {\n const disableItems = this.disableItems(i) || false;\n const className = cx({\n [styles.menuItem(this.theme)]: true,\n [styles.menuItemSelected(this.theme)]: i === 0,\n [styles.menuItemActive(this.theme)]: i === this.state.current,\n [styles.menuItemDisabled(this.theme)]: disableItems,\n });\n const clickHandler = {\n onMouseDown: preventDefault,\n onClick: this.handleItemClick(i),\n };\n items.push(\n <div\n data-tid={DateSelectDataTids.menuItem}\n data-prop-disabled={disableItems}\n key={i}\n className={className}\n onMouseEnter={() => this.setState({ current: i })}\n onMouseLeave={() => this.setState({ current: null })}\n {...clickHandler}\n >\n {this.getItem(i)}\n </div>,\n );\n }\n const style: {\n left?: number | string;\n right?: number | string;\n top: number;\n width?: number | string;\n } = {\n top: top - 5,\n left: 0,\n right: 0,\n };\n\n const shiftStyle: React.CSSProperties = {\n position: 'relative',\n top: -shift,\n };\n\n const holderClass = cx({\n [styles.menuHolder(this.theme)]: true,\n [styles.isTopCapped()]: this.state.topCapped,\n [styles.isBotCapped()]: this.state.botCapped,\n });\n\n let dropdownOffset = -itemHeight;\n if (nodeTop < -top) {\n const overflowOffsetDelta = this.state.topCapped ? 6 : 17;\n dropdownOffset -= nodeTop + top - overflowOffsetDelta;\n }\n\n const iconUp = isTheme2022(this.theme) ? <ArrowCUpIcon16Regular color=\"#ADADAD\" /> : <ArrowChevronUpIcon />;\n const iconDown = isTheme2022(this.theme) ? <ArrowCDownIcon16Regular color=\"#ADADAD\" /> : <ArrowChevronDownIcon />;\n\n return (\n <RenderLayer onClickOutside={this.close} onFocusOutside={this.close} active>\n <div>\n <DropdownContainer getParent={this.getAnchor} offsetY={dropdownOffset} offsetX={-10}>\n <div className={holderClass} style={style}>\n {!this.state.topCapped && (\n <div\n className={cx(styles.menu(this.theme), styles.menuUp())}\n onClick={this.handleUp}\n onMouseDown={this.handleLongClickUp}\n onMouseUp={this.handleLongClickStop}\n onMouseLeave={this.handleLongClickStop}\n onTouchStart={this.handleLongClickUp}\n onTouchEnd={this.handleLongClickStop}\n >\n <span>{iconUp}</span>\n </div>\n )}\n <div className={styles.itemsHolder()} style={{ height }}>\n <div ref={this.refItemsContainer} style={shiftStyle}>\n {items}\n </div>\n </div>\n {!this.state.botCapped && (\n <div\n className={cx(styles.menu(this.theme), styles.menuDown())}\n onClick={this.handleDown}\n onMouseDown={this.handleLongClickDown}\n onMouseUp={this.handleLongClickStop}\n onMouseLeave={this.handleLongClickStop}\n onTouchStart={this.handleLongClickDown}\n onTouchEnd={this.handleLongClickStop}\n >\n <span>{iconDown}</span>\n </div>\n )}\n </div>\n </DropdownContainer>\n </div>\n </RenderLayer>\n );\n }\n\n private refItemsContainer = (element: HTMLElement | null) => {\n if (!this.itemsContainer && element) {\n element.addEventListener('wheel', this.handleWheel, { passive: false });\n }\n if (this.itemsContainer && !element) {\n this.itemsContainer.removeEventListener('wheel', this.handleWheel);\n }\n\n if (isMobile) {\n if (!this.itemsContainer && element) {\n element.addEventListener('touchstart', this.handleTouchStart);\n element.addEventListener('touchmove', this.handleTouchMove);\n }\n if (this.itemsContainer && !element) {\n this.itemsContainer.removeEventListener('touchstart', this.handleTouchStart);\n this.itemsContainer.removeEventListener('touchmove', this.handleTouchMove);\n }\n }\n\n this.itemsContainer = element;\n };\n\n private handleLongClickUp = (event: React.MouseEvent | React.TouchEvent) => {\n event.preventDefault();\n this.longClickTimer = window.setTimeout(() => {\n this.setPositionRepeatTimer = window.setInterval(() => this.setPosition(this.state.pos - itemHeight), 100);\n }, 200);\n };\n\n private handleLongClickDown = (event: React.MouseEvent | React.TouchEvent) => {\n event.preventDefault();\n this.longClickTimer = window.setTimeout(() => {\n this.setPositionRepeatTimer = window.setInterval(() => this.setPosition(this.state.pos + itemHeight), 100);\n }, 200);\n };\n\n private handleLongClickStop = () => {\n clearTimeout(this.longClickTimer);\n clearTimeout(this.setPositionRepeatTimer);\n };\n\n private getAnchor = () => this.root;\n\n private handleWheel = (event: Event) => {\n if (!(event instanceof WheelEvent)) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n\n let deltaY = event.deltaY;\n if (event.deltaMode === 1) {\n deltaY *= itemHeight;\n } else if (event.deltaMode === 2) {\n deltaY *= itemHeight * 4;\n }\n const pos = this.state.pos + deltaY;\n this.setPosition(pos);\n };\n\n private handleTouchStart = (event: Event) => {\n if (!(event instanceof TouchEvent)) {\n return;\n }\n\n this.touchStartY = event.targetTouches[0].clientY;\n };\n\n private handleTouchMove = (event: Event) => {\n if (!(event instanceof TouchEvent)) {\n return;\n }\n\n const { clientY } = event.changedTouches[0];\n const pixelRatio = window.devicePixelRatio;\n\n const deltaY = ((this.touchStartY || 0) - clientY) / pixelRatio;\n const pos = this.state.pos + deltaY + deltaY / itemHeight;\n\n this.touchStartY = clientY;\n\n this.setPosition(pos);\n };\n\n private handleItemClick = (shift: number) => {\n return () => {\n const value = this.props.value + shift;\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n this.setState({ opened: false });\n };\n };\n\n private handleKey = (e: KeyboardEvent) => {\n if (this.state.opened && isKeyEscape(e)) {\n e.preventDefault();\n this.close();\n e.stopPropagation();\n }\n };\n\n private handleUp = (event: React.MouseEvent) => {\n event.preventDefault();\n this.setPosition(this.state.pos - itemHeight * this.yearStep);\n };\n\n private handleDown = (event: React.MouseEvent) => {\n event.preventDefault();\n this.setPosition(this.state.pos + itemHeight * this.yearStep);\n };\n\n private getItem(index: number) {\n const value = this.props.value + index;\n if (this.getProps().type === 'month') {\n return this.locale.months?.[value];\n }\n return value;\n }\n\n private setPosition(pos: number) {\n let top = itemsToMoveCount * itemHeight;\n let height = visibleYearsCount * itemHeight;\n if (this.getProps().type === 'month') {\n top = -this.props.value * itemHeight;\n height = monthsCount * itemHeight;\n }\n\n const minPos = this.getMinPos() - top;\n const maxPos = this.getMaxPos() - top - height + itemHeight;\n\n const calculatedPos = calculatePos(pos, minPos, maxPos);\n const topCapped = calculatedPos <= minPos;\n const botCapped = calculatedPos >= maxPos;\n\n this.setState({ pos: calculatedPos, top, height, topCapped, botCapped });\n }\n\n private getMinPos() {\n const type = this.getProps().type;\n if (type === 'month') {\n return -this.props.value * itemHeight;\n } else if (type === 'year') {\n return ((this.props.minValue || defaultMinYear) - this.props.value) * itemHeight;\n }\n return -Infinity; // Be defensive.\n }\n\n private getMaxPos() {\n const type = this.getProps().type;\n if (type === 'month') {\n return (visibleYearsCount - this.props.value) * itemHeight;\n } else if (type === 'year') {\n return ((this.props.maxValue || defaultMaxYear) - this.props.value) * itemHeight;\n }\n return Infinity; // Be defensive.\n }\n}\n\nfunction preventDefault(e: React.SyntheticEvent) {\n e.preventDefault();\n}\n"]}
1
+ {"version":3,"sources":["DateSelect.tsx"],"names":["itemHeight","visibleYearsCount","itemsToMoveCount","monthsCount","defaultMinYear","defaultMaxYear","calculatePos","pos","minPos","maxPos","DateSelectDataTids","caption","menuItem","menu","DateSelect","DatePickerLocaleHelper","getProps","defaultProps","state","botCapped","current","height","opened","top","topCapped","nodeTop","Infinity","root","itemsContainer","yearStep","touchStartY","open","props","disabled","setPosition","setState","close","menuId","refRoot","element","setNodeTop","timeout","globalObject","clearTimeout","setTimeout","refItemsContainer","addEventListener","handleWheel","passive","removeEventListener","isMobile","handleTouchStart","handleTouchMove","handleLongClickUp","event","preventDefault","longClickTimer","setPositionRepeatTimer","setInterval","handleLongClickDown","handleLongClickStop","getAnchor","WheelEvent","stopPropagation","deltaY","deltaMode","TouchEvent","targetTouches","clientY","changedTouches","pixelRatio","devicePixelRatio","handleItemClick","shift","value","onValueChange","handleKey","e","handleUp","handleDown","componentDidUpdate","componentDidMount","listener","LayoutEvents","addListener","componentWillUnmount","remove","render","theme","renderMain","renderMain2022","width","isInteractiveElement","Tag","rootProps","className","styles","Boolean","style","ref","onClick","undefined","locale","selectChosenAriaLabel","type","selectYearAriaLabel","selectMonthAriaLabel","getItem","arrow","arrowDisabled","renderMenu","root2022","globalClasses","disableItems","index","maxValue","minValue","id","from","to","Math","ceil","items","i","menuItemSelected","menuItemActive","menuItemDisabled","clickHandler","onMouseDown","push","left","right","shiftStyle","position","holderClass","menuHolder","isTopCapped","isBotCapped","dropdownOffset","overflowOffsetDelta","iconUp","iconDown","menuUp","itemsHolder","menuDown","months","getMinPos","getMaxPos","calculatedPos","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","number","isRequired","oneOfType","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject, isBrowser, isInstanceOf, SafeTimer } from '@skbkontur/global-object';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { DatePickerLocale, DatePickerLocaleHelper } from '../../components/DatePicker/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../RenderLayer';\nimport { DropdownContainer } from '../DropdownContainer';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { Nullable } from '../../typings/utility-types';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ArrowTriangleUpDownIcon, ArrowChevronDownIcon, ArrowChevronUpIcon } from '../icons/16px';\nimport { isMobile } from '../../lib/client';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular';\nimport { ArrowCUpIcon16Regular } from '../icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular';\nimport { ArrowCDownIcon16Regular } from '../icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular';\n\nimport { globalClasses, styles } from './DateSelect.styles';\n\nconst itemHeight = 24;\nconst visibleYearsCount = 11;\nconst itemsToMoveCount = -5;\nconst monthsCount = 12;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2100;\n\nexport interface DateSelectProps {\n disabled?: boolean | null;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport interface DateSelectState {\n botCapped: boolean;\n current: Nullable<number>;\n height: number;\n opened: boolean;\n pos: number;\n top: number;\n topCapped: boolean;\n nodeTop: number;\n}\n\nconst calculatePos = (pos: number, minPos: number, maxPos: number) => {\n if (maxPos <= pos) {\n return maxPos;\n }\n\n if (minPos >= pos) {\n return minPos;\n }\n\n return pos;\n};\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n menu: 'DateSelect__menu',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps, DateSelectState> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n\n public static propTypes = {\n disabled: PropTypes.bool,\n\n type: PropTypes.string,\n\n value: PropTypes.number.isRequired,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onValueChange: PropTypes.func,\n\n minValue: PropTypes.number,\n\n maxValue: PropTypes.number,\n };\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n public state = {\n botCapped: false,\n current: 0,\n height: 0,\n opened: false,\n pos: 0,\n top: 0,\n topCapped: false,\n nodeTop: Infinity,\n };\n\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private root: HTMLElement | null = null;\n private itemsContainer: HTMLElement | null = null;\n private listener: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private timeout: SafeTimer;\n private longClickTimer: SafeTimer;\n private setPositionRepeatTimer: SafeTimer;\n private yearStep = 3;\n private touchStartY: Nullable<number> = null;\n\n public componentDidUpdate() {\n this.setNodeTop();\n }\n\n public componentDidMount() {\n this.listener = LayoutEvents.addListener(this.setNodeTop);\n this.setNodeTop();\n globalObject.addEventListener?.('keydown', this.handleKey);\n }\n\n public componentWillUnmount() {\n if (this.listener) {\n this.listener.remove();\n }\n if (this.timeout) {\n globalObject.clearTimeout(this.timeout);\n }\n if (this.longClickTimer) {\n globalObject.clearTimeout(this.longClickTimer);\n }\n if (this.setPositionRepeatTimer) {\n globalObject.clearTimeout(this.setPositionRepeatTimer);\n }\n globalObject.removeEventListener?.('keydown', this.handleKey);\n }\n\n /**\n * @public\n */\n public open = () => {\n if (this.props.disabled) {\n return;\n }\n\n if (this.state.opened) {\n return;\n }\n\n this.setPosition(0);\n this.setState({\n opened: true,\n current: 0,\n });\n };\n\n /**\n * @public\n */\n public close = () => {\n if (!this.state.opened) {\n return;\n }\n\n this.setState({ opened: false });\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 menuId = DateSelectDataTids.menu + getRandomID();\n\n private renderMain() {\n if (isTheme2022(this.theme)) {\n return this.renderMain2022();\n }\n\n const { disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: cx({\n [styles.root(this.theme)]: true,\n [styles.disabled()]: Boolean(disabled),\n }),\n style: { width },\n ref: this.refRoot,\n onClick: this.open,\n 'aria-expanded': isInteractiveElement ? this.state.opened : undefined,\n 'aria-controls': !disabled ? this.menuId : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(0)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()}>\n {this.getItem(0)}\n <div\n className={cx({\n [styles.arrow(this.theme)]: true,\n [styles.arrowDisabled()]: Boolean(disabled),\n })}\n >\n <ArrowTriangleUpDownIcon size={12} />\n </div>\n </div>\n {this.state.opened && this.renderMenu(this.menuId)}\n </Tag>\n );\n }\n\n private renderMain2022() {\n const { disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: cx(styles.root(this.theme), styles.root2022(), disabled && styles.disabled()),\n style: { width },\n ref: this.refRoot,\n onClick: this.open,\n 'aria-expanded': isInteractiveElement ? this.state.opened : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(0)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()}>\n {this.getItem(0)}\n </div>\n {isInteractiveElement && (\n <ArrowCollapseCVOpenIcon16Regular className={cx(globalClasses.arrow)} color=\"#ADADAD\" />\n )}\n {this.state.opened && this.renderMenu(this.menuId)}\n </Tag>\n );\n }\n\n private refRoot = (element: HTMLElement | null) => {\n this.root = element;\n };\n\n private setNodeTop = () => {\n const root = this.root;\n if (!root) {\n return;\n }\n if (this.timeout) {\n globalObject.clearTimeout(this.timeout);\n }\n this.timeout = globalObject.setTimeout(\n () =>\n this.setState({\n nodeTop: getDOMRect(root).top,\n }),\n 0,\n );\n };\n\n private disableItems(index: number) {\n const value = this.props.value + index;\n if (isNonNullable(this.props.maxValue) && isNonNullable(this.props.minValue)) {\n return value > this.props.maxValue || value < this.props.minValue;\n }\n\n if (isNonNullable(this.props.minValue)) {\n return value < this.props.minValue;\n }\n\n if (isNonNullable(this.props.maxValue)) {\n return value > this.props.maxValue;\n }\n }\n\n private renderMenu(id?: string): React.ReactNode {\n const { top, height, nodeTop } = this.state;\n\n let shift = this.state.pos % itemHeight;\n if (shift < 0) {\n shift += itemHeight;\n }\n\n const from = (this.state.pos - shift + top) / itemHeight;\n const to = from + Math.ceil((height + shift) / itemHeight);\n const items = [];\n\n for (let i = from; i < to; ++i) {\n const disableItems = this.disableItems(i) || false;\n const className = cx({\n [styles.menuItem(this.theme)]: true,\n [styles.menuItemSelected(this.theme)]: i === 0,\n [styles.menuItemActive(this.theme)]: i === this.state.current,\n [styles.menuItemDisabled(this.theme)]: disableItems,\n });\n const clickHandler = {\n onMouseDown: preventDefault,\n onClick: this.handleItemClick(i),\n };\n items.push(\n <button\n aria-label={`Выбрать ${this.getProps().type === 'year' ? 'год' : 'месяц'} ${this.getItem(i)}`}\n data-tid={DateSelectDataTids.menuItem}\n data-prop-disabled={disableItems}\n key={i}\n className={className}\n onMouseEnter={() => this.setState({ current: i })}\n onMouseLeave={() => this.setState({ current: null })}\n {...clickHandler}\n >\n {this.getItem(i)}\n </button>,\n );\n }\n const style: {\n left?: number | string;\n right?: number | string;\n top: number;\n width?: number | string;\n } = {\n top: top - 5,\n left: 0,\n right: 0,\n };\n\n const shiftStyle: React.CSSProperties = {\n position: 'relative',\n top: -shift,\n };\n\n const holderClass = cx({\n [styles.menuHolder(this.theme)]: true,\n [styles.isTopCapped()]: this.state.topCapped,\n [styles.isBotCapped()]: this.state.botCapped,\n });\n\n let dropdownOffset = -itemHeight;\n if (nodeTop < -top) {\n const overflowOffsetDelta = this.state.topCapped ? 6 : 17;\n dropdownOffset -= nodeTop + top - overflowOffsetDelta;\n }\n\n const iconUp = isTheme2022(this.theme) ? <ArrowCUpIcon16Regular color=\"#ADADAD\" /> : <ArrowChevronUpIcon />;\n const iconDown = isTheme2022(this.theme) ? <ArrowCDownIcon16Regular color=\"#ADADAD\" /> : <ArrowChevronDownIcon />;\n\n return (\n <RenderLayer onClickOutside={this.close} onFocusOutside={this.close} active>\n <DropdownContainer\n data-tid={DateSelectDataTids.menu}\n id={id}\n getParent={this.getAnchor}\n offsetY={dropdownOffset}\n offsetX={-10}\n >\n <div className={holderClass} style={style}>\n {!this.state.topCapped && (\n <div\n className={cx(styles.menu(this.theme), styles.menuUp())}\n onClick={this.handleUp}\n onMouseDown={this.handleLongClickUp}\n onMouseUp={this.handleLongClickStop}\n onMouseLeave={this.handleLongClickStop}\n onTouchStart={this.handleLongClickUp}\n onTouchEnd={this.handleLongClickStop}\n >\n <span>{iconUp}</span>\n </div>\n )}\n <div className={styles.itemsHolder()} style={{ height }}>\n <div ref={this.refItemsContainer} style={shiftStyle}>\n {items}\n </div>\n </div>\n {!this.state.botCapped && (\n <div\n className={cx(styles.menu(this.theme), styles.menuDown())}\n onClick={this.handleDown}\n onMouseDown={this.handleLongClickDown}\n onMouseUp={this.handleLongClickStop}\n onMouseLeave={this.handleLongClickStop}\n onTouchStart={this.handleLongClickDown}\n onTouchEnd={this.handleLongClickStop}\n >\n <span>{iconDown}</span>\n </div>\n )}\n </div>\n </DropdownContainer>\n </RenderLayer>\n );\n }\n\n private refItemsContainer = (element: HTMLElement | null) => {\n if (!this.itemsContainer && element) {\n element.addEventListener('wheel', this.handleWheel, { passive: false });\n }\n if (this.itemsContainer && !element) {\n this.itemsContainer.removeEventListener('wheel', this.handleWheel);\n }\n\n if (isMobile) {\n if (!this.itemsContainer && element) {\n element.addEventListener('touchstart', this.handleTouchStart);\n element.addEventListener('touchmove', this.handleTouchMove);\n }\n if (this.itemsContainer && !element) {\n this.itemsContainer.removeEventListener('touchstart', this.handleTouchStart);\n this.itemsContainer.removeEventListener('touchmove', this.handleTouchMove);\n }\n }\n\n this.itemsContainer = element;\n };\n\n private handleLongClickUp = (event: React.MouseEvent | React.TouchEvent) => {\n event.preventDefault();\n this.longClickTimer = globalObject.setTimeout(() => {\n this.setPositionRepeatTimer = globalObject.setInterval(() => this.setPosition(this.state.pos - itemHeight), 100);\n }, 200);\n };\n\n private handleLongClickDown = (event: React.MouseEvent | React.TouchEvent) => {\n event.preventDefault();\n this.longClickTimer = globalObject.setTimeout(() => {\n this.setPositionRepeatTimer = globalObject.setInterval(() => this.setPosition(this.state.pos + itemHeight), 100);\n }, 200);\n };\n\n private handleLongClickStop = () => {\n globalObject.clearTimeout(this.longClickTimer);\n globalObject.clearTimeout(this.setPositionRepeatTimer);\n };\n\n private getAnchor = () => this.root;\n\n private handleWheel = (event: Event) => {\n if (!isInstanceOf(event, globalObject.WheelEvent)) {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n\n let deltaY = event.deltaY;\n if (event.deltaMode === 1) {\n deltaY *= itemHeight;\n } else if (event.deltaMode === 2) {\n deltaY *= itemHeight * 4;\n }\n const pos = this.state.pos + deltaY;\n this.setPosition(pos);\n };\n\n private handleTouchStart = (event: Event) => {\n if (!isInstanceOf(event, globalObject.TouchEvent)) {\n return;\n }\n\n this.touchStartY = event.targetTouches[0].clientY;\n };\n\n private handleTouchMove = (event: Event) => {\n if (!isInstanceOf(event, globalObject.TouchEvent) || !isBrowser(globalObject)) {\n return;\n }\n\n const { clientY } = event.changedTouches[0];\n const pixelRatio = globalObject.devicePixelRatio;\n\n const deltaY = ((this.touchStartY || 0) - clientY) / pixelRatio;\n const pos = this.state.pos + deltaY + deltaY / itemHeight;\n\n this.touchStartY = clientY;\n\n this.setPosition(pos);\n };\n\n private handleItemClick = (shift: number) => {\n return () => {\n const value = this.props.value + shift;\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n this.setState({ opened: false });\n };\n };\n\n private handleKey = (e: KeyboardEvent) => {\n if (this.state.opened && isKeyEscape(e)) {\n e.preventDefault();\n this.close();\n e.stopPropagation();\n }\n };\n\n private handleUp = (event: React.MouseEvent) => {\n event.preventDefault();\n this.setPosition(this.state.pos - itemHeight * this.yearStep);\n };\n\n private handleDown = (event: React.MouseEvent) => {\n event.preventDefault();\n this.setPosition(this.state.pos + itemHeight * this.yearStep);\n };\n\n private getItem(index: number) {\n const value = this.props.value + index;\n if (this.getProps().type === 'month') {\n return this.locale.months?.[value];\n }\n return value;\n }\n\n private setPosition(pos: number) {\n let top = itemsToMoveCount * itemHeight;\n let height = visibleYearsCount * itemHeight;\n if (this.getProps().type === 'month') {\n top = -this.props.value * itemHeight;\n height = monthsCount * itemHeight;\n }\n\n const minPos = this.getMinPos() - top;\n const maxPos = this.getMaxPos() - top - height + itemHeight;\n\n const calculatedPos = calculatePos(pos, minPos, maxPos);\n const topCapped = calculatedPos <= minPos;\n const botCapped = calculatedPos >= maxPos;\n\n this.setState({ pos: calculatedPos, top, height, topCapped, botCapped });\n }\n\n private getMinPos() {\n const type = this.getProps().type;\n if (type === 'month') {\n return -this.props.value * itemHeight;\n } else if (type === 'year') {\n return ((this.props.minValue || defaultMinYear) - this.props.value) * itemHeight;\n }\n return -Infinity; // Be defensive.\n }\n\n private getMaxPos() {\n const type = this.getProps().type;\n if (type === 'month') {\n return (visibleYearsCount - this.props.value) * itemHeight;\n } else if (type === 'year') {\n return ((this.props.maxValue || defaultMaxYear) - this.props.value) * itemHeight;\n }\n return Infinity; // Be defensive.\n }\n}\n\nfunction preventDefault(e: React.SyntheticEvent) {\n e.preventDefault();\n}\n"]}
@@ -1,4 +1,7 @@
1
1
  import { Theme } from '../../lib/theming/Theme';
2
+ export declare const globalClasses: {
3
+ arrow: string;
4
+ };
2
5
  export declare const styles: {
3
6
  root(t: Theme): string;
4
7
  root2022(): string;
@@ -1,22 +1,38 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.styles = exports.globalClasses = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
2
+
3
+
4
+ var globalClasses = (0, _Emotion.prefix)('select')({
5
+ arrow: 'arrow' });exports.globalClasses = globalClasses;
2
6
 
3
7
 
4
8
  var styles = (0, _Emotion.memoizeStyle)({
5
9
  root: function root(t) {
6
- return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n cursor: pointer;\n display: inline-block;\n font-size: ", ";\n line-height: ", ";\n outline: 0;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n\n &:hover {\n color: ", ";\n }\n "])),
10
+ return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n cursor: pointer;\n display: inline-block;\n font: inherit;\n font-size: ", ";\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ", ";\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ", ";\n }\n\n & .", " {\n transition: fill ", " ", ";\n }\n\n &:hover .", " {\n fill: ", " !important;\n }\n "])),
7
11
  t.dateSelectTextColorDefault,
8
12
 
9
13
 
14
+
10
15
  t.dateSelectFontSize,
16
+
17
+
18
+
19
+
20
+
21
+
11
22
  t.dateSelectLineHeight,
12
23
 
13
24
 
14
25
 
15
26
 
27
+ t.dateSelectLinkColor,
16
28
 
17
29
 
30
+ globalClasses.arrow,
31
+ t.transitionDuration, t.transitionTimingFunction,
18
32
 
19
- t.dateSelectLinkColor);
33
+
34
+ globalClasses.arrow,
35
+ t.dateSelectTextColorDefault);
20
36
 
21
37
 
22
38
  },
@@ -95,7 +111,8 @@ var styles = (0, _Emotion.memoizeStyle)({
95
111
  },
96
112
 
97
113
  menuItem: function menuItem(t) {
98
- return (0, _Emotion.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n cursor: pointer;\n height: 24px;\n line-height: 24px;\n padding-left: 10px;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n "])),
114
+ return (0, _Emotion.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteralLoose2.default)(["\n display: flex;\n color: ", ";\n cursor: pointer;\n height: 24px;\n padding: 0;\n padding-left: 10px;\n width: 100%;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n border: none;\n font: inherit;\n line-height: 24px;\n background-color: transparent;\n "])),
115
+
99
116
  t.dateSelectTextColorDefault);
100
117
 
101
118
 
@@ -105,6 +122,11 @@ var styles = (0, _Emotion.memoizeStyle)({
105
122
 
106
123
 
107
124
 
125
+
126
+
127
+
128
+
129
+
108
130
  },
109
131
 
110
132
  menuItemSelected: function menuItemSelected(t) {
@@ -1 +1 @@
1
- {"version":3,"sources":["DateSelect.styles.ts"],"names":["styles","root","t","css","dateSelectTextColorDefault","dateSelectFontSize","dateSelectLineHeight","dateSelectLinkColor","root2022","disabled","caption","arrow","dateSelectTextColorDisabled","arrowDisabled","menuHolder","dateSelectMenuBg","dateSelectPopupBoxShadow","isTopCapped","isBotCapped","itemsHolder","menuItem","menuItemSelected","dateSelectMenuItemBgSelected","dateSelectMenuItemFontSelected","menuItemActive","dateSelectMenuItemBgActive","dateSelectMenuItemFontActive","menuItemDisabled","dateSelectMenuItemBgDisabled","menu","dateSelectTextColorInvert","menuUp","menuDown"],"mappings":"4QAAA,oD;;;AAGO,IAAMA,MAAM,GAAG,2BAAa;AACjCC,EAAAA,IADiC,gBAC5BC,CAD4B,EAClB;AACb,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACE,0BADb;;;AAIeF,IAAAA,CAAC,CAACG,kBAJjB;AAKiBH,IAAAA,CAAC,CAACI,oBALnB;;;;;;;;AAaaJ,IAAAA,CAAC,CAACK,mBAbf;;;AAgBD,GAlBgC;;AAoBjCC,EAAAA,QApBiC,sBAoBtB;AACT,eAAOL,YAAP;;;;AAID,GAzBgC;;AA2BjCM,EAAAA,QA3BiC,sBA2BtB;AACT,eAAON,YAAP;;;;AAID,GAhCgC;;AAkCjCO,EAAAA,OAlCiC,qBAkCvB;AACR,eAAOP,YAAP;;;AAGD,GAtCgC;;AAwCjCQ,EAAAA,KAxCiC,iBAwC3BT,CAxC2B,EAwCjB;AACd,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACU,2BADb;;AAGiBV,IAAAA,CAAC,CAACI,oBAHnB;;;;;;;;AAWD,GApDgC;AAqDjCO,EAAAA,aArDiC,2BAqDjB;AACd,eAAOV,YAAP;;;AAGD,GAzDgC;;AA2DjCW,EAAAA,UA3DiC,sBA2DtBZ,CA3DsB,EA2DZ;AACnB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAACa,gBADlB;AAEgBb,IAAAA,CAAC,CAACc,wBAFlB;;AAIWd,IAAAA,CAAC,CAACE,0BAJb;AAKeF,IAAAA,CAAC,CAACG,kBALjB;;;;;;AAWD,GAvEgC;;AAyEjCY,EAAAA,WAzEiC,yBAyEnB;AACZ,eAAOd,YAAP;;;;AAID,GA9EgC;;AAgFjCe,EAAAA,WAhFiC,yBAgFnB;AACZ,eAAOf,YAAP;;;AAGD,GApFgC;;AAsFjCgB,EAAAA,WAtFiC,yBAsFnB;AACZ,eAAOhB,YAAP;;;;AAID,GA3FgC;;AA6FjCiB,EAAAA,QA7FiC,oBA6FxBlB,CA7FwB,EA6Fd;AACjB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACE,0BADb;;;;;;;;;AAUD,GAxGgC;;AA0GjCiB,EAAAA,gBA1GiC,4BA0GhBnB,CA1GgB,EA0GN;AACzB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAACoB,4BADlB;AAEWpB,IAAAA,CAAC,CAACqB,8BAFb;;AAID,GA/GgC;;AAiHjCC,EAAAA,cAjHiC,0BAiHlBtB,CAjHkB,EAiHR;AACvB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAACuB,0BADlB;AAEWvB,IAAAA,CAAC,CAACwB,4BAFb;;AAID,GAtHgC;;AAwHjCC,EAAAA,gBAxHiC,4BAwHhBzB,CAxHgB,EAwHN;AACzB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAAC0B,4BADlB;AAEW1B,IAAAA,CAAC,CAACU,2BAFb;;;AAKD,GA9HgC;;AAgIjCiB,EAAAA,IAhIiC,gBAgI5B3B,CAhI4B,EAgIlB;AACb,eAAOC,YAAP;;;;;;;;;AASgBD,IAAAA,CAAC,CAACa,gBATlB;AAUWb,IAAAA,CAAC,CAACE,0BAVb;;;AAakBF,IAAAA,CAAC,CAACuB,0BAbpB;AAcavB,IAAAA,CAAC,CAAC4B,yBAdf;;;AAiBD,GAlJgC;;AAoJjCC,EAAAA,MApJiC,oBAoJxB;AACP,eAAO5B,YAAP;;;;;;AAMD,GA3JgC;;AA6JjC6B,EAAAA,QA7JiC,sBA6JtB;AACT,eAAO7B,YAAP;;;;;;AAMD,GApKgC,EAAb,CAAf,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n display: inline-block;\n font-size: ${t.dateSelectFontSize};\n line-height: ${t.dateSelectLineHeight};\n outline: 0;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n\n &:hover {\n color: ${t.dateSelectLinkColor};\n }\n `;\n },\n\n root2022() {\n return css`\n display: inline-flex;\n justify-content: space-between;\n `;\n },\n\n disabled() {\n return css`\n color: inherit !important; // override root:hover style\n cursor: default;\n `;\n },\n\n caption() {\n return css`\n position: relative;\n `;\n },\n\n arrow(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDisabled};\n float: right;\n line-height: ${t.dateSelectLineHeight};\n opacity: 1;\n position: absolute;\n right: 4px;\n top: 0;\n transform: scaleX(0.7);\n transition: opacity 0.2s ease-out;\n `;\n },\n arrowDisabled() {\n return css`\n opacity: 0;\n `;\n },\n\n menuHolder(t: Theme) {\n return css`\n background: ${t.dateSelectMenuBg};\n box-shadow: ${t.dateSelectPopupBoxShadow};\n box-sizing: content-box;\n color: ${t.dateSelectTextColorDefault};\n font-size: ${t.dateSelectFontSize};\n margin-top: -11px;\n overflow: hidden;\n position: absolute;\n z-index: 1000;\n `;\n },\n\n isTopCapped() {\n return css`\n margin-top: 0;\n padding-top: 5px;\n `;\n },\n\n isBotCapped() {\n return css`\n padding-bottom: 5px;\n `;\n },\n\n itemsHolder() {\n return css`\n overflow: hidden;\n position: relative;\n `;\n },\n\n menuItem(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n height: 24px;\n line-height: 24px;\n padding-left: 10px;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n `;\n },\n\n menuItemSelected(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgSelected};\n color: ${t.dateSelectMenuItemFontSelected};\n `;\n },\n\n menuItemActive(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectMenuItemFontActive};\n `;\n },\n\n menuItemDisabled(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgDisabled};\n color: ${t.dateSelectTextColorDisabled};\n pointer-events: none;\n `;\n },\n\n menu(t: Theme) {\n return css`\n box-sizing: border-box;\n cursor: pointer;\n height: 16px;\n line-height: 0;\n padding-left: 18px;\n text-align: left;\n user-select: none;\n\n background: ${t.dateSelectMenuBg};\n color: ${t.dateSelectTextColorDefault};\n\n &:hover {\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectTextColorInvert};\n }\n `;\n },\n\n menuUp() {\n return css`\n span {\n position: relative;\n top: -0.5px;\n }\n `;\n },\n\n menuDown() {\n return css`\n span {\n position: relative;\n top: -1px;\n }\n `;\n },\n});\n"]}
1
+ {"version":3,"sources":["DateSelect.styles.ts"],"names":["globalClasses","arrow","styles","root","t","css","dateSelectTextColorDefault","dateSelectFontSize","dateSelectLineHeight","dateSelectLinkColor","transitionDuration","transitionTimingFunction","root2022","disabled","caption","dateSelectTextColorDisabled","arrowDisabled","menuHolder","dateSelectMenuBg","dateSelectPopupBoxShadow","isTopCapped","isBotCapped","itemsHolder","menuItem","menuItemSelected","dateSelectMenuItemBgSelected","dateSelectMenuItemFontSelected","menuItemActive","dateSelectMenuItemBgActive","dateSelectMenuItemFontActive","menuItemDisabled","dateSelectMenuItemBgDisabled","menu","dateSelectTextColorInvert","menuUp","menuDown"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const globalClasses = prefix('select')({\n arrow: 'arrow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n display: inline-block;\n font: inherit;\n font-size: ${t.dateSelectFontSize};\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ${t.dateSelectLineHeight};\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ${t.dateSelectLinkColor};\n }\n\n & .${globalClasses.arrow} {\n transition: fill ${t.transitionDuration} ${t.transitionTimingFunction};\n }\n\n &:hover .${globalClasses.arrow} {\n fill: ${t.dateSelectTextColorDefault} !important;\n }\n `;\n },\n\n root2022() {\n return css`\n display: inline-flex;\n justify-content: space-between;\n `;\n },\n\n disabled() {\n return css`\n color: inherit !important; // override root:hover style\n cursor: default;\n `;\n },\n\n caption() {\n return css`\n position: relative;\n `;\n },\n\n arrow(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDisabled};\n float: right;\n line-height: ${t.dateSelectLineHeight};\n opacity: 1;\n position: absolute;\n right: 4px;\n top: 0;\n transform: scaleX(0.7);\n transition: opacity 0.2s ease-out;\n `;\n },\n arrowDisabled() {\n return css`\n opacity: 0;\n `;\n },\n\n menuHolder(t: Theme) {\n return css`\n background: ${t.dateSelectMenuBg};\n box-shadow: ${t.dateSelectPopupBoxShadow};\n box-sizing: content-box;\n color: ${t.dateSelectTextColorDefault};\n font-size: ${t.dateSelectFontSize};\n margin-top: -11px;\n overflow: hidden;\n position: absolute;\n z-index: 1000;\n `;\n },\n\n isTopCapped() {\n return css`\n margin-top: 0;\n padding-top: 5px;\n `;\n },\n\n isBotCapped() {\n return css`\n padding-bottom: 5px;\n `;\n },\n\n itemsHolder() {\n return css`\n overflow: hidden;\n position: relative;\n `;\n },\n\n menuItem(t: Theme) {\n return css`\n display: flex;\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n height: 24px;\n padding: 0;\n padding-left: 10px;\n width: 100%;\n user-select: none;\n white-space: nowrap;\n touch-action: none;\n border: none;\n font: inherit;\n line-height: 24px;\n background-color: transparent;\n `;\n },\n\n menuItemSelected(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgSelected};\n color: ${t.dateSelectMenuItemFontSelected};\n `;\n },\n\n menuItemActive(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectMenuItemFontActive};\n `;\n },\n\n menuItemDisabled(t: Theme) {\n return css`\n background: ${t.dateSelectMenuItemBgDisabled};\n color: ${t.dateSelectTextColorDisabled};\n pointer-events: none;\n `;\n },\n\n menu(t: Theme) {\n return css`\n box-sizing: border-box;\n cursor: pointer;\n height: 16px;\n line-height: 0;\n padding-left: 18px;\n text-align: left;\n user-select: none;\n\n background: ${t.dateSelectMenuBg};\n color: ${t.dateSelectTextColorDefault};\n\n &:hover {\n background: ${t.dateSelectMenuItemBgActive};\n color: ${t.dateSelectTextColorInvert};\n }\n `;\n },\n\n menuUp() {\n return css`\n span {\n position: relative;\n top: -0.5px;\n }\n `;\n },\n\n menuDown() {\n return css`\n span {\n position: relative;\n top: -1px;\n }\n `;\n },\n});\n"]}
@@ -0,0 +1,4 @@
1
+ import { LocaleHelper } from '../../../lib/locale/LocaleHelper';
2
+ import { DateSelectLocale } from './types';
3
+ export * from './types';
4
+ export declare const DateSelectHelper: LocaleHelper<DateSelectLocale>;