@consta/uikit 3.23.1 → 3.24.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 (530) hide show
  1. package/Attach/package.json +1 -1
  2. package/Attachment/package.json +1 -1
  3. package/Avatar/package.json +1 -1
  4. package/Badge/package.json +1 -1
  5. package/BasicSelectDeprecated/package.json +1 -1
  6. package/Breadcrumbs/package.json +1 -1
  7. package/BreadcrumbsCanary/package.json +1 -1
  8. package/Button/package.json +1 -1
  9. package/CHANGELOG.md +22 -9
  10. package/Calendar/package.json +1 -1
  11. package/Card/package.json +1 -1
  12. package/Checkbox/package.json +1 -1
  13. package/CheckboxGroup/package.json +1 -1
  14. package/CheckboxGroupCanary/es.js +1 -0
  15. package/CheckboxGroupCanary/index.d.ts +1 -0
  16. package/CheckboxGroupCanary/index.js +4 -0
  17. package/CheckboxGroupCanary/package.json +9 -0
  18. package/ChoiceGroup/package.json +1 -1
  19. package/ChoiceGroupCanary/es.js +1 -0
  20. package/ChoiceGroupCanary/index.d.ts +1 -0
  21. package/ChoiceGroupCanary/index.js +4 -0
  22. package/ChoiceGroupCanary/package.json +9 -0
  23. package/Collapse/package.json +1 -1
  24. package/CollapseGroup/package.json +1 -1
  25. package/Combobox/package.json +1 -1
  26. package/ComboboxDeprecated/package.json +1 -1
  27. package/ContextMenu/package.json +1 -1
  28. package/ContextMenuCanary/package.json +1 -1
  29. package/DatePickerCanary/package.json +1 -1
  30. package/DateTimeCanary/package.json +1 -1
  31. package/DragNDropField/package.json +1 -1
  32. package/EventInterceptor/package.json +1 -1
  33. package/FieldCaption/package.json +1 -1
  34. package/FieldLabel/package.json +1 -1
  35. package/File/package.json +1 -1
  36. package/FileField/package.json +1 -1
  37. package/FileIcon/package.json +1 -1
  38. package/FileIconAvi/package.json +1 -1
  39. package/FileIconBmp/package.json +1 -1
  40. package/FileIconCsv/package.json +1 -1
  41. package/FileIconDoc/package.json +1 -1
  42. package/FileIconExe/package.json +1 -1
  43. package/FileIconGif/package.json +1 -1
  44. package/FileIconJpg/package.json +1 -1
  45. package/FileIconJson/package.json +1 -1
  46. package/FileIconLoading/package.json +1 -1
  47. package/FileIconMov/package.json +1 -1
  48. package/FileIconMp3/package.json +1 -1
  49. package/FileIconMp4/package.json +1 -1
  50. package/FileIconPdf/package.json +1 -1
  51. package/FileIconPng/package.json +1 -1
  52. package/FileIconPpt/package.json +1 -1
  53. package/FileIconRar/package.json +1 -1
  54. package/FileIconRtf/package.json +1 -1
  55. package/FileIconTiff/package.json +1 -1
  56. package/FileIconTxt/package.json +1 -1
  57. package/FileIconUndefined/package.json +1 -1
  58. package/FileIconWav/package.json +1 -1
  59. package/FileIconXls/package.json +1 -1
  60. package/FileIconZip/package.json +1 -1
  61. package/Grid/package.json +1 -1
  62. package/Header/package.json +1 -1
  63. package/Icon/package.json +1 -1
  64. package/IconAdd/package.json +1 -1
  65. package/IconAddToComparison/package.json +1 -1
  66. package/IconAlert/package.json +1 -1
  67. package/IconAlignBlocksLeft/package.json +1 -1
  68. package/IconAlignBlocksRight/package.json +1 -1
  69. package/IconAlignCenter/package.json +1 -1
  70. package/IconAlignJustify/package.json +1 -1
  71. package/IconAlignLeft/package.json +1 -1
  72. package/IconAlignRight/package.json +1 -1
  73. package/IconAllDone/package.json +1 -1
  74. package/IconArrowDown/package.json +1 -1
  75. package/IconArrowLeft/package.json +1 -1
  76. package/IconArrowRight/package.json +1 -1
  77. package/IconArrowUp/package.json +1 -1
  78. package/IconArtBrush/package.json +1 -1
  79. package/IconAttach/package.json +1 -1
  80. package/IconBackward/package.json +1 -1
  81. package/IconBag/package.json +1 -1
  82. package/IconBarrier/package.json +1 -1
  83. package/IconBento/package.json +1 -1
  84. package/IconBold/package.json +1 -1
  85. package/IconBook/package.json +1 -1
  86. package/IconBookmarkFilled/package.json +1 -1
  87. package/IconBookmarkStroked/package.json +1 -1
  88. package/IconCalculator/package.json +1 -1
  89. package/IconCalendar/package.json +1 -1
  90. package/IconCamera/package.json +1 -1
  91. package/IconCancel/package.json +1 -1
  92. package/IconCards/package.json +1 -1
  93. package/IconChat/package.json +1 -1
  94. package/IconCheck/package.json +1 -1
  95. package/IconClose/package.json +1 -1
  96. package/IconCollapse/package.json +1 -1
  97. package/IconColorFill/package.json +1 -1
  98. package/IconColorText/package.json +1 -1
  99. package/IconColumns/package.json +1 -1
  100. package/IconComment/package.json +1 -1
  101. package/IconConnection/package.json +1 -1
  102. package/IconCopy/package.json +1 -1
  103. package/IconCrown/package.json +1 -1
  104. package/IconCursorMouse/package.json +1 -1
  105. package/IconDataNull/package.json +1 -1
  106. package/IconDiamond/package.json +1 -1
  107. package/IconDinosaur/package.json +1 -1
  108. package/IconDisconnection/package.json +1 -1
  109. package/IconDocAdd/package.json +1 -1
  110. package/IconDocBlank/package.json +1 -1
  111. package/IconDocDelete/package.json +1 -1
  112. package/IconDocExport/package.json +1 -1
  113. package/IconDocFilled/package.json +1 -1
  114. package/IconDown/package.json +1 -1
  115. package/IconDownload/package.json +1 -1
  116. package/IconDrag/package.json +1 -1
  117. package/IconDraggable/package.json +1 -1
  118. package/IconDrillingRig/package.json +1 -1
  119. package/IconDrop/package.json +1 -1
  120. package/IconEdit/package.json +1 -1
  121. package/IconExit/package.json +1 -1
  122. package/IconExpand/package.json +1 -1
  123. package/IconEye/package.json +1 -1
  124. package/IconEyeClose/package.json +1 -1
  125. package/IconFacebook/package.json +1 -1
  126. package/IconFavorite/package.json +1 -1
  127. package/IconFilter/package.json +1 -1
  128. package/IconFitToDefault/package.json +1 -1
  129. package/IconFlagFilled/package.json +1 -1
  130. package/IconFlagStroked/package.json +1 -1
  131. package/IconFolders/package.json +1 -1
  132. package/IconForward/package.json +1 -1
  133. package/IconFunnel/package.json +1 -1
  134. package/IconGas/package.json +1 -1
  135. package/IconGeo/package.json +1 -1
  136. package/IconGrouping/package.json +1 -1
  137. package/IconHamburger/package.json +1 -1
  138. package/IconHand/package.json +1 -1
  139. package/IconHealth/package.json +1 -1
  140. package/IconHome/package.json +1 -1
  141. package/IconInComparison/package.json +1 -1
  142. package/IconInfo/package.json +1 -1
  143. package/IconInstagram/package.json +1 -1
  144. package/IconIntroduction/package.json +1 -1
  145. package/IconIpad/package.json +1 -1
  146. package/IconItalic/package.json +1 -1
  147. package/IconKebab/package.json +1 -1
  148. package/IconLaptop/package.json +1 -1
  149. package/IconLayers/package.json +1 -1
  150. package/IconLeaf/package.json +1 -1
  151. package/IconLightningBolt/package.json +1 -1
  152. package/IconLineAndBarChart/package.json +1 -1
  153. package/IconLink/package.json +1 -1
  154. package/IconList/package.json +1 -1
  155. package/IconListNumbered/package.json +1 -1
  156. package/IconLock/package.json +1 -1
  157. package/IconLogicalElement/package.json +1 -1
  158. package/IconMBU/package.json +1 -1
  159. package/IconMGRP/package.json +1 -1
  160. package/IconMLSP/package.json +1 -1
  161. package/IconMMP/package.json +1 -1
  162. package/IconMail/package.json +1 -1
  163. package/IconMap/package.json +1 -1
  164. package/IconMaxHeight/package.json +1 -1
  165. package/IconMaxWidth/package.json +1 -1
  166. package/IconMeatball/package.json +1 -1
  167. package/IconMic/package.json +1 -1
  168. package/IconMolecules/package.json +1 -1
  169. package/IconMoon/package.json +1 -1
  170. package/IconNodeEnd/package.json +1 -1
  171. package/IconNodeStart/package.json +1 -1
  172. package/IconNodeStep/package.json +1 -1
  173. package/IconNodes/package.json +1 -1
  174. package/IconOpenInNew/package.json +1 -1
  175. package/IconOperators/package.json +1 -1
  176. package/IconPanelBottom/package.json +1 -1
  177. package/IconPanelLeft/package.json +1 -1
  178. package/IconPanelRight/package.json +1 -1
  179. package/IconPanelTop/package.json +1 -1
  180. package/IconPaste/package.json +1 -1
  181. package/IconPause/package.json +1 -1
  182. package/IconPhone/package.json +1 -1
  183. package/IconPhoto/package.json +1 -1
  184. package/IconPicture/package.json +1 -1
  185. package/IconPlay/package.json +1 -1
  186. package/IconPressure/package.json +1 -1
  187. package/IconPriceLabel/package.json +1 -1
  188. package/IconProcessing/package.json +1 -1
  189. package/IconQuestion/package.json +1 -1
  190. package/IconQuote/package.json +1 -1
  191. package/IconRUO/package.json +1 -1
  192. package/IconRUS/package.json +1 -1
  193. package/IconRecord/package.json +1 -1
  194. package/IconRemove/package.json +1 -1
  195. package/IconRemoveFromComparison/package.json +1 -1
  196. package/IconReply/package.json +1 -1
  197. package/IconResize/package.json +1 -1
  198. package/IconRestart/package.json +1 -1
  199. package/IconRevert/package.json +1 -1
  200. package/IconRing/package.json +1 -1
  201. package/IconRouble/package.json +1 -1
  202. package/IconRuler/package.json +1 -1
  203. package/IconSave/package.json +1 -1
  204. package/IconScreen/package.json +1 -1
  205. package/IconSearch/package.json +1 -1
  206. package/IconSelect/package.json +1 -1
  207. package/IconSelectOpen/package.json +1 -1
  208. package/IconSendMessage/package.json +1 -1
  209. package/IconSettings/package.json +1 -1
  210. package/IconShape/package.json +1 -1
  211. package/IconShuffle/package.json +1 -1
  212. package/IconSmile/package.json +1 -1
  213. package/IconSortDown/package.json +1 -1
  214. package/IconSortDownCenter/package.json +1 -1
  215. package/IconSortUp/package.json +1 -1
  216. package/IconSortUpCenter/package.json +1 -1
  217. package/IconStop/package.json +1 -1
  218. package/IconStorage/package.json +1 -1
  219. package/IconStrikethrough/package.json +1 -1
  220. package/IconSun/package.json +1 -1
  221. package/IconTable/package.json +1 -1
  222. package/IconTable2/package.json +1 -1
  223. package/IconTarget/package.json +1 -1
  224. package/IconTeam/package.json +1 -1
  225. package/IconTechResponse/package.json +1 -1
  226. package/IconTest/package.json +1 -1
  227. package/IconThumbUp/package.json +1 -1
  228. package/IconTie/package.json +1 -1
  229. package/IconTop/package.json +1 -1
  230. package/IconTrash/package.json +1 -1
  231. package/IconType/package.json +1 -1
  232. package/IconUnderline/package.json +1 -1
  233. package/IconUnlock/package.json +1 -1
  234. package/IconUnsort/package.json +1 -1
  235. package/IconUnsortCenter/package.json +1 -1
  236. package/IconUpload/package.json +1 -1
  237. package/IconUser/package.json +1 -1
  238. package/IconVZD/package.json +1 -1
  239. package/IconVideo/package.json +1 -1
  240. package/IconVkontakte/package.json +1 -1
  241. package/IconWarning/package.json +1 -1
  242. package/IconWatch/package.json +1 -1
  243. package/IconWideScreen/package.json +1 -1
  244. package/IconWorld/package.json +1 -1
  245. package/IconWrench/package.json +1 -1
  246. package/IconYandexDzen/package.json +1 -1
  247. package/IconYoutube/package.json +1 -1
  248. package/Informer/package.json +1 -1
  249. package/LayoutCanary/package.json +1 -1
  250. package/Loader/package.json +1 -1
  251. package/MixCard/package.json +1 -1
  252. package/MixFocus/package.json +1 -1
  253. package/MixPopoverAnimate/package.json +1 -1
  254. package/MixPopoverArrow/package.json +1 -1
  255. package/MixSpace/package.json +1 -1
  256. package/MixVisuallyHidden/package.json +1 -1
  257. package/Modal/package.json +1 -1
  258. package/MultiComboboxDeprecated/package.json +1 -1
  259. package/Pagination/package.json +1 -1
  260. package/Popover/package.json +1 -1
  261. package/PortalWithTheme/package.json +1 -1
  262. package/ProgressSpin/package.json +1 -1
  263. package/ProgressStepBarCanary/package.json +1 -1
  264. package/Radio/package.json +1 -1
  265. package/RadioGroup/package.json +1 -1
  266. package/Responses/package.json +1 -1
  267. package/Responses403/package.json +1 -1
  268. package/Responses404/package.json +1 -1
  269. package/Responses500/package.json +1 -1
  270. package/Responses503/package.json +1 -1
  271. package/ResponsesConnectionError/package.json +1 -1
  272. package/ResponsesDeleted/package.json +1 -1
  273. package/ResponsesEmptyBox/package.json +1 -1
  274. package/ResponsesEmptyPockets/package.json +1 -1
  275. package/ResponsesExit/package.json +1 -1
  276. package/ResponsesImage/package.json +1 -1
  277. package/ResponsesImage403/package.json +1 -1
  278. package/ResponsesImage404/package.json +1 -1
  279. package/ResponsesImage500/package.json +1 -1
  280. package/ResponsesImage503/package.json +1 -1
  281. package/ResponsesImageConnectionError/package.json +1 -1
  282. package/ResponsesImageDeleted/package.json +1 -1
  283. package/ResponsesImageEmptyBox/package.json +1 -1
  284. package/ResponsesImageEmptyPockets/package.json +1 -1
  285. package/ResponsesImageNothingFound/package.json +1 -1
  286. package/ResponsesImageSuccess/package.json +1 -1
  287. package/ResponsesNothingFound/package.json +1 -1
  288. package/ResponsesSuccess/package.json +1 -1
  289. package/Select/package.json +1 -1
  290. package/Sidebar/package.json +1 -1
  291. package/Skeleton/package.json +1 -1
  292. package/SliderCanary/package.json +1 -1
  293. package/SnackBar/package.json +1 -1
  294. package/Steps/package.json +1 -1
  295. package/StepsCanary/package.json +1 -1
  296. package/Switch/package.json +1 -1
  297. package/SwitchGroup/package.json +1 -1
  298. package/SwitchGroupCanary/es.js +1 -0
  299. package/SwitchGroupCanary/index.d.ts +1 -0
  300. package/SwitchGroupCanary/index.js +4 -0
  301. package/SwitchGroupCanary/package.json +9 -0
  302. package/Table/package.json +1 -1
  303. package/Tabs/package.json +1 -1
  304. package/TabsCanary/es.js +1 -0
  305. package/TabsCanary/index.d.ts +1 -0
  306. package/TabsCanary/index.js +4 -0
  307. package/TabsCanary/package.json +9 -0
  308. package/Tag/package.json +1 -1
  309. package/TagBase/package.json +1 -1
  310. package/Text/package.json +1 -1
  311. package/TextField/package.json +1 -1
  312. package/Theme/package.json +1 -1
  313. package/ThemeToggler/package.json +1 -1
  314. package/Timer/package.json +1 -1
  315. package/Tooltip/package.json +1 -1
  316. package/User/package.json +1 -1
  317. package/UserSelect/package.json +1 -1
  318. package/UserSelectDeprecated/package.json +1 -1
  319. package/__internal__/cjs-src/components/CheckboxGroupCanary/CheckboxGroup.css +35 -0
  320. package/__internal__/cjs-src/components/CheckboxGroupCanary/CheckboxGroupCanary.d.ts +5 -0
  321. package/__internal__/cjs-src/components/CheckboxGroupCanary/CheckboxGroupCanary.js +27 -0
  322. package/__internal__/cjs-src/components/CheckboxGroupCanary/helper.d.ts +274 -0
  323. package/__internal__/cjs-src/components/CheckboxGroupCanary/helper.js +11 -0
  324. package/__internal__/cjs-src/components/CheckboxGroupCanary/types.d.ts +38 -0
  325. package/__internal__/cjs-src/components/CheckboxGroupCanary/types.js +9 -0
  326. package/__internal__/cjs-src/components/ChoiceGroupCanary/ChoiceGroup.css +231 -0
  327. package/__internal__/cjs-src/components/ChoiceGroupCanary/ChoiceGroupCanary.d.ts +5 -0
  328. package/__internal__/cjs-src/components/ChoiceGroupCanary/ChoiceGroupCanary.js +43 -0
  329. package/__internal__/cjs-src/components/ChoiceGroupCanary/Item/ChoiceGroup-Item.d.ts +15 -0
  330. package/__internal__/cjs-src/components/ChoiceGroupCanary/Item/ChoiceGroup-Item.js +17 -0
  331. package/__internal__/cjs-src/components/ChoiceGroupCanary/helper.d.ts +277 -0
  332. package/__internal__/cjs-src/components/ChoiceGroupCanary/helper.js +12 -0
  333. package/__internal__/cjs-src/components/ChoiceGroupCanary/types.d.ts +63 -0
  334. package/__internal__/cjs-src/components/ChoiceGroupCanary/types.js +11 -0
  335. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.css +36 -0
  336. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.d.ts +12 -0
  337. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.js +21 -0
  338. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +5 -5
  339. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +18 -2
  340. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +22 -17
  341. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +23 -22
  342. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +21 -16
  343. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +19 -18
  344. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeMonth/DatePickerTypeMonth.js +26 -20
  345. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +32 -30
  346. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeTime/DatePickerTypeTime.js +7 -6
  347. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeYear/DatePickerTypeYear.js +22 -17
  348. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeYearRange/DatePickerTypeYearRange.js +21 -20
  349. package/__internal__/cjs-src/components/DatePickerCanary/helpers.d.ts +2 -0
  350. package/__internal__/cjs-src/components/DatePickerCanary/helpers.js +4 -1
  351. package/__internal__/cjs-src/components/DatePickerCanary/types.d.ts +8 -2
  352. package/__internal__/cjs-src/components/DatePickerCanary/types.js +3 -1
  353. package/__internal__/cjs-src/components/DatePickerCanary/useCurrentVisibleDate.d.ts +5 -2
  354. package/__internal__/cjs-src/components/DatePickerCanary/useCurrentVisibleDate.js +8 -5
  355. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeSlider/DateTimeSlider.css +1 -1
  356. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDate/DateTimeTypeDate.js +13 -17
  357. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +3 -5
  358. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeMonth/DateTimeTypeMonth.js +4 -8
  359. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeTime/DateTimeTypeTime.js +2 -4
  360. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeYear/DateTimeTypeYear.js +10 -15
  361. package/__internal__/cjs-src/components/DateTimeCanary/helpers/types.d.ts +0 -6
  362. package/__internal__/cjs-src/components/DateTimeCanary/helpers/useCurrentVisibleDate.d.ts +6 -2
  363. package/__internal__/cjs-src/components/DateTimeCanary/helpers/useCurrentVisibleDate.js +8 -5
  364. package/__internal__/cjs-src/components/Popover/Popover.css +36 -2
  365. package/__internal__/cjs-src/components/Popover/Popover.js +1 -6
  366. package/__internal__/cjs-src/components/Popover/helpers.d.ts +2 -3
  367. package/__internal__/cjs-src/components/Popover/helpers.js +6 -8
  368. package/__internal__/cjs-src/components/RadioGroupCanary/RadioGroup.css +35 -0
  369. package/__internal__/cjs-src/components/RadioGroupCanary/RadioGroupCannary.d.ts +5 -0
  370. package/__internal__/cjs-src/components/RadioGroupCanary/RadioGroupCannary.js +27 -0
  371. package/__internal__/cjs-src/components/RadioGroupCanary/helper.d.ts +275 -0
  372. package/__internal__/cjs-src/components/RadioGroupCanary/helper.js +9 -0
  373. package/__internal__/cjs-src/components/RadioGroupCanary/types.d.ts +42 -0
  374. package/__internal__/cjs-src/components/RadioGroupCanary/types.js +11 -0
  375. package/__internal__/cjs-src/components/SwitchGroupCanary/SwitchGroup.css +35 -0
  376. package/__internal__/cjs-src/components/SwitchGroupCanary/SwitchGroupCanary.d.ts +5 -0
  377. package/__internal__/cjs-src/components/SwitchGroupCanary/SwitchGroupCanary.js +27 -0
  378. package/__internal__/cjs-src/components/SwitchGroupCanary/helpers.d.ts +274 -0
  379. package/__internal__/cjs-src/components/SwitchGroupCanary/helpers.js +11 -0
  380. package/__internal__/cjs-src/components/SwitchGroupCanary/types.d.ts +38 -0
  381. package/__internal__/cjs-src/components/SwitchGroupCanary/types.js +9 -0
  382. package/__internal__/cjs-src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.css +24 -0
  383. package/__internal__/cjs-src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.d.ts +4 -0
  384. package/__internal__/cjs-src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.js +40 -0
  385. package/__internal__/cjs-src/components/TabsCanary/FitModeDropdownWrapper/useFittingItems.d.ts +15 -0
  386. package/__internal__/cjs-src/components/TabsCanary/FitModeDropdownWrapper/useFittingItems.js +51 -0
  387. package/__internal__/cjs-src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.css +57 -0
  388. package/__internal__/cjs-src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.d.ts +4 -0
  389. package/__internal__/cjs-src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +66 -0
  390. package/__internal__/cjs-src/components/TabsCanary/Line/TabsLine.css +51 -0
  391. package/__internal__/cjs-src/components/TabsCanary/Line/TabsLine.d.ts +11 -0
  392. package/__internal__/cjs-src/components/TabsCanary/Line/TabsLine.js +30 -0
  393. package/__internal__/cjs-src/components/TabsCanary/MoreItems/TabsMoreItems.css +45 -0
  394. package/__internal__/cjs-src/components/TabsCanary/MoreItems/TabsMoreItems.d.ts +3 -0
  395. package/__internal__/cjs-src/components/TabsCanary/MoreItems/TabsMoreItems.js +52 -0
  396. package/__internal__/cjs-src/components/TabsCanary/Tab/TabsTab.css +69 -0
  397. package/__internal__/cjs-src/components/TabsCanary/Tab/TabsTab.d.ts +5 -0
  398. package/__internal__/cjs-src/components/TabsCanary/Tab/TabsTab.js +21 -0
  399. package/__internal__/cjs-src/components/TabsCanary/Tabs.css +57 -0
  400. package/__internal__/cjs-src/components/TabsCanary/TabsCanary.d.ts +7 -0
  401. package/__internal__/cjs-src/components/TabsCanary/TabsCanary.js +71 -0
  402. package/__internal__/cjs-src/components/TabsCanary/helpers.d.ts +552 -0
  403. package/__internal__/cjs-src/components/TabsCanary/helpers.js +51 -0
  404. package/__internal__/cjs-src/components/TabsCanary/types.d.ts +97 -0
  405. package/__internal__/cjs-src/components/TabsCanary/types.js +11 -0
  406. package/__internal__/cjs-src/utils/getByMap.d.ts +1 -1
  407. package/__internal__/cjs-src/utils/getByMap.js +4 -4
  408. package/__internal__/cjs-src/utils/getGroups.js +5 -1
  409. package/__internal__/src/components/CheckboxGroupCanary/CheckboxGroup.css +35 -0
  410. package/__internal__/src/components/CheckboxGroupCanary/CheckboxGroupCanary.d.ts +5 -0
  411. package/__internal__/src/components/CheckboxGroupCanary/CheckboxGroupCanary.js +24 -0
  412. package/__internal__/src/components/CheckboxGroupCanary/helper.d.ts +274 -0
  413. package/__internal__/src/components/CheckboxGroupCanary/helper.js +8 -0
  414. package/__internal__/src/components/CheckboxGroupCanary/types.d.ts +38 -0
  415. package/__internal__/src/components/CheckboxGroupCanary/types.js +6 -0
  416. package/__internal__/src/components/ChoiceGroupCanary/ChoiceGroup.css +231 -0
  417. package/__internal__/src/components/ChoiceGroupCanary/ChoiceGroupCanary.d.ts +5 -0
  418. package/__internal__/src/components/ChoiceGroupCanary/ChoiceGroupCanary.js +40 -0
  419. package/__internal__/src/components/ChoiceGroupCanary/Item/ChoiceGroup-Item.d.ts +15 -0
  420. package/__internal__/src/components/ChoiceGroupCanary/Item/ChoiceGroup-Item.js +14 -0
  421. package/__internal__/src/components/ChoiceGroupCanary/helper.d.ts +277 -0
  422. package/__internal__/src/components/ChoiceGroupCanary/helper.js +9 -0
  423. package/__internal__/src/components/ChoiceGroupCanary/types.d.ts +63 -0
  424. package/__internal__/src/components/ChoiceGroupCanary/types.js +8 -0
  425. package/__internal__/src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.css +36 -0
  426. package/__internal__/src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.d.ts +12 -0
  427. package/__internal__/src/components/DatePickerCanary/DatePickerAdditionalControls/DatePickerAdditionalControls.js +18 -0
  428. package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +5 -5
  429. package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +19 -3
  430. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +23 -18
  431. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +25 -24
  432. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +23 -18
  433. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js +21 -20
  434. package/__internal__/src/components/DatePickerCanary/DatePickerTypeMonth/DatePickerTypeMonth.js +25 -19
  435. package/__internal__/src/components/DatePickerCanary/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js +30 -28
  436. package/__internal__/src/components/DatePickerCanary/DatePickerTypeTime/DatePickerTypeTime.js +8 -7
  437. package/__internal__/src/components/DatePickerCanary/DatePickerTypeYear/DatePickerTypeYear.js +23 -18
  438. package/__internal__/src/components/DatePickerCanary/DatePickerTypeYearRange/DatePickerTypeYearRange.js +22 -21
  439. package/__internal__/src/components/DatePickerCanary/helpers.d.ts +2 -0
  440. package/__internal__/src/components/DatePickerCanary/helpers.js +3 -0
  441. package/__internal__/src/components/DatePickerCanary/types.d.ts +8 -2
  442. package/__internal__/src/components/DatePickerCanary/types.js +2 -0
  443. package/__internal__/src/components/DatePickerCanary/useCurrentVisibleDate.d.ts +5 -2
  444. package/__internal__/src/components/DatePickerCanary/useCurrentVisibleDate.js +9 -6
  445. package/__internal__/src/components/DateTimeCanary/DateTimeSlider/DateTimeSlider.css +1 -1
  446. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDate/DateTimeTypeDate.js +13 -17
  447. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +3 -5
  448. package/__internal__/src/components/DateTimeCanary/DateTimeTypeMonth/DateTimeTypeMonth.js +4 -8
  449. package/__internal__/src/components/DateTimeCanary/DateTimeTypeTime/DateTimeTypeTime.js +2 -4
  450. package/__internal__/src/components/DateTimeCanary/DateTimeTypeYear/DateTimeTypeYear.js +10 -15
  451. package/__internal__/src/components/DateTimeCanary/helpers/types.d.ts +0 -6
  452. package/__internal__/src/components/DateTimeCanary/helpers/useCurrentVisibleDate.d.ts +6 -2
  453. package/__internal__/src/components/DateTimeCanary/helpers/useCurrentVisibleDate.js +7 -4
  454. package/__internal__/src/components/Popover/Popover.css +36 -2
  455. package/__internal__/src/components/Popover/Popover.js +1 -6
  456. package/__internal__/src/components/Popover/helpers.d.ts +2 -3
  457. package/__internal__/src/components/Popover/helpers.js +6 -8
  458. package/__internal__/src/components/RadioGroupCanary/RadioGroup.css +35 -0
  459. package/__internal__/src/components/RadioGroupCanary/RadioGroupCannary.d.ts +5 -0
  460. package/__internal__/src/components/RadioGroupCanary/RadioGroupCannary.js +24 -0
  461. package/__internal__/src/components/RadioGroupCanary/helper.d.ts +275 -0
  462. package/__internal__/src/components/RadioGroupCanary/helper.js +6 -0
  463. package/__internal__/src/components/RadioGroupCanary/types.d.ts +42 -0
  464. package/__internal__/src/components/RadioGroupCanary/types.js +8 -0
  465. package/__internal__/src/components/SwitchGroupCanary/SwitchGroup.css +35 -0
  466. package/__internal__/src/components/SwitchGroupCanary/SwitchGroupCanary.d.ts +5 -0
  467. package/__internal__/src/components/SwitchGroupCanary/SwitchGroupCanary.js +24 -0
  468. package/__internal__/src/components/SwitchGroupCanary/helpers.d.ts +274 -0
  469. package/__internal__/src/components/SwitchGroupCanary/helpers.js +8 -0
  470. package/__internal__/src/components/SwitchGroupCanary/types.d.ts +38 -0
  471. package/__internal__/src/components/SwitchGroupCanary/types.js +6 -0
  472. package/__internal__/src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.css +24 -0
  473. package/__internal__/src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.d.ts +4 -0
  474. package/__internal__/src/components/TabsCanary/FitModeDropdownWrapper/TabsFitModeDropdownWrapper.js +37 -0
  475. package/__internal__/src/components/TabsCanary/FitModeDropdownWrapper/useFittingItems.d.ts +15 -0
  476. package/__internal__/src/components/TabsCanary/FitModeDropdownWrapper/useFittingItems.js +48 -0
  477. package/__internal__/src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.css +57 -0
  478. package/__internal__/src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.d.ts +4 -0
  479. package/__internal__/src/components/TabsCanary/FitModeScrollWrapper/TabsFitModeScrollWrapper.js +63 -0
  480. package/__internal__/src/components/TabsCanary/Line/TabsLine.css +51 -0
  481. package/__internal__/src/components/TabsCanary/Line/TabsLine.d.ts +11 -0
  482. package/__internal__/src/components/TabsCanary/Line/TabsLine.js +26 -0
  483. package/__internal__/src/components/TabsCanary/MoreItems/TabsMoreItems.css +45 -0
  484. package/__internal__/src/components/TabsCanary/MoreItems/TabsMoreItems.d.ts +3 -0
  485. package/__internal__/src/components/TabsCanary/MoreItems/TabsMoreItems.js +49 -0
  486. package/__internal__/src/components/TabsCanary/Tab/TabsTab.css +69 -0
  487. package/__internal__/src/components/TabsCanary/Tab/TabsTab.d.ts +5 -0
  488. package/__internal__/src/components/TabsCanary/Tab/TabsTab.js +17 -0
  489. package/__internal__/src/components/TabsCanary/Tabs.css +57 -0
  490. package/__internal__/src/components/TabsCanary/TabsCanary.d.ts +7 -0
  491. package/__internal__/src/components/TabsCanary/TabsCanary.js +67 -0
  492. package/__internal__/src/components/TabsCanary/helpers.d.ts +552 -0
  493. package/__internal__/src/components/TabsCanary/helpers.js +48 -0
  494. package/__internal__/src/components/TabsCanary/types.d.ts +97 -0
  495. package/__internal__/src/components/TabsCanary/types.js +8 -0
  496. package/__internal__/src/utils/getByMap.d.ts +1 -1
  497. package/__internal__/src/utils/getByMap.js +4 -4
  498. package/__internal__/src/utils/getGroups.js +5 -1
  499. package/createIcon/package.json +1 -1
  500. package/createResponsesImage/package.json +1 -1
  501. package/package.json +5 -1
  502. package/useBreakpoints/package.json +1 -1
  503. package/useChoiceGroup/package.json +1 -1
  504. package/useChoiceGroupIndexed/package.json +1 -1
  505. package/useClickOutside/package.json +1 -1
  506. package/useComponentSize/package.json +1 -1
  507. package/useDebounce/package.json +1 -1
  508. package/useFlag/package.json +1 -1
  509. package/useForkRef/package.json +1 -1
  510. package/useGlobalKeys/package.json +1 -1
  511. package/useHideElementsInLine/package.json +1 -1
  512. package/useKeys/package.json +1 -1
  513. package/useMutableRef/package.json +1 -1
  514. package/useOverflow/package.json +1 -1
  515. package/usePrevious/package.json +1 -1
  516. package/useRefs/package.json +1 -1
  517. package/useResizeObserved/package.json +1 -1
  518. package/useScrollElements/package.json +1 -1
  519. package/useScrollPosition/package.json +1 -1
  520. package/useSelect/package.json +1 -1
  521. package/useSortSteps/package.json +1 -1
  522. package/useThemeVars/package.json +1 -1
  523. package/useTimer/package.json +1 -1
  524. package/withTooltip/package.json +1 -1
  525. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.css +0 -9
  526. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.d.ts +0 -9
  527. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.js +0 -21
  528. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.css +0 -9
  529. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.d.ts +0 -9
  530. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.js +0 -17
