@skbkontur/react-ui 4.14.2 → 4.15.1-fix-flushsync-warning

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 (365) hide show
  1. package/CHANGELOG.md +32 -5
  2. package/cjs/components/Button/Button.d.ts +2 -6
  3. package/cjs/components/Button/Button.js +14 -5
  4. package/cjs/components/Button/Button.js.map +1 -1
  5. package/cjs/components/Button/Button.styles.js +2 -1
  6. package/cjs/components/Button/Button.styles.js.map +1 -1
  7. package/cjs/components/Button/getInnerLinkTheme.js +0 -3
  8. package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
  9. package/cjs/components/Calendar/Calendar.d.ts +104 -0
  10. package/cjs/components/Calendar/Calendar.js +475 -0
  11. package/cjs/components/Calendar/Calendar.js.map +1 -0
  12. package/cjs/components/Calendar/Calendar.md +147 -0
  13. package/cjs/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
  14. package/cjs/components/Calendar/Calendar.styles.js +33 -0
  15. package/cjs/components/Calendar/Calendar.styles.js.map +1 -0
  16. package/{internal → cjs/components}/Calendar/CalendarUtils.d.ts +19 -2
  17. package/cjs/components/Calendar/CalendarUtils.js +117 -0
  18. package/cjs/components/Calendar/CalendarUtils.js.map +1 -0
  19. package/cjs/components/Calendar/Month.js.map +1 -0
  20. package/cjs/{internal → components}/Calendar/MonthView.d.ts +1 -1
  21. package/cjs/{internal → components}/Calendar/MonthView.js +1 -1
  22. package/cjs/{internal → components}/Calendar/MonthView.js.map +1 -1
  23. package/cjs/components/Calendar/locale/index.d.ts +4 -0
  24. package/cjs/components/Calendar/locale/index.js +11 -0
  25. package/cjs/components/Calendar/locale/index.js.map +1 -0
  26. package/cjs/components/Calendar/locale/locales/en.d.ts +2 -0
  27. package/cjs/components/Calendar/locale/locales/en.js +16 -0
  28. package/cjs/components/Calendar/locale/locales/en.js.map +1 -0
  29. package/cjs/components/Calendar/locale/locales/ru.d.ts +2 -0
  30. package/cjs/components/Calendar/locale/locales/ru.js +16 -0
  31. package/cjs/components/Calendar/locale/locales/ru.js.map +1 -0
  32. package/cjs/components/Calendar/locale/types.d.ts +3 -0
  33. package/cjs/components/Calendar/locale/types.js +1 -0
  34. package/cjs/components/Calendar/locale/types.js.map +1 -0
  35. package/cjs/components/DatePicker/DatePicker.d.ts +16 -17
  36. package/cjs/components/DatePicker/DatePicker.js +107 -57
  37. package/cjs/components/DatePicker/DatePicker.js.map +1 -1
  38. package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -0
  39. package/cjs/components/DatePicker/DatePicker.styles.js +36 -1
  40. package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
  41. package/cjs/components/DatePicker/DatePickerHelpers.d.ts +1 -1
  42. package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
  43. package/cjs/components/DatePicker/Picker.d.ts +8 -9
  44. package/cjs/components/DatePicker/Picker.js +32 -41
  45. package/cjs/components/DatePicker/Picker.js.map +1 -1
  46. package/cjs/components/DatePicker/locale/locales/en.js +3 -15
  47. package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
  48. package/cjs/components/DatePicker/locale/locales/ru.js +3 -15
  49. package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
  50. package/cjs/components/DatePicker/locale/types.d.ts +2 -2
  51. package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  52. package/cjs/components/DropdownMenu/DropdownMenu.js +2 -1
  53. package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
  54. package/cjs/components/FileUploader/FileUploader.d.ts +1 -0
  55. package/cjs/components/FileUploader/FileUploader.js +3 -1
  56. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  57. package/cjs/components/Kebab/Kebab.d.ts +4 -1
  58. package/cjs/components/Kebab/Kebab.js +9 -3
  59. package/cjs/components/Kebab/Kebab.js.map +1 -1
  60. package/cjs/components/Link/Link.js +4 -2
  61. package/cjs/components/Link/Link.js.map +1 -1
  62. package/cjs/components/Link/Link.mixins.d.ts +1 -2
  63. package/cjs/components/Link/Link.mixins.js +4 -16
  64. package/cjs/components/Link/Link.mixins.js.map +1 -1
  65. package/cjs/components/Link/Link.styles.d.ts +2 -0
  66. package/cjs/components/Link/Link.styles.js +56 -38
  67. package/cjs/components/Link/Link.styles.js.map +1 -1
  68. package/cjs/components/Loader/Loader.js +1 -3
  69. package/cjs/components/Loader/Loader.js.map +1 -1
  70. package/cjs/components/Modal/Modal.d.ts +3 -3
  71. package/cjs/components/Modal/Modal.js +19 -2
  72. package/cjs/components/Modal/Modal.js.map +1 -1
  73. package/cjs/components/Modal/Modal.styles.d.ts +0 -2
  74. package/cjs/components/Modal/Modal.styles.js +25 -36
  75. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  76. package/cjs/components/Modal/ModalBody.js +0 -2
  77. package/cjs/components/Modal/ModalBody.js.map +1 -1
  78. package/cjs/components/Modal/ModalFooter.js +3 -6
  79. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  80. package/cjs/components/Modal/ModalHeader.js +2 -7
  81. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  82. package/cjs/components/PasswordInput/PasswordInput.js +4 -6
  83. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  84. package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -0
  85. package/cjs/components/ScrollContainer/ScrollContainer.js +9 -1
  86. package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
  87. package/cjs/components/SidePage/SidePage.d.ts +3 -3
  88. package/cjs/components/SidePage/SidePage.js +8 -1
  89. package/cjs/components/SidePage/SidePage.js.map +1 -1
  90. package/cjs/components/Spinner/Spinner.md +1 -1
  91. package/cjs/components/Switcher/Switcher.d.ts +4 -2
  92. package/cjs/components/Switcher/Switcher.js +13 -3
  93. package/cjs/components/Switcher/Switcher.js.map +1 -1
  94. package/cjs/components/Toast/Toast.md +16 -12
  95. package/cjs/components/TokenInput/TokenInput.d.ts +44 -1
  96. package/cjs/components/TokenInput/TokenInput.js +42 -0
  97. package/cjs/components/TokenInput/TokenInput.js.map +1 -1
  98. package/cjs/components/TokenInput/TokenInput.md +100 -0
  99. package/cjs/index.d.ts +1 -0
  100. package/cjs/index.js +1 -0
  101. package/cjs/index.js.map +1 -1
  102. package/cjs/internal/CustomComboBox/CustomComboBox.js +25 -13
  103. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  104. package/cjs/internal/DateSelect/DateSelect.js +3 -3
  105. package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
  106. package/cjs/internal/InputLikeText/InputLikeText.js +4 -1
  107. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  108. package/cjs/internal/NativeDateInput/utils.d.ts +1 -1
  109. package/cjs/internal/NativeDateInput/utils.js.map +1 -1
  110. package/cjs/internal/PopupMenu/PopupMenu.d.ts +8 -0
  111. package/cjs/internal/PopupMenu/PopupMenu.js +23 -3
  112. package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
  113. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  114. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  115. package/cjs/internal/ZIndex/ZIndexStorage.js +1 -6
  116. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  117. package/cjs/internal/icons/SpinnerIcon.styles.js +2 -1
  118. package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
  119. package/cjs/internal/themes/DefaultTheme.d.ts +4 -15
  120. package/cjs/internal/themes/DefaultTheme.js +15 -48
  121. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  122. package/cjs/internal/themes/Theme2022.d.ts +0 -3
  123. package/cjs/internal/themes/Theme2022.js +2 -11
  124. package/cjs/internal/themes/Theme2022.js.map +1 -1
  125. package/cjs/lib/date/InternalDate.d.ts +1 -1
  126. package/cjs/lib/date/InternalDate.js +1 -1
  127. package/cjs/lib/date/InternalDate.js.map +1 -1
  128. package/cjs/lib/locale/decorators.js +0 -3
  129. package/cjs/lib/locale/decorators.js.map +1 -1
  130. package/cjs/lib/locale/types.d.ts +2 -0
  131. package/cjs/lib/locale/types.js +2 -0
  132. package/cjs/lib/locale/types.js.map +1 -1
  133. package/cjs/typings/html.d.ts +1 -1
  134. package/cjs/typings/utility-types.d.ts +6 -0
  135. package/components/Button/Button/Button.js +13 -4
  136. package/components/Button/Button/Button.js.map +1 -1
  137. package/components/Button/Button.d.ts +2 -6
  138. package/components/Button/Button.styles/Button.styles.js +1 -1
  139. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  140. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +0 -3
  141. package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
  142. package/{internal → components}/Calendar/Calendar/Calendar.js +136 -71
  143. package/components/Calendar/Calendar/Calendar.js.map +1 -0
  144. package/{internal → components}/Calendar/Calendar/package.json +1 -1
  145. package/components/Calendar/Calendar.d.ts +104 -0
  146. package/components/Calendar/Calendar.md +147 -0
  147. package/components/Calendar/Calendar.styles/Calendar.styles.js +17 -0
  148. package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -0
  149. package/{internal → components}/Calendar/Calendar.styles/package.json +1 -1
  150. package/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
  151. package/{internal → components}/Calendar/CalendarDateShape/package.json +1 -1
  152. package/{internal → components}/Calendar/CalendarScrollEvents/package.json +1 -1
  153. package/{internal → components}/Calendar/CalendarUtils/CalendarUtils.js +34 -0
  154. package/components/Calendar/CalendarUtils/CalendarUtils.js.map +1 -0
  155. package/{internal → components}/Calendar/CalendarUtils/package.json +1 -1
  156. package/{cjs/internal → components}/Calendar/CalendarUtils.d.ts +19 -2
  157. package/{internal → components}/Calendar/DayCellView/package.json +1 -1
  158. package/{internal → components}/Calendar/DayCellView.styles/package.json +1 -1
  159. package/{internal → components}/Calendar/DayCellViewModel/package.json +1 -1
  160. package/components/Calendar/Month/Month.js.map +1 -0
  161. package/{internal → components}/Calendar/Month/package.json +1 -1
  162. package/{internal → components}/Calendar/MonthView/MonthView.js +1 -1
  163. package/components/Calendar/MonthView/MonthView.js.map +1 -0
  164. package/{internal → components}/Calendar/MonthView/package.json +1 -1
  165. package/{internal → components}/Calendar/MonthView.d.ts +1 -1
  166. package/{internal → components}/Calendar/MonthView.styles/package.json +1 -1
  167. package/{internal → components}/Calendar/MonthViewModel/package.json +1 -1
  168. package/{internal → components}/Calendar/config/package.json +1 -1
  169. package/{internal → components}/Calendar/index/package.json +1 -1
  170. package/components/Calendar/locale/index/index.js +8 -0
  171. package/components/Calendar/locale/index/index.js.map +1 -0
  172. package/components/Calendar/locale/index/package.json +6 -0
  173. package/components/Calendar/locale/index.d.ts +4 -0
  174. package/components/Calendar/locale/locales/en/en.js +3 -0
  175. package/components/Calendar/locale/locales/en/en.js.map +1 -0
  176. package/components/Calendar/locale/locales/en/package.json +6 -0
  177. package/components/Calendar/locale/locales/en.d.ts +2 -0
  178. package/components/Calendar/locale/locales/ru/package.json +6 -0
  179. package/components/Calendar/locale/locales/ru/ru.js +3 -0
  180. package/components/Calendar/locale/locales/ru/ru.js.map +1 -0
  181. package/components/Calendar/locale/locales/ru.d.ts +2 -0
  182. package/components/Calendar/locale/package.json +6 -0
  183. package/components/Calendar/locale/types/package.json +6 -0
  184. package/components/Calendar/locale/types/types.js +1 -0
  185. package/components/Calendar/locale/types/types.js.map +1 -0
  186. package/components/Calendar/locale/types.d.ts +3 -0
  187. package/{internal → components}/Calendar/package.json +1 -1
  188. package/components/DatePicker/DatePicker/DatePicker.js +112 -62
  189. package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
  190. package/components/DatePicker/DatePicker.d.ts +16 -17
  191. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js +7 -1
  192. package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
  193. package/components/DatePicker/DatePicker.styles.d.ts +3 -0
  194. package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
  195. package/components/DatePicker/DatePickerHelpers.d.ts +1 -1
  196. package/components/DatePicker/Picker/Picker.js +50 -66
  197. package/components/DatePicker/Picker/Picker.js.map +1 -1
  198. package/components/DatePicker/Picker.d.ts +8 -9
  199. package/components/DatePicker/locale/locales/en/en.js +3 -3
  200. package/components/DatePicker/locale/locales/en/en.js.map +1 -1
  201. package/components/DatePicker/locale/locales/ru/ru.js +3 -3
  202. package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
  203. package/components/DatePicker/locale/types.d.ts +2 -2
  204. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -1
  205. package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
  206. package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
  207. package/components/FileUploader/FileUploader/FileUploader.js +3 -1
  208. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  209. package/components/FileUploader/FileUploader.d.ts +1 -0
  210. package/components/Kebab/Kebab/Kebab.js +6 -1
  211. package/components/Kebab/Kebab/Kebab.js.map +1 -1
  212. package/components/Kebab/Kebab.d.ts +4 -1
  213. package/components/Link/Link/Link.js +4 -4
  214. package/components/Link/Link/Link.js.map +1 -1
  215. package/components/Link/Link.mixins/Link.mixins.js +2 -5
  216. package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
  217. package/components/Link/Link.mixins.d.ts +1 -2
  218. package/components/Link/Link.styles/Link.styles.js +28 -21
  219. package/components/Link/Link.styles/Link.styles.js.map +1 -1
  220. package/components/Link/Link.styles.d.ts +2 -0
  221. package/components/Loader/Loader/Loader.js +0 -2
  222. package/components/Loader/Loader/Loader.js.map +1 -1
  223. package/components/Modal/Modal/Modal.js +28 -11
  224. package/components/Modal/Modal/Modal.js.map +1 -1
  225. package/components/Modal/Modal.d.ts +3 -3
  226. package/components/Modal/Modal.styles/Modal.styles.js +24 -30
  227. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  228. package/components/Modal/Modal.styles.d.ts +0 -2
  229. package/components/Modal/ModalBody/ModalBody.js +0 -2
  230. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  231. package/components/Modal/ModalFooter/ModalFooter.js +3 -7
  232. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  233. package/components/Modal/ModalHeader/ModalHeader.js +3 -7
  234. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  235. package/components/PasswordInput/PasswordInput/PasswordInput.js +6 -5
  236. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  237. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +12 -4
  238. package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
  239. package/components/ScrollContainer/ScrollContainer.d.ts +1 -0
  240. package/components/SidePage/SidePage/SidePage.js +9 -3
  241. package/components/SidePage/SidePage/SidePage.js.map +1 -1
  242. package/components/SidePage/SidePage.d.ts +3 -3
  243. package/components/Spinner/Spinner.md +1 -1
  244. package/components/Switcher/Switcher/Switcher.js +8 -2
  245. package/components/Switcher/Switcher/Switcher.js.map +1 -1
  246. package/components/Switcher/Switcher.d.ts +4 -2
  247. package/components/Toast/Toast.md +16 -12
  248. package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
  249. package/components/TokenInput/TokenInput.d.ts +44 -1
  250. package/components/TokenInput/TokenInput.md +100 -0
  251. package/index.d.ts +1 -0
  252. package/index.js +1 -0
  253. package/index.js.map +1 -1
  254. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +33 -14
  255. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  256. package/internal/DateSelect/DateSelect/DateSelect.js +4 -2
  257. package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
  258. package/internal/InputLikeText/InputLikeText/InputLikeText.js +5 -2
  259. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  260. package/internal/NativeDateInput/utils/utils.js.map +1 -1
  261. package/internal/NativeDateInput/utils.d.ts +1 -1
  262. package/internal/PopupMenu/PopupMenu/PopupMenu.js +13 -2
  263. package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
  264. package/internal/PopupMenu/PopupMenu.d.ts +8 -0
  265. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  266. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +1 -6
  267. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  268. package/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  269. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js +1 -1
  270. package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
  271. package/internal/themes/DefaultTheme/DefaultTheme.js +25 -80
  272. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  273. package/internal/themes/DefaultTheme.d.ts +4 -15
  274. package/internal/themes/Theme2022/Theme2022.js +6 -21
  275. package/internal/themes/Theme2022/Theme2022.js.map +1 -1
  276. package/internal/themes/Theme2022.d.ts +0 -3
  277. package/lib/date/InternalDate/InternalDate.js +1 -1
  278. package/lib/date/InternalDate/InternalDate.js.map +1 -1
  279. package/lib/date/InternalDate.d.ts +1 -1
  280. package/lib/locale/decorators/decorators.js.map +1 -1
  281. package/lib/locale/types/types.js.map +1 -1
  282. package/lib/locale/types.d.ts +2 -0
  283. package/package.json +2 -5
  284. package/typings/html.d.ts +1 -1
  285. package/typings/utility-types.d.ts +6 -0
  286. package/cjs/components/DatePicker/Picker.styles.d.ts +0 -5
  287. package/cjs/components/DatePicker/Picker.styles.js +0 -39
  288. package/cjs/components/DatePicker/Picker.styles.js.map +0 -1
  289. package/cjs/internal/Calendar/Calendar.d.ts +0 -63
  290. package/cjs/internal/Calendar/Calendar.js +0 -387
  291. package/cjs/internal/Calendar/Calendar.js.map +0 -1
  292. package/cjs/internal/Calendar/Calendar.styles.js +0 -23
  293. package/cjs/internal/Calendar/Calendar.styles.js.map +0 -1
  294. package/cjs/internal/Calendar/CalendarUtils.js +0 -71
  295. package/cjs/internal/Calendar/CalendarUtils.js.map +0 -1
  296. package/cjs/internal/Calendar/Month.js.map +0 -1
  297. package/components/DatePicker/Picker.styles/Picker.styles.js +0 -13
  298. package/components/DatePicker/Picker.styles/Picker.styles.js.map +0 -1
  299. package/components/DatePicker/Picker.styles/package.json +0 -6
  300. package/components/DatePicker/Picker.styles.d.ts +0 -5
  301. package/internal/Calendar/Calendar/Calendar.js.map +0 -1
  302. package/internal/Calendar/Calendar.d.ts +0 -63
  303. package/internal/Calendar/Calendar.styles/Calendar.styles.js +0 -14
  304. package/internal/Calendar/Calendar.styles/Calendar.styles.js.map +0 -1
  305. package/internal/Calendar/CalendarUtils/CalendarUtils.js.map +0 -1
  306. package/internal/Calendar/Month/Month.js.map +0 -1
  307. package/internal/Calendar/MonthView/MonthView.js.map +0 -1
  308. /package/cjs/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
  309. /package/cjs/{internal → components}/Calendar/CalendarDateShape.js +0 -0
  310. /package/cjs/{internal → components}/Calendar/CalendarDateShape.js.map +0 -0
  311. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
  312. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js +0 -0
  313. /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js.map +0 -0
  314. /package/cjs/{internal → components}/Calendar/DayCellView.d.ts +0 -0
  315. /package/cjs/{internal → components}/Calendar/DayCellView.js +0 -0
  316. /package/cjs/{internal → components}/Calendar/DayCellView.js.map +0 -0
  317. /package/cjs/{internal → components}/Calendar/DayCellView.styles.d.ts +0 -0
  318. /package/cjs/{internal → components}/Calendar/DayCellView.styles.js +0 -0
  319. /package/cjs/{internal → components}/Calendar/DayCellView.styles.js.map +0 -0
  320. /package/cjs/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
  321. /package/cjs/{internal → components}/Calendar/DayCellViewModel.js +0 -0
  322. /package/cjs/{internal → components}/Calendar/DayCellViewModel.js.map +0 -0
  323. /package/cjs/{internal → components}/Calendar/Month.d.ts +0 -0
  324. /package/cjs/{internal → components}/Calendar/Month.js +0 -0
  325. /package/cjs/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
  326. /package/cjs/{internal → components}/Calendar/MonthView.styles.js +0 -0
  327. /package/cjs/{internal → components}/Calendar/MonthView.styles.js.map +0 -0
  328. /package/cjs/{internal → components}/Calendar/MonthViewModel.d.ts +0 -0
  329. /package/cjs/{internal → components}/Calendar/MonthViewModel.js +0 -0
  330. /package/cjs/{internal → components}/Calendar/MonthViewModel.js.map +0 -0
  331. /package/cjs/{internal → components}/Calendar/config.d.ts +0 -0
  332. /package/cjs/{internal → components}/Calendar/config.js +0 -0
  333. /package/cjs/{internal → components}/Calendar/config.js.map +0 -0
  334. /package/cjs/{internal → components}/Calendar/index.d.ts +0 -0
  335. /package/cjs/{internal → components}/Calendar/index.js +0 -0
  336. /package/cjs/{internal → components}/Calendar/index.js.map +0 -0
  337. /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js +0 -0
  338. /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js.map +0 -0
  339. /package/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
  340. /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js +0 -0
  341. /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js.map +0 -0
  342. /package/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
  343. /package/{internal → components}/Calendar/DayCellView/DayCellView.js +0 -0
  344. /package/{internal → components}/Calendar/DayCellView/DayCellView.js.map +0 -0
  345. /package/{internal → components}/Calendar/DayCellView.d.ts +0 -0
  346. /package/{internal → components}/Calendar/DayCellView.styles/DayCellView.styles.js +0 -0
  347. /package/{internal → components}/Calendar/DayCellView.styles/DayCellView.styles.js.map +0 -0
  348. /package/{internal → components}/Calendar/DayCellView.styles.d.ts +0 -0
  349. /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js +0 -0
  350. /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js.map +0 -0
  351. /package/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
  352. /package/{internal → components}/Calendar/Month/Month.js +0 -0
  353. /package/{internal → components}/Calendar/Month.d.ts +0 -0
  354. /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js +0 -0
  355. /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js.map +0 -0
  356. /package/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
  357. /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js +0 -0
  358. /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js.map +0 -0
  359. /package/{internal → components}/Calendar/MonthViewModel.d.ts +0 -0
  360. /package/{internal → components}/Calendar/config/config.js +0 -0
  361. /package/{internal → components}/Calendar/config/config.js.map +0 -0
  362. /package/{internal → components}/Calendar/config.d.ts +0 -0
  363. /package/{internal → components}/Calendar/index/index.js +0 -0
  364. /package/{internal → components}/Calendar/index/index.js.map +0 -0
  365. /package/{internal → components}/Calendar/index.d.ts +0 -0
