@skbkontur/react-ui 5.0.12 → 5.1.0-next.1

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 (907) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.d.ts +16 -17
  2. package/cjs/components/Autocomplete/Autocomplete.js +13 -2
  3. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/Autocomplete/Autocomplete.md +9 -7
  5. package/cjs/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
  6. package/cjs/components/Autocomplete/locale/types.js +1 -1
  7. package/cjs/components/Button/Button.d.ts +20 -62
  8. package/cjs/components/Button/Button.js +0 -42
  9. package/cjs/components/Button/Button.js.map +1 -1
  10. package/cjs/components/Button/Button.md +40 -26
  11. package/cjs/components/Button/__docs__/Button.mdx +28 -0
  12. package/cjs/components/Calendar/Calendar.d.ts +22 -45
  13. package/cjs/components/Calendar/Calendar.js +1 -15
  14. package/cjs/components/Calendar/Calendar.js.map +1 -1
  15. package/cjs/components/Calendar/Calendar.md +12 -12
  16. package/cjs/components/Calendar/CalendarDay.d.ts +7 -0
  17. package/cjs/components/Calendar/CalendarDay.js +11 -0
  18. package/cjs/components/Calendar/CalendarDay.js.map +1 -1
  19. package/cjs/components/Calendar/CalendarDay.md +32 -32
  20. package/cjs/components/Calendar/__docs__/Calendar.mdx +28 -0
  21. package/cjs/components/Calendar/__docs__/CalendarDay.mdx +24 -0
  22. package/cjs/components/Calendar/locale/types.js +1 -1
  23. package/cjs/components/Center/Center.d.ts +4 -6
  24. package/cjs/components/Center/Center.js +3 -5
  25. package/cjs/components/Center/Center.js.map +1 -1
  26. package/cjs/components/Center/Center.md +1 -1
  27. package/cjs/components/Center/__docs__/Center.mdx +24 -0
  28. package/cjs/components/Checkbox/Checkbox.d.ts +20 -28
  29. package/cjs/components/Checkbox/Checkbox.js +7 -6
  30. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  31. package/cjs/components/Checkbox/Checkbox.md +6 -5
  32. package/cjs/components/Checkbox/__docs__/Checkbox.mdx +28 -0
  33. package/cjs/components/ComboBox/ComboBox.d.ts +67 -86
  34. package/cjs/components/ComboBox/ComboBox.js +12 -28
  35. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  36. package/cjs/components/ComboBox/ComboBox.md +41 -40
  37. package/cjs/components/ComboBox/__docs__/ComboBox.mdx +28 -0
  38. package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
  39. package/cjs/components/CurrencyInput/CurrencyHelper.js +7 -0
  40. package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  41. package/cjs/components/CurrencyInput/CurrencyInput.d.ts +12 -12
  42. package/cjs/components/CurrencyInput/CurrencyInput.js +8 -2
  43. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  44. package/cjs/components/CurrencyInput/CurrencyInput.md +3 -1
  45. package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
  46. package/cjs/components/CurrencyInput/CurrencyInputHelper.js +5 -0
  47. package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
  48. package/cjs/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
  49. package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
  50. package/cjs/components/CurrencyLabel/CurrencyLabel.js +6 -0
  51. package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  52. package/cjs/components/CurrencyLabel/CurrencyLabel.md +5 -5
  53. package/cjs/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
  54. package/cjs/components/DateInput/DateInput.d.ts +21 -29
  55. package/cjs/components/DateInput/DateInput.js +14 -2
  56. package/cjs/components/DateInput/DateInput.js.map +1 -1
  57. package/cjs/components/DateInput/DateInput.md +7 -2
  58. package/cjs/components/DateInput/__docs__/DateInput.mdx +26 -0
  59. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js +1 -1
  60. package/cjs/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
  61. package/cjs/components/DatePicker/DatePicker.d.ts +33 -23
  62. package/cjs/components/DatePicker/DatePicker.js +53 -4
  63. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  64. package/cjs/components/DatePicker/DatePicker.md +2 -2
  65. package/cjs/components/DatePicker/__docs__/DatePicker.mdx +28 -0
  66. package/cjs/components/DatePicker/locale/types.js +1 -1
  67. package/cjs/components/Dropdown/Dropdown.d.ts +25 -30
  68. package/cjs/components/Dropdown/Dropdown.js +8 -1
  69. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  70. package/cjs/components/Dropdown/Dropdown.md +2 -1
  71. package/cjs/components/Dropdown/__docs__/Dropdown.mdx +28 -0
  72. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  73. package/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
  74. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  75. package/cjs/components/DropdownMenu/DropdownMenu.md +12 -10
  76. package/cjs/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
  77. package/cjs/components/FileUploader/FileUploader.d.ts +16 -20
  78. package/cjs/components/FileUploader/FileUploader.js +5 -3
  79. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  80. package/cjs/components/FileUploader/FileUploader.md +9 -9
  81. package/cjs/components/FileUploader/__docs__/FileUploader.mdx +28 -0
  82. package/cjs/components/FileUploader/locale/types.js +1 -1
  83. package/cjs/components/FxInput/FxInput.d.ts +15 -9
  84. package/cjs/components/FxInput/FxInput.js +14 -1
  85. package/cjs/components/FxInput/FxInput.js.map +1 -1
  86. package/cjs/components/FxInput/FxInput.md +2 -0
  87. package/cjs/components/FxInput/__docs__/FxInput.mdx +28 -0
  88. package/cjs/components/Gapped/Gapped.d.ts +6 -17
  89. package/cjs/components/Gapped/Gapped.js +1 -8
  90. package/cjs/components/Gapped/Gapped.js.map +1 -1
  91. package/cjs/components/Gapped/Gapped.md +3 -2
  92. package/cjs/components/Gapped/__docs__/Gapped.mdx +24 -0
  93. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +22 -32
  94. package/cjs/components/GlobalLoader/GlobalLoader.js +14 -14
  95. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  96. package/cjs/components/GlobalLoader/GlobalLoader.md +4 -5
  97. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
  98. package/cjs/components/GlobalLoader/GlobalLoaderView.js +7 -0
  99. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  100. package/cjs/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
  101. package/cjs/components/Group/Group.d.ts +6 -0
  102. package/cjs/components/Group/Group.js +7 -1
  103. package/cjs/components/Group/Group.js.map +1 -1
  104. package/cjs/components/Group/Group.md +1 -0
  105. package/cjs/components/Group/__docs__/Group.mdx +24 -0
  106. package/cjs/components/Hint/Hint.d.ts +18 -40
  107. package/cjs/components/Hint/Hint.js +4 -16
  108. package/cjs/components/Hint/Hint.js.map +1 -1
  109. package/cjs/components/Hint/Hint.md +9 -8
  110. package/cjs/components/Hint/__docs__/Hint.mdx +29 -0
  111. package/cjs/components/Input/Input.d.ts +46 -68
  112. package/cjs/components/Input/Input.js +10 -9
  113. package/cjs/components/Input/Input.js.map +1 -1
  114. package/cjs/components/Input/Input.md +11 -2
  115. package/cjs/components/Input/Input.typings.js +1 -1
  116. package/cjs/components/Input/__docs__/Input.mdx +28 -0
  117. package/cjs/components/Kebab/Kebab.d.ts +12 -16
  118. package/cjs/components/Kebab/Kebab.js +4 -2
  119. package/cjs/components/Kebab/Kebab.js.map +1 -1
  120. package/cjs/components/Kebab/Kebab.md +9 -9
  121. package/cjs/components/Kebab/__docs__/Kebab.mdx +28 -0
  122. package/cjs/components/Link/Link.d.ts +13 -37
  123. package/cjs/components/Link/Link.js +0 -13
  124. package/cjs/components/Link/Link.js.map +1 -1
  125. package/cjs/components/Link/Link.md +12 -11
  126. package/cjs/components/Link/__docs__/Link.mdx +28 -0
  127. package/cjs/components/Loader/Loader.d.ts +13 -25
  128. package/cjs/components/Loader/Loader.js +2 -8
  129. package/cjs/components/Loader/Loader.js.map +1 -1
  130. package/cjs/components/Loader/Loader.md +1 -0
  131. package/cjs/components/Loader/__docs__/Loader.mdx +26 -0
  132. package/cjs/components/MaskedInput/MaskedInput.d.ts +13 -33
  133. package/cjs/components/MaskedInput/MaskedInput.js +0 -13
  134. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
  135. package/cjs/components/MaskedInput/MaskedInput.md +7 -5
  136. package/cjs/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
  137. package/cjs/components/MenuFooter/MenuFooter.d.ts +6 -4
  138. package/cjs/components/MenuFooter/MenuFooter.js +7 -3
  139. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  140. package/cjs/components/MenuFooter/MenuFooter.md +2 -2
  141. package/cjs/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
  142. package/cjs/components/MenuHeader/MenuHeader.d.ts +6 -4
  143. package/cjs/components/MenuHeader/MenuHeader.js +7 -3
  144. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  145. package/cjs/components/MenuHeader/MenuHeader.md +2 -2
  146. package/cjs/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
  147. package/cjs/components/MenuItem/MenuItem.d.ts +22 -55
  148. package/cjs/components/MenuItem/MenuItem.js +1 -18
  149. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  150. package/cjs/components/MenuItem/MenuItem.md +34 -30
  151. package/cjs/components/MenuItem/__docs__/MenuItem.mdx +24 -0
  152. package/cjs/components/MenuSeparator/MenuSeparator.d.ts +2 -2
  153. package/cjs/components/MenuSeparator/MenuSeparator.js +3 -2
  154. package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
  155. package/cjs/components/MenuSeparator/MenuSeparator.md +1 -1
  156. package/cjs/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
  157. package/cjs/components/MiniModal/MiniModal.d.ts +6 -0
  158. package/cjs/components/MiniModal/MiniModal.js +6 -0
  159. package/cjs/components/MiniModal/MiniModal.js.map +1 -1
  160. package/cjs/components/MiniModal/MiniModal.md +1 -3
  161. package/cjs/components/MiniModal/MiniModalFooter.d.ts +2 -7
  162. package/cjs/components/MiniModal/MiniModalFooter.js +0 -5
  163. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -1
  164. package/cjs/components/MiniModal/MiniModalHeader.d.ts +2 -5
  165. package/cjs/components/MiniModal/MiniModalHeader.js +0 -3
  166. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -1
  167. package/cjs/components/MiniModal/__docs__/MiniModal.mdx +28 -0
  168. package/cjs/components/MiniModal/__docs__/MiniModalBody.mdx +17 -0
  169. package/cjs/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
  170. package/cjs/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
  171. package/cjs/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  172. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +1 -1
  173. package/cjs/components/Modal/Modal.d.ts +12 -33
  174. package/cjs/components/Modal/Modal.js +4 -24
  175. package/cjs/components/Modal/Modal.js.map +1 -1
  176. package/cjs/components/Modal/Modal.md +3 -1
  177. package/cjs/components/Modal/Modal.styles.d.ts +4 -1
  178. package/cjs/components/Modal/Modal.styles.js +68 -31
  179. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  180. package/cjs/components/Modal/ModalBody.d.ts +2 -4
  181. package/cjs/components/Modal/ModalBody.js +1 -3
  182. package/cjs/components/Modal/ModalBody.js.map +1 -1
  183. package/cjs/components/Modal/ModalClose.js +7 -2
  184. package/cjs/components/Modal/ModalClose.js.map +1 -1
  185. package/cjs/components/Modal/ModalContext.d.ts +2 -0
  186. package/cjs/components/Modal/ModalContext.js +3 -0
  187. package/cjs/components/Modal/ModalContext.js.map +1 -1
  188. package/cjs/components/Modal/ModalFooter.d.ts +5 -15
  189. package/cjs/components/Modal/ModalFooter.js +0 -7
  190. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  191. package/cjs/components/Modal/ModalHeader.d.ts +3 -1
  192. package/cjs/components/Modal/ModalHeader.js +4 -1
  193. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  194. package/cjs/components/Modal/ModalSeparator.d.ts +1 -0
  195. package/cjs/components/Modal/ModalSeparator.js +1 -0
  196. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  197. package/cjs/components/Modal/__creevey__/Modal.creevey.mts +15 -1
  198. package/cjs/components/Modal/__docs__/Modal.mdx +28 -0
  199. package/cjs/components/Modal/__docs__/ModalBody.mdx +15 -0
  200. package/cjs/components/Modal/__docs__/ModalFooter.mdx +15 -0
  201. package/cjs/components/Modal/__docs__/ModalHeader.mdx +15 -0
  202. package/cjs/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  203. package/cjs/components/Modal/locale/types.js +1 -1
  204. package/cjs/components/Paging/Paging.d.ts +20 -15
  205. package/cjs/components/Paging/Paging.js +17 -1
  206. package/cjs/components/Paging/Paging.js.map +1 -1
  207. package/cjs/components/Paging/Paging.md +3 -2
  208. package/cjs/components/Paging/PagingDefaultComponent.d.ts +2 -0
  209. package/cjs/components/Paging/PagingDefaultComponent.js +3 -0
  210. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -1
  211. package/cjs/components/Paging/__docs__/Paging.mdx +28 -0
  212. package/cjs/components/Paging/locale/types.js +1 -1
  213. package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -3
  214. package/cjs/components/PasswordInput/PasswordInput.js +35 -9
  215. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  216. package/cjs/components/PasswordInput/PasswordInput.md +3 -2
  217. package/cjs/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  218. package/cjs/components/PasswordInput/locale/types.js +1 -1
  219. package/cjs/components/Radio/Radio.d.ts +13 -28
  220. package/cjs/components/Radio/Radio.js +1 -8
  221. package/cjs/components/Radio/Radio.js.map +1 -1
  222. package/cjs/components/Radio/Radio.md +3 -2
  223. package/cjs/components/Radio/__docs__/Radio.mdx +28 -0
  224. package/cjs/components/RadioGroup/RadioGroup.d.ts +28 -54
  225. package/cjs/components/RadioGroup/RadioGroup.js +4 -15
  226. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  227. package/cjs/components/RadioGroup/RadioGroup.md +1 -0
  228. package/cjs/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  229. package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  230. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +6 -2
  231. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  232. package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  233. package/cjs/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  234. package/cjs/components/ResponsiveLayout/types.js +1 -1
  235. package/cjs/components/ScrollContainer/ScrollBar.d.ts +7 -0
  236. package/cjs/components/ScrollContainer/ScrollBar.js +13 -0
  237. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  238. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  239. package/cjs/components/ScrollContainer/ScrollContainer.js +8 -1
  240. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  241. package/cjs/components/ScrollContainer/ScrollContainer.md +5 -3
  242. package/cjs/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  243. package/cjs/components/Select/Item.d.ts +2 -0
  244. package/cjs/components/Select/Item.js +3 -0
  245. package/cjs/components/Select/Item.js.map +1 -1
  246. package/cjs/components/Select/Select.d.ts +54 -38
  247. package/cjs/components/Select/Select.js +57 -1
  248. package/cjs/components/Select/Select.js.map +1 -1
  249. package/cjs/components/Select/Select.md +7 -6
  250. package/cjs/components/Select/__docs__/Select.mdx +28 -0
  251. package/cjs/components/Select/locale/types.js +1 -1
  252. package/cjs/components/SidePage/SidePage.d.ts +17 -38
  253. package/cjs/components/SidePage/SidePage.js +15 -28
  254. package/cjs/components/SidePage/SidePage.js.map +1 -1
  255. package/cjs/components/SidePage/SidePage.md +2 -1
  256. package/cjs/components/SidePage/SidePage.styles.d.ts +8 -1
  257. package/cjs/components/SidePage/SidePage.styles.js +83 -26
  258. package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
  259. package/cjs/components/SidePage/SidePageCloseButton.d.ts +6 -1
  260. package/cjs/components/SidePage/SidePageCloseButton.js +14 -2
  261. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  262. package/cjs/components/SidePage/SidePageFooter.d.ts +4 -9
  263. package/cjs/components/SidePage/SidePageFooter.js +0 -2
  264. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  265. package/cjs/components/SidePage/SidePageHeader.d.ts +2 -1
  266. package/cjs/components/SidePage/SidePageHeader.js +14 -7
  267. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  268. package/cjs/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
  269. package/cjs/components/SidePage/__docs__/SidePage.mdx +28 -0
  270. package/cjs/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  271. package/cjs/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  272. package/cjs/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  273. package/cjs/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  274. package/cjs/components/SidePage/locale/types.js +1 -1
  275. package/cjs/components/SingleToast/SingleToast.d.ts +5 -1
  276. package/cjs/components/SingleToast/SingleToast.js +5 -1
  277. package/cjs/components/SingleToast/SingleToast.js.map +1 -1
  278. package/cjs/components/SingleToast/SingleToast.md +2 -1
  279. package/cjs/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  280. package/cjs/components/Spinner/Spinner.d.ts +15 -20
  281. package/cjs/components/Spinner/Spinner.js +6 -7
  282. package/cjs/components/Spinner/Spinner.js.map +1 -1
  283. package/cjs/components/Spinner/Spinner.md +2 -1
  284. package/cjs/components/Spinner/__docs__/Spinner.mdx +28 -0
  285. package/cjs/components/Sticky/Sticky.d.ts +9 -4
  286. package/cjs/components/Sticky/Sticky.js +9 -1
  287. package/cjs/components/Sticky/Sticky.js.map +1 -1
  288. package/cjs/components/Sticky/Sticky.md +1 -0
  289. package/cjs/components/Sticky/__docs__/Sticky.mdx +24 -0
  290. package/cjs/components/Switcher/Switcher.d.ts +18 -7
  291. package/cjs/components/Switcher/Switcher.js +14 -3
  292. package/cjs/components/Switcher/Switcher.js.map +1 -1
  293. package/cjs/components/Switcher/Switcher.md +6 -2
  294. package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
  295. package/cjs/components/Switcher/Switcher.styles.js +20 -1
  296. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  297. package/cjs/components/Switcher/__docs__/Switcher.mdx +28 -0
  298. package/cjs/components/Tabs/Tab.d.ts +12 -31
  299. package/cjs/components/Tabs/Tab.js +1 -20
  300. package/cjs/components/Tabs/Tab.js.map +1 -1
  301. package/cjs/components/Tabs/Tab.md +2 -0
  302. package/cjs/components/Tabs/Tabs.d.ts +14 -25
  303. package/cjs/components/Tabs/Tabs.js +6 -17
  304. package/cjs/components/Tabs/Tabs.js.map +1 -1
  305. package/cjs/components/Tabs/Tabs.md +3 -2
  306. package/cjs/components/Tabs/__docs__/Tab.mdx +28 -0
  307. package/cjs/components/Tabs/__docs__/Tabs.mdx +28 -0
  308. package/cjs/components/Textarea/Textarea.d.ts +26 -52
  309. package/cjs/components/Textarea/Textarea.js +3 -23
  310. package/cjs/components/Textarea/Textarea.js.map +1 -1
  311. package/cjs/components/Textarea/Textarea.md +4 -2
  312. package/cjs/components/Textarea/__docs__/Textarea.mdx +28 -0
  313. package/cjs/components/Toast/Toast.d.ts +12 -9
  314. package/cjs/components/Toast/Toast.js +13 -5
  315. package/cjs/components/Toast/Toast.js.map +1 -1
  316. package/cjs/components/Toast/Toast.md +4 -4
  317. package/cjs/components/Toast/ToastStatic.d.ts +2 -2
  318. package/cjs/components/Toast/ToastStatic.js +15 -5
  319. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  320. package/cjs/components/Toast/ToastView.d.ts +3 -6
  321. package/cjs/components/Toast/ToastView.js +3 -5
  322. package/cjs/components/Toast/ToastView.js.map +1 -1
  323. package/cjs/components/Toast/ToastView.styles.js +4 -4
  324. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  325. package/cjs/components/Toast/__creevey__/Toast.creevey.mts +23 -0
  326. package/cjs/components/Toast/__docs__/Toast.mdx +28 -0
  327. package/cjs/components/Toast/locale/types.js +1 -1
  328. package/cjs/components/Toggle/Toggle.d.ts +25 -48
  329. package/cjs/components/Toggle/Toggle.js +4 -12
  330. package/cjs/components/Toggle/Toggle.js.map +1 -1
  331. package/cjs/components/Toggle/Toggle.md +9 -9
  332. package/cjs/components/Toggle/__docs__/Toggle.mdx +28 -0
  333. package/cjs/components/Token/Token.d.ts +17 -9
  334. package/cjs/components/Token/Token.js +9 -1
  335. package/cjs/components/Token/Token.js.map +1 -1
  336. package/cjs/components/Token/Token.md +86 -3
  337. package/cjs/components/Token/TokenView.d.ts +3 -0
  338. package/cjs/components/Token/TokenView.js +3 -0
  339. package/cjs/components/Token/TokenView.js.map +1 -1
  340. package/cjs/components/Token/__docs__/Token.mdx +28 -0
  341. package/cjs/components/Token/locale/types.js +1 -1
  342. package/cjs/components/TokenInput/TextWidthHelper.d.ts +3 -0
  343. package/cjs/components/TokenInput/TextWidthHelper.js +5 -0
  344. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  345. package/cjs/components/TokenInput/TokenInput.d.ts +54 -97
  346. package/cjs/components/TokenInput/TokenInput.js +7 -18
  347. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  348. package/cjs/components/TokenInput/TokenInput.md +12 -10
  349. package/cjs/components/TokenInput/TokenInputMenu.d.ts +5 -5
  350. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  351. package/cjs/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  352. package/cjs/components/TokenInput/locale/types.js +1 -1
  353. package/cjs/components/Tooltip/Tooltip.d.ts +28 -68
  354. package/cjs/components/Tooltip/Tooltip.js +9 -63
  355. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  356. package/cjs/components/Tooltip/Tooltip.md +5 -0
  357. package/cjs/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  358. package/cjs/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  359. package/cjs/components/TooltipMenu/TooltipMenu.js +1 -16
  360. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  361. package/cjs/components/TooltipMenu/TooltipMenu.md +13 -10
  362. package/cjs/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  363. package/cjs/index.d.ts +1 -2
  364. package/cjs/index.js +1 -2
  365. package/cjs/index.js.map +1 -1
  366. package/cjs/internal/CommonWrapper/types.js +1 -1
  367. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
  368. package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -2
  369. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  370. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
  371. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +1 -1
  372. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  373. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js +1 -1
  374. package/cjs/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
  375. package/cjs/internal/CustomComboBox/locale/types.js +1 -1
  376. package/cjs/internal/DateSelect/locale/types.js +1 -1
  377. package/cjs/internal/FileUploaderControl/fileUtils.js +1 -1
  378. package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -1
  379. package/cjs/internal/InputLikeText/InputLikeText.js +12 -11
  380. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  381. package/cjs/internal/Popup/types.js +1 -1
  382. package/cjs/internal/RenderContainer/RenderContainerTypes.js +1 -1
  383. package/cjs/internal/ThemePlayground/Playground.styles.js +2 -1
  384. package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
  385. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
  386. package/cjs/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
  387. package/cjs/internal/ThemePlayground/constants.js +1 -1
  388. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  389. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  390. package/cjs/internal/ThemeShowcase/VariablesCollector.js +0 -1
  391. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  392. package/cjs/internal/themes/BasicLightTheme.d.ts +5 -1198
  393. package/cjs/internal/themes/BasicLightTheme.js +2 -2512
  394. package/cjs/internal/themes/BasicLightTheme.js.map +1 -1
  395. package/cjs/internal/themes/BasicTheme.d.ts +1217 -0
  396. package/cjs/internal/themes/BasicTheme.js +2536 -0
  397. package/cjs/internal/themes/BasicTheme.js.map +1 -0
  398. package/cjs/internal/themes/DarkTheme5_0.d.ts +1 -0
  399. package/cjs/internal/themes/DarkTheme5_0.js +556 -0
  400. package/cjs/internal/themes/DarkTheme5_0.js.map +1 -0
  401. package/cjs/internal/themes/DarkTheme5_1.d.ts +1 -0
  402. package/cjs/internal/themes/DarkTheme5_1.js +41 -0
  403. package/cjs/internal/themes/DarkTheme5_1.js.map +1 -0
  404. package/cjs/internal/themes/LightTheme5_0.d.ts +1 -0
  405. package/cjs/internal/themes/LightTheme5_0.js +9 -0
  406. package/cjs/internal/themes/LightTheme5_0.js.map +1 -0
  407. package/cjs/internal/themes/LightTheme5_1.d.ts +1 -0
  408. package/cjs/internal/themes/LightTheme5_1.js +41 -0
  409. package/cjs/internal/themes/LightTheme5_1.js.map +1 -0
  410. package/cjs/lib/ModalStack.d.ts +1 -0
  411. package/cjs/lib/ModalStack.js +6 -4
  412. package/cjs/lib/ModalStack.js.map +1 -1
  413. package/cjs/lib/date/types.js +6 -6
  414. package/cjs/lib/date/types.js.map +1 -1
  415. package/cjs/lib/events/MouseDrag.js +1 -1
  416. package/cjs/lib/events/MouseDrag.js.map +1 -1
  417. package/cjs/lib/events/keyboard/KeyboardEventCodes.js +1 -1
  418. package/cjs/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
  419. package/cjs/lib/locale/types.js +1 -1
  420. package/cjs/lib/locale/types.js.map +1 -1
  421. package/cjs/lib/theming/Theme.d.ts +4 -3
  422. package/cjs/lib/theming/Theme.js +1 -1
  423. package/cjs/lib/theming/Theme.js.map +1 -1
  424. package/cjs/lib/theming/ThemeContext.d.ts +1 -1
  425. package/cjs/lib/theming/ThemeContext.js +2 -2
  426. package/cjs/lib/theming/ThemeContext.js.map +1 -1
  427. package/cjs/lib/theming/ThemeFactory.d.ts +9 -0
  428. package/cjs/lib/theming/ThemeFactory.js +28 -9
  429. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  430. package/cjs/lib/theming/ThemeHelpers.d.ts +55 -8
  431. package/cjs/lib/theming/ThemeHelpers.js +94 -22
  432. package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
  433. package/cjs/lib/theming/ThemeVersions.d.ts +25 -0
  434. package/cjs/lib/theming/ThemeVersions.js +58 -0
  435. package/cjs/lib/theming/ThemeVersions.js.map +1 -0
  436. package/cjs/lib/theming/themes/DarkTheme.d.ts +3 -1
  437. package/cjs/lib/theming/themes/DarkTheme.js +6 -4
  438. package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
  439. package/cjs/lib/theming/themes/LightTheme.d.ts +3 -1
  440. package/cjs/lib/theming/themes/LightTheme.js +6 -4
  441. package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
  442. package/cjs/lib/theming/themes/LightThemeMobile.d.ts +1 -1
  443. package/cjs/lib/theming/useTheme.d.ts +1 -1
  444. package/cjs/lib/types/button-link.js +1 -1
  445. package/cjs/lib/types/polymorphic-component.js +1 -1
  446. package/cjs/lib/types/props.js +1 -1
  447. package/components/Autocomplete/Autocomplete/Autocomplete.js +3 -2
  448. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  449. package/components/Autocomplete/Autocomplete.d.ts +16 -17
  450. package/components/Autocomplete/Autocomplete.md +9 -7
  451. package/components/Autocomplete/__docs__/Autocomplete.mdx +26 -0
  452. package/components/Autocomplete/locale/types/types.js +0 -1
  453. package/components/Button/Button/Button.js.map +1 -1
  454. package/components/Button/Button.d.ts +20 -62
  455. package/components/Button/Button.md +40 -26
  456. package/components/Button/__docs__/Button.mdx +28 -0
  457. package/components/Calendar/Calendar/Calendar.js +1 -1
  458. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  459. package/components/Calendar/Calendar.d.ts +22 -45
  460. package/components/Calendar/Calendar.md +12 -12
  461. package/components/Calendar/CalendarDay/CalendarDay.js +2 -0
  462. package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
  463. package/components/Calendar/CalendarDay.d.ts +7 -0
  464. package/components/Calendar/CalendarDay.md +32 -32
  465. package/components/Calendar/__docs__/Calendar.mdx +28 -0
  466. package/components/Calendar/__docs__/CalendarDay.mdx +24 -0
  467. package/components/Calendar/locale/types/types.js +0 -1
  468. package/components/Center/Center/Center.js +3 -1
  469. package/components/Center/Center/Center.js.map +1 -1
  470. package/components/Center/Center.d.ts +4 -6
  471. package/components/Center/Center.md +1 -1
  472. package/components/Center/__docs__/Center.mdx +24 -0
  473. package/components/Checkbox/Checkbox/Checkbox.js +7 -0
  474. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  475. package/components/Checkbox/Checkbox.d.ts +20 -28
  476. package/components/Checkbox/Checkbox.md +6 -5
  477. package/components/Checkbox/__docs__/Checkbox.mdx +28 -0
  478. package/components/ComboBox/ComboBox/ComboBox.js +13 -2
  479. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  480. package/components/ComboBox/ComboBox.d.ts +67 -86
  481. package/components/ComboBox/ComboBox.md +41 -40
  482. package/components/ComboBox/__docs__/ComboBox.mdx +28 -0
  483. package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
  484. package/components/CurrencyInput/CurrencyHelper.d.ts +4 -0
  485. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +5 -2
  486. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  487. package/components/CurrencyInput/CurrencyInput.d.ts +12 -12
  488. package/components/CurrencyInput/CurrencyInput.md +3 -1
  489. package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
  490. package/components/CurrencyInput/CurrencyInputHelper.d.ts +3 -0
  491. package/components/CurrencyInput/__docs__/CurrencyInput.mdx +28 -0
  492. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +4 -0
  493. package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
  494. package/components/CurrencyLabel/CurrencyLabel.d.ts +8 -5
  495. package/components/CurrencyLabel/CurrencyLabel.md +5 -5
  496. package/components/CurrencyLabel/__docs__/CurrencyLabel.mdx +24 -0
  497. package/components/DateInput/DateInput/DateInput.js +8 -1
  498. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  499. package/components/DateInput/DateInput.d.ts +21 -29
  500. package/components/DateInput/DateInput.md +7 -2
  501. package/components/DateInput/__docs__/DateInput.mdx +26 -0
  502. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js +3 -3
  503. package/components/DateInput/helpers/DateInputKeyboardActions/DateInputKeyboardActions.js.map +1 -1
  504. package/components/DatePicker/DatePicker/DatePicker.js +33 -5
  505. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  506. package/components/DatePicker/DatePicker.d.ts +33 -23
  507. package/components/DatePicker/DatePicker.md +2 -2
  508. package/components/DatePicker/__docs__/DatePicker.mdx +28 -0
  509. package/components/DatePicker/locale/types/types.js +0 -1
  510. package/components/Dropdown/Dropdown/Dropdown.js +7 -1
  511. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  512. package/components/Dropdown/Dropdown.d.ts +25 -30
  513. package/components/Dropdown/Dropdown.md +2 -1
  514. package/components/Dropdown/__docs__/Dropdown.mdx +28 -0
  515. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +1 -1
  516. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  517. package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  518. package/components/DropdownMenu/DropdownMenu.md +12 -10
  519. package/components/DropdownMenu/__docs__/DropdownMenu.mdx +28 -0
  520. package/components/FileUploader/FileUploader/FileUploader.js +6 -0
  521. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  522. package/components/FileUploader/FileUploader.d.ts +16 -20
  523. package/components/FileUploader/FileUploader.md +9 -9
  524. package/components/FileUploader/__docs__/FileUploader.mdx +28 -0
  525. package/components/FileUploader/locale/types/types.js +0 -1
  526. package/components/FxInput/FxInput/FxInput.js +7 -1
  527. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  528. package/components/FxInput/FxInput.d.ts +15 -9
  529. package/components/FxInput/FxInput.md +2 -0
  530. package/components/FxInput/__docs__/FxInput.mdx +28 -0
  531. package/components/Gapped/Gapped/Gapped.js +1 -1
  532. package/components/Gapped/Gapped/Gapped.js.map +1 -1
  533. package/components/Gapped/Gapped.d.ts +6 -17
  534. package/components/Gapped/Gapped.md +3 -2
  535. package/components/Gapped/__docs__/Gapped.mdx +24 -0
  536. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +13 -0
  537. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  538. package/components/GlobalLoader/GlobalLoader.d.ts +22 -32
  539. package/components/GlobalLoader/GlobalLoader.md +4 -5
  540. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  541. package/components/GlobalLoader/GlobalLoaderView.d.ts +4 -0
  542. package/components/GlobalLoader/__docs__/GlobalLoader.mdx +28 -0
  543. package/components/Group/Group/Group.js +6 -0
  544. package/components/Group/Group/Group.js.map +1 -1
  545. package/components/Group/Group.d.ts +6 -0
  546. package/components/Group/Group.md +1 -0
  547. package/components/Group/__docs__/Group.mdx +24 -0
  548. package/components/Hint/Hint/Hint.js +4 -1
  549. package/components/Hint/Hint/Hint.js.map +1 -1
  550. package/components/Hint/Hint.d.ts +18 -40
  551. package/components/Hint/Hint.md +9 -8
  552. package/components/Hint/__docs__/Hint.mdx +29 -0
  553. package/components/Input/Input/Input.js +10 -1
  554. package/components/Input/Input/Input.js.map +1 -1
  555. package/components/Input/Input.d.ts +46 -68
  556. package/components/Input/Input.md +11 -2
  557. package/components/Input/Input.typings/Input.typings.js +0 -1
  558. package/components/Input/__docs__/Input.mdx +28 -0
  559. package/components/Kebab/Kebab/Kebab.js +4 -0
  560. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  561. package/components/Kebab/Kebab.d.ts +12 -16
  562. package/components/Kebab/Kebab.md +9 -9
  563. package/components/Kebab/__docs__/Kebab.mdx +28 -0
  564. package/components/Link/Link/Link.js.map +1 -1
  565. package/components/Link/Link.d.ts +13 -37
  566. package/components/Link/Link.md +12 -11
  567. package/components/Link/__docs__/Link.mdx +28 -0
  568. package/components/Loader/Loader/Loader.js +2 -2
  569. package/components/Loader/Loader/Loader.js.map +1 -1
  570. package/components/Loader/Loader.d.ts +13 -25
  571. package/components/Loader/Loader.md +1 -0
  572. package/components/Loader/__docs__/Loader.mdx +26 -0
  573. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
  574. package/components/MaskedInput/MaskedInput.d.ts +13 -33
  575. package/components/MaskedInput/MaskedInput.md +7 -5
  576. package/components/MaskedInput/__docs__/MaskedInput.mdx +28 -0
  577. package/components/MenuFooter/MenuFooter/MenuFooter.js +3 -3
  578. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  579. package/components/MenuFooter/MenuFooter.d.ts +6 -4
  580. package/components/MenuFooter/MenuFooter.md +2 -2
  581. package/components/MenuFooter/__docs__/MenuFooter.mdx +24 -0
  582. package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -3
  583. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  584. package/components/MenuHeader/MenuHeader.d.ts +6 -4
  585. package/components/MenuHeader/MenuHeader.md +2 -2
  586. package/components/MenuHeader/__docs__/MenuHeader.mdx +24 -0
  587. package/components/MenuItem/MenuItem/MenuItem.js +1 -2
  588. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  589. package/components/MenuItem/MenuItem.d.ts +22 -55
  590. package/components/MenuItem/MenuItem.md +34 -30
  591. package/components/MenuItem/__docs__/MenuItem.mdx +24 -0
  592. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +3 -2
  593. package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
  594. package/components/MenuSeparator/MenuSeparator.d.ts +2 -2
  595. package/components/MenuSeparator/MenuSeparator.md +1 -1
  596. package/components/MenuSeparator/__docs__/MenuSeparator.mdx +24 -0
  597. package/components/MiniModal/MiniModal/MiniModal.js +7 -0
  598. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
  599. package/components/MiniModal/MiniModal.d.ts +6 -0
  600. package/components/MiniModal/MiniModal.md +1 -3
  601. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
  602. package/components/MiniModal/MiniModalFooter.d.ts +2 -7
  603. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
  604. package/components/MiniModal/MiniModalHeader.d.ts +2 -5
  605. package/components/MiniModal/__docs__/MiniModal.mdx +28 -0
  606. package/components/MiniModal/__docs__/MiniModalBody.mdx +17 -0
  607. package/components/MiniModal/__docs__/MiniModalFooter.mdx +17 -0
  608. package/components/MiniModal/__docs__/MiniModalHeader.mdx +18 -0
  609. package/components/MiniModal/__docs__/MiniModalIndent.mdx +11 -0
  610. package/components/MiniModal/getMiniModalTheme.d.ts +1 -1
  611. package/components/Modal/Modal/Modal.js +4 -9
  612. package/components/Modal/Modal/Modal.js.map +1 -1
  613. package/components/Modal/Modal.d.ts +12 -33
  614. package/components/Modal/Modal.md +3 -1
  615. package/components/Modal/Modal.styles/Modal.styles.js +40 -31
  616. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  617. package/components/Modal/Modal.styles.d.ts +4 -1
  618. package/components/Modal/ModalBody/ModalBody.js +1 -1
  619. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  620. package/components/Modal/ModalBody.d.ts +2 -4
  621. package/components/Modal/ModalClose/ModalClose.js +3 -1
  622. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  623. package/components/Modal/ModalContext/ModalContext.js.map +1 -1
  624. package/components/Modal/ModalContext.d.ts +2 -0
  625. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  626. package/components/Modal/ModalFooter.d.ts +5 -15
  627. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  628. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  629. package/components/Modal/ModalHeader.d.ts +3 -1
  630. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  631. package/components/Modal/ModalSeparator.d.ts +1 -0
  632. package/components/Modal/__creevey__/Modal.creevey.mts +15 -1
  633. package/components/Modal/__docs__/Modal.mdx +28 -0
  634. package/components/Modal/__docs__/ModalBody.mdx +15 -0
  635. package/components/Modal/__docs__/ModalFooter.mdx +15 -0
  636. package/components/Modal/__docs__/ModalHeader.mdx +15 -0
  637. package/components/Modal/__docs__/ModalSeparator.mdx +15 -0
  638. package/components/Modal/locale/types/types.js +0 -1
  639. package/components/Paging/Paging/Paging.js +4 -0
  640. package/components/Paging/Paging/Paging.js.map +1 -1
  641. package/components/Paging/Paging.d.ts +20 -15
  642. package/components/Paging/Paging.md +3 -2
  643. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -1
  644. package/components/Paging/PagingDefaultComponent.d.ts +2 -0
  645. package/components/Paging/__docs__/Paging.mdx +28 -0
  646. package/components/Paging/locale/types/types.js +0 -1
  647. package/components/PasswordInput/PasswordInput/PasswordInput.js +32 -10
  648. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  649. package/components/PasswordInput/PasswordInput.d.ts +10 -3
  650. package/components/PasswordInput/PasswordInput.md +3 -2
  651. package/components/PasswordInput/__docs__/PasswordInput.mdx +28 -0
  652. package/components/PasswordInput/locale/types/types.js +0 -1
  653. package/components/Radio/Radio/Radio.js +1 -1
  654. package/components/Radio/Radio/Radio.js.map +1 -1
  655. package/components/Radio/Radio.d.ts +13 -28
  656. package/components/Radio/Radio.md +3 -2
  657. package/components/Radio/__docs__/Radio.mdx +28 -0
  658. package/components/RadioGroup/RadioGroup/RadioGroup.js +4 -5
  659. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  660. package/components/RadioGroup/RadioGroup.d.ts +28 -54
  661. package/components/RadioGroup/RadioGroup.md +1 -0
  662. package/components/RadioGroup/__docs__/RadioGroup.mdx +28 -0
  663. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +1 -2
  664. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  665. package/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -1
  666. package/components/ResponsiveLayout/ResponsiveLayout.md +4 -3
  667. package/components/ResponsiveLayout/__docs__/ResponsiveLayout.mdx +97 -0
  668. package/components/ResponsiveLayout/types/types.js +0 -1
  669. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  670. package/components/ScrollContainer/ScrollBar.d.ts +7 -0
  671. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +4 -0
  672. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  673. package/components/ScrollContainer/ScrollContainer.d.ts +23 -29
  674. package/components/ScrollContainer/ScrollContainer.md +5 -3
  675. package/components/ScrollContainer/__docs__/ScrollContainer.mdx +24 -0
  676. package/components/Select/Item/Item.js.map +1 -1
  677. package/components/Select/Item.d.ts +2 -0
  678. package/components/Select/Select/Select.js +11 -0
  679. package/components/Select/Select/Select.js.map +1 -1
  680. package/components/Select/Select.d.ts +54 -38
  681. package/components/Select/Select.md +7 -6
  682. package/components/Select/__docs__/Select.mdx +28 -0
  683. package/components/Select/locale/types/types.js +0 -1
  684. package/components/SidePage/SidePage/SidePage.js +28 -16
  685. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  686. package/components/SidePage/SidePage.d.ts +17 -38
  687. package/components/SidePage/SidePage.md +2 -1
  688. package/components/SidePage/SidePage.styles/SidePage.styles.js +48 -26
  689. package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
  690. package/components/SidePage/SidePage.styles.d.ts +8 -1
  691. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +6 -2
  692. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  693. package/components/SidePage/SidePageCloseButton.d.ts +6 -1
  694. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  695. package/components/SidePage/SidePageFooter.d.ts +4 -9
  696. package/components/SidePage/SidePageHeader/SidePageHeader.js +13 -5
  697. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  698. package/components/SidePage/SidePageHeader.d.ts +2 -1
  699. package/components/SidePage/__creevey__/SidePage.creevey.mts +103 -1
  700. package/components/SidePage/__docs__/SidePage.mdx +28 -0
  701. package/components/SidePage/__docs__/SidePageBody.mdx +15 -0
  702. package/components/SidePage/__docs__/SidePageContainer.mdx +15 -0
  703. package/components/SidePage/__docs__/SidePageFooter.mdx +15 -0
  704. package/components/SidePage/__docs__/SidePageHeader.mdx +15 -0
  705. package/components/SidePage/locale/types/types.js +0 -1
  706. package/components/SingleToast/SingleToast/SingleToast.js +5 -1
  707. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
  708. package/components/SingleToast/SingleToast.d.ts +5 -1
  709. package/components/SingleToast/SingleToast.md +2 -1
  710. package/components/SingleToast/__docs__/SingleToast.mdx +28 -0
  711. package/components/Spinner/Spinner/Spinner.js +6 -2
  712. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  713. package/components/Spinner/Spinner.d.ts +15 -20
  714. package/components/Spinner/Spinner.md +2 -1
  715. package/components/Spinner/__docs__/Spinner.mdx +28 -0
  716. package/components/Sticky/Sticky/Sticky.js +5 -0
  717. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  718. package/components/Sticky/Sticky.d.ts +9 -4
  719. package/components/Sticky/Sticky.md +1 -0
  720. package/components/Sticky/__docs__/Sticky.mdx +24 -0
  721. package/components/Switcher/Switcher/Switcher.js +16 -6
  722. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  723. package/components/Switcher/Switcher.d.ts +18 -7
  724. package/components/Switcher/Switcher.md +6 -2
  725. package/components/Switcher/Switcher.styles/Switcher.styles.js +4 -1
  726. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  727. package/components/Switcher/Switcher.styles.d.ts +1 -0
  728. package/components/Switcher/__docs__/Switcher.mdx +28 -0
  729. package/components/Tabs/Tab/Tab.js +1 -1
  730. package/components/Tabs/Tab/Tab.js.map +1 -1
  731. package/components/Tabs/Tab.d.ts +12 -31
  732. package/components/Tabs/Tab.md +2 -0
  733. package/components/Tabs/Tabs/Tabs.js +6 -1
  734. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  735. package/components/Tabs/Tabs.d.ts +14 -25
  736. package/components/Tabs/Tabs.md +3 -2
  737. package/components/Tabs/__docs__/Tab.mdx +28 -0
  738. package/components/Tabs/__docs__/Tabs.mdx +28 -0
  739. package/components/Textarea/Textarea/Textarea.js +3 -4
  740. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  741. package/components/Textarea/Textarea.d.ts +26 -52
  742. package/components/Textarea/Textarea.md +4 -2
  743. package/components/Textarea/__docs__/Textarea.mdx +28 -0
  744. package/components/Toast/Toast/Toast.js +17 -12
  745. package/components/Toast/Toast/Toast.js.map +1 -1
  746. package/components/Toast/Toast.d.ts +12 -9
  747. package/components/Toast/Toast.md +4 -4
  748. package/components/Toast/ToastStatic/ToastStatic.js +5 -5
  749. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  750. package/components/Toast/ToastStatic.d.ts +2 -2
  751. package/components/Toast/ToastView/ToastView.js +2 -1
  752. package/components/Toast/ToastView/ToastView.js.map +1 -1
  753. package/components/Toast/ToastView.d.ts +3 -6
  754. package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
  755. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  756. package/components/Toast/__creevey__/Toast.creevey.mts +23 -0
  757. package/components/Toast/__docs__/Toast.mdx +28 -0
  758. package/components/Toast/locale/types/types.js +0 -1
  759. package/components/Toggle/Toggle/Toggle.js +4 -1
  760. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  761. package/components/Toggle/Toggle.d.ts +25 -48
  762. package/components/Toggle/Toggle.md +9 -9
  763. package/components/Toggle/__docs__/Toggle.mdx +28 -0
  764. package/components/Token/Token/Token.js +6 -0
  765. package/components/Token/Token/Token.js.map +1 -1
  766. package/components/Token/Token.d.ts +17 -9
  767. package/components/Token/Token.md +86 -3
  768. package/components/Token/TokenView/TokenView.js.map +1 -1
  769. package/components/Token/TokenView.d.ts +3 -0
  770. package/components/Token/__docs__/Token.mdx +28 -0
  771. package/components/Token/locale/types/types.js +0 -1
  772. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  773. package/components/TokenInput/TextWidthHelper.d.ts +3 -0
  774. package/components/TokenInput/TokenInput/TokenInput.js +9 -3
  775. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  776. package/components/TokenInput/TokenInput.d.ts +54 -97
  777. package/components/TokenInput/TokenInput.md +12 -10
  778. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  779. package/components/TokenInput/TokenInputMenu.d.ts +5 -5
  780. package/components/TokenInput/__docs__/TokenInput.mdx +28 -0
  781. package/components/TokenInput/locale/types/types.js +0 -1
  782. package/components/Tooltip/Tooltip/Tooltip.js +9 -0
  783. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  784. package/components/Tooltip/Tooltip.d.ts +28 -68
  785. package/components/Tooltip/Tooltip.md +5 -0
  786. package/components/Tooltip/__docs__/Tooltip.mdx +28 -0
  787. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +1 -1
  788. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  789. package/components/TooltipMenu/TooltipMenu.d.ts +13 -28
  790. package/components/TooltipMenu/TooltipMenu.md +13 -10
  791. package/components/TooltipMenu/__docs__/TooltipMenu.mdx +24 -0
  792. package/index.d.ts +1 -2
  793. package/index.js +1 -2
  794. package/index.js.map +1 -1
  795. package/internal/CommonWrapper/index/index.js +1 -2
  796. package/internal/CommonWrapper/index/index.js.map +1 -1
  797. package/internal/CommonWrapper/types/types.js +0 -1
  798. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +10 -2
  799. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  800. package/internal/CustomComboBox/CustomComboBox.d.ts +4 -1
  801. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +1 -1
  802. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  803. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -0
  804. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js +3 -3
  805. package/internal/CustomComboBox/CustomComboBoxTypes/CustomComboBoxTypes.js.map +1 -1
  806. package/internal/CustomComboBox/locale/types/types.js +0 -1
  807. package/internal/DateSelect/locale/types/types.js +0 -1
  808. package/internal/FileUploaderControl/fileUtils/fileUtils.js +3 -3
  809. package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -1
  810. package/internal/InputLikeText/InputLikeText/InputLikeText.js +12 -6
  811. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  812. package/internal/Popup/types/types.js +0 -1
  813. package/internal/RenderContainer/RenderContainerTypes/RenderContainerTypes.js +0 -1
  814. package/internal/ThemePlayground/Playground.styles/Playground.styles.js +1 -1
  815. package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
  816. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.d.mts +1 -0
  817. package/internal/ThemePlayground/__creevey__/Theme5_0.creevey.mts +36 -0
  818. package/internal/ThemePlayground/__creevey__/Theme5_0.stories.d.ts +4 -0
  819. package/internal/ThemePlayground/constants/constants.js +3 -3
  820. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  821. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  822. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  823. package/internal/ZIndex/index/index.js +1 -2
  824. package/internal/ZIndex/index/index.js.map +1 -1
  825. package/internal/themes/BasicLightTheme/BasicLightTheme.js +5 -3338
  826. package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +1 -1
  827. package/internal/themes/BasicLightTheme.d.ts +5 -1198
  828. package/internal/themes/BasicTheme/BasicTheme.js +3360 -0
  829. package/internal/themes/BasicTheme/BasicTheme.js.map +1 -0
  830. package/internal/themes/BasicTheme/package.json +6 -0
  831. package/internal/themes/BasicTheme.d.ts +1217 -0
  832. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +409 -0
  833. package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +1 -0
  834. package/internal/themes/DarkTheme5_0/package.json +6 -0
  835. package/internal/themes/DarkTheme5_0.d.ts +1 -0
  836. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +52 -0
  837. package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +1 -0
  838. package/internal/themes/DarkTheme5_1/package.json +6 -0
  839. package/internal/themes/DarkTheme5_1.d.ts +1 -0
  840. package/internal/themes/LightTheme5_0/LightTheme5_0.js +14 -0
  841. package/internal/themes/LightTheme5_0/LightTheme5_0.js.map +1 -0
  842. package/internal/themes/LightTheme5_0/package.json +6 -0
  843. package/internal/themes/LightTheme5_0.d.ts +1 -0
  844. package/internal/themes/LightTheme5_1/LightTheme5_1.js +52 -0
  845. package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +1 -0
  846. package/internal/themes/LightTheme5_1/package.json +6 -0
  847. package/internal/themes/LightTheme5_1.d.ts +1 -0
  848. package/lib/ModalStack/ModalStack.js +8 -8
  849. package/lib/ModalStack/ModalStack.js.map +1 -1
  850. package/lib/ModalStack.d.ts +1 -0
  851. package/lib/date/types/types.js +18 -18
  852. package/lib/date/types/types.js.map +1 -1
  853. package/lib/events/MouseDrag/MouseDrag.js +3 -3
  854. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  855. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js +3 -3
  856. package/lib/events/keyboard/KeyboardEventCodes/KeyboardEventCodes.js.map +1 -1
  857. package/lib/locale/types/types.js +3 -3
  858. package/lib/locale/types/types.js.map +1 -1
  859. package/lib/theming/Theme/Theme.js +2 -1
  860. package/lib/theming/Theme/Theme.js.map +1 -1
  861. package/lib/theming/Theme.d.ts +4 -3
  862. package/lib/theming/ThemeContext/ThemeContext.js +2 -2
  863. package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
  864. package/lib/theming/ThemeContext.d.ts +1 -1
  865. package/lib/theming/ThemeFactory/ThemeFactory.js +21 -7
  866. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  867. package/lib/theming/ThemeFactory.d.ts +9 -0
  868. package/lib/theming/ThemeHelpers/ThemeHelpers.js +85 -18
  869. package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
  870. package/lib/theming/ThemeHelpers.d.ts +55 -8
  871. package/lib/theming/ThemeVersions/ThemeVersions.js +50 -0
  872. package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -0
  873. package/lib/theming/ThemeVersions/package.json +6 -0
  874. package/lib/theming/ThemeVersions.d.ts +25 -0
  875. package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -4
  876. package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
  877. package/lib/theming/themes/DarkTheme.d.ts +3 -1
  878. package/lib/theming/themes/LightTheme/LightTheme.js +5 -4
  879. package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
  880. package/lib/theming/themes/LightTheme.d.ts +3 -1
  881. package/lib/theming/themes/LightThemeMobile.d.ts +1 -1
  882. package/lib/theming/useTheme.d.ts +1 -1
  883. package/lib/types/button-link/button-link.js +0 -1
  884. package/lib/types/polymorphic-component/polymorphic-component.js +0 -1
  885. package/lib/types/props/props.js +0 -1
  886. package/package.json +9 -5
  887. package/cjs/internal/themes/BasicDarkTheme.d.ts +0 -289
  888. package/cjs/internal/themes/BasicDarkTheme.js +0 -597
  889. package/cjs/internal/themes/BasicDarkTheme.js.map +0 -1
  890. package/cjs/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
  891. package/cjs/lib/theming/themes/DarkTheme2022_0.js +0 -5
  892. package/cjs/lib/theming/themes/DarkTheme2022_0.js.map +0 -1
  893. package/cjs/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
  894. package/cjs/lib/theming/themes/LightTheme2022_0.js +0 -5
  895. package/cjs/lib/theming/themes/LightTheme2022_0.js.map +0 -1
  896. package/internal/themes/BasicDarkTheme/BasicDarkTheme.js +0 -641
  897. package/internal/themes/BasicDarkTheme/BasicDarkTheme.js.map +0 -1
  898. package/internal/themes/BasicDarkTheme/package.json +0 -6
  899. package/internal/themes/BasicDarkTheme.d.ts +0 -289
  900. package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js +0 -3
  901. package/lib/theming/themes/DarkTheme2022_0/DarkTheme2022_0.js.map +0 -1
  902. package/lib/theming/themes/DarkTheme2022_0/package.json +0 -6
  903. package/lib/theming/themes/DarkTheme2022_0.d.ts +0 -1
  904. package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js +0 -3
  905. package/lib/theming/themes/LightTheme2022_0/LightTheme2022_0.js.map +0 -1
  906. package/lib/theming/themes/LightTheme2022_0/package.json +0 -6
  907. package/lib/theming/themes/LightTheme2022_0.d.ts +0 -1
