@skbkontur/react-ui 5.2.1 → 5.3.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 (554) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +7 -7
  3. package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
  4. package/cjs/components/Autocomplete/Autocomplete.js +49 -46
  5. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/cjs/components/Button/Button.d.ts +2 -0
  7. package/cjs/components/Button/Button.js +29 -1
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Button/Button.styles.d.ts +6 -0
  10. package/cjs/components/Button/Button.styles.js +107 -75
  11. package/cjs/components/Button/Button.styles.js.map +1 -1
  12. package/cjs/components/Calendar/Calendar.d.ts +2 -0
  13. package/cjs/components/Calendar/Calendar.js +1 -0
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Center/Center.d.ts +2 -0
  16. package/cjs/components/Center/Center.js +1 -0
  17. package/cjs/components/Center/Center.js.map +1 -1
  18. package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
  19. package/cjs/components/Checkbox/Checkbox.js +2 -14
  20. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  21. package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
  22. package/cjs/components/ComboBox/ComboBox.js +1 -0
  23. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  24. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  25. package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
  26. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  27. package/cjs/components/CurrencyInput/constants.js +1 -2
  28. package/cjs/components/CurrencyInput/constants.js.map +1 -1
  29. package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
  30. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  31. package/cjs/components/DateInput/DateInput.d.ts +2 -0
  32. package/cjs/components/DateInput/DateInput.js +1 -0
  33. package/cjs/components/DateInput/DateInput.js.map +1 -1
  34. package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
  35. package/cjs/components/DatePicker/DatePicker.js +6 -60
  36. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  37. package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
  38. package/cjs/components/Dropdown/Dropdown.js +2 -82
  39. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  40. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  41. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
  42. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  43. package/cjs/components/FxInput/FxInput.d.ts +2 -5
  44. package/cjs/components/FxInput/FxInput.js +2 -7
  45. package/cjs/components/FxInput/FxInput.js.map +1 -1
  46. package/cjs/components/Gapped/Gapped.d.ts +2 -15
  47. package/cjs/components/Gapped/Gapped.js +1 -24
  48. package/cjs/components/Gapped/Gapped.js.map +1 -1
  49. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  50. package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
  51. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  52. package/cjs/components/Group/Group.d.ts +5 -4
  53. package/cjs/components/Group/Group.js +91 -40
  54. package/cjs/components/Group/Group.js.map +1 -1
  55. package/cjs/components/Group/Group.styles.d.ts +1 -0
  56. package/cjs/components/Group/Group.styles.js +12 -6
  57. package/cjs/components/Group/Group.styles.js.map +1 -1
  58. package/cjs/components/Hint/Hint.d.ts +2 -0
  59. package/cjs/components/Hint/Hint.js +1 -0
  60. package/cjs/components/Hint/Hint.js.map +1 -1
  61. package/cjs/components/Input/Input.d.ts +2 -0
  62. package/cjs/components/Input/Input.js +1 -0
  63. package/cjs/components/Input/Input.js.map +1 -1
  64. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  65. package/cjs/components/Kebab/Kebab.js +2 -26
  66. package/cjs/components/Kebab/Kebab.js.map +1 -1
  67. package/cjs/components/Link/Link.d.ts +2 -0
  68. package/cjs/components/Link/Link.js +1 -0
  69. package/cjs/components/Link/Link.js.map +1 -1
  70. package/cjs/components/Loader/Loader.d.ts +6 -36
  71. package/cjs/components/Loader/Loader.js +3 -57
  72. package/cjs/components/Loader/Loader.js.map +1 -1
  73. package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
  74. package/cjs/components/MaskedInput/MaskedInput.js +17 -1
  75. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  76. package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
  77. package/cjs/components/MenuItem/MenuItem.js +2 -22
  78. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  79. package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
  80. package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
  81. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
  82. package/cjs/components/MiniModal/MiniModalBody.js +17 -2
  83. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
  84. package/cjs/components/Modal/Modal.styles.d.ts +1 -0
  85. package/cjs/components/Modal/Modal.styles.js +36 -28
  86. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  87. package/cjs/components/Modal/ModalBody.d.ts +2 -0
  88. package/cjs/components/Modal/ModalBody.js +1 -0
  89. package/cjs/components/Modal/ModalBody.js.map +1 -1
  90. package/cjs/components/Modal/ModalHeader.d.ts +5 -0
  91. package/cjs/components/Modal/ModalHeader.js +8 -1
  92. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  93. package/cjs/components/Paging/DotsIcon.d.ts +3 -0
  94. package/cjs/components/Paging/DotsIcon.js +13 -0
  95. package/cjs/components/Paging/DotsIcon.js.map +1 -0
  96. package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
  97. package/cjs/components/Paging/ForwardIcon.js +13 -1
  98. package/cjs/components/Paging/ForwardIcon.js.map +1 -1
  99. package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
  100. package/cjs/components/Paging/NavigationHelper.js +8 -6
  101. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  102. package/cjs/components/Paging/Paging.d.ts +13 -2
  103. package/cjs/components/Paging/Paging.js +120 -50
  104. package/cjs/components/Paging/Paging.js.map +1 -1
  105. package/cjs/components/Paging/Paging.styles.d.ts +24 -1
  106. package/cjs/components/Paging/Paging.styles.js +151 -22
  107. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  108. package/cjs/components/Paging/PagingHelper.d.ts +1 -1
  109. package/cjs/components/Paging/PagingHelper.js +18 -11
  110. package/cjs/components/Paging/PagingHelper.js.map +1 -1
  111. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -7
  112. package/cjs/components/PasswordInput/PasswordInput.js +2 -11
  113. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  114. package/cjs/components/Radio/Radio.d.ts +2 -0
  115. package/cjs/components/Radio/Radio.js +1 -0
  116. package/cjs/components/Radio/Radio.js.map +1 -1
  117. package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
  118. package/cjs/components/RadioGroup/RadioGroup.js +1 -0
  119. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  120. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  121. package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
  122. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  123. package/cjs/components/Select/Select.d.ts +2 -0
  124. package/cjs/components/Select/Select.js +1 -0
  125. package/cjs/components/Select/Select.js.map +1 -1
  126. package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
  127. package/cjs/components/SidePage/SidePage.styles.js +52 -38
  128. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  129. package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
  130. package/cjs/components/SidePage/SidePageBody.js +1 -0
  131. package/cjs/components/SidePage/SidePageBody.js.map +1 -1
  132. package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
  133. package/cjs/components/SidePage/SidePageContainer.js +1 -0
  134. package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
  135. package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
  136. package/cjs/components/SidePage/SidePageFooter.js +1 -0
  137. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  138. package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
  139. package/cjs/components/SidePage/SidePageHeader.js +60 -19
  140. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  141. package/cjs/components/Spinner/Spinner.d.ts +2 -18
  142. package/cjs/components/Spinner/Spinner.js +2 -32
  143. package/cjs/components/Spinner/Spinner.js.map +1 -1
  144. package/cjs/components/Sticky/Sticky.d.ts +2 -13
  145. package/cjs/components/Sticky/Sticky.js +2 -22
  146. package/cjs/components/Sticky/Sticky.js.map +1 -1
  147. package/cjs/components/Switcher/Switcher.d.ts +6 -21
  148. package/cjs/components/Switcher/Switcher.js +11 -20
  149. package/cjs/components/Switcher/Switcher.js.map +1 -1
  150. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  151. package/cjs/components/Switcher/Switcher.styles.js +17 -9
  152. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  153. package/cjs/components/Tabs/Indicator.d.ts +2 -0
  154. package/cjs/components/Tabs/Indicator.js +1 -0
  155. package/cjs/components/Tabs/Indicator.js.map +1 -1
  156. package/cjs/components/Tabs/Tab.d.ts +2 -0
  157. package/cjs/components/Tabs/Tab.js +1 -0
  158. package/cjs/components/Tabs/Tab.js.map +1 -1
  159. package/cjs/components/Tabs/Tabs.d.ts +2 -0
  160. package/cjs/components/Tabs/Tabs.js +1 -0
  161. package/cjs/components/Tabs/Tabs.js.map +1 -1
  162. package/cjs/components/Textarea/Textarea.d.ts +2 -44
  163. package/cjs/components/Textarea/Textarea.js +2 -56
  164. package/cjs/components/Textarea/Textarea.js.map +1 -1
  165. package/cjs/components/Textarea/TextareaCounter.js +2 -13
  166. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  167. package/cjs/components/Toast/Toast.d.ts +2 -0
  168. package/cjs/components/Toast/Toast.js +1 -0
  169. package/cjs/components/Toast/Toast.js.map +1 -1
  170. package/cjs/components/Toast/ToastView.d.ts +2 -14
  171. package/cjs/components/Toast/ToastView.js +3 -22
  172. package/cjs/components/Toast/ToastView.js.map +1 -1
  173. package/cjs/components/Toggle/Toggle.d.ts +2 -10
  174. package/cjs/components/Toggle/Toggle.js +1 -11
  175. package/cjs/components/Toggle/Toggle.js.map +1 -1
  176. package/cjs/components/Token/Token.d.ts +2 -0
  177. package/cjs/components/Token/Token.js +1 -0
  178. package/cjs/components/Token/Token.js.map +1 -1
  179. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  180. package/cjs/components/TokenInput/TokenInput.js +1 -0
  181. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  182. package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
  183. package/cjs/components/Tooltip/Tooltip.js +95 -13
  184. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  185. package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
  186. package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
  187. package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
  188. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  189. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
  190. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  191. package/cjs/index.d.ts +1 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  194. package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
  195. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  196. package/cjs/internal/ComponentTable.js +2 -3
  197. package/cjs/internal/ComponentTable.js.map +1 -1
  198. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  199. package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -0
  200. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  201. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  202. package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
  203. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  204. package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
  205. package/cjs/internal/DateSelect/DateSelect.js +1 -18
  206. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  207. package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
  208. package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
  209. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  210. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
  211. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  212. package/cjs/internal/InputLikeText/InputLikeText.d.ts +2 -0
  213. package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
  214. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  215. package/cjs/internal/Menu/Menu.d.ts +2 -0
  216. package/cjs/internal/Menu/Menu.js +1 -0
  217. package/cjs/internal/Menu/Menu.js.map +1 -1
  218. package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
  219. package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
  220. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  221. package/cjs/internal/Popup/Popup.d.ts +41 -59
  222. package/cjs/internal/Popup/Popup.js +36 -79
  223. package/cjs/internal/Popup/Popup.js.map +1 -1
  224. package/cjs/internal/Popup/PopupPin.d.ts +23 -33
  225. package/cjs/internal/Popup/PopupPin.js +2 -35
  226. package/cjs/internal/Popup/PopupPin.js.map +1 -1
  227. package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
  228. package/cjs/internal/Popup/PopupPinNew.js +180 -0
  229. package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
  230. package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  231. package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
  232. package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
  233. package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
  234. package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
  235. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  236. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  237. package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
  238. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  239. package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
  240. package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
  241. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  242. package/cjs/internal/ThemePlayground/Playground.js +1 -1
  243. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  244. package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
  245. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  246. package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
  247. package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
  248. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  249. package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
  250. package/cjs/internal/ZIndex/ZIndex.js +5 -1
  251. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  252. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  253. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
  254. package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
  255. package/cjs/internal/themes/BasicTheme.d.ts +112 -20
  256. package/cjs/internal/themes/BasicTheme.js +149 -18
  257. package/cjs/internal/themes/BasicTheme.js.map +1 -1
  258. package/cjs/internal/themes/DarkTheme5_2.js +1 -1
  259. package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
  260. package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
  261. package/cjs/internal/themes/DarkTheme5_3.js +13 -0
  262. package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
  263. package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
  264. package/cjs/internal/themes/LightTheme5_3.js +13 -0
  265. package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
  266. package/cjs/lib/delay.mts +3 -0
  267. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  268. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  269. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +11 -1
  270. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  271. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  272. package/cjs/lib/forwardRefAndName.js +0 -1
  273. package/cjs/lib/forwardRefAndName.js.map +1 -1
  274. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  275. package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
  276. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  277. package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
  278. package/cjs/lib/theming/ThemeVersions.js.map +1 -1
  279. package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
  280. package/cjs/lib/theming/themes/DarkTheme.js +4 -2
  281. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  282. package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
  283. package/cjs/lib/theming/themes/LightTheme.js +4 -2
  284. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  285. package/cjs/lib/utils.d.ts +4 -0
  286. package/cjs/lib/utils.js +5 -1
  287. package/cjs/lib/utils.js.map +1 -1
  288. package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
  289. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  290. package/components/Autocomplete/Autocomplete.d.ts +6 -23
  291. package/components/Button/Button/Button.js +26 -5
  292. package/components/Button/Button/Button.js.map +1 -1
  293. package/components/Button/Button.d.ts +2 -0
  294. package/components/Button/Button.styles/Button.styles.js +78 -60
  295. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  296. package/components/Button/Button.styles.d.ts +6 -0
  297. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  298. package/components/Calendar/Calendar.d.ts +2 -0
  299. package/components/Center/Center/Center.js.map +1 -1
  300. package/components/Center/Center.d.ts +2 -0
  301. package/components/Checkbox/Checkbox/Checkbox.js +0 -11
  302. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  303. package/components/Checkbox/Checkbox.d.ts +2 -12
  304. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  305. package/components/ComboBox/ComboBox.d.ts +2 -0
  306. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -36
  307. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  308. package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
  309. package/components/CurrencyInput/constants/constants.js +0 -1
  310. package/components/CurrencyInput/constants/constants.js.map +1 -1
  311. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
  312. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  313. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  314. package/components/DateInput/DateInput.d.ts +2 -0
  315. package/components/DatePicker/DatePicker/DatePicker.js +1 -32
  316. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  317. package/components/DatePicker/DatePicker.d.ts +6 -33
  318. package/components/Dropdown/Dropdown/Dropdown.js +1 -47
  319. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  320. package/components/Dropdown/Dropdown.d.ts +2 -47
  321. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  322. package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
  323. package/components/FxInput/FxInput/FxInput.js +1 -5
  324. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  325. package/components/FxInput/FxInput.d.ts +2 -5
  326. package/components/Gapped/Gapped/Gapped.js +1 -15
  327. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  328. package/components/Gapped/Gapped.d.ts +2 -15
  329. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  330. package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
  331. package/components/Group/Group/Group.js +64 -28
  332. package/components/Group/Group/Group.js.map +1 -1
  333. package/components/Group/Group.d.ts +5 -4
  334. package/components/Group/Group.styles/Group.styles.js +9 -6
  335. package/components/Group/Group.styles/Group.styles.js.map +1 -1
  336. package/components/Group/Group.styles.d.ts +1 -0
  337. package/components/Hint/Hint/Hint.js.map +1 -1
  338. package/components/Hint/Hint.d.ts +2 -0
  339. package/components/Input/Input/Input.js.map +1 -1
  340. package/components/Input/Input.d.ts +2 -0
  341. package/components/Kebab/Kebab/Kebab.js +2 -20
  342. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  343. package/components/Kebab/Kebab.d.ts +2 -1
  344. package/components/Link/Link/Link.js.map +1 -1
  345. package/components/Link/Link.d.ts +2 -0
  346. package/components/Loader/Loader/Loader.js +0 -33
  347. package/components/Loader/Loader/Loader.js.map +1 -1
  348. package/components/Loader/Loader.d.ts +6 -36
  349. package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
  350. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  351. package/components/MaskedInput/MaskedInput.d.ts +1 -0
  352. package/components/MenuItem/MenuItem/MenuItem.js +1 -12
  353. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  354. package/components/MenuItem/MenuItem.d.ts +2 -12
  355. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
  356. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
  357. package/components/MiniModal/MiniModal.styles.d.ts +1 -0
  358. package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
  359. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
  360. package/components/Modal/Modal.styles/Modal.styles.js +31 -28
  361. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  362. package/components/Modal/Modal.styles.d.ts +1 -0
  363. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  364. package/components/Modal/ModalBody.d.ts +2 -0
  365. package/components/Modal/ModalHeader/ModalHeader.js +3 -1
  366. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  367. package/components/Modal/ModalHeader.d.ts +5 -0
  368. package/components/Paging/DotsIcon/DotsIcon.js +14 -0
  369. package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
  370. package/components/Paging/DotsIcon/package.json +6 -0
  371. package/components/Paging/DotsIcon.d.ts +3 -0
  372. package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
  373. package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
  374. package/components/Paging/ForwardIcon.d.ts +3 -0
  375. package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
  376. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  377. package/components/Paging/NavigationHelper.d.ts +3 -2
  378. package/components/Paging/Paging/Paging.js +96 -47
  379. package/components/Paging/Paging/Paging.js.map +1 -1
  380. package/components/Paging/Paging.d.ts +13 -2
  381. package/components/Paging/Paging.styles/Paging.styles.js +77 -16
  382. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  383. package/components/Paging/Paging.styles.d.ts +24 -1
  384. package/components/Paging/PagingHelper/PagingHelper.js +16 -8
  385. package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
  386. package/components/Paging/PagingHelper.d.ts +1 -1
  387. package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -7
  388. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  389. package/components/PasswordInput/PasswordInput.d.ts +2 -7
  390. package/components/Radio/Radio/Radio.js.map +1 -1
  391. package/components/Radio/Radio.d.ts +2 -0
  392. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  393. package/components/RadioGroup/RadioGroup.d.ts +2 -0
  394. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
  395. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  396. package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
  397. package/components/Select/Select/Select.js.map +1 -1
  398. package/components/Select/Select.d.ts +2 -0
  399. package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
  400. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  401. package/components/SidePage/SidePage.styles.d.ts +3 -1
  402. package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
  403. package/components/SidePage/SidePageBody.d.ts +2 -0
  404. package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
  405. package/components/SidePage/SidePageContainer.d.ts +2 -0
  406. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  407. package/components/SidePage/SidePageFooter.d.ts +2 -0
  408. package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
  409. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  410. package/components/SidePage/SidePageHeader.d.ts +12 -2
  411. package/components/Spinner/Spinner/Spinner.js +1 -18
  412. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  413. package/components/Spinner/Spinner.d.ts +2 -18
  414. package/components/Sticky/Sticky/Sticky.js +1 -13
  415. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  416. package/components/Sticky/Sticky.d.ts +2 -13
  417. package/components/Switcher/Switcher/Switcher.js +19 -16
  418. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  419. package/components/Switcher/Switcher.d.ts +6 -21
  420. package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
  421. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  422. package/components/Switcher/Switcher.styles.d.ts +1 -0
  423. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  424. package/components/Tabs/Indicator.d.ts +2 -0
  425. package/components/Tabs/Tab/Tab.js.map +1 -1
  426. package/components/Tabs/Tab.d.ts +2 -0
  427. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  428. package/components/Tabs/Tabs.d.ts +2 -0
  429. package/components/Textarea/Textarea/Textarea.js +1 -44
  430. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  431. package/components/Textarea/Textarea.d.ts +2 -44
  432. package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
  433. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  434. package/components/Toast/Toast/Toast.js.map +1 -1
  435. package/components/Toast/Toast.d.ts +2 -0
  436. package/components/Toast/ToastView/ToastView.js +3 -17
  437. package/components/Toast/ToastView/ToastView.js.map +1 -1
  438. package/components/Toast/ToastView.d.ts +2 -14
  439. package/components/Toggle/Toggle/Toggle.js +1 -10
  440. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  441. package/components/Toggle/Toggle.d.ts +2 -10
  442. package/components/Token/Token/Token.js.map +1 -1
  443. package/components/Token/Token.d.ts +2 -0
  444. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  445. package/components/TokenInput/TokenInput.d.ts +2 -0
  446. package/components/Tooltip/Tooltip/Tooltip.js +67 -20
  447. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  448. package/components/Tooltip/Tooltip.d.ts +14 -9
  449. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
  450. package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
  451. package/components/Tooltip/Tooltip.styles.d.ts +7 -1
  452. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  453. package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
  454. package/index.d.ts +1 -0
  455. package/index.js +1 -0
  456. package/index.js.map +1 -1
  457. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  458. package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
  459. package/internal/ComponentTable/ComponentTable.js +0 -2
  460. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  461. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  462. package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
  463. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  464. package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
  465. package/internal/DateSelect/DateSelect/DateSelect.js +1 -10
  466. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  467. package/internal/DateSelect/DateSelect.d.ts +0 -10
  468. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  469. package/internal/FocusTrap/FocusTrap.d.ts +2 -0
  470. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  471. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  472. package/internal/InputLikeText/InputLikeText.d.ts +2 -0
  473. package/internal/Menu/Menu/Menu.js.map +1 -1
  474. package/internal/Menu/Menu.d.ts +2 -0
  475. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  476. package/internal/MobilePopup/MobilePopup.d.ts +2 -0
  477. package/internal/Popup/Popup/Popup.js +14 -64
  478. package/internal/Popup/Popup/Popup.js.map +1 -1
  479. package/internal/Popup/Popup.d.ts +41 -59
  480. package/internal/Popup/PopupPin/PopupPin.js +1 -34
  481. package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
  482. package/internal/Popup/PopupPin.d.ts +23 -33
  483. package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
  484. package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
  485. package/internal/Popup/PopupPinNew/package.json +6 -0
  486. package/internal/Popup/PopupPinNew.d.ts +31 -0
  487. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
  488. package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
  489. package/internal/Popup/PopupPinNew.styles/package.json +6 -0
  490. package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
  491. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  492. package/internal/PopupMenu/PopupMenu.d.ts +2 -0
  493. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
  494. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  495. package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
  496. package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
  497. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  498. package/internal/RenderLayer/RenderLayer.d.ts +2 -3
  499. package/internal/ThemePlayground/Playground/Playground.js +4 -3
  500. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  501. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
  502. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  503. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
  504. package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
  505. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  506. package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
  507. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  508. package/internal/ZIndex/ZIndex.d.ts +3 -3
  509. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
  510. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
  511. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
  512. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
  513. package/internal/themes/BasicTheme/BasicTheme.js +170 -26
  514. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
  515. package/internal/themes/BasicTheme.d.ts +112 -20
  516. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
  517. package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
  518. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
  519. package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
  520. package/internal/themes/DarkTheme5_3/package.json +6 -0
  521. package/internal/themes/DarkTheme5_3.d.ts +1 -0
  522. package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
  523. package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
  524. package/internal/themes/LightTheme5_3/package.json +6 -0
  525. package/internal/themes/LightTheme5_3.d.ts +1 -0
  526. package/lib/delay.d.mts +1 -0
  527. package/lib/delay.mts +3 -0
  528. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
  529. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -1
  530. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
  531. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
  532. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  533. package/lib/forwardRefAndName.d.ts +1 -1
  534. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  535. package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
  536. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
  537. package/lib/theming/ThemeVersions.d.ts +1 -1
  538. package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
  539. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  540. package/lib/theming/themes/DarkTheme.d.ts +1 -0
  541. package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
  542. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  543. package/lib/theming/themes/LightTheme.d.ts +1 -0
  544. package/lib/utils/utils.js +2 -0
  545. package/lib/utils/utils.js.map +1 -1
  546. package/lib/utils.d.ts +4 -0
  547. package/package.json +10 -13
  548. package/cjs/lib/SSRSafe.d.ts +0 -2
  549. package/cjs/lib/SSRSafe.js +0 -5
  550. package/cjs/lib/SSRSafe.js.map +0 -1
  551. package/lib/SSRSafe/SSRSafe.js +0 -4
  552. package/lib/SSRSafe/SSRSafe.js.map +0 -1
  553. package/lib/SSRSafe/package.json +0 -6
  554. package/lib/SSRSafe.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"names":["isMac","keyDescription","getKeyDescription","createKeyDescription","name","checkPressed","event","altKey","ctrlKey","getKeyName","checkKeyPressed"],"sources":["NavigationHelper.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { isMac } from '../../lib/client';\nimport type { Nullable } from '../../typings/utility-types';\n\nexport interface KeyDescriptionType {\n name: string;\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => boolean;\n}\n\nlet keyDescription: Nullable<KeyDescriptionType> = null;\n\nconst getKeyDescription = () => keyDescription || (keyDescription = createKeyDescription());\n\nconst createKeyDescription = () =>\n isMac\n ? {\n name: 'Alt',\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => event.altKey,\n }\n : {\n name: 'Ctrl',\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => event.ctrlKey,\n };\n\nexport const getKeyName = () => getKeyDescription().name;\nexport const checkKeyPressed = (event: KeyboardEvent | React.KeyboardEvent<HTMLElement>) =>\n getKeyDescription().checkPressed(event);\n"],"mappings":";;AAEA,SAASA,KAAK,QAAQ,kBAAkB;;;;;;;;AAQxC,IAAIC,cAA4C,GAAG,IAAI;;AAEvD,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA,UAASD,cAAc,KAAKA,cAAc,GAAGE,oBAAoB,CAAC,CAAC,CAAC;;AAE3F,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA;IACxBH,KAAK;IACD;MACEI,IAAI,EAAE,KAAK;MACXC,YAAY,EAAE,SAAAA,aAACC,KAAuD,UAAKA,KAAK,CAACC,MAAM;IACzF,CAAC;IACD;MACEH,IAAI,EAAE,MAAM;MACZC,YAAY,EAAE,SAAAA,aAACC,KAAuD,UAAKA,KAAK,CAACE,OAAO;IAC1F,CAAC;;AAEP,OAAO,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAA,UAASP,iBAAiB,CAAC,CAAC,CAACE,IAAI;AACxD,OAAO,IAAMM,eAAe,GAAG,SAAlBA,eAAeA,CAAIJ,KAAuD;IACrFJ,iBAAiB,CAAC,CAAC,CAACG,YAAY,CAACC,KAAK,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["isMac","isThemeGTE","keyDescription","getKeyDescription","theme","createKeyDescription","name","checkPressed","event","altKey","ctrlKey","getKeyName","t","checkKeyPressed"],"sources":["NavigationHelper.tsx"],"sourcesContent":["import type React from 'react';\n\nimport { isMac } from '../../lib/client';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers';\n\nexport interface KeyDescriptionType {\n name: string;\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => boolean;\n}\n\nlet keyDescription: Nullable<KeyDescriptionType> = null;\n\nconst getKeyDescription = (theme: Theme) => keyDescription || (keyDescription = createKeyDescription(theme));\n\nconst createKeyDescription = (theme: Theme) =>\n isMac\n ? {\n name: isThemeGTE(theme, '5.3') ? '⌥' : 'Alt',\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => event.altKey,\n }\n : {\n name: 'Ctrl',\n checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => event.ctrlKey,\n };\n\nexport const getKeyName = (t: Theme) => getKeyDescription(t).name;\nexport const checkKeyPressed = (event: KeyboardEvent | React.KeyboardEvent<HTMLElement>, theme: Theme) =>\n getKeyDescription(theme).checkPressed(event);\n"],"mappings":";;AAEA,SAASA,KAAK,QAAQ,kBAAkB;;;AAGxC,SAASC,UAAU,QAAQ,gCAAgC;;;;;;;AAO3D,IAAIC,cAA4C,GAAG,IAAI;;AAEvD,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAAY,UAAKF,cAAc,KAAKA,cAAc,GAAGG,oBAAoB,CAACD,KAAK,CAAC,CAAC;;AAE5G,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAID,KAAY;IACxCJ,KAAK;IACD;MACEM,IAAI,EAAEL,UAAU,CAACG,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK;MAC5CG,YAAY,EAAE,SAAAA,aAACC,KAAuD,UAAKA,KAAK,CAACC,MAAM;IACzF,CAAC;IACD;MACEH,IAAI,EAAE,MAAM;MACZC,YAAY,EAAE,SAAAA,aAACC,KAAuD,UAAKA,KAAK,CAACE,OAAO;IAC1F,CAAC;;AAEP,OAAO,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,CAAQ,UAAKT,iBAAiB,CAACS,CAAC,CAAC,CAACN,IAAI;AACjE,OAAO,IAAMO,eAAe,GAAG,SAAlBA,eAAeA,CAAIL,KAAuD,EAAEJ,KAAY;IACnGD,iBAAiB,CAACC,KAAK,CAAC,CAACG,YAAY,CAACC,KAAK,CAAC","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import type React from 'react';
