@alfalab/core-components 47.9.0-beta.1 → 47.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/calendar/Component.responsive.d.ts +1 -0
  2. package/calendar/components/calendar-mobile/Component.d.ts +18 -2
  3. package/calendar/components/calendar-mobile/Component.js +63 -26
  4. package/calendar/components/calendar-mobile/index.css +26 -4
  5. package/calendar/components/calendar-mobile/typings.d.ts +8 -1
  6. package/calendar/components/days-table/Component.d.ts +8 -0
  7. package/calendar/components/days-table/Component.js +21 -2
  8. package/calendar/components/days-table/index.css +8 -0
  9. package/calendar/cssm/Component.responsive.d.ts +1 -0
  10. package/calendar/cssm/components/calendar-mobile/Component.d.ts +18 -2
  11. package/calendar/cssm/components/calendar-mobile/Component.js +62 -25
  12. package/calendar/cssm/components/calendar-mobile/index.module.css +26 -4
  13. package/calendar/cssm/components/calendar-mobile/typings.d.ts +8 -1
  14. package/calendar/cssm/components/days-table/Component.d.ts +8 -0
  15. package/calendar/cssm/components/days-table/Component.js +20 -1
  16. package/calendar/cssm/components/days-table/index.module.css +8 -0
  17. package/calendar/cssm/useCalendar.d.ts +8 -2
  18. package/calendar/cssm/useCalendar.js +4 -1
  19. package/calendar/esm/Component.responsive.d.ts +1 -0
  20. package/calendar/esm/Component.responsive.js +3 -1
  21. package/calendar/esm/components/calendar-mobile/Component.d.ts +18 -2
  22. package/calendar/esm/components/calendar-mobile/Component.js +65 -29
  23. package/calendar/esm/components/calendar-mobile/index.css +26 -4
  24. package/calendar/esm/components/calendar-mobile/index.js +3 -1
  25. package/calendar/esm/components/calendar-mobile/typings.d.ts +8 -1
  26. package/calendar/esm/components/days-table/Component.d.ts +8 -0
  27. package/calendar/esm/components/days-table/Component.js +22 -3
  28. package/calendar/esm/components/days-table/index.css +8 -0
  29. package/calendar/esm/components/days-table/index.js +1 -0
  30. package/calendar/esm/desktop/Component.desktop.js +1 -0
  31. package/calendar/esm/desktop/index.js +1 -0
  32. package/calendar/esm/index.js +3 -1
  33. package/calendar/esm/mobile/index.js +3 -1
  34. package/calendar/esm/useCalendar.d.ts +8 -2
  35. package/calendar/esm/useCalendar.js +4 -1
  36. package/calendar/modern/Component.responsive.d.ts +1 -0
  37. package/calendar/modern/Component.responsive.js +3 -1
  38. package/calendar/modern/components/calendar-mobile/Component.d.ts +18 -2
  39. package/calendar/modern/components/calendar-mobile/Component.js +64 -16
  40. package/calendar/modern/components/calendar-mobile/index.css +26 -4
  41. package/calendar/modern/components/calendar-mobile/index.js +3 -1
  42. package/calendar/modern/components/calendar-mobile/typings.d.ts +8 -1
  43. package/calendar/modern/components/days-table/Component.d.ts +8 -0
  44. package/calendar/modern/components/days-table/Component.js +22 -3
  45. package/calendar/modern/components/days-table/index.css +8 -0
  46. package/calendar/modern/components/days-table/index.js +1 -0
  47. package/calendar/modern/desktop/Component.desktop.js +1 -0
  48. package/calendar/modern/desktop/index.js +1 -0
  49. package/calendar/modern/index.js +3 -1
  50. package/calendar/modern/mobile/index.js +3 -1
  51. package/calendar/modern/useCalendar.d.ts +8 -2
  52. package/calendar/modern/useCalendar.js +3 -1
  53. package/calendar/useCalendar.d.ts +8 -2
  54. package/calendar/useCalendar.js +4 -1
  55. package/calendar-input/components/calendar-input/Component.d.ts +1 -0
  56. package/calendar-input/cssm/components/calendar-input/Component.d.ts +1 -0
  57. package/calendar-input/esm/components/calendar-input/Component.d.ts +1 -0
  58. package/calendar-input/modern/components/calendar-input/Component.d.ts +1 -0
  59. package/date-time-input/components/date-time-input/Component.d.ts +2 -3
  60. package/date-time-input/cssm/components/date-time-input/Component.d.ts +2 -3
  61. package/date-time-input/esm/components/date-time-input/Component.d.ts +2 -3
  62. package/date-time-input/modern/components/date-time-input/Component.d.ts +2 -3
  63. package/gallery/components/header/Component.js +1 -1
  64. package/gallery/components/header/buttons.js +1 -1
  65. package/gallery/components/image-viewer/component.js +1 -1
  66. package/gallery/components/image-viewer/slide.js +1 -1
  67. package/gallery/esm/Component.js +2 -2
  68. package/gallery/esm/components/header/Component.js +1 -1
  69. package/gallery/esm/components/header/buttons.js +1 -1
  70. package/gallery/esm/components/header/index.js +1 -1
  71. package/gallery/esm/components/image-preview/Component.js +1 -1
  72. package/gallery/esm/components/image-preview/index.js +1 -1
  73. package/gallery/esm/components/image-viewer/component.js +1 -1
  74. package/gallery/esm/components/image-viewer/index.js +1 -1
  75. package/gallery/esm/components/image-viewer/slide.js +1 -1
  76. package/gallery/esm/components/index.js +2 -2
  77. package/gallery/esm/components/navigation-bar/Component.js +1 -1
  78. package/gallery/esm/components/navigation-bar/index.js +1 -1
  79. package/gallery/esm/index.js +2 -2
  80. package/gallery/modern/Component.js +2 -2
  81. package/gallery/modern/components/header/Component.js +1 -1
  82. package/gallery/modern/components/header/buttons.js +1 -1
  83. package/gallery/modern/components/header/index.js +1 -1
  84. package/gallery/modern/components/image-preview/Component.js +1 -1
  85. package/gallery/modern/components/image-preview/index.js +1 -1
  86. package/gallery/modern/components/image-viewer/component.js +1 -1
  87. package/gallery/modern/components/image-viewer/index.js +1 -1
  88. package/gallery/modern/components/image-viewer/slide.js +1 -1
  89. package/gallery/modern/components/index.js +2 -2
  90. package/gallery/modern/components/navigation-bar/Component.js +1 -1
  91. package/gallery/modern/components/navigation-bar/index.js +1 -1
  92. package/gallery/modern/index.js +2 -2
  93. package/international-phone-input/{Component-6563e05c.d.ts → Component-9d430401.d.ts} +1 -1
  94. package/international-phone-input/Component.responsive.d.ts +4 -4
  95. package/international-phone-input/components/base-international-phone-input/Component.d.ts +1 -1
  96. package/international-phone-input/cssm/{Component-6563e05c.d.ts → Component-9d430401.d.ts} +1 -1
  97. package/international-phone-input/cssm/Component.responsive.d.ts +4 -4
  98. package/international-phone-input/cssm/components/base-international-phone-input/Component.d.ts +1 -1
  99. package/international-phone-input/cssm/types.d.ts +1 -1
  100. package/international-phone-input/cssm/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  101. package/international-phone-input/cssm/utils-87b0c1c6.d.ts +1 -1
  102. package/international-phone-input/esm/{Component-6563e05c.d.ts → Component-9d430401.d.ts} +1 -1
  103. package/international-phone-input/esm/Component.responsive.d.ts +4 -4
  104. package/international-phone-input/esm/components/base-international-phone-input/Component.d.ts +1 -1
  105. package/international-phone-input/esm/types.d.ts +1 -1
  106. package/international-phone-input/esm/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  107. package/international-phone-input/esm/utils-87b0c1c6.d.ts +1 -1
  108. package/international-phone-input/modern/{Component-6563e05c.d.ts → Component-9d430401.d.ts} +1 -1
  109. package/international-phone-input/modern/Component.responsive.d.ts +4 -4
  110. package/international-phone-input/modern/components/base-international-phone-input/Component.d.ts +1 -1
  111. package/international-phone-input/modern/types.d.ts +1 -1
  112. package/international-phone-input/modern/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  113. package/international-phone-input/modern/utils-87b0c1c6.d.ts +1 -1
  114. package/international-phone-input/types.d.ts +1 -1
  115. package/international-phone-input/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  116. package/international-phone-input/utils-87b0c1c6.d.ts +1 -1
  117. package/package.json +1 -1
  118. package/picker-button/Component-9d430401.d.ts +5 -0
  119. package/picker-button/cssm/Component-9d430401.d.ts +5 -0
  120. package/picker-button/cssm/field/Component.d.ts +1 -1
  121. package/picker-button/cssm/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  122. package/picker-button/cssm/utils-87b0c1c6.d.ts +1 -1
  123. package/picker-button/esm/Component-9d430401.d.ts +5 -0
  124. package/picker-button/esm/field/Component.d.ts +1 -1
  125. package/picker-button/esm/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  126. package/picker-button/esm/utils-87b0c1c6.d.ts +1 -1
  127. package/picker-button/field/Component.d.ts +1 -1
  128. package/picker-button/modern/Component-9d430401.d.ts +5 -0
  129. package/picker-button/modern/field/Component.d.ts +1 -1
  130. package/picker-button/modern/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  131. package/picker-button/modern/utils-87b0c1c6.d.ts +1 -1
  132. package/picker-button/{typings-6563e05c.d.ts → typings-9d430401.d.ts} +0 -12
  133. package/picker-button/utils-87b0c1c6.d.ts +1 -1
  134. package/plate/components/base-plate/Component.js +1 -1
  135. package/plate/esm/Component.responsive.js +1 -1
  136. package/plate/esm/components/base-plate/Component.js +1 -1
  137. package/plate/esm/components/base-plate/index.js +1 -1
  138. package/plate/esm/desktop/Component.desktop.js +1 -1
  139. package/plate/esm/desktop/index.js +1 -1
  140. package/plate/esm/index-2f466837.d.ts +2 -2
  141. package/plate/esm/index.js +1 -1
  142. package/plate/esm/mobile/Component.mobile.js +1 -1
  143. package/plate/esm/mobile/index.js +1 -1
  144. package/plate/esm/shared/index.js +1 -1
  145. package/plate/esm/utils.js +1 -1
  146. package/plate/index-2f466837.d.ts +2 -2
  147. package/plate/modern/Component.responsive.js +1 -1
  148. package/plate/modern/components/base-plate/Component.js +1 -1
  149. package/plate/modern/components/base-plate/index.js +1 -1
  150. package/plate/modern/desktop/Component.desktop.js +1 -1
  151. package/plate/modern/desktop/index.js +1 -1
  152. package/plate/modern/index-2f466837.d.ts +2 -2
  153. package/plate/modern/index.js +1 -1
  154. package/plate/modern/mobile/Component.mobile.js +1 -1
  155. package/plate/modern/mobile/index.js +1 -1
  156. package/plate/modern/shared/index.js +1 -1
  157. package/plate/modern/utils.js +1 -1
  158. package/plate/utils.js +1 -1
  159. package/pure-cell/component.js +1 -1
  160. package/pure-cell/components/addon/component.js +1 -1
  161. package/pure-cell/components/addon/index.d.ts +1 -1
  162. package/pure-cell/components/addon/index.js +1 -1
  163. package/pure-cell/components/amount/component.js +1 -1
  164. package/pure-cell/components/amount/index.d.ts +1 -1
  165. package/pure-cell/components/amount/index.js +1 -1
  166. package/pure-cell/components/amount-title/component.js +1 -1
  167. package/pure-cell/components/amount-title/index.d.ts +1 -1
  168. package/pure-cell/components/amount-title/index.js +1 -1
  169. package/pure-cell/components/category/component.js +1 -1
  170. package/pure-cell/components/category/index.d.ts +1 -1
  171. package/pure-cell/components/category/index.js +1 -1
  172. package/pure-cell/components/content/component.js +1 -1
  173. package/pure-cell/components/content/index.d.ts +1 -1
  174. package/pure-cell/components/content/index.js +1 -1
  175. package/pure-cell/components/footer/component.js +1 -1
  176. package/pure-cell/components/footer/index.d.ts +1 -1
  177. package/pure-cell/components/footer/index.js +1 -1
  178. package/pure-cell/components/footer-button/component.js +1 -1
  179. package/pure-cell/components/footer-button/index.d.ts +1 -1
  180. package/pure-cell/components/footer-button/index.js +1 -1
  181. package/pure-cell/components/footer-text/component.js +1 -1
  182. package/pure-cell/components/footer-text/index.d.ts +1 -1
  183. package/pure-cell/components/footer-text/index.js +1 -1
  184. package/pure-cell/components/graphics/component.js +1 -1
  185. package/pure-cell/components/graphics/index.d.ts +1 -1
  186. package/pure-cell/components/graphics/index.js +1 -1
  187. package/pure-cell/components/main/component.js +1 -1
  188. package/pure-cell/components/main/index.d.ts +1 -1
  189. package/pure-cell/components/main/index.js +1 -1
  190. package/pure-cell/components/text/component.js +1 -1
  191. package/pure-cell/components/text/index.d.ts +1 -1
  192. package/pure-cell/components/text/index.js +1 -1
  193. package/pure-cell/esm/component.js +1 -1
  194. package/pure-cell/esm/components/addon/component.js +1 -1
  195. package/pure-cell/esm/components/addon/index.d.ts +1 -1
  196. package/pure-cell/esm/components/addon/index.js +1 -1
  197. package/pure-cell/esm/components/amount/component.js +1 -1
  198. package/pure-cell/esm/components/amount/index.d.ts +1 -1
  199. package/pure-cell/esm/components/amount/index.js +1 -1
  200. package/pure-cell/esm/components/amount-title/component.js +1 -1
  201. package/pure-cell/esm/components/amount-title/index.d.ts +1 -1
  202. package/pure-cell/esm/components/amount-title/index.js +1 -1
  203. package/pure-cell/esm/components/category/component.js +1 -1
  204. package/pure-cell/esm/components/category/index.d.ts +1 -1
  205. package/pure-cell/esm/components/category/index.js +1 -1
  206. package/pure-cell/esm/components/content/component.js +1 -1
  207. package/pure-cell/esm/components/content/index.d.ts +1 -1
  208. package/pure-cell/esm/components/content/index.js +1 -1
  209. package/pure-cell/esm/components/footer/component.js +1 -1
  210. package/pure-cell/esm/components/footer/index.d.ts +1 -1
  211. package/pure-cell/esm/components/footer/index.js +1 -1
  212. package/pure-cell/esm/components/footer-button/component.js +1 -1
  213. package/pure-cell/esm/components/footer-button/index.d.ts +1 -1
  214. package/pure-cell/esm/components/footer-button/index.js +1 -1
  215. package/pure-cell/esm/components/footer-text/component.js +1 -1
  216. package/pure-cell/esm/components/footer-text/index.d.ts +1 -1
  217. package/pure-cell/esm/components/footer-text/index.js +1 -1
  218. package/pure-cell/esm/components/graphics/component.js +1 -1
  219. package/pure-cell/esm/components/graphics/index.d.ts +1 -1
  220. package/pure-cell/esm/components/graphics/index.js +1 -1
  221. package/pure-cell/esm/components/main/component.js +1 -1
  222. package/pure-cell/esm/components/main/index.d.ts +1 -1
  223. package/pure-cell/esm/components/main/index.js +1 -1
  224. package/pure-cell/esm/components/text/component.js +1 -1
  225. package/pure-cell/esm/components/text/index.d.ts +1 -1
  226. package/pure-cell/esm/components/text/index.js +1 -1
  227. package/pure-cell/esm/index.js +1 -1
  228. package/pure-cell/index.js +1 -1
  229. package/pure-cell/modern/component.js +1 -1
  230. package/pure-cell/modern/components/addon/component.js +1 -1
  231. package/pure-cell/modern/components/addon/index.d.ts +1 -1
  232. package/pure-cell/modern/components/addon/index.js +1 -1
  233. package/pure-cell/modern/components/amount/component.js +1 -1
  234. package/pure-cell/modern/components/amount/index.d.ts +1 -1
  235. package/pure-cell/modern/components/amount/index.js +1 -1
  236. package/pure-cell/modern/components/amount-title/component.js +1 -1
  237. package/pure-cell/modern/components/amount-title/index.d.ts +1 -1
  238. package/pure-cell/modern/components/amount-title/index.js +1 -1
  239. package/pure-cell/modern/components/category/component.js +1 -1
  240. package/pure-cell/modern/components/category/index.d.ts +1 -1
  241. package/pure-cell/modern/components/category/index.js +1 -1
  242. package/pure-cell/modern/components/content/component.js +1 -1
  243. package/pure-cell/modern/components/content/index.d.ts +1 -1
  244. package/pure-cell/modern/components/content/index.js +1 -1
  245. package/pure-cell/modern/components/footer/component.js +1 -1
  246. package/pure-cell/modern/components/footer/index.d.ts +1 -1
  247. package/pure-cell/modern/components/footer/index.js +1 -1
  248. package/pure-cell/modern/components/footer-button/component.js +1 -1
  249. package/pure-cell/modern/components/footer-button/index.d.ts +1 -1
  250. package/pure-cell/modern/components/footer-button/index.js +1 -1
  251. package/pure-cell/modern/components/footer-text/component.js +1 -1
  252. package/pure-cell/modern/components/footer-text/index.d.ts +1 -1
  253. package/pure-cell/modern/components/footer-text/index.js +1 -1
  254. package/pure-cell/modern/components/graphics/component.js +1 -1
  255. package/pure-cell/modern/components/graphics/index.d.ts +1 -1
  256. package/pure-cell/modern/components/graphics/index.js +1 -1
  257. package/pure-cell/modern/components/main/component.js +1 -1
  258. package/pure-cell/modern/components/main/index.d.ts +1 -1
  259. package/pure-cell/modern/components/main/index.js +1 -1
  260. package/pure-cell/modern/components/text/component.js +1 -1
  261. package/pure-cell/modern/components/text/index.d.ts +1 -1
  262. package/pure-cell/modern/components/text/index.js +1 -1
  263. package/pure-cell/modern/index.js +1 -1
  264. package/select/components/base-select/Component.js +14 -14
  265. package/select/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  266. package/select/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  267. package/select/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  268. package/select/components/options-list/Component.js +4 -4
  269. package/select/cssm/components/base-select/Component.js +12 -12
  270. package/select/cssm/components/options-list/Component.js +4 -4
  271. package/select/cssm/typings.d.ts +0 -12
  272. package/select/esm/Component.responsive.js +3 -3
  273. package/select/esm/components/base-select/Component.js +14 -14
  274. package/select/esm/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  275. package/select/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  276. package/select/esm/components/base-select/components/list-mobile/list-mobile.js +1 -1
  277. package/select/esm/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  278. package/select/esm/components/base-select/index.js +2 -2
  279. package/select/esm/components/index.js +2 -2
  280. package/select/esm/components/options-list/Component.js +4 -4
  281. package/select/esm/desktop/Component.desktop.js +2 -2
  282. package/select/esm/desktop/index.js +2 -2
  283. package/select/esm/index.js +3 -3
  284. package/select/esm/mobile/Component.mobile.js +3 -3
  285. package/select/esm/mobile/Component.modal.mobile.js +3 -3
  286. package/select/esm/mobile/index.js +3 -3
  287. package/select/esm/presets/index.js +1 -1
  288. package/select/esm/presets/useSelectWithApply/hook.js +1 -1
  289. package/select/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  290. package/select/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  291. package/select/esm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  292. package/select/esm/shared/index.js +3 -3
  293. package/select/esm/typings.d.ts +0 -12
  294. package/select/mobile/Component.mobile.js +1 -1
  295. package/select/modern/Component.responsive.js +3 -3
  296. package/select/modern/components/base-select/Component.js +4 -4
  297. package/select/modern/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  298. package/select/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  299. package/select/modern/components/base-select/components/list-mobile/list-mobile.js +1 -1
  300. package/select/modern/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  301. package/select/modern/components/base-select/index.js +2 -2
  302. package/select/modern/components/index.js +2 -2
  303. package/select/modern/components/options-list/Component.js +2 -2
  304. package/select/modern/desktop/Component.desktop.js +2 -2
  305. package/select/modern/desktop/index.js +2 -2
  306. package/select/modern/index.js +3 -3
  307. package/select/modern/mobile/Component.mobile.js +3 -3
  308. package/select/modern/mobile/Component.modal.mobile.js +3 -3
  309. package/select/modern/mobile/index.js +3 -3
  310. package/select/modern/presets/index.js +1 -1
  311. package/select/modern/presets/useSelectWithApply/hook.js +1 -1
  312. package/select/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  313. package/select/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  314. package/select/modern/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  315. package/select/modern/shared/index.js +3 -3
  316. package/select/modern/typings.d.ts +0 -12
  317. package/select/presets/index.js +1 -1
  318. package/select/presets/useSelectWithApply/hook.js +1 -1
  319. package/select/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  320. package/select/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  321. package/select/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  322. package/select/shared/index.js +1 -1
  323. package/select/typings.d.ts +0 -12
  324. package/side-panel/components/controls/Component.js +1 -1
  325. package/side-panel/components/footer/Component.js +1 -1
  326. package/side-panel/esm/Component.responsive.js +1 -1
  327. package/side-panel/esm/components/controls/Component.js +1 -1
  328. package/side-panel/esm/components/controls/index.js +1 -1
  329. package/side-panel/esm/components/footer/Component.desktop.js +1 -1
  330. package/side-panel/esm/components/footer/Component.js +1 -1
  331. package/side-panel/esm/components/footer/Component.mobile.js +1 -1
  332. package/side-panel/esm/desktop/Component.desktop.js +1 -1
  333. package/side-panel/esm/desktop/index.js +1 -1
  334. package/side-panel/esm/index.js +1 -1
  335. package/side-panel/esm/mobile/Component.mobile.js +1 -1
  336. package/side-panel/esm/mobile/index.js +1 -1
  337. package/side-panel/modern/Component.responsive.js +1 -1
  338. package/side-panel/modern/components/controls/Component.js +1 -1
  339. package/side-panel/modern/components/controls/index.js +1 -1
  340. package/side-panel/modern/components/footer/Component.desktop.js +1 -1
  341. package/side-panel/modern/components/footer/Component.js +1 -1
  342. package/side-panel/modern/components/footer/Component.mobile.js +1 -1
  343. package/side-panel/modern/desktop/Component.desktop.js +1 -1
  344. package/side-panel/modern/desktop/index.js +1 -1
  345. package/side-panel/modern/index.js +1 -1
  346. package/side-panel/modern/mobile/Component.mobile.js +1 -1
  347. package/side-panel/modern/mobile/index.js +1 -1
  348. package/themes/compiled/mobile-dark-bluetint.css +5 -5
  349. package/toast-plate/components/base-toast-plate/component.js +2 -2
  350. package/toast-plate/components/base-toast-plate/hooks/useDeprecatedBadge.js +1 -1
  351. package/toast-plate/components/base-toast-plate/utils/getBaseToastPlateTestIds.js +2 -2
  352. package/toast-plate/esm/Component.responsive.js +2 -2
  353. package/toast-plate/esm/components/base-toast-plate/component.js +2 -2
  354. package/toast-plate/esm/components/base-toast-plate/hooks/useDeprecatedBadge.js +1 -1
  355. package/toast-plate/esm/components/base-toast-plate/index.js +2 -2
  356. package/toast-plate/esm/components/base-toast-plate/utils/getBaseToastPlateTestIds.js +2 -2
  357. package/toast-plate/esm/desktop/Component.desktop.js +2 -2
  358. package/toast-plate/esm/desktop/index.js +2 -2
  359. package/toast-plate/esm/index-2f466837.d.ts +2 -2
  360. package/toast-plate/esm/index.js +2 -2
  361. package/toast-plate/esm/mobile/Component.mobile.js +2 -2
  362. package/toast-plate/esm/mobile/index.js +2 -2
  363. package/toast-plate/index-2f466837.d.ts +2 -2
  364. package/toast-plate/modern/Component.responsive.js +2 -2
  365. package/toast-plate/modern/components/base-toast-plate/component.js +2 -2
  366. package/toast-plate/modern/components/base-toast-plate/hooks/useDeprecatedBadge.js +1 -1
  367. package/toast-plate/modern/components/base-toast-plate/index.js +2 -2
  368. package/toast-plate/modern/components/base-toast-plate/utils/getBaseToastPlateTestIds.js +2 -2
  369. package/toast-plate/modern/desktop/Component.desktop.js +2 -2
  370. package/toast-plate/modern/desktop/index.js +2 -2
  371. package/toast-plate/modern/index-2f466837.d.ts +2 -2
  372. package/toast-plate/modern/index.js +2 -2
  373. package/toast-plate/modern/mobile/Component.mobile.js +2 -2
  374. package/toast-plate/modern/mobile/index.js +2 -2
  375. package/typography/esm/component.js +2 -2
  376. package/typography/esm/index.js +2 -2
  377. package/typography/esm/text/component.js +1 -1
  378. package/typography/esm/text/index.js +1 -1
  379. package/typography/esm/title/component.js +1 -1
  380. package/typography/esm/title/index.js +2 -2
  381. package/typography/esm/title-mobile/component.js +2 -2
  382. package/typography/esm/title-mobile/index.js +2 -2
  383. package/typography/esm/title-responsive/component.js +2 -2
  384. package/typography/esm/title-responsive/index.js +2 -2
  385. package/typography/modern/component.js +2 -2
  386. package/typography/modern/index.js +2 -2
  387. package/typography/modern/text/component.js +1 -1
  388. package/typography/modern/text/index.js +1 -1
  389. package/typography/modern/title/component.js +1 -1
  390. package/typography/modern/title/index.js +2 -2
  391. package/typography/modern/title-mobile/component.js +2 -2
  392. package/typography/modern/title-mobile/index.js +2 -2
  393. package/typography/modern/title-responsive/component.js +2 -2
  394. package/typography/modern/title-responsive/index.js +2 -2
  395. package/typography/text/component.js +1 -1
  396. package/typography/title/component.js +1 -1
  397. package/typography/title/index.js +1 -1
  398. package/typography/title-mobile/component.js +1 -1
  399. package/typography/title-responsive/component.js +1 -1
  400. package/universal-date-input/Component-ee245301.d.ts +26 -0
  401. package/universal-date-input/cssm/Component-ee245301.d.ts +26 -0
  402. package/universal-date-input/cssm/index-5712fce2.d.ts +16 -202
  403. package/universal-date-input/cssm/index-ee245301.d.ts +180 -0
  404. package/universal-date-input/esm/Component-ee245301.d.ts +26 -0
  405. package/universal-date-input/esm/index-5712fce2.d.ts +16 -202
  406. package/universal-date-input/esm/index-ee245301.d.ts +180 -0
  407. package/universal-date-input/index-5712fce2.d.ts +16 -202
  408. package/universal-date-input/index-ee245301.d.ts +180 -0
  409. package/universal-date-input/modern/Component-ee245301.d.ts +26 -0
  410. package/universal-date-input/modern/index-5712fce2.d.ts +16 -202
  411. package/universal-date-input/modern/index-ee245301.d.ts +180 -0
  412. package/picker-button/Component-6563e05c.d.ts +0 -5
  413. package/picker-button/cssm/Component-6563e05c.d.ts +0 -5
  414. package/picker-button/esm/Component-6563e05c.d.ts +0 -5
  415. package/picker-button/modern/Component-6563e05c.d.ts +0 -5
  416. /package/gallery/{buttons-9c44ac86.d.ts → buttons-e7e85fbd.d.ts} +0 -0
  417. /package/gallery/{buttons-9c44ac86.js → buttons-e7e85fbd.js} +0 -0
  418. /package/gallery/esm/{buttons-9b94693c.d.ts → buttons-31154ee0.d.ts} +0 -0
  419. /package/gallery/esm/{buttons-9b94693c.js → buttons-31154ee0.js} +0 -0
  420. /package/gallery/esm/{slide-5405aac6.d.ts → slide-3a81fe9b.d.ts} +0 -0
  421. /package/gallery/esm/{slide-5405aac6.js → slide-3a81fe9b.js} +0 -0
  422. /package/gallery/modern/{buttons-d0cf70a8.d.ts → buttons-f48cd370.d.ts} +0 -0
  423. /package/gallery/modern/{buttons-d0cf70a8.js → buttons-f48cd370.js} +0 -0
  424. /package/gallery/modern/{slide-6f8df05e.d.ts → slide-300dada8.d.ts} +0 -0
  425. /package/gallery/modern/{slide-6f8df05e.js → slide-300dada8.js} +0 -0
  426. /package/gallery/{slide-70439402.d.ts → slide-fe937849.d.ts} +0 -0
  427. /package/gallery/{slide-70439402.js → slide-fe937849.js} +0 -0
  428. /package/plate/{PortalContext-fa01f35c.d.ts → PortalContext-7660408e.d.ts} +0 -0
  429. /package/plate/{PortalContext-fa01f35c.js → PortalContext-7660408e.js} +0 -0
  430. /package/plate/esm/{PortalContext-68e159b4.d.ts → PortalContext-ecb78253.d.ts} +0 -0
  431. /package/plate/esm/{PortalContext-68e159b4.js → PortalContext-ecb78253.js} +0 -0
  432. /package/plate/modern/{PortalContext-6b50db51.d.ts → PortalContext-1187e777.d.ts} +0 -0
  433. /package/plate/modern/{PortalContext-6b50db51.js → PortalContext-1187e777.js} +0 -0
  434. /package/pure-cell/{component-d9b4960f.d.ts → component-8e5a4272.d.ts} +0 -0
  435. /package/pure-cell/{component-d9b4960f.js → component-8e5a4272.js} +0 -0
  436. /package/pure-cell/esm/{component-fc54c265.d.ts → component-b802ac98.d.ts} +0 -0
  437. /package/pure-cell/esm/{component-fc54c265.js → component-b802ac98.js} +0 -0
  438. /package/pure-cell/modern/{component-9f2ec12c.d.ts → component-5fcbafb6.d.ts} +0 -0
  439. /package/pure-cell/modern/{component-9f2ec12c.js → component-5fcbafb6.js} +0 -0
  440. /package/select/esm/{hook-ea6af842.d.ts → hook-b2de24a8.d.ts} +0 -0
  441. /package/select/esm/{hook-ea6af842.js → hook-b2de24a8.js} +0 -0
  442. /package/select/esm/{list-popover-desktop-ae0d4030.d.ts → list-popover-desktop-05da245e.d.ts} +0 -0
  443. /package/select/esm/{list-popover-desktop-ae0d4030.js → list-popover-desktop-05da245e.js} +0 -0
  444. /package/select/esm/{mobile.module-549309dc.js → mobile.module-463c9a08.js} +0 -0
  445. /package/select/{hook-d36891be.d.ts → hook-8c4a3c4b.d.ts} +0 -0
  446. /package/select/{hook-d36891be.js → hook-8c4a3c4b.js} +0 -0
  447. /package/select/{list-popover-desktop-ee1e436c.d.ts → list-popover-desktop-0191d188.d.ts} +0 -0
  448. /package/select/{list-popover-desktop-ee1e436c.js → list-popover-desktop-0191d188.js} +0 -0
  449. /package/select/{mobile.module-02f8a33d.js → mobile.module-34ed4d36.js} +0 -0
  450. /package/select/modern/{hook-c1d1e364.d.ts → hook-f6ee5904.d.ts} +0 -0
  451. /package/select/modern/{hook-c1d1e364.js → hook-f6ee5904.js} +0 -0
  452. /package/select/modern/{list-popover-desktop-feab4a2f.d.ts → list-popover-desktop-dde86217.d.ts} +0 -0
  453. /package/select/modern/{list-popover-desktop-feab4a2f.js → list-popover-desktop-dde86217.js} +0 -0
  454. /package/select/modern/{mobile.module-9fee11c2.js → mobile.module-4026b4ce.js} +0 -0
  455. /package/side-panel/esm/{layout.module-15c30846.js → layout.module-57debcbd.js} +0 -0
  456. /package/side-panel/{layout.module-f68730e9.js → layout.module-11cb84d7.js} +0 -0
  457. /package/side-panel/modern/{layout.module-546000a4.js → layout.module-436b690f.js} +0 -0
  458. /package/toast-plate/{PortalContext-5870903f.d.ts → PortalContext-0d20ef98.d.ts} +0 -0
  459. /package/toast-plate/{PortalContext-5870903f.js → PortalContext-0d20ef98.js} +0 -0
  460. /package/toast-plate/esm/{PortalContext-87b75f64.d.ts → PortalContext-0baec972.d.ts} +0 -0
  461. /package/toast-plate/esm/{PortalContext-87b75f64.js → PortalContext-0baec972.js} +0 -0
  462. /package/toast-plate/esm/{getDataTestId-036beec3.d.ts → getDataTestId-7b6aa0a9.d.ts} +0 -0
  463. /package/toast-plate/esm/{getDataTestId-036beec3.js → getDataTestId-7b6aa0a9.js} +0 -0
  464. /package/toast-plate/{getDataTestId-68f38cd2.d.ts → getDataTestId-d6ea897e.d.ts} +0 -0
  465. /package/toast-plate/{getDataTestId-68f38cd2.js → getDataTestId-d6ea897e.js} +0 -0
  466. /package/toast-plate/modern/{PortalContext-4dcb459f.d.ts → PortalContext-3c15badc.d.ts} +0 -0
  467. /package/toast-plate/modern/{PortalContext-4dcb459f.js → PortalContext-3c15badc.js} +0 -0
  468. /package/toast-plate/modern/{getDataTestId-778a5839.d.ts → getDataTestId-d44651c2.d.ts} +0 -0
  469. /package/toast-plate/modern/{getDataTestId-778a5839.js → getDataTestId-d44651c2.js} +0 -0
  470. /package/typography/{colors.module-db7937b7.js → colors.module-78983cf7.js} +0 -0
  471. /package/typography/{common.module-400d3b44.js → common.module-e36e45ad.js} +0 -0
  472. /package/typography/esm/{colors.module-6187dd90.js → colors.module-bbf7489b.js} +0 -0
  473. /package/typography/esm/{common.module-e6ab81d6.js → common.module-26e271a2.js} +0 -0
  474. /package/typography/modern/{colors.module-60a8eceb.js → colors.module-a3636f20.js} +0 -0
  475. /package/typography/modern/{common.module-2115a63b.js → common.module-7f7bb8d3.js} +0 -0
