@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
@@ -3,7 +3,6 @@ import React, { forwardRef, useEffect } from 'react';
3
3
  import { addMonths, startOfMonth } from 'date-fns';
4
4
  import ruLocale from 'date-fns/locale/ru';
5
5
  import { useFlag } from '../../../hooks/useFlag/useFlag';
6
- import { DateTimeAdditionalControls } from '../DateTimeAdditionalControls/DateTimeAdditionalControls';
7
6
  import { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';
8
7
  import { DateTimeMonth } from '../DateTimeMonth/DateTimeMonth';
9
8
  import { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';
@@ -13,24 +12,24 @@ import { getDaysOfMonth, getDaysOfWeek, getHandleSelectDate, getMouthLabelWithYe
13
12
  import { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';
14
13
  import { cnDateTimeMixLayout } from '../mixs';
15
14
  export var DateTimeTypeDate = forwardRef(function (props, ref) {
16
- var className = props.className, minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["className", "minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "view", "onMove", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
17
- var _c = __read(useFlag(), 2), changeMonth = _c[0], _d = _c[1], on = _d.on, off = _d.off;
15
+ var className = props.className, minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, otherProps = __rest(props, ["className", "minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "view", "onMove", "onChangeCurrentVisibleDate"]);
16
+ var _c = __read(useFlag(), 2), changeMonth = _c[0], setChangeMonth = _c[1];
18
17
  useEffect(function () {
19
18
  !changeMonth && (onMove === null || onMove === void 0 ? void 0 : onMove(moveTypes[2]));
20
19
  }, [changeMonth]);
21
- var _e = __read(useCurrentVisibleDate({
20
+ var _d = __read(useCurrentVisibleDate({
22
21
  currentVisibleDate: currentVisibleDateProp,
23
22
  maxDate: maxDate,
24
23
  minDate: minDate,
25
24
  value: value,
26
25
  startOfUnit: startOfMonth,
27
26
  onChangeCurrentVisibleDate: onChangeCurrentVisibleDate
28
- }), 2), currentVisibleDate = _e[0], setCurrentVisibleDate = _e[1];
27
+ }), 2), currentVisibleDate = _d[0], setCurrentVisibleDate = _d[1];
29
28
  if (changeMonth) {
30
29
  return (React.createElement(DateTimeTypeMonth, __assign({}, otherProps, { ref: ref, className: className, minDate: minDate, maxDate: maxDate, locale: locale, events: events, currentVisibleDate: currentVisibleDate, view: view, onChange: function (_a) {
31
30
  var value = _a.value;
32
31
  setCurrentVisibleDate(value);
33
- off();
32
+ setChangeMonth.off();
34
33
  }, onMove: onMove })));
35
34
  }
36
35
  var handleSelectDate = getHandleSelectDate({
@@ -56,9 +55,8 @@ export var DateTimeTypeDate = forwardRef(function (props, ref) {
56
55
  var prevMonthHandle = function () { return setCurrentVisibleDate(addMonths(currentVisibleDate, -1)); };
57
56
  if (view === dateTimePropView[0]) {
58
57
  return (React.createElement("div", __assign({}, otherProps, { ref: ref, className: cnDateTimeMixLayout({ view: view }, [className]) }),
59
- React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: prevMonthHandle, nextOnClick: nextMonthHandle, label: pageOneLabel, onLabelClick: on }),
60
- React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageOneDaysOfMonth }),
61
- React.createElement(DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: renderAdditionalControls })));
58
+ React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: prevMonthHandle, nextOnClick: nextMonthHandle, label: pageOneLabel, onLabelClick: setChangeMonth.on }),
59
+ React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageOneDaysOfMonth })));
62
60
  }
63
61
  var pageTwoCurrentVisibleDate = addMonths(currentVisibleDate, 1);
64
62
  var pageTwoDaysOfMonth = getDaysOfMonth({
@@ -75,21 +73,19 @@ export var DateTimeTypeDate = forwardRef(function (props, ref) {
75
73
  return (React.createElement(React.Fragment, null,
76
74
  React.createElement("div", __assign({}, otherProps, { ref: ref, className: cnDateTimeMixLayout({ view: view }, [className]) }),
77
75
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
78
- React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: prevMonthHandle, label: pageOneLabel, onLabelClick: on }),
76
+ React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: prevMonthHandle, label: pageOneLabel, onLabelClick: setChangeMonth.on }),
79
77
  React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageOneDaysOfMonth })),
80
78
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
81
- React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), nextOnClick: nextMonthHandle, label: pageTwoLabel, onLabelClick: on }),
82
- React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageTwoDaysOfMonth }))),
83
- React.createElement(DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: renderAdditionalControls })));
79
+ React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), nextOnClick: nextMonthHandle, label: pageTwoLabel, onLabelClick: setChangeMonth.on }),
80
+ React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageTwoDaysOfMonth })))));
84
81
  }
85
82
  return (React.createElement("div", __assign({}, otherProps, { ref: ref, className: cnDateTimeMixLayout({ view: view }, [className]) }),
86
83
  React.createElement(DateTimeYearSlider, { className: cnDateTimeMixLayout('Slider'), currentVisibleDate: currentVisibleDate, onChange: setCurrentVisibleDate, value: value, locale: locale }),
87
84
  React.createElement("div", { className: cnDateTimeMixLayout('PageWrapper') },
88
85
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
89
- React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageOneLabel, onClick: on, cursor: "pointer" }),
86
+ React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageOneLabel, onClick: setChangeMonth.on, cursor: "pointer" }),
90
87
  React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageOneDaysOfMonth })),
