@skbkontur/react-ui 6.0.2 → 6.0.4-46247.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +6 -8
  3. package/components/Autocomplete/Autocomplete.d.ts +2 -2
  4. package/components/Autocomplete/Autocomplete.js +16 -16
  5. package/components/Autocomplete/Autocomplete.js.map +1 -1
  6. package/components/Autocomplete/getAutocompleteTheme.js.map +1 -1
  7. package/components/Autocomplete/locale/index.js.map +1 -1
  8. package/components/Button/Button.d.ts +3 -3
  9. package/components/Button/Button.js +9 -9
  10. package/components/Button/Button.js.map +1 -1
  11. package/components/Button/Button.styles.js +2 -2
  12. package/components/Button/Button.styles.js.map +1 -1
  13. package/components/Button/ButtonArrow.d.ts +1 -1
  14. package/components/Button/ButtonArrow.js +2 -2
  15. package/components/Button/ButtonArrow.js.map +1 -1
  16. package/components/Button/ButtonIcon.js +1 -1
  17. package/components/Button/ButtonIcon.js.map +1 -1
  18. package/components/Button/LoadingButtonIcon.js +1 -1
  19. package/components/Button/LoadingButtonIcon.js.map +1 -1
  20. package/components/Button/getInnerLinkTheme.js.map +1 -1
  21. package/components/Calendar/Calendar.d.ts +2 -2
  22. package/components/Calendar/Calendar.js +13 -13
  23. package/components/Calendar/Calendar.js.map +1 -1
  24. package/components/Calendar/CalendarContext.d.ts +1 -1
  25. package/components/Calendar/CalendarContext.js.map +1 -1
  26. package/components/Calendar/CalendarDay.d.ts +1 -2
  27. package/components/Calendar/CalendarDay.js +7 -7
  28. package/components/Calendar/CalendarDay.js.map +1 -1
  29. package/components/Calendar/CalendarUtils.d.ts +2 -2
  30. package/components/Calendar/CalendarUtils.js +1 -1
  31. package/components/Calendar/CalendarUtils.js.map +1 -1
  32. package/components/Calendar/DayCellView.js +2 -2
  33. package/components/Calendar/DayCellView.js.map +1 -1
  34. package/components/Calendar/DayCellView.styles.js +1 -1
  35. package/components/Calendar/DayCellView.styles.js.map +1 -1
  36. package/components/Calendar/Month.js +4 -4
  37. package/components/Calendar/Month.js.map +1 -1
  38. package/components/Calendar/MonthView.js +5 -5
  39. package/components/Calendar/MonthView.js.map +1 -1
  40. package/components/Calendar/MonthViewModel.js.map +1 -1
  41. package/components/Calendar/config.js.map +1 -1
  42. package/components/Center/Center.d.ts +1 -1
  43. package/components/Center/Center.js +1 -1
  44. package/components/Center/Center.js.map +1 -1
  45. package/components/Checkbox/Checkbox.d.ts +1 -1
  46. package/components/Checkbox/Checkbox.js +5 -5
  47. package/components/Checkbox/Checkbox.js.map +1 -1
  48. package/components/Checkbox/Checkbox.styles.js.map +1 -1
  49. package/components/Checkbox/CheckedIcon.js +1 -1
  50. package/components/Checkbox/CheckedIcon.js.map +1 -1
  51. package/components/ComboBox/ComboBox.d.ts +3 -3
  52. package/components/ComboBox/ComboBox.js +1 -1
  53. package/components/ComboBox/ComboBox.js.map +1 -1
  54. package/components/CurrencyInput/CurrencyHelper.js +1 -1
  55. package/components/CurrencyInput/CurrencyHelper.js.map +1 -1
  56. package/components/CurrencyInput/CurrencyInput.d.ts +2 -2
  57. package/components/CurrencyInput/CurrencyInput.js +6 -6
  58. package/components/CurrencyInput/CurrencyInput.js.map +1 -1
  59. package/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
  60. package/components/CurrencyLabel/CurrencyLabel.js +2 -2
  61. package/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
  62. package/components/DateInput/DateFragmentsView.d.ts +1 -1
  63. package/components/DateInput/DateFragmentsView.js +1 -1
  64. package/components/DateInput/DateFragmentsView.js.map +1 -1
  65. package/components/DateInput/DateInput.d.ts +1 -1
  66. package/components/DateInput/DateInput.js +8 -8
  67. package/components/DateInput/DateInput.js.map +1 -1
  68. package/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
  69. package/components/DatePicker/DatePicker.d.ts +2 -2
  70. package/components/DatePicker/DatePicker.js +16 -16
  71. package/components/DatePicker/DatePicker.js.map +1 -1
  72. package/components/DatePicker/DatePicker.styles.js.map +1 -1
  73. package/components/DatePicker/MobilePicker.js +6 -6
  74. package/components/DatePicker/MobilePicker.js.map +1 -1
  75. package/components/DatePicker/getMobilePickerTheme.js.map +1 -1
  76. package/components/DatePicker/locale/index.js.map +1 -1
  77. package/components/DatePicker/locale/locales/en.js +1 -1
  78. package/components/DatePicker/locale/locales/en.js.map +1 -1
  79. package/components/DatePicker/locale/locales/ru.js +1 -1
  80. package/components/DatePicker/locale/locales/ru.js.map +1 -1
  81. package/components/DateRangePicker/DateRangePicker.d.ts +19 -19
  82. package/components/DateRangePicker/DateRangePicker.js +17 -17
  83. package/components/DateRangePicker/DateRangePicker.js.map +1 -1
  84. package/components/DateRangePicker/DateRangePicker.styles.d.ts +1 -1
  85. package/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
  86. package/components/DateRangePicker/DateRangePickerContext.d.ts +1 -1
  87. package/components/DateRangePicker/DateRangePickerContext.js.map +1 -1
  88. package/components/DateRangePicker/DateRangePickerInput.d.ts +1 -1
  89. package/components/DateRangePicker/DateRangePickerInput.js +3 -3
  90. package/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
  91. package/components/DateRangePicker/DateRangePickerTheme.js.map +1 -1
  92. package/components/DateRangePicker/helpers/getStateForValue.js +2 -2
  93. package/components/DateRangePicker/helpers/getStateForValue.js.map +1 -1
  94. package/components/DateRangePicker/helpers/validateDateRangePicker.js +3 -3
  95. package/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
  96. package/components/DateRangePicker/locale/index.js.map +1 -1
  97. package/components/DateRangePicker/locale/locales/en.js.map +1 -1
  98. package/components/DateRangePicker/locale/locales/ru.js.map +1 -1
  99. package/components/Dropdown/Dropdown.d.ts +2 -2
  100. package/components/Dropdown/Dropdown.js +3 -3
  101. package/components/Dropdown/Dropdown.js.map +1 -1
  102. package/components/Dropdown/getDropdownTheme.js.map +1 -1
  103. package/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  104. package/components/DropdownMenu/DropdownMenu.js +3 -3
  105. package/components/DropdownMenu/DropdownMenu.js.map +1 -1
  106. package/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
  107. package/components/FileUploader/FileUploader.d.ts +5 -5
  108. package/components/FileUploader/FileUploader.js +22 -20
  109. package/components/FileUploader/FileUploader.js.map +1 -1
  110. package/components/FileUploader/FileUploader.styles.js.map +1 -1
  111. package/components/FileUploader/FileUploaderControlContext.d.ts +1 -1
  112. package/components/FileUploader/FileUploaderControlContext.js.map +1 -1
  113. package/components/FileUploader/FileUploaderControlProvider.d.ts +1 -1
  114. package/components/FileUploader/FileUploaderControlProvider.js +3 -3
  115. package/components/FileUploader/FileUploaderControlProvider.js.map +1 -1
  116. package/components/FileUploader/FileUploaderFile.js +11 -11
  117. package/components/FileUploader/FileUploaderFile.js.map +1 -1
  118. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.d.ts +1 -1
  119. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js +5 -5
  120. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  121. package/components/FileUploader/FileUploaderFileStatusIcon.js +3 -3
  122. package/components/FileUploader/FileUploaderFileStatusIcon.js.map +1 -1
  123. package/components/FileUploader/FileUploaderFileTypeIcon.js +4 -4
  124. package/components/FileUploader/FileUploaderFileTypeIcon.js.map +1 -1
  125. package/components/FileUploader/fileUtils.js.map +1 -1
  126. package/components/FileUploader/hooks/useUpload.js +1 -1
  127. package/components/FileUploader/hooks/useUpload.js.map +1 -1
  128. package/components/FileUploader/icons/UploadIcon.js +1 -1
  129. package/components/FileUploader/icons/UploadIcon.js.map +1 -1
  130. package/components/FileUploader/icons/row/ArchiveIcon.js +1 -1
  131. package/components/FileUploader/icons/row/ArchiveIcon.js.map +1 -1
  132. package/components/FileUploader/icons/row/DocTextIcon.js +1 -1
  133. package/components/FileUploader/icons/row/DocTextIcon.js.map +1 -1
  134. package/components/FileUploader/icons/row/FolderIcon.js +1 -1
  135. package/components/FileUploader/icons/row/FolderIcon.js.map +1 -1
  136. package/components/FileUploader/icons/row/MarkupIcon.js +1 -1
  137. package/components/FileUploader/icons/row/MarkupIcon.js.map +1 -1
  138. package/components/FileUploader/icons/row/PdfIcon.js +1 -1
  139. package/components/FileUploader/icons/row/PdfIcon.js.map +1 -1
  140. package/components/FileUploader/icons/row/PictureIcon.js +1 -1
  141. package/components/FileUploader/icons/row/PictureIcon.js.map +1 -1
  142. package/components/FileUploader/icons/row/PresentationIcon.js +1 -1
  143. package/components/FileUploader/icons/row/PresentationIcon.js.map +1 -1
  144. package/components/FileUploader/icons/row/TableIcon.js +1 -1
  145. package/components/FileUploader/icons/row/TableIcon.js.map +1 -1
  146. package/components/FileUploader/icons/row/TextIcon.js +1 -1
  147. package/components/FileUploader/icons/row/TextIcon.js.map +1 -1
  148. package/components/FileUploader/icons/tile/ArchiveIcon.js +1 -1
  149. package/components/FileUploader/icons/tile/ArchiveIcon.js.map +1 -1
  150. package/components/FileUploader/icons/tile/DocTextIcon.js +1 -1
  151. package/components/FileUploader/icons/tile/DocTextIcon.js.map +1 -1
  152. package/components/FileUploader/icons/tile/FolderIcon.js +1 -1
  153. package/components/FileUploader/icons/tile/FolderIcon.js.map +1 -1
  154. package/components/FileUploader/icons/tile/MarkupIcon.js +1 -1
  155. package/components/FileUploader/icons/tile/MarkupIcon.js.map +1 -1
  156. package/components/FileUploader/icons/tile/PdfIcon.js +1 -1
  157. package/components/FileUploader/icons/tile/PdfIcon.js.map +1 -1
  158. package/components/FileUploader/icons/tile/PictureIcon.js +1 -1
  159. package/components/FileUploader/icons/tile/PictureIcon.js.map +1 -1
  160. package/components/FileUploader/icons/tile/PresentationIcon.js +1 -1
  161. package/components/FileUploader/icons/tile/PresentationIcon.js.map +1 -1
  162. package/components/FileUploader/icons/tile/TableIcon.js +1 -1
  163. package/components/FileUploader/icons/tile/TableIcon.js.map +1 -1
  164. package/components/FileUploader/icons/tile/TextIcon.js +1 -1
  165. package/components/FileUploader/icons/tile/TextIcon.js.map +1 -1
  166. package/components/FileUploader/locale/index.js.map +1 -1
  167. package/components/FileUploader/withFileUploaderControlProvider.js.map +1 -1
  168. package/components/FxInput/FxInput.d.ts +6 -6
  169. package/components/FxInput/FxInput.js +6 -6
  170. package/components/FxInput/FxInput.js.map +1 -1
  171. package/components/FxInput/FxInputRestoreBtn.d.ts +1 -1
  172. package/components/FxInput/FxInputRestoreBtn.js +1 -1
  173. package/components/FxInput/FxInputRestoreBtn.js.map +1 -1
  174. package/components/FxInput/UndoIcon.js +2 -2
  175. package/components/FxInput/UndoIcon.js.map +1 -1
  176. package/components/Gapped/Gapped.js +2 -2
  177. package/components/Gapped/Gapped.js.map +1 -1
  178. package/components/GlobalLoader/GlobalLoader.js +3 -3
  179. package/components/GlobalLoader/GlobalLoader.js.map +1 -1
  180. package/components/GlobalLoader/GlobalLoaderView.js +2 -2
  181. package/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  182. package/components/GlobalLoader/useParams.js.map +1 -1
  183. package/components/Group/Group.js +2 -2
  184. package/components/Group/Group.js.map +1 -1
  185. package/components/Hint/Hint.d.ts +4 -4
  186. package/components/Hint/Hint.js +5 -5
  187. package/components/Hint/Hint.js.map +1 -1
  188. package/components/Hint/Hint.styles.js.map +1 -1
  189. package/components/Input/Input.d.ts +1 -1
  190. package/components/Input/Input.js +7 -8
  191. package/components/Input/Input.js.map +1 -1
  192. package/components/Input/Input.styles.js +1 -1
  193. package/components/Input/Input.styles.js.map +1 -1
  194. package/components/Input/InputLayout/InputLayout.d.ts +1 -1
  195. package/components/Input/InputLayout/InputLayout.js +4 -4
  196. package/components/Input/InputLayout/InputLayout.js.map +1 -1
  197. package/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  198. package/components/Input/InputLayout/InputLayoutAsideIcon.js +2 -2
  199. package/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  200. package/components/Input/InputLayout/InputLayoutAsideText.js +1 -1
  201. package/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
  202. package/components/Kebab/Kebab.d.ts +3 -3
  203. package/components/Kebab/Kebab.js +11 -11
  204. package/components/Kebab/Kebab.js.map +1 -1
  205. package/components/Link/Link.d.ts +3 -3
  206. package/components/Link/Link.js +6 -6
  207. package/components/Link/Link.js.map +1 -1
  208. package/components/Link/Link.styles.js +1 -1
  209. package/components/Link/Link.styles.js.map +1 -1
  210. package/components/Link/LinkIcon.js.map +1 -1
  211. package/components/Loader/Loader.d.ts +2 -2
  212. package/components/Loader/Loader.js +10 -10
  213. package/components/Loader/Loader.js.map +1 -1
  214. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +4 -4
  215. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  216. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js +1 -1
  217. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js.map +1 -1
  218. package/components/MaskedInput/FixedIMaskInput.js +2 -2
  219. package/components/MaskedInput/FixedIMaskInput.js.map +1 -1
  220. package/components/MaskedInput/MaskedInput.js +5 -5
  221. package/components/MaskedInput/MaskedInput.js.map +1 -1
  222. package/components/MaskedInput/MaskedInput.styles.js +1 -1
  223. package/components/MaskedInput/MaskedInput.styles.js.map +1 -1
  224. package/components/MenuFooter/MenuFooter.js +2 -2
  225. package/components/MenuFooter/MenuFooter.js.map +1 -1
  226. package/components/MenuFooter/MenuFooter.styles.js.map +1 -1
  227. package/components/MenuHeader/MenuHeader.js +2 -2
  228. package/components/MenuHeader/MenuHeader.js.map +1 -1
  229. package/components/MenuHeader/MenuHeader.styles.js.map +1 -1
  230. package/components/MenuItem/MenuItem.d.ts +1 -1
  231. package/components/MenuItem/MenuItem.js +6 -6
  232. package/components/MenuItem/MenuItem.js.map +1 -1
  233. package/components/MenuItem/MenuItem.styles.js +1 -1
  234. package/components/MenuItem/MenuItem.styles.js.map +1 -1
  235. package/components/MenuSeparator/MenuSeparator.js +2 -2
  236. package/components/MenuSeparator/MenuSeparator.js.map +1 -1
  237. package/components/MiniModal/MiniModal.d.ts +2 -2
  238. package/components/MiniModal/MiniModal.js +3 -3
  239. package/components/MiniModal/MiniModal.js.map +1 -1
  240. package/components/MiniModal/MiniModalBody.js +2 -2
  241. package/components/MiniModal/MiniModalBody.js.map +1 -1
  242. package/components/MiniModal/MiniModalFooter.js +3 -3
  243. package/components/MiniModal/MiniModalFooter.js.map +1 -1
  244. package/components/MiniModal/MiniModalHeader.js +4 -4
  245. package/components/MiniModal/MiniModalHeader.js.map +1 -1
  246. package/components/MiniModal/MiniModalIndent.js +2 -2
  247. package/components/MiniModal/MiniModalIndent.js.map +1 -1
  248. package/components/MiniModal/getMiniModalTheme.js.map +1 -1
  249. package/components/Modal/Modal.d.ts +2 -2
  250. package/components/Modal/Modal.js +15 -15
  251. package/components/Modal/Modal.js.map +1 -1
  252. package/components/Modal/Modal.styles.js +1 -1
  253. package/components/Modal/Modal.styles.js.map +1 -1
  254. package/components/Modal/ModalBody.js +7 -7
  255. package/components/Modal/ModalBody.js.map +1 -1
  256. package/components/Modal/ModalClose.js +6 -6
  257. package/components/Modal/ModalClose.js.map +1 -1
  258. package/components/Modal/ModalFooter.d.ts +1 -1
  259. package/components/Modal/ModalFooter.js +5 -5
  260. package/components/Modal/ModalFooter.js.map +1 -1
  261. package/components/Modal/ModalHeader.d.ts +1 -1
  262. package/components/Modal/ModalHeader.js +2 -2
  263. package/components/Modal/ModalHeader.js.map +1 -1
  264. package/components/Modal/ModalSeparator.js.map +1 -1
  265. package/components/Modal/getModalBodyTheme.js.map +1 -1
  266. package/components/Modal/getModalTheme.js.map +1 -1
  267. package/components/Modal/locale/index.js.map +1 -1
  268. package/components/Paging/DotsIcon.js +1 -1
  269. package/components/Paging/DotsIcon.js.map +1 -1
  270. package/components/Paging/Paging.d.ts +1 -1
  271. package/components/Paging/Paging.js +13 -13
  272. package/components/Paging/Paging.js.map +1 -1
  273. package/components/Paging/PagingDefaultComponent.js.map +1 -1
  274. package/components/Paging/locale/index.js.map +1 -1
  275. package/components/PasswordInput/ClosedIcon.js +1 -1
  276. package/components/PasswordInput/ClosedIcon.js.map +1 -1
  277. package/components/PasswordInput/OpenedIcon.js +1 -1
  278. package/components/PasswordInput/OpenedIcon.js.map +1 -1
  279. package/components/PasswordInput/PasswordInput.d.ts +1 -1
  280. package/components/PasswordInput/PasswordInput.js +8 -8
  281. package/components/PasswordInput/PasswordInput.js.map +1 -1
  282. package/components/PasswordInput/PasswordInput.styles.js.map +1 -1
  283. package/components/PasswordInput/PasswordInputIcon.js.map +1 -1
  284. package/components/PasswordInput/locale/index.js.map +1 -1
  285. package/components/Radio/Radio.d.ts +2 -2
  286. package/components/Radio/Radio.js +6 -6
  287. package/components/Radio/Radio.js.map +1 -1
  288. package/components/Radio/Radio.mixins.js +1 -1
  289. package/components/Radio/Radio.mixins.js.map +1 -1
  290. package/components/Radio/Radio.styles.js.map +1 -1
  291. package/components/RadioGroup/RadioGroup.js +7 -7
  292. package/components/RadioGroup/RadioGroup.js.map +1 -1
  293. package/components/ResponsiveLayout/ResponsiveLayout.js +2 -2
  294. package/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  295. package/components/ResponsiveLayout/useResponsiveLayout.js.map +1 -1
  296. package/components/ScrollContainer/ScrollBar.js +2 -2
  297. package/components/ScrollContainer/ScrollBar.js.map +1 -1
  298. package/components/ScrollContainer/ScrollContainer.d.ts +1 -1
  299. package/components/ScrollContainer/ScrollContainer.helpers.js.map +1 -1
  300. package/components/ScrollContainer/ScrollContainer.js +8 -8
  301. package/components/ScrollContainer/ScrollContainer.js.map +1 -1
  302. package/components/Select/Select.d.ts +4 -4
  303. package/components/Select/Select.js +17 -17
  304. package/components/Select/Select.js.map +1 -1
  305. package/components/Select/locale/index.js.map +1 -1
  306. package/components/Select/selectTheme.js.map +1 -1
  307. package/components/SidePage/SidePage.js +11 -11
  308. package/components/SidePage/SidePage.js.map +1 -1
  309. package/components/SidePage/SidePage.styles.js +1 -1
  310. package/components/SidePage/SidePage.styles.js.map +1 -1
  311. package/components/SidePage/SidePageBody.js +2 -2
  312. package/components/SidePage/SidePageBody.js.map +1 -1
  313. package/components/SidePage/SidePageCloseButton.js +5 -5
  314. package/components/SidePage/SidePageCloseButton.js.map +1 -1
  315. package/components/SidePage/SidePageContainer.js +3 -3
  316. package/components/SidePage/SidePageContainer.js.map +1 -1
  317. package/components/SidePage/SidePageFooter.js +6 -6
  318. package/components/SidePage/SidePageFooter.js.map +1 -1
  319. package/components/SidePage/SidePageHeader.js +7 -7
  320. package/components/SidePage/SidePageHeader.js.map +1 -1
  321. package/components/SidePage/locale/index.js.map +1 -1
  322. package/components/SingleToast/SingleToast.js +1 -1
  323. package/components/SingleToast/SingleToast.js.map +1 -1
  324. package/components/Spinner/Spinner.js +3 -3
  325. package/components/Spinner/Spinner.js.map +1 -1
  326. package/components/Spinner/Spinner.styles.js +1 -1
  327. package/components/Spinner/Spinner.styles.js.map +1 -1
  328. package/components/Sticky/Sticky.d.ts +1 -1
  329. package/components/Sticky/Sticky.js +5 -5
  330. package/components/Sticky/Sticky.js.map +1 -1
  331. package/components/Switcher/Switcher.d.ts +2 -2
  332. package/components/Switcher/Switcher.js +6 -6
  333. package/components/Switcher/Switcher.js.map +1 -1
  334. package/components/Switcher/switcherTheme.js.map +1 -1
  335. package/components/Tabs/Indicator.js +5 -5
  336. package/components/Tabs/Indicator.js.map +1 -1
  337. package/components/Tabs/Tab.d.ts +1 -1
  338. package/components/Tabs/Tab.js +8 -8
  339. package/components/Tabs/Tab.js.map +1 -1
  340. package/components/Tabs/Tab.styles.js +1 -1
  341. package/components/Tabs/Tab.styles.js.map +1 -1
  342. package/components/Tabs/Tabs.js +4 -4
  343. package/components/Tabs/Tabs.js.map +1 -1
  344. package/components/Tabs/Tabs.styles.js.map +1 -1
  345. package/components/Tabs/TabsContext.js.map +1 -1
  346. package/components/Textarea/Textarea.d.ts +1 -1
  347. package/components/Textarea/Textarea.js +9 -9
  348. package/components/Textarea/Textarea.js.map +1 -1
  349. package/components/Textarea/Textarea.styles.js.map +1 -1
  350. package/components/Textarea/TextareaCounter.js +3 -3
  351. package/components/Textarea/TextareaCounter.js.map +1 -1
  352. package/components/Toast/Toast.d.ts +2 -2
  353. package/components/Toast/Toast.js +4 -4
  354. package/components/Toast/Toast.js.map +1 -1
  355. package/components/Toast/ToastView.d.ts +1 -1
  356. package/components/Toast/ToastView.js +7 -7
  357. package/components/Toast/ToastView.js.map +1 -1
  358. package/components/Toast/locale/index.js.map +1 -1
  359. package/components/Toggle/Toggle.d.ts +1 -1
  360. package/components/Toggle/Toggle.js +5 -5
  361. package/components/Toggle/Toggle.js.map +1 -1
  362. package/components/Toggle/Toggle.mixins.js.map +1 -1
  363. package/components/Toggle/Toggle.styles.js.map +1 -1
  364. package/components/Token/Token.js +7 -7
  365. package/components/Token/Token.js.map +1 -1
  366. package/components/Token/Token.styles.js.map +1 -1
  367. package/components/Token/TokenView.d.ts +1 -1
  368. package/components/Token/TokenView.js +2 -2
  369. package/components/Token/TokenView.js.map +1 -1
  370. package/components/Token/locale/index.js.map +1 -1
  371. package/components/TokenInput/TextWidthHelper.js +2 -2
  372. package/components/TokenInput/TextWidthHelper.js.map +1 -1
  373. package/components/TokenInput/TokenInput.d.ts +2 -2
  374. package/components/TokenInput/TokenInput.js +13 -13
  375. package/components/TokenInput/TokenInput.js.map +1 -1
  376. package/components/TokenInput/TokenInput.styles.js +2 -2
  377. package/components/TokenInput/TokenInput.styles.js.map +1 -1
  378. package/components/TokenInput/TokenInputMenu.d.ts +2 -2
  379. package/components/TokenInput/TokenInputMenu.js +2 -2
  380. package/components/TokenInput/TokenInputMenu.js.map +1 -1
  381. package/components/TokenInput/TokenInputReducer.js.map +1 -1
  382. package/components/TokenInput/locale/index.js.map +1 -1
  383. package/components/Tooltip/Tooltip.d.ts +3 -3
  384. package/components/Tooltip/Tooltip.js +12 -13
  385. package/components/Tooltip/Tooltip.js.map +1 -1
  386. package/components/TooltipMenu/TooltipMenu.d.ts +4 -4
  387. package/components/TooltipMenu/TooltipMenu.js +4 -4
  388. package/components/TooltipMenu/TooltipMenu.js.map +1 -1
  389. package/hooks/useDrop.js.map +1 -1
  390. package/hooks/useEffectWithoutInitCall.js.map +1 -1
  391. package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -1
  392. package/internal/ClearCrossIcon/ClearCrossIcon.js +1 -1
  393. package/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  394. package/internal/ClearCrossIcon/ClearCrossIcon.styles.js +1 -1
  395. package/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
  396. package/internal/CloseButtonIcon/CloseButtonIcon.js +2 -2
  397. package/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  398. package/internal/CloseButtonIcon/CloseButtonIcon.styles.js +1 -1
  399. package/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
  400. package/internal/CommonWrapper/CommonWrapper.js +2 -2
  401. package/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  402. package/internal/CommonWrapper/utils/extractCommonProps.d.ts +1 -1
  403. package/internal/CommonWrapper/utils/extractCommonProps.js.map +1 -1
  404. package/internal/CustomComboBox/ComboBoxMenu.d.ts +3 -3
  405. package/internal/CustomComboBox/ComboBoxMenu.js +7 -7
  406. package/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  407. package/internal/CustomComboBox/ComboBoxView.d.ts +6 -6
  408. package/internal/CustomComboBox/ComboBoxView.js +15 -15
  409. package/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  410. package/internal/CustomComboBox/CustomComboBox.d.ts +6 -6
  411. package/internal/CustomComboBox/CustomComboBox.js +6 -6
  412. package/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  413. package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +1 -1
  414. package/internal/CustomComboBox/CustomComboBoxReducer.js +1 -1
  415. package/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
  416. package/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
  417. package/internal/CustomComboBox/locale/index.js.map +1 -1
  418. package/internal/DateSelect/DateSelect.js +7 -7
  419. package/internal/DateSelect/DateSelect.js.map +1 -1
  420. package/internal/DateSelect/locale/index.js.map +1 -1
  421. package/internal/FocusControlWrapper/FocusControlWrapper.js.map +1 -1
  422. package/internal/FocusControlWrapper/useFocusControl.js.map +1 -1
  423. package/internal/FocusTrap/FocusTrap.d.ts +1 -0
  424. package/internal/FocusTrap/FocusTrap.js +7 -7
  425. package/internal/FocusTrap/FocusTrap.js.map +1 -1
  426. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -2
  427. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  428. package/internal/InputLikeText/InputLikeText.d.ts +2 -2
  429. package/internal/InputLikeText/InputLikeText.js +14 -14
  430. package/internal/InputLikeText/InputLikeText.js.map +1 -1
  431. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +6 -6
  432. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
  433. package/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  434. package/internal/Menu/Menu.js +10 -10
  435. package/internal/Menu/Menu.js.map +1 -1
  436. package/internal/Menu/MenuContext.js.map +1 -1
  437. package/internal/Menu/MenuNavigation.d.ts +1 -1
  438. package/internal/Menu/MenuNavigation.js.map +1 -1
  439. package/internal/MenuMessage/MenuMessage.d.ts +1 -1
  440. package/internal/MenuMessage/MenuMessage.js +2 -2
  441. package/internal/MenuMessage/MenuMessage.js.map +1 -1
  442. package/internal/MenuMessage/MenuMessage.styles.js +1 -1
  443. package/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
  444. package/internal/MobilePopup/MobilePopup.js +5 -5
  445. package/internal/MobilePopup/MobilePopup.js.map +1 -1
  446. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +1 -1
  447. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
  448. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +2 -2
  449. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  450. package/internal/NativeDateInput/NativeDateInput.js +1 -1
  451. package/internal/NativeDateInput/NativeDateInput.js.map +1 -1
  452. package/internal/NativeDateInput/utils.d.ts +1 -1
  453. package/internal/NativeDateInput/utils.js.map +1 -1
  454. package/internal/Popup/Popup.d.ts +5 -3
  455. package/internal/Popup/Popup.js +69 -40
  456. package/internal/Popup/Popup.js.map +1 -1
  457. package/internal/Popup/PopupHelper.d.ts +5 -3
  458. package/internal/Popup/PopupHelper.js +14 -8
  459. package/internal/Popup/PopupHelper.js.map +1 -1
  460. package/internal/Popup/PopupPin.js +1 -1
  461. package/internal/Popup/PopupPin.js.map +1 -1
  462. package/internal/Popup/types.js.map +1 -1
  463. package/internal/PopupMenu/PopupMenu.d.ts +2 -2
  464. package/internal/PopupMenu/PopupMenu.js +8 -8
  465. package/internal/PopupMenu/PopupMenu.js.map +1 -1
  466. package/internal/PopupMenu/validatePositions.js.map +1 -1
  467. package/internal/RenderContainer/RenderContainer.d.ts +9 -1
  468. package/internal/RenderContainer/RenderContainer.js +85 -6
  469. package/internal/RenderContainer/RenderContainer.js.map +1 -1
  470. package/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  471. package/internal/RenderLayer/RenderLayer.d.ts +2 -1
  472. package/internal/RenderLayer/RenderLayer.js +7 -9
  473. package/internal/RenderLayer/RenderLayer.js.map +1 -1
  474. package/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  475. package/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
  476. package/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
  477. package/internal/ZIndex/ZIndex.js +6 -6
  478. package/internal/ZIndex/ZIndex.js.map +1 -1
  479. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.js.map +1 -1
  480. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.js.map +1 -1
  481. package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.js.map +1 -1
  482. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.js.map +1 -1
  483. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.js.map +1 -1
  484. package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.js.map +1 -1
  485. package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.js.map +1 -1
  486. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.js.map +1 -1
  487. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.js.map +1 -1
  488. package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.js.map +1 -1
  489. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.js.map +1 -1
  490. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.js.map +1 -1
  491. package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.js.map +1 -1
  492. package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js.map +1 -1
  493. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.js.map +1 -1
  494. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.js.map +1 -1
  495. package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.js.map +1 -1
  496. package/internal/icons2022/BaseIcon.js +1 -1
  497. package/internal/icons2022/BaseIcon.js.map +1 -1
  498. package/internal/icons2022/CalendarIcon/CalendarIcon16Light.js.map +1 -1
  499. package/internal/icons2022/CalendarIcon/CalendarIcon20Light.js.map +1 -1
  500. package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.js.map +1 -1
  501. package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.js.map +1 -1
  502. package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.js.map +1 -1
  503. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.js.map +1 -1
  504. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.js.map +1 -1
  505. package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.js.map +1 -1
  506. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.js.map +1 -1
  507. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.js.map +1 -1
  508. package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.js.map +1 -1
  509. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon16Solid.js.map +1 -1
  510. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon20Solid.js.map +1 -1
  511. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon24Regular.js.map +1 -1
  512. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon24Solid.js.map +1 -1
  513. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon32Regular.js.map +1 -1
  514. package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon64Regular.js.map +1 -1
  515. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon16Solid.js.map +1 -1
  516. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon20Solid.js.map +1 -1
  517. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon24Regular.js.map +1 -1
  518. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon24Solid.js.map +1 -1
  519. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon32Regular.js.map +1 -1
  520. package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon64Regular.js.map +1 -1
  521. package/internal/icons2022/FileTypeFolderIcon/FolderIcon16Solid.js.map +1 -1
  522. package/internal/icons2022/FileTypeFolderIcon/FolderIcon20Solid.js.map +1 -1
  523. package/internal/icons2022/FileTypeFolderIcon/FolderIcon24Regular.js.map +1 -1
  524. package/internal/icons2022/FileTypeFolderIcon/FolderIcon24Solid.js.map +1 -1
  525. package/internal/icons2022/FileTypeFolderIcon/FolderIcon32Regular.js.map +1 -1
  526. package/internal/icons2022/FileTypeFolderIcon/FolderIcon64Regular.js.map +1 -1
  527. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon16Solid.js.map +1 -1
  528. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon20Solid.js.map +1 -1
  529. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon24Regular.js.map +1 -1
  530. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon24Solid.js.map +1 -1
  531. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon32Regular.js.map +1 -1
  532. package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon64Regular.js.map +1 -1
  533. package/internal/icons2022/FileTypePdfIcon/PdfIcon16Solid.js.map +1 -1
  534. package/internal/icons2022/FileTypePdfIcon/PdfIcon20Solid.js.map +1 -1
  535. package/internal/icons2022/FileTypePdfIcon/PdfIcon24Regular.js.map +1 -1
  536. package/internal/icons2022/FileTypePdfIcon/PdfIcon24Solid.js.map +1 -1
  537. package/internal/icons2022/FileTypePdfIcon/PdfIcon32Regular.js.map +1 -1
  538. package/internal/icons2022/FileTypePdfIcon/PdfIcon64Regular.js.map +1 -1
  539. package/internal/icons2022/FileTypePictureIcon/PictureIcon16Solid.js.map +1 -1
  540. package/internal/icons2022/FileTypePictureIcon/PictureIcon20Solid.js.map +1 -1
  541. package/internal/icons2022/FileTypePictureIcon/PictureIcon24Regular.js.map +1 -1
  542. package/internal/icons2022/FileTypePictureIcon/PictureIcon24Solid.js.map +1 -1
  543. package/internal/icons2022/FileTypePictureIcon/PictureIcon32Regular.js.map +1 -1
  544. package/internal/icons2022/FileTypePictureIcon/PictureIcon64Regular.js.map +1 -1
  545. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon16Solid.js.map +1 -1
  546. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon20Solid.js.map +1 -1
  547. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon24Regular.js.map +1 -1
  548. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon24Solid.js.map +1 -1
  549. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon32Regular.js.map +1 -1
  550. package/internal/icons2022/FileTypePresentationIcon/PresentationIcon64Regular.js.map +1 -1
  551. package/internal/icons2022/FileTypeTableIcon/TableIcon16Solid.js.map +1 -1
  552. package/internal/icons2022/FileTypeTableIcon/TableIcon20Solid.js.map +1 -1
  553. package/internal/icons2022/FileTypeTableIcon/TableIcon24Regular.js.map +1 -1
  554. package/internal/icons2022/FileTypeTableIcon/TableIcon24Solid.js.map +1 -1
  555. package/internal/icons2022/FileTypeTableIcon/TableIcon32Regular.js.map +1 -1
  556. package/internal/icons2022/FileTypeTableIcon/TableIcon64Regular.js.map +1 -1
  557. package/internal/icons2022/FileTypeTextIcon/TextIcon16Solid.js.map +1 -1
  558. package/internal/icons2022/FileTypeTextIcon/TextIcon20Solid.js.map +1 -1
  559. package/internal/icons2022/FileTypeTextIcon/TextIcon24Regular.js.map +1 -1
  560. package/internal/icons2022/FileTypeTextIcon/TextIcon24Solid.js.map +1 -1
  561. package/internal/icons2022/FileTypeTextIcon/TextIcon32Regular.js.map +1 -1
  562. package/internal/icons2022/FileTypeTextIcon/TextIcon64Regular.js.map +1 -1
  563. package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -1
  564. package/internal/icons2022/LoadingIcon.js +1 -1
  565. package/internal/icons2022/LoadingIcon.js.map +1 -1
  566. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.js.map +1 -1
  567. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.js.map +1 -1
  568. package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.js.map +1 -1
  569. package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.js.map +1 -1
  570. package/internal/icons2022/NetUploadIcon/NetUploadIcon20Regular.js.map +1 -1
  571. package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.js.map +1 -1
  572. package/internal/icons2022/NetUploadIcon/NetUploadIcon32Regular.js.map +1 -1
  573. package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.js.map +1 -1
  574. package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.js.map +1 -1
  575. package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -1
  576. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.js.map +1 -1
  577. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.js.map +1 -1
  578. package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.js.map +1 -1
  579. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon16Solid.js.map +1 -1
  580. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon20Solid.js.map +1 -1
  581. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon24Regular.js.map +1 -1
  582. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon24Solid.js.map +1 -1
  583. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon32Regular.js.map +1 -1
  584. package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon64Regular.js.map +1 -1
  585. package/internal/icons2022/XCircleIcon/XCircleIcon16Solid.js.map +1 -1
  586. package/internal/icons2022/XCircleIcon/XCircleIcon20Solid.js.map +1 -1
  587. package/internal/icons2022/XCircleIcon/XCircleIcon24Regular.js.map +1 -1
  588. package/internal/icons2022/XCircleIcon/XCircleIcon24Solid.js.map +1 -1
  589. package/internal/icons2022/XCircleIcon/XCircleIcon32Regular.js.map +1 -1
  590. package/internal/icons2022/XCircleIcon/XCircleIcon64Regular.js.map +1 -1
  591. package/internal/icons2022/XIcon/XIcon16Light.js.map +1 -1
  592. package/internal/icons2022/XIcon/XIcon20Light.js.map +1 -1
  593. package/internal/icons2022/XIcon/XIcon20Regular.js.map +1 -1
  594. package/internal/icons2022/XIcon/XIcon24Regular.js.map +1 -1
  595. package/internal/icons2022/iconSizer.js.map +1 -1
  596. package/internal/react-focus-lock/Lock.js +1 -1
  597. package/internal/react-focus-lock/Lock.js.map +1 -1
  598. package/internal/react-focus-lock/Trap.js +2 -2
  599. package/internal/react-focus-lock/Trap.js.map +1 -1
  600. package/internal/themes/DarkTheme6_0.js +1 -1
  601. package/internal/themes/DarkTheme6_0.js.map +1 -1
  602. package/internal/themes/LightTheme6_0.js.map +1 -1
  603. package/lib/ModalStack.d.ts +1 -1
  604. package/lib/ModalStack.js.map +1 -1
  605. package/lib/animation/index.js.map +1 -1
  606. package/lib/date/InternalDate.js.map +1 -1
  607. package/lib/date/InternalDateGetter.d.ts +1 -1
  608. package/lib/date/InternalDateGetter.js.map +1 -1
  609. package/lib/date/InternalDateSetter.d.ts +1 -1
  610. package/lib/date/InternalDateSetter.js.map +1 -1
  611. package/lib/date/InternalDateTransformer.js +1 -1
  612. package/lib/date/InternalDateTransformer.js.map +1 -1
  613. package/lib/date/InternalDateValidator.js +1 -1
  614. package/lib/date/InternalDateValidator.js.map +1 -1
  615. package/lib/date/comparison.js.map +1 -1
  616. package/lib/date/localeSets.js.map +1 -1
  617. package/lib/dom/scrollYCenterIntoNearestScrollable.js.map +1 -1
  618. package/lib/dom/selectionHelpers.js +3 -3
  619. package/lib/dom/selectionHelpers.js.map +1 -1
  620. package/lib/dom/tabbableHelpers.js +1 -1
  621. package/lib/dom/tabbableHelpers.js.map +1 -1
  622. package/lib/events/fixFirefoxModifiedClickOnLabel.js +1 -1
  623. package/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
  624. package/lib/events/keyListener.js.map +1 -1
  625. package/lib/events/keyboard/extractCode.js.map +1 -1
  626. package/lib/events/keyboard/identifiers.js.map +1 -1
  627. package/lib/forwardRefAndName.js.map +1 -1
  628. package/lib/listenFocusOutside.d.ts +3 -1
  629. package/lib/listenFocusOutside.js +21 -4
  630. package/lib/listenFocusOutside.js.map +1 -1
  631. package/lib/locale/LocaleContext.js.map +1 -1
  632. package/lib/locale/types.d.ts +6 -6
  633. package/lib/locale/types.js.map +1 -1
  634. package/lib/locale/useLocaleForControl.d.ts +1 -1
  635. package/lib/locale/useLocaleForControl.js.map +1 -1
  636. package/lib/mergeRefs.js.map +1 -1
  637. package/lib/renderEnvironment/RenderEnvironmentContext.d.ts +17 -1
  638. package/lib/renderEnvironment/RenderEnvironmentContext.js +10 -10
  639. package/lib/renderEnvironment/RenderEnvironmentContext.js.map +1 -1
  640. package/lib/renderEnvironment/RenderEnvironmentDecorator.js.map +1 -1
  641. package/lib/rootNode/getRootNode.js.map +1 -1
  642. package/lib/rootNode/rootNodeDecorator.js.map +1 -1
  643. package/lib/shadowDom/isShadowRoot.d.ts +6 -0
  644. package/lib/shadowDom/isShadowRoot.js +17 -0
  645. package/lib/shadowDom/isShadowRoot.js.map +1 -0
  646. package/lib/size/SizeControlContext.js.map +1 -1
  647. package/lib/size/SizeDecorator.js +1 -1
  648. package/lib/size/SizeDecorator.js.map +1 -1
  649. package/lib/size/useSizeControl.js.map +1 -1
  650. package/lib/styles/ColorFunctions.js +2 -2
  651. package/lib/styles/ColorFunctions.js.map +1 -1
  652. package/lib/theming/AnimationKeyframes.js.map +1 -1
  653. package/lib/theming/Emotion.d.ts +17 -1
  654. package/lib/theming/Emotion.js +16 -5
  655. package/lib/theming/Emotion.js.map +1 -1
  656. package/lib/theming/ThemeFactory.js +1 -1
  657. package/lib/theming/ThemeFactory.js.map +1 -1
  658. package/lib/theming/ThemeHelpers.js.map +1 -1
  659. package/lib/theming/useTheme.js.map +1 -1
  660. package/lib/types/polymorphic-component.d.ts +1 -1
  661. package/lib/types/polymorphic-component.js.map +1 -1
  662. package/lib/utils.d.ts +8 -8
  663. package/lib/utils.js.map +1 -1
  664. package/package.json +14 -23