@@ -7,12 +7,14 @@ import 'react-virtuoso';
7
7
  import '@juggle/resize-observer';
8
8
  import 'classnames';
9
9
  import 'date-fns/endOfDay';
10
+ import 'date-fns/isAfter';
10
11
  import 'date-fns/isSameMonth';
11
12
  import 'date-fns/startOfDay';
12
13
  import 'date-fns/startOfMonth';
13
14
  import '../../button/modern/mobile';
14
15
  import '../../modal/modern/mobile';
15
16
  import '../../shared/modern';
17
+ import '../../typography/modern';
16
18
  import './useCalendar.js';
17
19
  import 'date-fns/addMonths';
18
20
  import 'date-fns/addYears';
@@ -28,7 +30,6 @@ import 'date-fns/eachYearOfInterval';
28
30
  import 'date-fns/endOfWeek';
29
31
  import 'date-fns/endOfYear';
30
32
  import 'date-fns/format';
31
- import 'date-fns/isAfter';
32
33
  import 'date-fns/isBefore';
33
34
  import 'date-fns/lastDayOfMonth';
34
35
  import 'date-fns/max';
@@ -44,6 +45,7 @@ import 'date-fns/differenceInDays';
44
45
  import '@alfalab/hooks';
45
46
  import './components/days-table/Component.js';
