@skbkontur/react-ui 0.0.0-a25347e958 → 0.0.0-a2ba583fb2

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 (1264) hide show
  1. package/CHANGELOG.md +199 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +2 -1
  3. package/cjs/components/Autocomplete/Autocomplete.js +1 -0
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Button/Button.d.ts +7 -2
  6. package/cjs/components/Button/Button.js +22 -6
  7. package/cjs/components/Button/Button.js.map +1 -1
  8. package/cjs/components/Button/Button.md +68 -0
  9. package/cjs/components/Button/Button.mixins.d.ts +6 -6
  10. package/cjs/components/Button/Button.mixins.js +54 -53
  11. package/cjs/components/Button/Button.mixins.js.map +1 -1
  12. package/cjs/components/Button/Button.styles.d.ts +2 -1
  13. package/cjs/components/Button/Button.styles.js +200 -161
  14. package/cjs/components/Button/Button.styles.js.map +1 -1
  15. package/cjs/components/Button/ButtonArrow.js +1 -1
  16. package/cjs/components/Button/ButtonArrow.js.map +1 -1
  17. package/cjs/components/Button/ButtonIcon.d.ts +3 -2
  18. package/cjs/components/Button/ButtonIcon.js +2 -4
  19. package/cjs/components/Button/ButtonIcon.js.map +1 -1
  20. package/cjs/components/Button/getInnerLinkTheme.js +1 -0
  21. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  22. package/cjs/components/Calendar/Calendar.js +8 -6
  23. package/cjs/components/Calendar/Calendar.js.map +1 -1
  24. package/cjs/components/Checkbox/Checkbox.d.ts +6 -2
  25. package/cjs/components/Checkbox/Checkbox.js +12 -7
  26. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  27. package/cjs/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  28. package/cjs/components/Clickable/ArrowLeftIcon.js +15 -0
  29. package/cjs/components/Clickable/ArrowLeftIcon.js.map +1 -0
  30. package/cjs/components/Clickable/ArrowRightIcon.d.ts +3 -0
  31. package/cjs/components/Clickable/ArrowRightIcon.js +15 -0
  32. package/cjs/components/Clickable/ArrowRightIcon.js.map +1 -0
  33. package/cjs/components/Clickable/Clickable.d.ts +97 -0
  34. package/cjs/components/Clickable/Clickable.js +249 -0
  35. package/cjs/components/Clickable/Clickable.js.map +1 -0
  36. package/cjs/components/Clickable/Clickable.md +173 -0
  37. package/cjs/components/Clickable/Clickable.styles.d.ts +11 -0
  38. package/cjs/components/Clickable/Clickable.styles.js +31 -0
  39. package/cjs/components/Clickable/Clickable.styles.js.map +1 -0
  40. package/cjs/components/Clickable/ClickableButton.d.ts +5 -0
  41. package/cjs/components/Clickable/ClickableButton.js +43 -0
  42. package/cjs/components/Clickable/ClickableButton.js.map +1 -0
  43. package/cjs/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  44. package/cjs/components/Clickable/ClickableButton.mixins.js +134 -0
  45. package/cjs/components/Clickable/ClickableButton.mixins.js.map +1 -0
  46. package/cjs/components/Clickable/ClickableButton.styles.d.ts +63 -0
  47. package/cjs/components/Clickable/ClickableButton.styles.js +604 -0
  48. package/cjs/components/Clickable/ClickableButton.styles.js.map +1 -0
  49. package/cjs/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  50. package/cjs/components/Clickable/ClickableButtonArrow.js +32 -0
  51. package/cjs/components/Clickable/ClickableButtonArrow.js.map +1 -0
  52. package/cjs/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  53. package/cjs/components/Clickable/ClickableButtonArrow.styles.js +40 -0
  54. package/cjs/components/Clickable/ClickableButtonArrow.styles.js.map +1 -0
  55. package/cjs/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  56. package/cjs/components/Clickable/ClickableButtonCaption.js +57 -0
  57. package/cjs/components/Clickable/ClickableButtonCaption.js.map +1 -0
  58. package/cjs/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  59. package/cjs/components/Clickable/ClickableButtonCaption.styles.js +23 -0
  60. package/cjs/components/Clickable/ClickableButtonCaption.styles.js.map +1 -0
  61. package/cjs/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  62. package/cjs/components/Clickable/ClickableButtonIcon.js +64 -0
  63. package/cjs/components/Clickable/ClickableButtonIcon.js.map +1 -0
  64. package/cjs/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  65. package/cjs/components/Clickable/ClickableButtonIcon.styles.js +108 -0
  66. package/cjs/components/Clickable/ClickableButtonIcon.styles.js.map +1 -0
  67. package/cjs/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  68. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js +19 -0
  69. package/cjs/components/Clickable/ClickableButtonLoadingIcon.js.map +1 -0
  70. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  71. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js +17 -0
  72. package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js.map +1 -0
  73. package/cjs/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  74. package/cjs/components/Clickable/ClickableButtonOutline.js +36 -0
  75. package/cjs/components/Clickable/ClickableButtonOutline.js.map +1 -0
  76. package/cjs/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  77. package/cjs/components/Clickable/ClickableButtonOutline.styles.js +25 -0
  78. package/cjs/components/Clickable/ClickableButtonOutline.styles.js.map +1 -0
  79. package/cjs/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  80. package/cjs/components/Clickable/ClickableButtonWrapper.js +27 -0
  81. package/cjs/components/Clickable/ClickableButtonWrapper.js.map +1 -0
  82. package/cjs/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  83. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js +27 -0
  84. package/cjs/components/Clickable/ClickableButtonWrapper.styles.js.map +1 -0
  85. package/cjs/components/Clickable/ClickableLink.d.ts +5 -0
  86. package/cjs/components/Clickable/ClickableLink.js +28 -0
  87. package/cjs/components/Clickable/ClickableLink.js.map +1 -0
  88. package/cjs/components/Clickable/ClickableLink.styles.d.ts +21 -0
  89. package/cjs/components/Clickable/ClickableLink.styles.js +134 -0
  90. package/cjs/components/Clickable/ClickableLink.styles.js.map +1 -0
  91. package/cjs/components/Clickable/ClickableLinkChild.d.ts +7 -0
  92. package/cjs/components/Clickable/ClickableLinkChild.js +40 -0
  93. package/cjs/components/Clickable/ClickableLinkChild.js.map +1 -0
  94. package/cjs/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  95. package/cjs/components/Clickable/ClickableLinkChild.styles.js +42 -0
  96. package/cjs/components/Clickable/ClickableLinkChild.styles.js.map +1 -0
  97. package/cjs/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  98. package/cjs/components/Clickable/ClickableLinkIcon.js +30 -0
  99. package/cjs/components/Clickable/ClickableLinkIcon.js.map +1 -0
  100. package/cjs/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  101. package/cjs/components/Clickable/ClickableLinkIcon.styles.js +20 -0
  102. package/cjs/components/Clickable/ClickableLinkIcon.styles.js.map +1 -0
  103. package/cjs/components/Clickable/index.d.ts +1 -0
  104. package/cjs/components/Clickable/index.js +1 -0
  105. package/cjs/components/Clickable/index.js.map +1 -0
  106. package/cjs/components/Clickable/utils.d.ts +6 -0
  107. package/cjs/components/Clickable/utils.js +47 -0
  108. package/cjs/components/Clickable/utils.js.map +1 -0
  109. package/cjs/components/ComboBox/ComboBox.d.ts +2 -1
  110. package/cjs/components/ComboBox/ComboBox.js +1 -0
  111. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  112. package/cjs/components/CurrencyInput/CurrencyInput.js +3 -1
  113. package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
  114. package/cjs/components/DateInput/DateFragmentsView.js +2 -1
  115. package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
  116. package/cjs/components/DateInput/DateInput.d.ts +2 -1
  117. package/cjs/components/DateInput/DateInput.js +3 -1
  118. package/cjs/components/DateInput/DateInput.js.map +1 -1
  119. package/cjs/components/DateInput/helpers/SelectionHelpers.js +11 -10
  120. package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
  121. package/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  122. package/cjs/components/DatePicker/DatePicker.js +1 -0
  123. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  124. package/cjs/components/Dropdown/Dropdown.d.ts +3 -2
  125. package/cjs/components/Dropdown/Dropdown.js +1 -0
  126. package/cjs/components/Dropdown/Dropdown.js.map +1 -1
  127. package/cjs/components/Dropdown/getDropdownTheme.js +21 -22
  128. package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
  129. package/cjs/components/FileUploader/FileUploader.d.ts +6 -2
  130. package/cjs/components/FileUploader/FileUploader.js +9 -5
  131. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  132. package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
  133. package/cjs/components/FileUploader/FileUploader.styles.js +10 -2
  134. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  135. package/cjs/components/FxInput/FxInput.js +1 -0
  136. package/cjs/components/FxInput/FxInput.js.map +1 -1
  137. package/cjs/components/FxInput/FxInputRestoreBtn.js +1 -0
  138. package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  139. package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  140. package/cjs/components/GlobalLoader/GlobalLoader.js +11 -16
  141. package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
  142. package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  143. package/cjs/components/GlobalLoader/GlobalLoaderView.js +3 -5
  144. package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  145. package/cjs/components/Group/Group.js +7 -5
  146. package/cjs/components/Group/Group.js.map +1 -1
  147. package/cjs/components/Group/Group.md +24 -0
  148. package/cjs/components/Hint/Hint.js +5 -4
  149. package/cjs/components/Hint/Hint.js.map +1 -1
  150. package/cjs/components/Input/Input.d.ts +28 -7
  151. package/cjs/components/Input/Input.js +48 -23
  152. package/cjs/components/Input/Input.js.map +1 -1
  153. package/cjs/components/Input/Input.typings.d.ts +7 -0
  154. package/cjs/components/Input/Input.typings.js +1 -0
  155. package/cjs/components/Input/Input.typings.js.map +1 -0
  156. package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -1
  157. package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
  158. package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
  159. package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -7
  160. package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  161. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +1 -0
  162. package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  163. package/cjs/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  164. package/cjs/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
  165. package/cjs/components/Input/index.d.ts +1 -0
  166. package/cjs/components/Input/index.js +2 -1
  167. package/cjs/components/Input/index.js.map +1 -1
  168. package/cjs/components/Kebab/Kebab.d.ts +2 -1
  169. package/cjs/components/Kebab/Kebab.js +2 -1
  170. package/cjs/components/Kebab/Kebab.js.map +1 -1
  171. package/cjs/components/Link/Link.js +11 -7
  172. package/cjs/components/Link/Link.js.map +1 -1
  173. package/cjs/components/Link/Link.md +69 -0
  174. package/cjs/components/Link/Link.styles.d.ts +1 -0
  175. package/cjs/components/Link/Link.styles.js +30 -22
  176. package/cjs/components/Link/Link.styles.js.map +1 -1
  177. package/cjs/components/Loader/Loader.js +8 -7
  178. package/cjs/components/Loader/Loader.js.map +1 -1
  179. package/cjs/components/MaskedInput/MaskedInput.d.ts +24 -0
  180. package/cjs/components/MaskedInput/MaskedInput.js +78 -0
  181. package/cjs/components/MaskedInput/MaskedInput.js.map +1 -0
  182. package/cjs/components/MaskedInput/MaskedInput.md +21 -0
  183. package/cjs/components/MaskedInput/index.js.map +1 -0
  184. package/cjs/components/MenuFooter/MenuFooter.d.ts +6 -2
  185. package/cjs/components/MenuFooter/MenuFooter.js +4 -0
  186. package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
  187. package/cjs/components/MenuHeader/MenuHeader.d.ts +6 -2
  188. package/cjs/components/MenuHeader/MenuHeader.js +7 -1
  189. package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
  190. package/cjs/components/MenuItem/MenuItem.d.ts +27 -2
  191. package/cjs/components/MenuItem/MenuItem.js +117 -15
  192. package/cjs/components/MenuItem/MenuItem.js.map +1 -1
  193. package/cjs/components/MenuItem/MenuItem.md +20 -6
  194. package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
  195. package/cjs/components/MiniModal/MiniModal.js +47 -0
  196. package/cjs/components/MiniModal/MiniModal.js.map +1 -0
  197. package/cjs/components/MiniModal/MiniModal.md +233 -0
  198. package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
  199. package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
  200. package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
  201. package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
  202. package/cjs/components/MiniModal/MiniModalBody.js +24 -0
  203. package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
  204. package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
  205. package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
  206. package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
  207. package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
  208. package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
  209. package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
  210. package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
  211. package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
  212. package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
  213. package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  214. package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
  215. package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
  216. package/cjs/components/MiniModal/index.d.ts +5 -0
  217. package/cjs/components/MiniModal/index.js +5 -0
  218. package/cjs/components/MiniModal/index.js.map +1 -0
  219. package/cjs/components/Modal/Modal.d.ts +6 -0
  220. package/cjs/components/Modal/Modal.js +15 -1
  221. package/cjs/components/Modal/Modal.js.map +1 -1
  222. package/cjs/components/Modal/Modal.styles.d.ts +5 -0
  223. package/cjs/components/Modal/Modal.styles.js +56 -39
  224. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  225. package/cjs/components/Modal/ModalClose.js +2 -1
  226. package/cjs/components/Modal/ModalClose.js.map +1 -1
  227. package/cjs/components/Modal/ModalHeader.js +1 -1
  228. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  229. package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
  230. package/cjs/components/Modal/ModalSeparator.js +5 -0
  231. package/cjs/components/Modal/ModalSeparator.js.map +1 -1
  232. package/cjs/components/Modal/getModalTheme.d.ts +2 -2
  233. package/cjs/components/Modal/getModalTheme.js +6 -2
  234. package/cjs/components/Modal/getModalTheme.js.map +1 -1
  235. package/cjs/components/Paging/NavigationHelper.js +2 -1
  236. package/cjs/components/Paging/NavigationHelper.js.map +1 -1
  237. package/cjs/components/Paging/Paging.js +17 -15
  238. package/cjs/components/Paging/Paging.js.map +1 -1
  239. package/cjs/components/Paging/Paging.styles.d.ts +0 -1
  240. package/cjs/components/Paging/Paging.styles.js +5 -10
  241. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  242. package/cjs/components/PasswordInput/PasswordInput.js +4 -2
  243. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  244. package/cjs/components/Radio/Radio.d.ts +6 -2
  245. package/cjs/components/Radio/Radio.js +6 -1
  246. package/cjs/components/Radio/Radio.js.map +1 -1
  247. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
  248. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  249. package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
  250. package/cjs/components/ScrollContainer/ScrollBar.js +15 -45
  251. package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
  252. package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
  253. package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
  254. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +18 -3
  255. package/cjs/components/ScrollContainer/ScrollContainer.js +102 -21
  256. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  257. package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
  258. package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  259. package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
  260. package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
  261. package/cjs/components/Select/Item.d.ts +1 -0
  262. package/cjs/components/Select/Item.js +2 -1
  263. package/cjs/components/Select/Item.js.map +1 -1
  264. package/cjs/components/Select/Select.d.ts +6 -3
  265. package/cjs/components/Select/Select.js +26 -8
  266. package/cjs/components/Select/Select.js.map +1 -1
  267. package/cjs/components/Select/Select.md +12 -0
  268. package/cjs/components/SidePage/SidePage.d.ts +3 -1
  269. package/cjs/components/SidePage/SidePage.js +40 -5
  270. package/cjs/components/SidePage/SidePage.js.map +1 -1
  271. package/cjs/components/SidePage/SidePageCloseButton.js +2 -1
  272. package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
  273. package/cjs/components/SidePage/SidePageHeader.d.ts +1 -0
  274. package/cjs/components/SidePage/SidePageHeader.js +8 -6
  275. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  276. package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
  277. package/cjs/components/SingleToast/SingleToast.js +20 -0
  278. package/cjs/components/SingleToast/SingleToast.js.map +1 -0
  279. package/cjs/components/SingleToast/SingleToast.md +35 -0
  280. package/cjs/components/SingleToast/index.d.ts +1 -0
  281. package/cjs/components/SingleToast/index.js +1 -0
  282. package/cjs/components/SingleToast/index.js.map +1 -0
  283. package/cjs/components/Spinner/Spinner.d.ts +1 -0
  284. package/cjs/components/Spinner/Spinner.js +16 -1
  285. package/cjs/components/Spinner/Spinner.js.map +1 -1
  286. package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
  287. package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
  288. package/cjs/components/Sticky/Sticky.js +8 -9
  289. package/cjs/components/Sticky/Sticky.js.map +1 -1
  290. package/cjs/components/Switcher/Switcher.d.ts +8 -4
  291. package/cjs/components/Switcher/Switcher.js +4 -0
  292. package/cjs/components/Switcher/Switcher.js.map +1 -1
  293. package/cjs/components/Tabs/Indicator.js +3 -1
  294. package/cjs/components/Tabs/Indicator.js.map +1 -1
  295. package/cjs/components/Tabs/Tab.d.ts +16 -32
  296. package/cjs/components/Tabs/Tab.js +8 -25
  297. package/cjs/components/Tabs/Tab.js.map +1 -1
  298. package/cjs/components/Tabs/Tab.md +71 -0
  299. package/cjs/components/Tabs/Tab.styles.js.map +1 -1
  300. package/cjs/components/Tabs/Tabs.d.ts +13 -18
  301. package/cjs/components/Tabs/Tabs.js +5 -9
  302. package/cjs/components/Tabs/Tabs.js.map +1 -1
  303. package/cjs/components/Tabs/Tabs.md +7 -22
  304. package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
  305. package/cjs/components/Tabs/TabsContext.d.ts +3 -2
  306. package/cjs/components/Tabs/TabsContext.js +1 -0
  307. package/cjs/components/Tabs/TabsContext.js.map +1 -1
  308. package/cjs/components/Tabs/helpers.d.ts +5 -5
  309. package/cjs/components/Tabs/helpers.js +3 -2
  310. package/cjs/components/Tabs/helpers.js.map +1 -1
  311. package/cjs/components/Textarea/Textarea.d.ts +7 -2
  312. package/cjs/components/Textarea/Textarea.js +42 -11
  313. package/cjs/components/Textarea/Textarea.js.map +1 -1
  314. package/cjs/components/Textarea/TextareaCounter.d.ts +4 -3
  315. package/cjs/components/Textarea/TextareaCounter.js +3 -1
  316. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  317. package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
  318. package/cjs/components/Textarea/TextareaHelpers.js +7 -2
  319. package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
  320. package/cjs/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  321. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js +20 -0
  322. package/cjs/components/Textarea/TextareaWithSafari17Workaround.js.map +1 -0
  323. package/cjs/components/Toast/Toast.d.ts +10 -3
  324. package/cjs/components/Toast/Toast.js +26 -8
  325. package/cjs/components/Toast/Toast.js.map +1 -1
  326. package/cjs/components/Toast/Toast.md +0 -105
  327. package/cjs/components/Toast/ToastStatic.js +4 -3
  328. package/cjs/components/Toast/ToastStatic.js.map +1 -1
  329. package/cjs/components/Toggle/Toggle.d.ts +6 -2
  330. package/cjs/components/Toggle/Toggle.js +4 -0
  331. package/cjs/components/Toggle/Toggle.js.map +1 -1
  332. package/cjs/components/Token/Token.js +1 -6
  333. package/cjs/components/Token/Token.js.map +1 -1
  334. package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
  335. package/cjs/components/TokenInput/TokenInput.js +42 -9
  336. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  337. package/cjs/components/TokenInput/TokenInput.md +71 -0
  338. package/cjs/components/Tooltip/Tooltip.d.ts +6 -1
  339. package/cjs/components/Tooltip/Tooltip.js +15 -5
  340. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  341. package/cjs/components/Tooltip/Tooltip.md +24 -0
  342. package/cjs/hooks/useDrop.js +3 -2
  343. package/cjs/hooks/useDrop.js.map +1 -1
  344. package/cjs/index.d.ts +6 -0
  345. package/cjs/index.js +6 -0
  346. package/cjs/index.js.map +1 -1
  347. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +2 -1
  348. package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  349. package/cjs/internal/ComponentCombinator.d.ts +7 -8
  350. package/cjs/internal/ComponentCombinator.js +2 -5
  351. package/cjs/internal/ComponentCombinator.js.map +1 -1
  352. package/cjs/internal/ComponentTable.d.ts +7 -19
  353. package/cjs/internal/ComponentTable.js +50 -77
  354. package/cjs/internal/ComponentTable.js.map +1 -1
  355. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +2 -1
  356. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +1 -0
  357. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  358. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +6 -9
  359. package/cjs/internal/CustomComboBox/ComboBoxView.js +16 -34
  360. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  361. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +4 -2
  362. package/cjs/internal/CustomComboBox/CustomComboBox.js +13 -8
  363. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  364. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +6 -2
  365. package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  366. package/cjs/internal/DateSelect/DateSelect.js +20 -16
  367. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  368. package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  369. package/cjs/internal/DropdownContainer/DropdownContainer.js +14 -13
  370. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  371. package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
  372. package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
  373. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -3
  374. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +4 -3
  375. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  376. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  377. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +1 -1
  378. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
  379. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  380. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -1
  381. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  382. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  383. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -1
  384. package/cjs/internal/FocusTrap/FocusTrap.js +8 -6
  385. package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
  386. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +19 -20
  387. package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  388. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  389. package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  390. package/cjs/internal/InputLikeText/InputLikeText.js +17 -16
  391. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  392. package/cjs/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  393. package/cjs/internal/{MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput.js} +11 -8
  394. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  395. package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -0
  396. package/cjs/internal/InternalMaskedInput/index.d.ts +1 -0
  397. package/cjs/internal/InternalMaskedInput/index.js +1 -0
  398. package/cjs/internal/InternalMaskedInput/index.js.map +1 -0
  399. package/cjs/internal/InternalMenu/InternalMenu.js +8 -7
  400. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  401. package/cjs/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  402. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  403. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js +52 -0
  404. package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js.map +1 -0
  405. package/cjs/internal/MaskedInputElement/MaskedInputElement.js +196 -0
  406. package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -0
  407. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +29 -0
  408. package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -0
  409. package/cjs/internal/MaskedInputElement/index.d.ts +1 -0
  410. package/cjs/internal/MaskedInputElement/index.js +1 -0
  411. package/cjs/internal/MaskedInputElement/index.js.map +1 -0
  412. package/cjs/internal/Menu/Menu.d.ts +6 -0
  413. package/cjs/internal/Menu/Menu.js +84 -16
  414. package/cjs/internal/Menu/Menu.js.map +1 -1
  415. package/cjs/internal/Menu/MenuContext.d.ts +10 -0
  416. package/cjs/internal/Menu/MenuContext.js +16 -0
  417. package/cjs/internal/Menu/MenuContext.js.map +1 -0
  418. package/cjs/internal/Menu/MenuNavigation.d.ts +26 -0
  419. package/cjs/internal/Menu/MenuNavigation.js +107 -0
  420. package/cjs/internal/Menu/MenuNavigation.js.map +1 -0
  421. package/cjs/internal/Menu/isActiveElement.js +1 -1
  422. package/cjs/internal/Menu/isActiveElement.js.map +1 -1
  423. package/cjs/internal/MenuMessage/MenuMessage.d.ts +3 -3
  424. package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
  425. package/cjs/internal/Popup/Popup.js +12 -8
  426. package/cjs/internal/Popup/Popup.js.map +1 -1
  427. package/cjs/internal/Popup/PopupHelper.js +9 -7
  428. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  429. package/cjs/internal/PopupMenu/PopupMenu.js +3 -2
  430. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  431. package/cjs/internal/RenderContainer/RenderContainer.d.ts +0 -1
  432. package/cjs/internal/RenderContainer/RenderContainer.js +18 -22
  433. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  434. package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
  435. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  436. package/cjs/internal/RenderLayer/RenderLayer.js +5 -3
  437. package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
  438. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  439. package/cjs/internal/ThemePlayground/SizesGroup.js +1 -0
  440. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
  441. package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
  442. package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
  443. package/cjs/internal/ThemePlayground/constants.js +1 -0
  444. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  445. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  446. package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
  447. package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
  448. package/cjs/internal/ZIndex/ZIndex.js +2 -2
  449. package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
  450. package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
  451. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  452. package/cjs/internal/icons/16px/index.d.ts +19 -19
  453. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  454. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  455. package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  456. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  457. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  458. package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  459. package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  460. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  461. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  462. package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  463. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  464. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  465. package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  466. package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  467. package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  468. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  469. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  470. package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  471. package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
  472. package/cjs/internal/icons2022/BaseIcon.js +3 -7
  473. package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
  474. package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  475. package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
  476. package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
  477. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  478. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  479. package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  480. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  481. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  482. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  483. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  484. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  485. package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  486. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  487. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  488. package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  489. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  490. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  491. package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  492. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  493. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
  494. package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
  495. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  496. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  497. package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  498. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  499. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  500. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  501. package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  502. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  503. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  504. package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  505. package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  506. package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  507. package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  508. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  509. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  510. package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  511. package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  512. package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  513. package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  514. package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  515. package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  516. package/cjs/internal/themes/DefaultTheme.d.ts +67 -2
  517. package/cjs/internal/themes/DefaultTheme.js +134 -7
  518. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  519. package/cjs/internal/themes/Theme2022.d.ts +21 -2
  520. package/cjs/internal/themes/Theme2022.js +44 -5
  521. package/cjs/internal/themes/Theme2022.js.map +1 -1
  522. package/cjs/internal/themes/Theme2022Dark.d.ts +4 -4
  523. package/cjs/internal/themes/Theme2022Dark.js +9 -5
  524. package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
  525. package/cjs/lib/LayoutEvents.js +5 -4
  526. package/cjs/lib/LayoutEvents.js.map +1 -1
  527. package/cjs/lib/ModalStack.js +2 -3
  528. package/cjs/lib/ModalStack.js.map +1 -1
  529. package/cjs/lib/SSRSafe.d.ts +1 -6
  530. package/cjs/lib/SSRSafe.js +4 -48
  531. package/cjs/lib/SSRSafe.js.map +1 -1
  532. package/cjs/lib/Upgrades.d.ts +1 -0
  533. package/cjs/lib/Upgrades.js +3 -1
  534. package/cjs/lib/Upgrades.js.map +1 -1
  535. package/cjs/lib/animation/index.js +6 -4
  536. package/cjs/lib/animation/index.js.map +1 -1
  537. package/cjs/lib/chars.d.ts +1 -1
  538. package/cjs/lib/chars.js +2 -2
  539. package/cjs/lib/chars.js.map +1 -1
  540. package/cjs/lib/client.d.ts +2 -7
  541. package/cjs/lib/client.js +9 -7
  542. package/cjs/lib/client.js.map +1 -1
  543. package/cjs/lib/dom/getScrollWidth.js +4 -4
  544. package/cjs/lib/dom/getScrollWidth.js.map +1 -1
  545. package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
  546. package/cjs/lib/dom/tabbableHelpers.js +8 -2
  547. package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
  548. package/cjs/lib/events/MouseDrag.js +11 -11
  549. package/cjs/lib/events/MouseDrag.js.map +1 -1
  550. package/cjs/lib/events/fixClickFocusIE.js +6 -3
  551. package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
  552. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
  553. package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  554. package/cjs/lib/events/keyListener.js +9 -11
  555. package/cjs/lib/events/keyListener.js.map +1 -1
  556. package/cjs/lib/events/keyboard/identifiers.js +5 -2
  557. package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
  558. package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  559. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  560. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
  561. package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
  562. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  563. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +20 -0
  564. package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  565. package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
  566. package/cjs/lib/featureFlagsContext/index.js +3 -0
  567. package/cjs/lib/featureFlagsContext/index.js.map +1 -0
  568. package/cjs/lib/forwardRefAndName.d.ts +1 -1
  569. package/cjs/lib/forwardRefAndName.js +4 -1
  570. package/cjs/lib/forwardRefAndName.js.map +1 -1
  571. package/cjs/lib/isInstanceOf.d.ts +1 -0
  572. package/cjs/lib/isInstanceOf.js +6 -0
  573. package/cjs/lib/isInstanceOf.js.map +1 -0
  574. package/cjs/lib/listenFocusOutside.js +15 -15
  575. package/cjs/lib/listenFocusOutside.js.map +1 -1
  576. package/cjs/lib/needsPolyfillPlaceholder.js +5 -3
  577. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
  578. package/cjs/lib/net/fetch.js +24 -18
  579. package/cjs/lib/net/fetch.js.map +1 -1
  580. package/cjs/lib/rootNode/getRootNode.js +6 -6
  581. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  582. package/cjs/lib/styles/ColorFactory.js +13 -11
  583. package/cjs/lib/styles/ColorFactory.js.map +1 -1
  584. package/cjs/lib/styles/ColorHelpers.d.ts +1 -1
  585. package/cjs/lib/styles/ColorHelpers.js +3 -7
  586. package/cjs/lib/styles/ColorHelpers.js.map +1 -1
  587. package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
  588. package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
  589. package/cjs/lib/theming/Emotion.js +4 -2
  590. package/cjs/lib/theming/Emotion.js.map +1 -1
  591. package/cjs/lib/types/props.d.ts +1 -0
  592. package/cjs/lib/types/props.js +1 -0
  593. package/cjs/lib/types/props.js.map +1 -0
  594. package/cjs/lib/utils.d.ts +7 -0
  595. package/cjs/lib/utils.js +29 -7
  596. package/cjs/lib/utils.js.map +1 -1
  597. package/cjs/typings/global.d.ts +3 -4
  598. package/cjs/typings/react-ref.d.ts +29 -0
  599. package/cjs/typings/utility-types.d.ts +2 -0
  600. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  601. package/components/Autocomplete/Autocomplete.d.ts +2 -1
  602. package/components/Button/Button/Button.js +20 -3
  603. package/components/Button/Button/Button.js.map +1 -1
  604. package/components/Button/Button.d.ts +7 -2
  605. package/components/Button/Button.md +68 -0
  606. package/components/Button/Button.mixins/Button.mixins.js +58 -13
  607. package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
  608. package/components/Button/Button.mixins.d.ts +6 -6
  609. package/components/Button/Button.styles/Button.styles.js +210 -24
  610. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  611. package/components/Button/Button.styles.d.ts +2 -1
  612. package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
  613. package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
  614. package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
  615. package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
  616. package/components/Button/ButtonIcon.d.ts +3 -2
  617. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +1 -0
  618. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  619. package/components/Calendar/Calendar/Calendar.js +8 -6
  620. package/components/Calendar/Calendar/Calendar.js.map +1 -1
  621. package/components/Checkbox/Checkbox/Checkbox.js +14 -5
  622. package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
  623. package/components/Checkbox/Checkbox.d.ts +6 -2
  624. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js +17 -0
  625. package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js.map +1 -0
  626. package/components/Clickable/ArrowLeftIcon/package.json +6 -0
  627. package/components/Clickable/ArrowLeftIcon.d.ts +3 -0
  628. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js +17 -0
  629. package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js.map +1 -0
  630. package/components/Clickable/ArrowRightIcon/package.json +6 -0
  631. package/components/Clickable/ArrowRightIcon.d.ts +3 -0
  632. package/components/Clickable/Clickable/Clickable.js +165 -0
  633. package/components/Clickable/Clickable/Clickable.js.map +1 -0
  634. package/components/Clickable/Clickable/package.json +6 -0
  635. package/components/Clickable/Clickable.d.ts +97 -0
  636. package/components/Clickable/Clickable.md +173 -0
  637. package/components/Clickable/Clickable.styles/Clickable.styles.js +13 -0
  638. package/components/Clickable/Clickable.styles/Clickable.styles.js.map +1 -0
  639. package/components/Clickable/Clickable.styles/package.json +6 -0
  640. package/components/Clickable/Clickable.styles.d.ts +11 -0
  641. package/components/Clickable/ClickableButton/ClickableButton.js +31 -0
  642. package/components/Clickable/ClickableButton/ClickableButton.js.map +1 -0
  643. package/components/Clickable/ClickableButton/package.json +6 -0
  644. package/components/Clickable/ClickableButton.d.ts +5 -0
  645. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js +81 -0
  646. package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js.map +1 -0
  647. package/components/Clickable/ClickableButton.mixins/package.json +6 -0
  648. package/components/Clickable/ClickableButton.mixins.d.ts +30 -0
  649. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js +313 -0
  650. package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js.map +1 -0
  651. package/components/Clickable/ClickableButton.styles/package.json +6 -0
  652. package/components/Clickable/ClickableButton.styles.d.ts +63 -0
  653. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js +21 -0
  654. package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js.map +1 -0
  655. package/components/Clickable/ClickableButtonArrow/package.json +6 -0
  656. package/components/Clickable/ClickableButtonArrow.d.ts +4 -0
  657. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js +22 -0
  658. package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js.map +1 -0
  659. package/components/Clickable/ClickableButtonArrow.styles/package.json +6 -0
  660. package/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
  661. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js +37 -0
  662. package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js.map +1 -0
  663. package/components/Clickable/ClickableButtonCaption/package.json +6 -0
  664. package/components/Clickable/ClickableButtonCaption.d.ts +2 -0
  665. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js +16 -0
  666. package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js.map +1 -0
  667. package/components/Clickable/ClickableButtonCaption.styles/package.json +6 -0
  668. package/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
  669. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js +51 -0
  670. package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js.map +1 -0
  671. package/components/Clickable/ClickableButtonIcon/package.json +6 -0
  672. package/components/Clickable/ClickableButtonIcon.d.ts +7 -0
  673. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js +58 -0
  674. package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js.map +1 -0
  675. package/components/Clickable/ClickableButtonIcon.styles/package.json +6 -0
  676. package/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
  677. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js +18 -0
  678. package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js.map +1 -0
  679. package/components/Clickable/ClickableButtonLoadingIcon/package.json +6 -0
  680. package/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
  681. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js +10 -0
  682. package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js.map +1 -0
  683. package/components/Clickable/ClickableButtonLoadingIcon.styles/package.json +6 -0
  684. package/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
  685. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js +22 -0
  686. package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js.map +1 -0
  687. package/components/Clickable/ClickableButtonOutline/package.json +6 -0
  688. package/components/Clickable/ClickableButtonOutline.d.ts +4 -0
  689. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js +16 -0
  690. package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js.map +1 -0
  691. package/components/Clickable/ClickableButtonOutline.styles/package.json +6 -0
  692. package/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
  693. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js +18 -0
  694. package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js.map +1 -0
  695. package/components/Clickable/ClickableButtonWrapper/package.json +6 -0
  696. package/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
  697. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js +19 -0
  698. package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js.map +1 -0
  699. package/components/Clickable/ClickableButtonWrapper.styles/package.json +6 -0
  700. package/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
  701. package/components/Clickable/ClickableLink/ClickableLink.js +24 -0
  702. package/components/Clickable/ClickableLink/ClickableLink.js.map +1 -0
  703. package/components/Clickable/ClickableLink/package.json +6 -0
  704. package/components/Clickable/ClickableLink.d.ts +5 -0
  705. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js +52 -0
  706. package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js.map +1 -0
  707. package/components/Clickable/ClickableLink.styles/package.json +6 -0
  708. package/components/Clickable/ClickableLink.styles.d.ts +21 -0
  709. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js +20 -0
  710. package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js.map +1 -0
  711. package/components/Clickable/ClickableLinkChild/package.json +6 -0
  712. package/components/Clickable/ClickableLinkChild.d.ts +7 -0
  713. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js +24 -0
  714. package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js.map +1 -0
  715. package/components/Clickable/ClickableLinkChild.styles/package.json +6 -0
  716. package/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
  717. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js +21 -0
  718. package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js.map +1 -0
  719. package/components/Clickable/ClickableLinkIcon/package.json +6 -0
  720. package/components/Clickable/ClickableLinkIcon.d.ts +7 -0
  721. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js +16 -0
  722. package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js.map +1 -0
  723. package/components/Clickable/ClickableLinkIcon.styles/package.json +6 -0
  724. package/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
  725. package/components/Clickable/index/index.js +1 -0
  726. package/components/Clickable/index/index.js.map +1 -0
  727. package/{internal/MaskedInput → components/Clickable}/index/package.json +1 -1
  728. package/components/Clickable/index.d.ts +1 -0
  729. package/{internal/MaskedInput → components/Clickable}/package.json +1 -1
  730. package/components/Clickable/utils/package.json +6 -0
  731. package/components/Clickable/utils/utils.js +44 -0
  732. package/components/Clickable/utils/utils.js.map +1 -0
  733. package/components/Clickable/utils.d.ts +6 -0
  734. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  735. package/components/ComboBox/ComboBox.d.ts +2 -1
  736. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +3 -1
  737. package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
  738. package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -1
  739. package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
  740. package/components/DateInput/DateInput/DateInput.js +2 -1
  741. package/components/DateInput/DateInput/DateInput.js.map +1 -1
  742. package/components/DateInput/DateInput.d.ts +2 -1
  743. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -10
  744. package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
  745. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  746. package/components/DatePicker/DatePicker.d.ts +2 -1
  747. package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
  748. package/components/Dropdown/Dropdown.d.ts +3 -2
  749. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +21 -22
  750. package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
  751. package/components/FileUploader/FileUploader/FileUploader.js +9 -5
  752. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  753. package/components/FileUploader/FileUploader.d.ts +6 -2
  754. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +2 -2
  755. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  756. package/components/FileUploader/FileUploader.styles.d.ts +1 -1
  757. package/components/FxInput/FxInput/FxInput.js.map +1 -1
  758. package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
  759. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +30 -34
  760. package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
  761. package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
  762. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +2 -3
  763. package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
  764. package/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
  765. package/components/Group/Group/Group.js +9 -10
  766. package/components/Group/Group/Group.js.map +1 -1
  767. package/components/Group/Group.md +24 -0
  768. package/components/Hint/Hint/Hint.js +5 -5
  769. package/components/Hint/Hint/Hint.js.map +1 -1
  770. package/components/Input/Input/Input.js +32 -16
  771. package/components/Input/Input/Input.js.map +1 -1
  772. package/components/Input/Input.d.ts +28 -7
  773. package/components/Input/Input.typings/Input.typings.js +1 -0
  774. package/components/Input/Input.typings/Input.typings.js.map +1 -0
  775. package/components/Input/Input.typings/package.json +6 -0
  776. package/components/Input/Input.typings.d.ts +7 -0
  777. package/components/Input/InputLayout/InputLayout.d.ts +1 -1
  778. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
  779. package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
  780. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +1 -2
  781. package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
  782. package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
  783. package/components/Input/InputLayout/InputLayoutContext/InputLayoutContext.js.map +1 -1
  784. package/components/Input/InputLayout/InputLayoutContext.d.ts +2 -2
  785. package/components/Input/index/index.js +2 -1
  786. package/components/Input/index/index.js.map +1 -1
  787. package/components/Input/index.d.ts +1 -0
  788. package/components/Kebab/Kebab/Kebab.js +2 -1
  789. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  790. package/components/Kebab/Kebab.d.ts +2 -1
  791. package/components/Link/Link/Link.js +5 -4
  792. package/components/Link/Link/Link.js.map +1 -1
  793. package/components/Link/Link.md +69 -0
  794. package/components/Link/Link.styles/Link.styles.js +25 -22
  795. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  796. package/components/Link/Link.styles.d.ts +1 -0
  797. package/components/Loader/Loader/Loader.js +9 -6
  798. package/components/Loader/Loader/Loader.js.map +1 -1
  799. package/components/MaskedInput/MaskedInput/MaskedInput.js +62 -0
  800. package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -0
  801. package/{internal → components}/MaskedInput/MaskedInput/package.json +1 -1
  802. package/components/MaskedInput/MaskedInput.d.ts +24 -0
  803. package/components/MaskedInput/MaskedInput.md +21 -0
  804. package/components/MaskedInput/index/index.js.map +1 -0
  805. package/components/MaskedInput/index/package.json +6 -0
  806. package/components/MaskedInput/package.json +6 -0
  807. package/components/MenuFooter/MenuFooter/MenuFooter.js +4 -0
  808. package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
  809. package/components/MenuFooter/MenuFooter.d.ts +6 -2
  810. package/components/MenuHeader/MenuHeader/MenuHeader.js +7 -1
  811. package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
  812. package/components/MenuHeader/MenuHeader.d.ts +6 -2
  813. package/components/MenuItem/MenuItem/MenuItem.js +133 -19
  814. package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
  815. package/components/MenuItem/MenuItem.d.ts +27 -2
  816. package/components/MenuItem/MenuItem.md +20 -6
  817. package/components/MiniModal/MiniModal/MiniModal.js +38 -0
  818. package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
  819. package/components/MiniModal/MiniModal/package.json +6 -0
  820. package/components/MiniModal/MiniModal.d.ts +18 -0
  821. package/components/MiniModal/MiniModal.md +233 -0
  822. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
  823. package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
  824. package/components/MiniModal/MiniModal.styles/package.json +6 -0
  825. package/components/MiniModal/MiniModal.styles.d.ts +14 -0
  826. package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
  827. package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
  828. package/components/MiniModal/MiniModalBody/package.json +6 -0
  829. package/components/MiniModal/MiniModalBody.d.ts +7 -0
  830. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
  831. package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
  832. package/components/MiniModal/MiniModalFooter/package.json +6 -0
  833. package/components/MiniModal/MiniModalFooter.d.ts +18 -0
  834. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
  835. package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
  836. package/components/MiniModal/MiniModalHeader/package.json +6 -0
  837. package/components/MiniModal/MiniModalHeader.d.ts +17 -0
  838. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
  839. package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
  840. package/components/MiniModal/MiniModalIndent/package.json +6 -0
  841. package/components/MiniModal/MiniModalIndent.d.ts +6 -0
  842. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
  843. package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
  844. package/components/MiniModal/getMiniModalTheme/package.json +6 -0
  845. package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
  846. package/components/MiniModal/index/index.js +5 -0
  847. package/components/MiniModal/index/index.js.map +1 -0
  848. package/components/MiniModal/index/package.json +6 -0
  849. package/components/MiniModal/index.d.ts +5 -0
  850. package/components/MiniModal/package.json +6 -0
  851. package/components/Modal/Modal/Modal.js +18 -14
  852. package/components/Modal/Modal/Modal.js.map +1 -1
  853. package/components/Modal/Modal.d.ts +6 -0
  854. package/components/Modal/Modal.styles/Modal.styles.js +44 -37
  855. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  856. package/components/Modal/Modal.styles.d.ts +5 -0
  857. package/components/Modal/ModalClose/ModalClose.js +2 -1
  858. package/components/Modal/ModalClose/ModalClose.js.map +1 -1
  859. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  860. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  861. package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
  862. package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
  863. package/components/Modal/ModalSeparator.d.ts +5 -0
  864. package/components/Modal/getModalTheme/getModalTheme.js +8 -3
  865. package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
  866. package/components/Modal/getModalTheme.d.ts +2 -2
  867. package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
  868. package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
  869. package/components/Paging/Paging/Paging.js +17 -11
  870. package/components/Paging/Paging/Paging.js.map +1 -1
  871. package/components/Paging/Paging.styles/Paging.styles.js +3 -6
  872. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  873. package/components/Paging/Paging.styles.d.ts +0 -1
  874. package/components/PasswordInput/PasswordInput/PasswordInput.js +4 -2
  875. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  876. package/components/Radio/Radio/Radio.js +6 -1
  877. package/components/Radio/Radio/Radio.js.map +1 -1
  878. package/components/Radio/Radio.d.ts +6 -2
  879. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
  880. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  881. package/components/ScrollContainer/ScrollBar/ScrollBar.js +17 -50
  882. package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
  883. package/components/ScrollContainer/ScrollBar.d.ts +4 -7
  884. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +109 -22
  885. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  886. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
  887. package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
  888. package/components/ScrollContainer/ScrollContainer.d.ts +18 -3
  889. package/components/ScrollContainer/ScrollContainer.md +29 -2
  890. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
  891. package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
  892. package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
  893. package/components/Select/Item/Item.js +3 -1
  894. package/components/Select/Item/Item.js.map +1 -1
  895. package/components/Select/Item.d.ts +1 -0
  896. package/components/Select/Select/Select.js +23 -16
  897. package/components/Select/Select/Select.js.map +1 -1
  898. package/components/Select/Select.d.ts +6 -3
  899. package/components/Select/Select.md +12 -0
  900. package/components/SidePage/SidePage/SidePage.js +38 -13
  901. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  902. package/components/SidePage/SidePage.d.ts +3 -1
  903. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +2 -1
  904. package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
  905. package/components/SidePage/SidePageHeader/SidePageHeader.js +6 -4
  906. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  907. package/components/SidePage/SidePageHeader.d.ts +1 -0
  908. package/components/SingleToast/SingleToast/SingleToast.js +53 -0
  909. package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
  910. package/components/SingleToast/SingleToast/package.json +6 -0
  911. package/components/SingleToast/SingleToast.d.ts +11 -0
  912. package/components/SingleToast/SingleToast.md +35 -0
  913. package/components/SingleToast/index/index.js +1 -0
  914. package/components/SingleToast/index/index.js.map +1 -0
  915. package/components/SingleToast/index/package.json +6 -0
  916. package/components/SingleToast/index.d.ts +1 -0
  917. package/components/SingleToast/package.json +6 -0
  918. package/components/Spinner/Spinner/Spinner.js +10 -4
  919. package/components/Spinner/Spinner/Spinner.js.map +1 -1
  920. package/components/Spinner/Spinner.d.ts +1 -0
  921. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
  922. package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
  923. package/components/Sticky/Sticky/Sticky.js +12 -8
  924. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  925. package/components/Switcher/Switcher/Switcher.js +4 -0
  926. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  927. package/components/Switcher/Switcher.d.ts +8 -4
  928. package/components/Tabs/Indicator/Indicator.js +3 -1
  929. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  930. package/components/Tabs/Tab/Tab.js +7 -14
  931. package/components/Tabs/Tab/Tab.js.map +1 -1
  932. package/components/Tabs/Tab.d.ts +16 -32
  933. package/components/Tabs/Tab.md +71 -0
  934. package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
  935. package/components/Tabs/Tabs/Tabs.js +4 -4
  936. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  937. package/components/Tabs/Tabs.d.ts +13 -18
  938. package/components/Tabs/Tabs.md +7 -22
  939. package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
  940. package/components/Tabs/TabsContext/TabsContext.js.map +1 -1
  941. package/components/Tabs/TabsContext.d.ts +3 -2
  942. package/components/Tabs/helpers/helpers.js +3 -0
  943. package/components/Tabs/helpers/helpers.js.map +1 -1
  944. package/components/Tabs/helpers.d.ts +5 -5
  945. package/components/Textarea/Textarea/Textarea.js +37 -19
  946. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  947. package/components/Textarea/Textarea.d.ts +7 -2
  948. package/components/Textarea/TextareaCounter/TextareaCounter.js +2 -3
  949. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  950. package/components/Textarea/TextareaCounter.d.ts +4 -3
  951. package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
  952. package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
  953. package/components/Textarea/TextareaHelpers.d.ts +1 -1
  954. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js +21 -0
  955. package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js.map +1 -0
  956. package/components/Textarea/TextareaWithSafari17Workaround/package.json +6 -0
  957. package/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
  958. package/components/Toast/Toast/Toast.js +16 -7
  959. package/components/Toast/Toast/Toast.js.map +1 -1
  960. package/components/Toast/Toast.d.ts +10 -3
  961. package/components/Toast/Toast.md +0 -105
  962. package/components/Toast/ToastStatic/ToastStatic.js +4 -4
  963. package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
  964. package/components/Toggle/Toggle/Toggle.js +4 -0
  965. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  966. package/components/Toggle/Toggle.d.ts +6 -2
  967. package/components/Token/Token/Token.js +4 -3
  968. package/components/Token/Token/Token.js.map +1 -1
  969. package/components/TokenInput/TokenInput/TokenInput.js +51 -11
  970. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  971. package/components/TokenInput/TokenInput.d.ts +2 -0
  972. package/components/TokenInput/TokenInput.md +71 -0
  973. package/components/Tooltip/Tooltip/Tooltip.js +10 -7
  974. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  975. package/components/Tooltip/Tooltip.d.ts +6 -1
  976. package/components/Tooltip/Tooltip.md +24 -0
  977. package/hooks/useDrop/useDrop.js +3 -2
  978. package/hooks/useDrop/useDrop.js.map +1 -1
  979. package/index.d.ts +6 -0
  980. package/index.js +6 -0
  981. package/index.js.map +1 -1
  982. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
  983. package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  984. package/internal/ComponentCombinator/ComponentCombinator.js +4 -8
  985. package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
  986. package/internal/ComponentCombinator.d.ts +7 -8
  987. package/internal/ComponentTable/ComponentTable.js +66 -103
  988. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  989. package/internal/ComponentTable.d.ts +7 -19
  990. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  991. package/internal/CustomComboBox/ComboBoxMenu.d.ts +2 -1
  992. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +21 -32
  993. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  994. package/internal/CustomComboBox/ComboBoxView.d.ts +6 -9
  995. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +11 -6
  996. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  997. package/internal/CustomComboBox/CustomComboBox.d.ts +4 -2
  998. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +7 -2
  999. package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
  1000. package/internal/DateSelect/DateSelect/DateSelect.js +20 -20
  1001. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  1002. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +19 -17
  1003. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  1004. package/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
  1005. package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
  1006. package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
  1007. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +3 -2
  1008. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  1009. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -3
  1010. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
  1011. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.d.ts +2 -2
  1012. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  1013. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -2
  1014. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -1
  1015. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -2
  1016. package/internal/FocusTrap/FocusTrap/FocusTrap.js +9 -3
  1017. package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
  1018. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -26
  1019. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  1020. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
  1021. package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
  1022. package/internal/InputLikeText/InputLikeText/InputLikeText.js +29 -19
  1023. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  1024. package/internal/{MaskedInput/MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js} +13 -9
  1025. package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
  1026. package/internal/InternalMaskedInput/InternalMaskedInput/package.json +6 -0
  1027. package/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
  1028. package/{cjs/internal/MaskedInput/MaskedInput.styles.js.map → internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map} +1 -1
  1029. package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +6 -0
  1030. package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +6 -0
  1031. package/internal/InternalMaskedInput/index/index.js +1 -0
  1032. package/internal/InternalMaskedInput/index/index.js.map +1 -0
  1033. package/internal/InternalMaskedInput/index/package.json +6 -0
  1034. package/internal/InternalMaskedInput/index.d.ts +1 -0
  1035. package/internal/InternalMaskedInput/package.json +6 -0
  1036. package/internal/InternalMenu/InternalMenu/InternalMenu.js +10 -9
  1037. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  1038. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +206 -0
  1039. package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -0
  1040. package/internal/MaskedInputElement/MaskedInputElement/package.json +6 -0
  1041. package/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
  1042. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js +43 -0
  1043. package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js.map +1 -0
  1044. package/internal/MaskedInputElement/MaskedInputElement.helpers/package.json +6 -0
  1045. package/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
  1046. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +16 -0
  1047. package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -0
  1048. package/internal/MaskedInputElement/MaskedInputElement.styles/package.json +6 -0
  1049. package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +6 -0
  1050. package/internal/MaskedInputElement/index/index.js +1 -0
  1051. package/internal/MaskedInputElement/index/index.js.map +1 -0
  1052. package/internal/MaskedInputElement/index/package.json +6 -0
  1053. package/internal/MaskedInputElement/index.d.ts +1 -0
  1054. package/internal/MaskedInputElement/package.json +6 -0
  1055. package/internal/Menu/Menu/Menu.js +144 -62
  1056. package/internal/Menu/Menu/Menu.js.map +1 -1
  1057. package/internal/Menu/Menu.d.ts +6 -0
  1058. package/internal/Menu/MenuContext/MenuContext.js +5 -0
  1059. package/internal/Menu/MenuContext/MenuContext.js.map +1 -0
  1060. package/internal/Menu/MenuContext/package.json +6 -0
  1061. package/internal/Menu/MenuContext.d.ts +10 -0
  1062. package/internal/Menu/MenuNavigation/MenuNavigation.js +123 -0
  1063. package/internal/Menu/MenuNavigation/MenuNavigation.js.map +1 -0
  1064. package/internal/Menu/MenuNavigation/package.json +6 -0
  1065. package/internal/Menu/MenuNavigation.d.ts +26 -0
  1066. package/internal/Menu/isActiveElement/isActiveElement.js +1 -1
  1067. package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
  1068. package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
  1069. package/internal/MenuMessage/MenuMessage.d.ts +3 -3
  1070. package/internal/Popup/Popup/Popup.js +12 -13
  1071. package/internal/Popup/Popup/Popup.js.map +1 -1
  1072. package/internal/Popup/PopupHelper/PopupHelper.js +8 -5
  1073. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  1074. package/internal/PopupMenu/PopupMenu/PopupMenu.js +3 -2
  1075. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  1076. package/internal/RenderContainer/RenderContainer/RenderContainer.js +26 -16
  1077. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  1078. package/internal/RenderContainer/RenderContainer.d.ts +0 -1
  1079. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
  1080. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  1081. package/internal/RenderLayer/RenderLayer/RenderLayer.js +11 -5
  1082. package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
  1083. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
  1084. package/internal/ThemePlayground/SizesGroup.d.ts +2 -1
  1085. package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
  1086. package/internal/ThemePlayground/constants/constants.js +3 -0
  1087. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  1088. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
  1089. package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
  1090. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  1091. package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
  1092. package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
  1093. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
  1094. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  1095. package/internal/icons/16px/index.d.ts +19 -19
  1096. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
  1097. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
  1098. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
  1099. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
  1100. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
  1101. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
  1102. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
  1103. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
  1104. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
  1105. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
  1106. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
  1107. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
  1108. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
  1109. package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
  1110. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
  1111. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
  1112. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
  1113. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
  1114. package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
  1115. package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
  1116. package/internal/icons2022/BaseIcon.d.ts +1 -1
  1117. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
  1118. package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
  1119. package/internal/icons2022/BaseIcon.styles/package.json +6 -0
  1120. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  1121. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
  1122. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
  1123. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
  1124. package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
  1125. package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
  1126. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
  1127. package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
  1128. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
  1129. package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
  1130. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
  1131. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
  1132. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
  1133. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
  1134. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
  1135. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
  1136. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
  1137. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
  1138. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
  1139. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
  1140. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
  1141. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
  1142. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
  1143. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
  1144. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
  1145. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
  1146. package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
  1147. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
  1148. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
  1149. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
  1150. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
  1151. package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
  1152. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
  1153. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
  1154. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
  1155. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
  1156. package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
  1157. package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
  1158. package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
  1159. package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
  1160. package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
  1161. package/internal/themes/DefaultTheme/DefaultTheme.js +178 -6
  1162. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  1163. package/internal/themes/DefaultTheme.d.ts +67 -2
  1164. package/internal/themes/Theme2022/Theme2022.js +58 -3
  1165. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  1166. package/internal/themes/Theme2022.d.ts +21 -2
  1167. package/internal/themes/Theme2022Dark/Theme2022Dark.js +13 -4
  1168. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
  1169. package/internal/themes/Theme2022Dark.d.ts +4 -4
  1170. package/lib/LayoutEvents/LayoutEvents.js +5 -4
  1171. package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
  1172. package/lib/ModalStack/ModalStack.js +2 -2
  1173. package/lib/ModalStack/ModalStack.js.map +1 -1
  1174. package/lib/SSRSafe/SSRSafe.js +3 -35
  1175. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  1176. package/lib/SSRSafe.d.ts +1 -6
  1177. package/lib/Upgrades/Upgrades.js +3 -1
  1178. package/lib/Upgrades/Upgrades.js.map +1 -1
  1179. package/lib/Upgrades.d.ts +1 -0
  1180. package/lib/animation/index/index.js +6 -3
  1181. package/lib/animation/index/index.js.map +1 -1
  1182. package/lib/chars/chars.js +1 -1
  1183. package/lib/chars/chars.js.map +1 -1
  1184. package/lib/chars.d.ts +1 -1
  1185. package/lib/client/client.js +9 -7
  1186. package/lib/client/client.js.map +1 -1
  1187. package/lib/client.d.ts +2 -7
  1188. package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
  1189. package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
  1190. package/lib/dom/tabbableHelpers/tabbableHelpers.js +4 -2
  1191. package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
  1192. package/lib/dom/tabbableHelpers.d.ts +2 -1
  1193. package/lib/events/MouseDrag/MouseDrag.js +15 -11
  1194. package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
  1195. package/lib/events/fixClickFocusIE/fixClickFocusIE.js +4 -2
  1196. package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
  1197. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
  1198. package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  1199. package/lib/events/keyListener/keyListener.js +9 -12
  1200. package/lib/events/keyListener/keyListener.js.map +1 -1
  1201. package/lib/events/keyboard/identifiers/identifiers.js +3 -1
  1202. package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
  1203. package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
  1204. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
  1205. package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
  1206. package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
  1207. package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
  1208. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +10 -0
  1209. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
  1210. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
  1211. package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
  1212. package/lib/featureFlagsContext/index/index.js +2 -0
  1213. package/lib/featureFlagsContext/index/index.js.map +1 -0
  1214. package/lib/featureFlagsContext/index/package.json +6 -0
  1215. package/lib/featureFlagsContext/index.d.ts +2 -0
  1216. package/lib/featureFlagsContext/package.json +6 -0
  1217. package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
  1218. package/lib/forwardRefAndName.d.ts +1 -1
  1219. package/lib/isInstanceOf/isInstanceOf.js +3 -0
  1220. package/lib/isInstanceOf/isInstanceOf.js.map +1 -0
  1221. package/lib/isInstanceOf/package.json +6 -0
  1222. package/lib/isInstanceOf.d.ts +1 -0
  1223. package/lib/listenFocusOutside/listenFocusOutside.js +19 -10
  1224. package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
  1225. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -3
  1226. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
  1227. package/lib/net/fetch/fetch.js +29 -21
  1228. package/lib/net/fetch/fetch.js.map +1 -1
  1229. package/lib/rootNode/getRootNode/getRootNode.js +6 -6
  1230. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  1231. package/lib/styles/ColorFactory/ColorFactory.js +13 -9
  1232. package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
  1233. package/lib/styles/ColorHelpers/ColorHelpers.js +3 -7
  1234. package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
  1235. package/lib/styles/ColorHelpers.d.ts +1 -1
  1236. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
  1237. package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
  1238. package/lib/theming/Emotion/Emotion.js +6 -1
  1239. package/lib/theming/Emotion/Emotion.js.map +1 -1
  1240. package/lib/types/props/package.json +6 -0
  1241. package/lib/types/props/props.js +1 -0
  1242. package/lib/types/props/props.js.map +1 -0
  1243. package/lib/types/props.d.ts +1 -0
  1244. package/lib/utils/utils.js +31 -6
  1245. package/lib/utils/utils.js.map +1 -1
  1246. package/lib/utils.d.ts +7 -0
  1247. package/package.json +4 -4
  1248. package/typings/global.d.ts +3 -4
  1249. package/typings/react-ref.d.ts +29 -0
  1250. package/typings/utility-types.d.ts +2 -0
  1251. package/cjs/internal/MaskedInput/MaskedInput.js.map +0 -1
  1252. package/cjs/internal/MaskedInput/index.js.map +0 -1
  1253. package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +0 -1
  1254. package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +0 -1
  1255. package/internal/MaskedInput/MaskedInput.styles/package.json +0 -6
  1256. package/internal/MaskedInput/index/index.js.map +0 -1
  1257. /package/cjs/{internal → components}/MaskedInput/index.d.ts +0 -0
  1258. /package/cjs/{internal → components}/MaskedInput/index.js +0 -0
  1259. /package/cjs/internal/{MaskedInput/MaskedInput.styles.d.ts → InternalMaskedInput/InternalMaskedInput.styles.d.ts} +0 -0
  1260. /package/cjs/internal/{MaskedInput/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles.js} +0 -0
  1261. /package/{internal/MaskedInput/MaskedInput.styles.d.ts → cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts} +0 -0
  1262. /package/{internal → components}/MaskedInput/index/index.js +0 -0
  1263. /package/{internal → components}/MaskedInput/index.d.ts +0 -0
  1264. /package/internal/{MaskedInput/MaskedInput.styles/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js} +0 -0
