@consta/uikit 3.12.2 → 3.14.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 (596) 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/es.js +1 -0
  8. package/BreadcrumbsCanary/index.d.ts +1 -0
  9. package/BreadcrumbsCanary/index.js +4 -0
  10. package/BreadcrumbsCanary/package.json +9 -0
  11. package/Button/package.json +1 -1
  12. package/CHANGELOG.md +71 -48
  13. package/Calendar/package.json +1 -1
  14. package/Card/package.json +1 -1
  15. package/Checkbox/package.json +1 -1
  16. package/CheckboxGroup/package.json +1 -1
  17. package/ChoiceGroup/package.json +1 -1
  18. package/Collapse/package.json +1 -1
  19. package/CollapseGroup/package.json +1 -1
  20. package/Combobox/package.json +1 -1
  21. package/ComboboxDeprecated/package.json +1 -1
  22. package/ContextMenu/package.json +1 -1
  23. package/DatePickerCanary/package.json +1 -1
  24. package/DateTimeCanary/package.json +1 -1
  25. package/DragNDropField/package.json +1 -1
  26. package/EventInterceptor/package.json +1 -1
  27. package/FieldCaption/package.json +1 -1
  28. package/FieldLabel/package.json +1 -1
  29. package/File/package.json +1 -1
  30. package/FileField/package.json +1 -1
  31. package/FileIcon/package.json +1 -1
  32. package/FileIconAvi/package.json +1 -1
  33. package/FileIconBmp/package.json +1 -1
  34. package/FileIconCsv/package.json +1 -1
  35. package/FileIconDoc/package.json +1 -1
  36. package/FileIconExe/package.json +1 -1
  37. package/FileIconGif/package.json +1 -1
  38. package/FileIconJpg/package.json +1 -1
  39. package/FileIconJson/package.json +1 -1
  40. package/FileIconLoading/package.json +1 -1
  41. package/FileIconMov/package.json +1 -1
  42. package/FileIconMp3/package.json +1 -1
  43. package/FileIconMp4/package.json +1 -1
  44. package/FileIconPdf/package.json +1 -1
  45. package/FileIconPng/package.json +1 -1
  46. package/FileIconPtt/package.json +1 -1
  47. package/FileIconRar/package.json +1 -1
  48. package/FileIconRtf/package.json +1 -1
  49. package/FileIconTiff/package.json +1 -1
  50. package/FileIconTxt/package.json +1 -1
  51. package/FileIconUndefined/package.json +1 -1
  52. package/FileIconWav/package.json +1 -1
  53. package/FileIconXls/package.json +1 -1
  54. package/FileIconZip/package.json +1 -1
  55. package/Grid/package.json +1 -1
  56. package/Header/package.json +1 -1
  57. package/Icon/package.json +1 -1
  58. package/IconAdd/package.json +1 -1
  59. package/IconAddToComparison/package.json +1 -1
  60. package/IconAlert/package.json +1 -1
  61. package/IconAlignBlocksLeft/package.json +1 -1
  62. package/IconAlignBlocksRight/package.json +1 -1
  63. package/IconAlignCenter/package.json +1 -1
  64. package/IconAlignJustify/package.json +1 -1
  65. package/IconAlignLeft/package.json +1 -1
  66. package/IconAlignRight/package.json +1 -1
  67. package/IconAllDone/package.json +1 -1
  68. package/IconArrowDown/package.json +1 -1
  69. package/IconArrowLeft/package.json +1 -1
  70. package/IconArrowRight/package.json +1 -1
  71. package/IconArrowUp/package.json +1 -1
  72. package/IconArtBrush/package.json +1 -1
  73. package/IconAttach/package.json +1 -1
  74. package/IconBackward/package.json +1 -1
  75. package/IconBag/package.json +1 -1
  76. package/IconBarrier/package.json +1 -1
  77. package/IconBento/package.json +1 -1
  78. package/IconBold/package.json +1 -1
  79. package/IconBook/package.json +1 -1
  80. package/IconBookmarkFilled/package.json +1 -1
  81. package/IconBookmarkStroked/package.json +1 -1
  82. package/IconCalculator/package.json +1 -1
  83. package/IconCalendar/package.json +1 -1
  84. package/IconCamera/package.json +1 -1
  85. package/IconCancel/package.json +1 -1
  86. package/IconCards/package.json +1 -1
  87. package/IconChat/package.json +1 -1
  88. package/IconCheck/package.json +1 -1
  89. package/IconClose/package.json +1 -1
  90. package/IconCollapse/package.json +1 -1
  91. package/IconColorFill/package.json +1 -1
  92. package/IconColorText/package.json +1 -1
  93. package/IconColumns/package.json +1 -1
  94. package/IconComment/package.json +1 -1
  95. package/IconConnection/package.json +1 -1
  96. package/IconCopy/package.json +1 -1
  97. package/IconCrown/package.json +1 -1
  98. package/IconCursorMouse/package.json +1 -1
  99. package/IconDataNull/package.json +1 -1
  100. package/IconDiamond/package.json +1 -1
  101. package/IconDinosaur/package.json +1 -1
  102. package/IconDisconnection/package.json +1 -1
  103. package/IconDocAdd/package.json +1 -1
  104. package/IconDocBlank/package.json +1 -1
  105. package/IconDocDelete/package.json +1 -1
  106. package/IconDocExport/package.json +1 -1
  107. package/IconDocFilled/package.json +1 -1
  108. package/IconDown/package.json +1 -1
  109. package/IconDownload/package.json +1 -1
  110. package/IconDrag/package.json +1 -1
  111. package/IconDraggable/package.json +1 -1
  112. package/IconDrillingRig/package.json +1 -1
  113. package/IconDrop/package.json +1 -1
  114. package/IconEdit/package.json +1 -1
  115. package/IconExit/package.json +1 -1
  116. package/IconExpand/package.json +1 -1
  117. package/IconEye/package.json +1 -1
  118. package/IconEyeClose/package.json +1 -1
  119. package/IconFavorite/package.json +1 -1
  120. package/IconFilter/package.json +1 -1
  121. package/IconFitToDefault/package.json +1 -1
  122. package/IconFlagFilled/package.json +1 -1
  123. package/IconFlagStroked/package.json +1 -1
  124. package/IconFolders/package.json +1 -1
  125. package/IconForward/package.json +1 -1
  126. package/IconFunnel/package.json +1 -1
  127. package/IconGas/package.json +1 -1
  128. package/IconGeo/package.json +1 -1
  129. package/IconGrouping/package.json +1 -1
  130. package/IconHamburger/package.json +1 -1
  131. package/IconHand/package.json +1 -1
  132. package/IconHealth/package.json +1 -1
  133. package/IconHome/es.js +1 -0
  134. package/IconHome/index.d.ts +1 -0
  135. package/IconHome/index.js +4 -0
  136. package/IconHome/package.json +9 -0
  137. package/IconInComparison/package.json +1 -1
  138. package/IconInfo/package.json +1 -1
  139. package/IconIntroduction/package.json +1 -1
  140. package/IconIpad/package.json +1 -1
  141. package/IconItalic/package.json +1 -1
  142. package/IconKebab/package.json +1 -1
  143. package/IconLaptop/package.json +1 -1
  144. package/IconLayers/package.json +1 -1
  145. package/IconLeaf/package.json +1 -1
  146. package/IconLightningBolt/package.json +1 -1
  147. package/IconLineAndBarChart/package.json +1 -1
  148. package/IconLink/package.json +1 -1
  149. package/IconList/package.json +1 -1
  150. package/IconListNumbered/package.json +1 -1
  151. package/IconLock/package.json +1 -1
  152. package/IconLogicalElement/package.json +1 -1
  153. package/IconMBU/package.json +1 -1
  154. package/IconMGRP/package.json +1 -1
  155. package/IconMLSP/package.json +1 -1
  156. package/IconMMP/package.json +1 -1
  157. package/IconMail/package.json +1 -1
  158. package/IconMap/package.json +1 -1
  159. package/IconMaxHeight/package.json +1 -1
  160. package/IconMaxWidth/package.json +1 -1
  161. package/IconMeatball/package.json +1 -1
  162. package/IconMic/package.json +1 -1
  163. package/IconMolecules/package.json +1 -1
  164. package/IconMoon/package.json +1 -1
  165. package/IconNodeEnd/package.json +1 -1
  166. package/IconNodeStart/package.json +1 -1
  167. package/IconNodeStep/package.json +1 -1
  168. package/IconNodes/package.json +1 -1
  169. package/IconOpenInNew/package.json +1 -1
  170. package/IconOperators/es.js +1 -0
  171. package/IconOperators/index.d.ts +1 -0
  172. package/IconOperators/index.js +4 -0
  173. package/IconOperators/package.json +9 -0
  174. package/IconPanelBottom/package.json +1 -1
  175. package/IconPanelLeft/package.json +1 -1
  176. package/IconPanelRight/package.json +1 -1
  177. package/IconPanelTop/package.json +1 -1
  178. package/IconPaste/package.json +1 -1
  179. package/IconPause/package.json +1 -1
  180. package/IconPhone/package.json +1 -1
  181. package/IconPhoto/package.json +1 -1
  182. package/IconPlay/package.json +1 -1
  183. package/IconPressure/package.json +1 -1
  184. package/IconProcessing/package.json +1 -1
  185. package/IconQuestion/package.json +1 -1
  186. package/IconQuote/package.json +1 -1
  187. package/IconRUO/package.json +1 -1
  188. package/IconRUS/package.json +1 -1
  189. package/IconRecord/package.json +1 -1
  190. package/IconRemove/package.json +1 -1
  191. package/IconRemoveFromComparison/package.json +1 -1
  192. package/IconReply/package.json +1 -1
  193. package/IconResize/package.json +1 -1
  194. package/IconRestart/package.json +1 -1
  195. package/IconRevert/package.json +1 -1
  196. package/IconRing/package.json +1 -1
  197. package/IconRouble/package.json +1 -1
  198. package/IconRuler/package.json +1 -1
  199. package/IconSave/es.js +1 -0
  200. package/IconSave/index.d.ts +1 -0
  201. package/IconSave/index.js +4 -0
  202. package/IconSave/package.json +9 -0
  203. package/IconScreen/package.json +1 -1
  204. package/IconSearch/package.json +1 -1
  205. package/IconSelect/package.json +1 -1
  206. package/IconSelectOpen/package.json +1 -1
  207. package/IconSendMessage/es.js +1 -0
  208. package/IconSendMessage/index.d.ts +1 -0
  209. package/IconSendMessage/index.js +4 -0
  210. package/IconSendMessage/package.json +9 -0
  211. package/IconSettings/package.json +1 -1
  212. package/IconShape/package.json +1 -1
  213. package/IconShuffle/package.json +1 -1
  214. package/IconSmile/package.json +1 -1
  215. package/IconSortDown/package.json +1 -1
  216. package/IconSortDownCenter/package.json +1 -1
  217. package/IconSortUp/package.json +1 -1
  218. package/IconSortUpCenter/package.json +1 -1
  219. package/IconStop/package.json +1 -1
  220. package/IconStorage/package.json +1 -1
  221. package/IconStrikethrough/package.json +1 -1
  222. package/IconSun/package.json +1 -1
  223. package/IconTable/package.json +1 -1
  224. package/IconTarget/package.json +1 -1
  225. package/IconTeam/package.json +1 -1
  226. package/IconTechResponse/es.js +1 -0
  227. package/IconTechResponse/index.d.ts +1 -0
  228. package/IconTechResponse/index.js +4 -0
  229. package/IconTechResponse/package.json +9 -0
  230. package/IconTest/package.json +1 -1
  231. package/IconThumbUp/package.json +1 -1
  232. package/IconTie/package.json +1 -1
  233. package/IconTop/package.json +1 -1
  234. package/IconTrash/package.json +1 -1
  235. package/IconType/package.json +1 -1
  236. package/IconUnderline/package.json +1 -1
  237. package/IconUnlock/package.json +1 -1
  238. package/IconUnsort/package.json +1 -1
  239. package/IconUnsortCenter/package.json +1 -1
  240. package/IconUpload/package.json +1 -1
  241. package/IconUser/package.json +1 -1
  242. package/IconVZD/package.json +1 -1
  243. package/IconVideo/package.json +1 -1
  244. package/IconWarning/package.json +1 -1
  245. package/IconWatch/package.json +1 -1
  246. package/IconWideScreen/package.json +1 -1
  247. package/IconWorld/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/MixSpace/package.json +1 -1
  254. package/MixVisuallyHidden/package.json +1 -1
  255. package/Modal/package.json +1 -1
  256. package/MultiComboboxDeprecated/package.json +1 -1
  257. package/Pagination/package.json +1 -1
  258. package/Popover/package.json +1 -1
  259. package/PortalWithTheme/package.json +1 -1
  260. package/ProgressSpin/package.json +1 -1
  261. package/ProgressStepBarCanary/package.json +1 -1
  262. package/README.md +1 -0
  263. package/Radio/package.json +1 -1
  264. package/RadioGroup/package.json +1 -1
  265. package/Responses/package.json +1 -1
  266. package/Responses403/package.json +1 -1
  267. package/Responses404/package.json +1 -1
  268. package/Responses500/package.json +1 -1
  269. package/Responses503/package.json +1 -1
  270. package/ResponsesConnectionError/package.json +1 -1
  271. package/ResponsesDeleted/package.json +1 -1
  272. package/ResponsesEmptyBox/package.json +1 -1
  273. package/ResponsesEmptyPockets/package.json +1 -1
  274. package/ResponsesImage/package.json +1 -1
  275. package/ResponsesImage403/package.json +1 -1
  276. package/ResponsesImage404/package.json +1 -1
  277. package/ResponsesImage500/package.json +1 -1
  278. package/ResponsesImage503/package.json +1 -1
  279. package/ResponsesImageConnectionError/package.json +1 -1
  280. package/ResponsesImageDeleted/package.json +1 -1
  281. package/ResponsesImageEmptyBox/package.json +1 -1
  282. package/ResponsesImageEmptyPockets/package.json +1 -1
  283. package/ResponsesImageNothingFound/package.json +1 -1
  284. package/ResponsesImageSuccess/package.json +1 -1
  285. package/ResponsesNothingFound/package.json +1 -1
  286. package/ResponsesSuccess/package.json +1 -1
  287. package/Select/package.json +1 -1
  288. package/Sidebar/package.json +1 -1
  289. package/Skeleton/package.json +1 -1
  290. package/SliderCanary/package.json +1 -1
  291. package/SnackBar/package.json +1 -1
  292. package/Steps/package.json +1 -1
  293. package/Switch/package.json +1 -1
  294. package/SwitchGroup/package.json +1 -1
  295. package/Table/package.json +1 -1
  296. package/Tabs/package.json +1 -1
  297. package/Tag/package.json +1 -1
  298. package/TagBase/package.json +1 -1
  299. package/Text/package.json +1 -1
  300. package/TextField/package.json +1 -1
  301. package/Theme/package.json +1 -1
  302. package/ThemeToggler/package.json +1 -1
  303. package/Timer/package.json +1 -1
  304. package/Tooltip/package.json +1 -1
  305. package/User/package.json +1 -1
  306. package/UserSelect/package.json +1 -1
  307. package/UserSelectDeprecated/package.json +1 -1
  308. package/__internal__/cjs-src/components/BreadcrumbsCanary/Breadcrumbs.css +75 -0
  309. package/__internal__/cjs-src/components/BreadcrumbsCanary/BreadcrumbsCanary.d.ts +5 -0
  310. package/__internal__/cjs-src/components/BreadcrumbsCanary/BreadcrumbsCanary.js +57 -0
  311. package/__internal__/cjs-src/components/BreadcrumbsCanary/helpers.d.ts +16 -0
  312. package/__internal__/cjs-src/components/BreadcrumbsCanary/helpers.js +21 -0
  313. package/__internal__/cjs-src/components/BreadcrumbsCanary/types.d.ts +36 -0
  314. package/__internal__/cjs-src/components/BreadcrumbsCanary/types.js +5 -0
  315. package/__internal__/cjs-src/components/Combobox/Combobox.js +3 -3
  316. package/__internal__/cjs-src/components/ContextMenu/ContextMenu.js +2 -2
  317. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerCanary.js +17 -8
  318. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +6 -1
  319. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +3 -3
  320. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +3 -0
  321. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.js +5 -5
  322. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.d.ts +3 -0
  323. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.css +83 -0
  324. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +6 -1
  325. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +10 -4
  326. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.d.ts +2 -0
  327. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +48 -0
  328. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.js +79 -0
  329. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.d.ts +51 -0
  330. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.js +134 -0
  331. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.d.ts +2 -2
  332. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +10 -8
  333. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.d.ts +2 -2
  334. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +5 -14
  335. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.d.ts +2 -0
  336. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +60 -0
  337. package/__internal__/cjs-src/components/DatePickerCanary/helpers.d.ts +27 -123
  338. package/__internal__/cjs-src/components/DatePickerCanary/helpers.js +30 -10
  339. package/__internal__/cjs-src/components/DatePickerCanary/useCurrentVisibleDate.d.ts +2 -0
  340. package/__internal__/cjs-src/components/DatePickerCanary/useCurrentVisibleDate.js +11 -0
  341. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.css +9 -0
  342. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.d.ts +9 -0
  343. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.js +21 -0
  344. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDate/DateTimeTypeDate.js +15 -10
  345. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +8 -5
  346. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.d.ts +1 -1
  347. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.js +3 -3
  348. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeMonth/DateTimeTypeMonth.js +15 -10
  349. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeTime/DateTimeTypeTime.js +4 -2
  350. package/__internal__/cjs-src/components/DateTimeCanary/DateTimeTypeYear/DateTimeTypeYear.js +15 -10
  351. package/__internal__/cjs-src/components/DateTimeCanary/helpers/types.d.ts +6 -0
  352. package/__internal__/cjs-src/components/EventInterceptor/eventInterceptorMap.d.ts +1 -0
  353. package/__internal__/cjs-src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +1 -0
  354. package/__internal__/cjs-src/components/FieldLabel/FieldLabel.d.ts +1 -1
  355. package/__internal__/cjs-src/components/Modal/Modal.d.ts +3 -3
  356. package/__internal__/cjs-src/components/Modal/Modal.js +3 -3
  357. package/__internal__/cjs-src/components/ProgressStepBarCanary/ProgressStepBarCanary.js +4 -3
  358. package/__internal__/cjs-src/components/ProgressStepBarCanary/helpers.d.ts +1 -0
  359. package/__internal__/cjs-src/components/Select/Select.js +3 -3
  360. package/__internal__/cjs-src/components/SelectComponents/SelectDropdown/SelectDropdown.js +2 -2
  361. package/__internal__/cjs-src/components/Sidebar/Sidebar.d.ts +4 -3
  362. package/__internal__/cjs-src/components/Sidebar/Sidebar.js +3 -3
  363. package/__internal__/cjs-src/components/SliderCanary/Slider.css +4 -0
  364. package/__internal__/cjs-src/components/SliderCanary/SliderCanary.js +10 -12
  365. package/__internal__/cjs-src/components/SliderCanary/SliderPoint/SliderPoint.css +1 -0
  366. package/__internal__/cjs-src/components/SliderCanary/SliderPoint/SliderPoint.js +3 -5
  367. package/__internal__/cjs-src/components/SliderCanary/helper.d.ts +5 -2
  368. package/__internal__/cjs-src/components/SliderCanary/useSlider/helper.d.ts +4 -4
  369. package/__internal__/cjs-src/components/SliderCanary/useSlider/helper.js +8 -7
  370. package/__internal__/cjs-src/components/SliderCanary/useSlider/useSlider.js +53 -66
  371. package/__internal__/cjs-src/components/SliderCanary/useSliderStationing.js +10 -13
  372. package/__internal__/cjs-src/components/Table/Cell/TableCell.d.ts +1 -0
  373. package/__internal__/cjs-src/components/Table/Cell/TableCell.js +2 -2
  374. package/__internal__/cjs-src/components/Table/Header/TableHeader.d.ts +3 -2
  375. package/__internal__/cjs-src/components/Table/Header/TableHeader.js +16 -2
  376. package/__internal__/cjs-src/components/Table/Table.d.ts +9 -0
  377. package/__internal__/cjs-src/components/Table/Table.js +43 -5
  378. package/__internal__/cjs-src/components/TextField/TextField.js +2 -2
  379. package/__internal__/cjs-src/components/TextField/helpers.d.ts +1 -0
  380. package/__internal__/cjs-src/components/ThemeToggler/ThemeToggler.js +3 -3
  381. package/__internal__/cjs-src/components/UserSelect/UserSelect.js +3 -3
  382. package/__internal__/cjs-src/hocs/withTooltip/withTooltip.js +3 -3
  383. package/__internal__/cjs-src/icons/IconHome/IconHome.d.ts +5 -0
  384. package/__internal__/cjs-src/icons/IconHome/IconHome.js +14 -0
  385. package/__internal__/cjs-src/icons/IconHome/IconHome_size_m.d.ts +3 -0
  386. package/__internal__/cjs-src/icons/IconHome/IconHome_size_m.js +9 -0
  387. package/__internal__/cjs-src/icons/IconHome/IconHome_size_m.svg +5 -0
  388. package/__internal__/cjs-src/icons/IconHome/IconHome_size_s.d.ts +3 -0
  389. package/__internal__/cjs-src/icons/IconHome/IconHome_size_s.js +9 -0
  390. package/__internal__/cjs-src/icons/IconHome/IconHome_size_s.svg +5 -0
  391. package/__internal__/cjs-src/icons/IconHome/IconHome_size_xs.d.ts +3 -0
  392. package/__internal__/cjs-src/icons/IconHome/IconHome_size_xs.js +9 -0
  393. package/__internal__/cjs-src/icons/IconHome/IconHome_size_xs.svg +5 -0
  394. package/__internal__/cjs-src/icons/IconOperators/IconOperators.d.ts +5 -0
  395. package/__internal__/cjs-src/icons/IconOperators/IconOperators.js +14 -0
  396. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_m.d.ts +3 -0
  397. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_m.js +11 -0
  398. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_m.svg +20 -0
  399. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_s.d.ts +3 -0
  400. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_s.js +9 -0
  401. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_s.svg +20 -0
  402. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_xs.d.ts +3 -0
  403. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_xs.js +9 -0
  404. package/__internal__/cjs-src/icons/IconOperators/IconOperators_size_xs.svg +18 -0
  405. package/__internal__/cjs-src/icons/IconSave/IconSave.d.ts +5 -0
  406. package/__internal__/cjs-src/icons/IconSave/IconSave.js +14 -0
  407. package/__internal__/cjs-src/icons/IconSave/IconSave_size_m.d.ts +3 -0
  408. package/__internal__/cjs-src/icons/IconSave/IconSave_size_m.js +9 -0
  409. package/__internal__/cjs-src/icons/IconSave/IconSave_size_m.svg +5 -0
  410. package/__internal__/cjs-src/icons/IconSave/IconSave_size_s.d.ts +3 -0
  411. package/__internal__/cjs-src/icons/IconSave/IconSave_size_s.js +9 -0
  412. package/__internal__/cjs-src/icons/IconSave/IconSave_size_s.svg +5 -0
  413. package/__internal__/cjs-src/icons/IconSave/IconSave_size_xs.d.ts +3 -0
  414. package/__internal__/cjs-src/icons/IconSave/IconSave_size_xs.js +9 -0
  415. package/__internal__/cjs-src/icons/IconSave/IconSave_size_xs.svg +5 -0
  416. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage.d.ts +5 -0
  417. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage.js +14 -0
  418. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_m.d.ts +3 -0
  419. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_m.js +9 -0
  420. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_m.svg +5 -0
  421. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_s.d.ts +3 -0
  422. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_s.js +9 -0
  423. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_s.svg +5 -0
  424. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_xs.d.ts +3 -0
  425. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_xs.js +9 -0
  426. package/__internal__/cjs-src/icons/IconSendMessage/IconSendMessage_size_xs.svg +5 -0
  427. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse.d.ts +5 -0
  428. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse.js +14 -0
  429. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_m.d.ts +3 -0
  430. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_m.js +10 -0
  431. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_m.svg +17 -0
  432. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_s.d.ts +3 -0
  433. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_s.js +10 -0
  434. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_s.svg +17 -0
  435. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_xs.d.ts +3 -0
  436. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_xs.js +10 -0
  437. package/__internal__/cjs-src/icons/IconTechResponse/IconTechResponse_size_xs.svg +17 -0
  438. package/__internal__/cjs-src/mixs/MixCard/MixCard.css +0 -98
  439. package/__internal__/cjs-src/mixs/MixCard/MixCard.d.ts +1 -1
  440. package/__internal__/cjs-src/mixs/MixCard/MixCard.js +10 -1
  441. package/__internal__/src/components/BreadcrumbsCanary/Breadcrumbs.css +75 -0
  442. package/__internal__/src/components/BreadcrumbsCanary/BreadcrumbsCanary.d.ts +5 -0
  443. package/__internal__/src/components/BreadcrumbsCanary/BreadcrumbsCanary.js +54 -0
  444. package/__internal__/src/components/BreadcrumbsCanary/helpers.d.ts +16 -0
  445. package/__internal__/src/components/BreadcrumbsCanary/helpers.js +16 -0
  446. package/__internal__/src/components/BreadcrumbsCanary/types.d.ts +36 -0
  447. package/__internal__/src/components/BreadcrumbsCanary/types.js +2 -0
  448. package/__internal__/src/components/Combobox/Combobox.js +3 -3
  449. package/__internal__/src/components/ContextMenu/ContextMenu.js +2 -2
  450. package/__internal__/src/components/DatePickerCanary/DatePickerCanary.js +19 -10
  451. package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.d.ts +6 -1
  452. package/__internal__/src/components/DatePickerCanary/DatePickerDropdown/DatePickerDropdown.js +3 -3
  453. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +3 -0
  454. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.js +6 -6
  455. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.d.ts +3 -0
  456. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.css +83 -0
  457. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +6 -1
  458. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +10 -4
  459. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/helpers.d.ts +2 -0
  460. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +48 -0
  461. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.js +76 -0
  462. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.d.ts +51 -0
  463. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.js +131 -0
  464. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.d.ts +2 -2
  465. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDate/DatePickerTypeDate.js +10 -8
  466. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.d.ts +2 -2
  467. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateRange/DatePickerTypeDateRange.js +5 -14
  468. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.d.ts +2 -0
  469. package/__internal__/src/components/DatePickerCanary/DatePickerTypeDateTime/DatePickerTypeDateTime.js +57 -0
  470. package/__internal__/src/components/DatePickerCanary/helpers.d.ts +27 -123
  471. package/__internal__/src/components/DatePickerCanary/helpers.js +29 -9
  472. package/__internal__/src/components/DatePickerCanary/useCurrentVisibleDate.d.ts +2 -0
  473. package/__internal__/src/components/DatePickerCanary/useCurrentVisibleDate.js +8 -0
  474. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.css +9 -0
  475. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.d.ts +9 -0
  476. package/__internal__/src/components/DateTimeCanary/DateTimeAdditionalControls/DateTimeAdditionalControls.js +17 -0
  477. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDate/DateTimeTypeDate.js +15 -10
  478. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/DateTimeTypeDateTime.js +8 -5
  479. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.d.ts +1 -1
  480. package/__internal__/src/components/DateTimeCanary/DateTimeTypeDateTime/useOnChange.js +4 -4
  481. package/__internal__/src/components/DateTimeCanary/DateTimeTypeMonth/DateTimeTypeMonth.js +15 -10
  482. package/__internal__/src/components/DateTimeCanary/DateTimeTypeTime/DateTimeTypeTime.js +4 -2
  483. package/__internal__/src/components/DateTimeCanary/DateTimeTypeYear/DateTimeTypeYear.js +15 -10
  484. package/__internal__/src/components/DateTimeCanary/helpers/types.d.ts +6 -0
  485. package/__internal__/src/components/EventInterceptor/eventInterceptorMap.d.ts +1 -0
  486. package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +1 -0
  487. package/__internal__/src/components/FieldLabel/FieldLabel.d.ts +1 -1
  488. package/__internal__/src/components/Modal/Modal.d.ts +3 -3
  489. package/__internal__/src/components/Modal/Modal.js +3 -3
  490. package/__internal__/src/components/ProgressStepBarCanary/ProgressStepBarCanary.js +4 -3
  491. package/__internal__/src/components/ProgressStepBarCanary/helpers.d.ts +1 -0
  492. package/__internal__/src/components/Select/Select.js +3 -3
  493. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +3 -3
  494. package/__internal__/src/components/Sidebar/Sidebar.d.ts +4 -3
  495. package/__internal__/src/components/Sidebar/Sidebar.js +3 -3
  496. package/__internal__/src/components/SliderCanary/Slider.css +4 -0
  497. package/__internal__/src/components/SliderCanary/SliderCanary.js +7 -9
  498. package/__internal__/src/components/SliderCanary/SliderPoint/SliderPoint.css +1 -0
  499. package/__internal__/src/components/SliderCanary/SliderPoint/SliderPoint.js +3 -5
  500. package/__internal__/src/components/SliderCanary/helper.d.ts +5 -2
  501. package/__internal__/src/components/SliderCanary/useSlider/helper.d.ts +4 -4
  502. package/__internal__/src/components/SliderCanary/useSlider/helper.js +8 -7
  503. package/__internal__/src/components/SliderCanary/useSlider/useSlider.js +53 -66
  504. package/__internal__/src/components/SliderCanary/useSliderStationing.js +11 -14
  505. package/__internal__/src/components/Table/Cell/TableCell.d.ts +1 -0
  506. package/__internal__/src/components/Table/Cell/TableCell.js +2 -2
  507. package/__internal__/src/components/Table/Header/TableHeader.d.ts +3 -2
  508. package/__internal__/src/components/Table/Header/TableHeader.js +16 -2
  509. package/__internal__/src/components/Table/Table.d.ts +9 -0
  510. package/__internal__/src/components/Table/Table.js +43 -5
  511. package/__internal__/src/components/TextField/TextField.js +2 -2
  512. package/__internal__/src/components/TextField/helpers.d.ts +1 -0
  513. package/__internal__/src/components/ThemeToggler/ThemeToggler.js +3 -3
  514. package/__internal__/src/components/UserSelect/UserSelect.js +3 -3
  515. package/__internal__/src/hocs/withTooltip/withTooltip.js +3 -3
  516. package/__internal__/src/icons/IconHome/IconHome.d.ts +5 -0
  517. package/__internal__/src/icons/IconHome/IconHome.js +10 -0
  518. package/__internal__/src/icons/IconHome/IconHome_size_m.d.ts +3 -0
  519. package/__internal__/src/icons/IconHome/IconHome_size_m.js +7 -0
  520. package/__internal__/src/icons/IconHome/IconHome_size_m.svg +5 -0
  521. package/__internal__/src/icons/IconHome/IconHome_size_s.d.ts +3 -0
  522. package/__internal__/src/icons/IconHome/IconHome_size_s.js +7 -0
  523. package/__internal__/src/icons/IconHome/IconHome_size_s.svg +5 -0
  524. package/__internal__/src/icons/IconHome/IconHome_size_xs.d.ts +3 -0
  525. package/__internal__/src/icons/IconHome/IconHome_size_xs.js +7 -0
  526. package/__internal__/src/icons/IconHome/IconHome_size_xs.svg +5 -0
  527. package/__internal__/src/icons/IconOperators/IconOperators.d.ts +5 -0
  528. package/__internal__/src/icons/IconOperators/IconOperators.js +10 -0
  529. package/__internal__/src/icons/IconOperators/IconOperators_size_m.d.ts +3 -0
  530. package/__internal__/src/icons/IconOperators/IconOperators_size_m.js +9 -0
  531. package/__internal__/src/icons/IconOperators/IconOperators_size_m.svg +20 -0
  532. package/__internal__/src/icons/IconOperators/IconOperators_size_s.d.ts +3 -0
  533. package/__internal__/src/icons/IconOperators/IconOperators_size_s.js +7 -0
  534. package/__internal__/src/icons/IconOperators/IconOperators_size_s.svg +20 -0
  535. package/__internal__/src/icons/IconOperators/IconOperators_size_xs.d.ts +3 -0
  536. package/__internal__/src/icons/IconOperators/IconOperators_size_xs.js +7 -0
  537. package/__internal__/src/icons/IconOperators/IconOperators_size_xs.svg +18 -0
  538. package/__internal__/src/icons/IconSave/IconSave.d.ts +5 -0
  539. package/__internal__/src/icons/IconSave/IconSave.js +10 -0
  540. package/__internal__/src/icons/IconSave/IconSave_size_m.d.ts +3 -0
  541. package/__internal__/src/icons/IconSave/IconSave_size_m.js +7 -0
  542. package/__internal__/src/icons/IconSave/IconSave_size_m.svg +5 -0
  543. package/__internal__/src/icons/IconSave/IconSave_size_s.d.ts +3 -0
  544. package/__internal__/src/icons/IconSave/IconSave_size_s.js +7 -0
  545. package/__internal__/src/icons/IconSave/IconSave_size_s.svg +5 -0
  546. package/__internal__/src/icons/IconSave/IconSave_size_xs.d.ts +3 -0
  547. package/__internal__/src/icons/IconSave/IconSave_size_xs.js +7 -0
  548. package/__internal__/src/icons/IconSave/IconSave_size_xs.svg +5 -0
  549. package/__internal__/src/icons/IconSendMessage/IconSendMessage.d.ts +5 -0
  550. package/__internal__/src/icons/IconSendMessage/IconSendMessage.js +10 -0
  551. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_m.d.ts +3 -0
  552. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_m.js +7 -0
  553. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_m.svg +5 -0
  554. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_s.d.ts +3 -0
  555. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_s.js +7 -0
  556. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_s.svg +5 -0
  557. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_xs.d.ts +3 -0
  558. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_xs.js +7 -0
  559. package/__internal__/src/icons/IconSendMessage/IconSendMessage_size_xs.svg +5 -0
  560. package/__internal__/src/icons/IconTechResponse/IconTechResponse.d.ts +5 -0
  561. package/__internal__/src/icons/IconTechResponse/IconTechResponse.js +10 -0
  562. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_m.d.ts +3 -0
  563. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_m.js +8 -0
  564. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_m.svg +17 -0
  565. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_s.d.ts +3 -0
  566. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_s.js +8 -0
  567. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_s.svg +17 -0
  568. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_xs.d.ts +3 -0
  569. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_xs.js +8 -0
  570. package/__internal__/src/icons/IconTechResponse/IconTechResponse_size_xs.svg +17 -0
  571. package/__internal__/src/mixs/MixCard/MixCard.css +0 -98
  572. package/__internal__/src/mixs/MixCard/MixCard.d.ts +1 -1
  573. package/__internal__/src/mixs/MixCard/MixCard.js +10 -1
  574. package/createIcon/package.json +1 -1
  575. package/createResponsesImage/package.json +1 -1
  576. package/package.json +7 -1
  577. package/useBreakpoints/package.json +1 -1
  578. package/useChoiceGroup/package.json +1 -1
  579. package/useChoiceGroupIndexed/package.json +1 -1
  580. package/useClickOutside/package.json +1 -1
  581. package/useComponentSize/package.json +1 -1
  582. package/useDebounce/package.json +1 -1
  583. package/useFlag/package.json +1 -1
  584. package/useForkRef/package.json +1 -1
  585. package/useGlobalKeys/package.json +1 -1
  586. package/useKeys/package.json +1 -1
  587. package/useMutableRef/package.json +1 -1
  588. package/useOverflow/package.json +1 -1
  589. package/usePrevious/package.json +1 -1
  590. package/useResizeObserved/package.json +1 -1
  591. package/useScrollElements/package.json +1 -1
  592. package/useScrollPosition/package.json +1 -1
  593. package/useSelect/package.json +1 -1
  594. package/useThemeVars/package.json +1 -1
  595. package/useTimer/package.json +1 -1
  596. package/withTooltip/package.json +1 -1
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.useImask = exports.getPartsDate = exports.getParts = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = require("react");
6
+ var date_fns_1 = require("date-fns");
7
+ var imask_1 = tslib_1.__importDefault(require("imask"));
8
+ var date_1 = require("../../../utils/date");
9
+ var helpers_1 = require("../../DateTimeCanary/helpers");
10
+ var helpers_2 = require("../helpers");
11
+ var getPartDate = function (formatArray, stringArray, marker) {
12
+ var index = formatArray.indexOf(marker);
13
+ if (index >= 0 && stringArray[index] && stringArray[index].length === marker.length) {
14
+ return stringArray[index];
15
+ }
16
+ return undefined;
17
+ };
18
+ exports.getParts = function (format, separator) {
19
+ var _a = tslib_1.__read(format.split(' '), 2), date = _a[0], time = _a[1];
20
+ return tslib_1.__spread((date ? date.split(separator) : []), (time ? time.split(':') : []));
21
+ };
22
+ exports.getPartsDate = function (value, format, separator, markers) {
23
+ if (markers === void 0) { markers = ['dd', 'MM', 'yyyy', 'HH', 'mm', 'ss']; }
24
+ var formatArray = exports.getParts(format, separator);
25
+ var stringArray = exports.getParts(value, separator);
26
+ return markers.map(function (marker) { return getPartDate(formatArray, stringArray, marker); });
27
+ };
28
+ exports.useImask = function (formatProp, separator, multiplicityHours, multiplicitySeconds, multiplicityMinutes, inputRef, stringValue, onError) {
29
+ var imaskRef = react_1.useRef(null);
30
+ // задаем маску и сохраняем обьект маски в ref
31
+ // обнавляем при смене формата
32
+ react_1.useEffect(function () {
33
+ if (!inputRef.current) {
34
+ return;
35
+ }
36
+ imaskRef.current = imask_1["default"](inputRef.current, {
37
+ mask: Date,
38
+ pattern: formatProp,
39
+ blocks: {
40
+ yyyy: {
41
+ mask: imask_1["default"].MaskedRange,
42
+ from: 1,
43
+ to: 9999
44
+ },
45
+ MM: {
46
+ mask: imask_1["default"].MaskedRange,
47
+ from: 1,
48
+ to: 12
49
+ },
50
+ dd: {
51
+ mask: imask_1["default"].MaskedRange,
52
+ from: 1,
53
+ to: 31
54
+ },
55
+ HH: multiplicityHours && multiplicityHours > 0
56
+ ? {
57
+ mask: imask_1["default"].MaskedEnum,
58
+ "enum": helpers_2.getTimeEnum(24, multiplicityHours, date_fns_1.startOfDay, date_fns_1.addHours, helpers_1.getLabelHours)
59
+ }
60
+ : {
61
+ mask: imask_1["default"].MaskedRange,
62
+ from: 0,
63
+ to: 23
64
+ },
65
+ mm: multiplicityMinutes && multiplicityMinutes > 0
66
+ ? {
67
+ mask: imask_1["default"].MaskedEnum,
68
+ "enum": helpers_2.getTimeEnum(60, multiplicityMinutes, date_fns_1.startOfHour, date_fns_1.addMinutes, helpers_1.getLabelMinutes)
69
+ }
70
+ : {
71
+ mask: imask_1["default"].MaskedRange,
72
+ from: 0,
73
+ to: 59
74
+ },
75
+ ss: multiplicitySeconds && multiplicitySeconds > 0
76
+ ? {
77
+ mask: imask_1["default"].MaskedEnum,
78
+ "enum": helpers_2.getTimeEnum(60, multiplicitySeconds, date_fns_1.startOfMinute, date_fns_1.addSeconds, helpers_1.getLabelSeconds)
79
+ }
80
+ : {
81
+ mask: imask_1["default"].MaskedRange,
82
+ from: 0,
83
+ to: 59
84
+ }
85
+ },
86
+ lazy: true,
87
+ autofix: true,
88
+ format: function (date) { return date_fns_1.format(date, formatProp); },
89
+ parse: function (string) { return date_fns_1.parse(string, formatProp, new Date()); },
90
+ validate: function (string) {
91
+ var _a = tslib_1.__read(exports.getPartsDate(string, formatProp, separator), 6), dd = _a[0], MM = _a[1], yyyy = _a[2], HH = _a[3], mm = _a[4], ss = _a[5];
92
+ if (dd &&
93
+ MM &&
94
+ !date_fns_1.isValid(date_fns_1.parse("" + dd + helpers_2.datePickerPropSeparatorDefault + MM + helpers_2.datePickerPropSeparatorDefault + date_1.leapYear, helpers_2.datePickerPropFormatTypeDate, new Date()))) {
95
+ onError === null || onError === void 0 ? void 0 : onError({
96
+ type: helpers_2.datePickerErrorTypes[1],
97
+ stringValue: string,
98
+ dd: dd,
99
+ MM: MM,
100
+ yyyy: yyyy,
101
+ HH: HH,
102
+ mm: mm,
103
+ ss: ss
104
+ });
105
+ return false;
106
+ }
107
+ if (dd &&
108
+ MM &&
109
+ yyyy &&
110
+ !date_fns_1.isValid(date_fns_1.parse("" + dd + helpers_2.datePickerPropSeparatorDefault + MM + helpers_2.datePickerPropSeparatorDefault + yyyy, helpers_2.datePickerPropFormatTypeDate, new Date()))) {
111
+ onError === null || onError === void 0 ? void 0 : onError({
112
+ type: helpers_2.datePickerErrorTypes[1],
113
+ stringValue: string,
114
+ dd: dd,
115
+ MM: MM,
116
+ yyyy: yyyy,
117
+ HH: HH,
118
+ mm: mm,
119
+ ss: ss
120
+ });
121
+ return false;
122
+ }
123
+ return true;
124
+ }
125
+ });
126
+ }, [formatProp, separator, multiplicityHours, multiplicitySeconds, multiplicityMinutes]);
127
+ // Нужно для синхранизации value c Imask,
128
+ // так как value мы можем задать через пропс без самого ввода,
129
+ // и Imask требует ручной синхронихации в этом случае
130
+ react_1.useEffect(function () {
131
+ var _a;
132
+ (_a = imaskRef.current) === null || _a === void 0 ? void 0 : _a.updateValue();
133
+ }, [stringValue]);
134
+ };
@@ -1,2 +1,2 @@
1
- import { DatePickerTypeDateComponent } from '../helpers';
2
- export declare const DatePickerTypeDate: DatePickerTypeDateComponent;
1
+ import { DatePickerTypeComponent } from '../helpers';
2
+ export declare const DatePickerTypeDate: DatePickerTypeComponent<'date'>;
@@ -6,19 +6,21 @@ var react_1 = tslib_1.__importStar(require("react"));
6
6
  var addMonths_1 = tslib_1.__importDefault(require("date-fns/addMonths"));