@@ -1,19 +1,29 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
- import React, { forwardRef, useEffect, useRef, useState } from 'react';
3
- import { addMonths, startOfYear } from 'date-fns';
2
+ import React, { forwardRef, useEffect, useRef } from 'react';
3
+ import addYears from 'date-fns/addYears';
4
+ import startOfYear from 'date-fns/startOfYear';
4
5
  import { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';
5
6
  import { useFlag } from '../../../hooks/useFlag/useFlag';
6
7
  import { setRef } from '../../../utils/setRef';
7
8
  import { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';
8
9
  import { DatePickerFieldTypeMonth } from '../DatePickerFieldTypeMonth/DatePickerFieldTypeMonth';
10
+ import { getDropdownZIndex } from '../helpers';
11
+ import { datePickerPropDateTimeViewDefault } from '../types';
9
12
  import { useCurrentVisibleDate } from '../useCurrentVisibleDate';
10
13
  export var DatePickerTypeMonth = forwardRef(function (props, ref) {
11
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, style = props.style, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "style"]);
14
+ var events = props.events, _a = props.dateTimeView, dateTimeView = _a === void 0 ? datePickerPropDateTimeViewDefault : _a, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
12
15
  var fieldRef = useRef(null);
13
16
  var calendarRef = useRef(null);
14
- var _a = __read(useFlag(false), 2), calendarVisible = _a[0], setCalendarVisible = _a[1];
15
- var _b = __read(useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _b[0], setCurrentVisibleDate = _b[1];
16
- var _c = __read(useState(), 2), calendarVisibleDate = _c[0], setCalendarVisibleDate = _c[1];
17
+ var _b = __read(useFlag(false), 2), calendarVisible = _b[0], setCalendarVisible = _b[1];
18
+ var _c = __read(useCurrentVisibleDate({
19
+ currentVisibleDate: currentVisibleDateProp,
20
+ maxDate: props.maxDate,
21
+ minDate: props.minDate,
22
+ value: props.value,
23
+ startOfUnit: startOfYear,
24
+ onChangeCurrentVisibleDate: onChangeCurrentVisibleDate,
25
+ calendarVisible: calendarVisible
26
+ }), 2), currentVisibleDate = _c[0], setCurrentVisibleDate = _c[1];
17
27
  var onFocusHandler = function (e) {
18
28
  onFocus && onFocus(e);
19
29
  setCalendarVisible.on();
@@ -24,35 +34,31 @@ export var DatePickerTypeMonth = forwardRef(function (props, ref) {
24
34
  }
25
35
  }, [ref, fieldRef]);
26
36
  useEffect(function () {
27
- if (props.value && props.dateTimeView === 'classic' && calendarVisibleDate) {
37
+ if (props.value && dateTimeView === 'classic' && currentVisibleDate) {
28
38
  var newVisibleDate = startOfYear(props.value);
29
- if (newVisibleDate.getTime() !== calendarVisibleDate.getTime()) {
39
+ if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {
30
40
  setCurrentVisibleDate(newVisibleDate);
31
41
  }
32
42
  return;
33
43
  }
34
- if (props.value && props.dateTimeView !== 'classic' && calendarVisibleDate) {
44
+ if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {
35
45
  var newVisibleDate = startOfYear(props.value);
36
- if (newVisibleDate.getTime() !== calendarVisibleDate.getTime() &&
37
- newVisibleDate.getTime() !== addMonths(calendarVisibleDate, 1).getTime()) {
46
+ if (newVisibleDate.getTime() !== currentVisibleDate.getTime() &&
47
+ newVisibleDate.getTime() !== addYears(currentVisibleDate, 1).getTime()) {
38
48
  setCurrentVisibleDate(newVisibleDate);
39
49
  }
40
50
  }
41
51
  }, [props.value]);
42
- var handleClose = function () {
43
- setCalendarVisible.off();
44
- setCurrentVisibleDate(props.value ? undefined : currentVisibleDateProp);
45
- };
46
52
  useClickOutside({
47
53
  isActive: calendarVisible,
48
54
  ignoreClicksInsideRefs: [fieldRef, calendarRef],
49
- handler: handleClose
55
+ handler: setCalendarVisible.off
50
56
  });
51
57
  return (React.createElement(React.Fragment, null,
52
- React.createElement(DatePickerFieldTypeMonth, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, style: style })),
58
+ React.createElement(DatePickerFieldTypeMonth, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler })),
53
59
  React.createElement(DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "month", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, currentVisibleDate: currentVisibleDate, form: dropdownForm, onChange: function (params) {
54
60
  var _a;
55
61
  (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params);
56
- handleClose();
57
- }, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined, onChangeCurrentVisibleDate: setCalendarVisibleDate })));
62
+ setCalendarVisible.off();
63
+ }, renderAdditionalControls: renderAdditionalControls, onChangeCurrentVisibleDate: setCurrentVisibleDate, zIndex: getDropdownZIndex(props.style) })));
58
64
  });
