@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
@@ -0,0 +1,24 @@
1
+ import * as GappedStories from './Gapped.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={GappedStories} />
6
+
7
+ # Gapped
8
+
9
+ <Description />
10
+
11
+ ## Базовый пример
12
+
13
+ <Primary />
14
+
15
+ ## Пропы
16
+
17
+ <details>
18
+ <summary>Открыть таблицу с пропами</summary>
19
+ <ArgTypes />
20
+ </details>
21
+
22
+ ## Примеры использования
23
+
24
+ <Stories title="" includePrimary={false} />
@@ -12,6 +12,19 @@ export var GlobalLoaderDataTids = {
12
12
  root: 'GlobalLoader'
13
13
  };
14
14
  var currentGlobalLoader;
15
+
16
+ /**
17
+ * Глобальный лоадер `GlobalLoader` — это универсальный индикатор обмена данными с сервером.
18
+ * Он появляется у верхней границы экрана и выглядит как тоненькая полоска, окрашенная в фирменный цвет продукта.
19
+ *
20
+ * `GlobalLoader` может быть только один в приложении. Поэтому, каждый новый экземпляр компонента "убивает" предыдущий экземпляр, и начинает перехватывать статические методы.
21
+ *
22
+ * Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.
23
+ *
24
+ * `GlobalLoader` работает в двух режимах:
25
+ * * как прогресс-бар, примерно показывает ход получения данных от сервера.
26
+ * * как спиннер, когда есть проблемы с соединением.
27
+ */
15
28
  export var GlobalLoader = rootNode(_class = (_GlobalLoader = /*#__PURE__*/function (_React$Component) {
16
29
  function GlobalLoader(props) {
17
30
  var _this;
@@ -1 +1 @@
1
- {"version":3,"names":["React","debounce","isTestEnv","CommonWrapper","rootNode","createPropsGetter","GlobalLoaderView","GlobalLoaderDataTids","root","currentGlobalLoader","GlobalLoader","_class","_GlobalLoader","_React$Component","props","_this","call","getProps","defaultProps","startTask","setState","visible","onStart","delayBeforeShow","stopTask","successAnimationInProgress","started","onDone","delayBeforeHide","resumeTaskAfterSuccessAnimation","setActive","cancel","state","done","rejected","accept","setReject","setDone","reject","active","onReject","onAccept","kill","dead","expectedResponseTime","_inheritsLoose","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","_extends","rootNodeRef","setRootNode","updateExpectedResponseTime","Component","__KONTUR_REACT_UI__","displayName","start","_currentGlobalLoader2","_currentGlobalLoader3","_currentGlobalLoader4","_currentGlobalLoader5","_currentGlobalLoader6"],"sources":["GlobalLoader.tsx"],"sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\n\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { GlobalLoaderView, GlobalLoaderViewProps } from './GlobalLoaderView';\n\nexport interface GlobalLoaderProps {\n /**\n * Время(ms) до появления лоадера\n */\n delayBeforeShow?: number;\n /**\n * Время(ms) до исчезновения лоадера\n */\n delayBeforeHide?: number;\n /**\n * Ожидаемое время(ms) ответа сервера\n */\n expectedResponseTime?: number;\n /**\n * Анимация лоадера в виде спиннера\n */\n rejected?: boolean;\n /**\n * Показывать лоадер\n */\n active?: boolean;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Коллбек, вызывающийся после появления лоадера\n */\n onStart?(): void;\n /**\n * Коллбек, вызывающийся после исчезновения лоадера\n */\n onDone?(): void;\n /**\n * Коллбек, вызывающийся после вызова `GlobalLoader.reject()`.\n * Или после установки пропа `rejected = true`\n */\n onReject?(): void;\n /**\n * Коллбек, вызывающийся после вызова `GlobalLoader.accept()`.\n * Или после установки пропа `rejected = false`\n */\n onAccept?(): void;\n}\nexport interface GlobalLoaderState {\n visible: boolean;\n done: boolean;\n rejected: boolean;\n accept: boolean;\n dead: boolean;\n successAnimationInProgress: boolean;\n expectedResponseTime: number;\n started: boolean;\n}\n\nexport const GlobalLoaderDataTids = {\n root: 'GlobalLoader',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n GlobalLoaderProps,\n 'expectedResponseTime' | 'delayBeforeShow' | 'delayBeforeHide' | 'rejected' | 'active' | 'disableAnimations'\n >\n>;\n\nlet currentGlobalLoader: GlobalLoader | null;\n@rootNode\nexport class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {\n public static __KONTUR_REACT_UI__ = 'GlobalLoader';\n public static displayName = 'GlobalLoader';\n\n private setRootNode!: TSetRootNode;\n private getProps = createPropsGetter(GlobalLoader.defaultProps);\n\n private readonly startTask = debounce(() => {\n this.setState({ visible: true });\n this.props.onStart?.();\n }, this.getProps().delayBeforeShow);\n\n private readonly stopTask = debounce(() => {\n this.setState({ visible: false, successAnimationInProgress: false, started: false });\n this.props.onDone?.();\n }, this.getProps().delayBeforeHide);\n\n private readonly resumeTaskAfterSuccessAnimation = debounce(() => {\n this.setActive();\n }, this.getProps().delayBeforeHide);\n\n public static defaultProps: DefaultProps = {\n expectedResponseTime: 1000,\n delayBeforeShow: 1000,\n delayBeforeHide: 1000,\n rejected: false,\n active: false,\n disableAnimations: isTestEnv,\n };\n\n constructor(props: GlobalLoaderProps) {\n super(props);\n this.state = {\n started: false,\n visible: false,\n done: false,\n rejected: false,\n accept: false,\n dead: false,\n successAnimationInProgress: false,\n expectedResponseTime: this.getProps().expectedResponseTime,\n };\n }\n componentDidMount() {\n currentGlobalLoader?.kill();\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n currentGlobalLoader = this;\n const { active, rejected } = this.getProps();\n if (active) {\n this.setActive();\n }\n if (rejected) {\n this.setReject(true);\n }\n }\n\n componentWillUnmount(): void {\n currentGlobalLoader = null;\n }\n\n componentDidUpdate(prevProps: Readonly<GlobalLoaderProps>) {\n const { expectedResponseTime, rejected, active } = this.getProps();\n if (expectedResponseTime !== prevProps.expectedResponseTime) {\n this.setState({ expectedResponseTime });\n }\n if (rejected !== prevProps.rejected) {\n this.setReject(rejected);\n }\n if (active !== prevProps.active) {\n if (active) {\n this.setActive();\n } else {\n this.setDone();\n }\n }\n }\n\n public render() {\n let status: GlobalLoaderViewProps['status'] = 'standard';\n\n if (this.state.done) {\n status = 'success';\n } else if (this.state.rejected) {\n status = 'error';\n } else if (this.state.accept) {\n status = 'accept';\n }\n const { delayBeforeHide, disableAnimations } = this.getProps();\n return (\n !this.state.dead &&\n this.state.visible && (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <GlobalLoaderView\n expectedResponseTime={this.state.expectedResponseTime}\n delayBeforeHide={delayBeforeHide}\n status={status}\n data-tid={GlobalLoaderDataTids.root}\n disableAnimations={disableAnimations}\n />\n </CommonWrapper>\n )\n );\n }\n\n /**\n * Запускает анимацию лоадера <br />\n * Равносильно установке пропа `active = true`\n *\n * @public\n */\n public static start = (expectedResponseTime?: number) => {\n currentGlobalLoader?.setActive();\n if (typeof expectedResponseTime === 'number') {\n currentGlobalLoader?.updateExpectedResponseTime(expectedResponseTime);\n }\n };\n\n /**\n * Показывает анимацию успешного завершения загрузки <br />\n * Равносильно установке пропа `active = false`\n *\n * @public\n */\n public static done = () => {\n currentGlobalLoader?.setDone();\n };\n\n /**\n * Переключает анимацию лоадера в состояние спиннера <br />\n * Равносильно установке пропа `rejected = true`\n *\n * @public\n */\n public static reject = () => {\n currentGlobalLoader?.setReject(true);\n };\n\n /**\n * Возвращает лоадер из состояния спиннера в обычное и продолжает анимацию с того места, на котором она была прерван <br />\n * Равносильно установке пропа `rejected = false`\n *\n * @public\n */\n public static accept = () => {\n currentGlobalLoader?.setReject(false);\n };\n\n public setActive = () => {\n this.startTask.cancel();\n if (this.state.successAnimationInProgress) {\n this.resumeTaskAfterSuccessAnimation();\n } else {\n this.setState({ visible: false, done: false, rejected: false, accept: false, started: true });\n if (this.getProps().rejected) {\n this.setReject(true);\n } else {\n this.stopTask.cancel();\n this.startTask();\n }\n }\n };\n\n public setDone = () => {\n if (!this.state.started) {\n return;\n }\n this.setState({ done: true, successAnimationInProgress: true });\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.stopTask();\n };\n\n public setReject = (reject: boolean) => {\n if (!this.state.visible && (this.state.started || this.getProps().active)) {\n this.setState({ visible: true });\n }\n this.startTask.cancel();\n this.stopTask.cancel();\n if (reject) {\n this.props.onReject?.();\n } else if (this.state.rejected) {\n this.setState({ accept: true });\n this.props.onAccept?.();\n }\n this.setState({ rejected: reject });\n };\n\n public updateExpectedResponseTime(expectedResponseTime: number) {\n this.setState({ expectedResponseTime });\n }\n\n public kill = () => {\n this.stopTask.cancel();\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.setState({\n dead: true,\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","debounce","isTestEnv","CommonWrapper","rootNode","createPropsGetter","GlobalLoaderView","GlobalLoaderDataTids","root","currentGlobalLoader","GlobalLoader","_class","_GlobalLoader","_React$Component","props","_this","call","getProps","defaultProps","startTask","setState","visible","onStart","delayBeforeShow","stopTask","successAnimationInProgress","started","onDone","delayBeforeHide","resumeTaskAfterSuccessAnimation","setActive","cancel","state","done","rejected","accept","setReject","setDone","reject","active","onReject","onAccept","kill","dead","expectedResponseTime","_inheritsLoose","_proto","prototype","componentDidMount","_currentGlobalLoader","_this$getProps","componentWillUnmount","componentDidUpdate","prevProps","_this$getProps2","render","status","_this$getProps3","disableAnimations","createElement","_extends","rootNodeRef","setRootNode","updateExpectedResponseTime","Component","__KONTUR_REACT_UI__","displayName","start","_currentGlobalLoader2","_currentGlobalLoader3","_currentGlobalLoader4","_currentGlobalLoader5","_currentGlobalLoader6"],"sources":["GlobalLoader.tsx"],"sourcesContent":["import React from 'react';\nimport debounce from 'lodash.debounce';\n\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { GlobalLoaderView, GlobalLoaderViewProps } from './GlobalLoaderView';\n\nexport interface GlobalLoaderProps {\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n\n /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */\n delayBeforeHide?: number;\n\n /** Устанавливает ожидаемое время(ms) ответа сервера. */\n expectedResponseTime?: number;\n\n /** Определяет, нужно ли показывать анимацию лоадера в виде спиннера. */\n rejected?: boolean;\n\n /** Определяет, показывать ли лоадер. */\n active?: boolean;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Задает коллбек, вызывающийся после появления лоадера. */\n onStart?(): void;\n\n /** Задает коллбек, вызывающийся после исчезновения лоадера. */\n onDone?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.reject(). Или после установки пропа rejected = true. */\n onReject?(): void;\n\n /** Задает коллбек, вызывающийся после вызова GlobalLoader.accept() или установки пропа rejected = false. */\n onAccept?(): void;\n}\nexport interface GlobalLoaderState {\n visible: boolean;\n done: boolean;\n rejected: boolean;\n accept: boolean;\n dead: boolean;\n successAnimationInProgress: boolean;\n expectedResponseTime: number;\n started: boolean;\n}\n\nexport const GlobalLoaderDataTids = {\n root: 'GlobalLoader',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n GlobalLoaderProps,\n 'expectedResponseTime' | 'delayBeforeShow' | 'delayBeforeHide' | 'rejected' | 'active' | 'disableAnimations'\n >\n>;\n\nlet currentGlobalLoader: GlobalLoader | null;\n\n/**\n * Глобальный лоадер `GlobalLoader` — это универсальный индикатор обмена данными с сервером.\n * Он появляется у верхней границы экрана и выглядит как тоненькая полоска, окрашенная в фирменный цвет продукта.\n *\n * `GlobalLoader` может быть только один в приложении. Поэтому, каждый новый экземпляр компонента \"убивает\" предыдущий экземпляр, и начинает перехватывать статические методы.\n *\n * Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.\n *\n * `GlobalLoader` работает в двух режимах:\n * * как прогресс-бар, примерно показывает ход получения данных от сервера.\n * * как спиннер, когда есть проблемы с соединением.\n */\n@rootNode\nexport class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {\n public static __KONTUR_REACT_UI__ = 'GlobalLoader';\n public static displayName = 'GlobalLoader';\n\n private setRootNode!: TSetRootNode;\n private getProps = createPropsGetter(GlobalLoader.defaultProps);\n\n private readonly startTask = debounce(() => {\n this.setState({ visible: true });\n this.props.onStart?.();\n }, this.getProps().delayBeforeShow);\n\n private readonly stopTask = debounce(() => {\n this.setState({ visible: false, successAnimationInProgress: false, started: false });\n this.props.onDone?.();\n }, this.getProps().delayBeforeHide);\n\n private readonly resumeTaskAfterSuccessAnimation = debounce(() => {\n this.setActive();\n }, this.getProps().delayBeforeHide);\n\n public static defaultProps: DefaultProps = {\n expectedResponseTime: 1000,\n delayBeforeShow: 1000,\n delayBeforeHide: 1000,\n rejected: false,\n active: false,\n disableAnimations: isTestEnv,\n };\n\n constructor(props: GlobalLoaderProps) {\n super(props);\n this.state = {\n started: false,\n visible: false,\n done: false,\n rejected: false,\n accept: false,\n dead: false,\n successAnimationInProgress: false,\n expectedResponseTime: this.getProps().expectedResponseTime,\n };\n }\n componentDidMount() {\n currentGlobalLoader?.kill();\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n currentGlobalLoader = this;\n const { active, rejected } = this.getProps();\n if (active) {\n this.setActive();\n }\n if (rejected) {\n this.setReject(true);\n }\n }\n\n componentWillUnmount(): void {\n currentGlobalLoader = null;\n }\n\n componentDidUpdate(prevProps: Readonly<GlobalLoaderProps>) {\n const { expectedResponseTime, rejected, active } = this.getProps();\n if (expectedResponseTime !== prevProps.expectedResponseTime) {\n this.setState({ expectedResponseTime });\n }\n if (rejected !== prevProps.rejected) {\n this.setReject(rejected);\n }\n if (active !== prevProps.active) {\n if (active) {\n this.setActive();\n } else {\n this.setDone();\n }\n }\n }\n\n public render() {\n let status: GlobalLoaderViewProps['status'] = 'standard';\n\n if (this.state.done) {\n status = 'success';\n } else if (this.state.rejected) {\n status = 'error';\n } else if (this.state.accept) {\n status = 'accept';\n }\n const { delayBeforeHide, disableAnimations } = this.getProps();\n return (\n !this.state.dead &&\n this.state.visible && (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <GlobalLoaderView\n expectedResponseTime={this.state.expectedResponseTime}\n delayBeforeHide={delayBeforeHide}\n status={status}\n data-tid={GlobalLoaderDataTids.root}\n disableAnimations={disableAnimations}\n />\n </CommonWrapper>\n )\n );\n }\n\n /**\n * Запускает анимацию лоадера <br />\n * Равносильно установке пропа `active = true`\n *\n * @public\n */\n public static start = (expectedResponseTime?: number) => {\n currentGlobalLoader?.setActive();\n if (typeof expectedResponseTime === 'number') {\n currentGlobalLoader?.updateExpectedResponseTime(expectedResponseTime);\n }\n };\n\n /**\n * Показывает анимацию успешного завершения загрузки <br />\n * Равносильно установке пропа `active = false`\n *\n * @public\n */\n public static done = () => {\n currentGlobalLoader?.setDone();\n };\n\n /**\n * Переключает анимацию лоадера в состояние спиннера <br />\n * Равносильно установке пропа `rejected = true`\n *\n * @public\n */\n public static reject = () => {\n currentGlobalLoader?.setReject(true);\n };\n\n /**\n * Возвращает лоадер из состояния спиннера в обычное и продолжает анимацию с того места, на котором она была прерван <br />\n * Равносильно установке пропа `rejected = false`\n *\n * @public\n */\n public static accept = () => {\n currentGlobalLoader?.setReject(false);\n };\n\n public setActive = () => {\n this.startTask.cancel();\n if (this.state.successAnimationInProgress) {\n this.resumeTaskAfterSuccessAnimation();\n } else {\n this.setState({ visible: false, done: false, rejected: false, accept: false, started: true });\n if (this.getProps().rejected) {\n this.setReject(true);\n } else {\n this.stopTask.cancel();\n this.startTask();\n }\n }\n };\n\n public setDone = () => {\n if (!this.state.started) {\n return;\n }\n this.setState({ done: true, successAnimationInProgress: true });\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.stopTask();\n };\n\n public setReject = (reject: boolean) => {\n if (!this.state.visible && (this.state.started || this.getProps().active)) {\n this.setState({ visible: true });\n }\n this.startTask.cancel();\n this.stopTask.cancel();\n if (reject) {\n this.props.onReject?.();\n } else if (this.state.rejected) {\n this.setState({ accept: true });\n this.props.onAccept?.();\n }\n this.setState({ rejected: reject });\n };\n\n public updateExpectedResponseTime(expectedResponseTime: number) {\n this.setState({ expectedResponseTime });\n }\n\n public kill = () => {\n this.stopTask.cancel();\n this.startTask.cancel();\n this.resumeTaskAfterSuccessAnimation.cancel();\n this.setState({\n dead: true,\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,46 +1,24 @@
1
1
  import React from 'react';
2
2
  export interface GlobalLoaderProps {
3
- /**
4
- * Время(ms) до появления лоадера
5
- */
3
+ /** Устанавливает задержку в миллисекундах до появления лоадера. */
6
4
  delayBeforeShow?: number;
7
- /**
8
- * Время(ms) до исчезновения лоадера
9
- */
5
+ /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */
10
6
  delayBeforeHide?: number;
11
- /**
12
- * Ожидаемое время(ms) ответа сервера
13
- */
7
+ /** Устанавливает ожидаемое время(ms) ответа сервера. */
14
8
  expectedResponseTime?: number;
15
- /**
16
- * Анимация лоадера в виде спиннера
17
- */
9
+ /** Определяет, нужно ли показывать анимацию лоадера в виде спиннера. */
18
10
  rejected?: boolean;
19
- /**
20
- * Показывать лоадер
21
- */
11
+ /** Определяет, показывать ли лоадер. */
22
12
  active?: boolean;
23
- /**
24
- * Не показывать анимацию
25
- */
13
+ /** Отключает анимацию. */
26
14
  disableAnimations?: boolean;
27
- /**
28
- * Коллбек, вызывающийся после появления лоадера
29
- */
15
+ /** Задает коллбек, вызывающийся после появления лоадера. */
30
16
  onStart?(): void;
31
- /**
32
- * Коллбек, вызывающийся после исчезновения лоадера
33
- */
17
+ /** Задает коллбек, вызывающийся после исчезновения лоадера. */
34
18
  onDone?(): void;
35
- /**
36
- * Коллбек, вызывающийся после вызова `GlobalLoader.reject()`.
37
- * Или после установки пропа `rejected = true`
38
- */
19
+ /** Задает коллбек, вызывающийся после вызова GlobalLoader.reject(). Или после установки пропа rejected = true. */
39
20
  onReject?(): void;
40
- /**
41
- * Коллбек, вызывающийся после вызова `GlobalLoader.accept()`.
42
- * Или после установки пропа `rejected = false`
43
- */
21
+ /** Задает коллбек, вызывающийся после вызова GlobalLoader.accept() или установки пропа rejected = false. */
44
22
  onAccept?(): void;
45
23
  }
46
24
  export interface GlobalLoaderState {
@@ -57,6 +35,18 @@ export declare const GlobalLoaderDataTids: {
57
35
  readonly root: "GlobalLoader";
58
36
  };
59
37
  type DefaultProps = Required<Pick<GlobalLoaderProps, 'expectedResponseTime' | 'delayBeforeShow' | 'delayBeforeHide' | 'rejected' | 'active' | 'disableAnimations'>>;
38
+ /**
39
+ * Глобальный лоадер `GlobalLoader` — это универсальный индикатор обмена данными с сервером.
40
+ * Он появляется у верхней границы экрана и выглядит как тоненькая полоска, окрашенная в фирменный цвет продукта.
41
+ *
42
+ * `GlobalLoader` может быть только один в приложении. Поэтому, каждый новый экземпляр компонента "убивает" предыдущий экземпляр, и начинает перехватывать статические методы.
43
+ *
44
+ * Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.
45
+ *
46
+ * `GlobalLoader` работает в двух режимах:
47
+ * * как прогресс-бар, примерно показывает ход получения данных от сервера.
48
+ * * как спиннер, когда есть проблемы с соединением.
49
+ */
60
50
  export declare class GlobalLoader extends React.Component<GlobalLoaderProps, GlobalLoaderState> {
61
51
  static __KONTUR_REACT_UI__: string;
62
52
  static displayName: string;
@@ -6,7 +6,7 @@
6
6
 
7
7
  Предполагается монтирование компонента в единственном месте. И управление им через статические методы, либо через пропы.
8
8
 
9
- Все статические методы:
9
+ ### Все статические методы
10
10
  ```jsx harmony
11
11
  import { Button, Gapped } from '@skbkontur/react-ui';
12
12
 
@@ -18,10 +18,9 @@ import { Button, Gapped } from '@skbkontur/react-ui';
18
18
  </Gapped>
19
19
  ```
20
20
 
21
- Монтирование и кастомизация:
21
+ ### Монтирование и кастомизация
22
22
  ```jsx harmony
23
- import { Button, Toggle, Gapped, ThemeContext, ThemeFactory } from '@skbkontur/react-ui';
24
- import { GlobalLoader } from './GlobalLoader';
23
+ import { Button, Toggle, Gapped, GlobalLoader, ThemeContext, ThemeFactory } from '@skbkontur/react-ui';
25
24
 
26
25
  const myTheme = ThemeFactory.create({ globalLoaderColor: 'red' });
27
26
 
@@ -63,7 +62,7 @@ const reset = () => {
63
62
  ```
64
63
 
65
64
 
66
- Статические методы в модалке:
65
+ ### Статические методы в модалке
67
66
  ```jsx harmony
68
67
  import { Button, Gapped, Modal } from '@skbkontur/react-ui';
69
68
 
@@ -1 +1 @@
1
- {"version":3,"names":["React","useContext","useRef","cx","ZIndex","ThemeContext","CommonWrapper","animations","styles","useGlobalLoaderPosition","useGlobalLoaderWidth","GlobalLoaderView","_ref","expectedResponseTime","delayBeforeHide","status","disableAnimations","rest","_objectWithoutPropertiesLoose","_excluded","ref","theme","_useGlobalLoaderWidth","width","startWidth","fullWidth","_useGlobalLoaderPosit","left","getAnimationClass","successAnimation","acceptAnimation","slowAcceptAnimation","errorAnimation","standardAnimation","successWithoutAnimation","acceptWithoutAnimation","errorWithoutAnimation","standardWithoutAnimation","createElement","_extends","priority","className","outer","inner"],"sources":["GlobalLoaderView.tsx"],"sourcesContent":["import React, { useContext, useRef } from 'react';\n\nimport { cx } from '../../lib/theming/Emotion';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\n\nimport { animations, styles } from './GlobalLoaderView.styles';\nimport { useGlobalLoaderPosition, useGlobalLoaderWidth } from './useParams';\n\nexport interface GlobalLoaderViewProps extends Pick<CommonProps, 'data-tid'> {\n expectedResponseTime: number;\n delayBeforeHide: number;\n status?: 'success' | 'error' | 'standard' | 'accept';\n disableAnimations: boolean;\n}\n\nexport interface GlobalLoaderViewRef {\n element: HTMLDivElement;\n refObject: React.RefObject<GlobalLoaderViewRef['element']>;\n}\n\nexport const GlobalLoaderView = ({\n expectedResponseTime,\n delayBeforeHide,\n status,\n disableAnimations,\n ...rest\n}: GlobalLoaderViewProps) => {\n const ref = useRef<GlobalLoaderViewRef['element']>(null);\n const theme = useContext(ThemeContext);\n const { width, startWidth, fullWidth } = useGlobalLoaderWidth(status, ref);\n const { left } = useGlobalLoaderPosition(ref);\n\n const getAnimationClass = (status: GlobalLoaderViewProps['status']) => {\n if (!disableAnimations) {\n switch (status) {\n case 'success':\n return animations.successAnimation(delayBeforeHide, width, left);\n case 'accept':\n if (startWidth < fullWidth * 0.8) {\n return animations.acceptAnimation(theme, startWidth, expectedResponseTime, width, left);\n }\n return animations.slowAcceptAnimation(theme, startWidth, width, left);\n case 'error':\n return animations.errorAnimation(theme);\n case 'standard':\n return animations.standardAnimation(theme, expectedResponseTime);\n }\n }\n\n if (disableAnimations) {\n switch (status) {\n case 'success':\n return styles.successWithoutAnimation();\n case 'accept':\n return animations.acceptWithoutAnimation(startWidth);\n case 'error':\n return styles.errorWithoutAnimation();\n case 'standard':\n return styles.standardWithoutAnimation();\n }\n }\n };\n\n return (\n <CommonWrapper {...rest} data-status={status}>\n <ZIndex priority=\"GlobalLoader\" className={styles.outer(theme)}>\n <div ref={ref} className={cx(styles.inner(theme), getAnimationClass(status))} />\n </ZIndex>\n </CommonWrapper>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useContext","useRef","cx","ZIndex","ThemeContext","CommonWrapper","animations","styles","useGlobalLoaderPosition","useGlobalLoaderWidth","GlobalLoaderView","_ref","expectedResponseTime","delayBeforeHide","status","disableAnimations","rest","_objectWithoutPropertiesLoose","_excluded","ref","theme","_useGlobalLoaderWidth","width","startWidth","fullWidth","_useGlobalLoaderPosit","left","getAnimationClass","successAnimation","acceptAnimation","slowAcceptAnimation","errorAnimation","standardAnimation","successWithoutAnimation","acceptWithoutAnimation","errorWithoutAnimation","standardWithoutAnimation","createElement","_extends","priority","className","outer","inner"],"sources":["GlobalLoaderView.tsx"],"sourcesContent":["import React, { useContext, useRef } from 'react';\n\nimport { cx } from '../../lib/theming/Emotion';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\n\nimport { animations, styles } from './GlobalLoaderView.styles';\nimport { useGlobalLoaderPosition, useGlobalLoaderWidth } from './useParams';\n\nexport interface GlobalLoaderViewProps extends Pick<CommonProps, 'data-tid'> {\n /** Устанавливает ожидаемое время(ms) ответа сервера. */\n expectedResponseTime: number;\n\n /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */\n delayBeforeHide: number;\n\n /** Устанавливает статус операции. */\n status?: 'success' | 'error' | 'standard' | 'accept';\n\n /** Отключает анимацию. */\n disableAnimations: boolean;\n}\n\nexport interface GlobalLoaderViewRef {\n element: HTMLDivElement;\n refObject: React.RefObject<GlobalLoaderViewRef['element']>;\n}\n\nexport const GlobalLoaderView = ({\n expectedResponseTime,\n delayBeforeHide,\n status,\n disableAnimations,\n ...rest\n}: GlobalLoaderViewProps) => {\n const ref = useRef<GlobalLoaderViewRef['element']>(null);\n const theme = useContext(ThemeContext);\n const { width, startWidth, fullWidth } = useGlobalLoaderWidth(status, ref);\n const { left } = useGlobalLoaderPosition(ref);\n\n const getAnimationClass = (status: GlobalLoaderViewProps['status']) => {\n if (!disableAnimations) {\n switch (status) {\n case 'success':\n return animations.successAnimation(delayBeforeHide, width, left);\n case 'accept':\n if (startWidth < fullWidth * 0.8) {\n return animations.acceptAnimation(theme, startWidth, expectedResponseTime, width, left);\n }\n return animations.slowAcceptAnimation(theme, startWidth, width, left);\n case 'error':\n return animations.errorAnimation(theme);\n case 'standard':\n return animations.standardAnimation(theme, expectedResponseTime);\n }\n }\n\n if (disableAnimations) {\n switch (status) {\n case 'success':\n return styles.successWithoutAnimation();\n case 'accept':\n return animations.acceptWithoutAnimation(startWidth);\n case 'error':\n return styles.errorWithoutAnimation();\n case 'standard':\n return styles.standardWithoutAnimation();\n }\n }\n };\n\n return (\n <CommonWrapper {...rest} data-status={status}>\n <ZIndex priority=\"GlobalLoader\" className={styles.outer(theme)}>\n <div ref={ref} className={cx(styles.inner(theme), getAnimationClass(status))} />\n </ZIndex>\n </CommonWrapper>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,13 @@
1
1
  import React from 'react';
2
2
  import { CommonProps } from '../../internal/CommonWrapper';
3
3
  export interface GlobalLoaderViewProps extends Pick<CommonProps, 'data-tid'> {
4
+ /** Устанавливает ожидаемое время(ms) ответа сервера. */
4
5
  expectedResponseTime: number;
6
+ /** Устанавливает задержку в миллисекундах до исчезновения лоадера. */
5
7
  delayBeforeHide: number;
8
+ /** Устанавливает статус операции. */
6
9
  status?: 'success' | 'error' | 'standard' | 'accept';
10
+ /** Отключает анимацию. */
7
11
  disableAnimations: boolean;
8
12
  }
9
13
  export interface GlobalLoaderViewRef {
@@ -0,0 +1,28 @@
1
+ import * as GlobalLoaderStories from './GlobalLoader.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={GlobalLoaderStories} />
6
+
7
+ # GlobalLoader
8
+
9
+ [Компонент в Контур.Гайдах](https://guides.kontur.ru/components/progress-indicators/global-loader/)
10
+
11
+ [Компонент в Figma](https://www.figma.com/design/87ScqxPzJpF9DcVBNYWOjM/%E2%9A%A1-Kontur-UI?node-id=396-15654&t=i9hraypi61DJWRFA-4)
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} />
@@ -60,6 +60,12 @@ var passCornersIfButton = function passCornersIfButton(child, firstChild, lastCh
60
60
  export var GroupDataTids = {
61
61
  root: 'Group__root'
62
62
  };
63
+
64
+ /**
65
+ * Компонент `Group` используется для создания логически сгруппированных элементов, выровненных по горизонтали.
66
+ *
67
+ * Длина контейнера настраивается с помощью пропа `width`.
68
+ */
63
69
  export var Group = rootNode(_class = (_Group = /*#__PURE__*/function (_React$Component) {
64
70
  function Group() {
65
71
  return _React$Component.apply(this, arguments) || this;
@@ -1 +1 @@
1
- {"version":3,"names":["React","PropTypes","isIE11","isEdge","isButton","CommonWrapper","cx","rootNode","isInputLike","styles","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","Children","count","getButtonCorners","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","passCornersIfButton","child","firstChild","lastChild","corners","cloneElement","_extends","props","GroupDataTids","root","Group","_class","_Group","_React$Component","apply","arguments","_inheritsLoose","_proto","prototype","render","_this","style","width","childrenArray","toArray","createElement","rootNodeRef","setRootNode","className","map","_cx","_cx2","isValidElement","isWidthInPercent","Boolean","toString","includes","modifiedChild","fixed","stretch","stretchFallback","item","itemFirst","Component","__KONTUR_REACT_UI__","displayName","propTypes","oneOfType","number","string"],"sources":["Group.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { isButton } from '../Button';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isInputLike } from '../../lib/utils';\n\nimport { styles } from './Group.styles';\n\nexport interface GroupProps extends CommonProps {\n width?: React.CSSProperties['width'];\n}\n\ninterface GroupChildProps {\n width?: React.CSSProperties['width'];\n corners?: number;\n}\n\nconst getFirstChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n return children?.[0] as React.ReactNode;\n};\n\nconst getLastChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n const numberOfChildren = React.Children.count(children);\n\n return children?.[numberOfChildren - 1] as React.ReactNode;\n};\n\nexport const getButtonCorners = (isFirstChild: boolean, isLastChild: boolean): React.CSSProperties => {\n if (isFirstChild && isLastChild) {\n return {};\n }\n\n if (isFirstChild) {\n return {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n };\n }\n\n if (isLastChild) {\n return {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n };\n }\n\n return {\n borderRadius: 0,\n };\n};\n\nconst passCornersIfButton = (child: React.ReactNode, firstChild: React.ReactNode, lastChild: React.ReactNode) => {\n const corners = getButtonCorners(child === firstChild, child === lastChild);\n if (isButton(child)) {\n return React.cloneElement(child, { corners: { ...corners, ...child.props.corners } });\n }\n if (isInputLike(child)) {\n return React.cloneElement(child, { corners: { ...corners, ...child.props.corners } });\n }\n\n return child;\n};\n\nexport const GroupDataTids = {\n root: 'Group__root',\n} as const;\n\n@rootNode\nexport class Group extends React.Component<GroupProps> {\n public static __KONTUR_REACT_UI__ = 'Group';\n public static displayName = 'Group';\n\n private setRootNode!: TSetRootNode;\n\n public static propTypes = {\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n };\n\n public render() {\n const style: React.CSSProperties = {\n width: this.props.width,\n };\n\n const childrenArray = React.Children.toArray(this.props.children);\n const firstChild = getFirstChild(childrenArray);\n const lastChild = getLastChild(childrenArray);\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span data-tid={GroupDataTids.root} className={styles.root()} style={style}>\n {React.Children.map(childrenArray, (child) => {\n if (!child || !React.isValidElement<GroupChildProps>(child)) {\n return null;\n }\n\n const isWidthInPercent = Boolean(child.props.width && child.props.width.toString().includes('%'));\n\n const modifiedChild = passCornersIfButton(child, firstChild, lastChild);\n\n const isFirstChild = child === firstChild;\n\n return (\n <div\n className={cx({\n [styles.fixed()]: !isWidthInPercent,\n [styles.stretch()]: isWidthInPercent,\n [styles.stretchFallback()]: Boolean(isWidthInPercent && this.props.width && (isIE11 || isEdge)),\n })}\n >\n <div\n className={cx({\n [styles.item()]: true,\n [styles.itemFirst()]: isFirstChild,\n })}\n >\n {modifiedChild}\n </div>\n </div>\n );\n })}\n </span>\n </CommonWrapper>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","PropTypes","isIE11","isEdge","isButton","CommonWrapper","cx","rootNode","isInputLike","styles","getFirstChild","children","Array","isArray","getLastChild","numberOfChildren","Children","count","getButtonCorners","isFirstChild","isLastChild","borderTopRightRadius","borderBottomRightRadius","borderTopLeftRadius","borderBottomLeftRadius","borderRadius","passCornersIfButton","child","firstChild","lastChild","corners","cloneElement","_extends","props","GroupDataTids","root","Group","_class","_Group","_React$Component","apply","arguments","_inheritsLoose","_proto","prototype","render","_this","style","width","childrenArray","toArray","createElement","rootNodeRef","setRootNode","className","map","_cx","_cx2","isValidElement","isWidthInPercent","Boolean","toString","includes","modifiedChild","fixed","stretch","stretchFallback","item","itemFirst","Component","__KONTUR_REACT_UI__","displayName","propTypes","oneOfType","number","string"],"sources":["Group.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { isButton } from '../Button';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isInputLike } from '../../lib/utils';\n\nimport { styles } from './Group.styles';\n\nexport interface GroupProps extends CommonProps {\n /** Задает длину компонента Group. */\n width?: React.CSSProperties['width'];\n}\n\ninterface GroupChildProps {\n width?: React.CSSProperties['width'];\n corners?: number;\n}\n\nconst getFirstChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n return children?.[0] as React.ReactNode;\n};\n\nconst getLastChild = (children: React.ReactNode) => {\n if (!Array.isArray(children)) {\n return children;\n }\n\n const numberOfChildren = React.Children.count(children);\n\n return children?.[numberOfChildren - 1] as React.ReactNode;\n};\n\nexport const getButtonCorners = (isFirstChild: boolean, isLastChild: boolean): React.CSSProperties => {\n if (isFirstChild && isLastChild) {\n return {};\n }\n\n if (isFirstChild) {\n return {\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n };\n }\n\n if (isLastChild) {\n return {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n };\n }\n\n return {\n borderRadius: 0,\n };\n};\n\nconst passCornersIfButton = (child: React.ReactNode, firstChild: React.ReactNode, lastChild: React.ReactNode) => {\n const corners = getButtonCorners(child === firstChild, child === lastChild);\n if (isButton(child)) {\n return React.cloneElement(child, { corners: { ...corners, ...child.props.corners } });\n }\n if (isInputLike(child)) {\n return React.cloneElement(child, { corners: { ...corners, ...child.props.corners } });\n }\n\n return child;\n};\n\nexport const GroupDataTids = {\n root: 'Group__root',\n} as const;\n\n/**\n * Компонент `Group` используется для создания логически сгруппированных элементов, выровненных по горизонтали.\n *\n * Длина контейнера настраивается с помощью пропа `width`.\n */\n@rootNode\nexport class Group extends React.Component<GroupProps> {\n public static __KONTUR_REACT_UI__ = 'Group';\n public static displayName = 'Group';\n\n private setRootNode!: TSetRootNode;\n\n public static propTypes = {\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n };\n\n public render() {\n const style: React.CSSProperties = {\n width: this.props.width,\n };\n\n const childrenArray = React.Children.toArray(this.props.children);\n const firstChild = getFirstChild(childrenArray);\n const lastChild = getLastChild(childrenArray);\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <span data-tid={GroupDataTids.root} className={styles.root()} style={style}>\n {React.Children.map(childrenArray, (child) => {\n if (!child || !React.isValidElement<GroupChildProps>(child)) {\n return null;\n }\n\n const isWidthInPercent = Boolean(child.props.width && child.props.width.toString().includes('%'));\n\n const modifiedChild = passCornersIfButton(child, firstChild, lastChild);\n\n const isFirstChild = child === firstChild;\n\n return (\n <div\n className={cx({\n [styles.fixed()]: !isWidthInPercent,\n [styles.stretch()]: isWidthInPercent,\n [styles.stretchFallback()]: Boolean(isWidthInPercent && this.props.width && (isIE11 || isEdge)),\n })}\n >\n <div\n className={cx({\n [styles.item()]: true,\n [styles.itemFirst()]: isFirstChild,\n })}\n >\n {modifiedChild}\n </div>\n </div>\n );\n })}\n </span>\n </CommonWrapper>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,12 +2,18 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { CommonProps } from '../../internal/CommonWrapper';
4
4
  export interface GroupProps extends CommonProps {
5
+ /** Задает длину компонента Group. */
5
6
  width?: React.CSSProperties['width'];
6
7
  }
7
8
  export declare const getButtonCorners: (isFirstChild: boolean, isLastChild: boolean) => React.CSSProperties;
8
9
  export declare const GroupDataTids: {
9
10
  readonly root: "Group__root";
10
11
  };
12
+ /**
13
+ * Компонент `Group` используется для создания логически сгруппированных элементов, выровненных по горизонтали.
14
+ *
15
+ * Длина контейнера настраивается с помощью пропа `width`.
16
+ */
11
17
  export declare class Group extends React.Component<GroupProps> {
12
18
  static __KONTUR_REACT_UI__: string;
13
19
  static displayName: string;
@@ -1,3 +1,4 @@
1
+ ### Базовый пример
1
2
  ```jsx harmony
2
3
  import FunctionIcon from '@skbkontur/react-icons/Function';
3
4
  import SearchIcon from '@skbkontur/react-icons/Search';
@@ -0,0 +1,24 @@
1
+ import * as GroupStories from './Group.docs.stories.tsx';
2
+ import { Primary, ArgTypes, Stories, Description } from '@storybook/blocks';
3
+ import { Meta } from '../../../.storybook/Meta';
4
+
5
+ <Meta of={GroupStories} />
6
+
7
+ # Group
8
+
9
+ <Description />
10
+
11
+ ## Базовый пример
12
+
13
+ <Primary />
14
+
15
+ ## Пропы
16
+
17
+ <details>
18
+ <summary>Открыть таблицу с пропами</summary>
19
+ <ArgTypes />
20
+ </details>
21
+
22
+ ## Примеры использования
23
+
24
+ <Stories title="" includePrimary={false} />
@@ -15,7 +15,10 @@ import { styles } from "../Hint.styles";
15
15
  var HINT_BORDER_COLOR = 'transparent';
16
16
 
17
17
  /**
18
- * Всплывающая подсказка, которая по умолчанию отображается при наведении на элемент. <br/> Можно задать другие условия отображения.
18
+ * Всплывающая подсказка `Hint`.
19
+ * По умолчанию отображается при наведении на элемент, но можно задать другие условия отображения.
20
+ *
21
+ * Для подсказки, всплывающей по клику используйте Tooltip.
19
22
  */
20
23
  export var Hint = rootNode(_class = (_Hint = /*#__PURE__*/function (_React$PureComponent) {
21
24
  function Hint() {
@@ -1 +1 @@
1
- {"version":3,"names":["React","globalObject","ThemeContext","ThemeFactory","DUMMY_LOCATION","Popup","isTestEnv","CommonWrapper","cx","rootNode","createPropsGetter","styles","HINT_BORDER_COLOR","Hint","_class","_Hint","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","manual","position","popupRef","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","Consumer","theme","Provider","value","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","_extends","rootNodeRef","setRootNode","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Hint.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Theme } from '../../lib/theming/Theme';\nimport { DUMMY_LOCATION, Popup, PopupPinnablePositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Nullable } from '../../typings/utility-types';\nimport { MouseEventType } from '../../typings/event-types';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Hint.styles';\n\nconst HINT_BORDER_COLOR = 'transparent';\n\nexport interface HintProps extends CommonProps {\n children?: React.ReactNode;\n /**\n * Переводит отображение подсказки в _\"ручной режим\"_.\n *\n * В _\"ручном режиме\"_ подсказку можно активировать только задав значение пропу `opened`.\n */\n manual?: boolean;\n /**\n * Задаёт максимальную ширину подсказки.\n */\n maxWidth?: React.CSSProperties['maxWidth'];\n /**\n * HTML-событие `mouseenter`.\n */\n onMouseEnter?: (event: MouseEventType) => void;\n /**\n * HTML-событие `mouseleave`.\n */\n onMouseLeave?: (event: MouseEventType) => void;\n /**\n * Если `true` - подсказка будет открыта.\n *\n * _Примечание_: работает только при `manual=true`.\n */\n opened?: boolean;\n /**\n * Расположение подсказки относительно текста.\n *\n * **Допустимые значения**: `\"top\"`, `\"right\"`, `\"bottom\"`, `\"left\"`, `\"top left\"`, `\"top center\"`, `\"top right\"`, `\"right top\"`, `\"right middle\"`, `\"right bottom\"`, `\"bottom left\"`, `\"bottom center\"`, `\"bottom right\"`, `\"left top\"`, `\"left middle\"`, `\"left bottom\"`.\n */\n pos?: ShortPopupPositionsType | PopupPinnablePositionsType;\n /**\n * Текст подсказки.\n */\n text: React.ReactNode;\n /**\n * Список позиций, которые хинт будет занимать. Если положение хинт в определенной позиции будет выходить\n * за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`.\n */\n allowedPositions?: PopupPinnablePositionsType[];\n /**\n * Отключает анимацию.\n */\n disableAnimations?: boolean;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования хинта при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n}\n\nexport interface HintState {\n opened: boolean;\n position: PopupPinnablePositionsType;\n}\n\ntype DefaultProps = Required<Pick<HintProps, 'manual' | 'opened' | 'maxWidth' | 'disableAnimations' | 'useWrapper'>>;\n\n/**\n * Всплывающая подсказка, которая по умолчанию отображается при наведении на элемент. <br/> Можно задать другие условия отображения.\n */\n@rootNode\nexport class Hint extends React.PureComponent<HintProps, HintState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Hint';\n public static displayName = 'Hint';\n\n public static defaultProps: DefaultProps = {\n manual: false,\n opened: false,\n maxWidth: 200,\n disableAnimations: isTestEnv,\n useWrapper: false,\n };\n\n private getProps = createPropsGetter(Hint.defaultProps);\n\n public state: HintState = {\n opened: this.getProps().manual ? !!this.getProps().opened : false,\n position: DUMMY_LOCATION.position,\n };\n\n private timer: SafeTimer;\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions;\n }\n\n public componentDidUpdate(prevProps: HintProps) {\n const { opened, manual } = this.getProps();\n if (!manual) {\n return;\n }\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n if (opened !== prevProps.opened) {\n this.setState({ opened: !!opened });\n }\n }\n\n public componentWillUnmount() {\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.hintMargin,\n popupBorder: theme.hintBorder,\n popupBorderRadius: theme.hintBorderRadius,\n },\n this.theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { disableAnimations, useWrapper } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n hasPin={false}\n opened={this.state.opened}\n anchorElement={this.props.children}\n positions={this.getPositions()}\n pos={this.props.pos}\n backgroundColor={this.theme.hintBgColor}\n borderColor={HINT_BORDER_COLOR}\n onPositionChange={(position) => this.setState({ position })}\n disableAnimations={disableAnimations}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n useWrapper={useWrapper}\n ref={this.popupRef}\n withoutMobile\n >\n {this.renderContent()}\n </Popup>\n </CommonWrapper>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n private renderContent() {\n if (!this.props.text) {\n return null;\n }\n\n const { maxWidth } = this.getProps();\n const centerAlignPositions = ['top', 'top center', 'bottom', 'bottom center'];\n const className = cx({\n [styles.content(this.theme)]: true,\n [styles.contentCenter(this.theme)]: centerAlignPositions.includes(this.state.position),\n });\n return (\n <div className={className} style={{ maxWidth }}>\n {this.props.text}\n </div>\n );\n }\n\n private getPositions = (): PopupPinnablePositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private handleMouseEnter = (e: MouseEventType) => {\n if (!this.getProps().manual && !this.timer) {\n this.timer = globalObject.setTimeout(this.open, 400);\n }\n\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: MouseEventType) => {\n if (!this.getProps().manual && this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n this.setState({ opened: false });\n }\n\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private open = () => {\n this.setState({ opened: true });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","globalObject","ThemeContext","ThemeFactory","DUMMY_LOCATION","Popup","isTestEnv","CommonWrapper","cx","rootNode","createPropsGetter","styles","HINT_BORDER_COLOR","Hint","_class","_Hint","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","manual","position","popupRef","createRef","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","props","allowedPositions","handleMouseEnter","e","timer","setTimeout","open","onMouseEnter","handleMouseLeave","clearTimeout","setState","onMouseLeave","_inheritsLoose","_proto","prototype","getAllowedPositions","componentDidUpdate","prevProps","_this$getProps","componentWillUnmount","render","_this2","createElement","Consumer","theme","Provider","value","create","popupMargin","hintMargin","popupBorder","hintBorder","popupBorderRadius","hintBorderRadius","renderMain","_this3","_this$getProps2","disableAnimations","useWrapper","_extends","rootNodeRef","setRootNode","hasPin","children","positions","pos","backgroundColor","hintBgColor","borderColor","onPositionChange","ref","withoutMobile","renderContent","_cx","text","_this$getProps3","maxWidth","centerAlignPositions","className","content","contentCenter","includes","style","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Hint.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Theme } from '../../lib/theming/Theme';\nimport { DUMMY_LOCATION, Popup, PopupPinnablePositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Nullable } from '../../typings/utility-types';\nimport { MouseEventType } from '../../typings/event-types';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Hint.styles';\n\nconst HINT_BORDER_COLOR = 'transparent';\n\nexport interface HintProps extends CommonProps {\n /** @ignore */\n children?: React.ReactNode;\n\n /** Переводит отображение подсказки в _\"ручной режим\"_.\n В _\"ручном режиме\"_ подсказку можно активировать только задав значение пропу `opened`. */\n manual?: boolean;\n\n /** Задает максимальную ширину подсказки. */\n maxWidth?: React.CSSProperties['maxWidth'];\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */\n onMouseEnter?: (event: MouseEventType) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: (event: MouseEventType) => void;\n\n /** Открывает подсказку. Работает только при `manual=true`. */\n opened?: boolean;\n\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPinnablePositionsType;\n\n /** Задает текст подсказки. */\n text: React.ReactNode;\n\n /** Задает список позиций, которые будет занимать хинт. Если положение хинта в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPinnablePositionsType[];\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования хинта при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n}\n\nexport interface HintState {\n opened: boolean;\n position: PopupPinnablePositionsType;\n}\n\ntype DefaultProps = Required<Pick<HintProps, 'manual' | 'opened' | 'maxWidth' | 'disableAnimations' | 'useWrapper'>>;\n\n/**\n * Всплывающая подсказка `Hint`.\n * По умолчанию отображается при наведении на элемент, но можно задать другие условия отображения.\n *\n * Для подсказки, всплывающей по клику используйте Tooltip.\n */\n@rootNode\nexport class Hint extends React.PureComponent<HintProps, HintState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Hint';\n public static displayName = 'Hint';\n\n public static defaultProps: DefaultProps = {\n manual: false,\n opened: false,\n maxWidth: 200,\n disableAnimations: isTestEnv,\n useWrapper: false,\n };\n\n private getProps = createPropsGetter(Hint.defaultProps);\n\n public state: HintState = {\n opened: this.getProps().manual ? !!this.getProps().opened : false,\n position: DUMMY_LOCATION.position,\n };\n\n private timer: SafeTimer;\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions;\n }\n\n public componentDidUpdate(prevProps: HintProps) {\n const { opened, manual } = this.getProps();\n if (!manual) {\n return;\n }\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n if (opened !== prevProps.opened) {\n this.setState({ opened: !!opened });\n }\n }\n\n public componentWillUnmount() {\n if (this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.hintMargin,\n popupBorder: theme.hintBorder,\n popupBorderRadius: theme.hintBorderRadius,\n },\n this.theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { disableAnimations, useWrapper } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n hasPin={false}\n opened={this.state.opened}\n anchorElement={this.props.children}\n positions={this.getPositions()}\n pos={this.props.pos}\n backgroundColor={this.theme.hintBgColor}\n borderColor={HINT_BORDER_COLOR}\n onPositionChange={(position) => this.setState({ position })}\n disableAnimations={disableAnimations}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n useWrapper={useWrapper}\n ref={this.popupRef}\n withoutMobile\n >\n {this.renderContent()}\n </Popup>\n </CommonWrapper>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n private renderContent() {\n if (!this.props.text) {\n return null;\n }\n\n const { maxWidth } = this.getProps();\n const centerAlignPositions = ['top', 'top center', 'bottom', 'bottom center'];\n const className = cx({\n [styles.content(this.theme)]: true,\n [styles.contentCenter(this.theme)]: centerAlignPositions.includes(this.state.position),\n });\n return (\n <div className={className} style={{ maxWidth }}>\n {this.props.text}\n </div>\n );\n }\n\n private getPositions = (): PopupPinnablePositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private handleMouseEnter = (e: MouseEventType) => {\n if (!this.getProps().manual && !this.timer) {\n this.timer = globalObject.setTimeout(this.open, 400);\n }\n\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n\n private handleMouseLeave = (e: MouseEventType) => {\n if (!this.getProps().manual && this.timer) {\n globalObject.clearTimeout(this.timer);\n this.timer = null;\n this.setState({ opened: false });\n }\n\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private open = () => {\n this.setState({ opened: true });\n };\n}\n"],"mappings":"kJAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,QAAmB,0BAA0B;;AAElE,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,YAAY,QAAQ,gCAAgC;;AAE7D,SAASC,cAAc,EAAEC,KAAK,QAA6D,sBAAsB;;;AAGjH,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,aAAa,QAAqB,8BAA8B;AACzE,SAASC,EAAE,QAAQ,2BAA2B;AAC9C,SAASC,QAAQ,QAAsB,oBAAoB;;AAE3D,SAASC,iBAAiB,QAAQ,6BAA6B;;AAE/D,SAASC,MAAM,QAAQ,eAAe;;AAEtC,IAAMC,iBAAiB,GAAG,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CvC;AACA;AACA;AACA;AACA;AACA;AACA;AACaC,IAAI,GADhBJ,QAAQ,CAAAK,MAAA,IAAAC,KAAA,0BAAAC,oBAAA,YAAAH,KAAA,OAAAI,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;;;;;;;;;;;;IAaCU,QAAQ,GAAGjB,iBAAiB,CAACG,IAAI,CAACe,YAAY,CAAC,CAAAX,KAAA;;IAEhDY,KAAK,GAAc;MACxBC,MAAM,EAAEb,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACI,MAAM,GAAG,CAAC,CAACd,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACG,MAAM,GAAG,KAAK;MACjEE,QAAQ,EAAE5B,cAAc,CAAC4B;IAC3B,CAAC,CAAAf,KAAA;;;;;;IAMOgB,QAAQ,gBAAGjC,KAAK,CAACkC,SAAS,CAAQ,CAAC,CAAAjB,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8EpCkB,gBAAgB,GAAG,YAAyB,KAAAC,qBAAA;MACjD,QAAAA,qBAAA,GAAOnB,KAAA,CAAKgB,QAAQ,CAACI,OAAO,qBAArBD,qBAAA,CAAuBE,aAAa;IAC7C,CAAC,CAAArB,KAAA;;;;;;;;;;;;;;;;;;;;IAoBOsB,YAAY,GAAG,YAAgD;MACrE,OAAOtB,KAAA,CAAKuB,KAAK,CAACC,gBAAgB;IACpC,CAAC,CAAAxB,KAAA;;IAEOyB,gBAAgB,GAAG,UAACC,CAAiB,EAAK;MAChD,IAAI,CAAC1B,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACI,MAAM,IAAI,CAACd,KAAA,CAAK2B,KAAK,EAAE;QAC1C3B,KAAA,CAAK2B,KAAK,GAAG3C,YAAY,CAAC4C,UAAU,CAAC5B,KAAA,CAAK6B,IAAI,EAAE,GAAG,CAAC;MACtD;;MAEA,IAAI7B,KAAA,CAAKuB,KAAK,CAACO,YAAY,EAAE;QAC3B9B,KAAA,CAAKuB,KAAK,CAACO,YAAY,CAACJ,CAAC,CAAC;MAC5B;IACF,CAAC,CAAA1B,KAAA;;IAEO+B,gBAAgB,GAAG,UAACL,CAAiB,EAAK;MAChD,IAAI,CAAC1B,KAAA,CAAKU,QAAQ,CAAC,CAAC,CAACI,MAAM,IAAId,KAAA,CAAK2B,KAAK,EAAE;QACzC3C,YAAY,CAACgD,YAAY,CAAChC,KAAA,CAAK2B,KAAK,CAAC;QACrC3B,KAAA,CAAK2B,KAAK,GAAG,IAAI;QACjB3B,KAAA,CAAKiC,QAAQ,CAAC,EAAEpB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;MAClC;;MAEA,IAAIb,KAAA,CAAKuB,KAAK,CAACW,YAAY,EAAE;QAC3BlC,KAAA,CAAKuB,KAAK,CAACW,YAAY,CAACR,CAAC,CAAC;MAC5B;IACF,CAAC,CAAA1B,KAAA;;IAEO6B,IAAI,GAAG,YAAM;MACnB7B,KAAA,CAAKiC,QAAQ,CAAC,EAAEpB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IACjC,CAAC,QAAAb,KAAA,EAAAmC,cAAA,CAAAvC,IAAA,EAAAG,oBAAA,MAAAqC,MAAA,GAAAxC,IAAA,CAAAyC,SAAA,CAAAD,MAAA,CA9HME,mBAAmB,GAA1B,SAAAA,oBAAA,EAA6B,CAC3B,OAAO,IAAI,CAACf,KAAK,CAACC,gBAAgB,CACpC,CAAC,CAAAY,MAAA,CAEMG,kBAAkB,GAAzB,SAAAA,mBAA0BC,SAAoB,EAAE,CAC9C,IAAAC,cAAA,GAA2B,IAAI,CAAC/B,QAAQ,CAAC,CAAC,CAAlCG,MAAM,GAAA4B,cAAA,CAAN5B,MAAM,CAAEC,MAAM,GAAA2B,cAAA,CAAN3B,MAAM,CACtB,IAAI,CAACA,MAAM,EAAE,CACX,OACF,CACA,IAAI,IAAI,CAACa,KAAK,EAAE,CACd3C,YAAY,CAACgD,YAAY,CAAC,IAAI,CAACL,KAAK,CAAC,CACrC,IAAI,CAACA,KAAK,GAAG,IAAI,CACnB,CACA,IAAId,MAAM,KAAK2B,SAAS,CAAC3B,MAAM,EAAE,CAC/B,IAAI,CAACoB,QAAQ,CAAC,EAAEpB,MAAM,EAAE,CAAC,CAACA,MAAM,CAAC,CAAC,CAAC,CACrC,CACF,CAAC,CAAAuB,MAAA,CAEMM,oBAAoB,GAA3B,SAAAA,qBAAA,EAA8B,CAC5B,IAAI,IAAI,CAACf,KAAK,EAAE,CACd3C,YAAY,CAACgD,YAAY,CAAC,IAAI,CAACL,KAAK,CAAC,CACrC,IAAI,CAACA,KAAK,GAAG,IAAI,CACnB,CACF,CAAC,CAAAS,MAAA,CAEMO,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,oBACE7D,KAAA,CAAA8D,aAAA,CAAC5D,YAAY,CAAC6D,QAAQ,QACnB,UAACC,KAAK,EAAK,CACVH,MAAI,CAACG,KAAK,GAAGA,KAAK,CAClB,oBACEhE,KAAA,CAAA8D,aAAA,CAAC5D,YAAY,CAAC+D,QAAQ,IACpBC,KAAK,EAAE/D,YAAY,CAACgE,MAAM,CACxB,EACEC,WAAW,EAAEJ,KAAK,CAACK,UAAU,EAC7BC,WAAW,EAAEN,KAAK,CAACO,UAAU,EAC7BC,iBAAiB,EAAER,KAAK,CAACS,gBAAgB,CAC3C,CAAC,EACDZ,MAAI,CAACG,KACP,CAAE,IAEDH,MAAI,CAACa,UAAU,CAAC,CACI,CAAC,CAE5B,CACqB,CAAC,CAE5B,CAAC,CAAArB,MAAA,CAEMqB,UAAU,GAAjB,SAAAA,WAAA,EAAoB,KAAAC,MAAA,QAClB,IAAAC,eAAA,GAA0C,IAAI,CAACjD,QAAQ,CAAC,CAAC,CAAjDkD,iBAAiB,GAAAD,eAAA,CAAjBC,iBAAiB,CAAEC,UAAU,GAAAF,eAAA,CAAVE,UAAU,CAErC,oBACE9E,KAAA,CAAA8D,aAAA,CAACvD,aAAa,EAAAwE,QAAA,GAACC,WAAW,EAAE,IAAI,CAACC,WAAY,IAAK,IAAI,CAACzC,KAAK,gBAC1DxC,KAAA,CAAA8D,aAAA,CAACzD,KAAK,IACJ6E,MAAM,EAAE,KAAM,EACdpD,MAAM,EAAE,IAAI,CAACD,KAAK,CAACC,MAAO,EAC1BQ,aAAa,EAAE,IAAI,CAACE,KAAK,CAAC2C,QAAS,EACnCC,SAAS,EAAE,IAAI,CAAC7C,YAAY,CAAC,CAAE,EAC/B8C,GAAG,EAAE,IAAI,CAAC7C,KAAK,CAAC6C,GAAI,EACpBC,eAAe,EAAE,IAAI,CAACtB,KAAK,CAACuB,WAAY,EACxCC,WAAW,EAAE5E,iBAAkB,EAC/B6E,gBAAgB,EAAE,SAAAA,iBAACzD,QAAQ,UAAK2C,MAAI,CAACzB,QAAQ,CAAC,EAAElB,QAAQ,EAARA,QAAQ,CAAC,CAAC,CAAC,EAAC,EAC5D6C,iBAAiB,EAAEA,iBAAkB,EACrC9B,YAAY,EAAE,IAAI,CAACL,gBAAiB,EACpCS,YAAY,EAAE,IAAI,CAACH,gBAAiB,EACpC8B,UAAU,EAAEA,UAAW,EACvBY,GAAG,EAAE,IAAI,CAACzD,QAAS,EACnB0D,aAAa,UAEZ,IAAI,CAACC,aAAa,CAAC,CACf,CACM,CAAC,CAEpB,CAAC,CAAAvC,MAAA,CAMOuC,aAAa,GAArB,SAAAA,cAAA,EAAwB,KAAAC,GAAA,CACtB,IAAI,CAAC,IAAI,CAACrD,KAAK,CAACsD,IAAI,EAAE,CACpB,OAAO,IAAI,CACb,CAEA,IAAAC,eAAA,GAAqB,IAAI,CAACpE,QAAQ,CAAC,CAAC,CAA5BqE,QAAQ,GAAAD,eAAA,CAARC,QAAQ,CAChB,IAAMC,oBAAoB,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,eAAe,CAAC,CAC7E,IAAMC,SAAS,GAAG1F,EAAE,EAAAqF,GAAA,OAAAA,GAAA,CACjBlF,MAAM,CAACwF,OAAO,CAAC,IAAI,CAACnC,KAAK,CAAC,IAAG,IAAI,EAAA6B,GAAA,CACjClF,MAAM,CAACyF,aAAa,CAAC,IAAI,CAACpC,KAAK,CAAC,IAAGiC,oBAAoB,CAACI,QAAQ,CAAC,IAAI,CAACxE,KAAK,CAACG,QAAQ,CAAC,EAAA6D,GAAA,CACvF,CAAC,CACF,oBACE7F,KAAA,CAAA8D,aAAA,UAAKoC,SAAS,EAAEA,SAAU,EAACI,KAAK,EAAE,EAAEN,QAAQ,EAARA,QAAQ,CAAC,CAAE,IAC5C,IAAI,CAACxD,KAAK,CAACsD,IACT,CAAC,CAEV,CAAC,QAAAjF,IAAA,GAzHuBb,KAAK,CAACuG,aAAa,GAAAxF,KAAA,CAC7ByF,mBAAmB,GAAG,MAAM,EAAAzF,KAAA,CAC5B0F,WAAW,GAAG,MAAM,EAAA1F,KAAA,CAEpBa,YAAY,GAAiB,EACzCG,MAAM,EAAE,KAAK,EACbD,MAAM,EAAE,KAAK,EACbkE,QAAQ,EAAE,GAAG,EACbnB,iBAAiB,EAAEvE,SAAS,EAC5BwE,UAAU,EAAE,KAAK,CACnB,CAAC,EAAA/D,KAAA,MAAAD,MAAA","ignoreList":[]}
@@ -5,55 +5,30 @@ import { MouseEventType } from '../../typings/event-types';
5
5
  import { CommonProps } from '../../internal/CommonWrapper';
6
6
  import { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';
7
7
  export interface HintProps extends CommonProps {
8
+ /** @ignore */
8
9
  children?: React.ReactNode;
9
- /**
10
- * Переводит отображение подсказки в _"ручной режим"_.
11
- *
12
- * В _"ручном режиме"_ подсказку можно активировать только задав значение пропу `opened`.
13
- */
10
+ /** Переводит отображение подсказки в _"ручной режим"_.
11
+ В _"ручном режиме"_ подсказку можно активировать только задав значение пропу `opened`. */
14
12
  manual?: boolean;
15
- /**
16
- * Задаёт максимальную ширину подсказки.
17
- */
13
+ /** Задает максимальную ширину подсказки. */
18
14
  maxWidth?: React.CSSProperties['maxWidth'];
19
- /**
20
- * HTML-событие `mouseenter`.
21
- */
15
+ /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). */
22
16
  onMouseEnter?: (event: MouseEventType) => void;
23
- /**
24
- * HTML-событие `mouseleave`.
25
- */
17
+ /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */
26
18
  onMouseLeave?: (event: MouseEventType) => void;
27
- /**
28
- * Если `true` - подсказка будет открыта.
29
- *
30
- * _Примечание_: работает только при `manual=true`.
31
- */
19
+ /** Открывает подсказку. Работает только при `manual=true`. */
32
20
  opened?: boolean;
33
- /**
34
- * Расположение подсказки относительно текста.
35
- *
36
- * **Допустимые значения**: `"top"`, `"right"`, `"bottom"`, `"left"`, `"top left"`, `"top center"`, `"top right"`, `"right top"`, `"right middle"`, `"right bottom"`, `"bottom left"`, `"bottom center"`, `"bottom right"`, `"left top"`, `"left middle"`, `"left bottom"`.
37
- */
21
+ /** Задает приоритетное расположение подсказки относительно текста. */
38
22
  pos?: ShortPopupPositionsType | PopupPinnablePositionsType;
39
- /**
40
- * Текст подсказки.
41
- */
23
+ /** Задает текст подсказки. */
42
24
  text: React.ReactNode;
43
- /**
44
- * Список позиций, которые хинт будет занимать. Если положение хинт в определенной позиции будет выходить
45
- * за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`.
46
- */
25
+ /** Задает список позиций, которые будет занимать хинт. Если положение хинта в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция. Обязательно должен включать позицию указанную в `pos`. */
47
26
  allowedPositions?: PopupPinnablePositionsType[];
48
- /**
49
- * Отключает анимацию.
50
- */
27
+ /** Отключает анимацию. */
51
28
  disableAnimations?: boolean;
52
- /**
53
- * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования хинта при двух и более вложенных элементах.
54
- *
55
- * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.
56
- */
29
+ /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.
30
+ * Используется для корректного позиционирования хинта при двух и более вложенных элементах.
31
+ * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */
57
32
  useWrapper?: boolean;
58
33
  }
59
34
  export interface HintState {
@@ -62,7 +37,10 @@ export interface HintState {
62
37
  }
63
38
  type DefaultProps = Required<Pick<HintProps, 'manual' | 'opened' | 'maxWidth' | 'disableAnimations' | 'useWrapper'>>;
64
39
  /**
65
- * Всплывающая подсказка, которая по умолчанию отображается при наведении на элемент. <br/> Можно задать другие условия отображения.
40
+ * Всплывающая подсказка `Hint`.
41
+ * По умолчанию отображается при наведении на элемент, но можно задать другие условия отображения.
42
+ *
43
+ * Для подсказки, всплывающей по клику используйте Tooltip.
66
44
  */
67
45
  export declare class Hint extends React.PureComponent<HintProps, HintState> implements InstanceWithAnchorElement {
68
46
  static __KONTUR_REACT_UI__: string;