@skbkontur/react-ui 6.4.3-6344a.0 → 6.4.4-3a8c8.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 (669) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/components/Autocomplete/Autocomplete.js +1 -1
  3. package/components/Autocomplete/Autocomplete.js.map +1 -1
  4. package/components/Autocomplete/{Autocomplete.css.d.ts → Autocomplete.styles.d.ts} +1 -1
  5. package/components/Autocomplete/Autocomplete.styles.js +18 -0
  6. package/components/Autocomplete/Autocomplete.styles.js.map +1 -0
  7. package/components/Button/Button.js +2 -3
  8. package/components/Button/Button.js.map +1 -1
  9. package/components/Button/Button.mixins.js +6 -11
  10. package/components/Button/Button.mixins.js.map +1 -1
  11. package/components/Button/{Button.css.d.ts → Button.styles.d.ts} +2 -2
  12. package/components/Button/Button.styles.js +260 -0
  13. package/components/Button/Button.styles.js.map +1 -0
  14. package/components/Button/ButtonArrow.d.ts +1 -1
  15. package/components/Button/ButtonArrow.js +1 -1
  16. package/components/Button/ButtonArrow.js.map +1 -1
  17. package/components/Button/ButtonIcon.js +1 -1
  18. package/components/Button/ButtonIcon.js.map +1 -1
  19. package/components/Button/{ButtonIcon.css.d.ts → ButtonIcon.styles.d.ts} +1 -1
  20. package/components/Button/ButtonIcon.styles.js +53 -0
  21. package/components/Button/ButtonIcon.styles.js.map +1 -0
  22. package/components/Button/LoadingButtonIcon.js +1 -1
  23. package/components/Button/LoadingButtonIcon.js.map +1 -1
  24. package/components/Calendar/Calendar.js +1 -1
  25. package/components/Calendar/Calendar.js.map +1 -1
  26. package/components/Calendar/{Calendar.css.d.ts → Calendar.styles.d.ts} +1 -1
  27. package/components/Calendar/Calendar.styles.js +22 -0
  28. package/components/Calendar/Calendar.styles.js.map +1 -0
  29. package/components/Calendar/CalendarDay.js +1 -1
  30. package/components/Calendar/CalendarDay.js.map +1 -1
  31. package/components/Calendar/DayCellView.js +1 -1
  32. package/components/Calendar/DayCellView.js.map +1 -1
  33. package/components/Calendar/{DayCellView.css.d.ts → DayCellView.styles.d.ts} +1 -1
  34. package/components/Calendar/DayCellView.styles.js +31 -0
  35. package/components/Calendar/DayCellView.styles.js.map +1 -0
  36. package/components/Calendar/Month.js +2 -2
  37. package/components/Calendar/Month.js.map +1 -1
  38. package/components/Calendar/MonthView.js +1 -1
  39. package/components/Calendar/MonthView.js.map +1 -1
  40. package/components/Calendar/{MonthView.css.d.ts → MonthView.styles.d.ts} +1 -1
  41. package/components/Calendar/MonthView.styles.js +47 -0
  42. package/components/Calendar/MonthView.styles.js.map +1 -0
  43. package/components/Center/Center.js +1 -1
  44. package/components/Center/Center.js.map +1 -1
  45. package/components/Center/{Center.css.d.ts → Center.styles.d.ts} +1 -1
  46. package/components/Center/Center.styles.js +27 -0
  47. package/components/Center/Center.styles.js.map +1 -0
  48. package/components/Checkbox/Checkbox.js +1 -1
  49. package/components/Checkbox/Checkbox.js.map +1 -1
  50. package/components/Checkbox/Checkbox.mixins.js +6 -3
  51. package/components/Checkbox/Checkbox.mixins.js.map +1 -1
  52. package/components/Checkbox/{Checkbox.css.d.ts → Checkbox.styles.d.ts} +1 -2
  53. package/components/Checkbox/Checkbox.styles.js +100 -0
  54. package/components/Checkbox/Checkbox.styles.js.map +1 -0
  55. package/components/DateInput/DateFragmentsView.js +1 -1
  56. package/components/DateInput/DateFragmentsView.js.map +1 -1
  57. package/components/DateInput/{DateFragmentsView.css.d.ts → DateFragmentsView.styles.d.ts} +1 -1
  58. package/components/DateInput/DateFragmentsView.styles.js +28 -0
  59. package/components/DateInput/DateFragmentsView.styles.js.map +1 -0
  60. package/components/DateInput/DateInput.js +1 -1
  61. package/components/DateInput/DateInput.js.map +1 -1
  62. package/components/DateInput/{DateInput.css.d.ts → DateInput.styles.d.ts} +3 -2
  63. package/components/DateInput/DateInput.styles.js +29 -0
  64. package/components/DateInput/DateInput.styles.js.map +1 -0
  65. package/components/DatePicker/DatePicker.js +1 -1
  66. package/components/DatePicker/DatePicker.js.map +1 -1
  67. package/components/DatePicker/{DatePicker.css.d.ts → DatePicker.styles.d.ts} +1 -1
  68. package/components/DatePicker/DatePicker.styles.js +18 -0
  69. package/components/DatePicker/DatePicker.styles.js.map +1 -0
  70. package/components/DatePicker/MobilePicker.js +1 -1
  71. package/components/DatePicker/MobilePicker.js.map +1 -1
  72. package/components/DatePicker/MobilePicker.styles.d.ts +3 -0
  73. package/components/DatePicker/MobilePicker.styles.js +15 -0
  74. package/components/DatePicker/MobilePicker.styles.js.map +1 -0
  75. package/components/DateRangePicker/DateRangePicker.d.ts +4 -4
  76. package/components/DateRangePicker/DateRangePicker.js +27 -32
  77. package/components/DateRangePicker/DateRangePicker.js.map +1 -1
  78. package/components/DateRangePicker/{DateRangePicker.css.d.ts → DateRangePicker.styles.d.ts} +3 -7
  79. package/components/DateRangePicker/DateRangePicker.styles.js +57 -0
  80. package/components/DateRangePicker/DateRangePicker.styles.js.map +1 -0
  81. package/components/FileUploader/FileUploader.js +1 -1
  82. package/components/FileUploader/FileUploader.js.map +1 -1
  83. package/components/FileUploader/{FileUploader.css.d.ts → FileUploader.styles.d.ts} +3 -3
  84. package/components/FileUploader/FileUploader.styles.js +221 -0
  85. package/components/FileUploader/FileUploader.styles.js.map +1 -0
  86. package/components/FileUploader/FileUploaderFile.js +1 -1
  87. package/components/FileUploader/FileUploaderFile.js.map +1 -1
  88. package/components/FileUploader/{FileUploaderFile.css.d.ts → FileUploaderFile.styles.d.ts} +3 -3
  89. package/components/FileUploader/FileUploaderFile.styles.js +184 -0
  90. package/components/FileUploader/FileUploaderFile.styles.js.map +1 -0
  91. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js +1 -1
  92. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  93. package/components/FileUploader/FileUploaderFileList/{FileUploaderFileList.css.d.ts → FileUploaderFileList.styles.d.ts} +3 -3
  94. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js +103 -0
  95. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -0
  96. package/components/FileUploader/FileUploaderFileStatusIcon.js +1 -1
  97. package/components/FileUploader/FileUploaderFileStatusIcon.js.map +1 -1
  98. package/components/GlobalLoader/GlobalLoaderView.js +7 -13
  99. package/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
  100. package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +17 -0
  101. package/components/GlobalLoader/GlobalLoaderView.styles.js +70 -0
  102. package/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -0
  103. package/components/Group/Group.js +1 -1
  104. package/components/Group/Group.js.map +1 -1
  105. package/components/Group/{Group.css.d.ts → Group.styles.d.ts} +1 -1
  106. package/components/Group/Group.styles.js +30 -0
  107. package/components/Group/Group.styles.js.map +1 -0
  108. package/components/Hint/Hint.js +1 -1
  109. package/components/Hint/Hint.js.map +1 -1
  110. package/components/Hint/{Hint.css.d.ts → Hint.styles.d.ts} +1 -1
  111. package/components/Hint/Hint.styles.js +18 -0
  112. package/components/Hint/Hint.styles.js.map +1 -0
  113. package/components/Input/Input.js +1 -1
  114. package/components/Input/Input.js.map +1 -1
  115. package/components/Input/{Input.css.d.ts → Input.styles.d.ts} +1 -1
  116. package/components/Input/Input.styles.js +68 -0
  117. package/components/Input/Input.styles.js.map +1 -0
  118. package/components/Input/InputLayout/InputLayout.js +1 -1
  119. package/components/Input/InputLayout/InputLayout.js.map +1 -1
  120. package/components/Input/InputLayout/{InputLayout.css.d.ts → InputLayout.styles.d.ts} +1 -1
  121. package/components/Input/InputLayout/InputLayout.styles.js +59 -0
  122. package/components/Input/InputLayout/InputLayout.styles.js.map +1 -0
  123. package/components/Input/InputLayout/InputLayoutAside.js +1 -1
  124. package/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
  125. package/components/Input/InputLayout/InputLayoutAsideCounter.js +1 -1
  126. package/components/Input/InputLayout/InputLayoutAsideCounter.js.map +1 -1
  127. package/components/Input/InputLayout/InputLayoutAsideIcon.js +1 -1
  128. package/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
  129. package/components/Input/InputLayout/InputLayoutAsideText.js +1 -1
  130. package/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
  131. package/components/Kebab/Kebab.js +1 -1
  132. package/components/Kebab/Kebab.js.map +1 -1
  133. package/components/Kebab/{Kebab.css.d.ts → Kebab.styles.d.ts} +1 -1
  134. package/components/Kebab/Kebab.styles.js +36 -0
  135. package/components/Kebab/Kebab.styles.js.map +1 -0
  136. package/components/Link/Link.js +2 -3
  137. package/components/Link/Link.js.map +1 -1
  138. package/components/Link/{Link.css.d.ts → Link.styles.d.ts} +1 -1
  139. package/components/Link/Link.styles.js +82 -0
  140. package/components/Link/Link.styles.js.map +1 -0
  141. package/components/Link/LinkIcon.js +1 -1
  142. package/components/Link/LinkIcon.js.map +1 -1
  143. package/components/Loader/Loader.js +1 -1
  144. package/components/Loader/Loader.js.map +1 -1
  145. package/components/Loader/{Loader.css.d.ts → Loader.styles.d.ts} +1 -1
  146. package/components/Loader/Loader.styles.js +27 -0
  147. package/components/Loader/Loader.styles.js.map +1 -0
  148. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +1 -1
  149. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
  150. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.d.ts +6 -0
  151. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js +18 -0
  152. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js.map +1 -0
  153. package/components/MaskedInput/{MaskedInput.css.d.ts → MaskedInput.styles.d.ts} +1 -1
  154. package/components/MaskedInput/MaskedInput.styles.js +19 -0
  155. package/components/MaskedInput/MaskedInput.styles.js.map +1 -0
  156. package/components/MaskedInput/MaskedInputLegacy.js +1 -1
  157. package/components/MaskedInput/MaskedInputLegacy.js.map +1 -1
  158. package/components/MaskedInputV2/MaskedInputV2.js +1 -1
  159. package/components/MaskedInputV2/MaskedInputV2.js.map +1 -1
  160. package/components/MaskedInputV2/{MaskedInputV2.css.d.ts → MaskedInputV2.styles.d.ts} +1 -1
  161. package/components/MaskedInputV2/MaskedInputV2.styles.js +19 -0
  162. package/components/MaskedInputV2/MaskedInputV2.styles.js.map +1 -0
  163. package/components/MaskedInputV2/internal/MaskOverlay.js +1 -1
  164. package/components/MaskedInputV2/internal/MaskOverlay.js.map +1 -1
  165. package/components/MaskedInputV2/internal/MaskedCore.js +1 -1
  166. package/components/MaskedInputV2/internal/MaskedCore.js.map +1 -1
  167. package/components/MaskedInputV2/internal/{MaskedInternal.css.d.ts → MaskedInternal.styles.d.ts} +1 -1
  168. package/components/MaskedInputV2/internal/MaskedInternal.styles.js +34 -0
  169. package/components/MaskedInputV2/internal/MaskedInternal.styles.js.map +1 -0
  170. package/components/MenuFooter/MenuFooter.js +1 -1
  171. package/components/MenuFooter/MenuFooter.js.map +1 -1
  172. package/components/MenuFooter/{MenuFooter.css.d.ts → MenuFooter.styles.d.ts} +1 -1
  173. package/components/MenuFooter/MenuFooter.styles.js +34 -0
  174. package/components/MenuFooter/MenuFooter.styles.js.map +1 -0
  175. package/components/MenuHeader/MenuHeader.js +1 -1
  176. package/components/MenuHeader/MenuHeader.js.map +1 -1
  177. package/components/MenuHeader/{MenuHeader.css.d.ts → MenuHeader.styles.d.ts} +1 -1
  178. package/components/MenuHeader/MenuHeader.styles.js +34 -0
  179. package/components/MenuHeader/MenuHeader.styles.js.map +1 -0
  180. package/components/MenuItem/MenuItem.js +1 -1
  181. package/components/MenuItem/MenuItem.js.map +1 -1
  182. package/components/MenuItem/MenuItem.mixins.js +1 -1
  183. package/components/MenuItem/MenuItem.mixins.js.map +1 -1
  184. package/components/MenuItem/{MenuItem.css.d.ts → MenuItem.styles.d.ts} +3 -1
  185. package/components/MenuItem/MenuItem.styles.js +88 -0
  186. package/components/MenuItem/MenuItem.styles.js.map +1 -0
  187. package/components/MenuSeparator/MenuSeparator.js +1 -1
  188. package/components/MenuSeparator/MenuSeparator.js.map +1 -1
  189. package/components/MenuSeparator/{MenuSeparator.css.d.ts → MenuSeparator.styles.d.ts} +1 -1
  190. package/components/MenuSeparator/MenuSeparator.styles.js +18 -0
  191. package/components/MenuSeparator/MenuSeparator.styles.js.map +1 -0
  192. package/components/MiniModal/{MiniModal.css.d.ts → MiniModal.styles.d.ts} +1 -1
  193. package/components/MiniModal/MiniModal.styles.js +37 -0
  194. package/components/MiniModal/MiniModal.styles.js.map +1 -0
  195. package/components/MiniModal/MiniModalBody.js +1 -1
  196. package/components/MiniModal/MiniModalBody.js.map +1 -1
  197. package/components/MiniModal/MiniModalFooter.js +1 -1
  198. package/components/MiniModal/MiniModalFooter.js.map +1 -1
  199. package/components/MiniModal/MiniModalHeader.js +1 -1
  200. package/components/MiniModal/MiniModalHeader.js.map +1 -1
  201. package/components/MiniModal/MiniModalIndent.js +1 -1
  202. package/components/MiniModal/MiniModalIndent.js.map +1 -1
  203. package/components/Modal/Modal.js +1 -1
  204. package/components/Modal/Modal.js.map +1 -1
  205. package/components/Modal/{Modal.css.d.ts → Modal.styles.d.ts} +1 -1
  206. package/components/Modal/Modal.styles.js +167 -0
  207. package/components/Modal/Modal.styles.js.map +1 -0
  208. package/components/Modal/ModalBody.js +1 -1
  209. package/components/Modal/ModalBody.js.map +1 -1
  210. package/components/Modal/ModalClose.js +1 -1
  211. package/components/Modal/ModalClose.js.map +1 -1
  212. package/components/Modal/ModalFooter.js +1 -1
  213. package/components/Modal/ModalFooter.js.map +1 -1
  214. package/components/Modal/ModalHeader.js +1 -1
  215. package/components/Modal/ModalHeader.js.map +1 -1
  216. package/components/Modal/ModalSeparator.js +1 -1
  217. package/components/Modal/ModalSeparator.js.map +1 -1
  218. package/components/Paging/Paging.js +1 -1
  219. package/components/Paging/Paging.js.map +1 -1
  220. package/components/Paging/{Paging.css.d.ts → Paging.styles.d.ts} +1 -1
  221. package/components/Paging/Paging.styles.js +99 -0
  222. package/components/Paging/Paging.styles.js.map +1 -0
  223. package/components/PasswordInput/PasswordInput.js +1 -1
  224. package/components/PasswordInput/PasswordInput.js.map +1 -1
  225. package/components/PasswordInput/{PasswordInput.css.d.ts → PasswordInput.styles.d.ts} +1 -1
  226. package/components/PasswordInput/PasswordInput.styles.js +36 -0
  227. package/components/PasswordInput/PasswordInput.styles.js.map +1 -0
  228. package/components/Radio/Radio.js +1 -1
  229. package/components/Radio/Radio.js.map +1 -1
  230. package/components/Radio/Radio.mixins.js +7 -4
  231. package/components/Radio/Radio.mixins.js.map +1 -1
  232. package/components/Radio/{Radio.css.d.ts → Radio.styles.d.ts} +1 -2
  233. package/components/Radio/Radio.styles.js +100 -0
  234. package/components/Radio/Radio.styles.js.map +1 -0
  235. package/components/RadioGroup/RadioGroup.js +1 -1
  236. package/components/RadioGroup/RadioGroup.js.map +1 -1
  237. package/components/RadioGroup/{RadioGroup.css.d.ts → RadioGroup.styles.d.ts} +1 -1
  238. package/components/RadioGroup/RadioGroup.styles.js +24 -0
  239. package/components/RadioGroup/RadioGroup.styles.js.map +1 -0
  240. package/components/ScrollContainer/ScrollBar.js +1 -1
  241. package/components/ScrollContainer/ScrollBar.js.map +1 -1
  242. package/components/ScrollContainer/ScrollContainer.js +1 -1
  243. package/components/ScrollContainer/ScrollContainer.js.map +1 -1
  244. package/components/ScrollContainer/{ScrollContainer.css.d.ts → ScrollContainer.styles.d.ts} +1 -1
  245. package/components/ScrollContainer/ScrollContainer.styles.js +52 -0
  246. package/components/ScrollContainer/ScrollContainer.styles.js.map +1 -0
  247. package/components/Select/Select.js +2 -2
  248. package/components/Select/Select.js.map +1 -1
  249. package/components/Select/{Select.css.d.ts → Select.styles.d.ts} +1 -1
  250. package/components/Select/Select.styles.js +57 -0
  251. package/components/Select/Select.styles.js.map +1 -0
  252. package/components/SidePage/SidePage.js +1 -1
  253. package/components/SidePage/SidePage.js.map +1 -1
  254. package/components/SidePage/{SidePage.css.d.ts → SidePage.styles.d.ts} +1 -1
  255. package/components/SidePage/SidePage.styles.js +158 -0
  256. package/components/SidePage/SidePage.styles.js.map +1 -0
  257. package/components/SidePage/SidePageBody.js +1 -1
  258. package/components/SidePage/SidePageBody.js.map +1 -1
  259. package/components/SidePage/SidePageCloseButton.js +1 -1
  260. package/components/SidePage/SidePageCloseButton.js.map +1 -1
  261. package/components/SidePage/SidePageContainer.js +1 -1
  262. package/components/SidePage/SidePageContainer.js.map +1 -1
  263. package/components/SidePage/SidePageFooter.js +1 -1
  264. package/components/SidePage/SidePageFooter.js.map +1 -1
  265. package/components/SidePage/SidePageHeader.js +1 -1
  266. package/components/SidePage/SidePageHeader.js.map +1 -1
  267. package/components/Spinner/Spinner.js +1 -1
  268. package/components/Spinner/Spinner.js.map +1 -1
  269. package/components/Spinner/{Spinner.css.d.ts → Spinner.styles.d.ts} +1 -1
  270. package/components/Spinner/Spinner.styles.js +43 -0
  271. package/components/Spinner/Spinner.styles.js.map +1 -0
  272. package/components/Sticky/Sticky.js +1 -1
  273. package/components/Sticky/Sticky.js.map +1 -1
  274. package/components/Sticky/{Sticky.css.d.ts → Sticky.styles.d.ts} +1 -1
  275. package/components/Sticky/Sticky.styles.js +27 -0
  276. package/components/Sticky/Sticky.styles.js.map +1 -0
  277. package/components/Switcher/Switcher.js +1 -1
  278. package/components/Switcher/Switcher.js.map +1 -1
  279. package/components/Switcher/{Switcher.css.d.ts → Switcher.styles.d.ts} +1 -1
  280. package/components/Switcher/Switcher.styles.js +39 -0
  281. package/components/Switcher/Switcher.styles.js.map +1 -0
  282. package/components/Tabs/Indicator.js +1 -1
  283. package/components/Tabs/Indicator.js.map +1 -1
  284. package/components/Tabs/{Indicator.css.d.ts → Indicator.styles.d.ts} +1 -1
  285. package/components/Tabs/Indicator.styles.js +27 -0
  286. package/components/Tabs/Indicator.styles.js.map +1 -0
  287. package/components/Tabs/Tab.js +1 -1
  288. package/components/Tabs/Tab.js.map +1 -1
  289. package/components/Tabs/{Tab.css.d.ts → Tab.styles.d.ts} +3 -3
  290. package/components/Tabs/Tab.styles.js +105 -0
  291. package/components/Tabs/Tab.styles.js.map +1 -0
  292. package/components/Tabs/Tabs.js +1 -1
  293. package/components/Tabs/Tabs.js.map +1 -1
  294. package/components/Tabs/{Tabs.css.d.ts → Tabs.styles.d.ts} +1 -1
  295. package/components/Tabs/Tabs.styles.js +26 -0
  296. package/components/Tabs/Tabs.styles.js.map +1 -0
  297. package/components/Textarea/Textarea.js +1 -1
  298. package/components/Textarea/Textarea.js.map +1 -1
  299. package/components/Textarea/{Textarea.css.d.ts → Textarea.styles.d.ts} +1 -1
  300. package/components/Textarea/Textarea.styles.js +73 -0
  301. package/components/Textarea/Textarea.styles.js.map +1 -0
  302. package/components/Textarea/TextareaCounter.js +1 -1
  303. package/components/Textarea/TextareaCounter.js.map +1 -1
  304. package/components/TimePicker/TimePicker.js +1 -1
  305. package/components/TimePicker/TimePicker.js.map +1 -1
  306. package/components/TimePicker/{TimePicker.css.d.ts → TimePicker.styles.d.ts} +1 -1
  307. package/components/TimePicker/TimePicker.styles.js +39 -0
  308. package/components/TimePicker/TimePicker.styles.js.map +1 -0
  309. package/components/TimePicker/TimePickerItems.js +1 -1
  310. package/components/TimePicker/TimePickerItems.js.map +1 -1
  311. package/components/TimePicker/TimePickerPopup.js +1 -1
  312. package/components/TimePicker/TimePickerPopup.js.map +1 -1
  313. package/components/Toast/Toast.js +1 -1
  314. package/components/Toast/Toast.js.map +1 -1
  315. package/components/Toast/{Toast.css.d.ts → Toast.styles.d.ts} +1 -1
  316. package/components/Toast/Toast.styles.js +24 -0
  317. package/components/Toast/Toast.styles.js.map +1 -0
  318. package/components/Toast/ToastView.js +1 -1
  319. package/components/Toast/ToastView.js.map +1 -1
  320. package/components/Toast/{ToastView.css.d.ts → ToastView.styles.d.ts} +1 -1
  321. package/components/Toast/ToastView.styles.js +67 -0
  322. package/components/Toast/ToastView.styles.js.map +1 -0
  323. package/components/Toggle/Toggle.js +1 -1
  324. package/components/Toggle/Toggle.js.map +1 -1
  325. package/components/Toggle/Toggle.mixins.js +7 -4
  326. package/components/Toggle/Toggle.mixins.js.map +1 -1
  327. package/components/Toggle/{Toggle.css.d.ts → Toggle.styles.d.ts} +1 -2
  328. package/components/Toggle/Toggle.styles.js +147 -0
  329. package/components/Toggle/Toggle.styles.js.map +1 -0
  330. package/components/Token/Token.js +1 -1
  331. package/components/Token/Token.js.map +1 -1
  332. package/components/Token/{Token.css.d.ts → Token.styles.d.ts} +1 -1
  333. package/components/Token/Token.styles.js +67 -0
  334. package/components/Token/Token.styles.js.map +1 -0
  335. package/components/Token/TokenView.js +1 -1
  336. package/components/Token/TokenView.js.map +1 -1
  337. package/components/TokenInput/TextWidthHelper.js +1 -1
  338. package/components/TokenInput/TextWidthHelper.js.map +1 -1
  339. package/components/TokenInput/TokenInput.js +1 -1
  340. package/components/TokenInput/TokenInput.js.map +1 -1
  341. package/components/TokenInput/{TokenInput.css.d.ts → TokenInput.styles.d.ts} +1 -1
  342. package/components/TokenInput/TokenInput.styles.js +68 -0
  343. package/components/TokenInput/TokenInput.styles.js.map +1 -0
  344. package/components/Tooltip/Tooltip.js +1 -1
  345. package/components/Tooltip/Tooltip.js.map +1 -1
  346. package/components/Tooltip/{Tooltip.css.d.ts → Tooltip.styles.d.ts} +1 -1
  347. package/components/Tooltip/Tooltip.styles.js +36 -0
  348. package/components/Tooltip/Tooltip.styles.js.map +1 -0
  349. package/internal/ClearCrossIcon/ClearCrossIcon.js +1 -1
  350. package/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
  351. package/internal/ClearCrossIcon/{ClearCrossIcon.css.d.ts → ClearCrossIcon.styles.d.ts} +3 -2
  352. package/internal/ClearCrossIcon/ClearCrossIcon.styles.js +36 -0
  353. package/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -0
  354. package/internal/CloseButtonIcon/CloseButtonIcon.js +8 -13
  355. package/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
  356. package/internal/CloseButtonIcon/{CloseButtonIcon.css.d.ts → CloseButtonIcon.styles.d.ts} +3 -4
  357. package/internal/CloseButtonIcon/CloseButtonIcon.styles.js +24 -0
  358. package/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -0
  359. package/internal/CommonWrapper/CommonWrapper.d.ts +1 -6
  360. package/internal/CommonWrapper/CommonWrapper.js +4 -18
  361. package/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  362. package/internal/CustomComboBox/ComboBoxView.js +2 -2
  363. package/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  364. package/internal/CustomComboBox/CustomComboBox.styles.d.ts +4 -0
  365. package/internal/CustomComboBox/CustomComboBox.styles.js +18 -0
  366. package/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -0
  367. package/internal/DateSelect/DateSelect.js +1 -1
  368. package/internal/DateSelect/DateSelect.js.map +1 -1
  369. package/internal/DateSelect/{DateSelect.css.d.ts → DateSelect.styles.d.ts} +1 -1
  370. package/internal/DateSelect/DateSelect.styles.js +24 -0
  371. package/internal/DateSelect/DateSelect.styles.js.map +1 -0
  372. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +1 -1
  373. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +11 -7
  374. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
  375. package/internal/InputLikeText/InputLikeText.js +2 -2
  376. package/internal/InputLikeText/InputLikeText.js.map +1 -1
  377. package/internal/InputLikeText/{InputLikeText.css.d.ts → InputLikeText.styles.d.ts} +1 -1
  378. package/internal/InputLikeText/InputLikeText.styles.js +30 -0
  379. package/internal/InputLikeText/InputLikeText.styles.js.map +1 -0
  380. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +4 -4
  381. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
  382. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
  383. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +15 -0
  384. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
  385. package/internal/MaskCharLowLine/MaskCharLowLine.js +1 -1
  386. package/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
  387. package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -0
  388. package/internal/MaskCharLowLine/MaskCharLowLine.styles.js +15 -0
  389. package/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -0
  390. package/internal/Menu/Menu.js +1 -1
  391. package/internal/Menu/Menu.js.map +1 -1
  392. package/internal/Menu/{Menu.css.d.ts → Menu.styles.d.ts} +1 -1
  393. package/internal/Menu/Menu.styles.js +51 -0
  394. package/internal/Menu/Menu.styles.js.map +1 -0
  395. package/internal/MenuMessage/MenuMessage.js +1 -1
  396. package/internal/MenuMessage/MenuMessage.js.map +1 -1
  397. package/internal/MenuMessage/{MenuMessage.css.d.ts → MenuMessage.styles.d.ts} +1 -1
  398. package/internal/MenuMessage/MenuMessage.styles.js +41 -0
  399. package/internal/MenuMessage/MenuMessage.styles.js.map +1 -0
  400. package/internal/MobilePopup/MobilePopup.js +1 -1
  401. package/internal/MobilePopup/MobilePopup.js.map +1 -1
  402. package/internal/MobilePopup/{MobilePopup.css.d.ts → MobilePopup.styles.d.ts} +1 -1
  403. package/internal/MobilePopup/MobilePopup.styles.js +57 -0
  404. package/internal/MobilePopup/MobilePopup.styles.js.map +1 -0
  405. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +1 -1
  406. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
  407. package/internal/MobilePopup/MobilePopupFooter/{MobilePopupFooter.css.d.ts → MobilePopupFooter.styles.d.ts} +1 -1
  408. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +25 -0
  409. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -0
  410. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +1 -1
  411. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
  412. package/internal/MobilePopup/MobilePopupHeader/{MobilePopupHeader.css.d.ts → MobilePopupHeader.styles.d.ts} +1 -1
  413. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +47 -0
  414. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -0
  415. package/internal/NativeDateInput/NativeDateInput.js +1 -1
  416. package/internal/NativeDateInput/NativeDateInput.js.map +1 -1
  417. package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -0
  418. package/internal/NativeDateInput/NativeDateInput.styles.js +15 -0
  419. package/internal/NativeDateInput/NativeDateInput.styles.js.map +1 -0
  420. package/internal/NativeTimeInput/NativeTimeInput.js +1 -1
  421. package/internal/NativeTimeInput/NativeTimeInput.js.map +1 -1
  422. package/internal/NativeTimeInput/NativeTimeInput.styles.d.ts +3 -0
  423. package/internal/NativeTimeInput/NativeTimeInput.styles.js +15 -0
  424. package/internal/NativeTimeInput/NativeTimeInput.styles.js.map +1 -0
  425. package/internal/Popup/Popup.js +1 -1
  426. package/internal/Popup/Popup.js.map +1 -1
  427. package/internal/Popup/{Popup.css.d.ts → Popup.styles.d.ts} +1 -1
  428. package/internal/Popup/Popup.styles.js +69 -0
  429. package/internal/Popup/Popup.styles.js.map +1 -0
  430. package/internal/Popup/PopupPin.js +1 -1
  431. package/internal/Popup/PopupPin.js.map +1 -1
  432. package/internal/Popup/{PopupPin.css.d.ts → PopupPin.styles.d.ts} +1 -1
  433. package/internal/Popup/PopupPin.styles.js +33 -0
  434. package/internal/Popup/PopupPin.styles.js.map +1 -0
  435. package/internal/PopupMenu/PopupMenu.js +1 -1
  436. package/internal/PopupMenu/PopupMenu.js.map +1 -1
  437. package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -0
  438. package/internal/PopupMenu/PopupMenu.styles.js +18 -0
  439. package/internal/PopupMenu/PopupMenu.styles.js.map +1 -0
  440. package/internal/RenderContainer/RenderContainer.d.ts +0 -1
  441. package/internal/RenderContainer/RenderContainer.js +1 -26
  442. package/internal/RenderContainer/RenderContainer.js.map +1 -1
  443. package/internal/ResizeDetector/ResizeDetector.js +1 -1
  444. package/internal/ResizeDetector/ResizeDetector.js.map +1 -1
  445. package/internal/ResizeDetector/{ResizeDetector.css.d.ts → ResizeDetector.styles.d.ts} +1 -1
  446. package/internal/ResizeDetector/ResizeDetector.styles.js +27 -0
  447. package/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -0
  448. package/internal/SpinnerIcon/SpinnerIcon.js +1 -1
  449. package/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
  450. package/internal/SpinnerIcon/{SpinnerIcon.css.d.ts → SpinnerIcon.styles.d.ts} +1 -1
  451. package/internal/SpinnerIcon/SpinnerIcon.styles.js +24 -0
  452. package/internal/SpinnerIcon/SpinnerIcon.styles.js.map +1 -0
  453. package/internal/TextWidthHelper/TextWidthHelper.js +1 -1
  454. package/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
  455. package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
  456. package/internal/TextWidthHelper/TextWidthHelper.styles.js +18 -0
  457. package/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -0
  458. package/internal/TimeInput/TimeFragments.js +1 -1
  459. package/internal/TimeInput/TimeFragments.js.map +1 -1
  460. package/internal/TimeInput/{TimeFragments.css.d.ts → TimeFragments.styles.d.ts} +1 -1
  461. package/internal/TimeInput/TimeFragments.styles.js +78 -0
  462. package/internal/TimeInput/TimeFragments.styles.js.map +1 -0
  463. package/internal/TimeInput/TimeInput.js +1 -1
  464. package/internal/TimeInput/TimeInput.js.map +1 -1
  465. package/internal/TimeInput/{TimeInput.css.d.ts → TimeInput.styles.d.ts} +1 -1
  466. package/internal/TimeInput/TimeInput.styles.js +24 -0
  467. package/internal/TimeInput/TimeInput.styles.js.map +1 -0
  468. package/internal/icons2022/BaseIcon.js +1 -1
  469. package/internal/icons2022/BaseIcon.js.map +1 -1
  470. package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
  471. package/internal/icons2022/BaseIcon.styles.js +16 -0
  472. package/internal/icons2022/BaseIcon.styles.js.map +1 -0
  473. package/internal/icons2022/LoadingIcon.js +1 -1
  474. package/internal/icons2022/LoadingIcon.js.map +1 -1
  475. package/lib/dom/tabbableHelpers.js +22 -1
  476. package/lib/dom/tabbableHelpers.js.map +1 -1
  477. package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +0 -6
  478. package/lib/styles/getLabGrotesqueBaselineCompensation.js +0 -26
  479. package/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
  480. package/lib/theming/AnimationKeyframes.d.ts +1 -1
  481. package/lib/theming/AnimationKeyframes.js +1 -1
  482. package/lib/theming/AnimationKeyframes.js.map +1 -1
  483. package/lib/theming/Emotion.d.ts +2 -6
  484. package/lib/theming/Emotion.js +11 -34
  485. package/lib/theming/Emotion.js.map +1 -1
  486. package/package.json +5 -15
  487. package/components/Autocomplete/Autocomplete.css.js +0 -3
  488. package/components/Autocomplete/Autocomplete.css.js.map +0 -1
  489. package/components/Button/Button.css.js +0 -5
  490. package/components/Button/Button.css.js.map +0 -1
  491. package/components/Button/ButtonIcon.css.js +0 -3
  492. package/components/Button/ButtonIcon.css.js.map +0 -1
  493. package/components/Calendar/Calendar.css.js +0 -3
  494. package/components/Calendar/Calendar.css.js.map +0 -1
  495. package/components/Calendar/DayCellView.css.js +0 -3
  496. package/components/Calendar/DayCellView.css.js.map +0 -1
  497. package/components/Calendar/MonthView.css.js +0 -3
  498. package/components/Calendar/MonthView.css.js.map +0 -1
  499. package/components/Center/Center.css.js +0 -3
  500. package/components/Center/Center.css.js.map +0 -1
  501. package/components/Checkbox/Checkbox.css.js +0 -5
  502. package/components/Checkbox/Checkbox.css.js.map +0 -1
  503. package/components/DateInput/DateFragmentsView.css.js +0 -3
  504. package/components/DateInput/DateFragmentsView.css.js.map +0 -1
  505. package/components/DateInput/DateInput.css.js +0 -3
  506. package/components/DateInput/DateInput.css.js.map +0 -1
  507. package/components/DatePicker/DatePicker.css.js +0 -3
  508. package/components/DatePicker/DatePicker.css.js.map +0 -1
  509. package/components/DatePicker/MobilePicker.css.d.ts +0 -3
  510. package/components/DatePicker/MobilePicker.css.js +0 -3
  511. package/components/DatePicker/MobilePicker.css.js.map +0 -1
  512. package/components/DateRangePicker/DateRangePicker.css.js +0 -3
  513. package/components/DateRangePicker/DateRangePicker.css.js.map +0 -1
  514. package/components/FileUploader/FileUploader.css.js +0 -6
  515. package/components/FileUploader/FileUploader.css.js.map +0 -1
  516. package/components/FileUploader/FileUploaderFile.css.js +0 -5
  517. package/components/FileUploader/FileUploaderFile.css.js.map +0 -1
  518. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.css.js +0 -5
  519. package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.css.js.map +0 -1
  520. package/components/GlobalLoader/GlobalLoaderView.css.d.ts +0 -21
  521. package/components/GlobalLoader/GlobalLoaderView.css.js +0 -4
  522. package/components/GlobalLoader/GlobalLoaderView.css.js.map +0 -1
  523. package/components/Group/Group.css.js +0 -3
  524. package/components/Group/Group.css.js.map +0 -1
  525. package/components/Hint/Hint.css.js +0 -3
  526. package/components/Hint/Hint.css.js.map +0 -1
  527. package/components/Input/Input.css.js +0 -3
  528. package/components/Input/Input.css.js.map +0 -1
  529. package/components/Input/InputLayout/InputLayout.css.js +0 -4
  530. package/components/Input/InputLayout/InputLayout.css.js.map +0 -1
  531. package/components/Kebab/Kebab.css.js +0 -3
  532. package/components/Kebab/Kebab.css.js.map +0 -1
  533. package/components/Link/Link.css.js +0 -3
  534. package/components/Link/Link.css.js.map +0 -1
  535. package/components/Loader/Loader.css.js +0 -3
  536. package/components/Loader/Loader.css.js.map +0 -1
  537. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.d.ts +0 -6
  538. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.js +0 -4
  539. package/components/MaskedInput/ColorableInputElement/ColorableInputElement.css.js.map +0 -1
  540. package/components/MaskedInput/MaskedInput.css.js +0 -4
  541. package/components/MaskedInput/MaskedInput.css.js.map +0 -1
  542. package/components/MaskedInputV2/MaskedInputV2.css.js +0 -4
  543. package/components/MaskedInputV2/MaskedInputV2.css.js.map +0 -1
  544. package/components/MaskedInputV2/internal/MaskedInternal.css.js +0 -4
  545. package/components/MaskedInputV2/internal/MaskedInternal.css.js.map +0 -1
  546. package/components/MenuFooter/MenuFooter.css.js +0 -3
  547. package/components/MenuFooter/MenuFooter.css.js.map +0 -1
  548. package/components/MenuHeader/MenuHeader.css.js +0 -3
  549. package/components/MenuHeader/MenuHeader.css.js.map +0 -1
  550. package/components/MenuItem/MenuItem.css.js +0 -3
  551. package/components/MenuItem/MenuItem.css.js.map +0 -1
  552. package/components/MenuSeparator/MenuSeparator.css.js +0 -3
  553. package/components/MenuSeparator/MenuSeparator.css.js.map +0 -1
  554. package/components/MiniModal/MiniModal.css.js +0 -4
  555. package/components/MiniModal/MiniModal.css.js.map +0 -1
  556. package/components/Modal/Modal.css.js +0 -4
  557. package/components/Modal/Modal.css.js.map +0 -1
  558. package/components/Paging/Paging.css.js +0 -3
  559. package/components/Paging/Paging.css.js.map +0 -1
  560. package/components/PasswordInput/PasswordInput.css.js +0 -3
  561. package/components/PasswordInput/PasswordInput.css.js.map +0 -1
  562. package/components/Radio/Radio.css.js +0 -5
  563. package/components/Radio/Radio.css.js.map +0 -1
  564. package/components/RadioGroup/RadioGroup.css.js +0 -3
  565. package/components/RadioGroup/RadioGroup.css.js.map +0 -1
  566. package/components/ScrollContainer/ScrollContainer.css.js +0 -4
  567. package/components/ScrollContainer/ScrollContainer.css.js.map +0 -1
  568. package/components/Select/Select.css.js +0 -3
  569. package/components/Select/Select.css.js.map +0 -1
  570. package/components/SidePage/SidePage.css.js +0 -3
  571. package/components/SidePage/SidePage.css.js.map +0 -1
  572. package/components/Spinner/Spinner.css.js +0 -3
  573. package/components/Spinner/Spinner.css.js.map +0 -1
  574. package/components/Sticky/Sticky.css.js +0 -3
  575. package/components/Sticky/Sticky.css.js.map +0 -1
  576. package/components/Switcher/Switcher.css.js +0 -3
  577. package/components/Switcher/Switcher.css.js.map +0 -1
  578. package/components/Tabs/Indicator.css.js +0 -3
  579. package/components/Tabs/Indicator.css.js.map +0 -1
  580. package/components/Tabs/Tab.css.js +0 -6
  581. package/components/Tabs/Tab.css.js.map +0 -1
  582. package/components/Tabs/Tabs.css.js +0 -3
  583. package/components/Tabs/Tabs.css.js.map +0 -1
  584. package/components/Textarea/Textarea.css.js +0 -3
  585. package/components/Textarea/Textarea.css.js.map +0 -1
  586. package/components/TimePicker/TimePicker.css.js +0 -3
  587. package/components/TimePicker/TimePicker.css.js.map +0 -1
  588. package/components/Toast/Toast.css.js +0 -3
  589. package/components/Toast/Toast.css.js.map +0 -1
  590. package/components/Toast/ToastView.css.js +0 -3
  591. package/components/Toast/ToastView.css.js.map +0 -1
  592. package/components/Toggle/Toggle.css.js +0 -5
  593. package/components/Toggle/Toggle.css.js.map +0 -1
  594. package/components/Token/Token.css.js +0 -4
  595. package/components/Token/Token.css.js.map +0 -1
  596. package/components/TokenInput/TokenInput.css.js +0 -4
  597. package/components/TokenInput/TokenInput.css.js.map +0 -1
  598. package/components/Tooltip/Tooltip.css.js +0 -3
  599. package/components/Tooltip/Tooltip.css.js.map +0 -1
  600. package/internal/ClearCrossIcon/ClearCrossIcon.css.js +0 -3
  601. package/internal/ClearCrossIcon/ClearCrossIcon.css.js.map +0 -1
  602. package/internal/CloseButtonIcon/CloseButtonIcon.css.js +0 -3
  603. package/internal/CloseButtonIcon/CloseButtonIcon.css.js.map +0 -1
  604. package/internal/CustomComboBox/CustomComboBox.css.d.ts +0 -4
  605. package/internal/CustomComboBox/CustomComboBox.css.js +0 -3
  606. package/internal/CustomComboBox/CustomComboBox.css.js.map +0 -1
  607. package/internal/DateSelect/DateSelect.css.js +0 -4
  608. package/internal/DateSelect/DateSelect.css.js.map +0 -1
  609. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.d.ts +0 -3
  610. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.js +0 -3
  611. package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.css.js.map +0 -1
  612. package/internal/InputLikeText/InputLikeText.css.js +0 -3
  613. package/internal/InputLikeText/InputLikeText.css.js.map +0 -1
  614. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.d.ts +0 -5
  615. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.js +0 -4
  616. package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.css.js.map +0 -1
  617. package/internal/MaskCharLowLine/MaskCharLowLine.css.d.ts +0 -3
  618. package/internal/MaskCharLowLine/MaskCharLowLine.css.js +0 -3
  619. package/internal/MaskCharLowLine/MaskCharLowLine.css.js.map +0 -1
  620. package/internal/Menu/Menu.css.js +0 -3
  621. package/internal/Menu/Menu.css.js.map +0 -1
  622. package/internal/MenuMessage/MenuMessage.css.js +0 -3
  623. package/internal/MenuMessage/MenuMessage.css.js.map +0 -1
  624. package/internal/MobilePopup/MobilePopup.css.js +0 -3
  625. package/internal/MobilePopup/MobilePopup.css.js.map +0 -1
  626. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.css.js +0 -3
  627. package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.css.js.map +0 -1
  628. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.css.js +0 -3
  629. package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.css.js.map +0 -1
  630. package/internal/NativeDateInput/NativeDateInput.css.d.ts +0 -3
  631. package/internal/NativeDateInput/NativeDateInput.css.js +0 -3
  632. package/internal/NativeDateInput/NativeDateInput.css.js.map +0 -1
  633. package/internal/NativeTimeInput/NativeTimeInput.css.d.ts +0 -3
  634. package/internal/NativeTimeInput/NativeTimeInput.css.js +0 -3
  635. package/internal/NativeTimeInput/NativeTimeInput.css.js.map +0 -1
  636. package/internal/Popup/Popup.css.js +0 -3
  637. package/internal/Popup/Popup.css.js.map +0 -1
  638. package/internal/Popup/PopupPin.css.js +0 -3
  639. package/internal/Popup/PopupPin.css.js.map +0 -1
  640. package/internal/PopupMenu/PopupMenu.css.d.ts +0 -4
  641. package/internal/PopupMenu/PopupMenu.css.js +0 -3
  642. package/internal/PopupMenu/PopupMenu.css.js.map +0 -1
  643. package/internal/ResizeDetector/ResizeDetector.css.js +0 -3
  644. package/internal/ResizeDetector/ResizeDetector.css.js.map +0 -1
  645. package/internal/SpinnerIcon/SpinnerIcon.css.js +0 -3
  646. package/internal/SpinnerIcon/SpinnerIcon.css.js.map +0 -1
  647. package/internal/TextWidthHelper/TextWidthHelper.css.d.ts +0 -4
  648. package/internal/TextWidthHelper/TextWidthHelper.css.js +0 -3
  649. package/internal/TextWidthHelper/TextWidthHelper.css.js.map +0 -1
  650. package/internal/TimeInput/TimeFragments.css.js +0 -3
  651. package/internal/TimeInput/TimeFragments.css.js.map +0 -1
  652. package/internal/TimeInput/TimeInput.css.js +0 -3
  653. package/internal/TimeInput/TimeInput.css.js.map +0 -1
  654. package/internal/icons2022/BaseIcon.css.d.ts +0 -3
  655. package/internal/icons2022/BaseIcon.css.js +0 -3
  656. package/internal/icons2022/BaseIcon.css.js.map +0 -1
  657. package/lib/styles/LabGrotesqueBaseline.css.d.ts +0 -1
  658. package/lib/styles/LabGrotesqueBaseline.css.js +0 -0
  659. package/lib/styles/LabGrotesqueBaseline.css.js.map +0 -1
  660. package/lib/theming/StaticStyles.d.ts +0 -30
  661. package/lib/theming/StaticStyles.js +0 -410
  662. package/lib/theming/StaticStyles.js.map +0 -1
  663. package/lib/theming/bindStaticStyles.d.ts +0 -4
  664. package/lib/theming/bindStaticStyles.js +0 -18
  665. package/lib/theming/bindStaticStyles.js.map +0 -1
  666. package/lib/theming/themeVars.d.ts +0 -26
  667. package/lib/theming/themeVars.js +0 -72
  668. package/lib/theming/themeVars.js.map +0 -1
  669. package/react-ui.css +0 -6926
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CloseButtonIcon.styles.js","sourceRoot":"","sources":["CloseButtonIcon.styles.tsx"],"names":[],"mappings":";;;;AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,OAAgB;IACxC,OAAA,YAAY,CAAC;QACX,IAAI,YAAC,CAAQ;YACX,OAAO,OAAO,CAAC,GAAG,sWAAA,YACd,EAAa,wFAGE,EAA0B,oBAClC,EAAmB,yDAER,EAAoB,GAAI,EAA0B,6EAI3D,EAAwB,sBAEpC,KAZG,WAAW,EAAE,EAGE,CAAC,CAAC,wBAAwB,EAClC,CAAC,CAAC,iBAAiB,EAER,CAAC,CAAC,kBAAkB,EAAI,CAAC,CAAC,wBAAwB,EAI3D,CAAC,CAAC,sBAAsB,EAEnC;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,mGAAA,mBACP,EAA2B,WACrC,KADU,CAAC,CAAC,yBAAyB,EACpC;QACJ,CAAC;QACD,KAAK,YAAC,CAAQ;YACZ,OAAO,OAAO,CAAC,GAAG,wGAAA,wBACF,EAAyB,WACxC,KADe,CAAC,CAAC,uBAAuB,EACvC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,OAAO,CAAC,GAAG,mRAAA,gNAQjB,KAAC;QACJ,CAAC;KACF,CAAC;AAtCF,CAsCE,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { resetButton } from '../../lib/styles/Mixins.js';\nimport { memoizeStyle } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\n\nexport const getStyles = (emotion: Emotion) =>\n memoizeStyle({\n root(t: Theme) {\n return emotion.css`\n ${resetButton()}\n display: inline-block;\n position: relative;\n border-radius: ${t.closeBtnIconBorderRadius};\n color: ${t.closeBtnIconColor};\n cursor: pointer;\n transition: color ${t.transitionDuration} ${t.transitionTimingFunction};\n\n &:enabled:focus,\n &:enabled:hover {\n color: ${t.closeBtnIconHoverColor};\n }\n `;\n },\n rootDisabled(t: Theme) {\n return emotion.css`\n color: ${t.closeBtnIconDisabledColor};\n `;\n },\n focus(t: Theme) {\n return emotion.css`\n box-shadow: ${t.closeBtnIconFocusShadow};\n `;\n },\n wrapper() {\n return emotion.css`\n box-sizing: content-box;\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n `;\n },\n });\n"]}
@@ -1,20 +1,15 @@
1
1
  import React from 'react';
