@ultraviolet/ui 1.51.1 → 1.51.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. package/dist/components/ActionBar/index.d.ts +20 -0
  2. package/dist/components/ActionBar/index.js +30 -0
  3. package/dist/components/Alert/index.d.ts +27 -0
  4. package/dist/components/Alert/index.js +115 -0
  5. package/dist/components/Avatar/index.d.ts +43 -0
  6. package/dist/components/Avatar/index.js +57 -0
  7. package/dist/components/Badge/index.d.ts +31 -0
  8. package/dist/components/Badge/index.js +99 -0
  9. package/dist/components/Banner/assets/default-image-small.svg.js +4 -0
  10. package/dist/components/Banner/assets/default-image.svg.js +4 -0
  11. package/dist/components/Banner/index.d.ts +24 -0
  12. package/dist/components/Banner/index.js +116 -0
  13. package/dist/components/BarChart/Tooltip.d.ts +9 -0
  14. package/dist/components/BarChart/Tooltip.js +41 -0
  15. package/dist/components/BarChart/index.d.ts +27 -0
  16. package/dist/components/BarChart/index.js +69 -0
  17. package/dist/components/BarStack/index.d.ts +36 -0
  18. package/dist/components/BarStack/index.js +114 -0
  19. package/dist/components/Breadcrumbs/index.d.ts +30 -0
  20. package/dist/components/Breadcrumbs/index.js +73 -0
  21. package/dist/components/Bullet/index.d.ts +39 -0
  22. package/dist/components/Bullet/index.js +84 -0
  23. package/dist/components/Button/index.d.ts +120 -0
  24. package/dist/components/Button/index.js +249 -0
  25. package/dist/components/Card/index.d.ts +20 -0
  26. package/dist/components/Card/index.js +52 -0
  27. package/dist/components/Carousel/index.d.ts +19 -0
  28. package/dist/components/Carousel/index.js +123 -0
  29. package/dist/components/Checkbox/index.d.ts +36 -0
  30. package/dist/components/Checkbox/index.js +262 -0
  31. package/dist/components/CheckboxGroup/index.d.ts +24 -0
  32. package/dist/components/CheckboxGroup/index.js +116 -0
  33. package/dist/components/CopyButton/index.d.ts +19 -0
  34. package/dist/components/CopyButton/index.js +23 -0
  35. package/dist/components/DateInput/datepicker.css.js +4 -0
  36. package/dist/components/DateInput/index.d.ts +38 -0
  37. package/dist/components/DateInput/index.js +182 -0
  38. package/dist/components/Dialog/Context.d.ts +7 -0
  39. package/dist/components/Dialog/Context.js +13 -0
  40. package/dist/components/Dialog/constants.d.ts +2 -0
  41. package/dist/components/Dialog/index.d.ts +87 -0
  42. package/dist/components/Dialog/index.js +66 -0
  43. package/dist/components/Dialog/subComponents/Button.d.ts +7 -0
  44. package/dist/components/Dialog/subComponents/Button.js +15 -0
  45. package/dist/components/Dialog/subComponents/Buttons.d.ts +7 -0
  46. package/dist/components/Dialog/subComponents/Buttons.js +12 -0
  47. package/dist/components/Dialog/subComponents/CancelButton.d.ts +8 -0
  48. package/dist/components/Dialog/subComponents/CancelButton.js +9 -0
  49. package/dist/components/Dialog/subComponents/Stack.d.ts +6 -0
  50. package/dist/components/Dialog/subComponents/Stack.js +8 -0
  51. package/dist/components/Dialog/subComponents/Text.d.ts +6 -0
  52. package/dist/components/Dialog/subComponents/Text.js +8 -0
  53. package/dist/components/EmptyState/index.d.ts +38 -0
  54. package/dist/components/EmptyState/index.js +90 -0
  55. package/dist/components/Expandable/index.d.ts +33 -0
  56. package/dist/components/Expandable/index.js +75 -0
  57. package/dist/components/GlobalAlert/GlobalAlertLink.d.ts +3 -0
  58. package/dist/components/GlobalAlert/GlobalAlertLink.js +23 -0
  59. package/dist/components/GlobalAlert/index.d.ts +40 -0
  60. package/dist/components/GlobalAlert/index.js +59 -0
  61. package/dist/components/LineChart/CustomLegend.d.ts +13 -0
  62. package/dist/components/LineChart/CustomLegend.js +113 -0
  63. package/dist/components/LineChart/Tooltip.d.ts +6 -0
  64. package/dist/components/LineChart/Tooltip.js +35 -0
  65. package/dist/components/LineChart/helpers.d.ts +8 -0
  66. package/dist/{src/components → components}/LineChart/helpers.js +22 -10
  67. package/dist/components/LineChart/index.d.ts +25 -0
  68. package/dist/components/LineChart/index.js +101 -0
  69. package/dist/components/Link/index.d.ts +33 -0
  70. package/dist/components/Link/index.js +128 -0
  71. package/dist/components/List/Body.d.ts +6 -0
  72. package/dist/components/List/Body.js +16 -0
  73. package/dist/components/List/Cell.d.ts +12 -0
  74. package/dist/components/List/Cell.js +41 -0
  75. package/dist/components/List/HeaderCell.d.ts +11 -0
  76. package/dist/components/List/HeaderCell.js +82 -0
  77. package/dist/components/List/HeaderRow.d.ts +7 -0
  78. package/dist/components/List/HeaderRow.js +36 -0
  79. package/dist/components/List/ListContext.d.ts +34 -0
  80. package/dist/{src/components → components}/List/ListContext.js +27 -29
  81. package/dist/components/List/Row.d.ts +23 -0
  82. package/dist/components/List/Row.js +161 -0
  83. package/dist/components/List/SelectBar.d.ts +15 -0
  84. package/dist/components/List/SelectBar.js +52 -0
  85. package/dist/components/List/SkeletonRows.d.ts +7 -0
  86. package/dist/components/List/SkeletonRows.js +55 -0
  87. package/dist/components/List/constants.d.ts +2 -0
  88. package/dist/{src/components → components}/List/constants.js +4 -2
  89. package/dist/components/List/index.d.ts +68 -0
  90. package/dist/components/List/index.js +60 -0
  91. package/dist/components/Loader/index.d.ts +22 -0
  92. package/dist/components/Loader/index.js +77 -0
  93. package/dist/components/Menu/Item.d.ts +15 -0
  94. package/dist/components/Menu/Item.js +91 -0
  95. package/dist/components/Menu/index.d.ts +49 -0
  96. package/dist/components/Menu/index.js +116 -0
  97. package/dist/components/MenuV2/Group.d.ts +7 -0
  98. package/dist/components/MenuV2/Group.js +21 -0
  99. package/dist/components/MenuV2/Item.d.ts +16 -0
  100. package/dist/components/MenuV2/Item.js +113 -0
  101. package/dist/components/MenuV2/index.d.ts +90 -0
  102. package/dist/components/MenuV2/index.js +90 -0
  103. package/dist/components/Meter/index.d.ts +26 -0
  104. package/dist/components/Meter/index.js +63 -0
  105. package/dist/components/Modal/Dialog.d.ts +3 -0
  106. package/dist/components/Modal/Dialog.js +141 -0
  107. package/dist/components/Modal/Disclosure.d.ts +3 -0
  108. package/dist/{src/components → components}/Modal/Disclosure.js +12 -12
  109. package/dist/components/Modal/constants.d.ts +3 -0
  110. package/dist/{src/components → components}/Modal/constants.js +8 -6
  111. package/dist/components/Modal/index.d.ts +42 -0
  112. package/dist/components/Modal/index.js +79 -0
  113. package/dist/components/Modal/types.d.ts +48 -0
  114. package/dist/components/Notice/index.d.ts +11 -0
  115. package/dist/components/Notice/index.js +23 -0
  116. package/dist/components/Notification/index.d.ts +36 -0
  117. package/dist/components/Notification/index.js +49 -0
  118. package/dist/components/Notification/react-toastify.css.js +4 -0
  119. package/dist/components/NumberInput/helpers.d.ts +4 -0
  120. package/dist/{src/components → components}/NumberInput/helpers.js +6 -2
  121. package/dist/components/NumberInput/index.d.ts +41 -0
  122. package/dist/components/NumberInput/index.js +262 -0
  123. package/dist/components/NumberInputV2/index.d.ts +27 -0
  124. package/dist/components/NumberInputV2/index.js +221 -0
  125. package/dist/components/Pagination/getPageNumbers.d.ts +8 -0
  126. package/dist/{src/components → components}/Pagination/getPageNumbers.js +3 -9
  127. package/dist/components/Pagination/index.d.ts +30 -0
  128. package/dist/components/Pagination/index.js +88 -0
  129. package/dist/components/PasswordCheck/index.d.ts +20 -0
  130. package/dist/components/PasswordCheck/index.js +24 -0
  131. package/dist/components/PasswordStrengthMeter/index.d.ts +39 -0
  132. package/dist/components/PasswordStrengthMeter/index.js +96 -0
  133. package/dist/components/PieChart/Legends.d.ts +9 -0
  134. package/dist/components/PieChart/Legends.js +142 -0
  135. package/dist/components/PieChart/Tooltip.d.ts +12 -0
  136. package/dist/components/PieChart/Tooltip.js +49 -0
  137. package/dist/components/PieChart/index.d.ts +20 -0
  138. package/dist/components/PieChart/index.js +101 -0
  139. package/dist/components/PieChart/types.d.ts +7 -0
  140. package/dist/components/Popover/index.d.ts +55 -0
  141. package/dist/components/Popover/index.js +100 -0
  142. package/dist/components/Popup/animations.d.ts +11 -0
  143. package/dist/{src/components → components}/Popup/animations.js +7 -6
  144. package/dist/components/Popup/helpers.d.ts +31 -0
  145. package/dist/components/Popup/helpers.js +216 -0
  146. package/dist/components/Popup/index.d.ts +72 -0
  147. package/dist/components/Popup/index.js +297 -0
  148. package/dist/components/ProgressBar/index.d.ts +14 -0
  149. package/dist/components/ProgressBar/index.js +53 -0
  150. package/dist/components/Radio/index.d.ts +21 -0
  151. package/dist/components/Radio/index.js +133 -0
  152. package/dist/components/RadioGroup/index.d.ts +25 -0
  153. package/dist/components/RadioGroup/index.js +99 -0
  154. package/dist/components/Row/index.d.ts +22 -0
  155. package/dist/components/Row/index.js +34 -0
  156. package/dist/components/SelectInput/index.d.ts +75 -0
  157. package/dist/components/SelectInput/index.js +516 -0
  158. package/dist/components/SelectInputV2/Dropdown.d.ts +23 -0
  159. package/dist/components/SelectInputV2/Dropdown.js +429 -0
  160. package/dist/components/SelectInputV2/DropdownOption.d.ts +8 -0
  161. package/dist/components/SelectInputV2/DropdownOption.js +62 -0
  162. package/dist/components/SelectInputV2/SearchBarDropdown.d.ts +9 -0
  163. package/dist/components/SelectInputV2/SearchBarDropdown.js +107 -0
  164. package/dist/components/SelectInputV2/SelectBar.d.ts +14 -0
  165. package/dist/components/SelectInputV2/SelectBar.js +224 -0
  166. package/dist/components/SelectInputV2/SelectInputProvider.d.ts +41 -0
  167. package/dist/{src/components → components}/SelectInputV2/SelectInputProvider.js +38 -36
  168. package/dist/components/SelectInputV2/findOptionInOptions.d.ts +2 -0
  169. package/dist/components/SelectInputV2/findOptionInOptions.js +12 -0
  170. package/dist/components/SelectInputV2/index.d.ts +115 -0
  171. package/dist/components/SelectInputV2/index.js +87 -0
  172. package/dist/components/SelectInputV2/types.d.ts +38 -0
  173. package/dist/{src/components → components}/SelectInputV2/types.js +4 -2
  174. package/dist/components/SelectableCard/index.d.ts +25 -0
  175. package/dist/components/SelectableCard/index.js +137 -0
  176. package/dist/components/SelectableCardGroup/index.d.ts +23 -0
  177. package/dist/components/SelectableCardGroup/index.js +107 -0
  178. package/dist/components/Separator/index.d.ts +17 -0
  179. package/dist/components/Separator/index.js +56 -0
  180. package/dist/components/Skeleton/Block.d.ts +3 -0
  181. package/dist/components/Skeleton/Block.js +38 -0
  182. package/dist/components/Skeleton/Blocks.d.ts +4 -0
  183. package/dist/components/Skeleton/Blocks.js +38 -0
  184. package/dist/components/Skeleton/BoxWithIcon.d.ts +4 -0
  185. package/dist/components/Skeleton/BoxWithIcon.js +36 -0
  186. package/dist/components/Skeleton/Donut.d.ts +1 -0
  187. package/dist/components/Skeleton/Donut.js +61 -0
  188. package/dist/components/Skeleton/IconSkeleton.d.ts +5 -0
  189. package/dist/components/Skeleton/IconSkeleton.js +22 -0
  190. package/dist/components/Skeleton/Line.d.ts +5 -0
  191. package/dist/components/Skeleton/Line.js +16 -0
  192. package/dist/components/Skeleton/List.d.ts +4 -0
  193. package/dist/components/Skeleton/List.js +56 -0
  194. package/dist/components/Skeleton/Slider.d.ts +3 -0
  195. package/dist/components/Skeleton/Slider.js +40 -0
  196. package/dist/components/Skeleton/Square.d.ts +5 -0
  197. package/dist/components/Skeleton/Square.js +12 -0
  198. package/dist/components/Skeleton/index.d.ts +47 -0
  199. package/dist/components/Skeleton/index.js +79 -0
  200. package/dist/components/Snippet/index.d.ts +23 -0
  201. package/dist/components/Snippet/index.js +182 -0
  202. package/dist/components/Stack/index.d.ts +23 -0
  203. package/dist/components/Stack/index.js +29 -0
  204. package/dist/components/Status/index.d.ts +32 -0
  205. package/dist/components/Status/index.js +72 -0
  206. package/dist/components/StepList/index.d.ts +33 -0
  207. package/dist/components/StepList/index.js +58 -0
  208. package/dist/components/Stepper/index.d.ts +15 -0
  209. package/dist/components/Stepper/index.js +145 -0
  210. package/dist/components/SwitchButton/FocusOverlay.d.ts +8 -0
  211. package/dist/components/SwitchButton/FocusOverlay.js +38 -0
  212. package/dist/components/SwitchButton/index.d.ts +26 -0
  213. package/dist/components/SwitchButton/index.js +76 -0
  214. package/dist/components/Table/Body.d.ts +6 -0
  215. package/dist/components/Table/Body.js +7 -0
  216. package/dist/components/Table/Cell.d.ts +9 -0
  217. package/dist/components/Table/Cell.js +19 -0
  218. package/dist/components/Table/Header.d.ts +6 -0
  219. package/dist/components/Table/Header.js +16 -0
  220. package/dist/components/Table/HeaderCell.d.ts +14 -0
  221. package/dist/components/Table/HeaderCell.js +80 -0
  222. package/dist/components/Table/HeaderRow.d.ts +7 -0
  223. package/dist/components/Table/HeaderRow.js +23 -0
  224. package/dist/components/Table/Row.d.ts +14 -0
  225. package/dist/components/Table/Row.js +80 -0
  226. package/dist/components/Table/SelectBar.d.ts +15 -0
  227. package/dist/components/Table/SelectBar.js +52 -0
  228. package/dist/components/Table/SkeletonRows.d.ts +7 -0
  229. package/dist/components/Table/SkeletonRows.js +54 -0
  230. package/dist/components/Table/TableContext.d.ts +27 -0
  231. package/dist/{src/components → components}/Table/TableContext.js +19 -21
  232. package/dist/components/Table/index.d.ts +60 -0
  233. package/dist/components/Table/index.js +67 -0
  234. package/dist/components/Tabs/Tab.d.ts +20 -0
  235. package/dist/components/Tabs/Tab.js +120 -0
  236. package/dist/components/Tabs/TabMenu.d.ts +8 -0
  237. package/dist/components/Tabs/TabMenu.js +62 -0
  238. package/dist/components/Tabs/TabMenuItem.d.ts +20 -0
  239. package/dist/components/Tabs/TabMenuItem.js +34 -0
  240. package/dist/components/Tabs/TabsContext.d.ts +8 -0
  241. package/dist/components/Tabs/TabsContext.js +7 -0
  242. package/dist/components/Tabs/index.d.ts +50 -0
  243. package/dist/components/Tabs/index.js +102 -0
  244. package/dist/components/Tag/index.d.ts +26 -0
  245. package/dist/components/Tag/index.js +144 -0
  246. package/dist/components/TagInput/index.d.ts +55 -0
  247. package/dist/components/TagInput/index.js +253 -0
  248. package/dist/components/TagList/index.d.ts +37 -0
  249. package/dist/components/TagList/index.js +98 -0
  250. package/dist/components/Text/index.d.ts +40 -0
  251. package/dist/components/Text/index.js +82 -0
  252. package/dist/components/TextArea/index.d.ts +50 -0
  253. package/dist/components/TextArea/index.js +158 -0
  254. package/dist/components/TextInput/index.d.ts +75 -0
  255. package/dist/components/TextInput/index.js +387 -0
  256. package/dist/components/TextInputV2/index.d.ts +30 -0
  257. package/dist/components/TextInputV2/index.js +190 -0
  258. package/dist/components/TimeInput/index.d.ts +25 -0
  259. package/dist/components/TimeInput/index.js +28 -0
  260. package/dist/components/Toaster/index.d.ts +46 -0
  261. package/dist/components/Toaster/index.js +83 -0
  262. package/dist/components/Toaster/react-toastify.css.js +4 -0
  263. package/dist/components/Toggle/index.d.ts +34 -0
  264. package/dist/components/Toggle/index.js +136 -0
  265. package/dist/components/ToggleGroup/index.d.ts +24 -0
  266. package/dist/components/ToggleGroup/index.js +96 -0
  267. package/dist/components/Tooltip/index.d.ts +9 -0
  268. package/dist/components/Tooltip/index.js +40 -0
  269. package/dist/components/VerificationCode/index.d.ts +36 -0
  270. package/dist/components/VerificationCode/index.js +217 -0
  271. package/dist/components/index.d.ts +75 -0
  272. package/dist/helpers/isJSON.d.ts +2 -0
  273. package/dist/{src/helpers → helpers}/isJSON.js +4 -3
  274. package/dist/helpers/jestMockMatchMedia.d.ts +6 -0
  275. package/dist/helpers/keycode.d.ts +3 -0
  276. package/dist/helpers/legend.d.ts +2 -0
  277. package/dist/helpers/legend.js +14 -0
  278. package/dist/helpers/numbers.d.ts +2 -0
  279. package/dist/helpers/recursivelyGetChildrenString.d.ts +3 -0
  280. package/dist/helpers/recursivelyGetChildrenString.js +15 -0
  281. package/dist/hooks/useIsOverflowing.d.ts +5 -0
  282. package/dist/hooks/useIsOverflowing.js +23 -0
  283. package/dist/index.d.ts +4 -3723
  284. package/dist/index.js +187 -0
  285. package/dist/mocks/list.d.ts +12 -0
  286. package/dist/theme/index.d.ts +1573 -0
  287. package/dist/theme/index.js +27 -0
  288. package/dist/types.d.ts +6 -0
  289. package/dist/utils/animations.d.ts +27 -0
  290. package/dist/{src/utils → utils}/animations.js +30 -4
  291. package/dist/utils/capitalize.d.ts +2 -0
  292. package/dist/utils/capitalize.js +4 -0
  293. package/dist/utils/ids.d.ts +1 -0
  294. package/dist/{src/utils → utils}/ids.js +5 -4
  295. package/dist/utils/index.d.ts +6 -0
  296. package/dist/utils/normalize.d.ts +2 -0
  297. package/dist/{src/utils → utils}/normalize.js +4 -3
  298. package/dist/utils/orderBy.d.ts +2 -0
  299. package/dist/utils/responsive/Breakpoint.d.ts +9 -0
  300. package/dist/utils/responsive/Breakpoint.js +15 -0
  301. package/dist/utils/responsive/index.d.ts +2 -0
  302. package/dist/utils/responsive/utilities.d.ts +3 -0
  303. package/dist/{src/utils → utils}/responsive/utilities.js +9 -6
  304. package/package.json +18 -8
  305. package/dist/react-datepicker/dist/react-datepicker.min.css.js +0 -3
  306. package/dist/react-toastify/dist/ReactToastify.min.css.js +0 -3
  307. package/dist/src/components/ActionBar/index.js +0 -40
  308. package/dist/src/components/Alert/index.js +0 -133
  309. package/dist/src/components/Avatar/index.js +0 -74
  310. package/dist/src/components/Badge/index.js +0 -116
  311. package/dist/src/components/Banner/assets/default-image-small.svg.js +0 -5
  312. package/dist/src/components/Banner/assets/default-image.svg.js +0 -5
  313. package/dist/src/components/Banner/index.js +0 -159
  314. package/dist/src/components/BarChart/Tooltip.js +0 -48
  315. package/dist/src/components/BarChart/index.js +0 -95
  316. package/dist/src/components/BarStack/index.js +0 -136
  317. package/dist/src/components/Breadcrumbs/index.js +0 -82
  318. package/dist/src/components/Bullet/index.js +0 -98
  319. package/dist/src/components/Button/index.js +0 -311
  320. package/dist/src/components/Card/index.js +0 -67
  321. package/dist/src/components/Carousel/index.js +0 -128
  322. package/dist/src/components/Checkbox/index.js +0 -316
  323. package/dist/src/components/CheckboxGroup/index.js +0 -143
  324. package/dist/src/components/CopyButton/index.js +0 -37
  325. package/dist/src/components/DateInput/index.js +0 -242
  326. package/dist/src/components/Dialog/Context.js +0 -12
  327. package/dist/src/components/Dialog/index.js +0 -88
  328. package/dist/src/components/Dialog/subComponents/Button.js +0 -21
  329. package/dist/src/components/Dialog/subComponents/Buttons.js +0 -14
  330. package/dist/src/components/Dialog/subComponents/CancelButton.js +0 -14
  331. package/dist/src/components/Dialog/subComponents/Stack.js +0 -11
  332. package/dist/src/components/Dialog/subComponents/Text.js +0 -12
  333. package/dist/src/components/EmptyState/index.js +0 -112
  334. package/dist/src/components/Expandable/index.js +0 -96
  335. package/dist/src/components/GlobalAlert/GlobalAlertLink.js +0 -38
  336. package/dist/src/components/GlobalAlert/index.js +0 -82
  337. package/dist/src/components/LineChart/CustomLegend.js +0 -138
  338. package/dist/src/components/LineChart/Tooltip.js +0 -43
  339. package/dist/src/components/LineChart/index.js +0 -131
  340. package/dist/src/components/Link/index.js +0 -147
  341. package/dist/src/components/List/Body.js +0 -16
  342. package/dist/src/components/List/Cell.js +0 -43
  343. package/dist/src/components/List/HeaderCell.js +0 -90
  344. package/dist/src/components/List/HeaderRow.js +0 -43
  345. package/dist/src/components/List/Row.js +0 -185
  346. package/dist/src/components/List/SelectBar.js +0 -48
  347. package/dist/src/components/List/SkeletonRows.js +0 -53
  348. package/dist/src/components/List/index.js +0 -75
  349. package/dist/src/components/Loader/index.js +0 -100
  350. package/dist/src/components/Menu/Item.js +0 -112
  351. package/dist/src/components/Menu/index.js +0 -129
  352. package/dist/src/components/MenuV2/Group.js +0 -25
  353. package/dist/src/components/MenuV2/Item.js +0 -139
  354. package/dist/src/components/MenuV2/index.js +0 -118
  355. package/dist/src/components/Meter/index.js +0 -76
  356. package/dist/src/components/Modal/Dialog.js +0 -182
  357. package/dist/src/components/Modal/index.js +0 -113
  358. package/dist/src/components/Notice/index.js +0 -34
  359. package/dist/src/components/Notification/index.js +0 -77
  360. package/dist/src/components/NumberInput/index.js +0 -299
  361. package/dist/src/components/NumberInputV2/index.js +0 -284
  362. package/dist/src/components/Pagination/index.js +0 -117
  363. package/dist/src/components/PasswordCheck/index.js +0 -41
  364. package/dist/src/components/PasswordStrengthMeter/index.js +0 -102
  365. package/dist/src/components/PieChart/Legends.js +0 -138
  366. package/dist/src/components/PieChart/Tooltip.js +0 -61
  367. package/dist/src/components/PieChart/index.js +0 -125
  368. package/dist/src/components/Popover/index.js +0 -146
  369. package/dist/src/components/Popup/helpers.js +0 -252
  370. package/dist/src/components/Popup/index.js +0 -383
  371. package/dist/src/components/ProgressBar/index.js +0 -57
  372. package/dist/src/components/Radio/index.js +0 -157
  373. package/dist/src/components/RadioGroup/index.js +0 -131
  374. package/dist/src/components/Row/index.js +0 -41
  375. package/dist/src/components/SelectInput/index.js +0 -610
  376. package/dist/src/components/SelectInputV2/Dropdown.js +0 -594
  377. package/dist/src/components/SelectInputV2/DropdownOption.js +0 -130
  378. package/dist/src/components/SelectInputV2/SearchBarDropdown.js +0 -122
  379. package/dist/src/components/SelectInputV2/SelectBar.js +0 -282
  380. package/dist/src/components/SelectInputV2/findOptionInOptions.js +0 -11
  381. package/dist/src/components/SelectInputV2/index.js +0 -137
  382. package/dist/src/components/SelectableCard/index.js +0 -175
  383. package/dist/src/components/SelectableCardGroup/index.js +0 -141
  384. package/dist/src/components/Separator/index.js +0 -73
  385. package/dist/src/components/Skeleton/Block.js +0 -35
  386. package/dist/src/components/Skeleton/Blocks.js +0 -34
  387. package/dist/src/components/Skeleton/BoxWithIcon.js +0 -32
  388. package/dist/src/components/Skeleton/Donut.js +0 -55
  389. package/dist/src/components/Skeleton/IconSkeleton.js +0 -19
  390. package/dist/src/components/Skeleton/Line.js +0 -13
  391. package/dist/src/components/Skeleton/List.js +0 -51
  392. package/dist/src/components/Skeleton/Slider.js +0 -36
  393. package/dist/src/components/Skeleton/Square.js +0 -9
  394. package/dist/src/components/Skeleton/index.js +0 -82
  395. package/dist/src/components/Snippet/index.js +0 -200
  396. package/dist/src/components/Stack/index.js +0 -29
  397. package/dist/src/components/Status/index.js +0 -74
  398. package/dist/src/components/StepList/index.js +0 -69
  399. package/dist/src/components/Stepper/index.js +0 -150
  400. package/dist/src/components/SwitchButton/FocusOverlay.js +0 -37
  401. package/dist/src/components/SwitchButton/index.js +0 -108
  402. package/dist/src/components/Table/Body.js +0 -9
  403. package/dist/src/components/Table/Cell.js +0 -21
  404. package/dist/src/components/Table/Header.js +0 -15
  405. package/dist/src/components/Table/HeaderCell.js +0 -103
  406. package/dist/src/components/Table/HeaderRow.js +0 -32
  407. package/dist/src/components/Table/Row.js +0 -89
  408. package/dist/src/components/Table/SelectBar.js +0 -48
  409. package/dist/src/components/Table/SkeletonRows.js +0 -51
  410. package/dist/src/components/Table/index.js +0 -82
  411. package/dist/src/components/Tabs/Tab.js +0 -138
  412. package/dist/src/components/Tabs/TabMenu.js +0 -59
  413. package/dist/src/components/Tabs/TabMenuItem.js +0 -36
  414. package/dist/src/components/Tabs/TabsContext.js +0 -6
  415. package/dist/src/components/Tabs/index.js +0 -117
  416. package/dist/src/components/Tag/index.js +0 -169
  417. package/dist/src/components/TagInput/index.js +0 -309
  418. package/dist/src/components/TagList/index.js +0 -106
  419. package/dist/src/components/Text/index.js +0 -107
  420. package/dist/src/components/TextArea/index.js +0 -210
  421. package/dist/src/components/TextInput/index.js +0 -451
  422. package/dist/src/components/TextInputV2/index.js +0 -289
  423. package/dist/src/components/TimeInput/index.js +0 -37
  424. package/dist/src/components/Toaster/index.js +0 -131
  425. package/dist/src/components/Toggle/index.js +0 -160
  426. package/dist/src/components/ToggleGroup/index.js +0 -122
  427. package/dist/src/components/Tooltip/index.js +0 -55
  428. package/dist/src/components/VerificationCode/index.js +0 -222
  429. package/dist/src/helpers/legend.js +0 -13
  430. package/dist/src/helpers/recursivelyGetChildrenString.js +0 -11
  431. package/dist/src/hooks/useIsOverflowing.js +0 -34
  432. package/dist/src/index.js +0 -77
  433. package/dist/src/theme/index.js +0 -29
  434. package/dist/src/utils/capitalize.js +0 -3
  435. package/dist/src/utils/responsive/Breakpoint.js +0 -12