46
47
  import 'react-transition-group';
48
+ import 'date-fns';
47
49
  import 'date-fns/isEqual';
48
50
  import 'date-fns/isLastDayOfMonth';
49
51
  import 'date-fns/isToday';
@@ -1,7 +1,22 @@
1
1
  /// <reference types="react" />
2
2
  import React from 'react';
3
- import { CalendarContentProps } from "./typings";
4
- declare const CalendarMonthOnlyView: ({ value, mode, rangeBehavior, month: monthTimestamp, minDate: minDateTimestamp, maxDate: maxDateTimestamp, defaultMonth: defaultMonthTimestamp, offDays, events, holidays, onChange, onMonthTitleClick, selectedFrom, selectedTo, yearsAmount, dayAddons, shape, scrollableContainer, }: CalendarContentProps) => React.JSX.Element;
3
+ import { ResetCurrentClickedMonth } from "./typings";
4
+ declare const CalendarMonthOnlyView: ({ value, mode, rangeBehavior, month: monthTimestamp, minDate: minDateTimestamp, maxDate: maxDateTimestamp, defaultMonth: defaultMonthTimestamp, offDays, events, holidays, onChange, onMonthTitleClick, selectedFrom, selectedTo, yearsAmount, dayAddons, shape, scrollableContainer, clickableMonth, resetCurrentClickedMonth, }: {
5
+ onMonthTitleClick?: ((event: React.MouseEvent<HTMLSpanElement, MouseEvent>) => void) | undefined;
6
+ yearsAmount?: number | undefined;
7
+ scrollableContainer?: HTMLElement | undefined;
8
+ } & Omit<import("../../desktop/index").CalendarDesktopProps, ("className" | "dataTestId" | "hasHeader" | "defaultView" | "selectorView" | "rangeComplete" | "onMonthChange" | "onYearClick" | "onPeriodClick" | "responsive" | "showCurrentYearSelector") | ("contentClassName" | "headerClassName")> & {
9
+ /**
10
+ * FIXME нужно сделать для компонента CalendarMonthOnlyView отдельный тип пропсов, т.к. тип CalendarContentProps intersection для типа CalendarMobileProps
11
+ * FIXME это приводит к тому, что в доку сторибука попадают типы пропсов, которые нужны для работы компонента CalendarMonthOnlyView, но не нужны для компонента CalendarMobile
12
+ * TODO Вынести компонент CalendarMonthOnlyView в отдельный файл
13
+ */
14
+ clickableMonth?: boolean | undefined;
15
+ /**
16
+ * Ref для сброса заголовка clickableMonth
17
+ */
18
+ resetCurrentClickedMonth?: React.RefObject<ResetCurrentClickedMonth> | undefined;
19
+ }) => React.JSX.Element;
5
20
  declare const CalendarMonthOnlyViewHeader: () => React.JSX.Element;