@@ -2,12 +2,18 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
3
3
  import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
4
4
 
5
- var _class, _class2, _temp;
5
+ var _dec, _class, _class2, _temp;
6
6
 
7
7
  import PropTypes from 'prop-types';
8
8
  import React from 'react';
9
+ import { LocaleContext } from "../../../lib/locale";
10
+ import { locale } from "../../../lib/locale/decorators";
11
+ import { InternalDateGetter } from "../../../lib/date/InternalDateGetter";
12
+ import { ArrowAUpIcon16Light } from "../../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light";
13
+ import { isTheme2022 } from "../../../lib/theming/ThemeHelpers";
14
+ import { cx } from "../../../lib/theming/Emotion";
15
+ import { ThemeFactory } from "../../../lib/theming/ThemeFactory";
9
16
  import { InternalDate } from "../../../lib/date/InternalDate";
10
- import { InternalDateTransformer } from "../../../lib/date/InternalDateTransformer";
11
17
  import { MAX_FULLDATE, MIN_FULLDATE } from "../../../lib/date/constants";
12
18
  import { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from "../../../lib/date/types";
13
19
  import { DateInput } from "../../DateInput";
@@ -19,9 +25,12 @@ import { NativeDateInput } from "../../../internal/NativeDateInput";
19
25
  import { getRootNode, rootNode } from "../../../lib/rootNode";
20
26
  import { isNonNullable } from "../../../lib/utils";
21
27
  import { createPropsGetter } from "../../../lib/createPropsGetter";
28
+ import { Calendar } from "../../Calendar";
22
29
  import { ThemeContext } from "../../../lib/theming/ThemeContext";
23
- import { Picker } from "../Picker";
30
+ import { Button } from "../../Button";
31
+ import { getTodayDate } from "../../Calendar/CalendarUtils";
24
32
  import { styles } from "../DatePicker.styles";
33
+ import { DatePickerLocaleHelper } from "../locale";
25
34
  var INPUT_PASS_PROPS = {
26
35
  autoFocus: true,
27
36
  disabled: true,
@@ -33,10 +42,12 @@ var INPUT_PASS_PROPS = {
33
42
  export var MIN_WIDTH = 120;
34
43
  export var DatePickerDataTids = {
35
44
  root: 'DatePicker__root',
45
+ input: 'DatePicker__input',
46
+ label: 'DatePicker__label',
36
47
  pickerRoot: 'Picker__root',
37
48
  pickerTodayWrapper: 'Picker__todayWrapper'
38
49
  };
39
- export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
50
+ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), rootNode(_class = _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
40
51
  _inheritsLoose(DatePicker, _React$PureComponent);
41
52
 
42
53
  function DatePicker() {
@@ -48,49 +59,53 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
48
59
 
49
60
  _this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;
50
61
  _this.getProps = createPropsGetter(DatePicker.defaultProps);
62
+ _this.calendar = null;
51
63
  _this.state = {
52
64
  opened: false,
53
- canUseMobileNativeDatePicker: false
65
+ canUseMobileNativeDatePicker: false,
66
+ today: getTodayDate()
54
67
  };
55
68
  _this.input = null;
56
69
  _this.focused = false;
57
70
 
58
71
  _this.renderMain = function (props) {
59
72
  var picker = null;
60
- var value = _this.props.value;
61
73
 
62
74
  var _this$getProps = _this.getProps(),
63
75
  minDate = _this$getProps.minDate,
64
76
  maxDate = _this$getProps.maxDate;
65
77
 
66
- var internalDate = _this.parseValueToDate(value);
67
-
68
- var date = internalDate ? internalDate.toNativeFormat() : null;
69
-
70
- var parsedMinDate = _this.parseValueToDate(minDate);
71
-
72
- var formattedMinDate = parsedMinDate && parsedMinDate.toNativeFormat() || undefined;
73
-
74
- var parsedMaxDate = _this.parseValueToDate(maxDate);
75
-
76
- var formattedMaxDate = parsedMaxDate && parsedMaxDate.toNativeFormat() || undefined;
77
-
78
78
  if (_this.state.opened) {
79
- picker = /*#__PURE__*/React.createElement(DropdownContainer, {
79
+ picker = /*#__PURE__*/React.createElement(LocaleContext.Provider, {
80
+ value: {
81
+ locale: {
82
+ Calendar: {
83
+ months: _this.locale.months
84
+ }
85
+ }
86
+ }
87
+ }, /*#__PURE__*/React.createElement(DropdownContainer, {
80
88
  menuPos: _this.props.menuPos,
81
89
  "data-tid": DatePickerDataTids.root,
82
90
  getParent: _this.getParent,
83
91
  offsetY: parseInt(_this.theme.datePickerMenuOffsetY),
84
92
  align: _this.props.menuAlign
85
- }, /*#__PURE__*/React.createElement(Picker, {
86
- value: date,
87
- minDate: formattedMinDate,
88
- maxDate: formattedMaxDate,
89
- onPick: _this.handlePick,
90
- onSelect: _this.handleSelect,
91
- enableTodayLink: _this.props.enableTodayLink,
92
- isHoliday: _this.isHoliday
93
- }));
93
+ }, /*#__PURE__*/React.createElement("div", {
94
+ "data-tid": DatePickerDataTids.pickerRoot,
95
+ className: styles.calendarWrapper(_this.theme),
96
+ onMouseDown: function onMouseDown(e) {
97
+ return e.preventDefault();
98
+ }
99
+ }, /*#__PURE__*/React.createElement(Calendar, {
100
+ ref: function ref(c) {
101
+ return _this.calendar = c;
102
+ },
103
+ maxDate: _this.parseValueToDate(maxDate),
104
+ minDate: _this.parseValueToDate(minDate),
105
+ onValueChange: _this.handleValueChange,
106
+ isHoliday: _this.props.isHoliday,
107
+ value: _this.parseValueToDate(_this.props.value)
108
+ }), _this.props.enableTodayLink && _this.renderTodayLink(), ' ')));
94
109
  }
95
110
 
96
111
  return /*#__PURE__*/React.createElement("label", {
@@ -98,7 +113,8 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
98
113
  style: _this.getRootStyle(),
99
114
  onMouseEnter: _this.props.onMouseEnter,
100
115
  onMouseLeave: _this.props.onMouseLeave,
101
- onMouseOver: _this.props.onMouseOver
116
+ onMouseOver: _this.props.onMouseOver,
117
+ "data-tid": DatePickerDataTids.label
102
118
  }, /*#__PURE__*/React.createElement(DateInput, _extends({}, filterProps(props, INPUT_PASS_PROPS), {
103
119
  ref: _this.getInputRef,
104
120
  value: _this.props.value || '',
@@ -108,7 +124,8 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
108
124
  maxDate: maxDate,
109
125
  onBlur: _this.handleBlur,
110
126
  onFocus: _this.handleFocus,
111
- onValueChange: _this.props.onValueChange
127
+ onValueChange: _this.props.onValueChange,
128
+ "data-tid": DatePickerDataTids.input
112
129
  })), _this.state.canUseMobileNativeDatePicker && /*#__PURE__*/React.createElement(NativeDateInput, {
113
130
  onValueChange: _this.props.onValueChange,
114
131
  value: _this.props.value || '',
@@ -118,6 +135,20 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
118
135
  }), !_this.state.canUseMobileNativeDatePicker && picker);
119
136
  };
120
137
 
138
+ _this.handleSelectToday = function (today) {
139
+ return function () {
140
+ _this.handleSelect(today);
141
+
142
+ if (_this.calendar) {
143
+ var _this$state$today = _this.state.today,
144
+ month = _this$state$today.month,
145
+ year = _this$state$today.year;
146
+
147
+ _this.calendar.scrollToMonth(month, year);
148
+ }
149
+ };
150
+ };
151
+
121
152
  _this.getParent = function () {
122
153
  return getRootNode(_assertThisInitialized(_this));
123
154
  };
@@ -165,41 +196,22 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
165
196
  }
166
197
  };
167
198
 
168
- _this.handlePick = function (dateShape) {
169
- _this.handleSelect(dateShape);
199
+ _this.handleValueChange = function (value) {
200
+ _this.handleSelect(value);
170
201
 
171
202
  _this.blur();
172
203
  };
173
204
 
174
- _this.handleSelect = function (dateShape) {
175
- if (!dateShape) {
205
+ _this.handleSelect = function (value) {
206
+ if (!value) {
176
207
  return null;
177
208
  }
178
209
 
179
- var value = InternalDateTransformer.dateToInternalString({
180
- date: dateShape.date,
181
- month: dateShape.month + 1,
182
- year: dateShape.year
183
- });
184
-
185
210
  if (_this.props.onValueChange) {
186
211
  _this.props.onValueChange(value);
187
212
  }
188
213
  };
189
214
 
190
- _this.isHoliday = function (_ref) {
191
- var date = _ref.date,
192
- month = _ref.month,
193
- year = _ref.year,
194
- isWeekend = _ref.isWeekend;
195
- var dateString = InternalDateTransformer.dateToInternalString({
196
- date: date,
197
- month: month + 1,
198
- year: year
199
- });
200
- return _this.getProps().isHoliday(dateString, isWeekend);
201
- };
202
-
203
215
  return _this;
204
216
  }
205
217
 
@@ -270,9 +282,13 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
270
282
 
271
283
  return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
272
284
  _this2.theme = theme;
273
- return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
285
+ return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
286
+ value: ThemeFactory.create({
287
+ calendarBottomSeparatorBorder: 'none'
288
+ }, theme)
289
+ }, /*#__PURE__*/React.createElement(CommonWrapper, _extends({
274
290
  rootNodeRef: _this2.setRootNode
275
- }, _this2.props), _this2.renderMain);
291
+ }, _this2.props), _this2.renderMain));
276
292
  });