2
+ import type { Theme } from '../../lib/theming/Theme';
2
3
  export interface KeyDescriptionType {
3
4
  name: string;
4
5
  checkPressed: (event: React.KeyboardEvent<HTMLElement> | KeyboardEvent) => boolean;
5
6
  }
6
- export declare const getKeyName: () => string;
7
- export declare const checkKeyPressed: (event: KeyboardEvent | React.KeyboardEvent<HTMLElement>) => boolean;
7
+ export declare const getKeyName: (t: Theme) => string;
8
+ export declare const checkKeyPressed: (event: KeyboardEvent | React.KeyboardEvent<HTMLElement>, theme: Theme) => boolean;
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
3
3
  var _dec, _class, _Paging;
4
4
  import React from 'react';
5
- import { func, number } from 'prop-types';
6
5
  import { globalObject } from '@skbkontur/global-object';
7
6
  import { isInstanceOf } from "../../../lib/isInstanceOf";
8
7
  import { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from "../../../lib/events/keyboard/identifiers";
@@ -11,17 +10,20 @@ import { keyListener } from "../../../lib/events/keyListener";
11
10
  import { emptyHandler } from "../../../lib/utils";
12
11
  import { isIE11 } from "../../../lib/client";
13
12
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
13
+ import { isThemeGTE } from "../../../lib/theming/ThemeHelpers";
14
14
  import { CommonWrapper } from "../../../internal/CommonWrapper";
15
15
  import { cx } from "../../../lib/theming/Emotion";
16
16
  import { rootNode } from "../../../lib/rootNode";
17
17
  import { createPropsGetter } from "../../../lib/createPropsGetter";
18
18
  import { getVisualStateDataAttributes } from "../../../internal/CommonWrapper/utils/getVisualStateDataAttributes";
19
+ import { ResponsiveLayout } from "../../ResponsiveLayout";
19
20
  import { styles } from "../Paging.styles";
20
21
  import * as NavigationHelper from "../NavigationHelper";
21
22
  import { getItems } from "../PagingHelper";
22
23
  import { PagingLocaleHelper } from "../locale";
23
24
  import { PagingDefaultComponent } from "../PagingDefaultComponent";
24
- import { ForwardIcon } from "../ForwardIcon";
25
+ import { ForwardIcon, ForwardIconMobile } from "../ForwardIcon";
26
+ import { DotsIcon } from "../DotsIcon";
25
27
  var IGNORE_EVENT_TAGS = ['input', 'textarea'];
26
28
  export var PagingDataTids = {
27
29
  root: 'Paging__root',
@@ -75,38 +77,34 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
75
77
  React.createElement("span", {
76
78
  "data-tid": PagingDataTids.dots,
77
79
  key: key,
78
- className: cx((_cx = {}, _cx[styles.dots(_this.theme)] = true, _cx[styles.dotsDisabled(_this.theme)] = _this.props.disabled, _cx))
79
- }, '...')
80
+ className: cx(styles.dots(_this.theme), _this.sizeClassNames.dots, (_cx = {}, _cx[styles.dotsDisabled(_this.theme)] = _this.props.disabled, _cx))
81
+ }, _this.getDotsIcon())
80
82
  );