@@ -42,18 +42,18 @@ var __rest = (this && this.__rest) || function (s, e) {
42
42
  return t;
43
43
  };
44
44
  import React from 'react';
45
+ import { InputDataTids, calculateClearCrossShowedState } from '../../components/Input/index.js';
46
+ import { getStyles as getInputStyles } from '../../components/Input/Input.styles.js';
45
47
  import { InputLayout } from '../../components/Input/InputLayout/InputLayout.js';
46
48
  import { DEFAULT_WIDTH, Textarea } from '../../components/Textarea/index.js';
47
49
  import { getStyles as getTextareaStyles } from '../../components/Textarea/Textarea.styles.js';
48
- import { ThemeContext } from '../../lib/theming/ThemeContext.js';
49
- import { ThemeFactory } from '../../lib/theming/ThemeFactory.js';
50
- import { getRootNode, rootNode } from '../../lib/rootNode/index.js';
51
- import { getStyles as getInputStyles } from '../../components/Input/Input.styles.js';
52
50
  import { createPropsGetter } from '../../lib/createPropsGetter.js';
53
51
  import { isTestEnv } from '../../lib/currentEnvironment.js';
54
- import { calculateClearCrossShowedState, InputDataTids } from '../../components/Input/index.js';
55
- import { ClearCrossIcon } from '../ClearCrossIcon/ClearCrossIcon.js';
56
52
  import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
