@ultraviolet/ui 2.0.0-beta.8 → 2.0.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 (330) hide show
  1. package/dist/components/Alert/index.cjs +5 -5
  2. package/dist/components/Avatar/index.cjs +117 -37
  3. package/dist/components/Avatar/index.d.ts +3 -43
  4. package/dist/components/Avatar/index.js +119 -39
  5. package/dist/components/{AvatarV2 → Avatar}/types.d.ts +1 -1
  6. package/dist/components/Badge/index.cjs +3 -3
  7. package/dist/components/Banner/index.cjs +3 -3
  8. package/dist/components/BarChart/index.cjs +2 -2
  9. package/dist/components/BarStack/index.cjs +2 -2
  10. package/dist/components/Bullet/index.cjs +2 -6
  11. package/dist/components/Bullet/index.d.ts +1 -3
  12. package/dist/components/Bullet/index.js +3 -7
  13. package/dist/components/Button/index.cjs +16 -10
  14. package/dist/components/Button/index.d.ts +6 -0
  15. package/dist/components/Button/index.js +11 -5
  16. package/dist/components/Card/index.cjs +6 -7
  17. package/dist/components/Card/index.d.ts +0 -4
  18. package/dist/components/Card/index.js +4 -5
  19. package/dist/components/Carousel/index.cjs +5 -5
  20. package/dist/components/Checkbox/index.cjs +41 -59
  21. package/dist/components/Checkbox/index.d.ts +0 -8
  22. package/dist/components/Checkbox/index.js +27 -45
  23. package/dist/components/CheckboxGroup/index.cjs +9 -8
  24. package/dist/components/CheckboxGroup/index.d.ts +3 -3
  25. package/dist/components/CheckboxGroup/index.js +5 -4
  26. package/dist/components/Chip/ChipContext.cjs +2 -2
  27. package/dist/components/Chip/ChipIcon.cjs +2 -2
  28. package/dist/components/Chip/index.cjs +10 -10
  29. package/dist/components/Chip/index.d.ts +2 -2
  30. package/dist/components/Chip/index.js +1 -1
  31. package/dist/components/CopyButton/index.cjs +1 -2
  32. package/dist/components/CopyButton/index.d.ts +1 -5
  33. package/dist/components/CopyButton/index.js +1 -2
  34. package/dist/components/DateInput/Context.cjs +2 -2
  35. package/dist/components/DateInput/components/CalendarContent.cjs +2 -2
  36. package/dist/components/DateInput/components/CalendarDaily.cjs +5 -5
  37. package/dist/components/DateInput/components/CalendarDaily.js +2 -2
  38. package/dist/components/DateInput/components/CalendarMonthly.cjs +3 -3
  39. package/dist/components/DateInput/components/Popup.cjs +3 -3
  40. package/dist/components/DateInput/helpers.cjs +20 -0
  41. package/dist/components/DateInput/helpers.d.ts +2 -0
  42. package/dist/components/DateInput/helpers.js +20 -0
  43. package/dist/components/DateInput/index.cjs +42 -31
  44. package/dist/components/DateInput/index.js +30 -19
  45. package/dist/components/Dialog/Context.cjs +3 -3
  46. package/dist/components/Dialog/index.cjs +4 -4
  47. package/dist/components/Dialog/index.d.ts +9 -4
  48. package/dist/components/Dialog/index.js +2 -2
  49. package/dist/components/Drawer/index.cjs +44 -22
  50. package/dist/components/Drawer/index.d.ts +14 -2
  51. package/dist/components/Drawer/index.js +44 -22
  52. package/dist/components/Expandable/index.cjs +18 -9
  53. package/dist/components/Expandable/index.js +12 -3
  54. package/dist/components/ExpandableCard/index.cjs +14 -14
  55. package/dist/components/GlobalAlert/index.cjs +2 -2
  56. package/dist/components/InfiniteScroll/index.cjs +7 -7
  57. package/dist/components/LineChart/CustomLegend.cjs +9 -9
  58. package/dist/components/LineChart/CustomLegend.js +9 -9
  59. package/dist/components/LineChart/index.cjs +3 -3
  60. package/dist/components/Link/index.cjs +20 -36
  61. package/dist/components/Link/index.d.ts +2 -11
  62. package/dist/components/Link/index.js +14 -30
  63. package/dist/components/List/Cell.cjs +4 -17
  64. package/dist/components/List/Cell.d.ts +0 -6
  65. package/dist/components/List/Cell.js +2 -15
  66. package/dist/components/List/HeaderCell.cjs +3 -3
  67. package/dist/components/List/HeaderCell.js +4 -4
  68. package/dist/components/List/HeaderRow.cjs +2 -4
  69. package/dist/components/List/HeaderRow.js +2 -4
  70. package/dist/components/List/ListContext.cjs +23 -23
  71. package/dist/components/List/Row.cjs +55 -34
  72. package/dist/components/List/Row.d.ts +8 -1
  73. package/dist/components/List/Row.js +43 -22
  74. package/dist/components/List/SelectBar.cjs +2 -2
  75. package/dist/components/List/index.cjs +12 -11
  76. package/dist/components/List/index.d.ts +3 -1
  77. package/dist/components/List/index.js +6 -5
  78. package/dist/components/Menu/MenuContent.cjs +222 -0
  79. package/dist/components/{MenuV2 → Menu}/MenuContent.d.ts +3 -4
  80. package/dist/components/Menu/MenuContent.js +220 -0
  81. package/dist/components/Menu/MenuProvider.cjs +42 -0
  82. package/dist/components/Menu/MenuProvider.d.ts +24 -0
  83. package/dist/components/Menu/MenuProvider.js +42 -0
  84. package/dist/components/Menu/components/Group.cjs +34 -0
  85. package/dist/components/{MenuV2 → Menu}/components/Group.d.ts +1 -1
  86. package/dist/components/Menu/components/Group.js +32 -0
  87. package/dist/components/Menu/components/Item.cjs +172 -0
  88. package/dist/components/{MenuV2 → Menu}/components/Item.d.ts +4 -0
  89. package/dist/components/Menu/components/Item.js +171 -0
  90. package/dist/components/{MenuV2 → Menu}/constants.cjs +0 -1
  91. package/dist/components/{MenuV2 → Menu}/constants.js +0 -1
  92. package/dist/components/Menu/helpers.cjs +48 -0
  93. package/dist/components/{MenuV2 → Menu}/helpers.d.ts +2 -1
  94. package/dist/components/Menu/helpers.js +48 -0
  95. package/dist/components/Menu/index.cjs +13 -109
  96. package/dist/components/Menu/index.d.ts +62 -35
  97. package/dist/components/Menu/index.js +14 -108
  98. package/dist/components/{MenuV2 → Menu}/types.d.ts +3 -11
  99. package/dist/components/Modal/ModalContent.cjs +2 -8
  100. package/dist/components/Modal/ModalContent.d.ts +1 -2
  101. package/dist/components/Modal/ModalContent.js +2 -8
  102. package/dist/components/Modal/ModalProvider.cjs +8 -8
  103. package/dist/components/Modal/components/Dialog.cjs +21 -23
  104. package/dist/components/Modal/components/Dialog.d.ts +1 -1
  105. package/dist/components/Modal/components/Dialog.js +6 -8
  106. package/dist/components/Modal/components/Disclosure.cjs +10 -13
  107. package/dist/components/Modal/components/Disclosure.d.ts +1 -1
  108. package/dist/components/Modal/components/Disclosure.js +6 -9
  109. package/dist/components/Modal/index.cjs +13 -15
  110. package/dist/components/Modal/index.d.ts +1 -18
  111. package/dist/components/Modal/index.js +7 -9
  112. package/dist/components/Modal/types.d.ts +2 -16
  113. package/dist/components/NumberInput/index.cjs +194 -194
  114. package/dist/components/NumberInput/index.d.ts +30 -33
  115. package/dist/components/NumberInput/index.js +190 -190
  116. package/dist/components/Pagination/PaginationButtons.cjs +5 -5
  117. package/dist/components/Pagination/PerPage.cjs +3 -3
  118. package/dist/components/Pagination/PerPage.js +3 -3
  119. package/dist/components/Pagination/index.cjs +4 -4
  120. package/dist/components/PieChart/index.cjs +5 -5
  121. package/dist/components/Popover/index.cjs +10 -10
  122. package/dist/components/Popover/index.d.ts +4 -2
  123. package/dist/components/Popover/index.js +2 -2
  124. package/dist/components/Popup/helpers.cjs +41 -1
  125. package/dist/components/Popup/helpers.d.ts +1 -1
  126. package/dist/components/Popup/helpers.js +41 -1
  127. package/dist/components/Popup/index.cjs +34 -38
  128. package/dist/components/Popup/index.js +8 -12
  129. package/dist/components/Radio/index.cjs +3 -3
  130. package/dist/components/Radio/index.d.ts +9 -9
  131. package/dist/components/RadioGroup/index.cjs +6 -7
  132. package/dist/components/RadioGroup/index.d.ts +3 -8
  133. package/dist/components/RadioGroup/index.js +2 -3
  134. package/dist/components/Row/index.cjs +18 -6
  135. package/dist/components/Row/index.d.ts +5 -5
  136. package/dist/components/Row/index.js +18 -6
  137. package/dist/components/SearchInput/Key.cjs +2 -2
  138. package/dist/components/SearchInput/index.cjs +26 -26
  139. package/dist/components/SearchInput/index.d.ts +1 -1
  140. package/dist/components/SearchInput/index.js +7 -7
  141. package/dist/components/SearchInput/types.d.ts +3 -3
  142. package/dist/components/SelectInput/Dropdown.cjs +477 -0
  143. package/dist/components/SelectInput/Dropdown.js +475 -0
  144. package/dist/components/SelectInput/DropdownOption.cjs +91 -0
  145. package/dist/components/SelectInput/DropdownOption.js +89 -0
  146. package/dist/components/SelectInput/SearchBarDropdown.cjs +129 -0
  147. package/dist/components/SelectInput/SearchBarDropdown.js +127 -0
  148. package/dist/components/SelectInput/SelectBar.cjs +364 -0
  149. package/dist/components/SelectInput/SelectBar.js +362 -0
  150. package/dist/components/{SelectInputV2 → SelectInput}/SelectInputProvider.cjs +22 -22
  151. package/dist/components/{SelectInputV2 → SelectInput}/SelectInputProvider.d.ts +2 -1
  152. package/dist/components/{SelectInputV2 → SelectInput}/SelectInputProvider.js +8 -8
  153. package/dist/components/SelectInput/index.cjs +68 -496
  154. package/dist/components/SelectInput/index.d.ts +119 -63
  155. package/dist/components/SelectInput/index.js +68 -494
  156. package/dist/components/SelectableCard/index.cjs +13 -13
  157. package/dist/components/SelectableCardGroup/index.cjs +5 -5
  158. package/dist/components/SelectableCardGroup/index.d.ts +1 -1
  159. package/dist/components/SelectableCardGroup/index.js +1 -1
  160. package/dist/components/SelectableCardOptionGroup/Provider.cjs +3 -3
  161. package/dist/components/SelectableCardOptionGroup/Provider.d.ts +2 -2
  162. package/dist/components/SelectableCardOptionGroup/components/Option.cjs +11 -11
  163. package/dist/components/SelectableCardOptionGroup/components/Option.d.ts +5 -5
  164. package/dist/components/SelectableCardOptionGroup/components/Option.js +9 -9
  165. package/dist/components/SelectableCardOptionGroup/index.cjs +2 -2
  166. package/dist/components/SelectableCardOptionGroup/index.d.ts +3 -3
  167. package/dist/components/Separator/index.cjs +8 -9
  168. package/dist/components/Separator/index.d.ts +1 -5
  169. package/dist/components/Separator/index.js +8 -9
  170. package/dist/components/Skeleton/Block.cjs +2 -2
  171. package/dist/components/Skeleton/Slider.cjs +3 -3
  172. package/dist/components/Skeleton/Slider.js +3 -3
  173. package/dist/components/Slider/components/DoubleSlider.cjs +20 -20
  174. package/dist/components/Slider/components/DoubleSlider.js +7 -7
  175. package/dist/components/Slider/components/SingleSlider.cjs +24 -24
  176. package/dist/components/Slider/components/SingleSlider.js +7 -7
  177. package/dist/components/Slider/index.cjs +2 -2
  178. package/dist/components/Slider/styles.d.ts +35 -24
  179. package/dist/components/Snippet/index.cjs +3 -3
  180. package/dist/components/Stack/index.cjs +31 -11
  181. package/dist/components/Stack/index.d.ts +9 -9
  182. package/dist/components/Stack/index.js +31 -11
  183. package/dist/components/StepList/index.cjs +3 -3
  184. package/dist/components/StepList/index.js +3 -3
  185. package/dist/components/Stepper/Step.cjs +10 -14
  186. package/dist/components/Stepper/Step.js +6 -10
  187. package/dist/components/Stepper/StepperProvider.cjs +7 -7
  188. package/dist/components/Stepper/index.cjs +11 -14
  189. package/dist/components/Stepper/index.js +4 -7
  190. package/dist/components/SwitchButton/FocusOverlay.cjs +12 -20
  191. package/dist/components/SwitchButton/FocusOverlay.d.ts +5 -5
  192. package/dist/components/SwitchButton/FocusOverlay.js +12 -20
  193. package/dist/components/SwitchButton/Option.cjs +82 -0
  194. package/dist/components/SwitchButton/Option.d.ts +10 -0
  195. package/dist/components/SwitchButton/Option.js +80 -0
  196. package/dist/components/SwitchButton/SwitchButtonContext.cjs +13 -0
  197. package/dist/components/SwitchButton/SwitchButtonContext.d.ts +19 -0
  198. package/dist/components/SwitchButton/SwitchButtonContext.js +13 -0
  199. package/dist/components/SwitchButton/constant.cjs +4 -0
  200. package/dist/components/SwitchButton/constant.d.ts +1 -0
  201. package/dist/components/SwitchButton/constant.js +4 -0
  202. package/dist/components/SwitchButton/index.cjs +82 -48
  203. package/dist/components/SwitchButton/index.d.ts +14 -13
  204. package/dist/components/SwitchButton/index.js +81 -47
  205. package/dist/components/Table/HeaderCell.cjs +5 -5
  206. package/dist/components/Table/HeaderCell.js +6 -6
  207. package/dist/components/Table/Row.cjs +10 -10
  208. package/dist/components/Table/SelectBar.cjs +2 -2
  209. package/dist/components/Table/TableContext.cjs +5 -5
  210. package/dist/components/Table/index.cjs +10 -10
  211. package/dist/components/Table/index.js +2 -2
  212. package/dist/components/Tabs/Tab.cjs +3 -3
  213. package/dist/components/Tabs/TabMenu.cjs +7 -7
  214. package/dist/components/Tabs/TabMenu.d.ts +3 -3
  215. package/dist/components/Tabs/TabMenu.js +5 -5
  216. package/dist/components/Tabs/TabMenuItem.cjs +5 -5
  217. package/dist/components/Tabs/TabMenuItem.d.ts +1 -0
  218. package/dist/components/Tabs/TabMenuItem.js +3 -3
  219. package/dist/components/Tabs/TabsContext.cjs +3 -3
  220. package/dist/components/Tabs/index.cjs +14 -14
  221. package/dist/components/Tabs/index.d.ts +4 -3
  222. package/dist/components/Tabs/index.js +3 -3
  223. package/dist/components/Tag/index.cjs +2 -2
  224. package/dist/components/TagInput/index.cjs +14 -16
  225. package/dist/components/TagInput/index.d.ts +1 -17
  226. package/dist/components/TagInput/index.js +7 -9
  227. package/dist/components/TagList/index.cjs +13 -13
  228. package/dist/components/Text/index.cjs +4 -6
  229. package/dist/components/Text/index.d.ts +2 -6
  230. package/dist/components/Text/index.js +2 -4
  231. package/dist/components/TextArea/index.cjs +13 -13
  232. package/dist/components/TextArea/index.js +4 -4
  233. package/dist/components/TextInput/index.cjs +179 -343
  234. package/dist/components/TextInput/index.d.ts +74 -68
  235. package/dist/components/TextInput/index.js +177 -340
  236. package/dist/components/TimeInput/index.cjs +320 -23
  237. package/dist/components/TimeInput/index.d.ts +44 -20
  238. package/dist/components/TimeInput/index.js +320 -25
  239. package/dist/components/Toaster/index.cjs +2 -10
  240. package/dist/components/Toaster/index.d.ts +0 -4
  241. package/dist/components/Toaster/index.js +2 -10
  242. package/dist/components/Toggle/index.cjs +6 -6
  243. package/dist/components/ToggleGroup/index.cjs +5 -5
  244. package/dist/components/ToggleGroup/index.d.ts +1 -1
  245. package/dist/components/ToggleGroup/index.js +1 -1
  246. package/dist/components/Tooltip/index.cjs +3 -3
  247. package/dist/components/Tooltip/index.d.ts +36 -4
  248. package/dist/components/Tooltip/index.js +1 -1
  249. package/dist/components/UnitInput/index.cjs +33 -50
  250. package/dist/components/UnitInput/index.d.ts +8 -7
  251. package/dist/components/UnitInput/index.js +28 -45
  252. package/dist/components/VerificationCode/index.cjs +5 -5
  253. package/dist/components/index.d.ts +2 -9
  254. package/dist/hooks/useIsOverflowing.cjs +3 -3
  255. package/dist/index.cjs +143 -159
  256. package/dist/index.d.ts +2 -2
  257. package/dist/index.js +4 -20
  258. package/dist/theme/index.d.ts +2 -7
  259. package/package.json +9 -13
  260. package/dist/components/AvatarV2/index.cjs +0 -139
  261. package/dist/components/AvatarV2/index.d.ts +0 -5
  262. package/dist/components/AvatarV2/index.js +0 -137
  263. package/dist/components/Menu/Item.cjs +0 -93
  264. package/dist/components/Menu/Item.d.ts +0 -15
  265. package/dist/components/Menu/Item.js +0 -92
  266. package/dist/components/MenuV2/MenuContent.cjs +0 -163
  267. package/dist/components/MenuV2/MenuContent.js +0 -161
  268. package/dist/components/MenuV2/MenuProvider.cjs +0 -31
  269. package/dist/components/MenuV2/MenuProvider.d.ts +0 -14
  270. package/dist/components/MenuV2/MenuProvider.js +0 -31
  271. package/dist/components/MenuV2/components/Group.cjs +0 -34
  272. package/dist/components/MenuV2/components/Group.js +0 -32
  273. package/dist/components/MenuV2/components/Item.cjs +0 -134
  274. package/dist/components/MenuV2/components/Item.js +0 -133
  275. package/dist/components/MenuV2/helpers.cjs +0 -26
  276. package/dist/components/MenuV2/helpers.js +0 -26
  277. package/dist/components/MenuV2/index.cjs +0 -20
  278. package/dist/components/MenuV2/index.d.ts +0 -76
  279. package/dist/components/MenuV2/index.js +0 -20
  280. package/dist/components/NumberInput/helpers.cjs +0 -10
  281. package/dist/components/NumberInput/helpers.d.ts +0 -4
  282. package/dist/components/NumberInput/helpers.js +0 -10
  283. package/dist/components/NumberInputV2/index.cjs +0 -262
  284. package/dist/components/NumberInputV2/index.d.ts +0 -38
  285. package/dist/components/NumberInputV2/index.js +0 -260
  286. package/dist/components/PasswordStrengthMeter/index.cjs +0 -98
  287. package/dist/components/PasswordStrengthMeter/index.d.ts +0 -39
  288. package/dist/components/PasswordStrengthMeter/index.js +0 -96
  289. package/dist/components/SelectInputV2/Dropdown.cjs +0 -477
  290. package/dist/components/SelectInputV2/Dropdown.js +0 -475
  291. package/dist/components/SelectInputV2/DropdownOption.cjs +0 -91
  292. package/dist/components/SelectInputV2/DropdownOption.js +0 -89
  293. package/dist/components/SelectInputV2/SearchBarDropdown.cjs +0 -129
  294. package/dist/components/SelectInputV2/SearchBarDropdown.js +0 -127
  295. package/dist/components/SelectInputV2/SelectBar.cjs +0 -364
  296. package/dist/components/SelectInputV2/SelectBar.js +0 -362
  297. package/dist/components/SelectInputV2/index.cjs +0 -91
  298. package/dist/components/SelectInputV2/index.d.ts +0 -126
  299. package/dist/components/SelectInputV2/index.js +0 -89
  300. package/dist/components/TextInputV2/index.cjs +0 -223
  301. package/dist/components/TextInputV2/index.d.ts +0 -81
  302. package/dist/components/TextInputV2/index.js +0 -221
  303. package/dist/components/TimeInputV2/index.cjs +0 -326
  304. package/dist/components/TimeInputV2/index.d.ts +0 -49
  305. package/dist/components/TimeInputV2/index.js +0 -324
  306. package/dist/helpers/isJSON.cjs +0 -10
  307. package/dist/helpers/isJSON.js +0 -11
  308. package/dist/theme/ThemeRegistry.cjs +0 -56
  309. package/dist/theme/ThemeRegistry.d.ts +0 -12
  310. package/dist/theme/ThemeRegistry.js +0 -55
  311. /package/dist/components/{AvatarV2 → Avatar}/constants.cjs +0 -0
  312. /package/dist/components/{AvatarV2 → Avatar}/constants.d.ts +0 -0
  313. /package/dist/components/{AvatarV2 → Avatar}/constants.js +0 -0
  314. /package/dist/components/{MenuV2 → Menu}/constants.d.ts +0 -0
  315. /package/dist/components/{SelectInputV2 → SelectInput}/Dropdown.d.ts +0 -0
  316. /package/dist/components/{SelectInputV2 → SelectInput}/DropdownOption.d.ts +0 -0
  317. /package/dist/components/{SelectInputV2 → SelectInput}/SearchBarDropdown.d.ts +0 -0
  318. /package/dist/components/{SelectInputV2 → SelectInput}/SelectBar.d.ts +0 -0
  319. /package/dist/components/{SelectInputV2 → SelectInput}/findOptionInOptions.cjs +0 -0
  320. /package/dist/components/{SelectInputV2 → SelectInput}/findOptionInOptions.d.ts +0 -0
  321. /package/dist/components/{SelectInputV2 → SelectInput}/findOptionInOptions.js +0 -0
  322. /package/dist/components/{SelectInputV2 → SelectInput}/types.cjs +0 -0
  323. /package/dist/components/{SelectInputV2 → SelectInput}/types.d.ts +0 -0
  324. /package/dist/components/{SelectInputV2 → SelectInput}/types.js +0 -0
  325. /package/dist/components/{TimeInputV2 → TimeInput}/constants.cjs +0 -0
  326. /package/dist/components/{TimeInputV2 → TimeInput}/constants.d.ts +0 -0
  327. /package/dist/components/{TimeInputV2 → TimeInput}/constants.js +0 -0
  328. /package/dist/components/{TimeInputV2 → TimeInput}/helpers.cjs +0 -0
  329. /package/dist/components/{TimeInputV2 → TimeInput}/helpers.d.ts +0 -0
  330. /package/dist/components/{TimeInputV2 → TimeInput}/helpers.js +0 -0