@@ -1,22 +1,24 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
- import React, { forwardRef, useEffect, useRef, useState } from 'react';
3
- import { addMonths, startOfYear } from 'date-fns';
2
+ import React, { forwardRef, useCallback, useEffect, useRef, useState } from 'react';
3
+ import addYears from 'date-fns/addYears';
4
+ import startOfYear from 'date-fns/startOfYear';
4
5
  import { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';
5
6
  import { useFlag } from '../../../hooks/useFlag/useFlag';
6
7
  import { useForkRef } from '../../../hooks/useForkRef/useForkRef';
7
8
  import { DatePickerDropdown, } from '../DatePickerDropdown/DatePickerDropdown';
8
9
  import { DatePickerFieldTypeMonthRange } from '../DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange';
9
- import { normalizeRangeValue } from '../helpers';
10
+ import { getDropdownZIndex, normalizeRangeValue } from '../helpers';
11
+ import { datePickerPropDateTimeViewDefault } from '../types';
10
12
  import { useCurrentVisibleDate } from '../useCurrentVisibleDate';
11
13
  export var DatePickerTypeMonthRange = forwardRef(function (props, ref) {
12
14
  var _a, _b, _c, _d;
13
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, style = props.style, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, inputRef = props.inputRef, name = props.name, fieldProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "onBlur", "leftSide", "rightSide", "style", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "inputRef", "name"]);
15
+ var events = props.events, _e = props.dateTimeView, dateTimeView = _e === void 0 ? datePickerPropDateTimeViewDefault : _e, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, inputRef = props.inputRef, name = props.name, fieldProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "onBlur", "leftSide", "rightSide", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "inputRef", "name"]);
14
16
  var startFieldRef = useRef(null);