81
83
  };
82
84
  _this.renderForwardLink = function (disabled, focused) {
83
- var classes = cx(styles.pageLink(_this.theme), styles.forwardLink(_this.theme), focused && styles.pageLinkFocused(_this.theme), (disabled || _this.props.disabled) && styles.forwardLinkDisabled(_this.theme));
85
+ var _cx2;
86
+ var classNames = cx(styles.pageLink(_this.theme), _this.sizeClassNames.pageLink, styles.forwardLink(_this.theme), _this.sizeClassNames.forwardLink, (_cx2 = {}, _cx2[styles.pageLinkFocused(_this.theme)] = focused, _cx2[styles.forwardLinkDisabled(_this.theme)] = disabled || _this.props.disabled, _cx2));
84
87
  var Component = _this.getProps().component;
85
88
  var forward = _this.locale.forward;
86
- var forwardIcon = /*#__PURE__*/React.createElement(ForwardIcon, {
87
- size: parseInt(_this.theme.pagingForwardIconSize),
88
- style: {
89
- marginLeft: 4
90
- }
91
- });
89
+ var forwardIcon = _this.getForwardIcon();
92
90
  return /*#__PURE__*/(
93
91
  React.createElement(Component, _extends({
94
92
  key: 'forward',
95
93
  "data-tid": PagingDataTids.forwardLink,
96
94
  active: false,
97
- className: classes,
95
+ className: classNames,
98
96
  onClick: disabled ? emptyHandler : _this.goForward,
99
97
  tabIndex: -1,
100
98
  pageNumber: 'forward'
101
99
  }, getVisualStateDataAttributes({
102
100
  disabled: disabled
103
- })), _this.props.caption || forward, forwardIcon)
101
+ })), !_this.isMobile && (_this.props.caption || forward), forwardIcon)
104
102
  );