@@ -1,75 +1,131 @@
1
- import type { CSSObject, Theme } from '@emotion/react';
2
- import { css } from '@emotion/react';
3
- import type { ComponentProps, ForwardRefExoticComponent, ForwardedRef, JSX, ReactNode } from 'react';
4
- import type { CommonProps, GroupBase, OptionProps, Props } from 'react-select';
5
- import Select from 'react-select';
6
- export type SelectOption = {
7
- value: string;
8
- label: ReactNode;
9
- disabled?: boolean;
10
- description?: string;
11
- inlineDescription?: string;
12
- };
13
- type SelectStyleProps = {
14
- error?: string;
15
- /**
16
- * Custom styles of the SelectInput. See [React select documentation](https://react-select.com/styles)
17
- */
18
- customStyle: (state: SelectProps & WithSelectProps) => Record<string, CSSObject>;
19
- animation?: string;
20
- /**
21
- * Time of the animation
22
- */
23
- animationDuration: number;
24
- /**
25
- * Show/hide the label inside the component
26
- */
27
- noTopLabel?: boolean;
28
- theme: Theme;
29
- };
30
- type WithSelectProps = {
31
- selectProps: SelectProps;
32
- };
33
- type SelectProps = StyledContainerProps & Omit<Props<SelectOption>, 'value'> & CommonProps<SelectOption, boolean, GroupBase<SelectOption>> & {
34
- value?: string | SelectOption;
35
- checked?: boolean;
36
- error?: string;
37
- labelId?: string;
38
- required?: boolean;
39
- time?: boolean;
40
- };
41
- type StyledContainerProps = {
42
- isDisabled?: boolean;
43
- additionalStyles?: Parameters<typeof css>[0];
44
- };
45
- type StateManagedSelect = typeof Select;
46
- type SelectInputProps = SelectProps & SelectStyleProps & {
1
+ import type { ComponentProps, HTMLAttributes, ReactNode } from 'react';
2
+ import type { Popup } from '../Popup';
3
+ import type { DataType } from './types';
4
+ type SelectInputProps<IsMulti extends undefined | boolean = false> = {
5
+ /**
6
+ * Input name
7
+ */
8
+ name?: string;
9
+ /**
10
+ * Place holder when no value defined
11
+ */
12
+ placeholder?: string;
13
+ /**
14
+ * When searchable, placeholder when no value is searched
15
+ */
16
+ placeholderSearch?: string;
17
+ /**
18
+ * Label of the component
19
+ */
20
+ label?: string;
21
+ /**
22
+ * Helper text to give more information to the user
23
+ */
24
+ helper?: string;
25
+ /**
26
+ * Selectable options
27
+ */
28
+ options: DataType;
47
29
  /**
48
- * Name of the animation
30
+ * Message to show when no option available
49
31
  */
50
- animation?: string;
32
+ emptyState?: ReactNode;
51
33
  /**
52
- * Play the animation when the value change
34
+ * Whether it is possible to search through the input
35
+ */
36
+ searchable?: boolean;
37
+ /**
38
+ * Whether the component in disabled
53
39
  */
54
- animationOnChange?: boolean;
55
40
  disabled?: boolean;
41
+ /**
42
+ * Whether the component in readOnly
43
+ */
56
44
  readOnly?: boolean;
57
- innerRef?: ForwardedRef<StateManagedSelect>;
58
45
  /**
59
- * Custom components of the SelectInput. See [React select documentation](https://react-select.com/components)
46
+ * Whether it is possible to clear the search input
47
+ */
48
+ clearable?: boolean;
49
+ /**
50
+ * Size of the input
51
+ */
52
+ size?: 'small' | 'medium' | 'large';
53
+ /**
54
+ * Whether field is required
55
+ */
56
+ required?: boolean;
57
+ /**
58
+ * More information regarding/description ofs the selectInput
59
+ */
60
+ labelDescription?: ReactNode;
61
+ /**
62
+ * Whether option description is on the right of the option or under it
60
63
  */
61
- customComponents?: SelectProps['components'];
62
- children: ReactNode;
63
- emptyState?: ComponentProps<Select>['noOptionsMessage'];
64
+ descriptionDirection?: 'row' | 'column';
65
+ /**
66
+ * Where to place the additional info prop
67
+ */
68
+ optionalInfoPlacement?: 'left' | 'right';
69
+ /**
70
+ * To add custom fixed elements at the bottom of the dropdown
71
+ */
72
+ footer?: ((closeDropdown: () => void) => ReactNode) | ReactNode;
73
+ /**
74
+ * Display an error message under the select bar
75
+ */
76
+ error?: string | boolean;
77
+ /**
78
+ * Display a success message under the select bar
79
+ */
80
+ success?: string;
81
+ /**
82
+ * Load more button to implement lazy loading
83
+ */
84
+ loadMore?: ReactNode;
85
+ /**
86
+ * When the options are loading, display a skeleton
87
+ */
88
+ isLoading?: boolean;
89
+ /**
90
+ * Add a tooltip around the select bar
91
+ */
92
+ tooltip?: string;
93
+ /**
94
+ * Adds an option to select every selectable options
95
+ */
96
+ selectAll?: {
97
+ label: ReactNode;
98
+ description?: string;
99
+ };
100
+ /**
101
+ * When options are group, define a option to select every selectable options of a group
102
+ */
103
+ selectAllGroup?: boolean;
104
+ dropdownAlign?: ComponentProps<typeof Popup>['align'];
105
+ autofocus?: boolean;
106
+ /**
107
+ * Whether it is possible to select multiple options
108
+ */
109
+ multiselect?: IsMulti;
110
+ /**
111
+ * Default value, must be one of the options
112
+ */
113
+ value?: IsMulti extends true ? string[] : string;
114
+ onChange?: IsMulti extends true ? (value: string[]) => void : (value: string) => void;
64
115
  'data-testid'?: string;
65
- };
66
- type OptionComponent = (props: Partial<OptionProps<SelectOption> & SelectOption>) => JSX.Element;
116
+ /**
117
+ * In some cases, when the space is limited, you will need to change the `portalTarget` of the dropdown for a higher parent element.
118
+ * If you don't know which element to target, you can use `document.body`.
119
+ */
120
+ portalTarget?: ComponentProps<typeof Popup>['portalTarget'];
121
+ /**
122
+ * Allow to specify a callback called when option dropdown is open
123
+ * Please wrap that definition in useCallback
124
+ */
125
+ onOpen?: () => void;
126
+ } & Pick<HTMLAttributes<HTMLDivElement>, 'id' | 'onBlur' | 'onFocus' | 'aria-label' | 'className'>;
67
127
  /**
68
- * SelectInput component is a wrapper around [react-select](https://react-select.com) component.
69
- * It provides a styled select input with a label and an error message.
70
- * @deprecated use SelectInputV2 component instead
128
+ * SelectInput component is used to select one or many elements from a selection.
71
129
  */
72
- export declare const SelectInput: ForwardRefExoticComponent<Partial<SelectInputProps>> & {
73
- Option: OptionComponent;
74
- };
130
+ export declare const SelectInput: <IsMulti extends undefined | boolean>({ name, id, onBlur, onFocus, onChange, "aria-label": ariaLabel, value, label, helper, options, size, emptyState, descriptionDirection, success, error, "data-testid": dataTestId, className, tooltip, footer, placeholderSearch, placeholder, searchable, disabled, readOnly, clearable, multiselect, required, labelDescription, autofocus, loadMore, optionalInfoPlacement, isLoading, selectAll, selectAllGroup, dropdownAlign, portalTarget, onOpen, }: SelectInputProps<IsMulti>) => import("@emotion/react/jsx-runtime").JSX.Element;
75
131
  export {};