@astral/ui 1.24.0 → 1.26.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 (455) hide show
  1. package/ConfigProvider/ConfigProvider.d.ts +18 -2
  2. package/ConfigProvider/ConfigProvider.js +6 -7
  3. package/DatePicker/DateCalendar/DateCalendarBody/index.d.ts +1 -0
  4. package/DatePicker/DateCalendar/DateCalendarBody/index.js +17 -0
  5. package/DatePicker/DateCalendar/DateCalendarBody/styles.d.ts +11 -0
  6. package/DatePicker/DateCalendar/DateCalendarBody/styles.js +12 -0
  7. package/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.d.ts +7 -0
  8. package/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.js +22 -0
  9. package/DatePicker/DateCalendar/DateCalendarBtn/index.d.ts +1 -0
  10. package/DatePicker/DateCalendar/DateCalendarBtn/index.js +17 -0
  11. package/DatePicker/DateCalendar/DateCalendarBtn/styles.d.ts +4 -0
  12. package/DatePicker/DateCalendar/DateCalendarBtn/styles.js +8 -0
  13. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.d.ts +3 -0
  14. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.js +24 -0
  15. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.d.ts +1 -0
  16. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.js +17 -0
  17. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.d.ts +4 -0
  18. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.js +9 -0
  19. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.d.ts +3 -0
  20. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.js +24 -0
  21. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.d.ts +1 -0
  22. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.js +17 -0
  23. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.d.ts +4 -0
  24. package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.js +9 -0
  25. package/DatePicker/DateCalendar/DateCalendarChevronBtn/index.d.ts +2 -0
  26. package/DatePicker/DateCalendar/DateCalendarChevronBtn/index.js +18 -0
  27. package/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.d.ts +4 -0
  28. package/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.js +10 -0
  29. package/DatePicker/DateCalendar/DateCalendarChevronBtn/types.d.ts +12 -0
  30. package/DatePicker/{types.js → DateCalendar/DateCalendarChevronBtn/types.js} +0 -0
  31. package/DatePicker/DateCalendar/DateCalendarGridBtn/index.d.ts +1 -0
  32. package/DatePicker/DateCalendar/DateCalendarGridBtn/index.js +17 -0
  33. package/DatePicker/DateCalendar/DateCalendarGridBtn/styles.d.ts +22 -0
  34. package/DatePicker/DateCalendar/DateCalendarGridBtn/styles.js +72 -0
  35. package/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.d.ts +38 -0
  36. package/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.js +8 -0
  37. package/DatePicker/DateCalendar/DateCalendarHead/index.d.ts +1 -0
  38. package/DatePicker/DateCalendar/DateCalendarHead/index.js +17 -0
  39. package/DatePicker/DateCalendar/DateCalendarHead/styles.d.ts +11 -0
  40. package/DatePicker/DateCalendar/DateCalendarHead/styles.js +26 -0
  41. package/DatePicker/DateCalendar/enums/calendarGridPositions.d.ts +6 -0
  42. package/DatePicker/DateCalendar/enums/calendarGridPositions.js +10 -0
  43. package/DatePicker/DateCalendar/index.d.ts +4 -0
  44. package/DatePicker/DateCalendar/index.js +20 -0
  45. package/{esm/DatePicker/styled.d.ts → DatePicker/DateCalendar/styles.d.ts} +1 -1
  46. package/DatePicker/DateCalendar/styles.js +15 -0
  47. package/DatePicker/DatePicker.d.ts +20 -9
  48. package/DatePicker/DatePicker.js +44 -42
  49. package/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.d.ts +6 -0
  50. package/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.js +7 -0
  51. package/DatePicker/DatePickerClickAwayListener/index.d.ts +1 -0
  52. package/DatePicker/DatePickerClickAwayListener/index.js +17 -0
  53. package/DatePicker/DatePickerInput/DatePickerInput.d.ts +8 -0
  54. package/DatePicker/DatePickerInput/DatePickerInput.js +31 -0
  55. package/DatePicker/DatePickerInput/index.d.ts +1 -0
  56. package/DatePicker/DatePickerInput/index.js +17 -0
  57. package/DatePicker/DatePickerInput/styles.d.ts +4 -0
  58. package/DatePicker/DatePickerInput/styles.js +10 -0
  59. package/DatePicker/DatePickerPopper/DatePickerPopper.d.ts +6 -0
  60. package/DatePicker/DatePickerPopper/DatePickerPopper.js +31 -0
  61. package/DatePicker/DatePickerPopper/index.d.ts +1 -0
  62. package/DatePicker/DatePickerPopper/index.js +17 -0
  63. package/DatePicker/DatePickerPopper/styles.d.ts +8 -0
  64. package/DatePicker/DatePickerPopper/styles.js +15 -0
  65. package/DatePicker/DayPicker/DateDayPickerGrid/index.d.ts +1 -0
  66. package/DatePicker/DayPicker/DateDayPickerGrid/index.js +17 -0
  67. package/DatePicker/DayPicker/DateDayPickerGrid/styles.d.ts +5 -0
  68. package/DatePicker/DayPicker/DateDayPickerGrid/styles.js +11 -0
  69. package/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.d.ts +6 -0
  70. package/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.js +11 -0
  71. package/DatePicker/DayPicker/DateDayPickerGridHead/index.d.ts +1 -0
  72. package/DatePicker/DayPicker/DateDayPickerGridHead/index.js +17 -0
  73. package/DatePicker/DayPicker/DateDayPickerGridHead/styles.d.ts +5 -0
  74. package/DatePicker/DayPicker/DateDayPickerGridHead/styles.js +14 -0
  75. package/DatePicker/DayPicker/DayPicker.d.ts +13 -0
  76. package/DatePicker/DayPicker/DayPicker.js +54 -0
  77. package/DatePicker/DayPicker/hooks/useDaysGrid/index.d.ts +1 -0
  78. package/DatePicker/DayPicker/hooks/useDaysGrid/index.js +17 -0
  79. package/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.d.ts +25 -0
  80. package/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.js +110 -0
  81. package/DatePicker/DayPicker/index.d.ts +1 -0
  82. package/DatePicker/DayPicker/index.js +17 -0
  83. package/DatePicker/MinMaxDateContext/MinMaxDateContext.d.ts +7 -0
  84. package/DatePicker/MinMaxDateContext/MinMaxDateContext.js +23 -0
  85. package/DatePicker/MinMaxDateContext/index.d.ts +1 -0
  86. package/DatePicker/MinMaxDateContext/index.js +17 -0
  87. package/DatePicker/MonthPicker/MonthPicker.d.ts +6 -0
  88. package/DatePicker/MonthPicker/MonthPicker.js +46 -0
  89. package/DatePicker/MonthPicker/hooks/useMonthsGrid/index.d.ts +1 -0
  90. package/DatePicker/MonthPicker/hooks/useMonthsGrid/index.js +17 -0
  91. package/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.d.ts +8 -0
  92. package/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.js +45 -0
  93. package/DatePicker/MonthPicker/index.d.ts +1 -0
  94. package/DatePicker/MonthPicker/index.js +17 -0
  95. package/DatePicker/YearMonthDayPicker/YearMonthDayPicker.d.ts +6 -0
  96. package/DatePicker/YearMonthDayPicker/YearMonthDayPicker.js +35 -0
  97. package/DatePicker/YearMonthDayPicker/index.d.ts +1 -0
  98. package/DatePicker/YearMonthDayPicker/index.js +17 -0
  99. package/DatePicker/YearPicker/YearPicker.d.ts +6 -0
  100. package/DatePicker/YearPicker/YearPicker.js +40 -0
  101. package/DatePicker/YearPicker/constants.d.ts +1 -0
  102. package/DatePicker/YearPicker/constants.js +4 -0
  103. package/DatePicker/YearPicker/hooks/useYearsGrid/index.d.ts +1 -0
  104. package/DatePicker/YearPicker/hooks/useYearsGrid/index.js +17 -0
  105. package/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.d.ts +8 -0
  106. package/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.js +44 -0
  107. package/DatePicker/YearPicker/index.d.ts +1 -0
  108. package/DatePicker/YearPicker/index.js +17 -0
  109. package/DatePicker/constants/counts.d.ts +2 -0
  110. package/DatePicker/constants/counts.js +5 -0
  111. package/DatePicker/constants/russianMap.d.ts +2 -0
  112. package/DatePicker/constants/russianMap.js +13 -0
  113. package/DatePicker/hooks/useBaseDateInRange/index.d.ts +1 -0
  114. package/DatePicker/hooks/useBaseDateInRange/index.js +17 -0
  115. package/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.d.ts +7 -0
  116. package/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.js +25 -0
  117. package/DatePicker/hooks/useCalendarNavigate/index.d.ts +1 -0
  118. package/DatePicker/hooks/useCalendarNavigate/index.js +17 -0
  119. package/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.d.ts +20 -0
  120. package/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.js +23 -0
  121. package/DatePicker/hooks/useLocaleDateTimeFormat/index.d.ts +1 -0
  122. package/DatePicker/hooks/useLocaleDateTimeFormat/index.js +17 -0
  123. package/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.d.ts +3 -0
  124. package/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.js +11 -0
  125. package/DatePicker/hooks/useSelectedBaseDate/index.d.ts +1 -0
  126. package/DatePicker/hooks/useSelectedBaseDate/index.js +17 -0
  127. package/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.d.ts +1 -0
  128. package/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.js +29 -0
  129. package/DatePicker/index.d.ts +0 -1
  130. package/DatePicker/index.js +0 -1
  131. package/DatePicker/types/configTypes.d.ts +14 -0
  132. package/{LocalizationProvider/types.js → DatePicker/types/configTypes.js} +0 -0
  133. package/DatePicker/types/gridBuilder.d.ts +44 -0
  134. package/DatePicker/types/gridBuilder.js +2 -0
  135. package/DatePicker/types/index.d.ts +4 -0
  136. package/DatePicker/types/index.js +20 -0
  137. package/DatePicker/types/minMaxDate.d.ts +4 -0
  138. package/DatePicker/types/minMaxDate.js +2 -0
  139. package/DatePicker/types/pickerProps.d.ts +11 -0
  140. package/DatePicker/types/pickerProps.js +2 -0
  141. package/DatePicker/utils/buildGridItem/buildGridResult.d.ts +22 -0
  142. package/DatePicker/utils/buildGridItem/buildGridResult.js +20 -0
  143. package/DatePicker/utils/buildGridItem/index.d.ts +1 -0
  144. package/DatePicker/utils/buildGridItem/index.js +17 -0
  145. package/DatePickerProvider/DatePickerProvider.d.ts +9 -4
  146. package/DatePickerProvider/DatePickerProvider.js +5 -11
  147. package/LocalizationProvider/LocalizationProvider.d.ts +4 -3
  148. package/LocalizationProvider/LocalizationProvider.js +1 -2
  149. package/MaskField/MaskField.d.ts +3 -3
  150. package/MaskField/MaskField.js +4 -4
  151. package/esm/ConfigProvider/ConfigProvider.d.ts +18 -2
  152. package/esm/ConfigProvider/ConfigProvider.js +6 -4
  153. package/esm/DatePicker/DateCalendar/DateCalendarBody/index.d.ts +1 -0
  154. package/esm/DatePicker/DateCalendar/DateCalendarBody/index.js +1 -0
  155. package/esm/DatePicker/DateCalendar/DateCalendarBody/styles.d.ts +11 -0
  156. package/esm/DatePicker/DateCalendar/DateCalendarBody/styles.js +9 -0
  157. package/esm/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.d.ts +7 -0
  158. package/esm/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.js +19 -0
  159. package/esm/DatePicker/DateCalendar/DateCalendarBtn/index.d.ts +1 -0
  160. package/esm/DatePicker/DateCalendar/DateCalendarBtn/index.js +1 -0
  161. package/esm/DatePicker/DateCalendar/DateCalendarBtn/styles.d.ts +4 -0
  162. package/esm/DatePicker/DateCalendar/DateCalendarBtn/styles.js +5 -0
  163. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.d.ts +3 -0
  164. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.js +21 -0
  165. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.d.ts +1 -0
  166. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.js +1 -0
  167. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.d.ts +4 -0
  168. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.js +6 -0
  169. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.d.ts +3 -0
  170. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.js +21 -0
  171. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.d.ts +1 -0
  172. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.js +1 -0
  173. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.d.ts +4 -0
  174. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.js +6 -0
  175. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/index.d.ts +2 -0
  176. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/index.js +2 -0
  177. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.d.ts +4 -0
  178. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.js +7 -0
  179. package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/types.d.ts +12 -0
  180. package/esm/DatePicker/{types.js → DateCalendar/DateCalendarChevronBtn/types.js} +0 -0
  181. package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/index.d.ts +1 -0
  182. package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/index.js +1 -0
  183. package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/styles.d.ts +22 -0
  184. package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/styles.js +69 -0
  185. package/esm/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.d.ts +38 -0
  186. package/esm/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.js +4 -0
  187. package/esm/DatePicker/DateCalendar/DateCalendarHead/index.d.ts +1 -0
  188. package/esm/DatePicker/DateCalendar/DateCalendarHead/index.js +1 -0
  189. package/esm/DatePicker/DateCalendar/DateCalendarHead/styles.d.ts +11 -0
  190. package/esm/DatePicker/DateCalendar/DateCalendarHead/styles.js +23 -0
  191. package/esm/DatePicker/DateCalendar/enums/calendarGridPositions.d.ts +6 -0
  192. package/esm/DatePicker/DateCalendar/enums/calendarGridPositions.js +7 -0
  193. package/esm/DatePicker/DateCalendar/index.d.ts +4 -0
  194. package/esm/DatePicker/DateCalendar/index.js +4 -0
  195. package/{DatePicker/styled.d.ts → esm/DatePicker/DateCalendar/styles.d.ts} +1 -1
  196. package/esm/DatePicker/DateCalendar/styles.js +12 -0
  197. package/esm/DatePicker/DatePicker.d.ts +20 -9
  198. package/esm/DatePicker/DatePicker.js +46 -41
  199. package/esm/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.d.ts +6 -0
  200. package/esm/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.js +3 -0
  201. package/esm/DatePicker/DatePickerClickAwayListener/index.d.ts +1 -0
  202. package/esm/DatePicker/DatePickerClickAwayListener/index.js +1 -0
  203. package/esm/DatePicker/DatePickerInput/DatePickerInput.d.ts +8 -0
  204. package/esm/DatePicker/DatePickerInput/DatePickerInput.js +28 -0
  205. package/esm/DatePicker/DatePickerInput/index.d.ts +1 -0
  206. package/esm/DatePicker/DatePickerInput/index.js +1 -0
  207. package/esm/DatePicker/DatePickerInput/styles.d.ts +4 -0
  208. package/esm/DatePicker/DatePickerInput/styles.js +7 -0
  209. package/esm/DatePicker/DatePickerPopper/DatePickerPopper.d.ts +6 -0
  210. package/esm/DatePicker/DatePickerPopper/DatePickerPopper.js +27 -0
  211. package/esm/DatePicker/DatePickerPopper/index.d.ts +1 -0
  212. package/esm/DatePicker/DatePickerPopper/index.js +1 -0
  213. package/esm/DatePicker/DatePickerPopper/styles.d.ts +8 -0
  214. package/esm/DatePicker/DatePickerPopper/styles.js +12 -0
  215. package/esm/DatePicker/DayPicker/DateDayPickerGrid/index.d.ts +1 -0
  216. package/esm/DatePicker/DayPicker/DateDayPickerGrid/index.js +1 -0
  217. package/esm/DatePicker/DayPicker/DateDayPickerGrid/styles.d.ts +5 -0
  218. package/esm/DatePicker/DayPicker/DateDayPickerGrid/styles.js +8 -0
  219. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.d.ts +6 -0
  220. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.js +8 -0
  221. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/index.d.ts +1 -0
  222. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/index.js +1 -0
  223. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/styles.d.ts +5 -0
  224. package/esm/DatePicker/DayPicker/DateDayPickerGridHead/styles.js +11 -0
  225. package/esm/DatePicker/DayPicker/DayPicker.d.ts +13 -0
  226. package/esm/DatePicker/DayPicker/DayPicker.js +50 -0
  227. package/esm/DatePicker/DayPicker/hooks/useDaysGrid/index.d.ts +1 -0
  228. package/esm/DatePicker/DayPicker/hooks/useDaysGrid/index.js +1 -0
  229. package/esm/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.d.ts +25 -0
  230. package/esm/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.js +106 -0
  231. package/esm/DatePicker/DayPicker/index.d.ts +1 -0
  232. package/esm/DatePicker/DayPicker/index.js +1 -0
  233. package/esm/DatePicker/MinMaxDateContext/MinMaxDateContext.d.ts +7 -0
  234. package/esm/DatePicker/MinMaxDateContext/MinMaxDateContext.js +19 -0
  235. package/esm/DatePicker/MinMaxDateContext/index.d.ts +1 -0
  236. package/esm/DatePicker/MinMaxDateContext/index.js +1 -0
  237. package/esm/DatePicker/MonthPicker/MonthPicker.d.ts +6 -0
  238. package/esm/DatePicker/MonthPicker/MonthPicker.js +42 -0
  239. package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/index.d.ts +1 -0
  240. package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/index.js +1 -0
  241. package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.d.ts +8 -0
  242. package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.js +41 -0
  243. package/esm/DatePicker/MonthPicker/index.d.ts +1 -0
  244. package/esm/DatePicker/MonthPicker/index.js +1 -0
  245. package/esm/DatePicker/YearMonthDayPicker/YearMonthDayPicker.d.ts +6 -0
  246. package/esm/DatePicker/YearMonthDayPicker/YearMonthDayPicker.js +31 -0
  247. package/esm/DatePicker/YearMonthDayPicker/index.d.ts +1 -0
  248. package/esm/DatePicker/YearMonthDayPicker/index.js +1 -0
  249. package/esm/DatePicker/YearPicker/YearPicker.d.ts +6 -0
  250. package/esm/DatePicker/YearPicker/YearPicker.js +36 -0
  251. package/esm/DatePicker/YearPicker/constants.d.ts +1 -0
  252. package/esm/DatePicker/YearPicker/constants.js +1 -0
  253. package/esm/DatePicker/YearPicker/hooks/useYearsGrid/index.d.ts +1 -0
  254. package/esm/DatePicker/YearPicker/hooks/useYearsGrid/index.js +1 -0
  255. package/esm/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.d.ts +8 -0
  256. package/esm/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.js +40 -0
  257. package/esm/DatePicker/YearPicker/index.d.ts +1 -0
  258. package/esm/DatePicker/YearPicker/index.js +1 -0
  259. package/esm/DatePicker/constants/counts.d.ts +2 -0
  260. package/esm/DatePicker/constants/counts.js +2 -0
  261. package/esm/DatePicker/constants/russianMap.d.ts +2 -0
  262. package/esm/DatePicker/constants/russianMap.js +10 -0
  263. package/esm/DatePicker/hooks/useBaseDateInRange/index.d.ts +1 -0
  264. package/esm/DatePicker/hooks/useBaseDateInRange/index.js +1 -0
  265. package/esm/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.d.ts +7 -0
  266. package/esm/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.js +21 -0
  267. package/esm/DatePicker/hooks/useCalendarNavigate/index.d.ts +1 -0
  268. package/esm/DatePicker/hooks/useCalendarNavigate/index.js +1 -0
  269. package/esm/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.d.ts +20 -0
  270. package/esm/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.js +19 -0
  271. package/esm/DatePicker/hooks/useLocaleDateTimeFormat/index.d.ts +1 -0
  272. package/esm/DatePicker/hooks/useLocaleDateTimeFormat/index.js +1 -0
  273. package/esm/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.d.ts +3 -0
  274. package/esm/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.js +7 -0
  275. package/esm/DatePicker/hooks/useSelectedBaseDate/index.d.ts +1 -0
  276. package/esm/DatePicker/hooks/useSelectedBaseDate/index.js +1 -0
  277. package/esm/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.d.ts +1 -0
  278. package/esm/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.js +25 -0
  279. package/esm/DatePicker/index.d.ts +0 -1
  280. package/esm/DatePicker/index.js +0 -1
  281. package/esm/DatePicker/types/configTypes.d.ts +14 -0
  282. package/esm/{LocalizationProvider/types.js → DatePicker/types/configTypes.js} +0 -0
  283. package/esm/DatePicker/types/gridBuilder.d.ts +44 -0
  284. package/esm/DatePicker/types/gridBuilder.js +1 -0
  285. package/esm/DatePicker/types/index.d.ts +4 -0
  286. package/esm/DatePicker/types/index.js +4 -0
  287. package/esm/DatePicker/types/minMaxDate.d.ts +4 -0
  288. package/esm/DatePicker/types/minMaxDate.js +1 -0
  289. package/esm/DatePicker/types/pickerProps.d.ts +11 -0
  290. package/esm/DatePicker/types/pickerProps.js +1 -0
  291. package/esm/DatePicker/utils/buildGridItem/buildGridResult.d.ts +22 -0
  292. package/esm/DatePicker/utils/buildGridItem/buildGridResult.js +16 -0
  293. package/esm/DatePicker/utils/buildGridItem/index.d.ts +1 -0
  294. package/esm/DatePicker/utils/buildGridItem/index.js +1 -0
  295. package/esm/DatePickerProvider/DatePickerProvider.d.ts +9 -4
  296. package/esm/DatePickerProvider/DatePickerProvider.js +4 -10
  297. package/esm/LocalizationProvider/LocalizationProvider.d.ts +4 -3
  298. package/esm/LocalizationProvider/LocalizationProvider.js +1 -2
  299. package/esm/MaskField/MaskField.d.ts +3 -3
  300. package/esm/MaskField/MaskField.js +4 -3
  301. package/esm/hooks/index.d.ts +1 -0
  302. package/esm/hooks/index.js +1 -0
  303. package/esm/hooks/useEscapeClickEffect/index.d.ts +1 -0
  304. package/esm/hooks/useEscapeClickEffect/index.js +1 -0
  305. package/esm/hooks/useEscapeClickEffect/useEscapeClickEffect.d.ts +19 -0
  306. package/esm/hooks/useEscapeClickEffect/useEscapeClickEffect.js +24 -0
  307. package/esm/hooks/useForwardedRef/index.d.ts +1 -0
  308. package/esm/hooks/useForwardedRef/index.js +1 -0
  309. package/esm/hooks/useForwardedRef/useForwardedRef.d.ts +5 -0
  310. package/esm/hooks/useForwardedRef/useForwardedRef.js +9 -0
  311. package/esm/hooks/useToggle/index.d.ts +1 -0
  312. package/esm/hooks/useToggle/index.js +1 -0
  313. package/esm/hooks/useToggle/useToggle.d.ts +13 -0
  314. package/esm/hooks/useToggle/useToggle.js +17 -0
  315. package/esm/utils/date/addDays/addDays.d.ts +7 -0
  316. package/esm/utils/date/addDays/addDays.js +8 -0
  317. package/esm/utils/date/addDays/index.d.ts +1 -0
  318. package/esm/utils/date/addDays/index.js +1 -0
  319. package/esm/utils/date/addMonths/addMonths.d.ts +7 -0
  320. package/esm/utils/date/addMonths/addMonths.js +8 -0
  321. package/esm/utils/date/addMonths/index.d.ts +1 -0
  322. package/esm/utils/date/addMonths/index.js +1 -0
  323. package/esm/utils/date/addYears/addYears.d.ts +7 -0
  324. package/esm/utils/date/addYears/addYears.js +8 -0
  325. package/esm/utils/date/addYears/index.d.ts +1 -0
  326. package/esm/utils/date/addYears/index.js +1 -0
  327. package/esm/utils/date/areDatesSame/areDatesSame.d.ts +4 -0
  328. package/esm/utils/date/areDatesSame/areDatesSame.js +5 -0
  329. package/esm/utils/date/areDatesSame/index.d.ts +1 -0
  330. package/esm/utils/date/areDatesSame/index.js +1 -0
  331. package/esm/utils/date/buildIsoDate/buildIsoDate.d.ts +5 -0
  332. package/esm/utils/date/buildIsoDate/buildIsoDate.js +5 -0
  333. package/esm/utils/date/buildIsoDate/buildIsoDateString.d.ts +33 -0
  334. package/esm/utils/date/buildIsoDate/buildIsoDateString.js +13 -0
  335. package/esm/utils/date/buildIsoDate/index.d.ts +2 -0
  336. package/esm/utils/date/buildIsoDate/index.js +2 -0
  337. package/esm/utils/date/format/formatDate/formatDate.d.ts +5 -0
  338. package/esm/utils/date/format/formatDate/formatDate.js +5 -0
  339. package/esm/utils/date/format/formatDate/index.d.ts +1 -0
  340. package/esm/utils/date/format/formatDate/index.js +1 -0
  341. package/esm/utils/date/format/index.d.ts +3 -0
  342. package/esm/utils/date/format/index.js +3 -0
  343. package/esm/utils/date/format/maskDate.d.ts +5 -0
  344. package/esm/utils/date/format/maskDate.js +1 -0
  345. package/esm/utils/date/format/parseDate/index.d.ts +1 -0
  346. package/esm/utils/date/format/parseDate/index.js +1 -0
  347. package/esm/utils/date/format/parseDate/parseDate.d.ts +4 -0
  348. package/esm/utils/date/format/parseDate/parseDate.js +5 -0
  349. package/esm/utils/date/index.d.ts +8 -0
  350. package/esm/utils/date/index.js +8 -0
  351. package/esm/utils/date/isDate/index.d.ts +1 -0
  352. package/esm/utils/date/isDate/index.js +1 -0
  353. package/esm/utils/date/isDate/isDate.d.ts +6 -0
  354. package/esm/utils/date/isDate/isDate.js +5 -0
  355. package/esm/utils/date/isDateOutOfRange/index.d.ts +1 -0
  356. package/esm/utils/date/isDateOutOfRange/index.js +1 -0
  357. package/esm/utils/date/isDateOutOfRange/isDateOutOfRange.d.ts +29 -0
  358. package/esm/utils/date/isDateOutOfRange/isDateOutOfRange.js +40 -0
  359. package/esm/utils/zeroPad/index.d.ts +1 -0
  360. package/esm/utils/zeroPad/index.js +1 -0
  361. package/esm/utils/zeroPad/zeroPad.d.ts +7 -0
  362. package/esm/utils/zeroPad/zeroPad.js +7 -0
  363. package/hooks/index.d.ts +1 -0
  364. package/hooks/index.js +1 -0
  365. package/hooks/useEscapeClickEffect/index.d.ts +1 -0
  366. package/hooks/useEscapeClickEffect/index.js +17 -0
  367. package/hooks/useEscapeClickEffect/useEscapeClickEffect.d.ts +19 -0
  368. package/hooks/useEscapeClickEffect/useEscapeClickEffect.js +28 -0
  369. package/hooks/useForwardedRef/index.d.ts +1 -0
  370. package/hooks/useForwardedRef/index.js +17 -0
  371. package/hooks/useForwardedRef/useForwardedRef.d.ts +5 -0
  372. package/hooks/useForwardedRef/useForwardedRef.js +13 -0
  373. package/hooks/useToggle/index.d.ts +1 -0
  374. package/hooks/useToggle/index.js +17 -0
  375. package/hooks/useToggle/useToggle.d.ts +13 -0
  376. package/hooks/useToggle/useToggle.js +21 -0
  377. package/package.json +3 -4
  378. package/utils/date/addDays/addDays.d.ts +7 -0
  379. package/utils/date/addDays/addDays.js +15 -0
  380. package/utils/date/addDays/index.d.ts +1 -0
  381. package/utils/date/addDays/index.js +17 -0
  382. package/utils/date/addMonths/addMonths.d.ts +7 -0
  383. package/utils/date/addMonths/addMonths.js +15 -0
  384. package/utils/date/addMonths/index.d.ts +1 -0
  385. package/utils/date/addMonths/index.js +17 -0
  386. package/utils/date/addYears/addYears.d.ts +7 -0
  387. package/utils/date/addYears/addYears.js +15 -0
  388. package/utils/date/addYears/index.d.ts +1 -0
  389. package/utils/date/addYears/index.js +17 -0
  390. package/utils/date/areDatesSame/areDatesSame.d.ts +4 -0
  391. package/utils/date/areDatesSame/areDatesSame.js +9 -0
  392. package/utils/date/areDatesSame/index.d.ts +1 -0
  393. package/utils/date/areDatesSame/index.js +17 -0
  394. package/utils/date/buildIsoDate/buildIsoDate.d.ts +5 -0
  395. package/utils/date/buildIsoDate/buildIsoDate.js +9 -0
  396. package/utils/date/buildIsoDate/buildIsoDateString.d.ts +33 -0
  397. package/utils/date/buildIsoDate/buildIsoDateString.js +17 -0
  398. package/utils/date/buildIsoDate/index.d.ts +2 -0
  399. package/utils/date/buildIsoDate/index.js +18 -0
  400. package/utils/date/format/formatDate/formatDate.d.ts +5 -0
  401. package/utils/date/format/formatDate/formatDate.js +12 -0
  402. package/utils/date/format/formatDate/index.d.ts +1 -0
  403. package/utils/date/format/formatDate/index.js +17 -0
  404. package/utils/date/format/index.d.ts +3 -0
  405. package/utils/date/format/index.js +19 -0
  406. package/utils/date/format/maskDate.d.ts +5 -0
  407. package/utils/date/format/maskDate.js +2 -0
  408. package/utils/date/format/parseDate/index.d.ts +1 -0
  409. package/utils/date/format/parseDate/index.js +17 -0
  410. package/utils/date/format/parseDate/parseDate.d.ts +4 -0
  411. package/utils/date/format/parseDate/parseDate.js +12 -0
  412. package/utils/date/index.d.ts +8 -0
  413. package/utils/date/index.js +24 -0
  414. package/utils/date/isDate/index.d.ts +1 -0
  415. package/utils/date/isDate/index.js +17 -0
  416. package/utils/date/isDate/isDate.d.ts +6 -0
  417. package/utils/date/isDate/isDate.js +12 -0
  418. package/utils/date/isDateOutOfRange/index.d.ts +1 -0
  419. package/utils/date/isDateOutOfRange/index.js +17 -0
  420. package/utils/date/isDateOutOfRange/isDateOutOfRange.d.ts +29 -0
  421. package/utils/date/isDateOutOfRange/isDateOutOfRange.js +45 -0
  422. package/utils/zeroPad/index.d.ts +1 -0
  423. package/utils/zeroPad/index.js +17 -0
  424. package/utils/zeroPad/zeroPad.d.ts +7 -0
  425. package/utils/zeroPad/zeroPad.js +11 -0
  426. package/DatePicker/DatePickerDay/DatePickerDay.d.ts +0 -7
  427. package/DatePicker/DatePickerDay/DatePickerDay.js +0 -9
  428. package/DatePicker/DatePickerDay/index.d.ts +0 -1
  429. package/DatePicker/DatePickerDay/index.js +0 -5
  430. package/DatePicker/DatePickerDay/styled.d.ts +0 -4
  431. package/DatePicker/DatePickerDay/styled.js +0 -9
  432. package/DatePicker/DatePickerHeader/DatePickerHeader.d.ts +0 -3
  433. package/DatePicker/DatePickerHeader/DatePickerHeader.js +0 -20
  434. package/DatePicker/DatePickerHeader/index.d.ts +0 -1
  435. package/DatePicker/DatePickerHeader/index.js +0 -5
  436. package/DatePicker/DatePickerHeader/styled.d.ts +0 -12
  437. package/DatePicker/DatePickerHeader/styled.js +0 -13
  438. package/DatePicker/styled.js +0 -97
  439. package/DatePicker/types.d.ts +0 -1
  440. package/LocalizationProvider/types.d.ts +0 -2
  441. package/esm/DatePicker/DatePickerDay/DatePickerDay.d.ts +0 -7
  442. package/esm/DatePicker/DatePickerDay/DatePickerDay.js +0 -5
  443. package/esm/DatePicker/DatePickerDay/index.d.ts +0 -1
  444. package/esm/DatePicker/DatePickerDay/index.js +0 -1
  445. package/esm/DatePicker/DatePickerDay/styled.d.ts +0 -4
  446. package/esm/DatePicker/DatePickerDay/styled.js +0 -6
  447. package/esm/DatePicker/DatePickerHeader/DatePickerHeader.d.ts +0 -3
  448. package/esm/DatePicker/DatePickerHeader/DatePickerHeader.js +0 -13
  449. package/esm/DatePicker/DatePickerHeader/index.d.ts +0 -1
  450. package/esm/DatePicker/DatePickerHeader/index.js +0 -1
  451. package/esm/DatePicker/DatePickerHeader/styled.d.ts +0 -12
  452. package/esm/DatePicker/DatePickerHeader/styled.js +0 -10
  453. package/esm/DatePicker/styled.js +0 -94
  454. package/esm/DatePicker/types.d.ts +0 -1
  455. package/esm/LocalizationProvider/types.d.ts +0 -2
