@skbkontur/react-ui 4.2.2 → 4.4.0

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 (694) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +9 -17
  3. package/cjs/components/Autocomplete/Autocomplete.js +13 -7
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Button/Button.d.ts +4 -5
  6. package/cjs/components/Button/Button.js +8 -3
  7. package/cjs/components/Button/Button.js.map +1 -1
  8. package/cjs/components/Button/Button.mixins.js +1 -1
  9. package/cjs/components/Button/Button.mixins.js.map +1 -1
  10. package/cjs/components/Button/Button.styles.js +18 -18
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Center/Center.d.ts +4 -3
  13. package/cjs/components/Center/Center.js +9 -3
  14. package/cjs/components/Center/Center.js.map +1 -1
  15. package/cjs/components/Checkbox/Checkbox.js +4 -2
  16. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  17. package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -1
  18. package/cjs/components/Checkbox/Checkbox.styles.js +1 -1
  19. package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
  20. package/cjs/components/ComboBox/ComboBox.d.ts +8 -13
  21. package/cjs/components/ComboBox/ComboBox.js +12 -2
  22. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  23. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -9
  24. package/cjs/components/CurrencyInput/CurrencyInput.js +25 -10
  25. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  26. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
  27. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js +14 -2
  28. package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
  29. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +3 -9
  30. package/cjs/components/CurrencyLabel/CurrencyLabel.js +15 -15
  31. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  32. package/cjs/components/DateInput/DateFragmentsView.d.ts +1 -1
  33. package/cjs/components/DateInput/DateFragmentsView.js +10 -1
  34. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  35. package/cjs/components/DateInput/DateInput.d.ts +9 -12
  36. package/cjs/components/DateInput/DateInput.js +11 -3
  37. package/cjs/components/DateInput/DateInput.js.map +1 -1
  38. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -2
  39. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
  40. package/cjs/components/DateInput/helpers/SelectionHelpers.js +2 -2
  41. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  42. package/cjs/components/DatePicker/DatePicker.d.ts +7 -9
  43. package/cjs/components/DatePicker/DatePicker.js +23 -9
  44. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  45. package/cjs/components/DatePicker/Picker.js +5 -1
  46. package/cjs/components/DatePicker/Picker.js.map +1 -1
  47. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +5 -5
  48. package/cjs/components/DropdownMenu/DropdownMenu.js +9 -3
  49. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  50. package/cjs/components/FileUploader/FileUploader.js +2 -2
  51. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  52. package/cjs/components/FileUploader/FileUploader.md +8 -1
  53. package/cjs/components/FxInput/FxInput.d.ts +6 -6
  54. package/cjs/components/FxInput/FxInput.js +16 -11
  55. package/cjs/components/FxInput/FxInput.js.map +1 -1
  56. package/cjs/components/Gapped/Gapped.d.ts +7 -8
  57. package/cjs/components/Gapped/Gapped.js +12 -6
  58. package/cjs/components/Gapped/Gapped.js.map +1 -1
  59. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +7 -14
  60. package/cjs/components/GlobalLoader/GlobalLoader.js +13 -9
  61. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  62. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
  63. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  64. package/cjs/components/Hint/Hint.d.ts +8 -12
  65. package/cjs/components/Hint/Hint.js +15 -5
  66. package/cjs/components/Hint/Hint.js.map +1 -1
  67. package/cjs/components/Hint/Hint.md +14 -0
  68. package/cjs/components/Input/Input.d.ts +4 -3
  69. package/cjs/components/Input/Input.js +10 -5
  70. package/cjs/components/Input/Input.js.map +1 -1
  71. package/cjs/components/Input/Input.md +5 -1
  72. package/cjs/components/Kebab/Kebab.d.ts +8 -15
  73. package/cjs/components/Kebab/Kebab.js +14 -5
  74. package/cjs/components/Kebab/Kebab.js.map +1 -1
  75. package/cjs/components/Link/Link.d.ts +5 -7
  76. package/cjs/components/Link/Link.js +12 -5
  77. package/cjs/components/Link/Link.js.map +1 -1
  78. package/cjs/components/Loader/Loader.d.ts +9 -5
  79. package/cjs/components/Loader/Loader.js +15 -4
  80. package/cjs/components/Loader/Loader.js.map +1 -1
  81. package/cjs/components/Loader/__stories__/LoaderAndButton.js +6 -0
  82. package/cjs/components/Loader/__stories__/LoaderAndButton.js.map +1 -1
  83. package/cjs/components/MenuItem/MenuItem.js +3 -1
  84. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  85. package/cjs/components/Modal/Modal.d.ts +4 -3
  86. package/cjs/components/Modal/Modal.js +9 -4
  87. package/cjs/components/Modal/Modal.js.map +1 -1
  88. package/cjs/components/Modal/Modal.styles.d.ts +2 -2
  89. package/cjs/components/Modal/Modal.styles.js +2 -2
  90. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  91. package/cjs/components/Modal/ModalBody.js +2 -2
  92. package/cjs/components/Modal/ModalBody.js.map +1 -1
  93. package/cjs/components/Paging/Paging.d.ts +7 -10
  94. package/cjs/components/Paging/Paging.js +16 -6
  95. package/cjs/components/Paging/Paging.js.map +1 -1
  96. package/cjs/components/Paging/PagingDefaultComponent.d.ts +3 -3
  97. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
  98. package/cjs/components/PasswordInput/PasswordInput.d.ts +4 -3
  99. package/cjs/components/PasswordInput/PasswordInput.js +14 -7
  100. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  101. package/cjs/components/Radio/Radio.d.ts +4 -3
  102. package/cjs/components/Radio/Radio.js +11 -4
  103. package/cjs/components/Radio/Radio.js.map +1 -1
  104. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -4
  105. package/cjs/components/RadioGroup/RadioGroup.js +4 -2
  106. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  107. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +2 -2
  108. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  109. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +7 -8
  110. package/cjs/components/ScrollContainer/ScrollContainer.helpers.js +4 -4
  111. package/cjs/components/ScrollContainer/ScrollContainer.helpers.js.map +1 -1
  112. package/cjs/components/ScrollContainer/ScrollContainer.js +12 -6
  113. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  114. package/cjs/components/Select/Item.d.ts +4 -2
  115. package/cjs/components/Select/Item.js +3 -0
  116. package/cjs/components/Select/Item.js.map +1 -1
  117. package/cjs/components/Select/Select.d.ts +3 -12
  118. package/cjs/components/Select/Select.js +8 -1
  119. package/cjs/components/Select/Select.js.map +1 -1
  120. package/cjs/components/Select/Select.styles.js +4 -4
  121. package/cjs/components/Select/Select.styles.js.map +1 -1
  122. package/cjs/components/SidePage/SidePage.d.ts +5 -6
  123. package/cjs/components/SidePage/SidePage.js +8 -1
  124. package/cjs/components/SidePage/SidePage.js.map +1 -1
  125. package/cjs/components/SidePage/SidePageFooter.d.ts +6 -4
  126. package/cjs/components/SidePage/SidePageFooter.js +4 -0
  127. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  128. package/cjs/components/Spinner/Spinner.d.ts +4 -2
  129. package/cjs/components/Spinner/Spinner.js +10 -4
  130. package/cjs/components/Spinner/Spinner.js.map +1 -1
  131. package/cjs/components/Spinner/Spinner.styles.d.ts +1 -1
  132. package/cjs/components/Spinner/Spinner.styles.js +7 -7
  133. package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
  134. package/cjs/components/Sticky/Sticky.d.ts +5 -4
  135. package/cjs/components/Sticky/Sticky.js +9 -2
  136. package/cjs/components/Sticky/Sticky.js.map +1 -1
  137. package/cjs/components/Tabs/Indicator.d.ts +1 -1
  138. package/cjs/components/Tabs/Indicator.js +1 -1
  139. package/cjs/components/Tabs/Indicator.js.map +1 -1
  140. package/cjs/components/Tabs/Tab.d.ts +4 -4
  141. package/cjs/components/Tabs/Tab.js +11 -13
  142. package/cjs/components/Tabs/Tab.js.map +1 -1
  143. package/cjs/components/Tabs/Tabs.d.ts +4 -4
  144. package/cjs/components/Tabs/Tabs.js +12 -3
  145. package/cjs/components/Tabs/Tabs.js.map +1 -1
  146. package/cjs/components/Textarea/Textarea.d.ts +8 -10
  147. package/cjs/components/Textarea/Textarea.js +13 -7
  148. package/cjs/components/Textarea/Textarea.js.map +1 -1
  149. package/cjs/components/Textarea/TextareaCounter.d.ts +2 -2
  150. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  151. package/cjs/components/Toast/Toast.js +1 -1
  152. package/cjs/components/Toast/Toast.js.map +1 -1
  153. package/cjs/components/Toggle/Toggle.d.ts +5 -6
  154. package/cjs/components/Toggle/Toggle.js +10 -4
  155. package/cjs/components/Toggle/Toggle.js.map +1 -1
  156. package/cjs/components/TokenInput/TokenInput.d.ts +19 -16
  157. package/cjs/components/TokenInput/TokenInput.js +76 -59
  158. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  159. package/cjs/components/TokenInput/TokenInputMenu.d.ts +2 -1
  160. package/cjs/components/TokenInput/TokenInputMenu.js +1 -1
  161. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  162. package/cjs/components/Tooltip/Tooltip.d.ts +12 -16
  163. package/cjs/components/Tooltip/Tooltip.js +25 -14
  164. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  165. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +6 -5
  166. package/cjs/components/TooltipMenu/TooltipMenu.js +11 -5
  167. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  168. package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -2
  169. package/cjs/hooks/useEffectWithoutInitCall.js +2 -2
  170. package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -1
  171. package/cjs/hooks/useMemoObject.d.ts +2 -1
  172. package/cjs/hooks/useMemoObject.js +2 -0
  173. package/cjs/hooks/useMemoObject.js.map +1 -1
  174. package/cjs/internal/BGRuler.d.ts +13 -15
  175. package/cjs/internal/BGRuler.js +16 -8
  176. package/cjs/internal/BGRuler.js.map +1 -1
  177. package/cjs/internal/Calendar/Calendar.d.ts +4 -13
  178. package/cjs/internal/Calendar/Calendar.js +10 -5
  179. package/cjs/internal/Calendar/Calendar.js.map +1 -1
  180. package/cjs/internal/Calendar/DayCellView.styles.js +1 -1
  181. package/cjs/internal/Calendar/DayCellView.styles.js.map +1 -1
  182. package/cjs/internal/Calendar/Month.js +16 -11
  183. package/cjs/internal/Calendar/Month.js.map +1 -1
  184. package/cjs/internal/Calendar/MonthViewModel.d.ts +1 -1
  185. package/cjs/internal/Calendar/config.d.ts +1 -8
  186. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
  187. package/cjs/internal/CommonWrapper/CommonWrapper.js +5 -4
  188. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  189. package/cjs/internal/ComponentCombinator.d.ts +6 -8
  190. package/cjs/internal/ComponentCombinator.js +6 -2
  191. package/cjs/internal/ComponentCombinator.js.map +1 -1
  192. package/cjs/internal/ComponentTable.d.ts +7 -8
  193. package/cjs/internal/ComponentTable.js +14 -3
  194. package/cjs/internal/ComponentTable.js.map +1 -1
  195. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +6 -6
  196. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +14 -8
  197. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  198. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +4 -12
  199. package/cjs/internal/CustomComboBox/ComboBoxView.js +18 -10
  200. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  201. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +4 -5
  202. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  203. package/cjs/internal/DataTids/DataTids.d.ts +5 -5
  204. package/cjs/internal/DataTids/DataTids.js +4 -0
  205. package/cjs/internal/DataTids/DataTids.js.map +1 -1
  206. package/cjs/internal/DateSelect/DateSelect.d.ts +4 -6
  207. package/cjs/internal/DateSelect/DateSelect.js +16 -10
  208. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  209. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +4 -7
  210. package/cjs/internal/DropdownContainer/DropdownContainer.js +8 -5
  211. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  212. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
  213. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -1
  214. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
  215. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  216. package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
  217. package/cjs/internal/InputLikeText/InputLikeText.js +11 -4
  218. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  219. package/cjs/internal/InternalMenu/InternalMenu.d.ts +3 -9
  220. package/cjs/internal/InternalMenu/InternalMenu.js +36 -14
  221. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  222. package/cjs/internal/MaskedInput/MaskedInput.d.ts +5 -2
  223. package/cjs/internal/MaskedInput/MaskedInput.js +20 -7
  224. package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
  225. package/cjs/internal/Menu/Menu.d.ts +4 -7
  226. package/cjs/internal/Menu/Menu.js +14 -4
  227. package/cjs/internal/Menu/Menu.js.map +1 -1
  228. package/cjs/internal/MobilePopup/MobilePopup.js +1 -1
  229. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  230. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +1 -1
  231. package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  232. package/cjs/internal/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  233. package/cjs/internal/Popup/Popup.d.ts +11 -17
  234. package/cjs/internal/Popup/Popup.js +38 -19
  235. package/cjs/internal/Popup/Popup.js.map +1 -1
  236. package/cjs/internal/Popup/PopupHelper.d.ts +1 -1
  237. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  238. package/cjs/internal/Popup/PopupPin.d.ts +1 -1
  239. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  240. package/cjs/internal/PopupMenu/PopupMenu.d.ts +8 -11
  241. package/cjs/internal/PopupMenu/PopupMenu.js +8 -1
  242. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  243. package/cjs/internal/RenderLayer/RenderLayer.d.ts +5 -4
  244. package/cjs/internal/RenderLayer/RenderLayer.js +8 -2
  245. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  246. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
  247. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js +7 -0
  248. package/cjs/internal/ThemePlayground/AnotherInputsPlayground.js.map +1 -1
  249. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
  250. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js +2 -3
  251. package/cjs/internal/ThemePlayground/CurrencyInputPlayground.js.map +1 -1
  252. package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
  253. package/cjs/internal/ThemePlayground/FxInputPlayground.js +5 -5
  254. package/cjs/internal/ThemePlayground/FxInputPlayground.js.map +1 -1
  255. package/cjs/internal/ThemePlayground/HintPlayground.d.ts +1 -1
  256. package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
  257. package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
  258. package/cjs/internal/ThemePlayground/PagingPlayground.js +5 -2
  259. package/cjs/internal/ThemePlayground/PagingPlayground.js.map +1 -1
  260. package/cjs/internal/ThemePlayground/Playground.d.ts +1 -1
  261. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  262. package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
  263. package/cjs/internal/ThemePlayground/SelectPlayground.js +6 -0
  264. package/cjs/internal/ThemePlayground/SelectPlayground.js.map +1 -1
  265. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -2
  266. package/cjs/internal/ThemePlayground/SizesGroup.js +2 -0
  267. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  268. package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
  269. package/cjs/internal/ThemePlayground/SwitcherPlayground.js +6 -1
  270. package/cjs/internal/ThemePlayground/SwitcherPlayground.js.map +1 -1
  271. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +14 -4
  272. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  273. package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
  274. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  275. package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
  276. package/cjs/internal/ThemePlayground/TogglePlayground.js +4 -10
  277. package/cjs/internal/ThemePlayground/TogglePlayground.js.map +1 -1
  278. package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
  279. package/cjs/internal/ThemePlayground/TokenInputPlayground.js +3 -0
  280. package/cjs/internal/ThemePlayground/TokenInputPlayground.js.map +1 -1
  281. package/cjs/internal/ThemePlayground/VariableValue.d.ts +6 -8
  282. package/cjs/internal/ThemePlayground/VariableValue.js +6 -1
  283. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  284. package/cjs/internal/ThemePlayground/helpers.d.ts +1 -1
  285. package/cjs/internal/ThemePlayground/helpers.js +4 -2
  286. package/cjs/internal/ThemePlayground/helpers.js.map +1 -1
  287. package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
  288. package/cjs/internal/ZIndex/ZIndex.d.ts +7 -11
  289. package/cjs/internal/ZIndex/ZIndex.js +7 -7
  290. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  291. package/cjs/internal/themes/DefaultTheme.js +1 -1
  292. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  293. package/cjs/lib/ConditionalHandler.js.map +1 -1
  294. package/cjs/lib/InstanceWithAnchorElement.d.ts +1 -1
  295. package/cjs/lib/InstanceWithAnchorElement.js.map +1 -1
  296. package/cjs/lib/ModalStack.js +2 -2
  297. package/cjs/lib/ModalStack.js.map +1 -1
  298. package/cjs/lib/SSRSafe.d.ts +2 -1
  299. package/cjs/lib/SSRSafe.js +9 -1
  300. package/cjs/lib/SSRSafe.js.map +1 -1
  301. package/cjs/lib/animation/index.js +1 -0
  302. package/cjs/lib/animation/index.js.map +1 -1
  303. package/cjs/lib/callChildRef/callChildRef.js +1 -1
  304. package/cjs/lib/callChildRef/callChildRef.js.map +1 -1
  305. package/cjs/lib/createPropsGetter.d.ts +2 -1
  306. package/cjs/lib/createPropsGetter.js +3 -0
  307. package/cjs/lib/createPropsGetter.js.map +1 -1
  308. package/cjs/lib/date/InternalDateCalculator.d.ts +1 -1
  309. package/cjs/lib/date/InternalDateCalculator.js +1 -1
  310. package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
  311. package/cjs/lib/date/InternalDateValidator.d.ts +1 -1
  312. package/cjs/lib/date/InternalDateValidator.js +9 -2
  313. package/cjs/lib/date/InternalDateValidator.js.map +1 -1
  314. package/cjs/lib/extractKeyboardAction.d.ts +1 -1
  315. package/cjs/lib/extractKeyboardAction.js.map +1 -1
  316. package/cjs/lib/filterProps.js +0 -1
  317. package/cjs/lib/filterProps.js.map +1 -1
  318. package/cjs/lib/listenFocusOutside.d.ts +1 -1
  319. package/cjs/lib/listenFocusOutside.js.map +1 -1
  320. package/cjs/lib/locale/useLocaleForControl.d.ts +1 -1
  321. package/cjs/lib/locale/useLocaleForControl.js.map +1 -1
  322. package/cjs/lib/memo.d.ts +3 -1
  323. package/cjs/lib/memo.js +3 -3
  324. package/cjs/lib/memo.js.map +1 -1
  325. package/cjs/lib/net/fetch.js +2 -2
  326. package/cjs/lib/net/fetch.js.map +1 -1
  327. package/cjs/lib/reactGetTextContent.js +0 -1
  328. package/cjs/lib/reactGetTextContent.js.map +1 -1
  329. package/cjs/lib/rootNode/getRootNode.d.ts +3 -3
  330. package/cjs/lib/rootNode/getRootNode.js +7 -7
  331. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  332. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +9 -9
  333. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  334. package/cjs/lib/styles/ColorFactory.js +2 -2
  335. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  336. package/cjs/lib/styles/ColorFunctions.js.map +1 -1
  337. package/cjs/lib/theming/AnimationKeyframes.d.ts +3 -5
  338. package/cjs/lib/theming/AnimationKeyframes.js +8 -22
  339. package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
  340. package/cjs/lib/theming/Emotion.js +1 -0
  341. package/cjs/lib/theming/Emotion.js.map +1 -1
  342. package/cjs/lib/theming/ThemeFactory.d.ts +1 -1
  343. package/cjs/lib/theming/ThemeFactory.js +3 -1
  344. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  345. package/cjs/lib/theming/ThemeHelpers.d.ts +2 -2
  346. package/cjs/lib/theming/ThemeHelpers.js +1 -1
  347. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  348. package/cjs/lib/utils.d.ts +3 -1
  349. package/cjs/lib/utils.js +5 -2
  350. package/cjs/lib/utils.js.map +1 -1
  351. package/cjs/lib/withClassWrapper.js +1 -4
  352. package/cjs/lib/withClassWrapper.js.map +1 -1
  353. package/cjs/typings/event-types.d.ts +2 -2
  354. package/components/Autocomplete/Autocomplete/Autocomplete.js +26 -13
  355. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  356. package/components/Autocomplete/Autocomplete.d.ts +9 -17
  357. package/components/Button/Button/Button.js +11 -5
  358. package/components/Button/Button/Button.js.map +1 -1
  359. package/components/Button/Button.d.ts +4 -5
  360. package/components/Button/Button.mixins/Button.mixins.js +1 -1
  361. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  362. package/components/Button/Button.styles/Button.styles.js +18 -18
  363. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  364. package/components/Center/Center/Center.js +7 -5
  365. package/components/Center/Center/Center.js.map +1 -1
  366. package/components/Center/Center.d.ts +4 -3
  367. package/components/Checkbox/Checkbox/Checkbox.js +5 -2
  368. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  369. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +1 -1
  370. package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
  371. package/components/Checkbox/Checkbox.styles.d.ts +1 -1
  372. package/components/ComboBox/ComboBox/ComboBox.js +3 -1
  373. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  374. package/components/ComboBox/ComboBox.d.ts +8 -13
  375. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +36 -21
  376. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  377. package/components/CurrencyInput/CurrencyInput.d.ts +6 -9
  378. package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js +4 -2
  379. package/components/CurrencyInput/CurrencyInputKeyboardActions/CurrencyInputKeyboardActions.js.map +1 -1
  380. package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +3 -1
  381. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +21 -15
  382. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  383. package/components/CurrencyLabel/CurrencyLabel.d.ts +3 -9
  384. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +11 -1
  385. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  386. package/components/DateInput/DateFragmentsView.d.ts +1 -1
  387. package/components/DateInput/DateInput/DateInput.js +18 -5
  388. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  389. package/components/DateInput/DateInput.d.ts +9 -12
  390. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +0 -1
  391. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  392. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +2 -2
  393. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  394. package/components/DatePicker/DatePicker/DatePicker.js +25 -21
  395. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  396. package/components/DatePicker/DatePicker.d.ts +7 -9
  397. package/components/DatePicker/Picker/Picker.js +5 -1
  398. package/components/DatePicker/Picker/Picker.js.map +1 -1
  399. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +8 -2
  400. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  401. package/components/DropdownMenu/DropdownMenu.d.ts +5 -5
  402. package/components/FileUploader/FileUploader/FileUploader.js +2 -2
  403. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  404. package/components/FileUploader/FileUploader.md +8 -1
  405. package/components/FxInput/FxInput/FxInput.js +15 -10
  406. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  407. package/components/FxInput/FxInput.d.ts +6 -6
  408. package/components/Gapped/Gapped/Gapped.js +17 -8
  409. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  410. package/components/Gapped/Gapped.d.ts +7 -8
  411. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +35 -16
  412. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  413. package/components/GlobalLoader/GlobalLoader.d.ts +7 -14
  414. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  415. package/components/GlobalLoader/GlobalLoaderView.d.ts +2 -2
  416. package/components/Hint/Hint/Hint.js +30 -18
  417. package/components/Hint/Hint/Hint.js.map +1 -1
  418. package/components/Hint/Hint.d.ts +8 -12
  419. package/components/Hint/Hint.md +14 -0
  420. package/components/Input/Input/Input.js +13 -8
  421. package/components/Input/Input/Input.js.map +1 -1
  422. package/components/Input/Input.d.ts +4 -3
  423. package/components/Input/Input.md +5 -1
  424. package/components/Kebab/Kebab/Kebab.js +19 -8
  425. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  426. package/components/Kebab/Kebab.d.ts +8 -15
  427. package/components/Link/Link/Link.js +10 -7
  428. package/components/Link/Link/Link.js.map +1 -1
  429. package/components/Link/Link.d.ts +5 -7
  430. package/components/Loader/Loader/Loader.js +22 -17
  431. package/components/Loader/Loader/Loader.js.map +1 -1
  432. package/components/Loader/Loader.d.ts +9 -5
  433. package/components/Loader/__stories__/LoaderAndButton/LoaderAndButton.js.map +1 -1
  434. package/components/MenuItem/MenuItem/MenuItem.js +4 -1
  435. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  436. package/components/Modal/Modal/Modal.js +5 -3
  437. package/components/Modal/Modal/Modal.js.map +1 -1
  438. package/components/Modal/Modal.d.ts +4 -3
  439. package/components/Modal/Modal.styles/Modal.styles.js +2 -2
  440. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  441. package/components/Modal/Modal.styles.d.ts +2 -2
  442. package/components/Modal/ModalBody/ModalBody.js +2 -2
  443. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  444. package/components/Paging/Paging/Paging.js +25 -15
  445. package/components/Paging/Paging/Paging.js.map +1 -1
  446. package/components/Paging/Paging.d.ts +7 -10
  447. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
  448. package/components/Paging/PagingDefaultComponent.d.ts +3 -3
  449. package/components/PasswordInput/PasswordInput/PasswordInput.js +14 -13
  450. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  451. package/components/PasswordInput/PasswordInput.d.ts +4 -3
  452. package/components/Radio/Radio/Radio.js +11 -6
  453. package/components/Radio/Radio/Radio.js.map +1 -1
  454. package/components/Radio/Radio.d.ts +4 -3
  455. package/components/RadioGroup/RadioGroup/RadioGroup.js +10 -10
  456. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  457. package/components/RadioGroup/RadioGroup.d.ts +2 -4
  458. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +3 -1
  459. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  460. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +11 -7
  461. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  462. package/components/ScrollContainer/ScrollContainer.d.ts +7 -8
  463. package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js +4 -4
  464. package/components/ScrollContainer/ScrollContainer.helpers/ScrollContainer.helpers.js.map +1 -1
  465. package/components/Select/Item/Item.js.map +1 -1
  466. package/components/Select/Item.d.ts +4 -2
  467. package/components/Select/Select/Select.js +4 -3
  468. package/components/Select/Select/Select.js.map +1 -1
  469. package/components/Select/Select.d.ts +3 -12
  470. package/components/Select/Select.styles/Select.styles.js +4 -4
  471. package/components/Select/Select.styles/Select.styles.js.map +1 -1
  472. package/components/SidePage/SidePage/SidePage.js +14 -9
  473. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  474. package/components/SidePage/SidePage.d.ts +5 -6
  475. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  476. package/components/SidePage/SidePageFooter.d.ts +6 -4
  477. package/components/Spinner/Spinner/Spinner.js +8 -6
  478. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  479. package/components/Spinner/Spinner.d.ts +4 -2
  480. package/components/Spinner/Spinner.styles/Spinner.styles.js +3 -3
  481. package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
  482. package/components/Spinner/Spinner.styles.d.ts +1 -1
  483. package/components/Sticky/Sticky/Sticky.js +7 -4
  484. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  485. package/components/Sticky/Sticky.d.ts +5 -4
  486. package/components/Tabs/Indicator/Indicator.js +1 -1
  487. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  488. package/components/Tabs/Indicator.d.ts +1 -1
  489. package/components/Tabs/Tab/Tab.js +15 -7
  490. package/components/Tabs/Tab/Tab.js.map +1 -1
  491. package/components/Tabs/Tab.d.ts +4 -4
  492. package/components/Tabs/Tabs/Tabs.js +10 -8
  493. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  494. package/components/Tabs/Tabs.d.ts +4 -4
  495. package/components/Textarea/Textarea/Textarea.js +23 -15
  496. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  497. package/components/Textarea/Textarea.d.ts +8 -10
  498. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  499. package/components/Textarea/TextareaCounter.d.ts +2 -2
  500. package/components/Toast/Toast/Toast.js +1 -1
  501. package/components/Toast/Toast/Toast.js.map +1 -1
  502. package/components/Toggle/Toggle/Toggle.js +12 -7
  503. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  504. package/components/Toggle/Toggle.d.ts +5 -6
  505. package/components/TokenInput/TokenInput/TokenInput.js +107 -77
  506. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  507. package/components/TokenInput/TokenInput.d.ts +19 -16
  508. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +1 -1
  509. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  510. package/components/TokenInput/TokenInputMenu.d.ts +2 -1
  511. package/components/Tooltip/Tooltip/Tooltip.js +53 -32
  512. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  513. package/components/Tooltip/Tooltip.d.ts +12 -16
  514. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +15 -13
  515. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  516. package/components/TooltipMenu/TooltipMenu.d.ts +6 -5
  517. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +2 -2
  518. package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -1
  519. package/hooks/useEffectWithoutInitCall.d.ts +2 -2
  520. package/hooks/useMemoObject/useMemoObject.js.map +1 -1
  521. package/hooks/useMemoObject.d.ts +2 -1
  522. package/internal/BGRuler/BGRuler.js +11 -6
  523. package/internal/BGRuler/BGRuler.js.map +1 -1
  524. package/internal/BGRuler.d.ts +13 -15
  525. package/internal/Calendar/Calendar/Calendar.js +11 -5
  526. package/internal/Calendar/Calendar/Calendar.js.map +1 -1
  527. package/internal/Calendar/Calendar.d.ts +4 -13
  528. package/internal/Calendar/DayCellView.styles/DayCellView.styles.js +1 -1
  529. package/internal/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
  530. package/internal/Calendar/Month/Month.js +20 -11
  531. package/internal/Calendar/Month/Month.js.map +1 -1
  532. package/internal/Calendar/MonthViewModel.d.ts +1 -1
  533. package/internal/Calendar/config.d.ts +1 -8
  534. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +3 -2
  535. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  536. package/internal/CommonWrapper/CommonWrapper.d.ts +1 -1
  537. package/internal/ComponentCombinator/ComponentCombinator.js +8 -5
  538. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  539. package/internal/ComponentCombinator.d.ts +6 -8
  540. package/internal/ComponentTable/ComponentTable.js +16 -4
  541. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  542. package/internal/ComponentTable.d.ts +7 -8
  543. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +18 -19
  544. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  545. package/internal/CustomComboBox/ComboBoxMenu.d.ts +6 -6
  546. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +21 -10
  547. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  548. package/internal/CustomComboBox/ComboBoxView.d.ts +4 -12
  549. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +4 -5
  550. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  551. package/internal/DataTids/DataTids/DataTids.js.map +1 -1
  552. package/internal/DataTids/DataTids.d.ts +5 -5
  553. package/internal/DateSelect/DateSelect/DateSelect.js +15 -12
  554. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  555. package/internal/DateSelect/DateSelect.d.ts +4 -6
  556. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +6 -10
  557. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  558. package/internal/DropdownContainer/DropdownContainer.d.ts +4 -7
  559. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -1
  560. package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +1 -1
  561. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
  562. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  563. package/internal/InputLikeText/InputLikeText/InputLikeText.js +9 -4
  564. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  565. package/internal/InputLikeText/InputLikeText.d.ts +4 -3
  566. package/internal/InternalMenu/InternalMenu/InternalMenu.js +38 -17
  567. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  568. package/internal/InternalMenu/InternalMenu.d.ts +3 -9
  569. package/internal/MaskedInput/MaskedInput/MaskedInput.js +16 -7
  570. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  571. package/internal/MaskedInput/MaskedInput.d.ts +5 -2
  572. package/internal/Menu/Menu/Menu.js +16 -4
  573. package/internal/Menu/Menu/Menu.js.map +1 -1
  574. package/internal/Menu/Menu.d.ts +4 -7
  575. package/internal/MobilePopup/MobilePopup/MobilePopup.js +1 -1
  576. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  577. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +1 -1
  578. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  579. package/internal/PerformanceMetrics/PerformanceMetrics/PerformanceMetrics.js.map +1 -1
  580. package/internal/Popup/Popup/Popup.js +52 -35
  581. package/internal/Popup/Popup/Popup.js.map +1 -1
  582. package/internal/Popup/Popup.d.ts +11 -17
  583. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  584. package/internal/Popup/PopupHelper.d.ts +1 -1
  585. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  586. package/internal/Popup/PopupPin.d.ts +1 -1
  587. package/internal/PopupMenu/PopupMenu/PopupMenu.js +12 -4
  588. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  589. package/internal/PopupMenu/PopupMenu.d.ts +8 -11
  590. package/internal/RenderLayer/RenderLayer/RenderLayer.js +8 -4
  591. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  592. package/internal/RenderLayer/RenderLayer.d.ts +5 -4
  593. package/internal/ThemePlayground/AnotherInputsPlayground/AnotherInputsPlayground.js.map +1 -1
  594. package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +11 -6
  595. package/internal/ThemePlayground/CurrencyInputPlayground/CurrencyInputPlayground.js.map +1 -1
  596. package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +7 -6
  597. package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js +10 -6
  598. package/internal/ThemePlayground/FxInputPlayground/FxInputPlayground.js.map +1 -1
  599. package/internal/ThemePlayground/FxInputPlayground.d.ts +6 -4
  600. package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
  601. package/internal/ThemePlayground/HintPlayground.d.ts +1 -1
  602. package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js +2 -2
  603. package/internal/ThemePlayground/PagingPlayground/PagingPlayground.js.map +1 -1
  604. package/internal/ThemePlayground/PagingPlayground.d.ts +6 -6
  605. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  606. package/internal/ThemePlayground/Playground.d.ts +1 -1
  607. package/internal/ThemePlayground/SelectPlayground/SelectPlayground.js.map +1 -1
  608. package/internal/ThemePlayground/SelectPlayground.d.ts +9 -6
  609. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  610. package/internal/ThemePlayground/SizesGroup.d.ts +2 -2
  611. package/internal/ThemePlayground/SwitcherPlayground/SwitcherPlayground.js.map +1 -1
  612. package/internal/ThemePlayground/SwitcherPlayground.d.ts +9 -8
  613. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +13 -3
  614. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  615. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  616. package/internal/ThemePlayground/ThemeEditor.d.ts +1 -4
  617. package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js +5 -17
  618. package/internal/ThemePlayground/TogglePlayground/TogglePlayground.js.map +1 -1
  619. package/internal/ThemePlayground/TogglePlayground.d.ts +2 -7
  620. package/internal/ThemePlayground/TokenInputPlayground/TokenInputPlayground.js.map +1 -1
  621. package/internal/ThemePlayground/TokenInputPlayground.d.ts +6 -4
  622. package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -2
  623. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  624. package/internal/ThemePlayground/VariableValue.d.ts +6 -8
  625. package/internal/ThemePlayground/helpers/helpers.js +0 -1
  626. package/internal/ThemePlayground/helpers/helpers.js.map +1 -1
  627. package/internal/ThemePlayground/helpers.d.ts +1 -1
  628. package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
  629. package/internal/ZIndex/ZIndex/ZIndex.js +21 -16
  630. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  631. package/internal/ZIndex/ZIndex.d.ts +7 -11
  632. package/internal/themes/DefaultTheme/DefaultTheme.js +6 -6
  633. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  634. package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
  635. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -1
  636. package/lib/InstanceWithAnchorElement.d.ts +1 -1
  637. package/lib/ModalStack/ModalStack.js +2 -2
  638. package/lib/ModalStack/ModalStack.js.map +1 -1
  639. package/lib/SSRSafe/SSRSafe.js +7 -0
  640. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  641. package/lib/SSRSafe.d.ts +2 -1
  642. package/lib/animation/index/index.js +1 -1
  643. package/lib/animation/index/index.js.map +1 -1
  644. package/lib/callChildRef/callChildRef/callChildRef.js +1 -1
  645. package/lib/callChildRef/callChildRef/callChildRef.js.map +1 -1
  646. package/lib/createPropsGetter/createPropsGetter.js +1 -0
  647. package/lib/createPropsGetter/createPropsGetter.js.map +1 -1
  648. package/lib/createPropsGetter.d.ts +2 -1
  649. package/lib/date/InternalDateCalculator/InternalDateCalculator.js +1 -2
  650. package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
  651. package/lib/date/InternalDateCalculator.d.ts +1 -1
  652. package/lib/date/InternalDateValidator/InternalDateValidator.js +8 -2
  653. package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
  654. package/lib/date/InternalDateValidator.d.ts +1 -1
  655. package/lib/extractKeyboardAction/extractKeyboardAction.js.map +1 -1
  656. package/lib/extractKeyboardAction.d.ts +1 -1
  657. package/lib/filterProps/filterProps.js +0 -1
  658. package/lib/filterProps/filterProps.js.map +1 -1
  659. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  660. package/lib/listenFocusOutside.d.ts +1 -1
  661. package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -1
  662. package/lib/locale/useLocaleForControl.d.ts +1 -1
  663. package/lib/memo/memo.js +2 -4
  664. package/lib/memo/memo.js.map +1 -1
  665. package/lib/memo.d.ts +3 -1
  666. package/lib/net/fetch/fetch.js +2 -2
  667. package/lib/net/fetch/fetch.js.map +1 -1
  668. package/lib/reactGetTextContent/reactGetTextContent.js +0 -1
  669. package/lib/reactGetTextContent/reactGetTextContent.js.map +1 -1
  670. package/lib/rootNode/getRootNode/getRootNode.js +8 -8
  671. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  672. package/lib/rootNode/getRootNode.d.ts +3 -3
  673. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  674. package/lib/rootNode/rootNodeDecorator.d.ts +9 -9
  675. package/lib/styles/ColorFactory/ColorFactory.js +3 -1
  676. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  677. package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
  678. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +8 -14
  679. package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
  680. package/lib/theming/AnimationKeyframes.d.ts +3 -5
  681. package/lib/theming/Emotion/Emotion.js.map +1 -1
  682. package/lib/theming/ThemeFactory/ThemeFactory.js +4 -1
  683. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  684. package/lib/theming/ThemeFactory.d.ts +1 -1
  685. package/lib/theming/ThemeHelpers/ThemeHelpers.js +1 -1
  686. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  687. package/lib/theming/ThemeHelpers.d.ts +2 -2
  688. package/lib/utils/utils.js +2 -2
  689. package/lib/utils/utils.js.map +1 -1
  690. package/lib/utils.d.ts +3 -1
  691. package/lib/withClassWrapper/withClassWrapper.js +1 -4
  692. package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
  693. package/package.json +4 -4
  694. package/typings/event-types.d.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["ResponsiveLayoutEvents.ts"],"names":["eventListenersMap","Map","addResponsiveLayoutListener","mediaQuery","callback","has","addCallbackToMQListener","createMQListener","remove","removeCallbackFromMQListener","eventListener","get","set","listeners","mql","window","matchMedia","newMediaQueryInfo","addEventListener","changeCallback","addListener","newListeners","filter","listener","length","removeEventListener","removeListener","delete","checkMatches","canUseDOM","matches","e","media","forEach"],"mappings":"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","sourcesContent":["import { canUseDOM } from '../../lib/client';\n\ninterface mediaQueryData {\n mql: MediaQueryList;\n listeners: Array<(e: MediaQueryListEvent) => void>;\n}\n\nexport interface listenerToken {\n remove: () => void;\n}\n\nexport const eventListenersMap = new Map<string, mediaQueryData>();\n\nexport function addResponsiveLayoutListener(\n mediaQuery: string,\n callback: (e: MediaQueryListEvent) => void,\n): listenerToken {\n if (eventListenersMap.has(mediaQuery)) {\n addCallbackToMQListener(mediaQuery, callback);\n } else {\n createMQListener(mediaQuery, callback);\n }\n\n return {\n remove() {\n removeCallbackFromMQListener(mediaQuery, callback);\n },\n };\n}\n\nfunction addCallbackToMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...eventListener.listeners, callback],\n });\n }\n}\n\nfunction createMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const mql = window.matchMedia(mediaQuery);\n const newMediaQueryInfo: mediaQueryData = { mql, listeners: [callback] };\n\n eventListenersMap.set(mediaQuery, newMediaQueryInfo);\n if (mql.addEventListener) {\n mql.addEventListener('change', changeCallback);\n } else {\n mql.addListener(changeCallback);\n }\n}\n\nfunction removeCallbackFromMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n if (eventListenersMap.has(mediaQuery)) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n const newListeners = eventListener.listeners.filter((listener) => listener !== callback);\n\n if (newListeners.length === 0) {\n if (eventListener.mql.removeEventListener) {\n eventListener.mql.removeEventListener('change', changeCallback);\n } else {\n eventListener.mql.removeListener(changeCallback);\n }\n eventListenersMap.delete(mediaQuery);\n return;\n }\n\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...newListeners],\n });\n }\n }\n}\n\nexport function checkMatches(mediaQuery: string) {\n if (!canUseDOM) {\n return false;\n }\n\n if (!eventListenersMap.has(mediaQuery)) {\n return window.matchMedia(mediaQuery).matches;\n }\n\n const eventListener = eventListenersMap.get(mediaQuery);\n return eventListener!.mql.matches;\n}\n\nfunction changeCallback(e: MediaQueryListEvent) {\n const eventListener = eventListenersMap.get(e.media);\n\n if (eventListener) {\n eventListener.listeners.forEach((listener) => {\n listener(e);\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["ResponsiveLayoutEvents.ts"],"names":["eventListenersMap","Map","addResponsiveLayoutListener","mediaQuery","callback","has","addCallbackToMQListener","createMQListener","remove","removeCallbackFromMQListener","eventListener","get","set","listeners","mql","window","matchMedia","newMediaQueryInfo","addEventListener","changeCallback","addListener","newListeners","filter","listener","length","removeEventListener","removeListener","delete","checkMatches","canUseDOM","matches","e","media","forEach"],"mappings":"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","sourcesContent":["import { canUseDOM } from '../../lib/client';\n\ninterface mediaQueryData {\n mql: MediaQueryList;\n listeners: Array<(e: MediaQueryListEvent) => void>;\n}\n\nexport interface listenerToken {\n remove: () => void;\n}\n\nexport const eventListenersMap = new Map<string, mediaQueryData>();\n\nexport function addResponsiveLayoutListener(\n mediaQuery: string,\n callback: (e: MediaQueryListEvent) => void,\n): listenerToken {\n if (eventListenersMap.has(mediaQuery)) {\n addCallbackToMQListener(mediaQuery, callback);\n } else {\n createMQListener(mediaQuery, callback);\n }\n\n return {\n remove() {\n removeCallbackFromMQListener(mediaQuery, callback);\n },\n };\n}\n\nfunction addCallbackToMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...eventListener.listeners, callback],\n });\n }\n}\n\nfunction createMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n const mql = window.matchMedia(mediaQuery);\n const newMediaQueryInfo: mediaQueryData = { mql, listeners: [callback] };\n\n eventListenersMap.set(mediaQuery, newMediaQueryInfo);\n if (mql.addEventListener) {\n mql.addEventListener('change', changeCallback);\n } else {\n mql.addListener(changeCallback);\n }\n}\n\nfunction removeCallbackFromMQListener(mediaQuery: string, callback: (e: MediaQueryListEvent) => void) {\n if (eventListenersMap.has(mediaQuery)) {\n const eventListener = eventListenersMap.get(mediaQuery);\n\n if (eventListener) {\n const newListeners = eventListener.listeners.filter((listener) => listener !== callback);\n\n if (newListeners.length === 0) {\n if (eventListener.mql.removeEventListener) {\n eventListener.mql.removeEventListener('change', changeCallback);\n } else {\n eventListener.mql.removeListener(changeCallback);\n }\n eventListenersMap.delete(mediaQuery);\n return;\n }\n\n eventListenersMap.set(mediaQuery, {\n ...eventListener,\n listeners: [...newListeners],\n });\n }\n }\n}\n\nexport function checkMatches(mediaQuery: string) {\n if (!canUseDOM) {\n return false;\n }\n\n if (!eventListenersMap.has(mediaQuery)) {\n return window.matchMedia(mediaQuery).matches;\n }\n\n const eventListener = eventListenersMap.get(mediaQuery);\n return eventListener?.mql.matches ?? false;\n}\n\nfunction changeCallback(e: MediaQueryListEvent) {\n const eventListener = eventListenersMap.get(e.media);\n\n if (eventListener) {\n eventListener.listeners.forEach((listener) => {\n listener(e);\n });\n }\n}\n"]}