91
88
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
92
- React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageTwoLabel, onClick: on, cursor: "pointer" }),
93
- React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageTwoDaysOfMonth }))),
94
- React.createElement(DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: renderAdditionalControls })));
89
+ React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageTwoLabel, onClick: setChangeMonth.on, cursor: "pointer" }),
90
+ React.createElement(DateTimeMonth, { daysOfWeek: daysOfWeek, daysOfMonth: pageTwoDaysOfMonth })))));
95
91
  });
@@ -3,14 +3,13 @@ import './DateTimeTypeDateTime.css';
3
3
  import React, { forwardRef, useEffect, useRef, useState } from 'react';
4
4
  import { useForkRef } from '../../../hooks/useForkRef/useForkRef';
5
5
  import { cn } from '../../../utils/bem';
6
- import { DateTimeAdditionalControls } from '../DateTimeAdditionalControls/DateTimeAdditionalControls';
7
6
  import { DateTimeTypeDate } from '../DateTimeTypeDate/DateTimeTypeDate';
8
7
  import { DateTimeTypeTime } from '../DateTimeTypeTime/DateTimeTypeTime';
9
8
  import { moveTypes } from '../helpers';
10
9
  import { useOnChange } from './useOnChange';
11
10
  var cnDateTimeTypeDateTime = cn('DateTimeTypeDateTime');
12
11
  export var DateTimeTypeDateTime = forwardRef(function (props, ref) {
13
- var className = props.className, onMoveProp = props.onMove, currentVisibleDate = props.currentVisibleDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, minDate = props.minDate, maxDate = props.maxDate, events = props.events, locale = props.locale, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, multiplicitySeconds = props.multiplicitySeconds, multiplicityMinutes = props.multiplicityMinutes, multiplicityHours = props.multiplicityHours, style = props.style, renderAdditionalControls = props.renderAdditionalControls, _a = props.timeFor, timeFor = _a === void 0 ? 'start' : _a, otherProps = __rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "onChangeRange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "renderAdditionalControls", "timeFor"]);
12
+ var className = props.className, onMoveProp = props.onMove, currentVisibleDate = props.currentVisibleDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, minDate = props.minDate, maxDate = props.maxDate, events = props.events, locale = props.locale, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, multiplicitySeconds = props.multiplicitySeconds, multiplicityMinutes = props.multiplicityMinutes, multiplicityHours = props.multiplicityHours, style = props.style, _a = props.timeFor, timeFor = _a === void 0 ? 'start' : _a, otherProps = __rest(props, ["className", "onMove", "currentVisibleDate", "value", "onChange", "onChangeRange", "minDate", "maxDate", "events", "locale", "onChangeCurrentVisibleDate", "multiplicitySeconds", "multiplicityMinutes", "multiplicityHours", "style", "timeFor"]);
14
13
  var _b = __read(useState(moveTypes[2]), 2), moveType = _b[0], setMoveType = _b[1];
15
14
  var _c = __read(useState({
16
15
  '--root-padding-left': '0px'
@@ -31,7 +30,6 @@ export var DateTimeTypeDateTime = forwardRef(function (props, ref) {
31
30
  }, []);
32
31
  return (React.createElement(React.Fragment, null,
33
32
  React.createElement("div", __assign({}, otherProps, { className: cnDateTimeTypeDateTime({ withTime: withTime }, [className]), ref: useForkRef([rootRef, ref]), style: __assign(__assign({}, style), cssVars) }),
34
- React.createElement(DateTimeTypeDate, { className: cnDateTimeTypeDateTime('Date', { withTime: withTime }), onMove: onMove, currentVisibleDate: currentVisibleDate, value: value, onChange: onDateChange, onChangeRange: onDateChangeRange, minDate: minDate, maxDate: maxDate, events: events, locale: locale, renderAdditionalControls: withTime ? undefined : renderAdditionalControls, onChangeCurrentVisibleDate: onChangeCurrentVisibleDate }),
35
- withTime && (React.createElement(DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value: valueTime, onChange: onTimeChange, minDate: minDate, maxDate: maxDate, locale: locale, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, multiplicityHours: multiplicityHours }))),
36
- React.createElement(DateTimeAdditionalControls, { currentVisibleDate: currentVisibleDate, renderAdditionalControls: withTime ? renderAdditionalControls : undefined })));
33
+ React.createElement(DateTimeTypeDate, { className: cnDateTimeTypeDateTime('Date', { withTime: withTime }), onMove: onMove, currentVisibleDate: currentVisibleDate, value: value, onChange: onDateChange, onChangeRange: onDateChangeRange, minDate: minDate, maxDate: maxDate, events: events, locale: locale, onChangeCurrentVisibleDate: onChangeCurrentVisibleDate }),
34
+ withTime && (React.createElement(DateTimeTypeTime, { className: cnDateTimeTypeDateTime('Time'), value: valueTime, onChange: onTimeChange, minDate: minDate, maxDate: maxDate, locale: locale, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes, multiplicityHours: multiplicityHours })))));
37
35
  });