105
103
  };
106
104
  _this.renderPageLink = function (pageNumber, active, focused) {
107
- var _cx2;
105
+ var _cx3;
108
106
  var disabled = _this.props.disabled;
109
- var classes = cx((_cx2 = {}, _cx2[styles.pageLink(_this.theme)] = true, _cx2[styles.pageLinkFocused(_this.theme)] = focused, _cx2[styles.pageLinkDisabled(_this.theme)] = disabled, _cx2[styles.pageLinkCurrent(_this.theme)] = active, _cx2[styles.pageLinkCurrentDisabled(_this.theme)] = active && disabled, _cx2));
107
+ var classNames = cx(styles.pageLink(_this.theme), _this.sizeClassNames.pageLink, (_cx3 = {}, _cx3[styles.pageLinkFocused(_this.theme)] = focused, _cx3[styles.pageLinkDisabled(_this.theme)] = disabled, _cx3[styles.pageLinkCurrent(_this.theme)] = active, _cx3[styles.pageLinkCurrentDisabled(_this.theme)] = active && disabled, _cx3));
110
108
  var Component = _this.getProps().component;
111
109
  var handleClick = function handleClick() {
112
110
  return _this.goToPage(pageNumber);
@@ -126,11 +124,11 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
126
124
  React.createElement(Component, {
127
125
  "data-tid": PagingDataTids.pageLink,
128
126
  active: active,
129
- className: classes,
127
+ className: classNames,
130
128
  onClick: handleClick,
131
129
  tabIndex: -1,
132
130
  pageNumber: pageNumber
133
- }, pageNumber), active && _this.renderNavigationHint())
131
+ }, pageNumber), active && !_this.isMobile && _this.renderNavigationHint())
134
132
  );
135
133
  };
136
134
  _this.renderNavigationHint = function () {
@@ -147,7 +145,7 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
147
145
  React.createElement("span", {
148
146
  className: canGoBackward ? '' : styles.transparent()
149
147
  }, '←'), /*#__PURE__*/
150
- React.createElement("span", null, NavigationHelper.getKeyName()), /*#__PURE__*/
148
+ React.createElement("span", null, NavigationHelper.getKeyName(_this.theme)), /*#__PURE__*/
151
149
  React.createElement("span", {
152
150
  className: canGoForward ? '' : styles.transparent()
153
151
  }, '→'));
@@ -181,13 +179,13 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
181
179
  if (isInstanceOf(target, globalObject.Element) && (IGNORE_EVENT_TAGS.includes(target.tagName.toLowerCase()) || target.isContentEditable)) {
182
180
  return;
183
181
  }
184
- if (NavigationHelper.checkKeyPressed(e) && isArrowLeft) {
182
+ if (NavigationHelper.checkKeyPressed(e, _this.theme) && isArrowLeft) {
185
183
  _this.setState({
186
184
  focusedItem: null
187
185
  }, _this.goBackward);
188
186
  return;
189
187
  }
190
- if (NavigationHelper.checkKeyPressed(e) && isArrowRight) {
188
+ if (NavigationHelper.checkKeyPressed(e, _this.theme) && isArrowRight) {
191
189
  _this.setState({
192
190
  focusedItem: null
193
191
  }, _this.goForward);
@@ -237,7 +235,7 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
237
235
  });
238
236
  };
239
237
  _this.getItems = function () {
240
- return getItems(_this.props.activePage, _this.props.pagesCount).concat('forward');
238
+ return getItems(_this.props.activePage, _this.props.pagesCount, _this.isMobile).concat('forward');
241
239
  };
242
240
  _this.getFocusedItem = function () {
243
241
  if (!_this.state.focusedByTab) {
@@ -324,10 +322,73 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
324
322
  _this.refContainer = function (element) {
325
323
  _this.container = element;
326
324
  };
325
+ _this.getPagingSizeClassNames = function () {
326
+ var size = _this.getSize();
327
+ switch (size) {
328
+ case 'legacy':
329
+ return {
330
+ root: styles.pagingLegacy(_this.theme),
331
+ dots: styles.dotsLegacy(_this.theme),
332
+ forwardLink: styles.forwardLinkLegacy(_this.theme),
333
+ pageLink: styles.pageLinkLegacy(_this.theme)
334
+ };
335
+ case 'small':
336
+ return {
337
+ root: styles.pagingSmall(_this.theme),
338
+ dots: styles.dotsSmall(_this.theme),
339
+ forwardLink: styles.forwardLinkSmall(_this.theme),
340
+ pageLink: styles.pageLinkSmall(_this.theme)
341
+ };
342
+ case 'medium':
343
+ return {
344
+ root: styles.pagingMedium(_this.theme),
345
+ dots: styles.dotsMedium(_this.theme),
346
+ forwardLink: _this.isMobile ? styles.forwardLinkMediumMobile(_this.theme) : styles.forwardLinkMedium(_this.theme),
347
+ pageLink: styles.pageLinkMedium(_this.theme)
348
+ };
349
+ case 'large':
350
+ return {
351
+ root: styles.pagingLarge(_this.theme),
352
+ dots: styles.dotsLarge(_this.theme),
353
+ forwardLink: _this.isMobile ? styles.forwardLinkLargeMobile(_this.theme) : styles.forwardLinkLarge(_this.theme),
354
+ pageLink: styles.pageLinkLarge(_this.theme)
355
+ };
356
+ default:
357
+ throw new TypeError("Invalid size prop: '" + _this.props.size + "'");
358
+ }
359
+ };
360
+ _this.getDotsIcon = function () {
361
+ var size = _this.getSize();
362
+ return size === 'legacy' ? '...' : /*#__PURE__*/React.createElement(DotsIcon, {
363
+ size: size
364
+ });
365
+ };
366
+ _this.getForwardIcon = function () {
367
+ var size = _this.getSize();
368
+ var iconSize = size === 'legacy' ? parseInt(_this.theme.pagingForwardIconSize) : size;
369
+ return _this.isMobile ? /*#__PURE__*/
370
+ React.createElement(ForwardIconMobile, {
371
+ size: iconSize
372
+ }) : /*#__PURE__*/
373
+
374
+ React.createElement(ForwardIcon, {
375
+ size: iconSize,
376
+ style: {
377
+ marginLeft: 4
378
+ }
379
+ });
380
+ };
381
+ _this.getSize = function () {
382
+ if (_this.props.size) {
383
+ return _this.isMobile && _this.props.size === 'small' ? 'medium' : _this.props.size;
384
+ }
385
+ var defaultSize = isThemeGTE(_this.theme, '5.3') ? 'small' : 'legacy';
386
+ return _this.isMobile && defaultSize === 'small' ? 'medium' : defaultSize;
387
+ };
327
388
  return _this;
328
389
  }
329
390
  _inheritsLoose(Paging, _React$PureComponent);
330
- Paging.isForward = function isForward(pageNumber) /* %checks */{
391
+ Paging.isForward = function isForward(pageNumber) {
331
392
  return pageNumber === 'forward';
332
393
  };
333
394
  var _proto = Paging.prototype;
@@ -361,11 +422,17 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
361
422
  }
362
423
  return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
363
424
  _this2.theme = theme;
364
- return _this2.renderMain();
425
+ return /*#__PURE__*/React.createElement(ResponsiveLayout, null, function (_ref) {
426
+ var isMobile = _ref.isMobile;
427
+ _this2.isMobile = isMobile && isThemeGTE(_this2.theme, '5.3');
428
+ _this2.sizeClassNames = _this2.getPagingSizeClassNames();
429
+ return _this2.renderMain();
430
+ });
365
431
  });