7
7
  var startOfMonth_1 = tslib_1.__importDefault(require("date-fns/startOfMonth"));
8
8
  var useClickOutside_1 = require("../../../hooks/useClickOutside/useClickOutside");
9
+ var useFlag_1 = require("../../../hooks/useFlag/useFlag");
9
10
  var setRef_1 = require("../../../utils/setRef");
10
11
  var DatePickerDropdown_1 = require("../DatePickerDropdown/DatePickerDropdown");
11
12
  var DatePickerFieldTypeDate_1 = require("../DatePickerFieldTypeDate/DatePickerFieldTypeDate");
13
+ var useCurrentVisibleDate_1 = require("../useCurrentVisibleDate");
12
14
  exports.DatePickerTypeDate = react_1.forwardRef(function (props, ref) {
13
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, otherProps = tslib_1.__rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus"]);
15
+ 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 = tslib_1.__rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls", "style"]);
14
16
  var fieldRef = react_1.useRef(null);
15
17
  var calendarRef = react_1.useRef(null);
16
- var _a = tslib_1.__read(react_1.useState(false), 2), calendarVisible = _a[0], setCalendarVisible = _a[1];
17
- var _b = tslib_1.__read(react_1.useState(), 2), currentVisibleDate = _b[0], setCurrentVisibleDate = _b[1];
18
+ var _a = tslib_1.__read(useFlag_1.useFlag(false), 2), calendarVisible = _a[0], setCalendarVisible = _a[1];
19
+ var _b = tslib_1.__read(useCurrentVisibleDate_1.useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _b[0], setCurrentVisibleDate = _b[1];
18
20
  var _c = tslib_1.__read(react_1.useState(), 2), calendarVisibleDate = _c[0], setCalendarVisibleDate = _c[1];
19
21
  var onFocusHandler = function (e) {
20
22
  onFocus && onFocus(e);
21
- setCalendarVisible(true);
23
+ setCalendarVisible.on();
22
24
  };
23
25
  react_1.useEffect(function () {
24
26
  if (ref) {
@@ -42,7 +44,7 @@ exports.DatePickerTypeDate = react_1.forwardRef(function (props, ref) {
42
44
  }
43
45
  }, [props.value]);
44
46
  var handleClose = function () {
45
- setCalendarVisible(false);
47
+ setCalendarVisible.off();
46
48
  setCurrentVisibleDate(undefined);
47
49
  };
48
50
  useClickOutside_1.useClickOutside({
@@ -51,10 +53,10 @@ exports.DatePickerTypeDate = react_1.forwardRef(function (props, ref) {
51
53
  handler: handleClose
52
54
  });
53
55
  return (react_1["default"].createElement(react_1["default"].Fragment, null,
54
- react_1["default"].createElement(DatePickerFieldTypeDate_1.DatePickerFieldTypeDate, tslib_1.__assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler })),
55
- react_1["default"].createElement(DatePickerDropdown_1.DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: props.type, view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, currentVisibleDate: currentVisibleDate, form: dropdownForm, onChange: function (params) {
56
+ react_1["default"].createElement(DatePickerFieldTypeDate_1.DatePickerFieldTypeDate, tslib_1.__assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, style: style })),
57
+ react_1["default"].createElement(DatePickerDropdown_1.DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "date", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, currentVisibleDate: currentVisibleDate, form: dropdownForm, onChange: function (params) {
56
58
  var _a;
57
59
  (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, params);
58
60
  handleClose();
59
- }, onChangeCurrentVisibleDate: function (date) { return setCalendarVisibleDate(date); } })));
61
+ }, renderAdditionalControls: renderAdditionalControls, zIndex: typeof (style === null || style === void 0 ? void 0 : style.zIndex) === 'number' ? style.zIndex + 1 : undefined, onChangeCurrentVisibleDate: setCalendarVisibleDate })));
60
62
  });