277
293
  };
278
294
 
@@ -288,12 +304,49 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
288
304
  if (date.validate({
289
305
  checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native]
290
306
  })) {
291
- return date;
307
+ return date.toString({
308
+ withPad: true
309
+ });
292
310
  }
293
311
 
294
312
  return undefined;
295
313
  };
296
314
 
315
+ _proto.renderTodayLink = function renderTodayLink() {
316
+ var _cx;
317
+
318
+ var _this$locale = this.locale,
319
+ order = _this$locale.order,
320
+ separator = _this$locale.separator;
321
+ var today = new InternalDate({
322
+ order: order,
323
+ separator: separator
324
+ }).setComponents(InternalDateGetter.getTodayComponents()).toString({
325
+ withPad: true,
326
+ withSeparator: true
327
+ });
328
+
329
+ if (isTheme2022(this.theme)) {
330
+ return /*#__PURE__*/React.createElement("div", {
331
+ style: {
332
+ margin: 8
333
+ }
334
+ }, /*#__PURE__*/React.createElement(Button, {
335
+ "data-tid": DatePickerDataTids.pickerTodayWrapper,
336
+ width: "100%",
337
+ onClick: this.handleSelectToday(today),
338
+ icon: /*#__PURE__*/React.createElement(ArrowAUpIcon16Light, null)
339
+ }, this.locale.today));
340
+ }
341
+
342
+ return /*#__PURE__*/React.createElement("button", {
343
+ "data-tid": DatePickerDataTids.pickerTodayWrapper,
344
+ className: cx((_cx = {}, _cx[styles.todayLinkWrapper(this.theme)] = true, _cx)),
345
+ onClick: this.handleSelectToday(today),
346
+ tabIndex: -1
347
+ }, this.locale.today + " " + today);
348
+ };
349
+
297
350
  return DatePicker;