15
17
  var endFieldRef = useRef(null);
16
18
  var startFieldInputRef = useRef(null);
17
19
  var endFieldInputRef = useRef(null);
18
20
  var calendarRef = useRef(null);
19
- var _e = __read(useState(false), 2), fieldFocused = _e[0], setFieldFocused = _e[1];
21
+ var _f = __read(useState(false), 2), fieldFocused = _f[0], setFieldFocused = _f[1];
20
22
  var startFocused = fieldFocused === 'start';
21
23
  var endFocused = fieldFocused === 'end';
22
24
  var hadleChange = function (_a) {
@@ -29,8 +31,16 @@ export var DatePickerTypeMonthRange = forwardRef(function (props, ref) {
29
31
  (_d = props.onChange) === null || _d === void 0 ? void 0 : _d.call(props, { e: e, value: normalizeRangeValue([(_e = props === null || props === void 0 ? void 0 : props.value) === null || _e === void 0 ? void 0 : _e[0], value]) });
30
32
  }
31
33
  };
32
- var _f = __read(useFlag(false), 2), calendarVisible = _f[0], setCalendarVisible = _f[1];
33
- var _g = __read(useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _g[0], setCurrentVisibleDate = _g[1];
34
+ var _g = __read(useFlag(false), 2), calendarVisible = _g[0], setCalendarVisible = _g[1];
35
+ var _h = __read(useCurrentVisibleDate({
36
+ currentVisibleDate: currentVisibleDateProp,
37
+ maxDate: props.maxDate,
38
+ minDate: props.minDate,
39
+ value: props.value,
40
+ startOfUnit: startOfYear,
41
+ onChangeCurrentVisibleDate: onChangeCurrentVisibleDate,
42
+ calendarVisible: calendarVisible
43
+ }), 2), currentVisibleDate = _h[0], setCurrentVisibleDate = _h[1];
34
44
  var startFieldOnBlurHandler = function (e) { var _a; return Array.isArray(onBlur) ? (_a = onBlur[0]) === null || _a === void 0 ? void 0 : _a.call(onBlur, e) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(e); };
35
45
  var endFieldOnBlurHandler = function (e) { var _a; return Array.isArray(onBlur) ? (_a = onBlur[1]) === null || _a === void 0 ? void 0 : _a.call(onBlur, e) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(e); };
36
46
  var startFieldOnFocusHandler = function (e) {
@@ -47,58 +57,50 @@ export var DatePickerTypeMonthRange = forwardRef(function (props, ref) {
47
57
  };
48
58
  // эфект для того чтобы календарь переключался при вводе с клавиатуры
49
59
  useEffect(function () {
50
- var _a, _b, _c;
51
- if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) && props.dateTimeView === 'classic' && startFocused) {
60
+ var _a, _b;
61
+ if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) && dateTimeView === 'classic' && startFocused) {
52
62
  var newVisibleDate = startOfYear(props.value[0]);
53
63
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
54
64
  setCurrentVisibleDate(newVisibleDate);
55
65
  }
56
66
  return;
57
67
  }
58
- if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[0]) && props.dateTimeView !== 'classic' && startFocused) {
68
+ if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[0]) && dateTimeView !== 'classic' && startFocused) {
59
69
  var newVisibleDate = startOfYear(props.value[0]);
60
70
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime()) &&
61
71
  newVisibleDate.getTime() !==