@@ -1,2 +1,2 @@
1
- import { DatePickerTypeDateRangeComponent } from '../helpers';
2
- export declare const DatePickerTypeDateRange: DatePickerTypeDateRangeComponent;
1
+ import { DatePickerTypeComponent } from '../helpers';
2
+ export declare const DatePickerTypeDateRange: DatePickerTypeComponent<'date-range'>;
@@ -10,9 +10,10 @@ var useForkRef_1 = require("../../../hooks/useForkRef/useForkRef");
10
10
  var DatePickerDropdown_1 = require("../DatePickerDropdown/DatePickerDropdown");
11
11
  var DatePickerFieldTypeDateRange_1 = require("../DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange");
12
12
  var helpers_1 = require("../helpers");
13
+ var useCurrentVisibleDate_1 = require("../useCurrentVisibleDate");
13
14
  exports.DatePickerTypeDateRange = react_1.forwardRef(function (props, ref) {
14
15
  var _a, _b, _c, _d;
15
- var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, startFieldRightSide = props.startFieldRightSide, startFieldLeftSide = props.startFieldLeftSide, startFieldOnBlur = props.startFieldOnBlur, startFieldOnFocus = props.startFieldOnFocus, endFieldRightSide = props.endFieldRightSide, endFieldLeftSide = props.endFieldLeftSide, endFieldOnBlur = props.endFieldOnBlur, endFieldOnFocus = props.endFieldOnFocus, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, endFieldInputRefProp = props.endFieldInputRef, startFieldInputRefProp = props.startFieldInputRef, fieldProps = tslib_1.__rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "startFieldRightSide", "startFieldLeftSide", "startFieldOnBlur", "startFieldOnFocus", "endFieldRightSide", "endFieldLeftSide", "endFieldOnBlur", "endFieldOnFocus", "onFocus", "onBlur", "leftSide", "rightSide", "endFieldInputRef", "startFieldInputRef"]);
16
+ var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, startFieldRightSide = props.startFieldRightSide, startFieldLeftSide = props.startFieldLeftSide, startFieldOnBlur = props.startFieldOnBlur, startFieldOnFocus = props.startFieldOnFocus, endFieldRightSide = props.endFieldRightSide, endFieldLeftSide = props.endFieldLeftSide, endFieldOnBlur = props.endFieldOnBlur, endFieldOnFocus = props.endFieldOnFocus, onFocus = props.onFocus, onBlur = props.onBlur, leftSide = props.leftSide, rightSide = props.rightSide, endFieldInputRefProp = props.endFieldInputRef, startFieldInputRefProp = props.startFieldInputRef, style = props.style, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, renderAdditionalControls = props.renderAdditionalControls, fieldProps = tslib_1.__rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "startFieldRightSide", "startFieldLeftSide", "startFieldOnBlur", "startFieldOnFocus", "endFieldRightSide", "endFieldLeftSide", "endFieldOnBlur", "endFieldOnFocus", "onFocus", "onBlur", "leftSide", "rightSide", "endFieldInputRef", "startFieldInputRef", "style", "currentVisibleDate", "onChangeCurrentVisibleDate", "renderAdditionalControls"]);
16
17
  var startFieldRef = react_1.useRef(null);
