@consta/uikit 4.24.0 → 4.25.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 (371) hide show
  1. package/ComboboxCanary/index.d.ts +1 -0
  2. package/ComboboxCanary/index.js +1 -0
  3. package/SelectCanary/index.d.ts +1 -0
  4. package/SelectCanary/index.js +1 -0
  5. package/UserSelectCanary/index.d.ts +1 -0
  6. package/UserSelectCanary/index.js +1 -0
  7. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js +1 -1
  8. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteCanary.js.map +1 -1
  9. package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +8 -2
  10. package/__internal__/src/components/AutoCompleteCanary/types.d.ts +13 -2
  11. package/__internal__/src/components/AutoCompleteCanary/types.js.map +1 -1
  12. package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.d.ts +6 -0
  13. package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js +1 -1
  14. package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.js.map +1 -1
  15. package/__internal__/src/components/Button/Button.css +1 -1
  16. package/__internal__/src/components/CollapseGroup/helpers.d.ts +3 -3
  17. package/__internal__/src/components/Combobox/helpers.d.ts +2 -2
  18. package/__internal__/src/components/ComboboxCanary/ComboboxCanary.d.ts +4 -0
  19. package/__internal__/src/components/ComboboxCanary/ComboboxCanary.js +2 -0
  20. package/__internal__/src/components/ComboboxCanary/ComboboxCanary.js.map +1 -0
  21. package/__internal__/src/components/ComboboxCanary/helpers.d.ts +186 -0
  22. package/__internal__/src/components/ComboboxCanary/helpers.js +2 -0
  23. package/__internal__/src/components/ComboboxCanary/helpers.js.map +1 -0
  24. package/__internal__/src/components/ComboboxCanary/index.d.ts +2 -0
  25. package/__internal__/src/components/ComboboxCanary/index.js +2 -0
  26. package/__internal__/src/components/ComboboxCanary/index.js.map +1 -0
  27. package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.d.ts +1 -1
  28. package/__internal__/src/components/ContextMenu/helpers.d.ts +2 -2
  29. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +3 -3
  30. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +4 -4
  31. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +3 -3
  32. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +4 -4
  33. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +3 -3
  34. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.d.ts +4 -4
  35. package/__internal__/src/components/DatePicker/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +3 -3
  36. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +3 -3
  37. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.d.ts +4 -4
  38. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.js.map +1 -1
  39. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.js.map +1 -1
  40. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.js.map +1 -1
  41. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.js.map +1 -1
  42. package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +4 -4
  43. package/__internal__/src/components/Select/helpers.d.ts +1 -1
  44. package/__internal__/src/components/SelectCanary/SelectCanary.d.ts +4 -0
  45. package/__internal__/src/components/SelectCanary/SelectCanary.js +2 -0
  46. package/__internal__/src/components/SelectCanary/SelectCanary.js.map +1 -0
  47. package/__internal__/src/components/SelectCanary/helpers.d.ts +159 -0
  48. package/__internal__/src/components/SelectCanary/helpers.js +2 -0
  49. package/__internal__/src/components/SelectCanary/helpers.js.map +1 -0
  50. package/__internal__/src/components/SelectCanary/index.d.ts +1 -0
  51. package/__internal__/src/components/SelectCanary/index.js +2 -0
  52. package/__internal__/src/components/SelectCanary/index.js.map +1 -0
  53. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js +1 -1
  54. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.js.map +1 -1
  55. package/__internal__/src/components/SelectComponentsCanary/Select.css +1 -0
  56. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.d.ts +20 -0
  57. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.js +2 -0
  58. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/SelectContainer.js.map +1 -0
  59. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.d.ts +1 -0
  60. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.js +2 -0
  61. package/__internal__/src/components/SelectComponentsCanary/SelectContainer/index.js.map +1 -0
  62. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.css +1 -0
  63. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.d.ts +15 -0
  64. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.js +2 -0
  65. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/SelectCreateButton.js.map +1 -0
  66. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.d.ts +1 -0
  67. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.js +2 -0
  68. package/__internal__/src/components/SelectComponentsCanary/SelectCreateButton/index.js.map +1 -0
  69. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.css +1 -0
  70. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.d.ts +41 -0
  71. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.js +2 -0
  72. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/SelectDropdown.js.map +1 -0
  73. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.d.ts +1 -0
  74. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.js +2 -0
  75. package/__internal__/src/components/SelectComponentsCanary/SelectDropdown/index.js.map +1 -0
  76. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.d.ts +10 -0
  77. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.js +2 -0
  78. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/SelectGroupLabel.js.map +1 -0
  79. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.d.ts +1 -0
  80. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.js +2 -0
  81. package/__internal__/src/components/SelectComponentsCanary/SelectGroupLabel/index.js.map +1 -0
  82. package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.css +1 -0
  83. package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.d.ts +17 -0
  84. package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.js +2 -0
  85. package/__internal__/src/components/SelectComponentsCanary/SelectItem/SelectItem.js.map +1 -0
  86. package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.d.ts +1 -0
  87. package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.js +2 -0
  88. package/__internal__/src/components/SelectComponentsCanary/SelectItem/index.js.map +1 -0
  89. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectItemAll.css +1 -0
  90. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.d.ts +14 -0
  91. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.js +2 -0
  92. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/SelectSelectAll.js.map +1 -0
  93. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.d.ts +1 -0
  94. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.js +2 -0
  95. package/__internal__/src/components/SelectComponentsCanary/SelectItemAll/index.js.map +1 -0
  96. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.css +1 -0
  97. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.d.ts +3 -0
  98. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.js +2 -0
  99. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/SelectLoader.js.map +1 -0
  100. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.d.ts +1 -0
  101. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.js +2 -0
  102. package/__internal__/src/components/SelectComponentsCanary/SelectLoader/index.js.map +1 -0
  103. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.css +1 -0
  104. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.d.ts +12 -0
  105. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.js +2 -0
  106. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/SelectValueTag.js.map +1 -0
  107. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.d.ts +1 -0
  108. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.js +2 -0
  109. package/__internal__/src/components/SelectComponentsCanary/SelectValueTag/index.js.map +1 -0
  110. package/__internal__/src/components/SelectComponentsCanary/cnSelect.d.ts +3 -0
  111. package/__internal__/src/components/SelectComponentsCanary/cnSelect.js +2 -0
  112. package/__internal__/src/components/SelectComponentsCanary/cnSelect.js.map +1 -0
  113. package/__internal__/src/components/SelectComponentsCanary/helpers.d.ts +4 -0
  114. package/__internal__/src/components/SelectComponentsCanary/helpers.js +2 -0
  115. package/__internal__/src/components/SelectComponentsCanary/helpers.js.map +1 -0
  116. package/__internal__/src/components/SelectComponentsCanary/types.d.ts +34 -0
  117. package/__internal__/src/components/SelectComponentsCanary/types.js +2 -0
  118. package/__internal__/src/components/SelectComponentsCanary/types.js.map +1 -0
  119. package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.d.ts +14 -0
  120. package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.js +2 -0
  121. package/__internal__/src/components/SelectComponentsCanary/useSelect/helpers.js.map +1 -0
  122. package/__internal__/src/components/SelectComponentsCanary/useSelect/index.d.ts +1 -0
  123. package/__internal__/src/components/SelectComponentsCanary/useSelect/index.js +2 -0
  124. package/__internal__/src/components/SelectComponentsCanary/useSelect/index.js.map +1 -0
  125. package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.d.ts +84 -0
  126. package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.js +2 -0
  127. package/__internal__/src/components/SelectComponentsCanary/useSelect/useSelect.js.map +1 -0
  128. package/__internal__/src/components/Slider/helper.d.ts +1 -1
  129. package/__internal__/src/components/SnackBar/helper.d.ts +1 -1
  130. package/__internal__/src/components/SpoilerCanary/SpoilerButton/SpoilerButton.js +1 -1
  131. package/__internal__/src/components/SpoilerCanary/SpoilerButton/SpoilerButton.js.map +1 -1
  132. package/__internal__/src/components/TagBase/TagBase.d.ts +1 -1
  133. package/__internal__/src/components/TextField/TextField.css +1 -1
  134. package/__internal__/src/components/TextField/TextField.js +1 -1
  135. package/__internal__/src/components/TextField/TextField.js.map +1 -1
  136. package/__internal__/src/components/UserSelect/helpers.d.ts +2 -2
  137. package/__internal__/src/components/UserSelectCanary/UserSelectCanary.d.ts +5 -0
  138. package/__internal__/src/components/UserSelectCanary/UserSelectCanary.js +2 -0
  139. package/__internal__/src/components/UserSelectCanary/UserSelectCanary.js.map +1 -0
  140. package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.css +1 -0
  141. package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.d.ts +14 -0
  142. package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.js +2 -0
  143. package/__internal__/src/components/UserSelectCanary/UserSelectItem/UserSelectItem.js.map +1 -0
  144. package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.css +1 -0
  145. package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.d.ts +15 -0
  146. package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.js +2 -0
  147. package/__internal__/src/components/UserSelectCanary/UserSelectValue/UserSelectValue.js.map +1 -0
  148. package/__internal__/src/components/UserSelectCanary/helpers.d.ts +191 -0
  149. package/__internal__/src/components/UserSelectCanary/helpers.js +2 -0
  150. package/__internal__/src/components/UserSelectCanary/helpers.js.map +1 -0
  151. package/__internal__/src/components/UserSelectCanary/index.d.ts +1 -0
  152. package/__internal__/src/components/UserSelectCanary/index.js +2 -0
  153. package/__internal__/src/components/UserSelectCanary/index.js.map +1 -0
  154. package/__internal__/src/hooks/useFlag/useFlag.d.ts +1 -0
  155. package/__internal__/src/hooks/useFlag/useFlag.js +1 -1
  156. package/__internal__/src/hooks/useFlag/useFlag.js.map +1 -1
  157. package/__internal__/src/hooks/useForkRef/useForkRef.d.ts +2 -1
  158. package/__internal__/src/hooks/useForkRef/useForkRef.js +1 -1
  159. package/__internal__/src/hooks/useForkRef/useForkRef.js.map +1 -1
  160. package/__internal__/src/icons/IconAdd/IconAdd.d.ts +1 -2
  161. package/__internal__/src/icons/IconAddToComparison/IconAddToComparison.d.ts +1 -2
  162. package/__internal__/src/icons/IconAlert/IconAlert.d.ts +1 -2
  163. package/__internal__/src/icons/IconAlignBlocksLeft/IconAlignBlocksLeft.d.ts +1 -2
  164. package/__internal__/src/icons/IconAlignBlocksRight/IconAlignBlocksRight.d.ts +1 -2
  165. package/__internal__/src/icons/IconAlignCenter/IconAlignCenter.d.ts +1 -2
  166. package/__internal__/src/icons/IconAlignJustify/IconAlignJustify.d.ts +1 -2
  167. package/__internal__/src/icons/IconAlignLeft/IconAlignLeft.d.ts +1 -2
  168. package/__internal__/src/icons/IconAlignRight/IconAlignRight.d.ts +1 -2
  169. package/__internal__/src/icons/IconAllDone/IconAllDone.d.ts +1 -2
  170. package/__internal__/src/icons/IconArrowDown/IconArrowDown.d.ts +1 -2
  171. package/__internal__/src/icons/IconArrowLeft/IconArrowLeft.d.ts +1 -2
  172. package/__internal__/src/icons/IconArrowRight/IconArrowRight.d.ts +1 -2
  173. package/__internal__/src/icons/IconArrowUp/IconArrowUp.d.ts +1 -2
  174. package/__internal__/src/icons/IconArtBrush/IconArtBrush.d.ts +1 -2
  175. package/__internal__/src/icons/IconAttach/IconAttach.d.ts +1 -2
  176. package/__internal__/src/icons/IconAxesRotate/IconAxesRotate.d.ts +1 -2
  177. package/__internal__/src/icons/IconBackward/IconBackward.d.ts +1 -2
  178. package/__internal__/src/icons/IconBag/IconBag.d.ts +1 -2
  179. package/__internal__/src/icons/IconBarrier/IconBarrier.d.ts +1 -2
  180. package/__internal__/src/icons/IconBento/IconBento.d.ts +1 -2
  181. package/__internal__/src/icons/IconBit/IconBit.d.ts +1 -2
  182. package/__internal__/src/icons/IconBold/IconBold.d.ts +1 -2
  183. package/__internal__/src/icons/IconBook/IconBook.d.ts +1 -2
  184. package/__internal__/src/icons/IconBookmarkFilled/IconBookmarkFilled.d.ts +1 -2
  185. package/__internal__/src/icons/IconBookmarkStroked/IconBookmarkStroked.d.ts +1 -2
  186. package/__internal__/src/icons/IconCalculator/IconCalculator.d.ts +1 -2
  187. package/__internal__/src/icons/IconCalendar/IconCalendar.d.ts +1 -2
  188. package/__internal__/src/icons/IconCamera/IconCamera.d.ts +1 -2
  189. package/__internal__/src/icons/IconCancel/IconCancel.d.ts +1 -2
  190. package/__internal__/src/icons/IconCards/IconCards.d.ts +1 -2
  191. package/__internal__/src/icons/IconChatFilled/IconChatFilled.d.ts +1 -2
  192. package/__internal__/src/icons/IconChatStroked/IconChatStroked.d.ts +1 -2
  193. package/__internal__/src/icons/IconCheck/IconCheck.d.ts +1 -2
  194. package/__internal__/src/icons/IconClose/IconClose.d.ts +1 -2
  195. package/__internal__/src/icons/IconCollapse/IconCollapse.d.ts +1 -2
  196. package/__internal__/src/icons/IconColorFill/IconColorFill.d.ts +1 -2
  197. package/__internal__/src/icons/IconColorText/IconColorText.d.ts +1 -2
  198. package/__internal__/src/icons/IconColumns/IconColumns.d.ts +1 -2
  199. package/__internal__/src/icons/IconCommentFilled/IconCommentFilled.d.ts +1 -2
  200. package/__internal__/src/icons/IconCommentStroked/IconCommentStroked.d.ts +1 -2
  201. package/__internal__/src/icons/IconConnection/IconConnection.d.ts +1 -2
  202. package/__internal__/src/icons/IconCopy/IconCopy.d.ts +1 -2
  203. package/__internal__/src/icons/IconCrown/IconCrown.d.ts +1 -2
  204. package/__internal__/src/icons/IconCursorMouse/IconCursorMouse.d.ts +1 -2
  205. package/__internal__/src/icons/IconDataNull/IconDataNull.d.ts +1 -2
  206. package/__internal__/src/icons/IconDiamond/IconDiamond.d.ts +1 -2
  207. package/__internal__/src/icons/IconDinosaur/IconDinosaur.d.ts +1 -2
  208. package/__internal__/src/icons/IconDisconnection/IconDisconnection.d.ts +1 -2
  209. package/__internal__/src/icons/IconDocAdd/IconDocAdd.d.ts +1 -2
  210. package/__internal__/src/icons/IconDocBlank/IconDocBlank.d.ts +1 -2
  211. package/__internal__/src/icons/IconDocDelete/IconDocDelete.d.ts +1 -2
  212. package/__internal__/src/icons/IconDocExport/IconDocExport.d.ts +1 -2
  213. package/__internal__/src/icons/IconDocFilled/IconDocFilled.d.ts +1 -2
  214. package/__internal__/src/icons/IconDown/IconDown.d.ts +1 -2
  215. package/__internal__/src/icons/IconDownload/IconDownload.d.ts +1 -2
  216. package/__internal__/src/icons/IconDrag/IconDrag.d.ts +1 -2
  217. package/__internal__/src/icons/IconDraggable/IconDraggable.d.ts +1 -2
  218. package/__internal__/src/icons/IconDrillingPartLeftFilled/IconDrillingPartLeftFilled.d.ts +1 -2
  219. package/__internal__/src/icons/IconDrillingPartLeftStroked/IconDrillingPartLeftStroked.d.ts +1 -2
  220. package/__internal__/src/icons/IconDrillingPartRightFilled/IconDrillingPartRightFilled.d.ts +1 -2
  221. package/__internal__/src/icons/IconDrillingPartRightStroked/IconDrillingPartRightStroked.d.ts +1 -2
  222. package/__internal__/src/icons/IconDrillingRig/IconDrillingRig.d.ts +1 -2
  223. package/__internal__/src/icons/IconDrop/IconDrop.d.ts +1 -2
  224. package/__internal__/src/icons/IconEdit/IconEdit.d.ts +1 -2
  225. package/__internal__/src/icons/IconExit/IconExit.d.ts +1 -2
  226. package/__internal__/src/icons/IconExpand/IconExpand.d.ts +1 -2
  227. package/__internal__/src/icons/IconEye/IconEye.d.ts +1 -2
  228. package/__internal__/src/icons/IconEyeClose/IconEyeClose.d.ts +1 -2
  229. package/__internal__/src/icons/IconFavorite/IconFavorite.d.ts +1 -2
  230. package/__internal__/src/icons/IconFilter/IconFilter.d.ts +1 -2
  231. package/__internal__/src/icons/IconFishboneFilled/IconFishboneFilled.d.ts +1 -2
  232. package/__internal__/src/icons/IconFishboneStroked/IconFishboneStroked.d.ts +1 -2
  233. package/__internal__/src/icons/IconFitToDefault/IconFitToDefault.d.ts +1 -2
  234. package/__internal__/src/icons/IconFlagFilled/IconFlagFilled.d.ts +1 -2
  235. package/__internal__/src/icons/IconFlagStroked/IconFlagStroked.d.ts +1 -2
  236. package/__internal__/src/icons/IconFolders/IconFolders.d.ts +1 -2
  237. package/__internal__/src/icons/IconForward/IconForward.d.ts +1 -2
  238. package/__internal__/src/icons/IconFunnel/IconFunnel.d.ts +1 -2
  239. package/__internal__/src/icons/IconGas/IconGas.d.ts +1 -2
  240. package/__internal__/src/icons/IconGeo/IconGeo.d.ts +1 -2
  241. package/__internal__/src/icons/IconGradients/IconGradients.d.ts +1 -2
  242. package/__internal__/src/icons/IconGrouping/IconGrouping.d.ts +1 -2
  243. package/__internal__/src/icons/IconHamburger/IconHamburger.d.ts +1 -2
  244. package/__internal__/src/icons/IconHand/IconHand.d.ts +1 -2
  245. package/__internal__/src/icons/IconHealth/IconHealth.d.ts +1 -2
  246. package/__internal__/src/icons/IconHome/IconHome.d.ts +1 -2
  247. package/__internal__/src/icons/IconInComparison/IconInComparison.d.ts +1 -2
  248. package/__internal__/src/icons/IconIncident/IconIncident.d.ts +1 -2
  249. package/__internal__/src/icons/IconInfo/IconInfo.d.ts +1 -2
  250. package/__internal__/src/icons/IconIntroduction/IconIntroduction.d.ts +1 -2
  251. package/__internal__/src/icons/IconIpad/IconIpad.d.ts +1 -2
  252. package/__internal__/src/icons/IconItalic/IconItalic.d.ts +1 -2
  253. package/__internal__/src/icons/IconKebab/IconKebab.d.ts +1 -2
  254. package/__internal__/src/icons/IconKernFilled/IconKernFilled.d.ts +1 -2
  255. package/__internal__/src/icons/IconKernStroked/IconKernStroked.d.ts +1 -2
  256. package/__internal__/src/icons/IconLaptop/IconLaptop.d.ts +1 -2
  257. package/__internal__/src/icons/IconLayers/IconLayers.d.ts +1 -2
  258. package/__internal__/src/icons/IconLeaf/IconLeaf.d.ts +1 -2
  259. package/__internal__/src/icons/IconLightningBolt/IconLightningBolt.d.ts +1 -2
  260. package/__internal__/src/icons/IconLineAndBarChart/IconLineAndBarChart.d.ts +1 -2
  261. package/__internal__/src/icons/IconLink/IconLink.d.ts +1 -2
  262. package/__internal__/src/icons/IconList/IconList.d.ts +1 -2
  263. package/__internal__/src/icons/IconListNumbered/IconListNumbered.d.ts +1 -2
  264. package/__internal__/src/icons/IconLithologyFilled/IconLithologyFilled.d.ts +1 -2
  265. package/__internal__/src/icons/IconLithologyStroked/IconLithologyStroked.d.ts +1 -2
  266. package/__internal__/src/icons/IconLock/IconLock.d.ts +1 -2
  267. package/__internal__/src/icons/IconLogicalElement/IconLogicalElement.d.ts +1 -2
  268. package/__internal__/src/icons/IconMBU/IconMBU.d.ts +1 -2
  269. package/__internal__/src/icons/IconMGRP/IconMGRP.d.ts +1 -2
  270. package/__internal__/src/icons/IconMLSP/IconMLSP.d.ts +1 -2
  271. package/__internal__/src/icons/IconMMP/IconMMP.d.ts +1 -2
  272. package/__internal__/src/icons/IconMail/IconMail.d.ts +1 -2
  273. package/__internal__/src/icons/IconMap/IconMap.d.ts +1 -2
  274. package/__internal__/src/icons/IconMaxHeight/IconMaxHeight.d.ts +1 -2
  275. package/__internal__/src/icons/IconMaxWidth/IconMaxWidth.d.ts +1 -2
  276. package/__internal__/src/icons/IconMeatball/IconMeatball.d.ts +1 -2
  277. package/__internal__/src/icons/IconMic/IconMic.d.ts +1 -2
  278. package/__internal__/src/icons/IconMolecules/IconMolecules.d.ts +1 -2
  279. package/__internal__/src/icons/IconMoon/IconMoon.d.ts +1 -2
  280. package/__internal__/src/icons/IconNodeEnd/IconNodeEnd.d.ts +1 -2
  281. package/__internal__/src/icons/IconNodeStart/IconNodeStart.d.ts +1 -2
  282. package/__internal__/src/icons/IconNodeStep/IconNodeStep.d.ts +1 -2
  283. package/__internal__/src/icons/IconNodes/IconNodes.d.ts +1 -2
  284. package/__internal__/src/icons/IconOilBarrel/IconOilBarrel.d.ts +1 -2
  285. package/__internal__/src/icons/IconOpenInNew/IconOpenInNew.d.ts +1 -2
  286. package/__internal__/src/icons/IconOperators/IconOperators.d.ts +1 -2
  287. package/__internal__/src/icons/IconPanelBottom/IconPanelBottom.d.ts +1 -2
  288. package/__internal__/src/icons/IconPanelLeft/IconPanelLeft.d.ts +1 -2
  289. package/__internal__/src/icons/IconPanelRight/IconPanelRight.d.ts +1 -2
  290. package/__internal__/src/icons/IconPanelTop/IconPanelTop.d.ts +1 -2
  291. package/__internal__/src/icons/IconPaste/IconPaste.d.ts +1 -2
  292. package/__internal__/src/icons/IconPause/IconPause.d.ts +1 -2
  293. package/__internal__/src/icons/IconPhone/IconPhone.d.ts +1 -2
  294. package/__internal__/src/icons/IconPhoto/IconPhoto.d.ts +1 -2
  295. package/__internal__/src/icons/IconPicture/IconPicture.d.ts +1 -2
  296. package/__internal__/src/icons/IconPlay/IconPlay.d.ts +1 -2
  297. package/__internal__/src/icons/IconPressureFilled/IconPressureFilled.d.ts +1 -2
  298. package/__internal__/src/icons/IconPressureStroked/IconPressureStroked.d.ts +1 -2
  299. package/__internal__/src/icons/IconPriceLabel/IconPriceLabel.d.ts +1 -2
  300. package/__internal__/src/icons/IconProcessing/IconProcessing.d.ts +1 -2
  301. package/__internal__/src/icons/IconQuestion/IconQuestion.d.ts +1 -2
  302. package/__internal__/src/icons/IconQuote/IconQuote.d.ts +1 -2
  303. package/__internal__/src/icons/IconRUO/IconRUO.d.ts +1 -2
  304. package/__internal__/src/icons/IconRUS/IconRUS.d.ts +1 -2
  305. package/__internal__/src/icons/IconRecord/IconRecord.d.ts +1 -2
  306. package/__internal__/src/icons/IconRemove/IconRemove.d.ts +1 -2
  307. package/__internal__/src/icons/IconRemoveFromComparison/IconRemoveFromComparison.d.ts +1 -2
  308. package/__internal__/src/icons/IconReply/IconReply.d.ts +1 -2
  309. package/__internal__/src/icons/IconResize/IconResize.d.ts +1 -2
  310. package/__internal__/src/icons/IconRestart/IconRestart.d.ts +1 -2
  311. package/__internal__/src/icons/IconRevert/IconRevert.d.ts +1 -2
  312. package/__internal__/src/icons/IconRing/IconRing.d.ts +1 -2
  313. package/__internal__/src/icons/IconRouble/IconRouble.d.ts +1 -2
  314. package/__internal__/src/icons/IconRuler/IconRuler.d.ts +1 -2
  315. package/__internal__/src/icons/IconSave/IconSave.d.ts +1 -2
  316. package/__internal__/src/icons/IconScreen/IconScreen.d.ts +1 -2
  317. package/__internal__/src/icons/IconSearch/IconSearch.d.ts +1 -2
  318. package/__internal__/src/icons/IconSelect/IconSelect.d.ts +1 -2
  319. package/__internal__/src/icons/IconSelectOpen/IconSelectOpen.d.ts +1 -2
  320. package/__internal__/src/icons/IconSendMessage/IconSendMessage.d.ts +1 -2
  321. package/__internal__/src/icons/IconSettings/IconSettings.d.ts +1 -2
  322. package/__internal__/src/icons/IconShape/IconShape.d.ts +1 -2
  323. package/__internal__/src/icons/IconShuffle/IconShuffle.d.ts +1 -2
  324. package/__internal__/src/icons/IconSmile/IconSmile.d.ts +1 -2
  325. package/__internal__/src/icons/IconSnowflake/IconSnowflake.d.ts +1 -2
  326. package/__internal__/src/icons/IconSortDown/IconSortDown.d.ts +1 -2
  327. package/__internal__/src/icons/IconSortDownCenter/IconSortDownCenter.d.ts +1 -2
  328. package/__internal__/src/icons/IconSortUp/IconSortUp.d.ts +1 -2
  329. package/__internal__/src/icons/IconSortUpCenter/IconSortUpCenter.d.ts +1 -2
  330. package/__internal__/src/icons/IconSpeed/IconSpeed.d.ts +1 -2
  331. package/__internal__/src/icons/IconStop/IconStop.d.ts +1 -2
  332. package/__internal__/src/icons/IconStorage/IconStorage.d.ts +1 -2
  333. package/__internal__/src/icons/IconStrikethrough/IconStrikethrough.d.ts +1 -2
  334. package/__internal__/src/icons/IconString/IconString.d.ts +1 -2
  335. package/__internal__/src/icons/IconSun/IconSun.d.ts +1 -2
  336. package/__internal__/src/icons/IconTable/IconTable.d.ts +1 -2
  337. package/__internal__/src/icons/IconTable2/IconTable2.d.ts +1 -2
  338. package/__internal__/src/icons/IconTarget/IconTarget.d.ts +1 -2
  339. package/__internal__/src/icons/IconTeam/IconTeam.d.ts +1 -2
  340. package/__internal__/src/icons/IconTechResponse/IconTechResponse.d.ts +1 -2
  341. package/__internal__/src/icons/IconTest/IconTest.d.ts +1 -2
  342. package/__internal__/src/icons/IconThumbUp/IconThumbUp.d.ts +1 -2
  343. package/__internal__/src/icons/IconTie/IconTie.d.ts +1 -2
  344. package/__internal__/src/icons/IconTop/IconTop.d.ts +1 -2
  345. package/__internal__/src/icons/IconTrajectory/IconTrajectory.d.ts +1 -2
  346. package/__internal__/src/icons/IconTrash/IconTrash.d.ts +1 -2
  347. package/__internal__/src/icons/IconType/IconType.d.ts +1 -2
  348. package/__internal__/src/icons/IconUnderline/IconUnderline.d.ts +1 -2
  349. package/__internal__/src/icons/IconUnlock/IconUnlock.d.ts +1 -2
  350. package/__internal__/src/icons/IconUnsort/IconUnsort.d.ts +1 -2
  351. package/__internal__/src/icons/IconUnsortCenter/IconUnsortCenter.d.ts +1 -2
  352. package/__internal__/src/icons/IconUpload/IconUpload.d.ts +1 -2
  353. package/__internal__/src/icons/IconUser/IconUser.d.ts +1 -2
  354. package/__internal__/src/icons/IconVZD/IconVZD.d.ts +1 -2
  355. package/__internal__/src/icons/IconVideo/IconVideo.d.ts +1 -2
  356. package/__internal__/src/icons/IconWarning/IconWarning.d.ts +1 -2
  357. package/__internal__/src/icons/IconWatch/IconWatch.d.ts +1 -2
  358. package/__internal__/src/icons/IconWellOpen/IconWellOpen.d.ts +1 -2
  359. package/__internal__/src/icons/IconWellPipe/IconWellPipe.d.ts +1 -2
  360. package/__internal__/src/icons/IconWideScreen/IconWideScreen.d.ts +1 -2
  361. package/__internal__/src/icons/IconWorldFilled/IconWorldFilled.d.ts +1 -2
  362. package/__internal__/src/icons/IconWorldStroked/IconWorldStroked.d.ts +1 -2
  363. package/__internal__/src/icons/IconWrench/IconWrench.d.ts +1 -2
  364. package/__internal__/src/icons/IconYandexDzen/IconYandexDzen.d.ts +1 -2
  365. package/__internal__/src/icons/IconYoutube/IconYoutube.d.ts +1 -2
  366. package/__internal__/src/icons/createIcon/createIcon.d.ts +1 -2
  367. package/__internal__/src/icons/createIcon/createIcon.js +1 -1
  368. package/__internal__/src/icons/createIcon/createIcon.js.map +1 -1
  369. package/__internal__/src/utils/fabricIndex.js +1 -1
  370. package/__internal__/src/utils/fabricIndex.js.map +1 -1
  371. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","names":["IconClose","IconEye","IconEyeClose","IconSelect","IconSelectOpen","React","forwardRef","useCallback","useEffect","TextAreaAutoSize","useFlag","useForkRef","useMutableRef","useSortSteps","cn","getByMap","isString","usePropsHandler","FieldCaption","FieldLabel","getIncrementFlag","getTypeForRender","getValueByStep","sizeMap","textFieldPropFormDefault","textFieldPropSizeDefault","textFieldPropViewDefault","textFieldPropWidthDefault","COMPONENT_NAME","cnTextField","TextFieldRender","props","ref","textFieldRef","useRef","inputRef","className","type","value","onChange","id","name","rows","cols","minRows","maxRows","inputRefProp","maxLength","disabled","size","view","form","state","status","width","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","withClearButton","incrementButtons","max","min","readOnly","required","step","tabIndex","ariaLabel","label","labelIcon","inputContainerRef","labelPosition","caption","iconSizeProp","iconSize","focused","onClick","onKeyDownProp","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","otherProps","focus","setFocus","passwordVisible","setPasswordVisuble","valueRef","onClickRef","onChangeRef","handleEyeClick","e","stopPropagation","toggle","current","LeftIcon","RightIcon","leftSideIsString","rightSideIsString","sortedSteps","handleChange","target","handleFocus","on","commonProps","handleBlur","off","toString","Eye","textareaProps","inputProps","Array","isArray","flag","preventDefault","handleClear","changeNumberValue","isIncrement","rootProps","selectionStart","length","withValue","position","TextField"],"sources":["../../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import './TextField.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport { IconEye } from '@consta/icons/IconEye';\nimport { IconEyeClose } from '@consta/icons/IconEyeClose';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport { IconSelectOpen } from '@consta/icons/IconSelectOpen';\nimport React, { forwardRef, useCallback, useEffect } from 'react';\nimport TextAreaAutoSize from 'react-textarea-autosize';\n\nimport { useFlag } from '../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { useMutableRef } from '../../hooks/useMutableRef/useMutableRef';\nimport { useSortSteps } from '../../hooks/useSortSteps/useSortSteps';\nimport { cn } from '../../utils/bem';\nimport { getByMap } from '../../utils/getByMap';\nimport { isString } from '../../utils/type-guards';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { FieldCaption } from '../FieldCaption/FieldCaption';\nimport { FieldLabel } from '../FieldLabel/FieldLabel';\nimport {\n getIncrementFlag,\n getTypeForRender,\n getValueByStep,\n sizeMap,\n} from './helpers';\nimport {\n TextFieldComponent,\n textFieldPropFormDefault,\n TextFieldProps,\n textFieldPropSizeDefault,\n textFieldPropViewDefault,\n textFieldPropWidthDefault,\n} from './types';\n\nexport const COMPONENT_NAME = 'TextField' as const;\nexport const cnTextField = cn(COMPONENT_NAME);\n\nexport const TextFieldRender = <TYPE extends string>(\n props: TextFieldProps<TYPE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const textFieldRef = React.useRef<HTMLDivElement>(null);\n const inputRef = React.useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\n const {\n className,\n type = 'text',\n value,\n onChange,\n id,\n name,\n rows,\n cols,\n minRows,\n maxRows,\n inputRef: inputRefProp,\n maxLength,\n disabled,\n size = textFieldPropSizeDefault,\n view = textFieldPropViewDefault,\n form = textFieldPropFormDefault,\n state,\n status,\n width = textFieldPropWidthDefault,\n onBlur,\n onFocus,\n autoFocus = false,\n placeholder,\n leftSide,\n rightSide,\n autoComplete,\n withClearButton,\n incrementButtons = true,\n max,\n min,\n readOnly,\n required,\n step = 1,\n tabIndex,\n ariaLabel,\n label,\n labelIcon,\n inputContainerRef,\n labelPosition = 'top',\n caption,\n iconSize: iconSizeProp,\n focused,\n onClick,\n // onkey props\n onKeyDown: onKeyDownProp,\n onKeyDownCapture,\n onKeyPress,\n onKeyPressCapture,\n onKeyUp,\n onKeyUpCapture,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, textFieldRef);\n const [focus, setFocus] = useFlag(autoFocus);\n const [passwordVisible, setPasswordVisuble] = useFlag(false);\n\n const valueRef = useMutableRef(value);\n const onClickRef = useMutableRef(onClick);\n const onChangeRef = useMutableRef(onChange);\n\n const handleEyeClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n e.stopPropagation();\n setPasswordVisuble.toggle();\n inputRef.current?.focus();\n },\n [],\n );\n\n const textarea = type === 'textarea';\n const LeftIcon = leftSide;\n const RightIcon = rightSide;\n const leftSideIsString = isString(leftSide);\n const rightSideIsString = isString(rightSide);\n const iconSize = getByMap(sizeMap, size, iconSizeProp);\n\n const sortedSteps = useSortSteps({\n step,\n min: Number(min),\n max: Number(max),\n });\n\n const handleChange: React.ChangeEventHandler<\n HTMLInputElement | HTMLTextAreaElement\n > = useCallback(\n (e) => {\n !disabled &&\n onChangeRef.current?.({ e, id, name, value: e.target.value || null });\n },\n [id, name, disabled],\n );\n\n const handleBlur: React.FocusEventHandler<HTMLElement> = (e) => {\n setFocus.off();\n onBlur?.(e);\n };\n\n const handleFocus: React.FocusEventHandler<HTMLElement> = (e) => {\n setFocus.on();\n onFocus?.(e);\n };\n\n const commonProps = {\n 'className': cnTextField('Input'),\n 'value': value || '',\n 'onChange': handleChange,\n maxLength,\n disabled,\n 'onBlur': handleBlur,\n 'onFocus': handleFocus,\n autoFocus,\n placeholder,\n autoComplete,\n readOnly,\n tabIndex,\n name,\n onKeyDownCapture,\n onKeyPress,\n onKeyPressCapture,\n onKeyUp,\n onKeyUpCapture,\n 'id': id ? id.toString() : '',\n 'aria-label': ariaLabel,\n };\n\n const Eye = passwordVisible ? IconEyeClose : IconEye;\n\n const onKeyDown = (e: React.KeyboardEvent) => {\n const flag = getIncrementFlag(e);\n onKeyDownProp?.(e);\n if (type === 'number' && typeof flag === 'boolean' && !disabled) {\n e.preventDefault();\n onChangeRef.current?.({\n e,\n id,\n name,\n value: getValueByStep(sortedSteps, value, flag, min, max),\n });\n }\n };\n\n const textareaProps = {\n rows,\n cols,\n minRows: minRows || rows,\n maxRows: maxRows || rows,\n ref: useForkRef([inputRef, inputRefProp]) as (\n node: HTMLTextAreaElement,\n ) => void,\n };\n\n const inputProps = {\n type: getTypeForRender(type, passwordVisible),\n max,\n min,\n step: !Array.isArray(sortedSteps) ? sortedSteps : 0,\n onKeyDown,\n ref: useForkRef([\n inputRef,\n inputRefProp,\n ]) as React.RefCallback<HTMLInputElement>,\n };\n\n const handleClear = useCallback((e: React.MouseEvent<HTMLButtonElement>) => {\n onChangeRef.current?.({\n e,\n id,\n name,\n value: null,\n });\n }, []);\n\n const changeNumberValue = (\n e: React.MouseEvent<HTMLButtonElement>,\n isIncrement = true,\n ) => {\n onChangeRef.current?.({\n e,\n id,\n name,\n value: getValueByStep(sortedSteps, value, isIncrement, min, max),\n });\n };\n\n const rootProps = {\n onClick: useCallback((e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n inputRef.current?.focus();\n onClickRef.current?.(e);\n }, []),\n };\n\n // при смене passwordVible, перемещаем курсор в конец строки\n useEffect(() => {\n if (type === 'password' && inputRef.current) {\n inputRef.current.selectionStart = valueRef.current?.length || 0;\n }\n }, [passwordVisible]);\n\n return (\n <div\n className={cnTextField({ labelPosition, size, view, width }, [className])}\n ref={useForkRef([ref, textFieldRef])}\n {...rootProps}\n {...otherProps}\n >\n {label && (\n <FieldLabel\n as=\"label\"\n htmlFor={id?.toString()}\n icon={labelIcon}\n required={required}\n className={cnTextField('Label', { labelPosition })}\n size={size}\n >\n {label}\n </FieldLabel>\n )}\n <div className={cnTextField('Body')}>\n <div\n ref={inputContainerRef}\n className={cnTextField('InputContainer', {\n view,\n form,\n status: status || state,\n disabled,\n type,\n focus: focus || focused,\n withValue: !!value,\n })}\n >\n {LeftIcon && (\n <div\n className={cnTextField('Side', {\n position: 'left',\n type: leftSideIsString ? 'string' : 'icon',\n })}\n title={typeof leftSide === 'string' ? leftSide : undefined}\n >\n {leftSideIsString ? (\n leftSide\n ) : (\n <LeftIcon className={cnTextField('Icon')} size={iconSize} />\n )}\n </div>\n )}\n {textarea ? (\n <TextAreaAutoSize {...commonProps} {...textareaProps} />\n ) : (\n <input {...commonProps} {...inputProps} />\n )}\n\n {type === 'number' && incrementButtons && (\n <div className={cnTextField('Counter')}>\n <button\n onFocus={handleFocus}\n onClick={(e) => changeNumberValue(e, true)}\n type=\"button\"\n className={cnTextField('CounterButton')}\n >\n <IconSelectOpen size=\"xs\" />\n </button>\n <button\n onFocus={handleFocus}\n onClick={(e) => changeNumberValue(e, false)}\n type=\"button\"\n className={cnTextField('CounterButton')}\n >\n <IconSelect size=\"xs\" />\n </button>\n </div>\n )}\n\n {value && withClearButton && type !== 'number' && (\n <button\n type=\"button\"\n disabled={disabled}\n onClick={handleClear}\n className={cnTextField('ClearButton')}\n >\n <IconClose size=\"xs\" className={cnTextField('ClearButtonIcon')} />\n </button>\n )}\n\n {type === 'password' && value && (\n <button\n className={cnTextField('ClearButton')}\n type=\"button\"\n onClick={handleEyeClick}\n >\n <Eye className={cnTextField('Icon')} size={iconSize} />\n </button>\n )}\n\n {RightIcon && type !== 'number' && type !== 'password' && (\n <div\n className={cnTextField('Side', {\n position: 'right',\n type: rightSideIsString ? 'string' : 'icon',\n })}\n title={typeof rightSide === 'string' ? rightSide : undefined}\n >\n {rightSideIsString ? (\n rightSide\n ) : (\n <RightIcon className={cnTextField('Icon')} size={iconSize} />\n )}\n </div>\n )}\n </div>\n {caption && (\n <FieldCaption\n className={cnTextField('Caption')}\n status={status || state}\n >\n {caption}\n </FieldCaption>\n )}\n </div>\n </div>\n );\n};\n\nexport const TextField = forwardRef(TextFieldRender) as TextFieldComponent;\nexport * from './types';\n"],"mappings":"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"}
1
+ {"version":3,"file":"TextField.js","names":["IconClear","IconEye","IconEyeClose","IconSelect","IconSelectOpen","React","forwardRef","useCallback","useEffect","TextAreaAutoSize","useFlag","useForkRef","useMutableRef","useSortSteps","cn","getByMap","isString","usePropsHandler","FieldCaption","FieldLabel","getIncrementFlag","getTypeForRender","getValueByStep","sizeMap","textFieldPropFormDefault","textFieldPropSizeDefault","textFieldPropViewDefault","textFieldPropWidthDefault","COMPONENT_NAME","cnTextField","TextFieldRender","props","ref","textFieldRef","useRef","inputRef","className","type","value","onChange","id","name","rows","cols","minRows","maxRows","inputRefProp","maxLength","disabled","size","view","form","state","status","width","onBlur","onFocus","autoFocus","placeholder","leftSide","rightSide","autoComplete","withClearButton","incrementButtons","max","min","readOnly","required","step","tabIndex","ariaLabel","label","labelIcon","inputContainerRef","labelPosition","caption","iconSizeProp","iconSize","focused","onClick","onKeyDownProp","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","otherProps","focus","setFocus","passwordVisible","setPasswordVisuble","valueRef","onClickRef","onChangeRef","handleEyeClick","e","stopPropagation","toggle","current","LeftIcon","RightIcon","leftSideIsString","rightSideIsString","sortedSteps","handleChange","target","handleFocus","on","commonProps","handleBlur","off","toString","Eye","textareaProps","inputProps","Array","isArray","flag","preventDefault","handleClear","changeNumberValue","isIncrement","rootProps","selectionStart","length","withValue","position","TextField"],"sources":["../../../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import './TextField.css';\n\nimport { IconClear } from '@consta/icons/IconClear';\nimport { IconEye } from '@consta/icons/IconEye';\nimport { IconEyeClose } from '@consta/icons/IconEyeClose';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport { IconSelectOpen } from '@consta/icons/IconSelectOpen';\nimport React, { forwardRef, useCallback, useEffect } from 'react';\nimport TextAreaAutoSize from 'react-textarea-autosize';\n\nimport { useFlag } from '../../hooks/useFlag/useFlag';\nimport { useForkRef } from '../../hooks/useForkRef/useForkRef';\nimport { useMutableRef } from '../../hooks/useMutableRef/useMutableRef';\nimport { useSortSteps } from '../../hooks/useSortSteps/useSortSteps';\nimport { cn } from '../../utils/bem';\nimport { getByMap } from '../../utils/getByMap';\nimport { isString } from '../../utils/type-guards';\nimport { usePropsHandler } from '../EventInterceptor/usePropsHandler';\nimport { FieldCaption } from '../FieldCaption/FieldCaption';\nimport { FieldLabel } from '../FieldLabel/FieldLabel';\nimport {\n getIncrementFlag,\n getTypeForRender,\n getValueByStep,\n sizeMap,\n} from './helpers';\nimport {\n TextFieldComponent,\n textFieldPropFormDefault,\n TextFieldProps,\n textFieldPropSizeDefault,\n textFieldPropViewDefault,\n textFieldPropWidthDefault,\n} from './types';\n\nexport const COMPONENT_NAME = 'TextField' as const;\nexport const cnTextField = cn(COMPONENT_NAME);\n\nexport const TextFieldRender = <TYPE extends string>(\n props: TextFieldProps<TYPE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const textFieldRef = React.useRef<HTMLDivElement>(null);\n const inputRef = React.useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\n const {\n className,\n type = 'text',\n value,\n onChange,\n id,\n name,\n rows,\n cols,\n minRows,\n maxRows,\n inputRef: inputRefProp,\n maxLength,\n disabled,\n size = textFieldPropSizeDefault,\n view = textFieldPropViewDefault,\n form = textFieldPropFormDefault,\n state,\n status,\n width = textFieldPropWidthDefault,\n onBlur,\n onFocus,\n autoFocus = false,\n placeholder,\n leftSide,\n rightSide,\n autoComplete,\n withClearButton,\n incrementButtons = true,\n max,\n min,\n readOnly,\n required,\n step = 1,\n tabIndex,\n ariaLabel,\n label,\n labelIcon,\n inputContainerRef,\n labelPosition = 'top',\n caption,\n iconSize: iconSizeProp,\n focused,\n onClick,\n // onkey props\n onKeyDown: onKeyDownProp,\n onKeyDownCapture,\n onKeyPress,\n onKeyPressCapture,\n onKeyUp,\n onKeyUpCapture,\n ...otherProps\n } = usePropsHandler(COMPONENT_NAME, props, textFieldRef);\n const [focus, setFocus] = useFlag(autoFocus);\n const [passwordVisible, setPasswordVisuble] = useFlag(false);\n\n const valueRef = useMutableRef(value);\n const onClickRef = useMutableRef(onClick);\n const onChangeRef = useMutableRef(onChange);\n\n const handleEyeClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n e.stopPropagation();\n setPasswordVisuble.toggle();\n inputRef.current?.focus();\n },\n [],\n );\n\n const textarea = type === 'textarea';\n const LeftIcon = leftSide;\n const RightIcon = rightSide;\n const leftSideIsString = isString(leftSide);\n const rightSideIsString = isString(rightSide);\n const iconSize = getByMap(sizeMap, size, iconSizeProp);\n\n const sortedSteps = useSortSteps({\n step,\n min: Number(min),\n max: Number(max),\n });\n\n const handleChange: React.ChangeEventHandler<\n HTMLInputElement | HTMLTextAreaElement\n > = useCallback(\n (e) => {\n !disabled &&\n onChangeRef.current?.({ e, id, name, value: e.target.value || null });\n },\n [id, name, disabled],\n );\n\n const handleBlur: React.FocusEventHandler<HTMLElement> = (e) => {\n setFocus.off();\n onBlur?.(e);\n };\n\n const handleFocus: React.FocusEventHandler<HTMLElement> = (e) => {\n setFocus.on();\n onFocus?.(e);\n };\n\n const commonProps = {\n 'className': cnTextField('Input'),\n 'value': value || '',\n 'onChange': handleChange,\n maxLength,\n disabled,\n 'onBlur': handleBlur,\n 'onFocus': handleFocus,\n autoFocus,\n placeholder,\n autoComplete,\n readOnly,\n tabIndex,\n name,\n onKeyDownCapture,\n onKeyPress,\n onKeyPressCapture,\n onKeyUp,\n onKeyUpCapture,\n 'id': id ? id.toString() : '',\n 'aria-label': ariaLabel,\n };\n\n const Eye = passwordVisible ? IconEyeClose : IconEye;\n\n const onKeyDown = (e: React.KeyboardEvent) => {\n const flag = getIncrementFlag(e);\n onKeyDownProp?.(e);\n if (type === 'number' && typeof flag === 'boolean' && !disabled) {\n e.preventDefault();\n onChangeRef.current?.({\n e,\n id,\n name,\n value: getValueByStep(sortedSteps, value, flag, min, max),\n });\n }\n };\n\n const textareaProps = {\n rows,\n cols,\n minRows: minRows || rows,\n maxRows: maxRows || rows,\n ref: useForkRef([inputRef, inputRefProp]) as (\n node: HTMLTextAreaElement,\n ) => void,\n };\n\n const inputProps = {\n type: getTypeForRender(type, passwordVisible),\n max,\n min,\n step: !Array.isArray(sortedSteps) ? sortedSteps : 0,\n onKeyDown,\n ref: useForkRef([\n inputRef,\n inputRefProp,\n ]) as React.RefCallback<HTMLInputElement>,\n };\n\n const handleClear = useCallback((e: React.MouseEvent<HTMLButtonElement>) => {\n onChangeRef.current?.({\n e,\n id,\n name,\n value: null,\n });\n }, []);\n\n const changeNumberValue = (\n e: React.MouseEvent<HTMLButtonElement>,\n isIncrement = true,\n ) => {\n onChangeRef.current?.({\n e,\n id,\n name,\n value: getValueByStep(sortedSteps, value, isIncrement, min, max),\n });\n };\n\n const rootProps = {\n onClick: useCallback((e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n inputRef.current?.focus();\n onClickRef.current?.(e);\n }, []),\n };\n\n // при смене passwordVible, перемещаем курсор в конец строки\n useEffect(() => {\n if (type === 'password' && inputRef.current) {\n inputRef.current.selectionStart = valueRef.current?.length || 0;\n }\n }, [passwordVisible]);\n\n return (\n <div\n className={cnTextField({ labelPosition, size, view, width }, [className])}\n ref={useForkRef([ref, textFieldRef])}\n {...rootProps}\n {...otherProps}\n >\n {label && (\n <FieldLabel\n as=\"label\"\n htmlFor={id?.toString()}\n icon={labelIcon}\n required={required}\n className={cnTextField('Label', { labelPosition })}\n size={size}\n >\n {label}\n </FieldLabel>\n )}\n <div className={cnTextField('Body')}>\n <div\n ref={inputContainerRef}\n className={cnTextField('InputContainer', {\n view,\n form,\n status: status || state,\n disabled,\n type,\n focus: focus || focused,\n withValue: !!value,\n })}\n >\n {LeftIcon && (\n <div\n className={cnTextField('Side', {\n position: 'left',\n type: leftSideIsString ? 'string' : 'icon',\n })}\n title={typeof leftSide === 'string' ? leftSide : undefined}\n >\n {leftSideIsString ? (\n leftSide\n ) : (\n <LeftIcon className={cnTextField('Icon')} size={iconSize} />\n )}\n </div>\n )}\n {textarea ? (\n <TextAreaAutoSize {...commonProps} {...textareaProps} />\n ) : (\n <input {...commonProps} {...inputProps} />\n )}\n\n {type === 'number' && incrementButtons && (\n <div className={cnTextField('Counter')}>\n <button\n onFocus={handleFocus}\n onClick={(e) => changeNumberValue(e, true)}\n type=\"button\"\n className={cnTextField('CounterButton')}\n >\n <IconSelectOpen size=\"xs\" />\n </button>\n <button\n onFocus={handleFocus}\n onClick={(e) => changeNumberValue(e, false)}\n type=\"button\"\n className={cnTextField('CounterButton')}\n >\n <IconSelect size=\"xs\" />\n </button>\n </div>\n )}\n\n {value && withClearButton && type !== 'number' && (\n <button\n type=\"button\"\n disabled={disabled}\n tabIndex={-1}\n onClick={handleClear}\n className={cnTextField('ClearButton')}\n >\n <IconClear\n size={sizeMap[size]}\n className={cnTextField('ClearButtonIcon')}\n />\n </button>\n )}\n\n {type === 'password' && value && (\n <button\n className={cnTextField('ClearButton')}\n type=\"button\"\n onClick={handleEyeClick}\n >\n <Eye className={cnTextField('Icon')} size={iconSize} />\n </button>\n )}\n\n {RightIcon && type !== 'number' && type !== 'password' && (\n <div\n className={cnTextField('Side', {\n position: 'right',\n type: rightSideIsString ? 'string' : 'icon',\n })}\n title={typeof rightSide === 'string' ? rightSide : undefined}\n >\n {rightSideIsString ? (\n rightSide\n ) : (\n <RightIcon className={cnTextField('Icon')} size={iconSize} />\n )}\n </div>\n )}\n </div>\n {caption && (\n <FieldCaption\n className={cnTextField('Caption')}\n status={status || state}\n >\n {caption}\n </FieldCaption>\n )}\n </div>\n </div>\n );\n};\n\nexport const TextField = forwardRef(TextFieldRender) as TextFieldComponent;\nexport * from './types';\n"],"mappings":"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"}
@@ -149,10 +149,10 @@ export declare function withDefaultGetters<ITEM = DefaultItem, GROUP = DefaultGr
149
149
  getGroupLabel?: PropGetGroupLabel<GROUP> | undefined;
150
150
  getGroupKey?: PropGetGroupKey<GROUP> | undefined;
151
151
  label?: string | undefined;
152
- labelIcon?: IconComponent | undefined;
152
+ labelIcon?: IconComponent<"span"> | undefined;
153
153
  caption?: string | undefined;
154
154
  labelPosition?: "left" | "top" | undefined;
155
- } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "placeholder" | "onFocus" | "onBlur" | "onChange" | "size" | "caption" | "form" | "label" | "view" | "status" | "name" | "disabled" | "value" | "multiple" | "required" | "inputRef" | "items" | "dropdownForm" | "ariaLabel" | "dropdownClassName" | "dropdownRef" | "isLoading" | "labelForEmptyItems" | "renderItem" | "renderValue" | "groups" | "getItemLabel" | "getItemKey" | "getItemGroupKey" | "getItemDisabled" | "getGroupLabel" | "getGroupKey" | "labelIcon" | "labelPosition" | "searchFunction" | "searchValue" | "labelForCreate" | "labelForNotFound" | "onCreate" | "getItemSubLabel" | "getItemAvatarUrl"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
155
+ } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "placeholder" | "onFocus" | "onBlur" | "onChange" | "size" | "caption" | "form" | "label" | "view" | "status" | "name" | "disabled" | "value" | "multiple" | "required" | "inputRef" | "items" | "dropdownForm" | "ariaLabel" | "dropdownClassName" | "dropdownRef" | "isLoading" | "labelForEmptyItems" | "renderItem" | "renderValue" | "groups" | "getItemLabel" | "getItemKey" | "getItemGroupKey" | "getItemDisabled" | "getGroupLabel" | "getGroupKey" | "labelIcon" | "labelPosition" | "labelForCreate" | "searchFunction" | "searchValue" | "labelForNotFound" | "onCreate" | "getItemSubLabel" | "getItemAvatarUrl"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
156
156
  label: string;