@@ -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 { 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 { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } 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 { PagingLocale, PagingLocaleHelper } from './locale';\nimport { PagingDefaultComponent } from './PagingDefaultComponent';\nimport { ForwardIcon } from './ForwardIcon';\n\nconst IGNORE_EVENT_TAGS = ['input', 'textarea'];\n\nexport interface ItemComponentProps {\n active: boolean;\n children?: React.ReactNode;\n className: string;\n onClick: () => void;\n pageNumber: number | 'forward';\n tabIndex: number;\n}\n\nexport interface PagingProps extends CommonProps {\n activePage: number;\n /**\n * Компонент обертки по умолчанию\n * @default <span />\n */\n component?: React.ComponentType<ItemComponentProps>;\n onPageChange: (pageNumber: number) => void;\n pagesCount: number;\n disabled?: boolean;\n /**\n * Отключает навигационные подсказки.\n * По-умолчанию подсказки появляются, когда доступно управление с клавиатуры\n * (либо элемент в фокусе, либо globalListeners === true)\n */\n withoutNavigationHint?: boolean;\n caption?: string;\n /**\n * Глобальный слушатель **keyDown**, для навигации клавишами без фокуса на компоненте.\n * Если на странице используется несколько элементов\n * **Paging** с useGlobalListener === true, то обработчик keyDown будет вызываться\n * на каждом из них. Такие случаи лучше обрабатывать отдельно.\n */\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@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","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 { 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 { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } 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 { PagingLocale, 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":[]}
@@ -2,36 +2,38 @@ import React from 'react';
2
2
  import { Nullable } from '../../typings/utility-types';
3
3
  import { CommonProps } from '../../internal/CommonWrapper';
4
4
  export interface ItemComponentProps {
5
+ /** Определяет, является ли страница текущей. */
5
6
  active: boolean;
7
+ /** @ignore */
6
8
  children?: React.ReactNode;
9
+ /** Задает HTML-атрибут class. */
7
10
  className: string;
11
+ /** Задает функцию, которая вызывается при клике на элемент. */
8
12
  onClick: () => void;
13
+ /** Задает номер текущей страницы. */
9
14
  pageNumber: number | 'forward';
15
+ /** Задает HTML-атрибут `tabindex`. */
10
16
  tabIndex: number;
11
17
  }
12
18
  export interface PagingProps extends CommonProps {
13
19
  activePage: number;
14
- /**
15
- * Компонент обертки по умолчанию
16
- * @default <span />
17
- */
20
+ /** Компонент обертки по умолчанию.
21
+ * @default <span /> */
18
22
  component?: React.ComponentType<ItemComponentProps>;
23
+ /** Задает функцию, которая вызывается при переключении страницы. */
19
24
  onPageChange: (pageNumber: number) => void;
25
+ /** Задает общее количество страниц. */
20
26
  pagesCount: number;
27
+ /** Делает компонент недоступным. */
21
28
  disabled?: boolean;
22
- /**
23
- * Отключает навигационные подсказки.
24
- * По-умолчанию подсказки появляются, когда доступно управление с клавиатуры
25
- * (либо элемент в фокусе, либо globalListeners === true)
26
- */
29
+ /** Отключает навигационные подсказки.
30
+ * По-умолчанию подсказки появляются, когда доступно управление с клавиатуры (либо элемент в фокусе, либо globalListeners === true). */
27
31
  withoutNavigationHint?: boolean;
32
+ /** Задает подпить у пейджинга. */
28
33
  caption?: string;
29
- /**
30
- * Глобальный слушатель **keyDown**, для навигации клавишами без фокуса на компоненте.
31
- * Если на странице используется несколько элементов
32
- * **Paging** с useGlobalListener === true, то обработчик keyDown будет вызываться
33
- * на каждом из них. Такие случаи лучше обрабатывать отдельно.
34
- */
34
+ /** Глобальный слушатель **keyDown**, для навигации клавишами без фокуса на компоненте.
35
+ * Если на странице используется несколько элементов **Paging** с useGlobalListener === true,
36
+ * то обработчик keyDown будет вызываться на каждом из них. Такие случаи лучше обрабатывать отдельно. */
35
37
  useGlobalListener?: boolean;
36
38
  }
37
39
  export interface PagingState {
@@ -48,6 +50,9 @@ export declare const PagingDataTids: {
48
50
  readonly pageLink: "Paging__pageLink";
49
51
  };
50
52
  type DefaultProps = Required<Pick<PagingProps, 'component' | 'useGlobalListener'>>;
53
+ /**
54
+ * Постраничная навигация `Paging` (пейджинг или пагинация) — способ представления большого количества однородной информации, когда контент разбивается на страницы.
55
+ */
51
56
  export declare class Paging extends React.PureComponent<PagingProps, PagingState> {
52
57
  static __KONTUR_REACT_UI__: string;
53
58
  static displayName: string;
@@ -6,6 +6,7 @@
6
6
 
7
7
  Навигационные подсказки появляются когда доступно управление с клавиатуры и `withoutNavigationHint != true`
8
8
 
9
+ ### Базовый пример
9
10
  ```jsx harmony
10
11
  class Paginator3000 extends React.Component {
11
12
  constructor() {
@@ -26,7 +27,7 @@ class Paginator3000 extends React.Component {
26
27
  <Paginator3000 />;
27
28
  ```
28
29
 
29
- Пейджинг в отключенном состоянии
30
+ ### Пейджинг в отключенном состоянии
30
31
 
31
32
  ```jsx
32
33
  const [activePage, setActivePage] = React.useState(3);
@@ -39,7 +40,7 @@ const [activePage, setActivePage] = React.useState(3);
39
40
  />
40
41
  ```
41
42
 
42
- #### Локали по умолчанию
43
+ ### Локали по умолчанию
43
44
 
44
45
  ```typescript static
45
46
  interface PagingLocale {
@@ -1 +1 @@
1
- {"version":3,"names":["React","extractDataProps","PagingDefaultComponent","_ref","onClick","className","children","rest","_objectWithoutPropertiesLoose","_excluded","_extractDataProps","dataProps","createElement","_extends"],"sources":["PagingDefaultComponent.tsx"],"sourcesContent":["import React from 'react';\n\nimport { extractDataProps } from '../../lib/utils';\nimport { CommonProps } from '../../internal/CommonWrapper';\n\ninterface PagingDefaultComponentInterface {\n onClick: () => void;\n children?: React.ReactNode;\n}\n\nexport type PagingDefaultComponentProps = PagingDefaultComponentInterface & Pick<CommonProps, 'className'>;\n\nexport const PagingDefaultComponent = ({ onClick, className, children, ...rest }: PagingDefaultComponentProps) => {\n const { dataProps } = extractDataProps(rest);\n\n return (\n <span onClick={onClick} className={className} {...dataProps}>\n {children}\n </span>\n );\n};\n"],"mappings":"mNAAA,OAAOA,KAAK,MAAM,OAAO;;AAEzB,SAASC,gBAAgB,QAAQ,iBAAiB;;;;;;;;;;AAUlD,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAC,IAAA,EAA+E,KAAzEC,OAAO,GAAAD,IAAA,CAAPC,OAAO,CAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ,CAAKC,IAAI,GAAAC,6BAAA,CAAAL,IAAA,EAAAM,SAAA;EAC5E,IAAAC,iBAAA,GAAsBT,gBAAgB,CAACM,IAAI,CAAC,CAApCI,SAAS,GAAAD,iBAAA,CAATC,SAAS;;EAEjB;IACEX,KAAA,CAAAY,aAAA,SAAAC,QAAA,GAAMT,OAAO,EAAEA,OAAQ,EAACC,SAAS,EAAEA,SAAU,IAAKM,SAAS;IACxDL;IACG,CAAC;;AAEX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","extractDataProps","PagingDefaultComponent","_ref","onClick","className","children","rest","_objectWithoutPropertiesLoose","_excluded","_extractDataProps","dataProps","createElement","_extends"],"sources":["PagingDefaultComponent.tsx"],"sourcesContent":["import React from 'react';\n\nimport { extractDataProps } from '../../lib/utils';\nimport { CommonProps } from '../../internal/CommonWrapper';\n\ninterface PagingDefaultComponentInterface {\n /** Задает функцию, которая вызывается при клике на пейджинг. */\n onClick: () => void;\n\n /** @ignore */\n children?: React.ReactNode;\n}\n\nexport type PagingDefaultComponentProps = PagingDefaultComponentInterface & Pick<CommonProps, 'className'>;\n\nexport const PagingDefaultComponent = ({ onClick, className, children, ...rest }: PagingDefaultComponentProps) => {\n const { dataProps } = extractDataProps(rest);\n\n return (\n <span onClick={onClick} className={className} {...dataProps}>\n {children}\n </span>\n );\n};\n"],"mappings":"mNAAA,OAAOA,KAAK,MAAM,OAAO;;AAEzB,SAASC,gBAAgB,QAAQ,iBAAiB;;;;;;;;;;;;;AAalD,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAAC,IAAA,EAA+E,KAAzEC,OAAO,GAAAD,IAAA,CAAPC,OAAO,CAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS,CAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ,CAAKC,IAAI,GAAAC,6BAAA,CAAAL,IAAA,EAAAM,SAAA;EAC5E,IAAAC,iBAAA,GAAsBT,gBAAgB,CAACM,IAAI,CAAC,CAApCI,SAAS,GAAAD,iBAAA,CAATC,SAAS;;EAEjB;IACEX,KAAA,CAAAY,aAAA,SAAAC,QAAA,GAAMT,OAAO,EAAEA,OAAQ,EAACC,SAAS,EAAEA,SAAU,IAAKM,SAAS;IACxDL;IACG,CAAC;;AAEX,CAAC","ignoreList":[]}
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
2
  import { CommonProps } from '../../internal/CommonWrapper';
3
3
  interface PagingDefaultComponentInterface {
4
+ /** Задает функцию, которая вызывается при клике на пейджинг. */
4
5
  onClick: () => void;
6
+ /** @ignore */
5
7
  children?: React.ReactNode;
6
8
  }
7
9
  export type PagingDefaultComponentProps = PagingDefaultComponentInterface & Pick<CommonProps, 'className'>;
@@ -0,0 +1,28 @@
1
+ import * as PagingStories from './Paging.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={PagingStories} />
6
+
7
+ # Paging
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/navigation/paging/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=281%3A18146)
12
+
13
+ <Description />
14
+
15
+ ## Базовый пример
16
+
17
+ <Primary />
18
+
19
+ ## Пропы
20
+
21
+ <details>
22
+ <summary>Открыть таблицу с пропами</summary>
23
+ <ArgTypes />
24
+ </details>
25
+
26
+ ## Примеры использования
27
+
28
+ <Stories title="" includePrimary={false} />
@@ -1 +0,0 @@
1
- export {};
@@ -28,7 +28,9 @@ export var PasswordInputDataTids = {
28
28
  };
29
29
 
30
30
  /**
31
- * Компонент для ввода пароля
31
+ * `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.
32
+ *
33
+ * Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.
32
34
  */
33
35
  export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHelper), rootNode(_class = _dec(_class = (_PasswordInput = /*#__PURE__*/function (_React$PureComponent) {
34
36
  function PasswordInput() {
@@ -40,6 +42,7 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
40
42
  _this.getProps = createPropsGetter(PasswordInput.defaultProps);
41
43
  _this.state = {
42
44
  visible: false,
45
+ focused: false,
43
46
  capsLockEnabled: false
44
47
  };
45
48
 
@@ -56,7 +59,9 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
56
59
  * @public
57
60
  */
58
61
  _this.blur = function () {
59
- _this.handleBlur();
62
+ if (_this.input) {
63
+ _this.input.blur();
64
+ }
60
65
  };
61
66
  _this.handleKeyPress = function (e) {
62
67
  var _this$props = _this.props,
@@ -96,16 +101,30 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
96
101
  return {
97
102
  visible: !prevState.visible
98
103
  };
99
- }, _this.handleFocus);
104
+ }, _this.focusOnInput);
100
105
  };
101
- _this.handleFocus = function () {
106
+ _this.focusOnInput = function () {
102
107
  if (_this.input) {
103
108
  _this.input.focus();
104
109
  }
105
110
  };
106
- _this.handleBlur = function () {
107
- if (_this.input) {
108
- _this.input.blur();
111
+ _this.handleFocus = function (event) {
112
+ if (_this.state.focused) {
113
+ return;
114
+ }
115
+ _this.setState({
116
+ focused: true
117
+ });
118
+ if (_this.props.onFocus) {
119
+ _this.props.onFocus(event);
120
+ }
121
+ };
122
+ _this.handleFocusOutside = function () {
123
+ _this.hideSymbols();
124
+ if (_this.state.focused) {
125
+ _this.setState({
126
+ focused: false
127
+ });
109
128
  }
110
129
  };
111
130
  _this.renderEye = function () {
@@ -150,13 +169,16 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
150
169
  var inputProps = _extends({}, rest, {
151
170
  onKeyDown: _this.handleKeydown,
152
171
  onKeyPress: _this.handleKeyPress,
153
- rightIcon: _this.renderEye()
172
+ rightIcon: _this.renderEye(),
173
+ onFocus: _this.handleFocus
154
174
  });
155
175
  return /*#__PURE__*/(
156
176
  React.createElement(RenderLayer, {
157
- onFocusOutside: _this.hideSymbols,
158
- onClickOutside: _this.hideSymbols
177
+ active: _this.state.focused,
178
+ onFocusOutside: _this.handleFocusOutside,
179
+ onClickOutside: _this.handleFocusOutside
159
180
  }, /*#__PURE__*/
181
+
160
182
  React.createElement("div", {
161
183
  "data-tid": PasswordInputDataTids.root,
162
184
  className: styles.root()
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","globalObject","isBrowser","locale","RenderLayer","isNonNullable","isKeyCapsLock","KeyboardEventCodes","Codes","Input","isIE11","CommonWrapper","ThemeContext","cx","rootNode","createPropsGetter","styles","PasswordInputIcon","PasswordInputLocaleHelper","PasswordInputDataTids","root","capsLockDetector","eyeIcon","PasswordInput","_dec","_class","_PasswordInput","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","visible","capsLockEnabled","focus","input","blur","handleBlur","handleKeyPress","e","_this$props","props","onKeyPress","detectCapsLock","getModifierState","CapsLock","setState","handleKeydown","_this2","_this2$props","onKeyDown","handleToggleVisibility","prevState","handleFocus","renderEye","createElement","className","iconWrapper","toggleVisibility","theme","getEyeWrapperClassname","disabled","type","eyeClosedAriaLabel","eyeOpenedAriaLabel","onClick","icon","size","refInput","element","hideSymbols","renderMain","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","_extends","rightIcon","onFocusOutside","onClickOutside","ref","_inheritsLoose","_proto","prototype","componentDidMount","document","msCapsLockWarningOff","getDerivedStateFromProps","render","_this3","Consumer","rootNodeRef","setRootNode","eyeWrapperLarge","eyeWrapperMedium","eyeWrapperSmall","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool"],"sources":["PasswordInput.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes';\nimport { Input, InputProps } from '../Input';\nimport { Nullable } from '../../typings/utility-types';\nimport { isIE11 } from '../../lib/client';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './PasswordInput.styles';\nimport { PasswordInputIcon } from './PasswordInputIcon';\nimport { PasswordInputLocale, PasswordInputLocaleHelper } from './locale';\n\nexport interface PasswordInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, InputProps {\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;\n\n/**\n * Компонент для ввода пароля\n */\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public static propTypes = {\n /**\n * Включает CapsLock детектор\n */\n detectCapsLock: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n };\n\n private getProps = createPropsGetter(PasswordInput.defaultProps);\n\n public state: PasswordInputState = {\n visible: false,\n capsLockEnabled: false,\n };\n\n private theme!: Theme;\n\n private input: Nullable<Input>;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n\n // @ts-expect-error: IE-specific API.\n if (isIE11 && isBrowser(globalObject) && !globalObject.document.msCapsLockWarningOff) {\n // @ts-expect-error: Read the comment above.\n // turns off default ie capslock warning\n globalObject.document.msCapsLockWarningOff = true;\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n this.handleBlur();\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.handleFocus);\n };\n\n private handleFocus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleBlur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.getProps().size) {\n case 'large':\n return styles.eyeWrapperLarge(this.theme);\n case 'medium':\n return styles.eyeWrapperMedium(this.theme);\n case 'small':\n default:\n return styles.eyeWrapperSmall(this.theme);\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={styles.iconWrapper()}>\n {capsLockEnabled && (\n <span className={styles.capsLockDetector()} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={cx(styles.toggleVisibility(this.theme), this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={styles.icon()}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.props.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n const { detectCapsLock, ...rest } = props;\n const inputProps = {\n ...rest,\n onKeyDown: this.handleKeydown,\n onKeyPress: this.handleKeyPress,\n rightIcon: this.renderEye(),\n };\n\n return (\n <RenderLayer onFocusOutside={this.hideSymbols} onClickOutside={this.hideSymbols}>\n <div data-tid={PasswordInputDataTids.root} className={styles.root()}>\n <Input ref={this.refInput} type={this.state.visible ? 'text' : 'password'} {...inputProps} />\n </div>\n </RenderLayer>\n );\n };\n}\n"],"mappings":"wSAAA,OAAOA,KAAK,MAA0B,OAAO;AAC7C,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,YAAY,EAAEC,SAAS,QAAQ,0BAA0B;;AAElE,SAASC,MAAM,QAAQ,6BAA6B;AACpD,SAASC,WAAW,QAAQ,4BAA4B;AACxD,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,aAAa,QAAQ,uCAAuC;AACrE,SAASC,kBAAkB,IAAIC,KAAK,QAAQ,8CAA8C;AAC1F,SAASC,KAAK,QAAoB,UAAU;;AAE5C,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,aAAa,QAA6C,8BAA8B;;AAEjG,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,EAAE,QAAQ,2BAA2B;AAC9C,SAASC,QAAQ,QAAsB,oBAAoB;AAC3D,SAASC,iBAAiB,QAAQ,6BAA6B;;AAE/D,SAASC,MAAM,QAAQ,wBAAwB;AAC/C,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAA8BC,yBAAyB,QAAQ,UAAU;;;;;;;;;;;AAWzE,OAAO,IAAMC,qBAAqB,GAAG;EACnCC,IAAI,EAAE,eAAe;EACrBC,gBAAgB,EAAE,+BAA+B;EACjDC,OAAO,EAAE;AACX,CAAU;;;;AAIV;AACA;AACA;AACA;;AAEaC,aAAa,IAAAC,IAAA,GADzBrB,MAAM,CAAC,eAAe,EAAEe,yBAAyB,CAAC,EADlDJ,QAAQ,CAAAW,MAAA,GAAAD,IAAA,CAAAC,MAAA,IAAAC,cAAA,0BAAAC,oBAAA,YAAAJ,cAAA,OAAAK,KAAA,UAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,KAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA,GAAAN,KAAA,GAAAD,oBAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,oBAAA,SAAAU,MAAA,CAAAL,IAAA,WAAAJ,KAAA;;;;;;;;;;;;;;;IAiBCU,QAAQ,GAAGvB,iBAAiB,CAACQ,aAAa,CAACgB,YAAY,CAAC,CAAAX,KAAA;;IAEzDY,KAAK,GAAuB;MACjCC,OAAO,EAAE,KAAK;MACdC,eAAe,EAAE;IACnB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4CD;AACF;AACA,OAFEd,KAAA;IAGOe,KAAK,GAAG,YAAM;MACnB,IAAIf,KAAA,CAAKgB,KAAK,EAAE;QACdhB,KAAA,CAAKgB,KAAK,CAACD,KAAK,CAAC,CAAC;MACpB;IACF,CAAC;;IAED;AACF;AACA,OAFEf,KAAA;IAGOiB,IAAI,GAAG,YAAM;MAClBjB,KAAA,CAAKkB,UAAU,CAAC,CAAC;IACnB,CAAC,CAAAlB,KAAA;;IAEOmB,cAAc,GAAG,UAACC,CAAwC,EAAK;MACrE,IAAAC,WAAA,GAAuCrB,KAAA,CAAKsB,KAAK,CAAzCC,UAAU,GAAAF,WAAA,CAAVE,UAAU,CAAEC,cAAc,GAAAH,WAAA,CAAdG,cAAc;;MAElC,IAAID,UAAU,EAAE;QACdA,UAAU,CAACH,CAAC,CAAC;MACf;;MAEA,IAAI,CAACI,cAAc,EAAE;QACnB;MACF;;MAEA,IAAMV,eAAe,GAAGM,CAAC,CAACK,gBAAgB,CAAC7C,KAAK,CAAC8C,QAAQ,CAAC;;MAE1D1B,KAAA,CAAK2B,QAAQ,CAAC,EAAEb,eAAe,EAAfA,eAAe,CAAC,CAAC,CAAC;IACpC,CAAC,CAAAd,KAAA;;IAEO4B,aAAa,GAAG,UAACR,CAAwC,EAAK;MACpE,IAAAS,MAAA,GAAA7B,KAAA,CAAA8B,YAAA,GAAAD,MAAA;QACEP,KAAK,CAAIE,cAAc,GAAAM,YAAA,CAAdN,cAAc,CAAEO,SAAS,GAAAD,YAAA,CAATC,SAAS;QACzBjB,eAAe,GAAAe,MAAA,CAAxBjB,KAAK,CAAIE,eAAe;;;MAG1B,IAAIiB,SAAS,EAAE;QACbA,SAAS,CAACX,CAAC,CAAC;MACd;;MAEA,IAAI,CAACI,cAAc,EAAE;QACnB;MACF;;MAEA,IAAI9C,aAAa,CAAC0C,CAAC,CAAC,IAAI3C,aAAa,CAACqC,eAAe,CAAC,EAAE;QACtDd,KAAA,CAAK2B,QAAQ,CAAC,EAAEb,eAAe,EAAE,CAACA,eAAe,CAAC,CAAC,CAAC;MACtD;IACF,CAAC,CAAAd,KAAA;;IAEOgC,sBAAsB,GAAG,YAAM;MACrChC,KAAA,CAAK2B,QAAQ,CAAC,UAACM,SAAS,UAAM,EAAEpB,OAAO,EAAE,CAACoB,SAAS,CAACpB,OAAO,CAAC,CAAC,EAAC,EAAEb,KAAA,CAAKkC,WAAW,CAAC;IACnF,CAAC,CAAAlC,KAAA;;IAEOkC,WAAW,GAAG,YAAM;MAC1B,IAAIlC,KAAA,CAAKgB,KAAK,EAAE;QACdhB,KAAA,CAAKgB,KAAK,CAACD,KAAK,CAAC,CAAC;MACpB;IACF,CAAC,CAAAf,KAAA;;IAEOkB,UAAU,GAAG,YAAM;MACzB,IAAIlB,KAAA,CAAKgB,KAAK,EAAE;QACdhB,KAAA,CAAKgB,KAAK,CAACC,IAAI,CAAC,CAAC;MACnB;IACF,CAAC,CAAAjB,KAAA;;;;;;;;;;;;;;IAcOmC,SAAS,GAAG,YAAM;MACxB,IAAQrB,eAAe,GAAKd,KAAA,CAAKY,KAAK,CAA9BE,eAAe;;MAEvB;QACE3C,KAAA,CAAAiE,aAAA,WAAMC,SAAS,EAAEjD,MAAM,CAACkD,WAAW,CAAC,CAAE;QACnCxB,eAAe;QACd3C,KAAA,CAAAiE,aAAA,WAAMC,SAAS,EAAEjD,MAAM,CAACK,gBAAgB,CAAC,CAAE,EAAC,YAAUF,qBAAqB,CAACE,gBAAiB,EAAE,CAChG;;QACDtB,KAAA,CAAAiE,aAAA,WAAMC,SAAS,EAAEpD,EAAE,CAACG,MAAM,CAACmD,gBAAgB,CAACvC,KAAA,CAAKwC,KAAK,CAAC,EAAExC,KAAA,CAAKyC,sBAAsB,CAAC,CAAC,CAAE;QACrF,CAACzC,KAAA,CAAKsB,KAAK,CAACoB,QAAQ;QACnBvE,KAAA,CAAAiE,aAAA;UACEO,IAAI,EAAC,QAAQ;UACb,cAAY3C,KAAA,CAAKY,KAAK,CAACC,OAAO,GAAGb,KAAA,CAAKzB,MAAM,CAACqE,kBAAkB,GAAG5C,KAAA,CAAKzB,MAAM,CAACsE,kBAAmB;UACjGC,OAAO,EAAE9C,KAAA,CAAKgC,sBAAuB;UACrCK,SAAS,EAAEjD,MAAM,CAAC2D,IAAI,CAAC,CAAE;UACzB,YAAUxD,qBAAqB,CAACG,OAAQ;;QAExCvB,KAAA,CAAAiE,aAAA,CAAC/C,iBAAiB,IAAC2D,IAAI,EAAEhD,KAAA,CAAKsB,KAAK,CAAC0B,IAAK,EAACnC,OAAO,EAAEb,KAAA,CAAKY,KAAK,CAACC,OAAQ,EAAE;QAClE;;QAEN;QACF,CAAC;;IAEX,CAAC,CAAAb,KAAA;;IAEOiD,QAAQ,GAAG,UAACC,OAAc,EAAK;MACrClD,KAAA,CAAKgB,KAAK,GAAGkC,OAAO;IACtB,CAAC,CAAAlD,KAAA;;IAEOmD,WAAW,GAAG,YAAM;MAC1BnD,KAAA,CAAK2B,QAAQ,CAAC,EAAEd,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACnC,CAAC,CAAAb,KAAA;;IAEOoD,UAAU,GAAG,UAAC9B,KAAiD,EAAK;MAC1E,IAAQE,cAAc,GAAcF,KAAK,CAAjCE,cAAc,CAAK6B,IAAI,GAAAC,6BAAA,CAAKhC,KAAK,EAAAiC,SAAA;MACzC,IAAMC,UAAU,GAAAC,QAAA;MACXJ,IAAI;QACPtB,SAAS,EAAE/B,KAAA,CAAK4B,aAAa;QAC7BL,UAAU,EAAEvB,KAAA,CAAKmB,cAAc;QAC/BuC,SAAS,EAAE1D,KAAA,CAAKmC,SAAS,CAAC,CAAC,GAC5B;;;MAED;QACEhE,KAAA,CAAAiE,aAAA,CAAC5D,WAAW,IAACmF,cAAc,EAAE3D,KAAA,CAAKmD,WAAY,EAACS,cAAc,EAAE5D,KAAA,CAAKmD,WAAY;QAC9EhF,KAAA,CAAAiE,aAAA,UAAK,YAAU7C,qBAAqB,CAACC,IAAK,EAAC6C,SAAS,EAAEjD,MAAM,CAACI,IAAI,CAAC,CAAE;QAClErB,KAAA,CAAAiE,aAAA,CAACvD,KAAK,EAAA4E,QAAA,GAACI,GAAG,EAAE7D,KAAA,CAAKiD,QAAS,EAACN,IAAI,EAAE3C,KAAA,CAAKY,KAAK,CAACC,OAAO,GAAG,MAAM,GAAG,UAAW,IAAK2C,UAAU,CAAG;QACzF;QACM,CAAC;;IAElB,CAAC,QAAAxD,KAAA,EAAA8D,cAAA,CAAAnE,aAAA,EAAAI,oBAAA,MAAAgE,MAAA,GAAApE,aAAA,CAAAqE,SAAA,CAAAD,MAAA,CApKME,iBAAiB,GAAxB,SAAAA,kBAAA,EAA2B,CACzB,IAAI,IAAI,CAAC3C,KAAK,CAACE,cAAc,EAAE,CAC7B,IAAI,CAACG,QAAQ,CAAC,EAAEb,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC,CAC1C,CAAC,CAED;IACA,IAAIhC,MAAM,IAAIR,SAAS,CAACD,YAAY,CAAC,IAAI,CAACA,YAAY,CAAC6F,QAAQ,CAACC,oBAAoB,EAAE,CACpF;MACA;MACA9F,YAAY,CAAC6F,QAAQ,CAACC,oBAAoB,GAAG,IAAI,CACnD,CACF,CAAC,CAAAxE,aAAA,CAEayE,wBAAwB,GAAtC,SAAAA,yBAAuC9C,KAAyB,EAAEV,KAAyB,EAAE,CAC3F,IAAIU,KAAK,CAACoB,QAAQ,EAAE,CAClB,OAAO,EAAE7B,OAAO,EAAE,KAAK,CAAC,CAAC,CAC3B,CAEA,OAAOD,KAAK,CACd,CAAC,CAAAmD,MAAA,CAEMM,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACEnG,KAAA,CAAAiE,aAAA,CAACpD,YAAY,CAACuF,QAAQ,QACnB,UAAC/B,KAAK,EAAK,CACV8B,MAAI,CAAC9B,KAAK,GAAGA,KAAK,CAClB,oBACErE,KAAA,CAAAiE,aAAA,CAACrD,aAAa,EAAA0E,QAAA,GAACe,WAAW,EAAEF,MAAI,CAACG,WAAY,IAAKH,MAAI,CAAC5D,QAAQ,CAAC,CAAC,GAC9D4D,MAAI,CAAClB,UACO,CAAC,CAEpB,CACqB,CAAC,CAE5B,CAAC,CAAAW,MAAA,CAqEOtB,sBAAsB,GAA9B,SAAAA,uBAAA,EAAiC,CAC/B,QAAQ,IAAI,CAAC/B,QAAQ,CAAC,CAAC,CAACsC,IAAI,GAC1B,KAAK,OAAO,CACV,OAAO5D,MAAM,CAACsF,eAAe,CAAC,IAAI,CAAClC,KAAK,CAAC,CAC3C,KAAK,QAAQ,CACX,OAAOpD,MAAM,CAACuF,gBAAgB,CAAC,IAAI,CAACnC,KAAK,CAAC,CAC5C,KAAK,OAAO,CACZ,QACE,OAAOpD,MAAM,CAACwF,eAAe,CAAC,IAAI,CAACpC,KAAK,CAAC,CAC7C,CACF,CAAC,QAAA7C,aAAA,GA7IgCxB,KAAK,CAAC0G,aAAa,GAAA/E,cAAA,CACtCgF,mBAAmB,GAAG,eAAe,EAAAhF,cAAA,CACrCiF,WAAW,GAAG,eAAe,EAAAjF,cAAA,CAE7BkF,SAAS,GAAG,EACxB;AACJ;AACA,KACIxD,cAAc,EAAEpD,SAAS,CAAC6G,IAAI,CAChC,CAAC,EAAAnF,cAAA,CAEaa,YAAY,GAAiB,EACzCqC,IAAI,EAAE,OAAO,CACf,CAAC,EAAAlD,cAAA,MAAAD,MAAA,KAAAA,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["React","PropTypes","globalObject","isBrowser","locale","RenderLayer","isNonNullable","isKeyCapsLock","KeyboardEventCodes","Codes","Input","isIE11","CommonWrapper","ThemeContext","cx","rootNode","createPropsGetter","styles","PasswordInputIcon","PasswordInputLocaleHelper","PasswordInputDataTids","root","capsLockDetector","eyeIcon","PasswordInput","_dec","_class","_PasswordInput","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","visible","focused","capsLockEnabled","focus","input","blur","handleKeyPress","e","_this$props","props","onKeyPress","detectCapsLock","getModifierState","CapsLock","setState","handleKeydown","_this2","_this2$props","onKeyDown","handleToggleVisibility","prevState","focusOnInput","handleFocus","event","onFocus","handleFocusOutside","hideSymbols","renderEye","createElement","className","iconWrapper","toggleVisibility","theme","getEyeWrapperClassname","disabled","type","eyeClosedAriaLabel","eyeOpenedAriaLabel","onClick","icon","size","refInput","element","renderMain","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","_extends","rightIcon","active","onFocusOutside","onClickOutside","ref","_inheritsLoose","_proto","prototype","componentDidMount","document","msCapsLockWarningOff","getDerivedStateFromProps","render","_this3","Consumer","rootNodeRef","setRootNode","eyeWrapperLarge","eyeWrapperMedium","eyeWrapperSmall","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool"],"sources":["PasswordInput.tsx"],"sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes';\nimport { Input, InputProps } from '../Input';\nimport { Nullable } from '../../typings/utility-types';\nimport { isIE11 } from '../../lib/client';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './PasswordInput.styles';\nimport { PasswordInputIcon } from './PasswordInputIcon';\nimport { PasswordInputLocale, PasswordInputLocaleHelper } from './locale';\n\nexport interface PasswordInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, InputProps {\n /** Включает CapsLock детектор. */\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n focused: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;\n\n/**\n * `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.\n *\n * Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.\n */\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public static propTypes = {\n /**\n * Включает CapsLock детектор\n */\n detectCapsLock: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n };\n\n private getProps = createPropsGetter(PasswordInput.defaultProps);\n\n public state: PasswordInputState = {\n visible: false,\n focused: false,\n capsLockEnabled: false,\n };\n\n private theme!: Theme;\n\n private input: Nullable<Input>;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n\n // @ts-expect-error: IE-specific API.\n if (isIE11 && isBrowser(globalObject) && !globalObject.document.msCapsLockWarningOff) {\n // @ts-expect-error: Read the comment above.\n // turns off default ie capslock warning\n globalObject.document.msCapsLockWarningOff = true;\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.focusOnInput);\n };\n\n private focusOnInput = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleFocusOutside = () => {\n this.hideSymbols();\n\n if (this.state.focused) {\n this.setState({ focused: false });\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.getProps().size) {\n case 'large':\n return styles.eyeWrapperLarge(this.theme);\n case 'medium':\n return styles.eyeWrapperMedium(this.theme);\n case 'small':\n default:\n return styles.eyeWrapperSmall(this.theme);\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={styles.iconWrapper()}>\n {capsLockEnabled && (\n <span className={styles.capsLockDetector()} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={cx(styles.toggleVisibility(this.theme), this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={styles.icon()}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.props.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n const { detectCapsLock, ...rest } = props;\n const inputProps = {\n ...rest,\n onKeyDown: this.handleKeydown,\n onKeyPress: this.handleKeyPress,\n rightIcon: this.renderEye(),\n onFocus: this.handleFocus,\n };\n\n return (\n <RenderLayer\n active={this.state.focused}\n onFocusOutside={this.handleFocusOutside}\n onClickOutside={this.handleFocusOutside}\n >\n <div data-tid={PasswordInputDataTids.root} className={styles.root()}>\n <Input ref={this.refInput} type={this.state.visible ? 'text' : 'password'} {...inputProps} />\n </div>\n </RenderLayer>\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,10 +3,12 @@ import PropTypes from 'prop-types';
3
3
  import { InputProps } from '../Input';
4
4
  import { CommonProps } from '../../internal/CommonWrapper';
5
5
  export interface PasswordInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, InputProps {
6
+ /** Включает CapsLock детектор. */
6
7
  detectCapsLock?: boolean;
7
8
  }
8
9
  export interface PasswordInputState {
9
10
  visible: boolean;
11
+ focused: boolean;
10
12
  capsLockEnabled?: boolean | null;
11
13
  }
12
14
  export declare const PasswordInputDataTids: {
@@ -16,7 +18,9 @@ export declare const PasswordInputDataTids: {
16
18
  };
17
19
  type DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;
18
20
  /**
19
- * Компонент для ввода пароля
21
+ * `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.
22
+ *
23
+ * Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.
20
24
  */
21
25
  export declare class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {
22
26
  static __KONTUR_REACT_UI__: string;
@@ -35,7 +39,9 @@ export declare class PasswordInput extends React.PureComponent<PasswordInputProp
35
39
  private setRootNode;
36
40
  private readonly locale;
37
41
  componentDidMount(): void;
38
- static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState): PasswordInputState;
42
+ static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState): PasswordInputState | {
43
+ visible: boolean;
44
+ };
39
45
  render(): React.JSX.Element;
40
46
  /**
41
47
  * @public
@@ -48,8 +54,9 @@ export declare class PasswordInput extends React.PureComponent<PasswordInputProp
48
54
  private handleKeyPress;
49
55
  private handleKeydown;
50
56
  private handleToggleVisibility;
57
+ private focusOnInput;
51
58
  private handleFocus;
52
- private handleBlur;
59
+ private handleFocusOutside;
53
60
  private getEyeWrapperClassname;
54
61
  private renderEye;
55
62
  private refInput;
@@ -1,14 +1,15 @@
1
+ ### Базовый пример
1
2
  ```jsx harmony
2
3
  <PasswordInput />
3
4
  ```
4
5
 
5
- Пример с отслеживанием нажатия CapsLock:
6
+ ### Отслеживание нажатия CapsLock
6
7
 
7
8
  ```jsx harmony
8
9
  <PasswordInput detectCapsLock />
9
10
  ```
10
11
 
11
- #### Локали по умолчанию
12
+ ### Локали по умолчанию
12
13
 
13
14
  ```typescript static
14
15
  interface PasswordInputLocale {
@@ -0,0 +1,28 @@
1
+ import * as PasswordInputStories from './PasswordInput.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={PasswordInputStories} />
6
+
7
+ # PasswordInput
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/input-fields/password/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/file/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI-Modern-Layout?node-id=203%3A1602)
12
+
13
+ <Description />
14
+
15
+ ## Базовый пример
16
+
17
+ <Primary />
18
+
19
+ ## Пропы
20
+
21
+ <details>
22
+ <summary>Открыть таблицу с пропами</summary>
23
+ <ArgTypes />
24
+ </details>
25
+
26
+ ## Примеры использования
27
+
28
+ <Stories title="" includePrimary={false} />
@@ -1 +0,0 @@
1
- export {};
@@ -21,7 +21,7 @@ export var RadioDataTids = {
21
21
  };
22
22
 
23
23
  /**
24
- * Радио-кнопки используются, когда может быть выбран только один вариант из нескольких.
24
+ * Радио-кнопки `Radio` используются, когда может быть выбран только один вариант из нескольких.
25
25
  */
26
26
  export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Component) {
27
27
  function Radio() {