62
- (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())) {
72
+ (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())) {
63
73
  setCurrentVisibleDate(newVisibleDate);
64
74
  }
65
- return;
66
- }
67
- if (!((_c = props.value) === null || _c === void 0 ? void 0 : _c[0]) && startFocused) {
68
- setCurrentVisibleDate(currentVisibleDateProp);
69
75
  }
70
76
  }, [(_b = (_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.getTime(), calendarVisible, startFocused]);
71
77
  useEffect(function () {
72
- var _a, _b, _c;
73
- if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[1]) && props.dateTimeView === 'classic' && endFocused) {
78
+ var _a, _b;
79
+ if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[1]) && dateTimeView === 'classic' && endFocused) {
74
80
  var newVisibleDate = startOfYear(props.value[1]);
75
81
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
76
82
  setCurrentVisibleDate(newVisibleDate);
77
83
  }
78
84
  return;
79
85
  }
80
- if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[1]) && props.dateTimeView !== 'classic' && endFocused) {
86
+ if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[1]) && dateTimeView !== 'classic' && endFocused) {
81
87
  var newVisibleDate = startOfYear(props.value[1]);
82
88
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime()) &&
83
89
  newVisibleDate.getTime() !==
84
- (currentVisibleDate && addMonths(currentVisibleDate, 1).getTime())) {
85
- setCurrentVisibleDate(addMonths(newVisibleDate, -1));
90
+ (currentVisibleDate && addYears(currentVisibleDate, 1).getTime())) {
91
+ setCurrentVisibleDate(addYears(newVisibleDate, -1));
86
92
  }