2
2
  import type { TGetRootNode } from '../../lib/rootNode/index.js';
3
- import type { Theme } from '../../lib/theming/Theme.js';
4
3
  import type { CommonProps, CommonPropsRootNodeRef, CommonWrapperProps } from './types.js';
5
4
  export type CommonPropsWithRootNodeRef = CommonProps & CommonPropsRootNodeRef;
6
5
  export declare class CommonWrapper<P extends CommonPropsWithRootNodeRef> extends React.Component<CommonWrapperProps<P> & CommonPropsRootNodeRef> {
7
6
  static __KONTUR_REACT_UI__: string;
8
7
  static displayName: string;
9
- static contextType: React.Context<Readonly<typeof import("../themes/BasicTheme.js").BasicThemeClass>>;
10
- context: Theme;
11
- private carrierTheme;
12
8
  private cx;
13
9
  private child;
14
10
  getRootNode: TGetRootNode;
15
11
  private setRootNode;
16
12
  private rootNodeSubscription;
17
- render(): React.JSX.Element;
18
- private isHostChild;
13
+ render(): React.ReactNode;
19
14
  private ref;
20
15
  }
@@ -47,8 +47,6 @@ import { callChildRef } from '../../lib/callChildRef/callChildRef.js';
47
47
  import { getElementRef } from '../../lib/getElementRef.js';
