@salutejs/plasma-new-hope 0.109.0-canary.1310.10007111729.0 → 0.109.1-canary.1301.10056166255.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (624) hide show
  1. package/cjs/components/Accordion/Accordion.js +1 -1
  2. package/cjs/components/Accordion/Accordion.js.map +1 -1
  3. package/cjs/components/Accordion/Accordion.tokens.js +4 -1
  4. package/cjs/components/Accordion/Accordion.tokens.js.map +1 -1
  5. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.js +16 -9
  6. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.js.map +1 -1
  7. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  8. package/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  9. package/cjs/components/Accordion/utils/index.js +4 -3
  10. package/cjs/components/Accordion/utils/index.js.map +1 -1
  11. package/cjs/components/Calendar/Calendar.tokens.js +32 -6
  12. package/cjs/components/Calendar/Calendar.tokens.js.map +1 -1
  13. package/cjs/components/Calendar/Calendar.types.js.map +1 -1
  14. package/cjs/components/Calendar/CalendarBase/CalendarBase.css +20 -21
  15. package/cjs/components/Calendar/CalendarBase/CalendarBase.js +88 -140
  16. package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  17. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.css +23 -21
  18. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +269 -104
  19. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  20. package/cjs/components/Calendar/hoc/withRange.js +17 -9
  21. package/cjs/components/Calendar/hoc/withRange.js.map +1 -1
  22. package/cjs/components/Calendar/hooks/useCalendarDateChange.js +92 -0
  23. package/cjs/components/Calendar/hooks/useCalendarDateChange.js.map +1 -0
  24. package/cjs/components/Calendar/hooks/useCalendarNavigation.js +98 -0
  25. package/cjs/components/Calendar/hooks/useCalendarNavigation.js.map +1 -0
  26. package/cjs/components/Calendar/hooks/useDays.js +34 -148
  27. package/cjs/components/Calendar/hooks/useDays.js.map +1 -1
  28. package/cjs/components/Calendar/hooks/useKeyNavigation.js +27 -16
  29. package/cjs/components/Calendar/hooks/useKeyNavigation.js.map +1 -1
  30. package/cjs/components/Calendar/hooks/useMonths.js +37 -8
  31. package/cjs/components/Calendar/hooks/useMonths.js.map +1 -1
  32. package/cjs/components/Calendar/hooks/useQuarters.js +57 -0
  33. package/cjs/components/Calendar/hooks/useQuarters.js.map +1 -0
  34. package/cjs/components/Calendar/hooks/useYears.js +39 -8
  35. package/cjs/components/Calendar/hooks/useYears.js.map +1 -1
  36. package/cjs/components/Calendar/store/reducer.js +34 -12
  37. package/cjs/components/Calendar/store/reducer.js.map +1 -1
  38. package/cjs/components/Calendar/store/types.js +1 -0
  39. package/cjs/components/Calendar/store/types.js.map +1 -1
  40. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.css +4 -4
  41. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +36 -26
  42. package/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  43. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.css +8 -8
  44. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +16 -10
  45. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  46. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +2 -2
  47. package/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  48. package/{es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles_gnorek.css → cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles_1jfelqf.css} +2 -2
  49. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.css +7 -4
  50. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +96 -27
  51. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  52. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +1 -13
  53. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js.map +1 -1
  54. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles_1v3msg.css +2 -0
  55. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.css +7 -0
  56. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +149 -0
  57. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -0
  58. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +21 -0
  59. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js.map +1 -0
  60. package/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles_14gqhct.css +2 -0
  61. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.css +7 -4
  62. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +99 -25
  63. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  64. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +1 -13
  65. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles.js.map +1 -1
  66. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles_1d4ov6t.css +2 -0
  67. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.css +4 -0
  68. package/cjs/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.js → DateStructureItem/DateStructureItem.js} +23 -21
  69. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js.map +1 -0
  70. package/cjs/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.styles.js → DateStructureItem/DateStructureItem.styles.js} +19 -27
  71. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js.map +1 -0
  72. package/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles_1nxxafr.css +4 -0
  73. package/cjs/components/Calendar/utils/calendarGridHelper.js +173 -0
  74. package/cjs/components/Calendar/utils/calendarGridHelper.js.map +1 -0
  75. package/cjs/components/Calendar/utils/calendarRangeHelper.js +122 -0
  76. package/cjs/components/Calendar/utils/calendarRangeHelper.js.map +1 -0
  77. package/cjs/components/Calendar/utils/constants.js +60 -0
  78. package/cjs/components/Calendar/utils/constants.js.map +1 -0
  79. package/cjs/components/Calendar/utils/getDateWithModification.js +188 -0
  80. package/cjs/components/Calendar/utils/getDateWithModification.js.map +1 -0
  81. package/cjs/components/DatePicker/DatePicker.tokens.js +11 -0
  82. package/cjs/components/DatePicker/DatePicker.tokens.js.map +1 -1
  83. package/cjs/components/DatePicker/DatePickerBase.styles.js +1 -1
  84. package/cjs/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  85. package/cjs/components/DatePicker/{DatePickerBase.styles_1thp2xv.css → DatePickerBase.styles_192va2p.css} +1 -1
  86. package/cjs/components/DatePicker/RangeDate/RangeDate.css +22 -23
  87. package/cjs/components/DatePicker/RangeDate/RangeDate.js +18 -6
  88. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  89. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +22 -23
  90. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  91. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  92. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
  93. package/{es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_wp3vfj.css → cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1gljtdv.css} +2 -2
  94. package/cjs/components/DatePicker/SingleDate/SingleDate.css +21 -22
  95. package/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  96. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  97. package/cjs/components/DatePicker/hooks/useDatePicker.js +7 -3
  98. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  99. package/cjs/components/TextArea/TextArea.js +5 -5
  100. package/cjs/components/TextArea/TextArea.js.map +1 -1
  101. package/cjs/index.css +23 -24
  102. package/cjs/utils/datejs.js +4 -0
  103. package/cjs/utils/datejs.js.map +1 -1
  104. package/emotion/cjs/components/Accordion/Accordion.js +1 -1
  105. package/emotion/cjs/components/Accordion/Accordion.tokens.js +4 -1
  106. package/emotion/cjs/components/Accordion/ui/AccordionItem/AccordionItem.js +19 -7
  107. package/emotion/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  108. package/emotion/cjs/components/Accordion/utils/index.js +4 -3
  109. package/emotion/cjs/components/Calendar/Calendar.template-doc.mdx +236 -150
  110. package/emotion/cjs/components/Calendar/Calendar.tokens.js +32 -7
  111. package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +84 -139
  112. package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +261 -101
  113. package/emotion/cjs/components/Calendar/hoc/withRange.js +14 -6
  114. package/emotion/cjs/components/Calendar/hooks/index.js +22 -1
  115. package/emotion/cjs/components/Calendar/hooks/useCalendarDateChange.js +90 -0
  116. package/emotion/cjs/components/Calendar/hooks/useCalendarNavigation.js +96 -0
  117. package/emotion/cjs/components/Calendar/hooks/useDays.js +21 -137
  118. package/emotion/cjs/components/Calendar/hooks/useKeyNavigation.js +26 -15
  119. package/emotion/cjs/components/Calendar/hooks/useMonths.js +32 -6
  120. package/emotion/cjs/components/Calendar/hooks/useQuarters.js +52 -0
  121. package/emotion/cjs/components/Calendar/hooks/useYears.js +34 -6
  122. package/emotion/cjs/components/Calendar/mixins/selected.js +2 -9
  123. package/emotion/cjs/components/Calendar/store/reducer.js +27 -6
  124. package/emotion/cjs/components/Calendar/store/types.js +1 -0
  125. package/emotion/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +28 -17
  126. package/emotion/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +13 -8
  127. package/emotion/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +14 -9
  128. package/emotion/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +97 -27
  129. package/emotion/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +6 -35
  130. package/emotion/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +156 -0
  131. package/emotion/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +18 -0
  132. package/emotion/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +100 -25
  133. package/emotion/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +6 -35
  134. package/{styled-components/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js → emotion/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js} +22 -20
  135. package/emotion/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +85 -0
  136. package/emotion/cjs/components/Calendar/ui/index.js +7 -0
  137. package/emotion/cjs/components/Calendar/utils/calendarGridHelper.js +164 -0
  138. package/emotion/cjs/components/Calendar/utils/calendarRangeHelper.js +117 -0
  139. package/emotion/cjs/components/Calendar/utils/constants.js +48 -0
  140. package/emotion/cjs/components/Calendar/utils/getDateWithModification.js +186 -0
  141. package/emotion/cjs/components/Calendar/utils/index.js +39 -243
  142. package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +10 -1
  143. package/emotion/cjs/components/DatePicker/DatePicker.tokens.js +11 -0
  144. package/emotion/cjs/components/DatePicker/DatePickerBase.styles.js +2 -2
  145. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +18 -6
  146. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  147. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  148. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +7 -3
  149. package/emotion/cjs/components/TextArea/TextArea.js +6 -6
  150. package/emotion/cjs/examples/plasma_b2c/components/Accordion/Accordion.config.js +6 -6
  151. package/emotion/cjs/examples/plasma_b2c/components/Accordion/Accordion.stories.tsx +5 -3
  152. package/emotion/cjs/examples/plasma_b2c/components/Calendar/Calendar.stories.tsx +162 -267
  153. package/emotion/cjs/examples/plasma_b2c/components/Calendar/CalendarBase.config.js +5 -5
  154. package/emotion/cjs/examples/plasma_b2c/components/Calendar/CalendarDouble.config.js +5 -5
  155. package/emotion/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
  156. package/emotion/cjs/examples/plasma_web/components/Accordion/Accordion.config.js +8 -8
  157. package/emotion/cjs/examples/plasma_web/components/Accordion/Accordion.stories.tsx +6 -4
  158. package/emotion/cjs/examples/plasma_web/components/Calendar/Calendar.stories.tsx +162 -267
  159. package/emotion/cjs/examples/plasma_web/components/Calendar/CalendarBase.config.js +5 -5
  160. package/emotion/cjs/examples/plasma_web/components/Calendar/CalendarDouble.config.js +5 -5
  161. package/emotion/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
  162. package/emotion/cjs/examples/sds_engineer/components/Calendar/Calendar.stories.tsx +162 -267
  163. package/emotion/cjs/examples/sds_engineer/components/Calendar/CalendarBase.config.js +5 -5
  164. package/emotion/cjs/examples/sds_engineer/components/Calendar/CalendarDouble.config.js +5 -5
  165. package/emotion/cjs/utils/datejs.js +4 -0
  166. package/emotion/es/components/Accordion/Accordion.js +1 -1
  167. package/emotion/es/components/Accordion/Accordion.tokens.js +4 -1
  168. package/emotion/es/components/Accordion/ui/AccordionItem/AccordionItem.js +20 -7
  169. package/emotion/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  170. package/emotion/es/components/Accordion/utils/index.js +4 -3
  171. package/emotion/es/components/Calendar/Calendar.template-doc.mdx +236 -150
  172. package/emotion/es/components/Calendar/Calendar.tokens.js +31 -6
  173. package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +88 -143
  174. package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +265 -105
  175. package/emotion/es/components/Calendar/hoc/withRange.js +14 -6
  176. package/emotion/es/components/Calendar/hooks/index.js +4 -1
  177. package/emotion/es/components/Calendar/hooks/useCalendarDateChange.js +84 -0
  178. package/emotion/es/components/Calendar/hooks/useCalendarNavigation.js +90 -0
  179. package/emotion/es/components/Calendar/hooks/useDays.js +22 -138
  180. package/emotion/es/components/Calendar/hooks/useKeyNavigation.js +27 -17
  181. package/emotion/es/components/Calendar/hooks/useMonths.js +33 -8
  182. package/emotion/es/components/Calendar/hooks/useQuarters.js +46 -0
  183. package/emotion/es/components/Calendar/hooks/useYears.js +35 -7
  184. package/emotion/es/components/Calendar/mixins/selected.js +2 -9
  185. package/emotion/es/components/Calendar/store/reducer.js +26 -5
  186. package/emotion/es/components/Calendar/store/types.js +1 -0
  187. package/emotion/es/components/Calendar/ui/CalendarDays/CalendarDays.js +29 -17
  188. package/emotion/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +13 -8
  189. package/emotion/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +14 -9
  190. package/emotion/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +100 -29
  191. package/emotion/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +6 -35
  192. package/emotion/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +149 -0
  193. package/emotion/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +11 -0
  194. package/emotion/es/components/Calendar/ui/CalendarYears/CalendarYears.js +103 -27
  195. package/emotion/es/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +6 -35
  196. package/{styled-components/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js → emotion/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js} +20 -18
  197. package/emotion/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +78 -0
  198. package/emotion/es/components/Calendar/ui/index.js +1 -0
  199. package/emotion/es/components/Calendar/utils/calendarGridHelper.js +158 -0
  200. package/emotion/es/components/Calendar/utils/calendarRangeHelper.js +111 -0
  201. package/emotion/es/components/Calendar/utils/constants.js +42 -0
  202. package/emotion/es/components/Calendar/utils/getDateWithModification.js +180 -0
  203. package/emotion/es/components/Calendar/utils/index.js +4 -247
  204. package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +10 -1
  205. package/emotion/es/components/DatePicker/DatePicker.tokens.js +11 -0
  206. package/emotion/es/components/DatePicker/DatePickerBase.styles.js +2 -2
  207. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +18 -6
  208. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  209. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  210. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +7 -3
  211. package/emotion/es/components/TextArea/TextArea.js +6 -6
  212. package/emotion/es/examples/plasma_b2c/components/Accordion/Accordion.config.js +6 -6
  213. package/emotion/es/examples/plasma_b2c/components/Accordion/Accordion.stories.tsx +5 -3
  214. package/emotion/es/examples/plasma_b2c/components/Calendar/Calendar.stories.tsx +162 -267
  215. package/emotion/es/examples/plasma_b2c/components/Calendar/CalendarBase.config.js +5 -5
  216. package/emotion/es/examples/plasma_b2c/components/Calendar/CalendarDouble.config.js +5 -5
  217. package/emotion/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +7 -7
  218. package/emotion/es/examples/plasma_web/components/Accordion/Accordion.config.js +8 -8
  219. package/emotion/es/examples/plasma_web/components/Accordion/Accordion.stories.tsx +6 -4
  220. package/emotion/es/examples/plasma_web/components/Calendar/Calendar.stories.tsx +162 -267
  221. package/emotion/es/examples/plasma_web/components/Calendar/CalendarBase.config.js +5 -5
  222. package/emotion/es/examples/plasma_web/components/Calendar/CalendarDouble.config.js +5 -5
  223. package/emotion/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +7 -7
  224. package/emotion/es/examples/sds_engineer/components/Calendar/Calendar.stories.tsx +162 -267
  225. package/emotion/es/examples/sds_engineer/components/Calendar/CalendarBase.config.js +5 -5
  226. package/emotion/es/examples/sds_engineer/components/Calendar/CalendarDouble.config.js +5 -5
  227. package/emotion/es/utils/datejs.js +4 -0
  228. package/es/components/Accordion/Accordion.js +1 -1
  229. package/es/components/Accordion/Accordion.js.map +1 -1
  230. package/es/components/Accordion/Accordion.tokens.js +4 -1
  231. package/es/components/Accordion/Accordion.tokens.js.map +1 -1
  232. package/es/components/Accordion/ui/AccordionItem/AccordionItem.js +15 -8
  233. package/es/components/Accordion/ui/AccordionItem/AccordionItem.js.map +1 -1
  234. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  235. package/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js.map +1 -1
  236. package/es/components/Accordion/utils/index.js +4 -3
  237. package/es/components/Accordion/utils/index.js.map +1 -1
  238. package/es/components/Calendar/Calendar.tokens.js +32 -7
  239. package/es/components/Calendar/Calendar.tokens.js.map +1 -1
  240. package/es/components/Calendar/Calendar.types.js.map +1 -1
  241. package/es/components/Calendar/CalendarBase/CalendarBase.css +20 -21
  242. package/es/components/Calendar/CalendarBase/CalendarBase.js +90 -142
  243. package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  244. package/es/components/Calendar/CalendarDouble/CalendarDouble.css +23 -21
  245. package/es/components/Calendar/CalendarDouble/CalendarDouble.js +270 -105
  246. package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  247. package/es/components/Calendar/hoc/withRange.js +15 -7
  248. package/es/components/Calendar/hoc/withRange.js.map +1 -1
  249. package/es/components/Calendar/hooks/useCalendarDateChange.js +88 -0
  250. package/es/components/Calendar/hooks/useCalendarDateChange.js.map +1 -0
  251. package/es/components/Calendar/hooks/useCalendarNavigation.js +94 -0
  252. package/es/components/Calendar/hooks/useCalendarNavigation.js.map +1 -0
  253. package/es/components/Calendar/hooks/useDays.js +24 -138
  254. package/es/components/Calendar/hooks/useDays.js.map +1 -1
  255. package/es/components/Calendar/hooks/useKeyNavigation.js +27 -16
  256. package/es/components/Calendar/hooks/useKeyNavigation.js.map +1 -1
  257. package/es/components/Calendar/hooks/useMonths.js +36 -7
  258. package/es/components/Calendar/hooks/useMonths.js.map +1 -1
  259. package/es/components/Calendar/hooks/useQuarters.js +53 -0
  260. package/es/components/Calendar/hooks/useQuarters.js.map +1 -0
  261. package/es/components/Calendar/hooks/useYears.js +38 -7
  262. package/es/components/Calendar/hooks/useYears.js.map +1 -1
  263. package/es/components/Calendar/store/reducer.js +28 -7
  264. package/es/components/Calendar/store/reducer.js.map +1 -1
  265. package/es/components/Calendar/store/types.js +1 -0
  266. package/es/components/Calendar/store/types.js.map +1 -1
  267. package/es/components/Calendar/ui/CalendarDays/CalendarDays.css +4 -4
  268. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js +29 -19
  269. package/es/components/Calendar/ui/CalendarDays/CalendarDays.js.map +1 -1
  270. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.css +8 -8
  271. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +15 -9
  272. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js.map +1 -1
  273. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +2 -2
  274. package/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js.map +1 -1
  275. package/{cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles_gnorek.css → es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles_1jfelqf.css} +2 -2
  276. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.css +7 -4
  277. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +99 -30
  278. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js.map +1 -1
  279. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +2 -12
  280. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js.map +1 -1
  281. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles_1v3msg.css +2 -0
  282. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.css +7 -0
  283. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +145 -0
  284. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js.map +1 -0
  285. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +16 -0
  286. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js.map +1 -0
  287. package/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles_14gqhct.css +2 -0
  288. package/es/components/Calendar/ui/CalendarYears/CalendarYears.css +7 -4
  289. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js +102 -28
  290. package/es/components/Calendar/ui/CalendarYears/CalendarYears.js.map +1 -1
  291. package/es/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +2 -12
  292. package/es/components/Calendar/ui/CalendarYears/CalendarYears.styles.js.map +1 -1
  293. package/es/components/Calendar/ui/CalendarYears/CalendarYears.styles_1d4ov6t.css +2 -0
  294. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.css +4 -0
  295. package/es/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.js → DateStructureItem/DateStructureItem.js} +22 -20
  296. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js.map +1 -0
  297. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +55 -0
  298. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js.map +1 -0
  299. package/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles_1nxxafr.css +4 -0
  300. package/es/components/Calendar/utils/calendarGridHelper.js +153 -0
  301. package/es/components/Calendar/utils/calendarGridHelper.js.map +1 -0
  302. package/es/components/Calendar/utils/calendarRangeHelper.js +110 -0
  303. package/es/components/Calendar/utils/calendarRangeHelper.js.map +1 -0
  304. package/es/components/Calendar/utils/constants.js +45 -0
  305. package/es/components/Calendar/utils/constants.js.map +1 -0
  306. package/es/components/Calendar/utils/getDateWithModification.js +184 -0
  307. package/es/components/Calendar/utils/getDateWithModification.js.map +1 -0
  308. package/es/components/DatePicker/DatePicker.tokens.js +11 -0
  309. package/es/components/DatePicker/DatePicker.tokens.js.map +1 -1
  310. package/es/components/DatePicker/DatePickerBase.styles.js +1 -1
  311. package/es/components/DatePicker/DatePickerBase.styles.js.map +1 -1
  312. package/es/components/DatePicker/{DatePickerBase.styles_1thp2xv.css → DatePickerBase.styles_192va2p.css} +1 -1
  313. package/es/components/DatePicker/RangeDate/RangeDate.css +22 -23
  314. package/es/components/DatePicker/RangeDate/RangeDate.js +18 -6
  315. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  316. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +22 -23
  317. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  318. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  319. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.js +1 -1
  320. package/{cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_wp3vfj.css → es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles_1gljtdv.css} +2 -2
  321. package/es/components/DatePicker/SingleDate/SingleDate.css +21 -22
  322. package/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  323. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  324. package/es/components/DatePicker/hooks/useDatePicker.js +7 -3
  325. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  326. package/es/components/TextArea/TextArea.js +5 -5
  327. package/es/components/TextArea/TextArea.js.map +1 -1
  328. package/es/index.css +23 -24
  329. package/es/utils/datejs.js +4 -0
  330. package/es/utils/datejs.js.map +1 -1
  331. package/package.json +2 -2
  332. package/styled-components/cjs/components/Accordion/Accordion.js +1 -1
  333. package/styled-components/cjs/components/Accordion/Accordion.tokens.js +4 -1
  334. package/styled-components/cjs/components/Accordion/ui/AccordionItem/AccordionItem.js +19 -7
  335. package/styled-components/cjs/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  336. package/styled-components/cjs/components/Accordion/utils/index.js +4 -3
  337. package/styled-components/cjs/components/Calendar/Calendar.template-doc.mdx +236 -150
  338. package/styled-components/cjs/components/Calendar/Calendar.tokens.js +32 -7
  339. package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +84 -139
  340. package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +261 -101
  341. package/styled-components/cjs/components/Calendar/hoc/withRange.js +14 -6
  342. package/styled-components/cjs/components/Calendar/hooks/index.js +22 -1
  343. package/styled-components/cjs/components/Calendar/hooks/useCalendarDateChange.js +90 -0
  344. package/styled-components/cjs/components/Calendar/hooks/useCalendarNavigation.js +96 -0
  345. package/styled-components/cjs/components/Calendar/hooks/useDays.js +21 -137
  346. package/styled-components/cjs/components/Calendar/hooks/useKeyNavigation.js +26 -15
  347. package/styled-components/cjs/components/Calendar/hooks/useMonths.js +32 -6
  348. package/styled-components/cjs/components/Calendar/hooks/useQuarters.js +52 -0
  349. package/styled-components/cjs/components/Calendar/hooks/useYears.js +34 -6
  350. package/styled-components/cjs/components/Calendar/mixins/selected.js +2 -9
  351. package/styled-components/cjs/components/Calendar/store/reducer.js +27 -6
  352. package/styled-components/cjs/components/Calendar/store/types.js +1 -0
  353. package/styled-components/cjs/components/Calendar/ui/CalendarDays/CalendarDays.js +28 -17
  354. package/styled-components/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.js +13 -8
  355. package/styled-components/cjs/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +8 -3
  356. package/styled-components/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.js +97 -27
  357. package/styled-components/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +3 -30
  358. package/styled-components/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +156 -0
  359. package/styled-components/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +16 -0
  360. package/styled-components/cjs/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.js +5 -0
  361. package/styled-components/cjs/components/Calendar/ui/CalendarYears/CalendarYears.js +100 -25
  362. package/styled-components/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +3 -30
  363. package/{emotion/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js → styled-components/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.js} +22 -20
  364. package/styled-components/cjs/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.styles.js → DateStructureItem/DateStructureItem.styles.js} +26 -26
  365. package/styled-components/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.types.js +5 -0
  366. package/styled-components/cjs/components/Calendar/ui/index.js +7 -0
  367. package/styled-components/cjs/components/Calendar/utils/calendarGridHelper.js +164 -0
  368. package/styled-components/cjs/components/Calendar/utils/calendarRangeHelper.js +117 -0
  369. package/styled-components/cjs/components/Calendar/utils/constants.js +48 -0
  370. package/styled-components/cjs/components/Calendar/utils/getDateWithModification.js +186 -0
  371. package/styled-components/cjs/components/Calendar/utils/index.js +39 -243
  372. package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +10 -1
  373. package/styled-components/cjs/components/DatePicker/DatePicker.tokens.js +11 -0
  374. package/styled-components/cjs/components/DatePicker/DatePickerBase.styles.js +1 -1
  375. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +18 -6
  376. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  377. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  378. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +7 -3
  379. package/styled-components/cjs/components/TextArea/TextArea.js +5 -5
  380. package/styled-components/cjs/examples/plasma_b2c/components/Accordion/Accordion.config.js +2 -2
  381. package/styled-components/cjs/examples/plasma_b2c/components/Accordion/Accordion.stories.tsx +5 -3
  382. package/styled-components/cjs/examples/plasma_b2c/components/Calendar/Calendar.stories.tsx +162 -267
  383. package/styled-components/cjs/examples/plasma_b2c/components/Calendar/CalendarBase.config.js +4 -4
  384. package/styled-components/cjs/examples/plasma_b2c/components/Calendar/CalendarDouble.config.js +4 -4
  385. package/styled-components/cjs/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +4 -4
  386. package/styled-components/cjs/examples/plasma_web/components/Accordion/Accordion.config.js +2 -2
  387. package/styled-components/cjs/examples/plasma_web/components/Accordion/Accordion.stories.tsx +6 -4
  388. package/styled-components/cjs/examples/plasma_web/components/Calendar/Calendar.stories.tsx +162 -267
  389. package/styled-components/cjs/examples/plasma_web/components/Calendar/CalendarBase.config.js +4 -4
  390. package/styled-components/cjs/examples/plasma_web/components/Calendar/CalendarDouble.config.js +4 -4
  391. package/styled-components/cjs/examples/plasma_web/components/DatePicker/DatePicker.config.js +4 -4
  392. package/styled-components/cjs/examples/sds_engineer/components/Calendar/Calendar.stories.tsx +162 -267
  393. package/styled-components/cjs/examples/sds_engineer/components/Calendar/CalendarBase.config.js +5 -5
  394. package/styled-components/cjs/examples/sds_engineer/components/Calendar/CalendarDouble.config.js +5 -5
  395. package/styled-components/cjs/utils/datejs.js +4 -0
  396. package/styled-components/es/components/Accordion/Accordion.js +1 -1
  397. package/styled-components/es/components/Accordion/Accordion.tokens.js +4 -1
  398. package/styled-components/es/components/Accordion/ui/AccordionItem/AccordionItem.js +20 -7
  399. package/styled-components/es/components/Accordion/ui/AccordionItem/AccordionItem.styles.js +4 -4
  400. package/styled-components/es/components/Accordion/utils/index.js +4 -3
  401. package/styled-components/es/components/Calendar/Calendar.template-doc.mdx +236 -150
  402. package/styled-components/es/components/Calendar/Calendar.tokens.js +31 -6
  403. package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +88 -143
  404. package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +265 -105
  405. package/styled-components/es/components/Calendar/hoc/withRange.js +14 -6
  406. package/styled-components/es/components/Calendar/hooks/index.js +4 -1
  407. package/styled-components/es/components/Calendar/hooks/useCalendarDateChange.js +84 -0
  408. package/styled-components/es/components/Calendar/hooks/useCalendarNavigation.js +90 -0
  409. package/styled-components/es/components/Calendar/hooks/useDays.js +22 -138
  410. package/styled-components/es/components/Calendar/hooks/useKeyNavigation.js +27 -17
  411. package/styled-components/es/components/Calendar/hooks/useMonths.js +33 -8
  412. package/styled-components/es/components/Calendar/hooks/useQuarters.js +46 -0
  413. package/styled-components/es/components/Calendar/hooks/useYears.js +35 -7
  414. package/styled-components/es/components/Calendar/mixins/selected.js +2 -9
  415. package/styled-components/es/components/Calendar/store/reducer.js +26 -5
  416. package/styled-components/es/components/Calendar/store/types.js +1 -0
  417. package/styled-components/es/components/Calendar/ui/CalendarDays/CalendarDays.js +29 -17
  418. package/styled-components/es/components/Calendar/ui/CalendarHeader/CalendarHeader.js +13 -8
  419. package/styled-components/es/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.js +8 -3
  420. package/styled-components/es/components/Calendar/ui/CalendarMonths/CalendarMonths.js +100 -29
  421. package/styled-components/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.js +3 -30
  422. package/styled-components/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.js +149 -0
  423. package/styled-components/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.js +9 -0
  424. package/styled-components/es/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.js +1 -0
  425. package/styled-components/es/components/Calendar/ui/CalendarYears/CalendarYears.js +103 -27
  426. package/styled-components/es/components/Calendar/ui/CalendarYears/CalendarYears.styles.js +3 -30
  427. package/{emotion/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js → styled-components/es/components/Calendar/ui/DateStructureItem/DateStructureItem.js} +20 -18
  428. package/styled-components/es/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.js +65 -0
  429. package/styled-components/es/components/Calendar/ui/DateStructureItem/DateStructureItem.types.js +1 -0
  430. package/styled-components/es/components/Calendar/ui/index.js +1 -0
  431. package/styled-components/es/components/Calendar/utils/calendarGridHelper.js +158 -0
  432. package/styled-components/es/components/Calendar/utils/calendarRangeHelper.js +111 -0
  433. package/styled-components/es/components/Calendar/utils/constants.js +42 -0
  434. package/styled-components/es/components/Calendar/utils/getDateWithModification.js +180 -0
  435. package/styled-components/es/components/Calendar/utils/index.js +4 -247
  436. package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +10 -1
  437. package/styled-components/es/components/DatePicker/DatePicker.tokens.js +11 -0
  438. package/styled-components/es/components/DatePicker/DatePickerBase.styles.js +1 -1
  439. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +18 -6
  440. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +18 -0
  441. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  442. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +7 -3
  443. package/styled-components/es/components/TextArea/TextArea.js +5 -5
  444. package/styled-components/es/examples/plasma_b2c/components/Accordion/Accordion.config.js +2 -2
  445. package/styled-components/es/examples/plasma_b2c/components/Accordion/Accordion.stories.tsx +5 -3
  446. package/styled-components/es/examples/plasma_b2c/components/Calendar/Calendar.stories.tsx +162 -267
  447. package/styled-components/es/examples/plasma_b2c/components/Calendar/CalendarBase.config.js +4 -4
  448. package/styled-components/es/examples/plasma_b2c/components/Calendar/CalendarDouble.config.js +4 -4
  449. package/styled-components/es/examples/plasma_b2c/components/DatePicker/DatePicker.config.js +4 -4
  450. package/styled-components/es/examples/plasma_web/components/Accordion/Accordion.config.js +2 -2
  451. package/styled-components/es/examples/plasma_web/components/Accordion/Accordion.stories.tsx +6 -4
  452. package/styled-components/es/examples/plasma_web/components/Calendar/Calendar.stories.tsx +162 -267
  453. package/styled-components/es/examples/plasma_web/components/Calendar/CalendarBase.config.js +4 -4
  454. package/styled-components/es/examples/plasma_web/components/Calendar/CalendarDouble.config.js +4 -4
  455. package/styled-components/es/examples/plasma_web/components/DatePicker/DatePicker.config.js +4 -4
  456. package/styled-components/es/examples/sds_engineer/components/Calendar/Calendar.stories.tsx +162 -267
  457. package/styled-components/es/examples/sds_engineer/components/Calendar/CalendarBase.config.js +5 -5
  458. package/styled-components/es/examples/sds_engineer/components/Calendar/CalendarDouble.config.js +5 -5
  459. package/styled-components/es/utils/datejs.js +4 -0
  460. package/types/components/Accordion/Accordion.tokens.d.ts +3 -0
  461. package/types/components/Accordion/Accordion.tokens.d.ts.map +1 -1
  462. package/types/components/Accordion/ui/AccordionItem/AccordionItem.d.ts.map +1 -1
  463. package/types/components/Accordion/ui/AccordionItem/AccordionItem.styles.d.ts.map +1 -1
  464. package/types/components/Accordion/ui/AccordionItem/AccordionItem.types.d.ts +5 -0
  465. package/types/components/Accordion/ui/AccordionItem/AccordionItem.types.d.ts.map +1 -1
  466. package/types/components/Accordion/utils/index.d.ts +4 -2
  467. package/types/components/Accordion/utils/index.d.ts.map +1 -1
  468. package/types/components/Calendar/Calendar.tokens.d.ts +30 -6
  469. package/types/components/Calendar/Calendar.tokens.d.ts.map +1 -1
  470. package/types/components/Calendar/Calendar.types.d.ts +86 -32
  471. package/types/components/Calendar/Calendar.types.d.ts.map +1 -1
  472. package/types/components/Calendar/CalendarBase/CalendarBase.d.ts +4 -44
  473. package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
  474. package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts +4 -31
  475. package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
  476. package/types/components/Calendar/hoc/withRange.d.ts +3 -2
  477. package/types/components/Calendar/hoc/withRange.d.ts.map +1 -1
  478. package/types/components/Calendar/hooks/index.d.ts +3 -0
  479. package/types/components/Calendar/hooks/index.d.ts.map +1 -1
  480. package/types/components/Calendar/hooks/types.d.ts +38 -0
  481. package/types/components/Calendar/hooks/types.d.ts.map +1 -0
  482. package/types/components/Calendar/hooks/useCalendarDateChange.d.ts +11 -0
  483. package/types/components/Calendar/hooks/useCalendarDateChange.d.ts.map +1 -0
  484. package/types/components/Calendar/hooks/useCalendarNavigation.d.ts +6 -0
  485. package/types/components/Calendar/hooks/useCalendarNavigation.d.ts.map +1 -0
  486. package/types/components/Calendar/hooks/useDays.d.ts +3 -2
  487. package/types/components/Calendar/hooks/useDays.d.ts.map +1 -1
  488. package/types/components/Calendar/hooks/useKeyNavigation.d.ts +2 -2
  489. package/types/components/Calendar/hooks/useKeyNavigation.d.ts.map +1 -1
  490. package/types/components/Calendar/hooks/useMonths.d.ts +3 -2
  491. package/types/components/Calendar/hooks/useMonths.d.ts.map +1 -1
  492. package/types/components/Calendar/hooks/useQuarters.d.ts +7 -0
  493. package/types/components/Calendar/hooks/useQuarters.d.ts.map +1 -0
  494. package/types/components/Calendar/hooks/useYears.d.ts +3 -2
  495. package/types/components/Calendar/hooks/useYears.d.ts.map +1 -1
  496. package/types/components/Calendar/mixins/selected.d.ts.map +1 -1
  497. package/types/components/Calendar/store/reducer.d.ts +3 -2
  498. package/types/components/Calendar/store/reducer.d.ts.map +1 -1
  499. package/types/components/Calendar/store/types.d.ts +9 -1
  500. package/types/components/Calendar/store/types.d.ts.map +1 -1
  501. package/types/components/Calendar/ui/CalendarDays/CalendarDays.d.ts.map +1 -1
  502. package/types/components/Calendar/ui/CalendarDays/CalendarDays.types.d.ts +3 -3
  503. package/types/components/Calendar/ui/CalendarDays/CalendarDays.types.d.ts.map +1 -1
  504. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  505. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.d.ts +1 -1
  506. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.styles.d.ts.map +1 -1
  507. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.types.d.ts +2 -2
  508. package/types/components/Calendar/ui/CalendarHeader/CalendarHeader.types.d.ts.map +1 -1
  509. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.d.ts.map +1 -1
  510. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.d.ts +0 -2
  511. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.styles.d.ts.map +1 -1
  512. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.types.d.ts +14 -4
  513. package/types/components/Calendar/ui/CalendarMonths/CalendarMonths.types.d.ts.map +1 -1
  514. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.d.ts +7 -0
  515. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.d.ts.map +1 -0
  516. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.d.ts +4 -0
  517. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.styles.d.ts.map +1 -0
  518. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.d.ts +21 -0
  519. package/types/components/Calendar/ui/CalendarQuarters/CalendarQuarters.types.d.ts.map +1 -0
  520. package/types/components/Calendar/ui/CalendarYears/CalendarYears.d.ts.map +1 -1
  521. package/types/components/Calendar/ui/CalendarYears/CalendarYears.styles.d.ts +0 -2
  522. package/types/components/Calendar/ui/CalendarYears/CalendarYears.styles.d.ts.map +1 -1
  523. package/types/components/Calendar/ui/CalendarYears/CalendarYears.types.d.ts +12 -3
  524. package/types/components/Calendar/ui/CalendarYears/CalendarYears.types.d.ts.map +1 -1
  525. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.d.ts +7 -0
  526. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.d.ts.map +1 -0
  527. package/types/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.styles.d.ts → DateStructureItem/DateStructureItem.styles.d.ts} +4 -4
  528. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.styles.d.ts.map +1 -0
  529. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.types.d.ts +13 -0
  530. package/types/components/Calendar/ui/DateStructureItem/DateStructureItem.types.d.ts.map +1 -0
  531. package/types/components/Calendar/ui/index.d.ts +1 -0
  532. package/types/components/Calendar/ui/index.d.ts.map +1 -1
  533. package/types/components/Calendar/utils/calendarGridHelper.d.ts +29 -0
  534. package/types/components/Calendar/utils/calendarGridHelper.d.ts.map +1 -0
  535. package/types/components/Calendar/utils/calendarRangeHelper.d.ts +26 -0
  536. package/types/components/Calendar/utils/calendarRangeHelper.d.ts.map +1 -0
  537. package/types/components/Calendar/utils/constants.d.ts +19 -0
  538. package/types/components/Calendar/utils/constants.d.ts.map +1 -0
  539. package/types/components/Calendar/utils/getDateWithModification.d.ts +17 -0
  540. package/types/components/Calendar/utils/getDateWithModification.d.ts.map +1 -0
  541. package/types/components/Calendar/utils/index.d.ts +4 -54
  542. package/types/components/Calendar/utils/index.d.ts.map +1 -1
  543. package/types/components/DatePicker/DatePicker.tokens.d.ts +11 -0
  544. package/types/components/DatePicker/DatePicker.tokens.d.ts.map +1 -1
  545. package/types/components/DatePicker/DatePickerBase.styles.d.ts +1 -5
  546. package/types/components/DatePicker/DatePickerBase.styles.d.ts.map +1 -1
  547. package/types/components/DatePicker/DatePickerBase.types.d.ts +62 -1
  548. package/types/components/DatePicker/DatePickerBase.types.d.ts.map +1 -1
  549. package/types/components/DatePicker/RangeDate/RangeDate.d.ts +6 -6
  550. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  551. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +5 -41
  552. package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
  553. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  554. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  555. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts +2 -2
  556. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.styles.d.ts.map +1 -1
  557. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts +5 -3
  558. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.types.d.ts.map +1 -1
  559. package/types/components/DatePicker/SingleDate/SingleDate.d.ts +2 -2
  560. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  561. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +3 -39
  562. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  563. package/types/components/DatePicker/hooks/useDatePicker.d.ts +2 -1
  564. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  565. package/types/examples/plasma_b2c/components/Accordion/Accordion.config.d.ts.map +1 -1
  566. package/types/examples/plasma_b2c/components/Calendar/Calendar.d.ts +4 -11
  567. package/types/examples/plasma_b2c/components/Calendar/Calendar.d.ts.map +1 -1
  568. package/types/examples/plasma_b2c/components/Calendar/CalendarBase.config.d.ts.map +1 -1
  569. package/types/examples/plasma_b2c/components/Calendar/CalendarDouble.config.d.ts.map +1 -1
  570. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.config.d.ts.map +1 -1
  571. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +4 -4
  572. package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
  573. package/types/examples/plasma_web/components/Accordion/Accordion.config.d.ts.map +1 -1
  574. package/types/examples/plasma_web/components/Calendar/Calendar.d.ts +4 -11
  575. package/types/examples/plasma_web/components/Calendar/Calendar.d.ts.map +1 -1
  576. package/types/examples/plasma_web/components/Calendar/CalendarBase.config.d.ts.map +1 -1
  577. package/types/examples/plasma_web/components/Calendar/CalendarDouble.config.d.ts.map +1 -1
  578. package/types/examples/plasma_web/components/DatePicker/DatePicker.config.d.ts.map +1 -1
  579. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +4 -4
  580. package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
  581. package/types/examples/sds_engineer/components/Calendar/Calendar.d.ts +4 -11
  582. package/types/examples/sds_engineer/components/Calendar/Calendar.d.ts.map +1 -1
  583. package/types/examples/sds_engineer/components/Calendar/CalendarBase.config.d.ts.map +1 -1
  584. package/types/examples/sds_engineer/components/Calendar/CalendarDouble.config.d.ts.map +1 -1
  585. package/types/utils/datejs.d.ts.map +1 -1
  586. package/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.css +0 -4
  587. package/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js.map +0 -1
  588. package/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js.map +0 -1
  589. package/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles_107vqka.css +0 -4
  590. package/cjs/components/Calendar/ui/CalendarMonths/CalendarMonths.styles_7jeg2n.css +0 -4
  591. package/cjs/components/Calendar/ui/CalendarYears/CalendarYears.styles_4z2ki7.css +0 -4
  592. package/cjs/components/Calendar/utils/index.js +0 -276
  593. package/cjs/components/Calendar/utils/index.js.map +0 -1
  594. package/emotion/cjs/components/Breadcrumbs/README.md +0 -78
  595. package/emotion/cjs/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js +0 -85
  596. package/emotion/es/components/Breadcrumbs/README.md +0 -78
  597. package/emotion/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js +0 -78
  598. package/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.css +0 -4
  599. package/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.js.map +0 -1
  600. package/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js +0 -63
  601. package/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js.map +0 -1
  602. package/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles_107vqka.css +0 -4
  603. package/es/components/Calendar/ui/CalendarMonths/CalendarMonths.styles_7jeg2n.css +0 -4
  604. package/es/components/Calendar/ui/CalendarYears/CalendarYears.styles_4z2ki7.css +0 -4
  605. package/es/components/Calendar/utils/index.js +0 -242
  606. package/es/components/Calendar/utils/index.js.map +0 -1
  607. package/styled-components/cjs/components/Breadcrumbs/README.md +0 -78
  608. package/styled-components/es/components/Breadcrumbs/README.md +0 -78
  609. package/styled-components/es/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.js +0 -65
  610. package/types/components/Breadcrumbs/Breadcrumbs.types.d.ts +0 -16
  611. package/types/components/Breadcrumbs/Breadcrumbs.types.d.ts.map +0 -1
  612. package/types/components/Calendar/ui/CalendarDayItem/CalendarDayItem.d.ts +0 -7
  613. package/types/components/Calendar/ui/CalendarDayItem/CalendarDayItem.d.ts.map +0 -1
  614. package/types/components/Calendar/ui/CalendarDayItem/CalendarDayItem.styles.d.ts.map +0 -1
  615. package/types/components/Calendar/ui/CalendarDayItem/CalendarDayItem.types.d.ts +0 -13
  616. package/types/components/Calendar/ui/CalendarDayItem/CalendarDayItem.types.d.ts.map +0 -1
  617. /package/emotion/cjs/components/{Breadcrumbs/Breadcrumbs.types.js → Calendar/hooks/types.js} +0 -0
  618. /package/emotion/cjs/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.types.js → CalendarQuarters/CalendarQuarters.types.js} +0 -0
  619. /package/{styled-components/cjs/components/Breadcrumbs/Breadcrumbs.types.js → emotion/cjs/components/Calendar/ui/DateStructureItem/DateStructureItem.types.js} +0 -0
  620. /package/emotion/es/components/{Breadcrumbs/Breadcrumbs.types.js → Calendar/hooks/types.js} +0 -0
  621. /package/emotion/es/components/Calendar/ui/{CalendarDayItem/CalendarDayItem.types.js → CalendarQuarters/CalendarQuarters.types.js} +0 -0
  622. /package/{styled-components/es/components/Breadcrumbs/Breadcrumbs.types.js → emotion/es/components/Calendar/ui/DateStructureItem/DateStructureItem.types.js} +0 -0
  623. /package/styled-components/cjs/components/Calendar/{ui/CalendarDayItem/CalendarDayItem.types.js → hooks/types.js} +0 -0
  624. /package/styled-components/es/components/Calendar/{ui/CalendarDayItem/CalendarDayItem.types.js → hooks/types.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarDouble.js","sources":["../../../../src/components/Calendar/CalendarDouble/CalendarDouble.tsx"],"sourcesContent":["import React, { useState, useCallback, useMemo, forwardRef, HTMLAttributes, useEffect } from 'react';\n\nimport type { Calendar, DateObject } from '../Calendar.types';\nimport { getDateFromValue, getNextDate, getPrevDate, isValueUpdate } from '../utils';\nimport { useKeyNavigation } from '../hooks';\nimport { CalendarDays, CalendarHeader } from '../ui';\nimport { RootProps } from '../../../engines/types';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { StyledCalendar, StyledSeparator, StyledWrapper } from './CalendarDouble.styles';\n\nexport type CalendarDoubleProps = HTMLAttributes<HTMLDivElement> &\n Calendar & {\n /**\n * Размер календаря.\n */\n size?: string;\n /**\n * Вид календаря.\n */\n view?: string;\n };\n\n/**\n * Компонент двойного календаря.\n */\nexport const calendarDoubleRoot = (Root: RootProps<HTMLDivElement, HTMLAttributes<HTMLDivElement>>) =>\n forwardRef<HTMLDivElement, CalendarDoubleProps>(\n (\n { value: externalValue, min, max, includeEdgeDates, eventList, disabledList, onChangeValue, ...rest },\n outerRootRef,\n ) => {\n const [firstValue, secondValue] = useMemo(\n () => (Array.isArray(externalValue) ? externalValue : [externalValue]),\n [externalValue],\n );\n const value = secondValue || firstValue;\n const [hoveredDay, setHoveredDay] = useState<DateObject | undefined>();\n\n const [date, setDate] = useState<DateObject>(getDateFromValue(value));\n const [prevValue, setPrevValue] = useState(value);\n const [doubleDate, setMonths] = useState(() => {\n const nextDate = getDateFromValue(firstValue);\n const [initialYear, initialMonth] = getNextDate(nextDate.year, nextDate.monthIndex);\n\n return {\n monthIndex: [nextDate.monthIndex, initialMonth],\n year: [nextDate.year, initialYear],\n };\n });\n\n const handleMonth = useCallback(\n (getDate: (currentYear: number, currentMonth: number) => number[]) => {\n const [newCurrentYear, newCurrentMonth] = getDate(doubleDate.year[0], doubleDate.monthIndex[0]);\n const [newNextYear, newNextMonth] = getDate(doubleDate.year[1], doubleDate.monthIndex[1]);\n\n setMonths({\n monthIndex: [newCurrentMonth, newNextMonth],\n year: [newCurrentYear, newNextYear],\n });\n },\n [doubleDate],\n );\n\n const handlePrev = useCallback(() => {\n handleMonth(getPrevDate);\n }, [handleMonth]);\n\n const handleNext = useCallback(() => {\n handleMonth(getNextDate);\n }, [handleMonth]);\n\n const [selectIndexes, onKeyDown, onSelectIndexes, outerRefs] = useKeyNavigation({\n isDouble: true,\n size: [11, 6],\n onNext: handleNext,\n onPrev: handlePrev,\n });\n\n const handleOnChangeDay = useCallback(\n (newDate: DateObject, coord: number[]) => {\n const newDay = new Date(newDate.year, newDate.monthIndex, newDate.day);\n onChangeValue?.(newDay);\n\n onSelectIndexes(coord);\n },\n [onChangeValue, onSelectIndexes],\n );\n\n const firstDate = useMemo(\n () => ({\n day: date.day,\n year: doubleDate.year[0],\n monthIndex: doubleDate.monthIndex[0],\n }),\n [date, doubleDate],\n );\n\n const secondDate = useMemo(\n () => ({\n day: date.day,\n year: doubleDate.year[1],\n monthIndex: doubleDate.monthIndex[1],\n }),\n [date, doubleDate],\n );\n\n if (value && prevValue && isValueUpdate(value, prevValue)) {\n const newDate = getDateFromValue(value);\n\n const { year, monthIndex } = newDate;\n\n const {\n monthIndex: [, prevMonthIndex],\n year: [, prevYear],\n } = doubleDate;\n\n if (prevMonthIndex !== monthIndex || prevYear !== year) {\n const [nextYear, nextMonthIndex] = getNextDate(year, monthIndex);\n\n setDate(newDate);\n\n setMonths({\n monthIndex: [monthIndex, nextMonthIndex],\n year: [year, nextYear],\n });\n }\n\n setPrevValue(value);\n }\n\n useEffect(() => {\n if (!prevValue) {\n setPrevValue(value);\n }\n }, [value, prevValue]);\n\n return (\n <Root ref={outerRootRef} aria-label=\"Выбор даты\" {...rest}>\n <CalendarHeader\n isDouble\n size={rest.size}\n firstDate={firstDate}\n secondDate={secondDate}\n onPrev={handlePrev}\n onNext={handleNext}\n />\n\n <StyledWrapper>\n <CalendarDays\n isDouble\n eventList={eventList}\n disabledList={disabledList}\n min={min}\n max={max}\n includeEdgeDates={includeEdgeDates}\n value={externalValue}\n date={firstDate}\n hoveredDay={hoveredDay}\n selectIndexes={selectIndexes}\n onChangeDay={handleOnChangeDay}\n onHoverDay={setHoveredDay}\n onSetSelected={onSelectIndexes}\n onKeyDown={onKeyDown}\n outerRefs={outerRefs}\n />\n <StyledSeparator />\n <CalendarDays\n isDouble\n isSecond\n eventList={eventList}\n disabledList={disabledList}\n min={min}\n max={max}\n includeEdgeDates={includeEdgeDates}\n value={externalValue}\n date={secondDate}\n hoveredDay={hoveredDay}\n selectIndexes={selectIndexes}\n onChangeDay={handleOnChangeDay}\n onHoverDay={setHoveredDay}\n onSetSelected={onSelectIndexes}\n onKeyDown={onKeyDown}\n outerRefs={outerRefs}\n />\n </StyledWrapper>\n </Root>\n );\n },\n );\n\nexport const calendarDoubleConfig = {\n name: 'CalendarDouble',\n tag: 'div',\n layout: calendarDoubleRoot,\n base: StyledCalendar,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["calendarDoubleRoot","Root","forwardRef","_ref","outerRootRef","externalValue","value","min","max","includeEdgeDates","eventList","disabledList","onChangeValue","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","Array","isArray","_useMemo2","_slicedToArray","firstValue","secondValue","_useState","useState","_useState2","hoveredDay","setHoveredDay","_useState3","getDateFromValue","_useState4","date","setDate","_useState5","_useState6","prevValue","setPrevValue","_useState7","nextDate","_getNextDate","getNextDate","year","monthIndex","_getNextDate2","initialYear","initialMonth","_useState8","doubleDate","setMonths","handleMonth","useCallback","getDate","_getDate","_getDate2","newCurrentYear","newCurrentMonth","_getDate3","_getDate4","newNextYear","newNextMonth","handlePrev","getPrevDate","handleNext","_useKeyNavigation","useKeyNavigation","isDouble","size","onNext","onPrev","_useKeyNavigation2","selectIndexes","onKeyDown","onSelectIndexes","outerRefs","handleOnChangeDay","newDate","coord","newDay","Date","day","firstDate","secondDate","isValueUpdate","_doubleDate$monthInde","prevMonthIndex","_doubleDate$year","prevYear","_getNextDate3","_getNextDate4","nextYear","nextMonthIndex","useEffect","React","createElement","_extends","ref","CalendarHeader","StyledWrapper","CalendarDays","onChangeDay","onHoverDay","onSetSelected","_StyledSeparator","StyledSeparator","isSecond","calendarDoubleConfig","name","tag","layout","base","StyledCalendar","variations","view","css","viewCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarDouble.js","sources":["../../../../src/components/Calendar/CalendarDouble/CalendarDouble.tsx"],"sourcesContent":["import React, {\n useState,\n useCallback,\n useMemo,\n forwardRef,\n HTMLAttributes,\n KeyboardEvent,\n useEffect,\n useReducer,\n} from 'react';\n\nimport type { Calendar, CalendarConfigProps, DateObject } from '../Calendar.types';\nimport { YEAR_RENDER_COUNT, getNextDate, isValueUpdate } from '../utils';\nimport { useKeyNavigation, useCalendarNavigation, useCalendarDateChange } from '../hooks';\nimport { CalendarDays, CalendarHeader, CalendarMonths, CalendarQuarters, CalendarYears } from '../ui';\nimport { RootProps } from '../../../engines/types';\nimport { getInitialState, reducer, sizeMap } from '../store/reducer';\nimport { ActionType, CalendarState } from '../store/types';\nimport { IsOutOfRange } from '../CalendarBase/CalendarBase.styles';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { StyledCalendar, StyledSeparator, StyledWrapper } from './CalendarDouble.styles';\n\nexport type CalendarDoubleProps = Calendar & CalendarConfigProps;\n\n/**\n * Компонент двойного календаря.\n */\nexport const calendarDoubleRoot = (Root: RootProps<HTMLDivElement, HTMLAttributes<HTMLDivElement>>) =>\n forwardRef<HTMLDivElement, CalendarDoubleProps>(\n (\n {\n value: externalValue,\n min,\n max,\n includeEdgeDates,\n type = 'Days',\n eventList,\n disabledList,\n eventMonthList,\n disabledMonthList,\n eventQuarterList,\n disabledQuarterList,\n eventYearList,\n disabledYearList,\n onChangeValue,\n ...rest\n },\n outerRootRef,\n ) => {\n const [firstValue, secondValue] = useMemo(\n () => (Array.isArray(externalValue) ? externalValue : [externalValue]),\n [externalValue],\n );\n const value = secondValue || firstValue;\n\n const [hoveredItem, setHoveredItem] = useState<DateObject | undefined>();\n const [prevType, setPrevType] = useState(type);\n const [prevValue, setPrevValue] = useState(value);\n const [outOfRangeKey, setOutOfRangeKey] = useState<number>(0);\n\n const [state, dispatch] = useReducer(reducer, getInitialState(value, type, true));\n\n const { date, calendarState, startYear, size } = state;\n\n const [firstDate, setFirstDate] = useState<DateObject>(date);\n const [secondDate, setSecondDate] = useState<DateObject>(date);\n\n const { handleNext, handlePrev } = useCalendarNavigation({\n calendarState,\n date,\n dispatch,\n });\n\n const [selectIndexes, onKeyDown, onSelectIndexes, outerRefs, isOutOfRange] = useKeyNavigation({\n isDouble: true,\n size,\n calendarState,\n onNext: handleNext,\n onPrev: handlePrev,\n });\n\n const {\n handleOnChangeDay,\n handleOnChangeMonth,\n handleOnChangeQuarter,\n handleOnChangeYear,\n handleUpdateCalendarState,\n } = useCalendarDateChange({ type, onChangeValue, onSelectIndexes, dispatch });\n\n const updateSecondDate = () => {\n if (calendarState === CalendarState.Days) {\n const [nextYear, nextMonthIndex] = getNextDate(date.year, date.monthIndex);\n setSecondDate({ year: nextYear, monthIndex: nextMonthIndex, day: date.day });\n }\n\n if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {\n setSecondDate({ year: date.year + 1, monthIndex: date.monthIndex, day: date.day });\n }\n\n if (calendarState === CalendarState.Years) {\n setSecondDate({ year: startYear + YEAR_RENDER_COUNT, monthIndex: date.monthIndex, day: date.day });\n }\n };\n\n const getBoundaryDates = () => {\n // NOTE: Если установить индекс дня равным \"0\", то берется последнее число предыдущего месяца\n if (calendarState === CalendarState.Days) {\n return [\n new Date(firstDate.year, firstDate.monthIndex, 1),\n new Date(secondDate.year, secondDate.monthIndex + 1, 0),\n ];\n }\n\n if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {\n return [new Date(firstDate.year, 0), new Date(secondDate.year, 12, 0)];\n }\n\n const endVisibleYear = startYear + YEAR_RENDER_COUNT * 2 - 1;\n return [new Date(startYear, 0), new Date(endVisibleYear, 11)];\n };\n\n // Изменяем ключ каждый раз как пытаемся перейти на даты которые находятся за пределами min/max ограничений.\n // Это необходимо для того чтобы screen-reader корректно озвучивал уведомление aria-live=\"assertive\"\n // о том что нет доступных дат\n const handleKeyDown = useCallback(\n (event: KeyboardEvent<HTMLDivElement>) => {\n setOutOfRangeKey((previousState) => Number(!previousState));\n\n onKeyDown(event);\n },\n [onKeyDown],\n );\n\n useEffect(() => {\n if (prevType !== calendarState) {\n dispatch({\n type: ActionType.UPDATE_CALENDAR_STATE,\n payload: { calendarState, size: sizeMap[calendarState].double },\n });\n\n setPrevType(calendarState);\n }\n }, [calendarState]);\n\n useEffect(() => {\n if (!prevValue) {\n setPrevValue(value);\n }\n\n if ((value && prevValue && isValueUpdate(value, prevValue)) || (value && !prevValue)) {\n const [minVisibleDate, maxVisibleDate] = getBoundaryDates();\n\n if (value > maxVisibleDate || value < minVisibleDate) {\n dispatch({\n type: ActionType.UPDATE_DATE,\n payload: { value },\n });\n }\n\n setPrevValue(value);\n }\n }, [value, prevValue]);\n\n useEffect(() => {\n setFirstDate(date);\n\n updateSecondDate();\n }, [date, calendarState]);\n\n return (\n <Root ref={outerRootRef} aria-label=\"Выбор даты\" {...rest}>\n {isOutOfRange && (\n <IsOutOfRange\n key={outOfRangeKey}\n aria-atomic=\"true\"\n role=\"alert\"\n aria-live=\"assertive\"\n aria-relevant=\"additions\"\n >\n Далее нет доступных дат.\n </IsOutOfRange>\n )}\n <CalendarHeader\n isDouble\n size={rest.size}\n firstDate={firstDate}\n secondDate={secondDate}\n startYear={startYear}\n type={calendarState}\n onPrev={handlePrev}\n onNext={handleNext}\n onUpdateCalendarState={handleUpdateCalendarState}\n />\n\n <StyledWrapper>\n {calendarState === CalendarState.Days && (\n <>\n <CalendarDays\n value={externalValue}\n date={firstDate}\n min={min}\n max={max}\n eventList={eventList}\n disabledList={disabledList}\n includeEdgeDates={includeEdgeDates}\n hoveredDay={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeDay={handleOnChangeDay}\n onHoverDay={setHoveredItem}\n onSetSelected={onSelectIndexes}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n />\n <StyledSeparator />\n <CalendarDays\n value={externalValue}\n date={secondDate}\n min={min}\n max={max}\n eventList={eventList}\n disabledList={disabledList}\n includeEdgeDates={includeEdgeDates}\n hoveredDay={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeDay={handleOnChangeDay}\n onHoverDay={setHoveredItem}\n onSetSelected={onSelectIndexes}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n isSecond\n />\n </>\n )}\n {calendarState === CalendarState.Months && (\n <>\n <CalendarMonths\n value={externalValue}\n date={firstDate}\n min={min}\n max={max}\n eventList={eventMonthList}\n disabledList={disabledMonthList}\n hoveredMonth={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeMonth={handleOnChangeMonth}\n onSetSelected={onSelectIndexes}\n onHoverMonth={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n />\n <StyledSeparator />\n <CalendarMonths\n value={externalValue}\n date={secondDate}\n min={min}\n max={max}\n eventList={eventMonthList}\n disabledList={disabledMonthList}\n hoveredMonth={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeMonth={handleOnChangeMonth}\n onSetSelected={onSelectIndexes}\n onHoverMonth={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n isSecond\n />\n </>\n )}\n {calendarState === CalendarState.Quarters && (\n <>\n <CalendarQuarters\n value={externalValue}\n date={firstDate}\n min={min}\n max={max}\n eventList={eventQuarterList}\n disabledList={disabledQuarterList}\n hoveredQuarter={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeQuarter={handleOnChangeQuarter}\n onSetSelected={onSelectIndexes}\n onHoverQuarter={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n />\n <StyledSeparator />\n <CalendarQuarters\n value={externalValue}\n date={secondDate}\n min={min}\n max={max}\n eventList={eventQuarterList}\n disabledList={disabledQuarterList}\n hoveredQuarter={hoveredItem}\n selectIndexes={selectIndexes}\n onChangeQuarter={handleOnChangeQuarter}\n onSetSelected={onSelectIndexes}\n onHoverQuarter={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n isSecond\n />\n </>\n )}\n {calendarState === CalendarState.Years && (\n <>\n <CalendarYears\n value={externalValue}\n date={firstDate}\n startYear={startYear}\n selectIndexes={selectIndexes}\n min={min}\n max={max}\n eventList={eventYearList}\n disabledList={disabledYearList}\n hoveredYear={hoveredItem}\n onChangeYear={handleOnChangeYear}\n onSetSelected={onSelectIndexes}\n onHoverYear={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n />\n <StyledSeparator />\n <CalendarYears\n value={externalValue}\n date={secondDate}\n startYear={startYear + YEAR_RENDER_COUNT}\n selectIndexes={selectIndexes}\n min={min}\n max={max}\n eventList={eventYearList}\n disabledList={disabledYearList}\n hoveredYear={hoveredItem}\n onChangeYear={handleOnChangeYear}\n onSetSelected={onSelectIndexes}\n onHoverYear={setHoveredItem}\n onKeyDown={handleKeyDown}\n outerRefs={outerRefs}\n isDouble\n isSecond\n />\n </>\n )}\n </StyledWrapper>\n </Root>\n );\n },\n );\n\nexport const calendarDoubleConfig = {\n name: 'CalendarDouble',\n tag: 'div',\n layout: calendarDoubleRoot,\n base: StyledCalendar,\n variations: {\n view: {\n css: viewCSS,\n },\n },\n defaults: {\n view: 'primary',\n size: 'm',\n },\n};\n"],"names":["calendarDoubleRoot","Root","forwardRef","_ref","outerRootRef","externalValue","value","min","max","includeEdgeDates","_ref$type","type","eventList","disabledList","eventMonthList","disabledMonthList","eventQuarterList","disabledQuarterList","eventYearList","disabledYearList","onChangeValue","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","Array","isArray","_useMemo2","_slicedToArray","firstValue","secondValue","_useState","useState","_useState2","hoveredItem","setHoveredItem","_useState3","_useState4","prevType","setPrevType","_useState5","_useState6","prevValue","setPrevValue","_useState7","_useState8","outOfRangeKey","setOutOfRangeKey","_useReducer","useReducer","reducer","getInitialState","_useReducer2","state","dispatch","date","calendarState","startYear","size","_useState9","_useState10","firstDate","setFirstDate","_useState11","_useState12","secondDate","setSecondDate","_useCalendarNavigatio","useCalendarNavigation","handleNext","handlePrev","_useKeyNavigation","useKeyNavigation","isDouble","onNext","onPrev","_useKeyNavigation2","selectIndexes","onKeyDown","onSelectIndexes","outerRefs","isOutOfRange","_useCalendarDateChang","useCalendarDateChange","handleOnChangeDay","handleOnChangeMonth","handleOnChangeQuarter","handleOnChangeYear","handleUpdateCalendarState","updateSecondDate","CalendarState","Days","_getNextDate","getNextDate","year","monthIndex","_getNextDate2","nextYear","nextMonthIndex","day","Months","Quarters","Years","YEAR_RENDER_COUNT","getBoundaryDates","Date","endVisibleYear","handleKeyDown","useCallback","event","previousState","Number","useEffect","ActionType","UPDATE_CALENDAR_STATE","payload","sizeMap","isValueUpdate","_getBoundaryDates","_getBoundaryDates2","minVisibleDate","maxVisibleDate","UPDATE_DATE","React","createElement","_extends","ref","IsOutOfRange","key","role","CalendarHeader","onUpdateCalendarState","StyledWrapper","Fragment","CalendarDays","hoveredDay","onChangeDay","onHoverDay","onSetSelected","_StyledSeparator","StyledSeparator","isSecond","CalendarMonths","hoveredMonth","onChangeMonth","onHoverMonth","_StyledSeparator2","CalendarQuarters","hoveredQuarter","onChangeQuarter","onHoverQuarter","_StyledSeparator3","CalendarYears","hoveredYear","onChangeYear","onHoverYear","_StyledSeparator4","calendarDoubleConfig","name","tag","layout","base","StyledCalendar","variations","view","css","viewCSS","defaults"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { useMemo, useState, useCallback } from 'react';
3
- import { isValueUpdate, getSortedValues } from '../utils/index.js';
3
+ import { isValueUpdate, getSortedValues } from '../utils/calendarRangeHelper.js';
4
4
 
5
- var _excluded = ["value", "disabledList", "eventList", "min", "max", "onChangeValue", "onChangeStartOfRange"];
5
+ var _excluded = ["value", "min", "max", "disabledList", "eventList", "eventMonthList", "disabledMonthList", "eventYearList", "disabledYearList", "onChangeValue", "onChangeStartOfRange"];
6
6
 
7
7
  /**
8
8
  * HOC для календаря, дающий возможность выбора диапазона даты
@@ -10,10 +10,14 @@ var _excluded = ["value", "disabledList", "eventList", "min", "max", "onChangeVa
10
10
  var withRange = function withRange(Component) {
11
11
  return function (_ref) {
12
12
  var value = _ref.value,
13
- disabledList = _ref.disabledList,
14
- eventList = _ref.eventList,
15
13
  min = _ref.min,
16
14
  max = _ref.max,
15
+ disabledList = _ref.disabledList,
16
+ eventList = _ref.eventList,
17
+ eventMonthList = _ref.eventMonthList,
18
+ disabledMonthList = _ref.disabledMonthList,
19
+ eventYearList = _ref.eventYearList,
20
+ disabledYearList = _ref.disabledYearList,
17
21
  onChangeValue = _ref.onChangeValue,
18
22
  onChangeStartOfRange = _ref.onChangeStartOfRange,
19
23
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -37,10 +41,10 @@ var withRange = function withRange(Component) {
37
41
  setValues([startExternalValue, endExternalValue]);
38
42
  setPrevValue(value);
39
43
  }
40
- var handleOnChangeDay = useCallback(function (newDay) {
44
+ var handleOnChangeDay = useCallback(function (newDay, dateInfo) {
41
45
  if (endValue) {
42
46
  setValues([newDay, undefined]);
43
- onChangeStartOfRange === null || onChangeStartOfRange === void 0 || onChangeStartOfRange(newDay);
47
+ onChangeStartOfRange === null || onChangeStartOfRange === void 0 || onChangeStartOfRange(newDay, dateInfo);
44
48
  return;
45
49
  }
46
50
  setValues([startValue, newDay]);
@@ -49,7 +53,7 @@ var withRange = function withRange(Component) {
49
53
  first = _getSortedValues2[0],
50
54
  second = _getSortedValues2[1];
51
55
  if (first) {
52
- onChangeValue([first, second]);
56
+ onChangeValue([first, second], dateInfo);
53
57
  }
54
58
  }, [onChangeValue, onChangeStartOfRange, startValue, endValue]);
55
59
  return /*#__PURE__*/React.createElement(Component, _extends({
@@ -57,6 +61,10 @@ var withRange = function withRange(Component) {
57
61
  onChangeValue: handleOnChangeDay,
58
62
  disabledList: disabledList,
59
63
  eventList: eventList,
64
+ eventMonthList: eventMonthList,
65
+ disabledMonthList: disabledMonthList,
66
+ eventYearList: eventYearList,
67
+ disabledYearList: disabledYearList,
60
68
  min: min,
61
69
  max: max
62
70
  }, rest));
@@ -1 +1 @@
1
- {"version":3,"file":"withRange.js","sources":["../../../../src/components/Calendar/hoc/withRange.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback, ReactElement } from 'react';\n\nimport type { Calendar, CalendarRange } from '../Calendar.types';\nimport { getSortedValues, isValueUpdate } from '../utils';\n\n/**\n * HOC для календаря, дающий возможность выбора диапазона даты\n */\nexport const withRange = <T extends Calendar>(Component: React.FC<Calendar>) => ({\n value,\n disabledList,\n eventList,\n min,\n max,\n onChangeValue,\n onChangeStartOfRange,\n ...rest\n}: CalendarRange<T>): ReactElement<T> => {\n const [startExternalValue, endExternalValue] = useMemo(() => value, [value]);\n const [[startValue, endValue], setValues] = useState<[Date?, Date?]>([startExternalValue, endExternalValue]);\n const [prevValue, setPrevValue] = useState(value);\n\n if (isValueUpdate(value, prevValue)) {\n setValues([startExternalValue, endExternalValue]);\n\n setPrevValue(value);\n }\n\n const handleOnChangeDay = useCallback(\n (newDay: Date) => {\n if (endValue) {\n setValues([newDay, undefined]);\n\n onChangeStartOfRange?.(newDay);\n\n return;\n }\n\n setValues([startValue, newDay]);\n\n const [first, second] = getSortedValues([startValue, newDay]);\n\n if (first) {\n onChangeValue([first, second]);\n }\n },\n [onChangeValue, onChangeStartOfRange, startValue, endValue],\n );\n\n return (\n <Component\n value={[startValue, endValue]}\n onChangeValue={handleOnChangeDay}\n disabledList={disabledList}\n eventList={eventList}\n min={min}\n max={max}\n {...rest}\n />\n );\n};\n"],"names":["withRange","Component","_ref","value","disabledList","eventList","min","max","onChangeValue","onChangeStartOfRange","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","_useMemo2","_slicedToArray","startExternalValue","endExternalValue","_useState","useState","_useState2","_useState2$","startValue","endValue","setValues","_useState3","_useState4","prevValue","setPrevValue","isValueUpdate","handleOnChangeDay","useCallback","newDay","undefined","_getSortedValues","getSortedValues","_getSortedValues2","first","second","React","createElement","_extends"],"mappings":"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"}
1
+ {"version":3,"file":"withRange.js","sources":["../../../../src/components/Calendar/hoc/withRange.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback } from 'react';\nimport type { ReactElement, FC } from 'react';\n\nimport type { Calendar, CalendarRange, DateInfo } from '../Calendar.types';\nimport { getSortedValues, isValueUpdate } from '../utils';\n\n/**\n * HOC для календаря, дающий возможность выбора диапазона даты\n */\nexport const withRange = <T extends Calendar>(Component: FC<Calendar>) => ({\n value,\n min,\n max,\n disabledList,\n eventList,\n eventMonthList,\n disabledMonthList,\n eventYearList,\n disabledYearList,\n onChangeValue,\n onChangeStartOfRange,\n ...rest\n}: CalendarRange<T>): ReactElement<T> => {\n const [startExternalValue, endExternalValue] = useMemo(() => value, [value]);\n const [[startValue, endValue], setValues] = useState<[Date?, Date?]>([startExternalValue, endExternalValue]);\n const [prevValue, setPrevValue] = useState(value);\n\n if (isValueUpdate(value, prevValue)) {\n setValues([startExternalValue, endExternalValue]);\n\n setPrevValue(value);\n }\n\n const handleOnChangeDay = useCallback(\n (newDay: Date, dateInfo?: DateInfo) => {\n if (endValue) {\n setValues([newDay, undefined]);\n\n onChangeStartOfRange?.(newDay, dateInfo);\n\n return;\n }\n\n setValues([startValue, newDay]);\n\n const [first, second] = getSortedValues([startValue, newDay]);\n\n if (first) {\n onChangeValue([first, second], dateInfo);\n }\n },\n [onChangeValue, onChangeStartOfRange, startValue, endValue],\n );\n\n return (\n <Component\n value={[startValue, endValue]}\n onChangeValue={handleOnChangeDay}\n disabledList={disabledList}\n eventList={eventList}\n eventMonthList={eventMonthList}\n disabledMonthList={disabledMonthList}\n eventYearList={eventYearList}\n disabledYearList={disabledYearList}\n min={min}\n max={max}\n {...rest}\n />\n );\n};\n"],"names":["withRange","Component","_ref","value","min","max","disabledList","eventList","eventMonthList","disabledMonthList","eventYearList","disabledYearList","onChangeValue","onChangeStartOfRange","rest","_objectWithoutProperties","_excluded","_useMemo","useMemo","_useMemo2","_slicedToArray","startExternalValue","endExternalValue","_useState","useState","_useState2","_useState2$","startValue","endValue","setValues","_useState3","_useState4","prevValue","setPrevValue","isValueUpdate","handleOnChangeDay","useCallback","newDay","dateInfo","undefined","_getSortedValues","getSortedValues","_getSortedValues2","first","second","React","createElement","_extends"],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ import { useCallback } from 'react';
2
+ import { CalendarState, ActionType } from '../store/types.js';
3
+ import { sizeMap } from '../store/reducer.js';
4
+
5
+ var useCalendarDateChange = function useCalendarDateChange(_ref) {
6
+ var type = _ref.type,
7
+ onChangeValue = _ref.onChangeValue,
8
+ onSelectIndexes = _ref.onSelectIndexes,
9
+ dispatch = _ref.dispatch;
10
+ var handleOnChangeDay = useCallback(function (newDate, coord) {
11
+ var newDay = new Date(newDate.year, newDate.monthIndex, newDate.day);
12
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(newDay);
13
+ onSelectIndexes(coord);
14
+ }, [onChangeValue, onSelectIndexes]);
15
+ var handleOnChangeQuarter = useCallback(function (newDate, coord, quarterName) {
16
+ var newQuarterDate = new Date(newDate.year, newDate.monthIndex, newDate.day);
17
+ var endQuarter = new Date(newQuarterDate);
18
+ endQuarter.setMonth(newQuarterDate.getMonth() + 3);
19
+ endQuarter.setDate(0);
20
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(newQuarterDate, {
21
+ name: quarterName,
22
+ fullValue: [newQuarterDate, endQuarter]
23
+ });
24
+ onSelectIndexes(coord);
25
+ }, [onChangeValue, onSelectIndexes, type]);
26
+ var handleOnChangeMonth = useCallback(function (newDate, coord) {
27
+ if (type === CalendarState.Months) {
28
+ var newMonthDate = new Date(newDate.year, newDate.monthIndex, newDate.day);
29
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(newMonthDate);
30
+ onSelectIndexes(coord);
31
+ return;
32
+ }
33
+ dispatch({
34
+ type: ActionType.UPDATE_MONTH,
35
+ payload: {
36
+ calendarState: CalendarState.Days,
37
+ monthIndex: newDate.monthIndex,
38
+ size: sizeMap.Days["double"]
39
+ }
40
+ });
41
+ }, [onChangeValue, onSelectIndexes, type]);
42
+ var handleOnChangeYear = useCallback(function (newDate, coord) {
43
+ if (type === CalendarState.Years) {
44
+ var newYearDate = new Date(newDate.year, newDate.monthIndex, newDate.day);
45
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(newYearDate);
46
+ onSelectIndexes(coord);
47
+ return;
48
+ }
49
+ if (type === CalendarState.Quarters) {
50
+ dispatch({
51
+ type: ActionType.UPDATE_YEAR,
52
+ payload: {
53
+ calendarState: CalendarState.Quarters,
54
+ year: newDate.year,
55
+ size: sizeMap.Quarters["double"]
56
+ }
57
+ });
58
+ return;
59
+ }
60
+ dispatch({
61
+ type: ActionType.UPDATE_YEAR,
62
+ payload: {
63
+ calendarState: CalendarState.Months,
64
+ year: newDate.year,
65
+ size: sizeMap.Months["double"]
66
+ }
67
+ });
68
+ }, [onChangeValue, onSelectIndexes, type]);
69
+ var handleUpdateCalendarState = useCallback(function (newCalendarState, newSize) {
70
+ dispatch({
71
+ type: ActionType.UPDATE_CALENDAR_STATE,
72
+ payload: {
73
+ calendarState: newCalendarState,
74
+ size: newSize
75
+ }
76
+ });
77
+ }, []);
78
+ return {
79
+ handleOnChangeDay: handleOnChangeDay,
80
+ handleOnChangeMonth: handleOnChangeMonth,
81
+ handleOnChangeQuarter: handleOnChangeQuarter,
82
+ handleOnChangeYear: handleOnChangeYear,
83
+ handleUpdateCalendarState: handleUpdateCalendarState
84
+ };
85
+ };
86
+
87
+ export { useCalendarDateChange };
88
+ //# sourceMappingURL=useCalendarDateChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCalendarDateChange.js","sources":["../../../../src/components/Calendar/hooks/useCalendarDateChange.ts"],"sourcesContent":["import { useCallback } from 'react';\n\nimport type { DateObject } from '../Calendar.types';\nimport { ActionType, CalendarState, CalendarStateType } from '../store/types';\nimport { sizeMap } from '../store/reducer';\n\nimport type { UseCalendarDateChangeArgs } from './types';\n\nexport const useCalendarDateChange = ({\n type,\n onChangeValue,\n onSelectIndexes,\n dispatch,\n}: UseCalendarDateChangeArgs) => {\n const handleOnChangeDay = useCallback(\n (newDate: DateObject, coord: number[]) => {\n const newDay = new Date(newDate.year, newDate.monthIndex, newDate.day);\n onChangeValue?.(newDay);\n\n onSelectIndexes(coord);\n },\n [onChangeValue, onSelectIndexes],\n );\n\n const handleOnChangeQuarter = useCallback(\n (newDate: DateObject, coord: number[], quarterName: string) => {\n const newQuarterDate = new Date(newDate.year, newDate.monthIndex, newDate.day);\n const endQuarter = new Date(newQuarterDate);\n\n endQuarter.setMonth(newQuarterDate.getMonth() + 3);\n endQuarter.setDate(0);\n\n onChangeValue?.(newQuarterDate, {\n name: quarterName,\n fullValue: [newQuarterDate, endQuarter],\n });\n\n onSelectIndexes(coord);\n },\n [onChangeValue, onSelectIndexes, type],\n );\n\n const handleOnChangeMonth = useCallback(\n (newDate: DateObject, coord: number[]) => {\n if (type === CalendarState.Months) {\n const newMonthDate = new Date(newDate.year, newDate.monthIndex, newDate.day);\n onChangeValue?.(newMonthDate);\n onSelectIndexes(coord);\n\n return;\n }\n\n dispatch({\n type: ActionType.UPDATE_MONTH,\n payload: {\n calendarState: CalendarState.Days,\n monthIndex: newDate.monthIndex,\n size: sizeMap.Days.double,\n },\n });\n },\n [onChangeValue, onSelectIndexes, type],\n );\n\n const handleOnChangeYear = useCallback(\n (newDate: DateObject, coord: number[]) => {\n if (type === CalendarState.Years) {\n const newYearDate = new Date(newDate.year, newDate.monthIndex, newDate.day);\n onChangeValue?.(newYearDate);\n onSelectIndexes(coord);\n\n return;\n }\n\n if (type === CalendarState.Quarters) {\n dispatch({\n type: ActionType.UPDATE_YEAR,\n payload: {\n calendarState: CalendarState.Quarters,\n year: newDate.year,\n size: sizeMap.Quarters.double,\n },\n });\n\n return;\n }\n\n dispatch({\n type: ActionType.UPDATE_YEAR,\n payload: {\n calendarState: CalendarState.Months,\n year: newDate.year,\n size: sizeMap.Months.double,\n },\n });\n },\n [onChangeValue, onSelectIndexes, type],\n );\n\n const handleUpdateCalendarState = useCallback((newCalendarState: CalendarStateType, newSize: [number, number]) => {\n dispatch({\n type: ActionType.UPDATE_CALENDAR_STATE,\n payload: { calendarState: newCalendarState, size: newSize },\n });\n }, []);\n\n return {\n handleOnChangeDay,\n handleOnChangeMonth,\n handleOnChangeQuarter,\n handleOnChangeYear,\n handleUpdateCalendarState,\n };\n};\n"],"names":["useCalendarDateChange","_ref","type","onChangeValue","onSelectIndexes","dispatch","handleOnChangeDay","useCallback","newDate","coord","newDay","Date","year","monthIndex","day","handleOnChangeQuarter","quarterName","newQuarterDate","endQuarter","setMonth","getMonth","setDate","name","fullValue","handleOnChangeMonth","CalendarState","Months","newMonthDate","ActionType","UPDATE_MONTH","payload","calendarState","Days","size","sizeMap","handleOnChangeYear","Years","newYearDate","Quarters","UPDATE_YEAR","handleUpdateCalendarState","newCalendarState","newSize","UPDATE_CALENDAR_STATE"],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ import { useCallback } from 'react';
2
+ import { CalendarState, ActionType } from '../store/types.js';
3
+ import { YEAR_RENDER_COUNT } from '../utils/constants.js';
4
+
5
+ var useCalendarNavigation = function useCalendarNavigation(_ref) {
6
+ var calendarState = _ref.calendarState,
7
+ dispatch = _ref.dispatch,
8
+ date = _ref.date;
9
+ var handlePrev = useCallback(function () {
10
+ var withShift = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
11
+ if (calendarState === CalendarState.Days) {
12
+ if (withShift) {
13
+ dispatch({
14
+ type: ActionType.PREVIOUS_YEAR,
15
+ payload: {
16
+ step: 1
17
+ }
18
+ });
19
+ return;
20
+ }
21
+ dispatch({
22
+ type: ActionType.PREVIOUS_MONTH,
23
+ payload: {
24
+ monthIndex: date.monthIndex,
25
+ year: date.year
26
+ }
27
+ });
28
+ return;
29
+ }
30
+ if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {
31
+ dispatch({
32
+ type: ActionType.PREVIOUS_YEAR,
33
+ payload: {
34
+ step: 1
35
+ }
36
+ });
37
+ return;
38
+ }
39
+ if (calendarState === CalendarState.Years) {
40
+ dispatch({
41
+ type: ActionType.PREVIOUS_START_YEAR,
42
+ payload: {
43
+ yearsCount: YEAR_RENDER_COUNT
44
+ }
45
+ });
46
+ }
47
+ }, [date, calendarState]);
48
+ var handleNext = useCallback(function () {
49
+ var withShift = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
50
+ if (calendarState === CalendarState.Days) {
51
+ if (withShift) {
52
+ dispatch({
53
+ type: ActionType.NEXT_YEAR,
54
+ payload: {
55
+ step: 1
56
+ }
57
+ });
58
+ return;
59
+ }
60
+ dispatch({
61
+ type: ActionType.NEXT_MONTH,
62
+ payload: {
63
+ monthIndex: date.monthIndex,
64
+ year: date.year
65
+ }
66
+ });
67
+ return;
68
+ }
69
+ if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {
70
+ dispatch({
71
+ type: ActionType.NEXT_YEAR,
72
+ payload: {
73
+ step: 1
74
+ }
75
+ });
76
+ return;
77
+ }
78
+ if (calendarState === CalendarState.Years) {
79
+ dispatch({
80
+ type: ActionType.NEXT_START_YEAR,
81
+ payload: {
82
+ yearsCount: YEAR_RENDER_COUNT
83
+ }
84
+ });
85
+ }
86
+ }, [date, calendarState]);
87
+ return {
88
+ handlePrev: handlePrev,
89
+ handleNext: handleNext
90
+ };
91
+ };
92
+
93
+ export { useCalendarNavigation };
94
+ //# sourceMappingURL=useCalendarNavigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCalendarNavigation.js","sources":["../../../../src/components/Calendar/hooks/useCalendarNavigation.ts"],"sourcesContent":["import { useCallback } from 'react';\n\nimport { ActionType, CalendarState } from '../store/types';\nimport { YEAR_RENDER_COUNT } from '../utils';\n\nimport type { UseCalendarNavigationArgs, UseKeyNavigationArgs } from './types';\n\nexport const useCalendarNavigation = ({ calendarState, dispatch, date }: UseCalendarNavigationArgs) => {\n const handlePrev = useCallback<UseKeyNavigationArgs['onPrev']>(\n (withShift = false) => {\n if (calendarState === CalendarState.Days) {\n if (withShift) {\n dispatch({\n type: ActionType.PREVIOUS_YEAR,\n payload: { step: 1 },\n });\n\n return;\n }\n\n dispatch({\n type: ActionType.PREVIOUS_MONTH,\n payload: { monthIndex: date.monthIndex, year: date.year },\n });\n\n return;\n }\n\n if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {\n dispatch({ type: ActionType.PREVIOUS_YEAR, payload: { step: 1 } });\n\n return;\n }\n\n if (calendarState === CalendarState.Years) {\n dispatch({ type: ActionType.PREVIOUS_START_YEAR, payload: { yearsCount: YEAR_RENDER_COUNT } });\n }\n },\n [date, calendarState],\n );\n\n const handleNext = useCallback<UseKeyNavigationArgs['onNext']>(\n (withShift = false) => {\n if (calendarState === CalendarState.Days) {\n if (withShift) {\n dispatch({\n type: ActionType.NEXT_YEAR,\n payload: { step: 1 },\n });\n\n return;\n }\n\n dispatch({\n type: ActionType.NEXT_MONTH,\n payload: { monthIndex: date.monthIndex, year: date.year },\n });\n\n return;\n }\n\n if (calendarState === CalendarState.Months || calendarState === CalendarState.Quarters) {\n dispatch({ type: ActionType.NEXT_YEAR, payload: { step: 1 } });\n\n return;\n }\n\n if (calendarState === CalendarState.Years) {\n dispatch({ type: ActionType.NEXT_START_YEAR, payload: { yearsCount: YEAR_RENDER_COUNT } });\n }\n },\n [date, calendarState],\n );\n\n return {\n handlePrev,\n handleNext,\n };\n};\n"],"names":["useCalendarNavigation","_ref","calendarState","dispatch","date","handlePrev","useCallback","withShift","arguments","length","undefined","CalendarState","Days","type","ActionType","PREVIOUS_YEAR","payload","step","PREVIOUS_MONTH","monthIndex","year","Months","Quarters","Years","PREVIOUS_START_YEAR","yearsCount","YEAR_RENDER_COUNT","handleNext","NEXT_YEAR","NEXT_MONTH","NEXT_START_YEAR"],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import { toConsumableArray as _toConsumableArray, slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { useMemo } from 'react';
3
- import { getDaysInMonth, getOffsetDayInWeek, getMatrix, isDayInRange, IsCurrentDay, isSelectedDay, getPrevDate, getNextDate, getDateFromValue } from '../utils/index.js';
3
+ import { getDatesWithModifications } from '../utils/getDateWithModification.js';
4
+ import { getDaysInMonth, getOffsetDayInWeek, getMatrix, IsCurrentDay, isSelectedDay, getPrevDate, getNextDate } from '../utils/calendarGridHelper.js';
5
+ import { isDateInRange } from '../utils/calendarRangeHelper.js';
6
+ import { CalendarState } from '../store/types.js';
4
7
 
5
8
  /**
6
9
  * Метод возвращающий массив дней в предыдущем месяце.
@@ -16,7 +19,7 @@ var getDaysInPrevMonth = function getDaysInPrevMonth(date, offsetDayInWeek, valu
16
19
  isCurrent: false,
17
20
  isSelected: false,
18
21
  isDayInCurrentMonth: false,
19
- inRange: Array.isArray(value) ? isDayInRange(prevYear, prevMonth, daysInPrevMonth - (offsetDayInWeek - i) + 1, value) : false,
22
+ inRange: Array.isArray(value) ? isDateInRange(prevYear, prevMonth, daysInPrevMonth - (offsetDayInWeek - i) + 1, value) : false,
20
23
  date: {
21
24
  day: daysInPrevMonth - (offsetDayInWeek - i) + 1,
22
25
  monthIndex: prevMonth,
@@ -37,7 +40,7 @@ var getDaysInCurrentMonth = function getDaysInCurrentMonth(date, daysInMonth, va
37
40
  return isSelectedDay(date, i + 1, v);
38
41
  })) : isSelectedDay(date, i + 1, value),
39
42
  isDayInCurrentMonth: true,
40
- inRange: Array.isArray(value) ? isDayInRange(date.year, date.monthIndex, i + 1, value) : false,
43
+ inRange: Array.isArray(value) ? isDateInRange(date.year, date.monthIndex, i + 1, value) : false,
41
44
  date: {
42
45
  day: i + 1,
43
46
  monthIndex: date.monthIndex,
@@ -62,7 +65,7 @@ var getDaysInNextMonth = function getDaysInNextMonth(date, daysInMonth, offsetDa
62
65
  isCurrent: false,
63
66
  isSelected: false,
64
67
  isDayInCurrentMonth: false,
65
- inRange: Array.isArray(value) ? isDayInRange(nextYear, nextMonthIndex, i + 1, value) : false,
68
+ inRange: Array.isArray(value) ? isDateInRange(nextYear, nextMonthIndex, i + 1, value) : false,
66
69
  date: {
67
70
  day: i + 1,
68
71
  monthIndex: nextMonthIndex,
@@ -71,143 +74,18 @@ var getDaysInNextMonth = function getDaysInNextMonth(date, daysInMonth, offsetDa
71
74
  };
72
75
  });
73
76
  };
74
- var isDisabledArrowLeft = function isDisabledArrowLeft(date, min) {
75
- var currentDate = new Date(date);
76
- currentDate.setDate(currentDate.getDate() - 1);
77
- return min && min >= currentDate || min && min >= date;
78
- };
79
- var isDisabledArrowRight = function isDisabledArrowRight(date, max) {
80
- var currentDate = new Date(date);
81
- currentDate.setDate(currentDate.getDate() + 1);
82
- return max && max <= currentDate || max && max <= date;
83
- };
84
- var isDisabledArrowUp = function isDisabledArrowUp(date, min) {
85
- var currentDate = new Date(date);
86
- currentDate.setDate(date.getDate() - 7);
87
- return min && min >= currentDate;
88
- };
89
- var isDisabledArrowDown = function isDisabledArrowDown(date, max) {
90
- var currentDate = new Date(date);
91
- currentDate.setDate(date.getDate() + 7);
92
- return max && max <= currentDate;
93
- };
94
- var isDisabledNextMonth = function isDisabledNextMonth(_ref, max) {
95
- var year = _ref.year,
96
- monthIndex = _ref.monthIndex,
97
- day = _ref.day;
98
- if (!max) {
99
- return false;
100
- }
101
- var currentDate = new Date(year, monthIndex, day);
102
- currentDate.setDate(currentDate.getDate() + 1);
103
- var isOut = true;
104
- while (isOut && currentDate <= max) {
105
- isOut = max <= currentDate;
106
- currentDate.setDate(currentDate.getDate() + 1);
107
- }
108
- return isOut;
109
- };
110
- var isDisabledPreviousMonth = function isDisabledPreviousMonth(_ref2, min) {
111
- var year = _ref2.year,
112
- monthIndex = _ref2.monthIndex,
113
- day = _ref2.day;
114
- if (!min) {
115
- return false;
116
- }
117
- var currentDate = new Date(year, monthIndex, day);
118
- currentDate.setDate(currentDate.getDate() - 1);
119
- var isOut = true;
120
- while (isOut && currentDate >= min) {
121
- isOut = min >= currentDate;
122
- currentDate.setDate(currentDate.getDate() - 1);
123
- }
124
- return isOut;
125
- };
126
- var getDisabledArrowKey = function getDisabledArrowKey(currentDate, min, max) {
127
- var disabledArrowKey = [];
128
- if (isDisabledArrowLeft(currentDate, min)) {
129
- disabledArrowKey.push('left');
130
- }
131
- if (isDisabledArrowRight(currentDate, max)) {
132
- disabledArrowKey.push('right');
133
- }
134
- if (isDisabledArrowDown(currentDate, max)) {
135
- disabledArrowKey.push('down');
136
- }
137
- if (isDisabledArrowUp(currentDate, min)) {
138
- disabledArrowKey.push('up');
139
- }
140
- return disabledArrowKey.join(',');
141
- };
142
- var getDisabledMonths = function getDisabledMonths(list, min, max) {
143
- var disabledMonth = [];
144
- if (isDisabledPreviousMonth(list[0], min)) {
145
- disabledMonth.push('previous');
146
- }
147
- if (isDisabledNextMonth(list[list.length - 1], max)) {
148
- disabledMonth.push('next');
149
- }
150
- return disabledMonth.join(',');
151
- };
152
-
153
- /**
154
- * Метод для получения набора неповторяющихся дат.
155
- */
156
- var getPropsMap = function getPropsMap(props) {
157
- return props.reduce(function (acc, prop) {
158
- var _getDateFromValue = getDateFromValue(prop.date),
159
- year = _getDateFromValue.year,
160
- monthIndex = _getDateFromValue.monthIndex,
161
- day = _getDateFromValue.day;
162
- var key = "".concat(year, "-").concat(monthIndex, "-").concat(day);
163
- var propList = acc.get(key) || [];
164
- propList.push(prop);
165
- return acc.set(key, propList);
166
- }, new Map());
167
- };
168
-
169
- /**
170
- * Метод модифицирующий дни (добавляющий свойства events и disabled).
171
- */
172
- var getDaysWithModifications = function getDaysWithModifications(days) {
173
- var eventList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
174
- var disabledList = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
175
- var min = arguments.length > 3 ? arguments[3] : undefined;
176
- var max = arguments.length > 4 ? arguments[4] : undefined;
177
- var includeEdgeDates = arguments.length > 5 ? arguments[5] : undefined;
178
- var eventsMap = getPropsMap(eventList);
179
- var disabledDaysMap = getPropsMap(disabledList);
180
- var daysList = days.filter(function (_ref3) {
181
- var isDayInCurrentMonth = _ref3.isDayInCurrentMonth;
182
- return isDayInCurrentMonth;
183
- }).map(function (_ref4) {
184
- var date = _ref4.date;
185
- return date;
186
- });
187
- var disabledMonths = getDisabledMonths(daysList, min, max);
188
- return days.map(function (dayItem) {
189
- var date = dayItem.date;
190
- var year = date.year,
191
- monthIndex = date.monthIndex,
192
- day = date.day;
193
- var keyDay = "".concat(year, "-").concat(monthIndex, "-").concat(day);
194
- var currentDate = new Date(year, monthIndex, day);
195
- var minValue = min && (includeEdgeDates ? min > currentDate : min >= currentDate);
196
- var maxValue = max && (includeEdgeDates ? max < currentDate : max <= currentDate);
197
- var isOutOfMinMaxRange = minValue || maxValue;
198
- dayItem.events = eventsMap.get(keyDay);
199
- dayItem.disabled = disabledDaysMap.has(keyDay) || isOutOfMinMaxRange;
200
- dayItem.isOutOfMinMaxRange = isOutOfMinMaxRange;
201
- dayItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max);
202
- dayItem.disabledMonths = disabledMonths;
203
- return dayItem;
204
- });
205
- };
206
77
 
207
78
  /**
208
79
  * Хук для получения списка дней.
209
80
  */
210
- var useDays = function useDays(date, value, eventList, disabledList, min, max, includeEdgeDates) {
81
+ var useDays = function useDays(_ref) {
82
+ var date = _ref.date,
83
+ value = _ref.value,
84
+ eventList = _ref.eventList,
85
+ disabledList = _ref.disabledList,
86
+ min = _ref.min,
87
+ max = _ref.max,
88
+ includeEdgeDates = _ref.includeEdgeDates;
211
89
  return useMemo(function () {
212
90
  var monthIndex = date.monthIndex,
213
91
  year = date.year;
@@ -215,7 +93,15 @@ var useDays = function useDays(date, value, eventList, disabledList, min, max, i
215
93
  var offsetDayInWeek = getOffsetDayInWeek(monthIndex, year);
216
94
  var days = [].concat(_toConsumableArray(getDaysInPrevMonth(date, offsetDayInWeek, value)), _toConsumableArray(getDaysInCurrentMonth(date, daysInMonth, value)), _toConsumableArray(getDaysInNextMonth(date, daysInMonth, offsetDayInWeek, value)));
217
95
  if (eventList !== null && eventList !== void 0 && eventList.length || disabledList !== null && disabledList !== void 0 && disabledList.length || max || min) {
218
- var modifiedDays = getDaysWithModifications(days, eventList, disabledList, min, max, includeEdgeDates);
96
+ var modifiedDays = getDatesWithModifications({
97
+ dates: days,
98
+ type: CalendarState.Days,
99
+ includeEdgeDates: includeEdgeDates,
100
+ min: min,
101
+ max: max,
102
+ eventList: eventList,
103
+ disabledList: disabledList
104
+ });
219
105
  return getMatrix(modifiedDays);
220
106
  }
221
107
  return getMatrix(days);