@skbkontur/react-ui 4.0.4 → 4.1.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 (413) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/cjs/components/Autocomplete/Autocomplete.d.ts +0 -1
  3. package/cjs/components/Autocomplete/Autocomplete.js +2 -9
  4. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  5. package/cjs/components/Button/Button.styles.js +1 -1
  6. package/cjs/components/Button/Button.styles.js.map +1 -1
  7. package/cjs/components/DateInput/DateInput.styles.js +2 -2
  8. package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
  9. package/cjs/components/DatePicker/DatePicker.d.ts +1 -1
  10. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  11. package/cjs/components/FileUploader/FileUploader.js +5 -4
  12. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  13. package/cjs/components/FileUploader/FileUploader.styles.d.ts +3 -2
  14. package/cjs/components/FileUploader/FileUploader.styles.js +21 -15
  15. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  16. package/cjs/components/Hint/Hint.d.ts +5 -1
  17. package/cjs/components/Hint/Hint.js +9 -1
  18. package/cjs/components/Hint/Hint.js.map +1 -1
  19. package/cjs/components/Input/Input.d.ts +1 -5
  20. package/cjs/components/Input/Input.js +14 -21
  21. package/cjs/components/Input/Input.js.map +1 -1
  22. package/cjs/components/Loader/Loader.js +7 -7
  23. package/cjs/components/Loader/Loader.js.map +1 -1
  24. package/cjs/components/MenuItem/MenuItem.styles.js +3 -2
  25. package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
  26. package/cjs/components/Modal/Modal.js.map +1 -1
  27. package/cjs/components/Modal/Modal.styles.js +10 -6
  28. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  29. package/cjs/components/Modal/ModalFooter.js +0 -1
  30. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  31. package/cjs/components/Modal/ModalHeader.js +0 -1
  32. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  33. package/cjs/components/Paging/Paging.d.ts +12 -2
  34. package/cjs/components/Paging/Paging.js +14 -3
  35. package/cjs/components/Paging/Paging.js.map +1 -1
  36. package/cjs/components/Paging/PagingDefaultComponent.d.ts +9 -0
  37. package/cjs/components/Paging/PagingDefaultComponent.js +21 -0
  38. package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -0
  39. package/cjs/components/PasswordInput/PasswordInput.d.ts +2 -0
  40. package/cjs/components/PasswordInput/PasswordInput.js +22 -4
  41. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  42. package/cjs/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
  43. package/cjs/components/PasswordInput/PasswordInputIcon.js +11 -0
  44. package/cjs/components/PasswordInput/PasswordInputIcon.js.map +1 -0
  45. package/cjs/components/RadioGroup/RadioGroup.d.ts +1 -1
  46. package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  47. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +7 -2
  48. package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  49. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +1 -1
  50. package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
  51. package/cjs/components/ScrollContainer/ScrollContainer.js +3 -2
  52. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  53. package/cjs/components/Select/Select.d.ts +7 -5
  54. package/cjs/components/Select/Select.js +12 -2
  55. package/cjs/components/Select/Select.js.map +1 -1
  56. package/cjs/components/SidePage/SidePage.d.ts +0 -1
  57. package/cjs/components/SidePage/SidePage.js +1 -15
  58. package/cjs/components/SidePage/SidePage.js.map +1 -1
  59. package/cjs/components/SidePage/SidePageFooter.js +4 -3
  60. package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
  61. package/cjs/components/SidePage/SidePageHeader.js +3 -2
  62. package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
  63. package/cjs/components/Sticky/Sticky.js +4 -3
  64. package/cjs/components/Sticky/Sticky.js.map +1 -1
  65. package/cjs/components/Switcher/Switcher.d.ts +2 -1
  66. package/cjs/components/Switcher/Switcher.js +1 -0
  67. package/cjs/components/Switcher/Switcher.js.map +1 -1
  68. package/cjs/components/Switcher/Switcher.styles.js +2 -2
  69. package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
  70. package/cjs/components/Tabs/Indicator.js +2 -1
  71. package/cjs/components/Tabs/Indicator.js.map +1 -1
  72. package/cjs/components/Tabs/Tabs.d.ts +3 -1
  73. package/cjs/components/Tabs/Tabs.js +8 -4
  74. package/cjs/components/Tabs/Tabs.js.map +1 -1
  75. package/cjs/components/Textarea/Textarea.d.ts +2 -2
  76. package/cjs/components/Textarea/Textarea.js +6 -6
  77. package/cjs/components/Textarea/Textarea.js.map +1 -1
  78. package/cjs/components/Textarea/TextareaCounter.js +10 -2
  79. package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
  80. package/cjs/components/Toast/ToastView.js +1 -1
  81. package/cjs/components/Toast/ToastView.js.map +1 -1
  82. package/cjs/components/Toast/ToastView.styles.d.ts +1 -1
  83. package/cjs/components/Toast/ToastView.styles.js +3 -2
  84. package/cjs/components/Toast/ToastView.styles.js.map +1 -1
  85. package/cjs/components/Toggle/Toggle.styles.js +12 -10
  86. package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
  87. package/cjs/components/TokenInput/TextWidthHelper.js +2 -1
  88. package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
  89. package/cjs/components/TokenInput/TokenInput.styles.js +3 -2
  90. package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
  91. package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
  92. package/cjs/components/Tooltip/Tooltip.d.ts +4 -2
  93. package/cjs/components/Tooltip/Tooltip.js +10 -7
  94. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  95. package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
  96. package/cjs/index.d.ts +2 -0
  97. package/cjs/index.js +2 -0
  98. package/cjs/index.js.map +1 -1
  99. package/cjs/internal/BGRuler.js +3 -1
  100. package/cjs/internal/BGRuler.js.map +1 -1
  101. package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -0
  102. package/cjs/internal/CommonWrapper/CommonWrapper.js +15 -1
  103. package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
  104. package/cjs/internal/ComponentTable.d.ts +4 -2
  105. package/cjs/internal/ComponentTable.js +1 -0
  106. package/cjs/internal/ComponentTable.js.map +1 -1
  107. package/cjs/internal/DateSelect/DateSelect.js +2 -1
  108. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  109. package/cjs/internal/DropdownContainer/DropdownContainer.js +5 -10
  110. package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
  111. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +3 -2
  112. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  113. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js +14 -10
  114. package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -1
  115. package/cjs/internal/InputLikeText/InputLikeText.d.ts +1 -1
  116. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  117. package/cjs/internal/InternalMenu/InternalMenu.js +3 -2
  118. package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
  119. package/cjs/internal/InternalMenu/InternalMenu.styles.js +2 -2
  120. package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
  121. package/cjs/internal/Menu/Menu.styles.js +5 -3
  122. package/cjs/internal/Menu/Menu.styles.js.map +1 -1
  123. package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
  124. package/cjs/internal/Popup/Popup.d.ts +1 -2
  125. package/cjs/internal/Popup/Popup.js +16 -13
  126. package/cjs/internal/Popup/Popup.js.map +1 -1
  127. package/cjs/internal/Popup/PopupHelper.js +4 -2
  128. package/cjs/internal/Popup/PopupHelper.js.map +1 -1
  129. package/cjs/internal/RenderContainer/RenderContainer.js +9 -0
  130. package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
  131. package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +2 -0
  132. package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
  133. package/cjs/internal/RenderContainer/RenderInnerContainer.js +8 -1
  134. package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
  135. package/cjs/internal/TextWidthHelper/TextWidthHelper.js +3 -1
  136. package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
  137. package/cjs/internal/ThemePlayground/CheckboxPlayground.js +1 -0
  138. package/cjs/internal/ThemePlayground/CheckboxPlayground.js.map +1 -1
  139. package/cjs/internal/ThemePlayground/Playground.js +11 -19
  140. package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
  141. package/cjs/internal/ThemePlayground/RadioPlayground.js.map +1 -1
  142. package/cjs/internal/ThemePlayground/SizesGroup.d.ts +4 -0
  143. package/cjs/internal/ThemePlayground/SizesGroup.js +20 -0
  144. package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -0
  145. package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -0
  146. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +14 -2
  147. package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
  148. package/cjs/internal/ThemePlayground/ThemeEditor.js +2 -0
  149. package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
  150. package/cjs/internal/ThemePlayground/constants.d.ts +3 -1
  151. package/cjs/internal/ThemePlayground/constants.js +3 -1
  152. package/cjs/internal/ThemePlayground/constants.js.map +1 -1
  153. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  154. package/cjs/internal/icons/16px/index.js +8 -0
  155. package/cjs/internal/icons/16px/index.js.map +1 -1
  156. package/cjs/internal/icons/20px/svg.js +6 -0
  157. package/cjs/internal/icons/20px/svg.js.map +1 -1
  158. package/cjs/internal/themes/DefaultTheme.d.ts +21 -1
  159. package/cjs/internal/themes/DefaultTheme.js +43 -5
  160. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  161. package/cjs/internal/themes/NotFlat.d.ts +6 -0
  162. package/cjs/internal/themes/NotFlat.js +12 -2
  163. package/cjs/internal/themes/NotFlat.js.map +1 -1
  164. package/cjs/internal/themes/Theme2022.d.ts +66 -0
  165. package/cjs/internal/themes/Theme2022.js +100 -0
  166. package/cjs/internal/themes/Theme2022.js.map +1 -0
  167. package/cjs/internal/themes/Theme2022Dark.d.ts +5 -0
  168. package/cjs/internal/themes/Theme2022Dark.js +9 -0
  169. package/cjs/internal/themes/Theme2022Dark.js.map +1 -0
  170. package/cjs/lib/ConditionalHandler.d.ts +3 -2
  171. package/cjs/lib/ConditionalHandler.js +5 -3
  172. package/cjs/lib/ConditionalHandler.js.map +1 -1
  173. package/cjs/lib/InstanceWithAnchorElement.d.ts +5 -0
  174. package/cjs/lib/InstanceWithAnchorElement.js +9 -0
  175. package/cjs/lib/InstanceWithAnchorElement.js.map +1 -0
  176. package/cjs/lib/ModalStack.d.ts +1 -1
  177. package/cjs/lib/ModalStack.js.map +1 -1
  178. package/cjs/lib/SSRSafe.d.ts +1 -0
  179. package/cjs/lib/SSRSafe.js +9 -1
  180. package/cjs/lib/SSRSafe.js.map +1 -1
  181. package/cjs/lib/dom/getDOMRect.d.ts +5 -2
  182. package/cjs/lib/dom/getDOMRect.js +30 -18
  183. package/cjs/lib/dom/getDOMRect.js.map +1 -1
  184. package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +2 -1
  185. package/cjs/lib/events/keyboard/KeyboardMapKeys.js +1 -0
  186. package/cjs/lib/events/keyboard/KeyboardMapKeys.js.map +1 -1
  187. package/cjs/lib/events/keyboard/extractCode.js.map +1 -1
  188. package/cjs/lib/needsPolyfillPlaceholder.d.ts +6 -0
  189. package/cjs/lib/needsPolyfillPlaceholder.js +19 -0
  190. package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -0
  191. package/cjs/lib/rootNode/getRootNode.js +14 -10
  192. package/cjs/lib/rootNode/getRootNode.js.map +1 -1
  193. package/cjs/lib/rootNode/rootNodeDecorator.d.ts +11 -0
  194. package/cjs/lib/rootNode/rootNodeDecorator.js +34 -5
  195. package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
  196. package/cjs/lib/theming/ThemeFactory.js.map +1 -1
  197. package/cjs/lib/theming/themes/Theme2022.d.ts +1 -0
  198. package/cjs/lib/theming/themes/Theme2022.js +6 -0
  199. package/cjs/lib/theming/themes/Theme2022.js.map +1 -0
  200. package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -0
  201. package/cjs/lib/theming/themes/Theme2022Dark.js +9 -0
  202. package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -0
  203. package/components/Autocomplete/Autocomplete/Autocomplete.js +2 -9
  204. package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
  205. package/components/Autocomplete/Autocomplete.d.ts +0 -1
  206. package/components/Button/Button.styles/Button.styles.js +1 -1
  207. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  208. package/components/DateInput/DateInput.styles/DateInput.styles.js +2 -2
  209. package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
  210. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  211. package/components/DatePicker/DatePicker.d.ts +1 -1
  212. package/components/FileUploader/FileUploader/FileUploader.js +5 -6
  213. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  214. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +15 -12
  215. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  216. package/components/FileUploader/FileUploader.styles.d.ts +3 -2
  217. package/components/Hint/Hint/Hint.js +9 -1
  218. package/components/Hint/Hint/Hint.js.map +1 -1
  219. package/components/Hint/Hint.d.ts +5 -1
  220. package/components/Input/Input/Input.js +7 -25
  221. package/components/Input/Input/Input.js.map +1 -1
  222. package/components/Input/Input.d.ts +1 -5
  223. package/components/Loader/Loader/Loader.js +11 -12
  224. package/components/Loader/Loader/Loader.js.map +1 -1
  225. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +1 -1
  226. package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
  227. package/components/Modal/Modal/Modal.js.map +1 -1
  228. package/components/Modal/Modal.styles/Modal.styles.js +4 -4
  229. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  230. package/components/Modal/ModalFooter/ModalFooter.js +1 -1
  231. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  232. package/components/Modal/ModalHeader/ModalHeader.js +1 -1
  233. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  234. package/components/Paging/Paging/Paging.js +7 -9
  235. package/components/Paging/Paging/Paging.js.map +1 -1
  236. package/components/Paging/Paging.d.ts +12 -2
  237. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js +19 -0
  238. package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -0
  239. package/components/Paging/PagingDefaultComponent/package.json +6 -0
  240. package/components/Paging/PagingDefaultComponent.d.ts +9 -0
  241. package/components/PasswordInput/PasswordInput/PasswordInput.js +24 -5
  242. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  243. package/components/PasswordInput/PasswordInput.d.ts +2 -0
  244. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js +10 -0
  245. package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js.map +1 -0
  246. package/components/PasswordInput/PasswordInputIcon/package.json +6 -0
  247. package/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
  248. package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
  249. package/components/RadioGroup/RadioGroup.d.ts +1 -1
  250. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +5 -0
  251. package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
  252. package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
  253. package/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +1 -1
  254. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +3 -2
  255. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  256. package/components/Select/Select/Select.js +12 -6
  257. package/components/Select/Select/Select.js.map +1 -1
  258. package/components/Select/Select.d.ts +7 -5
  259. package/components/SidePage/SidePage/SidePage.js +0 -19
  260. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  261. package/components/SidePage/SidePage.d.ts +0 -1
  262. package/components/SidePage/SidePageFooter/SidePageFooter.js +4 -4
  263. package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
  264. package/components/SidePage/SidePageHeader/SidePageHeader.js +3 -3
  265. package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
  266. package/components/Sticky/Sticky/Sticky.js +9 -8
  267. package/components/Sticky/Sticky/Sticky.js.map +1 -1
  268. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  269. package/components/Switcher/Switcher.d.ts +2 -1
  270. package/components/Switcher/Switcher.styles/Switcher.styles.js +1 -1
  271. package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
  272. package/components/Tabs/Indicator/Indicator.js +2 -1
  273. package/components/Tabs/Indicator/Indicator.js.map +1 -1
  274. package/components/Tabs/Tabs/Tabs.js.map +1 -1
  275. package/components/Tabs/Tabs.d.ts +3 -1
  276. package/components/Textarea/Textarea/Textarea.js +6 -6
  277. package/components/Textarea/Textarea/Textarea.js.map +1 -1
  278. package/components/Textarea/Textarea.d.ts +2 -2
  279. package/components/Textarea/TextareaCounter/TextareaCounter.js +9 -1
  280. package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
  281. package/components/Toast/ToastView/ToastView.js +1 -1
  282. package/components/Toast/ToastView/ToastView.js.map +1 -1
  283. package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
  284. package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
  285. package/components/Toast/ToastView.styles.d.ts +1 -1
  286. package/components/Toggle/Toggle.styles/Toggle.styles.js +3 -4
  287. package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
  288. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -2
  289. package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
  290. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
  291. package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
  292. package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
  293. package/components/Tooltip/Tooltip/Tooltip.js +11 -8
  294. package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
  295. package/components/Tooltip/Tooltip.d.ts +4 -2
  296. package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
  297. package/index.d.ts +2 -0
  298. package/index.js +2 -0
  299. package/index.js.map +1 -1
  300. package/internal/BGRuler/BGRuler.js +2 -1
  301. package/internal/BGRuler/BGRuler.js.map +1 -1
  302. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +17 -3
  303. package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
  304. package/internal/CommonWrapper/CommonWrapper.d.ts +1 -0
  305. package/internal/ComponentTable/ComponentTable.js.map +1 -1
  306. package/internal/ComponentTable.d.ts +4 -2
  307. package/internal/DateSelect/DateSelect/DateSelect.js +2 -1
  308. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  309. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +5 -12
  310. package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
  311. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +3 -2
  312. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  313. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js +2 -0
  314. package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -1
  315. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  316. package/internal/InputLikeText/InputLikeText.d.ts +1 -1
  317. package/internal/InternalMenu/InternalMenu/InternalMenu.js +2 -1
  318. package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
  319. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +1 -1
  320. package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
  321. package/internal/Menu/Menu.styles/Menu.styles.js +1 -1
  322. package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
  323. package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
  324. package/internal/Popup/Popup/Popup.js +21 -20
  325. package/internal/Popup/Popup/Popup.js.map +1 -1
  326. package/internal/Popup/Popup.d.ts +1 -2
  327. package/internal/Popup/PopupHelper/PopupHelper.js +3 -1
  328. package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
  329. package/internal/RenderContainer/RenderContainer/RenderContainer.js +9 -0
  330. package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
  331. package/internal/RenderContainer/RenderContainerTypes.d.ts +2 -0
  332. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +8 -2
  333. package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
  334. package/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
  335. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +3 -4
  336. package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -1
  337. package/internal/ThemePlayground/CheckboxPlayground/CheckboxPlayground.js.map +1 -1
  338. package/internal/ThemePlayground/Playground/Playground.js +15 -29
  339. package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
  340. package/internal/ThemePlayground/RadioPlayground/RadioPlayground.js.map +1 -1
  341. package/internal/ThemePlayground/SizesGroup/SizesGroup.js +29 -0
  342. package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -0
  343. package/internal/ThemePlayground/SizesGroup/package.json +6 -0
  344. package/internal/ThemePlayground/SizesGroup.d.ts +4 -0
  345. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +14 -2
  346. package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
  347. package/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -0
  348. package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
  349. package/internal/ThemePlayground/constants/constants.js +2 -0
  350. package/internal/ThemePlayground/constants/constants.js.map +1 -1
  351. package/internal/ThemePlayground/constants.d.ts +3 -1
  352. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  353. package/internal/icons/16px/index/index.js +7 -0
  354. package/internal/icons/16px/index/index.js.map +1 -1
  355. package/internal/icons/20px/svg/svg.js +5 -0
  356. package/internal/icons/20px/svg/svg.js.map +1 -1
  357. package/internal/themes/DefaultTheme/DefaultTheme.js +53 -4
  358. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  359. package/internal/themes/DefaultTheme.d.ts +21 -1
  360. package/internal/themes/NotFlat/NotFlat.js +15 -0
  361. package/internal/themes/NotFlat/NotFlat.js.map +1 -1
  362. package/internal/themes/NotFlat.d.ts +6 -0
  363. package/internal/themes/Theme2022/Theme2022.js +78 -0
  364. package/internal/themes/Theme2022/Theme2022.js.map +1 -0
  365. package/internal/themes/Theme2022/package.json +6 -0
  366. package/internal/themes/Theme2022.d.ts +66 -0
  367. package/internal/themes/Theme2022Dark/Theme2022Dark.js +17 -0
  368. package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
  369. package/internal/themes/Theme2022Dark/package.json +6 -0
  370. package/internal/themes/Theme2022Dark.d.ts +5 -0
  371. package/lib/ConditionalHandler/ConditionalHandler.js.map +1 -1
  372. package/lib/ConditionalHandler.d.ts +3 -2
  373. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js +3 -0
  374. package/lib/InstanceWithAnchorElement/InstanceWithAnchorElement.js.map +1 -0
  375. package/lib/InstanceWithAnchorElement/package.json +6 -0
  376. package/lib/InstanceWithAnchorElement.d.ts +5 -0
  377. package/lib/ModalStack/ModalStack.js.map +1 -1
  378. package/lib/ModalStack.d.ts +1 -1
  379. package/lib/SSRSafe/SSRSafe.js +7 -0
  380. package/lib/SSRSafe/SSRSafe.js.map +1 -1
  381. package/lib/SSRSafe.d.ts +1 -0
  382. package/lib/dom/getDOMRect/getDOMRect.js +32 -15
  383. package/lib/dom/getDOMRect/getDOMRect.js.map +1 -1
  384. package/lib/dom/getDOMRect.d.ts +5 -2
  385. package/lib/events/keyboard/KeyboardMapKeys/KeyboardMapKeys.js.map +1 -1
  386. package/lib/events/keyboard/KeyboardMapKeys.d.ts +2 -1
  387. package/lib/events/keyboard/extractCode/extractCode.js.map +1 -1
  388. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +21 -0
  389. package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -0
  390. package/lib/needsPolyfillPlaceholder/package.json +6 -0
  391. package/lib/needsPolyfillPlaceholder.d.ts +6 -0
  392. package/lib/rootNode/getRootNode/getRootNode.js +11 -10
  393. package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
  394. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +26 -2
  395. package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
  396. package/lib/rootNode/rootNodeDecorator.d.ts +11 -0
  397. package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
  398. package/lib/theming/themes/Theme2022/Theme2022.js +4 -0
  399. package/lib/theming/themes/Theme2022/Theme2022.js.map +1 -0
  400. package/lib/theming/themes/Theme2022/package.json +6 -0
  401. package/lib/theming/themes/Theme2022.d.ts +1 -0
  402. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +5 -0
  403. package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
  404. package/lib/theming/themes/Theme2022Dark/package.json +6 -0
  405. package/lib/theming/themes/Theme2022Dark.d.ts +1 -0
  406. package/package.json +4 -2
  407. package/cjs/lib/polyfillPlaceholder.d.ts +0 -1
  408. package/cjs/lib/polyfillPlaceholder.js +0 -17
  409. package/cjs/lib/polyfillPlaceholder.js.map +0 -1
  410. package/lib/polyfillPlaceholder/package.json +0 -6
  411. package/lib/polyfillPlaceholder/polyfillPlaceholder.js +0 -12
  412. package/lib/polyfillPlaceholder/polyfillPlaceholder.js.map +0 -1
  413. package/lib/polyfillPlaceholder.d.ts +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,55 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [4.1.0](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@4.0.6...@skbkontur/react-ui@4.1.0) (2022-05-04)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **Paging:** add prop shouldBeVisibleWithLessThanTwoPages, true by default ([#2778](https://github.com/skbkontur/retail-ui/issues/2778)) ([d19c839](https://github.com/skbkontur/retail-ui/commit/d19c839e4a430ba6ef07ef87242b4a82a37a2dbc))
12
+ * **Paging:** fix border-radius of long links ([#2765](https://github.com/skbkontur/retail-ui/issues/2765)) ([576dcb9](https://github.com/skbkontur/retail-ui/commit/576dcb9de546eebd7309309fb8144d0a57cb778c))
13
+ * **PasswordInput:** disable eye along with Input & hide password on blur ([#2766](https://github.com/skbkontur/retail-ui/issues/2766)) ([b280ea4](https://github.com/skbkontur/retail-ui/commit/b280ea4a870c6d786700635d37efb92933ff79f5))
14
+ * **Select:** add menuBorderRadius theme var ([#2864](https://github.com/skbkontur/retail-ui/issues/2864)) ([d7d7827](https://github.com/skbkontur/retail-ui/commit/d7d78271b7945bd22ccbf6a4ff78a3ad61d5041a))
15
+
16
+
17
+ ### Features
18
+
19
+ * new themes (THEME_2022, THEME_2022_DARK) ([#2880](https://github.com/skbkontur/retail-ui/issues/2880)) ([c4b4615](https://github.com/skbkontur/retail-ui/commit/c4b4615db11b4dfe13efdbaba31e6a29a0305ab1))
20
+
21
+
22
+
23
+
24
+
25
+ ## [4.0.6](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@4.0.5...@skbkontur/react-ui@4.0.6) (2022-04-25)
26
+
27
+
28
+ ### Bug Fixes
29
+
30
+ * **Button:** add btnLinkActiveColor theme var ([#2871](https://github.com/skbkontur/retail-ui/issues/2871)) ([0588d56](https://github.com/skbkontur/retail-ui/commit/0588d5699d07668aeb0ba25bece9fb95ea2ca89e))
31
+ * **Popup:** use content container as rootNode instead of anchorElement ([4eed6a0](https://github.com/skbkontur/retail-ui/commit/4eed6a06eaee691a3f2e0c8e474dc9a5b139ac5b))
32
+ * **select:** prevent calling areValuesEqual with null ([#2847](https://github.com/skbkontur/retail-ui/issues/2847)) ([52a03b5](https://github.com/skbkontur/retail-ui/commit/52a03b5ee541d129716a8690a60f070ae4617bec)), closes [#1927](https://github.com/skbkontur/retail-ui/issues/1927)
33
+ * **Tooltip:** don't render without content on mobiles ([#2877](https://github.com/skbkontur/retail-ui/issues/2877)) ([#2878](https://github.com/skbkontur/retail-ui/issues/2878)) ([396be08](https://github.com/skbkontur/retail-ui/commit/396be087ca7be38eb425d1c3a5262838fdb2749c))
34
+
35
+
36
+ ### Reverts
37
+
38
+ * Revert "fix(SidePage): change scroll behavior according to Guides (#2756)" (#2874) ([6e4eb1a](https://github.com/skbkontur/retail-ui/commit/6e4eb1af176a1ed668beb63a0e132c69ba3bfdde)), closes [#2756](https://github.com/skbkontur/retail-ui/issues/2756) [#2874](https://github.com/skbkontur/retail-ui/issues/2874)
39
+
40
+
41
+
42
+
43
+
44
+ ## [4.0.5](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@4.0.4...@skbkontur/react-ui@4.0.5) (2022-04-12)
45
+
46
+
47
+ ### Bug Fixes
48
+
49
+ * **DatePicker:** fix focus and fragments selection ([#2858](https://github.com/skbkontur/retail-ui/issues/2858)) ([ec4499e](https://github.com/skbkontur/retail-ui/commit/ec4499e444fead65fcaeb703e129ee3adb0f6fe4)), closes [#2614](https://github.com/skbkontur/retail-ui/issues/2614)
50
+
51
+
52
+
53
+
54
+
6
55
  ## [4.0.4](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@4.0.3...@skbkontur/react-ui@4.0.4) (2022-04-01)
7
56
 
8
57
 
@@ -103,7 +103,6 @@ export declare class Autocomplete extends React.Component<AutocompleteProps, Aut
103
103
  private renderMenu;
104
104
  private renderMobileMenu;
105
105
  private getItems;
106
- private getInputWidth;
107
106
  private handleValueChange;
108
107
  private handleCloseMobile;
109
108
  private handleKeyPressMobile;
@@ -16,6 +16,7 @@ var _CommonWrapper = require("../../internal/CommonWrapper");
16
16
  var _MobilePopup = require("../../internal/MobilePopup");
17
17
  var _decorator = require("../ResponsiveLayout/decorator");
18
18
  var _rootNode = require("../../lib/rootNode");
19
+ var _getDOMRect = require("../../lib/dom/getDOMRect");
19
20
 
20
21
  var _Autocomplete = require("./Autocomplete.styles");var _excluded = ["onValueChange", "onKeyDown", "onFocus", "onBlur", "renderItem", "disablePortal", "hasShadow", "menuAlign", "menuMaxHeight", "preventWindowScroll", "source", "width", "mobileMenuHeaderText"];var _class, _class2, _temp;
21
22
 
@@ -284,14 +285,6 @@ Autocomplete = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
284
285
  null;
285
286
  };_this.
286
287
 
287
- getInputWidth = function (target) {
288
- if (target instanceof Element) {
289
- return target.getBoundingClientRect().width;
290
- }
291
-
292
- return 0;
293
- };_this.
294
-
295
288
  handleValueChange = function (value) {
296
289
  _this.opened = true;
297
290
 
@@ -465,7 +458,7 @@ Autocomplete = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)
465
458
  * @public
466
459
  */_proto.focus = function focus() {if (this.input) {this.input.focus();}} /**
467
460
  * @public
468
- */;_proto.blur = function blur() {this.handleBlur();};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (prevProps.value !== this.props.value) {this.updateItems(this.props.value || '');}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.renderMenu = function renderMenu() {var items = this.state.items;var menuProps = { ref: this.refMenu, maxHeight: this.props.menuMaxHeight, hasShadow: this.props.hasShadow, width: this.props.menuWidth || this.props.width && this.getInputWidth(this.rootSpan), preventWindowScroll: this.props.preventWindowScroll };if (!items || items.length === 0) {return null;}return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { offsetY: 1, getParent: this.getAnchor, align: this.props.menuAlign, disablePortal: this.props.disablePortal }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, menuProps, this.getItems()));};_proto.handleMenuItemClick = function handleMenuItemClick(i) {var _this3 = this;return function (event) {return _this3.handleItemClick(event, i);};};_proto.handleItemClick = function handleItemClick(event, index) {if (event.button) {return;}event.preventDefault();this.choose(index);};_proto.choose = function choose(index) {if (!this.state.items) {return;}var value = this.state.items[index];this.opened = false;this.setState({ selected: -1, items: null });this.fireChange(value);this.blur();};_proto.updateItems = function updateItems(value) {var _this4 = this;if (!this.opened) {return;}var pattern = value.trim();var source = this.props.source;if (!source) {return;}var promise;var expectingId = this.requestId += 1;if (typeof source === 'function') {promise = source(pattern);} else {promise = match(pattern, source);}promise.then(function (items) {if (_this4.opened && expectingId === _this4.requestId) {_this4.setState({ items: items, selected: -1 });}});};_proto.fireChange = function fireChange(value) {if (this.props.onValueChange) {this.props.onValueChange(value);}};return Autocomplete;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Autocomplete', _class2.propTypes = { /**
461
+ */;_proto.blur = function blur() {this.handleBlur();};_proto.componentDidUpdate = function componentDidUpdate(prevProps) {if (prevProps.value !== this.props.value) {this.updateItems(this.props.value || '');}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.renderMenu = function renderMenu() {var items = this.state.items;var menuProps = { ref: this.refMenu, maxHeight: this.props.menuMaxHeight, hasShadow: this.props.hasShadow, width: this.props.menuWidth || this.props.width && (0, _getDOMRect.getDOMRect)(this.rootSpan).width, preventWindowScroll: this.props.preventWindowScroll };if (!items || items.length === 0) {return null;}return /*#__PURE__*/_react.default.createElement(_DropdownContainer.DropdownContainer, { offsetY: 1, getParent: this.getAnchor, align: this.props.menuAlign, disablePortal: this.props.disablePortal }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, menuProps, this.getItems()));};_proto.handleMenuItemClick = function handleMenuItemClick(i) {var _this3 = this;return function (event) {return _this3.handleItemClick(event, i);};};_proto.handleItemClick = function handleItemClick(event, index) {if (event.button) {return;}event.preventDefault();this.choose(index);};_proto.choose = function choose(index) {if (!this.state.items) {return;}var value = this.state.items[index];this.opened = false;this.setState({ selected: -1, items: null });this.fireChange(value);this.blur();};_proto.updateItems = function updateItems(value) {var _this4 = this;if (!this.opened) {return;}var pattern = value.trim();var source = this.props.source;if (!source) {return;}var promise;var expectingId = this.requestId += 1;if (typeof source === 'function') {promise = source(pattern);} else {promise = match(pattern, source);}promise.then(function (items) {if (_this4.opened && expectingId === _this4.requestId) {_this4.setState({ items: items, selected: -1 });}});};_proto.fireChange = function fireChange(value) {if (this.props.onValueChange) {this.props.onValueChange(value);}};return Autocomplete;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Autocomplete', _class2.propTypes = { /**
469
462
  * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент
470
463
  * — *item*.
471
464
  */renderItem: _propTypes.default.func, /**
@@ -1 +1 @@
1
- {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","toLowerCase","filteredItems","filter","item","includes","renderItem","Autocomplete","responsiveLayout","rootNode","state","selected","focused","isMobileOpened","opened","input","requestId","getProps","defaultProps","renderMain","props","isMobile","isMobileLayout","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","theme","inputWidth","mobileMenuHeaderText","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","styles","root","refRootSpan","renderMobileMenu","renderMenu","autoFocus","onKeyPress","handleKeyPressMobile","value","placeholder","handleCloseMobile","refMobilePopup","refMenu","mobilePopup","close","length","getItems","map","i","handleMenuItemClick","getInputWidth","target","Element","getBoundingClientRect","fireChange","setState","e","key","event","blur","preventDefault","menu","up","down","enter","getAnchor","el","span","rootSpan","focus","componentDidUpdate","prevProps","updateItems","render","setRootNode","menuProps","maxHeight","menuWidth","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array","size"],"mappings":"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","sourcesContent":["import React, { KeyboardEvent } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Autocomplete.styles';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n pattern = pattern.toLowerCase();\n const filteredItems = items.filter((item) => item.toLowerCase().includes(pattern));\n return Promise.resolve(filteredItems);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size: InputProps['size'];\n /** value */\n value: string;\n /**\n * Текст заголовка выпадающего меню в мобильной версии\n */\n mobileMenuHeaderText?: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n isMobileOpened: boolean;\n}\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\n@responsiveLayout\n@rootNode\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n isMobileOpened: false,\n };\n\n private theme!: Theme;\n private isMobileLayout!: boolean;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private rootSpan: Nullable<HTMLSpanElement>;\n private mobilePopup: Nullable<MobilePopup>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const isMobile = this.isMobileLayout;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n mobileMenuHeaderText,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span className={styles.root(this.theme)} style={{ width }} ref={this.refRootSpan}>\n <Input {...inputProps} />\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const menuProps = {\n ref: this.refMenu,\n maxHeight: this.props.menuMaxHeight,\n hasShadow: this.props.hasShadow,\n width: this.props.menuWidth || (this.props.width && this.getInputWidth(this.rootSpan)),\n preventWindowScroll: this.props.preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer\n offsetY={1}\n getParent={this.getAnchor}\n align={this.props.menuAlign}\n disablePortal={this.props.disablePortal}\n >\n <Menu {...menuProps}>{this.getItems()}</Menu>\n </DropdownContainer>\n );\n }\n\n private renderMobileMenu = () => {\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyPress: this.handleKeyPressMobile,\n value: this.props.value,\n placeholder: 'Начните вводить',\n };\n\n const items = this.state.items;\n\n return (\n <MobilePopup\n headerChildComponent={<Input {...inputProps} />}\n caption={this.props.mobileMenuHeaderText}\n useFullHeight\n opened={this.state.isMobileOpened}\n onCloseRequest={this.handleCloseMobile}\n ref={this.refMobilePopup}\n >\n <Menu ref={this.refMenu} onItemClick={this.mobilePopup?.close} disableScrollContainer maxHeight={'auto'}>\n {items && items.length > 0 && this.getItems()}\n </Menu>\n </MobilePopup>\n );\n };\n\n private getItems = () => {\n const items = this.state.items;\n const isMobile = this.isMobileLayout;\n\n return items\n ? items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i} isMobile={isMobile}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })\n : null;\n };\n\n private getInputWidth = (target: Nullable<HTMLSpanElement>) => {\n if (target instanceof Element) {\n return target.getBoundingClientRect().width;\n }\n\n return 0;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleCloseMobile = () => {\n this.setState({\n isMobileOpened: false,\n });\n\n this.handleBlur();\n };\n\n private handleKeyPressMobile = (e: KeyboardEvent) => {\n if (e.key === 'Enter') {\n this.mobilePopup?.close();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.isMobileLayout) {\n this.setState({ isMobileOpened: true });\n }\n\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return getRootNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n const expectingId = (this.requestId += 1);\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n\n private refMobilePopup = (mobilePopup: MobilePopup | null) => {\n this.mobilePopup = mobilePopup;\n };\n}\n"]}
1
+ {"version":3,"sources":["Autocomplete.tsx"],"names":["match","pattern","items","Promise","resolve","toLowerCase","filteredItems","filter","item","includes","renderItem","Autocomplete","responsiveLayout","rootNode","state","selected","focused","isMobileOpened","opened","input","requestId","getProps","defaultProps","renderMain","props","isMobile","isMobileLayout","onValueChange","onKeyDown","onFocus","onBlur","_renderItem","disablePortal","hasShadow","menuAlign","menuMaxHeight","preventWindowScroll","source","width","theme","inputWidth","mobileMenuHeaderText","rest","inputProps","handleValueChange","handleKeyDown","handleFocus","ref","refInput","handleBlur","handleClickOutside","styles","root","refRootSpan","renderMobileMenu","renderMenu","autoFocus","onKeyPress","handleKeyPressMobile","value","placeholder","handleCloseMobile","refMobilePopup","refMenu","mobilePopup","close","length","getItems","map","i","handleMenuItemClick","fireChange","setState","e","key","event","blur","preventDefault","menu","up","down","enter","getAnchor","el","span","rootSpan","focus","componentDidUpdate","prevProps","updateItems","render","setRootNode","menuProps","maxHeight","menuWidth","handleItemClick","index","button","choose","trim","promise","expectingId","then","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","func","oneOfType","array","size"],"mappings":"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","sourcesContent":["import React, { KeyboardEvent } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter, isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport { Input, InputProps } from '../Input';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { Menu } from '../../internal/Menu';\nimport { MenuItem } from '../MenuItem';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './Autocomplete.styles';\n\nfunction match(pattern: string, items: string[]) {\n if (!pattern || !items) {\n return Promise.resolve([]);\n }\n\n pattern = pattern.toLowerCase();\n const filteredItems = items.filter((item) => item.toLowerCase().includes(pattern));\n return Promise.resolve(filteredItems);\n}\n\nfunction renderItem(item: any) {\n return item;\n}\n\nexport interface AutocompleteProps\n extends CommonProps,\n Override<\n InputProps,\n {\n /** Функция отрисовки элемента меню */\n renderItem: (item: string) => React.ReactNode;\n /** Промис, резолвящий элементы меню */\n source?: string[] | ((patter: string) => Promise<string[]>);\n /** Отключает использование портала */\n disablePortal: boolean;\n /** Отрисовка тени у выпадающего меню */\n hasShadow: boolean;\n /** Выравнивание выпадающего меню */\n menuAlign: 'left' | 'right';\n /** Максимальная высота меню */\n menuMaxHeight: number | string;\n /** Ширина меню */\n menuWidth?: number | string;\n /** Отключить скролл окна, когда меню открыто */\n preventWindowScroll: boolean;\n /** Вызывается при изменении `value` */\n onValueChange: (value: string) => void;\n /** onBlur */\n onBlur?: () => void;\n /** Размер инпута */\n size: InputProps['size'];\n /** value */\n value: string;\n /**\n * Текст заголовка выпадающего меню в мобильной версии\n */\n mobileMenuHeaderText?: string;\n }\n > {}\n\nexport interface AutocompleteState {\n items: Nullable<string[]>;\n selected: number;\n focused: boolean;\n isMobileOpened: boolean;\n}\n\n/**\n * Стандартный инпут с подсказками.\n *\n * Все свойства передаются во внутренний *Input*.\n */\n@responsiveLayout\n@rootNode\nexport class Autocomplete extends React.Component<AutocompleteProps, AutocompleteState> {\n public static __KONTUR_REACT_UI__ = 'Autocomplete';\n\n public static propTypes = {\n /**\n * Функция для отрисовки элемента в выпадающем списке. Единственный аргумент\n * — *item*.\n */\n renderItem: PropTypes.func,\n\n /**\n * Если передан массив, то совпадения ищутся по этому массиву.\n *\n * Если передается функция, то она должна возвращать thenable, который\n * резолвится уже отфильтрованным массивом. Возвращенный thenable может\n * иметь метод cancel, который будет вызван при отмене поиска (пользователь\n * изменил строку поиска, автокомплит потерял фокус).\n * ```\n * function(pattern) {\n * return service.findAll(pattern);\n * }\n * ```\n */\n source: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\n };\n\n public static defaultProps = {\n renderItem,\n size: 'small',\n disablePortal: false,\n hasShadow: true,\n menuMaxHeight: 300,\n menuAlign: 'left',\n preventWindowScroll: true,\n };\n\n public state: AutocompleteState = {\n items: null,\n selected: -1,\n focused: false,\n isMobileOpened: false,\n };\n\n private theme!: Theme;\n private isMobileLayout!: boolean;\n private opened = false;\n private input: Nullable<Input> = null;\n private menu: Nullable<Menu>;\n private rootSpan: Nullable<HTMLSpanElement>;\n private mobilePopup: Nullable<MobilePopup>;\n\n private requestId = 0;\n\n private getProps = createPropsGetter(Autocomplete.defaultProps);\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public focus() {\n if (this.input) {\n this.input.focus();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n this.handleBlur();\n }\n\n public componentDidUpdate(prevProps: AutocompleteProps) {\n if (prevProps.value !== this.props.value) {\n this.updateItems(this.props.value || '');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n public renderMain = (props: CommonWrapperRestProps<AutocompleteProps>) => {\n const { focused } = this.state;\n\n const isMobile = this.isMobileLayout;\n\n const {\n onValueChange,\n onKeyDown,\n onFocus,\n onBlur,\n renderItem: _renderItem,\n disablePortal,\n hasShadow,\n menuAlign,\n menuMaxHeight,\n preventWindowScroll,\n source,\n width = this.theme.inputWidth,\n mobileMenuHeaderText,\n ...rest\n } = props;\n\n const inputProps = {\n ...rest,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyDown: this.handleKeyDown,\n onFocus: this.handleFocus,\n ref: this.refInput,\n };\n\n return (\n <RenderLayer onFocusOutside={this.handleBlur} onClickOutside={this.handleClickOutside} active={focused}>\n <span className={styles.root(this.theme)} style={{ width }} ref={this.refRootSpan}>\n <Input {...inputProps} />\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n );\n };\n\n private renderMenu(): React.ReactNode {\n const items = this.state.items;\n const menuProps = {\n ref: this.refMenu,\n maxHeight: this.props.menuMaxHeight,\n hasShadow: this.props.hasShadow,\n width: this.props.menuWidth || (this.props.width && getDOMRect(this.rootSpan).width),\n preventWindowScroll: this.props.preventWindowScroll,\n };\n if (!items || items.length === 0) {\n return null;\n }\n\n return (\n <DropdownContainer\n offsetY={1}\n getParent={this.getAnchor}\n align={this.props.menuAlign}\n disablePortal={this.props.disablePortal}\n >\n <Menu {...menuProps}>{this.getItems()}</Menu>\n </DropdownContainer>\n );\n }\n\n private renderMobileMenu = () => {\n const inputProps: InputProps = {\n autoFocus: true,\n width: '100%',\n onValueChange: this.handleValueChange,\n onKeyPress: this.handleKeyPressMobile,\n value: this.props.value,\n placeholder: 'Начните вводить',\n };\n\n const items = this.state.items;\n\n return (\n <MobilePopup\n headerChildComponent={<Input {...inputProps} />}\n caption={this.props.mobileMenuHeaderText}\n useFullHeight\n opened={this.state.isMobileOpened}\n onCloseRequest={this.handleCloseMobile}\n ref={this.refMobilePopup}\n >\n <Menu ref={this.refMenu} onItemClick={this.mobilePopup?.close} disableScrollContainer maxHeight={'auto'}>\n {items && items.length > 0 && this.getItems()}\n </Menu>\n </MobilePopup>\n );\n };\n\n private getItems = () => {\n const items = this.state.items;\n const isMobile = this.isMobileLayout;\n\n return items\n ? items.map((item, i) => {\n return (\n <MenuItem onClick={this.handleMenuItemClick(i)} key={i} isMobile={isMobile}>\n {this.getProps().renderItem(item)}\n </MenuItem>\n );\n })\n : null;\n };\n\n private handleValueChange = (value: string) => {\n this.opened = true;\n\n this.fireChange(value);\n };\n\n private handleCloseMobile = () => {\n this.setState({\n isMobileOpened: false,\n });\n\n this.handleBlur();\n };\n\n private handleKeyPressMobile = (e: KeyboardEvent) => {\n if (e.key === 'Enter') {\n this.mobilePopup?.close();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.isMobileLayout) {\n this.setState({ isMobileOpened: true });\n }\n\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = () => {\n if (!this.state.focused) {\n return;\n }\n\n this.opened = false;\n this.setState({ items: null, focused: false });\n\n if (this.input) {\n this.input.blur();\n }\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n switch (true) {\n case isKeyEscape(e):\n e.preventDefault();\n this.setState({ items: null });\n return;\n case isKeyArrowUp(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.up();\n }\n return;\n case isKeyArrowDown(e):\n e.preventDefault();\n if (this.menu) {\n this.menu.down();\n }\n return;\n case isKeyEnter(e):\n e.preventDefault(); // To prevent form submission.\n if (this.menu) {\n this.menu.enter(e);\n }\n return;\n }\n };\n\n private handleMenuItemClick(i: number) {\n return (event: React.SyntheticEvent<HTMLElement>) => this.handleItemClick(event, i);\n }\n\n private getAnchor = () => {\n return getRootNode(this);\n };\n\n private handleItemClick(event: React.SyntheticEvent<HTMLElement> | React.MouseEvent<HTMLElement>, index: number) {\n if ((event as React.MouseEvent<HTMLElement>).button) {\n return;\n }\n\n event.preventDefault();\n this.choose(index);\n }\n\n private choose(index: number) {\n if (!this.state.items) {\n return;\n }\n\n const value = this.state.items[index];\n this.opened = false;\n this.setState({\n selected: -1,\n items: null,\n });\n\n this.fireChange(value);\n this.blur();\n }\n\n private updateItems(value: string) {\n if (!this.opened) {\n return;\n }\n const pattern = value.trim();\n const source = this.props.source;\n\n if (!source) {\n return;\n }\n\n let promise;\n const expectingId = (this.requestId += 1);\n if (typeof source === 'function') {\n promise = source(pattern);\n } else {\n promise = match(pattern, source);\n }\n promise.then((items) => {\n if (this.opened && expectingId === this.requestId) {\n this.setState({\n items,\n selected: -1,\n });\n }\n });\n }\n\n private fireChange(value: string) {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n }\n\n private refInput = (el: Input | null) => {\n this.input = el;\n };\n\n private refMenu = (menu: Menu | null) => {\n this.menu = menu;\n };\n\n private refRootSpan = (span: HTMLSpanElement) => {\n this.rootSpan = span;\n };\n\n private refMobilePopup = (mobilePopup: MobilePopup | null) => {\n this.mobilePopup = mobilePopup;\n };\n}\n"]}
@@ -801,7 +801,7 @@ var activeStyles = (0, _Emotion.memoizeStyle)({
801
801
  return (0, _Emotion.css)(_templateObject60 || (_templateObject60 = (0, _taggedTemplateLiteralLoose2.default)(["\n &,\n &:hover {\n color: ", ";\n }\n "])),
802
802
 
803
803
 
804
- t.linkActiveColor);
804
+ t.btnLinkActiveColor);
805
805
 
806
806
 
807
807
  } });exports.activeStyles = activeStyles;
@@ -1 +1 @@
1
- {"version":3,"sources":["Button.styles.ts"],"names":["globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","css","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","isFirefox","arrowLeft","default","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedFocused","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightPadding","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","linkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover,\n &:active {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover,\n &:active,\n &:active:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover,\n &:active,\n &:hover:active {\n ${checkedStyles}\n }\n `;\n },\n\n checkedFocused(t: Theme) {\n return css`\n &:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n padding-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n padding-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n padding-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n padding-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover,\n &:active {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover {\n color: ${t.linkActiveColor};\n }\n `;\n },\n});\n"]}
1
+ {"version":3,"sources":["Button.styles.ts"],"names":["globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","css","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","isFirefox","arrowLeft","default","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedFocused","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightPadding","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","btnLinkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover,\n &:active {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover,\n &:active,\n &:active:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover,\n &:active,\n &:hover:active {\n ${checkedStyles}\n }\n `;\n },\n\n checkedFocused(t: Theme) {\n return css`\n &:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n padding-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n padding-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n padding-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n padding-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover,\n &:active {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover {\n color: ${t.btnLinkActiveColor};\n }\n `;\n },\n});\n"]}
@@ -35,13 +35,13 @@ var styles = {
35
35
  },
36
36
 
37
37
  value: function value() {
38
- return (0, _Emotion.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 0;\n "])));
38
+ return (0, _Emotion.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteralLoose2.default)(["\n visibility: hidden;\n "])));
39
39
 
40
40
 
41
41
  },
42
42
 
43
43
  valueVisible: function valueVisible() {
44
- return (0, _Emotion.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 1;\n "])));
44
+ return (0, _Emotion.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteralLoose2.default)(["\n visibility: visible;\n "])));
45
45
 
46
46
 
47
47
  } };exports.styles = styles;
@@ -1 +1 @@
1
- {"version":3,"sources":["DateInput.styles.ts"],"names":["styles","icon","t","css","dateInputIconColor","iconSmall","inputFontSizeSmall","iconMedium","inputFontSizeMedium","iconLarge","inputFontSizeLarge","iconDisabled","textColorDisabled","value","valueVisible"],"mappings":"4QAAA,oD;;;AAGO,IAAMA,MAAM,GAAG;AACpBC,EAAAA,IADoB,gBACfC,CADe,EACL;AACb,eAAOC,YAAP;;AAEWD,IAAAA,CAAC,CAACE,kBAFb;;AAID,GANmB;;AAQpBC,EAAAA,SARoB,qBAQVH,CARU,EAQA;AAClB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACI,kBADjB;;AAGD,GAZmB;;AAcpBC,EAAAA,UAdoB,sBAcTL,CAdS,EAcC;AACnB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACM,mBADjB;;AAGD,GAlBmB;;AAoBpBC,EAAAA,SApBoB,qBAoBVP,CApBU,EAoBA;AAClB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACQ,kBADjB;;AAGD,GAxBmB;;AA0BpBC,EAAAA,YA1BoB,wBA0BPT,CA1BO,EA0BG;AACrB,eAAOC,YAAP;;AAEWD,IAAAA,CAAC,CAACU,iBAFb;;AAID,GA/BmB;;AAiCpBC,EAAAA,KAjCoB,mBAiCZ;AACN,eAAOV,YAAP;;;AAGD,GArCmB;;AAuCpBW,EAAAA,YAvCoB,0BAuCL;AACb,eAAOX,YAAP;;;AAGD,GA3CmB,EAAf,C","sourcesContent":["import { css } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = {\n icon(t: Theme) {\n return css`\n cursor: pointer;\n color: ${t.dateInputIconColor};\n `;\n },\n\n iconSmall(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeSmall};\n `;\n },\n\n iconMedium(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeMedium};\n `;\n },\n\n iconLarge(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeLarge};\n `;\n },\n\n iconDisabled(t: Theme) {\n return css`\n cursor: default;\n color: ${t.textColorDisabled};\n `;\n },\n\n value() {\n return css`\n opacity: 0;\n `;\n },\n\n valueVisible() {\n return css`\n opacity: 1;\n `;\n },\n};\n"]}
1
+ {"version":3,"sources":["DateInput.styles.ts"],"names":["styles","icon","t","css","dateInputIconColor","iconSmall","inputFontSizeSmall","iconMedium","inputFontSizeMedium","iconLarge","inputFontSizeLarge","iconDisabled","textColorDisabled","value","valueVisible"],"mappings":"4QAAA,oD;;;AAGO,IAAMA,MAAM,GAAG;AACpBC,EAAAA,IADoB,gBACfC,CADe,EACL;AACb,eAAOC,YAAP;;AAEWD,IAAAA,CAAC,CAACE,kBAFb;;AAID,GANmB;;AAQpBC,EAAAA,SARoB,qBAQVH,CARU,EAQA;AAClB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACI,kBADjB;;AAGD,GAZmB;;AAcpBC,EAAAA,UAdoB,sBAcTL,CAdS,EAcC;AACnB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACM,mBADjB;;AAGD,GAlBmB;;AAoBpBC,EAAAA,SApBoB,qBAoBVP,CApBU,EAoBA;AAClB,eAAOC,YAAP;AACeD,IAAAA,CAAC,CAACQ,kBADjB;;AAGD,GAxBmB;;AA0BpBC,EAAAA,YA1BoB,wBA0BPT,CA1BO,EA0BG;AACrB,eAAOC,YAAP;;AAEWD,IAAAA,CAAC,CAACU,iBAFb;;AAID,GA/BmB;;AAiCpBC,EAAAA,KAjCoB,mBAiCZ;AACN,eAAOV,YAAP;;;AAGD,GArCmB;;AAuCpBW,EAAAA,YAvCoB,0BAuCL;AACb,eAAOX,YAAP;;;AAGD,GA3CmB,EAAf,C","sourcesContent":["import { css } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = {\n icon(t: Theme) {\n return css`\n cursor: pointer;\n color: ${t.dateInputIconColor};\n `;\n },\n\n iconSmall(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeSmall};\n `;\n },\n\n iconMedium(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeMedium};\n `;\n },\n\n iconLarge(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeLarge};\n `;\n },\n\n iconDisabled(t: Theme) {\n return css`\n cursor: default;\n color: ${t.textColorDisabled};\n `;\n },\n\n value() {\n return css`\n visibility: hidden;\n `;\n },\n\n valueVisible() {\n return css`\n visibility: visible;\n `;\n },\n};\n"]}
@@ -68,7 +68,7 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps<Date
68
68
  * Максимальная дата в календаре.
69
69
  */
70
70
  maxDate: PropTypes.Validator<string>;
71
- menuAlign: PropTypes.Requireable<"left" | "right">;
71
+ menuAlign: PropTypes.Requireable<string>;
72
72
  /**
73
73
  * Минимальная дата в календаре.
74
74
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePicker.tsx"],"names":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePicker","rootNode","state","opened","canUseMobileNativeDatePicker","input","focused","renderMain","props","picker","value","minDate","maxDate","internalDate","parseValueToDate","date","toNativeFormat","parsedMinDate","formattedMinDate","undefined","parsedMaxDate","formattedMaxDate","getParent","menuAlign","handlePick","handleSelect","enableTodayLink","isHoliday","styles","root","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","width","minWidth","ref","setState","onFocus","close","onBlur","dateShape","blur","month","year","InternalDateTransformer","dateToInternalString","isWeekend","dateString","componentDidMount","useMobileNativeDatePicker","isMobile","focus","componentDidUpdate","render","setRootNode","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","defaultProps","MIN_FULLDATE","MAX_FULLDATE","_day","range","order","InternalDateOrder","DMY","separator","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateTransformer } from '../../lib/date/InternalDateTransformer';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { CalendarDateShape } from '../../internal/Calendar';\nimport { DateInput } from '../DateInput';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\n\nimport { Picker } from './Picker';\nimport { styles } from './DatePicker.styles';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps<T> extends CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n minDate: T;\n maxDate: T;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: T | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: T) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n\n /**\n * Функция для определения праздничных дней\n * @default (_day, isWeekend) => isWeekend\n * @param {T} day - строка в формате `dd.mm.yyyy`\n * @param {boolean} isWeekend - флаг выходного (суббота или воскресенье)\n *\n * @returns {boolean} `true` для выходного или `false` для рабочего дня\n */\n isHoliday: (day: T, isWeekend: boolean) => boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n}\n\ntype DatePickerValue = string;\n\n@rootNode\nexport class DatePicker extends React.PureComponent<DatePickerProps<DatePickerValue>, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuAlign: PropTypes.oneOf(['left', 'right'] as Array<'left' | 'right'>),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func.isRequired,\n };\n\n public static defaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n isHoliday: (_day: DatePickerValue, isWeekend: boolean) => isWeekend,\n };\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps<DatePickerValue>>) => {\n let picker = null;\n\n const { value, minDate, maxDate } = this.props;\n\n const internalDate = this.parseValueToDate(value);\n const date = internalDate ? internalDate.toNativeFormat() : null;\n\n const parsedMinDate = this.parseValueToDate(minDate);\n const formattedMinDate = (parsedMinDate && parsedMinDate.toNativeFormat()) || undefined;\n\n const parsedMaxDate = this.parseValueToDate(maxDate);\n const formattedMaxDate = (parsedMaxDate && parsedMaxDate.toNativeFormat()) || undefined;\n\n if (this.state.opened) {\n picker = (\n <DropdownContainer getParent={this.getParent} offsetY={2} align={this.props.menuAlign}>\n <Picker\n value={date}\n minDate={formattedMinDate}\n maxDate={formattedMaxDate}\n onPick={this.handlePick}\n onSelect={this.handleSelect}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.isHoliday}\n />\n </DropdownContainer>\n );\n }\n\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n >\n <DateInput\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={this.props.minDate}\n maxDate={this.props.maxDate}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n />\n {this.state.canUseMobileNativeDatePicker && (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={this.props.minDate}\n maxDate={this.props.maxDate}\n disabled={this.props.disabled}\n />\n )}\n {!this.state.canUseMobileNativeDatePicker && picker}\n </label>\n );\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private parseValueToDate(value?: Nullable<string>): InternalDate | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date;\n }\n return undefined;\n }\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handlePick = (dateShape: CalendarDateShape) => {\n this.handleSelect(dateShape);\n this.blur();\n };\n\n private handleSelect = ({ date, month, year }: CalendarDateShape) => {\n const value = InternalDateTransformer.dateToInternalString({ date, month: month + 1, year });\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private isHoliday = ({ date, month, year, isWeekend }: CalendarDateShape & { isWeekend: boolean }) => {\n const dateString = InternalDateTransformer.dateToInternalString({ date, month: month + 1, year });\n return this.props.isHoliday(dateString, isWeekend);\n };\n}\n"]}
1
+ {"version":3,"sources":["DatePicker.tsx"],"names":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePicker","rootNode","state","opened","canUseMobileNativeDatePicker","input","focused","renderMain","props","picker","value","minDate","maxDate","internalDate","parseValueToDate","date","toNativeFormat","parsedMinDate","formattedMinDate","undefined","parsedMaxDate","formattedMaxDate","getParent","menuAlign","handlePick","handleSelect","enableTodayLink","isHoliday","styles","root","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","width","minWidth","ref","setState","onFocus","close","onBlur","dateShape","blur","month","year","InternalDateTransformer","dateToInternalString","isWeekend","dateString","componentDidMount","useMobileNativeDatePicker","isMobile","focus","componentDidUpdate","render","setRootNode","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","defaultProps","MIN_FULLDATE","MAX_FULLDATE","_day","range","order","InternalDateOrder","DMY","separator","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateTransformer } from '../../lib/date/InternalDateTransformer';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { CalendarDateShape } from '../../internal/Calendar';\nimport { DateInput } from '../DateInput';\nimport { DropdownContainer } from '../../internal/DropdownContainer';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\n\nimport { Picker } from './Picker';\nimport { styles } from './DatePicker.styles';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps<T> extends CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n minDate: T;\n maxDate: T;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: T | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: T) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n\n /**\n * Функция для определения праздничных дней\n * @default (_day, isWeekend) => isWeekend\n * @param {T} day - строка в формате `dd.mm.yyyy`\n * @param {boolean} isWeekend - флаг выходного (суббота или воскресенье)\n *\n * @returns {boolean} `true` для выходного или `false` для рабочего дня\n */\n isHoliday: (day: T, isWeekend: boolean) => boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n}\n\ntype DatePickerValue = string;\n\n@rootNode\nexport class DatePicker extends React.PureComponent<DatePickerProps<DatePickerValue>, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func.isRequired,\n };\n\n public static defaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n isHoliday: (_day: DatePickerValue, isWeekend: boolean) => isWeekend,\n };\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps<DatePickerValue>>) => {\n let picker = null;\n\n const { value, minDate, maxDate } = this.props;\n\n const internalDate = this.parseValueToDate(value);\n const date = internalDate ? internalDate.toNativeFormat() : null;\n\n const parsedMinDate = this.parseValueToDate(minDate);\n const formattedMinDate = (parsedMinDate && parsedMinDate.toNativeFormat()) || undefined;\n\n const parsedMaxDate = this.parseValueToDate(maxDate);\n const formattedMaxDate = (parsedMaxDate && parsedMaxDate.toNativeFormat()) || undefined;\n\n if (this.state.opened) {\n picker = (\n <DropdownContainer getParent={this.getParent} offsetY={2} align={this.props.menuAlign}>\n <Picker\n value={date}\n minDate={formattedMinDate}\n maxDate={formattedMaxDate}\n onPick={this.handlePick}\n onSelect={this.handleSelect}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.isHoliday}\n />\n </DropdownContainer>\n );\n }\n\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n >\n <DateInput\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={this.props.minDate}\n maxDate={this.props.maxDate}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n />\n {this.state.canUseMobileNativeDatePicker && (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={this.props.minDate}\n maxDate={this.props.maxDate}\n disabled={this.props.disabled}\n />\n )}\n {!this.state.canUseMobileNativeDatePicker && picker}\n </label>\n );\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private parseValueToDate(value?: Nullable<string>): InternalDate | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date;\n }\n return undefined;\n }\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handlePick = (dateShape: CalendarDateShape) => {\n this.handleSelect(dateShape);\n this.blur();\n };\n\n private handleSelect = ({ date, month, year }: CalendarDateShape) => {\n const value = InternalDateTransformer.dateToInternalString({ date, month: month + 1, year });\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private isHoliday = ({ date, month, year, isWeekend }: CalendarDateShape & { isWeekend: boolean }) => {\n const dateString = InternalDateTransformer.dateToInternalString({ date, month: month + 1, year });\n return this.props.isHoliday(dateString, isWeekend);\n };\n}\n"]}
@@ -196,16 +196,19 @@ var _FileUploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
196
196
  }