@@ -11,13 +11,13 @@ export interface ScrollContainerProps extends CommonProps {
11
11
  * Инвертировать цвет скроллбара
12
12
  * @default false
13
13
  */
14
- invert: boolean;
14
+ invert?: boolean;
15
15
  maxHeight?: React.CSSProperties['maxHeight'];
16
16
  maxWidth?: React.CSSProperties['maxWidth'];
17
17
  /**
18
18
  * @default false
19
19
  */
20
- preventWindowScroll: boolean;
20
+ preventWindowScroll?: boolean;
21
21
  /**
22
22
  * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)
23
23
  * @default 'auto'
@@ -36,6 +36,7 @@ export declare const ScrollContainerDataTids: {
36
36
  readonly root: "ScrollContainer__root";
37
37
  readonly inner: "ScrollContainer__inner";
38
38
  };
39
+ declare type DefaultProps = Required<Pick<ScrollContainerProps, 'invert' | 'scrollBehaviour' | 'preventWindowScroll'>>;
39
40
  export declare class ScrollContainer extends React.Component<ScrollContainerProps> {
40
41
  static __KONTUR_REACT_UI__: string;
41
42
  static propTypes: {
@@ -46,11 +47,8 @@ export declare class ScrollContainer extends React.Component<ScrollContainerProp
46
47
  preventWindowScroll: PropTypes.Requireable<boolean>;
47
48
  onScrollStateChange: PropTypes.Requireable<(...args: any[]) => any>;
48
49
  };
49
- static defaultProps: {
50
- invert: boolean;
51
- scrollBehaviour: string;
52
- preventWindowScroll: boolean;
53
- };
50
+ static defaultProps: DefaultProps;
51
+ private getProps;
54
52
  private scrollX;
55
53
  private scrollY;
56
54
  private inner;
@@ -60,7 +58,7 @@ export declare class ScrollContainer extends React.Component<ScrollContainerProp
60
58
  render: () => React.ReactNode;
61
59
  /**
62
60
  * @public
63
- * @param {HTMLElement} element
61
+ * @param {Element} element
64
62
  */
65
63
  scrollTo(element: Nullable<HTMLElement>): void;
66
64
  /**
@@ -90,3 +88,4 @@ export declare class ScrollContainer extends React.Component<ScrollContainerProp
90
88
  private handleMouseMove;
91
89
  private handleMouseLeave;
92
90
  }
91
+ export {};
@@ -27,13 +27,13 @@ var getScrollSizeParams = function getScrollSizeParams(inner, axis) {
27
27
  };exports.getScrollSizeParams = getScrollSizeParams;
28
28
 
29
29
  var getScrollYOffset = function getScrollYOffset(element, container) {
30
- var elementOffset = element.offsetTop;
30
+ var elementTopOffset = element.offsetTop;
31
31
 
32
- if (container.scrollTop > elementOffset) {
33
- return elementOffset;
32
+ if (container.scrollTop > elementTopOffset) {
33
+ return elementTopOffset;
34
34
  }
35
35
 
36
- var offset = elementOffset + element.scrollHeight - container.offsetHeight;
36
+ var offset = elementTopOffset + element.scrollHeight - container.offsetHeight;
37
37
  if (container.scrollTop < offset) {
38
38
  return offset;
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["ScrollContainer.helpers.ts"],"names":["getScrollSizeParams","inner","axis","scrollSizeParametersNames","offset","size","pos","contentSize","scrollOffset","containerSize","scrollActive","scrollSize","scrollPos","Math","max","MIN_SCROLL_SIZE","getScrollYOffset","element","container","elementOffset","offsetTop","scrollTop","scrollHeight","offsetHeight","convertScrollbarXScrollState","state","scrollBarState","begin","end","middle","convertScrollbarYScrollState"],"mappings":"qLAAA;;;;AAIO,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAqBC,IAArB,EAAyC;AAC1E,8BAA8BC,2CAA0BD,IAA1B,CAA9B,CAAQE,MAAR,yBAAQA,MAAR,CAAgBC,IAAhB,yBAAgBA,IAAhB,CAAsBC,GAAtB,yBAAsBA,GAAtB;;AAEA,MAAMC,WAAW,GAAGN,KAAK,CAACI,IAAD,CAAzB;AACA,MAAMG,YAAY,GAAGP,KAAK,CAACK,GAAD,CAA1B;AACA,MAAMG,aAAa,GAAGR,KAAK,CAACG,MAAD,CAA3B;;AAEA,MAAMM,YAAY,GAAGD,aAAa,GAAGF,WAArC;;AAEA,MAAII,UAAU,GAAG,CAAjB;AACA,MAAIC,SAAS,GAAG,CAAhB;;AAEA,MAAIF,YAAJ,EAAkB;AAChBC,IAAAA,UAAU,GAAGE,IAAI,CAACC,GAAL,CAAUL,aAAa,GAAGF,WAAjB,GAAgCE,aAAzC,EAAwDM,gCAAxD,CAAb;AACAH,IAAAA,SAAS,GAAIJ,YAAY,IAAID,WAAW,GAAGE,aAAlB,CAAb,IAAkDA,aAAa,GAAGE,UAAlE,CAAZ;AACD;;AAED,SAAO;AACLD,IAAAA,YAAY,EAAZA,YADK;AAELC,IAAAA,UAAU,EAAVA,UAFK;AAGLC,IAAAA,SAAS,EAATA,SAHK,EAAP;;AAKD,CAtBM,C;;AAwBA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,OAAD,EAAuBC,SAAvB,EAAkD;AAChF,MAAMC,aAAa,GAAGF,OAAO,CAACG,SAA9B;;AAEA,MAAIF,SAAS,CAACG,SAAV,GAAsBF,aAA1B,EAAyC;AACvC,WAAOA,aAAP;AACD;;AAED,MAAMf,MAAM,GAAGe,aAAa,GAAGF,OAAO,CAACK,YAAxB,GAAuCJ,SAAS,CAACK,YAAhE;AACA,MAAIL,SAAS,CAACG,SAAV,GAAsBjB,MAA1B,EAAkC;AAChC,WAAOA,MAAP;AACD;;AAED,SAAOc,SAAS,CAACG,SAAjB;AACD,CAbM,C;;AAeA,IAAMG,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACC,KAAD,EAA8D;AACxG,MAAMC,cAAyE,GAAG;AAChFC,IAAAA,KAAK,EAAE,MADyE;AAEhFC,IAAAA,GAAG,EAAE,OAF2E;AAGhFC,IAAAA,MAAM,EAAE,QAHwE,EAAlF;;;AAMA,SAAOH,cAAc,CAACD,KAAD,CAArB;AACD,CARM,C;;AAUA,IAAMK,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACL,KAAD,EAA8D;AACxG,MAAMC,cAAyE,GAAG;AAChFC,IAAAA,KAAK,EAAE,KADyE;AAEhFC,IAAAA,GAAG,EAAE,QAF2E;AAGhFC,IAAAA,MAAM,EAAE,QAHwE,EAAlF;;;AAMA,SAAOH,cAAc,CAACD,KAAD,CAArB;AACD,CARM,C","sourcesContent":["import { MIN_SCROLL_SIZE, scrollSizeParametersNames } from './ScrollContainer.constants';\nimport { ScrollBarScrollState } from './ScrollBar';\nimport { ScrollContainerScrollStateX, ScrollContainerScrollStateY } from './ScrollContainer';\n\nexport const getScrollSizeParams = (inner: HTMLElement, axis: 'x' | 'y') => {\n const { offset, size, pos } = scrollSizeParametersNames[axis];\n\n const contentSize = inner[size];\n const scrollOffset = inner[pos];\n const containerSize = inner[offset];\n\n const scrollActive = containerSize < contentSize;\n\n let scrollSize = 0;\n let scrollPos = 0;\n\n if (scrollActive) {\n scrollSize = Math.max((containerSize / contentSize) * containerSize, MIN_SCROLL_SIZE);\n scrollPos = (scrollOffset / (contentSize - containerSize)) * (containerSize - scrollSize);\n }\n\n return {\n scrollActive,\n scrollSize,\n scrollPos,\n };\n};\n\nexport const getScrollYOffset = (element: HTMLElement, container: HTMLElement) => {\n const elementOffset = element.offsetTop;\n\n if (container.scrollTop > elementOffset) {\n return elementOffset;\n }\n\n const offset = elementOffset + element.scrollHeight - container.offsetHeight;\n if (container.scrollTop < offset) {\n return offset;\n }\n\n return container.scrollTop;\n};\n\nexport const convertScrollbarXScrollState = (state: ScrollBarScrollState): ScrollContainerScrollStateX => {\n const scrollBarState: Record<ScrollBarScrollState, ScrollContainerScrollStateX> = {\n begin: 'left',\n end: 'right',\n middle: 'scroll',\n };\n\n return scrollBarState[state];\n};\n\nexport const convertScrollbarYScrollState = (state: ScrollBarScrollState): ScrollContainerScrollStateY => {\n const scrollBarState: Record<ScrollBarScrollState, ScrollContainerScrollStateY> = {\n begin: 'top',\n end: 'bottom',\n middle: 'scroll',\n };\n\n return scrollBarState[state];\n};\n"]}
1
+ {"version":3,"sources":["ScrollContainer.helpers.ts"],"names":["getScrollSizeParams","inner","axis","scrollSizeParametersNames","offset","size","pos","contentSize","scrollOffset","containerSize","scrollActive","scrollSize","scrollPos","Math","max","MIN_SCROLL_SIZE","getScrollYOffset","element","container","elementTopOffset","offsetTop","scrollTop","scrollHeight","offsetHeight","convertScrollbarXScrollState","state","scrollBarState","begin","end","middle","convertScrollbarYScrollState"],"mappings":"qLAAA;;;;AAIO,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAAqBC,IAArB,EAAyC;AAC1E,8BAA8BC,2CAA0BD,IAA1B,CAA9B,CAAQE,MAAR,yBAAQA,MAAR,CAAgBC,IAAhB,yBAAgBA,IAAhB,CAAsBC,GAAtB,yBAAsBA,GAAtB;;AAEA,MAAMC,WAAW,GAAGN,KAAK,CAACI,IAAD,CAAzB;AACA,MAAMG,YAAY,GAAGP,KAAK,CAACK,GAAD,CAA1B;AACA,MAAMG,aAAa,GAAGR,KAAK,CAACG,MAAD,CAA3B;;AAEA,MAAMM,YAAY,GAAGD,aAAa,GAAGF,WAArC;;AAEA,MAAII,UAAU,GAAG,CAAjB;AACA,MAAIC,SAAS,GAAG,CAAhB;;AAEA,MAAIF,YAAJ,EAAkB;AAChBC,IAAAA,UAAU,GAAGE,IAAI,CAACC,GAAL,CAAUL,aAAa,GAAGF,WAAjB,GAAgCE,aAAzC,EAAwDM,gCAAxD,CAAb;AACAH,IAAAA,SAAS,GAAIJ,YAAY,IAAID,WAAW,GAAGE,aAAlB,CAAb,IAAkDA,aAAa,GAAGE,UAAlE,CAAZ;AACD;;AAED,SAAO;AACLD,IAAAA,YAAY,EAAZA,YADK;AAELC,IAAAA,UAAU,EAAVA,UAFK;AAGLC,IAAAA,SAAS,EAATA,SAHK,EAAP;;AAKD,CAtBM,C;;AAwBA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,OAAD,EAAuBC,SAAvB,EAAkD;AAChF,MAAMC,gBAAgB,GAAGF,OAAO,CAACG,SAAjC;;AAEA,MAAIF,SAAS,CAACG,SAAV,GAAsBF,gBAA1B,EAA4C;AAC1C,WAAOA,gBAAP;AACD;;AAED,MAAMf,MAAM,GAAGe,gBAAgB,GAAGF,OAAO,CAACK,YAA3B,GAA0CJ,SAAS,CAACK,YAAnE;AACA,MAAIL,SAAS,CAACG,SAAV,GAAsBjB,MAA1B,EAAkC;AAChC,WAAOA,MAAP;AACD;;AAED,SAAOc,SAAS,CAACG,SAAjB;AACD,CAbM,C;;AAeA,IAAMG,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACC,KAAD,EAA8D;AACxG,MAAMC,cAAyE,GAAG;AAChFC,IAAAA,KAAK,EAAE,MADyE;AAEhFC,IAAAA,GAAG,EAAE,OAF2E;AAGhFC,IAAAA,MAAM,EAAE,QAHwE,EAAlF;;;AAMA,SAAOH,cAAc,CAACD,KAAD,CAArB;AACD,CARM,C;;AAUA,IAAMK,4BAA4B,GAAG,SAA/BA,4BAA+B,CAACL,KAAD,EAA8D;AACxG,MAAMC,cAAyE,GAAG;AAChFC,IAAAA,KAAK,EAAE,KADyE;AAEhFC,IAAAA,GAAG,EAAE,QAF2E;AAGhFC,IAAAA,MAAM,EAAE,QAHwE,EAAlF;;;AAMA,SAAOH,cAAc,CAACD,KAAD,CAArB;AACD,CARM,C","sourcesContent":["import { MIN_SCROLL_SIZE, scrollSizeParametersNames } from './ScrollContainer.constants';\nimport { ScrollBarScrollState } from './ScrollBar';\nimport { ScrollContainerScrollStateX, ScrollContainerScrollStateY } from './ScrollContainer';\n\nexport const getScrollSizeParams = (inner: HTMLElement, axis: 'x' | 'y') => {\n const { offset, size, pos } = scrollSizeParametersNames[axis];\n\n const contentSize = inner[size];\n const scrollOffset = inner[pos];\n const containerSize = inner[offset];\n\n const scrollActive = containerSize < contentSize;\n\n let scrollSize = 0;\n let scrollPos = 0;\n\n if (scrollActive) {\n scrollSize = Math.max((containerSize / contentSize) * containerSize, MIN_SCROLL_SIZE);\n scrollPos = (scrollOffset / (contentSize - containerSize)) * (containerSize - scrollSize);\n }\n\n return {\n scrollActive,\n scrollSize,\n scrollPos,\n };\n};\n\nexport const getScrollYOffset = (element: HTMLElement, container: HTMLElement) => {\n const elementTopOffset = element.offsetTop;\n\n if (container.scrollTop > elementTopOffset) {\n return elementTopOffset;\n }\n\n const offset = elementTopOffset + element.scrollHeight - container.offsetHeight;\n if (container.scrollTop < offset) {\n return offset;\n }\n\n return container.scrollTop;\n};\n\nexport const convertScrollbarXScrollState = (state: ScrollBarScrollState): ScrollContainerScrollStateX => {\n const scrollBarState: Record<ScrollBarScrollState, ScrollContainerScrollStateX> = {\n begin: 'left',\n end: 'right',\n middle: 'scroll',\n };\n\n return scrollBarState[state];\n};\n\nexport const convertScrollbarYScrollState = (state: ScrollBarScrollState): ScrollContainerScrollStateY => {\n const scrollBarState: Record<ScrollBarScrollState, ScrollContainerScrollStateY> = {\n begin: 'top',\n end: 'bottom',\n middle: 'scroll',\n };\n\n return scrollBarState[state];\n};\n"]}
@@ -8,6 +8,7 @@ var _Emotion = require("../../lib/theming/Emotion");
8
8
  var _client = require("../../lib/client");
9
9
  var _rootNode = require("../../lib/rootNode");
10
10
  var _getDOMRect = require("../../lib/dom/getDOMRect");
11
+ var _createPropsGetter = require("../../lib/createPropsGetter");
11
12
 
12
13
  var _ScrollContainer = require("./ScrollContainer.styles");
13
14
  var _ScrollContainer2 = require("./ScrollContainer.constants");
@@ -56,6 +57,8 @@ var ScrollContainerDataTids = {
56
57
 
57
58
 
58
59
 
60
+
61
+
59
62
  ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(ScrollContainer, _React$Component);function ScrollContainer() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
60
63
 
61
64
 
@@ -74,6 +77,9 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
74
77
 
75
78
 
76
79
 
80
+ getProps = (0, _createPropsGetter.createPropsGetter)(ScrollContainer.defaultProps);_this.
81
+
82
+
77
83
 
78
84
 
79
85
 
@@ -103,7 +109,7 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
103
109
  }
104
110
 
105
111
  var innerStyle = {
106
- scrollBehavior: props.scrollBehaviour,
112
+ scrollBehavior: _this.getProps().scrollBehaviour,
107
113
  maxHeight: props.maxHeight,
108
114
  maxWidth: props.maxWidth };
109
115
 
@@ -206,7 +212,7 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
206
212
  _react.default.createElement(_ScrollBar.ScrollBar, {
207
213
  axis: axis,
208
214
  ref: refScrollBar,
209
- invert: _this.props.invert,
215
+ invert: _this.getProps().invert,
210
216
  onScrollStateChange: _this.handleScrollStateChange }));
211
217
 
212
218
 
@@ -239,7 +245,7 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
239
245
  };_this.
240
246
 
241
247
  refInner = function (element) {
242
- if (!_this.inner && element && _this.props.preventWindowScroll) {
248
+ if (!_this.inner && element && _this.getProps().preventWindowScroll) {
243
249
  element.addEventListener('wheel', _this.handleInnerScrollWheel, { passive: false });
244
250
  }
245
251
  if (_this.inner && !element) {
@@ -253,7 +259,7 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
253
259
  (_this$scrollY = _this.scrollY) == null ? void 0 : _this$scrollY.reflow();
254
260
 
255
261
  _this.props.onScroll == null ? void 0 : _this.props.onScroll(event);
256
- if (_this.props.preventWindowScroll) {
262
+ if (_this.getProps().preventWindowScroll) {
257
263
  event.preventDefault();
258
264
  return;
259
265
  }
@@ -292,9 +298,9 @@ ScrollContainer = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE_
292
298
  handleMouseLeave = function () {var _this$scrollY3, _this$scrollX3;
293
299
  (_this$scrollY3 = _this.scrollY) == null ? void 0 : _this$scrollY3.setHover(false);
294
300
  (_this$scrollX3 = _this.scrollX) == null ? void 0 : _this$scrollX3.setHover(false);
295
- };return _this;}var _proto = ScrollContainer.prototype;_proto.componentDidMount = function componentDidMount() {var _this$scrollX4, _this$scrollY4;(_this$scrollX4 = this.scrollX) == null ? void 0 : _this$scrollX4.setInnerElement(this.inner);(_this$scrollY4 = this.scrollY) == null ? void 0 : _this$scrollY4.setInnerElement(this.inner);};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (this.inner) {if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);}if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });}}}; /**
301
+ };return _this;}var _proto = ScrollContainer.prototype;_proto.componentDidMount = function componentDidMount() {var _this$scrollX4, _this$scrollY4;(_this$scrollX4 = this.scrollX) == null ? void 0 : _this$scrollX4.setInnerElement(this.inner);(_this$scrollY4 = this.scrollY) == null ? void 0 : _this$scrollY4.setInnerElement(this.inner);};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var preventWindowScroll = this.getProps().preventWindowScroll;if (this.inner) {if (prevProps.preventWindowScroll && !preventWindowScroll) {this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);}if (!prevProps.preventWindowScroll && preventWindowScroll) {this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });}}}; /**
296
302
  * @public
297
- * @param {HTMLElement} element
303
+ * @param {Element} element
298
304
  */_proto.scrollTo = function scrollTo(element) {if (!element || !this.inner) {return;}this.inner.scrollLeft = element.offsetLeft;this.inner.scrollTop = (0, _ScrollContainer3.getScrollYOffset)(element, this.inner);} /**
299
305
  * @public
300
306
  */;_proto.scrollToTop = function scrollToTop() {if (!this.inner) {return;}this.inner.scrollTop = 0;} /**
@@ -1 +1 @@
1
- {"version":3,"sources":["ScrollContainer.tsx"],"names":["ScrollContainerDataTids","root","inner","ScrollContainer","rootNode","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","styles","handleMouseMove","handleMouseLeave","refInner","globalClasses","isIE11","innerIE11","handleNativeScroll","axis","refScrollBar","refScrollBarX","refScrollBarY","invert","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","event","reflow","onScroll","preventDefault","LayoutEvents","emit","WheelEvent","shiftKey","hasScrollBar","scrollSizeParametersNames","pos","size","offset","deltaY","right","currentTarget","pageX","bottom","pageY","setHover","componentDidMount","setInnerElement","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","oneOfType","string","number","oneOf","func","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport { ScrollAxis, ScrollBar, ScrollBarScrollState } from './ScrollBar';\n\nexport type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';\nexport type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';\nexport type ScrollContainerScrollState = ScrollContainerScrollStateY; // deprecated\nexport type ScrollBehaviour = 'auto' | 'smooth';\n\nexport interface ScrollContainerProps extends CommonProps {\n /**\n * Инвертировать цвет скроллбара\n * @default false\n */\n invert: boolean;\n maxHeight?: React.CSSProperties['maxHeight'];\n maxWidth?: React.CSSProperties['maxWidth'];\n /**\n * @default false\n */\n preventWindowScroll: boolean;\n /**\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto'\n */\n scrollBehaviour?: ScrollBehaviour;\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void; // deprecated\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n /**\n * Отключение кастомного скролла\n */\n disabled?: boolean;\n}\n\nexport const ScrollContainerDataTids = {\n root: 'ScrollContainer__root',\n inner: 'ScrollContainer__inner',\n} as const;\n\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\n\n public static propTypes = {\n invert: PropTypes.bool,\n maxWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),\n preventWindowScroll: PropTypes.bool,\n onScrollStateChange: PropTypes.func,\n };\n\n public static defaultProps = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n };\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private inner: Nullable<HTMLElement>;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n if (this.inner) {\n if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n }\n }\n\n public render = () => {\n const props = this.props;\n\n if (this.props.disabled) {\n return this.props.children;\n }\n\n const innerStyle: React.CSSProperties = {\n scrollBehavior: props.scrollBehaviour,\n maxHeight: props.maxHeight,\n maxWidth: props.maxWidth,\n };\n\n const scrollbarY = this.renderScrollbar('y');\n const scrollbarX = this.renderScrollbar('x');\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={ScrollContainerDataTids.root}\n className={styles.root()}\n onMouseMove={this.handleMouseMove}\n onMouseLeave={this.handleMouseLeave}\n >\n {scrollbarY}\n {scrollbarX}\n <div\n style={innerStyle}\n ref={this.refInner}\n className={cx(styles.inner(), globalClasses.inner, isIE11 && styles.innerIE11())}\n data-tid={ScrollContainerDataTids.inner}\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {HTMLElement} element\n */\n public scrollTo(element: Nullable<HTMLElement>) {\n if (!element || !this.inner) {\n return;\n }\n\n this.inner.scrollLeft = element.offsetLeft;\n this.inner.scrollTop = getScrollYOffset(element, this.inner);\n }\n\n /**\n * @public\n */\n public scrollToTop() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = 0;\n }\n\n /**\n * @public\n */\n public scrollToBottom() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\n }\n\n /**\n * @public\n */\n public scrollToLeft() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollLeft = 0;\n }\n\n /**\n * @public\n */\n public scrollToRight() {\n if (!this.inner) {\n return;\n }\n\n this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;\n }\n\n private hasScrollBar(axis: ScrollAxis) {\n if (!this.inner) {\n return false;\n }\n\n return axis === 'x'\n ? this.inner.offsetWidth < this.inner.scrollWidth\n : this.inner.offsetHeight < this.inner.scrollHeight;\n }\n\n private renderScrollbar = (axis: ScrollAxis) => {\n const refScrollBar = axis === 'x' ? this.refScrollBarX : this.refScrollBarY;\n\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={this.props.invert}\n onScrollStateChange={this.handleScrollStateChange}\n />\n );\n };\n\n private handleScrollStateChange = (scrollState: ScrollBarScrollState, axis: ScrollAxis) => {\n if (!this.scrollY || !this.scrollX) {\n return;\n }\n\n if (axis === 'x') {\n const scrollXState = convertScrollbarXScrollState(scrollState);\n\n this.props.onScrollStateChangeX?.(scrollXState);\n return;\n }\n\n const scrollYState = convertScrollbarYScrollState(scrollState);\n\n this.props.onScrollStateChange?.(scrollYState);\n this.props.onScrollStateChangeY?.(scrollYState);\n };\n\n private refScrollBarY = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollY = scrollbar;\n };\n\n private refScrollBarX = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollX = scrollbar;\n };\n\n private refInner = (element: HTMLElement | null) => {\n if (!this.inner && element && this.props.preventWindowScroll) {\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n if (this.inner && !element) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n this.inner = element;\n };\n\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.scrollX?.reflow();\n this.scrollY?.reflow();\n\n this.props.onScroll?.(event);\n if (this.props.preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !(event instanceof WheelEvent)) {\n return;\n }\n\n const axis: ScrollAxis = event.shiftKey ? 'x' : 'y';\n\n if (this.hasScrollBar(axis)) {\n const { pos, size, offset } = scrollSizeParametersNames[axis];\n\n if (event.deltaY > 0 && this.inner[size] <= this.inner[pos] + this.inner[offset]) {\n event.preventDefault();\n return false;\n }\n if (event.deltaY < 0 && this.inner[pos] <= 0) {\n event.preventDefault();\n return false;\n }\n }\n };\n\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n const right = getDOMRect(event.currentTarget).right - event.pageX;\n const bottom = getDOMRect(event.currentTarget).bottom - event.pageY;\n\n this.scrollY?.setHover(right <= 12);\n this.scrollX?.setHover(right >= 12 && bottom <= 12);\n };\n\n private handleMouseLeave = () => {\n this.scrollY?.setHover(false);\n this.scrollX?.setHover(false);\n };\n}\n"]}
1
+ {"version":3,"sources":["ScrollContainer.tsx"],"names":["ScrollContainerDataTids","root","inner","ScrollContainer","rootNode","getProps","defaultProps","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","styles","handleMouseMove","handleMouseLeave","refInner","globalClasses","isIE11","innerIE11","handleNativeScroll","axis","refScrollBar","refScrollBarX","refScrollBarY","invert","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","event","reflow","onScroll","preventDefault","LayoutEvents","emit","WheelEvent","shiftKey","hasScrollBar","scrollSizeParametersNames","pos","size","offset","deltaY","right","currentTarget","pageX","bottom","pageY","setHover","componentDidMount","setInnerElement","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","oneOfType","string","number","oneOf","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport { ScrollAxis, ScrollBar, ScrollBarScrollState } from './ScrollBar';\n\nexport type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';\nexport type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';\nexport type ScrollContainerScrollState = ScrollContainerScrollStateY; // deprecated\nexport type ScrollBehaviour = 'auto' | 'smooth';\n\nexport interface ScrollContainerProps extends CommonProps {\n /**\n * Инвертировать цвет скроллбара\n * @default false\n */\n invert?: boolean;\n maxHeight?: React.CSSProperties['maxHeight'];\n maxWidth?: React.CSSProperties['maxWidth'];\n /**\n * @default false\n */\n preventWindowScroll?: boolean;\n /**\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto'\n */\n scrollBehaviour?: ScrollBehaviour;\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void; // deprecated\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n /**\n * Отключение кастомного скролла\n */\n disabled?: boolean;\n}\n\nexport const ScrollContainerDataTids = {\n root: 'ScrollContainer__root',\n inner: 'ScrollContainer__inner',\n} as const;\n\ntype DefaultProps = Required<Pick<ScrollContainerProps, 'invert' | 'scrollBehaviour' | 'preventWindowScroll'>>;\n\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\n\n public static propTypes = {\n invert: PropTypes.bool,\n maxWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),\n preventWindowScroll: PropTypes.bool,\n onScrollStateChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n };\n\n private getProps = createPropsGetter(ScrollContainer.defaultProps);\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private inner: Nullable<HTMLElement>;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n const preventWindowScroll = this.getProps().preventWindowScroll;\n if (this.inner) {\n if (prevProps.preventWindowScroll && !preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n }\n }\n\n public render = () => {\n const props = this.props;\n\n if (this.props.disabled) {\n return this.props.children;\n }\n\n const innerStyle: React.CSSProperties = {\n scrollBehavior: this.getProps().scrollBehaviour,\n maxHeight: props.maxHeight,\n maxWidth: props.maxWidth,\n };\n\n const scrollbarY = this.renderScrollbar('y');\n const scrollbarX = this.renderScrollbar('x');\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={ScrollContainerDataTids.root}\n className={styles.root()}\n onMouseMove={this.handleMouseMove}\n onMouseLeave={this.handleMouseLeave}\n >\n {scrollbarY}\n {scrollbarX}\n <div\n style={innerStyle}\n ref={this.refInner}\n className={cx(styles.inner(), globalClasses.inner, isIE11 && styles.innerIE11())}\n data-tid={ScrollContainerDataTids.inner}\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {Element} element\n */\n public scrollTo(element: Nullable<HTMLElement>) {\n if (!element || !this.inner) {\n return;\n }\n\n this.inner.scrollLeft = element.offsetLeft;\n this.inner.scrollTop = getScrollYOffset(element, this.inner);\n }\n\n /**\n * @public\n */\n public scrollToTop() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = 0;\n }\n\n /**\n * @public\n */\n public scrollToBottom() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\n }\n\n /**\n * @public\n */\n public scrollToLeft() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollLeft = 0;\n }\n\n /**\n * @public\n */\n public scrollToRight() {\n if (!this.inner) {\n return;\n }\n\n this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;\n }\n\n private hasScrollBar(axis: ScrollAxis) {\n if (!this.inner) {\n return false;\n }\n\n return axis === 'x'\n ? this.inner.offsetWidth < this.inner.scrollWidth\n : this.inner.offsetHeight < this.inner.scrollHeight;\n }\n\n private renderScrollbar = (axis: ScrollAxis) => {\n const refScrollBar = axis === 'x' ? this.refScrollBarX : this.refScrollBarY;\n\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={this.getProps().invert}\n onScrollStateChange={this.handleScrollStateChange}\n />\n );\n };\n\n private handleScrollStateChange = (scrollState: ScrollBarScrollState, axis: ScrollAxis) => {\n if (!this.scrollY || !this.scrollX) {\n return;\n }\n\n if (axis === 'x') {\n const scrollXState = convertScrollbarXScrollState(scrollState);\n\n this.props.onScrollStateChangeX?.(scrollXState);\n return;\n }\n\n const scrollYState = convertScrollbarYScrollState(scrollState);\n\n this.props.onScrollStateChange?.(scrollYState);\n this.props.onScrollStateChangeY?.(scrollYState);\n };\n\n private refScrollBarY = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollY = scrollbar;\n };\n\n private refScrollBarX = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollX = scrollbar;\n };\n\n private refInner = (element: HTMLElement | null) => {\n if (!this.inner && element && this.getProps().preventWindowScroll) {\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n if (this.inner && !element) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n this.inner = element;\n };\n\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.scrollX?.reflow();\n this.scrollY?.reflow();\n\n this.props.onScroll?.(event);\n if (this.getProps().preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !(event instanceof WheelEvent)) {\n return;\n }\n\n const axis: ScrollAxis = event.shiftKey ? 'x' : 'y';\n\n if (this.hasScrollBar(axis)) {\n const { pos, size, offset } = scrollSizeParametersNames[axis];\n\n if (event.deltaY > 0 && this.inner[size] <= this.inner[pos] + this.inner[offset]) {\n event.preventDefault();\n return false;\n }\n if (event.deltaY < 0 && this.inner[pos] <= 0) {\n event.preventDefault();\n return false;\n }\n }\n };\n\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n const right = getDOMRect(event.currentTarget).right - event.pageX;\n const bottom = getDOMRect(event.currentTarget).bottom - event.pageY;\n\n this.scrollY?.setHover(right <= 12);\n this.scrollX?.setHover(right >= 12 && bottom <= 12);\n };\n\n private handleMouseLeave = () => {\n this.scrollY?.setHover(false);\n this.scrollX?.setHover(false);\n };\n}\n"]}
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
- export declare class Item extends React.Component<{
2
+ interface ItemProps {
3
3
  children?: React.ReactNode;
4
- }> {
4
+ }
5
+ export declare class Item extends React.Component<ItemProps> {
5
6
  static __KONTUR_REACT_UI__: string;
6
7
  render(): JSX.Element;
7
8
  }
9
+ export {};
@@ -2,6 +2,9 @@
2
2
 
3
3
  var _MenuItem = require("../MenuItem");var
4
4
 
5
+
6
+
7
+
5
8
  Item = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(Item, _React$Component);function Item() {return _React$Component.apply(this, arguments) || this;}var _proto = Item.prototype;_proto.
6
9
 
7
10
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Item.tsx"],"names":["Item","render","props","children","React","Component","__KONTUR_REACT_UI__"],"mappings":"gPAAA;;AAEA,uC;;AAEaA,I;;;AAGJC,EAAAA,M,GAAP,kBAAgB;AACd,wBAAO,6BAAC,kBAAD,QAAW,KAAKC,KAAL,CAAWC,QAAtB,CAAP;AACD,G,eALuBC,eAAMC,S,sBAAnBL,I,CACGM,mB,GAAsB,Y","sourcesContent":["import React from 'react';\n\nimport { MenuItem } from '../MenuItem';\n\nexport class Item extends React.Component<{ children?: React.ReactNode }> {\n public static __KONTUR_REACT_UI__ = 'SelectItem';\n\n public render() {\n return <MenuItem>{this.props.children}</MenuItem>;\n }\n}\n"]}
1
+ {"version":3,"sources":["Item.tsx"],"names":["Item","render","props","children","React","Component","__KONTUR_REACT_UI__"],"mappings":"gPAAA;;AAEA,uC;;;;;AAKaA,I;;;AAGJC,EAAAA,M,GAAP,kBAAgB;AACd,wBAAO,6BAAC,kBAAD,QAAW,KAAKC,KAAL,CAAWC,QAAtB,CAAP;AACD,G,eALuBC,eAAMC,S,sBAAnBL,I,CACGM,mB,GAAsB,Y","sourcesContent":["import React from 'react';\n\nimport { MenuItem } from '../MenuItem';\n\ninterface ItemProps {\n children?: React.ReactNode;\n}\nexport class Item extends React.Component<ItemProps> {\n public static __KONTUR_REACT_UI__ = 'SelectItem';\n\n public render() {\n return <MenuItem>{this.props.children}</MenuItem>;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { ReactNode, ReactPortal } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { ButtonSize, ButtonUse } from '../Button';
4
4
  import { Nullable } from '../../typings/utility-types';
@@ -106,6 +106,7 @@ export interface SelectState<TValue> {
106
106
  searchPattern: string;
107
107
  value: Nullable<TValue>;
108
108
  }
109
+ declare type DefaultProps<TValue, TItem> = Required<Pick<SelectProps<TValue, TItem>, 'renderValue' | 'renderItem' | 'areValuesEqual' | 'filterItem' | 'use'>>;
109
110
  export declare class Select<TValue = {}, TItem = {}> extends React.Component<SelectProps<TValue, TItem>, SelectState<TValue>> {
110
111
  static __KONTUR_REACT_UI__: string;
111
112
  static propTypes: {
@@ -130,13 +131,7 @@ export declare class Select<TValue = {}, TItem = {}> extends React.Component<Sel
130
131
  onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
131
132
  onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
132
133
  };
133
- static defaultProps: {
134
- renderValue: typeof renderValue;
135
- renderItem: typeof renderItem;
136
- areValuesEqual: typeof areValuesEqual;
137
- filterItem: typeof filterItem;
138
- use: string;
139
- };
134
+ static defaultProps: DefaultProps<unknown, ReactNode | ReactPortal>;
140
135
  static Item: typeof Item;
141
136
  static SEP: () => JSX.Element;
142
137
  static static: (element: React.ReactElement | (() => React.ReactElement)) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | (() => React.ReactElement);
@@ -187,8 +182,4 @@ export declare class Select<TValue = {}, TItem = {}> extends React.Component<Sel
187
182
  private buttonRef;
188
183
  private getButton;
189
184
  }
190
- declare function renderValue<TValue, TItem>(value: TValue, item: Nullable<TItem>): Nullable<TItem>;
191
- declare function renderItem<TValue, TItem>(value: TValue, item?: TItem): TItem | undefined;
192
- declare function areValuesEqual<TValue>(value1: TValue, value2: TValue): boolean;
193
- declare function filterItem<TValue>(value: TValue, item: any, pattern: string): boolean;
194
185
  export {};
@@ -160,6 +160,12 @@ var SelectDataTids = {
160
160
 
161
161
 
162
162
 
163
+
164
+
165
+
166
+
167
+
168
+
163
169
 
164
170
 
165
171
 
@@ -493,6 +499,7 @@ Select = (_dec = (0, _decorators.locale)('Select', _locale.SelectLocaleHelper),
493
499
 
494
500
 
495
501
 
502
+
496
503
 
497
504
 
498
505
  getSearch = function (noMargin) {var _cx;
@@ -681,7 +688,7 @@ Select = (_dec = (0, _decorators.locale)('Select', _locale.SelectLocaleHelper),
681
688
  buttonElement;
682
689
  };return _this;}var _proto = Select.prototype;_proto.componentDidUpdate = function componentDidUpdate(_prevProps, prevState) {if (!prevState.opened && this.state.opened) {window.addEventListener('popstate', this.close);}if (prevState.opened && !this.state.opened) {window.removeEventListener('popstate', this.close);}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain());});} /**
683
690
  * @public
684
- */;_proto.getMenuRenderer = function getMenuRenderer() {if (this.props.disabled) {return null;}if (this.isMobileLayout) {return this.renderMobileMenu();}if (this.state.opened) {return this.renderMenu();}return null;};_proto.renderMain = function renderMain() {var _cx2;var buttonParams = this.getDefaultButtonParams();var button = this.getButton(buttonParams);var isMobile = this.isMobileLayout;var style = { width: this.props.width, maxWidth: this.props.maxWidth || undefined };var root = /*#__PURE__*/_react.default.createElement("span", { "data-tid": SelectDataTids.root, className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Select.styles.root()] = true, _cx2[_Select.styles.rootMobile(this.theme)] = isMobile, _cx2)), style: style }, button, this.getMenuRenderer());return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: isMobile ? false : this.state.opened }, root));};_proto.renderLabel = function renderLabel() {var _this$locale;var value = this.getValue();var item = this.getItemByValue(value);if ((0, _utils.isNonNullable)(value)) {return { label: this.getProps().renderValue(value, item), isPlaceholder: false };}return { label: /*#__PURE__*/_react.default.createElement("span", null, this.props.placeholder || ((_this$locale = this.locale) == null ? void 0 : _this$locale.placeholder)), isPlaceholder: true };};_proto.getLeftIconClass = function getLeftIconClass(size) {if (this.props.use === 'link') {return _Select.styles.leftIconLink(this.theme);}switch (size) {case 'large':return _Select.styles.leftIconLarge(this.theme);case 'medium':return _Select.styles.leftIconMedium(this.theme);case 'small':default:return _Select.styles.leftIconSmall(this.theme);}};_proto.renderDefaultButton = function renderDefaultButton(params) {var _cx3, _cx4;var buttonProps = (0, _extends2.default)({}, (0, _filterProps.filterProps)(this.props, PASS_BUTTON_PROPS), { align: 'left', disabled: this.props.disabled, width: '100%', onClick: params.onClick, onKeyDown: params.onKeyDown, active: params.opened });var labelProps = { className: (0, _Emotion.cx)((_cx3 = {}, _cx3[_Select.styles.label()] = this.props.use !== 'link', _cx3[_Select.styles.placeholder(this.theme)] = params.isPlaceholder, _cx3[_Select.styles.customUsePlaceholder()] = params.isPlaceholder && this.props.use !== 'default', _cx3[_Select.styles.placeholderDisabled(this.theme)] = params.isPlaceholder && this.props.disabled, _cx3)), style: { paddingRight: this.getSelectIconGap() } };var useIsCustom = this.props.use !== 'default';return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _selectTheme.getSelectTheme)(this.theme, this.props) }, /*#__PURE__*/_react.default.createElement(_Button.Button, buttonProps, /*#__PURE__*/_react.default.createElement("div", { className: _Select.styles.selectButtonContainer() }, this.props._icon && /*#__PURE__*/_react.default.createElement("div", { className: this.getLeftIconClass(this.props.size) }, this.props._icon), /*#__PURE__*/_react.default.createElement("span", labelProps, params.label), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Select.styles.arrowWrap(this.theme), (_cx4 = {}, _cx4[_Select.styles.arrowDisabled(this.theme)] = this.props.disabled, _cx4[_Select.styles.customUseArrow()] = useIsCustom, _cx4)) }, /*#__PURE__*/_react.default.createElement(_px.ArrowChevronDownIcon, null)))));};_proto.getSelectIconGap = function getSelectIconGap() {var _this3 = this;var getArrowPadding = function getArrowPadding() {switch (_this3.props.size) {case 'large':return _this3.theme.selectIconGapLarge;case 'medium':return _this3.theme.selectIconGapMedium;case 'small':default:return _this3.theme.selectIconGapSmall;}};var arrowLeftPadding = parseFloat(getArrowPadding()) || 0;return arrowLeftPadding;};_proto.renderMenu = function renderMenu() {var search = this.props.search ? /*#__PURE__*/_react.default.createElement("div", { className: _Select.styles.search(), onKeyDown: this.handleKey }, /*#__PURE__*/_react.default.createElement(_Input.Input, { ref: this.focusInput, onValueChange: this.handleSearch, width: "100%" })) : null;var value = this.getValue();var hasFixedWidth = !!this.props.menuWidth && this.props.menuWidth !== 'auto';return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { getParent: this.dropdownContainerGetParent, offsetY: -1, align: this.props.menuAlign, disablePortal: this.props.disablePortal, hasFixedWidth: hasFixedWidth }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { ref: this.refMenu, width: this.props.menuWidth, onItemClick: this.close, maxHeight: this.props.maxMenuHeight, align: this.props.menuAlign }, search, this.getMenuItems(value)));};_proto.renderMobileMenu = function renderMobileMenu() {var search = this.props.search ? this.getSearch(true) : null;var value = this.getValue();var isWithSearch = Boolean(search);return /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { headerChildComponent: search, caption: this.props.mobileMenuHeaderText, useFullHeight: isWithSearch, onCloseRequest: this.close, opened: this.state.opened }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { hasShadow: false, onItemClick: this.close, disableScrollContainer: true, maxHeight: 'auto' }, this.getMenuItems(value)));};_proto.select = function select(value) {this.focus();this.setState({ opened: false, value: value });if (!this.areValuesEqual(this.getValue(), value)) {var _this$props$onValueCh, _this$props;(_this$props$onValueCh = (_this$props = this.props).onValueChange) == null ? void 0 : _this$props$onValueCh.call(_this$props, value);}};_proto.getValue = function getValue() {if (this.props.value !== undefined) {return this.props.value;}return this.state.value;};_proto.mapItems = function mapItems(fn) {var items = this.props.items;if (!items) {return [];}var pattern = this.state.searchPattern && this.state.searchPattern.toLowerCase();var result = [];var index = 0;for (var _iterator = _createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {var entry = _step.value;var _normalizeEntry = normalizeEntry(entry),_value = _normalizeEntry[0],_item = _normalizeEntry[1],_comment = _normalizeEntry[2];if (!pattern || this.getProps().filterItem(_value, _item, pattern)) {result.push(fn(_value, _item, index, _comment));++index;}}return result;};_proto.getItemByValue = function getItemByValue(value) {if (value === null || value === undefined) {return null;}var items = this.props.items || [];for (var _iterator2 = _createForOfIteratorHelperLoose(items), _step2; !(_step2 = _iterator2()).done;) {var entry = _step2.value;var _normalizeEntry2 = normalizeEntry(entry),itemValue = _normalizeEntry2[0],_item2 = _normalizeEntry2[1];if (this.areValuesEqual(itemValue, value)) {return _item2;}}return null;};_proto.areValuesEqual = function areValuesEqual(value1, value2) {return (0, _utils.isNonNullable)(value1) && (0, _utils.isNonNullable)(value2) && this.getProps().areValuesEqual(value1, value2);};return Select;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Select', _class2.propTypes = { areValuesEqual: _propTypes.default.func, defaultValue: _propTypes.default.any, disablePortal: _propTypes.default.bool, disabled: _propTypes.default.bool, error: _propTypes.default.bool, filterItem: _propTypes.default.func, items: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.object]), maxMenuHeight: _propTypes.default.number, maxWidth: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), placeholder: _propTypes.default.node, renderItem: _propTypes.default.func, renderValue: _propTypes.default.func, search: _propTypes.default.bool, value: _propTypes.default.any, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), onValueChange: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, onKeyDown: _propTypes.default.func }, _class2.defaultProps = { renderValue: renderValue, renderItem: renderItem, areValuesEqual: areValuesEqual, filterItem: filterItem, use: 'default' }, _class2.Item = _Item.Item, _class2.SEP = function () {return /*#__PURE__*/_react.default.createElement(_MenuSeparator.MenuSeparator, null);}, _class2.static = function (element) {(0, _invariant.default)( /*#__PURE__*/_react.default.isValidElement(element) || typeof element === 'function', 'Select.static(element) expects element to be a valid react element.');return element;}, _temp)) || _class) || _class) || _class);exports.Select = Select;
691
+ */;_proto.getMenuRenderer = function getMenuRenderer() {if (this.props.disabled) {return null;}if (this.isMobileLayout) {return this.renderMobileMenu();}if (this.state.opened) {return this.renderMenu();}return null;};_proto.renderMain = function renderMain() {var _cx2;var buttonParams = this.getDefaultButtonParams();var button = this.getButton(buttonParams);var isMobile = this.isMobileLayout;var style = { width: this.props.width, maxWidth: this.props.maxWidth || undefined };var root = /*#__PURE__*/_react.default.createElement("span", { "data-tid": SelectDataTids.root, className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Select.styles.root()] = true, _cx2[_Select.styles.rootMobile(this.theme)] = isMobile, _cx2)), style: style }, button, this.getMenuRenderer());return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: isMobile ? false : this.state.opened }, root));};_proto.renderLabel = function renderLabel() {var _this$locale;var value = this.getValue();var item = this.getItemByValue(value);if ((0, _utils.isNonNullable)(value)) {return { label: this.getProps().renderValue(value, item), isPlaceholder: false };}return { label: /*#__PURE__*/_react.default.createElement("span", null, this.props.placeholder || ((_this$locale = this.locale) == null ? void 0 : _this$locale.placeholder)), isPlaceholder: true };};_proto.getLeftIconClass = function getLeftIconClass(size) {if (this.getProps().use === 'link') {return _Select.styles.leftIconLink(this.theme);}switch (size) {case 'large':return _Select.styles.leftIconLarge(this.theme);case 'medium':return _Select.styles.leftIconMedium(this.theme);case 'small':default:return _Select.styles.leftIconSmall(this.theme);}};_proto.renderDefaultButton = function renderDefaultButton(params) {var _cx3, _cx4;var buttonProps = (0, _extends2.default)({}, (0, _filterProps.filterProps)(this.props, PASS_BUTTON_PROPS), { align: 'left', disabled: this.props.disabled, width: '100%', onClick: params.onClick, onKeyDown: params.onKeyDown, active: params.opened });var use = this.getProps().use;var labelProps = { className: (0, _Emotion.cx)((_cx3 = {}, _cx3[_Select.styles.label()] = use !== 'link', _cx3[_Select.styles.placeholder(this.theme)] = params.isPlaceholder, _cx3[_Select.styles.customUsePlaceholder()] = params.isPlaceholder && use !== 'default', _cx3[_Select.styles.placeholderDisabled(this.theme)] = params.isPlaceholder && this.props.disabled, _cx3)), style: { paddingRight: this.getSelectIconGap() } };var useIsCustom = use !== 'default';return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _selectTheme.getSelectTheme)(this.theme, this.props) }, /*#__PURE__*/_react.default.createElement(_Button.Button, buttonProps, /*#__PURE__*/_react.default.createElement("div", { className: _Select.styles.selectButtonContainer() }, this.props._icon && /*#__PURE__*/_react.default.createElement("div", { className: this.getLeftIconClass(this.props.size) }, this.props._icon), /*#__PURE__*/_react.default.createElement("span", labelProps, params.label), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Select.styles.arrowWrap(this.theme), (_cx4 = {}, _cx4[_Select.styles.arrowDisabled(this.theme)] = this.props.disabled, _cx4[_Select.styles.customUseArrow()] = useIsCustom, _cx4)) }, /*#__PURE__*/_react.default.createElement(_px.ArrowChevronDownIcon, null)))));};_proto.getSelectIconGap = function getSelectIconGap() {var _this3 = this;var getArrowPadding = function getArrowPadding() {switch (_this3.props.size) {case 'large':return _this3.theme.selectIconGapLarge;case 'medium':return _this3.theme.selectIconGapMedium;case 'small':default:return _this3.theme.selectIconGapSmall;}};var arrowLeftPadding = parseFloat(getArrowPadding()) || 0;return arrowLeftPadding;};_proto.renderMenu = function renderMenu() {var search = this.props.search ? /*#__PURE__*/_react.default.createElement("div", { className: _Select.styles.search(), onKeyDown: this.handleKey }, /*#__PURE__*/_react.default.createElement(_Input.Input, { ref: this.focusInput, onValueChange: this.handleSearch, width: "100%" })) : null;var value = this.getValue();var hasFixedWidth = !!this.props.menuWidth && this.props.menuWidth !== 'auto';return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { getParent: this.dropdownContainerGetParent, offsetY: -1, align: this.props.menuAlign, disablePortal: this.props.disablePortal, hasFixedWidth: hasFixedWidth }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { ref: this.refMenu, width: this.props.menuWidth, onItemClick: this.close, maxHeight: this.props.maxMenuHeight, align: this.props.menuAlign }, search, this.getMenuItems(value)));};_proto.renderMobileMenu = function renderMobileMenu() {var search = this.props.search ? this.getSearch(true) : null;var value = this.getValue();var isWithSearch = Boolean(search);return /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { headerChildComponent: search, caption: this.props.mobileMenuHeaderText, useFullHeight: isWithSearch, onCloseRequest: this.close, opened: this.state.opened }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { hasShadow: false, onItemClick: this.close, disableScrollContainer: true, maxHeight: 'auto' }, this.getMenuItems(value)));};_proto.select = function select(value) {this.focus();this.setState({ opened: false, value: value });if (!this.areValuesEqual(this.getValue(), value)) {var _this$props$onValueCh, _this$props;(_this$props$onValueCh = (_this$props = this.props).onValueChange) == null ? void 0 : _this$props$onValueCh.call(_this$props, value);}};_proto.getValue = function getValue() {if (this.props.value !== undefined) {return this.props.value;}return this.state.value;};_proto.mapItems = function mapItems(fn) {var items = this.props.items;if (!items) {return [];}var pattern = this.state.searchPattern && this.state.searchPattern.toLowerCase();var result = [];var index = 0;for (var _iterator = _createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {var entry = _step.value;var _normalizeEntry = normalizeEntry(entry),_value = _normalizeEntry[0],_item = _normalizeEntry[1],_comment = _normalizeEntry[2];if (!pattern || this.getProps().filterItem(_value, _item, pattern)) {result.push(fn(_value, _item, index, _comment));++index;}}return result;};_proto.getItemByValue = function getItemByValue(value) {if (value === null || value === undefined) {return null;}var items = this.props.items || [];for (var _iterator2 = _createForOfIteratorHelperLoose(items), _step2; !(_step2 = _iterator2()).done;) {var entry = _step2.value;var _normalizeEntry2 = normalizeEntry(entry),itemValue = _normalizeEntry2[0],_item2 = _normalizeEntry2[1];if (this.areValuesEqual(itemValue, value)) {return _item2;}}return null;};_proto.areValuesEqual = function areValuesEqual(value1, value2) {return (0, _utils.isNonNullable)(value1) && (0, _utils.isNonNullable)(value2) && this.getProps().areValuesEqual(value1, value2);};return Select;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Select', _class2.propTypes = { areValuesEqual: _propTypes.default.func, defaultValue: _propTypes.default.any, disablePortal: _propTypes.default.bool, disabled: _propTypes.default.bool, error: _propTypes.default.bool, filterItem: _propTypes.default.func, items: _propTypes.default.oneOfType([_propTypes.default.array, _propTypes.default.object]), maxMenuHeight: _propTypes.default.number, maxWidth: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), placeholder: _propTypes.default.node, renderItem: _propTypes.default.func, renderValue: _propTypes.default.func, search: _propTypes.default.bool, value: _propTypes.default.any, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]), onValueChange: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, onKeyDown: _propTypes.default.func }, _class2.defaultProps = { renderValue: renderValue, renderItem: renderItem, areValuesEqual: areValuesEqual, filterItem: filterItem, use: 'default' }, _class2.Item = _Item.Item, _class2.SEP = function () {return /*#__PURE__*/_react.default.createElement(_MenuSeparator.MenuSeparator, null);}, _class2.static = function (element) {(0, _invariant.default)( /*#__PURE__*/_react.default.isValidElement(element) || typeof element === 'function', 'Select.static(element) expects element to be a valid react element.');return element;}, _temp)) || _class) || _class) || _class);exports.Select = Select;
685
692
  function renderValue(value, item) {
686
693
  return item;
687
694
  }