53
+ import { getRootNode, rootNode } from '../../lib/rootNode/index.js';
54
+ import { ThemeContext } from '../../lib/theming/ThemeContext.js';
55
+ import { ThemeFactory } from '../../lib/theming/ThemeFactory.js';
56
+ import { ClearCrossIcon } from '../ClearCrossIcon/ClearCrossIcon.js';
57
57
  import { getStyles } from './InternalTextareaWithLayout.styles.js';
58
58
  var InternalTextareaWithLayout = /** @class */ (function (_super) {
59
59
  __extends(InternalTextareaWithLayout, _super);
@@ -1 +1 @@
1
- {"version":3,"file":"InternalTextareaWithLayout.js","sourceRoot":"","sources":["../../../internal/InternalTextareaWithLayout/InternalTextareaWithLayout.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport type { InputProps } from '../../components/Input/index.js';\nimport { InputLayout } from '../../components/Input/InputLayout/InputLayout.js';\nimport { DEFAULT_WIDTH, Textarea } from '../../components/Textarea/index.js';\nimport type { TextareaProps } from '../../components/Textarea/index.js';\nimport { getStyles as getTextareaStyles } from '../../components/Textarea/Textarea.styles.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { getStyles as getInputStyles } from '../../components/Input/Input.styles.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isTestEnv } from '../../lib/currentEnvironment.js';\nimport { calculateClearCrossShowedState, InputDataTids } from '../../components/Input/index.js';\nimport { ClearCrossIcon } from '../ClearCrossIcon/ClearCrossIcon.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\n\nimport { getStyles } from './InternalTextareaWithLayout.styles.js';\n\ninterface InternalTextareaWithLayoutProps\n extends TextareaProps,\n Pick<InputProps, 'leftIcon' | 'rightIcon' | 'align' | 'borderless' | 'showClearIcon'> {}\n\ninterface InternalTextareaWithLayoutState {\n focused: boolean;\n hovered: boolean;\n clearCrossShowed: boolean;\n}\n\n@withRenderEnvironment\n@rootNode\nexport class InternalTextareaWithLayout extends React.Component<\n InternalTextareaWithLayoutProps,\n InternalTextareaWithLayoutState\n> {\n public static __KONTUR_REACT_UI__ = 'InternalTextareaWithLayout';\n private wrappedComponentRef = React.createRef<Textarea>();\n private theme!: Theme;\n private styles!: ReturnType<typeof getStyles>;\n private inputStyles!: ReturnType<typeof getInputStyles>;\n private textareaStyles!: ReturnType<typeof getTextareaStyles>;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private getProps = createPropsGetter(Textarea.defaultProps);\n\n public componentDidUpdate(prevProps: Readonly<InternalTextareaWithLayoutProps>) {\n const { focused, hovered } = this.state;\n if (Boolean(prevProps.value) !== Boolean(this.props.value)) {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused, hovered }) });\n }\n }\n\n private getClearCrossShowed = ({ focused, hovered }: { focused?: boolean; hovered?: boolean }): boolean => {\n if (this.props.disabled) {\n return false;\n }\n return calculateClearCrossShowedState({\n showClearIcon: this.getProps().showClearIcon || 'never',\n notEmptyValue: Boolean(this.props.value),\n focused,\n hovered,\n });\n };\n\n public state: InternalTextareaWithLayoutState = {\n focused: false,\n hovered: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: false }),\n };\n\n public focus(): void {\n this.wrappedComponentRef.current?.focus();\n }\n public blur(): void {\n this.wrappedComponentRef.current?.blur();\n }\n public setSelectionRange(start: number, end: number) {\n this.wrappedComponentRef.current?.setSelectionRange(start, end);\n }\n public selectAll() {\n this.wrappedComponentRef.current?.selectAll();\n }\n public getNode() {\n return this.wrappedComponentRef.current?.getNode();\n }\n\n public render() {\n this.styles = getStyles(this.emotion);\n this.inputStyles = getInputStyles(this.emotion);\n this.textareaStyles = getTextareaStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <span data-tid={'InternalTextareaWithLayout'}>{this.renderLayout()}</span>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getTextareaSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return this.textareaStyles.textareaLarge(this.theme);\n case 'medium':\n return this.textareaStyles.textareaMedium(this.theme);\n case 'small':\n default:\n return this.textareaStyles.textareaSmall(this.theme);\n }\n }\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return this.textareaStyles.rootLarge(this.theme);\n case 'medium':\n return this.textareaStyles.rootMedium(this.theme);\n case 'small':\n default:\n return this.textareaStyles.rootSmall(this.theme);\n }\n }\n\n private handleClearInput = () => {\n if (this.wrappedComponentRef.current) {\n this.wrappedComponentRef.current.clear();\n\n if (!this.state.focused) {\n this.wrappedComponentRef.current.focus();\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange('');\n }\n };\n\n private getRightIcon = () => {\n const { size, rightIcon } = this.props;\n\n return this.state.clearCrossShowed ? (\n <ClearCrossIcon data-tid={InputDataTids.clearCross} size={size} onClick={this.handleClearInput} />\n ) : (\n rightIcon\n );\n };\n\n private handleMouseEnter = () => {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: true }) });\n };\n\n private handleMouseOut = () => {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: false }) });\n };\n\n private renderLayout = () => {\n const labelProps = {\n className: this.cx(\n this.styles.contentWrapper(),\n this.textareaStyles.textarea(this.theme),\n this.getTextareaSizeClassName(),\n this.getRootSizeClassName(),\n {\n [this.inputStyles.focus(this.theme)]: this.state.focused && !this.props.warning && !this.props.error,\n [this.inputStyles.borderless()]: this.props.borderless && !this.state.focused,\n [this.textareaStyles.disabled(this.theme)]: this.props.disabled,\n [this.textareaStyles.warning(this.theme)]: this.props.warning,\n [this.textareaStyles.error(this.theme)]: this.props.error,\n },\n ),\n style: { width: this.props.width || DEFAULT_WIDTH, minWidth: '0', position: 'relative' as const },\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseOut,\n onClick: this.handleLayoutClick,\n };\n return (\n <InputLayout\n leftIcon={this.props.leftIcon}\n rightIcon={this.getRightIcon()}\n labelProps={labelProps}\n context={{ disabled: this.props.disabled, focused: this.state.focused, size: this.getProps().size }}\n tag=\"span\"\n >\n {this.renderTextarea()}\n </InputLayout>\n );\n };\n\n private get preparedTheme(): Theme {\n return ThemeFactory.create(\n {\n textareaBorderWidth: '0px',\n textareaPaddingXSmall: '0px',\n textareaPaddingXMedium: '0px',\n textareaPaddingXLarge: '0px',\n textareaPaddingYSmall: '0px',\n textareaPaddingYMedium: '0px',\n textareaPaddingYLarge: '0px',\n textareaOutlineWidth: '0px',\n textareaShadow: 'none',\n textareaDisabledBg: 'transparent',\n textareaBg: 'transparent',\n },\n this.theme,\n );\n }\n\n private renderTextarea = () => {\n const { leftIcon, rightIcon, borderless, ...textareaProps } = this.props;\n return (\n <ThemeContext.Provider value={this.preparedTheme}>\n <Textarea\n {...(isTestEnv ? { spellCheck: false } : {})}\n {...textareaProps}\n width={'100%'}\n ref={this.wrappedComponentRef}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </ThemeContext.Provider>\n );\n };\n\n private handleLayoutClick = () => {\n this.wrappedComponentRef.current?.focus();\n };\n private handleBlur = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n if (getRootNode(this)?.contains(event.relatedTarget)) {\n this.setState({ focused: false });\n } else {\n this.setState({\n focused: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: false, hovered: this.state.hovered }),\n });\n this.props.onBlur?.(event);\n }\n };\n private handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n this.setState({\n focused: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: true, hovered: this.state.hovered }),\n });\n this.props.onFocus?.(event);\n };\n}\n"]}
1
+ {"version":3,"file":"InternalTextareaWithLayout.js","sourceRoot":"","sources":["../../../internal/InternalTextareaWithLayout/InternalTextareaWithLayout.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { InputDataTids, calculateClearCrossShowedState } from '../../components/Input/index.js';\nimport type { InputProps } from '../../components/Input/index.js';\nimport { getStyles as getInputStyles } from '../../components/Input/Input.styles.js';\nimport { InputLayout } from '../../components/Input/InputLayout/InputLayout.js';\nimport { DEFAULT_WIDTH, Textarea } from '../../components/Textarea/index.js';\nimport type { TextareaProps } from '../../components/Textarea/index.js';\nimport { getStyles as getTextareaStyles } from '../../components/Textarea/Textarea.styles.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isTestEnv } from '../../lib/currentEnvironment.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory.js';\nimport { ClearCrossIcon } from '../ClearCrossIcon/ClearCrossIcon.js';\nimport { getStyles } from './InternalTextareaWithLayout.styles.js';\n\ninterface InternalTextareaWithLayoutProps\n extends TextareaProps, Pick<InputProps, 'leftIcon' | 'rightIcon' | 'align' | 'borderless' | 'showClearIcon'> {}\n\ninterface InternalTextareaWithLayoutState {\n focused: boolean;\n hovered: boolean;\n clearCrossShowed: boolean;\n}\n\n@withRenderEnvironment\n@rootNode\nexport class InternalTextareaWithLayout extends React.Component<\n InternalTextareaWithLayoutProps,\n InternalTextareaWithLayoutState\n> {\n public static __KONTUR_REACT_UI__ = 'InternalTextareaWithLayout';\n private wrappedComponentRef = React.createRef<Textarea>();\n private theme!: Theme;\n private styles!: ReturnType<typeof getStyles>;\n private inputStyles!: ReturnType<typeof getInputStyles>;\n private textareaStyles!: ReturnType<typeof getTextareaStyles>;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private getProps = createPropsGetter(Textarea.defaultProps);\n\n public componentDidUpdate(prevProps: Readonly<InternalTextareaWithLayoutProps>) {\n const { focused, hovered } = this.state;\n if (Boolean(prevProps.value) !== Boolean(this.props.value)) {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused, hovered }) });\n }\n }\n\n private getClearCrossShowed = ({ focused, hovered }: { focused?: boolean; hovered?: boolean }): boolean => {\n if (this.props.disabled) {\n return false;\n }\n return calculateClearCrossShowedState({\n showClearIcon: this.getProps().showClearIcon || 'never',\n notEmptyValue: Boolean(this.props.value),\n focused,\n hovered,\n });\n };\n\n public state: InternalTextareaWithLayoutState = {\n focused: false,\n hovered: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: false }),\n };\n\n public focus(): void {\n this.wrappedComponentRef.current?.focus();\n }\n public blur(): void {\n this.wrappedComponentRef.current?.blur();\n }\n public setSelectionRange(start: number, end: number) {\n this.wrappedComponentRef.current?.setSelectionRange(start, end);\n }\n public selectAll() {\n this.wrappedComponentRef.current?.selectAll();\n }\n public getNode() {\n return this.wrappedComponentRef.current?.getNode();\n }\n\n public render() {\n this.styles = getStyles(this.emotion);\n this.inputStyles = getInputStyles(this.emotion);\n this.textareaStyles = getTextareaStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <span data-tid={'InternalTextareaWithLayout'}>{this.renderLayout()}</span>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getTextareaSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return this.textareaStyles.textareaLarge(this.theme);\n case 'medium':\n return this.textareaStyles.textareaMedium(this.theme);\n case 'small':\n default:\n return this.textareaStyles.textareaSmall(this.theme);\n }\n }\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return this.textareaStyles.rootLarge(this.theme);\n case 'medium':\n return this.textareaStyles.rootMedium(this.theme);\n case 'small':\n default:\n return this.textareaStyles.rootSmall(this.theme);\n }\n }\n\n private handleClearInput = () => {\n if (this.wrappedComponentRef.current) {\n this.wrappedComponentRef.current.clear();\n\n if (!this.state.focused) {\n this.wrappedComponentRef.current.focus();\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange('');\n }\n };\n\n private getRightIcon = () => {\n const { size, rightIcon } = this.props;\n\n return this.state.clearCrossShowed ? (\n <ClearCrossIcon data-tid={InputDataTids.clearCross} size={size} onClick={this.handleClearInput} />\n ) : (\n rightIcon\n );\n };\n\n private handleMouseEnter = () => {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: true }) });\n };\n\n private handleMouseOut = () => {\n this.setState({ clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: false }) });\n };\n\n private renderLayout = () => {\n const labelProps = {\n className: this.cx(\n this.styles.contentWrapper(),\n this.textareaStyles.textarea(this.theme),\n this.getTextareaSizeClassName(),\n this.getRootSizeClassName(),\n {\n [this.inputStyles.focus(this.theme)]: this.state.focused && !this.props.warning && !this.props.error,\n [this.inputStyles.borderless()]: this.props.borderless && !this.state.focused,\n [this.textareaStyles.disabled(this.theme)]: this.props.disabled,\n [this.textareaStyles.warning(this.theme)]: this.props.warning,\n [this.textareaStyles.error(this.theme)]: this.props.error,\n },\n ),\n style: { width: this.props.width || DEFAULT_WIDTH, minWidth: '0', position: 'relative' as const },\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseOut,\n onClick: this.handleLayoutClick,\n };\n return (\n <InputLayout\n leftIcon={this.props.leftIcon}\n rightIcon={this.getRightIcon()}\n labelProps={labelProps}\n context={{ disabled: this.props.disabled, focused: this.state.focused, size: this.getProps().size }}\n tag=\"span\"\n >\n {this.renderTextarea()}\n </InputLayout>\n );\n };\n\n private get preparedTheme(): Theme {\n return ThemeFactory.create(\n {\n textareaBorderWidth: '0px',\n textareaPaddingXSmall: '0px',\n textareaPaddingXMedium: '0px',\n textareaPaddingXLarge: '0px',\n textareaPaddingYSmall: '0px',\n textareaPaddingYMedium: '0px',\n textareaPaddingYLarge: '0px',\n textareaOutlineWidth: '0px',\n textareaShadow: 'none',\n textareaDisabledBg: 'transparent',\n textareaBg: 'transparent',\n },\n this.theme,\n );\n }\n\n private renderTextarea = () => {\n const { leftIcon, rightIcon, borderless, ...textareaProps } = this.props;\n return (\n <ThemeContext.Provider value={this.preparedTheme}>\n <Textarea\n {...(isTestEnv ? { spellCheck: false } : {})}\n {...textareaProps}\n width={'100%'}\n ref={this.wrappedComponentRef}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </ThemeContext.Provider>\n );\n };\n\n private handleLayoutClick = () => {\n this.wrappedComponentRef.current?.focus();\n };\n private handleBlur = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n if (getRootNode(this)?.contains(event.relatedTarget)) {\n this.setState({ focused: false });\n } else {\n this.setState({\n focused: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: false, hovered: this.state.hovered }),\n });\n this.props.onBlur?.(event);\n }\n };\n private handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n this.setState({\n focused: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: true, hovered: this.state.hovered }),\n });\n this.props.onFocus?.(event);\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MaskCharLowLine.js","sourceRoot":"","sources":["../../../internal/MaskCharLowLine/MaskCharLowLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAE9D,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,OAAO,8BAAM,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,IAAG,kBAAkB,CAAQ,CAAC;AACrE,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { useStyles } from '../../lib/renderEnvironment/index.js';\n\nimport { getStyles } from './MaskCharLowLine.styles.js';\n\n/**\n * FIGURE SPACE\n *\n * space equal to tabular width of a font this is equivalent to the digit width of fonts with fixed-width digits\n *\n * @see http://www.fileformat.info/info/unicode/char/2007/index.htm\n */\nexport const MASK_CHAR_EXEMPLAR = String.fromCharCode(0x2007);\n\nexport const MaskCharLowLine = () => {\n const styles = useStyles(getStyles);\n return <span className={styles.root()}>{MASK_CHAR_EXEMPLAR}</span>;\n};\n"]}
1
+ {"version":3,"file":"MaskCharLowLine.js","sourceRoot":"","sources":["../../../internal/MaskCharLowLine/MaskCharLowLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,IAAM,kBAAkB,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AAE9D,MAAM,CAAC,IAAM,eAAe,GAAG;IAC7B,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,OAAO,8BAAM,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,IAAG,kBAAkB,CAAQ,CAAC;AACrE,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport { useStyles } from '../../lib/renderEnvironment/index.js';\nimport { getStyles } from './MaskCharLowLine.styles.js';\n\n/**\n * FIGURE SPACE\n *\n * space equal to tabular width of a font this is equivalent to the digit width of fonts with fixed-width digits\n *\n * @see http://www.fileformat.info/info/unicode/char/2007/index.htm\n */\nexport const MASK_CHAR_EXEMPLAR = String.fromCharCode(0x2007);\n\nexport const MaskCharLowLine = () => {\n const styles = useStyles(getStyles);\n return <span className={styles.root()}>{MASK_CHAR_EXEMPLAR}</span>;\n};\n"]}
@@ -31,24 +31,24 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
31
31
  return c > 3 && r && Object.defineProperty(target, key, r), r;
32
32
  };
33
33
  import React from 'react';
34
- import { isBrowser } from '../../lib/globalObject.js';
35
- import { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';
34
+ import { MenuItemDataTids } from '../../components/MenuItem/index.js';
36
35
  import { MenuSeparator } from '../../components/MenuSeparator/index.js';
37
- import { ThemeFactory } from '../../lib/theming/ThemeFactory.js';
38
- import { getDOMRect } from '../../lib/dom/getDOMRect.js';
39
36
  import { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';
40
- import { isNonNullable } from '../../lib/utils.js';
41
37
  import { ScrollContainer } from '../../components/ScrollContainer/index.js';
42
- import { MenuItemDataTids } from '../../components/MenuItem/index.js';
43
- import { ThemeContext } from '../../lib/theming/ThemeContext.js';
44
- import { getRootNode, rootNode } from '../../lib/rootNode/index.js';
45
38
  import { createPropsGetter } from '../../lib/createPropsGetter.js';
39
+ import { getDOMRect } from '../../lib/dom/getDOMRect.js';
40
+ import { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';
41
+ import { isBrowser } from '../../lib/globalObject.js';
46
42
  import { isInstanceOf } from '../../lib/isInstanceOf.js';
47
- import { CommonWrapper } from '../CommonWrapper/index.js';
48
43
  import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
44
+ import { getRootNode, rootNode } from '../../lib/rootNode/index.js';
45
+ import { ThemeContext } from '../../lib/theming/ThemeContext.js';
46
+ import { ThemeFactory } from '../../lib/theming/ThemeFactory.js';
47
+ import { isNonNullable } from '../../lib/utils.js';
48
+ import { CommonWrapper } from '../CommonWrapper/index.js';
49
49
  import { getStyles } from './Menu.styles.js';
50
- import { MenuNavigation } from './MenuNavigation.js';
51
50
  import { MenuContext } from './MenuContext.js';
51
+ import { MenuNavigation } from './MenuNavigation.js';
52
52
  export var MenuDataTids = {
53
53
  root: 'Menu__root',
54
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../internal/Menu/Menu.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { CSSProperties, HTMLAttributes } from 'react';\nimport React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isBrowser } from '../../lib/globalObject.js';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';\nimport { MenuSeparator } from '../../components/MenuSeparator/index.js';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory.js';\nimport { getDOMRect } from '../../lib/dom/getDOMRect.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport { isNonNullable } from '../../lib/utils.js';\nimport type { ScrollContainerScrollStateY } from '../../components/ScrollContainer/index.js';\nimport { ScrollContainer } from '../../components/ScrollContainer/index.js';\nimport type { MenuItem } from '../../components/MenuItem/index.js';\nimport { MenuItemDataTids } from '../../components/MenuItem/index.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isInstanceOf } from '../../lib/isInstanceOf.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport { CommonWrapper } from '../CommonWrapper/index.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\n\nimport { getStyles } from './Menu.styles.js';\nimport { MenuNavigation } from './MenuNavigation.js';\nimport { MenuContext } from './MenuContext.js';\n\nexport interface MenuProps extends CommonProps, Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n children: React.ReactNode;\n hasMargin?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n /**\n * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n /**\n * Отключает выравнивание текста пунктов меню относительно иконок в других пунктах.\n */\n preventIconsOffset?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n /**\n * Циклический перебор айтемов меню (по-дефолтну включен)\n */\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\nexport interface MenuState {\n maxHeight: number | string;\n scrollState: ScrollContainerScrollStateY;\n enableIconPadding: boolean;\n}\n\nexport const MenuDataTids = {\n root: 'Menu__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n | 'align'\n | 'width'\n | 'hasMargin'\n | 'maxHeight'\n | 'preventWindowScroll'\n | 'cyclicSelection'\n | 'initialSelectedItemIndex'\n >\n>;\n\n@withRenderEnvironment\n@responsiveLayout\n@rootNode\nexport class Menu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n public static displayName = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasMargin: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\n\n public state: MenuState = {\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n enableIconPadding: false,\n };\n\n private globalObject!: GlobalObject;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private isMobileLayout!: boolean;\n private unmounted = false;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n private contentRef = React.createRef<HTMLDivElement>();\n private menuNavigation: MenuNavigation<MenuItem> = new MenuNavigation(this.contentRef, MenuItemDataTids.content);\n\n public componentWillUnmount(): void {\n this.unmounted = true;\n }\n\n public componentDidMount(): void {\n this.setInitialSelection();\n this.calculateMaxHeight();\n this.unmounted = false;\n }\n\n public componentDidUpdate(prevProps: MenuProps): void {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus(): void {\n this.focusOnRootElement();\n }\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isInstanceOf(rootNode, this.globalObject.HTMLElement)) {\n rootNode?.focus();\n }\n };\n\n public render() {\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n this.menuNavigation.highlightedItem?.navigate();\n return this.menuNavigation.select(event);\n }\n\n /**\n * @public\n */\n public reset(): void {\n this.menuNavigation.reset();\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n return !!this.menuNavigation.highlightedItem;\n }\n\n public highlightItem(index: number) {\n this.menuNavigation.highlightByIndex(index);\n }\n\n private renderMain() {\n if (this.isEmpty()) {\n return null;\n }\n const { hasMargin, maxHeight, preventWindowScroll } = this.getProps();\n\n const offsetY = {\n top: `${this.theme.scrollContainerScrollBarOffsetY}`,\n right: 0,\n bottom: `${this.theme.scrollContainerScrollBarOffsetY}`,\n };\n\n const isMobile = this.isMobileLayout;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={MenuDataTids.root}\n className={this.cx(getAlignRightClass(this.props, this.cx, this.styles), {\n [this.styles.root(this.theme)]: true,\n [this.styles.hasMargin(this.theme)]: hasMargin,\n [this.styles.mobileRoot(this.theme)]: isMobile,\n [this.styles.shadow(this.theme)]: !isMobile,\n })}\n style={this.getStyle(this.props)}\n id={this.props.id}\n onKeyDown={this.handleKeyDown}\n tabIndex={0}\n >\n {this.props.header && this.renderHeader()}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChangeY={this.handleScrollStateChange}\n disabled={this.props.disableScrollContainer}\n offsetY={offsetY}\n >\n <div\n className={this.cx({\n [this.styles.scrollContainer(this.theme)]: true,\n [this.styles.scrollContainerMobile(this.theme)]: isMobile,\n })}\n ref={this.contentRef}\n >\n <MenuContext.Provider\n value={{\n navigation: this.menuNavigation,\n onItemClick: this.props.onItemClick,\n enableIconPadding: this.state.enableIconPadding,\n setEnableIconPadding: this.setEnableIconPadding,\n }}\n >\n {this.props.children}\n </MenuContext.Provider>\n </div>\n </ScrollContainer>\n {this.props.footer && this.renderFooter()}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderHeader = () => {\n return (\n <div\n className={this.cx({\n [this.styles.wrapper()]: true,\n [this.styles.headerWrapper()]: true,\n })}\n ref={(el) => {\n this.header = el;\n }}\n >\n <div className={this.styles.contentWrapper()}>{this.props.header}</div>\n <div className={this.styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n return (\n <div\n className={this.cx({\n [this.styles.wrapper()]: true,\n [this.styles.footerWrapper()]: true,\n })}\n ref={(el) => {\n this.footer = el;\n }}\n >\n <div className={this.styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={this.styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeContext.Provider>\n );\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.down();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && isBrowser(this.globalObject) && rootNode) {\n const rootElementMaxHeight = this.globalObject.getComputedStyle?.(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private scrollToSelected = () => {\n const highlightedItem = this.menuNavigation.highlightedItem;\n if (this.scrollContainer && highlightedItem) {\n const rootNode = getRootNode(highlightedItem);\n // TODO: Remove this check once IF-647 is resolved\n if (isInstanceOf(rootNode, this.globalObject.HTMLElement)) {\n this.scrollContainer.scrollTo(rootNode);\n }\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private scroll = (nextIndex: number) => {\n switch (nextIndex) {\n case 0:\n this.scrollToTop?.();\n break;\n case this.menuNavigation.items.length - 1:\n this.scrollToBottom?.();\n break;\n default:\n this.scrollToSelected?.();\n }\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n const nextIndex = this.menuNavigation.move(step, this.getProps().cyclicSelection);\n this.scroll(nextIndex);\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(event)) {\n event.preventDefault();\n this.up();\n } else if (isKeyArrowDown(event)) {\n event.preventDefault();\n this.down();\n } else if (isKeyEnter(event)) {\n this.menuNavigation.select(event);\n }\n };\n\n private getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: this.state.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: this.state.maxHeight,\n };\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollStateY) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\n };\n\n private setEnableIconPadding = (isIconPaddingEnabled: boolean) => {\n !this.getProps().preventIconsOffset && this.setState({ enableIconPadding: isIconPaddingEnabled });\n };\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n\nconst getAlignRightClass = (props: MenuProps, cx: Emotion['cx'], styles: ReturnType<typeof getStyles>) => {\n if (props.align === 'right') {\n return cx(styles.alignRight());\n }\n\n return null;\n};\n"]}
1
+ {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../internal/Menu/Menu.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport type { CSSProperties, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport type { MenuItem } from '../../components/MenuItem/index.js';\nimport { MenuItemDataTids } from '../../components/MenuItem/index.js';\nimport { MenuSeparator } from '../../components/MenuSeparator/index.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport { ScrollContainer } from '../../components/ScrollContainer/index.js';\nimport type { ScrollContainerScrollStateY } from '../../components/ScrollContainer/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { getDOMRect } from '../../lib/dom/getDOMRect.js';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isBrowser } from '../../lib/globalObject.js';\nimport { isInstanceOf } from '../../lib/isInstanceOf.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory.js';\nimport { isNonNullable } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport { CommonWrapper } from '../CommonWrapper/index.js';\nimport { getStyles } from './Menu.styles.js';\nimport { MenuContext } from './MenuContext.js';\nimport { MenuNavigation } from './MenuNavigation.js';\n\nexport interface MenuProps extends CommonProps, Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n children: React.ReactNode;\n hasMargin?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n /**\n * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n /**\n * Отключает выравнивание текста пунктов меню относительно иконок в других пунктах.\n */\n preventIconsOffset?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n /**\n * Циклический перебор айтемов меню (по-дефолтну включен)\n */\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\nexport interface MenuState {\n maxHeight: number | string;\n scrollState: ScrollContainerScrollStateY;\n enableIconPadding: boolean;\n}\n\nexport const MenuDataTids = {\n root: 'Menu__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n | 'align'\n | 'width'\n | 'hasMargin'\n | 'maxHeight'\n | 'preventWindowScroll'\n | 'cyclicSelection'\n | 'initialSelectedItemIndex'\n >\n>;\n\n@withRenderEnvironment\n@responsiveLayout\n@rootNode\nexport class Menu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n public static displayName = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasMargin: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\n\n public state: MenuState = {\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n enableIconPadding: false,\n };\n\n private globalObject!: GlobalObject;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private isMobileLayout!: boolean;\n private unmounted = false;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n private contentRef = React.createRef<HTMLDivElement>();\n private menuNavigation: MenuNavigation<MenuItem> = new MenuNavigation(this.contentRef, MenuItemDataTids.content);\n\n public componentWillUnmount(): void {\n this.unmounted = true;\n }\n\n public componentDidMount(): void {\n this.setInitialSelection();\n this.calculateMaxHeight();\n this.unmounted = false;\n }\n\n public componentDidUpdate(prevProps: MenuProps): void {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus(): void {\n this.focusOnRootElement();\n }\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isInstanceOf(rootNode, this.globalObject.HTMLElement)) {\n rootNode?.focus();\n }\n };\n\n public render() {\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n this.menuNavigation.highlightedItem?.navigate();\n return this.menuNavigation.select(event);\n }\n\n /**\n * @public\n */\n public reset(): void {\n this.menuNavigation.reset();\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n return !!this.menuNavigation.highlightedItem;\n }\n\n public highlightItem(index: number) {\n this.menuNavigation.highlightByIndex(index);\n }\n\n private renderMain() {\n if (this.isEmpty()) {\n return null;\n }\n const { hasMargin, maxHeight, preventWindowScroll } = this.getProps();\n\n const offsetY = {\n top: `${this.theme.scrollContainerScrollBarOffsetY}`,\n right: 0,\n bottom: `${this.theme.scrollContainerScrollBarOffsetY}`,\n };\n\n const isMobile = this.isMobileLayout;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={MenuDataTids.root}\n className={this.cx(getAlignRightClass(this.props, this.cx, this.styles), {\n [this.styles.root(this.theme)]: true,\n [this.styles.hasMargin(this.theme)]: hasMargin,\n [this.styles.mobileRoot(this.theme)]: isMobile,\n [this.styles.shadow(this.theme)]: !isMobile,\n })}\n style={this.getStyle(this.props)}\n id={this.props.id}\n onKeyDown={this.handleKeyDown}\n tabIndex={0}\n >\n {this.props.header && this.renderHeader()}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChangeY={this.handleScrollStateChange}\n disabled={this.props.disableScrollContainer}\n offsetY={offsetY}\n >\n <div\n className={this.cx({\n [this.styles.scrollContainer(this.theme)]: true,\n [this.styles.scrollContainerMobile(this.theme)]: isMobile,\n })}\n ref={this.contentRef}\n >\n <MenuContext.Provider\n value={{\n navigation: this.menuNavigation,\n onItemClick: this.props.onItemClick,\n enableIconPadding: this.state.enableIconPadding,\n setEnableIconPadding: this.setEnableIconPadding,\n }}\n >\n {this.props.children}\n </MenuContext.Provider>\n </div>\n </ScrollContainer>\n {this.props.footer && this.renderFooter()}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderHeader = () => {\n return (\n <div\n className={this.cx({\n [this.styles.wrapper()]: true,\n [this.styles.headerWrapper()]: true,\n })}\n ref={(el) => {\n this.header = el;\n }}\n >\n <div className={this.styles.contentWrapper()}>{this.props.header}</div>\n <div className={this.styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n return (\n <div\n className={this.cx({\n [this.styles.wrapper()]: true,\n [this.styles.footerWrapper()]: true,\n })}\n ref={(el) => {\n this.footer = el;\n }}\n >\n <div className={this.styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={this.styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeContext.Provider>\n );\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.down();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && isBrowser(this.globalObject) && rootNode) {\n const rootElementMaxHeight = this.globalObject.getComputedStyle?.(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private scrollToSelected = () => {\n const highlightedItem = this.menuNavigation.highlightedItem;\n if (this.scrollContainer && highlightedItem) {\n const rootNode = getRootNode(highlightedItem);\n // TODO: Remove this check once IF-647 is resolved\n if (isInstanceOf(rootNode, this.globalObject.HTMLElement)) {\n this.scrollContainer.scrollTo(rootNode);\n }\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private scroll = (nextIndex: number) => {\n switch (nextIndex) {\n case 0:\n this.scrollToTop?.();\n break;\n case this.menuNavigation.items.length - 1:\n this.scrollToBottom?.();\n break;\n default:\n this.scrollToSelected?.();\n }\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n const nextIndex = this.menuNavigation.move(step, this.getProps().cyclicSelection);\n this.scroll(nextIndex);\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(event)) {\n event.preventDefault();\n this.up();\n } else if (isKeyArrowDown(event)) {\n event.preventDefault();\n this.down();\n } else if (isKeyEnter(event)) {\n this.menuNavigation.select(event);\n }\n };\n\n private getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: this.state.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: this.state.maxHeight,\n };\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollStateY) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\n };\n\n private setEnableIconPadding = (isIconPaddingEnabled: boolean) => {\n !this.getProps().preventIconsOffset && this.setState({ enableIconPadding: isIconPaddingEnabled });\n };\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n\nconst getAlignRightClass = (props: MenuProps, cx: Emotion['cx'], styles: ReturnType<typeof getStyles>) => {\n if (props.align === 'right') {\n return cx(styles.alignRight());\n }\n\n return null;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuContext.js","sourceRoot":"","sources":["../../../internal/Menu/MenuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAkB;IAC9D,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,KAAK;CACzB,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport type { MenuItem } from '../../components/MenuItem/index.js';\n\nimport type { MenuNavigation } from './MenuNavigation.js';\n\nexport interface MenuContextType {\n navigation: MenuNavigation<MenuItem> | null;\n enableIconPadding: boolean;\n setEnableIconPadding?: (isIconPaddingEnabled: boolean) => void;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n}\n\nexport const MenuContext = React.createContext<MenuContextType>({\n navigation: null,\n enableIconPadding: false,\n});\n"]}
1
+ {"version":3,"file":"MenuContext.js","sourceRoot":"","sources":["../../../internal/Menu/MenuContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAY1B,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAkB;IAC9D,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,KAAK;CACzB,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport type { MenuItem } from '../../components/MenuItem/index.js';\nimport type { MenuNavigation } from './MenuNavigation.js';\n\nexport interface MenuContextType {\n navigation: MenuNavigation<MenuItem> | null;\n enableIconPadding: boolean;\n setEnableIconPadding?: (isIconPaddingEnabled: boolean) => void;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n}\n\nexport const MenuContext = React.createContext<MenuContextType>({\n navigation: null,\n enableIconPadding: false,\n});\n"]}
@@ -1,5 +1,5 @@
1
- import type { RefObject } from 'react';
2
1
  import type React from 'react';
2
+ import type { RefObject } from 'react';
3
3
  interface Highlightable {
4
4
  highlight(): void;
5
5
  unhighlight(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"MenuNavigation.js","sourceRoot":"","sources":["../../../internal/Menu/MenuNavigation.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { RefObject } from 'react';\nimport type React from 'react';\n\ninterface Highlightable {\n highlight(): void;\n unhighlight(): void;\n select(...args: unknown[]): void;\n isEnabled(): boolean;\n}\n\nexport class MenuNavigation<T extends Highlightable> {\n private readonly root: RefObject<HTMLDivElement | null> | null;\n private readonly itemsContentDataTid: string;\n private tagsAndItems: WeakMap<Element, T> = new WeakMap();\n\n public highlightedItem: T | null = null;\n public items: T[] = [];\n\n constructor(root: RefObject<HTMLDivElement | null> | null, itemsContentDataTid: string) {\n this.root = root;\n this.itemsContentDataTid = itemsContentDataTid;\n }\n\n private update() {\n if (this.root?.current) {\n const menuItems = Array.from(this.root.current.querySelectorAll(`span[data-tid=\"${this.itemsContentDataTid}\"]`));\n this.items = menuItems.map((item) => this.tagsAndItems.get(item)).filter((item): item is T => item !== undefined);\n }\n }\n\n public add(tag: Element, item: T) {\n this.tagsAndItems.set(tag, item);\n if (this.root?.current) {\n this.update();\n } else {\n this.items.push(item);\n }\n }\n\n public remove(tag: HTMLElement) {\n this.tagsAndItems.delete(tag);\n this.update();\n }\n\n public move(step: number, isCyclic: boolean) {\n const enabledItems = this.getEnabledItems();\n const currentIndex = this.highlightedItem ? enabledItems.indexOf(this.highlightedItem) : -1;\n const minIndex = 0;\n const maxIndex = enabledItems.length - 1;\n let nextIndex = currentIndex + step;\n if (nextIndex < minIndex) {\n nextIndex = isCyclic ? maxIndex : minIndex;\n }\n if (nextIndex > maxIndex) {\n nextIndex = isCyclic ? minIndex : maxIndex;\n }\n\n const nextItem = enabledItems[nextIndex];\n\n this.highlight(nextItem);\n\n return nextIndex;\n }\n\n public highlight(item: T | null) {\n const enabledItems = this.getEnabledItems();\n enabledItems.forEach((_item) => {\n if (item === _item) {\n _item.highlight();\n this.highlightedItem = item;\n } else {\n _item.unhighlight();\n }\n });\n }\n\n public highlightByIndex(index: number) {\n this.items.forEach((_item, i) => {\n if (index === i && _item.isEnabled()) {\n _item.highlight();\n this.highlightedItem = _item;\n } else {\n _item.unhighlight();\n }\n });\n }\n\n public unhighlight() {\n this.highlightedItem?.unhighlight();\n this.highlightedItem = null;\n }\n\n public select(event: React.SyntheticEvent<HTMLElement>) {\n if (this.highlightedItem) {\n this.highlightedItem.select(event);\n return true;\n }\n return false;\n }\n\n public reset(): void {\n this.highlight(null);\n this.highlightedItem = null;\n }\n\n private getEnabledItems = () => {\n return this.items.filter((item) => item.isEnabled());\n };\n}\n"]}
1
+ {"version":3,"file":"MenuNavigation.js","sourceRoot":"","sources":["../../../internal/Menu/MenuNavigation.tsx"],"names":[],"mappings":"AAUA;IAQE,wBAAY,IAA6C,EAAE,mBAA2B;QAAtF,iBAGC;QARO,iBAAY,GAAwB,IAAI,OAAO,EAAE,CAAC;QAEnD,oBAAe,GAAa,IAAI,CAAC;QACjC,UAAK,GAAQ,EAAE,CAAC;QAyFf,oBAAe,GAAG;YACxB,OAAO,KAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,SAAS,EAAE,EAAhB,CAAgB,CAAC,CAAC;QACvD,CAAC,CAAC;QAxFA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACjD,CAAC;IAEO,+BAAM,GAAd;QAAA,iBAKC;;QAJC,IAAI,MAAA,IAAI,CAAC,IAAI,0CAAE,OAAO,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,0BAAkB,IAAI,CAAC,mBAAmB,QAAI,CAAC,CAAC,CAAC;YACjH,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAA3B,CAA2B,CAAC,CAAC,MAAM,CAAC,UAAC,IAAI,IAAgB,OAAA,IAAI,KAAK,SAAS,EAAlB,CAAkB,CAAC,CAAC;QACpH,CAAC;IACH,CAAC;IAEM,4BAAG,GAAV,UAAW,GAAY,EAAE,IAAO;;QAC9B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,MAAA,IAAI,CAAC,IAAI,0CAAE,OAAO,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAEM,+BAAM,GAAb,UAAc,GAAgB;QAC5B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAEM,6BAAI,GAAX,UAAY,IAAY,EAAE,QAAiB;QACzC,IAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,IAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,IAAM,QAAQ,GAAG,CAAC,CAAC;QACnB,IAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACzC,IAAI,SAAS,GAAG,YAAY,GAAG,IAAI,CAAC;QACpC,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;YACzB,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7C,CAAC;QACD,IAAI,SAAS,GAAG,QAAQ,EAAE,CAAC;YACzB,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7C,CAAC;QAED,IAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QAEzC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAEzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,kCAAS,GAAhB,UAAiB,IAAc;QAA/B,iBAUC;QATC,IAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,YAAY,CAAC,OAAO,CAAC,UAAC,KAAK;YACzB,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,KAAK,CAAC,SAAS,EAAE,CAAC;gBAClB,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,yCAAgB,GAAvB,UAAwB,KAAa;QAArC,iBASC;QARC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,CAAC;YAC1B,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;gBACrC,KAAK,CAAC,SAAS,EAAE,CAAC;gBAClB,KAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,oCAAW,GAAlB;;QACE,MAAA,IAAI,CAAC,eAAe,0CAAE,WAAW,EAAE,CAAC;QACpC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC9B,CAAC;IAEM,+BAAM,GAAb,UAAc,KAAwC;QACpD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,8BAAK,GAAZ;QACE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC9B,CAAC;IAKH,qBAAC;AAAD,CAAC,AAlGD,IAkGC","sourcesContent":["import type React from 'react';\nimport type { RefObject } from 'react';\n\ninterface Highlightable {\n highlight(): void;\n unhighlight(): void;\n select(...args: unknown[]): void;\n isEnabled(): boolean;\n}\n\nexport class MenuNavigation<T extends Highlightable> {\n private readonly root: RefObject<HTMLDivElement | null> | null;\n private readonly itemsContentDataTid: string;\n private tagsAndItems: WeakMap<Element, T> = new WeakMap();\n\n public highlightedItem: T | null = null;\n public items: T[] = [];\n\n constructor(root: RefObject<HTMLDivElement | null> | null, itemsContentDataTid: string) {\n this.root = root;\n this.itemsContentDataTid = itemsContentDataTid;\n }\n\n private update() {\n if (this.root?.current) {\n const menuItems = Array.from(this.root.current.querySelectorAll(`span[data-tid=\"${this.itemsContentDataTid}\"]`));\n this.items = menuItems.map((item) => this.tagsAndItems.get(item)).filter((item): item is T => item !== undefined);\n }\n }\n\n public add(tag: Element, item: T) {\n this.tagsAndItems.set(tag, item);\n if (this.root?.current) {\n this.update();\n } else {\n this.items.push(item);\n }\n }\n\n public remove(tag: HTMLElement) {\n this.tagsAndItems.delete(tag);\n this.update();\n }\n\n public move(step: number, isCyclic: boolean) {\n const enabledItems = this.getEnabledItems();\n const currentIndex = this.highlightedItem ? enabledItems.indexOf(this.highlightedItem) : -1;\n const minIndex = 0;\n const maxIndex = enabledItems.length - 1;\n let nextIndex = currentIndex + step;\n if (nextIndex < minIndex) {\n nextIndex = isCyclic ? maxIndex : minIndex;\n }\n if (nextIndex > maxIndex) {\n nextIndex = isCyclic ? minIndex : maxIndex;\n }\n\n const nextItem = enabledItems[nextIndex];\n\n this.highlight(nextItem);\n\n return nextIndex;\n }\n\n public highlight(item: T | null) {\n const enabledItems = this.getEnabledItems();\n enabledItems.forEach((_item) => {\n if (item === _item) {\n _item.highlight();\n this.highlightedItem = item;\n } else {\n _item.unhighlight();\n }\n });\n }\n\n public highlightByIndex(index: number) {\n this.items.forEach((_item, i) => {\n if (index === i && _item.isEnabled()) {\n _item.highlight();\n this.highlightedItem = _item;\n } else {\n _item.unhighlight();\n }\n });\n }\n\n public unhighlight() {\n this.highlightedItem?.unhighlight();\n this.highlightedItem = null;\n }\n\n public select(event: React.SyntheticEvent<HTMLElement>) {\n if (this.highlightedItem) {\n this.highlightedItem.select(event);\n return true;\n }\n return false;\n }\n\n public reset(): void {\n this.highlight(null);\n this.highlightedItem = null;\n }\n\n private getEnabledItems = () => {\n return this.items.filter((item) => item.isEnabled());\n };\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import type { CommonProps } from '../CommonWrapper/index.js';
3
2
  import type { SizeProp } from '../../lib/types/props.js';
3
+ import type { CommonProps } from '../CommonWrapper/index.js';
4
4
  export interface MenuMessageProps extends CommonProps {
5
5
  children: React.ReactNode;
6
6
  as?: React.ElementType;
@@ -21,9 +21,9 @@ var __rest = (this && this.__rest) || function (s, e) {
21
21
  return t;
22
22
  };
23
23
  import React, { useContext } from 'react';
24
- import { useEmotion, useStyles } from '../../lib/renderEnvironment/index.js';
25
- import { forwardRefAndName } from '../../lib/forwardRefAndName.js';
26
24
  import { useResponsiveLayout } from '../../components/ResponsiveLayout/index.js';
25
+ import { forwardRefAndName } from '../../lib/forwardRefAndName.js';
26
+ import { useEmotion, useStyles } from '../../lib/renderEnvironment/index.js';
27
27
  import { ThemeContext } from '../../lib/theming/ThemeContext.js';
28
28
  import { getStyles } from './MenuMessage.styles.js';
29
29
  export var MenuMessageDataTids = {
@@ -1 +1 @@
1
- {"version":3,"file":"MenuMessage.js","sourceRoot":"","sources":["../../../internal/MenuMessage/MenuMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAIjE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAQpD,MAAM,CAAC,IAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,mBAAmB;CACjB,CAAC;AAEX,MAAM,CAAC,IAAM,WAAW,GAAG,iBAAiB,CAC1C,aAAa,EACb,UAAC,EAA+D,EAAE,GAAG;;IAAlE,IAAA,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAE,YAAc,EAAd,IAAI,mBAAG,OAAO,KAAA,EAAE,UAAa,EAAT,GAAG,mBAAG,GAAG,KAAA,EAAK,IAAI,cAA7D,uCAA+D,CAAF;IACpD,IAAA,QAAQ,GAAK,mBAAmB,EAAE,SAA1B,CAA2B;IAEnC,IAAA,EAAE,GAAK,UAAU,EAAE,GAAjB,CAAkB;IAC5B,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAEvC,IAAM,2BAA2B,GAAG;QAClC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,OAAO;gBACV,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,KAAK,QAAQ;gBACX,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YACtC,KAAK,OAAO,CAAC;YACb;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,aACF,GAAG,EAAE,GAAG,cACE,mBAAmB,CAAC,IAAI,EAClC,SAAS,EAAE,EAAE,CACX,2BAA2B,EAAE;YAE3B,GAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;YAC1B,GAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAG,QAAQ;iBAEtC,SAAS,CACV,IACG,IAAI,GAEP,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["import React, { useContext } from 'react';\n\nimport { useEmotion, useStyles } from '../../lib/renderEnvironment/index.js';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName.js';\nimport { useResponsiveLayout } from '../../components/ResponsiveLayout/index.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport type { SizeProp } from '../../lib/types/props.js';\n\nimport { getStyles } from './MenuMessage.styles.js';\n\nexport interface MenuMessageProps extends CommonProps {\n children: React.ReactNode;\n as?: React.ElementType;\n size?: SizeProp;\n}\n\nexport const MenuMessageDataTids = {\n root: 'MenuMessage__root',\n} as const;\n\nexport const MenuMessage = forwardRefAndName<HTMLOrSVGElement, MenuMessageProps>(\n 'MenuMessage',\n ({ children, className, size = 'small', as: Tag = 'p', ...rest }, ref) => {\n const { isMobile } = useResponsiveLayout();\n\n const { cx } = useEmotion();\n const styles = useStyles(getStyles);\n const theme = useContext(ThemeContext);\n\n const getMenuMessageSizeClassName = () => {\n switch (size) {\n case 'large':\n return cx(styles.rootLarge(theme));\n case 'medium':\n return cx(styles.rootMedium(theme));\n case 'small':\n default:\n return cx(styles.rootSmall(theme));\n }\n };\n\n return (\n <Tag\n ref={ref}\n data-tid={MenuMessageDataTids.root}\n className={cx(\n getMenuMessageSizeClassName(),\n {\n [styles.root(theme)]: true,\n [styles.rootMobile(theme)]: isMobile,\n },\n className,\n )}\n {...rest}\n >\n {children}\n </Tag>\n );\n },\n);\n"]}
1
+ {"version":3,"file":"MenuMessage.js","sourceRoot":"","sources":["../../../internal/MenuMessage/MenuMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAGjE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAQpD,MAAM,CAAC,IAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE,mBAAmB;CACjB,CAAC;AAEX,MAAM,CAAC,IAAM,WAAW,GAAG,iBAAiB,CAC1C,aAAa,EACb,UAAC,EAA+D,EAAE,GAAG;;IAAlE,IAAA,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAE,YAAc,EAAd,IAAI,mBAAG,OAAO,KAAA,EAAE,UAAa,EAAT,GAAG,mBAAG,GAAG,KAAA,EAAK,IAAI,cAA7D,uCAA+D,CAAF;IACpD,IAAA,QAAQ,GAAK,mBAAmB,EAAE,SAA1B,CAA2B;IAEnC,IAAA,EAAE,GAAK,UAAU,EAAE,GAAjB,CAAkB;IAC5B,IAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,IAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAEvC,IAAM,2BAA2B,GAAG;QAClC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,OAAO;gBACV,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,KAAK,QAAQ;gBACX,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YACtC,KAAK,OAAO,CAAC;YACb;gBACE,OAAO,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,aACF,GAAG,EAAE,GAAG,cACE,mBAAmB,CAAC,IAAI,EAClC,SAAS,EAAE,EAAE,CACX,2BAA2B,EAAE;YAE3B,GAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;YAC1B,GAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAG,QAAQ;iBAEtC,SAAS,CACV,IACG,IAAI,GAEP,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["import React, { useContext } from 'react';\n\nimport { useResponsiveLayout } from '../../components/ResponsiveLayout/index.js';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName.js';\nimport { useEmotion, useStyles } from '../../lib/renderEnvironment/index.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport type { CommonProps } from '../CommonWrapper/index.js';\nimport { getStyles } from './MenuMessage.styles.js';\n\nexport interface MenuMessageProps extends CommonProps {\n children: React.ReactNode;\n as?: React.ElementType;\n size?: SizeProp;\n}\n\nexport const MenuMessageDataTids = {\n root: 'MenuMessage__root',\n} as const;\n\nexport const MenuMessage = forwardRefAndName<HTMLOrSVGElement, MenuMessageProps>(\n 'MenuMessage',\n ({ children, className, size = 'small', as: Tag = 'p', ...rest }, ref) => {\n const { isMobile } = useResponsiveLayout();\n\n const { cx } = useEmotion();\n const styles = useStyles(getStyles);\n const theme = useContext(ThemeContext);\n\n const getMenuMessageSizeClassName = () => {\n switch (size) {\n case 'large':\n return cx(styles.rootLarge(theme));\n case 'medium':\n return cx(styles.rootMedium(theme));\n case 'small':\n default:\n return cx(styles.rootSmall(theme));\n }\n };\n\n return (\n <Tag\n ref={ref}\n data-tid={MenuMessageDataTids.root}\n className={cx(\n getMenuMessageSizeClassName(),\n {\n [styles.root(theme)]: true,\n [styles.rootMobile(theme)]: isMobile,\n },\n className,\n )}\n {...rest}\n >\n {children}\n </Tag>\n );\n },\n);\n"]}
@@ -2,8 +2,8 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
2
2
  if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
3
  return cooked;
4
4
  };
5
- import { memoizeGetStyles } from '../../lib/theming/Emotion.js';
6
5
  import { getMenuItemPaddings } from '../../components/MenuItem/MenuItem.styles.js';
6
+ import { memoizeGetStyles } from '../../lib/theming/Emotion.js';
7
7
  export var getStyles = memoizeGetStyles(function (_a) {
8
8
  var css = _a.css;
9
9
  return ({
@@ -1 +1 @@
1
- {"version":3,"file":"MenuMessage.styles.js","sourceRoot":"","sources":["../../../internal/MenuMessage/MenuMessage.styles.ts"],"names":[],"mappings":";;;;AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,MAAM,CAAC,IAAM,SAAS,GAAG,gBAAgB,CAAC,UAAC,EAAgB;QAAd,GAAG,SAAA;IAAgB,OAAA,CAAC;QAC/D,IAAI,YAAC,CAAQ;YACL,IAAA,KAAyB,mBAAmB,CAAC;gBACjD,gBAAgB,EAAE,CAAC,CAAC,mBAAmB;gBACvC,gBAAgB,EAAE,CAAC,CAAC,mBAAmB;aACxC,CAAC,EAHM,QAAQ,cAAA,EAAE,QAAQ,cAGxB,CAAC;YAEH,OAAO,GAAG,qMAAA,qCAEG,EAAoB,oBACpB,EAAqB,GAAI,EAAQ,GAAI,EAAQ,GAAI,EAAqB,kBACxE,EAAsB,uBACjB,EAAe,SAC9B,KAJY,CAAC,CAAC,kBAAkB,EACpB,CAAC,CAAC,mBAAmB,EAAI,QAAQ,EAAI,QAAQ,EAAI,CAAC,CAAC,mBAAmB,EACxE,CAAC,CAAC,oBAAoB,EACjB,CAAC,CAAC,aAAa,EAC7B;QACJ,CAAC;QAED,UAAU,YAAC,CAAQ;YACjB,OAAO,GAAG,mJAAA,qBACK,EAA2B,wBACzB,EAA6B,oBACjC,EAA0B,SACtC,KAHc,CAAC,CAAC,yBAAyB,EACzB,CAAC,CAAC,2BAA2B,EACjC,CAAC,CAAC,wBAAwB,EACrC;QACJ,CAAC;QAED,SAAS,YAAC,CAAQ;YAChB,OAAO,GAAG,6HAAA,qBACK,EAA0B,wBACxB,EAA4B,SAC5C,KAFc,CAAC,CAAC,wBAAwB,EACxB,CAAC,CAAC,0BAA0B,EAC3C;QACJ,CAAC;QACD,UAAU,YAAC,CAAQ;YACjB,OAAO,GAAG,6HAAA,qBACK,EAA2B,wBACzB,EAA6B,SAC7C,KAFc,CAAC,CAAC,yBAAyB,EACzB,CAAC,CAAC,2BAA2B,EAC5C;QACJ,CAAC;QACD,SAAS,YAAC,CAAQ;YAChB,OAAO,GAAG,6HAAA,qBACK,EAA0B,wBACxB,EAA4B,SAC5C,KAFc,CAAC,CAAC,wBAAwB,EACxB,CAAC,CAAC,0BAA0B,EAC3C;QACJ,CAAC;KACF,CAAC;AA1C8D,CA0C9D,CAAC,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { memoizeGetStyles } from '../../lib/theming/Emotion.js';\nimport { getMenuItemPaddings } from '../../components/MenuItem/MenuItem.styles.js';\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n root(t: Theme) {\n const { paddingX, paddingY } = getMenuItemPaddings({\n menuItemPaddingX: t.menuMessagePaddingX,\n menuItemPaddingY: t.menuMessagePaddingY,\n });\n\n return css`\n margin: 0;\n display: ${t.menuMessageDisplay};\n padding: ${t.menuMessagePaddingY} ${paddingX} ${paddingY} ${t.menuMessagePaddingX};\n color: ${t.menuMessageTextColor};\n background: ${t.menuMessageBg};\n `;\n },\n\n rootMobile(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeMobile};\n line-height: ${t.menuMessageLineHeightMobile};\n padding: ${t.menuMessagePaddingMobile};\n `;\n },\n\n rootSmall(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeSmall};\n line-height: ${t.menuMessageLineHeightSmall};\n `;\n },\n rootMedium(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeMedium};\n line-height: ${t.menuMessageLineHeightMedium};\n `;\n },\n rootLarge(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeLarge};\n line-height: ${t.menuMessageLineHeightLarge};\n `;\n },\n}));\n"]}
1
+ {"version":3,"file":"MenuMessage.styles.js","sourceRoot":"","sources":["../../../internal/MenuMessage/MenuMessage.styles.ts"],"names":[],"mappings":";;;;AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAGhE,MAAM,CAAC,IAAM,SAAS,GAAG,gBAAgB,CAAC,UAAC,EAAgB;QAAd,GAAG,SAAA;IAAgB,OAAA,CAAC;QAC/D,IAAI,YAAC,CAAQ;YACL,IAAA,KAAyB,mBAAmB,CAAC;gBACjD,gBAAgB,EAAE,CAAC,CAAC,mBAAmB;gBACvC,gBAAgB,EAAE,CAAC,CAAC,mBAAmB;aACxC,CAAC,EAHM,QAAQ,cAAA,EAAE,QAAQ,cAGxB,CAAC;YAEH,OAAO,GAAG,qMAAA,qCAEG,EAAoB,oBACpB,EAAqB,GAAI,EAAQ,GAAI,EAAQ,GAAI,EAAqB,kBACxE,EAAsB,uBACjB,EAAe,SAC9B,KAJY,CAAC,CAAC,kBAAkB,EACpB,CAAC,CAAC,mBAAmB,EAAI,QAAQ,EAAI,QAAQ,EAAI,CAAC,CAAC,mBAAmB,EACxE,CAAC,CAAC,oBAAoB,EACjB,CAAC,CAAC,aAAa,EAC7B;QACJ,CAAC;QAED,UAAU,YAAC,CAAQ;YACjB,OAAO,GAAG,mJAAA,qBACK,EAA2B,wBACzB,EAA6B,oBACjC,EAA0B,SACtC,KAHc,CAAC,CAAC,yBAAyB,EACzB,CAAC,CAAC,2BAA2B,EACjC,CAAC,CAAC,wBAAwB,EACrC;QACJ,CAAC;QAED,SAAS,YAAC,CAAQ;YAChB,OAAO,GAAG,6HAAA,qBACK,EAA0B,wBACxB,EAA4B,SAC5C,KAFc,CAAC,CAAC,wBAAwB,EACxB,CAAC,CAAC,0BAA0B,EAC3C;QACJ,CAAC;QACD,UAAU,YAAC,CAAQ;YACjB,OAAO,GAAG,6HAAA,qBACK,EAA2B,wBACzB,EAA6B,SAC7C,KAFc,CAAC,CAAC,yBAAyB,EACzB,CAAC,CAAC,2BAA2B,EAC5C;QACJ,CAAC;QACD,SAAS,YAAC,CAAQ;YAChB,OAAO,GAAG,6HAAA,qBACK,EAA0B,wBACxB,EAA4B,SAC5C,KAFc,CAAC,CAAC,wBAAwB,EACxB,CAAC,CAAC,0BAA0B,EAC3C;QACJ,CAAC;KACF,CAAC;AA1C8D,CA0C9D,CAAC,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { getMenuItemPaddings } from '../../components/MenuItem/MenuItem.styles.js';\nimport { memoizeGetStyles } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n root(t: Theme) {\n const { paddingX, paddingY } = getMenuItemPaddings({\n menuItemPaddingX: t.menuMessagePaddingX,\n menuItemPaddingY: t.menuMessagePaddingY,\n });\n\n return css`\n margin: 0;\n display: ${t.menuMessageDisplay};\n padding: ${t.menuMessagePaddingY} ${paddingX} ${paddingY} ${t.menuMessagePaddingX};\n color: ${t.menuMessageTextColor};\n background: ${t.menuMessageBg};\n `;\n },\n\n rootMobile(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeMobile};\n line-height: ${t.menuMessageLineHeightMobile};\n padding: ${t.menuMessagePaddingMobile};\n `;\n },\n\n rootSmall(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeSmall};\n line-height: ${t.menuMessageLineHeightSmall};\n `;\n },\n rootMedium(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeMedium};\n line-height: ${t.menuMessageLineHeightMedium};\n `;\n },\n rootLarge(t: Theme) {\n return css`\n font-size: ${t.menuMessageFontSizeLarge};\n line-height: ${t.menuMessageLineHeightLarge};\n `;\n },\n}));\n"]}
@@ -21,16 +21,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
21
21
  };
22
22
  import React from 'react';
23
23
  import { Transition } from 'react-transition-group';
24
+ import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
25
+ import { rootNode } from '../../lib/rootNode/index.js';
24
26
  import { ThemeContext } from '../../lib/theming/ThemeContext.js';
25
- import { RenderContainer } from '../RenderContainer/index.js';
26
27
  import { HideBodyVerticalScroll } from '../HideBodyVerticalScroll/index.js';
27
- import { ZIndex } from '../ZIndex/index.js';
28
+ import { RenderContainer } from '../RenderContainer/index.js';
28
29
  import { RenderLayer } from '../RenderLayer/index.js';
29
- import { rootNode } from '../../lib/rootNode/index.js';
30
- import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
30
+ import { ZIndex } from '../ZIndex/index.js';
31
31
  import { getJsStyles } from './MobilePopup.styles.js';
32
- import { MobilePopupHeader } from './MobilePopupHeader/index.js';
33
32
  import { MobilePopupFooter } from './MobilePopupFooter/index.js';
33
+ import { MobilePopupHeader } from './MobilePopupHeader/index.js';
34
34
  export var MobilePopupDataTids = {
35
35
  root: 'MobilePopup__root',
36
36
  container: 'MobilePopup__container',
@@ -1 +1 @@
1
- {"version":3,"file":"MobilePopup.js","sourceRoot":"","sources":["../../../internal/MobilePopup/MobilePopup.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\nimport { Transition } from 'react-transition-group';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { RenderContainer } from '../RenderContainer/index.js';\nimport { HideBodyVerticalScroll } from '../HideBodyVerticalScroll/index.js';\nimport { ZIndex } from '../ZIndex/index.js';\nimport { RenderLayer } from '../RenderLayer/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\n\nimport { getJsStyles } from './MobilePopup.styles.js';\nimport { MobilePopupHeader } from './MobilePopupHeader/index.js';\nimport { MobilePopupFooter } from './MobilePopupFooter/index.js';\n\ninterface MobilePopupProps extends Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n /**\n * Функция, вызываемая при закрытии всплывающего окна\n */\n onClose?: () => void;\n /**\n * Заголовок всплывающего окна, располагается в шапке\n */\n caption?: string;\n /**\n * Шапка всплывающего окна\n */\n headerChildComponent?: React.ReactNode;\n /**\n * Подвал всплывающего окна\n */\n footerChildComponent?: React.ReactNode;\n /**\n * Позволяет получить контент всплывающего окна без обёртки в виде `RenderContainer`\n */\n withoutRenderContainer?: boolean;\n /**\n * Функция, вызываемая при клике по вуали\n */\n onCloseRequest?: () => void;\n /**\n * Позволяет контролировать текущее состояние всплывающего окна\n */\n opened: boolean;\n children?: React.ReactNode;\n}\n\nexport const MobilePopupDataTids = {\n root: 'MobilePopup__root',\n container: 'MobilePopup__container',\n backdrop: 'MobilePopup__backdrop',\n} as const;\n\n@withRenderEnvironment\n@rootNode\nexport class MobilePopup extends React.Component<MobilePopupProps> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuHeader';\n public static displayName = 'MobileMenuHeader';\n private refForTransition = React.createRef<HTMLDivElement>();\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n private emotion!: Emotion;\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const content = (\n <ZIndex id={this.props.id} className={this.jsStyles.zIndex()} priority={'MobilePopup'}>\n <Transition\n in={this.props.opened}\n onExited={this.props.onClose}\n mountOnEnter\n unmountOnExit\n timeout={0}\n nodeRef={this.refForTransition}\n >\n <div className={this.jsStyles.wrapper()} ref={this.refForTransition}>\n <RenderLayer onClickOutside={this.close}>\n <div\n ref={this.setRootNode}\n data-tid={MobilePopupDataTids.container}\n className={this.jsStyles.container(this.theme)}\n >\n <div data-tid={MobilePopupDataTids.root} className={this.jsStyles.root(this.theme)}>\n <MobilePopupHeader caption={this.props.caption}>{this.props.headerChildComponent}</MobilePopupHeader>\n <div className={this.jsStyles.content(this.theme)}>{this.props.children}</div>\n <MobilePopupFooter>{this.props.footerChildComponent}</MobilePopupFooter>\n </div>\n <div onClick={this.close} className={this.jsStyles.bottomIndent()} />\n </div>\n </RenderLayer>\n <div\n data-tid={MobilePopupDataTids.backdrop}\n className={this.jsStyles.bg()}\n onClick={this.backdropClick}\n onMouseDown={this.backdropStopPropagation}\n onPointerDownCapture={this.backdropStopPropagation}\n onPointerUpCapture={this.backdropStopPropagation}\n />\n <HideBodyVerticalScroll />\n </div>\n </Transition>\n </ZIndex>\n );\n\n if (this.props.withoutRenderContainer) {\n return content;\n }\n\n return <RenderContainer>{content}</RenderContainer>;\n }\n\n public close = (): void => {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest();\n }\n };\n\n /** Не даём событию дойти до document (`RenderLayer` / «клик сквозь» вуаль).\n * В мобильных браузерах pointerup может породить click по нижележащему элементу.\n * Гасим его на вуали, а закрытие остаётся на обычном click по backdrop.\n */\n private backdropStopPropagation = (event: React.SyntheticEvent) => {\n event.preventDefault();\n event.stopPropagation();\n };\n\n private backdropClick = (event: React.MouseEvent<HTMLDivElement>) => {\n this.backdropStopPropagation(event);\n this.close();\n };\n}\n"]}
1
+ {"version":3,"file":"MobilePopup.js","sourceRoot":"","sources":["../../../internal/MobilePopup/MobilePopup.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport type { HTMLAttributes } from 'react';\nimport React from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { HideBodyVerticalScroll } from '../HideBodyVerticalScroll/index.js';\nimport { RenderContainer } from '../RenderContainer/index.js';\nimport { RenderLayer } from '../RenderLayer/index.js';\nimport { ZIndex } from '../ZIndex/index.js';\nimport { getJsStyles } from './MobilePopup.styles.js';\nimport { MobilePopupFooter } from './MobilePopupFooter/index.js';\nimport { MobilePopupHeader } from './MobilePopupHeader/index.js';\n\ninterface MobilePopupProps extends Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n /**\n * Функция, вызываемая при закрытии всплывающего окна\n */\n onClose?: () => void;\n /**\n * Заголовок всплывающего окна, располагается в шапке\n */\n caption?: string;\n /**\n * Шапка всплывающего окна\n */\n headerChildComponent?: React.ReactNode;\n /**\n * Подвал всплывающего окна\n */\n footerChildComponent?: React.ReactNode;\n /**\n * Позволяет получить контент всплывающего окна без обёртки в виде `RenderContainer`\n */\n withoutRenderContainer?: boolean;\n /**\n * Функция, вызываемая при клике по вуали\n */\n onCloseRequest?: () => void;\n /**\n * Позволяет контролировать текущее состояние всплывающего окна\n */\n opened: boolean;\n children?: React.ReactNode;\n}\n\nexport const MobilePopupDataTids = {\n root: 'MobilePopup__root',\n container: 'MobilePopup__container',\n backdrop: 'MobilePopup__backdrop',\n} as const;\n\n@withRenderEnvironment\n@rootNode\nexport class MobilePopup extends React.Component<MobilePopupProps> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuHeader';\n public static displayName = 'MobileMenuHeader';\n private refForTransition = React.createRef<HTMLDivElement>();\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n private emotion!: Emotion;\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const content = (\n <ZIndex id={this.props.id} className={this.jsStyles.zIndex()} priority={'MobilePopup'}>\n <Transition\n in={this.props.opened}\n onExited={this.props.onClose}\n mountOnEnter\n unmountOnExit\n timeout={0}\n nodeRef={this.refForTransition}\n >\n <div className={this.jsStyles.wrapper()} ref={this.refForTransition}>\n <RenderLayer onClickOutside={this.close}>\n <div\n ref={this.setRootNode}\n data-tid={MobilePopupDataTids.container}\n className={this.jsStyles.container(this.theme)}\n >\n <div data-tid={MobilePopupDataTids.root} className={this.jsStyles.root(this.theme)}>\n <MobilePopupHeader caption={this.props.caption}>{this.props.headerChildComponent}</MobilePopupHeader>\n <div className={this.jsStyles.content(this.theme)}>{this.props.children}</div>\n <MobilePopupFooter>{this.props.footerChildComponent}</MobilePopupFooter>\n </div>\n <div onClick={this.close} className={this.jsStyles.bottomIndent()} />\n </div>\n </RenderLayer>\n <div\n data-tid={MobilePopupDataTids.backdrop}\n className={this.jsStyles.bg()}\n onClick={this.backdropClick}\n onMouseDown={this.backdropStopPropagation}\n onPointerDownCapture={this.backdropStopPropagation}\n onPointerUpCapture={this.backdropStopPropagation}\n />\n <HideBodyVerticalScroll />\n </div>\n </Transition>\n </ZIndex>\n );\n\n if (this.props.withoutRenderContainer) {\n return content;\n }\n\n return <RenderContainer>{content}</RenderContainer>;\n }\n\n public close = (): void => {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest();\n }\n };\n\n /** Не даём событию дойти до document (`RenderLayer` / «клик сквозь» вуаль).\n * В мобильных браузерах pointerup может породить click по нижележащему элементу.\n * Гасим его на вуали, а закрытие остаётся на обычном click по backdrop.\n */\n private backdropStopPropagation = (event: React.SyntheticEvent) => {\n event.preventDefault();\n event.stopPropagation();\n };\n\n private backdropClick = (event: React.MouseEvent<HTMLDivElement>) => {\n this.backdropStopPropagation(event);\n this.close();\n };\n}\n"]}
@@ -20,8 +20,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
20
20
  return c > 3 && r && Object.defineProperty(target, key, r), r;
21
21
  };
22
22
  import React from 'react';
23
- import { ThemeContext } from '../../../lib/theming/ThemeContext.js';
24
23
  import { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';
24
+ import { ThemeContext } from '../../../lib/theming/ThemeContext.js';
25
25
  import { getJsStyles } from './MobilePopupFooter.styles.js';
26
26
  var MobilePopupFooter = /** @class */ (function (_super) {
27
27
  __extends(MobilePopupFooter, _super);
@@ -1 +1 @@
1
- {"version":3,"file":"MobilePopupFooter.js","sourceRoot":"","sources":["../../../../internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAG5D;IAAuC,qCAAwC;IAA/E;;IA6BA,CAAC;IAtBQ,kCAAM,GAAb;QAAA,iBAWC;QAVC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,QACnB,UAAC,KAAK;YACL,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,OAAO,KAAI,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC,CACqB,CACzB,CAAC;IACJ,CAAC;IAEO,sCAAU,GAAlB;QACU,IAAA,QAAQ,GAAK,IAAI,CAAC,KAAK,SAAf,CAAgB;QAEhC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,6BAAK,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,QAAQ,CAAO,CAAC;IAC1E,CAAC;IA3Ba,qCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IAD5C,iBAAiB;QAD7B,qBAAqB;OACT,iBAAiB,CA6B7B;IAAD,wBAAC;CAAA,AA7BD,CAAuC,KAAK,CAAC,SAAS,GA6BrD;SA7BY,iBAAiB","sourcesContent":["import React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport type { Theme } from '../../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext.js';\nimport { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';\n\nimport { getJsStyles } from './MobilePopupFooter.styles.js';\n\n@withRenderEnvironment\nexport class MobilePopupFooter extends React.Component<React.PropsWithChildren> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuFooter';\n\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private emotion!: Emotion;\n private theme!: Theme;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { children } = this.props;\n\n if (!children || !React.isValidElement(children)) {\n return null;\n }\n\n return <div className={this.jsStyles.root(this.theme)}>{children}</div>;\n }\n}\n"]}
1
+ {"version":3,"file":"MobilePopupFooter.js","sourceRoot":"","sources":["../../../../internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAG5D;IAAuC,qCAAwC;IAA/E;;IA6BA,CAAC;IAtBQ,kCAAM,GAAb;QAAA,iBAWC;QAVC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,QACnB,UAAC,KAAK;YACL,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,OAAO,KAAI,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC,CACqB,CACzB,CAAC;IACJ,CAAC;IAEO,sCAAU,GAAlB;QACU,IAAA,QAAQ,GAAK,IAAI,CAAC,KAAK,SAAf,CAAgB;QAEhC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,6BAAK,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,QAAQ,CAAO,CAAC;IAC1E,CAAC;IA3Ba,qCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IAD5C,iBAAiB;QAD7B,qBAAqB;OACT,iBAAiB,CA6B7B;IAAD,wBAAC;CAAA,AA7BD,CAAuC,KAAK,CAAC,SAAS,GA6BrD;SA7BY,iBAAiB","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';\nimport type { Theme } from '../../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext.js';\nimport { getJsStyles } from './MobilePopupFooter.styles.js';\n\n@withRenderEnvironment\nexport class MobilePopupFooter extends React.Component<React.PropsWithChildren> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuFooter';\n\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private emotion!: Emotion;\n private theme!: Theme;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { children } = this.props;\n\n if (!children || !React.isValidElement(children)) {\n return null;\n }\n\n return <div className={this.jsStyles.root(this.theme)}>{children}</div>;\n }\n}\n"]}
@@ -20,9 +20,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
20
20
  return c > 3 && r && Object.defineProperty(target, key, r), r;
21
21
  };
22
22
  import React from 'react';
23
- import { isNonNullable } from '../../../lib/utils.js';
24
- import { ThemeContext } from '../../../lib/theming/ThemeContext.js';
25
23
  import { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';
24
+ import { ThemeContext } from '../../../lib/theming/ThemeContext.js';
25
+ import { isNonNullable } from '../../../lib/utils.js';
26
26
  import { getJsStyles } from './MobilePopupHeader.styles.js';
27
27
  var MobilePopupHeader = /** @class */ (function (_super) {
28
28
  __extends(MobilePopupHeader, _super);
@@ -1 +1 @@
1
- {"version":3,"file":"MobilePopupHeader.js","sourceRoot":"","sources":["../../../../internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAU5D;IAAuC,qCAAgE;IAAvG;;IAgDA,CAAC;IAvCQ,kCAAM,GAAb;QAAA,iBAWC;QAVC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,QACnB,UAAC,KAAK;YACL,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,OAAO,KAAI,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC,CACqB,CACzB,CAAC;IACJ,CAAC;IAEO,sCAAU,GAAlB;;QACQ,IAAA,KAAwB,IAAI,CAAC,KAAK,EAAhC,OAAO,aAAA,EAAE,QAAQ,cAAe,CAAC;QAEzC,OAAO,CACL,6BACE,SAAS,EAAE,IAAI,CAAC,EAAE;gBAChB,GAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;gBACtC,GAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAG,CAAC,OAAO,IAAI,CAAC,QAAQ;oBAC3D;YAEF,6BAAK,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;gBACtC,OAAO,IAAI,CACV,6BACE,SAAS,EAAE,IAAI,CAAC,EAAE;wBAChB,GAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;wBACzC,GAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAG,aAAa,CAAC,QAAQ,CAAC;4BAC9D,IAED,OAAO,CACJ,CACP;gBACA,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,iCAAM,QAAQ,CAAO,CACpD,CACF,CACP,CAAC;IACJ,CAAC;IA9Ca,qCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IACzC,6BAAW,GAAG,kBAAkB,AAArB,CAAsB;IAFpC,iBAAiB;QAD7B,qBAAqB;OACT,iBAAiB,CAgD7B;IAAD,wBAAC;CAAA,AAhDD,CAAuC,KAAK,CAAC,SAAS,GAgDrD;SAhDY,iBAAiB","sourcesContent":["import React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { isNonNullable } from '../../../lib/utils.js';\nimport type { Theme } from '../../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext.js';\nimport { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';\n\nimport { getJsStyles } from './MobilePopupHeader.styles.js';\n\ninterface MobilePopupHeaderProps {\n /**\n * Заголовок шапки\n */\n caption?: string;\n}\n\n@withRenderEnvironment\nexport class MobilePopupHeader extends React.Component<React.PropsWithChildren<MobilePopupHeaderProps>> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuHeader';\n public static displayName = 'MobileMenuHeader';\n\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private theme!: Theme;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { caption, children } = this.props;\n\n return (\n <div\n className={this.cx({\n [this.jsStyles.root(this.theme)]: true,\n [this.jsStyles.rootWithoutContent()]: !caption && !children,\n })}\n >\n <div className={this.jsStyles.container()}>\n {caption && (\n <div\n className={this.cx({\n [this.jsStyles.caption(this.theme)]: true,\n [this.jsStyles.captionWithChildren()]: isNonNullable(children),\n })}\n >\n {caption}\n </div>\n )}\n {React.isValidElement(children) && <div>{children}</div>}\n </div>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"MobilePopupHeader.js","sourceRoot":"","sources":["../../../../internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAU5D;IAAuC,qCAAgE;IAAvG;;IAgDA,CAAC;IAvCQ,kCAAM,GAAb;QAAA,iBAWC;QAVC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,QACnB,UAAC,KAAK;YACL,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,OAAO,KAAI,CAAC,UAAU,EAAE,CAAC;QAC3B,CAAC,CACqB,CACzB,CAAC;IACJ,CAAC;IAEO,sCAAU,GAAlB;;QACQ,IAAA,KAAwB,IAAI,CAAC,KAAK,EAAhC,OAAO,aAAA,EAAE,QAAQ,cAAe,CAAC;QAEzC,OAAO,CACL,6BACE,SAAS,EAAE,IAAI,CAAC,EAAE;gBAChB,GAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;gBACtC,GAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAG,CAAC,OAAO,IAAI,CAAC,QAAQ;oBAC3D;YAEF,6BAAK,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;gBACtC,OAAO,IAAI,CACV,6BACE,SAAS,EAAE,IAAI,CAAC,EAAE;wBAChB,GAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAG,IAAI;wBACzC,GAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAG,aAAa,CAAC,QAAQ,CAAC;4BAC9D,IAED,OAAO,CACJ,CACP;gBACA,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,iCAAM,QAAQ,CAAO,CACpD,CACF,CACP,CAAC;IACJ,CAAC;IA9Ca,qCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IACzC,6BAAW,GAAG,kBAAkB,AAArB,CAAsB;IAFpC,iBAAiB;QAD7B,qBAAqB;OACT,iBAAiB,CAgD7B;IAAD,wBAAC;CAAA,AAhDD,CAAuC,KAAK,CAAC,SAAS,GAgDrD;SAhDY,iBAAiB","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { withRenderEnvironment } from '../../../lib/renderEnvironment/index.js';\nimport type { Theme } from '../../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../../lib/theming/ThemeContext.js';\nimport { isNonNullable } from '../../../lib/utils.js';\nimport { getJsStyles } from './MobilePopupHeader.styles.js';\n\ninterface MobilePopupHeaderProps {\n /**\n * Заголовок шапки\n */\n caption?: string;\n}\n\n@withRenderEnvironment\nexport class MobilePopupHeader extends React.Component<React.PropsWithChildren<MobilePopupHeaderProps>> {\n public static __KONTUR_REACT_UI__ = 'MobileMenuHeader';\n public static displayName = 'MobileMenuHeader';\n\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private theme!: Theme;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { caption, children } = this.props;\n\n return (\n <div\n className={this.cx({\n [this.jsStyles.root(this.theme)]: true,\n [this.jsStyles.rootWithoutContent()]: !caption && !children,\n })}\n >\n <div className={this.jsStyles.container()}>\n {caption && (\n <div\n className={this.cx({\n [this.jsStyles.caption(this.theme)]: true,\n [this.jsStyles.captionWithChildren()]: isNonNullable(children),\n })}\n >\n {caption}\n </div>\n )}\n {React.isValidElement(children) && <div>{children}</div>}\n </div>\n </div>\n );\n }\n}\n"]}
@@ -21,8 +21,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
21
21
  };
22
22
  import React from 'react';
23
23
  import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
24
- import { getDateForNative, getDateForComponent } from './utils.js';
25
24
  import { getJsStyles } from './NativeDateInput.styles.js';
25
+ import { getDateForComponent, getDateForNative } from './utils.js';
26
26
  var DEFAULT_MIN_DATE = '1900-01-01';
27
27
  var DEFAULT_MAX_DATE = '2099-12-31';
28
28
  var NativeDateInput = /** @class */ (function (_super) {
@@ -1 +1 @@
1
- {"version":3,"file":"NativeDateInput.js","sourceRoot":"","sources":["../../../internal/NativeDateInput/NativeDateInput.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAU1D,IAAM,gBAAgB,GAAG,YAAY,CAAC;AACtC,IAAM,gBAAgB,GAAG,YAAY,CAAC;AAGtC;IAAqC,mCAAqC;IAA1E;;QA8BE;;WAEG;QACI,WAAK,GAAG;YACb,IAAI,KAAI,CAAC,KAAK,EAAE,CAAC;gBACf,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QAEF;;WAEG;QACI,WAAK,GAAG;YACb,IAAI,KAAI,CAAC,KAAK,EAAE,CAAC;gBACf,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QAEM,cAAQ,GAAG,UAAC,OAAmC;YACrD,KAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QACvB,CAAC,CAAC;;IACJ,CAAC;IA3CQ,gCAAM,GAAb;QAAA,iBAoBC;QAnBC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,+BACE,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,EACjF,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,EACjF,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EACzC,QAAQ,EAAE,UAAC,CAAC;gBACV,IAAI,KAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;oBAC7B,KAAI,CAAC,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,EACD,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EACxC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,QAAQ,EAAE,CAAC,CAAC,GACZ,CACH,CAAC;IACJ,CAAC;IA3Ba,mCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IACzC,2BAAW,GAAG,kBAAkB,AAArB,CAAsB;IAFpC,eAAe;QAD3B,qBAAqB;OACT,eAAe,CAmD3B;IAAD,sBAAC;CAAA,AAnDD,CAAqC,KAAK,CAAC,SAAS,GAmDnD;SAnDY,eAAe","sourcesContent":["import React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\n\nimport { getDateForNative, getDateForComponent } from './utils.js';\nimport { getJsStyles } from './NativeDateInput.styles.js';\n\nexport interface NativeDateInputProps {\n onValueChange?: (value: string) => void;\n value: Nullable<string>;\n minDate?: Nullable<string>;\n maxDate?: Nullable<string>;\n disabled?: boolean;\n}\n\nconst DEFAULT_MIN_DATE = '1900-01-01';\nconst DEFAULT_MAX_DATE = '2099-12-31';\n\n@withRenderEnvironment\nexport class NativeDateInput extends React.Component<NativeDateInputProps> {\n public static __KONTUR_REACT_UI__ = 'NativeDatePicker';\n public static displayName = 'NativeDatePicker';\n\n private emotion!: Emotion;\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private input: Nullable<HTMLInputElement>;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <input\n type={'date'}\n max={this.props.maxDate ? getDateForNative(this.props.maxDate) : DEFAULT_MAX_DATE}\n min={this.props.minDate ? getDateForNative(this.props.minDate) : DEFAULT_MIN_DATE}\n value={getDateForNative(this.props.value)}\n onChange={(e) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(getDateForComponent(e.target.value));\n }\n }}\n className={this.jsStyles.inputTypeDate()}\n ref={this.refInput}\n disabled={this.props.disabled}\n tabIndex={-1}\n />\n );\n }\n\n /**\n * @public\n */\n public focus = (): void => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public click = () => {\n if (this.input) {\n this.input.click();\n }\n };\n\n private refInput = (element: Nullable<HTMLInputElement>) => {\n this.input = element;\n };\n}\n"]}
1
+ {"version":3,"file":"NativeDateInput.js","sourceRoot":"","sources":["../../../internal/NativeDateInput/NativeDateInput.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAUnE,IAAM,gBAAgB,GAAG,YAAY,CAAC;AACtC,IAAM,gBAAgB,GAAG,YAAY,CAAC;AAGtC;IAAqC,mCAAqC;IAA1E;;QA8BE;;WAEG;QACI,WAAK,GAAG;YACb,IAAI,KAAI,CAAC,KAAK,EAAE,CAAC;gBACf,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QAEF;;WAEG;QACI,WAAK,GAAG;YACb,IAAI,KAAI,CAAC,KAAK,EAAE,CAAC;gBACf,KAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;QAEM,cAAQ,GAAG,UAAC,OAAmC;YACrD,KAAI,CAAC,KAAK,GAAG,OAAO,CAAC;QACvB,CAAC,CAAC;;IACJ,CAAC;IA3CQ,gCAAM,GAAb;QAAA,iBAoBC;QAnBC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,OAAO,CACL,+BACE,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,EACjF,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,EACjF,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EACzC,QAAQ,EAAE,UAAC,CAAC;gBACV,IAAI,KAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;oBAC7B,KAAI,CAAC,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC,EACD,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EACxC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAC7B,QAAQ,EAAE,CAAC,CAAC,GACZ,CACH,CAAC;IACJ,CAAC;IA3Ba,mCAAmB,GAAG,kBAAkB,AAArB,CAAsB;IACzC,2BAAW,GAAG,kBAAkB,AAArB,CAAsB;IAFpC,eAAe;QAD3B,qBAAqB;OACT,eAAe,CAmD3B;IAAD,sBAAC;CAAA,AAnDD,CAAqC,KAAK,CAAC,SAAS,GAmDnD;SAnDY,eAAe","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport { getJsStyles } from './NativeDateInput.styles.js';\nimport { getDateForComponent, getDateForNative } from './utils.js';\n\nexport interface NativeDateInputProps {\n onValueChange?: (value: string) => void;\n value: Nullable<string>;\n minDate?: Nullable<string>;\n maxDate?: Nullable<string>;\n disabled?: boolean;\n}\n\nconst DEFAULT_MIN_DATE = '1900-01-01';\nconst DEFAULT_MAX_DATE = '2099-12-31';\n\n@withRenderEnvironment\nexport class NativeDateInput extends React.Component<NativeDateInputProps> {\n public static __KONTUR_REACT_UI__ = 'NativeDatePicker';\n public static displayName = 'NativeDatePicker';\n\n private emotion!: Emotion;\n private jsStyles!: ReturnType<typeof getJsStyles>;\n private input: Nullable<HTMLInputElement>;\n\n public render() {\n this.jsStyles = getJsStyles(this.emotion);\n\n return (\n <input\n type={'date'}\n max={this.props.maxDate ? getDateForNative(this.props.maxDate) : DEFAULT_MAX_DATE}\n min={this.props.minDate ? getDateForNative(this.props.minDate) : DEFAULT_MIN_DATE}\n value={getDateForNative(this.props.value)}\n onChange={(e) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(getDateForComponent(e.target.value));\n }\n }}\n className={this.jsStyles.inputTypeDate()}\n ref={this.refInput}\n disabled={this.props.disabled}\n tabIndex={-1}\n />\n );\n }\n\n /**\n * @public\n */\n public focus = (): void => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public click = () => {\n if (this.input) {\n this.input.click();\n }\n };\n\n private refInput = (element: Nullable<HTMLInputElement>) => {\n this.input = element;\n };\n}\n"]}
@@ -1,5 +1,5 @@
1
- import type { Nullable } from '../../typings/utility-types.js';
2
1
  import type { CalendarDateShape } from '../../components/Calendar/CalendarDateShape.js';
2
+ import type { Nullable } from '../../typings/utility-types.js';
3
3
  export declare const getDateForNative: (componentDate: Nullable<string>) => string | undefined;
4
4
  export declare const getDateForComponent: (nativeDate: Nullable<string>) => string;
5
5
  export declare const getNativeDateFromShape: (componentDate: CalendarDateShape | undefined | null) => string | undefined;