298
351
  }(React.PureComponent), _class2.__KONTUR_REACT_UI__ = 'DatePicker', _class2.propTypes = {
299
352
  autoFocus: PropTypes.bool,
@@ -329,13 +382,10 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
329
382
  onMouseEnter: PropTypes.func,
330
383
  onMouseLeave: PropTypes.func,
331
384
  onMouseOver: PropTypes.func,
332
- isHoliday: PropTypes.func.isRequired
385
+ isHoliday: PropTypes.func
333
386
  }, _class2.defaultProps = {
334
387
  minDate: MIN_FULLDATE,
335
- maxDate: MAX_FULLDATE,
336
- isHoliday: function isHoliday(_day, isWeekend) {
337
- return isWeekend;
338
- }
388
+ maxDate: MAX_FULLDATE
339
389
  }, _class2.validate = function (value, range) {
340
390
  if (range === void 0) {
341
391
  range = {};
@@ -361,4 +411,4 @@ export var DatePicker = rootNode(_class = (_temp = _class2 = /*#__PURE__*/functi
361
411
  return internalDate.validate({
362
412
  checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Number, InternalDateValidateCheck.Native, InternalDateValidateCheck.Limits, InternalDateValidateCheck.Range]
363
413
  });
364
- }, _temp)) || _class;
414
+ }, _temp)) || _class) || _class);
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePicker.tsx"],"names":["PropTypes","React","InternalDate","InternalDateTransformer","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","DropdownContainer","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","ThemeContext","Picker","styles","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","pickerRoot","pickerTodayWrapper","DatePicker","getProps","defaultProps","state","opened","canUseMobileNativeDatePicker","input","focused","renderMain","props","picker","value","minDate","maxDate","internalDate","parseValueToDate","date","toNativeFormat","parsedMinDate","formattedMinDate","undefined","parsedMaxDate","formattedMaxDate","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","handlePick","handleSelect","enableTodayLink","isHoliday","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","width","minWidth","ref","setState","onFocus","close","onBlur","dateShape","blur","dateToInternalString","month","year","isWeekend","dateString","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","setRootNode","validate","checks","NotNull","Native","PureComponent","__KONTUR_REACT_UI__","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","_day","range","order","DMY","separator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"iPAAA,OAAOA,SAAP,MAAsB,YAAtB;AACA,OAAOC,KAAP,MAAkB,OAAlB;;AAEA,SAASC,YAAT,QAA6B,6BAA7B;AACA,SAASC,uBAAT,QAAwC,wCAAxC;AACA,SAASC,YAAT,EAAuBC,YAAvB,QAA2C,0BAA3C;AACA,SAASC,iBAAT,EAA4BC,qBAA5B,EAAmDC,yBAAnD,QAAoF,sBAApF;;;AAGA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,iBAAT,QAA0D,kCAA1D;AACA,SAASC,WAAT,QAA4B,uBAA5B;AACA,SAASC,aAAT,QAAmE,8BAAnE;AACA,SAASC,QAAT,QAAyB,kBAAzB;AACA,SAASC,eAAT,QAAgC,gCAAhC;AACA,SAASC,WAAT,EAAsBC,QAAtB,QAAoD,oBAApD;AACA,SAASC,aAAT,QAA8B,iBAA9B;AACA,SAASC,iBAAT,QAAkC,6BAAlC;AACA,SAASC,YAAT,QAA6B,gCAA7B;;;AAGA,SAASC,MAAT,QAAuB,UAAvB;AACA,SAASC,MAAT,QAAuB,qBAAvB;;AAEA,IAAMC,gBAAgB,GAAG;AACvBC,EAAAA,SAAS,EAAE,IADY;AAEvBC,EAAAA,QAAQ,EAAE,IAFa;AAGvBC,EAAAA,OAAO,EAAE,IAHc;AAIvBC,EAAAA,KAAK,EAAE,IAJgB;AAKvBC,EAAAA,IAAI,EAAE,IALiB;AAMvBC,EAAAA,SAAS,EAAE,IANY,EAAzB;;;AASA,OAAO,IAAMC,SAAS,GAAG,GAAlB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDP,OAAO,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B;AAEhCC,EAAAA,UAAU,EAAE,cAFoB;AAGhCC,EAAAA,kBAAkB,EAAE,sBAHY,EAA3B;;;;;;AASP,WAAaC,UAAb,GADClB,QACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DUmB,IAAAA,QA3DV,GA2DqBjB,iBAAiB,CAACgB,UAAU,CAACE,YAAZ,CA3DtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFSC,IAAAA,KAvFT,GAuFkC,EAAEC,MAAM,EAAE,KAAV,EAAiBC,4BAA4B,EAAE,KAA/C,EAvFlC;;AAyFUC,IAAAA,KAzFV,GAyFoC,IAzFpC;AA0FUC,IAAAA,OA1FV,GA0FoB,KA1FpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8JSC,IAAAA,UA9JT,GA8JsB,UAACC,KAAD,EAAoD;AACtE,UAAIC,MAAM,GAAG,IAAb;;AAEA,UAAQC,KAAR,GAAkB,MAAKF,KAAvB,CAAQE,KAAR;AACA,2BAA6B,MAAKV,QAAL,EAA7B,CAAQW,OAAR,kBAAQA,OAAR,CAAiBC,OAAjB,kBAAiBA,OAAjB;;AAEA,UAAMC,YAAY,GAAG,MAAKC,gBAAL,CAAsBJ,KAAtB,CAArB;AACA,UAAMK,IAAI,GAAGF,YAAY,GAAGA,YAAY,CAACG,cAAb,EAAH,GAAmC,IAA5D;;AAEA,UAAMC,aAAa,GAAG,MAAKH,gBAAL,CAAsBH,OAAtB,CAAtB;AACA,UAAMO,gBAAgB,GAAID,aAAa,IAAIA,aAAa,CAACD,cAAd,EAAlB,IAAqDG,SAA9E;;AAEA,UAAMC,aAAa,GAAG,MAAKN,gBAAL,CAAsBF,OAAtB,CAAtB;AACA,UAAMS,gBAAgB,GAAID,aAAa,IAAIA,aAAa,CAACJ,cAAd,EAAlB,IAAqDG,SAA9E;;AAEA,UAAI,MAAKjB,KAAL,CAAWC,MAAf,EAAuB;AACrBM,QAAAA,MAAM;AACJ,4BAAC,iBAAD;AACE,UAAA,OAAO,EAAE,MAAKD,KAAL,CAAWc,OADtB;AAEE,sBAAU3B,kBAAkB,CAACC,IAF/B;AAGE,UAAA,SAAS,EAAE,MAAK2B,SAHlB;AAIE,UAAA,OAAO,EAAEC,QAAQ,CAAC,MAAKC,KAAL,CAAWC,qBAAZ,CAJnB;AAKE,UAAA,KAAK,EAAE,MAAKlB,KAAL,CAAWmB,SALpB;;AAOE,4BAAC,MAAD;AACE,UAAA,KAAK,EAAEZ,IADT;AAEE,UAAA,OAAO,EAAEG,gBAFX;AAGE,UAAA,OAAO,EAAEG,gBAHX;AAIE,UAAA,MAAM,EAAE,MAAKO,UAJf;AAKE,UAAA,QAAQ,EAAE,MAAKC,YALjB;AAME,UAAA,eAAe,EAAE,MAAKrB,KAAL,CAAWsB,eAN9B;AAOE,UAAA,SAAS,EAAE,MAAKC,SAPlB,GAPF,CADF;;;;AAmBD;;AAED;AACE;AACE,UAAA,SAAS,EAAE7C,MAAM,CAACU,IAAP,EADb;AAEE,UAAA,KAAK,EAAE,MAAKoC,YAAL,EAFT;AAGE,UAAA,YAAY,EAAE,MAAKxB,KAAL,CAAWyB,YAH3B;AAIE,UAAA,YAAY,EAAE,MAAKzB,KAAL,CAAW0B,YAJ3B;AAKE,UAAA,WAAW,EAAE,MAAK1B,KAAL,CAAW2B,WAL1B;;AAOE,4BAAC,SAAD;AACM3D,QAAAA,WAAW,CAACgC,KAAD,EAAQrB,gBAAR,CADjB;AAEE,UAAA,GAAG,EAAE,MAAKiD,WAFZ;AAGE,UAAA,KAAK,EAAE,MAAK5B,KAAL,CAAWE,KAAX,IAAoB,EAH7B;AAIE,UAAA,KAAK,EAAC,MAJR;AAKE,UAAA,QAAQ,MALV;AAME,UAAA,OAAO,EAAEC,OANX;AAOE,UAAA,OAAO,EAAEC,OAPX;AAQE,UAAA,MAAM,EAAE,MAAKyB,UARf;AASE,UAAA,OAAO,EAAE,MAAKC,WAThB;AAUE,UAAA,aAAa,EAAE,MAAK9B,KAAL,CAAW+B,aAV5B,IAPF;;AAmBG,cAAKrC,KAAL,CAAWE,4BAAX;AACC,4BAAC,eAAD;AACE,UAAA,aAAa,EAAE,MAAKI,KAAL,CAAW+B,aAD5B;AAEE,UAAA,KAAK,EAAE,MAAK/B,KAAL,CAAWE,KAAX,IAAoB,EAF7B;AAGE,UAAA,OAAO,EAAEC,OAHX;AAIE,UAAA,OAAO,EAAEC,OAJX;AAKE,UAAA,QAAQ,EAAE,MAAKJ,KAAL,CAAWnB,QALvB,GApBJ;;;AA4BG,SAAC,MAAKa,KAAL,CAAWE,4BAAZ,IAA4CK,MA5B/C,CADF;;;AAgCD,KAnOH;;AAqOSc,IAAAA,SArOT,GAqOqB,YAAM;AACvB,aAAO3C,WAAW,+BAAlB;AACD,KAvOH;;AAyOUoD,IAAAA,YAzOV,GAyOyB,YAAM;AAC3B,UAAQQ,KAAR,GAAkB,MAAKhC,KAAvB,CAAQgC,KAAR;AACA,aAAO1D,aAAa,CAAC0D,KAAD,CAAb,GAAuB,EAAEA,KAAK,EAALA,KAAF,EAAvB,GAAmC,EAAEC,QAAQ,EAAE/C,SAAZ,EAA1C;AACD,KA5OH;;AA8OU0C,IAAAA,WA9OV,GA8OwB,UAACM,GAAD,EAA2B;AAC/C,YAAKrC,KAAL,GAAaqC,GAAb;AACD,KAhPH;;;;;;;;;;;;;AA6PUJ,IAAAA,WA7PV,GA6PwB,YAAM;AAC1B,UAAI,MAAKhC,OAAT,EAAkB;AAChB;AACD;;AAED,YAAKA,OAAL,GAAe,IAAf;;AAEA,YAAKqC,QAAL,CAAc,EAAExC,MAAM,EAAE,IAAV,EAAd;;AAEA,UAAI,MAAKK,KAAL,CAAWoC,OAAf,EAAwB;AACtB,cAAKpC,KAAL,CAAWoC,OAAX;AACD;AACF,KAzQH;;AA2QUP,IAAAA,UA3QV,GA2QuB,YAAM;AACzB,UAAI,CAAC,MAAK/B,OAAV,EAAmB;AACjB;AACD;;AAED,YAAKA,OAAL,GAAe,KAAf;AACA,YAAKuC,KAAL;;AAEA,UAAI,MAAKrC,KAAL,CAAWsC,MAAf,EAAuB;AACrB,cAAKtC,KAAL,CAAWsC,MAAX;AACD;AACF,KAtRH;;AAwRUlB,IAAAA,UAxRV,GAwRuB,UAACmB,SAAD,EAAkC;AACrD,YAAKlB,YAAL,CAAkBkB,SAAlB;AACA,YAAKC,IAAL;AACD,KA3RH;;AA6RUnB,IAAAA,YA7RV,GA6RyB,UAACkB,SAAD,EAAyC;AAC9D,UAAI,CAACA,SAAL,EAAgB;AACd,eAAO,IAAP;AACD;;AAED,UAAMrC,KAAK,GAAG1C,uBAAuB,CAACiF,oBAAxB,CAA6C;AACzDlC,QAAAA,IAAI,EAAEgC,SAAS,CAAChC,IADyC;AAEzDmC,QAAAA,KAAK,EAAEH,SAAS,CAACG,KAAV,GAAkB,CAFgC;AAGzDC,QAAAA,IAAI,EAAEJ,SAAS,CAACI,IAHyC,EAA7C,CAAd;;AAKA,UAAI,MAAK3C,KAAL,CAAW+B,aAAf,EAA8B;AAC5B,cAAK/B,KAAL,CAAW+B,aAAX,CAAyB7B,KAAzB;AACD;AACF,KA1SH;;AA4SUqB,IAAAA,SA5SV,GA4SsB,gBAAkF,KAA/EhB,IAA+E,QAA/EA,IAA+E,CAAzEmC,KAAyE,QAAzEA,KAAyE,CAAlEC,IAAkE,QAAlEA,IAAkE,CAA5DC,SAA4D,QAA5DA,SAA4D;AACpG,UAAMC,UAAU,GAAGrF,uBAAuB,CAACiF,oBAAxB,CAA6C,EAAElC,IAAI,EAAJA,IAAF,EAAQmC,KAAK,EAAEA,KAAK,GAAG,CAAvB,EAA0BC,IAAI,EAAJA,IAA1B,EAA7C,CAAnB;AACA,aAAO,MAAKnD,QAAL,GAAgB+B,SAAhB,CAA0BsB,UAA1B,EAAsCD,SAAtC,CAAP;AACD,KA/SH,wDA6FSE,iBA7FT,GA6FE,6BAA2B,CACzB,IAAI,KAAK9C,KAAL,CAAW+C,yBAAX,IAAwC7E,QAA5C,EAAsD,CACpD,KAAKiE,QAAL,CAAc,EACZvC,4BAA4B,EAAE,IADlB,EAAd,EAGD,CACD,IAAI,KAAKI,KAAL,CAAWpB,SAAf,EAA0B,CACxB,KAAKoE,KAAL,GACD,CACF,CAtGH,QAwGSC,kBAxGT,GAwGE,8BAA4B,CAC1B,IAAQpE,QAAR,GAAqB,KAAKmB,KAA1B,CAAQnB,QAAR,CACA,IAAQc,MAAR,GAAmB,KAAKD,KAAxB,CAAQC,MAAR,CACA,IAAId,QAAQ,IAAIc,MAAhB,EAAwB,CACtB,KAAK0C,KAAL,GACD,CACF,CA9GH,CAgHE;AACF;AACA,KAlHA,QAmHSG,IAnHT,GAmHE,gBAAc,CACZ,IAAI,KAAK3C,KAAT,EAAgB,CACd,KAAKA,KAAL,CAAW2C,IAAX,GACD,CACD,KAAKX,UAAL,GACD,CAxHH,CA0HE;AACF;AACA,KA5HA,QA6HSmB,KA7HT,GA6HE,iBAAe,CACb,IAAI,KAAKhD,KAAL,CAAWnB,QAAf,EAAyB,CACvB,OACD,CACD,IAAI,KAAKgB,KAAT,EAAgB,CACd,KAAKA,KAAL,CAAWmD,KAAX,GACD,CACD,KAAKlB,WAAL,GACD,CArIH,CAuIE;AACF;AACA;AACA,KA1IA,QA2ISO,KA3IT,GA2IE,iBAAe,CACb,KAAKF,QAAL,CAAc,EAAExC,MAAM,EAAE,KAAV,EAAd,EACD,CA7IH,QA+ISuD,MA/IT,GA+IE,kBAAgB,mBACd,oBACE,oBAAC,YAAD,CAAc,QAAd,QACG,UAACjC,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,oBACE,oBAAC,aAAD,aAAe,WAAW,EAAE,MAAI,CAACkC,WAAjC,IAAkD,MAAI,CAACnD,KAAvD,GACG,MAAI,CAACD,UADR,CADF,CAKD,CARH,CADF,CAYD,CA5JH,QAkPUO,gBAlPV,GAkPE,0BAAyBJ,KAAzB,EAA6E,CAC3E,IAAIA,KAAK,KAAKS,SAAV,IAAuBT,KAAK,KAAK,IAArC,EAA2C,CACzC,OAAOS,SAAP,CACD,CACD,IAAMJ,IAAI,GAAG,IAAIhD,YAAJ,CAAiB,EAAE2C,KAAK,EAALA,KAAF,EAAjB,CAAb,CACA,IAAIK,IAAI,CAAC6C,QAAL,CAAc,EAAEC,MAAM,EAAE,CAACxF,yBAAyB,CAACyF,OAA3B,EAAoCzF,yBAAyB,CAAC0F,MAA9D,CAAV,EAAd,CAAJ,EAAsG,CACpG,OAAOhD,IAAP,CACD,CACD,OAAOI,SAAP,CACD,CA3PH,qBAAgCrD,KAAK,CAACkG,aAAtC,WACgBC,mBADhB,GACsC,YADtC,UAGgBC,SAHhB,GAG4B,EACxB9E,SAAS,EAAEvB,SAAS,CAACsG,IADG,EAGxB9E,QAAQ,EAAExB,SAAS,CAACsG,IAHI,EAKxB;AACJ;AACA,KACIrC,eAAe,EAAEjE,SAAS,CAACsG,IARH,EAUxB5E,KAAK,EAAE1B,SAAS,CAACsG,IAVO,EAYxB;AACJ;AACA,KACIvD,OAAO,EAAE/C,SAAS,CAACuG,MAAV,CAAiBC,UAfF,EAiBxB1C,SAAS,EAAE9D,SAAS,CAACyG,KAAV,CAAgB,CAAC,MAAD,EAAS,OAAT,CAAhB,CAjBa,EAmBxB;AACJ;AACA,KACI3D,OAAO,EAAE9C,SAAS,CAACuG,MAAV,CAAiBC,UAtBF,EAwBxB;AACJ;AACA,KACI3D,KAAK,EAAE7C,SAAS,CAACuG,MA3BO,EA6BxB9E,OAAO,EAAEzB,SAAS,CAACsG,IA7BK,EA+BxB3B,KAAK,EAAE3E,SAAS,CAAC0G,SAAV,CAAoB,CAAC1G,SAAS,CAAC2G,MAAX,EAAmB3G,SAAS,CAACuG,MAA7B,CAApB,EAA0DC,UA/BzC,EAiCxBvB,MAAM,EAAEjF,SAAS,CAAC4G,IAjCM,EAmCxBlC,aAAa,EAAE1E,SAAS,CAAC4G,IAAV,CAAeJ,UAnCN,EAqCxBzB,OAAO,EAAE/E,SAAS,CAAC4G,IArCK,EAuCxBhF,SAAS,EAAE5B,SAAS,CAAC4G,IAvCG,EAyCxBxC,YAAY,EAAEpE,SAAS,CAAC4G,IAzCA,EA2CxBvC,YAAY,EAAErE,SAAS,CAAC4G,IA3CA,EA6CxBtC,WAAW,EAAEtE,SAAS,CAAC4G,IA7CC,EA+CxB1C,SAAS,EAAElE,SAAS,CAAC4G,IAAV,CAAeJ,UA/CF,EAH5B,UAqDgBpE,YArDhB,GAqD6C,EACzCU,OAAO,EAAEzC,YADgC,EAEzC0C,OAAO,EAAE3C,YAFgC,EAGzC8D,SAAS,EAAE,mBAAC2C,IAAD,EAAetB,SAAf,UAAsCA,SAAtC,EAH8B,EArD7C,UA8DgBQ,QA9DhB,GA8D2B,UAAClD,KAAD,EAA0BiE,KAA1B,EAAiF,KAAvDA,KAAuD,cAAvDA,KAAuD,GAAP,EAAO,EACxG,IAAI,CAACjE,KAAL,EAAY,CACV,OAAO,KAAP,CACD,CAED,aAA2DiE,KAA3D,yBAAQhE,OAAR,CAAQA,OAAR,+BAAkBzC,YAAlB,0CAAgC0C,OAAhC,CAAgCA,OAAhC,+BAA0C3C,YAA1C,kBACA,IAAM4C,YAAY,GAAG,IAAI9C,YAAJ,CAAiB,EACpC6G,KAAK,EAAEzG,iBAAiB,CAAC0G,GADW,EAEpCC,SAAS,EAAE1G,qBAAqB,CAAC2G,GAFG,EAAjB,EAIlBC,aAJkB,CAIJ,IAAIjH,YAAJ,CAAiB,EAAE2C,KAAK,EAAEC,OAAT,EAAjB,CAJI,EAKlBsE,WALkB,CAKN,IAAIlH,YAAJ,CAAiB,EAAE2C,KAAK,EAAEE,OAAT,EAAjB,CALM,EAMlBsE,UANkB,CAMPxE,KANO,CAArB,CAQA,OAAOG,YAAY,CAAC+C,QAAb,CAAsB,EAC3BC,MAAM,EAAE,CACNxF,yBAAyB,CAACyF,OADpB,EAENzF,yBAAyB,CAAC8G,MAFpB,EAGN9G,yBAAyB,CAAC0F,MAHpB,EAIN1F,yBAAyB,CAAC+G,MAJpB,EAKN/G,yBAAyB,CAACgH,KALpB,CADmB,EAAtB,CAAP,CASD,CArFH","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, DropdownContainerProps } 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';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\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 extends Pick<DropdownContainerProps, 'menuPos'>, CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n minDate?: string;\n maxDate?: string;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: string | 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: string) => 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 {string} day - строка в формате `dd.mm.yyyy`\n * @param {boolean} isWeekend - флаг выходного (суббота или воскресенье)\n *\n * @returns {boolean} `true` для выходного или `false` для рабочего дня\n */\n isHoliday?: (day: string, isWeekend: boolean) => boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate' | 'isHoliday'>>;\n\n@rootNode\nexport class DatePicker extends React.PureComponent<DatePickerProps, 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: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n isHoliday: (_day: string, isWeekend: boolean) => isWeekend,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\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 <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\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { value } = this.props;\n const { minDate, maxDate } = this.getProps();\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\n menuPos={this.props.menuPos}\n data-tid={DatePickerDataTids.root}\n getParent={this.getParent}\n offsetY={parseInt(this.theme.datePickerMenuOffsetY)}\n align={this.props.menuAlign}\n >\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={minDate}\n maxDate={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={minDate}\n maxDate={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 = (dateShape: CalendarDateShape | null) => {\n if (!dateShape) {\n return null;\n }\n\n const value = InternalDateTransformer.dateToInternalString({\n date: dateShape.date,\n month: dateShape.month + 1,\n year: dateShape.year,\n });\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.getProps().isHoliday(dateString, isWeekend);\n };\n}\n"]}
1
+ {"version":3,"sources":["DatePicker.tsx"],"names":["PropTypes","React","LocaleContext","locale","InternalDateGetter","ArrowAUpIcon16Light","isTheme2022","cx","ThemeFactory","InternalDate","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","DropdownContainer","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","Calendar","ThemeContext","Button","getTodayDate","styles","DatePickerLocaleHelper","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","months","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","calendarWrapper","e","preventDefault","c","parseValueToDate","handleValueChange","isHoliday","value","enableTodayLink","renderTodayLink","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","handleSelectToday","handleSelect","month","year","scrollToMonth","width","minWidth","ref","setState","onFocus","close","onBlur","blur","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","create","calendarBottomSeparatorBorder","setRootNode","undefined","date","validate","checks","NotNull","Native","toString","withPad","order","separator","setComponents","getTodayComponents","withSeparator","margin","todayLinkWrapper","PureComponent","__KONTUR_REACT_UI__","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","range","internalDate","DMY","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { cx } from '../../lib/theming/Emotion';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { DropdownContainer, DropdownContainerProps } 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';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\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\n extends Pick<DropdownContainerProps, 'menuPos'>,\n Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: string | 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: string) => 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\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, 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,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\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, today: getTodayDate() };\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 <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate } = this.getProps();\n\n if (this.state.opened) {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: { Calendar: { months: this.locale.months } },\n }}\n >\n <DropdownContainer\n menuPos={this.props.menuPos}\n data-tid={DatePickerDataTids.root}\n getParent={this.getParent}\n offsetY={parseInt(this.theme.datePickerMenuOffsetY)}\n align={this.props.menuAlign}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n ref={(c) => (this.calendar = c)}\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </DropdownContainer>\n </LocaleContext.Provider>\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 data-tid={DatePickerDataTids.label}\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={minDate}\n maxDate={maxDate}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker && (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n )}\n {!this.state.canUseMobileNativeDatePicker && picker}\n </label>\n );\n };\n\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n if (isTheme2022(this.theme)) {\n return (\n <div style={{ margin: 8 }}>\n <Button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n return (\n <button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n className={cx({\n [styles.todayLinkWrapper(this.theme)]: true,\n })}\n onClick={this.handleSelectToday(today)}\n tabIndex={-1}\n >\n {`${this.locale.today} ${today}`}\n </button>\n );\n }\n\n private handleSelectToday = (today: string) => () => {\n this.handleSelect(today);\n\n if (this.calendar) {\n const { month, year } = this.state.today;\n this.calendar.scrollToMonth(month, year);\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 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 handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"]}
@@ -3,17 +3,19 @@ import React from 'react';
3
3
  import { Nullable } from '../../typings/utility-types';