@@ -1,55 +1,38 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.ComponentTable = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
-
3
- var _utils = require("../lib/utils");
4
- var _createPropsGetter = require("../lib/createPropsGetter");
5
-
6
- // TODO We should output state too
7
- var renderPropsDesc = function renderPropsDesc(props) {
8
- return Object.keys(props).
9
- map(function (key) {
10
- var value = props[key];
11
- switch (typeof value) {
12
- case 'boolean':
13
- return value ? key : key + ": false";
14
- case 'string':
15
- return key + ": \"" + value + "\"";
16
- case 'object':
17
- if ( /*#__PURE__*/_react.default.isValidElement(value)) {
18
- return /*#__PURE__*/_react.default.createElement('span', {}, [key + ": ", value]);
19
- }
20
- return key + ": " + JSON.stringify(value);
21
- default:
22
- return key + ": " + value;}
23
-
24
- }).
25
- map(function (node, index, nodes) {return /*#__PURE__*/(
26
- _react.default.createElement("span", { key: index },
27
- node, " ", index + 1 < nodes.length ? ', ' : null));});
28
-
29
-
30
- };
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.ComponentTable = ComponentTable;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _react = _interopRequireDefault(require("react"));
41
2
 
3
+ var convertData = function convertData(data) {
4
+ return Object.keys(data).map(function (key) {
5
+ var value = data[key];
42
6
 
7
+ if (typeof value === 'boolean') {
8
+ return value ? key : key + ": false";
9
+ }
43
10
 
11
+ if (typeof value === 'object') {
12
+ if ( /*#__PURE__*/_react.default.isValidElement(value)) {
13
+ return /*#__PURE__*/_react.default.createElement('span', {}, [key + ": ", value]);
14
+ }
44
15
 
16
+ return key + ": " + JSON.stringify(value);
17
+ }
45
18
 
19
+ return key + ": \"" + value + "\"";
20
+ });
21
+ };
46
22
 