17
18
  var endFieldRef = react_1.useRef(null);
18
19
  var startFieldInputRef = react_1.useRef(null);
@@ -34,17 +35,7 @@ exports.DatePickerTypeDateRange = react_1.forwardRef(function (props, ref) {
34
35
  }
35
36
  };
36
37
  var _f = tslib_1.__read(react_1.useState(false), 2), calendarVisible = _f[0], setCalendarVisible = _f[1];
37
- var _g = tslib_1.__read(react_1.useState(), 2), currentVisibleDate = _g[0], setCurrentVisibleDate = _g[1];
38
- var commonProps = {
39
- value: props.value || undefined,
40
- view: dateTimeView,
41
- events: events,
42
- locale: locale,
43
- minDate: props.minDate,
44
- maxDate: props.maxDate,
45
- form: dropdownForm,
46
- onChange: hadleChange
47
- };
38
+ var _g = tslib_1.__read(useCurrentVisibleDate_1.useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _g[0], setCurrentVisibleDate = _g[1];
48
39
  var startFieldOnBlurHandler = function (e) {
49
40
  onBlur && onBlur(e);
50
41
  startFieldOnBlur && startFieldOnBlur(e);
@@ -121,6 +112,6 @@ exports.DatePickerTypeDateRange = react_1.forwardRef(function (props, ref) {
121
112
  }
122
113
  });
123
114
  return (react_1["default"].createElement(react_1["default"].Fragment, null,
124
- react_1["default"].createElement(DatePickerFieldTypeDateRange_1.DatePickerFieldTypeDateRange, tslib_1.__assign({}, fieldProps, { ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef_1.useForkRef([startFieldInputRef, startFieldInputRefProp]), endFieldInputRef: useForkRef_1.useForkRef([endFieldInputRef, endFieldInputRefProp]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldRightSide: startFieldRightSide, startFieldLeftSide: startFieldLeftSide || leftSide, endFieldRightSide: endFieldRightSide || rightSide, endFieldLeftSide: endFieldLeftSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused })),
125
- react_1["default"].createElement(DatePickerDropdown_1.DatePickerDropdown, tslib_1.__assign({}, commonProps, { ref: calendarRef, anchorRef: startFieldRef, isOpen: calendarVisible, onChangeCurrentVisibleDate: function (date) { return setCurrentVisibleDate(date); }, currentVisibleDate: currentVisibleDate }))));
115
+ react_1["default"].createElement(DatePickerFieldTypeDateRange_1.DatePickerFieldTypeDateRange, tslib_1.__assign({}, fieldProps, { style: style, ref: ref, startFieldRef: startFieldRef, endFieldRef: endFieldRef, startFieldInputRef: useForkRef_1.useForkRef([startFieldInputRef, startFieldInputRefProp]), endFieldInputRef: useForkRef_1.useForkRef([endFieldInputRef, endFieldInputRefProp]), startFieldOnFocus: startFieldOnFocusHandler, endFieldOnFocus: endFieldOnFocusHandler, startFieldRightSide: startFieldRightSide, startFieldLeftSide: startFieldLeftSide || leftSide, endFieldRightSide: endFieldRightSide || rightSide, endFieldLeftSide: endFieldLeftSide, startFieldOnBlur: startFieldOnBlurHandler, endFieldOnBlur: endFieldOnBlurHandler, startFocused: startFocused, endFocused: endFocused })),
116
+ react_1["default"].createElement(DatePickerDropdown_1.DatePickerDropdown, { type: "date", 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 })));
126
117
  });