@@ -0,0 +1,40 @@
1
+ import { useContext, useMemo } from 'react';
2
+ import { YEARS_IN_GRID } from '../../constants';
3
+ import { DateCompareDeep, addYears, buildIsoDate, isDateOutOfRange, } from '../../../../utils/date';
4
+ import { buildGridResult } from '../../../utils/buildGridItem';
5
+ import { MinMaxDateContext } from '../../../MinMaxDateContext';
6
+ // отступ означающий на сколько нужно сделать отступ в годовом календаре, чтобы опорный год отрендерился в указанном месте
7
+ // если делать без него, то опорный год будет отрендерен в самом начале списка
8
+ const YEAR_OFFSET = 4;
9
+ export const useYearsGrid = ({ baseDate, selectedDate, }) => {
10
+ const { maxDate, minDate } = useContext(MinMaxDateContext);
11
+ return useMemo(() => {
12
+ const grid = [];
13
+ const baseYear = baseDate.getUTCFullYear();
14
+ const currentYear = new Date().getFullYear();
15
+ const selectedYear = selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.getUTCFullYear();
16
+ for (let i = 0 - YEAR_OFFSET; i < YEARS_IN_GRID - YEAR_OFFSET; i++) {
17
+ const date = buildIsoDate({ year: baseYear + i });
18
+ const year = date.getUTCFullYear();
19
+ grid.push({
20
+ date,
21
+ year,
22
+ selected: selectedYear === year,
23
+ isCurrent: year === currentYear,
24
+ disabled: isDateOutOfRange({
25
+ date,
26
+ minDate,
27
+ maxDate,
28
+ deep: DateCompareDeep.year,
29
+ }),
30
+ });
31
+ }
32
+ return buildGridResult({
33
+ grid,
34
+ minDate,
35
+ maxDate,
36
+ addCb: addYears,
37
+ deep: DateCompareDeep.year,
38
+ });
39
+ }, [baseDate, selectedDate]);
40
+ };
@@ -0,0 +1 @@
1
+ export * from './YearPicker';
@@ -0,0 +1 @@
1
+ export * from './YearPicker';
@@ -0,0 +1,2 @@
1
+ export declare const DAYS_IN_WEEK = 7;
2
+ export declare const MONTHS_IN_YEAR = 12;
@@ -0,0 +1,2 @@
1
+ export const DAYS_IN_WEEK = 7;
2
+ export const MONTHS_IN_YEAR = 12;
@@ -0,0 +1,2 @@
1
+ import { LanguageMap } from '../types';
2
+ export declare const russianMap: LanguageMap;
@@ -0,0 +1,10 @@
1
+ export const russianMap = {
2
+ toYearPick: { single: 'К выбору года' },
3
+ toMonthPick: { single: 'К выбору месяца' },
4
+ toDayPick: { single: 'К выбору дня' },
5
+ previous: { single: 'Предыдущий', plural: 'Предыдущиe' },
6
+ next: { single: 'Следующий', plural: 'Следующие' },
7
+ year: { single: 'год', plural: 'года' },
8
+ month: { single: 'месяц', plural: 'месяца' },
9
+ day: { single: 'день', plural: 'дни' },
10
+ };
@@ -0,0 +1 @@
1
+ export * from './useBaseDateInRange';
@@ -0,0 +1 @@
1
+ export * from './useBaseDateInRange';
@@ -0,0 +1,7 @@
1
+ import { MinMaxDate } from '../../types';
2
+ declare type UseBaseDateInRangeOptions = MinMaxDate;
3
+ /**
4
+ * @description хук который выдаст нам опорную дату, которая будет в пределах от минимальной, до максимальной, пригодится, когда текущая дата меньше минимальной, или больше миаксимальной.
5
+ */
6
+ export declare const useBaseDateInRange: ({ minDate, maxDate, }: UseBaseDateInRangeOptions) => Date;
7
+ export {};
@@ -0,0 +1,21 @@
1
+ import { useMemo } from 'react';
2
+ import { buildIsoDate } from '../../../utils/date';
3
+ /**
4
+ * @description хук который выдаст нам опорную дату, которая будет в пределах от минимальной, до максимальной, пригодится, когда текущая дата меньше минимальной, или больше миаксимальной.
5
+ */
6
+ export const useBaseDateInRange = ({ minDate, maxDate, }) => useMemo(() => {
7
+ const currentDate = new Date();
8
+ const baseDate = buildIsoDate({
9
+ year: currentDate.getUTCFullYear(),
10
+ month: currentDate.getUTCMonth() + 1,
11
+ day: currentDate.getUTCDate(),
12
+ hour: currentDate.getUTCHours(),
13
+ });
14
+ if (Number(baseDate) < Number(minDate)) {
15
+ return minDate;
16
+ }
17
+ if (Number(baseDate) > Number(maxDate)) {
18
+ return maxDate;
19
+ }
20
+ return baseDate;
21
+ }, [minDate, maxDate]);
@@ -0,0 +1 @@
1
+ export * from './useCalendarNavigate';
@@ -0,0 +1 @@
1
+ export * from './useCalendarNavigate';
@@ -0,0 +1,20 @@
1
+ declare type UseCalendarNavigateProps = {
2
+ /**
3
+ * @description опорная дата, относительно которой будет идти переключение
4
+ */
5
+ date: Date;
6
+ /**
7
+ * @description колбэк отвечающий за переключение опорной даты
8
+ * @example addDays || addMonths || addYears
9
+ */
10
+ addCb: (date: Date, count: number) => Date;
11
+ };
12
+ /**
13
+ * @description хук для навигации в календаре по опорной дате
14
+ */
15
+ export declare const useCalendarNavigate: ({ date, addCb, }: UseCalendarNavigateProps) => {
16
+ baseDate: Date;
17
+ handlePrevClick: () => void;
18
+ handleNextClick: () => void;
19
+ };
20
+ export {};
@@ -0,0 +1,19 @@
1
+ import { useEffect, useState } from 'react';
2
+ /**
3
+ * @description хук для навигации в календаре по опорной дате
4
+ */
5
+ export const useCalendarNavigate = ({ date, addCb, }) => {
6
+ const [baseDate, setBaseDate] = useState(date);
7
+ const handleNextClick = () => {
8
+ setBaseDate(addCb(baseDate, 1));
9
+ };
10
+ const handlePrevClick = () => {
11
+ setBaseDate(addCb(baseDate, -1));
12
+ };
13
+ useEffect(() => setBaseDate(date), [date]);
14
+ return {
15
+ baseDate,
16
+ handlePrevClick,
17
+ handleNextClick,
18
+ };
19
+ };
@@ -0,0 +1 @@
1
+ export * from './useLocaleDateTimeFormat';
@@ -0,0 +1 @@
1
+ export * from './useLocaleDateTimeFormat';
@@ -0,0 +1,3 @@
1
+ declare type UseLocaleDateTimeFormatOptions = Intl.DateTimeFormatOptions;
2
+ export declare const useLocaleDateTimeFormat: (options: UseLocaleDateTimeFormatOptions) => (date?: number | Date | undefined) => string;
3
+ export {};
@@ -0,0 +1,7 @@
1
+ import { useContext, useRef } from 'react';
2
+ import { ConfigContext } from '../../../ConfigProvider';
3
+ export const useLocaleDateTimeFormat = (options) => {
4
+ const { language } = useContext(ConfigContext);
5
+ const { current } = useRef(Intl.DateTimeFormat(language, options).format);
6
+ return current;
7
+ };
@@ -0,0 +1 @@
1
+ export * from './useSelectedBaseDate';
@@ -0,0 +1 @@
1
+ export * from './useSelectedBaseDate';
@@ -0,0 +1 @@
1
+ export declare const useSelectedBaseDate: (selectedDate?: Date | null) => Date | null | undefined;
@@ -0,0 +1,25 @@
1
+ import { useContext, useEffect, useState } from 'react';
2
+ import { MinMaxDateContext } from '../../MinMaxDateContext';
3
+ import { DateCompareDeep, areDatesSame, isDateOutOfRange, } from '../../../utils/date';
4
+ export const useSelectedBaseDate = (selectedDate) => {
5
+ const { minDate, maxDate } = useContext(MinMaxDateContext);
6
+ const [baseDate, setBaseDate] = useState(selectedDate);
7
+ useEffect(() => {
8
+ if (areDatesSame(baseDate, selectedDate)) {
9
+ return;
10
+ }
11
+ if (!selectedDate ||
12
+ isDateOutOfRange({
13
+ date: selectedDate,
14
+ minDate,
15
+ maxDate,
16
+ deep: DateCompareDeep.day,
17
+ })) {
18
+ setBaseDate(null);
19
+ }
20
+ else {
21
+ setBaseDate(selectedDate);
22
+ }
23
+ }, [selectedDate]);
24
+ return baseDate;
25
+ };
@@ -1,2 +1 @@
1
1
  export * from './DatePicker';