23
+ var PropsList = function PropsList(_ref) {var rawData = _ref.rawData;
24
+ return /*#__PURE__*/(
25
+ _react.default.createElement(_react.default.Fragment, null,
26
+ convertData(rawData).map(function (node, index, nodes) {
27
+ return /*#__PURE__*/(
28
+ _react.default.createElement("span", { key: index },
29
+ node, " ", index + 1 < nodes.length ? ', ' : null));
47
30
 
48
31
 
32
+ })));
49
33
 
50
- // Known limitation: Don't work when component have `propTypes` static field
51
- var ComponentTable = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(ComponentTable, _React$Component);function ComponentTable() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
52
34
 
35
+ };
53
36
 
54
37
 
55
38
 
@@ -58,56 +41,46 @@ var ComponentTable = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoos
58
41
 
59
42
 
60
43
 
44
+ function ComponentTable(_ref2) {var _ref2$rows = _ref2.rows,rows = _ref2$rows === void 0 ? [] : _ref2$rows,_ref2$cols = _ref2.cols,cols = _ref2$cols === void 0 ? [] : _ref2$cols,children = _ref2.children;
45
+ var childrenProps = children == null ? void 0 : children.props;
61
46
 
47
+ return /*#__PURE__*/(
48
+ _react.default.createElement("table", { style: { borderSpacing: 10, marginBottom: 20 } }, /*#__PURE__*/
62
49
 
63
- getProps = (0, _createPropsGetter.createPropsGetter)(ComponentTable.defaultProps);return _this;}var _proto = ComponentTable.prototype;_proto.
50
+ _react.default.createElement("caption", { style: { captionSide: 'bottom' } }, /*#__PURE__*/
51
+ _react.default.createElement(PropsList, { rawData: childrenProps })), /*#__PURE__*/
64
52
 
65
- render = function render() {
66
- var _this$props = this.props,_this$props$rows = _this$props.rows,rows = _this$props$rows === void 0 ? [] : _this$props$rows,_this$props$cols = _this$props.cols,cols = _this$props$cols === void 0 ? [] : _this$props$cols,Component = _this$props.Component;
67
- var _this$getProps = this.getProps(),presetProps = _this$getProps.presetProps,presetState = _this$getProps.presetState;
68
- return /*#__PURE__*/(
69
- _react.default.createElement("table", { style: { borderSpacing: 10, marginBottom: 20 } }, /*#__PURE__*/
70
- _react.default.createElement("caption", { style: { captionSide: 'bottom' } }, renderPropsDesc(presetProps)), /*#__PURE__*/
71
- _react.default.createElement("thead", null, /*#__PURE__*/
72
- _react.default.createElement("tr", null, /*#__PURE__*/
73
- _react.default.createElement("th", null),
74
- cols.map(function (_ref, i) {var _ref$props = _ref.props,colProps = _ref$props === void 0 ? {} : _ref$props;return /*#__PURE__*/(
75
- _react.default.createElement("th", { style: { whiteSpace: 'nowrap' }, key: i },
76
- renderPropsDesc(colProps)));}))), /*#__PURE__*/
77
53
 
54
+ _react.default.createElement("thead", null, /*#__PURE__*/
55
+ _react.default.createElement("tr", null, /*#__PURE__*/
56
+ _react.default.createElement("th", null, ''),
57
+ cols.map(function (_ref3, i) {var _ref3$props = _ref3.props,colProps = _ref3$props === void 0 ? {} : _ref3$props;return /*#__PURE__*/(
58
+ _react.default.createElement("th", { style: { whiteSpace: 'nowrap' }, key: i }, /*#__PURE__*/
59
+ _react.default.createElement(PropsList, { rawData: colProps })));}))), /*#__PURE__*/
78
60
 
79
61
 
80
62
 
81
- _react.default.createElement("tbody", null,
82
- rows.map(function (_ref2, rowIndex) {var _ref2$props = _ref2.props,rowProps = _ref2$props === void 0 ? {} : _ref2$props,_ref2$state = _ref2.state,rowState = _ref2$state === void 0 ? {} : _ref2$state;return /*#__PURE__*/(
83
- _react.default.createElement("tr", { key: rowIndex }, /*#__PURE__*/
84
- _react.default.createElement("td", { style: { whiteSpace: 'nowrap' } }, renderPropsDesc(rowProps)),
85
- cols.map(function (_ref3, colIndex) {var _ref3$props = _ref3.props,colProps = _ref3$props === void 0 ? {} : _ref3$props,_ref3$state = _ref3.state,colState = _ref3$state === void 0 ? {} : _ref3$state;return /*#__PURE__*/(
86
- _react.default.createElement("td", { key: colIndex }, /*#__PURE__*/
87
63
 
88
- _react.default.createElement(Component, (0, _extends2.default)({},
89
- presetProps,
90
- rowProps,
91
- colProps, {
92
- ref:
93
- // NOTE Call setState from outside is bad practice, but here it needed for test state combinations
94
- (0, _utils.isFunctionalComponent)(Component) ?
95
- undefined :
96
- function (el) {return (
97
- el &&
98
- el.setState(function (state) {return (0, _extends2.default)({},
99
- state,
100
- presetState,
101
- rowState,
102
- colState);}));} }))));})));}))));
103
64
 
65
+ _react.default.createElement("tbody", null,
66
+ rows.map(function (_ref4, rowIndex) {var _ref4$props = _ref4.props,rowProps = _ref4$props === void 0 ? {} : _ref4$props;return /*#__PURE__*/(
67
+ _react.default.createElement("tr", { key: rowIndex }, /*#__PURE__*/
68
+ _react.default.createElement("td", { style: { whiteSpace: 'nowrap' } }, /*#__PURE__*/
69
+ _react.default.createElement(PropsList, { rawData: rowProps })),
104
70
 
71
+ cols.map(function (_ref5, colIndex) {var _ref5$props = _ref5.props,colProps = _ref5$props === void 0 ? {} : _ref5$props;
72
+ return /*#__PURE__*/(
73
+ _react.default.createElement("td", { key: colIndex }, /*#__PURE__*/
74
+ _react.default.cloneElement(children, (0, _extends2.default)({},
75
+ rowProps,
76
+ colProps))));
105
77
 
106
78
 
107
79
 
80
+ })));}))));
108
81
 
109
82
 
110
83
 
111
84
 
112
85
 
113
- };return ComponentTable;}(_react.default.Component);exports.ComponentTable = ComponentTable;ComponentTable.defaultProps = { presetProps: {}, presetState: {} };
86
+ }
@@ -1 +1 @@
1
- {"version":3,"sources":["ComponentTable.tsx"],"names":["renderPropsDesc","props","Object","keys","map","key","value","React","isValidElement","createElement","JSON","stringify","node","index","nodes","length","ComponentTable","getProps","defaultProps","render","rows","cols","Component","presetProps","presetState","borderSpacing","marginBottom","captionSide","i","colProps","whiteSpace","rowIndex","rowProps","state","rowState","colIndex","colState","undefined","el","setState"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isFunctionalComponent, DefaultizeProps } from '../lib/utils';\nimport { createPropsGetter } from '../lib/createPropsGetter';\n\n// TODO We should output state too\nconst renderPropsDesc = <P extends Record<string, any>>(props: P): React.ReactNode => {\n return Object.keys(props)\n .map((key) => {\n const value = props[key];\n switch (typeof value) {\n case 'boolean':\n return value ? key : `${key}: false`;\n case 'string':\n return `${key}: \"${value}\"`;\n case 'object':\n if (React.isValidElement(value)) {\n return React.createElement('span', {}, [`${key}: `, value]);\n }\n return `${key}: ${JSON.stringify(value)}`;\n default:\n return `${key}: ${value}`;\n }\n })\n .map((node, index, nodes) => (\n <span key={index}>\n {node} {index + 1 < nodes.length ? ', ' : null}\n </span>\n ));\n};\n\ninterface StatePropsObject<P, S> {\n props?: Partial<P>;\n state?: Partial<S>;\n}\nexport type StatePropsCombinations<P, S> = Array<StatePropsObject<P, S>>;\n\nexport type StateType<C> = C extends React.Component<any, infer S> | React.ComponentClass<any, infer S> ? S : never;\n\nexport interface ComponentTableProps<C, P, S> {\n rows?: StatePropsCombinations<P, S>;\n cols?: StatePropsCombinations<P, S>;\n presetProps?: DefaultizeProps<C, P>;\n presetState?: Partial<S>;\n Component: C;\n}\n\ntype DefaultProps<C, P, S> = Required<Pick<ComponentTableProps<C, P, S>, 'presetProps' | 'presetState'>>;\n\n// Known limitation: Don't work when component have `propTypes` static field\nexport class ComponentTable<\n T extends React.Component<any, any, any>,\n C extends React.ComponentType<any>,\n P extends React.ComponentProps<C>,\n> extends React.Component<\n ComponentTableProps<C extends React.ComponentClass<P, any> ? React.ClassType<P, T, C> : C, P, StateType<C>>\n> {\n public static defaultProps: DefaultProps<unknown, Record<string | number | symbol, unknown>, unknown> = {\n presetProps: {},\n presetState: {},\n };\n\n private getProps = createPropsGetter(ComponentTable.defaultProps);\n\n public render() {\n const { rows = [], cols = [], Component } = this.props;\n const { presetProps, presetState } = this.getProps();\n return (\n <table style={{ borderSpacing: 10, marginBottom: 20 }}>\n <caption style={{ captionSide: 'bottom' }}>{renderPropsDesc(presetProps)}</caption>\n <thead>\n <tr>\n <th />\n {cols.map(({ props: colProps = {} }, i) => (\n <th style={{ whiteSpace: 'nowrap' }} key={i}>\n {renderPropsDesc(colProps)}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {rows.map(({ props: rowProps = {}, state: rowState = {} }, rowIndex) => (\n <tr key={rowIndex}>\n <td style={{ whiteSpace: 'nowrap' }}>{renderPropsDesc(rowProps)}</td>\n {cols.map(({ props: colProps = {}, state: colState = {} }, colIndex) => (\n <td key={colIndex}>\n {/* @ts-expect-error: Defaultized props incompatible with JSX.LibraryManagedAttributes so just ignore it */}\n <Component\n {...presetProps}\n {...rowProps}\n {...colProps}\n ref={\n // NOTE Call setState from outside is bad practice, but here it needed for test state combinations\n isFunctionalComponent(Component)\n ? undefined\n : (el: React.Component<P, StateType<C>>) =>\n el &&\n el.setState((state: StateType<C>) => ({\n ...state,\n ...presetState,\n ...rowState,\n ...colState,\n }))\n }\n />\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["ComponentTable.tsx"],"names":["convertData","data","Object","keys","map","key","value","React","isValidElement","createElement","JSON","stringify","PropsList","rawData","node","index","nodes","length","ComponentTable","rows","cols","children","childrenProps","props","borderSpacing","marginBottom","captionSide","i","colProps","whiteSpace","rowIndex","rowProps","colIndex","cloneElement"],"mappings":"sPAAA;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,IAAD,EAAmC;AACrD,SAAOC,MAAM,CAACC,IAAP,CAAYF,IAAZ,EAAkBG,GAAlB,CAAsB,UAACC,GAAD,EAAS;AACpC,QAAMC,KAAK,GAAGL,IAAI,CAACI,GAAD,CAAlB;;AAEA,QAAI,OAAOC,KAAP,KAAiB,SAArB,EAAgC;AAC9B,aAAOA,KAAK,GAAGD,GAAH,GAAYA,GAAZ,YAAZ;AACD;;AAED,QAAI,OAAOC,KAAP,KAAiB,QAArB,EAA+B;AAC7B,wBAAIC,eAAMC,cAAN,CAAqBF,KAArB,CAAJ,EAAiC;AAC/B,4BAAOC,eAAME,aAAN,CAAoB,MAApB,EAA4B,EAA5B,EAAgC,CAAIJ,GAAJ,SAAaC,KAAb,CAAhC,CAAP;AACD;;AAED,aAAUD,GAAV,UAAkBK,IAAI,CAACC,SAAL,CAAeL,KAAf,CAAlB;AACD;;AAED,WAAUD,GAAV,YAAmBC,KAAnB;AACD,GAhBM,CAAP;AAiBD,CAlBD;;AAoBA,IAAMM,SAAS,GAAG,SAAZA,SAAY,OAAuD,KAApDC,OAAoD,QAApDA,OAAoD;AACvE;AACE;AACGb,IAAAA,WAAW,CAACa,OAAD,CAAX,CAAqBT,GAArB,CAAyB,UAACU,IAAD,EAAOC,KAAP,EAAcC,KAAd,EAAwB;AAChD;AACE,+CAAM,GAAG,EAAED,KAAX;AACGD,QAAAA,IADH,OACUC,KAAK,GAAG,CAAR,GAAYC,KAAK,CAACC,MAAlB,GAA2B,IAA3B,GAAkC,IAD5C,CADF;;;AAKD,KANA,CADH,CADF;;;AAWD,CAZD;;;;;;;;;AAqBO,SAASC,cAAT,QAAuF,wBAA1DC,IAA0D,CAA1DA,IAA0D,2BAAnD,EAAmD,iCAA/CC,IAA+C,CAA/CA,IAA+C,2BAAxC,EAAwC,cAApCC,QAAoC,SAApCA,QAAoC;AAC5F,MAAMC,aAAa,GAAGD,QAAH,oBAAGA,QAAQ,CAAEE,KAAhC;;AAEA;AACE,4CAAO,KAAK,EAAE,EAAEC,aAAa,EAAE,EAAjB,EAAqBC,YAAY,EAAE,EAAnC,EAAd;;AAEE,8CAAS,KAAK,EAAE,EAAEC,WAAW,EAAE,QAAf,EAAhB;AACE,iCAAC,SAAD,IAAW,OAAO,EAAEJ,aAApB,GADF,CAFF;;;AAME;AACE;AACE,6CAAK,EAAL,CADF;AAEGF,IAAAA,IAAI,CAAChB,GAAL,CAAS,iBAA2BuB,CAA3B,2BAAGJ,KAAH,CAAUK,QAAV,4BAAqB,EAArB;AACR,6CAAI,KAAK,EAAE,EAAEC,UAAU,EAAE,QAAd,EAAX,EAAqC,GAAG,EAAEF,CAA1C;AACE,qCAAC,SAAD,IAAW,OAAO,EAAEC,QAApB,GADF,CADQ,GAAT,CAFH,CADF,CANF;;;;;;AAiBE;AACGT,IAAAA,IAAI,CAACf,GAAL,CAAS,iBAA2B0B,QAA3B,2BAAGP,KAAH,CAAUQ,QAAV,4BAAqB,EAArB;AACR,6CAAI,GAAG,EAAED,QAAT;AACE,6CAAI,KAAK,EAAE,EAAED,UAAU,EAAE,QAAd,EAAX;AACE,qCAAC,SAAD,IAAW,OAAO,EAAEE,QAApB,GADF,CADF;;AAIGX,QAAAA,IAAI,CAAChB,GAAL,CAAS,iBAA2B4B,QAA3B,EAAwC,yBAArCT,KAAqC,CAA9BK,QAA8B,4BAAnB,EAAmB;AAChD;AACE,iDAAI,GAAG,EAAEI,QAAT;AACGzB,2BAAM0B,YAAN,CAAmBZ,QAAnB;AACIU,YAAAA,QADJ;AAEIH,YAAAA,QAFJ,EADH,CADF;;;;AAQD,SATA,CAJH,CADQ,GAAT,CADH,CAjBF,CADF;;;;;;AAuCD","sourcesContent":["import React from 'react';\n\nconst convertData = (data: Record<string, unknown>) => {\n return Object.keys(data).map((key) => {\n const value = data[key];\n\n if (typeof value === 'boolean') {\n return value ? key : `${key}: false`;\n }\n\n if (typeof value === 'object') {\n if (React.isValidElement(value)) {\n return React.createElement('span', {}, [`${key}: `, value]);\n }\n\n return `${key}: ${JSON.stringify(value)}`;\n }\n\n return `${key}: \"${value}\"`;\n });\n};\n\nconst PropsList = ({ rawData }: { rawData: Record<string, unknown> }) => {\n return (\n <>\n {convertData(rawData).map((node, index, nodes) => {\n return (\n <span key={index}>\n {node} {index + 1 < nodes.length ? ', ' : null}\n </span>\n );\n })}\n </>\n );\n};\n\nexport type Props<P> = Array<{ props?: Partial<P> }>;\nexport interface ComponentTableProps<P> {\n rows?: Props<P>;\n cols?: Props<P>;\n children: React.ReactElement;\n}\n\nexport function ComponentTable<P>({ rows = [], cols = [], children }: ComponentTableProps<P>) {\n const childrenProps = children?.props;\n\n return (\n <table style={{ borderSpacing: 10, marginBottom: 20 }}>\n {/* Caption under the table */}\n <caption style={{ captionSide: 'bottom' }}>\n <PropsList rawData={childrenProps} />\n </caption>\n {/* Props list at the top */}\n <thead>\n <tr>\n <th>{''}</th>\n {cols.map(({ props: colProps = {} }, i) => (\n <th style={{ whiteSpace: 'nowrap' }} key={i}>\n <PropsList rawData={colProps} />\n </th>\n ))}\n </tr>\n </thead>\n {/* Props list on the left and component states */}\n <tbody>\n {rows.map(({ props: rowProps = {} }, rowIndex) => (\n <tr key={rowIndex}>\n <td style={{ whiteSpace: 'nowrap' }}>\n <PropsList rawData={rowProps} />\n </td>\n {cols.map(({ props: colProps = {} }, colIndex) => {\n return (\n <td key={colIndex}>\n {React.cloneElement(children, {\n ...rowProps,\n ...colProps,\n })}\n </td>\n );\n })}\n </tr>\n ))}\n </tbody>\n </table>\n );\n}\n"]}
@@ -3,6 +3,7 @@ import { Menu } from '../Menu';
3
3
  import { MenuItemState } from '../../components/MenuItem';
4
4
  import { Nullable } from '../../typings/utility-types';
5
5
  import { ComboBoxExtendedItem } from '../../components/ComboBox';
6
+ import { SizeProp } from '../../lib/types/props';
6
7
  import { ComboBoxRequestStatus } from './CustomComboBoxTypes';
7
8
  export interface ComboBoxMenuProps<T> {
8
9
  opened?: boolean;
@@ -22,7 +23,7 @@ export interface ComboBoxMenuProps<T> {
22
23
  requestStatus?: ComboBoxRequestStatus;
23
24
  isMobile?: boolean;
24
25
  menuId?: string;
25
- size?: 'small' | 'medium' | 'large';
26
+ size?: SizeProp;
26
27
  }
27
28
  export declare const ComboBoxMenuDataTids: {
28
29
  readonly loading: "ComboBoxMenu__loading";
@@ -14,6 +14,7 @@ var _MenuMessage = require("../MenuMessage");
14
14
  var _ThemeContext = require("../../lib/theming/ThemeContext");
15
15
  var _MenuFooter = require("../../components/MenuFooter");
16
16
 
17
+
17
18
  var _CustomComboBoxTypes = require("./CustomComboBoxTypes");
18
19
  var _locale = require("./locale");var _dec, _class, _class2, _temp;
19
20
 
@@ -1 +1 @@
1
- {"version":3,"sources":["ComboBoxMenu.tsx"],"names":["ComboBoxMenuDataTids","loading","failed","notFound","items","item","ComboBoxMenu","CustomComboBoxLocaleHelper","getProps","defaultProps","renderItem","index","props","onValueChange","itemWrapper","isSimpleItem","element","Object","assign","key","onClick","React","cloneElement","size","isMobile","state","render","theme","renderMain","opened","totalCount","refMenu","renderNotFound","renderTotalCount","maxMenuHeight","requestStatus","locale","errorNetworkButton","errorNetworkMessage","renderAddButton","maxHeight","length","menuId","ComboBoxRequestStatus","Failed","maxWidth","whiteSpace","repeatRequest","notFoundValue","total","renderedItems","map","menuItems","filter","countItems","Component","__KONTUR_REACT_UI__","undefined","Unknown","isValidElement"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isFunction, isNullable } from '../../lib/utils';\nimport { locale } from '../../lib/locale/decorators';\nimport { Menu } from '../Menu';\nimport { isMenuItem, MenuItem, MenuItemState } from '../../components/MenuItem';\nimport { Spinner } from '../../components/Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { MenuMessage } from '../MenuMessage';\nimport { ComboBoxExtendedItem } from '../../components/ComboBox';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { MenuFooter } from '../../components/MenuFooter';\n\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { ComboBoxLocale, CustomComboBoxLocaleHelper } from './locale';\n\nexport interface ComboBoxMenuProps<T> {\n opened?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n totalCount?: number;\n loading?: boolean;\n maxMenuHeight?: number | string;\n refMenu?: (menu: Nullable<Menu>) => void;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderItem: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType<unknown>;\n onValueChange: (value: T) => any;\n renderAddButton?: () => React.ReactNode;\n caption?: React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n isMobile?: boolean;\n menuId?: string;\n size?: 'small' | 'medium' | 'large';\n}\n\nexport const ComboBoxMenuDataTids = {\n loading: 'ComboBoxMenu__loading',\n failed: 'ComboBoxMenu__failed',\n notFound: 'ComboBoxMenu__notFound',\n items: 'ComboBoxMenu__items',\n item: 'ComboBoxMenu__item',\n} as const;\n\ntype DefaultProps<T> = Required<Pick<ComboBoxMenuProps<T>, 'repeatRequest' | 'requestStatus'>>;\n\n@locale('ComboBox', CustomComboBoxLocaleHelper)\nexport class ComboBoxMenu<T> extends React.Component<ComboBoxMenuProps<T>> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxMenu';\n\n public static defaultProps: DefaultProps<unknown> = {\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n };\n\n private getProps = createPropsGetter(ComboBoxMenu.defaultProps);\n\n private readonly locale!: ComboBoxLocale;\n\n private theme!: Theme;\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const {\n opened,\n items,\n totalCount,\n loading,\n refMenu,\n renderNotFound = () => notFound,\n renderTotalCount,\n maxMenuHeight,\n isMobile,\n } = this.props;\n\n const requestStatus = this.getProps().requestStatus;\n\n const { notFound, errorNetworkButton, errorNetworkMessage } = this.locale;\n\n if (!opened) {\n return null;\n }\n\n let renderAddButton = null;\n if (this.props.renderAddButton) {\n renderAddButton = this.props.renderAddButton();\n }\n\n const maxHeight = isMobile ? 'auto' : maxMenuHeight;\n\n if (loading && (!items || !items.length)) {\n return (\n <Menu\n maxHeight={maxHeight}\n ref={refMenu}\n disableScrollContainer={isMobile}\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.loading}\n >\n <MenuMessage size={this.props.size} as=\"div\">\n <Spinner type=\"mini\" dimmed />\n </MenuMessage>\n </Menu>\n );\n }\n\n if (items === null && requestStatus === ComboBoxRequestStatus.Failed) {\n return (\n <Menu\n ref={refMenu}\n maxHeight={maxHeight}\n disableScrollContainer={isMobile}\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.failed}\n >\n <MenuMessage size={this.props.size} key=\"message\">\n <div style={{ maxWidth: 300, whiteSpace: 'normal' }}>{errorNetworkMessage}</div>\n </MenuMessage>\n <MenuItem link onClick={this.getProps().repeatRequest} size={this.props.size} key=\"retry\" isMobile={isMobile}>\n {errorNetworkButton}\n </MenuItem>\n </Menu>\n );\n }\n\n if ((isNullable(items) || items.length === 0) && renderNotFound) {\n const notFoundValue = renderNotFound();\n if (renderAddButton) {\n return (\n <Menu id={this.props.menuId} maxHeight={maxHeight} ref={refMenu} disableScrollContainer={isMobile}>\n {renderAddButton}\n </Menu>\n );\n }\n\n if (notFoundValue) {\n return (\n <Menu id={this.props.menuId} maxHeight={maxHeight} ref={refMenu} disableScrollContainer={isMobile}>\n <MenuMessage size={this.props.size} data-tid={ComboBoxMenuDataTids.notFound}>\n {notFoundValue}\n </MenuMessage>\n </Menu>\n );\n }\n\n return null;\n }\n\n let total = null;\n const renderedItems = items && items.map(this.renderItem);\n const menuItems = renderedItems?.filter((item) => {\n return isMenuItem(item);\n });\n const countItems = menuItems?.length;\n if (countItems && renderTotalCount && totalCount && countItems < totalCount) {\n total = (\n <MenuFooter size={this.props.size} key=\"total\">\n <div>{renderTotalCount(countItems, totalCount)}</div>\n </MenuFooter>\n );\n }\n\n return (\n <Menu\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.items}\n ref={refMenu}\n maxHeight={maxHeight}\n disableScrollContainer={isMobile}\n >\n {renderedItems}\n {total}\n {renderAddButton && [<MenuSeparator key=\"separator\" />, renderAddButton]}\n </Menu>\n );\n }\n\n private renderItem = (item: ComboBoxExtendedItem<T>, index: number): React.ReactNode => {\n // NOTE this is undesireable feature, better\n // to remove it from further versions\n const { renderItem, onValueChange, itemWrapper } = this.props;\n\n if (!isSimpleItem<T>(item)) {\n const element = isFunction(item) ? item() : item;\n const props = Object.assign(\n {\n key: index,\n onClick: () => onValueChange(element.props),\n },\n element.props,\n );\n return React.cloneElement(element, props);\n }\n\n return (\n <MenuItem\n component={itemWrapper?.(item)}\n data-tid={ComboBoxMenuDataTids.item}\n onClick={() => onValueChange(item)}\n key={index}\n size={this.props.size}\n isMobile={this.props.isMobile}\n >\n {(state) => renderItem(item, state)}\n </MenuItem>\n );\n };\n}\n\nfunction isSimpleItem<T>(item: ComboBoxExtendedItem<T>): item is T {\n return !isFunction(item) && !React.isValidElement(item);\n}\n"]}
1
+ {"version":3,"sources":["ComboBoxMenu.tsx"],"names":["ComboBoxMenuDataTids","loading","failed","notFound","items","item","ComboBoxMenu","CustomComboBoxLocaleHelper","getProps","defaultProps","renderItem","index","props","onValueChange","itemWrapper","isSimpleItem","element","Object","assign","key","onClick","React","cloneElement","size","isMobile","state","render","theme","renderMain","opened","totalCount","refMenu","renderNotFound","renderTotalCount","maxMenuHeight","requestStatus","locale","errorNetworkButton","errorNetworkMessage","renderAddButton","maxHeight","length","menuId","ComboBoxRequestStatus","Failed","maxWidth","whiteSpace","repeatRequest","notFoundValue","total","renderedItems","map","menuItems","filter","countItems","Component","__KONTUR_REACT_UI__","undefined","Unknown","isValidElement"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isFunction, isNullable } from '../../lib/utils';\nimport { locale } from '../../lib/locale/decorators';\nimport { Menu } from '../Menu';\nimport { isMenuItem, MenuItem, MenuItemState } from '../../components/MenuItem';\nimport { Spinner } from '../../components/Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { MenuMessage } from '../MenuMessage';\nimport { ComboBoxExtendedItem } from '../../components/ComboBox';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { MenuFooter } from '../../components/MenuFooter';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { ComboBoxLocale, CustomComboBoxLocaleHelper } from './locale';\n\nexport interface ComboBoxMenuProps<T> {\n opened?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n totalCount?: number;\n loading?: boolean;\n maxMenuHeight?: number | string;\n refMenu?: (menu: Nullable<Menu>) => void;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderItem: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType<unknown>;\n onValueChange: (value: T) => any;\n renderAddButton?: () => React.ReactNode;\n caption?: React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n isMobile?: boolean;\n menuId?: string;\n size?: SizeProp;\n}\n\nexport const ComboBoxMenuDataTids = {\n loading: 'ComboBoxMenu__loading',\n failed: 'ComboBoxMenu__failed',\n notFound: 'ComboBoxMenu__notFound',\n items: 'ComboBoxMenu__items',\n item: 'ComboBoxMenu__item',\n} as const;\n\ntype DefaultProps<T> = Required<Pick<ComboBoxMenuProps<T>, 'repeatRequest' | 'requestStatus'>>;\n\n@locale('ComboBox', CustomComboBoxLocaleHelper)\nexport class ComboBoxMenu<T> extends React.Component<ComboBoxMenuProps<T>> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxMenu';\n\n public static defaultProps: DefaultProps<unknown> = {\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n };\n\n private getProps = createPropsGetter(ComboBoxMenu.defaultProps);\n\n private readonly locale!: ComboBoxLocale;\n\n private theme!: Theme;\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const {\n opened,\n items,\n totalCount,\n loading,\n refMenu,\n renderNotFound = () => notFound,\n renderTotalCount,\n maxMenuHeight,\n isMobile,\n } = this.props;\n\n const requestStatus = this.getProps().requestStatus;\n\n const { notFound, errorNetworkButton, errorNetworkMessage } = this.locale;\n\n if (!opened) {\n return null;\n }\n\n let renderAddButton = null;\n if (this.props.renderAddButton) {\n renderAddButton = this.props.renderAddButton();\n }\n\n const maxHeight = isMobile ? 'auto' : maxMenuHeight;\n\n if (loading && (!items || !items.length)) {\n return (\n <Menu\n maxHeight={maxHeight}\n ref={refMenu}\n disableScrollContainer={isMobile}\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.loading}\n >\n <MenuMessage size={this.props.size} as=\"div\">\n <Spinner type=\"mini\" dimmed />\n </MenuMessage>\n </Menu>\n );\n }\n\n if (items === null && requestStatus === ComboBoxRequestStatus.Failed) {\n return (\n <Menu\n ref={refMenu}\n maxHeight={maxHeight}\n disableScrollContainer={isMobile}\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.failed}\n >\n <MenuMessage size={this.props.size} key=\"message\">\n <div style={{ maxWidth: 300, whiteSpace: 'normal' }}>{errorNetworkMessage}</div>\n </MenuMessage>\n <MenuItem link onClick={this.getProps().repeatRequest} size={this.props.size} key=\"retry\" isMobile={isMobile}>\n {errorNetworkButton}\n </MenuItem>\n </Menu>\n );\n }\n\n if ((isNullable(items) || items.length === 0) && renderNotFound) {\n const notFoundValue = renderNotFound();\n if (renderAddButton) {\n return (\n <Menu id={this.props.menuId} maxHeight={maxHeight} ref={refMenu} disableScrollContainer={isMobile}>\n {renderAddButton}\n </Menu>\n );\n }\n\n if (notFoundValue) {\n return (\n <Menu id={this.props.menuId} maxHeight={maxHeight} ref={refMenu} disableScrollContainer={isMobile}>\n <MenuMessage size={this.props.size} data-tid={ComboBoxMenuDataTids.notFound}>\n {notFoundValue}\n </MenuMessage>\n </Menu>\n );\n }\n\n return null;\n }\n\n let total = null;\n const renderedItems = items && items.map(this.renderItem);\n const menuItems = renderedItems?.filter((item) => {\n return isMenuItem(item);\n });\n const countItems = menuItems?.length;\n if (countItems && renderTotalCount && totalCount && countItems < totalCount) {\n total = (\n <MenuFooter size={this.props.size} key=\"total\">\n <div>{renderTotalCount(countItems, totalCount)}</div>\n </MenuFooter>\n );\n }\n\n return (\n <Menu\n id={this.props.menuId}\n data-tid={ComboBoxMenuDataTids.items}\n ref={refMenu}\n maxHeight={maxHeight}\n disableScrollContainer={isMobile}\n >\n {renderedItems}\n {total}\n {renderAddButton && [<MenuSeparator key=\"separator\" />, renderAddButton]}\n </Menu>\n );\n }\n\n private renderItem = (item: ComboBoxExtendedItem<T>, index: number): React.ReactNode => {\n // NOTE this is undesireable feature, better\n // to remove it from further versions\n const { renderItem, onValueChange, itemWrapper } = this.props;\n\n if (!isSimpleItem<T>(item)) {\n const element = isFunction(item) ? item() : item;\n const props = Object.assign(\n {\n key: index,\n onClick: () => onValueChange(element.props),\n },\n element.props,\n );\n return React.cloneElement(element, props);\n }\n\n return (\n <MenuItem\n component={itemWrapper?.(item)}\n data-tid={ComboBoxMenuDataTids.item}\n onClick={() => onValueChange(item)}\n key={index}\n size={this.props.size}\n isMobile={this.props.isMobile}\n >\n {(state) => renderItem(item, state)}\n </MenuItem>\n );\n };\n}\n\nfunction isSimpleItem<T>(item: ComboBoxExtendedItem<T>): item is T {\n return !isFunction(item) && !React.isValidElement(item);\n}\n"]}
@@ -5,8 +5,9 @@ import { InputLikeText } from '../InputLikeText';
5
5
  import { Menu } from '../Menu';
6
6
  import { MenuItemState } from '../../components/MenuItem';
7
7
  import { Nullable } from '../../typings/utility-types';
8
- import { CommonProps } from '../../internal/CommonWrapper';
8
+ import { CommonProps } from '../CommonWrapper';
9
9
  import { ComboBoxExtendedItem } from '../../components/ComboBox';
10
+ import { SizeProp } from '../../lib/types/props';
10
11
  import { ComboBoxRequestStatus } from './CustomComboBoxTypes';
11
12
  interface ComboBoxViewProps<T> extends Pick<DropdownContainerProps, 'menuPos'>, Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>, CommonProps {
12
13
  align?: 'left' | 'center' | 'right';
@@ -25,7 +26,7 @@ interface ComboBoxViewProps<T> extends Pick<DropdownContainerProps, 'menuPos'>,
25
26
  opened?: boolean;
26
27
  drawArrow?: boolean;
27
28
  placeholder?: string;
28
- size?: 'small' | 'medium' | 'large';
29
+ size?: SizeProp;
29
30
  textValue?: string;
30
31
  totalCount?: number;
31
32
  value?: Nullable<T>;
@@ -42,6 +43,7 @@ interface ComboBoxViewProps<T> extends Pick<DropdownContainerProps, 'menuPos'>,
42
43
  onValueChange?: (value: T) => void;
43
44
  onClickOutside?: (e: Event) => void;
44
45
  onFocus?: () => void;
46
+ onMobileClose?: () => void;
45
47
  onFocusOutside?: () => void;
46
48
  onInputBlur?: () => void;
47
49
  onInputValueChange?: (value: string) => void;
@@ -63,14 +65,11 @@ interface ComboBoxViewProps<T> extends Pick<DropdownContainerProps, 'menuPos'>,
63
65
  refMenu?: (menu: Nullable<Menu>) => void;
64
66
  refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;
65
67
  }
66
- interface ComboBoxViewState {
67
- isMobileOpened: boolean;
68
- }
69
68
  declare type DefaultProps<T> = Required<Pick<ComboBoxViewProps<T>, 'renderItem' | 'renderValue' | 'renderAddButton' | 'repeatRequest' | 'requestStatus' | 'onClickOutside' | 'onFocusOutside' | 'size' | 'width'>>;
70
69
  export declare const ComboBoxViewIds: {
71
70
  menu: string;
72
71
  };
73
- export declare class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {
72
+ export declare class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>> {
74
73
  static __KONTUR_REACT_UI__: string;
75
74
  static defaultProps: DefaultProps<unknown>;
76
75
  private getProps;
@@ -82,18 +81,16 @@ export declare class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T
82
81
  private theme;
83
82
  private menuId;
84
83
  componentDidMount(): void;
85
- state: ComboBoxViewState;
86
84
  componentDidUpdate(prevProps: ComboBoxViewProps<T>): void;
87
85
  render(): JSX.Element;
88
86
  renderMain(): JSX.Element;
89
87
  private getComboBoxMenu;
90
88
  private renderMenu;
91
89
  private renderMobileMenu;
92
- private handleCloseMobile;
93
90
  private getParent;
94
91
  private renderAddButton;
95
92
  private renderInput;
96
- private handleFocusMobile;
93
+ private handleMobileFocus;
97
94
  private handleItemSelect;
98
95
  private refInput;
99
96
  private renderSpinner;
@@ -10,7 +10,7 @@ var _RenderLayer = require("../RenderLayer");
10
10
  var _Spinner = require("../../components/Spinner");
11
11
 
12
12
  var _px = require("../icons/16px");
13
- var _CommonWrapper = require("../../internal/CommonWrapper");
13
+ var _CommonWrapper = require("../CommonWrapper");
14
14
  var _MobilePopup = require("../MobilePopup");
15
15
  var _decorator = require("../../components/ResponsiveLayout/decorator");
16
16
  var _rootNode = require("../../lib/rootNode");
@@ -21,6 +21,7 @@ var _ThemeContext = require("../../lib/theming/ThemeContext");
21
21
  var _LoadingIcon = require("../icons2022/LoadingIcon");
22
22
 
23
23
 
24
+
24
25
  var _ArrowDownIcon = require("./ArrowDownIcon");
25
26
  var _ComboBoxMenu = require("./ComboBoxMenu");
26
27
  var _CustomComboBoxTypes = require("./CustomComboBoxTypes");
@@ -100,9 +101,6 @@ var _getComboBoxTheme = require("./getComboBoxTheme");var _class, _class2, _temp
100
101
 
101
102
 
102
103
 
103
-
104
-
105
-
106
104
 
107
105
 
108
106
 
@@ -149,10 +147,6 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
149
147
 
150
148
 
151
149
 
152
- state = {
153
- isMobileOpened: false };_this.
154
-
155
-
156
150
 
157
151
 
158
152
 
@@ -249,7 +243,7 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
249
243
  renderMobileMenu = function () {
250
244
  var rightIcon = null;
251
245
 
252
- var _this$props3 = _this.props,loading = _this$props3.loading,items = _this$props3.items;
246
+ var _this$props3 = _this.props,loading = _this$props3.loading,items = _this$props3.items,opened = _this$props3.opened,onFocus = _this$props3.onFocus,onInputValueChange = _this$props3.onInputValueChange,placeholder = _this$props3.placeholder,textValue = _this$props3.textValue;
253
247
  if (loading && items && !!items.length) {
254
248
  rightIcon = _this.renderSpinner();
255
249
  }
@@ -257,32 +251,24 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
257
251
  var inputProps = {
258
252
  autoFocus: true,
259
253
  width: '100%',
260
- onFocus: _this.props.onFocus,
261
- onValueChange: _this.props.onInputValueChange,
262
- value: _this.props.textValue,
263
- placeholder: _this.props.placeholder,
254
+ onFocus: onFocus,
255
+ onValueChange: onInputValueChange,
256
+ value: textValue,
257
+ placeholder: placeholder,
264
258
  rightIcon: rightIcon };
265
259
 
266
260
 
267
- return /*#__PURE__*/(
261
+ return (
262
+ opened && /*#__PURE__*/
268
263
  _react.default.createElement(_MobilePopup.MobilePopup, {
269
264
  headerChildComponent: /*#__PURE__*/_react.default.createElement(_Input.Input, (0, _extends2.default)({ ref: _this.refMobileInput }, inputProps)),
270
- onCloseRequest: _this.handleCloseMobile,
271
- opened: _this.state.isMobileOpened },
265
+ onCloseRequest: _this.props.onMobileClose,
266
+ opened: true },
272
267
 
273
268
  _this.getComboBoxMenu()));
274
269
 
275
270
 
276
- };_this.
277
-
278
- handleCloseMobile = function () {
279
- _this.setState({
280
- isMobileOpened: false });
281
-
282
271
 
283
- if (_this.props.onInputBlur) {
284
- _this.props.onInputBlur();
285
- }
286
272
  };_this.
287
273
 
288
274
  getParent = function () {
@@ -375,14 +361,10 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
375
361
 
376
362
 
377
363
 
378
- handleFocusMobile = function () {
379
- _this.setState({
380
- isMobileOpened: true });
381
-
364
+ handleMobileFocus = function () {var _this$mobileInput;
365
+ _this.props.onInputClick == null ? void 0 : _this.props.onInputClick();
382
366
 
383
- if (_this.mobileInput) {
384
- _this.mobileInput.focus();
385
- }
367
+ (_this$mobileInput = _this.mobileInput) == null ? void 0 : _this$mobileInput.focus();
386
368
  };_this.
387
369
 
388
370
  handleItemSelect = function (item) {
@@ -391,7 +373,7 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
391
373
  }
392
374
 
393
375
  if (_this.isMobileLayout) {
394
- _this.handleCloseMobile();
376
+ _this.props.onMobileClose == null ? void 0 : _this.props.onMobileClose();
395
377
  }
396
378
  };_this.
397
379
 
@@ -430,4 +412,4 @@ ComboBoxView = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
430
412
 
431
413
  refMobileInput = function (input) {
432
414
  _this.mobileInput = input;
433
- };return _this;}var _proto = ComboBoxView.prototype;_proto.componentDidMount = function componentDidMount() {var _this$dropdownContain;if (this.props.autoFocus && this.props.onFocus) {this.props.onFocus();}this.props.opened && ((_this$dropdownContain = this.dropdownContainerRef.current) == null ? void 0 : _this$dropdownContain.position());};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var input = this.input,props = this.props;if (props.editing && !prevProps.editing && input) {input.focus();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = (0, _getComboBoxTheme.getComboBoxTheme)(theme);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain());});};_proto.renderMain = function renderMain() {var _this$props5 = this.props,onMouseEnter = _this$props5.onMouseEnter,onMouseLeave = _this$props5.onMouseLeave,onMouseOver = _this$props5.onMouseOver,opened = _this$props5.opened;var _this$getProps2 = this.getProps(),onClickOutside = _this$getProps2.onClickOutside,onFocusOutside = _this$getProps2.onFocusOutside,width = _this$getProps2.width;var isMobile = this.isMobileLayout;var input = this.renderInput();return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, this.props, /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: onClickOutside, onFocusOutside: onFocusOutside, active: opened }, /*#__PURE__*/_react.default.createElement("span", { "data-tid": _CustomComboBox2.CustomComboBoxDataTids.comboBoxView, style: { width: width }, className: _CustomComboBox.styles.root(), onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, ref: this.setRootNode }, input, isMobile ? this.renderMobileMenu() : this.renderMenu())));};_proto.renderInput = function renderInput() {var isMobile = this.isMobileLayout;var _this$props6 = this.props,align = _this$props6.align,borderless = _this$props6.borderless,disabled = _this$props6.disabled,editing = _this$props6.editing,error = _this$props6.error,onFocus = _this$props6.onFocus,onInputBlur = _this$props6.onInputBlur,onInputValueChange = _this$props6.onInputValueChange,onInputFocus = _this$props6.onInputFocus,onInputClick = _this$props6.onInputClick,onInputKeyDown = _this$props6.onInputKeyDown,placeholder = _this$props6.placeholder,textValue = _this$props6.textValue,value = _this$props6.value,warning = _this$props6.warning,refInputLikeText = _this$props6.refInputLikeText,leftIcon = _this$props6.leftIcon,inputMode = _this$props6.inputMode,size = _this$props6.size,ariaDescribedby = _this$props6['aria-describedby'],ariaLabel = _this$props6['aria-label'];var _this$getProps3 = this.getProps(),renderValue = _this$getProps3.renderValue;var rightIcon = this.getRightIcon();if (editing) {return /*#__PURE__*/_react.default.createElement(_Input.Input, { align: align, borderless: borderless, disabled: disabled, error: error, maxLength: this.props.maxLength, onBlur: isMobile ? undefined : onInputBlur, onValueChange: onInputValueChange, onFocus: isMobile ? this.handleFocusMobile : onInputFocus, onClick: isMobile ? this.handleFocusMobile : onInputClick, leftIcon: leftIcon, rightIcon: rightIcon, value: textValue || '', onKeyDown: onInputKeyDown, placeholder: placeholder, width: "100%", size: size, ref: this.refInput, warning: warning, inputMode: inputMode, "aria-describedby": ariaDescribedby, "aria-controls": this.menuId, "aria-label": ariaLabel });}return /*#__PURE__*/_react.default.createElement(_InputLikeText.InputLikeText, { align: align, borderless: borderless, error: error, onFocus: onFocus, leftIcon: leftIcon, rightIcon: rightIcon, disabled: disabled, warning: warning, placeholder: placeholder, size: size, width: "100%", ref: refInputLikeText, "aria-describedby": ariaDescribedby, "aria-controls": this.menuId }, (0, _utils.isNonNullable)(value) && renderValue ? renderValue(value) : null);};return ComboBoxView;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'ComboBoxView', _class2.defaultProps = { renderItem: function renderItem(item) {return item;}, renderValue: function renderValue(item) {return item;}, renderAddButton: function renderAddButton() {return null;}, repeatRequest: function repeatRequest() {return undefined;}, requestStatus: _CustomComboBoxTypes.ComboBoxRequestStatus.Unknown, onClickOutside: function onClickOutside() {/**/}, onFocusOutside: function onFocusOutside() {/**/}, size: 'small', width: 250 }, _temp)) || _class) || _class;exports.ComboBoxView = ComboBoxView;
415
+ };return _this;}var _proto = ComboBoxView.prototype;_proto.componentDidMount = function componentDidMount() {var _this$dropdownContain;if (this.props.autoFocus && this.props.onFocus) {this.props.onFocus();}this.props.opened && ((_this$dropdownContain = this.dropdownContainerRef.current) == null ? void 0 : _this$dropdownContain.position());};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {var input = this.input,props = this.props;if (props.editing && !prevProps.editing && input) {input.focus();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = (0, _getComboBoxTheme.getComboBoxTheme)(theme);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain());});};_proto.renderMain = function renderMain() {var _this$props5 = this.props,onMouseEnter = _this$props5.onMouseEnter,onMouseLeave = _this$props5.onMouseLeave,onMouseOver = _this$props5.onMouseOver,opened = _this$props5.opened;var _this$getProps2 = this.getProps(),onClickOutside = _this$getProps2.onClickOutside,onFocusOutside = _this$getProps2.onFocusOutside,width = _this$getProps2.width;var isMobile = this.isMobileLayout;var input = this.renderInput();return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, this.props, /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: onClickOutside, onFocusOutside: onFocusOutside, active: opened }, /*#__PURE__*/_react.default.createElement("span", { "data-tid": _CustomComboBox2.CustomComboBoxDataTids.comboBoxView, style: { width: width }, className: _CustomComboBox.styles.root(), onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, ref: this.setRootNode }, input, isMobile ? this.renderMobileMenu() : this.renderMenu())));};_proto.renderInput = function renderInput() {var isMobile = this.isMobileLayout;var _this$props6 = this.props,align = _this$props6.align,borderless = _this$props6.borderless,disabled = _this$props6.disabled,editing = _this$props6.editing,error = _this$props6.error,onFocus = _this$props6.onFocus,onInputBlur = _this$props6.onInputBlur,onInputValueChange = _this$props6.onInputValueChange,onInputFocus = _this$props6.onInputFocus,onInputClick = _this$props6.onInputClick,onInputKeyDown = _this$props6.onInputKeyDown,placeholder = _this$props6.placeholder,textValue = _this$props6.textValue,value = _this$props6.value,warning = _this$props6.warning,refInputLikeText = _this$props6.refInputLikeText,leftIcon = _this$props6.leftIcon,inputMode = _this$props6.inputMode,size = _this$props6.size,ariaDescribedby = _this$props6['aria-describedby'],ariaLabel = _this$props6['aria-label'];var _this$getProps3 = this.getProps(),renderValue = _this$getProps3.renderValue;var rightIcon = this.getRightIcon();if (editing) {return /*#__PURE__*/_react.default.createElement(_Input.Input, { align: align, borderless: borderless, disabled: disabled, error: error, maxLength: this.props.maxLength, onBlur: isMobile ? undefined : onInputBlur, onValueChange: onInputValueChange, onFocus: onInputFocus, onClick: isMobile ? this.handleMobileFocus : onInputClick, leftIcon: leftIcon, rightIcon: rightIcon, value: textValue || '', onKeyDown: onInputKeyDown, placeholder: placeholder, width: "100%", size: size, ref: this.refInput, warning: warning, inputMode: inputMode, "aria-describedby": ariaDescribedby, "aria-controls": this.menuId, "aria-label": ariaLabel });}return /*#__PURE__*/_react.default.createElement(_InputLikeText.InputLikeText, { align: align, borderless: borderless, error: error, onFocus: onFocus, leftIcon: leftIcon, rightIcon: rightIcon, disabled: disabled, warning: warning, placeholder: placeholder, size: size, width: "100%", ref: refInputLikeText, "aria-describedby": ariaDescribedby, "aria-controls": this.menuId }, (0, _utils.isNonNullable)(value) && renderValue ? renderValue(value) : null);};return ComboBoxView;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'ComboBoxView', _class2.defaultProps = { renderItem: function renderItem(item) {return item;}, renderValue: function renderValue(item) {return item;}, renderAddButton: function renderAddButton() {return null;}, repeatRequest: function repeatRequest() {return undefined;}, requestStatus: _CustomComboBoxTypes.ComboBoxRequestStatus.Unknown, onClickOutside: function onClickOutside() {/**/}, onFocusOutside: function onFocusOutside() {/**/}, size: 'small', width: 250 }, _temp)) || _class) || _class;exports.ComboBoxView = ComboBoxView;
@@ -1 +1 @@
1
- {"version":3,"sources":["ComboBoxView.tsx"],"names":["ComboBoxViewIds","menu","ComboBoxView","responsiveLayout","rootNode","getProps","defaultProps","mobileInput","dropdownContainerRef","React","createRef","menuId","state","isMobileOpened","getComboBoxMenu","props","items","loading","opened","refMenu","maxMenuHeight","renderTotalCount","renderNotFound","totalCount","size","repeatRequest","requestStatus","renderItem","itemWrapper","handleItemSelect","renderAddButton","isMobileLayout","renderMenu","menuAlign","menuPos","getParent","disablePortal","renderMobileMenu","rightIcon","length","renderSpinner","inputProps","autoFocus","width","onFocus","onValueChange","onInputValueChange","value","textValue","placeholder","refMobileInput","handleCloseMobile","setState","onInputBlur","handleFocusMobile","focus","item","refInput","input","styles","spinnerWrapper","getRightIcon","drawArrow","theme","rightIconWrapper","componentDidMount","current","position","componentDidUpdate","prevProps","editing","render","renderMain","onMouseEnter","onMouseLeave","onMouseOver","onClickOutside","onFocusOutside","isMobile","renderInput","CustomComboBoxDataTids","comboBoxView","root","setRootNode","align","borderless","disabled","error","onInputFocus","onInputClick","onInputKeyDown","warning","refInputLikeText","leftIcon","inputMode","ariaDescribedby","ariaLabel","renderValue","maxLength","undefined","Component","__KONTUR_REACT_UI__","ComboBoxRequestStatus","Unknown"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { DropdownContainer, DropdownContainerProps } from '../DropdownContainer';\nimport { Input, InputIconType, InputProps } from '../../components/Input';\nimport { InputLikeText } from '../InputLikeText';\nimport { Menu } from '../Menu';\nimport { MenuItemState } from '../../components/MenuItem';\nimport { RenderLayer } from '../RenderLayer';\nimport { Spinner } from '../../components/Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { ArrowChevronDownIcon } from '../icons/16px';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { MobilePopup } from '../MobilePopup';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { rootNode, getRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { LoadingIcon } from '../icons2022/LoadingIcon';\nimport { ComboBoxExtendedItem } from '../../components/ComboBox';\n\nimport { ArrowDownIcon } from './ArrowDownIcon';\nimport { ComboBoxMenu } from './ComboBoxMenu';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { styles } from './CustomComboBox.styles';\nimport { CustomComboBoxDataTids } from './CustomComboBox';\nimport { getComboBoxTheme } from './getComboBoxTheme';\n\ninterface ComboBoxViewProps<T>\n extends Pick<DropdownContainerProps, 'menuPos'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n CommonProps {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: 'small' | 'medium' | 'large';\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType<unknown>;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n}\n\ninterface ComboBoxViewState {\n isMobileOpened: boolean;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'size'\n | 'width'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n};\n\n@responsiveLayout\n@rootNode\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n size: 'small',\n width: 250,\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n private input: Nullable<Input>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<DropdownContainer>();\n private theme!: Theme;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public componentDidMount() {\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n this.props.opened && this.dropdownContainerRef.current?.position();\n }\n\n public state: ComboBoxViewState = {\n isMobileOpened: false,\n };\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const { items, loading, opened, refMenu, maxMenuHeight, renderTotalCount, renderNotFound, totalCount, size } =\n this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={size}\n />\n );\n };\n\n private renderMenu = () => {\n const { menuAlign, opened, menuPos } = this.props;\n\n return (\n opened && (\n <DropdownContainer\n menuPos={menuPos}\n align={menuAlign}\n getParent={this.getParent}\n disablePortal={this.props.disablePortal}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </DropdownContainer>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onFocus: this.props.onFocus,\n onValueChange: this.props.onInputValueChange,\n value: this.props.textValue,\n placeholder: this.props.placeholder,\n rightIcon,\n };\n\n return (\n <MobilePopup\n headerChildComponent={<Input ref={this.refMobileInput} {...inputProps} />}\n onCloseRequest={this.handleCloseMobile}\n opened={this.state.isMobileOpened}\n >\n {this.getComboBoxMenu()}\n </MobilePopup>\n );\n };\n\n private handleCloseMobile = () => {\n this.setState({\n isMobileOpened: false,\n });\n\n if (this.props.onInputBlur) {\n this.props.onInputBlur();\n }\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n size,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n\n const { renderValue } = this.getProps();\n\n const rightIcon = this.getRightIcon();\n\n if (editing) {\n return (\n <Input\n align={align}\n borderless={borderless}\n disabled={disabled}\n error={error}\n maxLength={this.props.maxLength}\n onBlur={isMobile ? undefined : onInputBlur}\n onValueChange={onInputValueChange}\n onFocus={isMobile ? this.handleFocusMobile : onInputFocus}\n onClick={isMobile ? this.handleFocusMobile : onInputClick}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n value={textValue || ''}\n onKeyDown={onInputKeyDown}\n placeholder={placeholder}\n width=\"100%\"\n size={size}\n ref={this.refInput}\n warning={warning}\n inputMode={inputMode}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n aria-label={ariaLabel}\n />\n );\n }\n\n return (\n <InputLikeText\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleFocusMobile = () => {\n this.setState({\n isMobileOpened: true,\n });\n\n if (this.mobileInput) {\n this.mobileInput.focus();\n }\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.handleCloseMobile();\n }\n };\n\n private refInput = (input: Nullable<Input>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={styles.spinnerWrapper()}>\n <Spinner type=\"mini\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon, size } = this.props;\n\n if (loading && items && !!items.length) {\n if (isTheme2022(this.theme)) {\n return <LoadingIcon size={size} />;\n }\n return this.renderSpinner();\n }\n\n if (rightIcon || drawArrow) {\n if (isTheme2022(this.theme)) {\n return rightIcon || <ArrowDownIcon size={size} />;\n }\n return <span className={styles.rightIconWrapper()}>{rightIcon ?? <ArrowChevronDownIcon />}</span>;\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n}\n"]}
1
+ {"version":3,"sources":["ComboBoxView.tsx"],"names":["ComboBoxViewIds","menu","ComboBoxView","responsiveLayout","rootNode","getProps","defaultProps","mobileInput","dropdownContainerRef","React","createRef","menuId","getComboBoxMenu","props","items","loading","opened","refMenu","maxMenuHeight","renderTotalCount","renderNotFound","totalCount","size","repeatRequest","requestStatus","renderItem","itemWrapper","handleItemSelect","renderAddButton","isMobileLayout","renderMenu","menuAlign","menuPos","getParent","disablePortal","renderMobileMenu","rightIcon","onFocus","onInputValueChange","placeholder","textValue","length","renderSpinner","inputProps","autoFocus","width","onValueChange","value","refMobileInput","onMobileClose","handleMobileFocus","onInputClick","focus","item","refInput","input","styles","spinnerWrapper","getRightIcon","drawArrow","theme","rightIconWrapper","componentDidMount","current","position","componentDidUpdate","prevProps","editing","render","renderMain","onMouseEnter","onMouseLeave","onMouseOver","onClickOutside","onFocusOutside","isMobile","renderInput","CustomComboBoxDataTids","comboBoxView","root","setRootNode","align","borderless","disabled","error","onInputBlur","onInputFocus","onInputKeyDown","warning","refInputLikeText","leftIcon","inputMode","ariaDescribedby","ariaLabel","renderValue","maxLength","undefined","Component","__KONTUR_REACT_UI__","ComboBoxRequestStatus","Unknown"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { DropdownContainer, DropdownContainerProps } from '../DropdownContainer';\nimport { Input, InputIconType, InputProps } from '../../components/Input';\nimport { InputLikeText } from '../InputLikeText';\nimport { Menu } from '../Menu';\nimport { MenuItemState } from '../../components/MenuItem';\nimport { RenderLayer } from '../RenderLayer';\nimport { Spinner } from '../../components/Spinner';\nimport { Nullable } from '../../typings/utility-types';\nimport { ArrowChevronDownIcon } from '../icons/16px';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { MobilePopup } from '../MobilePopup';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { rootNode, getRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { LoadingIcon } from '../icons2022/LoadingIcon';\nimport { ComboBoxExtendedItem } from '../../components/ComboBox';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { ArrowDownIcon } from './ArrowDownIcon';\nimport { ComboBoxMenu } from './ComboBoxMenu';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { styles } from './CustomComboBox.styles';\nimport { CustomComboBoxDataTids } from './CustomComboBox';\nimport { getComboBoxTheme } from './getComboBoxTheme';\n\ninterface ComboBoxViewProps<T>\n extends Pick<DropdownContainerProps, 'menuPos'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n CommonProps {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: SizeProp;\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onMobileClose?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType<unknown>;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'size'\n | 'width'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n};\n\n@responsiveLayout\n@rootNode\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n size: 'small',\n width: 250,\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n private input: Nullable<Input>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<DropdownContainer>();\n private theme!: Theme;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public componentDidMount() {\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n this.props.opened && this.dropdownContainerRef.current?.position();\n }\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const { items, loading, opened, refMenu, maxMenuHeight, renderTotalCount, renderNotFound, totalCount, size } =\n this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={size}\n />\n );\n };\n\n private renderMenu = () => {\n const { menuAlign, opened, menuPos } = this.props;\n\n return (\n opened && (\n <DropdownContainer\n menuPos={menuPos}\n align={menuAlign}\n getParent={this.getParent}\n disablePortal={this.props.disablePortal}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </DropdownContainer>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items, opened, onFocus, onInputValueChange, placeholder, textValue } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onFocus,\n onValueChange: onInputValueChange,\n value: textValue,\n placeholder,\n rightIcon,\n };\n\n return (\n opened && (\n <MobilePopup\n headerChildComponent={<Input ref={this.refMobileInput} {...inputProps} />}\n onCloseRequest={this.props.onMobileClose}\n opened\n >\n {this.getComboBoxMenu()}\n </MobilePopup>\n )\n );\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n size,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n\n const { renderValue } = this.getProps();\n\n const rightIcon = this.getRightIcon();\n\n if (editing) {\n return (\n <Input\n align={align}\n borderless={borderless}\n disabled={disabled}\n error={error}\n maxLength={this.props.maxLength}\n onBlur={isMobile ? undefined : onInputBlur}\n onValueChange={onInputValueChange}\n onFocus={onInputFocus}\n onClick={isMobile ? this.handleMobileFocus : onInputClick}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n value={textValue || ''}\n onKeyDown={onInputKeyDown}\n placeholder={placeholder}\n width=\"100%\"\n size={size}\n ref={this.refInput}\n warning={warning}\n inputMode={inputMode}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n aria-label={ariaLabel}\n />\n );\n }\n\n return (\n <InputLikeText\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleMobileFocus = () => {\n this.props.onInputClick?.();\n\n this.mobileInput?.focus();\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.props.onMobileClose?.();\n }\n };\n\n private refInput = (input: Nullable<Input>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={styles.spinnerWrapper()}>\n <Spinner type=\"mini\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon, size } = this.props;\n\n if (loading && items && !!items.length) {\n if (isTheme2022(this.theme)) {\n return <LoadingIcon size={size} />;\n }\n return this.renderSpinner();\n }\n\n if (rightIcon || drawArrow) {\n if (isTheme2022(this.theme)) {\n return rightIcon || <ArrowDownIcon size={size} />;\n }\n return <span className={styles.rightIconWrapper()}>{rightIcon ?? <ArrowChevronDownIcon />}</span>;\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n}\n"]}