@@ -5,7 +5,6 @@ import ruLocale from 'date-fns/locale/ru';
5
5
  import { useFlag } from '../../../hooks/useFlag/useFlag';
6
6
  import { DateTime10Years } from '../DateTime10Years/DateTime10Years';
7
7
  import { DateTime10YearSlider } from '../DateTime10YearSlider/DateTime10YearSlider';
8
- import { DateTimeAdditionalControls } from '../DateTimeAdditionalControls/DateTimeAdditionalControls';
9
8
  import { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';
10
9
  import { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';
11
10
  import { DateTimeTypeYear } from '../DateTimeTypeYear/DateTimeTypeYear';
@@ -14,7 +13,7 @@ import { getHandleSelectDate, getMonthsOfYear, getYearTitle, isEqualMount, moveT
14
13
  import { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';
15
14
  import { cnDateTimeMixLayout } from '../mixs';
16
15
  export var DateTimeTypeMonth = forwardRef(function (props, ref) {
17
- var minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, className = props.className, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "className", "view", "onMove", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
16
+ var minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, className = props.className, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, otherProps = __rest(props, ["minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "className", "view", "onMove", "onChangeCurrentVisibleDate"]);
18
17
  var _c = __read(useFlag(), 2), changeYear = _c[0], _d = _c[1], on = _d.on, off = _d.off;
19
18
  useEffect(function () {
20
19
  !changeYear && (onMove === null || onMove === void 0 ? void 0 : onMove(moveTypes[1]));
@@ -57,8 +56,7 @@ export var DateTimeTypeMonth = forwardRef(function (props, ref) {
57
56
  if (view === dateTimePropView[0]) {
58
57
  return (React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
59
58
  React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: handlePrev, nextOnClick: handleNext, label: pageOneLabel, onLabelClick: on }),
60
- React.createElement(DateTimeYear, { years: pageOneMonthsOfYear }),
61
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
59
+ React.createElement(DateTimeYear, { years: pageOneMonthsOfYear })));
62
60
  }
63
61
  var pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 1);
64
62
  var pageTwoLabel = getYearTitle(pageTwoCurrentVisibleDate);
@@ -79,8 +77,7 @@ export var DateTimeTypeMonth = forwardRef(function (props, ref) {
79
77
  React.createElement(DateTime10Years, { years: pageOneMonthsOfYear })),
80
78
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
81
79
  React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), nextOnClick: handleNext, label: pageTwoLabel, onLabelClick: on }),
82
- React.createElement(DateTime10Years, { years: pageTwoMonthsOfYear }))),
83
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
80
+ React.createElement(DateTime10Years, { years: pageTwoMonthsOfYear })))));
84
81
  }
85
82
  return (React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
86
83
  React.createElement(DateTime10YearSlider, { className: cnDateTimeMixLayout('Slider'), currentVisibleDate: currentVisibleDate, onChange: setCurrentVisibleDate, value: value, locale: locale }),
@@ -90,6 +87,5 @@ export var DateTimeTypeMonth = forwardRef(function (props, ref) {
90
87
  React.createElement(DateTime10Years, { years: pageOneMonthsOfYear })),
91
88
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
92
89
  React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageTwoLabel, onClick: on, cursor: "pointer" }),
93
- React.createElement(DateTime10Years, { years: pageTwoMonthsOfYear }))),
94
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
90
+ React.createElement(DateTime10Years, { years: pageTwoMonthsOfYear })))));
95
91
  });
@@ -2,7 +2,6 @@ import { __assign, __read, __rest } from "tslib";
2
2
  import './DateTimeTypeTime.css';
3
3
  import React, { forwardRef, useEffect, useMemo } from 'react';
4
4
  import { cn } from '../../../utils/bem';
5
- import { DateTimeAdditionalControls } from '../DateTimeAdditionalControls/DateTimeAdditionalControls';
6
5
  import { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';
7
6
  import { DateTimeTimeColumn } from '../DateTimeTimeColumn/DateTimeTimeColumn';
8
7
  import { getTimeTitle, moveTypes } from '../helpers';
@@ -11,7 +10,7 @@ var cnDateTimeTypeTime = cn('DateTimeTypeTime');
11
10
  export var DateTimeTypeTime = forwardRef(function (props, ref) {
12
11
  var _a;
13
12
  var _b, _c, _d;
14
- var localeProp = props.locale, value = props.value, className = props.className, onChange = props.onChange, maxDate = props.maxDate, minDate = props.minDate, _e = props.multiplicityHours, multiplicityHours = _e === void 0 ? 1 : _e, _f = props.multiplicityMinutes, multiplicityMinutes = _f === void 0 ? 1 : _f, _g = props.multiplicitySeconds, multiplicitySeconds = _g === void 0 ? 1 : _g, onMove = props.onMove, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["locale", "value", "className", "onChange", "maxDate", "minDate", "multiplicityHours", "multiplicityMinutes", "multiplicitySeconds", "onMove", "renderAdditionalControls"]);
13
+ var localeProp = props.locale, value = props.value, className = props.className, onChange = props.onChange, maxDate = props.maxDate, minDate = props.minDate, _e = props.multiplicityHours, multiplicityHours = _e === void 0 ? 1 : _e, _f = props.multiplicityMinutes, multiplicityMinutes = _f === void 0 ? 1 : _f, _g = props.multiplicitySeconds, multiplicitySeconds = _g === void 0 ? 1 : _g, onMove = props.onMove, otherProps = __rest(props, ["locale", "value", "className", "onChange", "maxDate", "minDate", "multiplicityHours", "multiplicityMinutes", "multiplicitySeconds", "onMove"]);
15
14
  useEffect(function () {
16
15
  onMove === null || onMove === void 0 ? void 0 : onMove(moveTypes[3]);
17
16
  }, []);
@@ -29,6 +28,5 @@ export var DateTimeTypeTime = forwardRef(function (props, ref) {
29
28
  React.createElement("div", { className: cnDateTimeTypeTime('Grid') },
30
29
  React.createElement(DateTimeTimeColumn, { label: locale.hours, items: hours }),
31
30
  React.createElement(DateTimeTimeColumn, { label: locale.minutes, items: minutes }),
32
- React.createElement(DateTimeTimeColumn, { label: locale.seconds, items: seconds })),
33
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls })));
31
+ React.createElement(DateTimeTimeColumn, { label: locale.seconds, items: seconds }))));
34
32
  });