157
157
  } ? {} : {
158
158
  getItemLabel: PropGetItemLabel<ITEM>;
@@ -0,0 +1,5 @@
1
+ import '##/components/SelectComponentsCanary/Select.css';
2
+ import { UserSelectComponent } from './helpers';
3
+ export declare const COMPONENT_NAME: "UserSelect";
4
+ export declare const UserSelect: UserSelectComponent;
5
+ export * from './helpers';
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","isLoading","required","dropdownRef","form","view","size","dropdownClassName","searchValue","name","groups","getItemKey","getItemLabel","getItemSubLabel","getItemAvatarUrl","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","renderValue","onCreate","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","multiple","searchFunction","style","dropdownForm","onScrollToBottom","onSearchValueChange","onDropdownOpen","virtualScroll","dropdownOpen","ignoreOutsideClicksRefs"];import"../SelectComponentsCanary/Select.css";import{IconClose}from"@consta/icons/IconClose";import{IconSelect}from"@consta/icons/IconSelect";import React,{forwardRef,useRef}from"react";import{usePropsHandler}from"../EventInterceptor/usePropsHandler";import{cnSelect}from"../SelectComponentsCanary/cnSelect";import{defaultlabelForCreate,defaultLabelForEmptyItems,defaultlabelForNotFound,getInputWidth}from"../SelectComponentsCanary/helpers";import{SelectContainer}from"../SelectComponentsCanary/SelectContainer";import{SelectDropdown}from"../SelectComponentsCanary/SelectDropdown";import{defaultPropForm,defaultPropSize,defaultPropView}from"../SelectComponentsCanary/types";import{useSelect}from"../SelectComponentsCanary/useSelect";import{useForkRef}from"../../hooks/useForkRef";import{cnMixFocus}from"../../mixs/MixFocus";import{isMultipleParams,isNotMultipleParams,searchCompare,withDefaultGetters}from"./helpers";import{UserSelectItem}from"./UserSelectItem/UserSelectItem";import{UserSelectValue}from"./UserSelectValue/UserSelectValue";export var COMPONENT_NAME="UserSelect";var UserSelectRender=function(a,b){var c=useRef(null),d=useRef(null),e=useRef(null),f=useRef(null),g=usePropsHandler(COMPONENT_NAME,withDefaultGetters(a),f),h=g.placeholder,i=g.onBlur,j=g.onFocus,k=g.items,l=g.onChange,m=g.value,n=g.disabled,o=g.ariaLabel,p=g.id,q=g.isLoading,r=g.required,s=g.dropdownRef,t=void 0===s?c:s,u=g.form,v=void 0===u?defaultPropForm:u,w=g.view,x=void 0===w?defaultPropView:w,y=g.size,z=void 0===y?defaultPropSize:y,A=g.dropdownClassName,B=g.searchValue,C=g.name,D=g.groups,E=void 0===D?[]:D,F=g.getItemKey,G=g.getItemLabel,H=g.getItemSubLabel,I=g.getItemAvatarUrl,J=g.getItemGroupKey,K=g.getItemDisabled,L=g.getGroupKey,M=g.getGroupLabel,N=g.renderItem,O=g.renderValue,P=g.onCreate,Q=g.inputRef,R=g.labelForNotFound,S=void 0===R?defaultlabelForNotFound:R,T=g.labelForCreate,U=void 0===T?defaultlabelForCreate:T,V=g.labelForEmptyItems,W=void 0===V?defaultLabelForEmptyItems:V,X=g.multiple,Y=void 0!==X&&X,Z=g.searchFunction,$=g.style,_=g.dropdownForm,aa=void 0===_?"default":_,ba=g.onScrollToBottom,ca=g.onSearchValueChange,da=g.onDropdownOpen,ea=g.virtualScroll,fa=g.dropdownOpen,ga=g.ignoreOutsideClicksRefs,ha=_objectWithoutProperties(g,_excluded),ia=useSelect({items:k,groups:E,value:m,onChange:l,dropdownRef:t,controlRef:f,disabled:n,getItemLabel:G,getItemKey:F,getGroupKey:L,getItemGroupKey:J,searchValue:B,getItemDisabled:K,multiple:Y,onBlur:i,onFocus:j,onCreate:P,searchFunction:Z||function searchFunctionDefault(a,b){var c=searchCompare(b,G(a));return c?c:searchCompare(b,H(a))},onSearchValueChange:ca,onDropdownOpen:da,dropdownOpen:fa,ignoreOutsideClicksRefs:ga}),ja=ia.getKeyProps,ka=ia.getOptionProps,la=ia.isOpen,ma=ia.visibleItems,na=ia.isFocused,oa=ia.handleInputFocus,pa=ia.handleInputBlur,qa=ia.handleToggleDropdown,ra=ia.inputRef,sa=ia.handleInputClick,ta=ia.handleInputChange,ua=ia.searchValue,va=ia.clearValue,wa=ia.getHandleRemoveValue,xa=ia.notFound,ya=ia.hasItems,za=ia.optionsRefs,Aa=p?"".concat(p,"-input"):p,Ba=O||function renderValueDefault(a){var b=a.item,c=a.handleRemove;return React.createElement(UserSelectValue,{label:G(b),subLabel:H(b),avatarUrl:I(b),key:F(b),size:z,handleRemove:c,multiple:Y,disabled:n||K(b)})},Ca=useForkRef([ra,Q]),Da=function(){var b=Y?getInputWidth(d,e):void 0;return React.createElement(React.Fragment,null,isMultipleParams(a)&&Array.isArray(a.value)&&a.value.map(function(a){return Ba({item:a,handleRemove:wa(a)})}),isNotMultipleParams(a)&&a.value&&Ba({item:a.value}),(!m||Array.isArray(m)&&0===m.length)&&!ua&&h&&React.createElement("span",{className:cnSelect("Placeholder"),title:"placeholder"},h),React.createElement("input",Object.assign({},ja(),{type:"text",name:C,id:Aa,onFocus:oa,onBlur:pa,"aria-label":o,onChange:ta,ref:Ca,className:cnSelect("Input",{size:z,hide:!Y&&!!m,multiple:Y,isUserSelect:!0}),value:ua,style:{width:b}})))};return React.createElement(React.Fragment,null,React.createElement(SelectContainer,Object.assign({focused:na,disabled:n,size:z,required:r,id:Aa,view:x,type:"userselect",form:v,multiple:!0,ref:b,style:$},ha),React.createElement("div",{className:cnSelect("Control",{hasInput:!0}),ref:f,"aria-expanded":la,"aria-haspopup":"listbox",id:p},React.createElement("div",{className:cnSelect("ControlInner"),onClick:sa,role:"button",ref:d,"aria-hidden":"true"},React.createElement("div",{className:cnSelect("ControlValueContainer")},Y?React.createElement("div",{className:cnSelect("ControlValue",{isUserSelect:!0})},Da()):Da())),React.createElement("span",{className:cnSelect("Indicators")},m&&React.createElement("button",{type:"button",onClick:va,tabIndex:-1,className:cnSelect("ClearIndicator",[cnMixFocus()])},React.createElement(IconClose,{size:"xs",className:cnSelect("ClearIndicatorIcon")})),React.createElement("span",{className:cnSelect("Delimiter")}),React.createElement("button",{type:"button",className:cnSelect("IndicatorsDropdown"),tabIndex:-1,onClick:qa},React.createElement(IconSelect,{size:"xs",className:cnSelect("DropdownIndicatorIcon")})))),React.createElement("div",{className:cnSelect("HelperInputFakeElement"),ref:e},ua)),React.createElement(SelectDropdown,{isOpen:la,size:z,controlRef:f,getOptionProps:ka,dropdownRef:t,form:aa,isLoading:q,className:A,renderItem:N||function renderItemDefault(a){var b=a.item,c=a.active,d=a.hovered,e=a.onClick,f=a.onMouseEnter,g=a.ref;return React.createElement(UserSelectItem,{label:G(b),subLabel:H(b),avatarUrl:I(b),active:c,hovered:d,size:z,indent:"round"===aa?"increased":"normal",onClick:e,onMouseEnter:f,disable:K(b),multiple:Y,ref:g})},getGroupLabel:M,visibleItems:ma,labelForNotFound:S,labelForCreate:U,notFound:xa,hasItems:ya,labelForEmptyItems:W,itemsRefs:za,onScrollToBottom:ba,virtualScroll:ea,style:"number"==typeof(null===$||void 0===$?void 0:$.zIndex)?{zIndex:$.zIndex+1}:void 0}))};export var UserSelect=forwardRef(UserSelectRender);export*from"./helpers";
2
+ //# sourceMappingURL=UserSelectCanary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSelectCanary.js","names":["IconClose","IconSelect","React","forwardRef","useRef","usePropsHandler","cnSelect","defaultlabelForCreate","defaultLabelForEmptyItems","defaultlabelForNotFound","getInputWidth","SelectContainer","SelectDropdown","defaultPropForm","defaultPropSize","defaultPropView","useSelect","useForkRef","cnMixFocus","isMultipleParams","isNotMultipleParams","searchCompare","withDefaultGetters","UserSelectItem","UserSelectValue","COMPONENT_NAME","UserSelectRender","props","ref","defaultDropdownRef","controlInnerRef","helperInputFakeElement","controlRef","placeholder","onBlur","onFocus","items","onChange","value","disabled","ariaLabel","id","isLoading","required","dropdownRef","form","view","size","dropdownClassName","searchValueProp","searchValue","name","groups","getItemKey","getItemLabel","getItemSubLabel","getItemAvatarUrl","getItemGroupKey","getItemDisabled","getGroupKey","getGroupLabel","renderItem","renderValueProp","renderValue","onCreate","inputRefProp","inputRef","labelForNotFound","labelForCreate","labelForEmptyItems","multiple","searchFunction","style","dropdownForm","onScrollToBottom","onSearchValueChange","onDropdownOpen","virtualScroll","dropdownOpen","ignoreOutsideClicksRefs","restProps","searchFunctionDefault","item","searchOfLabel","getKeyProps","getOptionProps","isOpen","visibleItems","isFocused","handleInputFocus","handleInputBlur","handleToggleDropdown","handleInputClick","handleInputChange","clearValue","getHandleRemoveValue","notFound","hasItems","optionsRefs","inputId","renderValueDefault","handleRemove","inputRefForRender","renderControlValue","width","Array","isArray","map","length","hide","isUserSelect","hasInput","renderItemDefault","active","hovered","onClick","onMouseEnter","zIndex","UserSelect"],"sources":["../../../../../src/components/UserSelectCanary/UserSelectCanary.tsx"],"sourcesContent":["import '##/components/SelectComponentsCanary/Select.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport { IconSelect } from '@consta/icons/IconSelect';\nimport React, { forwardRef, useRef } from 'react';\n\nimport { usePropsHandler } from '##/components/EventInterceptor/usePropsHandler';\nimport { cnSelect } from '##/components/SelectComponentsCanary/cnSelect';\nimport {\n defaultlabelForCreate,\n defaultLabelForEmptyItems,\n defaultlabelForNotFound,\n getInputWidth,\n} from '##/components/SelectComponentsCanary/helpers';\nimport { SelectContainer } from '##/components/SelectComponentsCanary/SelectContainer';\nimport { SelectDropdown } from '##/components/SelectComponentsCanary/SelectDropdown';\nimport {\n defaultPropForm,\n defaultPropSize,\n defaultPropView,\n} from '##/components/SelectComponentsCanary/types';\nimport { useSelect } from '##/components/SelectComponentsCanary/useSelect';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnMixFocus } from '##/mixs/MixFocus';\n\nimport {\n DefaultGroup,\n DefaultItem,\n isMultipleParams,\n isNotMultipleParams,\n PropRenderItem,\n PropRenderValue,\n searchCompare,\n UserSelectComponent,\n UserSelectProps,\n withDefaultGetters,\n} from './helpers';\nimport { UserSelectItem } from './UserSelectItem/UserSelectItem';\nimport { UserSelectValue } from './UserSelectValue/UserSelectValue';\n\nexport const COMPONENT_NAME = 'UserSelect' as const;\n\nconst UserSelectRender = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: UserSelectProps<ITEM, GROUP, MULTIPLE>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const defaultDropdownRef = useRef<HTMLDivElement | null>(null);\n const controlInnerRef = useRef<HTMLDivElement>(null);\n const helperInputFakeElement = useRef<HTMLDivElement>(null);\n const controlRef = useRef<HTMLDivElement | null>(null);\n\n const {\n placeholder,\n onBlur,\n onFocus,\n items,\n onChange,\n value,\n disabled,\n ariaLabel,\n id,\n isLoading,\n required,\n dropdownRef = defaultDropdownRef,\n form = defaultPropForm,\n view = defaultPropView,\n size = defaultPropSize,\n dropdownClassName,\n searchValue: searchValueProp,\n name,\n groups = [],\n getItemKey,\n getItemLabel,\n getItemSubLabel,\n getItemAvatarUrl,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n getGroupLabel,\n renderItem,\n renderValue: renderValueProp,\n onCreate,\n inputRef: inputRefProp,\n labelForNotFound = defaultlabelForNotFound,\n labelForCreate = defaultlabelForCreate,\n labelForEmptyItems = defaultLabelForEmptyItems,\n multiple = false,\n searchFunction,\n style,\n dropdownForm = 'default',\n onScrollToBottom,\n onSearchValueChange,\n onDropdownOpen,\n virtualScroll,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n ...restProps\n } = usePropsHandler(COMPONENT_NAME, withDefaultGetters(props), controlRef);\n\n const searchFunctionDefault = (item: ITEM, searchValue: string): boolean => {\n const searchOfLabel = searchCompare(searchValue, getItemLabel(item));\n\n if (searchOfLabel) {\n return searchOfLabel;\n }\n\n return searchCompare(searchValue, getItemSubLabel(item));\n };\n\n const {\n getKeyProps,\n getOptionProps,\n isOpen,\n visibleItems,\n isFocused,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n inputRef,\n handleInputClick,\n handleInputChange,\n searchValue,\n clearValue,\n getHandleRemoveValue,\n notFound,\n hasItems,\n optionsRefs,\n } = useSelect({\n items,\n groups,\n value,\n onChange,\n dropdownRef,\n controlRef,\n disabled,\n getItemLabel,\n getItemKey,\n getGroupKey,\n getItemGroupKey,\n searchValue: searchValueProp,\n getItemDisabled,\n multiple,\n onBlur,\n onFocus,\n onCreate,\n searchFunction: searchFunction || searchFunctionDefault,\n onSearchValueChange,\n onDropdownOpen,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n });\n\n const inputId = id ? `${id}-input` : id;\n\n const renderItemDefault: PropRenderItem<ITEM> = (props) => {\n const { item, active, hovered, onClick, onMouseEnter, ref } = props;\n\n return (\n <UserSelectItem\n label={getItemLabel(item)}\n subLabel={getItemSubLabel(item)}\n avatarUrl={getItemAvatarUrl(item)}\n active={active}\n hovered={hovered}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disable={getItemDisabled(item)}\n multiple={multiple}\n ref={ref}\n />\n );\n };\n\n const renderValueDefault: PropRenderValue<ITEM> = ({\n item,\n handleRemove,\n }) => {\n return (\n <UserSelectValue\n label={getItemLabel(item)}\n subLabel={getItemSubLabel(item)}\n avatarUrl={getItemAvatarUrl(item)}\n key={getItemKey(item)}\n size={size}\n handleRemove={handleRemove}\n multiple={multiple}\n disabled={disabled || getItemDisabled(item)}\n />\n );\n };\n\n const renderValue = renderValueProp || renderValueDefault;\n\n const inputRefForRender = useForkRef([inputRef, inputRefProp]);\n\n const renderControlValue = () => {\n const width = multiple\n ? getInputWidth(controlInnerRef, helperInputFakeElement)\n : undefined;\n return (\n <>\n {isMultipleParams(props) &&\n Array.isArray(props.value) &&\n props.value.map((item) =>\n renderValue({ item, handleRemove: getHandleRemoveValue(item) }),\n )}\n {isNotMultipleParams(props) &&\n props.value &&\n renderValue({ item: props.value })}\n {(!value || (Array.isArray(value) && value.length === 0)) &&\n !searchValue &&\n placeholder && (\n <span className={cnSelect('Placeholder')} title=\"placeholder\">\n {placeholder}\n </span>\n )}\n <input\n {...getKeyProps()}\n type=\"text\"\n name={name}\n id={inputId}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n aria-label={ariaLabel}\n onChange={handleInputChange}\n ref={inputRefForRender}\n className={cnSelect('Input', {\n size,\n hide: !multiple && !!value,\n multiple,\n isUserSelect: true,\n })}\n value={searchValue}\n style={{ width }}\n />\n </>\n );\n };\n\n return (\n <>\n <SelectContainer\n focused={isFocused}\n disabled={disabled}\n size={size}\n required={required}\n id={inputId}\n view={view}\n type=\"userselect\"\n form={form}\n multiple\n ref={ref}\n style={style}\n {...restProps}\n >\n <div\n className={cnSelect('Control', { hasInput: true })}\n ref={controlRef}\n aria-expanded={isOpen}\n aria-haspopup=\"listbox\"\n id={id}\n >\n <div\n className={cnSelect('ControlInner')}\n onClick={handleInputClick}\n role=\"button\"\n ref={controlInnerRef}\n aria-hidden=\"true\"\n >\n <div className={cnSelect('ControlValueContainer')}>\n {multiple ? (\n <div\n className={cnSelect('ControlValue', { isUserSelect: true })}\n >\n {renderControlValue()}\n </div>\n ) : (\n renderControlValue()\n )}\n </div>\n </div>\n <span className={cnSelect('Indicators')}>\n {value && (\n <button\n type=\"button\"\n onClick={clearValue}\n tabIndex={-1}\n className={cnSelect('ClearIndicator', [cnMixFocus()])}\n >\n <IconClose\n size=\"xs\"\n className={cnSelect('ClearIndicatorIcon')}\n />\n </button>\n )}\n <span className={cnSelect('Delimiter')} />\n <button\n type=\"button\"\n className={cnSelect('IndicatorsDropdown')}\n tabIndex={-1}\n onClick={handleToggleDropdown}\n >\n <IconSelect\n size=\"xs\"\n className={cnSelect('DropdownIndicatorIcon')}\n />\n </button>\n </span>\n </div>\n <div\n className={cnSelect('HelperInputFakeElement')}\n ref={helperInputFakeElement}\n >\n {searchValue}\n </div>\n </SelectContainer>\n <SelectDropdown\n isOpen={isOpen}\n size={size}\n controlRef={controlRef}\n getOptionProps={getOptionProps}\n dropdownRef={dropdownRef}\n form={dropdownForm}\n isLoading={isLoading}\n className={dropdownClassName}\n renderItem={renderItem || renderItemDefault}\n getGroupLabel={getGroupLabel}\n visibleItems={visibleItems}\n labelForNotFound={labelForNotFound}\n labelForCreate={labelForCreate}\n notFound={notFound}\n hasItems={hasItems}\n labelForEmptyItems={labelForEmptyItems}\n itemsRefs={optionsRefs}\n onScrollToBottom={onScrollToBottom}\n virtualScroll={virtualScroll}\n style={\n typeof style?.zIndex === 'number'\n ? { zIndex: style.zIndex + 1 }\n : undefined\n }\n />\n </>\n );\n};\n\nexport const UserSelect = forwardRef(UserSelectRender) as UserSelectComponent;\n\nexport * from './helpers';\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .canary--UserSelectItem{align-items:center;background-color:var(--color-control-bg-clear);color:var(--color-control-typo-default);cursor:pointer;display:flex;font-size:var(--font-size);position:relative}.canary--UserSelectItem_size_s{--font-size:var(--control-text-size-s);--sub-info-space:var(--space-xs);--sub-label-font-size:var(--size-text-2xs)}.canary--UserSelectItem_size_m{--font-size:var(--control-text-size-m);--sub-info-space:var(--space-s);--sub-label-font-size:var(--size-text-xs)}.canary--UserSelectItem_size_l{--font-size:var(--control-text-size-l);--sub-info-space:var(--space-s);--sub-label-font-size:var(--size-text-s)}.canary--UserSelectItem_disable{color:var(--color-control-typo-disable)}.canary--UserSelectItem_disable .UserSelectItem-AvatarContainer{opacity:.6}.canary--UserSelectItem_hovered{background-color:var(--color-control-bg-clear-hover)}.canary--UserSelectItem_active{color:var(--color-control-typo-secondary)}.canary--UserSelectItem_indent_increased{padding-left:calc(var(--horizontal-space)*2.6)}.canary--UserSelectItem-AvatarContainer{position:relative}.canary--UserSelectItem-CheckIcon{background-color:var(--color-control-bg-primary);border:1px solid var(--color-control-bg-default);border-radius:50%;bottom:calc(var(--space-2xs)*-1);color:var(--color-control-bg-default);height:var(--graphics-size-xs);padding:0;position:absolute;right:calc(var(--space-2xs)*-1);width:var(--graphics-size-xs)}.canary--UserSelectItem-CheckIcon_animate_entered,.canary--UserSelectItem-CheckIcon_animate_entering,.canary--UserSelectItem-CheckIcon_animate_exited,.canary--UserSelectItem-CheckIcon_animate_exiting{transition:.2s ease;transition-property:opacity,transform}.canary--UserSelectItem-CheckIcon_animate_entered,.canary--UserSelectItem-CheckIcon_animate_entering{opacity:1;transform:scale(1)}.canary--UserSelectItem-CheckIcon_animate_exiting{opacity:0;transform:scale(.25)}.canary--UserSelectItem-CheckIcon_animate_exited{opacity:0;transform:scale(0)}.canary--UserSelectItem-Info{padding-left:var(--sub-info-space)}.canary--UserSelectItem-SubLabel{font-size:var(--sub-label-font-size);opacity:.7}.canary--UserSelectItem-SubLabel_disable{opacity:1}
@@ -0,0 +1,14 @@
1
+ import './UserSelectItem.css';
2
+ import React from 'react';
3
+ export declare const cnUserSelectItem: import("@bem-react/classname").ClassNameFormatter;
4
+ export declare const UserSelectItem: React.ForwardRefExoticComponent<{
5
+ label: string;
6
+ active: boolean;
7
+ hovered: boolean;
8
+ size: 's' | 'm' | 'l';
9
+ indent: 'normal' | 'increased';
10
+ subLabel?: string | undefined;
11
+ avatarUrl?: string | undefined;
12
+ disable?: boolean | undefined;
13
+ multiple?: boolean | undefined;
14
+ } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "size" | "label" | "multiple" | "active" | "hovered" | "indent" | "avatarUrl" | "subLabel" | "disable"> & React.RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,2 @@
1
+ import _objectWithoutProperties from"@babel/runtime/helpers/objectWithoutProperties";var _excluded=["className","label","subLabel","avatarUrl","active","hovered","size","indent","disable","multiple"];import"./UserSelectItem.css";import{IconCheck}from"@consta/icons/IconCheck";import React,{forwardRef,useRef}from"react";import{Transition}from"react-transition-group";import{Avatar}from"../../Avatar";import{mapHorisontalSpase,mapHorisontalSpaseIncreased,mapItemVerticalPadding}from"../../ListCanary";import{cnMixSpace}from"../../../mixs/MixSpace";import{cnCanary}from"../../../utils/bem";export var cnUserSelectItem=cnCanary("UserSelectItem");export var UserSelectItem=forwardRef(function(a,b){var c=a.className,d=a.label,e=a.subLabel,f=a.avatarUrl,g=a.active,h=a.hovered,i=a.size,j=a.indent,k=a.disable,l=a.multiple,m=_objectWithoutProperties(a,_excluded),n=useRef(null);return React.createElement("div",Object.assign({},m,{className:cnUserSelectItem({active:g,hovered:h,size:i,indent:j,disable:k},[cnMixSpace({pH:"increased"===j?mapHorisontalSpaseIncreased[i]:mapHorisontalSpase[i],pV:mapItemVerticalPadding[i]}),c]),"aria-selected":g,ref:b}),React.createElement("div",{className:cnUserSelectItem("AvatarContainer")},React.createElement(Avatar,{className:cnUserSelectItem("Avatar"),url:f,name:d}),l&&React.createElement(Transition,{in:g,unmountOnExit:!0,timeout:200,nodeRef:n},function(a){return React.createElement(IconCheck,{className:cnUserSelectItem("CheckIcon",{animate:a}),ref:n})}),!l&&g&&React.createElement(IconCheck,{className:cnUserSelectItem("CheckIcon")})),e?React.createElement("div",{className:cnUserSelectItem("Info")},React.createElement("div",null,d),React.createElement("div",{className:cnUserSelectItem("SubLabel",{disable:k})},e)):React.createElement("div",{className:cnUserSelectItem("Info")},d))});
2
+ //# sourceMappingURL=UserSelectItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSelectItem.js","names":["IconCheck","React","forwardRef","useRef","Transition","Avatar","mapHorisontalSpase","mapHorisontalSpaseIncreased","mapItemVerticalPadding","cnMixSpace","cnCanary","cnUserSelectItem","UserSelectItem","props","ref","className","label","subLabel","avatarUrl","active","hovered","size","indent","disable","multiple","otherProps","iconRef","pH","pV","animate"],"sources":["../../../../../../src/components/UserSelectCanary/UserSelectItem/UserSelectItem.tsx"],"sourcesContent":["import './UserSelectItem.css';\n\nimport { IconCheck } from '@consta/icons/IconCheck';\nimport React, { forwardRef, useRef } from 'react';\nimport { Transition } from 'react-transition-group';\n\nimport { Avatar } from '##/components/Avatar';\nimport {\n mapHorisontalSpase,\n mapHorisontalSpaseIncreased,\n mapItemVerticalPadding,\n} from '##/components/ListCanary';\nimport { cnMixSpace } from '##/mixs/MixSpace';\nimport { cnCanary } from '##/utils/bem';\nimport { PropsWithHTMLAttributes } from '##/utils/types/PropsWithHTMLAttributes';\n\ntype UserSelectItemProps = PropsWithHTMLAttributes<\n {\n label: string;\n active: boolean;\n hovered: boolean;\n size: 's' | 'm' | 'l';\n indent: 'normal' | 'increased';\n subLabel?: string;\n avatarUrl?: string;\n disable?: boolean;\n multiple?: boolean;\n },\n HTMLDivElement\n>;\n\nexport const cnUserSelectItem = cnCanary('UserSelectItem');\n\nexport const UserSelectItem = forwardRef<HTMLDivElement, UserSelectItemProps>(\n (props, ref) => {\n const {\n className,\n label,\n subLabel,\n avatarUrl,\n active,\n hovered,\n size,\n indent,\n disable,\n multiple,\n ...otherProps\n } = props;\n\n const iconRef = useRef<HTMLSpanElement>(null);\n\n return (\n <div\n {...otherProps}\n className={cnUserSelectItem(\n { active, hovered, size, indent, disable },\n [\n cnMixSpace({\n pH:\n indent === 'increased'\n ? mapHorisontalSpaseIncreased[size]\n : mapHorisontalSpase[size],\n pV: mapItemVerticalPadding[size],\n }),\n className,\n ],\n )}\n aria-selected={active}\n ref={ref}\n >\n <div className={cnUserSelectItem('AvatarContainer')}>\n <Avatar\n className={cnUserSelectItem('Avatar')}\n url={avatarUrl}\n name={label}\n />\n {multiple && (\n <Transition\n in={active}\n unmountOnExit\n timeout={200}\n nodeRef={iconRef}\n >\n {(animate) => (\n <IconCheck\n className={cnUserSelectItem('CheckIcon', { animate })}\n ref={iconRef}\n />\n )}\n </Transition>\n )}\n {!multiple && active && (\n <IconCheck className={cnUserSelectItem('CheckIcon')} />\n )}\n </div>\n {!subLabel ? (\n <div className={cnUserSelectItem('Info')}>{label}</div>\n ) : (\n <div className={cnUserSelectItem('Info')}>\n <div>{label}</div>\n <div className={cnUserSelectItem('SubLabel', { disable })}>\n {subLabel}\n </div>\n </div>\n )}\n </div>\n );\n },\n);\n"],"mappings":"wMAAA,6BAEA,OAASA,SAAT,KAA0B,yBAA1B,CACA,MAAOC,MAAP,EAAgBC,UAAhB,CAA4BC,MAA5B,KAA0C,OAA1C,CACA,OAASC,UAAT,KAA2B,wBAA3B,CAEA,OAASC,MAAT,oBACA,OACEC,kBADF,CAEEC,2BAFF,CAGEC,sBAHF,wBAKA,OAASC,UAAT,8BACA,OAASC,QAAT,0BAkBA,MAAO,IAAMC,iBAAgB,CAAGD,QAAQ,CAAC,gBAAD,CAAjC,CAEP,MAAO,IAAME,eAAc,CAAGV,UAAU,CACtC,SAACW,CAAD,CAAQC,CAAR,CAAgB,IAEZC,EAFY,CAaVF,CAbU,CAEZE,SAFY,CAGZC,CAHY,CAaVH,CAbU,CAGZG,KAHY,CAIZC,CAJY,CAaVJ,CAbU,CAIZI,QAJY,CAKZC,CALY,CAaVL,CAbU,CAKZK,SALY,CAMZC,CANY,CAaVN,CAbU,CAMZM,MANY,CAOZC,CAPY,CAaVP,CAbU,CAOZO,OAPY,CAQZC,CARY,CAaVR,CAbU,CAQZQ,IARY,CASZC,CATY,CAaVT,CAbU,CASZS,MATY,CAUZC,CAVY,CAaVV,CAbU,CAUZU,OAVY,CAWZC,CAXY,CAaVX,CAbU,CAWZW,QAXY,CAYTC,CAZS,0BAaVZ,CAbU,YAeRa,CAAO,CAAGvB,MAAM,CAAkB,IAAlB,CAfR,CAiBd,MACE,4CACMsB,CADN,EAEE,SAAS,CAAEd,gBAAgB,CACzB,CAAEQ,MAAM,CAANA,CAAF,CAAUC,OAAO,CAAPA,CAAV,CAAmBC,IAAI,CAAJA,CAAnB,CAAyBC,MAAM,CAANA,CAAzB,CAAiCC,OAAO,CAAPA,CAAjC,CADyB,CAEzB,CACEd,UAAU,CAAC,CACTkB,EAAE,CACW,WAAX,GAAAL,CAAM,CACFf,2BAA2B,CAACc,CAAD,CADzB,CAEFf,kBAAkB,CAACe,CAAD,CAJf,CAKTO,EAAE,CAAEpB,sBAAsB,CAACa,CAAD,CALjB,CAAD,CADZ,CAQEN,CARF,CAFyB,CAF7B,CAeE,gBAAeI,CAfjB,CAgBE,GAAG,CAAEL,CAhBP,GAkBE,2BAAK,SAAS,CAAEH,gBAAgB,CAAC,iBAAD,CAAhC,EACE,oBAAC,MAAD,EACE,SAAS,CAAEA,gBAAgB,CAAC,QAAD,CAD7B,CAEE,GAAG,CAAEO,CAFP,CAGE,IAAI,CAAEF,CAHR,EADF,CAMGQ,CAAQ,EACP,oBAAC,UAAD,EACE,GAAIL,CADN,CAEE,aAAa,GAFf,CAGE,OAAO,CAAE,GAHX,CAIE,OAAO,CAAEO,CAJX,EAMG,SAACG,CAAD,QACC,qBAAC,SAAD,EACE,SAAS,CAAElB,gBAAgB,CAAC,WAAD,CAAc,CAAEkB,OAAO,CAAPA,CAAF,CAAd,CAD7B,CAEE,GAAG,CAAEH,CAFP,EADD,CANH,CAPJ,CAqBG,CAACF,CAAD,EAAaL,CAAb,EACC,oBAAC,SAAD,EAAW,SAAS,CAAER,gBAAgB,CAAC,WAAD,CAAtC,EAtBJ,CAlBF,CA2CIM,CAAD,CAGC,2BAAK,SAAS,CAAEN,gBAAgB,CAAC,MAAD,CAAhC,EACE,+BAAMK,CAAN,CADF,CAEE,2BAAK,SAAS,CAAEL,gBAAgB,CAAC,UAAD,CAAa,CAAEY,OAAO,CAAPA,CAAF,CAAb,CAAhC,EACGN,CADH,CAFF,CAHD,CACC,2BAAK,SAAS,CAAEN,gBAAgB,CAAC,MAAD,CAAhC,EAA2CK,CAA3C,CA5CJ,CAuDH,CA1EqC,CAAjC"}
@@ -0,0 +1 @@
1
+ .canary--UserSelectValue_multiple{margin-bottom:calc(var(--space-s)/4);margin-right:var(--space-xs)}.canary--UserSelectValue_disabled{opacity:.6}.canary--UserSelectValue:not(.canary--UserSelectValue_multiple).User:hover{background-color:var(--color-control-bg-clear)}
@@ -0,0 +1,15 @@
1
+ import './UserSelectValue.css';
2
+ import React from 'react';
3
+ declare type UserValueProps = {
4
+ label: string;
5
+ size: 's' | 'm' | 'l';
6
+ subLabel?: string;
7
+ avatarUrl?: string;
8
+ handleRemove?: (e: React.SyntheticEvent) => void;
9
+ multiple?: boolean;
10
+ disabled?: boolean;
11
+ children?: never;
12
+ };
13
+ export declare const cnUserSelectValue: import("@bem-react/classname").ClassNameFormatter;
14
+ export declare const UserSelectValue: React.FC<UserValueProps>;
15
+ export {};
@@ -0,0 +1,2 @@
1
+ import"./UserSelectValue.css";import{IconClose}from"@consta/icons/IconClose";import React from"react";import{cnCanary}from"../../../utils/bem";import{User}from"../../User/User";export var cnUserSelectValue=cnCanary("UserSelectValue");export var UserSelectValue=function(a){var b=a.size,c=a.label,d=a.subLabel,e=a.disabled,f=a.handleRemove,g=a.avatarUrl,h=a.multiple;return React.createElement(User,{className:cnUserSelectValue({multiple:h,size:b,disabled:e}),avatarUrl:g,name:c,info:d,size:b,view:h?"ghost":"clear",iconRight:!e&&h?IconClose:void 0,onIconRightClick:!e&&h?f:void 0})};
2
+ //# sourceMappingURL=UserSelectValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSelectValue.js","names":["IconClose","React","cnCanary","User","cnUserSelectValue","UserSelectValue","props","size","label","subLabel","disabled","handleRemove","avatarUrl","multiple"],"sources":["../../../../../../src/components/UserSelectCanary/UserSelectValue/UserSelectValue.tsx"],"sourcesContent":["import './UserSelectValue.css';\n\nimport { IconClose } from '@consta/icons/IconClose';\nimport React from 'react';\n\nimport { cnCanary } from '../../../utils/bem';\nimport { User } from '../../User/User';\n\ntype UserValueProps = {\n label: string;\n size: 's' | 'm' | 'l';\n subLabel?: string;\n avatarUrl?: string;\n handleRemove?: (e: React.SyntheticEvent) => void;\n multiple?: boolean;\n disabled?: boolean;\n children?: never;\n};\n\nexport const cnUserSelectValue = cnCanary('UserSelectValue');\n\nexport const UserSelectValue: React.FC<UserValueProps> = (props) => {\n const { size, label, subLabel, disabled, handleRemove, avatarUrl, multiple } =\n props;\n\n return (\n <User\n className={cnUserSelectValue({ multiple, size, disabled })}\n avatarUrl={avatarUrl}\n name={label}\n info={subLabel}\n size={size}\n view={multiple ? 'ghost' : 'clear'}\n iconRight={!disabled && multiple ? IconClose : undefined}\n onIconRightClick={!disabled && multiple ? handleRemove : undefined}\n />\n );\n};\n"],"mappings":"AAAA,8BAEA,OAASA,SAAT,KAA0B,yBAA1B,CACA,MAAOC,MAAP,KAAkB,OAAlB,CAEA,OAASC,QAAT,0BACA,OAASC,IAAT,uBAaA,MAAO,IAAMC,kBAAiB,CAAGF,QAAQ,CAAC,iBAAD,CAAlC,CAEP,MAAO,IAAMG,gBAAyC,CAAG,SAACC,CAAD,CAAW,CAClE,GAAQC,EAAR,CACED,CADF,CAAQC,IAAR,CAAcC,CAAd,CACEF,CADF,CAAcE,KAAd,CAAqBC,CAArB,CACEH,CADF,CAAqBG,QAArB,CAA+BC,CAA/B,CACEJ,CADF,CAA+BI,QAA/B,CAAyCC,CAAzC,CACEL,CADF,CAAyCK,YAAzC,CAAuDC,CAAvD,CACEN,CADF,CAAuDM,SAAvD,CAAkEC,CAAlE,CACEP,CADF,CAAkEO,QAAlE,CAGA,MACE,qBAAC,IAAD,EACE,SAAS,CAAET,iBAAiB,CAAC,CAAES,QAAQ,CAARA,CAAF,CAAYN,IAAI,CAAJA,CAAZ,CAAkBG,QAAQ,CAARA,CAAlB,CAAD,CAD9B,CAEE,SAAS,CAAEE,CAFb,CAGE,IAAI,CAAEJ,CAHR,CAIE,IAAI,CAAEC,CAJR,CAKE,IAAI,CAAEF,CALR,CAME,IAAI,CAAEM,CAAQ,CAAG,OAAH,CAAa,OAN7B,CAOE,SAAS,CAAE,CAACH,CAAD,EAAaG,CAAb,CAAwBb,SAAxB,OAPb,CAQE,gBAAgB,CAAE,CAACU,CAAD,EAAaG,CAAb,CAAwBF,CAAxB,OARpB,EAWH,CAhBM"}
@@ -0,0 +1,191 @@
1
+ import { IconComponent } from '@consta/icons/Icon';
2
+ import React from 'react';
3
+ import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';
4
+ import { PropForm, PropSize, PropStatus, PropView, RenderItemProps } from '../SelectComponentsCanary/types';
5
+ export declare type DefaultItem = {
6
+ label: string;
7
+ id: string | number;
8
+ subLabel?: string;
9
+ avatarUrl?: string;
10
+ groupId?: string | number;
11
+ disabled?: boolean;
12
+ };
13
+ export declare type DefaultGroup = {
14
+ label: string;
15
+ id: string | number;
16
+ };
17
+ declare type RenderValueProps<ITEM> = {
18
+ item: ITEM;
19
+ handleRemove?: (e: React.SyntheticEvent) => void;
20
+ };
21
+ export declare type PropGetItemLabel<ITEM> = (item: ITEM) => string;
22
+ export declare type PropGetItemSubLabel<ITEM> = (item: ITEM) => string | undefined;
23
+ export declare type PropGetItemAvatarUrl<ITEM> = (item: ITEM) => string | undefined;
24
+ export declare type PropGetItemKey<ITEM> = (item: ITEM) => string | number;
25
+ export declare type PropGetItemGroupKey<ITEM> = (item: ITEM) => string | number | undefined;
26
+ export declare type PropGetItemDisabled<ITEM> = (item: ITEM) => boolean | undefined;
27
+ export declare type PropGetGroupKey<GROUP> = (group: GROUP) => string | number;
28
+ export declare type PropGetGroupLabel<GROUP> = (group: GROUP) => string;
29
+ declare type PropSearchFunction<ITEM> = (item: ITEM, searchValue: string) => boolean;
30
+ declare type PropOnChange<ITEM, MULTIPLE extends boolean> = (value: (MULTIPLE extends true ? ITEM[] : ITEM) | null, props: {
31
+ e: React.SyntheticEvent;
32
+ }) => void;
33
+ declare type PropValue<ITEM, MULTIPLE extends boolean> = (MULTIPLE extends true ? ITEM[] : ITEM) | null | undefined;
34
+ export declare type PropRenderItem<ITEM> = (props: RenderItemProps<ITEM>) => React.ReactElement | null;
35
+ export declare type PropRenderValue<ITEM> = (props: RenderValueProps<ITEM>) => React.ReactElement | null;
36
+ export declare type UserSelectProps<ITEM = DefaultItem, GROUP = DefaultGroup, MULTIPLE extends boolean = false> = PropsWithHTMLAttributesAndRef<{
37
+ disabled?: boolean;
38
+ form?: PropForm;
39
+ size?: Exclude<PropSize, 'xs'>;
40
+ view?: PropView;
41
+ dropdownForm?: 'default' | 'brick' | 'round';
42
+ placeholder?: string;
43
+ ariaLabel?: string;
44
+ dropdownClassName?: string;
45
+ status?: PropStatus;
46
+ dropdownRef?: React.RefObject<HTMLDivElement>;
47
+ name?: string;
48
+ items: ITEM[];
49
+ required?: boolean;
50
+ isLoading?: boolean;
51
+ renderItem?: PropRenderItem<ITEM>;
52
+ renderValue?: PropRenderValue<ITEM>;
53
+ onFocus?: React.FocusEventHandler<HTMLInputElement>;
54
+ onBlur?: React.FocusEventHandler<HTMLInputElement>;
55
+ onCreate?: (label: string, props: {
56
+ e: React.SyntheticEvent;
57
+ }) => void;
58
+ inputRef?: React.RefObject<HTMLInputElement>;
59
+ labelForNotFound?: string;
60
+ labelForCreate?: string;
61
+ labelForEmptyItems?: string;
62
+ searchFunction?: PropSearchFunction<ITEM>;
63
+ searchValue?: string;
64
+ multiple?: MULTIPLE;
65
+ value?: PropValue<ITEM, MULTIPLE>;
66
+ onChange: PropOnChange<ITEM, MULTIPLE>;
67
+ groups?: GROUP[];
68
+ getItemLabel?: PropGetItemLabel<ITEM>;
69
+ getItemSubLabel?: PropGetItemSubLabel<ITEM>;
70
+ getItemAvatarUrl?: PropGetItemAvatarUrl<ITEM>;
71
+ getItemKey?: PropGetItemKey<ITEM>;
72
+ getItemGroupKey?: PropGetItemGroupKey<ITEM>;
73
+ getItemDisabled?: PropGetItemDisabled<ITEM>;
74
+ getGroupLabel?: PropGetGroupLabel<GROUP>;
75
+ getGroupKey?: PropGetGroupKey<GROUP>;
76
+ label?: string;
77
+ labelIcon?: IconComponent;
78
+ caption?: string;
79
+ labelPosition?: 'top' | 'left';
80
+ virtualScroll?: boolean;
81
+ onScrollToBottom?: () => void;
82
+ onSearchValueChange?: (value: string) => void;
83
+ onDropdownOpen?: (isOpen: boolean) => void;
84
+ dropdownOpen?: boolean;
85
+ ignoreOutsideClicksRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;
86
+ }, HTMLDivElement> & (ITEM extends {
87
+ label: DefaultItem['label'];
88
+ } ? {} : {
89
+ getItemLabel: PropGetItemLabel<ITEM>;
90
+ }) & (ITEM extends {
91
+ id: DefaultItem['id'];
92
+ } ? {} : {
93
+ getItemKey: PropGetItemKey<ITEM>;
94
+ }) & (GROUP extends {
95
+ label: DefaultGroup['label'];
96
+ } ? {} : {
97
+ getGroupLabel: PropGetGroupLabel<GROUP>;
98
+ }) & (GROUP extends {
99
+ id: DefaultGroup['id'];
100
+ } ? {} : {
101
+ getGroupKey: PropGetGroupKey<GROUP>;
102
+ });
103
+ export declare type UserSelectComponent = <ITEM = DefaultItem, GROUP = DefaultGroup, MULTIPLE extends boolean = false>(props: UserSelectProps<ITEM, GROUP, MULTIPLE>) => React.ReactElement | null;
104
+ export declare const defaultGetItemKey: PropGetItemKey<DefaultItem>;
105
+ export declare const defaultGetItemLabel: PropGetItemLabel<DefaultItem>;
106
+ export declare const defaultGetItemSubLabel: PropGetItemSubLabel<DefaultItem>;
107
+ export declare const defaultGetItemAvatarUrl: PropGetItemAvatarUrl<DefaultItem>;
108
+ export declare const defaultGetItemGroupKey: PropGetItemGroupKey<DefaultItem>;
109
+ export declare const defaultGetItemDisabled: PropGetItemDisabled<DefaultItem>;
110
+ export declare const defaultGetGroupKey: PropGetGroupKey<DefaultGroup>;
111
+ export declare const defaultGetGroupLabel: PropGetGroupLabel<DefaultGroup>;
112
+ export declare const isMultipleParams: <ITEM, GROUP>(params: UserSelectProps<ITEM, GROUP, boolean>) => params is UserSelectProps<ITEM, GROUP, true>;
113
+ export declare const isNotMultipleParams: <ITEM, GROUP>(params: UserSelectProps<ITEM, GROUP, boolean>) => params is UserSelectProps<ITEM, GROUP, false>;
114
+ export declare function withDefaultGetters<ITEM = DefaultItem, GROUP = DefaultGroup, MULTIPLE extends boolean = false>(props: UserSelectProps<ITEM, GROUP, MULTIPLE>): {
115
+ disabled?: boolean | undefined;
116
+ form?: "default" | "round" | "defaultClear" | "defaultBrick" | "brick" | "brickDefault" | "brickClear" | "brickRound" | "roundClear" | "roundBrick" | "clearRound" | "clearDefault" | "clearBrick" | "clearClear" | undefined;
117
+ size?: "m" | "s" | "l" | undefined;
118
+ view?: "default" | "clear" | undefined;
119
+ dropdownForm?: "default" | "round" | "brick" | undefined;
120
+ placeholder?: string | undefined;
121
+ ariaLabel?: string | undefined;
122
+ dropdownClassName?: string | undefined;
123
+ status?: "alert" | "warning" | "success" | undefined;
124
+ dropdownRef?: React.RefObject<HTMLDivElement> | undefined;
125
+ name?: string | undefined;
126
+ items: ITEM[];
127
+ required?: boolean | undefined;
128
+ isLoading?: boolean | undefined;
129
+ renderItem?: PropRenderItem<ITEM> | undefined;
130
+ renderValue?: PropRenderValue<ITEM> | undefined;
131
+ onFocus?: React.FocusEventHandler<HTMLInputElement> | undefined;
132
+ onBlur?: React.FocusEventHandler<HTMLInputElement> | undefined;
133
+ onCreate?: ((label: string, props: {
134
+ e: React.SyntheticEvent<Element, Event>;
135
+ }) => void) | undefined;
136
+ inputRef?: React.RefObject<HTMLInputElement> | undefined;
137
+ labelForNotFound?: string | undefined;
138
+ labelForCreate?: string | undefined;
139
+ labelForEmptyItems?: string | undefined;
140
+ searchFunction?: PropSearchFunction<ITEM> | undefined;
141
+ searchValue?: string | undefined;
142
+ multiple?: MULTIPLE | undefined;
143
+ value?: PropValue<ITEM, MULTIPLE>;
144
+ onChange: PropOnChange<ITEM, MULTIPLE>;
145
+ groups?: GROUP[] | undefined;
146
+ getItemLabel?: PropGetItemLabel<ITEM> | undefined;
147
+ getItemSubLabel?: PropGetItemSubLabel<ITEM> | undefined;
148
+ getItemAvatarUrl?: PropGetItemAvatarUrl<ITEM> | undefined;
149
+ getItemKey?: PropGetItemKey<ITEM> | undefined;
150
+ getItemGroupKey?: PropGetItemGroupKey<ITEM> | undefined;
151
+ getItemDisabled?: PropGetItemDisabled<ITEM> | undefined;
152
+ getGroupLabel?: PropGetGroupLabel<GROUP> | undefined;
153
+ getGroupKey?: PropGetGroupKey<GROUP> | undefined;
154
+ label?: string | undefined;
155
+ labelIcon?: IconComponent<"span"> | undefined;
156
+ caption?: string | undefined;
157
+ labelPosition?: "left" | "top" | undefined;
158
+ virtualScroll?: boolean | undefined;
159
+ onScrollToBottom?: (() => void) | undefined;
160
+ onSearchValueChange?: ((value: string) => void) | undefined;
161
+ onDropdownOpen?: ((isOpen: boolean) => void) | undefined;
162
+ dropdownOpen?: boolean | undefined;
163
+ ignoreOutsideClicksRefs?: readonly React.RefObject<HTMLElement>[] | undefined;
164
+ } & Omit<React.HTMLAttributes<HTMLDivElement>, "css" | "placeholder" | "onFocus" | "onBlur" | "onChange" | "size" | "caption" | "form" | "label" | "view" | "status" | "name" | "disabled" | "value" | "multiple" | "required" | "inputRef" | "items" | "dropdownForm" | "ariaLabel" | "dropdownClassName" | "dropdownRef" | "isLoading" | "labelForEmptyItems" | "renderItem" | "renderValue" | "groups" | "getItemLabel" | "getItemKey" | "getItemGroupKey" | "getItemDisabled" | "getGroupLabel" | "getGroupKey" | "labelIcon" | "labelPosition" | "onScrollToBottom" | "labelForCreate" | "searchFunction" | "searchValue" | "onDropdownOpen" | "onSearchValueChange" | "dropdownOpen" | "ignoreOutsideClicksRefs" | "labelForNotFound" | "virtualScroll" | "onCreate" | "getItemSubLabel" | "getItemAvatarUrl"> & React.RefAttributes<HTMLDivElement> & (ITEM extends {
165
+ label: string;
166
+ } ? {} : {
167
+ getItemLabel: PropGetItemLabel<ITEM>;
168
+ }) & (ITEM extends {
169
+ id: string | number;
170
+ } ? {} : {
171
+ getItemKey: PropGetItemKey<ITEM>;
172
+ }) & (GROUP extends {
173
+ label: string;
174
+ } ? {} : {
175
+ getGroupLabel: PropGetGroupLabel<GROUP>;
176
+ }) & (GROUP extends {
177
+ id: string | number;
178
+ } ? {} : {
179
+ getGroupKey: PropGetGroupKey<GROUP>;
180
+ }) & {
181
+ getItemLabel: PropGetItemLabel<DefaultItem> | PropGetItemLabel<ITEM>;
182
+ getItemKey: PropGetItemKey<DefaultItem> | PropGetItemKey<ITEM>;
183
+ getItemGroupKey: PropGetItemGroupKey<DefaultItem> | PropGetItemGroupKey<ITEM>;
184
+ getItemDisabled: PropGetItemDisabled<DefaultItem> | PropGetItemDisabled<ITEM>;
185
+ getGroupLabel: PropGetGroupLabel<DefaultGroup> | PropGetGroupLabel<GROUP>;
186
+ getGroupKey: PropGetGroupKey<DefaultGroup> | PropGetGroupKey<GROUP>;
187
+ getItemSubLabel: PropGetItemSubLabel<DefaultItem> | PropGetItemSubLabel<ITEM>;
188
+ getItemAvatarUrl: PropGetItemAvatarUrl<DefaultItem> | PropGetItemAvatarUrl<ITEM>;
189
+ };
190
+ export declare const searchCompare: (searchValue: string, compare?: string) => boolean;
191
+ export {};
@@ -0,0 +1,2 @@
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}export var defaultGetItemKey=function(a){return a.id};export var defaultGetItemLabel=function(a){return a.label};export var defaultGetItemSubLabel=function(a){return a.subLabel};export var defaultGetItemAvatarUrl=function(a){return a.avatarUrl};export var defaultGetItemGroupKey=function(a){return a.groupId};export var defaultGetItemDisabled=function(a){return a.disabled};export var defaultGetGroupKey=function(a){return a.id};export var defaultGetGroupLabel=function(a){return a.label};export var isMultipleParams=function(a){return!!a.multiple};export var isNotMultipleParams=function(a){return!a.multiple};export function withDefaultGetters(a){return _objectSpread(_objectSpread({},a),{},{getItemLabel:a.getItemLabel||defaultGetItemLabel,getItemKey:a.getItemKey||defaultGetItemKey,getItemGroupKey:a.getItemGroupKey||defaultGetItemGroupKey,getItemDisabled:a.getItemDisabled||defaultGetItemDisabled,getGroupLabel:a.getGroupLabel||defaultGetGroupLabel,getGroupKey:a.getGroupKey||defaultGetGroupKey,getItemSubLabel:a.getItemSubLabel||defaultGetItemSubLabel,getItemAvatarUrl:a.getItemAvatarUrl||defaultGetItemAvatarUrl})}export var searchCompare=function(a,b){return!!b&&-1!==b.toLocaleLowerCase().indexOf(a.toLocaleLowerCase())};
2
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","names":["defaultGetItemKey","item","id","defaultGetItemLabel","label","defaultGetItemSubLabel","subLabel","defaultGetItemAvatarUrl","avatarUrl","defaultGetItemGroupKey","groupId","defaultGetItemDisabled","disabled","defaultGetGroupKey","group","defaultGetGroupLabel","isMultipleParams","params","multiple","isNotMultipleParams","withDefaultGetters","props","getItemLabel","getItemKey","getItemGroupKey","getItemDisabled","getGroupLabel","getGroupKey","getItemSubLabel","getItemAvatarUrl","searchCompare","searchValue","compare","toLocaleLowerCase","indexOf"],"sources":["../../../../../src/components/UserSelectCanary/helpers.ts"],"sourcesContent":["import { IconComponent } from '@consta/icons/Icon';\nimport React from 'react';\n\nimport { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes';\nimport {\n PropForm,\n PropSize,\n PropStatus,\n PropView,\n RenderItemProps,\n} from '../SelectComponentsCanary/types';\n\nexport type DefaultItem = {\n label: string;\n id: string | number;\n subLabel?: string;\n avatarUrl?: string;\n groupId?: string | number;\n disabled?: boolean;\n};\n\nexport type DefaultGroup = {\n label: string;\n id: string | number;\n};\n\ntype RenderValueProps<ITEM> = {\n item: ITEM;\n handleRemove?: (e: React.SyntheticEvent) => void;\n};\n\nexport type PropGetItemLabel<ITEM> = (item: ITEM) => string;\nexport type PropGetItemSubLabel<ITEM> = (item: ITEM) => string | undefined;\nexport type PropGetItemAvatarUrl<ITEM> = (item: ITEM) => string | undefined;\nexport type PropGetItemKey<ITEM> = (item: ITEM) => string | number;\nexport type PropGetItemGroupKey<ITEM> = (\n item: ITEM,\n) => string | number | undefined;\nexport type PropGetItemDisabled<ITEM> = (item: ITEM) => boolean | undefined;\nexport type PropGetGroupKey<GROUP> = (group: GROUP) => string | number;\nexport type PropGetGroupLabel<GROUP> = (group: GROUP) => string;\n\ntype PropSearchFunction<ITEM> = (item: ITEM, searchValue: string) => boolean;\ntype PropOnChange<ITEM, MULTIPLE extends boolean> = (\n value: (MULTIPLE extends true ? ITEM[] : ITEM) | null,\n props: {\n e: React.SyntheticEvent;\n },\n) => void;\ntype PropValue<ITEM, MULTIPLE extends boolean> =\n | (MULTIPLE extends true ? ITEM[] : ITEM)\n | null\n | undefined;\n\nexport type PropRenderItem<ITEM> = (\n props: RenderItemProps<ITEM>,\n) => React.ReactElement | null;\nexport type PropRenderValue<ITEM> = (\n props: RenderValueProps<ITEM>,\n) => React.ReactElement | null;\n\nexport type UserSelectProps<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n> = PropsWithHTMLAttributesAndRef<\n {\n disabled?: boolean;\n form?: PropForm;\n size?: Exclude<PropSize, 'xs'>;\n view?: PropView;\n dropdownForm?: 'default' | 'brick' | 'round';\n placeholder?: string;\n ariaLabel?: string;\n dropdownClassName?: string;\n status?: PropStatus;\n dropdownRef?: React.RefObject<HTMLDivElement>;\n name?: string;\n items: ITEM[];\n required?: boolean;\n isLoading?: boolean;\n renderItem?: PropRenderItem<ITEM>;\n renderValue?: PropRenderValue<ITEM>;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n onCreate?: (label: string, props: { e: React.SyntheticEvent }) => void;\n inputRef?: React.RefObject<HTMLInputElement>;\n labelForNotFound?: string;\n labelForCreate?: string;\n labelForEmptyItems?: string;\n searchFunction?: PropSearchFunction<ITEM>;\n searchValue?: string;\n multiple?: MULTIPLE;\n value?: PropValue<ITEM, MULTIPLE>;\n onChange: PropOnChange<ITEM, MULTIPLE>;\n groups?: GROUP[];\n getItemLabel?: PropGetItemLabel<ITEM>;\n getItemSubLabel?: PropGetItemSubLabel<ITEM>;\n getItemAvatarUrl?: PropGetItemAvatarUrl<ITEM>;\n getItemKey?: PropGetItemKey<ITEM>;\n getItemGroupKey?: PropGetItemGroupKey<ITEM>;\n getItemDisabled?: PropGetItemDisabled<ITEM>;\n getGroupLabel?: PropGetGroupLabel<GROUP>;\n getGroupKey?: PropGetGroupKey<GROUP>;\n label?: string;\n labelIcon?: IconComponent;\n caption?: string;\n labelPosition?: 'top' | 'left';\n virtualScroll?: boolean;\n onScrollToBottom?: () => void;\n onSearchValueChange?: (value: string) => void;\n onDropdownOpen?: (isOpen: boolean) => void;\n dropdownOpen?: boolean;\n ignoreOutsideClicksRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;\n },\n HTMLDivElement\n> &\n (ITEM extends { label: DefaultItem['label'] }\n ? {}\n : { getItemLabel: PropGetItemLabel<ITEM> }) &\n (ITEM extends { id: DefaultItem['id'] }\n ? {}\n : { getItemKey: PropGetItemKey<ITEM> }) &\n (GROUP extends { label: DefaultGroup['label'] }\n ? {}\n : { getGroupLabel: PropGetGroupLabel<GROUP> }) &\n (GROUP extends { id: DefaultGroup['id'] }\n ? {}\n : { getGroupKey: PropGetGroupKey<GROUP> });\n\nexport type UserSelectComponent = <\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(\n props: UserSelectProps<ITEM, GROUP, MULTIPLE>,\n) => React.ReactElement | null;\n\nexport const defaultGetItemKey: PropGetItemKey<DefaultItem> = (item) => item.id;\nexport const defaultGetItemLabel: PropGetItemLabel<DefaultItem> = (item) =>\n item.label;\nexport const defaultGetItemSubLabel: PropGetItemSubLabel<DefaultItem> = (\n item,\n) => item.subLabel;\nexport const defaultGetItemAvatarUrl: PropGetItemAvatarUrl<DefaultItem> = (\n item,\n) => item.avatarUrl;\nexport const defaultGetItemGroupKey: PropGetItemGroupKey<DefaultItem> = (\n item,\n) => item.groupId;\nexport const defaultGetItemDisabled: PropGetItemDisabled<DefaultItem> = (\n item,\n) => item.disabled;\n\nexport const defaultGetGroupKey: PropGetGroupKey<DefaultGroup> = (group) =>\n group.id;\nexport const defaultGetGroupLabel: PropGetGroupLabel<DefaultGroup> = (group) =>\n group.label;\n\nexport const isMultipleParams = <ITEM, GROUP>(\n params: UserSelectProps<ITEM, GROUP, boolean>,\n): params is UserSelectProps<ITEM, GROUP, true> => {\n return !!params.multiple;\n};\n\nexport const isNotMultipleParams = <ITEM, GROUP>(\n params: UserSelectProps<ITEM, GROUP, boolean>,\n): params is UserSelectProps<ITEM, GROUP, false> => {\n return !params.multiple;\n};\n\nexport function withDefaultGetters<\n ITEM = DefaultItem,\n GROUP = DefaultGroup,\n MULTIPLE extends boolean = false,\n>(props: UserSelectProps<ITEM, GROUP, MULTIPLE>) {\n return {\n ...props,\n getItemLabel: props.getItemLabel || defaultGetItemLabel,\n getItemKey: props.getItemKey || defaultGetItemKey,\n getItemGroupKey: props.getItemGroupKey || defaultGetItemGroupKey,\n getItemDisabled: props.getItemDisabled || defaultGetItemDisabled,\n getGroupLabel: props.getGroupLabel || defaultGetGroupLabel,\n getGroupKey: props.getGroupKey || defaultGetGroupKey,\n getItemSubLabel: props.getItemSubLabel || defaultGetItemSubLabel,\n getItemAvatarUrl: props.getItemAvatarUrl || defaultGetItemAvatarUrl,\n };\n}\n\nexport const searchCompare = (\n searchValue: string,\n compare?: string,\n): boolean => {\n if (!compare) {\n return false;\n }\n\n return (\n compare.toLocaleLowerCase().indexOf(searchValue.toLocaleLowerCase()) !== -1\n );\n};\n"],"mappings":"qqBA0IA,MAAO,IAAMA,kBAA8C,CAAG,SAACC,CAAD,QAAUA,EAAI,CAACC,EAAf,CAAvD,CACP,MAAO,IAAMC,oBAAkD,CAAG,SAACF,CAAD,QAChEA,EAAI,CAACG,KAD2D,CAA3D,CAEP,MAAO,IAAMC,uBAAwD,CAAG,SACtEJ,CADsE,QAEnEA,EAAI,CAACK,QAF8D,CAAjE,CAGP,MAAO,IAAMC,wBAA0D,CAAG,SACxEN,CADwE,QAErEA,EAAI,CAACO,SAFgE,CAAnE,CAGP,MAAO,IAAMC,uBAAwD,CAAG,SACtER,CADsE,QAEnEA,EAAI,CAACS,OAF8D,CAAjE,CAGP,MAAO,IAAMC,uBAAwD,CAAG,SACtEV,CADsE,QAEnEA,EAAI,CAACW,QAF8D,CAAjE,CAIP,MAAO,IAAMC,mBAAiD,CAAG,SAACC,CAAD,QAC/DA,EAAK,CAACZ,EADyD,CAA1D,CAEP,MAAO,IAAMa,qBAAqD,CAAG,SAACD,CAAD,QACnEA,EAAK,CAACV,KAD6D,CAA9D,CAGP,MAAO,IAAMY,iBAAgB,CAAG,SAC9BC,CAD8B,CAEmB,CACjD,MAAO,CAAC,CAACA,CAAM,CAACC,QACjB,CAJM,CAMP,MAAO,IAAMC,oBAAmB,CAAG,SACjCF,CADiC,CAEiB,CAClD,MAAO,CAACA,CAAM,CAACC,QAChB,CAJM,CAMP,MAAO,SAASE,mBAAT,CAILC,CAJK,CAI0C,CAC/C,sCACKA,CADL,MAEEC,YAAY,CAAED,CAAK,CAACC,YAAN,EAAsBnB,mBAFtC,CAGEoB,UAAU,CAAEF,CAAK,CAACE,UAAN,EAAoBvB,iBAHlC,CAIEwB,eAAe,CAAEH,CAAK,CAACG,eAAN,EAAyBf,sBAJ5C,CAKEgB,eAAe,CAAEJ,CAAK,CAACI,eAAN,EAAyBd,sBAL5C,CAMEe,aAAa,CAAEL,CAAK,CAACK,aAAN,EAAuBX,oBANxC,CAOEY,WAAW,CAAEN,CAAK,CAACM,WAAN,EAAqBd,kBAPpC,CAQEe,eAAe,CAAEP,CAAK,CAACO,eAAN,EAAyBvB,sBAR5C,CASEwB,gBAAgB,CAAER,CAAK,CAACQ,gBAAN,EAA0BtB,uBAT9C,EAWD,CAED,MAAO,IAAMuB,cAAa,CAAG,SAC3BC,CAD2B,CAE3BC,CAF2B,CAGf,SACPA,CADO,EAM+D,CAAC,CAA1E,GAAAA,CAAO,CAACC,iBAAR,GAA4BC,OAA5B,CAAoCH,CAAW,CAACE,iBAAZ,EAApC,CAEH,CAXM"}
@@ -0,0 +1 @@
1
+ export * from './UserSelectCanary';
@@ -0,0 +1,2 @@
1
+ export*from"./UserSelectCanary";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/UserSelectCanary/index.ts"],"sourcesContent":["export * from './UserSelectCanary';\n"],"mappings":"AAAA"}
@@ -4,6 +4,7 @@ declare type Flag = [
4
4
  on: () => void;
5
5
  off: () => void;
6
6
  toggle: () => void;
7
+ set: (flag: boolean) => void;
7
8
  /**
8
9
  * @deprecated since version 4.6.3 toggle()
9
10
  */
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useCallback,useState}from"react";var not=function(a){return!a};export var useFlag=function(){var a=!!(0<arguments.length&&arguments[0]!==void 0)&&arguments[0],b=useState(a),c=_slicedToArray(b,2),d=c[0],e=c[1],f=useCallback(function(){return e(!0)},[]),g=useCallback(function(){return e(!1)},[]),h=useCallback(function(){return e(not)},[]),i=useCallback(function(){return e(not)},[]);return[d,{on:f,off:g,toggle:h,toogle:i}]};
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import{useCallback,useState}from"react";var not=function(a){return!a};export var useFlag=function(){var a=!!(0<arguments.length&&arguments[0]!==void 0)&&arguments[0],b=useState(a),c=_slicedToArray(b,2),d=c[0],e=c[1],f=useCallback(function(){return e(!0)},[]),g=useCallback(function(){return e(!1)},[]),h=useCallback(function(){return e(not)},[]),i=useCallback(function(){return e(not)},[]);return[d,{on:f,off:g,toggle:h,set:e,toogle:i}]};
2
2
  //# sourceMappingURL=useFlag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFlag.js","names":["useCallback","useState","not","state","useFlag","initial","setState","on","off","toggle","toogle"],"sources":["../../../../../src/hooks/useFlag/useFlag.ts"],"sourcesContent":["import { useCallback, useState } from 'react';\n\nconst not = (state: boolean) => !state;\n\ntype Flag = [\n boolean,\n {\n on: () => void;\n off: () => void;\n toggle: () => void;\n /**\n * @deprecated since version 4.6.3 toggle()\n */\n toogle: () => void;\n },\n];\n\nexport const useFlag = (initial = false): Flag => {\n const [state, setState] = useState(initial);\n\n const on = useCallback(() => setState(true), []);\n const off = useCallback(() => setState(false), []);\n const toggle = useCallback(() => setState(not), []);\n const toogle = useCallback(() => setState(not), []);\n\n return [\n state,\n {\n on,\n off,\n toggle,\n toogle,\n },\n ];\n};\n"],"mappings":"iEAAA,OAASA,WAAT,CAAsBC,QAAtB,KAAsC,OAAtC,CAEA,GAAMC,IAAG,CAAG,SAACC,CAAD,QAAoB,CAACA,CAArB,CAAZ,CAeA,MAAO,IAAMC,QAAO,CAAG,UAA2B,IAA1BC,EAA0B,+DACtBJ,QAAQ,CAACI,CAAD,CADc,uBACzCF,CADyC,MAClCG,CADkC,MAG1CC,CAAE,CAAGP,WAAW,CAAC,iBAAMM,EAAQ,IAAd,CAAD,CAAuB,EAAvB,CAH0B,CAI1CE,CAAG,CAAGR,WAAW,CAAC,iBAAMM,EAAQ,IAAd,CAAD,CAAwB,EAAxB,CAJyB,CAK1CG,CAAM,CAAGT,WAAW,CAAC,iBAAMM,EAAQ,CAACJ,GAAD,CAAd,CAAD,CAAsB,EAAtB,CALsB,CAM1CQ,CAAM,CAAGV,WAAW,CAAC,iBAAMM,EAAQ,CAACJ,GAAD,CAAd,CAAD,CAAsB,EAAtB,CANsB,CAQhD,MAAO,CACLC,CADK,CAEL,CACEI,EAAE,CAAFA,CADF,CAEEC,GAAG,CAAHA,CAFF,CAGEC,MAAM,CAANA,CAHF,CAIEC,MAAM,CAANA,CAJF,CAFK,CASR,CAjBM"}
1
+ {"version":3,"file":"useFlag.js","names":["useCallback","useState","not","state","useFlag","initial","setState","on","off","toggle","toogle","set"],"sources":["../../../../../src/hooks/useFlag/useFlag.ts"],"sourcesContent":["import { useCallback, useState } from 'react';\n\nconst not = (state: boolean) => !state;\n\ntype Flag = [\n boolean,\n {\n on: () => void;\n off: () => void;\n toggle: () => void;\n set: (flag: boolean) => void;\n /**\n * @deprecated since version 4.6.3 toggle()\n */\n toogle: () => void;\n },\n];\n\nexport const useFlag = (initial = false): Flag => {\n const [state, setState] = useState(initial);\n\n const on = useCallback(() => setState(true), []);\n const off = useCallback(() => setState(false), []);\n const toggle = useCallback(() => setState(not), []);\n const toogle = useCallback(() => setState(not), []);\n\n return [\n state,\n {\n on,\n off,\n toggle,\n set: setState,\n toogle,\n },\n ];\n};\n"],"mappings":"iEAAA,OAASA,WAAT,CAAsBC,QAAtB,KAAsC,OAAtC,CAEA,GAAMC,IAAG,CAAG,SAACC,CAAD,QAAoB,CAACA,CAArB,CAAZ,CAgBA,MAAO,IAAMC,QAAO,CAAG,UAA2B,IAA1BC,EAA0B,+DACtBJ,QAAQ,CAACI,CAAD,CADc,uBACzCF,CADyC,MAClCG,CADkC,MAG1CC,CAAE,CAAGP,WAAW,CAAC,iBAAMM,EAAQ,IAAd,CAAD,CAAuB,EAAvB,CAH0B,CAI1CE,CAAG,CAAGR,WAAW,CAAC,iBAAMM,EAAQ,IAAd,CAAD,CAAwB,EAAxB,CAJyB,CAK1CG,CAAM,CAAGT,WAAW,CAAC,iBAAMM,EAAQ,CAACJ,GAAD,CAAd,CAAD,CAAsB,EAAtB,CALsB,CAM1CQ,CAAM,CAAGV,WAAW,CAAC,iBAAMM,EAAQ,CAACJ,GAAD,CAAd,CAAD,CAAsB,EAAtB,CANsB,CAQhD,MAAO,CACLC,CADK,CAEL,CACEI,EAAE,CAAFA,CADF,CAEEC,GAAG,CAAHA,CAFF,CAGEC,MAAM,CAANA,CAHF,CAIEE,GAAG,CAAEL,CAJP,CAKEI,MAAM,CAANA,CALF,CAFK,CAUR,CAlBM"}
@@ -1,2 +1,3 @@
1
1
  /// <reference types="react" />
2
- export declare function useForkRef<T>(refs: (React.Ref<T> | undefined)[]): React.RefCallback<T> | null;
2
+ export declare const forkRef: <T>(refs: (import("react").Ref<T> | undefined)[]) => ((instance: T | null) => void) | null;
3
+ export declare const useForkRef: <T>(refs: (import("react").Ref<T> | undefined)[]) => ((instance: T | null) => void) | null;
@@ -1,2 +1,2 @@
1
- function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useMemo}from"react";import{setRef}from"../../utils/setRef";export function useForkRef(a){return useMemo(function(){return 1>a.length?null:function(b){var c,d=_createForOfIteratorHelper(a);try{for(d.s();!(c=d.n()).done;){var e=c.value;setRef(e,b)}}catch(a){d.e(a)}finally{d.f()}}},[a])}
1
+ function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useMemo}from"react";import{setRef}from"../../utils/setRef";export var forkRef=function(a){return a.length?function(b){var c,d=_createForOfIteratorHelper(a);try{for(d.s();!(c=d.n()).done;){var e=c.value;setRef(e,b)}}catch(a){d.e(a)}finally{d.f()}}:null};export var useForkRef=function(a){return useMemo(function(){return forkRef(a)},[a])};
2
2
  //# sourceMappingURL=useForkRef.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useForkRef.js","names":["useMemo","setRef","useForkRef","refs","length","refValue","ref"],"sources":["../../../../../src/hooks/useForkRef/useForkRef.tsx"],"sourcesContent":["import { useMemo } from 'react';\n\nimport { setRef } from '##/utils/setRef';\n\nexport function useForkRef<T>(\n refs: (React.Ref<T> | undefined)[],\n): React.RefCallback<T> | null {\n return useMemo(() => {\n if (refs.length < 1) {\n return null;\n }\n return (refValue) => {\n for (const ref of refs) {\n setRef(ref as React.MutableRefObject<T>, refValue);\n }\n };\n }, [refs]);\n}\n"],"mappings":"qpCAAA,OAASA,OAAT,KAAwB,OAAxB,CAEA,OAASC,MAAT,0BAEA,MAAO,SAASC,WAAT,CACLC,CADK,CAEwB,CAC7B,MAAOH,QAAO,CAAC,UAAM,OACD,EAAd,CAAAG,CAAI,CAACC,MADU,CAEV,IAFU,CAIZ,SAACC,CAAD,CAAc,oCACDF,CADC,MACnB,2BAAwB,IAAbG,EAAa,SACtBL,MAAM,CAACK,CAAD,CAAmCD,CAAnC,CACP,CAHkB,+BAIpB,CACF,CATa,CASX,CAACF,CAAD,CATW,CAUf"}