87
- return;
88
- }
89
- if (!((_c = props.value) === null || _c === void 0 ? void 0 : _c[1]) && endFocused) {
90
- setCurrentVisibleDate(currentVisibleDateProp);
91
93
  }
92
94
  }, [(_d = (_c = props.value) === null || _c === void 0 ? void 0 : _c[1]) === null || _d === void 0 ? void 0 : _d.getTime(), calendarVisible, endFocused]);
93
95
  useClickOutside({
94
96
  isActive: calendarVisible,
95
97
  ignoreClicksInsideRefs: [startFieldRef, endFieldRef, calendarRef],
96
- handler: function () {
98
+ handler: useCallback(function () {
97
99
  setFieldFocused(false);
98
100
  setCalendarVisible.off();
99
- }
101
+ }, [])
100
102
  });
101
103
  return (React.createElement(React.Fragment, null,
102
- React.createElement(DatePickerFieldTypeMonthRange, __assign({}, fieldProps, { style: style, ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef([startFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[0]]), endFieldInputRef: useForkRef([endFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[1]]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[0] : leftSide, startFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[0] : undefined, endFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[1] : undefined, endFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[1] : rightSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused, startFieldName: Array.isArray(name) ? name[0] : name + "_start", endFieldName: Array.isArray(name) ? name[1] : name + "_end" })),
103
- React.createElement(DatePickerDropdown, { type: "month", ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: setCurrentVisibleDate, currentVisibleDate: currentVisibleDate, value: props.value || undefined, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: hadleChange, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined })));
104
+ React.createElement(DatePickerFieldTypeMonthRange, __assign({}, fieldProps, { ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef([startFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[0]]), endFieldInputRef: useForkRef([endFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[1]]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[0] : leftSide, startFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[0] : undefined, endFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[1] : undefined, endFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[1] : rightSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused, startFieldName: Array.isArray(name) ? name[0] : name + "_start", endFieldName: Array.isArray(name) ? name[1] : name + "_end" })),
105
+ React.createElement(DatePickerDropdown, { type: "month", ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: setCurrentVisibleDate, currentVisibleDate: currentVisibleDate, value: props.value || undefined, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: hadleChange, renderAdditionalControls: renderAdditionalControls, zIndex: getDropdownZIndex(props.style) })));
104
106
  });
@@ -5,13 +5,14 @@ import { useFlag } from '../../../hooks/useFlag/useFlag';
5
5
  import { setRef } from '../../../utils/setRef';
6
6
  import { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';
7
7
  import { DatePickerFieldTypeTime } from '../DatePickerFieldTypeTime/DatePickerFieldTypeTime';
8
- import { datePickerPropFormatTypeDateTime, getMultiplicityTime } from '../helpers';
8
+ import { datePickerPropFormatTypeDateTime, getDropdownZIndex, getMultiplicityTime, } from '../helpers';
9
+ import { datePickerPropDateTimeViewDefault } from '../types';
9
10
  export var DatePickerTypeTime = forwardRef(function (props, ref) {
10
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, multiplicityHoursProp = props.multiplicityHours, multiplicityMinutesProp = props.multiplicityMinutes, multiplicitySecondsProp = props.multiplicitySeconds, renderAdditionalControls = props.renderAdditionalControls, style = props.style, currentVisibleDate = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "multiplicityHours", "multiplicityMinutes", "multiplicitySeconds", "renderAdditionalControls", "style", "currentVisibleDate", "onChangeCurrentVisibleDate"]);
11
- var _a = __read(getMultiplicityTime(otherProps.format || datePickerPropFormatTypeDateTime, multiplicityHoursProp, multiplicityMinutesProp, multiplicitySecondsProp), 3), multiplicityHours = _a[0], multiplicityMinutes = _a[1], multiplicitySeconds = _a[2];
11
+ var events = props.events, _a = props.dateTimeView, dateTimeView = _a === void 0 ? datePickerPropDateTimeViewDefault : _a, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, multiplicityHoursProp = props.multiplicityHours, multiplicityMinutesProp = props.multiplicityMinutes, multiplicitySecondsProp = props.multiplicitySeconds, renderAdditionalControls = props.renderAdditionalControls, currentVisibleDate = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "multiplicityHours", "multiplicityMinutes", "multiplicitySeconds", "renderAdditionalControls", "currentVisibleDate", "onChangeCurrentVisibleDate"]);
12
+ var _b = __read(getMultiplicityTime(otherProps.format || datePickerPropFormatTypeDateTime, multiplicityHoursProp, multiplicityMinutesProp, multiplicitySecondsProp), 3), multiplicityHours = _b[0], multiplicityMinutes = _b[1], multiplicitySeconds = _b[2];
12
13
  var fieldRef = useRef(null);
13
14
  var calendarRef = useRef(null);
14
- var _b = __read(useFlag(false), 2), calendarVisible = _b[0], setCalendarVisible = _b[1];
15
+ var _c = __read(useFlag(false), 2), calendarVisible = _c[0], setCalendarVisible = _c[1];
15
16
  var onFocusHandler = function (e) {
16
17
  onFocus && onFocus(e);
17
18
  setCalendarVisible.on();
@@ -24,9 +25,9 @@ export var DatePickerTypeTime = forwardRef(function (props, ref) {
24
25
  useClickOutside({
25
26
  isActive: calendarVisible,
26
27
  ignoreClicksInsideRefs: [fieldRef, calendarRef],
27
- handler: function () { return setCalendarVisible.off(); }
28
+ handler: setCalendarVisible.off
28
29
  });
29
30
  return (React.createElement(React.Fragment, null,
30
- React.createElement(DatePickerFieldTypeTime, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, style: style })),
31
- React.createElement(DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "time", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: props.onChange, renderAdditionalControls: renderAdditionalControls, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined })));
31
+ React.createElement(DatePickerFieldTypeTime, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes })),
32
+ React.createElement(DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "time", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: props.onChange, renderAdditionalControls: renderAdditionalControls, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, zIndex: getDropdownZIndex(props.style) })));
32
33
  });
@@ -1,19 +1,28 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
- import React, { forwardRef, useEffect, useRef, useState } from 'react';
2
+ import React, { forwardRef, useEffect, useRef } from 'react';
3
3
  import { addYears, startOfDecade } from 'date-fns';
4
4
  import { useClickOutside } from '../../../hooks/useClickOutside/useClickOutside';
5
5
  import { useFlag } from '../../../hooks/useFlag/useFlag';
6
6
  import { setRef } from '../../../utils/setRef';
7
7
  import { DatePickerDropdown } from '../DatePickerDropdown/DatePickerDropdown';
8
8
  import { DatePickerFieldTypeYear } from '../DatePickerFieldTypeYear/DatePickerFieldTypeYear';
9
+ import { getDropdownZIndex } from '../helpers';
10
+ import { datePickerPropDateTimeViewDefault } from '../types';
9
11
  import { useCurrentVisibleDate } from '../useCurrentVisibleDate';
10
12
  export var DatePickerTypeYear = forwardRef(function (props, ref) {
11
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, style = props.style, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "style"]);
13
+ var events = props.events, _a = props.dateTimeView, dateTimeView = _a === void 0 ? datePickerPropDateTimeViewDefault : _a, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
12
14
  var fieldRef = useRef(null);
13
15
  var calendarRef = useRef(null);
14
- var _a = __read(useFlag(false), 2), calendarVisible = _a[0], setCalendarVisible = _a[1];
15
- var _b = __read(useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _b[0], setCurrentVisibleDate = _b[1];
16
- var _c = __read(useState(), 2), calendarVisibleDate = _c[0], setCalendarVisibleDate = _c[1];
16
+ var _b = __read(useFlag(false), 2), calendarVisible = _b[0], setCalendarVisible = _b[1];
17
+ var _c = __read(useCurrentVisibleDate({
18
+ currentVisibleDate: currentVisibleDateProp,
19
+ maxDate: props.maxDate,
20
+ minDate: props.minDate,
21
+ value: props.value,
22
+ startOfUnit: startOfDecade,
23
+ onChangeCurrentVisibleDate: onChangeCurrentVisibleDate,
24
+ calendarVisible: calendarVisible
25
+ }), 2), currentVisibleDate = _c[0], setCurrentVisibleDate = _c[1];
17
26
  var onFocusHandler = function (e) {
18
27
  onFocus && onFocus(e);
19
28
  setCalendarVisible.on();
@@ -24,35 +33,31 @@ export var DatePickerTypeYear = forwardRef(function (props, ref) {
24
33
  }
25
34
  }, [ref, fieldRef]);
26
35
  useEffect(function () {
27
- if (props.value && props.dateTimeView === 'classic' && calendarVisibleDate) {
36
+ if (props.value && dateTimeView === 'classic' && currentVisibleDate) {
28
37
  var newVisibleDate = startOfDecade(props.value);
29
- if (newVisibleDate.getTime() !== calendarVisibleDate.getTime()) {
38
+ if (newVisibleDate.getTime() !== currentVisibleDate.getTime()) {
30
39
  setCurrentVisibleDate(newVisibleDate);
31
40
  }
32
41
  return;
33
42
  }
34
- if (props.value && props.dateTimeView !== 'classic' && calendarVisibleDate) {
43
+ if (props.value && dateTimeView !== 'classic' && currentVisibleDate) {
35
44
  var newVisibleDate = startOfDecade(props.value);
36
- if (newVisibleDate.getTime() !== calendarVisibleDate.getTime() &&
37
- newVisibleDate.getTime() !== addYears(calendarVisibleDate, 10).getTime()) {
45
+ if (newVisibleDate.getTime() !== currentVisibleDate.getTime() &&
46
+ newVisibleDate.getTime() !== addYears(currentVisibleDate, 10).getTime()) {
38
47
  setCurrentVisibleDate(newVisibleDate);
39
48
  }
40
49
  }
41
50
  }, [props.value]);
42
- var handleClose = function () {
43
- setCalendarVisible.off();
44
- setCurrentVisibleDate(props.value ? undefined : currentVisibleDateProp);
45
- };
46
51
  useClickOutside({
47
52
  isActive: calendarVisible,
48
53
  ignoreClicksInsideRefs: [fieldRef, calendarRef],
49
- handler: handleClose
54
+ handler: setCalendarVisible.off
50
55
  });
51
56
  return (React.createElement(React.Fragment, null,
52
- React.createElement(DatePickerFieldTypeYear, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, style: style })),
57
+ React.createElement(DatePickerFieldTypeYear, __assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler })),
53
58
  React.createElement(DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "year", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, currentVisibleDate: currentVisibleDate, form: dropdownForm, onChange: function (params) {
54
59
  var _a;
55
60
  (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params);
56
- handleClose();
57
- }, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined, onChangeCurrentVisibleDate: setCalendarVisibleDate })));
61
+ setCalendarVisible.off();
62
+ }, renderAdditionalControls: renderAdditionalControls, zIndex: getDropdownZIndex(props.style), onChangeCurrentVisibleDate: setCurrentVisibleDate })));
58
63
  });