@@ -4,14 +4,13 @@ import { addYears, startOfDecade } from 'date-fns';
4
4
  import ruLocale from 'date-fns/locale/ru';
5
5
  import { DateTime10Years } from '../DateTime10Years/DateTime10Years';
6
6
  import { DateTime100YearSlider } from '../DateTime100YearSlider/DateTime100YearSlider';
7
- import { DateTimeAdditionalControls } from '../DateTimeAdditionalControls/DateTimeAdditionalControls';
8
7
  import { DateTimeLabel } from '../DateTimeLabel/DateTimeLabel';
9
8
  import { DateTimeToggler } from '../DateTimeToggler/DateTimeToggler';
10
9
  import { getDecadeTitle, getHandleSelectDate, getYearsOfDecade, isEqualYear, moveTypes, useCurrentVisibleDate, } from '../helpers';
11
10
  import { dateTimePropView, dateTimePropViewDefault } from '../helpers/types';
12
11
  import { cnDateTimeMixLayout } from '../mixs';
13
12
  export var DateTimeTypeYear = forwardRef(function (props, ref) {
14
- var minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, className = props.className, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, otherProps = __rest(props, ["minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "className", "view", "onMove", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
13
+ var minDate = props.minDate, maxDate = props.maxDate, value = props.value, onChange = props.onChange, onChangeRange = props.onChangeRange, currentVisibleDateProp = props.currentVisibleDate, events = props.events, _a = props.locale, locale = _a === void 0 ? ruLocale : _a, className = props.className, _b = props.view, view = _b === void 0 ? dateTimePropViewDefault : _b, onMove = props.onMove, onChangeCurrentVisibleDate = props.onChangeCurrentVisibleDate, otherProps = __rest(props, ["minDate", "maxDate", "value", "onChange", "onChangeRange", "currentVisibleDate", "events", "locale", "className", "view", "onMove", "onChangeCurrentVisibleDate"]);
15
14
  useEffect(function () {
16
15
  onMove === null || onMove === void 0 ? void 0 : onMove(moveTypes[0]);
17
16
  }, []);
@@ -46,8 +45,7 @@ export var DateTimeTypeYear = forwardRef(function (props, ref) {
46
45
  if (view === dateTimePropView[0]) {
47
46
  return (React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
48
47
  React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: handlePrev, nextOnClick: handleNext, label: pageOneLabel }),
49
- React.createElement(DateTime10Years, { years: pageOneYearsOfDecade }),
50
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
48
+ React.createElement(DateTime10Years, { years: pageOneYearsOfDecade })));
51
49
  }
52
50
  var pageTwoCurrentVisibleDate = addYears(currentVisibleDate, 10);
53
51
  var pageTwoYearsOfDecade = getYearsOfDecade({
@@ -61,15 +59,13 @@ export var DateTimeTypeYear = forwardRef(function (props, ref) {
61
59
  });
62
60
  var pageTwoLabel = getDecadeTitle(pageTwoCurrentVisibleDate);
63
61
  if (view === dateTimePropView[1]) {
64
- return (React.createElement(React.Fragment, null,
65
- React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
66
- React.createElement("div", { className: cnDateTimeMixLayout('Page') },
67
- React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: handlePrev, label: pageOneLabel }),
68
- React.createElement(DateTime10Years, { years: pageOneYearsOfDecade })),
69
- React.createElement("div", { className: cnDateTimeMixLayout('Page') },
70
- React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), nextOnClick: handleNext, label: pageTwoLabel }),
71
- React.createElement(DateTime10Years, { years: pageTwoYearsOfDecade }))),
72
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
62
+ return (React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
63
+ React.createElement("div", { className: cnDateTimeMixLayout('Page') },
64
+ React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), prevOnClick: handlePrev, label: pageOneLabel }),
65
+ React.createElement(DateTime10Years, { years: pageOneYearsOfDecade })),
66
+ React.createElement("div", { className: cnDateTimeMixLayout('Page') },
67
+ React.createElement(DateTimeToggler, { className: cnDateTimeMixLayout('Label'), nextOnClick: handleNext, label: pageTwoLabel }),
68
+ React.createElement(DateTime10Years, { years: pageTwoYearsOfDecade }))));
73
69
  }