@@ -0,0 +1,2 @@
1
+ import { DatePickerTypeComponent } from '../helpers';
2
+ export declare const DatePickerTypeDateTime: DatePickerTypeComponent<'date-time'>;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.DatePickerTypeDateTime = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = tslib_1.__importStar(require("react"));
6
+ var addMonths_1 = tslib_1.__importDefault(require("date-fns/addMonths"));
7
+ var startOfMonth_1 = tslib_1.__importDefault(require("date-fns/startOfMonth"));
8
+ var useClickOutside_1 = require("../../../hooks/useClickOutside/useClickOutside");
9
+ var useFlag_1 = require("../../../hooks/useFlag/useFlag");
10
+ var setRef_1 = require("../../../utils/setRef");
11
+ var DatePickerDropdown_1 = require("../DatePickerDropdown/DatePickerDropdown");
12
+ var DatePickerFieldTypeDateTime_1 = require("../DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime");
13
+ var helpers_1 = require("../helpers");
14
+ var useCurrentVisibleDate_1 = require("../useCurrentVisibleDate");
15
+ exports.DatePickerTypeDateTime = react_1.forwardRef(function (props, ref) {
16
+ var events = props.events, dateTimeView = props.dateTimeView, locale = props.locale, dropdownForm = props.dropdownForm, onFocus = props.onFocus, currentVisibleDateProp = props.currentVisibleDate, onChangeCurrentVisibleDateProp = props.onChangeCurrentVisibleDate, multiplicityHoursProp = props.multiplicityHours, multiplicityMinutesProp = props.multiplicityMinutes, multiplicitySecondsProp = props.multiplicitySeconds, renderAdditionalControls = props.renderAdditionalControls, otherProps = tslib_1.__rest(props, ["events", "dateTimeView", "locale", "dropdownForm", "onFocus", "currentVisibleDate", "onChangeCurrentVisibleDate", "multiplicityHours", "multiplicityMinutes", "multiplicitySeconds", "renderAdditionalControls"]);
17
+ var _a = tslib_1.__read(helpers_1.getMultiplicityTime(otherProps.format || helpers_1.datePickerPropFormatTypeDateTime, multiplicityHoursProp, multiplicityMinutesProp, multiplicitySecondsProp), 3), multiplicityHours = _a[0], multiplicityMinutes = _a[1], multiplicitySeconds = _a[2];
18
+ var fieldRef = react_1.useRef(null);
19
+ var calendarRef = react_1.useRef(null);
20
+ var _b = tslib_1.__read(useFlag_1.useFlag(false), 2), calendarVisible = _b[0], setCalendarVisible = _b[1];
21
+ var _c = tslib_1.__read(useCurrentVisibleDate_1.useCurrentVisibleDate(currentVisibleDateProp, onChangeCurrentVisibleDateProp), 2), currentVisibleDate = _c[0], setCurrentVisibleDate = _c[1];
22
+ var _d = tslib_1.__read(react_1.useState(), 2), calendarVisibleDate = _d[0], setCalendarVisibleDate = _d[1];
23
+ var onFocusHandler = function (e) {
24
+ onFocus && onFocus(e);
25
+ setCalendarVisible.on();
26
+ };
27
+ react_1.useEffect(function () {
28
+ if (ref) {
29
+ setRef_1.setRef(ref, fieldRef.current);
30
+ }
31
+ }, [ref, fieldRef]);
32
+ react_1.useEffect(function () {
33
+ if (props.value && props.dateTimeView === 'classic' && calendarVisibleDate) {
34
+ var newVisibleDate = startOfMonth_1["default"](props.value);
35
+ if (newVisibleDate.getTime() !== calendarVisibleDate.getTime()) {
36
+ setCurrentVisibleDate(newVisibleDate);
37
+ }
38
+ return;
39
+ }
40
+ if (props.value && props.dateTimeView !== 'classic' && calendarVisibleDate) {
41
+ var newVisibleDate = startOfMonth_1["default"](props.value);
42
+ if (newVisibleDate.getTime() !== calendarVisibleDate.getTime() &&
43
+ newVisibleDate.getTime() !== addMonths_1["default"](calendarVisibleDate, 1).getTime()) {
44
+ setCurrentVisibleDate(newVisibleDate);
45
+ }
46
+ }
47
+ }, [props.value]);
48
+ var handleClose = function () {
49
+ setCalendarVisible.off();
50
+ setCurrentVisibleDate(undefined);
51
+ };
52
+ useClickOutside_1.useClickOutside({
53
+ isActive: calendarVisible,
54
+ ignoreClicksInsideRefs: [fieldRef, calendarRef],
55
+ handler: handleClose
56
+ });
57
+ return (react_1["default"].createElement(react_1["default"].Fragment, null,
58
+ react_1["default"].createElement(DatePickerFieldTypeDateTime_1.DatePickerFieldTypeDateTime, tslib_1.__assign({}, otherProps, { ref: fieldRef, onFocus: onFocusHandler, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes })),
59
+ react_1["default"].createElement(DatePickerDropdown_1.DatePickerDropdown, { ref: calendarRef, anchorRef: fieldRef, isOpen: calendarVisible, value: props.value || undefined, type: "date-time", view: dateTimeView, events: events, locale: locale, minDate: props.minDate, maxDate: props.maxDate, currentVisibleDate: currentVisibleDate, form: dropdownForm, onChange: props.onChange, renderAdditionalControls: renderAdditionalControls, onChangeCurrentVisibleDate: setCalendarVisibleDate, multiplicityHours: multiplicityHours, multiplicitySeconds: multiplicitySeconds, multiplicityMinutes: multiplicityMinutes })));
60
+ });
@@ -3,14 +3,14 @@ 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 { DateTimePropView } from '../DateTimeCanary/helpers';
6
+ import { DateTimeAdditionalControlRenderProp, DateTimePropView } from '../DateTimeCanary/helpers';
7
7
  import { TextFieldPropForm, TextFieldPropSize, TextFieldPropStatus, TextFieldPropView, TextFieldPropWidth } from '../TextField/TextField';
