@consta/uikit 3.24.2 → 3.24.3

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 (446) 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 +21 -47
  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/package.json +1 -1
  15. package/ChoiceGroup/package.json +1 -1
  16. package/ChoiceGroupCanary/package.json +1 -1
  17. package/Collapse/package.json +1 -1
  18. package/CollapseGroup/package.json +1 -1
  19. package/Combobox/package.json +1 -1
  20. package/ComboboxDeprecated/package.json +1 -1
  21. package/ContextMenu/package.json +1 -1
  22. package/ContextMenuCanary/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/FileIconPpt/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/IconFacebook/package.json +1 -1
  120. package/IconFavorite/package.json +1 -1
  121. package/IconFilter/package.json +1 -1
  122. package/IconFitToDefault/package.json +1 -1
  123. package/IconFlagFilled/package.json +1 -1
  124. package/IconFlagStroked/package.json +1 -1
  125. package/IconFolders/package.json +1 -1
  126. package/IconForward/package.json +1 -1
  127. package/IconFunnel/package.json +1 -1
  128. package/IconGas/package.json +1 -1
  129. package/IconGeo/package.json +1 -1
  130. package/IconGrouping/package.json +1 -1
  131. package/IconHamburger/package.json +1 -1
  132. package/IconHand/package.json +1 -1
  133. package/IconHealth/package.json +1 -1
  134. package/IconHome/package.json +1 -1
  135. package/IconInComparison/package.json +1 -1
  136. package/IconInfo/package.json +1 -1
  137. package/IconInstagram/package.json +1 -1
  138. package/IconIntroduction/package.json +1 -1
  139. package/IconIpad/package.json +1 -1
  140. package/IconItalic/package.json +1 -1
  141. package/IconKebab/package.json +1 -1
  142. package/IconLaptop/package.json +1 -1
  143. package/IconLayers/package.json +1 -1
  144. package/IconLeaf/package.json +1 -1
  145. package/IconLightningBolt/package.json +1 -1
  146. package/IconLineAndBarChart/package.json +1 -1
  147. package/IconLink/package.json +1 -1
  148. package/IconList/package.json +1 -1
  149. package/IconListNumbered/package.json +1 -1
  150. package/IconLock/package.json +1 -1
  151. package/IconLogicalElement/package.json +1 -1
  152. package/IconMBU/package.json +1 -1
  153. package/IconMGRP/package.json +1 -1
  154. package/IconMLSP/package.json +1 -1
  155. package/IconMMP/package.json +1 -1
  156. package/IconMail/package.json +1 -1
  157. package/IconMap/package.json +1 -1
  158. package/IconMaxHeight/package.json +1 -1
  159. package/IconMaxWidth/package.json +1 -1
  160. package/IconMeatball/package.json +1 -1
  161. package/IconMic/package.json +1 -1
  162. package/IconMolecules/package.json +1 -1
  163. package/IconMoon/package.json +1 -1
  164. package/IconNodeEnd/package.json +1 -1
  165. package/IconNodeStart/package.json +1 -1
  166. package/IconNodeStep/package.json +1 -1
  167. package/IconNodes/package.json +1 -1
  168. package/IconOpenInNew/package.json +1 -1
  169. package/IconOperators/package.json +1 -1
  170. package/IconPanelBottom/package.json +1 -1
  171. package/IconPanelLeft/package.json +1 -1
  172. package/IconPanelRight/package.json +1 -1
  173. package/IconPanelTop/package.json +1 -1
  174. package/IconPaste/package.json +1 -1
  175. package/IconPause/package.json +1 -1
  176. package/IconPhone/package.json +1 -1
  177. package/IconPhoto/package.json +1 -1
  178. package/IconPicture/package.json +1 -1
  179. package/IconPlay/package.json +1 -1
  180. package/IconPressure/package.json +1 -1
  181. package/IconPriceLabel/package.json +1 -1
  182. package/IconProcessing/package.json +1 -1
  183. package/IconQuestion/package.json +1 -1
  184. package/IconQuote/package.json +1 -1
  185. package/IconRUO/package.json +1 -1
  186. package/IconRUS/package.json +1 -1
  187. package/IconRecord/package.json +1 -1
  188. package/IconRemove/package.json +1 -1
  189. package/IconRemoveFromComparison/package.json +1 -1
  190. package/IconReply/package.json +1 -1
  191. package/IconResize/package.json +1 -1
  192. package/IconRestart/package.json +1 -1
  193. package/IconRevert/package.json +1 -1
  194. package/IconRing/package.json +1 -1
  195. package/IconRouble/package.json +1 -1
  196. package/IconRuler/package.json +1 -1
  197. package/IconSave/package.json +1 -1
  198. package/IconScreen/package.json +1 -1
  199. package/IconSearch/package.json +1 -1
  200. package/IconSelect/package.json +1 -1
  201. package/IconSelectOpen/package.json +1 -1
  202. package/IconSendMessage/package.json +1 -1
  203. package/IconSettings/package.json +1 -1
  204. package/IconShape/package.json +1 -1
  205. package/IconShuffle/package.json +1 -1
  206. package/IconSmile/package.json +1 -1
  207. package/IconSortDown/package.json +1 -1
  208. package/IconSortDownCenter/package.json +1 -1
  209. package/IconSortUp/package.json +1 -1
  210. package/IconSortUpCenter/package.json +1 -1
  211. package/IconStop/package.json +1 -1
  212. package/IconStorage/package.json +1 -1
  213. package/IconStrikethrough/package.json +1 -1
  214. package/IconSun/package.json +1 -1
  215. package/IconTable/package.json +1 -1
  216. package/IconTable2/package.json +1 -1
  217. package/IconTarget/package.json +1 -1
  218. package/IconTeam/package.json +1 -1
  219. package/IconTechResponse/package.json +1 -1
  220. package/IconTest/package.json +1 -1
  221. package/IconThumbUp/package.json +1 -1
  222. package/IconTie/package.json +1 -1
  223. package/IconTop/package.json +1 -1
  224. package/IconTrash/package.json +1 -1
  225. package/IconType/package.json +1 -1
  226. package/IconUnderline/package.json +1 -1
  227. package/IconUnlock/package.json +1 -1
  228. package/IconUnsort/package.json +1 -1
  229. package/IconUnsortCenter/package.json +1 -1
  230. package/IconUpload/package.json +1 -1
  231. package/IconUser/package.json +1 -1
  232. package/IconVZD/package.json +1 -1
  233. package/IconVideo/package.json +1 -1
  234. package/IconVkontakte/package.json +1 -1
  235. package/IconWarning/package.json +1 -1
  236. package/IconWatch/package.json +1 -1
  237. package/IconWideScreen/package.json +1 -1
  238. package/IconWorld/package.json +1 -1
  239. package/IconWrench/package.json +1 -1
  240. package/IconYandexDzen/package.json +1 -1
  241. package/IconYoutube/package.json +1 -1
  242. package/Informer/package.json +1 -1
  243. package/LayoutCanary/package.json +1 -1
  244. package/Loader/package.json +1 -1
  245. package/MixCard/package.json +1 -1
  246. package/MixFocus/package.json +1 -1
  247. package/MixPopoverAnimate/package.json +1 -1
  248. package/MixPopoverArrow/package.json +1 -1
  249. package/MixSpace/package.json +1 -1
  250. package/MixVisuallyHidden/package.json +1 -1
  251. package/Modal/package.json +1 -1
  252. package/MultiComboboxDeprecated/package.json +1 -1
  253. package/Pagination/package.json +1 -1
  254. package/Popover/package.json +1 -1
  255. package/PortalWithTheme/package.json +1 -1
  256. package/ProgressSpin/package.json +1 -1
  257. package/ProgressStepBarCanary/package.json +1 -1
  258. package/Radio/package.json +1 -1
  259. package/RadioGroup/package.json +1 -1
  260. package/Responses/package.json +1 -1
  261. package/Responses403/package.json +1 -1
  262. package/Responses404/package.json +1 -1
  263. package/Responses500/package.json +1 -1
  264. package/Responses503/package.json +1 -1
  265. package/ResponsesConnectionError/package.json +1 -1
  266. package/ResponsesDeleted/package.json +1 -1
  267. package/ResponsesEmptyBox/package.json +1 -1
  268. package/ResponsesEmptyPockets/package.json +1 -1
  269. package/ResponsesExit/package.json +1 -1
  270. package/ResponsesImage/package.json +1 -1
  271. package/ResponsesImage403/package.json +1 -1
  272. package/ResponsesImage404/package.json +1 -1
  273. package/ResponsesImage500/package.json +1 -1
  274. package/ResponsesImage503/package.json +1 -1
  275. package/ResponsesImageConnectionError/package.json +1 -1
  276. package/ResponsesImageDeleted/package.json +1 -1
  277. package/ResponsesImageEmptyBox/package.json +1 -1
  278. package/ResponsesImageEmptyPockets/package.json +1 -1
  279. package/ResponsesImageNothingFound/package.json +1 -1
  280. package/ResponsesImageSuccess/package.json +1 -1
  281. package/ResponsesNothingFound/package.json +1 -1
  282. package/ResponsesSuccess/package.json +1 -1
  283. package/Select/package.json +1 -1
  284. package/Sidebar/package.json +1 -1
  285. package/Skeleton/package.json +1 -1
  286. package/SliderCanary/package.json +1 -1
  287. package/SnackBar/package.json +1 -1
  288. package/Steps/package.json +1 -1
  289. package/StepsCanary/package.json +1 -1
  290. package/Switch/package.json +1 -1
  291. package/SwitchGroup/package.json +1 -1
  292. package/SwitchGroupCanary/package.json +1 -1
  293. package/Table/package.json +1 -1
  294. package/Tabs/package.json +1 -1
  295. package/TabsCanary/package.json +1 -1
  296. package/Tag/package.json +1 -1
  297. package/TagBase/package.json +1 -1
  298. package/Text/package.json +1 -1
  299. package/TextField/package.json +1 -1
  300. package/Theme/package.json +1 -1
  301. package/ThemeToggler/package.json +1 -1
  302. package/Timer/package.json +1 -1
  303. package/Tooltip/package.json +1 -1
  304. package/User/package.json +1 -1
  305. package/UserSelect/package.json +1 -1
  306. package/UserSelectDeprecated/package.json +1 -1
  307. package/__internal__/cjs-src/components/Combobox/helpers.d.ts +1 -1
  308. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +1 -0
  309. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.js +29 -29
  310. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.d.ts +5 -1
  311. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.js +33 -19
  312. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +2 -1
  313. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +7 -63
  314. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +1 -0
  315. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.js +21 -18
  316. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.d.ts +5 -1
  317. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.js +21 -5
  318. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +2 -1
  319. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.js +7 -63
  320. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +1 -0
  321. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.js +27 -27
  322. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonth/helpers.d.ts +5 -1
  323. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonth/helpers.js +24 -9
  324. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.d.ts +2 -1
  325. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.js +7 -63
  326. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/helpers.d.ts +2 -2
  327. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +1 -0
  328. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeTime/DatePickerFieldTypeTime.js +21 -18
  329. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeTime/helpers.d.ts +5 -1
  330. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeTime/helpers.js +19 -3
  331. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +1 -0
  332. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeYear/DatePickerFieldTypeYear.js +25 -25
  333. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeYear/helpers.d.ts +1 -0
  334. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.d.ts +2 -1
  335. package/__internal__/cjs-src/components/DatePickerCanary/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.js +7 -63
  336. package/__internal__/cjs-src/components/DatePickerCanary/getChangeFnRange.d.ts +14 -0
  337. package/__internal__/cjs-src/components/DatePickerCanary/getChangeFnRange.js +40 -0
  338. package/__internal__/cjs-src/components/DatePickerCanary/types.d.ts +1 -0
  339. package/__internal__/cjs-src/components/DragNDropField/DragNDropField.css +10 -1
  340. package/__internal__/cjs-src/components/DragNDropField/DragNDropField.d.ts +10 -2
  341. package/__internal__/cjs-src/components/DragNDropField/DragNDropField.js +13 -11
  342. package/__internal__/cjs-src/components/DragNDropField/DragNDropFieldContent/DragNDropFieldContent.css +3 -0
  343. package/__internal__/cjs-src/components/DragNDropField/DragNDropFieldContent/DragNDropFieldContent.js +3 -3
  344. package/__internal__/cjs-src/components/DragNDropField/types.d.ts +5 -3
  345. package/__internal__/cjs-src/components/Popover/Popover.css +2 -36
  346. package/__internal__/cjs-src/components/Popover/Popover.js +41 -12
  347. package/__internal__/cjs-src/components/Popover/helpers.d.ts +4 -4
  348. package/__internal__/cjs-src/components/Popover/helpers.js +9 -11
  349. package/__internal__/cjs-src/components/Popover/usePopoverReposition.d.ts +2 -1
  350. package/__internal__/cjs-src/components/Popover/usePopoverReposition.js +12 -12
  351. package/__internal__/cjs-src/components/SelectComponents/SelectDropdown/SelectDropdown.js +2 -3
  352. package/__internal__/cjs-src/components/SliderCanary/SliderInput/SliderInput.d.ts +1 -1
  353. package/__internal__/cjs-src/components/Table/Table.d.ts +4 -0
  354. package/__internal__/cjs-src/components/Table/filtering.d.ts +1 -5
  355. package/__internal__/cjs-src/components/TextField/TextField.css +24 -2
  356. package/__internal__/cjs-src/components/TextField/TextField.d.ts +2 -2
  357. package/__internal__/cjs-src/components/TextField/TextField.js +51 -45
  358. package/__internal__/cjs-src/components/TextField/helpers.d.ts +6 -100
  359. package/__internal__/cjs-src/components/TextField/helpers.js +18 -30
  360. package/__internal__/cjs-src/components/TextField/types.d.ts +87 -0
  361. package/__internal__/cjs-src/components/TextField/types.js +27 -0
  362. package/__internal__/cjs-src/mixs/MixPopoverAnimate/MixPopoverAnimate.css +40 -4
  363. package/__internal__/src/components/Combobox/helpers.d.ts +1 -1
  364. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +1 -0
  365. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/DatePickerFieldTypeDate.js +29 -29
  366. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.d.ts +5 -1
  367. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDate/helpers.js +34 -20
  368. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +2 -1
  369. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.js +8 -64
  370. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +1 -0
  371. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.js +21 -18
  372. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.d.ts +5 -1
  373. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTime/helpers.js +22 -6
  374. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +2 -1
  375. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.js +8 -64
  376. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +1 -0
  377. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.js +27 -27
  378. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonth/helpers.d.ts +5 -1
  379. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonth/helpers.js +25 -10
  380. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.d.ts +2 -1
  381. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.js +8 -64
  382. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeMonthRange/helpers.d.ts +2 -2
  383. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +1 -0
  384. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeTime/DatePickerFieldTypeTime.js +21 -18
  385. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeTime/helpers.d.ts +5 -1
  386. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeTime/helpers.js +20 -4
  387. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +1 -0
  388. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeYear/DatePickerFieldTypeYear.js +25 -25
  389. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeYear/helpers.d.ts +1 -0
  390. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.d.ts +2 -1
  391. package/__internal__/src/components/DatePickerCanary/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.js +8 -64
  392. package/__internal__/src/components/DatePickerCanary/getChangeFnRange.d.ts +14 -0
  393. package/__internal__/src/components/DatePickerCanary/getChangeFnRange.js +36 -0
  394. package/__internal__/src/components/DatePickerCanary/types.d.ts +1 -0
  395. package/__internal__/src/components/DragNDropField/DragNDropField.css +10 -1
  396. package/__internal__/src/components/DragNDropField/DragNDropField.d.ts +10 -2
  397. package/__internal__/src/components/DragNDropField/DragNDropField.js +15 -13
  398. package/__internal__/src/components/DragNDropField/DragNDropFieldContent/DragNDropFieldContent.css +3 -0
  399. package/__internal__/src/components/DragNDropField/DragNDropFieldContent/DragNDropFieldContent.js +3 -3
  400. package/__internal__/src/components/DragNDropField/types.d.ts +5 -3
  401. package/__internal__/src/components/Popover/Popover.css +2 -36
  402. package/__internal__/src/components/Popover/Popover.js +42 -13
  403. package/__internal__/src/components/Popover/helpers.d.ts +4 -4
  404. package/__internal__/src/components/Popover/helpers.js +8 -10
  405. package/__internal__/src/components/Popover/usePopoverReposition.d.ts +2 -1
  406. package/__internal__/src/components/Popover/usePopoverReposition.js +12 -12
  407. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +4 -5
  408. package/__internal__/src/components/SliderCanary/SliderInput/SliderInput.d.ts +1 -1
  409. package/__internal__/src/components/Table/Table.d.ts +4 -0
  410. package/__internal__/src/components/Table/filtering.d.ts +1 -5
  411. package/__internal__/src/components/TextField/TextField.css +24 -2
  412. package/__internal__/src/components/TextField/TextField.d.ts +2 -2
  413. package/__internal__/src/components/TextField/TextField.js +52 -46
  414. package/__internal__/src/components/TextField/helpers.d.ts +6 -100
  415. package/__internal__/src/components/TextField/helpers.js +17 -29
  416. package/__internal__/src/components/TextField/types.d.ts +87 -0
  417. package/__internal__/src/components/TextField/types.js +24 -0
  418. package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.css +40 -4
  419. package/createIcon/package.json +1 -1
  420. package/createResponsesImage/package.json +1 -1
  421. package/fonts/index.d.ts +1 -0
  422. package/fonts/index.js +1 -0
  423. package/package.json +4 -3
  424. package/useBreakpoints/package.json +1 -1
  425. package/useChoiceGroup/package.json +1 -1
  426. package/useChoiceGroupIndexed/package.json +1 -1
  427. package/useClickOutside/package.json +1 -1
  428. package/useComponentSize/package.json +1 -1
  429. package/useDebounce/package.json +1 -1
  430. package/useFlag/package.json +1 -1
  431. package/useForkRef/package.json +1 -1
  432. package/useGlobalKeys/package.json +1 -1
  433. package/useHideElementsInLine/package.json +1 -1
  434. package/useKeys/package.json +1 -1
  435. package/useMutableRef/package.json +1 -1
  436. package/useOverflow/package.json +1 -1
  437. package/usePrevious/package.json +1 -1
  438. package/useRefs/package.json +1 -1
  439. package/useResizeObserved/package.json +1 -1
  440. package/useScrollElements/package.json +1 -1
  441. package/useScrollPosition/package.json +1 -1
  442. package/useSelect/package.json +1 -1
  443. package/useSortSteps/package.json +1 -1
  444. package/useThemeVars/package.json +1 -1
  445. package/useTimer/package.json +1 -1
  446. package/withTooltip/package.json +1 -1