74
70
  return (React.createElement("div", __assign({}, otherProps, { className: cnDateTimeMixLayout({ view: view }, [className]), ref: ref }),
75
71
  React.createElement(DateTime100YearSlider, { className: cnDateTimeMixLayout('Slider'), currentVisibleDate: currentVisibleDate, onChange: setCurrentVisibleDate, value: value, locale: locale }),
@@ -79,6 +75,5 @@ export var DateTimeTypeYear = forwardRef(function (props, ref) {
79
75
  React.createElement(DateTime10Years, { years: pageOneYearsOfDecade })),
80
76
  React.createElement("div", { className: cnDateTimeMixLayout('Page') },
81
77
  React.createElement(DateTimeLabel, { className: cnDateTimeMixLayout('Label'), label: pageTwoLabel }),
82
- React.createElement(DateTime10Years, { years: pageTwoYearsOfDecade }))),
83
- React.createElement(DateTimeAdditionalControls, { renderAdditionalControls: renderAdditionalControls, currentVisibleDate: currentVisibleDate })));
78
+ React.createElement(DateTime10Years, { years: pageTwoYearsOfDecade })))));
84
79
  });
@@ -45,14 +45,8 @@ export declare type DateTimeProps<TYPE extends DateTimePropType = 'date'> = Prop
45
45
  multiplicityMinutes?: number;
46
46
  multiplicityHours?: number;
47
47
  onMove?: (type: MoveType) => void;
48
- renderAdditionalControls?: DateTimeAdditionalControlRenderProp;
49
48
  timeFor?: DateTimePropTimeFor<TYPE>;
50
49
  }, HTMLDivElement>;
51
- export declare type DateTimeAdditionalControlRenderProp = React.ReactNode | React.ReactNode[] | AdditionalControlRenderType;
52
- export declare type AdditionalControlRenderType = (props: DateTimeAdditionalControlRenderProps) => React.ReactNode | React.ReactNode[];
53
- export declare type DateTimeAdditionalControlRenderProps = {
54
- currentVisibleDate?: Date;
55
- };
56
50
  export declare type DateTimeComponent = <TYPE extends DateTimePropType = 'date'>(props: DateTimeProps<TYPE>) => React.ReactElement | null;
57
51
  export declare type DateTimeTypeComponent<TYPE extends DateTimePropType> = (props: Omit<DateTimeProps<TYPE>, 'type'>) => React.ReactElement | null;