366
432
  };
367
433
  _proto.renderMain = function renderMain() {
368
- var _cx3;
434
+ var _cx4,
435
+ _this3 = this;
369
436
  var _this$getProps = this.getProps(),
370
437
  useGlobalListener = _this$getProps.useGlobalListener;
371
438
  return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
@@ -375,36 +442,18 @@ export var Paging = (_dec = locale('Paging', PagingLocaleHelper), rootNode(_clas
375
442
  })), /*#__PURE__*/React.createElement("span", {
376
443
  tabIndex: this.props.disabled ? -1 : 0,
377
444
  "data-tid": PagingDataTids.root,
378
- className: cx((_cx3 = {}, _cx3[styles.paging(this.theme)] = true, _cx3[styles.pagingDisabled()] = this.props.disabled, _cx3)),
445
+ className: cx(styles.paging(), this.sizeClassNames.root, (_cx4 = {}, _cx4[styles.pagingMobile()] = this.isMobile, _cx4[styles.pagingDisabled()] = this.props.disabled, _cx4)),
379
446
  onKeyDown: useGlobalListener ? undefined : this.handleKeyDown,
380
447
  onFocus: this.handleFocus,
381
448
  onBlur: this.handleBlur,
382
449
  onMouseDown: this.handleMouseDown,
383
450
  ref: this.refContainer
384
- }, this.getItems().map(this.renderItem)));
451
+ }, this.getItems().map(function (item, index) {
452
+ return _this3.renderItem(item, index);
453
+ })));
385
454
  };
386
455
  return Paging;