8
- export declare const datePickerPropType: readonly ["date", "date-range"];
8
+ export declare const datePickerPropType: readonly ["date", "date-range", "date-time"];
9
9
  export declare type DatePickerPropType = typeof datePickerPropType[number];
10
10
  export declare const datePickerPropTypeDefault: "date";
11
11
  export declare type DatePickerPropDateTimeView = DateTimePropView;
12
12
  export declare const datePickerErrorTypes: readonly ["outOfRange", "invalidInputAttempt", "startDateIsGreaterThanEndDate"];
13
- export declare type DatePickerPropValue<TYPE extends DatePickerPropType> = (TYPE extends 'date' ? Date : DateRange) | null;
13
+ export declare type DatePickerPropValue<TYPE extends DatePickerPropType> = (TYPE extends 'date' | 'date-time' ? Date : DateRange) | null;
14
14
  export declare type DatePickerPropOnChange<TYPE extends DatePickerPropType> = (props: {
15
15
  value: DatePickerPropValue<TYPE>;
16
16
  e: React.MouseEvent<HTMLButtonElement, MouseEvent> | Event;
@@ -18,8 +18,8 @@ export declare type DatePickerPropOnChange<TYPE extends DatePickerPropType> = (p
18
18
  export declare const datePickerPropDropdownForm: readonly ["default", "brick", "round"];
19
19
  export declare type DatePickerPropDropdownForm = typeof datePickerPropDropdownForm[number];
20
20
  export declare const datePickerPropDropdownFormDefault: "default";
21
- declare type DatePickerPropCalendarWidth<TYPE> = TYPE extends 'date' ? TextFieldPropWidth : never;
22
- declare type DatePickerPropCalendarInputRef<TYPE> = TYPE extends 'date' ? React.Ref<HTMLInputElement> : never;
21
+ declare type DatePickerPropCalendarWidth<TYPE> = TYPE extends 'date' | 'date-time' ? TextFieldPropWidth : never;
22
+ declare type DatePickerPropCalendarInputRef<TYPE> = TYPE extends 'date' | 'date-time' ? React.Ref<HTMLInputElement> : never;
23
23
  declare type DatePickerPropCalendarStartInputRef<TYPE> = TYPE extends 'date-range' ? React.Ref<HTMLInputElement> : never;
24
24
  declare type DatePickerPropCalendarStartLeftSide<TYPE> = TYPE extends 'date-range' ? string | IconComponent : never;
25
25
  declare type DatePickerPropCalendarStartOnFocus<TYPE> = TYPE extends 'date-range' ? React.FocusEventHandler<HTMLElement> : never;
@@ -29,6 +29,7 @@ export declare type DatePickerProps<TYPE extends DatePickerPropType = 'date'> =
29
29
  onChange?: DatePickerPropOnChange<TYPE>;
30
30
  minDate?: Date;
31
31
  maxDate?: Date;
32
+ renderAdditionalControls?: DateTimeAdditionalControlRenderProp;
32
33
  events?: Date[];
33
34
  dateTimeView?: DatePickerPropDateTimeView;
34
35
  locale?: Locale;
@@ -67,16 +68,26 @@ export declare type DatePickerProps<TYPE extends DatePickerPropType = 'date'> =
67
68
  endFieldOnFocus?: DatePickerPropCalendarStartOnFocus<TYPE>;
68
69
  startFieldOnBlur?: DatePickerPropCalendarStartOnFocus<TYPE>;
69
70
  endFieldOnBlur?: DatePickerPropCalendarStartOnFocus<TYPE>;
71
+ label?: string;
72
+ caption?: string;
73
+ labelPosition?: 'top' | 'left';
74
+ onChangeCurrentVisibleDate?: (date: Date) => void;
75
+ currentVisibleDate?: Date;
76
+ multiplicitySeconds?: number;
77
+ multiplicityMinutes?: number;
78
+ multiplicityHours?: number;
70
79
  }, HTMLDivElement>;
71
80
  export declare type DatePickerComponent = <TYPE extends DatePickerPropType = 'date'>(props: DatePickerProps<TYPE>) => React.ReactElement | null;
72
- export declare type DatePickerTypeDateComponent = (props: DatePickerProps<'date'>) => React.ReactElement | null;
73
- export declare type DatePickerTypeDateRangeComponent = (props: DatePickerProps<'date-range'>) => React.ReactElement | null;
81
+ export declare type DatePickerTypeComponent<TYPE extends DatePickerPropType> = (props: Omit<DatePickerProps<TYPE>, 'type'>) => React.ReactElement | null;
74
82
  export declare type DatePickerPropOnError = (props: {
75
83
  type: typeof datePickerErrorTypes[0];
76
84
  stringValue: string;
77
85
  dd?: string;
78
86
  MM?: string;
79
87
  yyyy?: string;
88
+ ss?: string;
89
+ mm?: string;
90
+ HH?: string;
80
91
  date: Date;
81
92
  } | {
82
93
  type: typeof datePickerErrorTypes[1];
@@ -84,126 +95,19 @@ export declare type DatePickerPropOnError = (props: {
84
95
  dd?: string;
85
96
  MM?: string;
86
97
  yyyy?: string;
98
+ ss?: string;
99
+ mm?: string;
100
+ HH?: string;
87
101
  } | {
88
102
  type: typeof datePickerErrorTypes[2];
89
103
  date: [Date, Date];
90
104
  }) => void;
91
- export declare const isDateRangeParams: (params: DatePickerProps<DatePickerPropType>) => params is PropsWithHTMLAttributesAndRef<{
92
- type?: "date-range" | undefined;
93
- value?: DateRange | null | undefined;
94
- onChange?: DatePickerPropOnChange<"date-range"> | undefined;
95
- minDate?: Date | undefined;
96
- maxDate?: Date | undefined;
97
- events?: Date[] | undefined;
98
- dateTimeView?: "slider" | "classic" | "book" | undefined;
99
- locale?: globalThis.Locale | undefined;
100
- children?: undefined;
101
- onError?: DatePickerPropOnError | undefined;
102
- id?: string | undefined;
103
- name?: string | undefined;
104
- disabled?: boolean | undefined;
105
- size?: "xs" | "s" | "m" | "l" | undefined;
106
- view?: "default" | "clear" | undefined;
107
- form?: "default" | "round" | "brick" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "brickClear" | "clearBrick" | "clearClear" | undefined;
108
- status?: "alert" | "success" | "warning" | undefined;
109
- onFocus?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
110
- onBlur?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
111
- autoFocus?: boolean | undefined;
112
- placeholder?: string | undefined;
113
- readOnly?: boolean | undefined;
114
- required?: boolean | undefined;
115
- tabIndex?: number | undefined;
116
- inputRef?: undefined;
117
- ariaLabel?: string | undefined;
118
- iconSize?: "xs" | "s" | "m" | undefined;
119
- format?: string | undefined;
120
- separator?: string | undefined;
121
- dropdownForm?: "default" | "round" | "brick" | undefined;
122
- width?: undefined;
123
- leftSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
124
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
125
- size?: "xs" | "s" | "m" | undefined;
126
- }, HTMLSpanElement>> | undefined;
127
- rightSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
128
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
129
- size?: "xs" | "s" | "m" | undefined;
130
- }, HTMLSpanElement>> | undefined;
131
- startFieldInputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject<HTMLInputElement> | null | undefined;
132
- endFieldInputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject<HTMLInputElement> | null | undefined;
133
- startFieldLeftSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
134
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
135
- size?: "xs" | "s" | "m" | undefined;
136
- }, HTMLSpanElement>> | undefined;
137
- startFieldRightSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
138
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
139
- size?: "xs" | "s" | "m" | undefined;
140
- }, HTMLSpanElement>> | undefined;
141
- endFieldLeftSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
142
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
143
- size?: "xs" | "s" | "m" | undefined;
144
- }, HTMLSpanElement>> | undefined;
145
- endFieldRightSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
146
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
147
- size?: "xs" | "s" | "m" | undefined;
148
- }, HTMLSpanElement>> | undefined;
149
- startFieldOnFocus?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
150
- endFieldOnFocus?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
151
- startFieldOnBlur?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
152
- endFieldOnBlur?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
153
- }, HTMLDivElement>;
154
- export declare const isNotDateRangeParams: (params: DatePickerProps<DatePickerPropType>) => params is PropsWithHTMLAttributesAndRef<{
155
- type?: "date" | undefined;
156
- value?: Date | null | undefined;
157
- onChange?: DatePickerPropOnChange<"date"> | undefined;
158
- minDate?: Date | undefined;
159
- maxDate?: Date | undefined;
160
- events?: Date[] | undefined;
161
- dateTimeView?: "slider" | "classic" | "book" | undefined;
162
- locale?: globalThis.Locale | undefined;
163
- children?: undefined;
164
- onError?: DatePickerPropOnError | undefined;
165
- id?: string | undefined;
166
- name?: string | undefined;
167
- disabled?: boolean | undefined;
168
- size?: "xs" | "s" | "m" | "l" | undefined;
169
- view?: "default" | "clear" | undefined;
170
- form?: "default" | "round" | "brick" | "brickRound" | "roundBrick" | "brickDefault" | "defaultBrick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "brickClear" | "clearBrick" | "clearClear" | undefined;
171
- status?: "alert" | "success" | "warning" | undefined;
172
- onFocus?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
173
- onBlur?: ((event: import("react").FocusEvent<HTMLElement>) => void) | undefined;
174
- autoFocus?: boolean | undefined;
175
- placeholder?: string | undefined;
176
- readOnly?: boolean | undefined;
177
- required?: boolean | undefined;
178
- tabIndex?: number | undefined;
179
- inputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject<HTMLInputElement> | null | undefined;
180
- ariaLabel?: string | undefined;
181
- iconSize?: "xs" | "s" | "m" | undefined;
182
- format?: string | undefined;
183
- separator?: string | undefined;
184
- dropdownForm?: "default" | "round" | "brick" | undefined;
185
- width?: "default" | "full" | undefined;
186
- leftSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
187
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
188
- size?: "xs" | "s" | "m" | undefined;
189
- }, HTMLSpanElement>> | undefined;
190
- rightSide?: string | import("react").FC<PropsWithHTMLAttributesAndRef<{
191
- view?: "link" | "alert" | "brand" | "ghost" | "primary" | "secondary" | "success" | "warning" | "disabled" | undefined;
192
- size?: "xs" | "s" | "m" | undefined;
193
- }, HTMLSpanElement>> | undefined;
194
- startFieldInputRef?: undefined;
195
- endFieldInputRef?: undefined;
196
- startFieldLeftSide?: undefined;
197
- startFieldRightSide?: undefined;
198
- endFieldLeftSide?: undefined;
199
- endFieldRightSide?: undefined;
200
- startFieldOnFocus?: undefined;
201
- endFieldOnFocus?: undefined;
202
- startFieldOnBlur?: undefined;
203
- endFieldOnBlur?: undefined;
204
- }, HTMLDivElement>;
205
105
  export declare const datePickerPropSeparatorDefault = ".";