@@ -6,17 +6,18 @@ import { useFlag } from '../../../hooks/useFlag/useFlag';
6
6
  import { useForkRef } from '../../../hooks/useForkRef/useForkRef';
7
7
  import { DatePickerDropdown, } from '../DatePickerDropdown/DatePickerDropdown';
8
8
  import { DatePickerFieldTypeYearRange } from '../DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange';
9
- import { normalizeRangeValue } from '../helpers';
9
+ import { getDropdownZIndex, normalizeRangeValue } from '../helpers';
10
+ import { datePickerPropDateTimeViewDefault } from '../types';
10
11
  import { useCurrentVisibleDate } from '../useCurrentVisibleDate';
11
12
  export var DatePickerTypeYearRange = forwardRef(function (props, ref) {
12
13
  var _a, _b, _c, _d;
13
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, style = props.style, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, inputRef = props.inputRef, name = props.name, fieldProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "onBlur", "leftSide", "rightSide", "style", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "inputRef", "name"]);
14
+ var events = props.events, _e = props.dateTimeView, dateTimeView = _e === void 0 ? datePickerPropDateTimeViewDefault : _e, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, inputRef = props.inputRef, name = props.name, fieldProps = __rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "onBlur", "leftSide", "rightSide", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "inputRef", "name"]);
14
15
  var startFieldRef = useRef(null);
15
16
  var endFieldRef = useRef(null);
16
17
  var startFieldInputRef = useRef(null);
17
18
  var endFieldInputRef = useRef(null);
18
19
  var calendarRef = useRef(null);
19
- var _e = __read(useState(false), 2), fieldFocused = _e[0], setFieldFocused = _e[1];
20
+ var _f = __read(useState(false), 2), fieldFocused = _f[0], setFieldFocused = _f[1];
20
21
  var startFocused = fieldFocused === 'start';
21
22
  var endFocused = fieldFocused === 'end';
22
23
  var hadleChange = function (_a) {
@@ -29,8 +30,16 @@ export var DatePickerTypeYearRange = forwardRef(function (props, ref) {
29
30
  (_d = props.onChange) === null || _d === void 0 ? void 0 : _d.call(props, { e: e, value: normalizeRangeValue([(_e = props === null || props === void 0 ? void 0 : props.value) === null || _e === void 0 ? void 0 : _e[0], value]) });
30
31
  }
31
32
  };
32
- var _f = __read(useFlag(false), 2), calendarVisible = _f[0], setCalendarVisible = _f[1];
33
- var _g = __read(useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _g[0], setCurrentVisibleDate = _g[1];
33
+ var _g = __read(useFlag(false), 2), calendarVisible = _g[0], setCalendarVisible = _g[1];
34
+ var _h = __read(useCurrentVisibleDate({
35
+ currentVisibleDate: currentVisibleDateProp,
36
+ maxDate: props.maxDate,
37
+ minDate: props.minDate,
38
+ value: props.value,
39
+ startOfUnit: startOfDecade,
40
+ onChangeCurrentVisibleDate: onChangeCurrentVisibleDate,
41
+ calendarVisible: calendarVisible
42
+ }), 2), currentVisibleDate = _h[0], setCurrentVisibleDate = _h[1];
34
43
  var startFieldOnBlurHandler = function (e) { var _a; return Array.isArray(onBlur) ? (_a = onBlur[0]) === null || _a === void 0 ? void 0 : _a.call(onBlur, e) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(e); };
35
44
  var endFieldOnBlurHandler = function (e) { var _a; return Array.isArray(onBlur) ? (_a = onBlur[1]) === null || _a === void 0 ? void 0 : _a.call(onBlur, e) : onBlur === null || onBlur === void 0 ? void 0 : onBlur(e); };
36
45
  var startFieldOnFocusHandler = function (e) {
@@ -47,47 +56,39 @@ export var DatePickerTypeYearRange = forwardRef(function (props, ref) {
47
56
  };
48
57
  // эфект для того чтобы календарь переключался при вводе с клавиатуры
49
58
  useEffect(function () {
50
- var _a, _b, _c;
51
- if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) && props.dateTimeView === 'classic' && startFocused) {
59
+ var _a, _b;
60
+ if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) && dateTimeView === 'classic' && startFocused) {
52
61
  var newVisibleDate = startOfDecade(props.value[0]);
53
62
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
54
63
  setCurrentVisibleDate(newVisibleDate);
55
64
  }
56
65
  return;
57
66
  }
58
- if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[0]) && props.dateTimeView !== 'classic' && startFocused) {
67
+ if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[0]) && dateTimeView !== 'classic' && startFocused) {
59
68
  var newVisibleDate = startOfDecade(props.value[0]);
60
69
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime()) &&
61
70
  newVisibleDate.getTime() !==
62
71
  (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())) {
63
72
  setCurrentVisibleDate(newVisibleDate);
64
73
  }
65
- return;
66
- }
67
- if (!((_c = props.value) === null || _c === void 0 ? void 0 : _c[0]) && startFocused) {
68
- setCurrentVisibleDate(currentVisibleDateProp);
69
74
  }
70
75
  }, [(_b = (_a = props.value) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.getTime(), calendarVisible, startFocused]);
71
76
  useEffect(function () {
72
- var _a, _b, _c;
73
- if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[1]) && props.dateTimeView === 'classic' && endFocused) {
77
+ var _a, _b;
78
+ if (((_a = props.value) === null || _a === void 0 ? void 0 : _a[1]) && dateTimeView === 'classic' && endFocused) {
74
79
  var newVisibleDate = startOfDecade(props.value[1]);
75
80
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime())) {
76
81
  setCurrentVisibleDate(newVisibleDate);
77
82
  }
78
83
  return;
79
84
  }
80
- if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[1]) && props.dateTimeView !== 'classic' && endFocused) {
85
+ if (((_b = props.value) === null || _b === void 0 ? void 0 : _b[1]) && dateTimeView !== 'classic' && endFocused) {
81
86
  var newVisibleDate = startOfDecade(props.value[1]);
82
87
  if (newVisibleDate.getTime() !== (currentVisibleDate === null || currentVisibleDate === void 0 ? void 0 : currentVisibleDate.getTime()) &&
83
88
  newVisibleDate.getTime() !==
84
89
  (currentVisibleDate && addYears(currentVisibleDate, 10).getTime())) {
85
90
  setCurrentVisibleDate(addYears(newVisibleDate, -10));
86
91
  }
87
- return;
88
- }
89
- if (!((_c = props.value) === null || _c === void 0 ? void 0 : _c[1]) && endFocused) {
90
- setCurrentVisibleDate(currentVisibleDateProp);
91
92
  }
92
93
  }, [(_d = (_c = props.value) === null || _c === void 0 ? void 0 : _c[1]) === null || _d === void 0 ? void 0 : _d.getTime(), calendarVisible, endFocused]);