387
456
  }(React.PureComponent), _Paging.__KONTUR_REACT_UI__ = 'Paging', _Paging.displayName = 'Paging', _Paging.defaultProps = {
388
457
  component: PagingDefaultComponent,
389
458
  useGlobalListener: false
390
- }, _Paging.propTypes = {}, _Paging)) || _class) || _class);
391
- Paging.propTypes = {
392
- /**
393
- * Current active page
394
- */
395
- activePage: number.isRequired,
396
- /**
397
- * React component that would be used for rendering items
398
- *
399
- * Usefull for router integration
400
- */
401
- component: func,
402
- /**
403
- * Total page count
404
- */
405
- pagesCount: number.isRequired,
406
- /**
407
- * Calls when page has been changed
408
- */
409
- onPageChange: func.isRequired
410
- };
459
+ }, _Paging)) || _class) || _class);
@@ -1 +1 @@
1
- {"version":3,"names":["React","func","number","globalObject","isInstanceOf","isKeyArrowLeft","isKeyArrowRight","isKeyEnter","locale","keyListener","emptyHandler","isIE11","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","getVisualStateDataAttributes","styles","NavigationHelper","getItems","PagingLocaleHelper","PagingDefaultComponent","ForwardIcon","IGNORE_EVENT_TAGS","PagingDataTids","root","dots","forwardLink","pageLinkWrapper","pageLink","Paging","_dec","_class","_Paging","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","focusedByTab","focusedItem","keyboardControl","useGlobalListener","addedGlobalListener","container","renderItem","item","index","focused","getFocusedItem","key","renderDots","disabled","isItemDisabled","renderForwardLink","active","props","activePage","renderPageLink","_cx","createElement","className","theme","dotsDisabled","classes","pageLinkFocused","forwardLinkDisabled","Component","component","forward","forwardIcon","size","parseInt","pagingForwardIconSize","style","marginLeft","_extends","onClick","goForward","tabIndex","pageNumber","caption","_cx2","pageLinkDisabled","pageLinkCurrent","pageLinkCurrentDisabled","handleClick","goToPage","onMouseDown","handleMouseDownPageLink","renderNavigationHint","withoutNavigationHint","canGoBackward","canGoForward","hint","Fragment","transparent","getKeyName","pageLinkHint","handleMouseDown","setState","setTimeout","focus","handleKeyDown","e","shiftKey","target","isArrowLeft","isArrowRight","Element","includes","tagName","toLowerCase","isContentEditable","checkKeyPressed","goBackward","moveFocusLeft","moveFocusRight","executeItemAction","handleFocus","requestAnimationFrame","isTabPressed","handleBlur","pagesCount","isItemFocusable","moveFocus","step","items","findIndex","x","onPageChange","addGlobalListener","_globalObject$documen","document","addEventListener","removeGlobalListener","_globalObject$documen2","removeEventListener","refContainer","element","_inheritsLoose","isForward","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","_this2","Consumer","renderMain","_cx3","_this$getProps","rootNodeRef","setRootNode","paging","pagingDisabled","onKeyDown","undefined","onFocus","onBlur","ref","map","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","isRequired"],"sources":["Paging.tsx"],"sourcesContent":["import React from 'react';\nimport { func, number } from 'prop-types';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { locale } from '../../lib/locale/decorators';\nimport type { Nullable } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { emptyHandler } from '../../lib/utils';\nimport { isIE11 } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Paging.styles';\nimport * as NavigationHelper from './NavigationHelper';\nimport { getItems } from './PagingHelper';\nimport type { PagingLocale } from './locale';\nimport { PagingLocaleHelper } from './locale';\nimport { PagingDefaultComponent } from './PagingDefaultComponent';\nimport { ForwardIcon } from './ForwardIcon';\n\nconst IGNORE_EVENT_TAGS = ['input', 'textarea'];\n\nexport interface ItemComponentProps {\n /** Определяет, является ли страница текущей. */\n active: boolean;\n\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает HTML-атрибут class. */\n className: string;\n\n /** Задает функцию, которая вызывается при клике на элемент. */\n onClick: () => void;\n\n /** Задает номер текущей страницы. */\n pageNumber: number | 'forward';\n\n /** Задает HTML-атрибут `tabindex`. */\n tabIndex: number;\n}\n\nexport interface PagingProps extends CommonProps {\n activePage: number;\n /** Компонент обертки по умолчанию.\n * @default <span /> */\n component?: React.ComponentType<ItemComponentProps>;\n\n /** Задает функцию, которая вызывается при переключении страницы. */\n onPageChange: (pageNumber: number) => void;\n\n /** Задает общее количество страниц. */\n pagesCount: number;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Отключает навигационные подсказки.\n * По-умолчанию подсказки появляются, когда доступно управление с клавиатуры (либо элемент в фокусе, либо globalListeners === true). */\n withoutNavigationHint?: boolean;\n\n /** Задает подпить у пейджинга. */\n caption?: string;\n\n /** Глобальный слушатель **keyDown**, для навигации клавишами без фокуса на компоненте.\n * Если на странице используется несколько элементов **Paging** с useGlobalListener === true,\n * то обработчик keyDown будет вызываться на каждом из них. Такие случаи лучше обрабатывать отдельно. */\n useGlobalListener?: boolean;\n}\n\nexport interface PagingState {\n focusedByTab: boolean;\n focusedItem: Nullable<ItemType>;\n keyboardControl: boolean;\n}\n\nexport type ItemType = number | '.' | 'forward';\n\nexport const PagingDataTids = {\n root: 'Paging__root',\n dots: 'Paging__dots',\n forwardLink: 'Paging__forwardLink',\n pageLinkWrapper: 'Paging__pageLinkWrapper',\n pageLink: 'Paging__pageLink',\n} as const;\n\ntype DefaultProps = Required<Pick<PagingProps, 'component' | 'useGlobalListener'>>;\n\n/**\n * Постраничная навигация `Paging` (пейджинг или пагинация) — способ представления большого количества однородной информации, когда контент разбивается на страницы.\n */\n@rootNode\n@locale('Paging', PagingLocaleHelper)\nexport class Paging extends React.PureComponent<PagingProps, PagingState> {\n public static __KONTUR_REACT_UI__ = 'Paging';\n public static displayName = 'Paging';\n\n public static defaultProps: DefaultProps = {\n component: PagingDefaultComponent,\n useGlobalListener: false,\n };\n\n private getProps = createPropsGetter(Paging.defaultProps);\n\n public static propTypes = {};\n private setRootNode!: TSetRootNode;\n\n public static isForward(pageNumber: number | 'forward'): boolean /* %checks */ {\n return pageNumber === 'forward';\n }\n\n public state: PagingState = {\n focusedByTab: false,\n focusedItem: null,\n keyboardControl: this.getProps().useGlobalListener,\n };\n\n private theme!: Theme;\n private readonly locale!: PagingLocale;\n private addedGlobalListener = false;\n private container: HTMLSpanElement | null = null;\n\n public componentDidMount() {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (useGlobalListener) {\n this.addGlobalListener();\n }\n }\n\n public componentDidUpdate(prevProps: PagingProps) {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (!prevProps.useGlobalListener && useGlobalListener) {\n this.addGlobalListener();\n }\n\n if (prevProps.useGlobalListener && !useGlobalListener) {\n this.removeGlobalListener();\n }\n\n if (prevProps.useGlobalListener !== useGlobalListener) {\n this.setState({\n keyboardControl: useGlobalListener,\n });\n }\n }\n\n public componentWillUnmount() {\n this.removeGlobalListener();\n }\n\n public render() {\n if (this.props.pagesCount < 2) {\n return null;\n }\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { useGlobalListener } = this.getProps();\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled: this.props.disabled })}\n >\n <span\n tabIndex={this.props.disabled ? -1 : 0}\n data-tid={PagingDataTids.root}\n className={cx({ [styles.paging(this.theme)]: true, [styles.pagingDisabled()]: this.props.disabled })}\n onKeyDown={useGlobalListener ? undefined : this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onMouseDown={this.handleMouseDown}\n ref={this.refContainer}\n >\n {this.getItems().map(this.renderItem)}\n </span>\n </CommonWrapper>\n );\n }\n\n private renderItem = (item: ItemType, index: number) => {\n const focused = this.getFocusedItem() === item;\n switch (item) {\n case '.': {\n const key = `dots${index < 5 ? 'Left' : 'Right'}`;\n return this.renderDots(key);\n }\n case 'forward': {\n const disabled = this.isItemDisabled(item);\n return this.renderForwardLink(disabled, focused);\n }\n default: {\n const active = this.props.activePage === item;\n return this.renderPageLink(item, active, focused);\n }\n }\n };\n\n private renderDots = (key: string) => {\n return (\n <span\n data-tid={PagingDataTids.dots}\n key={key}\n className={cx({ [styles.dots(this.theme)]: true, [styles.dotsDisabled(this.theme)]: this.props.disabled })}\n >\n {'...'}\n </span>\n );\n };\n\n private renderForwardLink = (disabled: boolean, focused: boolean): JSX.Element => {\n const classes = cx(\n styles.pageLink(this.theme),\n styles.forwardLink(this.theme),\n focused && styles.pageLinkFocused(this.theme),\n (disabled || this.props.disabled) && styles.forwardLinkDisabled(this.theme),\n );\n const Component = this.getProps().component;\n const { forward } = this.locale;\n\n const forwardIcon = <ForwardIcon size={parseInt(this.theme.pagingForwardIconSize)} style={{ marginLeft: 4 }} />;\n\n return (\n <Component\n key={'forward'}\n data-tid={PagingDataTids.forwardLink}\n active={false}\n className={classes}\n onClick={disabled ? emptyHandler : this.goForward}\n tabIndex={-1}\n pageNumber={'forward' as const}\n {...getVisualStateDataAttributes({ disabled })}\n >\n {this.props.caption || forward}\n {forwardIcon}\n </Component>\n );\n };\n\n private renderPageLink = (pageNumber: number, active: boolean, focused: boolean): JSX.Element => {\n const disabled = this.props.disabled;\n const classes = cx({\n [styles.pageLink(this.theme)]: true,\n [styles.pageLinkFocused(this.theme)]: focused,\n [styles.pageLinkDisabled(this.theme)]: disabled,\n [styles.pageLinkCurrent(this.theme)]: active,\n [styles.pageLinkCurrentDisabled(this.theme)]: active && disabled,\n });\n const Component = this.getProps().component;\n const handleClick = () => this.goToPage(pageNumber);\n\n return (\n <span\n data-tid={PagingDataTids.pageLinkWrapper}\n key={pageNumber}\n className={styles.pageLinkWrapper()}\n {...getVisualStateDataAttributes({ active, disabled })}\n onMouseDown={this.handleMouseDownPageLink}\n >\n <Component\n data-tid={PagingDataTids.pageLink}\n active={active}\n className={classes}\n onClick={handleClick}\n tabIndex={-1}\n pageNumber={pageNumber}\n >\n {pageNumber}\n </Component>\n {active && this.renderNavigationHint()}\n </span>\n );\n };\n\n private renderNavigationHint = () => {\n if (this.props.withoutNavigationHint) {\n return null;\n }\n\n const { keyboardControl } = this.state;\n const canGoBackward = this.canGoBackward();\n const canGoForward = this.canGoForward();\n\n let hint = null;\n if (keyboardControl && (canGoBackward || canGoForward)) {\n hint = (\n <>\n <span className={canGoBackward ? '' : styles.transparent()}>{'←'}</span>\n <span>{NavigationHelper.getKeyName()}</span>\n <span className={canGoForward ? '' : styles.transparent()}>{'→'}</span>\n </>\n );\n }\n return <div className={styles.pageLinkHint(this.theme)}>{hint}</div>;\n };\n\n private handleMouseDown = () => {\n this.setState({ focusedByTab: false, focusedItem: null });\n };\n\n private handleMouseDownPageLink = () => {\n if (isIE11) {\n // Клик по span внутри контейнера с tabindex=\"0\" переносит фокус именно на этот span.\n // Поэтому горячие клавиши работают пока span существует на странице.\n globalObject.setTimeout(() => this.container && this.container.focus(), 0);\n }\n };\n\n private handleKeyDown = (e: KeyboardEvent | React.KeyboardEvent<HTMLElement>) => {\n if (e.shiftKey) {\n return;\n }\n\n const target = e.target;\n\n const isArrowLeft = isKeyArrowLeft(e);\n const isArrowRight = isKeyArrowRight(e);\n\n if (\n isInstanceOf(target, globalObject.Element) &&\n (IGNORE_EVENT_TAGS.includes(target.tagName.toLowerCase()) || (target as HTMLElement).isContentEditable)\n ) {\n return;\n }\n\n if (NavigationHelper.checkKeyPressed(e) && isArrowLeft) {\n this.setState({ focusedItem: null }, this.goBackward);\n return;\n }\n if (NavigationHelper.checkKeyPressed(e) && isArrowRight) {\n this.setState({ focusedItem: null }, this.goForward);\n return;\n }\n\n if (this.container && this.container === e.target) {\n if (isArrowLeft) {\n this.setState({ focusedByTab: true }, this.moveFocusLeft);\n return;\n }\n if (isArrowRight) {\n this.setState({ focusedByTab: true }, this.moveFocusRight);\n return;\n }\n if (isKeyEnter(e)) {\n this.executeItemAction(this.getFocusedItem());\n return;\n }\n }\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ keyboardControl: true });\n\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n keyboardControl: this.getProps().useGlobalListener || false,\n });\n };\n\n private getItems = (): ItemType[] => {\n return getItems(this.props.activePage, this.props.pagesCount).concat('forward');\n };\n\n private getFocusedItem = (): Nullable<ItemType> => {\n if (!this.state.focusedByTab) {\n return null;\n }\n\n const { focusedItem } = this.state;\n if (focusedItem && this.getItems().includes(focusedItem) && this.isItemFocusable(focusedItem)) {\n return focusedItem;\n }\n\n return this.props.activePage;\n };\n\n private isItemFocusable = (item: ItemType) => {\n return !this.isItemDisabled(item);\n };\n\n private isItemDisabled = (item: ItemType) => {\n switch (item) {\n case '.':\n return true;\n case 'forward':\n return !this.canGoForward();\n default:\n return false;\n }\n };\n\n private executeItemAction = (item: Nullable<ItemType>) => {\n if (item === 'forward') {\n this.goForward();\n }\n if (typeof item === 'number') {\n this.goToPage(item);\n }\n };\n\n private moveFocusLeft = () => {\n this.moveFocus(-1);\n };\n\n private moveFocusRight = () => {\n this.moveFocus(1);\n };\n\n private moveFocus = (step: number) => {\n const focusedItem = this.getFocusedItem();\n const items = this.getItems();\n let index = items.findIndex((x) => x === focusedItem);\n do {\n index = (index + step + items.length) % items.length;\n } while (!this.isItemFocusable(items[index]));\n this.setState({ focusedItem: items[index] });\n };\n\n private canGoBackward = (): boolean => {\n return this.props.activePage > 1;\n };\n\n private canGoForward = (): boolean => {\n return this.props.activePage < this.props.pagesCount;\n };\n\n private goBackward = () => {\n this.goToPage(this.props.activePage - 1);\n };\n\n private goForward = () => {\n this.goToPage(this.props.activePage + 1);\n };\n\n private goToPage = (pageNumber: number) => {\n if (pageNumber >= 1 && pageNumber !== this.props.activePage && pageNumber <= this.props.pagesCount) {\n this.props.onPageChange(pageNumber);\n }\n };\n\n private addGlobalListener = () => {\n if (this.addedGlobalListener) {\n return;\n }\n\n globalObject.document?.addEventListener('keydown', this.handleKeyDown);\n this.addedGlobalListener = true;\n };\n\n private removeGlobalListener = () => {\n if (this.addedGlobalListener) {\n globalObject.document?.removeEventListener('keydown', this.handleKeyDown);\n\n this.addedGlobalListener = false;\n }\n };\n\n private refContainer = (element: HTMLSpanElement | null) => {\n this.container = element;\n };\n}\n\nPaging.propTypes = {\n /**\n * Current active page\n */\n activePage: number.isRequired,\n\n /**\n * React component that would be used for rendering items\n *\n * Usefull for router integration\n */\n component: func,\n\n /**\n * Total page count\n */\n pagesCount: number.isRequired,\n\n /**\n * Calls when page has been changed\n */\n onPageChange: func.isRequired,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","globalObject","isInstanceOf","isKeyArrowLeft","isKeyArrowRight","isKeyEnter","locale","keyListener","emptyHandler","isIE11","ThemeContext","isThemeGTE","CommonWrapper","cx","rootNode","createPropsGetter","getVisualStateDataAttributes","ResponsiveLayout","styles","NavigationHelper","getItems","PagingLocaleHelper","PagingDefaultComponent","ForwardIcon","ForwardIconMobile","DotsIcon","IGNORE_EVENT_TAGS","PagingDataTids","root","dots","forwardLink","pageLinkWrapper","pageLink","Paging","_dec","_class","_Paging","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","focusedByTab","focusedItem","keyboardControl","useGlobalListener","addedGlobalListener","container","renderItem","item","index","focused","getFocusedItem","key","renderDots","disabled","isItemDisabled","renderForwardLink","active","props","activePage","renderPageLink","_cx","createElement","className","theme","sizeClassNames","dotsDisabled","getDotsIcon","_cx2","classNames","pageLinkFocused","forwardLinkDisabled","Component","component","forward","forwardIcon","getForwardIcon","_extends","onClick","goForward","tabIndex","pageNumber","isMobile","caption","_cx3","pageLinkDisabled","pageLinkCurrent","pageLinkCurrentDisabled","handleClick","goToPage","onMouseDown","handleMouseDownPageLink","renderNavigationHint","withoutNavigationHint","canGoBackward","canGoForward","hint","Fragment","transparent","getKeyName","pageLinkHint","handleMouseDown","setState","setTimeout","focus","handleKeyDown","e","shiftKey","target","isArrowLeft","isArrowRight","Element","includes","tagName","toLowerCase","isContentEditable","checkKeyPressed","goBackward","moveFocusLeft","moveFocusRight","executeItemAction","handleFocus","requestAnimationFrame","isTabPressed","handleBlur","pagesCount","isItemFocusable","moveFocus","step","items","findIndex","x","onPageChange","addGlobalListener","_globalObject$documen","document","addEventListener","removeGlobalListener","_globalObject$documen2","removeEventListener","refContainer","element","getPagingSizeClassNames","size","getSize","pagingLegacy","dotsLegacy","forwardLinkLegacy","pageLinkLegacy","pagingSmall","dotsSmall","forwardLinkSmall","pageLinkSmall","pagingMedium","dotsMedium","forwardLinkMediumMobile","forwardLinkMedium","pageLinkMedium","pagingLarge","dotsLarge","forwardLinkLargeMobile","forwardLinkLarge","pageLinkLarge","TypeError","iconSize","parseInt","pagingForwardIconSize","style","marginLeft","defaultSize","_inheritsLoose","isForward","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","_this2","Consumer","_ref","renderMain","_cx4","_this3","_this$getProps","rootNodeRef","setRootNode","paging","pagingMobile","pagingDisabled","onKeyDown","undefined","onFocus","onBlur","ref","map","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Paging.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { isKeyArrowLeft, isKeyArrowRight, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { locale } from '../../lib/locale/decorators';\nimport type { Nullable } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { emptyHandler } from '../../lib/utils';\nimport { isIE11 } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\nimport { ResponsiveLayout } from '../ResponsiveLayout';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './Paging.styles';\nimport * as NavigationHelper from './NavigationHelper';\nimport { getItems } from './PagingHelper';\nimport type { PagingLocale } from './locale';\nimport { PagingLocaleHelper } from './locale';\nimport { PagingDefaultComponent } from './PagingDefaultComponent';\nimport { ForwardIcon, ForwardIconMobile } from './ForwardIcon';\nimport { DotsIcon } from './DotsIcon';\n\nconst IGNORE_EVENT_TAGS = ['input', 'textarea'];\n\nexport interface ItemComponentProps {\n /** Определяет, является ли страница текущей. */\n active: boolean;\n\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает HTML-атрибут class. */\n className: string;\n\n /** Задает функцию, которая вызывается при клике на элемент. */\n onClick: () => void;\n\n /** Задает номер текущей страницы. */\n pageNumber: number | 'forward';\n\n /** Задает HTML-атрибут `tabindex`. */\n tabIndex: number;\n}\n\nexport interface PagingProps extends CommonProps {\n activePage: number;\n\n /** Компонент обертки по умолчанию.\n * @default <span/> */\n component?: React.ComponentType<ItemComponentProps>;\n\n /** Задает функцию, которая вызывается при переключении страницы. */\n onPageChange: (pageNumber: number) => void;\n\n /** Задает общее количество страниц. */\n pagesCount: number;\n\n /** Задает размер контрола.\n * @default 'small', начиная с версии темы 5.3. До этого по умолчанию стоит старый размер 'legacy'. */\n size?: SizeProp;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Отключает навигационные подсказки.\n * По-умолчанию подсказки появляются, когда доступно управление с клавиатуры (либо элемент в фокусе, либо globalListeners === true). */\n withoutNavigationHint?: boolean;\n\n /** Задает подпить у пейджинга. */\n caption?: string;\n\n /** Глобальный слушатель **keyDown**, для навигации клавишами без фокуса на компоненте.\n * Если на странице используется несколько элементов **Paging** с useGlobalListener === true,\n * то обработчик keyDown будет вызываться на каждом из них. Такие случаи лучше обрабатывать отдельно. */\n useGlobalListener?: boolean;\n}\n\nexport interface PagingState {\n focusedByTab: boolean;\n focusedItem: Nullable<ItemType>;\n keyboardControl: boolean;\n}\n\nexport type ItemType = number | '.' | 'forward';\n\nexport const PagingDataTids = {\n root: 'Paging__root',\n dots: 'Paging__dots',\n forwardLink: 'Paging__forwardLink',\n pageLinkWrapper: 'Paging__pageLinkWrapper',\n pageLink: 'Paging__pageLink',\n} as const;\n\ntype DefaultProps = Required<Pick<PagingProps, 'component' | 'useGlobalListener'>>;\n\ninterface PagingSizeClassNames {\n root: string;\n dots: string;\n forwardLink: string;\n pageLink: string;\n}\n\n/**\n * Постраничная навигация `Paging` (пейджинг или пагинация) — способ представления большого количества однородной информации, когда контент разбивается на страницы.\n */\n@rootNode\n@locale('Paging', PagingLocaleHelper)\nexport class Paging extends React.PureComponent<PagingProps, PagingState> {\n public static __KONTUR_REACT_UI__ = 'Paging';\n public static displayName = 'Paging';\n\n public static defaultProps: DefaultProps = {\n component: PagingDefaultComponent,\n useGlobalListener: false,\n };\n\n private getProps = createPropsGetter(Paging.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static isForward(pageNumber: number | 'forward'): boolean {\n return pageNumber === 'forward';\n }\n\n public state: PagingState = {\n focusedByTab: false,\n focusedItem: null,\n keyboardControl: this.getProps().useGlobalListener,\n };\n\n private theme!: Theme;\n private readonly locale!: PagingLocale;\n private isMobile!: boolean;\n private sizeClassNames!: PagingSizeClassNames;\n private addedGlobalListener = false;\n private container: HTMLSpanElement | null = null;\n\n public componentDidMount() {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (useGlobalListener) {\n this.addGlobalListener();\n }\n }\n\n public componentDidUpdate(prevProps: PagingProps) {\n const useGlobalListener = this.getProps().useGlobalListener;\n if (!prevProps.useGlobalListener && useGlobalListener) {\n this.addGlobalListener();\n }\n\n if (prevProps.useGlobalListener && !useGlobalListener) {\n this.removeGlobalListener();\n }\n\n if (prevProps.useGlobalListener !== useGlobalListener) {\n this.setState({\n keyboardControl: useGlobalListener,\n });\n }\n }\n\n public componentWillUnmount() {\n this.removeGlobalListener();\n }\n\n public render() {\n if (this.props.pagesCount < 2) {\n return null;\n }\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ResponsiveLayout>\n {({ isMobile }) => {\n this.isMobile = isMobile && isThemeGTE(this.theme, '5.3');\n this.sizeClassNames = this.getPagingSizeClassNames();\n return this.renderMain();\n }}\n </ResponsiveLayout>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { useGlobalListener } = this.getProps();\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled: this.props.disabled })}\n >\n <span\n tabIndex={this.props.disabled ? -1 : 0}\n data-tid={PagingDataTids.root}\n className={cx(styles.paging(), this.sizeClassNames.root, {\n [styles.pagingMobile()]: this.isMobile,\n [styles.pagingDisabled()]: this.props.disabled,\n })}\n onKeyDown={useGlobalListener ? undefined : this.handleKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onMouseDown={this.handleMouseDown}\n ref={this.refContainer}\n >\n {this.getItems().map((item, index) => this.renderItem(item, index))}\n </span>\n </CommonWrapper>\n );\n }\n\n private renderItem = (item: ItemType, index: number) => {\n const focused = this.getFocusedItem() === item;\n switch (item) {\n case '.': {\n const key = `dots${index < 5 ? 'Left' : 'Right'}`;\n return this.renderDots(key);\n }\n case 'forward': {\n const disabled = this.isItemDisabled(item);\n return this.renderForwardLink(disabled, focused);\n }\n default: {\n const active = this.props.activePage === item;\n return this.renderPageLink(item, active, focused);\n }\n }\n };\n\n private renderDots = (key: string) => {\n return (\n <span\n data-tid={PagingDataTids.dots}\n key={key}\n className={cx(styles.dots(this.theme), this.sizeClassNames.dots, {\n [styles.dotsDisabled(this.theme)]: this.props.disabled,\n })}\n >\n {this.getDotsIcon()}\n </span>\n );\n };\n\n private renderForwardLink = (disabled: boolean, focused: boolean): JSX.Element => {\n const classNames = cx(\n styles.pageLink(this.theme),\n this.sizeClassNames.pageLink,\n styles.forwardLink(this.theme),\n this.sizeClassNames.forwardLink,\n {\n [styles.pageLinkFocused(this.theme)]: focused,\n [styles.forwardLinkDisabled(this.theme)]: disabled || this.props.disabled,\n },\n );\n const Component = this.getProps().component;\n const { forward } = this.locale;\n\n const forwardIcon = this.getForwardIcon();\n\n return (\n <Component\n key={'forward'}\n data-tid={PagingDataTids.forwardLink}\n active={false}\n className={classNames}\n onClick={disabled ? emptyHandler : this.goForward}\n tabIndex={-1}\n pageNumber={'forward' as const}\n {...getVisualStateDataAttributes({ disabled })}\n >\n {!this.isMobile && (this.props.caption || forward)}\n {forwardIcon}\n </Component>\n );\n };\n\n private renderPageLink = (pageNumber: number, active: boolean, focused: boolean): JSX.Element => {\n const disabled = this.props.disabled;\n const classNames = cx(styles.pageLink(this.theme), this.sizeClassNames.pageLink, {\n [styles.pageLinkFocused(this.theme)]: focused,\n [styles.pageLinkDisabled(this.theme)]: disabled,\n [styles.pageLinkCurrent(this.theme)]: active,\n [styles.pageLinkCurrentDisabled(this.theme)]: active && disabled,\n });\n const Component = this.getProps().component;\n const handleClick = () => this.goToPage(pageNumber);\n\n return (\n <span\n data-tid={PagingDataTids.pageLinkWrapper}\n key={pageNumber}\n className={styles.pageLinkWrapper()}\n {...getVisualStateDataAttributes({ active, disabled })}\n onMouseDown={this.handleMouseDownPageLink}\n >\n <Component\n data-tid={PagingDataTids.pageLink}\n active={active}\n className={classNames}\n onClick={handleClick}\n tabIndex={-1}\n pageNumber={pageNumber}\n >\n {pageNumber}\n </Component>\n {active && !this.isMobile && this.renderNavigationHint()}\n </span>\n );\n };\n\n private renderNavigationHint = () => {\n if (this.props.withoutNavigationHint) {\n return null;\n }\n\n const { keyboardControl } = this.state;\n const canGoBackward = this.canGoBackward();\n const canGoForward = this.canGoForward();\n\n let hint = null;\n if (keyboardControl && (canGoBackward || canGoForward)) {\n hint = (\n <>\n <span className={canGoBackward ? '' : styles.transparent()}>{'←'}</span>\n <span>{NavigationHelper.getKeyName(this.theme)}</span>\n <span className={canGoForward ? '' : styles.transparent()}>{'→'}</span>\n </>\n );\n }\n return <div className={styles.pageLinkHint(this.theme)}>{hint}</div>;\n };\n\n private handleMouseDown = () => {\n this.setState({ focusedByTab: false, focusedItem: null });\n };\n\n private handleMouseDownPageLink = () => {\n if (isIE11) {\n // Клик по span внутри контейнера с tabindex=\"0\" переносит фокус именно на этот span.\n // Поэтому горячие клавиши работают пока span существует на странице.\n globalObject.setTimeout(() => this.container && this.container.focus(), 0);\n }\n };\n\n private handleKeyDown = (e: KeyboardEvent | React.KeyboardEvent<HTMLElement>) => {\n if (e.shiftKey) {\n return;\n }\n\n const target = e.target;\n\n const isArrowLeft = isKeyArrowLeft(e);\n const isArrowRight = isKeyArrowRight(e);\n\n if (\n isInstanceOf(target, globalObject.Element) &&\n (IGNORE_EVENT_TAGS.includes(target.tagName.toLowerCase()) || (target as HTMLElement).isContentEditable)\n ) {\n return;\n }\n\n if (NavigationHelper.checkKeyPressed(e, this.theme) && isArrowLeft) {\n this.setState({ focusedItem: null }, this.goBackward);\n return;\n }\n if (NavigationHelper.checkKeyPressed(e, this.theme) && isArrowRight) {\n this.setState({ focusedItem: null }, this.goForward);\n return;\n }\n\n if (this.container && this.container === e.target) {\n if (isArrowLeft) {\n this.setState({ focusedByTab: true }, this.moveFocusLeft);\n return;\n }\n if (isArrowRight) {\n this.setState({ focusedByTab: true }, this.moveFocusRight);\n return;\n }\n if (isKeyEnter(e)) {\n this.executeItemAction(this.getFocusedItem());\n return;\n }\n }\n };\n\n private handleFocus = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({ keyboardControl: true });\n\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n keyboardControl: this.getProps().useGlobalListener || false,\n });\n };\n\n private getItems = (): ItemType[] => {\n return getItems(this.props.activePage, this.props.pagesCount, this.isMobile).concat('forward');\n };\n\n private getFocusedItem = (): Nullable<ItemType> => {\n if (!this.state.focusedByTab) {\n return null;\n }\n\n const { focusedItem } = this.state;\n if (focusedItem && this.getItems().includes(focusedItem) && this.isItemFocusable(focusedItem)) {\n return focusedItem;\n }\n\n return this.props.activePage;\n };\n\n private isItemFocusable = (item: ItemType) => {\n return !this.isItemDisabled(item);\n };\n\n private isItemDisabled = (item: ItemType) => {\n switch (item) {\n case '.':\n return true;\n case 'forward':\n return !this.canGoForward();\n default:\n return false;\n }\n };\n\n private executeItemAction = (item: Nullable<ItemType>) => {\n if (item === 'forward') {\n this.goForward();\n }\n if (typeof item === 'number') {\n this.goToPage(item);\n }\n };\n\n private moveFocusLeft = () => {\n this.moveFocus(-1);\n };\n\n private moveFocusRight = () => {\n this.moveFocus(1);\n };\n\n private moveFocus = (step: number) => {\n const focusedItem = this.getFocusedItem();\n const items = this.getItems();\n let index = items.findIndex((x) => x === focusedItem);\n do {\n index = (index + step + items.length) % items.length;\n } while (!this.isItemFocusable(items[index]));\n this.setState({ focusedItem: items[index] });\n };\n\n private canGoBackward = (): boolean => {\n return this.props.activePage > 1;\n };\n\n private canGoForward = (): boolean => {\n return this.props.activePage < this.props.pagesCount;\n };\n\n private goBackward = () => {\n this.goToPage(this.props.activePage - 1);\n };\n\n private goForward = () => {\n this.goToPage(this.props.activePage + 1);\n };\n\n private goToPage = (pageNumber: number) => {\n if (pageNumber >= 1 && pageNumber !== this.props.activePage && pageNumber <= this.props.pagesCount) {\n this.props.onPageChange(pageNumber);\n }\n };\n\n private addGlobalListener = () => {\n if (this.addedGlobalListener) {\n return;\n }\n\n globalObject.document?.addEventListener('keydown', this.handleKeyDown);\n this.addedGlobalListener = true;\n };\n\n private removeGlobalListener = () => {\n if (this.addedGlobalListener) {\n globalObject.document?.removeEventListener('keydown', this.handleKeyDown);\n\n this.addedGlobalListener = false;\n }\n };\n\n private refContainer = (element: HTMLSpanElement | null) => {\n this.container = element;\n };\n\n private getPagingSizeClassNames = (): PagingSizeClassNames => {\n const size = this.getSize();\n switch (size) {\n case 'legacy':\n return {\n root: styles.pagingLegacy(this.theme),\n dots: styles.dotsLegacy(this.theme),\n forwardLink: styles.forwardLinkLegacy(this.theme),\n pageLink: styles.pageLinkLegacy(this.theme),\n };\n case 'small':\n return {\n root: styles.pagingSmall(this.theme),\n dots: styles.dotsSmall(this.theme),\n forwardLink: styles.forwardLinkSmall(this.theme),\n pageLink: styles.pageLinkSmall(this.theme),\n };\n case 'medium':\n return {\n root: styles.pagingMedium(this.theme),\n dots: styles.dotsMedium(this.theme),\n forwardLink: this.isMobile\n ? styles.forwardLinkMediumMobile(this.theme)\n : styles.forwardLinkMedium(this.theme),\n pageLink: styles.pageLinkMedium(this.theme),\n };\n case 'large':\n return {\n root: styles.pagingLarge(this.theme),\n dots: styles.dotsLarge(this.theme),\n forwardLink: this.isMobile ? styles.forwardLinkLargeMobile(this.theme) : styles.forwardLinkLarge(this.theme),\n pageLink: styles.pageLinkLarge(this.theme),\n };\n default:\n throw new TypeError(`Invalid size prop: '${this.props.size}'`);\n }\n };\n\n private getDotsIcon = () => {\n const size = this.getSize();\n return size === 'legacy' ? '...' : <DotsIcon size={size} />;\n };\n\n private getForwardIcon = () => {\n const size = this.getSize();\n const iconSize = size === 'legacy' ? parseInt(this.theme.pagingForwardIconSize) : size;\n return this.isMobile ? (\n <ForwardIconMobile size={iconSize} />\n ) : (\n <ForwardIcon size={iconSize} style={{ marginLeft: 4 }} />\n );\n };\n\n private getSize = () => {\n if (this.props.size) {\n return this.isMobile && this.props.size === 'small' ? 'medium' : this.props.size;\n }\n\n const defaultSize = isThemeGTE(this.theme, '5.3') ? 'small' : 'legacy';\n return this.isMobile && defaultSize === 'small' ? 'medium' : defaultSize;\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
2
  import type { Nullable } from '../../typings/utility-types';
3
3
  import type { CommonProps } from '../../internal/CommonWrapper';
4
+ import type { TGetRootNode } from '../../lib/rootNode';
5
+ import type { SizeProp } from '../../lib/types/props';
4
6
  export interface ItemComponentProps {
5
7
  /** Определяет, является ли страница текущей. */
6
8
  active: boolean;
@@ -18,12 +20,15 @@ export interface ItemComponentProps {
18
20
  export interface PagingProps extends CommonProps {
19
21
  activePage: number;
20
22
  /** Компонент обертки по умолчанию.
21
- * @default <span /> */
23
+ * @default <span/> */
22
24
  component?: React.ComponentType<ItemComponentProps>;
23
25
  /** Задает функцию, которая вызывается при переключении страницы. */
24
26
  onPageChange: (pageNumber: number) => void;
25
27
  /** Задает общее количество страниц. */
26
28
  pagesCount: number;
29
+ /** Задает размер контрола.
30
+ * @default 'small', начиная с версии темы 5.3. До этого по умолчанию стоит старый размер 'legacy'. */
31
+ size?: SizeProp;
27
32
  /** Делает компонент недоступным. */
28
33
  disabled?: boolean;
29
34
  /** Отключает навигационные подсказки.
@@ -58,12 +63,14 @@ export declare class Paging extends React.PureComponent<PagingProps, PagingState
58
63
  static displayName: string;
59
64
  static defaultProps: DefaultProps;
60
65
  private getProps;
61
- static propTypes: {};
66
+ getRootNode: TGetRootNode;
62
67
  private setRootNode;
63
68
  static isForward(pageNumber: number | 'forward'): boolean;
64
69
  state: PagingState;
65
70
  private theme;
66
71
  private readonly locale;
72
+ private isMobile;
73
+ private sizeClassNames;
67
74
  private addedGlobalListener;
68
75
  private container;
69
76
  componentDidMount(): void;
@@ -97,5 +104,9 @@ export declare class Paging extends React.PureComponent<PagingProps, PagingState
97
104
  private addGlobalListener;
98
105
  private removeGlobalListener;
99
106
  private refContainer;
107
+ private getPagingSizeClassNames;
108
+ private getDotsIcon;
109
+ private getForwardIcon;
110
+ private getSize;
100
111
  }
101
112
  export {};