@@ -19,7 +19,6 @@ exports.defaultSelectDropdownPropForm = exports.selectDropdownform[0];
19
19
  var cnSelectDropdown = bem_1.cn('SelectDropdown');
20
20
  exports.SelectDropdown = function (props) {
21
21
  var controlRef = props.controlRef, size = props.size, getOptionProps = props.getOptionProps, dropdownRef = props.dropdownRef, labelForCreate = props.labelForCreate, className = props.className, labelForNotFound = props.labelForNotFound, labelForEmptyItems = props.labelForEmptyItems, _a = props.hasItems, hasItems = _a === void 0 ? true : _a, form = props.form, isOpen = props.isOpen, renderItem = props.renderItem, visibleItems = props.visibleItems, isLoading = props.isLoading, getGroupLabel = props.getGroupLabel, notFound = props.notFound, otherProps = tslib_1.__rest(props, ["controlRef", "size", "getOptionProps", "dropdownRef", "labelForCreate", "className", "labelForNotFound", "labelForEmptyItems", "hasItems", "form", "isOpen", "renderItem", "visibleItems", "isLoading", "getGroupLabel", "notFound"]);
22
- var _b = tslib_1.__read(react_1.useState('downStartLeft'), 2), direction = _b[0], setDirection = _b[1];
23
22
  var indent = form === 'round' ? 'increased' : 'normal';
24
23
  var popoverRef = react_1.useRef(null);
25
24
  var isListShowed = react_1.useMemo(function () {
@@ -29,9 +28,9 @@ exports.SelectDropdown = function (props) {
29
28
  }, [visibleItems]);
30
29
  return (react_1["default"].createElement(react_transition_group_1.Transition, { "in": isOpen, unmountOnExit: true, nodeRef: popoverRef, timeout: MixPopoverAnimate_1.animateTimeout }, function (animate) {
31
30
  var getIndex = fabricIndex_1.fabricIndex(-1);
32
- return (react_1["default"].createElement(Popover_1.Popover, tslib_1.__assign({}, otherProps, { anchorRef: controlRef, direction: "downStartLeft", possibleDirections: ['downStartLeft', 'upStartLeft', 'downStartRight', 'upStartRight'], offset: "2xs", ref: popoverRef, role: "listbox", onSetDirection: setDirection, className: cnSelectDropdown({ form: form, size: size }, [
31
+ return (react_1["default"].createElement(Popover_1.Popover, tslib_1.__assign({}, otherProps, { anchorRef: controlRef, direction: "downStartLeft", possibleDirections: ['downStartLeft', 'upStartLeft', 'downStartRight', 'upStartRight'], offset: "2xs", ref: popoverRef, role: "listbox", className: cnSelectDropdown({ form: form, size: size }, [
33
32
  className,
34
- MixPopoverAnimate_1.cnMixPopoverAnimate({ direction: direction, animate: animate }),
33
+ MixPopoverAnimate_1.cnMixPopoverAnimate({ animate: animate }),
35
34
  ]), equalAnchorWidth: true }),
36
35
  react_1["default"].createElement("div", { className: cnSelectDropdown('List', { size: size, form: form }), ref: dropdownRef },
37
36
  isLoading && react_1["default"].createElement(SelectLoader_1.SelectLoader, { mode: isListShowed ? 'blur' : 'empty' }),
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { TextFieldProps } from '../../TextField/helpers';
2
+ import { TextFieldProps } from '../../TextField/TextField';
3
3
  declare type Props = Omit<TextFieldProps<'number'>, 'value' | 'onChange' | 'min' | 'max' | 'step'> & {
4
4
  value: number;
5
5
  step?: number | number[];
@@ -80,6 +80,10 @@ declare type GroupColumnAddition<T extends TableRow> = {
80
80
  export interface TableControl<T extends TableRow> {
81
81
  column: Header<T> & ColumnMetaData;
82
82
  }
83
+ export declare type SortByProps<T extends TableRow> = {
84
+ sortingBy: keyof T;
85
+ sortOrder: 'asc' | 'desc';
86
+ };
83
87
  export declare type TableColumn<T extends TableRow> = {
84
88
  title: React.ReactNode;
85
89
  align?: HorizontalAlign;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { TableColumn, TableRow, ValueOf } from './Table';
2
+ import { SortByProps, TableColumn, TableRow, ValueOf } from './Table';
3
3
  export declare type FilterComponentProps = {
4
4
  onConfirm: (value: unknown) => void;
5
5
  onCancel: () => void;
@@ -20,10 +20,6 @@ export declare type Filters<T extends TableRow> = ValueOf<{
20
20
  };
21
21
  });
22
22
  }>[];
23
- export declare type SortByProps<T extends TableRow> = {
24
- sortingBy: keyof T;
25
- sortOrder: 'asc' | 'desc';
26
- };
27
23
  export declare type onSortBy<T extends TableRow> = (props: SortByProps<T> | null) => void;
28
24
  export declare type FieldSelectedValues = string[];
29
25
  declare type SelectedFilter = {
@@ -437,21 +437,43 @@
437
437
  transition: background-color 0.15s;
438
438
  }
439
439
 
440
- .TextField-ClearButton {
440
+ .TextField-ClearButton,
441
+ .TextField-EyeButton {
442
+ display: -webkit-box;
443
+ display: -ms-flexbox;
444
+ display: flex;
445
+ -webkit-box-orient: vertical;
446
+ -webkit-box-direction: normal;
447
+ -ms-flex-direction: column;
448
+ flex-direction: column;
449
+ -webkit-box-pack: center;
450
+ -ms-flex-pack: center;
451
+ justify-content: center;
441
452
  height: calc(var(--input-height) - (var(--control-border-width) * 2));
442
453
  margin: 0;
443
454
  margin-left: var(--input-space);
444
455
  padding: 0;
445
- color: var(--clear-button-color);
446
456
  background-color: transparent;
447
457
  border: none;
448
458
  cursor: pointer;
449
459
  }
450
460
 
461
+ .TextField-ClearButton {
462
+ color: var(--clear-button-color);
463
+ }
464
+
451
465
  .TextField-ClearButton:hover {
452
466
  --clear-button-color: var(--color-control-typo-clear-hover);
453
467
  }
454
468
 
469
+ .TextField-EyeButton {
470
+ color: var(--color-control-typo-placeholder);
471
+ }
472
+
473
+ .TextField-EyeButton:hover {
474
+ color: var(--color-control-typo-clear-hover);
475
+ }
476
+
455
477
  .TextField-ClearButtonIcon {
456
478
  position: relative;
457
479
  top: 1px;
@@ -1,8 +1,8 @@
1
1
  import './TextField.css';
2
2
  import React from 'react';
3
- import { TextFieldComponent, TextFieldProps } from './helpers';
3
+ import { TextFieldComponent, TextFieldProps } from './types';
4
4
  export declare const COMPONENT_NAME: "TextField";
5
5
  export declare const cnTextField: import("@bem-react/classname").ClassNameFormatter;
6
6
  export declare function TextFieldRender<TYPE extends string>(props: TextFieldProps<TYPE>, ref: React.Ref<HTMLDivElement>): JSX.Element;
7
7
  export declare const TextField: TextFieldComponent;
8
- export * from './helpers';
8
+ export * from './types';
@@ -5,41 +5,57 @@ var tslib_1 = require("tslib");
5
5
  require("./TextField.css");
6
6
  var react_1 = tslib_1.__importStar(require("react"));
7
7
  var react_textarea_autosize_1 = tslib_1.__importDefault(require("react-textarea-autosize"));
8
+ var useFlag_1 = require("../../hooks/useFlag/useFlag");
8
9
  var useForkRef_1 = require("../../hooks/useForkRef/useForkRef");
10
+ var useMutableRef_1 = require("../../hooks/useMutableRef/useMutableRef");
9
11
  var useSortSteps_1 = require("../../hooks/useSortSteps/useSortSteps");
10
12
  var IconClose_1 = require("../../icons/IconClose/IconClose");
13
+ var IconEye_1 = require("../../icons/IconEye/IconEye");
14
+ var IconEyeClose_1 = require("../../icons/IconEyeClose/IconEyeClose");
11
15
  var IconSelect_1 = require("../../icons/IconSelect/IconSelect");
12
16
  var IconSelectOpen_1 = require("../../icons/IconSelectOpen/IconSelectOpen");
13
17
  var bem_1 = require("../../utils/bem");
14
18
  var getByMap_1 = require("../../utils/getByMap");
19
+ var type_guards_1 = require("../../utils/type-guards");
15
20
  var usePropsHandler_1 = require("../EventInterceptor/usePropsHandler");
16
21
  var FieldCaption_1 = require("../FieldCaption/FieldCaption");
17
22
  var FieldLabel_1 = require("../FieldLabel/FieldLabel");
18
23
  var helpers_1 = require("./helpers");
24
+ var types_1 = require("./types");
19
25
  exports.COMPONENT_NAME = 'TextField';
20
26
  exports.cnTextField = bem_1.cn(exports.COMPONENT_NAME);
21
27
  function TextFieldRender(props, ref) {
22
28
  var textFieldRef = react_1["default"].useRef(null);
23
29
  var inputRef = react_1["default"].useRef(null);
24
- var _a = usePropsHandler_1.usePropsHandler(exports.COMPONENT_NAME, props, textFieldRef), className = _a.className, _b = _a.type, type = _b === void 0 ? 'text' : _b, value = _a.value, onChange = _a.onChange, id = _a.id, name = _a.name, rows = _a.rows, cols = _a.cols, minRows = _a.minRows, maxRows = _a.maxRows, inputRefProp = _a.inputRef, maxLength = _a.maxLength, disabled = _a.disabled, _c = _a.size, size = _c === void 0 ? helpers_1.textFieldPropSizeDefault : _c, _d = _a.view, view = _d === void 0 ? helpers_1.textFieldPropViewDefault : _d, _e = _a.form, form = _e === void 0 ? helpers_1.textFieldPropFormDefault : _e, state = _a.state, status = _a.status, _f = _a.width, width = _f === void 0 ? helpers_1.textFieldPropWidthDefault : _f, onBlur = _a.onBlur, onFocus = _a.onFocus, _g = _a.autoFocus, autoFocus = _g === void 0 ? false : _g, placeholder = _a.placeholder, leftSide = _a.leftSide, rightSide = _a.rightSide, autoComplete = _a.autoComplete, withClearButton = _a.withClearButton, max = _a.max, min = _a.min, readOnly = _a.readOnly, required = _a.required, _h = _a.step, step = _h === void 0 ? 1 : _h, tabIndex = _a.tabIndex, ariaLabel = _a.ariaLabel, label = _a.label, inputContainerRef = _a.inputContainerRef, _j = _a.labelPosition, labelPosition = _j === void 0 ? 'top' : _j, caption = _a.caption, iconSizeProp = _a.iconSize, focused = _a.focused, onClick = _a.onClick, otherProps = tslib_1.__rest(_a, ["className", "type", "value", "onChange", "id", "name", "rows", "cols", "minRows", "maxRows", "inputRef", "maxLength", "disabled", "size", "view", "form", "state", "status", "width", "onBlur", "onFocus", "autoFocus", "placeholder", "leftSide", "rightSide", "autoComplete", "withClearButton", "max", "min", "readOnly", "required", "step", "tabIndex", "ariaLabel", "label", "inputContainerRef", "labelPosition", "caption", "iconSize", "focused", "onClick"]);
25
- var _k = tslib_1.__read(react_1.useState(autoFocus), 2), focus = _k[0], setFocus = _k[1];
30
+ var _a = usePropsHandler_1.usePropsHandler(exports.COMPONENT_NAME, props, textFieldRef), className = _a.className, _b = _a.type, type = _b === void 0 ? 'text' : _b, value = _a.value, onChange = _a.onChange, id = _a.id, name = _a.name, rows = _a.rows, cols = _a.cols, minRows = _a.minRows, maxRows = _a.maxRows, inputRefProp = _a.inputRef, maxLength = _a.maxLength, disabled = _a.disabled, _c = _a.size, size = _c === void 0 ? types_1.textFieldPropSizeDefault : _c, _d = _a.view, view = _d === void 0 ? types_1.textFieldPropViewDefault : _d, _e = _a.form, form = _e === void 0 ? types_1.textFieldPropFormDefault : _e, state = _a.state, status = _a.status, _f = _a.width, width = _f === void 0 ? types_1.textFieldPropWidthDefault : _f, onBlur = _a.onBlur, onFocus = _a.onFocus, _g = _a.autoFocus, autoFocus = _g === void 0 ? false : _g, placeholder = _a.placeholder, leftSide = _a.leftSide, rightSide = _a.rightSide, autoComplete = _a.autoComplete, withClearButton = _a.withClearButton, max = _a.max, min = _a.min, readOnly = _a.readOnly, required = _a.required, _h = _a.step, step = _h === void 0 ? 1 : _h, tabIndex = _a.tabIndex, ariaLabel = _a.ariaLabel, label = _a.label, inputContainerRef = _a.inputContainerRef, _j = _a.labelPosition, labelPosition = _j === void 0 ? 'top' : _j, caption = _a.caption, iconSizeProp = _a.iconSize, focused = _a.focused, onClick = _a.onClick, otherProps = tslib_1.__rest(_a, ["className", "type", "value", "onChange", "id", "name", "rows", "cols", "minRows", "maxRows", "inputRef", "maxLength", "disabled", "size", "view", "form", "state", "status", "width", "onBlur", "onFocus", "autoFocus", "placeholder", "leftSide", "rightSide", "autoComplete", "withClearButton", "max", "min", "readOnly", "required", "step", "tabIndex", "ariaLabel", "label", "inputContainerRef", "labelPosition", "caption", "iconSize", "focused", "onClick"]);
31
+ var _k = tslib_1.__read(useFlag_1.useFlag(autoFocus), 2), focus = _k[0], setFocus = _k[1];
32
+ var _l = tslib_1.__read(useFlag_1.useFlag(false), 2), passwordVisible = _l[0], setPasswordVisuble = _l[1];
33
+ var valueRef = useMutableRef_1.useMutableRef(value);
34
+ var onClickRef = useMutableRef_1.useMutableRef(onClick);
35
+ var onChangeRef = useMutableRef_1.useMutableRef(onChange);
36
+ var handleEyeClick = react_1.useCallback(function (e) {
37
+ var _a;
38
+ e.stopPropagation();
39
+ setPasswordVisuble.toogle();
40
+ (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
41
+ }, []);
26
42
  var textarea = type === 'textarea';
27
43
  var LeftIcon = leftSide;
28
44
  var RightIcon = rightSide;
29
- var leftSideIsString = typeof leftSide === 'string';
30
- var rightSideIsString = typeof rightSide === 'string';
45
+ var leftSideIsString = type_guards_1.isString(leftSide);
46
+ var rightSideIsString = type_guards_1.isString(rightSide);
31
47
  var iconSize = getByMap_1.getByMap(helpers_1.sizeMap, size, iconSizeProp);
32
48
  var sortedSteps = useSortSteps_1.useSortSteps({ step: step, min: Number(min), max: Number(max) });
33
- var handleChange = function (e) {
34
- var value = e.target.value;
35
- !disabled && (onChange === null || onChange === void 0 ? void 0 : onChange({ e: e, id: id, name: name, value: value || null }));
36
- };
49
+ var handleChange = react_1.useCallback(function (e) {
50
+ var _a;
51
+ !disabled && ((_a = onChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onChangeRef, { e: e, id: id, name: name, value: e.target.value || null }));
52
+ }, [id, name]);
37
53
  var handleBlur = function (e) {
38
- setFocus(false);
54
+ setFocus.off();
39
55
  onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
40
56
  };
41
57
  var handleFocus = function (e) {
42
- setFocus(true);
58
+ setFocus.on();
43
59
  onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);
44
60
  };
45
61
  var commonProps = {
@@ -54,27 +70,19 @@ function TextFieldRender(props, ref) {
54
70
  placeholder: placeholder,
55
71
  autoComplete: autoComplete,
56
72
  readOnly: readOnly,
57
- required: required,
58
73
  tabIndex: tabIndex,
59
74
  name: name,
60
75
  'id': id ? id.toString() : '',
61
76
  'aria-label': ariaLabel
62
77
  };
63
- react_1.useEffect(function () {
64
- if (autoFocus) {
65
- setTimeout(function () {
66
- var _a;
67
- (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
68
- });
69
- }
70
- }, []);
78
+ var Eye = passwordVisible ? IconEyeClose_1.IconEyeClose : IconEye_1.IconEye;
71
79
  var onKeyDown = function (e) {
72
80
  var flag = helpers_1.getIncrementFlag(e);
73
81
  if (type === 'number' && typeof flag === 'boolean' && !disabled) {
74
82
  e.preventDefault();
75
83
  onChange === null || onChange === void 0 ? void 0 : onChange({
76
84
  e: e,
77
- value: getValueByStep(flag).toString()
85
+ value: helpers_1.getValueByStep(sortedSteps, value, flag, min, max)
78
86
  });
79
87
  }
80
88
  };
@@ -83,48 +91,44 @@ function TextFieldRender(props, ref) {
83
91
  cols: cols,
84
92
  minRows: minRows || rows,
85
93
  maxRows: maxRows || rows,
86
- inputRef: useForkRef_1.useForkRef([inputRef, inputRefProp])
94
+ ref: useForkRef_1.useForkRef([inputRef, inputRefProp])
87
95
  };
88
96
  var inputProps = {
89
- type: type,
97
+ type: helpers_1.getTypeForRender(type, passwordVisible),
90
98
  max: max,
91
99
  min: min,
92
100
  step: !Array.isArray(sortedSteps) ? sortedSteps : 0,
93
101
  onKeyDown: onKeyDown,
94
102
  ref: useForkRef_1.useForkRef([inputRef, inputRefProp])
95
103
  };
96
- var handleClear = function (e) {
97
- onChange === null || onChange === void 0 ? void 0 : onChange({
104
+ var handleClear = react_1.useCallback(function (e) {
105
+ var _a;
106
+ (_a = onChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onChangeRef, {
98
107
  e: e,
99
- value: ''
108
+ value: null
100
109
  });
101
- };
102
- var getValueByStep = function (isIncrement) {
103
- var _a;
104
- return Array.isArray(sortedSteps)
105
- ? (_a = helpers_1.getValueByStepArray({
106
- min: min,
107
- max: max,
108
- value: value,
109
- isIncrement: isIncrement,
110
- steps: sortedSteps
111
- })) !== null && _a !== void 0 ? _a : 0 : helpers_1.getValueByStepNumber({ value: value, step: sortedSteps, isIncrement: isIncrement, min: min, max: max });
112
- };
110
+ }, []);
113
111
  var changeNumberValue = function (e, isIncrement) {
114
112
  if (isIncrement === void 0) { isIncrement = true; }
115
113
  onChange === null || onChange === void 0 ? void 0 : onChange({
116
114
  e: e,
117
- value: getValueByStep(isIncrement).toString()
115
+ value: helpers_1.getValueByStep(sortedSteps, value, isIncrement, min, max)
118
116
  });
119
117
  };
120
118
  var rootProps = {
121
- // для того чтобы любые клики во внутренним элементам фокусили инпут
122
- onClick: function (e) {
123
- var _a;
119
+ onClick: react_1.useCallback(function (e) {
120
+ var _a, _b;
124
121
  (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
125
- onClick === null || onClick === void 0 ? void 0 : onClick(e);
126
- }
122
+ (_b = onClickRef.current) === null || _b === void 0 ? void 0 : _b.call(onClickRef, e);
123
+ }, [])
127
124
  };
125
+ // при смене passwordVible, перемещаем курсор в конец строки
126
+ react_1.useEffect(function () {
127
+ var _a;
128
+ if (type === 'password' && inputRef.current) {
129
+ inputRef.current.selectionStart = ((_a = valueRef.current) === null || _a === void 0 ? void 0 : _a.length) || 0;
130
+ }
131
+ }, [passwordVisible]);
128
132
  return (react_1["default"].createElement("div", tslib_1.__assign({ className: exports.cnTextField({ labelPosition: labelPosition, size: size, view: view, width: width }, [className]), ref: useForkRef_1.useForkRef([ref, textFieldRef]) }, rootProps, otherProps),
129
133
  label && (react_1["default"].createElement(FieldLabel_1.FieldLabel, { required: required, className: exports.cnTextField('Label', { labelPosition: labelPosition }), size: size }, label)),
130
134
  react_1["default"].createElement("div", { className: exports.cnTextField('Body') },
@@ -149,7 +153,9 @@ function TextFieldRender(props, ref) {
149
153
  react_1["default"].createElement(IconSelect_1.IconSelect, { size: "xs" })))),
150
154
  value && withClearButton && type !== 'number' && (react_1["default"].createElement("button", { type: "button", disabled: disabled, onClick: handleClear, className: exports.cnTextField('ClearButton') },
151
155
  react_1["default"].createElement(IconClose_1.IconClose, { size: "xs", className: exports.cnTextField('ClearButtonIcon') }))),
152
- RightIcon && type !== 'number' && (react_1["default"].createElement("div", { className: exports.cnTextField('Side', {
156
+ type === 'password' && value && (react_1["default"].createElement("button", { className: exports.cnTextField('ClearButton'), type: "button", onClick: handleEyeClick },
157
+ react_1["default"].createElement(Eye, { className: exports.cnTextField('Icon'), size: iconSize }))),
158
+ RightIcon && type !== 'number' && type !== 'password' && (react_1["default"].createElement("div", { className: exports.cnTextField('Side', {
153
159
  position: 'right',
154
160
  type: rightSideIsString ? 'string' : 'icon'
155
161
  }), title: typeof rightSide === 'string' ? rightSide : undefined }, rightSideIsString ? (rightSide) : (react_1["default"].createElement(RightIcon, { className: exports.cnTextField('Icon'), size: iconSize }))))),
@@ -157,4 +163,4 @@ function TextFieldRender(props, ref) {
157
163
  }
158
164
  exports.TextFieldRender = TextFieldRender;
159
165
  exports.TextField = react_1.forwardRef(TextFieldRender);
160
- tslib_1.__exportStar(require("./helpers"), exports);
166
+ tslib_1.__exportStar(require("./types"), exports);
@@ -1,103 +1,9 @@
1
1
  import React from 'react';
2
- import { IconComponent, IconPropSize } from '../../icons/Icon/Icon';
3
- import { AutoCompete } from '../../utils/types/AutoComplete';
4
- import { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';
5
- export declare type TextFieldPropValue = string | null;
6
- export declare type TextFieldPropName = string;
7
- export declare type TextFieldPropId = string | number;
8
- export declare const textFieldPropSize: readonly ["m", "xs", "s", "l"];
9
- export declare type TextFieldPropSize = typeof textFieldPropSize[number];
10
- export declare const textFieldPropSizeDefault: TextFieldPropSize;
11
- export declare type TextFieldPropOnChange = (args: TextFieldOnChangeArguments) => void;
12
- export declare type TextFieldOnChangeArguments = {
13
- e: React.ChangeEvent | React.MouseEvent | React.KeyboardEvent;
14
- id?: TextFieldPropId;
15
- name?: TextFieldPropName;
16
- value: TextFieldPropValue;
17
- };
18
- export declare const textFieldPropView: readonly ["default", "clear"];
19
- export declare type TextFieldPropView = typeof textFieldPropView[number];
20
- export declare const textFieldPropViewDefault: TextFieldPropView;
21
- export declare const textFieldPropForm: readonly ["default", "defaultClear", "defaultBrick", "brick", "brickDefault", "brickClear", "brickRound", "round", "roundClear", "roundBrick", "clearRound", "clearDefault", "clearBrick", "clearClear"];
22
- export declare type TextFieldPropForm = typeof textFieldPropForm[number];
23
- export declare const textFieldPropFormDefault: TextFieldPropForm;
24
- export declare const textFieldPropStatus: readonly ["alert", "success", "warning"];
25
- export declare type TextFieldPropStatus = typeof textFieldPropStatus[number];
26
- export declare const textFieldPropWidth: readonly ["default", "full"];
27
- export declare type TextFieldPropWidth = typeof textFieldPropWidth[number];
28
- export declare const textFieldPropWidthDefault: TextFieldPropWidth;
29
- export declare type TextFieldPropsTextareaType<TYPE> = TYPE extends 'textarea' ? {
30
- minRows?: never;
31
- maxRows?: never;
32
- rows?: number;
33
- } | {
34
- rows?: never;
35
- minRows?: number;
36
- maxRows?: number;
37
- } : {
38
- rows?: never;
39
- minRows?: never;
40
- maxRows?: never;
41
- };
42
- export declare type TextFieldPropRightSide<TYPE> = TYPE extends 'number' ? {
43
- rightSide?: never;
44
- } : {
45
- rightSide?: string | IconComponent;
46
- };
47
- export declare type TextFieldProps<TYPE extends string> = PropsWithHTMLAttributes<{
48
- className?: string;
49
- value?: TextFieldPropValue;
50
- cols?: number;
51
- onChange?: TextFieldPropOnChange;
52
- id?: TextFieldPropId;
53
- name?: TextFieldPropName;
54
- type?: TYPE;
55
- disabled?: boolean;
56
- maxLength?: number;
57
- size?: TextFieldPropSize;
58
- view?: TextFieldPropView;
59
- form?: TextFieldPropForm;
60
- state?: TextFieldPropStatus;
61
- status?: TextFieldPropStatus;
62
- width?: TextFieldPropWidth;
63
- onFocus?: React.FocusEventHandler<HTMLElement>;
64
- onBlur?: React.FocusEventHandler<HTMLElement>;
65
- autoFocus?: boolean;
66
- placeholder?: string;
67
- leftSide?: string | IconComponent;
68
- rightSide?: string | IconComponent;
69
- withClearButton?: boolean;
70
- autoComplete?: AutoCompete;
71
- max?: number | string;
72
- min?: number | string;
73
- readOnly?: boolean;
74
- required?: boolean;
75
- step?: number | string | number[];
76
- tabIndex?: number;
77
- inputContainerRef?: React.Ref<HTMLDivElement>;
78
- inputRef?: React.Ref<HTMLTextAreaElement | HTMLInputElement>;
79
- ariaLabel?: string;
80
- iconSize?: IconPropSize;
81
- children?: never;
82
- label?: string;
83
- caption?: string;
84
- labelPosition?: 'top' | 'left';
85
- focused?: boolean;
86
- }, HTMLDivElement> & TextFieldPropsTextareaType<TYPE> & TextFieldPropRightSide<TYPE>;
87
- export declare type TextFieldComponent = <TYPE extends string>(props: TextFieldProps<TYPE> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
2
+ import { IconPropSize } from '../../icons/Icon/Icon';
3
+ import { TextFieldPropSize } from './types';
88
4
  export declare const sizeMap: Record<TextFieldPropSize, IconPropSize>;
89
- export declare const getValueByStepArray: (params: {
90
- value?: string | null | undefined;
91
- steps: number[];
92
- min?: string | number | undefined;
93
- max?: string | number | undefined;
94
- isIncrement?: boolean | undefined;
95
- }) => number | null;
96
- export declare const getValueByStepNumber: (params: {
97
- value?: string | null | undefined;
98
- step: number | string;
99
- isIncrement?: boolean | undefined;
100
- min?: string | number | undefined;
101
- max?: string | number | undefined;
102
- }) => number;
5
+ export declare const getValueByStepArray: (steps: number[], value: string | null | undefined, min: number | string | undefined, max: number | string | undefined, isIncrement: boolean) => number;
6
+ export declare const getValueByStepNumber: (step: number | string, value: string | null | undefined, min: number | string | undefined, max: number | string | undefined, isIncrement: boolean) => number;
103
7
  export declare const getIncrementFlag: (event: React.KeyboardEvent) => boolean | null;
8
+ export declare const getTypeForRender: (type: string, passwordVible: boolean) => string;
9
+ export declare const getValueByStep: (steps: number | number[], value: string | null | undefined, isIncrement: boolean, min?: string | number | undefined, max?: string | number | undefined) => string;
@@ -1,38 +1,13 @@
1
1
  "use strict";
2
2
  exports.__esModule = true;
3
- exports.getIncrementFlag = exports.getValueByStepNumber = exports.getValueByStepArray = exports.sizeMap = exports.textFieldPropWidthDefault = exports.textFieldPropWidth = exports.textFieldPropStatus = exports.textFieldPropFormDefault = exports.textFieldPropForm = exports.textFieldPropViewDefault = exports.textFieldPropView = exports.textFieldPropSizeDefault = exports.textFieldPropSize = void 0;
4
- exports.textFieldPropSize = ['m', 'xs', 's', 'l'];
5
- exports.textFieldPropSizeDefault = exports.textFieldPropSize[0];
6
- exports.textFieldPropView = ['default', 'clear'];
7
- exports.textFieldPropViewDefault = exports.textFieldPropView[0];
8
- exports.textFieldPropForm = [
9
- 'default',
10
- 'defaultClear',
11
- 'defaultBrick',
12
- 'brick',
13
- 'brickDefault',
14
- 'brickClear',
15
- 'brickRound',
16
- 'round',
17
- 'roundClear',
18
- 'roundBrick',
19
- 'clearRound',
20
- 'clearDefault',
21
- 'clearBrick',
22
- 'clearClear',
23
- ];
24
- exports.textFieldPropFormDefault = exports.textFieldPropForm[0];
25
- exports.textFieldPropStatus = ['alert', 'success', 'warning'];
26
- exports.textFieldPropWidth = ['default', 'full'];
27
- exports.textFieldPropWidthDefault = exports.textFieldPropWidth[0];
3
+ exports.getValueByStep = exports.getTypeForRender = exports.getIncrementFlag = exports.getValueByStepNumber = exports.getValueByStepArray = exports.sizeMap = void 0;
28
4
  exports.sizeMap = {
29
5
  xs: 'xs',
30
6
  s: 's',
31
7
  m: 's',
32
8
  l: 'm'
33
9
  };
34
- exports.getValueByStepArray = function (params) {
35
- var value = params.value, steps = params.steps, min = params.min, _a = params.isIncrement, isIncrement = _a === void 0 ? false : _a;
10
+ exports.getValueByStepArray = function (steps, value, min, max, isIncrement) {
36
11
  var currentValue = Number(value !== null && value !== void 0 ? value : min);
37
12
  var minValue = Number(min);
38
13
  if (typeof value !== 'string') {
@@ -53,11 +28,10 @@ exports.getValueByStepArray = function (params) {
53
28
  return steps[i + (isIncrement ? 1 : -1)];
54
29
  }
55
30
  }
56
- return null;
31
+ return 0;
57
32
  };
58
- exports.getValueByStepNumber = function (params) {
33
+ exports.getValueByStepNumber = function (step, value, min, max, isIncrement) {
59
34
  var _a;
60
- var value = params.value, step = params.step, isIncrement = params.isIncrement, max = params.max, min = params.min;
61
35
  var minValue = Number(min);
62
36
  var maxValue = Number(max);
63
37
  var currentValue = (typeof value === 'string' ? Number(value) : 0) + Number(step) * (isIncrement ? 1 : -1);
@@ -82,3 +56,17 @@ exports.getIncrementFlag = function (event) {
82
56
  }
83
57
  return (event === null || event === void 0 ? void 0 : event.key) === 'ArrowUp';
84
58
  };
59
+ exports.getTypeForRender = function (type, passwordVible) {
60
+ if (type !== 'password') {
61
+ return type;
62
+ }
63
+ if (passwordVible) {
64
+ return 'text';
65
+ }
66
+ return 'password';
67
+ };
68
+ exports.getValueByStep = function (steps, value, isIncrement, min, max) {
69
+ return (Array.isArray(steps)
70
+ ? exports.getValueByStepArray(steps, value, min, max, isIncrement)
71
+ : exports.getValueByStepNumber(steps, value, min, max, isIncrement)).toString();
72
+ };
@@ -0,0 +1,87 @@
1
+ import React from 'react';
2
+ import { IconComponent, IconPropSize } from '../../icons/Icon/Icon';
3
+ import { AutoCompete } from '../../utils/types/AutoComplete';
4
+ import { PropsWithHTMLAttributes } from '../../utils/types/PropsWithHTMLAttributes';
5
+ export declare type TextFieldPropValue = string | null;
6
+ export declare type TextFieldPropName = string;
7
+ export declare type TextFieldPropId = string | number;
8
+ export declare const textFieldPropSize: readonly ["m", "xs", "s", "l"];
9
+ export declare type TextFieldPropSize = typeof textFieldPropSize[number];
10
+ export declare const textFieldPropSizeDefault: TextFieldPropSize;
11
+ export declare type TextFieldPropOnChange = (args: TextFieldOnChangeArguments) => void;
12
+ export declare type TextFieldOnChangeArguments = {
13
+ e: React.ChangeEvent | React.MouseEvent | React.KeyboardEvent;
14
+ id?: TextFieldPropId;
15
+ name?: TextFieldPropName;
16
+ value: TextFieldPropValue;
17
+ };
18
+ export declare const textFieldPropView: readonly ["default", "clear"];
19
+ export declare type TextFieldPropView = typeof textFieldPropView[number];
20
+ export declare const textFieldPropViewDefault: TextFieldPropView;
21
+ export declare const textFieldPropForm: readonly ["default", "defaultClear", "defaultBrick", "brick", "brickDefault", "brickClear", "brickRound", "round", "roundClear", "roundBrick", "clearRound", "clearDefault", "clearBrick", "clearClear"];
22
+ export declare type TextFieldPropForm = typeof textFieldPropForm[number];
23
+ export declare const textFieldPropFormDefault: TextFieldPropForm;
24
+ export declare const textFieldPropStatus: readonly ["alert", "success", "warning"];
25
+ export declare type TextFieldPropStatus = typeof textFieldPropStatus[number];
26
+ export declare const textFieldPropWidth: readonly ["default", "full"];
27
+ export declare type TextFieldPropWidth = typeof textFieldPropWidth[number];
28
+ export declare const textFieldPropWidthDefault: TextFieldPropWidth;
29
+ export declare type TextFieldPropsTextareaType<TYPE> = TYPE extends 'textarea' ? {
30
+ minRows?: never;
31
+ maxRows?: never;
32
+ rows?: number;
33
+ } | {
34
+ rows?: never;
35
+ minRows?: number;
36
+ maxRows?: number;
37
+ } : {
38
+ rows?: never;
39
+ minRows?: never;
40
+ maxRows?: never;
41
+ };
42
+ export declare type TextFieldPropRightSide<TYPE extends string> = TYPE extends 'number' | 'password' ? {
43
+ rightSide?: never;
44
+ } : {
45
+ rightSide?: string | IconComponent;
46
+ };
47
+ export declare type TextFieldProps<TYPE extends string> = PropsWithHTMLAttributes<{
48
+ className?: string;
49
+ value?: TextFieldPropValue;
50
+ cols?: number;
51
+ onChange?: TextFieldPropOnChange;
52
+ id?: TextFieldPropId;
53
+ name?: TextFieldPropName;
54
+ type?: TYPE;
55
+ disabled?: boolean;
56
+ maxLength?: number;
57
+ size?: TextFieldPropSize;
58
+ view?: TextFieldPropView;
59
+ form?: TextFieldPropForm;
60
+ state?: TextFieldPropStatus;
61
+ status?: TextFieldPropStatus;
62
+ width?: TextFieldPropWidth;
63
+ onFocus?: React.FocusEventHandler<HTMLElement>;
64
+ onBlur?: React.FocusEventHandler<HTMLElement>;
65
+ autoFocus?: boolean;
66
+ placeholder?: string;
67
+ leftSide?: string | IconComponent;
68
+ rightSide?: string | IconComponent;
69
+ withClearButton?: boolean;
70
+ autoComplete?: AutoCompete;
71
+ max?: number | string;
72
+ min?: number | string;
73
+ readOnly?: boolean;
74
+ required?: boolean;
75
+ step?: number | string | number[];
76
+ tabIndex?: number;
77
+ inputContainerRef?: React.Ref<HTMLDivElement>;
78
+ inputRef?: React.Ref<HTMLTextAreaElement | HTMLInputElement>;
79
+ ariaLabel?: string;
80
+ iconSize?: IconPropSize;
81
+ children?: never;
82
+ label?: string;
83
+ caption?: string;
84
+ labelPosition?: 'top' | 'left';
85
+ focused?: boolean;
86
+ }, HTMLDivElement> & TextFieldPropsTextareaType<TYPE> & TextFieldPropRightSide<TYPE>;
87
+ export declare type TextFieldComponent = <TYPE extends string>(props: TextFieldProps<TYPE> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.textFieldPropWidthDefault = exports.textFieldPropWidth = exports.textFieldPropStatus = exports.textFieldPropFormDefault = exports.textFieldPropForm = exports.textFieldPropViewDefault = exports.textFieldPropView = exports.textFieldPropSizeDefault = exports.textFieldPropSize = void 0;
4
+ exports.textFieldPropSize = ['m', 'xs', 's', 'l'];
5
+ exports.textFieldPropSizeDefault = exports.textFieldPropSize[0];
6
+ exports.textFieldPropView = ['default', 'clear'];
7
+ exports.textFieldPropViewDefault = exports.textFieldPropView[0];
8
+ exports.textFieldPropForm = [
9
+ 'default',
10
+ 'defaultClear',
11
+ 'defaultBrick',
12
+ 'brick',
13
+ 'brickDefault',
14
+ 'brickClear',
15
+ 'brickRound',
16
+ 'round',
17
+ 'roundClear',
18
+ 'roundBrick',
19
+ 'clearRound',
20
+ 'clearDefault',
21
+ 'clearBrick',
22
+ 'clearClear',
23
+ ];
24
+ exports.textFieldPropFormDefault = exports.textFieldPropForm[0];
25
+ exports.textFieldPropStatus = ['alert', 'success', 'warning'];
26
+ exports.textFieldPropWidth = ['default', 'full'];
27
+ exports.textFieldPropWidthDefault = exports.textFieldPropWidth[0];