2
- export * from './types';
@@ -1,2 +1 @@
1
1
  export * from './DatePicker';
2
- export * from './types';
@@ -0,0 +1,14 @@
1
+ export declare type LangItemValues = {
2
+ /**
3
+ * @description перевод в единственном числе, обязательный
4
+ * @example 'день'
5
+ */
6
+ single: string;
7
+ /**
8
+ * @description перевод в множественном числе, опциональный
9
+ * @example 'дни'
10
+ */
11
+ plural?: string;
12
+ };
13
+ export declare type LangItemNames = 'toYearPick' | 'toMonthPick' | 'toDayPick' | 'previous' | 'next' | 'year' | 'month' | 'day';
14
+ export declare type LanguageMap = Record<LangItemNames, LangItemValues>;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @description элемент для рендера в календаре
3
+ */
4
+ export declare type GridItem<T> = {
5
+ /**
6
+ * @description дата календаря, будет использована в качестве опорной при выборе в календаре
7
+ */
8
+ date: Date;
9
+ /**
10
+ * @description флаг, обозначающий, что дата совпадает с выбранным
11
+ */
12
+ selected: boolean;
13
+ /**
14
+ * @description флаг, обозначающий, что дата совпадает с текущей датой пользователя
15
+ */
16
+ isCurrent: boolean;
17
+ disabled: boolean;
18
+ } & T;
19
+ export declare type GridBuilderResult<T> = {
20
+ /**
21
+ * @description флаг обозначающий, что дата идущая ДО календаря задизейблена, и можно выключить стрелку "назад"
22
+ */
23
+ isPrevDisabled: boolean;
24
+ /**
25
+ * @description флаг обозначающий, что дата идущая ПОСЛЕ календаря задизейблена, и можно выключить стрелку "вперед"
26
+ */
27
+ isNextDisabled: boolean;
28
+ /**
29
+ * @description массив элементов для рендера в календаре
30
+ */
31
+ grid: GridItem<T>[];
32
+ };
33
+ declare type GridBuilderOptions<T = {}> = {
34
+ /**
35
+ * @description опорная дата, для построения массива календаря
36
+ */
37
+ baseDate: Date;
38
+ /**
39
+ * @description выбранная дата, будет использоваться для сверки элемента массива с этой датой на предмет совпадения
40
+ */
41
+ selectedDate?: Date | null;
42
+ } & T;
43
+ export declare type GridBuilder<Item = {}, Options = {}> = (options: GridBuilderOptions<Options>) => GridBuilderResult<Item>;
44
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export * from './configTypes';
2
+ export * from './gridBuilder';
3
+ export * from './minMaxDate';
4
+ export * from './pickerProps';
@@ -0,0 +1,4 @@
1
+ export * from './configTypes';
2
+ export * from './gridBuilder';
3
+ export * from './minMaxDate';
4
+ export * from './pickerProps';
@@ -0,0 +1,4 @@
1
+ export declare type MinMaxDate = {
2
+ minDate: Date;
3
+ maxDate: Date;
4
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ export declare type PickerProps = {
2
+ /**
3
+ * @description опорная дата, относительно которой потребуется построить календарь
4
+ */
5
+ date: Date;
6
+ /**
7
+ * @description выбранная дата, будет подсвечена в календаре
8
+ */
9
+ selectedDate?: Date | null;
10
+ onChange?: (date: Date) => void;
11
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,22 @@
1
+ import { GridBuilderResult, GridItem } from '../../types';
2
+ import { IsDateOutOfRangeOptions } from '../../../utils/date';
3
+ declare type BuildGridResultOptions<T> = {
4
+ /**
5
+ * @description массив элементов для рендера в календаре
6
+ */
7
+ grid: GridItem<T>[];
8
+ /**
9
+ * @description утилита, которая будет вызываться для добавления к минимальной и максимальной дате из грида, и сравнения с minDate и maxDate, в следствии мы выясним, являются ли сосдние элементы задизейбленными
10
+ */
11
+ addCb: (date: Date, count: number) => Date;
12
+ /**
13
+ * @description индекс элемента от которого надо чекнуть предыдущий на disabled
14
+ */
15
+ indexPrevDisabledCheck?: number;
16
+ /**
17
+ * @description индекс элемента от которого надо чекнуть следующий на disabled
18
+ */
19
+ indexNextDisabledCheck?: number;
20
+ } & Omit<IsDateOutOfRangeOptions, 'date'>;
21
+ export declare const buildGridResult: <T>({ grid, addCb, maxDate, minDate, indexPrevDisabledCheck, indexNextDisabledCheck, deep, }: BuildGridResultOptions<T>) => GridBuilderResult<T>;
22
+ export {};
@@ -0,0 +1,16 @@
1
+ import { isDateOutOfRange } from '../../../utils/date';
2
+ export const buildGridResult = ({ grid, addCb, maxDate, minDate, indexPrevDisabledCheck = 0, indexNextDisabledCheck = grid.length - 1, deep, }) => ({
3
+ grid,
4
+ isPrevDisabled: isDateOutOfRange({
5
+ date: addCb(grid[indexPrevDisabledCheck].date, -1),
6
+ maxDate,
7
+ minDate,
8
+ deep,
9
+ }),
10
+ isNextDisabled: isDateOutOfRange({
11
+ date: addCb(grid[indexNextDisabledCheck].date, 1),
12
+ minDate,
13
+ maxDate,
14
+ deep,
15
+ }),
16
+ });
@@ -0,0 +1 @@
1
+ export * from './buildGridResult';
@@ -0,0 +1 @@
1
+ export * from './buildGridResult';
@@ -1,4 +1,9 @@
1
- /// <reference types="react" />
2
- declare const DatePickerContext: import("react").Context<import("../ConfigProvider").ConfigContextProps>;
3
- declare const DatePickerProvider: ({ children, locale, captureException, }: import("../ConfigProvider").ConfigProviderProps) => JSX.Element;
4
- export { DatePickerContext, DatePickerProvider };
1
+ import { PropsWithChildren } from 'react';
2
+ declare type DatePickerProviderProps = {
3
+ locale?: any;
4
+ };
5
+ /**
6
+ * @deprecated отказываемся от использования в пользу ConfigProvider
7
+ */
8
+ export declare const DatePickerProvider: ({ children, }: PropsWithChildren<DatePickerProviderProps>) => JSX.Element;
9
+ export {};
@@ -1,11 +1,5 @@
1
- import { ConfigContext } from '../ConfigProvider';
2
- import { ConfigProvider } from '../ConfigProvider';
3
- /*
4
- * @deprecated Компонент будет удален с выходом версии 2.0. Используйте ConfigProvider
1
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * @deprecated отказываемся от использования в пользу ConfigProvider
5
4
  */
6
- const DatePickerContext = ConfigContext;
7
- /*
8
- * @deprecated Компонент будет удален с выходом версии 2.0. Используйте ConfigProvider
9
- */
10
- const DatePickerProvider = ConfigProvider;
11
- export { DatePickerContext, DatePickerProvider };
5
+ export const DatePickerProvider = ({ children, }) => _jsx(_Fragment, { children: children });
@@ -1,4 +1,5 @@
1
- import { FC } from 'react';
2
- import { LocalizationProviderProps } from './types';
3
- export declare const LocalizationProvider: FC<LocalizationProviderProps>;
1
+ import { PropsWithChildren } from 'react';
2
+ import { LocalizationProviderProps as MuiLocalizationProviderProps } from '@mui/lab';
3
+ export declare type LocalizationProviderProps = Omit<MuiLocalizationProviderProps, 'dateAdapter'>;
4
+ export declare const LocalizationProvider: ({ children, locale, }: PropsWithChildren<LocalizationProviderProps>) => JSX.Element;
4
5
  export default LocalizationProvider;
@@ -1,8 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import AdapterDateFns from '@mui/lab/AdapterDateFns';
3
3
  import { LocalizationProvider as MuiLocalizationProvider } from '@mui/lab';
4
- import { ru } from 'date-fns/locale';
5
- export const LocalizationProvider = ({ children, locale = ru, }) => {
4
+ export const LocalizationProvider = ({ children, locale = 'ru', }) => {
6
5
  return (_jsx(MuiLocalizationProvider, Object.assign({ dateAdapter: AdapterDateFns, locale: locale }, { children: children })));
7
6
  };
8
7
  export default LocalizationProvider;
@@ -1,9 +1,9 @@
1
- import { FC } from 'react';
1
+ /// <reference types="react" />
2
2
  import { IMask } from 'react-imask';
3
3
  import type { IMaskInputProps } from 'react-imask/dist/mixin';
4
4
  import { TextFieldProps } from '../TextField';
5
5
  declare type MaskProps = IMaskInputProps<IMask.AnyMaskedOptions, boolean, string, HTMLInputElement>;
6
- export declare type MaskFieldProps = Omit<MaskProps & TextFieldProps, 'onChange' | 'onAccept'> & {
6
+ export declare type MaskFieldProps = Omit<Omit<MaskProps, 'size' | 'defaultValue' | 'rows' | 'value' | 'label' | 'inputRef'> & TextFieldProps, 'onChange' | 'onAccept'> & {
7
7
  onChange?: (value: string) => void;
8
8
  onAccept?: (value: string, maskRef: IMask.InputMask<IMask.AnyMaskedOptions>, e?: InputEvent | undefined, onChange?: (value: string) => void) => void;
9
9
  /**
@@ -15,5 +15,5 @@ export declare type MaskFieldProps = Omit<MaskProps & TextFieldProps, 'onChange'
15
15
  */
16
16
  definitions?: IMask.MaskedPattern.Definitions;
17
17
  };
18
- export declare const MaskField: FC<MaskFieldProps>;
18
+ export declare const MaskField: import("react").ForwardRefExoticComponent<Pick<MaskFieldProps, "disabled" | "default" | "action" | "color" | "content" | "height" | "translate" | "width" | "margin" | "mask" | "shape" | "error" | "success" | "href" | "tabIndex" | "type" | "children" | "className" | "cite" | "data" | "form" | "label" | "slot" | "select" | "span" | "style" | "summary" | "title" | "pattern" | "key" | "css" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "value" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "variant" | "size" | "selected" | "step" | "classes" | "sx" | "fullWidth" | "focused" | "required" | "htmlFor" | "autoComplete" | "inputProps" | "inputRef" | "multiline" | "readOnly" | "rows" | "maxRows" | "minRows" | "open" | "start" | "checked" | "alt" | "sizes" | "src" | "srcSet" | "max" | "hiddenLabel" | "wrap" | "cols" | "download" | "hrefLang" | "media" | "rel" | "target" | "min" | "method" | "crossOrigin" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "SelectProps" | "useMap" | "as" | "integrity" | "coords" | "controls" | "loop" | "muted" | "preload" | "dateTime" | "acceptCharset" | "noValidate" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "async" | "defer" | "multiple" | "kind" | "playsInline" | "poster" | "classID" | "wmode" | "charSet" | "autoPlay" | "mediaGroup" | "encType" | "manifest" | "allowFullScreen" | "allowTransparency" | "seamless" | "srcDoc" | "eager" | "accept" | "capture" | "maxLength" | "minLength" | "challenge" | "keyType" | "keyParams" | "nonce" | "scoped" | "srcLang" | "InputProps" | "FormHelperTextProps" | "helperText" | "InputLabelProps" | "parent" | "prepare" | "validate" | "commit" | "overwrite" | "definitions" | "autofix" | "onAccept" | "onComplete" | "unmask"> & import("react").RefAttributes<HTMLInputElement>>;
19
19
  export {};
@@ -10,6 +10,7 @@ var __rest = (this && this.__rest) || function (s, e) {
10
10
  return t;
11
11
  };
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { forwardRef } from 'react';
13
14
  import { IMaskMixin } from 'react-imask';
14
15
  import { TextField } from '../TextField';
15
16
  const MaskedTextField = IMaskMixin((_a) => {
@@ -17,7 +18,7 @@ const MaskedTextField = IMaskMixin((_a) => {
17
18
  const textFieldProps = props;
18
19
  return _jsx(TextField, Object.assign({ inputRef: inputRef }, textFieldProps));
19
20
  });
20
- export const MaskField = (_a) => {
21
+ export const MaskField = forwardRef((_a, ref) => {
21
22
  var { onChange, onAccept } = _a, props = __rest(_a, ["onChange", "onAccept"]);
22
23
  const maskFieldProps = Object.assign({ unmask: true }, props);
23
24
  const handleMaskFieldAccept = (value, maskRef, e) => {
@@ -26,5 +27,5 @@ export const MaskField = (_a) => {
26
27
  }
27
28
  onChange === null || onChange === void 0 ? void 0 : onChange(value);
28
29
  };
29
- return (_jsx(MaskedTextField, Object.assign({}, maskFieldProps, { onAccept: handleMaskFieldAccept })));
30
- };
30
+ return (_jsx(MaskedTextField, Object.assign({}, maskFieldProps, { inputRef: () => ref, onAccept: handleMaskFieldAccept })));
31
+ });
@@ -1,2 +1,3 @@
1
1
  export * from './useLocalStorage';
2
2
  export * from './useMenu';
3
+ export * from './useForwardedRef';
@@ -1,2 +1,3 @@
1
1
  export * from './useLocalStorage';
2
2
  export * from './useMenu';
3
+ export * from './useForwardedRef';
@@ -0,0 +1 @@
1
+ export * from './useEscapeClickEffect';
@@ -0,0 +1 @@
1
+ export * from './useEscapeClickEffect';
@@ -0,0 +1,19 @@
1
+ declare type UseEscapeClickEffectProps = {
2
+ /**
3
+ * @description колбэк который будет вызываться при нажатии на кнопку `esc`
4
+ */
5
+ onEscape?: () => void;
6
+ /**
7
+ * @description флаг активности
8
+ */
9
+ isActive: boolean;
10
+ /**
11
+ * @description флаг необходимости предотвращать всплытие, подойдет когда используется внутри модалки
12
+ */
13
+ preventBubbling?: boolean;
14
+ };
15
+ /**
16
+ * @description хук клика по кнопке клавиатуры `esc`
17
+ */
18
+ export declare const useEscapeClickEffect: ({ onEscape, isActive, preventBubbling, }: UseEscapeClickEffectProps) => void;
19
+ export {};
@@ -0,0 +1,24 @@
1
+ import { useEffect } from 'react';
2
+ /**
3
+ * @description хук клика по кнопке клавиатуры `esc`
4
+ */
5
+ export const useEscapeClickEffect = ({ onEscape, isActive, preventBubbling, }) => {
6
+ useEffect(() => {
7
+ if (!isActive) {
8
+ return;
9
+ }
10
+ const onKeydown = (e) => {
11
+ if (e.code === 'Escape') {
12
+ if (preventBubbling) {
13
+ e.stopPropagation();
14
+ e.stopImmediatePropagation();
15
+ }
16
+ onEscape === null || onEscape === void 0 ? void 0 : onEscape();
17
+ }
18
+ };
19
+ window.addEventListener('keydown', onKeydown);
20
+ return () => {
21
+ window.removeEventListener('keydown', onKeydown);
22
+ };
23
+ }, [isActive]);
24
+ };
@@ -0,0 +1 @@
1
+ export * from './useForwardedRef';
@@ -0,0 +1 @@
1
+ export * from './useForwardedRef';
@@ -0,0 +1,5 @@
1
+ import { ForwardedRef } from 'react';
2
+ /**
3
+ * @description хук позволяет использовать опциональный реф пришедший сверху, т.к. ForwardedRef может являться колбэком, это может подходить не для всех компонентов, яркий пример MaskField
4
+ */
5
+ export declare const useForwardedRef: <T>(forwardedRef: ForwardedRef<T>) => import("react").RefObject<T>;
@@ -0,0 +1,9 @@
1
+ import { useImperativeHandle, useRef } from 'react';
2
+ /**
3
+ * @description хук позволяет использовать опциональный реф пришедший сверху, т.к. ForwardedRef может являться колбэком, это может подходить не для всех компонентов, яркий пример MaskField
4
+ */
5
+ export const useForwardedRef = (forwardedRef) => {
6
+ const localRef = useRef(null);
7
+ useImperativeHandle(forwardedRef, () => localRef.current, [forwardedRef]);
8
+ return localRef;
9
+ };
@@ -0,0 +1 @@
1
+ export * from './useToggle';
@@ -0,0 +1 @@
1
+ export * from './useToggle';
@@ -0,0 +1,13 @@
1
+ declare type OpenHandler = () => void;
2
+ declare type CloseHandler = () => void;
3
+ declare type UseToggleResultTuple = [boolean, OpenHandler, CloseHandler];
4
+ declare type UseToggleOptions = {
5
+ initialState?: boolean;
6
+ onActive?: () => void;
7
+ onInactive?: () => void;
8
+ } | undefined;
9
+ /**
10
+ * @description хук хранящий стейт активности, и предоставляющий методы переключения, позволяет уменьшить бойлерплейт код
11
+ */
12
+ export declare const useToggle: (params: UseToggleOptions) => UseToggleResultTuple;
13
+ export {};