93
94
  useClickOutside({
@@ -99,6 +100,6 @@ export var DatePickerTypeYearRange = forwardRef(function (props, ref) {
99
100
  }
100
101
  });
101
102
  return (React.createElement(React.Fragment, null,
102
- React.createElement(DatePickerFieldTypeYearRange, __assign({}, fieldProps, { style: style, ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef([startFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[0]]), endFieldInputRef: useForkRef([endFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[1]]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[0] : leftSide, startFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[0] : undefined, endFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[1] : undefined, endFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[1] : rightSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused, startFieldName: Array.isArray(name) ? name[0] : name + "_start", endFieldName: Array.isArray(name) ? name[1] : name + "_end" })),
103
- React.createElement(DatePickerDropdown, { type: "year", ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: setCurrentVisibleDate, currentVisibleDate: currentVisibleDate, value: props.value || undefined, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: hadleChange, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined })));
103
+ React.createElement(DatePickerFieldTypeYearRange, __assign({}, fieldProps, { ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef([startFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[0]]), endFieldInputRef: useForkRef([endFieldInputRef, inputRef === null || inputRef === void 0 ? void 0 : inputRef[1]]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[0] : leftSide, startFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[0] : undefined, endFieldLeftSide: Array.isArray(leftSide) ? leftSide === null || leftSide === void 0 ? void 0 : leftSide[1] : undefined, endFieldRightSide: Array.isArray(rightSide) ? rightSide === null || rightSide === void 0 ? void 0 : rightSide[1] : rightSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused, startFieldName: Array.isArray(name) ? name[0] : name + "_start", endFieldName: Array.isArray(name) ? name[1] : name + "_end" })),
104
+ React.createElement(DatePickerDropdown, { type: "year", ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: setCurrentVisibleDate, currentVisibleDate: currentVisibleDate, value: props.value || undefined, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, form: dropdownForm, onChange: hadleChange, renderAdditionalControls: renderAdditionalControls, zIndex: getDropdownZIndex(props.style) })));
104
105
  });
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { DateRange } from '../../utils/types/Date';
2
3
  import { TextFieldPropForm } from '../TextField/TextField';
3
4
  import { DatePickerPropType } from './types';
@@ -21,3 +22,4 @@ export declare const getParts: (format: string, separator: string, withTime?: bo
21
22
  export declare const getPartsDate: (value: string, format: string, separator: string, withTime: boolean, markers: string[]) => (string | undefined)[];
22
23
  export declare const isTypeWithTime: (type: DatePickerPropType) => boolean;
23
24
  export declare const getFieldName: (name: [string?, string?] | string | undefined, rangeIndex: 0 | 1) => string | undefined;
25
+ export declare const getDropdownZIndex: (style?: import("react").CSSProperties | undefined) => number | undefined;
@@ -106,3 +106,6 @@ export var getFieldName = function (name, rangeIndex) {
106
106
  }
107
107
  return name + "_" + fieldPrefixs[rangeIndex];
108
108
  };
109
+ export var getDropdownZIndex = function (style) {
110
+ return typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined;
111
+ };
@@ -3,12 +3,13 @@ import { Locale } from 'date-fns';
3
3
  import { IconComponent, IconPropSize } from '../../icons/Icon/Icon';
4
4
  import { DateRange } from '../../utils/types/Date';
5
5
  import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
6
- import { DateTimeAdditionalControlRenderProp, DateTimePropView } from '../DateTimeCanary/helpers';
6
+ import { DateTimePropView } from '../DateTimeCanary/helpers';
7
7
  import { TextFieldPropForm, TextFieldPropSize, TextFieldPropStatus, TextFieldPropView, TextFieldPropWidth } from '../TextField/TextField';
8
8
  export declare const datePickerPropType: readonly ["date", "date-range", "date-time", "date-time-range", "time", "year", "year-range", "month", "month-range"];
9
9
  export declare type DatePickerPropType = typeof datePickerPropType[number];
10
10
  export declare const datePickerPropTypeDefault: "date";
11
11
  export declare type DatePickerPropDateTimeView = DateTimePropView;
12
+ export declare const datePickerPropDateTimeViewDefault: "classic";
12
13
  declare type Range = 'date-range' | 'date-time-range' | 'year-range' | 'month-range';
13
14
  export declare const datePickerErrorTypes: readonly ["outOfRange", "invalidInputAttempt", "startDateIsGreaterThanEndDate"];
14
15
  export declare type DatePickerPropValue<TYPE extends DatePickerPropType> = (TYPE extends Range ? DateRange : Date) | null;
@@ -24,13 +25,17 @@ declare type DatePickerPropInputRef<TYPE> = TYPE extends Range ? [React.Ref<HTML
24
25
  declare type DatePickerPropSide<TYPE> = TYPE extends Range ? [(string | IconComponent)?, (string | IconComponent)?] | string | IconComponent : string | IconComponent;
25
26
  declare type DatePickerPropOnFocus<TYPE> = TYPE extends Range ? [React.FocusEventHandler<HTMLElement>?, React.FocusEventHandler<HTMLElement>?] | React.FocusEventHandler<HTMLElement> : React.FocusEventHandler<HTMLElement>;
26
27
  declare type DatePickerPropName<TYPE> = TYPE extends Range ? [string?, string?] | string : string;
28
+ export declare type DatePickerAdditionalControlRenderFn = (props: {
29
+ currentVisibleDate?: Date;
30
+ }) => React.ReactNode | React.ReactNode[];
31
+ export declare type DatePickerAdditionalControlRenderProp = React.ReactNode | DatePickerAdditionalControlRenderFn;
27
32
  export declare type DatePickerProps<TYPE extends DatePickerPropType = 'date'> = PropsWithHTMLAttributesAndRef<{
28
33
  type?: TYPE;
29
34
  value?: DatePickerPropValue<TYPE>;
30
35
  onChange?: DatePickerPropOnChange<TYPE>;
31
36
  minDate?: Date;
32
37
  maxDate?: Date;
33
- renderAdditionalControls?: DateTimeAdditionalControlRenderProp;
38
+ renderAdditionalControls?: DatePickerAdditionalControlRenderProp;
34
39
  events?: Date[];
35
40
  dateTimeView?: DatePickerPropDateTimeView;
36
41
  locale?: Locale;
@@ -67,6 +72,7 @@ export declare type DatePickerProps<TYPE extends DatePickerPropType = 'date'> =
67
72
  multiplicitySeconds?: number;
68
73
  multiplicityMinutes?: number;
69
74
  multiplicityHours?: number;
75
+ isMobile?: number;
70
76
  }, HTMLDivElement>;
71
77
  export declare type DatePickerComponent = <TYPE extends DatePickerPropType = 'date'>(props: DatePickerProps<TYPE>) => React.ReactElement | null;
72
78
  export declare type DatePickerTypeComponent<TYPE extends DatePickerPropType> = (props: Omit<DatePickerProps<TYPE>, 'type'>) => React.ReactElement | null;
@@ -1,3 +1,4 @@
1
+ import { dateTimePropViewDefault } from '../DateTimeCanary/helpers';
1
2
  export var datePickerPropType = [
2
3
  'date',
3
4
  'date-range',
@@ -10,6 +11,7 @@ export var datePickerPropType = [
10
11
  'month-range',
11
12
  ];
12
13
  export var datePickerPropTypeDefault = datePickerPropType[0];
14
+ export var datePickerPropDateTimeViewDefault = dateTimePropViewDefault;
13
15
  export var datePickerErrorTypes = [
14
16
  'outOfRange',
15
17
  'invalidInputAttempt',
@@ -1,2 +1,5 @@
1
- import React from 'react';
2
- export declare const useCurrentVisibleDate: (date?: Date | undefined, onChange?: ((date: Date) => void) | undefined) => [Date | undefined, React.Dispatch<React.SetStateAction<Date | undefined>>];
1
+ /// <reference types="react" />
2
+ import { UseCurrentVisibleDateProps } from '../DateTimeCanary/helpers/useCurrentVisibleDate';
3
+ export declare const useCurrentVisibleDate: (props: UseCurrentVisibleDateProps & {
4
+ calendarVisible: boolean;
5
+ }) => [Date, import("react").Dispatch<import("react").SetStateAction<Date>>];
@@ -1,8 +1,11 @@
1
- import { useEffect, useState } from 'react';
2
- export var useCurrentVisibleDate = function (date, onChange) {
3
- var _a;
4
- var state = useState(date);
5
- useEffect(function () { return state[1](date); }, [date === null || date === void 0 ? void 0 : date.getTime()]);
6
- useEffect(function () { return state[0] && (onChange === null || onChange === void 0 ? void 0 : onChange(state[0])); }, [(_a = state[0]) === null || _a === void 0 ? void 0 : _a.getTime()]);
1
+ import { useEffect } from 'react';
2
+ import { getCurrentVisibleDate, useCurrentVisibleDate as useDateTimeCurrentVisibleDate, } from '../DateTimeCanary/helpers/useCurrentVisibleDate';
3
+ export var useCurrentVisibleDate = function (props) {
4
+ var state = useDateTimeCurrentVisibleDate(props);
5
+ useEffect(function () {
6
+ if (props.calendarVisible) {
7
+ state[1](getCurrentVisibleDate(props));
8
+ }
9
+ }, [props.calendarVisible]);
7
10
  return state;
8
11
  };
@@ -83,7 +83,7 @@
83
83
 
84
84
  /* исправляет разрыв между полосками */
85
85
 
86
- .DateTimeSlider-Parent_selected + .DateTimeSlider-Parent_selected {
86
+ .DateTimeSlider-Parent_selected + .DateTimeSlider-Parent_selected::before {
87
87
  left: calc(var(--value-offset) - 1px);
88
88
  width: calc(var(--value-width) + 1px);
89
89
  }