206
- export declare const datePickerPropFormatDefault: string;
207
- export declare const datePickerPropPlaceholderDefault: string;
106
+ export declare const datePickerPropFormatTypeDate: string;
107
+ export declare const datePickerPropPlaceholderTypeDate: string;
108
+ export declare const datePickerPropFormatTypeDateTime: string;
109
+ export declare const datePickerPropPlaceholderTypeDateTime: string;
208
110
  export declare const normalizeRangeValue: (dateRange: DateRange) => DateRange;
111
+ export declare const getMultiplicityTime: (format: string, multiplicityHours: number | undefined, multiplicityMinutes: number | undefined, multiplicitySeconds: number | undefined) => (number | undefined)[];
112
+ export declare const getTimeEnum: (length: number, multiplicity: number | undefined, startOfUnits: (date: Date) => Date, addUnits: (date: Date, amount: number) => Date, getItemLabel: (date: Date) => string) => string[];
209
113
  export {};
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  exports.__esModule = true;
3
- exports.normalizeRangeValue = exports.datePickerPropPlaceholderDefault = exports.datePickerPropFormatDefault = exports.datePickerPropSeparatorDefault = exports.isNotDateRangeParams = exports.isDateRangeParams = exports.datePickerPropDropdownFormDefault = exports.datePickerPropDropdownForm = exports.datePickerErrorTypes = exports.datePickerPropTypeDefault = exports.datePickerPropType = void 0;
4
- exports.datePickerPropType = ['date', 'date-range'];
3
+ exports.getTimeEnum = exports.getMultiplicityTime = exports.normalizeRangeValue = exports.datePickerPropPlaceholderTypeDateTime = exports.datePickerPropFormatTypeDateTime = exports.datePickerPropPlaceholderTypeDate = exports.datePickerPropFormatTypeDate = exports.datePickerPropSeparatorDefault = exports.datePickerPropDropdownFormDefault = exports.datePickerPropDropdownForm = exports.datePickerErrorTypes = exports.datePickerPropTypeDefault = exports.datePickerPropType = void 0;
4
+ var date_fns_1 = require("date-fns");
5
+ var array_1 = require("../../utils/array");
6
+ exports.datePickerPropType = ['date', 'date-range', 'date-time'];
5
7
  exports.datePickerPropTypeDefault = exports.datePickerPropType[0];