1
+ {"version":3,"file":"useForkRef.js","names":["useMemo","setRef","forkRef","refs","length","refValue","ref","useForkRef"],"sources":["../../../../../src/hooks/useForkRef/useForkRef.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport { setRef } from '##/utils/setRef';\n\nexport const forkRef = <T>(\n refs: (React.Ref<T> | undefined)[],\n): React.RefCallback<T> | null => {\n if (!refs.length) {\n return null;\n }\n return (refValue) => {\n for (const ref of refs) {\n setRef(ref as React.MutableRefObject<T>, refValue);\n }\n };\n};\n\nexport const useForkRef = <T>(refs: (React.Ref<T> | undefined)[]) =>\n useMemo(() => forkRef(refs), [refs]);\n"],"mappings":"qpCAAA,OAASA,OAAT,KAAwB,OAAxB,CAEA,OAASC,MAAT,0BAEA,MAAO,IAAMC,QAAO,CAAG,SACrBC,CADqB,CAEW,OAC3BA,EAAI,CAACC,MADsB,CAIzB,SAACC,CAAD,CAAc,oCACDF,CADC,MACnB,2BAAwB,IAAbG,EAAa,SACtBL,MAAM,CAACK,CAAD,CAAmCD,CAAnC,CACP,CAHkB,+BAIpB,CAR+B,CAEvB,IAOV,CAXM,CAaP,MAAO,IAAME,WAAU,CAAG,SAAIJ,CAAJ,QACxBH,QAAO,CAAC,iBAAME,QAAO,CAACC,CAAD,CAAb,CAAD,CAAsB,CAACA,CAAD,CAAtB,CADiB,CAAnB"}