6
21
  declare const CalendarMobile: React.ForwardRefExoticComponent<{
7
22
  title?: string | undefined;
@@ -10,6 +25,7 @@ declare const CalendarMobile: React.ForwardRefExoticComponent<{
10
25
  allowSelectionFromEmptyRange?: boolean | undefined;
11
26
  hasHeader?: boolean | undefined;
12
27
  onApply?: (() => void) | undefined;
28
+ clickableMonth?: boolean | undefined;
13
29
  } & {
14
30
  onMonthTitleClick?: ((event: React.MouseEvent<HTMLSpanElement, MouseEvent>) => void) | undefined;
15
31
  yearsAmount?: number | undefined;
@@ -1,15 +1,17 @@
1
- import React, { forwardRef, useState, useMemo, useRef } from 'react';
1
+ import React, { forwardRef, useState, useRef, useMemo, useImperativeHandle } from 'react';
2
2
  import mergeRefs from 'react-merge-refs';
3
3
  import { Virtuoso } from 'react-virtuoso';
4
4
  import { ResizeObserver } from '@juggle/resize-observer';
5
5
  import cn from 'classnames';
6
6
  import endOfDay from 'date-fns/endOfDay';
7
+ import isAfter from 'date-fns/isAfter';
7
8
  import isSameMonth from 'date-fns/isSameMonth';
8
9
  import startOfDay from 'date-fns/startOfDay';
9
10
  import startOfMonth from 'date-fns/startOfMonth';
10
11
  import { ButtonMobile } from '../../../../button/modern/mobile';
11
12
  import { ModalMobile } from '../../../../modal/modern/mobile';
12
13
  import { getDataTestId } from '../../../../shared/modern';
14
+ import { Typography } from '../../../../typography/modern';
13
15
  import { CalendarDesktop } from '../../desktop/Component.desktop.js';
14
16
  import { useCalendar } from '../../useCalendar.js';
15
17
  import { useRange } from '../../useRange.js';
@@ -55,7 +57,6 @@ import 'date-fns/eachDayOfInterval';
55
57
  import 'date-fns/eachMonthOfInterval';
56
58
  import 'date-fns/eachYearOfInterval';
57
59
  import 'date-fns/format';
58
- import 'date-fns/isAfter';
59
60
  import 'date-fns/isBefore';
60
61
  import 'date-fns/lastDayOfMonth';
61
62
  import 'date-fns/max';
@@ -64,6 +65,7 @@ import 'date-fns/parse';
64
65
  import 'date-fns/subDays';
65
66
  import 'date-fns/subMonths';
66
67
  import 'react-transition-group';
68
+ import 'date-fns';
67
69
  import 'date-fns/isEqual';
68
70
  import 'date-fns/isLastDayOfMonth';
69
71
  import 'date-fns/isWithinInterval';
@@ -71,7 +73,7 @@ import 'date-fns/isWithinInterval';
71
73
  const backdropTransitionStyles = {"appear":"calendar__appear_y4uhk","enter":"calendar__enter_y4uhk","appearActive":"calendar__appearActive_y4uhk","enterActive":"calendar__enterActive_y4uhk","appearDone":"calendar__appearDone_y4uhk","enterDone":"calendar__enterDone_y4uhk","exit":"calendar__exit_y4uhk","exitActive":"calendar__exitActive_y4uhk","exitDone":"calendar__exitDone_y4uhk"};
72
74
  require('./backdrop-transitions.css');
73
75
 
74
- const styles = {"wrapper":"calendar__wrapper_ocx7c","withZIndex":"calendar__withZIndex_ocx7c","calendar":"calendar__calendar_ocx7c","dayNames":"calendar__dayNames_ocx7c","withHeader":"calendar__withHeader_ocx7c","month":"calendar__month_ocx7c","daysTable":"calendar__daysTable_ocx7c","dayName":"calendar__dayName_ocx7c","virtuoso":"calendar__virtuoso_ocx7c","contentModal":"calendar__contentModal_ocx7c","content":"calendar__content_ocx7c"};
76
+ const styles = {"wrapper":"calendar__wrapper_ocx7c","withZIndex":"calendar__withZIndex_ocx7c","calendar":"calendar__calendar_ocx7c","dayNames":"calendar__dayNames_ocx7c","withHeader":"calendar__withHeader_ocx7c","month":"calendar__month_ocx7c","clickableMonth":"calendar__clickableMonth_ocx7c","rectangular":"calendar__rectangular_ocx7c","active":"calendar__active_ocx7c","monthTitle":"calendar__monthTitle_ocx7c","disabled":"calendar__disabled_ocx7c","daysTable":"calendar__daysTable_ocx7c","dayName":"calendar__dayName_ocx7c","virtuoso":"calendar__virtuoso_ocx7c","contentModal":"calendar__contentModal_ocx7c","content":"calendar__content_ocx7c"};
75
77
  require('./index.css');
76
78
 
77
79
  const transitionStyles = {"appear":"calendar__appear_kl8p5","enter":"calendar__enter_kl8p5","appearActive":"calendar__appearActive_kl8p5","enterActive":"calendar__enterActive_kl8p5","exit":"calendar__exit_kl8p5","exitActive":"calendar__exitActive_kl8p5","exitDone":"calendar__exitDone_kl8p5"};
@@ -81,7 +83,8 @@ require('./transitions.css');
81
83
  if (typeof window !== 'undefined' && !window.ResizeObserver) {
82
84
  window.ResizeObserver = ResizeObserver;
83
85
  }
84
- const CalendarMonthOnlyView = ({ value, mode = 'single', rangeBehavior = 'clarification', month: monthTimestamp, minDate: minDateTimestamp, maxDate: maxDateTimestamp, defaultMonth: defaultMonthTimestamp, offDays, events, holidays, onChange, onMonthTitleClick, selectedFrom, selectedTo, yearsAmount = 3, dayAddons, shape = 'rounded', scrollableContainer, }) => {
86
+ const CalendarMonthOnlyView = ({ value, mode = 'single', rangeBehavior = 'clarification', month: monthTimestamp, minDate: minDateTimestamp, maxDate: maxDateTimestamp, defaultMonth: defaultMonthTimestamp, offDays, events, holidays, onChange, onMonthTitleClick, selectedFrom, selectedTo, yearsAmount = 3, dayAddons, shape = 'rounded', scrollableContainer, clickableMonth, resetCurrentClickedMonth, }) => {
87
+ const [activeMonthLabel, setActiveMonthLabel] = useState('');
85
88
  const range = useRange({
86
89
  mode,
87
90
  value,
@@ -92,7 +95,13 @@ const CalendarMonthOnlyView = ({ value, mode = 'single', rangeBehavior = 'clarif
92
95
  });
93
96
  const month = useMemo(() => (monthTimestamp ? new Date(monthTimestamp) : undefined), [monthTimestamp]);
94
97
  const minDate = useMemo(() => (minDateTimestamp ? startOfDay(minDateTimestamp) : undefined), [minDateTimestamp]);
95
- const maxDate = useMemo(() => (maxDateTimestamp ? endOfDay(maxDateTimestamp) : undefined), [maxDateTimestamp]);
98
+ const maxDate = useMemo(() => {
99
+ // блокируем последующие дни после текущего
100
+ if (clickableMonth && !maxDateTimestamp) {
101
+ return new Date();
102
+ }
103
+ return maxDateTimestamp ? endOfDay(maxDateTimestamp) : undefined;
104
+ }, [maxDateTimestamp, clickableMonth]);
96
105
  const selected = useMemo(() => (range.value ? new Date(range.value) : undefined), [range.value]);
97
106
  const startingDate = useRef(range.value);
98
107
  const defaultMonth = useMemo(() => startOfMonth(selected ||
@@ -108,6 +117,7 @@ const CalendarMonthOnlyView = ({ value, mode = 'single', rangeBehavior = 'clarif
108
117
  events,
109
118
  onChange: range.onChange,
110
119
  dayAddons,
120
+ ...(clickableMonth && { resetCurrentClickedMonth }),
111
121
  });
112
122
  const activeMonths = useMemo(() => {
113
123
  const eventsMap = dateArrayToHashTable(events || []);
@@ -146,21 +156,54 @@ const CalendarMonthOnlyView = ({ value, mode = 'single', rangeBehavior = 'clarif
146
156
  const date = range.value || range.selectedFrom || activeMonth.getTime() || Date.now();
147
157
  return activeMonths.findIndex((m) => isSameMonth(date, m.date));
148
158
  }, [range.value, range.selectedFrom, activeMonth, activeMonths]);
149
- const renderMonth = (index) => (React.createElement("div", { className: styles.daysTable, id: `month-${index}` },
150
- onMonthTitleClick ? (
151
- /* eslint-disable-next-line jsx-a11y/click-events-have-key-events */
152
- React.createElement("span", { className: styles.month, onClick: onMonthTitleClick, tabIndex: 0, role: 'button' }, activeMonths[index].title)) : (React.createElement("span", { className: styles.month },
153
- " ",
154
- activeMonths[index].title,
155
- " ")),
156
- React.createElement(DaysTable, { withTransition: false, weeks: activeMonths[index].weeks, activeMonth: activeMonth, selectedFrom: range.selectedFrom, selectedTo: range.selectedTo, getDayProps: getDayProps, highlighted: highlighted, hasHeader: false, responsive: true, shape: shape })));
159
+ const handleClickMonthLabel = (index) => {
160
+ if (activeMonths[index].title !== activeMonthLabel || activeMonthLabel === '') {
161
+ setActiveMonthLabel(activeMonths[index].title);
162
+ }
163
+ else {
164
+ setActiveMonthLabel('');
165
+ if (onChange) {
166
+ onChange();
167
+ }
168
+ }
169
+ };
170
+ const getMonthTitle = (index, isClickableMonth) => {
171
+ if (isClickableMonth) {
172
+ return (React.createElement(Typography.Text, { className: styles.monthTitle, view: 'primary-small', color: 'primary' }, activeMonths[index].title));
173
+ }
174
+ return `\u00A0${activeMonths[index].title}\u00A0`;
175
+ };
176
+ const renderMonth = (index) => {
177
+ const monthClicked = activeMonthLabel === activeMonths[index].title;
178
+ const isAfterDate = isAfter(activeMonths[index].date, activeMonth);
179
+ return (React.createElement("div", { className: styles.daysTable, id: `month-${index}` },
180
+ onMonthTitleClick ? (
181
+ /* eslint-disable-next-line jsx-a11y/click-events-have-key-events */
182
+ React.createElement("span", { className: styles.month, onClick: onMonthTitleClick, tabIndex: 0, role: 'button' }, activeMonths[index].title)) : (
183
+ // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions
184
+ React.createElement("span", { className: cn(styles.month, {
185
+ ...(clickableMonth && {
186
+ [styles.clickableMonth]: true,
187
+ [styles.rectangular]: shape === 'rectangular',
188
+ [styles.active]: monthClicked,
189
+ [styles.disabled]: isAfterDate,
190
+ }),
191
+ }), ...(clickableMonth && { onClick: () => handleClickMonthLabel(index) }) }, getMonthTitle(index, clickableMonth))),
192
+ React.createElement(DaysTable, { withTransition: false, weeks: activeMonths[index].weeks, activeMonth: activeMonth, selectedFrom: range.selectedFrom, selectedTo: range.selectedTo, getDayProps: getDayProps, highlighted: highlighted, hasHeader: false, responsive: true, shape: shape, monthClicked: monthClicked, onChange: onChange })));
193
+ };
194
+ useImperativeHandle(resetCurrentClickedMonth, () => ({
195
+ resetCurrentClickedMonth: () => {
196
+ setActiveMonthLabel('');
197
+ },
198
+ }));
157
199
  return (React.createElement(Virtuoso, { totalCount: activeMonths.length, itemContent: renderMonth, initialTopMostItemIndex: { index: initialMonthIndex ?? 0, align: 'center' }, increaseViewportBy: 500, itemSize: (el) => el.getBoundingClientRect().height + 32, customScrollParent: scrollableContainer, useWindowScroll: true, className: styles.virtuoso }));
158
200
  };
159
201
  const CalendarMonthOnlyViewHeader = () => (React.createElement("table", { className: styles.dayNames },
160
202
  React.createElement("thead", null,
161
203
  React.createElement("tr", null, WEEKDAYS.map((dayName) => (React.createElement("th", { className: styles.dayName, key: dayName }, dayName)))))));
162
- const CalendarMobile = forwardRef(({ hasHeader = true, allowSelectionFromEmptyRange = false, className, defaultView = 'days', selectorView = 'full', value, selectedFrom, selectedTo, onChange, onMonthTitleClick, dataTestId, open, onClose, title = 'Календарь', yearsAmount = 3, onApply, ...restProps }, ref) => {
204
+ const CalendarMobile = forwardRef(({ hasHeader = true, allowSelectionFromEmptyRange = false, className, defaultView = 'days', selectorView = 'full', value, selectedFrom, selectedTo, onChange, onMonthTitleClick, dataTestId, open, onClose, title = 'Календарь', yearsAmount = 3, onApply, clickableMonth, ...restProps }, ref) => {
163
205
  const [modalRef, setModalRef] = useState();
206
+ const resetCurrentClickedMonth = useRef(null);
164
207
  const monthOnlyView = selectorView === 'month-only';
165
208
  const handleClose = () => {
166
209
  if (onClose)
@@ -173,6 +216,7 @@ const CalendarMobile = forwardRef(({ hasHeader = true, allowSelectionFromEmptyRa
173
216
  const handleClear = () => {
174
217
  if (onChange)
175
218
  onChange();
219
+ resetCurrentClickedMonth?.current?.resetCurrentClickedMonth();
176
220
  };
177
221
  const renderDayNames = () => (monthOnlyView ? React.createElement(CalendarMonthOnlyViewHeader, null) : null);
178
222
  const renderContent = () => {
@@ -185,7 +229,7 @@ const CalendarMobile = forwardRef(({ hasHeader = true, allowSelectionFromEmptyRa
185
229
  selectedTo,
186
230
  };
187
231
  if (monthOnlyView) {
188
- return (React.createElement(CalendarMonthOnlyView, { yearsAmount: yearsAmount, scrollableContainer: modalRef, onMonthTitleClick: onMonthTitleClick, ...commonProps, ...restProps }));
232
+ return (React.createElement(CalendarMonthOnlyView, { yearsAmount: yearsAmount, scrollableContainer: modalRef, onMonthTitleClick: onMonthTitleClick, clickableMonth: clickableMonth, resetCurrentClickedMonth: resetCurrentClickedMonth, ...commonProps, ...restProps }));
189
233
  }
190
234
  return (React.createElement(CalendarDesktop, { responsive: true, className: cn(className, styles.calendar), contentClassName: styles.content, dataTestId: getDataTestId(dataTestId, 'mobile'), ...commonProps, ...restProps }));
191
235
  };
@@ -201,7 +245,11 @@ const CalendarMobile = forwardRef(({ hasHeader = true, allowSelectionFromEmptyRa
201
245
  React.createElement(ButtonMobile, { view: 'secondary', size: 'm', block: true, onClick: handleClear, dataTestId: getDataTestId(dataTestId, 'btn-reset') }, "\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C"),
202
246
  React.createElement(ButtonMobile, { view: 'primary', size: 'm', block: true, onClick: handleApply, disabled: selectButtonDisabled, dataTestId: getDataTestId(dataTestId, 'btn-apply') }, "\u0412\u044B\u0431\u0440\u0430\u0442\u044C")));
203
247
  }
204
- if (value) {
248
+ /**
249
+ * value может быть числом и объектом, для текущего кейса проверяем на typeof number
250
+ * иначе может приводить к багу, когда выводится кнопка "Выбрать" для дефолтного значения календаря
251
+ */
252
+ if (value && typeof value === 'number') {
205
253
  return (React.createElement(ButtonMobile, { view: 'primary', size: 'm', block: true, onClick: handleApply, dataTestId: getDataTestId(dataTestId, 'btn-apply') }, "\u0412\u044B\u0431\u0440\u0430\u0442\u044C"));
206
254
  }
207
255
  return (React.createElement(ButtonMobile, { view: 'secondary', size: 'm', block: true, onClick: handleClose, dataTestId: getDataTestId(dataTestId, 'btn-reset') }, "\u041E\u0442\u043C\u0435\u043D\u0430"));
@@ -1,10 +1,14 @@
1
1
  /* hash: 2uyon */
2
2
  :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
3
  } /* deprecated */ :root {
4
+ --color-light-accent-secondary: #212124;
4
5
  --color-light-modal-bg-primary: #fff;
5
6
  --color-light-neutral-300: #e7e8eb;
7
+ --color-light-neutral-translucent-100: rgba(38, 55, 88, 0.06);
6
8
  --color-light-text-primary: rgba(3, 3, 6, 0.88);
7
- --color-light-text-secondary: rgba(4, 4, 19, 0.55); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
9
+ --color-light-text-primary-inverted: rgba(255, 255, 255, 0.94);
10
+ --color-light-text-secondary: rgba(4, 4, 19, 0.55);
11
+ --color-light-text-tertiary: rgba(5, 8, 29, 0.38); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
8
12
  } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
9
13
  } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
10
14
  } :root {
@@ -14,7 +18,8 @@
14
18
  /* Up */
15
19
 
16
20
  /* Hard up */
17
- } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
21
+ } :root { /* deprecated */ /* deprecated */ /* deprecated */
22
+ --border-radius-l: 12px; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
18
23
 
19
24
  /* новые значения, используйте их */
20
25
  } :root { /* deprecated */ /* deprecated */
@@ -88,8 +93,25 @@
88
93
  letter-spacing: 1.25px;
89
94
  text-transform: uppercase;
90
95
  color: var(--color-light-text-primary);
91
- margin-bottom: var(--gap-xs);
92
- } .calendar__daysTable_ocx7c {
96
+ margin-bottom: var(--gap-xs)
97
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c {
98
+ padding: 10px var(--gap-m);
99
+ align-self: flex-start;
100
+ border-radius: 999px;
101
+ background-color: var(--color-light-neutral-translucent-100);
102
+ cursor: pointer;
103
+ text-transform: unset
104
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c.calendar__rectangular_ocx7c {
105
+ border-radius: var(--border-radius-l);
106
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c.calendar__active_ocx7c {
107
+ background-color: var(--color-light-accent-secondary)
108
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c.calendar__active_ocx7c .calendar__monthTitle_ocx7c {
109
+ color: var(--color-light-text-primary-inverted);
110
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c.calendar__disabled_ocx7c {
111
+ pointer-events: none
112
+ } .calendar__month_ocx7c.calendar__clickableMonth_ocx7c.calendar__disabled_ocx7c .calendar__monthTitle_ocx7c {
113
+ color: var(--color-light-text-tertiary);
114
+ } .calendar__daysTable_ocx7c {
93
115
  display: flex;
94
116
  flex-direction: column;
95
117
  margin-top: var(--gap-2xl);
@@ -5,16 +5,19 @@ import 'react-virtuoso';
5
5
  import '@juggle/resize-observer';
6
6
  import 'classnames';
7
7
  import 'date-fns/endOfDay';
8
+ import 'date-fns/isAfter';
8
9
  import 'date-fns/isSameMonth';
9
10
  import 'date-fns/startOfDay';
10
11
  import 'date-fns/startOfMonth';
11
12
  import '../../../../button/modern/mobile';
12
13
  import '../../../../modal/modern/mobile';
13
14
  import '../../../../shared/modern';
15
+ import '../../../../typography/modern';
14
16
  import '../../desktop/Component.desktop.js';
15
17
  import '@alfalab/hooks';
16
18
  import '../days-table/Component.js';
17
19
  import 'react-transition-group';
20
+ import 'date-fns';
18
21
  import 'date-fns/isEqual';
19
22
  import 'date-fns/isLastDayOfMonth';
20
23
  import 'date-fns/isSameDay';
@@ -30,7 +33,6 @@ import 'date-fns/eachYearOfInterval';
30
33
  import 'date-fns/endOfWeek';
31
34
  import 'date-fns/endOfYear';
32
35
  import 'date-fns/format';
33
- import 'date-fns/isAfter';
34
36
  import 'date-fns/isBefore';
35
37
  import 'date-fns/lastDayOfMonth';
36
38
  import 'date-fns/max';
@@ -3,6 +3,9 @@ import React from 'react';
3
3
  import { CalendarDesktopProps } from "../../desktop/index";
4
4
  type OmittedCalendarProps = 'headerClassName' | 'contentClassName';
5
5
  type OmittedCalendarContentProps = 'className' | 'defaultView' | 'selectorView' | 'rangeComplete' | 'onMonthChange' | 'onYearClick' | 'onPeriodClick' | 'dataTestId' | 'hasHeader' | 'responsive' | 'showCurrentYearSelector';
6
+ type ResetCurrentClickedMonth = {
7
+ resetCurrentClickedMonth: () => void;
8
+ };
6
9
  type CalendarContentProps = {
7
10
  /**
8
11
  * Обработчик клика на название месяца в мобильном календаре
@@ -42,5 +45,9 @@ type CalendarMobileProps = {
42
45
  * Обработчик клика на кнопку выбрать
43
46
  */
44
47
  onApply?: () => void;
48
+ /**
49
+ * При клике на месяц будут выбраны все доступные дни месяца
50
+ */
51
+ clickableMonth?: boolean;
45
52
  } & CalendarContentProps & Pick<CalendarDesktopProps, OmittedCalendarContentProps>;
46
- export { CalendarContentProps, CalendarMobileProps };
53
+ export { ResetCurrentClickedMonth, CalendarContentProps, CalendarMobileProps };
@@ -54,6 +54,14 @@ type DaysTableProps = {
54
54
  * Рендерит компонент, обернутый в Transition
55
55
  */
56
56
  withTransition?: boolean;
57
+ /**
58
+ * При клике на месяц будут выбраны все доступные дни месяца
59
+ */
60
+ monthClicked?: boolean;
61
+ /**
62
+ * Обработчик выбора даты
63
+ */
64
+ onChange?: (date?: number, dateTo?: number) => void;
57
65
  };
58
66
  declare const DaysTable: FC<DaysTableProps>;
59
67
  export { DaysTableProps, DaysTable };
@@ -1,6 +1,7 @@
1
- import React, { useRef, useCallback } from 'react';
1
+ import React, { useRef, useCallback, useEffect } from 'react';
2
2
  import { TransitionGroup, CSSTransition } from 'react-transition-group';
3
3
  import cn from 'classnames';
4
+ import { getTime } from 'date-fns';
4
5
  import isEqual from 'date-fns/isEqual';
5
6
  import isLastDayOfMonth from 'date-fns/isLastDayOfMonth';
6
7
  import isSameDay from 'date-fns/isSameDay';
@@ -32,13 +33,15 @@ import 'date-fns/subDays';
32
33
  import 'date-fns/subMonths';
33
34
  import '../../../../shared/modern';
34
35
 
35
- const styles = {"daysTable":"calendar__daysTable_1opka","responsive":"calendar__responsive_1opka","dayName":"calendar__dayName_1opka","day":"calendar__day_1opka","rounded":"calendar__rounded_1opka","rectangular":"calendar__rectangular_1opka","highlighted":"calendar__highlighted_1opka","range":"calendar__range_1opka","disabled":"calendar__disabled_1opka","holiday":"calendar__holiday_1opka","today":"calendar__today_1opka","rangeComplete":"calendar__rangeComplete_1opka","selected":"calendar__selected_1opka","dayWrapper":"calendar__dayWrapper_1opka","cursorPointer":"calendar__cursorPointer_1opka","rangeEnd":"calendar__rangeEnd_1opka","rangeStart":"calendar__rangeStart_1opka","transitLeft":"calendar__transitLeft_1opka","transitRight":"calendar__transitRight_1opka","sharpTransitLeft":"calendar__sharpTransitLeft_1opka","sharpTransitRight":"calendar__sharpTransitRight_1opka","daysEnter":"calendar__daysEnter_1opka","left":"calendar__left_1opka","daysEnterActive":"calendar__daysEnterActive_1opka","daysExit":"calendar__daysExit_1opka","daysExitActive":"calendar__daysExitActive_1opka","right":"calendar__right_1opka","dayAddons":"calendar__dayAddons_1opka","dayContent":"calendar__dayContent_1opka","addons":"calendar__addons_1opka","dot":"calendar__dot_1opka","bottomAddon":"calendar__bottomAddon_1opka"};
36
+ const styles = {"daysTable":"calendar__daysTable_1opka","responsive":"calendar__responsive_1opka","dayName":"calendar__dayName_1opka","day":"calendar__day_1opka","rounded":"calendar__rounded_1opka","rectangular":"calendar__rectangular_1opka","highlighted":"calendar__highlighted_1opka","range":"calendar__range_1opka","disabled":"calendar__disabled_1opka","holiday":"calendar__holiday_1opka","today":"calendar__today_1opka","rangeComplete":"calendar__rangeComplete_1opka","selected":"calendar__selected_1opka","dayWrapper":"calendar__dayWrapper_1opka","cursorPointer":"calendar__cursorPointer_1opka","rangeEnd":"calendar__rangeEnd_1opka","shapeRectangular":"calendar__shapeRectangular_1opka","rangeStart":"calendar__rangeStart_1opka","transitLeft":"calendar__transitLeft_1opka","transitRight":"calendar__transitRight_1opka","sharpTransitLeft":"calendar__sharpTransitLeft_1opka","sharpTransitRight":"calendar__sharpTransitRight_1opka","daysEnter":"calendar__daysEnter_1opka","left":"calendar__left_1opka","daysEnterActive":"calendar__daysEnterActive_1opka","daysExit":"calendar__daysExit_1opka","daysExitActive":"calendar__daysExitActive_1opka","right":"calendar__right_1opka","dayAddons":"calendar__dayAddons_1opka","dayContent":"calendar__dayContent_1opka","addons":"calendar__addons_1opka","dot":"calendar__dot_1opka","bottomAddon":"calendar__bottomAddon_1opka"};
36
37
  require('./index.css');
37
38
 
38
39
  /* eslint-disable complexity */
39
- const DaysTable = ({ weeks = [], activeMonth = new Date(), highlighted, selectedFrom, selectedTo, rangeComplete = selectedFrom && selectedTo, getDayProps, hasHeader = true, responsive, shape = 'rounded', withTransition = true, }) => {
40
+ const DaysTable = ({ weeks = [], activeMonth = new Date(), highlighted, selectedFrom, selectedTo, rangeComplete = selectedFrom && selectedTo, getDayProps, hasHeader = true, responsive, shape = 'rounded', withTransition = true, monthClicked = false, onChange, }) => {
40
41
  const activeMonthRef = useRef(activeMonth);
41
42
  const directionRef = useRef();
43
+ const currentStartMonth = useRef();
44
+ const currentEndPeriod = useRef();
42
45
  activeMonthRef.current = activeMonth;
43
46
  const prevActiveMonth = usePrevious(activeMonth);
44
47
  if (prevActiveMonth && prevActiveMonth !== activeMonth) {
@@ -78,6 +81,15 @@ const DaysTable = ({ weeks = [], activeMonth = new Date(), highlighted, selected
78
81
  if (!day.disabled)
79
82
  onClick(e);
80
83
  };
84
+ if (dayIdx === 0) {
85
+ currentStartMonth.current = startOfMonth(day.date).getTime();
86
+ }
87
+ if (isToday(day.date)) {
88
+ currentEndPeriod.current = getTime(day.date);
89
+ }
90
+ else if (!currentEndPeriod.current && isLastDayOfMonth(day.date)) {
91
+ currentEndPeriod.current = getTime(day.date);
92
+ }
81
93
  return (
82
94
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-noninteractive-element-interactions
83
95
  React.createElement("td", { ...dayProps, key: day.date.getTime(), className: cn(styles.dayWrapper, {
@@ -90,6 +102,7 @@ const DaysTable = ({ weeks = [], activeMonth = new Date(), highlighted, selected
90
102
  [styles.rangeStart]: rangeStart,
91
103
  [styles.rangeEnd]: rangeEnd,
92
104
  [styles.cursorPointer]: !day.disabled,
105
+ [styles.shapeRectangular]: shape === 'rectangular',
93
106
  }), align: 'center', ref: (node) => {
94
107
  /**
95
108
  * После анимации реф-коллбэк вызывается еще раз, и в него передается null и старый activeMonth.
@@ -116,6 +129,12 @@ const DaysTable = ({ weeks = [], activeMonth = new Date(), highlighted, selected
116
129
  };
117
130
  const renderWeek = (week, weekIdx) => (React.createElement("tr", { key: weekIdx }, week.map(renderDay)));
118
131
  const renderMonth = () => React.createElement("tbody", null, weeks.map(renderWeek));
132
+ useEffect(() => {
133
+ if (monthClicked && onChange) {
134
+ onChange(currentStartMonth.current, currentEndPeriod.current);
135
+ }
136
+ // eslint-disable-next-line react-hooks/exhaustive-deps
137
+ }, [monthClicked]);
119
138
  return (React.createElement("table", { className: cn(styles.daysTable, directionRef.current && styles[directionRef.current], {
120
139
  [styles.responsive]: responsive,
121
140
  }) },
@@ -161,12 +161,20 @@
161
161
  width: calc(50% + 20px);
162
162
  border-top-right-radius: var(--calendar-day-border-radius);
163
163
  border-bottom-right-radius: var(--calendar-day-border-radius);
164
+ } .calendar__rangeEnd_1opka.calendar__shapeRectangular_1opka:before {
165
+ width: calc(50% + 22px);
166
+ border-top-right-radius: var(--border-radius-m);
167
+ border-bottom-right-radius: var(--border-radius-m);
164
168
  } .calendar__rangeStart_1opka:before {
165
169
  left: auto;
166
170
  right: 0;
167
171
  width: calc(50% + 20px);
168
172
  border-top-left-radius: var(--calendar-day-border-radius);
169
173
  border-bottom-left-radius: var(--calendar-day-border-radius);
174
+ } .calendar__rangeStart_1opka.calendar__shapeRectangular_1opka:before {
175
+ width: calc(50% + 22px);
176
+ border-top-left-radius: var(--border-radius-m);
177
+ border-bottom-left-radius: var(--border-radius-m);
170
178
  } .calendar__rangeComplete_1opka:before {
171
179
  background: var(--calendar-range-complete-background);
172
180
  } .calendar__transitLeft_1opka:after, .calendar__transitRight_1opka:after {
@@ -2,6 +2,7 @@ export { DaysTable } from './Component.js';
2
2
  import 'react';
3
3
  import 'react-transition-group';
4
4
  import 'classnames';
5
+ import 'date-fns';
5
6
  import 'date-fns/isEqual';
6
7
  import 'date-fns/isLastDayOfMonth';
7
8
  import 'date-fns/isSameDay';
@@ -32,6 +32,7 @@ import { YearsTable } from '../components/years-table/Component.js';
32
32
  import { useCalendar } from '../useCalendar.js';
33
33
  import { useRange } from '../useRange.js';
34
34
  import 'react-transition-group';
35
+ import 'date-fns';
35
36
  import 'date-fns/isEqual';
36
37
  import 'date-fns/isLastDayOfMonth';
37
38
  import 'date-fns/isSameDay';
@@ -8,6 +8,7 @@ import '../../../shared/modern';
8
8
  import '@alfalab/hooks';
9
9
  import '../components/days-table/Component.js';
10
10
  import 'react-transition-group';
11
+ import 'date-fns';
11
12
  import 'date-fns/isEqual';
12
13
  import 'date-fns/isLastDayOfMonth';
13
14
  import 'date-fns/isSameDay';
@@ -7,16 +7,19 @@ import 'react-virtuoso';
7
7
  import '@juggle/resize-observer';
8
8
  import 'classnames';
9
9
  import 'date-fns/endOfDay';
10
+ import 'date-fns/isAfter';
10
11
  import 'date-fns/isSameMonth';
11
12
  import 'date-fns/startOfDay';
12
13
  import 'date-fns/startOfMonth';
13
14
  import '../../button/modern/mobile';
14
15
  import '../../modal/modern/mobile';
15
16
  import '../../shared/modern';
17
+ import '../../typography/modern';
16
18
  import './desktop/Component.desktop.js';
17
19
  import '@alfalab/hooks';
18
20
  import './components/days-table/Component.js';
19
21
  import 'react-transition-group';
22
+ import 'date-fns';
20
23
  import 'date-fns/isEqual';
21
24
  import 'date-fns/isLastDayOfMonth';
22
25
  import 'date-fns/isSameDay';
@@ -32,7 +35,6 @@ import 'date-fns/eachYearOfInterval';
32
35
  import 'date-fns/endOfWeek';
33
36
  import 'date-fns/endOfYear';
34
37
  import 'date-fns/format';
35
- import 'date-fns/isAfter';
36
38
  import 'date-fns/isBefore';
37
39
  import 'date-fns/lastDayOfMonth';
38
40
  import 'date-fns/max';
@@ -5,16 +5,19 @@ import 'react-virtuoso';
5
5
  import '@juggle/resize-observer';
6
6
  import 'classnames';
7
7
  import 'date-fns/endOfDay';
8
+ import 'date-fns/isAfter';
8
9
  import 'date-fns/isSameMonth';
9
10
  import 'date-fns/startOfDay';
10
11
  import 'date-fns/startOfMonth';
11
12
  import '../../../button/modern/mobile';
12
13
  import '../../../modal/modern/mobile';
13
14
  import '../../../shared/modern';
15
+ import '../../../typography/modern';
14
16
  import '../desktop/Component.desktop.js';
15
17
  import '@alfalab/hooks';
16
18
  import '../components/days-table/Component.js';
17
19
  import 'react-transition-group';
20
+ import 'date-fns';
18
21
  import 'date-fns/isEqual';
19
22
  import 'date-fns/isLastDayOfMonth';
20
23
  import 'date-fns/isSameDay';
@@ -30,7 +33,6 @@ import 'date-fns/eachYearOfInterval';
30
33
  import 'date-fns/endOfWeek';
31
34
  import 'date-fns/endOfYear';
32
35
  import 'date-fns/format';
33
- import 'date-fns/isAfter';
34
36
  import 'date-fns/isBefore';
35
37
  import 'date-fns/lastDayOfMonth';
36
38
  import 'date-fns/max';
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { KeyboardEvent, MouseEvent, Ref } from 'react';
2
+ import { KeyboardEvent, MouseEvent, Ref, RefObject } from 'react';
3
3
  import { Day, DayAddons, Month, View } from "./typings";
4
4
  type UseCalendarProps = {
5
5
  /**
@@ -50,8 +50,14 @@ type UseCalendarProps = {
50
50
  * Дополнительный контент под числом
51
51
  */
52
52
  dayAddons?: DayAddons[];
53
+ /**
54
+ * Ref для сброса заголовка clickableMonth
55
+ */
56
+ resetCurrentClickedMonth?: RefObject<{
57
+ resetCurrentClickedMonth: () => void;
58
+ }>;
53
59
  };
54
- declare function useCalendar({ defaultMonth, month, minDate, view, maxDate, selected, events, offDays, holidays, dayAddons, onMonthChange, onChange, }: UseCalendarProps): {
60
+ declare function useCalendar({ defaultMonth, month, minDate, view, maxDate, selected, events, offDays, holidays, dayAddons, onMonthChange, onChange, resetCurrentClickedMonth, }: UseCalendarProps): {
55
61
  activeMonth: Date;
56
62
  weeks: Day[][];
57
63
  months: Month[];