48
48
  import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
49
49
  import { getRootNode, isInstanceWithRootNode, rootNode } from '../../lib/rootNode/index.js';
50
- import { ThemeContext } from '../../lib/theming/ThemeContext.js';
51
- import { getThemeSetTokens, getThemeVars, ThemeCarrierContext } from '../../lib/theming/themeVars.js';
52
50
  import { isFunction, isRefableElement } from '../../lib/utils.js';
53
51
  import { extractCommonProps } from './utils/extractCommonProps.js';
54
52
  import { getCommonVisualStateDataAttributes } from './utils/getCommonVisualStateDataAttributes.js';
@@ -56,7 +54,6 @@ var CommonWrapper = /** @class */ (function (_super) {
56
54
  __extends(CommonWrapper, _super);
57
55
  function CommonWrapper() {
58
56
  var _this = _super !== null && _super.apply(this, arguments) || this;
59
- _this.carrierTheme = null;
60
57
  _this.rootNodeSubscription = null;
61
58
  _this.ref = function (instance) {
62
59
  var _a, _b, _c, _d;
@@ -93,27 +90,16 @@ var CommonWrapper = /** @class */ (function (_super) {
93
90
  isRefableElement(child) && (childProps.ref = _this.ref);
94
91
  var classNames = _this.cx(child.props.className, className);
95
92
  classNames && (childProps.className = classNames);
96
- var setTokens = getThemeSetTokens(_this.context);
97
- setTokens && (childProps['data-k-set'] = setTokens);
98
- var styles = __assign(__assign(__assign({}, getThemeVars(_this.context, _this.carrierTheme)), child.props.style), style);
93
+ var styles = __assign(__assign({}, child.props.style), style);
99
94
  Object.keys(styles).length && (childProps.style = styles);
100
95
  return childProps;
101
96
  };
102
- return (React.createElement(ThemeCarrierContext.Consumer, null, function (carrierTheme) {
103
- _this.carrierTheme = carrierTheme;
104
- return (
105
- // носителем считаемся, только если переменные легли на DOM-узел: компонент может не донести style
106
- React.createElement(ThemeCarrierContext.Provider, { value: _this.isHostChild() ? _this.context : carrierTheme }, React.isValidElement(_this.child)
107
- ? React.cloneElement(_this.child, getChildProps(_this.child))
108
- : _this.child));
109
- }));
110
- };
111
- CommonWrapper.prototype.isHostChild = function () {
112
- return React.isValidElement(this.child) && typeof this.child.type === 'string';
97
+ return React.isValidElement(this.child)
98
+ ? React.cloneElement(this.child, getChildProps(this.child))
99
+ : this.child;
113
100
  };
114
101
  CommonWrapper.__KONTUR_REACT_UI__ = 'CommonWrapper';
115
102
  CommonWrapper.displayName = 'CommonWrapper';
116
- CommonWrapper.contextType = ThemeContext;
117
103
  CommonWrapper = __decorate([
118
104
  withRenderEnvironment,
119
105
  rootNode
@@ -1 +1 @@
1
- {"version":3,"file":"CommonWrapper.js","sourceRoot":"","sources":["CommonWrapper.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5F,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGlE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AAMnG;IAAyE,iCAExE;IAFD;;QAOU,kBAAY,GAAiB,IAAI,CAAC;QAMlC,0BAAoB,GAAoC,IAAI,CAAC;QAwD7D,SAAG,GAAG,UAAC,QAAuC;;YACpD,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEhD,yCAAyC;YACzC,iDAAiD;YACjD,MAAA,KAAI,CAAC,oBAAoB,0CAAE,MAAM,EAAE,CAAC;YACpC,KAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAEjC,IAAI,QAAQ,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjD,KAAI,CAAC,oBAAoB,GAAG,MAAA,QAAQ,CAAC,yBAAyB,yDAAG,UAAC,IAAI;;oBACpE,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACvB,MAAA,MAAA,KAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,IAAI,CAAC,CAAC;gBACjC,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAM,WAAW,GAAG,aAAa,CAAC,KAAI,CAAC,KAA2B,CAAC,CAAC;YACpE,IAAI,OAAO,WAAW,KAAK,UAAU,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC1F,WAAW,IAAI,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC;;IACJ,CAAC;IA3EC,8BAAM,GAAN;QAAA,iBAgDC;QA/CO,IAAA,KAA2E,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,0BAAtG,SAAS,eAAA,EAAE,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAK,SAAS,cAAvD,iDAAyD,CAAF,EAAS,IAAI,cAAT,EAAW,CAAkC,CAAC;QAChH,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE9D,uCAAuC;QACvC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,KAAK,EAAE,sCAAsC,CAAC,CAAC;QACzD,CAAC;QAED,IAAM,aAAa,GAAG,UAAC,KAAiE;YACtF,IAAM,UAAU,yBACX,kCAAkC,CAAC,IAAI,CAAC,GACxC,SAAS,CACb,CAAC;YAEF,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,KAAI,CAAC,GAAG,CAAC,CAAC;YAEvD,IAAM,UAAU,GAAW,KAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACrE,UAAU,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;YAElD,IAAM,SAAS,GAAG,iBAAiB,CAAC,KAAI,CAAC,OAAO,CAAC,CAAC;YAClD,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC;YAEpD,IAAM,MAAM,kCACP,YAAY,CAAC,KAAI,CAAC,OAAO,EAAE,KAAI,CAAC,YAAY,CAAC,GAC7C,KAAK,CAAC,KAAK,CAAC,KAAK,GACjB,KAAK,CACT,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;YAE1D,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;QAEF,OAAO,CACL,oBAAC,mBAAmB,CAAC,QAAQ,QAC1B,UAAC,YAAY;YACZ,KAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YACjC,OAAO;YACL,kGAAkG;YAClG,oBAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,IAClF,KAAK,CAAC,cAAc,CAAyC,KAAI,CAAC,KAAK,CAAC;gBACvE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAI,CAAC,KAAK,EAAE,aAAa,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC;gBAC3D,CAAC,CAAC,KAAI,CAAC,KAAK,CACe,CAChC,CAAC;QACJ,CAAC,CAC4B,CAChC,CAAC;IACJ,CAAC;IAEO,mCAAW,GAAnB;QACE,OAAO,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;IACjF,CAAC;IAhEa,iCAAmB,GAAG,eAAe,AAAlB,CAAmB;IACtC,yBAAW,GAAG,eAAe,AAAlB,CAAmB;IAC9B,yBAAW,GAAG,YAAY,AAAf,CAAgB;IAL9B,aAAa;QAFzB,qBAAqB;QACrB,QAAQ;OACI,aAAa,CA0FzB;IAAD,oBAAC;CAAA,AA1FD,CAAyE,KAAK,CAAC,SAAS,GA0FvF;SA1FY,aAAa","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef.js';\nimport { getElementRef } from '../../lib/getElementRef.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TRootNodeSubscription, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, isInstanceWithRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { getThemeSetTokens, getThemeVars, ThemeCarrierContext } from '../../lib/theming/themeVars.js';\nimport { isFunction, isRefableElement } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport type { CommonProps, CommonPropsRootNodeRef, CommonWrapperProps } from './types.js';\nimport { extractCommonProps } from './utils/extractCommonProps.js';\nimport { getCommonVisualStateDataAttributes } from './utils/getCommonVisualStateDataAttributes.js';\n\nexport type CommonPropsWithRootNodeRef = CommonProps & CommonPropsRootNodeRef;\n\n@withRenderEnvironment\n@rootNode\nexport class CommonWrapper<P extends CommonPropsWithRootNodeRef> extends React.Component<\n CommonWrapperProps<P> & CommonPropsRootNodeRef\n> {\n public static __KONTUR_REACT_UI__ = 'CommonWrapper';\n public static displayName = 'CommonWrapper';\n public static contextType = ThemeContext;\n public context!: Theme;\n private carrierTheme: Theme | null = null;\n\n private cx!: Emotion['cx'];\n private child: React.ReactNode;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private rootNodeSubscription: Nullable<TRootNodeSubscription> = null;\n\n render() {\n const [{ className, style, children, rootNodeRef, ...dataProps }, { ...rest }] = extractCommonProps(this.props);\n this.child = isFunction(children) ? children(rest) : children;\n\n // TODO: replace count with only in 7.0\n if (React.Children.count(this.child) > 1) {\n warning(false, 'CommonWrapper expects a single child');\n }\n\n const getChildProps = (child: React.ReactElement<CommonProps & React.RefAttributes<any>>) => {\n const childProps: Record<string, unknown> = {\n ...getCommonVisualStateDataAttributes(rest),\n ...dataProps,\n };\n\n isRefableElement(child) && (childProps.ref = this.ref);\n\n const classNames: string = this.cx(child.props.className, className);\n classNames && (childProps.className = classNames);\n\n const setTokens = getThemeSetTokens(this.context);\n setTokens && (childProps['data-k-set'] = setTokens);\n\n const styles: React.CSSProperties = {\n ...getThemeVars(this.context, this.carrierTheme),\n ...child.props.style,\n ...style,\n };\n Object.keys(styles).length && (childProps.style = styles);\n\n return childProps;\n };\n\n return (\n <ThemeCarrierContext.Consumer>\n {(carrierTheme) => {\n this.carrierTheme = carrierTheme;\n return (\n // носителем считаемся, только если переменные легли на DOM-узел: компонент может не донести style\n <ThemeCarrierContext.Provider value={this.isHostChild() ? this.context : carrierTheme}>\n {React.isValidElement<CommonProps & React.RefAttributes<any>>(this.child)\n ? React.cloneElement(this.child, getChildProps(this.child))\n : this.child}\n </ThemeCarrierContext.Provider>\n );\n }}\n </ThemeCarrierContext.Consumer>\n );\n }\n\n private isHostChild() {\n return React.isValidElement(this.child) && typeof this.child.type === 'string';\n }\n\n private ref = (instance: Nullable<React.ReactInstance>) => {\n this.setRootNode(instance);\n this.props.rootNodeRef?.(getRootNode(instance));\n\n // refs are called when instances change,\n // so we have to renew or remove old subscription\n this.rootNodeSubscription?.remove();\n this.rootNodeSubscription = null;\n\n if (instance && isInstanceWithRootNode(instance)) {\n this.rootNodeSubscription = instance.addRootNodeChangeListener?.((node) => {\n this.setRootNode(node);\n this.props.rootNodeRef?.(node);\n });\n }\n\n const originalRef = getElementRef(this.child as React.ReactElement);\n if (typeof originalRef === 'function' || (originalRef && typeof originalRef === 'object')) {\n originalRef && callChildRef(originalRef, instance);\n }\n };\n}\n"]}
1
+ {"version":3,"file":"CommonWrapper.js","sourceRoot":"","sources":["CommonWrapper.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\nimport warning from 'warning';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef.js';\nimport { getElementRef } from '../../lib/getElementRef.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TRootNodeSubscription, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, isInstanceWithRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport { isFunction, isRefableElement } from '../../lib/utils.js';\nimport type { Nullable } from '../../typings/utility-types.js';\nimport type { CommonProps, CommonPropsRootNodeRef, CommonWrapperProps } from './types.js';\nimport { extractCommonProps } from './utils/extractCommonProps.js';\nimport { getCommonVisualStateDataAttributes } from './utils/getCommonVisualStateDataAttributes.js';\n\nexport type CommonPropsWithRootNodeRef = CommonProps & CommonPropsRootNodeRef;\n\n@withRenderEnvironment\n@rootNode\nexport class CommonWrapper<P extends CommonPropsWithRootNodeRef> extends React.Component<\n CommonWrapperProps<P> & CommonPropsRootNodeRef\n> {\n public static __KONTUR_REACT_UI__ = 'CommonWrapper';\n public static displayName = 'CommonWrapper';\n\n private cx!: Emotion['cx'];\n private child: React.ReactNode;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private rootNodeSubscription: Nullable<TRootNodeSubscription> = null;\n\n render() {\n const [{ className, style, children, rootNodeRef, ...dataProps }, { ...rest }] = extractCommonProps(this.props);\n this.child = isFunction(children) ? children(rest) : children;\n\n // TODO: replace count with only in 7.0\n if (React.Children.count(this.child) > 1) {\n warning(false, 'CommonWrapper expects a single child');\n }\n\n const getChildProps = (child: React.ReactElement<CommonProps & React.RefAttributes<any>>) => {\n const childProps: Record<string, unknown> = {\n ...getCommonVisualStateDataAttributes(rest),\n ...dataProps,\n };\n\n isRefableElement(child) && (childProps.ref = this.ref);\n\n const classNames: string = this.cx(child.props.className, className);\n classNames && (childProps.className = classNames);\n\n const styles: React.CSSProperties = { ...child.props.style, ...style };\n Object.keys(styles).length && (childProps.style = styles);\n\n return childProps;\n };\n\n return React.isValidElement<CommonProps & React.RefAttributes<any>>(this.child)\n ? React.cloneElement(this.child, getChildProps(this.child))\n : this.child;\n }\n\n private ref = (instance: Nullable<React.ReactInstance>) => {\n this.setRootNode(instance);\n this.props.rootNodeRef?.(getRootNode(instance));\n\n // refs are called when instances change,\n // so we have to renew or remove old subscription\n this.rootNodeSubscription?.remove();\n this.rootNodeSubscription = null;\n\n if (instance && isInstanceWithRootNode(instance)) {\n this.rootNodeSubscription = instance.addRootNodeChangeListener?.((node) => {\n this.setRootNode(node);\n this.props.rootNodeRef?.(node);\n });\n }\n\n const originalRef = getElementRef(this.child as React.ReactElement);\n if (typeof originalRef === 'function' || (originalRef && typeof originalRef === 'object')) {\n originalRef && callChildRef(originalRef, instance);\n }\n };\n}\n"]}
@@ -33,7 +33,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
33
33
  import React from 'react';
34
34
  import { Input } from '../../components/Input/index.js';
35
35
  import { MaskedInput } from '../../components/MaskedInput/index.js';
36
- import { getStyles as getMaskedInputStyles } from '../../components/MaskedInput/MaskedInput.css.js';
36
+ import { getStyles as getMaskedInputStyles } from '../../components/MaskedInput/MaskedInput.styles.js';
37
37
  import { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';
38
38
  import { Spinner } from '../../components/Spinner/index.js';
39
39
  import { createPropsGetter } from '../../lib/createPropsGetter.js';
@@ -54,8 +54,8 @@ import { RenderLayer } from '../RenderLayer/index.js';
54
54
  import { ZIndex } from '../ZIndex/index.js';
55
55
  import { ArrowDownIcon } from './ArrowDownIcon.js';
56
56
  import { ComboBoxMenu } from './ComboBoxMenu.js';
57
- import { getStyles } from './CustomComboBox.css.js';
58
57
  import { CustomComboBoxDataTids } from './CustomComboBox.js';
58
+ import { getStyles } from './CustomComboBox.styles.js';
59
59
  import { ComboBoxRequestStatus } from './CustomComboBoxTypes.js';
60
60
  import { getComboBoxTheme } from './getComboBoxTheme.js';
61
61
  export var ComboBoxViewIds = {
@@ -1 +1 @@
1
- {"version":3,"file":"ComboBoxView.js","sourceRoot":"","sources":["ComboBoxView.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox/index.js';\nimport type { InputIconType, InputProps, ShowClearIcon } from '../../components/Input/index.js';\nimport { Input } from '../../components/Input/index.js';\nimport type { MaskedInputOnBeforePasteValue, MaskedInputProps } from '../../components/MaskedInput/index.js';\nimport { MaskedInput } from '../../components/MaskedInput/index.js';\nimport { getStyles as getMaskedInputStyles } from '../../components/MaskedInput/MaskedInput.css.js';\nimport type { MenuItemState } from '../../components/MenuItem/index.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport { Spinner } from '../../components/Spinner/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { getMenuPositions } from '../../lib/getMenuPositions.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 { withSize } from '../../lib/size/SizeDecorator.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport { getRandomID, 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 { LoadingIcon } from '../icons2022/LoadingIcon.js';\nimport { InputLikeText } from '../InputLikeText/index.js';\nimport { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout.js';\nimport type { Menu } from '../Menu/index.js';\nimport { MobilePopup } from '../MobilePopup/index.js';\nimport { Popup } from '../Popup/index.js';\nimport { RenderLayer } from '../RenderLayer/index.js';\nimport { ZIndex } from '../ZIndex/index.js';\nimport { ArrowDownIcon } from './ArrowDownIcon.js';\nimport { ComboBoxMenu } from './ComboBoxMenu.js';\nimport { getStyles } from './CustomComboBox.css.js';\nimport { CustomComboBoxDataTids } from './CustomComboBox.js';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes.js';\nimport { getComboBoxTheme } from './getComboBoxTheme.js';\n\ninterface ComboBoxViewProps<T>\n extends\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps,\n Partial<Pick<MaskedInputProps, 'mask' | 'maskChar' | 'formatChars'>> {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: SizeProp;\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onBeforePasteInMask?: MaskedInputOnBeforePasteValue;\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onMobileClose?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onArrowClick?: () => void;\n onClearCrossClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input | InternalTextareaWithLayout>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n viewMode?: ComboBoxViewMode;\n maxRows?: number;\n preventIconsOffset?: boolean;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'width'\n | 'showClearIcon'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n arrow: 'ComboBoxView__arrow',\n};\n\ninterface ComboBoxViewState {\n anchorElement: Nullable<Element>;\n clearCrossShowed: boolean;\n}\n\n@withRenderEnvironment\n@responsiveLayout\n@rootNode\n@withSize\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n public static displayName = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n width: 250,\n showClearIcon: 'never',\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private input: Nullable<Input | InternalTextareaWithLayout>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<Popup>();\n private styles!: ReturnType<typeof getStyles>;\n private maskedInputStyles!: ReturnType<typeof getMaskedInputStyles>;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private theme!: Theme;\n private size!: SizeProp;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public state: ComboBoxViewState = {\n anchorElement: null,\n clearCrossShowed: this.props.showClearIcon === 'always' && !!this.props.value?.toString(),\n };\n\n public componentDidMount() {\n this.updateAnchorElement();\n\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n }\n\n updateAnchorElement() {\n const parent = this.getParent();\n const anchorElement = this.state.anchorElement;\n\n if (anchorElement !== parent) {\n this.setState({\n anchorElement: parent,\n });\n }\n }\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n this.updateAnchorElement();\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n this.styles = getStyles(this.emotion);\n this.maskedInputStyles = getMaskedInputStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={this.styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const {\n items,\n loading,\n opened,\n refMenu,\n maxMenuHeight,\n renderTotalCount,\n renderNotFound,\n totalCount,\n preventIconsOffset,\n } = this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n hasMargin={false}\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={this.size}\n preventIconsOffset={preventIconsOffset}\n />\n );\n };\n\n private renderMenu = () => {\n const { opened, menuPos, menuAlign } = this.getProps();\n const { anchorElement } = this.state;\n\n return (\n opened &&\n anchorElement && (\n <Popup\n opened\n hasShadow\n tryBestFallbackPosition\n minWidth=\"100%\"\n anchorElement={anchorElement}\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n disablePortal={this.props.disablePortal}\n margin={parseInt(this.theme.menuOffsetY) - 1}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </Popup>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items, opened, onFocus, onInputValueChange, onInputKeyDown, placeholder, textValue } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const themeGTE6_1 = isThemeGTE(this.theme, '6.1');\n const inputProps: InputProps = {\n autoComplete: 'off',\n autoFocus: true,\n width: '100%',\n onFocus,\n onValueChange: onInputValueChange,\n onKeyDown: onInputKeyDown,\n value: textValue,\n placeholder,\n rightIcon,\n size: themeGTE6_1 ? this.size : undefined,\n };\n\n const themeDependantProps = themeGTE6_1\n ? {\n footerChildComponent: <Input ref={this.refMobileInput} {...inputProps} />,\n size: this.size,\n }\n : {\n headerChildComponent: <Input ref={this.refMobileInput} {...inputProps} />,\n };\n\n return (\n opened && (\n <MobilePopup {...themeDependantProps} onCloseRequest={this.props.onMobileClose} opened>\n {this.getComboBoxMenu()}\n </MobilePopup>\n )\n );\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n id,\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n showClearIcon,\n mask,\n maskChar,\n formatChars,\n onBeforePasteInMask,\n } = this.props;\n\n const rightIcon = this.getRightIcon();\n\n const inputProps = {\n id,\n align,\n borderless,\n disabled,\n error,\n maxLength: this.props.maxLength,\n onBlur: isMobile ? undefined : onInputBlur,\n onValueChange: onInputValueChange,\n onFocus: onInputFocus,\n onClick: isMobile ? this.handleMobileFocus : onInputClick,\n leftIcon,\n rightIcon,\n value: textValue || '',\n onKeyDown: onInputKeyDown,\n placeholder,\n width: '100%',\n ref: this.refInput,\n warning,\n inputMode,\n autoComplete: 'off',\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': this.menuId,\n 'aria-label': ariaLabel,\n showClearIcon,\n size: this.size,\n };\n\n const multilineTextareaProps = {\n autoResize: true,\n rows: 1,\n extraRow: false,\n maxRows: this.props.maxRows,\n };\n\n if (this.props.viewMode === 'multiline' && !mask) {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n if (editing) {\n if (mask) {\n return (\n <MaskedInput\n {...inputProps}\n type=\"text\"\n mask={mask}\n maskChar={maskChar}\n formatChars={formatChars}\n onBeforePasteValue={onBeforePasteInMask}\n />\n );\n }\n\n if (this.props.viewMode === 'multiline-editing') {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n return <Input {...inputProps} />;\n }\n\n const { renderValue } = this.getProps();\n return (\n <InputLikeText\n id={id}\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={this.size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n showClearIcon={showClearIcon}\n className={this.cx(mask && this.maskedInputStyles.root(this.theme))}\n onClearCrossClick={this.props.onClearCrossClick}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleMobileFocus = () => {\n this.props.onInputClick?.();\n\n this.mobileInput?.focus();\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.props.onMobileClose?.();\n }\n };\n\n private refInput = (input: Nullable<Input | InternalTextareaWithLayout>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={this.styles.spinnerWrapper()}>\n <Spinner size=\"small\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon } = this.props;\n const size = this.size;\n\n if (loading && items && !!items.length) {\n return <LoadingIcon size={size} />;\n }\n\n if (rightIcon || drawArrow) {\n return (\n rightIcon || (\n <ArrowDownIcon\n data-tid={ComboBoxViewIds.arrow}\n size={size}\n onMouseDown={(event) => event.preventDefault()}\n onClick={this.handleArrowClick}\n />\n )\n );\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n\n private handleArrowClick = (event: React.MouseEvent) => {\n event.preventDefault();\n this.props.onArrowClick?.();\n };\n}\n"]}
1
+ {"version":3,"file":"ComboBoxView.js","sourceRoot":"","sources":["ComboBoxView.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox/index.js';\nimport type { InputIconType, InputProps, ShowClearIcon } from '../../components/Input/index.js';\nimport { Input } from '../../components/Input/index.js';\nimport type { MaskedInputOnBeforePasteValue, MaskedInputProps } from '../../components/MaskedInput/index.js';\nimport { MaskedInput } from '../../components/MaskedInput/index.js';\nimport { getStyles as getMaskedInputStyles } from '../../components/MaskedInput/MaskedInput.styles.js';\nimport type { MenuItemState } from '../../components/MenuItem/index.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport { Spinner } from '../../components/Spinner/index.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { getMenuPositions } from '../../lib/getMenuPositions.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 { withSize } from '../../lib/size/SizeDecorator.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport { getRandomID, 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 { LoadingIcon } from '../icons2022/LoadingIcon.js';\nimport { InputLikeText } from '../InputLikeText/index.js';\nimport { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout.js';\nimport type { Menu } from '../Menu/index.js';\nimport { MobilePopup } from '../MobilePopup/index.js';\nimport { Popup } from '../Popup/index.js';\nimport { RenderLayer } from '../RenderLayer/index.js';\nimport { ZIndex } from '../ZIndex/index.js';\nimport { ArrowDownIcon } from './ArrowDownIcon.js';\nimport { ComboBoxMenu } from './ComboBoxMenu.js';\nimport { CustomComboBoxDataTids } from './CustomComboBox.js';\nimport { getStyles } from './CustomComboBox.styles.js';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes.js';\nimport { getComboBoxTheme } from './getComboBoxTheme.js';\n\ninterface ComboBoxViewProps<T>\n extends\n Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps,\n Partial<Pick<MaskedInputProps, 'mask' | 'maskChar' | 'formatChars'>> {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: SizeProp;\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onBeforePasteInMask?: MaskedInputOnBeforePasteValue;\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onMobileClose?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onArrowClick?: () => void;\n onClearCrossClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input | InternalTextareaWithLayout>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n viewMode?: ComboBoxViewMode;\n maxRows?: number;\n preventIconsOffset?: boolean;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'width'\n | 'showClearIcon'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n arrow: 'ComboBoxView__arrow',\n};\n\ninterface ComboBoxViewState {\n anchorElement: Nullable<Element>;\n clearCrossShowed: boolean;\n}\n\n@withRenderEnvironment\n@responsiveLayout\n@rootNode\n@withSize\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n public static displayName = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n width: 250,\n showClearIcon: 'never',\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private input: Nullable<Input | InternalTextareaWithLayout>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<Popup>();\n private styles!: ReturnType<typeof getStyles>;\n private maskedInputStyles!: ReturnType<typeof getMaskedInputStyles>;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private theme!: Theme;\n private size!: SizeProp;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public state: ComboBoxViewState = {\n anchorElement: null,\n clearCrossShowed: this.props.showClearIcon === 'always' && !!this.props.value?.toString(),\n };\n\n public componentDidMount() {\n this.updateAnchorElement();\n\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n }\n\n updateAnchorElement() {\n const parent = this.getParent();\n const anchorElement = this.state.anchorElement;\n\n if (anchorElement !== parent) {\n this.setState({\n anchorElement: parent,\n });\n }\n }\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n this.updateAnchorElement();\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n this.styles = getStyles(this.emotion);\n this.maskedInputStyles = getMaskedInputStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={this.styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const {\n items,\n loading,\n opened,\n refMenu,\n maxMenuHeight,\n renderTotalCount,\n renderNotFound,\n totalCount,\n preventIconsOffset,\n } = this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n hasMargin={false}\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={this.size}\n preventIconsOffset={preventIconsOffset}\n />\n );\n };\n\n private renderMenu = () => {\n const { opened, menuPos, menuAlign } = this.getProps();\n const { anchorElement } = this.state;\n\n return (\n opened &&\n anchorElement && (\n <Popup\n opened\n hasShadow\n tryBestFallbackPosition\n minWidth=\"100%\"\n anchorElement={anchorElement}\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n disablePortal={this.props.disablePortal}\n margin={parseInt(this.theme.menuOffsetY) - 1}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </Popup>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items, opened, onFocus, onInputValueChange, onInputKeyDown, placeholder, textValue } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const themeGTE6_1 = isThemeGTE(this.theme, '6.1');\n const inputProps: InputProps = {\n autoComplete: 'off',\n autoFocus: true,\n width: '100%',\n onFocus,\n onValueChange: onInputValueChange,\n onKeyDown: onInputKeyDown,\n value: textValue,\n placeholder,\n rightIcon,\n size: themeGTE6_1 ? this.size : undefined,\n };\n\n const themeDependantProps = themeGTE6_1\n ? {\n footerChildComponent: <Input ref={this.refMobileInput} {...inputProps} />,\n size: this.size,\n }\n : {\n headerChildComponent: <Input ref={this.refMobileInput} {...inputProps} />,\n };\n\n return (\n opened && (\n <MobilePopup {...themeDependantProps} onCloseRequest={this.props.onMobileClose} opened>\n {this.getComboBoxMenu()}\n </MobilePopup>\n )\n );\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n id,\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n showClearIcon,\n mask,\n maskChar,\n formatChars,\n onBeforePasteInMask,\n } = this.props;\n\n const rightIcon = this.getRightIcon();\n\n const inputProps = {\n id,\n align,\n borderless,\n disabled,\n error,\n maxLength: this.props.maxLength,\n onBlur: isMobile ? undefined : onInputBlur,\n onValueChange: onInputValueChange,\n onFocus: onInputFocus,\n onClick: isMobile ? this.handleMobileFocus : onInputClick,\n leftIcon,\n rightIcon,\n value: textValue || '',\n onKeyDown: onInputKeyDown,\n placeholder,\n width: '100%',\n ref: this.refInput,\n warning,\n inputMode,\n autoComplete: 'off',\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': this.menuId,\n 'aria-label': ariaLabel,\n showClearIcon,\n size: this.size,\n };\n\n const multilineTextareaProps = {\n autoResize: true,\n rows: 1,\n extraRow: false,\n maxRows: this.props.maxRows,\n };\n\n if (this.props.viewMode === 'multiline' && !mask) {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n if (editing) {\n if (mask) {\n return (\n <MaskedInput\n {...inputProps}\n type=\"text\"\n mask={mask}\n maskChar={maskChar}\n formatChars={formatChars}\n onBeforePasteValue={onBeforePasteInMask}\n />\n );\n }\n\n if (this.props.viewMode === 'multiline-editing') {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n return <Input {...inputProps} />;\n }\n\n const { renderValue } = this.getProps();\n return (\n <InputLikeText\n id={id}\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={this.size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n showClearIcon={showClearIcon}\n className={this.cx(mask && this.maskedInputStyles.root(this.theme))}\n onClearCrossClick={this.props.onClearCrossClick}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleMobileFocus = () => {\n this.props.onInputClick?.();\n\n this.mobileInput?.focus();\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.props.onMobileClose?.();\n }\n };\n\n private refInput = (input: Nullable<Input | InternalTextareaWithLayout>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={this.styles.spinnerWrapper()}>\n <Spinner size=\"small\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon } = this.props;\n const size = this.size;\n\n if (loading && items && !!items.length) {\n return <LoadingIcon size={size} />;\n }\n\n if (rightIcon || drawArrow) {\n return (\n rightIcon || (\n <ArrowDownIcon\n data-tid={ComboBoxViewIds.arrow}\n size={size}\n onMouseDown={(event) => event.preventDefault()}\n onClick={this.handleArrowClick}\n />\n )\n );\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n\n private handleArrowClick = (event: React.MouseEvent) => {\n event.preventDefault();\n this.props.onArrowClick?.();\n };\n}\n"]}
@@ -0,0 +1,4 @@
1
+ export declare const getStyles: import("../../lib/theming/Emotion.js").StylesGetter<{
2
+ root(): string;
3
+ spinnerWrapper(): string;
4
+ }>;
@@ -0,0 +1,18 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { memoizeGetStyles } from '../../lib/theming/Emotion.js';
6
+ export var getStyles = memoizeGetStyles(function (_a) {
7
+ var css = _a.css;
8
+ return ({
9
+ root: function () {
10
+ return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: inline-block;\n position: relative;\n line-height: normal;\n "], ["\n display: inline-block;\n position: relative;\n line-height: normal;\n "])));
11
+ },
12
+ spinnerWrapper: function () {
13
+ return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: inline-block;\n margin-right: -5px;\n "], ["\n display: inline-block;\n margin-right: -5px;\n "])));
14
+ },
15
+ });
16
+ });
17
+ var templateObject_1, templateObject_2;
18
+ //# sourceMappingURL=CustomComboBox.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomComboBox.styles.js","sourceRoot":"","sources":["CustomComboBox.styles.ts"],"names":[],"mappings":";;;;AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,MAAM,CAAC,IAAM,SAAS,GAAG,gBAAgB,CAAC,UAAC,EAAgB;QAAd,GAAG,SAAA;IAAgB,OAAA,CAAC;QAC/D,IAAI;YACF,OAAO,GAAG,gKAAA,6FAIT,KAAC;QACJ,CAAC;QAED,cAAc;YACZ,OAAO,GAAG,oIAAA,iEAGT,KAAC;QACJ,CAAC;KACF,CAAC;AAf8D,CAe9D,CAAC,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { memoizeGetStyles } from '../../lib/theming/Emotion.js';\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n root() {\n return css`\n display: inline-block;\n position: relative;\n line-height: normal;\n `;\n },\n\n spinnerWrapper() {\n return css`\n display: inline-block;\n margin-right: -5px;\n `;\n },\n}));\n"]}
@@ -41,7 +41,7 @@ import { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';
41
41
  import { ThemeContext } from '../../lib/theming/ThemeContext.js';
42
42
  import { getRandomID, isNonNullable } from '../../lib/utils.js';
43
43
  import { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js';
44
- import { getStyles, globalClasses } from './DateSelect.css.js';
44
+ import { getStyles, globalClasses } from './DateSelect.styles.js';
45
45
  var defaultMinMonth = 0;
46
46
  var defaultMaxMonth = 11;
47
47
  var defaultMinYear = 1900;
@@ -1 +1 @@
1
- {"version":3,"file":"DateSelect.js","sourceRoot":"","sources":["DateSelect.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React, { createRef } from 'react';\n\nimport type { DatePickerLocale } from '../../components/DatePicker/locale/index.js';\nimport { DatePickerLocaleHelper } from '../../components/DatePicker/locale/index.js';\nimport { MenuItem } from '../../components/MenuItem/index.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport type { ButtonParams } from '../../components/Select/index.js';\nimport { Select } from '../../components/Select/index.js';\nimport type { PopupPositionsType } from '../../internal/Popup/types.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { getRandomID, isNonNullable } from '../../lib/utils.js';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js';\nimport { getStyles, globalClasses } from './DateSelect.css.js';\n\nconst defaultMinMonth = 0;\nconst defaultMaxMonth = 11;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2099;\nconst months = range(defaultMinMonth, defaultMaxMonth);\nconst years = range(defaultMinYear, defaultMaxYear);\n\nfunction range(start: number, end: number) {\n return Array(end - start + 1)\n .fill(null)\n .map((_, index) => start + index);\n}\n\nexport interface DateSelectProps {\n disabled?: boolean;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n menu: 'DateSelect__menu',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\nconst DATE_SELECT_POSITIONS: PopupPositionsType[] = [\n 'middle left',\n 'middle right',\n 'bottom left',\n 'top left',\n 'bottom right',\n 'top right',\n];\n\n@withRenderEnvironment\n@responsiveLayout\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n public static displayName = 'DateSelect';\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n private get isYearType() {\n return this.getProps().type === 'year';\n }\n\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private readonly selectRef = createRef<Select<number, number>>();\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 private menuId = DateSelectDataTids.menu + getRandomID();\n\n private renderButton = (params: ButtonParams) => {\n const { value, disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: this.cx(this.styles.root(this.theme), disabled && this.styles.disabled()),\n style: { width },\n onClick: disabled ? undefined : params.onClick,\n 'aria-expanded': isInteractiveElement ? params.opened : undefined,\n 'aria-controls': !disabled ? this.menuId : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={this.styles.caption()}>\n {this.getItem(value)}\n </div>\n {isInteractiveElement && (\n <ArrowCollapseCVOpenIcon16Regular className={this.cx(globalClasses.arrow)} color=\"#ADADAD\" />\n )}\n </Tag>\n );\n };\n\n public close(): void {\n this.selectRef.current?.close();\n }\n\n private renderMain() {\n const { value, disabled, onValueChange } = this.getProps();\n const theme = {\n btnBorderRadiusSmall: this.theme.menuItemBorderRadius,\n };\n\n return (\n <Select\n use=\"text\"\n value={value}\n ref={this.selectRef}\n theme={theme}\n disabled={disabled}\n _renderButton={this.renderButton}\n menuPos=\"middle\"\n positions={DATE_SELECT_POSITIONS}\n renderValue={this.getItem}\n items={this.getItems()}\n menuOffset={parseInt(this.theme.menuPaddingX) + parseInt(this.theme.menuItemPaddingXSmall)}\n onValueChange={onValueChange}\n aria-label={`${this.locale.selectChosenAriaLabel} ${\n this.isYearType ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`}\n />\n );\n }\n\n private isOptionDisabled(option: number) {\n const { minValue, maxValue } = this.getProps();\n\n if (isNonNullable(maxValue) && isNonNullable(minValue)) {\n return option > maxValue || option < minValue;\n }\n\n if (isNonNullable(minValue)) {\n return option < minValue;\n }\n\n if (isNonNullable(maxValue)) {\n return option > maxValue;\n }\n }\n\n private getItems = () => {\n const { value, onValueChange } = this.getProps();\n const options = this.isYearType ? years : months;\n\n return options.map((option) => {\n const isSelected = option === value;\n const isOptionDisabled = this.isOptionDisabled(option);\n\n return (\n <MenuItem\n scrollIntoView={isSelected}\n disabled={isOptionDisabled}\n state={isSelected ? 'selected' : null}\n onClick={() => onValueChange(option)}\n aria-label={`Выбрать ${this.isYearType ? 'год' : 'месяц'} ${this.getItem(option)}`}\n data-tid={DateSelectDataTids.menuItem}\n data-disabled={isOptionDisabled}\n key={option}\n >\n {this.getItem(option)}\n </MenuItem>\n );\n });\n };\n\n private getItem = (value: number) => {\n if (this.isYearType) {\n return value;\n }\n\n return this.locale.months?.[value];\n };\n}\n"]}
1
+ {"version":3,"file":"DateSelect.js","sourceRoot":"","sources":["DateSelect.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React, { createRef } from 'react';\n\nimport type { DatePickerLocale } from '../../components/DatePicker/locale/index.js';\nimport { DatePickerLocaleHelper } from '../../components/DatePicker/locale/index.js';\nimport { MenuItem } from '../../components/MenuItem/index.js';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator.js';\nimport type { ButtonParams } from '../../components/Select/index.js';\nimport { Select } from '../../components/Select/index.js';\nimport type { PopupPositionsType } from '../../internal/Popup/types.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { locale } from '../../lib/locale/decorators.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { getRandomID, isNonNullable } from '../../lib/utils.js';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js';\nimport { getStyles, globalClasses } from './DateSelect.styles.js';\n\nconst defaultMinMonth = 0;\nconst defaultMaxMonth = 11;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2099;\nconst months = range(defaultMinMonth, defaultMaxMonth);\nconst years = range(defaultMinYear, defaultMaxYear);\n\nfunction range(start: number, end: number) {\n return Array(end - start + 1)\n .fill(null)\n .map((_, index) => start + index);\n}\n\nexport interface DateSelectProps {\n disabled?: boolean;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n menu: 'DateSelect__menu',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\nconst DATE_SELECT_POSITIONS: PopupPositionsType[] = [\n 'middle left',\n 'middle right',\n 'bottom left',\n 'top left',\n 'bottom right',\n 'top right',\n];\n\n@withRenderEnvironment\n@responsiveLayout\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n public static displayName = 'DateSelect';\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n private get isYearType() {\n return this.getProps().type === 'year';\n }\n\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private readonly selectRef = createRef<Select<number, number>>();\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 private menuId = DateSelectDataTids.menu + getRandomID();\n\n private renderButton = (params: ButtonParams) => {\n const { value, disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: this.cx(this.styles.root(this.theme), disabled && this.styles.disabled()),\n style: { width },\n onClick: disabled ? undefined : params.onClick,\n 'aria-expanded': isInteractiveElement ? params.opened : undefined,\n 'aria-controls': !disabled ? this.menuId : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={this.styles.caption()}>\n {this.getItem(value)}\n </div>\n {isInteractiveElement && (\n <ArrowCollapseCVOpenIcon16Regular className={this.cx(globalClasses.arrow)} color=\"#ADADAD\" />\n )}\n </Tag>\n );\n };\n\n public close(): void {\n this.selectRef.current?.close();\n }\n\n private renderMain() {\n const { value, disabled, onValueChange } = this.getProps();\n const theme = {\n btnBorderRadiusSmall: this.theme.menuItemBorderRadius,\n };\n\n return (\n <Select\n use=\"text\"\n value={value}\n ref={this.selectRef}\n theme={theme}\n disabled={disabled}\n _renderButton={this.renderButton}\n menuPos=\"middle\"\n positions={DATE_SELECT_POSITIONS}\n renderValue={this.getItem}\n items={this.getItems()}\n menuOffset={parseInt(this.theme.menuPaddingX) + parseInt(this.theme.menuItemPaddingXSmall)}\n onValueChange={onValueChange}\n aria-label={`${this.locale.selectChosenAriaLabel} ${\n this.isYearType ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`}\n />\n );\n }\n\n private isOptionDisabled(option: number) {\n const { minValue, maxValue } = this.getProps();\n\n if (isNonNullable(maxValue) && isNonNullable(minValue)) {\n return option > maxValue || option < minValue;\n }\n\n if (isNonNullable(minValue)) {\n return option < minValue;\n }\n\n if (isNonNullable(maxValue)) {\n return option > maxValue;\n }\n }\n\n private getItems = () => {\n const { value, onValueChange } = this.getProps();\n const options = this.isYearType ? years : months;\n\n return options.map((option) => {\n const isSelected = option === value;\n const isOptionDisabled = this.isOptionDisabled(option);\n\n return (\n <MenuItem\n scrollIntoView={isSelected}\n disabled={isOptionDisabled}\n state={isSelected ? 'selected' : null}\n onClick={() => onValueChange(option)}\n aria-label={`Выбрать ${this.isYearType ? 'год' : 'месяц'} ${this.getItem(option)}`}\n data-tid={DateSelectDataTids.menuItem}\n data-disabled={isOptionDisabled}\n key={option}\n >\n {this.getItem(option)}\n </MenuItem>\n );\n });\n };\n\n private getItem = (value: number) => {\n if (this.isYearType) {\n return value;\n }\n\n return this.locale.months?.[value];\n };\n}\n"]}
@@ -2,7 +2,7 @@ import type { Theme } from '../../lib/theming/Theme.js';
2
2
  export declare const globalClasses: {
3
3
  arrow: string;
4
4
  };
5
- export declare const getStyles: import("../../lib/theming/StaticStyles.js").StylesGetter<{
5
+ export declare const getStyles: import("../../lib/theming/Emotion.js").StylesGetter<{
6
6
  root(t: Theme): string;
7
7
  disabled(): string;
8
8
  caption(): string;
@@ -0,0 +1,24 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { memoizeGetStyles, prefix } from '../../lib/theming/Emotion.js';
6
+ export var globalClasses = prefix('select')({
7
+ arrow: 'arrow',
8
+ });
9
+ export var getStyles = memoizeGetStyles(function (_a) {
10
+ var css = _a.css;
11
+ return ({
12
+ root: function (t) {
13
+ return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n color: ", ";\n cursor: pointer;\n display: inline-flex;\n justify-content: space-between;\n font: inherit;\n font-size: ", ";\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ", ";\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ", ";\n }\n\n & .", " {\n transition: fill ", " ", ";\n }\n\n &:hover .", " {\n fill: ", " !important;\n }\n "], ["\n color: ", ";\n cursor: pointer;\n display: inline-flex;\n justify-content: space-between;\n font: inherit;\n font-size: ", ";\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ", ";\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ", ";\n }\n\n & .", " {\n transition: fill ", " ", ";\n }\n\n &:hover .", " {\n fill: ", " !important;\n }\n "])), t.dateSelectTextColorDefault, t.dateSelectFontSize, t.dateSelectLineHeight, t.dateSelectLinkColor, globalClasses.arrow, t.transitionDuration, t.transitionTimingFunction, globalClasses.arrow, t.dateSelectTextColorDefault);
14
+ },
15
+ disabled: function () {
16
+ return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: inherit !important; // override root:hover style\n cursor: default;\n "], ["\n color: inherit !important; // override root:hover style\n cursor: default;\n "])));
17
+ },
18
+ caption: function () {
19
+ return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: relative;\n "], ["\n position: relative;\n "])));
20
+ },
21
+ });
22
+ });
23
+ var templateObject_1, templateObject_2, templateObject_3;
24
+ //# sourceMappingURL=DateSelect.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateSelect.styles.js","sourceRoot":"","sources":["DateSelect.styles.ts"],"names":[],"mappings":";;;;AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGxE,MAAM,CAAC,IAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5C,KAAK,EAAE,OAAO;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,IAAM,SAAS,GAAG,gBAAgB,CAAC,UAAC,EAAgB;QAAd,GAAG,SAAA;IAAgB,OAAA,CAAC;QAC/D,IAAI,YAAC,CAAQ;YACX,OAAO,GAAG,kpBAAA,iBACC,EAA4B,wIAKxB,EAAoB,4KAOlB,EAAsB,6GAK1B,EAAqB,yBAG3B,EAAmB,+BACH,EAAoB,GAAI,EAA0B,+BAG5D,EAAmB,oBACpB,EAA4B,6BAEvC,KA3BU,CAAC,CAAC,0BAA0B,EAKxB,CAAC,CAAC,kBAAkB,EAOlB,CAAC,CAAC,oBAAoB,EAK1B,CAAC,CAAC,mBAAmB,EAG3B,aAAa,CAAC,KAAK,EACH,CAAC,CAAC,kBAAkB,EAAI,CAAC,CAAC,wBAAwB,EAG5D,aAAa,CAAC,KAAK,EACpB,CAAC,CAAC,0BAA0B,EAEtC;QACJ,CAAC;QAED,QAAQ;YACN,OAAO,GAAG,kKAAA,+FAGT,KAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,GAAG,sGAAA,mCAET,KAAC;QACJ,CAAC;KACF,CAAC;AA7C8D,CA6C9D,CAAC,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { memoizeGetStyles, prefix } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\n\nexport const globalClasses = prefix('select')({\n arrow: 'arrow',\n});\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n root(t: Theme) {\n return css`\n color: ${t.dateSelectTextColorDefault};\n cursor: pointer;\n display: inline-flex;\n justify-content: space-between;\n font: inherit;\n font-size: ${t.dateSelectFontSize};\n padding: 0px;\n padding-right: 2px;\n position: relative;\n text-align: left;\n touch-action: none;\n border: none;\n line-height: ${t.dateSelectLineHeight};\n background-color: transparent;\n box-sizing: content-box;\n\n &:hover {\n color: ${t.dateSelectLinkColor};\n }\n\n & .${globalClasses.arrow} {\n transition: fill ${t.transitionDuration} ${t.transitionTimingFunction};\n }\n\n &:hover .${globalClasses.arrow} {\n fill: ${t.dateSelectTextColorDefault} !important;\n }\n `;\n },\n\n disabled() {\n return css`\n color: inherit !important; // override root:hover style\n cursor: default;\n `;\n },\n\n caption() {\n return css`\n position: relative;\n `;\n },\n}));\n"]}
@@ -13,6 +13,6 @@ export declare class HideBodyVerticalScroll extends React.Component {
13
13
  render(): React.JSX.Element;
14
14
  static updateScrollVisibility: () => void;
15
15
  static hideScroll: () => void;
16
- static attachStyle: (element: HTMLElement, className: string, margin: number) => () => void;
16
+ static attachStyle: (element: HTMLElement, className: string) => () => void;
17
17
  private restoreStyles;
18
18
  }
@@ -13,12 +13,14 @@ var __extends = (this && this.__extends) || (function () {
13
13
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
14
  };
15
15
  })();
16
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
17
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
18
+ return cooked;
19
+ };
16
20
  import React from 'react';
17
21
  import { getScrollWidth } from '../../lib/dom/getScrollWidth.js';
18
22
  import { isBrowser } from '../../lib/globalObject.js';
19
23
  import { RenderEnvironmentContext } from '../../lib/renderEnvironment/index.js';
20
- import { getStyles } from './HideBodyVerticalScroll.css.js';
21
- var MARGIN_VARIABLE = '--react-ui-hide-body-scroll-margin';
22
24
  var disposeDocumentStyle = null;
23
25
  var HideBodyVerticalScroll = /** @class */ (function (_super) {
24
26
  __extends(HideBodyVerticalScroll, _super);
@@ -88,15 +90,13 @@ var HideBodyVerticalScroll = /** @class */ (function (_super) {
88
90
  var scrollbarConst = HideBodyVerticalScroll.globalObject.getComputedStyle(documentElement).overflowY === 'scroll';
89
91
  var scrollWidth = clientHeight < scrollHeight || scrollbarConst ? getScrollWidth(HideBodyVerticalScroll.globalObject) : 0;
90
92
  var documentMargin = parseFloat(documentComputedStyle.marginRight || '');
91
- var className = getStyles(HideBodyVerticalScroll.emotion).root();
92
- disposeDocumentStyle = HideBodyVerticalScroll.attachStyle(documentElement, className, documentMargin + scrollWidth);
93
+ var className = generateDocumentStyle(documentMargin + scrollWidth, HideBodyVerticalScroll.emotion);
94
+ disposeDocumentStyle = HideBodyVerticalScroll.attachStyle(documentElement, className);
93
95
  };
94
- HideBodyVerticalScroll.attachStyle = function (element, className, margin) {
95
- element.style.setProperty(MARGIN_VARIABLE, "".concat(margin, "px"));
96
+ HideBodyVerticalScroll.attachStyle = function (element, className) {
96
97
  element.classList.add(className);
97
98
  return function () {
98
99
  element.classList.remove(className);
99
- element.style.removeProperty(MARGIN_VARIABLE);
100
100
  };
101
101
  };
102
102
  return HideBodyVerticalScroll;
@@ -121,4 +121,8 @@ var VerticalScrollCounter = /** @class */ (function () {
121
121
  };
122
122
  return VerticalScrollCounter;
123
123
  }());
124
+ function generateDocumentStyle(documentMargin, emotion) {
125
+ return emotion.css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n overflow: hidden !important;\n margin-right: ", "px !important;\n height: 100%;\n "], ["\n overflow: hidden !important;\n margin-right: ", "px !important;\n height: 100%;\n "])), documentMargin);
126
+ }
127
+ var templateObject_1;
124
128
  //# sourceMappingURL=HideBodyVerticalScroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HideBodyVerticalScroll.js","sourceRoot":"","sources":["HideBodyVerticalScroll.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { getScrollWidth } from '../../lib/dom/getScrollWidth.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isBrowser } from '../../lib/globalObject.js';\nimport { RenderEnvironmentContext } from '../../lib/renderEnvironment/index.js';\nimport { getStyles } from './HideBodyVerticalScroll.css.js';\n\nconst MARGIN_VARIABLE = '--react-ui-hide-body-scroll-margin';\n\nlet disposeDocumentStyle: (() => void) | null = null;\n\ninterface GlobalWithRetailUIVerticalScrollCounter {\n RetailUIVerticalScrollCounter?: number;\n}\n\nexport class HideBodyVerticalScroll extends React.Component {\n public static __KONTUR_REACT_UI__ = 'HideBodyVerticalScroll';\n public static displayName = 'HideBodyVerticalScroll';\n\n public static globalObject: GlobalObject;\n private static emotion: Emotion;\n\n private initialScroll = 0;\n private master = false;\n\n public componentDidMount() {\n const counter = VerticalScrollCounter.increment();\n if (counter === 1) {\n this.master = true;\n this.initialScroll = HideBodyVerticalScroll.globalObject.document?.documentElement\n ? HideBodyVerticalScroll.globalObject.document.documentElement.scrollTop\n : 0;\n HideBodyVerticalScroll.updateScrollVisibility();\n HideBodyVerticalScroll.globalObject.addEventListener?.('resize', HideBodyVerticalScroll.updateScrollVisibility);\n }\n }\n\n public componentDidUpdate() {\n if (this.master) {\n HideBodyVerticalScroll.updateScrollVisibility();\n }\n }\n\n public componentWillUnmount() {\n const counter = VerticalScrollCounter.decrement();\n if (counter === 0) {\n this.restoreStyles();\n HideBodyVerticalScroll.globalObject.removeEventListener?.(\n 'resize',\n HideBodyVerticalScroll.updateScrollVisibility,\n );\n }\n }\n\n public render() {\n return (\n <RenderEnvironmentContext.Consumer>\n {({ globalObject, emotion }) => {\n HideBodyVerticalScroll.globalObject = globalObject;\n HideBodyVerticalScroll.emotion = emotion;\n\n return null;\n }}\n </RenderEnvironmentContext.Consumer>\n );\n }\n\n public static updateScrollVisibility = () => {\n const shouldHide = !disposeDocumentStyle;\n if (shouldHide) {\n HideBodyVerticalScroll.hideScroll();\n }\n };\n\n public static hideScroll = () => {\n if (!isBrowser(HideBodyVerticalScroll.globalObject)) {\n return;\n }\n const { documentElement } = HideBodyVerticalScroll.globalObject.document;\n const { clientHeight, scrollHeight } = documentElement;\n const documentComputedStyle = HideBodyVerticalScroll.globalObject.getComputedStyle(documentElement);\n const scrollbarConst = HideBodyVerticalScroll.globalObject.getComputedStyle(documentElement).overflowY === 'scroll';\n const scrollWidth =\n clientHeight < scrollHeight || scrollbarConst ? getScrollWidth(HideBodyVerticalScroll.globalObject) : 0;\n const documentMargin = parseFloat(documentComputedStyle.marginRight || '');\n const className = getStyles(HideBodyVerticalScroll.emotion).root();\n\n disposeDocumentStyle = HideBodyVerticalScroll.attachStyle(documentElement, className, documentMargin + scrollWidth);\n };\n\n public static attachStyle = (element: HTMLElement, className: string, margin: number) => {\n element.style.setProperty(MARGIN_VARIABLE, `${margin}px`);\n element.classList.add(className);\n return () => {\n element.classList.remove(className);\n element.style.removeProperty(MARGIN_VARIABLE);\n };\n };\n\n private restoreStyles = () => {\n if (disposeDocumentStyle) {\n disposeDocumentStyle();\n disposeDocumentStyle = null;\n\n if (HideBodyVerticalScroll.globalObject.document) {\n HideBodyVerticalScroll.globalObject.document.documentElement.scrollTop = this.initialScroll;\n }\n }\n };\n}\n\nclass VerticalScrollCounter {\n public static increment = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n const counter = globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n return (globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter = counter + 1);\n };\n\n public static decrement = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n const counter = globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n return (globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter = counter - 1);\n };\n\n public static get = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n return globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n };\n}\n"]}
1
+ {"version":3,"file":"HideBodyVerticalScroll.js","sourceRoot":"","sources":["HideBodyVerticalScroll.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport React from 'react';\n\nimport { getScrollWidth } from '../../lib/dom/getScrollWidth.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { isBrowser } from '../../lib/globalObject.js';\nimport { RenderEnvironmentContext } from '../../lib/renderEnvironment/index.js';\n\nlet disposeDocumentStyle: (() => void) | null = null;\n\ninterface GlobalWithRetailUIVerticalScrollCounter {\n RetailUIVerticalScrollCounter?: number;\n}\n\nexport class HideBodyVerticalScroll extends React.Component {\n public static __KONTUR_REACT_UI__ = 'HideBodyVerticalScroll';\n public static displayName = 'HideBodyVerticalScroll';\n\n public static globalObject: GlobalObject;\n private static emotion: Emotion;\n\n private initialScroll = 0;\n private master = false;\n\n public componentDidMount() {\n const counter = VerticalScrollCounter.increment();\n if (counter === 1) {\n this.master = true;\n this.initialScroll = HideBodyVerticalScroll.globalObject.document?.documentElement\n ? HideBodyVerticalScroll.globalObject.document.documentElement.scrollTop\n : 0;\n HideBodyVerticalScroll.updateScrollVisibility();\n HideBodyVerticalScroll.globalObject.addEventListener?.('resize', HideBodyVerticalScroll.updateScrollVisibility);\n }\n }\n\n public componentDidUpdate() {\n if (this.master) {\n HideBodyVerticalScroll.updateScrollVisibility();\n }\n }\n\n public componentWillUnmount() {\n const counter = VerticalScrollCounter.decrement();\n if (counter === 0) {\n this.restoreStyles();\n HideBodyVerticalScroll.globalObject.removeEventListener?.(\n 'resize',\n HideBodyVerticalScroll.updateScrollVisibility,\n );\n }\n }\n\n public render() {\n return (\n <RenderEnvironmentContext.Consumer>\n {({ globalObject, emotion }) => {\n HideBodyVerticalScroll.globalObject = globalObject;\n HideBodyVerticalScroll.emotion = emotion;\n\n return null;\n }}\n </RenderEnvironmentContext.Consumer>\n );\n }\n\n public static updateScrollVisibility = () => {\n const shouldHide = !disposeDocumentStyle;\n if (shouldHide) {\n HideBodyVerticalScroll.hideScroll();\n }\n };\n\n public static hideScroll = () => {\n if (!isBrowser(HideBodyVerticalScroll.globalObject)) {\n return;\n }\n const { documentElement } = HideBodyVerticalScroll.globalObject.document;\n const { clientHeight, scrollHeight } = documentElement;\n const documentComputedStyle = HideBodyVerticalScroll.globalObject.getComputedStyle(documentElement);\n const scrollbarConst = HideBodyVerticalScroll.globalObject.getComputedStyle(documentElement).overflowY === 'scroll';\n const scrollWidth =\n clientHeight < scrollHeight || scrollbarConst ? getScrollWidth(HideBodyVerticalScroll.globalObject) : 0;\n const documentMargin = parseFloat(documentComputedStyle.marginRight || '');\n const className = generateDocumentStyle(documentMargin + scrollWidth, HideBodyVerticalScroll.emotion);\n\n disposeDocumentStyle = HideBodyVerticalScroll.attachStyle(documentElement, className);\n };\n\n public static attachStyle = (element: HTMLElement, className: string) => {\n element.classList.add(className);\n return () => {\n element.classList.remove(className);\n };\n };\n\n private restoreStyles = () => {\n if (disposeDocumentStyle) {\n disposeDocumentStyle();\n disposeDocumentStyle = null;\n\n if (HideBodyVerticalScroll.globalObject.document) {\n HideBodyVerticalScroll.globalObject.document.documentElement.scrollTop = this.initialScroll;\n }\n }\n };\n}\n\nclass VerticalScrollCounter {\n public static increment = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n const counter = globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n return (globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter = counter + 1);\n };\n\n public static decrement = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n const counter = globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n return (globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter = counter - 1);\n };\n\n public static get = (): number => {\n const globalWithRetailUIVerticalScrollCounter =\n HideBodyVerticalScroll.globalObject as GlobalWithRetailUIVerticalScrollCounter;\n return globalWithRetailUIVerticalScrollCounter.RetailUIVerticalScrollCounter || 0;\n };\n}\n\nfunction generateDocumentStyle(documentMargin: number, emotion: Emotion) {\n return emotion.css`\n overflow: hidden !important;\n margin-right: ${documentMargin}px !important;\n height: 100%;\n `;\n}\n"]}
@@ -45,7 +45,7 @@ import debounce from 'lodash.debounce';
45
45
  import React from 'react';
46
46
  import ReactDOM from 'react-dom';
47
47
  import { InputDataTids, calculateClearCrossShowedState } from '../../components/Input/index.js';
48
- import { getStyles as getJsInputStyles } from '../../components/Input/Input.css.js';
48
+ import { getStyles as getJsInputStyles } from '../../components/Input/Input.styles.js';
49
49
  import { InputLayoutAside } from '../../components/Input/InputLayout/InputLayoutAside.js';
50
50
  import { InputLayoutContext, InputLayoutContextDefault, } from '../../components/Input/InputLayout/InputLayoutContext.js';
51
51
  import { blink } from '../../lib/blink.js';
@@ -62,7 +62,7 @@ import { isNonNullable } from '../../lib/utils.js';
62
62
  import { ClearCrossIcon } from '../ClearCrossIcon/ClearCrossIcon.js';
63
63
  import { CommonWrapper } from '../CommonWrapper/index.js';
64
64
  import { FocusControlWrapper } from '../FocusControlWrapper/index.js';
65
- import { getStyles } from './InputLikeText.css.js';
65
+ import { getStyles } from './InputLikeText.styles.js';
66
66
  export var InputLikeTextDataTids = {
67
67
  root: 'InputLikeText__root',
68
68
  input: 'InputLikeText__input',