58
52
  export declare type HandleSelectDate = (props: {
@@ -4,9 +4,13 @@ declare type GetCurrentVisibleDateProps = {
4
4
  currentVisibleDate: Date | undefined;
5
5
  minDate: Date | undefined;
6
6
  maxDate: Date | undefined;
7
- value: Date | DateRange | undefined;
7
+ value: Date | DateRange | undefined | null;
8
8
  startOfUnit: (date: Date) => Date;
9
9
  onChangeCurrentVisibleDate?: (date: Date) => void;
10
10
  };
11
- export declare const useCurrentVisibleDate: (props: GetCurrentVisibleDateProps) => [Date, import("react").Dispatch<import("react").SetStateAction<Date>>];
11
+ export declare type UseCurrentVisibleDateProps = GetCurrentVisibleDateProps & {
12
+ onChangeCurrentVisibleDate?: (date: Date) => void;
13
+ };
14
+ export declare const getCurrentVisibleDate: (props: GetCurrentVisibleDateProps) => Date;
15
+ export declare const useCurrentVisibleDate: (props: UseCurrentVisibleDateProps) => [Date, import("react").Dispatch<import("react").SetStateAction<Date>>];
12
16
  export {};
@@ -1,6 +1,6 @@
1
1
  import { useEffect, useMemo, useState } from 'react';
2
2
  import { isDateInRange } from './isDateInRange';
3
- var getCurrentVisibleDate = function (_a) {
3
+ var calculateCurrentVisibleDate = function (_a) {
4
4
  var currentVisibleDate = _a.currentVisibleDate, minDate = _a.minDate, maxDate = _a.maxDate, value = _a.value;
5
5
  if (currentVisibleDate) {
6
6
  return currentVisibleDate;
@@ -34,10 +34,13 @@ var getCurrentVisibleDate = function (_a) {
34
34
  }
35
35
  return currentDate;
36
36
  };
37
+ export var getCurrentVisibleDate = function (props) {
38
+ return props.startOfUnit(calculateCurrentVisibleDate(props));
39
+ };
37
40
  export var useCurrentVisibleDate = function (props) {
38
- var _a, _b, _c;
41
+ var _a, _b, _c, _d;
39
42
  var currentVisibleDate = useMemo(function () {
40
- return props.startOfUnit(getCurrentVisibleDate(props));
43
+ return getCurrentVisibleDate(props);
41
44
  }, [
42
45
  ((_a = props.currentVisibleDate) === null || _a === void 0 ? void 0 : _a.getTime()) || 0,
43
46
  ((_b = props.minDate) === null || _b === void 0 ? void 0 : _b.getTime()) || 0,
@@ -45,6 +48,6 @@ export var useCurrentVisibleDate = function (props) {
45
48
  ]);
46
49
  var state = useState(currentVisibleDate);
47
50
  useEffect(function () { return state[1](currentVisibleDate); }, [currentVisibleDate.getTime()]);
48
- useEffect(function () { var _a; return (_a = props.onChangeCurrentVisibleDate) === null || _a === void 0 ? void 0 : _a.call(props, state[0]); }, [state[0].getTime()]);
51
+ useEffect(function () { var _a; return state[0] && ((_a = props.onChangeCurrentVisibleDate) === null || _a === void 0 ? void 0 : _a.call(props, state[0])); }, [(_d = state[0]) === null || _d === void 0 ? void 0 : _d.getTime()]);
49
52
  return state;
50
53
  };
@@ -1,8 +1,42 @@
1
1
  .Popover {
2
2
  position: absolute;
3
- top: var(--popover-top);
4
- left: var(--popover-left);
5
3
  visibility: var(--popover-visibility);
6
4
  width: var(--popover-width);
7
5
  pointer-events: var(--popover-pointer-events);
8
6
  }
7
+
8
+ .Popover_direction_downCenter,
9
+ .Popover_direction_downRight,
10
+ .Popover_direction_downLeft,
11
+ .Popover_direction_downStartLeft,
12
+ .Popover_direction_downStartRight {
13
+ top: calc(var(--popover-top) + var(--popover-offset));
14
+ left: var(--popover-left);
15
+ }
16
+
17
+ .Popover_direction_upCenter,
18
+ .Popover_direction_upRight,
19
+ .Popover_direction_upLeft,
20
+ .Popover_direction_upStartLeft,
21
+ .Popover_direction_upStartRight {
22
+ top: calc(var(--popover-top) - var(--popover-offset));
23
+ left: var(--popover-left);
24
+ }
25
+
26
+ .Popover_direction_leftUp,
27
+ .Popover_direction_leftCenter,
28
+ .Popover_direction_leftDown,
29
+ .Popover_direction_leftStartUp,
30
+ .Popover_direction_leftStartDown {
31
+ top: var(--popover-top);
32
+ left: calc(var(--popover-left) - var(--popover-offset));
33
+ }
34
+
35
+ .Popover_direction_rightUp,
36
+ .Popover_direction_rightCenter,
37
+ .Popover_direction_rightDown,
38
+ .Popover_direction_rightStartUp,
39
+ .Popover_direction_rightStartDown {
40
+ top: var(--popover-top);
41
+ left: calc(var(--popover-left) + var(--popover-offset));
42
+ }
@@ -4,7 +4,6 @@ import React, { useEffect } from 'react';
4
4
  import { useClickOutside } from '../../hooks/useClickOutside/useClickOutside';
5
5
  import { useComponentSize } from '../../hooks/useComponentSize/useComponentSize';
6
6
  import { useForkRef } from '../../hooks/useForkRef/useForkRef';
7
- import { useThemeVars } from '../../hooks/useThemeVars/useThemeVars';
8
7
  import { cn } from '../../utils/bem';
9
8
  import { PortalWithTheme, usePortalContext } from '../PortalWithTheme/PortalWithTheme';
10
9
  import { useTheme } from '../Theme/Theme';
@@ -86,7 +85,6 @@ export var Popover = React.forwardRef(function (props, componentRef) {
86
85
  setBannedDirections(function (state) { return (state.length ? [] : state); });
87
86
  previousDirectionRef.current = null;
88
87
  };
89
- var vars = useThemeVars();
90
88
  var updateAnchorClientRect = function () { var _a; return setAnchorClientRect((_a = anchorRef === null || anchorRef === void 0 ? void 0 : anchorRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect()); };
91
89
  React.useLayoutEffect(updateAnchorClientRect, [anchorSize]);
92
90
  usePopoverReposition({
@@ -104,9 +102,6 @@ export var Popover = React.forwardRef(function (props, componentRef) {
104
102
  width: document.documentElement.clientWidth,
105
103
  height: document.documentElement.clientHeight
106
104
  },
107
- offset: typeof offset === 'string'
108
- ? vars.space["--space-" + offset]
109
- : offset,
110
105
  arrowOffset: arrowOffset,
111
106
  direction: passedDirection,
112
107
  possibleDirections: possibleDirections,
@@ -134,6 +129,6 @@ export var Popover = React.forwardRef(function (props, componentRef) {
134
129
  // Главное не сбрасывать при изменении размеров поповера, т.к. именно оно может вызвать бесконечный перебор
135
130
  React.useLayoutEffect(resetBannedDirections, [props]);
136
131
  var content = isRenderProp(children) ? children(direction) : children;
137
- return (React.createElement(PortalWithTheme, __assign({}, otherProps, { preset: theme, className: cnPopover(null, [className]), container: window.document.body, ref: useForkRef([ref, componentRef]), style: __assign(__assign({}, style), (_a = {}, _a['--popover-top'] = ((position === null || position === void 0 ? void 0 : position.y) || 0) + window.scrollY + "px", _a['--popover-left'] = ((position === null || position === void 0 ? void 0 : position.x) || 0) + window.scrollX + "px", _a["--popover-width"] = equalAnchorWidth ? anchorSize.width + "px" : undefined, _a["--popover-pointer-events"] = isInteractive ? undefined : 'none', _a["--popover-visibility"] = position ? undefined : 'hidden', _a)) }),
132
+ return (React.createElement(PortalWithTheme, __assign({}, otherProps, { preset: theme, className: cnPopover({ direction: direction }, [className]), container: window.document.body, ref: useForkRef([ref, componentRef]), style: __assign(__assign({}, style), (_a = {}, _a['--popover-top'] = ((position === null || position === void 0 ? void 0 : position.y) || 0) + window.scrollY + "px", _a['--popover-left'] = ((position === null || position === void 0 ? void 0 : position.x) || 0) + window.scrollX + "px", _a["--popover-width"] = equalAnchorWidth ? anchorSize.width + "px" : undefined, _a["--popover-pointer-events"] = isInteractive ? undefined : 'none', _a["--popover-visibility"] = position ? undefined : 'hidden', _a["--popover-offset"] = typeof offset === 'string' ? "var(--space-" + offset + ")" : offset + "px", _a)) }),
138
133
  React.createElement(ContextConsumer, { onClickOutside: onClickOutside, ignoreClicksInsideRefs: [ref, anchorRef || { current: null }] }, content)));
139
134
  });
@@ -2,11 +2,10 @@ import { Direction, Position } from './Popover';
2
2
  declare type Size = Pick<ClientRect, 'width' | 'height'>;
3
3
  declare type PositionsByDirection = Record<Direction, NonNullable<Position>>;
4
4
  export declare const convertPixelsToNumber: (pixels: string) => number;
5
- export declare const getPositionsByDirection: ({ contentSize, anchorSize, position: { x, y }, offset, arrowOffset, }: {
5
+ export declare const getPositionsByDirection: ({ contentSize, anchorSize, position: { x, y }, arrowOffset, }: {
6
6
  contentSize: Size;
7
7
  anchorSize: Size;
8
8
  position: NonNullable<Position>;
9
- offset: number;
10
9
  arrowOffset?: number | undefined;
11
10
  }) => PositionsByDirection;
12
11
  declare type ComputedPositionAndDirectionParams = {
@@ -21,7 +20,7 @@ declare type ComputedPositionAndDirectionParams = {
21
20
  possibleDirections: readonly Direction[];
22
21
  bannedDirections: readonly Direction[];
23
22
  };
24
- export declare const getComputedPositionAndDirection: ({ position: initialPosition, contentSize, viewportSize, anchorSize, offset, arrowOffset, direction: initialDirection, possibleDirections, bannedDirections, spareDirection, }: ComputedPositionAndDirectionParams) => {
23
+ export declare const getComputedPositionAndDirection: ({ position: initialPosition, contentSize, viewportSize, anchorSize, arrowOffset, direction: initialDirection, possibleDirections, bannedDirections, spareDirection, }: ComputedPositionAndDirectionParams) => {
25
24
  direction: Direction;
26
25
  position: Position;
27
26
  };
@@ -7,22 +7,22 @@ export var convertPixelsToNumber = function (pixels) {
7
7
  return Number(pixels.slice(0, pixels.length - 2));
8
8
  };
9
9
  export var getPositionsByDirection = function (_a) {
10
- var contentSize = _a.contentSize, anchorSize = _a.anchorSize, _b = _a.position, x = _b.x, y = _b.y, offset = _a.offset, _c = _a.arrowOffset, arrowOffset = _c === void 0 ? 0 : _c;
10
+ var contentSize = _a.contentSize, anchorSize = _a.anchorSize, _b = _a.position, x = _b.x, y = _b.y, _c = _a.arrowOffset, arrowOffset = _c === void 0 ? 0 : _c;
11
11
  var contentWidth = contentSize.width, contentHeight = contentSize.height;
12
12
  var anchorWidth = anchorSize.width, anchorHeight = anchorSize.height;
13
13
  var anchorCenter = {
14
14
  x: x + anchorWidth / 2,
15
15
  y: y + anchorHeight / 2
16
16
  };
17
- var xForRightDirections = x + anchorWidth + offset;
18
- var xForLeftDirections = x - contentWidth - offset;
17
+ var xForRightDirections = x + anchorWidth;
18
+ var xForLeftDirections = x - contentWidth;
19
19
  var xForVerticalDirections = {
20
20
  right: anchorCenter.x - arrowOffset,
21
21
  center: anchorCenter.x - contentWidth / 2,
22
22
  left: anchorCenter.x - contentWidth + arrowOffset
23
23
  };
24
- var yForDownDirections = y + anchorHeight + offset;
25
- var yForUpDirections = y - contentHeight - offset;
24
+ var yForDownDirections = y + anchorHeight;
25
+ var yForUpDirections = y - contentHeight;
26
26
  var yForHorizontalDirections = {
27
27
  up: anchorCenter.y - contentHeight + arrowOffset,
28
28
  center: anchorCenter.y - contentHeight / 2,
@@ -56,16 +56,14 @@ export var getPositionsByDirection = function (_a) {
56
56
  };
57
57
  };
58
58
  export var getComputedPositionAndDirection = function (_a) {
59
- var initialPosition = _a.position, contentSize = _a.contentSize, viewportSize = _a.viewportSize, _b = _a.anchorSize, anchorSize = _b === void 0 ? { width: 0, height: 0 } : _b, _c = _a.offset, offset = _c === void 0 ? 0 : _c, arrowOffset = _a.arrowOffset, initialDirection = _a.direction, possibleDirections = _a.possibleDirections, bannedDirections = _a.bannedDirections, spareDirection = _a.spareDirection;
59
+ var initialPosition = _a.position, contentSize = _a.contentSize, viewportSize = _a.viewportSize, _b = _a.anchorSize, anchorSize = _b === void 0 ? { width: 0, height: 0 } : _b, arrowOffset = _a.arrowOffset, initialDirection = _a.direction, possibleDirections = _a.possibleDirections, bannedDirections = _a.bannedDirections, spareDirection = _a.spareDirection;
60
60
  if (!initialPosition) {
61
61
  return { position: initialPosition, direction: initialDirection };
62
62
  }
63
- var currentOffset = typeof offset === 'string' ? convertPixelsToNumber(offset) : offset;
64
63
  var positionsByDirection = getPositionsByDirection({
65
64
  contentSize: contentSize,
66
65
  anchorSize: anchorSize,
67
66
  position: initialPosition,
68
- offset: currentOffset,
69
67
  arrowOffset: arrowOffset
70
68
  });
71
69
  var direction = __spread([initialDirection], possibleDirections).filter(function (dir) { return !bannedDirections.includes(dir); })
@@ -0,0 +1,35 @@
1
+ .RadioGroup {
2
+ display: -webkit-box;
3
+ display: -ms-flexbox;
4
+ display: flex;
5
+ }
6
+
7
+ .RadioGroup_direction_column {
8
+ -webkit-box-orient: vertical;
9
+ -webkit-box-direction: normal;
10
+ -ms-flex-direction: column;
11
+ flex-direction: column;
12
+ }
13
+
14
+ .RadioGroup_direction_column .RadioGroup-Item:not(:last-child) {
15
+ margin-bottom: var(--offset);
16
+ }
17
+
18
+ .RadioGroup_direction_row {
19
+ -webkit-box-orient: horizontal;
20
+ -webkit-box-direction: normal;
21
+ -ms-flex-direction: row;
22
+ flex-direction: row;
23
+ }
24
+
25
+ .RadioGroup_direction_row .RadioGroup-Item:not(:last-child) {
26
+ margin-right: var(--offset);
27
+ }
28
+
29
+ .RadioGroup_size_m {
30
+ --offset: var(--space-xs);
31
+ }
32
+
33
+ .RadioGroup_size_l {
34
+ --offset: var(--space-s);
35
+ }
@@ -0,0 +1,5 @@
1
+ import './RadioGroup.css';
2
+ import { RadioGroupComponent } from './types';
3
+ export declare const cnRadioGroup: import("@bem-react/classname").ClassNameFormatter;
4
+ export declare const RadioGroup: RadioGroupComponent;
5
+ export * from './types';
@@ -0,0 +1,24 @@
1
+ import { __assign, __rest } from "tslib";
2
+ import './RadioGroup.css';
3
+ import React, { forwardRef } from 'react';
4
+ import { useChoiceGroup } from '../../hooks/useChoiceGroup/useChoiceGroup';
5
+ import { cn } from '../../utils/bem';
6
+ import { Radio } from '../Radio/Radio';
7
+ import { withDefaultGetters } from './helper';
8
+ import { radioGroupDefaultDirection, radioGroupDefaultSize, radioGroupDefaultView, radioGroupPropAlignDefault, } from './types';
9
+ export var cnRadioGroup = cn('RadioGroup');
10
+ function RadioGroupRender(props, ref) {
11
+ var _a = withDefaultGetters(props), _b = _a.value, value = _b === void 0 ? null : _b, items = _a.items, getItemLabel = _a.getItemLabel, getItemDisabled = _a.getItemDisabled, onChange = _a.onChange, name = _a.name, _c = _a.direction, direction = _c === void 0 ? radioGroupDefaultDirection : _c, _d = _a.size, size = _d === void 0 ? radioGroupDefaultSize : _d, _e = _a.view, view = _e === void 0 ? radioGroupDefaultView : _e, _f = _a.align, align = _f === void 0 ? radioGroupPropAlignDefault : _f, _g = _a.disabled, disabled = _g === void 0 ? false : _g, className = _a.className, otherProps = __rest(_a, ["value", "items", "getItemLabel", "getItemDisabled", "onChange", "name", "direction", "size", "view", "align", "disabled", "className"]);
12
+ var _h = useChoiceGroup({
13
+ value: value,
14
+ getKey: getItemLabel,
15
+ callBack: onChange,
16
+ multiple: false
17
+ }), getOnChange = _h.getOnChange, getChecked = _h.getChecked;
18
+ return (React.createElement("div", __assign({}, otherProps, { ref: ref, className: cnRadioGroup({ direction: direction, size: size, view: view }, [className]) }), items.map(function (item) { return (React.createElement(Radio, { align: align, key: getItemLabel(item), label: getItemLabel(item), size: size, view: view, name: name, disabled: disabled || (!!getItemDisabled && getItemDisabled(item)), checked: getChecked(item), onChange: function (_a) {
19
+ var e = _a.e;
20
+ return getOnChange(item)(e);
21
+ }, className: cnRadioGroup('Item') })); })));
22
+ }
23
+ export var RadioGroup = forwardRef(RadioGroupRender);
24
+ export * from './types';