197
197
  };
198
198
 
199
+ var _useState2 = (0, _react.useState)(false),hovered = _useState2[0],setHovered = _useState2[1];
200
+
199
201
  var uploadButtonClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.uploadButton(theme), (_cx = {}, _cx[
200
202
  _FileUploader2.jsStyles.uploadButtonFocus(theme)] = focusedByTab, _cx[
201
203
  _FileUploader2.jsStyles.disabled(theme)] = disabled, _cx[
204
+ _FileUploader2.jsStyles.hovered(theme)] = !disabled && hovered, _cx[
202
205
  _FileUploader2.jsStyles.warning(theme)] = !!warning, _cx[
203
206
  _FileUploader2.jsStyles.error(theme)] = !!error, _cx[
204
- _FileUploader2.jsStyles.dragOver()] = isDraggable && !disabled, _cx));
207
+ _FileUploader2.jsStyles.dragOver(theme)] = isDraggable && !disabled, _cx));
205
208
 
206
209
 
207
210
  var uploadButtonWrapperClassNames = (0, _Emotion.cx)((_cx2 = {}, _cx2[
208
- _FileUploader2.jsStyles.windowDragOver()] = isWindowDraggable && !disabled, _cx2));
211
+ _FileUploader2.jsStyles.windowDragOver(theme)] = isWindowDraggable && !disabled, _cx2));
209
212
 
210
213
 
211
214
  var uploadButtonIconClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.icon(theme), (_cx3 = {}, _cx3[
@@ -215,8 +218,6 @@ var _FileUploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
215
218
  var hasOneFile = files.length === 1;
216
219
  var hasOneFileForSingle = isSingleMode && hasOneFile && !hideFiles;
217
220
 
218
- var _useState2 = (0, _react.useState)(false),hovered = _useState2[0],setHovered = _useState2[1];
219
-
220
221
  var linkClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.link(theme), (_cx4 = {}, _cx4[
221
222
  _FileUploader2.jsStyles.linkHovered(theme)] = !disabled && hovered, _cx4[
222
223
  _FileUploader2.jsStyles.linkDisabled(theme)] = disabled, _cx4));