4
4
  import { DropdownContainerProps } from '../../internal/DropdownContainer';
5
5
  import { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
6
+ import { CalendarDateShape, CalendarProps } from '../Calendar';
6
7
  export declare const MIN_WIDTH = 120;
7
- export interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>, CommonProps {
8
+ export interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>, Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate'>, CommonProps {
8
9
  autoFocus?: boolean;
9
10
  disabled?: boolean;
11
+ /**
12
+ * Отвечает за отображение кнопки "Сегодня".
13
+ */
10
14
  enableTodayLink?: boolean;
11
15
  /**
12
16
  * Состояние валидации при ошибке.
13
17
  */
14
18
  error?: boolean;
15
- minDate?: string;
16
- maxDate?: string;
17
19
  menuAlign?: 'left' | 'right';
18
20
  size?: 'small' | 'medium' | 'large';
19
21
  value?: string | null;
@@ -40,26 +42,20 @@ export interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>
40
42
  * - На iOS нативный календарь не умеет работать с minDate и maxDate
41
43
  */
42
44
  useMobileNativeDatePicker?: boolean;
43
- /**
44
- * Функция для определения праздничных дней
45
- * @default (_day, isWeekend) => isWeekend
46
- * @param {string} day - строка в формате `dd.mm.yyyy`
47
- * @param {boolean} isWeekend - флаг выходного (суббота или воскресенье)
48
- *
49
- * @returns {boolean} `true` для выходного или `false` для рабочего дня
50
- */
51
- isHoliday?: (day: string, isWeekend: boolean) => boolean;
52
45
  }
53
46
  export interface DatePickerState {
54
47
  opened: boolean;
55
48
  canUseMobileNativeDatePicker: boolean;
49
+ today: CalendarDateShape;
56
50
  }
57
51
  export declare const DatePickerDataTids: {
58
52
  readonly root: "DatePicker__root";
53
+ readonly input: "DatePicker__input";
54
+ readonly label: "DatePicker__label";
59
55
  readonly pickerRoot: "Picker__root";
60
56
  readonly pickerTodayWrapper: "Picker__todayWrapper";
61
57
  };
62
- declare type DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate' | 'isHoliday'>>;
58
+ declare type DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;
63
59
  export declare class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {
64
60
  static __KONTUR_REACT_UI__: string;
65
61
  static propTypes: {
@@ -92,11 +88,13 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
92
88
  onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
93
89
  onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
94
90
  onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
95
- isHoliday: PropTypes.Validator<(...args: any[]) => any>;
91
+ isHoliday: PropTypes.Requireable<(...args: any[]) => any>;
96
92
  };
97
93
  static defaultProps: DefaultProps;
98
94
  private getProps;
99
95
  private theme;
96
+ private calendar;
97
+ private readonly locale;
100
98
  static validate: (value: Nullable<string>, range?: {
101
99
  minDate?: string | undefined;
102
100
  maxDate?: string | undefined;
@@ -122,14 +120,15 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
122
120
  close(): void;
123
121
  render(): JSX.Element;
124
122
  renderMain: (props: CommonWrapperRestProps<DatePickerProps>) => JSX.Element;
123
+ private parseValueToDate;
124
+ private renderTodayLink;
125
+ private handleSelectToday;
125
126
  getParent: () => Nullable<Element>;
126
127
  private getRootStyle;
127
128
  private getInputRef;
128
- private parseValueToDate;
129
129
  private handleFocus;
130
130
  private handleBlur;
131
- private handlePick;
131
+ private handleValueChange;
132
132
  private handleSelect;
133
- private isHoliday;
134
133
  }
135
134
  export {};
@@ -1,10 +1,16 @@
1
1
  import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTemplateLiteralLoose";
2
2
 
3
- var _templateObject;
3
+ var _templateObject, _templateObject2, _templateObject3;
4
4
 
5
5
  import { css, memoizeStyle } from "../../../lib/theming/Emotion";
6
6
  export var styles = memoizeStyle({
7
7
  root: function root() {
8
8
  return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: inline-block;\n position: relative;\n touch-action: none;\n line-height: normal;\n "])));
9
+ },
10
+ calendarWrapper: function calendarWrapper(t) {
11
+ return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n background: ", ";\n box-shadow: ", ";\n display: inline-block;\n font-size: 0;\n z-index: 1000;\n touch-action: none;\n border-radius: ", ";\n "])), t.pickerBg, t.pickerShadow, t.pickerBorderRadius);
12
+ },
13
+ todayLinkWrapper: function todayLinkWrapper(t) {
14
+ return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n background-color: ", ";\n border: none;\n border-top: ", ";\n color: ", ";\n display: block;\n font-size: ", ";\n padding-bottom: ", ";\n padding-top: ", ";\n line-height: ", ";\n width: 100%;\n\n &:hover {\n background-color: ", ";\n cursor: pointer;\n }\n\n &:active {\n color: ", ";\n }\n "])), t.pickerTodayWrapperBgColor, t.pickerTodayWrapperBorderTop, t.linkColor, t.pickerTodayWrapperFontSize, t.pickerTodayWrapperPaddingBottom, t.pickerTodayWrapperPaddingTop, t.pickerTodayWrapperLineHeight, t.pickerTodayWrapperHoverBgColor, t.linkActiveColor);
9
15
  }
10
16
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePicker.styles.ts"],"names":["css","memoizeStyle","styles","root"],"mappings":"oHAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;AAEA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,IADiC,kBAC1B;AACL,WAAOH,GAAP;;;;;;AAMD,GARgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: inline-block;\n position: relative;\n touch-action: none;\n line-height: normal;\n `;\n },\n});\n"]}
1
+ {"version":3,"sources":["DatePicker.styles.ts"],"names":["css","memoizeStyle","styles","root","calendarWrapper","t","pickerBg","pickerShadow","pickerBorderRadius","todayLinkWrapper","pickerTodayWrapperBgColor","pickerTodayWrapperBorderTop","linkColor","pickerTodayWrapperFontSize","pickerTodayWrapperPaddingBottom","pickerTodayWrapperPaddingTop","pickerTodayWrapperLineHeight","pickerTodayWrapperHoverBgColor","linkActiveColor"],"mappings":";AACA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;AAEA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,IADiC,kBAC1B;AACL,WAAOH,GAAP;;;;;;AAMD,GARgC;AASjCI,EAAAA,eATiC,2BASjBC,CATiB,EASP;AACxB,WAAOL,GAAP;AACgBK,IAAAA,CAAC,CAACC,QADlB;AAEgBD,IAAAA,CAAC,CAACE,YAFlB;;;;;AAOmBF,IAAAA,CAAC,CAACG,kBAPrB;;AASD,GAnBgC;AAoBjCC,EAAAA,gBApBiC,4BAoBhBJ,CApBgB,EAoBN;AACzB,WAAOL,GAAP;AACsBK,IAAAA,CAAC,CAACK,yBADxB;;AAGgBL,IAAAA,CAAC,CAACM,2BAHlB;AAIWN,IAAAA,CAAC,CAACO,SAJb;;AAMeP,IAAAA,CAAC,CAACQ,0BANjB;AAOoBR,IAAAA,CAAC,CAACS,+BAPtB;AAQiBT,IAAAA,CAAC,CAACU,4BARnB;AASiBV,IAAAA,CAAC,CAACW,4BATnB;;;;AAawBX,IAAAA,CAAC,CAACY,8BAb1B;;;;;AAkBaZ,IAAAA,CAAC,CAACa,eAlBf;;;AAqBD,GA1CgC,EAAD,CAA3B","sourcesContent":["import { Theme } from '../../lib/theming/Theme';\nimport { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: inline-block;\n position: relative;\n touch-action: none;\n line-height: normal;\n `;\n },\n calendarWrapper(t: Theme) {\n return css`\n background: ${t.pickerBg};\n box-shadow: ${t.pickerShadow};\n display: inline-block;\n font-size: 0;\n z-index: 1000;\n touch-action: none;\n border-radius: ${t.pickerBorderRadius};\n `;\n },\n todayLinkWrapper(t: Theme) {\n return css`\n background-color: ${t.pickerTodayWrapperBgColor};\n border: none;\n border-top: ${t.pickerTodayWrapperBorderTop};\n color: ${t.linkColor};\n display: block;\n font-size: ${t.pickerTodayWrapperFontSize};\n padding-bottom: ${t.pickerTodayWrapperPaddingBottom};\n padding-top: ${t.pickerTodayWrapperPaddingTop};\n line-height: ${t.pickerTodayWrapperLineHeight};\n width: 100%;\n\n &:hover {\n background-color: ${t.pickerTodayWrapperHoverBgColor};\n cursor: pointer;\n }\n\n &:active {\n color: ${t.linkActiveColor};\n }\n `;\n },\n});\n"]}
@@ -1,3 +1,6 @@
1
+ import { Theme } from '../../lib/theming/Theme';
1
2
  export declare const styles: {
2
3
  root(): string;
4
+ calendarWrapper(t: Theme): string;
5
+ todayLinkWrapper(t: Theme): string;
3
6
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEA,OAAO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAOC,KAAK,GAAG,CAAf,EAAkBC,IAAlB,EAAwBC,GAAxB,CAA4B,UAACC,CAAD,UAAOA,CAAC,CAACC,QAAF,EAAP,EAA5B,CAAlB,CAAOC,CAAP,WAAUC,CAAV,WAAaC,CAAb;AACA,SAAUF,CAAC,CAACG,QAAF,CAAW,CAAX,EAAc,GAAd,CAAV,SAAgCF,CAAC,CAACE,QAAF,CAAW,CAAX,EAAc,GAAd,CAAhC,SAAsDD,CAAC,CAACC,QAAF,CAAW,CAAX,EAAc,GAAd,CAAtD;AACD","sourcesContent":["import { CalendarDateShape } from '../../internal/Calendar';\n\nexport function formatDate({ date, month, year }: CalendarDateShape): string {\n const [d, m, y] = [date, month + 1, year].map((x) => x.toString());\n return `${d.padStart(2, '0')}.${m.padStart(2, '0')}.${y.padStart(4, '0')}`;\n}\n"]}
1
+ {"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEA,OAAO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAOC,KAAK,GAAG,CAAf,EAAkBC,IAAlB,EAAwBC,GAAxB,CAA4B,UAACC,CAAD,UAAOA,CAAC,CAACC,QAAF,EAAP,EAA5B,CAAlB,CAAOC,CAAP,WAAUC,CAAV,WAAaC,CAAb;AACA,SAAUF,CAAC,CAACG,QAAF,CAAW,CAAX,EAAc,GAAd,CAAV,SAAgCF,CAAC,CAACE,QAAF,CAAW,CAAX,EAAc,GAAd,CAAhC,SAAsDD,CAAC,CAACC,QAAF,CAAW,CAAX,EAAc,GAAd,CAAtD;AACD","sourcesContent":["import { CalendarDateShape } from '../../components/Calendar/CalendarDateShape';\n\nexport function formatDate({ date, month, year }: CalendarDateShape): string {\n const [d, m, y] = [date, month + 1, year].map((x) => x.toString());\n return `${d.padStart(2, '0')}.${m.padStart(2, '0')}.${y.padStart(4, '0')}`;\n}\n"]}
@@ -1,2 +1,2 @@
1
- import { CalendarDateShape } from '../../internal/Calendar';
1
+ import { CalendarDateShape } from '../../components/Calendar/CalendarDateShape';
2
2
  export declare function formatDate({ date, month, year }: CalendarDateShape): string;