6
8
  exports.datePickerErrorTypes = [
7
9
  'outOfRange',
@@ -10,15 +12,11 @@ exports.datePickerErrorTypes = [
10
12
  ];
11
13
  exports.datePickerPropDropdownForm = ['default', 'brick', 'round'];
12
14
  exports.datePickerPropDropdownFormDefault = exports.datePickerPropDropdownForm[0];
13
- exports.isDateRangeParams = function (params) {
14
- return params.type === exports.datePickerPropType[1];
15
- };
16
- exports.isNotDateRangeParams = function (params) {
17
- return params.type === exports.datePickerPropType[0];
18
- };
19
15
  exports.datePickerPropSeparatorDefault = '.';
20
- exports.datePickerPropFormatDefault = "dd" + exports.datePickerPropSeparatorDefault + "MM" + exports.datePickerPropSeparatorDefault + "yyyy";
21
- exports.datePickerPropPlaceholderDefault = "\u0414\u0414" + exports.datePickerPropSeparatorDefault + "\u041C\u041C" + exports.datePickerPropSeparatorDefault + "\u0413\u0413\u0413\u0413";
16
+ exports.datePickerPropFormatTypeDate = "dd" + exports.datePickerPropSeparatorDefault + "MM" + exports.datePickerPropSeparatorDefault + "yyyy";
17
+ exports.datePickerPropPlaceholderTypeDate = "\u0414\u0414" + exports.datePickerPropSeparatorDefault + "\u041C\u041C" + exports.datePickerPropSeparatorDefault + "\u0413\u0413\u0413\u0413";
18
+ exports.datePickerPropFormatTypeDateTime = exports.datePickerPropFormatTypeDate + " HH:mm:ss";
19
+ exports.datePickerPropPlaceholderTypeDateTime = exports.datePickerPropPlaceholderTypeDate + " \u0427\u0427:\u041C\u041C:\u0421\u0421";
22
20
  exports.normalizeRangeValue = function (dateRange) {
23
21
  var _a, _b;
24
22
  if (dateRange[0] && dateRange[1] && ((_a = dateRange[0]) === null || _a === void 0 ? void 0 : _a.getTime()) > ((_b = dateRange[1]) === null || _b === void 0 ? void 0 : _b.getTime())) {
@@ -26,3 +24,25 @@ exports.normalizeRangeValue = function (dateRange) {
26
24
  }
27
25
  return dateRange;
28
26
  };
27
+ exports.getMultiplicityTime = function (format, multiplicityHours, multiplicityMinutes, multiplicitySeconds) {
28
+ var _a;
29
+ var markers = ['HH', 'mm', 'ss'];
30
+ var formatArray = (_a = format.split(' ')[1]) === null || _a === void 0 ? void 0 : _a.split(':');
31
+ var map = {
32
+ HH: multiplicityHours,
33
+ mm: multiplicityMinutes,
34
+ ss: multiplicitySeconds
35
+ };
36
+ return markers.map(function (marker) { return ((formatArray === null || formatArray === void 0 ? void 0 : formatArray.indexOf(marker)) < 0 ? 0 : map[marker]); });
37
+ };
38
+ exports.getTimeEnum = function (length, multiplicity, startOfUnits, addUnits, getItemLabel) {
39
+ if (multiplicity === void 0) { multiplicity = 1; }
40
+ var numbers = array_1.range(multiplicity ? Math.floor(length / multiplicity) : 0);
41
+ if (numbers.length === 0) {
42
+ return [];
43
+ }
44
+ var startDate = startOfUnits(date_fns_1.startOfToday());
45
+ return numbers.map(function (number) {
46
+ return getItemLabel(addUnits(startDate, number * multiplicity));
47
+ });
48
+ };
@@ -0,0 +1,2 @@
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>>];
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.useCurrentVisibleDate = void 0;
4
+ var react_1 = require("react");
5
+ exports.useCurrentVisibleDate = function (date, onChange) {
6
+ var _a;
7
+ var state = react_1.useState(date);
8
+ react_1.useEffect(function () { return state[1](date); }, [date === null || date === void 0 ? void 0 : date.getTime()]);
9
+ react_1.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()]);
10
+ return state;
11
+ };
@@ -0,0 +1,9 @@
1
+ .DateTimeAdditionalControls {
2
+ display: -webkit-box;
3
+ display: -ms-flexbox;
4
+ display: flex;
5
+ margin-top: var(--space-l);
6
+ gap: var(--space-s);
7
+ -ms-flex-wrap: wrap;
8
+ flex-wrap: wrap;
9
+ }
@@ -0,0 +1,9 @@
1
+ import './DateTimeAdditionalControls.css';
2
+ import React from 'react';
3
+ import { DateTimeAdditionalControlRenderProp } from '../helpers';
4
+ declare type Props = {
5
+ renderAdditionalControls?: DateTimeAdditionalControlRenderProp;
6
+ currentVisibleDate?: Date;
7
+ };
8
+ export declare const DateTimeAdditionalControls: React.FC<Props>;
9
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.DateTimeAdditionalControls = void 0;
4
+ var tslib_1 = require("tslib");
5
+ require("./DateTimeAdditionalControls.css");
6
+ var react_1 = tslib_1.__importDefault(require("react"));
7
+ var bem_1 = require("../../../utils/bem");
8
+ function isRenderFn(fn) {
9
+ return fn.call !== undefined;
10
+ }
11
+ var cnDateTimeAdditionalControls = bem_1.cn('DateTimeAdditionalControls');
12
+ exports.DateTimeAdditionalControls = function (props) {
13
+ var renderAdditionalControls = props.renderAdditionalControls, currentVisibleDate = props.currentVisibleDate;
14
+ if (typeof renderAdditionalControls !== 'undefined') {
15
+ var content = isRenderFn(renderAdditionalControls)
16
+ ? renderAdditionalControls({ currentVisibleDate: currentVisibleDate })
17
+ : renderAdditionalControls;
18
+ return react_1["default"].createElement("div", { className: cnDateTimeAdditionalControls() }, content);
19
+ }
20
+ return null;
21
+ };