@@ -1,130 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import { Stack } from '../Stack/index.js';
3
- import { Text } from '../Text/index.js';
4
- import { jsx, jsxs } from '@emotion/react/jsx-runtime';
5
-
6
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7
- const StyledInfo = /*#__PURE__*/_styled("div", {
8
- target: "e18yw4y80"
9
- })(process.env.NODE_ENV === "production" ? {
10
- name: "13vy23x",
11
- styles: "align-content:center"
12
- } : {
13
- name: "13vy23x",
14
- styles: "align-content:center",
15
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
16
- });
17
- const DisplayOption = ({
18
- option,
19
- optionalInfoPlacement,
20
- descriptionDirection
21
- }) => {
22
- if (descriptionDirection === 'row' && optionalInfoPlacement === 'left') {
23
- return jsx(Stack, {
24
- gap: 0.5,
25
- direction: "row",
26
- justifyContent: "left",
27
- "data-testid": `option-stack-${option.value}`,
28
- children: jsxs(Stack, {
29
- gap: 0.5,
30
- direction: "row",
31
- alignItems: "center",
32
- children: [option.optionalInfo ?? null, jsx(Text, {
33
- as: "span",
34
- variant: "body",
35
- placement: "left",
36
- children: option.label
37
- }), option.description ? jsx(Text, {
38
- as: "span",
39
- variant: "bodySmall",
40
- sentiment: "neutral",
41
- placement: "left",
42
- prominence: "weak",
43
- children: option.description
44
- }) : null]
45
- })
46
- });
47
- }
48
- if (descriptionDirection === 'row' && optionalInfoPlacement === 'right') {
49
- return jsxs(Stack, {
50
- gap: 0.5,
51
- direction: "row",
52
- justifyContent: "space-between",
53
- alignItems: "baseline",
54
- "data-testid": `option-stack-${option.value}`,
55
- children: [jsxs(Stack, {
56
- gap: 0.5,
57
- direction: "row",
58
- children: [jsx(Text, {
59
- as: "span",
60
- variant: "body",
61
- placement: "left",
62
- children: option.label
63
- }), option.description ? jsx(Text, {
64
- as: "span",
65
- variant: "bodySmall",
66
- sentiment: "neutral",
67
- placement: "left",
68
- prominence: "weak",
69
- children: option.description
70
- }) : null]
71
- }), option.optionalInfo ? jsx(StyledInfo, {
72
- children: option.optionalInfo
73
- }) : null]
74
- });
75
- }
76
- if (descriptionDirection === 'column' && optionalInfoPlacement === 'left') {
77
- return jsxs(Stack, {
78
- gap: 0.5,
79
- direction: "row",
80
- justifyContent: option.optionalInfo ? 'left' : 'space-between',
81
- alignItems: "normal",
82
- children: [option.optionalInfo ?? null, jsxs(Stack, {
83
- gap: 0.5,
84
- direction: "column",
85
- "data-testid": `option-stack-${option.value}`,
86
- children: [jsx(Text, {
87
- as: "span",
88
- variant: "body",
89
- placement: "left",
90
- children: option.label
91
- }), option.description ? jsx(Text, {
92
- as: "span",
93
- variant: "bodySmall",
94
- sentiment: "neutral",
95
- placement: "left",
96
- prominence: "weak",
97
- children: option.description
98
- }) : null]
99
- })]
100
- });
101
- }
102
- return jsxs(Stack, {
103
- gap: 0.5,
104
- direction: "column",
105
- alignItems: "normal",
106
- "data-testid": `option-stack-${option.value}`,
107
- children: [jsxs(Stack, {
108
- gap: 0.5,
109
- direction: "row",
110
- justifyContent: "space-between",
111
- children: [jsx(Text, {
112
- as: "span",
113
- variant: "body",
114
- placement: "left",
115
- children: option.label
116
- }), option.optionalInfo ? jsx(StyledInfo, {
117
- children: option.optionalInfo
118
- }) : null]
119
- }), option.description ? jsx(Text, {
120
- as: "span",
121
- variant: "bodySmall",
122
- sentiment: "neutral",
123
- placement: "left",
124
- prominence: "weak",
125
- children: option.description
126
- }) : null]
127
- });
128
- };
129
-
130
- export { DisplayOption };
@@ -1,122 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import { Icon } from '@ultraviolet/icons';
3
- import { useRef } from 'react';
4
- import { TextInputV2 } from '../TextInputV2/index.js';
5
- import { useSelectInput } from './SelectInputProvider.js';
6
- import { jsx } from '@emotion/react/jsx-runtime';
7
-
8
- const StyledInput = /*#__PURE__*/_styled(TextInputV2, {
9
- target: "e1ag0nf0"
10
- })("padding-top:", ({
11
- theme
12
- }) => theme.space[1.5], ";padding-bottom:", ({
13
- theme
14
- }) => theme.space[1.5], ";padding-left:", ({
15
- theme
16
- }) => theme.space[2], ";padding-right:", ({
17
- theme
18
- }) => theme.space[2], ";");
19
- const findClosestOption = (options, searchInput) => {
20
- if (searchInput) {
21
- if (!Array.isArray(options)) {
22
- const possibleOptions = {
23
- ...options
24
- };
25
- Object.keys(possibleOptions).map(group => {
26
- possibleOptions[group] = possibleOptions[group].filter(option => !option.disabled);
27
- return null;
28
- });
29
- if (Object.keys(possibleOptions).some(group => possibleOptions[group].length > 0)) {
30
- const firstFit = Object.keys(possibleOptions).map(group => possibleOptions[group][0]).filter(value => !!value)[0];
31
- return firstFit;
32
- }
33
- } else {
34
- const possibleOptions = [...options].filter(option => !option.disabled);
35
- if (possibleOptions.length > 0) {
36
- return possibleOptions[0];
37
- }
38
- }
39
- }
40
- return null;
41
- };
42
- const SearchBarDropdown = ({
43
- placeholder,
44
- displayedOptions,
45
- setSearchBarActive
46
- }) => {
47
- const searchInputRef = useRef(null);
48
- const {
49
- onChange,
50
- onSearch,
51
- setSearchInput,
52
- searchInput,
53
- options,
54
- multiselect,
55
- setSelectedData,
56
- selectedData
57
- } = useSelectInput();
58
- const handleChange = search => {
59
- if (search.length > 0) {
60
- // case insensitive search
61
- const regex = RegExp(search, 'i');
62
- if (!Array.isArray(options)) {
63
- const filteredOptions = {
64
- ...options
65
- };
66
- Object.keys(filteredOptions).map(group => {
67
- filteredOptions[group] = filteredOptions[group].filter(option => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
68
- return null;
69
- });
70
- onSearch(filteredOptions);
71
- } else {
72
- const filteredOptions = [...options].filter(option => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
73
- onSearch(filteredOptions);
74
- }
75
- } else {
76
- onSearch(options);
77
- }
78
- setSearchInput(search);
79
- };
80
- const handleKeyDown = (key, search) => {
81
- if (key === 'Enter') {
82
- const closestOption = findClosestOption(displayedOptions, search);
83
- if (closestOption) {
84
- if (multiselect) {
85
- setSelectedData({
86
- type: 'selectOption',
87
- clickedOption: closestOption,
88
- group: !Array.isArray(options) ? Object.keys(options).filter(group => options[group].includes(closestOption))[0] : undefined
89
- });
90
- onChange?.(selectedData.selectedValues.includes(closestOption.value) ? selectedData.selectedValues : [...selectedData.selectedValues, closestOption.value]);
91
- setSearchInput(closestOption.searchText ?? closestOption.value);
92
- } else {
93
- setSelectedData({
94
- type: 'selectOption',
95
- clickedOption: closestOption
96
- });
97
- onChange?.(selectedData.selectedValues[0] ?? '');
98
- }
99
- }
100
- }
101
- };
102
- return jsx(StyledInput, {
103
- value: searchInput,
104
- onChange: event => handleChange(event),
105
- placeholder: placeholder,
106
- onFocus: () => setSearchBarActive(true),
107
- onBlur: () => setSearchBarActive(false),
108
- "data-testid": "search-bar",
109
- prefix: jsx(Icon, {
110
- name: "search",
111
- size: "small",
112
- sentiment: "neutral"
113
- }),
114
- onKeyDown: event => handleKeyDown(event.key, searchInput),
115
- size: "medium",
116
- autoFocus: true,
117
- "aria-label": "search-bar",
118
- ref: searchInputRef
119
- });
120
- };
121
-
122
- export { SearchBarDropdown };
@@ -1,282 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import { Icon } from '@ultraviolet/icons';
3
- import { useRef, useState, useMemo, useEffect } from 'react';
4
- import { Button } from '../Button/index.js';
5
- import { Stack } from '../Stack/index.js';
6
- import { Tag } from '../Tag/index.js';
7
- import { Text } from '../Text/index.js';
8
- import { useSelectInput } from './SelectInputProvider.js';
9
- import { findOptionInOptions } from './findOptionInOptions.js';
10
- import { INPUT_SIZE_HEIGHT, SIZES_TAG } from './types.js';
11
- import { jsxs, jsx } from '@emotion/react/jsx-runtime';
12
-
13
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14
- const StateStack = /*#__PURE__*/_styled(Stack, {
15
- target: "ejy0aca3"
16
- })("padding-right:", ({
17
- theme
18
- }) => theme.space['2'], ";display:flex;");
19
- const StyledInputWrapper = /*#__PURE__*/_styled(Stack, {
20
- target: "ejy0aca2"
21
- })("display:flex;padding:", ({
22
- theme
23
- }) => theme.space[1], ";padding-right:0;padding-left:", ({
24
- theme
25
- }) => theme.space[2], ";cursor:pointer;box-shadow:none;background:", ({
26
- theme
27
- }) => theme.colors.neutral.background, ";border-radius:", ({
28
- theme
29
- }) => theme.radii.default, ";&[data-readonly='true']{background:", ({
30
- theme
31
- }) => theme.colors.neutral.backgroundWeak, ";border-color:", ({
32
- theme
33
- }) => theme.colors.neutral.border, ";cursor:default;}&[data-disabled='true']{background:", ({
34
- theme
35
- }) => theme.colors.neutral.backgroundDisabled, ";border-color:", ({
36
- theme
37
- }) => theme.colors.neutral.borderDisabled, ";cursor:not-allowed;}&[data-size='small']{height:", INPUT_SIZE_HEIGHT.small, "px;}&[data-size='medium']{height:", INPUT_SIZE_HEIGHT.medium, "px;}&[data-size='large']{height:", INPUT_SIZE_HEIGHT.large, "px;}&[data-state='neutral']{border:1px solid ", ({
38
- theme
39
- }) => theme.colors.neutral.border, ";}&[data-state='success']{border:1px solid ", ({
40
- theme
41
- }) => theme.colors.success.border, ";}&[data-state='danger']{border:1px solid ", ({
42
- theme
43
- }) => theme.colors.danger.border, ";}&:not([data-disabled='true']):not([data-readonly]):hover{border-color:", ({
44
- theme
45
- }) => theme.colors.primary.border, ";}&:not([data-disabled='true']):not([data-readonly]):active{box-shadow:", ({
46
- theme
47
- }) => theme.shadows.focusPrimary, ";}&:hover,:focus{border-color:", ({
48
- theme
49
- }) => theme.colors.primary.borderHover, ";outline:none;}&[data-dropdownvisible='true']{box-shadow:", ({
50
- theme
51
- }) => theme.shadows.focusPrimary, ";border-color:", ({
52
- theme
53
- }) => theme.colors.primary.borderHover, ";}");
54
- const CustomTag = /*#__PURE__*/_styled(Tag, {
55
- target: "ejy0aca1"
56
- })(process.env.NODE_ENV === "production" ? {
57
- name: "1snt5jp",
58
- styles: "height:fit-content;width:fit-content"
59
- } : {
60
- name: "1snt5jp",
61
- styles: "height:fit-content;width:fit-content",
62
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
63
- });
64
- const StyledPlaceholder = /*#__PURE__*/_styled(Text, {
65
- target: "ejy0aca0"
66
- })("color:", ({
67
- theme
68
- }) => theme.colors.neutral.textWeak, ";text-size:", ({
69
- theme
70
- }) => theme.typography.body.fontSize, ";display:flex;flex:1;align-self:center;&[data-disabled='true']{color:", ({
71
- theme
72
- }) => theme.colors.neutral.textWeakDisabled, ";}");
73
- const isValidSelectedValue = (selectedValue, options) => !Array.isArray(options) ? Object.keys(options).some(group => options[group].some(option => option.value === selectedValue && !option.disabled)) : options.some(option => option.value === selectedValue && !option.disabled);
74
- const DisplayValues = ({
75
- refTag,
76
- nonOverflowedValues,
77
- disabled,
78
- readOnly,
79
- overflowed,
80
- overflowAmount,
81
- size
82
- }) => {
83
- const {
84
- multiselect,
85
- selectedData,
86
- setSelectedData,
87
- options,
88
- onChange
89
- } = useSelectInput();
90
- return multiselect ? jsxs(Stack, {
91
- direction: "row",
92
- gap: "1",
93
- wrap: "nowrap",
94
- ref: refTag,
95
- alignItems: "center",
96
- children: [nonOverflowedValues.map(option => jsx(CustomTag, {
97
- "data-testid": "selected-options-tags",
98
- sentiment: "neutral",
99
- disabled: disabled,
100
- onClose: !readOnly ? event => {
101
- event.stopPropagation();
102
- setSelectedData({
103
- type: 'selectOption',
104
- clickedOption: option
105
- });
106
- const newSelectedValues = selectedData.selectedValues?.filter(val => val !== option.value);
107
- onChange?.(newSelectedValues);
108
- } : undefined,
109
- children: option?.label
110
- }, option?.value)), overflowed ? jsxs(Tag, {
111
- sentiment: "neutral",
112
- disabled: disabled,
113
- "data-testid": "plus-tag",
114
- "aria-label": "Plus tag",
115
- children: [jsx(Icon, {
116
- name: "plus"
117
- }), overflowAmount]
118
- }, "+") : null]
119
- }) : jsx(Text, {
120
- as: "p",
121
- variant: size === 'large' ? 'body' : 'bodySmall',
122
- children: selectedData.selectedValues[0] ? findOptionInOptions(options, selectedData.selectedValues[0])?.label : null
123
- });
124
- };
125
- const SelectBar = ({
126
- size,
127
- clearable,
128
- disabled,
129
- readOnly,
130
- placeholder,
131
- success,
132
- error,
133
- autoFocus,
134
- innerRef
135
- }) => {
136
- const {
137
- isDropdownVisible,
138
- onChange,
139
- setIsDropdownVisible,
140
- options,
141
- selectedData,
142
- setSelectedData,
143
- multiselect
144
- } = useSelectInput();
145
- const openable = !(readOnly || disabled);
146
- const refTag = useRef(null);
147
- const width = innerRef.current?.offsetWidth;
148
- const [overflowed, setOverflowed] = useState(false);
149
- const [overflowAmount, setOverflowAmount] = useState(0);
150
- const [nonOverflowedValues, setNonOverFlowedValues] = useState(() => {
151
- if (selectedData.selectedValues[0]) {
152
- const firstSelectOption = findOptionInOptions(options, selectedData.selectedValues[0]);
153
- return firstSelectOption ? [firstSelectOption] : [];
154
- }
155
- return [];
156
- });
157
- const state = useMemo(() => {
158
- if (error) {
159
- return 'danger';
160
- }
161
- if (success) {
162
- return 'success';
163
- }
164
- return 'neutral';
165
- }, [error, success]);
166
- useEffect(() => {
167
- // When too many items are selected, too avoid overflow, compute the number of tags to display and add a + tag
168
- let tagsWidth = 0;
169
- let computedOverflowAmount = 0;
170
- let computedNonOverflowedValues = [];
171
- const newSelectedValues = selectedData.selectedValues.filter(selectedValue => isValidSelectedValue(selectedValue, options));
172
- for (const selectedValue of newSelectedValues) {
173
- const selectedOption = findOptionInOptions(options, selectedValue);
174
- if (selectedOption?.label && width && isValidSelectedValue(selectedValue, options)) {
175
- const lengthValue = selectedOption.value.length; // Find a better way to find the number of displayed characters?
176
- const totalTagWidth = SIZES_TAG.tagWidth + SIZES_TAG.letterWidth * lengthValue;
177
- if (totalTagWidth + tagsWidth > width - 100) {
178
- computedOverflowAmount += 1;
179
- setOverflowAmount(computedOverflowAmount);
180
- } else {
181
- computedNonOverflowedValues = [...computedNonOverflowedValues, selectedOption];
182
- setNonOverFlowedValues(computedNonOverflowedValues);
183
- tagsWidth += totalTagWidth;
184
- }
185
- }
186
- }
187
- if (computedOverflowAmount === 0) {
188
- setOverflowed(false);
189
- } else {
190
- setOverflowed(true);
191
- }
192
- setOverflowAmount(computedOverflowAmount);
193
- }, [options, selectedData.selectedValues, width]);
194
- useEffect(() => {
195
- setSelectedData({
196
- type: 'update'
197
- });
198
- }, [setSelectedData, options]);
199
- return jsxs(StyledInputWrapper, {
200
- "data-disabled": disabled,
201
- "data-readonly": readOnly,
202
- "data-size": size,
203
- "data-dropdownvisible": isDropdownVisible,
204
- "data-state": state,
205
- direction: "row",
206
- wrap: "nowrap",
207
- gap: "1",
208
- justifyContent: "space-between",
209
- alignItems: "center",
210
- onClick: openable ? () => setIsDropdownVisible(!isDropdownVisible) : undefined,
211
- "data-testid": "select-bar",
212
- autoFocus: autoFocus,
213
- onKeyDown: event => {
214
- if (event.key === 'ArrowDown') {
215
- if (!isDropdownVisible) {
216
- setIsDropdownVisible(true);
217
- } else {
218
- document.getElementById(`option-0`)?.focus();
219
- }
220
- }
221
- return ['Enter', ' '].includes(event.key) && openable ? setIsDropdownVisible(!isDropdownVisible) : null;
222
- },
223
- ref: innerRef,
224
- "aria-labelledby": "select bar",
225
- "aria-haspopup": "listbox",
226
- "aria-expanded": isDropdownVisible,
227
- "aria-controls": "select-dropdown",
228
- tabIndex: 0,
229
- children: [selectedData.selectedValues.length > 0 ? jsx(DisplayValues, {
230
- refTag: refTag,
231
- nonOverflowedValues: nonOverflowedValues,
232
- disabled: disabled,
233
- readOnly: readOnly,
234
- overflowed: overflowed,
235
- overflowAmount: overflowAmount,
236
- size: size
237
- }) : jsx(StyledPlaceholder, {
238
- as: "p",
239
- variant: size === 'large' ? 'body' : 'bodySmall',
240
- "data-disabled": disabled,
241
- children: placeholder
242
- }), jsxs(StateStack, {
243
- direction: "row",
244
- gap: 1,
245
- alignItems: "center",
246
- children: [error ? jsx(Icon, {
247
- name: "alert",
248
- sentiment: "danger"
249
- }) : null, success && !error ? jsx(Icon, {
250
- name: "checkbox-circle-outline",
251
- sentiment: "success"
252
- }) : null, clearable && selectedData.selectedValues.length > 0 ? jsx(Button, {
253
- "aria-label": "clear value",
254
- disabled: disabled || ![selectedData.selectedValues[0]] || readOnly,
255
- variant: "ghost",
256
- size: "small",
257
- icon: "close",
258
- onClick: event => {
259
- event.stopPropagation();
260
- setSelectedData({
261
- type: 'clearAll'
262
- });
263
- if (multiselect) {
264
- onChange?.([]);
265
- } else {
266
- onChange?.('');
267
- }
268
- },
269
- sentiment: "neutral",
270
- "data-testid": "clear-all"
271
- }) : null, jsx(Icon, {
272
- "aria-label": "show dropdown",
273
- size: "small",
274
- name: "arrow-down",
275
- sentiment: "neutral",
276
- disabled: disabled || readOnly
277
- })]
278
- })]
279
- });
280
- };
281
-
282
- export { SelectBar };
@@ -1,11 +0,0 @@
1
- const findOptionInOptions = (options, optionValue) => {
2
- let flatOptions = [];
3
- if (!Array.isArray(options)) {
4
- flatOptions = Object.keys(options).map(group => options[group]).flat();
5
- } else {
6
- flatOptions = options;
7
- }
8
- return flatOptions.find(option => option.value === optionValue);
9
- };
10
-
11
- export { findOptionInOptions };
@@ -1,137 +0,0 @@
1
- import _styled from '@emotion/styled/base';
2
- import { Icon } from '@ultraviolet/icons';
3
- import { useRef } from 'react';
4
- import { Stack } from '../Stack/index.js';
5
- import { Text } from '../Text/index.js';
6
- import { Dropdown } from './Dropdown.js';
7
- import { SelectBar } from './SelectBar.js';
8
- import { SelectInputProvider } from './SelectInputProvider.js';
9
- import { jsx, jsxs } from '@emotion/react/jsx-runtime';
10
-
11
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12
- const SelectInputContainer = /*#__PURE__*/_styled("div", {
13
- target: "ebdnz3x1"
14
- })(process.env.NODE_ENV === "production" ? {
15
- name: "1d3w5wq",
16
- styles: "width:100%"
17
- } : {
18
- name: "1d3w5wq",
19
- styles: "width:100%",
20
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
21
- });
22
- const HelperText = /*#__PURE__*/_styled(Text, {
23
- target: "ebdnz3x0"
24
- })("padding-top:", ({
25
- theme
26
- }) => theme.space['0.5'], ";");
27
-
28
- /**
29
- * SelectInputV2 component is used to select one or many elements from a selection.
30
- */
31
- const SelectInputV2 = ({
32
- name,
33
- id,
34
- onBlur,
35
- onFocus,
36
- onChange,
37
- 'aria-label': ariaLabel,
38
- value,
39
- label,
40
- helper,
41
- options,
42
- size = 'large',
43
- emptyState,
44
- descriptionDirection = 'column',
45
- success,
46
- error,
47
- 'data-testid': dataTestId,
48
- className,
49
- footer,
50
- placeholderSearch = 'Search in list',
51
- placeholder = 'Select item',
52
- searchable = true,
53
- disabled = false,
54
- readOnly = false,
55
- clearable = true,
56
- multiselect = false,
57
- required = false,
58
- labelDescription,
59
- autofocus,
60
- loadMore,
61
- optionalInfoPlacement = 'right',
62
- isLoading,
63
- selectAll,
64
- selectAllGroup = false
65
- }) => {
66
- const ref = useRef(null);
67
- const numberOfOptions = Array.isArray(options) ? options.length : Object.values(options).reduce((acc, current) => acc + current.filter(option => !option.disabled).length, 0);
68
- return jsx(SelectInputProvider, {
69
- options: options,
70
- multiselect: multiselect,
71
- selectAll: selectAll,
72
- value: value,
73
- selectAllGroup: selectAllGroup,
74
- numberOfOptions: numberOfOptions,
75
- onChange: onChange,
76
- children: jsxs(SelectInputContainer, {
77
- id: id,
78
- onBlur: onBlur,
79
- onFocus: onFocus,
80
- "data-testid": dataTestId,
81
- className: className,
82
- "aria-label": name,
83
- children: [jsx(Dropdown, {
84
- emptyState: emptyState,
85
- descriptionDirection: descriptionDirection,
86
- searchable: searchable,
87
- placeholder: placeholderSearch,
88
- footer: footer,
89
- refSelect: ref,
90
- loadMore: loadMore,
91
- optionalInfoPlacement: optionalInfoPlacement,
92
- isLoading: isLoading,
93
- children: jsxs(Stack, {
94
- gap: 0.5,
95
- "aria-label": ariaLabel,
96
- children: [jsxs(Stack, {
97
- direction: "row",
98
- gap: 0.5,
99
- children: [label ? jsx(Text, {
100
- as: "label",
101
- variant: size === 'large' ? 'bodyStrong' : 'bodySmallStrong',
102
- children: label
103
- }) : null, required && label ? jsx(Icon, {
104
- name: "asterisk",
105
- sentiment: "danger",
106
- size: 8
107
- }) : null, labelDescription ?? null]
108
- }), jsx(SelectBar, {
109
- size: size,
110
- clearable: clearable,
111
- readOnly: readOnly,
112
- disabled: disabled,
113
- placeholder: placeholder,
114
- success: success,
115
- error: error,
116
- autoFocus: autofocus,
117
- innerRef: ref
118
- })]
119
- })
120
- }), !error && !success ? jsx(HelperText, {
121
- variant: "caption",
122
- as: "p",
123
- sentiment: "neutral",
124
- prominence: "default",
125
- children: helper
126
- }) : null, error || success ? jsx(HelperText, {
127
- variant: "caption",
128
- as: "p",
129
- sentiment: error ? 'danger' : 'success',
130
- prominence: "default",
131
- children: error || success
132
- }) : null]
133
- })
134
- });
135
- };
136
-
137
- export { SelectInputV2 };