@ultraviolet/ui 1.51.2 → 1.51.4

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 (275) hide show
  1. package/dist/components/ActionBar/index.cjs +32 -0
  2. package/dist/components/ActionBar/index.js +16 -26
  3. package/dist/components/Alert/index.cjs +117 -0
  4. package/dist/components/Alert/index.js +77 -88
  5. package/dist/components/Avatar/index.cjs +59 -0
  6. package/dist/components/Avatar/index.js +29 -26
  7. package/dist/components/Badge/index.cjs +101 -0
  8. package/dist/components/Badge/index.js +36 -52
  9. package/dist/components/Banner/assets/default-image-small.svg.cjs +3 -0
  10. package/dist/components/Banner/assets/default-image.svg.cjs +3 -0
  11. package/dist/components/Banner/index.cjs +118 -0
  12. package/dist/components/Banner/index.js +64 -139
  13. package/dist/components/BarChart/Tooltip.cjs +42 -0
  14. package/dist/components/BarChart/Tooltip.js +23 -18
  15. package/dist/components/BarChart/index.cjs +69 -0
  16. package/dist/components/BarChart/index.js +29 -42
  17. package/dist/components/BarStack/index.cjs +116 -0
  18. package/dist/components/BarStack/index.js +89 -163
  19. package/dist/components/Breadcrumbs/index.cjs +75 -0
  20. package/dist/components/Breadcrumbs/index.js +30 -33
  21. package/dist/components/Bullet/index.cjs +86 -0
  22. package/dist/components/Bullet/index.js +24 -28
  23. package/dist/components/Button/index.cjs +251 -0
  24. package/dist/components/Button/index.js +117 -159
  25. package/dist/components/Card/index.cjs +54 -0
  26. package/dist/components/Card/index.js +45 -52
  27. package/dist/components/Carousel/index.cjs +125 -0
  28. package/dist/components/Carousel/index.js +75 -99
  29. package/dist/components/Checkbox/index.cjs +264 -0
  30. package/dist/components/Checkbox/index.js +246 -343
  31. package/dist/components/CheckboxGroup/index.cjs +118 -0
  32. package/dist/components/CheckboxGroup/index.js +60 -56
  33. package/dist/components/CopyButton/index.cjs +25 -0
  34. package/dist/components/CopyButton/index.js +1 -15
  35. package/dist/components/DateInput/datepicker.css.cjs +3 -0
  36. package/dist/components/DateInput/index.cjs +185 -0
  37. package/dist/components/DateInput/index.js +124 -243
  38. package/dist/components/Dialog/Context.cjs +13 -0
  39. package/dist/components/Dialog/Context.js +1 -3
  40. package/dist/components/Dialog/index.cjs +68 -0
  41. package/dist/components/Dialog/index.js +22 -43
  42. package/dist/components/Dialog/subComponents/Button.cjs +15 -0
  43. package/dist/components/Dialog/subComponents/Button.js +1 -10
  44. package/dist/components/Dialog/subComponents/Buttons.cjs +12 -0
  45. package/dist/components/Dialog/subComponents/CancelButton.cjs +9 -0
  46. package/dist/components/Dialog/subComponents/Stack.cjs +8 -0
  47. package/dist/components/Dialog/subComponents/Stack.js +3 -1
  48. package/dist/components/Dialog/subComponents/Text.cjs +8 -0
  49. package/dist/components/Dialog/subComponents/Text.js +3 -1
  50. package/dist/components/EmptyState/index.cjs +92 -0
  51. package/dist/components/EmptyState/index.js +58 -50
  52. package/dist/components/Expandable/index.cjs +77 -0
  53. package/dist/components/Expandable/index.js +19 -23
  54. package/dist/components/GlobalAlert/GlobalAlertLink.cjs +23 -0
  55. package/dist/components/GlobalAlert/GlobalAlertLink.js +4 -20
  56. package/dist/components/GlobalAlert/index.cjs +61 -0
  57. package/dist/components/GlobalAlert/index.js +34 -87
  58. package/dist/components/LineChart/CustomLegend.cjs +115 -0
  59. package/dist/components/LineChart/CustomLegend.js +76 -72
  60. package/dist/components/LineChart/Tooltip.cjs +37 -0
  61. package/dist/components/LineChart/Tooltip.js +26 -37
  62. package/dist/components/LineChart/helpers.cjs +52 -0
  63. package/dist/components/LineChart/helpers.js +11 -9
  64. package/dist/components/LineChart/index.cjs +101 -0
  65. package/dist/components/LineChart/index.js +38 -55
  66. package/dist/components/Link/index.cjs +130 -0
  67. package/dist/components/Link/index.js +86 -125
  68. package/dist/components/List/Body.cjs +18 -0
  69. package/dist/components/List/Body.js +12 -7
  70. package/dist/components/List/Cell.cjs +43 -0
  71. package/dist/components/List/Cell.js +36 -33
  72. package/dist/components/List/HeaderCell.cjs +84 -0
  73. package/dist/components/List/HeaderCell.js +54 -68
  74. package/dist/components/List/HeaderRow.cjs +38 -0
  75. package/dist/components/List/HeaderRow.js +16 -18
  76. package/dist/components/List/ListContext.cjs +136 -0
  77. package/dist/components/List/ListContext.js +68 -87
  78. package/dist/components/List/Row.cjs +163 -0
  79. package/dist/components/List/Row.js +136 -169
  80. package/dist/components/List/SelectBar.cjs +54 -0
  81. package/dist/components/List/SelectBar.js +31 -14
  82. package/dist/components/List/SkeletonRows.cjs +57 -0
  83. package/dist/components/List/SkeletonRows.js +42 -23
  84. package/dist/components/List/constants.cjs +6 -0
  85. package/dist/components/List/index.cjs +62 -0
  86. package/dist/components/List/index.js +39 -59
  87. package/dist/components/Loader/index.cjs +79 -0
  88. package/dist/components/Loader/index.js +44 -65
  89. package/dist/components/Menu/Item.cjs +92 -0
  90. package/dist/components/Menu/Item.js +52 -62
  91. package/dist/components/Menu/index.cjs +118 -0
  92. package/dist/components/Menu/index.js +105 -171
  93. package/dist/components/MenuV2/Group.cjs +23 -0
  94. package/dist/components/MenuV2/Group.js +14 -16
  95. package/dist/components/MenuV2/Item.cjs +114 -0
  96. package/dist/components/MenuV2/Item.js +67 -74
  97. package/dist/components/MenuV2/index.cjs +92 -0
  98. package/dist/components/MenuV2/index.js +76 -110
  99. package/dist/components/Meter/index.cjs +65 -0
  100. package/dist/components/Meter/index.js +44 -57
  101. package/dist/components/Modal/Dialog.cjs +143 -0
  102. package/dist/components/Modal/Dialog.js +44 -100
  103. package/dist/components/Modal/Disclosure.cjs +44 -0
  104. package/dist/components/Modal/constants.cjs +52 -0
  105. package/dist/components/Modal/index.cjs +81 -0
  106. package/dist/components/Modal/index.js +23 -58
  107. package/dist/components/Notice/index.cjs +25 -0
  108. package/dist/components/Notice/index.js +13 -29
  109. package/dist/components/Notification/index.cjs +49 -0
  110. package/dist/components/Notification/index.js +9 -48
  111. package/dist/components/Notification/react-toastify.css.cjs +3 -0
  112. package/dist/components/NumberInput/helpers.cjs +10 -0
  113. package/dist/components/NumberInput/index.cjs +264 -0
  114. package/dist/components/NumberInput/index.js +113 -200
  115. package/dist/components/NumberInputV2/index.cjs +223 -0
  116. package/dist/components/NumberInputV2/index.js +200 -349
  117. package/dist/components/Pagination/getPageNumbers.cjs +23 -0
  118. package/dist/components/Pagination/getPageNumbers.js +3 -1
  119. package/dist/components/Pagination/index.cjs +90 -0
  120. package/dist/components/Pagination/index.js +45 -81
  121. package/dist/components/PasswordCheck/index.cjs +26 -0
  122. package/dist/components/PasswordCheck/index.js +10 -15
  123. package/dist/components/PasswordStrengthMeter/index.cjs +98 -0
  124. package/dist/components/PasswordStrengthMeter/index.js +66 -68
  125. package/dist/components/PieChart/Legends.cjs +143 -0
  126. package/dist/components/PieChart/Legends.js +121 -99
  127. package/dist/components/PieChart/Tooltip.cjs +50 -0
  128. package/dist/components/PieChart/Tooltip.js +35 -15
  129. package/dist/components/PieChart/index.cjs +103 -0
  130. package/dist/components/PieChart/index.js +68 -87
  131. package/dist/components/Popover/index.cjs +102 -0
  132. package/dist/components/Popover/index.js +57 -106
  133. package/dist/components/Popup/animations.cjs +25 -0
  134. package/dist/components/Popup/helpers.cjs +216 -0
  135. package/dist/components/Popup/helpers.js +24 -12
  136. package/dist/components/Popup/index.cjs +299 -0
  137. package/dist/components/Popup/index.js +263 -351
  138. package/dist/components/ProgressBar/index.cjs +55 -0
  139. package/dist/components/ProgressBar/index.js +33 -51
  140. package/dist/components/Radio/index.cjs +135 -0
  141. package/dist/components/Radio/index.js +119 -188
  142. package/dist/components/RadioGroup/index.cjs +101 -0
  143. package/dist/components/RadioGroup/index.js +46 -51
  144. package/dist/components/Row/index.cjs +36 -0
  145. package/dist/components/Row/index.js +11 -20
  146. package/dist/components/SelectInput/index.cjs +520 -0
  147. package/dist/components/SelectInput/index.js +165 -212
  148. package/dist/components/SelectInputV2/Dropdown.cjs +431 -0
  149. package/dist/components/SelectInputV2/Dropdown.js +233 -473
  150. package/dist/components/SelectInputV2/DropdownOption.cjs +64 -0
  151. package/dist/components/SelectInputV2/DropdownOption.js +44 -115
  152. package/dist/components/SelectInputV2/SearchBarDropdown.cjs +109 -0
  153. package/dist/components/SelectInputV2/SearchBarDropdown.js +28 -44
  154. package/dist/components/SelectInputV2/SelectBar.cjs +226 -0
  155. package/dist/components/SelectInputV2/SelectBar.js +137 -240
  156. package/dist/components/SelectInputV2/SelectInputProvider.cjs +171 -0
  157. package/dist/components/SelectInputV2/SelectInputProvider.js +45 -77
  158. package/dist/components/SelectInputV2/findOptionInOptions.cjs +12 -0
  159. package/dist/components/SelectInputV2/index.cjs +89 -0
  160. package/dist/components/SelectInputV2/index.js +39 -98
  161. package/dist/components/SelectInputV2/types.cjs +13 -0
  162. package/dist/components/SelectableCard/index.cjs +139 -0
  163. package/dist/components/SelectableCard/index.js +127 -183
  164. package/dist/components/SelectableCardGroup/index.cjs +109 -0
  165. package/dist/components/SelectableCardGroup/index.js +50 -55
  166. package/dist/components/Separator/index.cjs +58 -0
  167. package/dist/components/Separator/index.js +44 -64
  168. package/dist/components/Skeleton/Block.cjs +40 -0
  169. package/dist/components/Skeleton/Block.js +28 -20
  170. package/dist/components/Skeleton/Blocks.cjs +40 -0
  171. package/dist/components/Skeleton/Blocks.js +26 -16
  172. package/dist/components/Skeleton/BoxWithIcon.cjs +38 -0
  173. package/dist/components/Skeleton/BoxWithIcon.js +24 -17
  174. package/dist/components/Skeleton/Donut.cjs +63 -0
  175. package/dist/components/Skeleton/Donut.js +46 -21
  176. package/dist/components/Skeleton/IconSkeleton.cjs +24 -0
  177. package/dist/components/Skeleton/IconSkeleton.js +19 -9
  178. package/dist/components/Skeleton/Line.cjs +18 -0
  179. package/dist/components/Skeleton/Line.js +11 -8
  180. package/dist/components/Skeleton/List.cjs +58 -0
  181. package/dist/components/Skeleton/List.js +48 -21
  182. package/dist/components/Skeleton/Slider.cjs +42 -0
  183. package/dist/components/Skeleton/Slider.js +36 -22
  184. package/dist/components/Skeleton/Square.cjs +14 -0
  185. package/dist/components/Skeleton/Square.js +9 -7
  186. package/dist/components/Skeleton/index.cjs +81 -0
  187. package/dist/components/Skeleton/index.js +38 -45
  188. package/dist/components/Snippet/index.cjs +184 -0
  189. package/dist/components/Snippet/index.js +139 -128
  190. package/dist/components/Stack/index.cjs +31 -0
  191. package/dist/components/Stack/index.js +10 -17
  192. package/dist/components/Status/index.cjs +74 -0
  193. package/dist/components/Status/index.js +42 -27
  194. package/dist/components/StepList/index.cjs +60 -0
  195. package/dist/components/StepList/index.js +34 -45
  196. package/dist/components/Stepper/index.cjs +147 -0
  197. package/dist/components/Stepper/index.js +106 -114
  198. package/dist/components/SwitchButton/FocusOverlay.cjs +40 -0
  199. package/dist/components/SwitchButton/FocusOverlay.js +18 -27
  200. package/dist/components/SwitchButton/index.cjs +78 -0
  201. package/dist/components/SwitchButton/index.js +39 -103
  202. package/dist/components/Table/Body.cjs +7 -0
  203. package/dist/components/Table/Body.js +3 -1
  204. package/dist/components/Table/Cell.cjs +21 -0
  205. package/dist/components/Table/Cell.js +15 -6
  206. package/dist/components/Table/Header.cjs +18 -0
  207. package/dist/components/Table/Header.js +12 -5
  208. package/dist/components/Table/HeaderCell.cjs +82 -0
  209. package/dist/components/Table/HeaderCell.js +48 -91
  210. package/dist/components/Table/HeaderRow.cjs +23 -0
  211. package/dist/components/Table/HeaderRow.js +11 -13
  212. package/dist/components/Table/Row.cjs +82 -0
  213. package/dist/components/Table/Row.js +39 -44
  214. package/dist/components/Table/SelectBar.cjs +54 -0
  215. package/dist/components/Table/SelectBar.js +31 -14
  216. package/dist/components/Table/SkeletonRows.cjs +56 -0
  217. package/dist/components/Table/SkeletonRows.js +43 -11
  218. package/dist/components/Table/TableContext.cjs +88 -0
  219. package/dist/components/Table/TableContext.js +29 -44
  220. package/dist/components/Table/index.cjs +69 -0
  221. package/dist/components/Table/index.js +37 -51
  222. package/dist/components/Tabs/Tab.cjs +122 -0
  223. package/dist/components/Tabs/Tab.js +108 -158
  224. package/dist/components/Tabs/TabMenu.cjs +64 -0
  225. package/dist/components/Tabs/TabMenu.js +52 -53
  226. package/dist/components/Tabs/TabMenuItem.cjs +36 -0
  227. package/dist/components/Tabs/TabMenuItem.js +19 -24
  228. package/dist/components/Tabs/TabsContext.cjs +7 -0
  229. package/dist/components/Tabs/TabsContext.js +1 -3
  230. package/dist/components/Tabs/index.cjs +104 -0
  231. package/dist/components/Tabs/index.js +44 -79
  232. package/dist/components/Tag/index.cjs +147 -0
  233. package/dist/components/Tag/index.js +66 -75
  234. package/dist/components/TagInput/index.cjs +255 -0
  235. package/dist/components/TagInput/index.js +125 -188
  236. package/dist/components/TagList/index.cjs +100 -0
  237. package/dist/components/TagList/index.js +51 -56
  238. package/dist/components/Text/index.cjs +84 -0
  239. package/dist/components/Text/index.js +10 -35
  240. package/dist/components/TextArea/index.cjs +160 -0
  241. package/dist/components/TextArea/index.js +140 -208
  242. package/dist/components/TextInput/index.cjs +390 -0
  243. package/dist/components/TextInput/index.js +326 -411
  244. package/dist/components/TextInputV2/index.cjs +192 -0
  245. package/dist/components/TextInputV2/index.js +170 -294
  246. package/dist/components/TimeInput/index.cjs +28 -0
  247. package/dist/components/TimeInput/index.js +3 -174
  248. package/dist/components/Toaster/index.cjs +85 -0
  249. package/dist/components/Toaster/index.js +26 -74
  250. package/dist/components/Toaster/react-toastify.css.cjs +3 -0
  251. package/dist/components/Toggle/index.cjs +138 -0
  252. package/dist/components/Toggle/index.js +112 -172
  253. package/dist/components/ToggleGroup/index.cjs +98 -0
  254. package/dist/components/ToggleGroup/index.js +44 -35
  255. package/dist/components/Tooltip/index.cjs +42 -0
  256. package/dist/components/Tooltip/index.js +34 -41
  257. package/dist/components/VerificationCode/index.cjs +219 -0
  258. package/dist/components/VerificationCode/index.js +58 -63
  259. package/dist/helpers/isJSON.cjs +10 -0
  260. package/dist/helpers/legend.cjs +14 -0
  261. package/dist/helpers/legend.js +4 -4
  262. package/dist/helpers/recursivelyGetChildrenString.cjs +14 -0
  263. package/dist/hooks/useIsOverflowing.cjs +23 -0
  264. package/dist/index.cjs +196 -0
  265. package/dist/theme/index.cjs +34 -0
  266. package/dist/theme/index.js +10 -13
  267. package/dist/utils/animations.cjs +276 -0
  268. package/dist/utils/capitalize.cjs +3 -0
  269. package/dist/utils/ids.cjs +8 -0
  270. package/dist/utils/ids.js +3 -1
  271. package/dist/utils/normalize.cjs +36 -0
  272. package/dist/utils/responsive/Breakpoint.cjs +16 -0
  273. package/dist/utils/responsive/Breakpoint.js +8 -6
  274. package/dist/utils/responsive/utilities.cjs +15 -0
  275. package/package.json +23 -7
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const index = require("../Stack/index.cjs");
6
+ const index$1 = require("../Text/index.cjs");
7
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
8
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
9
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
10
+ 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).";
11
+ }
12
+ const StyledInfo = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
13
+ target: "e18yw4y80"
14
+ } : {
15
+ target: "e18yw4y80",
16
+ label: "StyledInfo"
17
+ })(process.env.NODE_ENV === "production" ? {
18
+ name: "13vy23x",
19
+ styles: "align-content:center"
20
+ } : {
21
+ name: "13vy23x",
22
+ styles: "align-content:center",
23
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1NlbGVjdElucHV0VjIvRHJvcGRvd25PcHRpb24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUs2QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9TZWxlY3RJbnB1dFYyL0Ryb3Bkb3duT3B0aW9uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuaW1wb3J0IHR5cGUgeyBPcHRpb25UeXBlIH0gZnJvbSAnLi90eXBlcydcblxuY29uc3QgU3R5bGVkSW5mbyA9IHN0eWxlZC5kaXZgXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbmBcblxudHlwZSBEaXNwbGF5T3B0aW9uUHJvcHMgPSB7XG4gIG9wdGlvbjogT3B0aW9uVHlwZVxuICBkZXNjcmlwdGlvbkRpcmVjdGlvbjogJ3JvdycgfCAnY29sdW1uJ1xuICBvcHRpb25hbEluZm9QbGFjZW1lbnQ6ICdsZWZ0JyB8ICdyaWdodCdcbn1cblxuZXhwb3J0IGNvbnN0IERpc3BsYXlPcHRpb24gPSAoe1xuICBvcHRpb24sXG4gIG9wdGlvbmFsSW5mb1BsYWNlbWVudCxcbiAgZGVzY3JpcHRpb25EaXJlY3Rpb24sXG59OiBEaXNwbGF5T3B0aW9uUHJvcHMpID0+IHtcbiAgaWYgKGRlc2NyaXB0aW9uRGlyZWN0aW9uID09PSAncm93JyAmJiBvcHRpb25hbEluZm9QbGFjZW1lbnQgPT09ICdsZWZ0Jykge1xuICAgIHJldHVybiAoXG4gICAgICA8U3RhY2tcbiAgICAgICAgZ2FwPXswLjV9XG4gICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgIGp1c3RpZnlDb250ZW50PVwibGVmdFwiXG4gICAgICAgIGRhdGEtdGVzdGlkPXtgb3B0aW9uLXN0YWNrLSR7b3B0aW9uLnZhbHVlfWB9XG4gICAgICA+XG4gICAgICAgIDxTdGFjayBnYXA9ezAuNX0gZGlyZWN0aW9uPVwicm93XCIgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICAgIHtvcHRpb24ub3B0aW9uYWxJbmZvID8/IG51bGx9XG4gICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIiBwbGFjZW1lbnQ9XCJsZWZ0XCI+XG4gICAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uID8gKFxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImJvZHlTbWFsbFwiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgcHJvbWluZW5jZT1cIndlYWtcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgPC9TdGFjaz5cbiAgICApXG4gIH1cblxuICBpZiAoZGVzY3JpcHRpb25EaXJlY3Rpb24gPT09ICdyb3cnICYmIG9wdGlvbmFsSW5mb1BsYWNlbWVudCA9PT0gJ3JpZ2h0Jykge1xuICAgIHJldHVybiAoXG4gICAgICA8U3RhY2tcbiAgICAgICAgZ2FwPXswLjV9XG4gICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiXG4gICAgICAgIGFsaWduSXRlbXM9XCJiYXNlbGluZVwiXG4gICAgICAgIGRhdGEtdGVzdGlkPXtgb3B0aW9uLXN0YWNrLSR7b3B0aW9uLnZhbHVlfWB9XG4gICAgICA+XG4gICAgICAgIDxTdGFjayBnYXA9ezAuNX0gZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIiBwbGFjZW1lbnQ9XCJsZWZ0XCI+XG4gICAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uID8gKFxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImJvZHlTbWFsbFwiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgcHJvbWluZW5jZT1cIndlYWtcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgICB7b3B0aW9uLm9wdGlvbmFsSW5mbyA/IChcbiAgICAgICAgICA8U3R5bGVkSW5mbz57b3B0aW9uLm9wdGlvbmFsSW5mb308L1N0eWxlZEluZm8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9TdGFjaz5cbiAgICApXG4gIH1cblxuICBpZiAoZGVzY3JpcHRpb25EaXJlY3Rpb24gPT09ICdjb2x1bW4nICYmIG9wdGlvbmFsSW5mb1BsYWNlbWVudCA9PT0gJ2xlZnQnKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTdGFja1xuICAgICAgICBnYXA9ezAuNX1cbiAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e29wdGlvbi5vcHRpb25hbEluZm8gPyAnbGVmdCcgOiAnc3BhY2UtYmV0d2Vlbid9XG4gICAgICAgIGFsaWduSXRlbXM9XCJub3JtYWxcIlxuICAgICAgPlxuICAgICAgICB7b3B0aW9uLm9wdGlvbmFsSW5mbyA/PyBudWxsfVxuXG4gICAgICAgIDxTdGFja1xuICAgICAgICAgIGdhcD17MC41fVxuICAgICAgICAgIGRpcmVjdGlvbj1cImNvbHVtblwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9e2BvcHRpb24tc3RhY2stJHtvcHRpb24udmFsdWV9YH1cbiAgICAgICAgPlxuICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCIgcGxhY2VtZW50PVwibGVmdFwiPlxuICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAge29wdGlvbi5kZXNjcmlwdGlvbiA/IChcbiAgICAgICAgICAgIDxUZXh0XG4gICAgICAgICAgICAgIGFzPVwic3BhblwiXG4gICAgICAgICAgICAgIHZhcmlhbnQ9XCJib2R5U21hbGxcIlxuICAgICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwibGVmdFwiXG4gICAgICAgICAgICAgIHByb21pbmVuY2U9XCJ3ZWFrXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge29wdGlvbi5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgIDwvU3RhY2s+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U3RhY2tcbiAgICAgIGdhcD17MC41fVxuICAgICAgZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgIGFsaWduSXRlbXM9XCJub3JtYWxcIlxuICAgICAgZGF0YS10ZXN0aWQ9e2BvcHRpb24tc3RhY2stJHtvcHRpb24udmFsdWV9YH1cbiAgICA+XG4gICAgICA8U3RhY2sgZ2FwPXswLjV9IGRpcmVjdGlvbj1cInJvd1wiIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICA8VGV4dCBhcz1cInNwYW5cIiB2YXJpYW50PVwiYm9keVwiIHBsYWNlbWVudD1cImxlZnRcIj5cbiAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICA8L1RleHQ+XG4gICAgICAgIHtvcHRpb24ub3B0aW9uYWxJbmZvID8gKFxuICAgICAgICAgIDxTdHlsZWRJbmZvPntvcHRpb24ub3B0aW9uYWxJbmZvfTwvU3R5bGVkSW5mbz5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICA8L1N0YWNrPlxuICAgICAge29wdGlvbi5kZXNjcmlwdGlvbiA/IChcbiAgICAgICAgPFRleHRcbiAgICAgICAgICBhcz1cInNwYW5cIlxuICAgICAgICAgIHZhcmlhbnQ9XCJib2R5U21hbGxcIlxuICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxuICAgICAgICAgIHByb21pbmVuY2U9XCJ3ZWFrXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgIDwvVGV4dD5cbiAgICAgICkgOiBudWxsfVxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */",
24
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
25
+ });
26
+ const DisplayOption = ({
27
+ option,
28
+ optionalInfoPlacement,
29
+ descriptionDirection
30
+ }) => {
31
+ if (descriptionDirection === "row" && optionalInfoPlacement === "left") {
32
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Stack, { gap: 0.5, direction: "row", justifyContent: "left", "data-testid": `option-stack-${option.value}`, children: /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "row", alignItems: "center", children: [
33
+ option.optionalInfo ?? null,
34
+ /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "body", placement: "left", children: option.label }),
35
+ option.description ? /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
36
+ ] }) });
37
+ }
38
+ if (descriptionDirection === "row" && optionalInfoPlacement === "right") {
39
+ return /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "row", justifyContent: "space-between", alignItems: "baseline", "data-testid": `option-stack-${option.value}`, children: [
40
+ /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "row", children: [
41
+ /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "body", placement: "left", children: option.label }),
42
+ option.description ? /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
43
+ ] }),
44
+ option.optionalInfo ? /* @__PURE__ */ jsxRuntime.jsx(StyledInfo, { children: option.optionalInfo }) : null
45
+ ] });
46
+ }
47
+ if (descriptionDirection === "column" && optionalInfoPlacement === "left") {
48
+ return /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "row", justifyContent: option.optionalInfo ? "left" : "space-between", alignItems: "normal", children: [
49
+ option.optionalInfo ?? null,
50
+ /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "column", "data-testid": `option-stack-${option.value}`, children: [
51
+ /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "body", placement: "left", children: option.label }),
52
+ option.description ? /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
53
+ ] })
54
+ ] });
55
+ }
56
+ return /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "column", alignItems: "normal", "data-testid": `option-stack-${option.value}`, children: [
57
+ /* @__PURE__ */ jsxRuntime.jsxs(index.Stack, { gap: 0.5, direction: "row", justifyContent: "space-between", children: [
58
+ /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "body", placement: "left", children: option.label }),
59
+ option.optionalInfo ? /* @__PURE__ */ jsxRuntime.jsx(StyledInfo, { children: option.optionalInfo }) : null
60
+ ] }),
61
+ option.description ? /* @__PURE__ */ jsxRuntime.jsx(index$1.Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
62
+ ] });
63
+ };
64
+ exports.DisplayOption = DisplayOption;
@@ -1,132 +1,61 @@
1
1
  import { jsx, jsxs } from "@emotion/react/jsx-runtime";
2
- import styled from "@emotion/styled";
2
+ import _styled from "@emotion/styled/base";
3
3
  import { Stack } from "../Stack/index.js";
4
4
  import { Text } from "../Text/index.js";
5
- const StyledInfo = styled.div`
6
- align-content: center;
7
- `;
5
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
6
+ 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
+ }
8
+ const StyledInfo = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? {
9
+ target: "e18yw4y80"
10
+ } : {
11
+ target: "e18yw4y80",
12
+ label: "StyledInfo"
13
+ })(process.env.NODE_ENV === "production" ? {
14
+ name: "13vy23x",
15
+ styles: "align-content:center"
16
+ } : {
17
+ name: "13vy23x",
18
+ styles: "align-content:center",
19
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1NlbGVjdElucHV0VjIvRHJvcGRvd25PcHRpb24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUs2QiIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9TZWxlY3RJbnB1dFYyL0Ryb3Bkb3duT3B0aW9uLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9UZXh0J1xuaW1wb3J0IHR5cGUgeyBPcHRpb25UeXBlIH0gZnJvbSAnLi90eXBlcydcblxuY29uc3QgU3R5bGVkSW5mbyA9IHN0eWxlZC5kaXZgXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbmBcblxudHlwZSBEaXNwbGF5T3B0aW9uUHJvcHMgPSB7XG4gIG9wdGlvbjogT3B0aW9uVHlwZVxuICBkZXNjcmlwdGlvbkRpcmVjdGlvbjogJ3JvdycgfCAnY29sdW1uJ1xuICBvcHRpb25hbEluZm9QbGFjZW1lbnQ6ICdsZWZ0JyB8ICdyaWdodCdcbn1cblxuZXhwb3J0IGNvbnN0IERpc3BsYXlPcHRpb24gPSAoe1xuICBvcHRpb24sXG4gIG9wdGlvbmFsSW5mb1BsYWNlbWVudCxcbiAgZGVzY3JpcHRpb25EaXJlY3Rpb24sXG59OiBEaXNwbGF5T3B0aW9uUHJvcHMpID0+IHtcbiAgaWYgKGRlc2NyaXB0aW9uRGlyZWN0aW9uID09PSAncm93JyAmJiBvcHRpb25hbEluZm9QbGFjZW1lbnQgPT09ICdsZWZ0Jykge1xuICAgIHJldHVybiAoXG4gICAgICA8U3RhY2tcbiAgICAgICAgZ2FwPXswLjV9XG4gICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgIGp1c3RpZnlDb250ZW50PVwibGVmdFwiXG4gICAgICAgIGRhdGEtdGVzdGlkPXtgb3B0aW9uLXN0YWNrLSR7b3B0aW9uLnZhbHVlfWB9XG4gICAgICA+XG4gICAgICAgIDxTdGFjayBnYXA9ezAuNX0gZGlyZWN0aW9uPVwicm93XCIgYWxpZ25JdGVtcz1cImNlbnRlclwiPlxuICAgICAgICAgIHtvcHRpb24ub3B0aW9uYWxJbmZvID8/IG51bGx9XG4gICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIiBwbGFjZW1lbnQ9XCJsZWZ0XCI+XG4gICAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uID8gKFxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImJvZHlTbWFsbFwiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgcHJvbWluZW5jZT1cIndlYWtcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgPC9TdGFjaz5cbiAgICApXG4gIH1cblxuICBpZiAoZGVzY3JpcHRpb25EaXJlY3Rpb24gPT09ICdyb3cnICYmIG9wdGlvbmFsSW5mb1BsYWNlbWVudCA9PT0gJ3JpZ2h0Jykge1xuICAgIHJldHVybiAoXG4gICAgICA8U3RhY2tcbiAgICAgICAgZ2FwPXswLjV9XG4gICAgICAgIGRpcmVjdGlvbj1cInJvd1wiXG4gICAgICAgIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiXG4gICAgICAgIGFsaWduSXRlbXM9XCJiYXNlbGluZVwiXG4gICAgICAgIGRhdGEtdGVzdGlkPXtgb3B0aW9uLXN0YWNrLSR7b3B0aW9uLnZhbHVlfWB9XG4gICAgICA+XG4gICAgICAgIDxTdGFjayBnYXA9ezAuNX0gZGlyZWN0aW9uPVwicm93XCI+XG4gICAgICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIiBwbGFjZW1lbnQ9XCJsZWZ0XCI+XG4gICAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9uID8gKFxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgYXM9XCJzcGFuXCJcbiAgICAgICAgICAgICAgdmFyaWFudD1cImJvZHlTbWFsbFwiXG4gICAgICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgcHJvbWluZW5jZT1cIndlYWtcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7b3B0aW9uLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgPC9UZXh0PlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0YWNrPlxuICAgICAgICB7b3B0aW9uLm9wdGlvbmFsSW5mbyA/IChcbiAgICAgICAgICA8U3R5bGVkSW5mbz57b3B0aW9uLm9wdGlvbmFsSW5mb308L1N0eWxlZEluZm8+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgPC9TdGFjaz5cbiAgICApXG4gIH1cblxuICBpZiAoZGVzY3JpcHRpb25EaXJlY3Rpb24gPT09ICdjb2x1bW4nICYmIG9wdGlvbmFsSW5mb1BsYWNlbWVudCA9PT0gJ2xlZnQnKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxTdGFja1xuICAgICAgICBnYXA9ezAuNX1cbiAgICAgICAgZGlyZWN0aW9uPVwicm93XCJcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e29wdGlvbi5vcHRpb25hbEluZm8gPyAnbGVmdCcgOiAnc3BhY2UtYmV0d2Vlbid9XG4gICAgICAgIGFsaWduSXRlbXM9XCJub3JtYWxcIlxuICAgICAgPlxuICAgICAgICB7b3B0aW9uLm9wdGlvbmFsSW5mbyA/PyBudWxsfVxuXG4gICAgICAgIDxTdGFja1xuICAgICAgICAgIGdhcD17MC41fVxuICAgICAgICAgIGRpcmVjdGlvbj1cImNvbHVtblwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9e2BvcHRpb24tc3RhY2stJHtvcHRpb24udmFsdWV9YH1cbiAgICAgICAgPlxuICAgICAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCIgcGxhY2VtZW50PVwibGVmdFwiPlxuICAgICAgICAgICAge29wdGlvbi5sYWJlbH1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAge29wdGlvbi5kZXNjcmlwdGlvbiA/IChcbiAgICAgICAgICAgIDxUZXh0XG4gICAgICAgICAgICAgIGFzPVwic3BhblwiXG4gICAgICAgICAgICAgIHZhcmlhbnQ9XCJib2R5U21hbGxcIlxuICAgICAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwibGVmdFwiXG4gICAgICAgICAgICAgIHByb21pbmVuY2U9XCJ3ZWFrXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge29wdGlvbi5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9TdGFjaz5cbiAgICAgIDwvU3RhY2s+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U3RhY2tcbiAgICAgIGdhcD17MC41fVxuICAgICAgZGlyZWN0aW9uPVwiY29sdW1uXCJcbiAgICAgIGFsaWduSXRlbXM9XCJub3JtYWxcIlxuICAgICAgZGF0YS10ZXN0aWQ9e2BvcHRpb24tc3RhY2stJHtvcHRpb24udmFsdWV9YH1cbiAgICA+XG4gICAgICA8U3RhY2sgZ2FwPXswLjV9IGRpcmVjdGlvbj1cInJvd1wiIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICA8VGV4dCBhcz1cInNwYW5cIiB2YXJpYW50PVwiYm9keVwiIHBsYWNlbWVudD1cImxlZnRcIj5cbiAgICAgICAgICB7b3B0aW9uLmxhYmVsfVxuICAgICAgICA8L1RleHQ+XG4gICAgICAgIHtvcHRpb24ub3B0aW9uYWxJbmZvID8gKFxuICAgICAgICAgIDxTdHlsZWRJbmZvPntvcHRpb24ub3B0aW9uYWxJbmZvfTwvU3R5bGVkSW5mbz5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICA8L1N0YWNrPlxuICAgICAge29wdGlvbi5kZXNjcmlwdGlvbiA/IChcbiAgICAgICAgPFRleHRcbiAgICAgICAgICBhcz1cInNwYW5cIlxuICAgICAgICAgIHZhcmlhbnQ9XCJib2R5U21hbGxcIlxuICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxuICAgICAgICAgIHByb21pbmVuY2U9XCJ3ZWFrXCJcbiAgICAgICAgPlxuICAgICAgICAgIHtvcHRpb24uZGVzY3JpcHRpb259XG4gICAgICAgIDwvVGV4dD5cbiAgICAgICkgOiBudWxsfVxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */",
20
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
21
+ });
8
22
  const DisplayOption = ({
9
23
  option,
10
24
  optionalInfoPlacement,
11
25
  descriptionDirection
12
26
  }) => {
13
27
  if (descriptionDirection === "row" && optionalInfoPlacement === "left") {
14
- return /* @__PURE__ */ jsx(
15
- Stack,
16
- {
17
- gap: 0.5,
18
- direction: "row",
19
- justifyContent: "left",
20
- "data-testid": `option-stack-${option.value}`,
21
- children: /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", alignItems: "center", children: [
22
- option.optionalInfo ?? null,
23
- /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
24
- option.description ? /* @__PURE__ */ jsx(
25
- Text,
26
- {
27
- as: "span",
28
- variant: "bodySmall",
29
- sentiment: "neutral",
30
- placement: "left",
31
- prominence: "weak",
32
- children: option.description
33
- }
34
- ) : null
35
- ] })
36
- }
37
- );
28
+ return /* @__PURE__ */ jsx(Stack, { gap: 0.5, direction: "row", justifyContent: "left", "data-testid": `option-stack-${option.value}`, children: /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", alignItems: "center", children: [
29
+ option.optionalInfo ?? null,
30
+ /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
31
+ option.description ? /* @__PURE__ */ jsx(Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
32
+ ] }) });
38
33
  }
39
34
  if (descriptionDirection === "row" && optionalInfoPlacement === "right") {
40
- return /* @__PURE__ */ jsxs(
41
- Stack,
42
- {
43
- gap: 0.5,
44
- direction: "row",
45
- justifyContent: "space-between",
46
- alignItems: "baseline",
47
- "data-testid": `option-stack-${option.value}`,
48
- children: [
49
- /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", children: [
50
- /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
51
- option.description ? /* @__PURE__ */ jsx(
52
- Text,
53
- {
54
- as: "span",
55
- variant: "bodySmall",
56
- sentiment: "neutral",
57
- placement: "left",
58
- prominence: "weak",
59
- children: option.description
60
- }
61
- ) : null
62
- ] }),
63
- option.optionalInfo ? /* @__PURE__ */ jsx(StyledInfo, { children: option.optionalInfo }) : null
64
- ]
65
- }
66
- );
35
+ return /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", justifyContent: "space-between", alignItems: "baseline", "data-testid": `option-stack-${option.value}`, children: [
36
+ /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", children: [
37
+ /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
38
+ option.description ? /* @__PURE__ */ jsx(Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
39
+ ] }),
40
+ option.optionalInfo ? /* @__PURE__ */ jsx(StyledInfo, { children: option.optionalInfo }) : null
41
+ ] });
67
42
  }
68
43
  if (descriptionDirection === "column" && optionalInfoPlacement === "left") {
69
- return /* @__PURE__ */ jsxs(
70
- Stack,
71
- {
72
- gap: 0.5,
73
- direction: "row",
74
- justifyContent: option.optionalInfo ? "left" : "space-between",
75
- alignItems: "normal",
76
- children: [
77
- option.optionalInfo ?? null,
78
- /* @__PURE__ */ jsxs(
79
- Stack,
80
- {
81
- gap: 0.5,
82
- direction: "column",
83
- "data-testid": `option-stack-${option.value}`,
84
- children: [
85
- /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
86
- option.description ? /* @__PURE__ */ jsx(
87
- Text,
88
- {
89
- as: "span",
90
- variant: "bodySmall",
91
- sentiment: "neutral",
92
- placement: "left",
93
- prominence: "weak",
94
- children: option.description
95
- }
96
- ) : null
97
- ]
98
- }
99
- )
100
- ]
101
- }
102
- );
44
+ return /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", justifyContent: option.optionalInfo ? "left" : "space-between", alignItems: "normal", children: [
45
+ option.optionalInfo ?? null,
46
+ /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "column", "data-testid": `option-stack-${option.value}`, children: [
47
+ /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
48
+ option.description ? /* @__PURE__ */ jsx(Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
49
+ ] })
50
+ ] });
103
51
  }
104
- return /* @__PURE__ */ jsxs(
105
- Stack,
106
- {
107
- gap: 0.5,
108
- direction: "column",
109
- alignItems: "normal",
110
- "data-testid": `option-stack-${option.value}`,
111
- children: [
112
- /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", justifyContent: "space-between", children: [
113
- /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
114
- option.optionalInfo ? /* @__PURE__ */ jsx(StyledInfo, { children: option.optionalInfo }) : null
115
- ] }),
116
- option.description ? /* @__PURE__ */ jsx(
117
- Text,
118
- {
119
- as: "span",
120
- variant: "bodySmall",
121
- sentiment: "neutral",
122
- placement: "left",
123
- prominence: "weak",
124
- children: option.description
125
- }
126
- ) : null
127
- ]
128
- }
129
- );
52
+ return /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "column", alignItems: "normal", "data-testid": `option-stack-${option.value}`, children: [
53
+ /* @__PURE__ */ jsxs(Stack, { gap: 0.5, direction: "row", justifyContent: "space-between", children: [
54
+ /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", placement: "left", children: option.label }),
55
+ option.optionalInfo ? /* @__PURE__ */ jsx(StyledInfo, { children: option.optionalInfo }) : null
56
+ ] }),
57
+ option.description ? /* @__PURE__ */ jsx(Text, { as: "span", variant: "bodySmall", sentiment: "neutral", placement: "left", prominence: "weak", children: option.description }) : null
58
+ ] });
130
59
  };
131
60
  export {
132
61
  DisplayOption
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const icons = require("@ultraviolet/icons");
6
+ const React = require("react");
7
+ const index = require("../TextInputV2/index.cjs");
8
+ const SelectInputProvider = require("./SelectInputProvider.cjs");
9
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
10
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
11
+ const StyledInput = /* @__PURE__ */ _styled__default.default(index.TextInputV2, process.env.NODE_ENV === "production" ? {
12
+ target: "e1ag0nf0"
13
+ } : {
14
+ target: "e1ag0nf0",
15
+ label: "StyledInput"
16
+ })("padding-top:", ({
17
+ theme
18
+ }) => theme.space[1.5], ";padding-bottom:", ({
19
+ theme
20
+ }) => theme.space[1.5], ";padding-left:", ({
21
+ theme
22
+ }) => theme.space[2], ";padding-right:", ({
23
+ theme
24
+ }) => theme.space[2], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1NlbGVjdElucHV0VjIvU2VhcmNoQmFyRHJvcGRvd24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWN1QyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9TZWxlY3RJbnB1dFYyL1NlYXJjaEJhckRyb3Bkb3duLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHsgRGlzcGF0Y2gsIFNldFN0YXRlQWN0aW9uIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRleHRJbnB1dFYyIH0gZnJvbSAnLi4vVGV4dElucHV0VjInXG5pbXBvcnQgeyB1c2VTZWxlY3RJbnB1dCB9IGZyb20gJy4vU2VsZWN0SW5wdXRQcm92aWRlcidcbmltcG9ydCB0eXBlIHsgRGF0YVR5cGUgfSBmcm9tICcuL3R5cGVzJ1xuXG50eXBlIFNlYXJjaEJhclByb3BzID0ge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nXG4gIGRpc3BsYXllZE9wdGlvbnM6IERhdGFUeXBlXG4gIHNldFNlYXJjaEJhckFjdGl2ZTogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+XG59XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKFRleHRJbnB1dFYyKWBcbiAgcGFkZGluZy10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMS41XX07XG4gIHBhZGRpbmctYm90dG9tOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzEuNV19O1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMl19O1xuICBwYWRkaW5nLXJpZ2h0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzJdfTtcbmBcblxuY29uc3QgZmluZENsb3Nlc3RPcHRpb24gPSAoXG4gIG9wdGlvbnM6IERhdGFUeXBlLFxuICBzZWFyY2hJbnB1dDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuKSA9PiB7XG4gIGlmIChzZWFyY2hJbnB1dCkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xuICAgICAgY29uc3QgcG9zc2libGVPcHRpb25zID0geyAuLi5vcHRpb25zIH1cbiAgICAgIE9iamVjdC5rZXlzKHBvc3NpYmxlT3B0aW9ucykubWFwKChncm91cDogc3RyaW5nKSA9PiB7XG4gICAgICAgIHBvc3NpYmxlT3B0aW9uc1tncm91cF0gPSBwb3NzaWJsZU9wdGlvbnNbZ3JvdXBdLmZpbHRlcihcbiAgICAgICAgICBvcHRpb24gPT4gIW9wdGlvbi5kaXNhYmxlZCxcbiAgICAgICAgKVxuXG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9KVxuICAgICAgaWYgKFxuICAgICAgICBPYmplY3Qua2V5cyhwb3NzaWJsZU9wdGlvbnMpLnNvbWUoXG4gICAgICAgICAgZ3JvdXAgPT4gcG9zc2libGVPcHRpb25zW2dyb3VwXS5sZW5ndGggPiAwLFxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgZmlyc3RGaXQgPSBPYmplY3Qua2V5cyhwb3NzaWJsZU9wdGlvbnMpXG4gICAgICAgICAgLm1hcChncm91cCA9PiBwb3NzaWJsZU9wdGlvbnNbZ3JvdXBdWzBdKVxuICAgICAgICAgIC5maWx0ZXIodmFsdWUgPT4gISF2YWx1ZSlbMF1cblxuICAgICAgICByZXR1cm4gZmlyc3RGaXRcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcG9zc2libGVPcHRpb25zID0gWy4uLm9wdGlvbnNdLmZpbHRlcihvcHRpb24gPT4gIW9wdGlvbi5kaXNhYmxlZClcblxuICAgICAgaWYgKHBvc3NpYmxlT3B0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiBwb3NzaWJsZU9wdGlvbnNbMF1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbFxufVxuZXhwb3J0IGNvbnN0IFNlYXJjaEJhckRyb3Bkb3duID0gKHtcbiAgcGxhY2Vob2xkZXIsXG4gIGRpc3BsYXllZE9wdGlvbnMsXG4gIHNldFNlYXJjaEJhckFjdGl2ZSxcbn06IFNlYXJjaEJhclByb3BzKSA9PiB7XG4gIGNvbnN0IHNlYXJjaElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHtcbiAgICBvbkNoYW5nZSxcbiAgICBvblNlYXJjaCxcbiAgICBzZXRTZWFyY2hJbnB1dCxcbiAgICBzZWFyY2hJbnB1dCxcbiAgICBvcHRpb25zLFxuICAgIG11bHRpc2VsZWN0LFxuICAgIHNldFNlbGVjdGVkRGF0YSxcbiAgICBzZWxlY3RlZERhdGEsXG4gIH0gPSB1c2VTZWxlY3RJbnB1dCgpXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWFyY2g6IHN0cmluZykgPT4ge1xuICAgIGlmIChzZWFyY2gubGVuZ3RoID4gMCkge1xuICAgICAgLy8gY2FzZSBpbnNlbnNpdGl2ZSBzZWFyY2hcbiAgICAgIGNvbnN0IHJlZ2V4ID0gUmVnRXhwKHNlYXJjaCwgJ2knKVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpKSB7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IHsgLi4ub3B0aW9ucyB9XG4gICAgICAgIE9iamVjdC5rZXlzKGZpbHRlcmVkT3B0aW9ucykubWFwKChncm91cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgZmlsdGVyZWRPcHRpb25zW2dyb3VwXSA9IGZpbHRlcmVkT3B0aW9uc1tncm91cF0uZmlsdGVyKG9wdGlvbiA9PlxuICAgICAgICAgICAgb3B0aW9uLnNlYXJjaFRleHRcbiAgICAgICAgICAgICAgPyBvcHRpb24uc2VhcmNoVGV4dC5tYXRjaChyZWdleClcbiAgICAgICAgICAgICAgOiBvcHRpb24udmFsdWUubWF0Y2gocmVnZXgpLFxuICAgICAgICAgIClcblxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH0pXG4gICAgICAgIG9uU2VhcmNoKGZpbHRlcmVkT3B0aW9ucylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IFsuLi5vcHRpb25zXS5maWx0ZXIob3B0aW9uID0+XG4gICAgICAgICAgb3B0aW9uLnNlYXJjaFRleHRcbiAgICAgICAgICAgID8gb3B0aW9uLnNlYXJjaFRleHQubWF0Y2gocmVnZXgpXG4gICAgICAgICAgICA6IG9wdGlvbi52YWx1ZS5tYXRjaChyZWdleCksXG4gICAgICAgIClcbiAgICAgICAgb25TZWFyY2goZmlsdGVyZWRPcHRpb25zKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBvblNlYXJjaChvcHRpb25zKVxuICAgIH1cbiAgICBzZXRTZWFyY2hJbnB1dChzZWFyY2gpXG4gIH1cblxuICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGtleTogc3RyaW5nLCBzZWFyY2g/OiBzdHJpbmcpID0+IHtcbiAgICBpZiAoa2V5ID09PSAnRW50ZXInKSB7XG4gICAgICBjb25zdCBjbG9zZXN0T3B0aW9uID0gZmluZENsb3Nlc3RPcHRpb24oZGlzcGxheWVkT3B0aW9ucywgc2VhcmNoKVxuICAgICAgaWYgKGNsb3Nlc3RPcHRpb24pIHtcbiAgICAgICAgaWYgKG11bHRpc2VsZWN0KSB7XG4gICAgICAgICAgc2V0U2VsZWN0ZWREYXRhKHtcbiAgICAgICAgICAgIHR5cGU6ICdzZWxlY3RPcHRpb24nLFxuICAgICAgICAgICAgY2xpY2tlZE9wdGlvbjogY2xvc2VzdE9wdGlvbixcbiAgICAgICAgICAgIGdyb3VwOiAhQXJyYXkuaXNBcnJheShvcHRpb25zKVxuICAgICAgICAgICAgICA/IE9iamVjdC5rZXlzKG9wdGlvbnMpLmZpbHRlcihncm91cCA9PlxuICAgICAgICAgICAgICAgICAgb3B0aW9uc1tncm91cF0uaW5jbHVkZXMoY2xvc2VzdE9wdGlvbiksXG4gICAgICAgICAgICAgICAgKVswXVxuICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICB9KVxuICAgICAgICAgIG9uQ2hhbmdlPy4oXG4gICAgICAgICAgICBzZWxlY3RlZERhdGEuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMoY2xvc2VzdE9wdGlvbi52YWx1ZSlcbiAgICAgICAgICAgICAgPyBzZWxlY3RlZERhdGEuc2VsZWN0ZWRWYWx1ZXNcbiAgICAgICAgICAgICAgOiBbLi4uc2VsZWN0ZWREYXRhLnNlbGVjdGVkVmFsdWVzLCBjbG9zZXN0T3B0aW9uLnZhbHVlXSxcbiAgICAgICAgICApXG4gICAgICAgICAgc2V0U2VhcmNoSW5wdXQoY2xvc2VzdE9wdGlvbi5zZWFyY2hUZXh0ID8/IGNsb3Nlc3RPcHRpb24udmFsdWUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0U2VsZWN0ZWREYXRhKHtcbiAgICAgICAgICAgIHR5cGU6ICdzZWxlY3RPcHRpb24nLFxuICAgICAgICAgICAgY2xpY2tlZE9wdGlvbjogY2xvc2VzdE9wdGlvbixcbiAgICAgICAgICB9KVxuICAgICAgICAgIG9uQ2hhbmdlPy4oc2VsZWN0ZWREYXRhLnNlbGVjdGVkVmFsdWVzWzBdID8/ICcnKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkSW5wdXRcbiAgICAgIHZhbHVlPXtzZWFyY2hJbnB1dH1cbiAgICAgIG9uQ2hhbmdlPXtldmVudCA9PiBoYW5kbGVDaGFuZ2UoZXZlbnQpfVxuICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgb25Gb2N1cz17KCkgPT4gc2V0U2VhcmNoQmFyQWN0aXZlKHRydWUpfVxuICAgICAgb25CbHVyPXsoKSA9PiBzZXRTZWFyY2hCYXJBY3RpdmUoZmFsc2UpfVxuICAgICAgZGF0YS10ZXN0aWQ9XCJzZWFyY2gtYmFyXCJcbiAgICAgIHByZWZpeD17PEljb24gbmFtZT1cInNlYXJjaFwiIHNpemU9XCJzbWFsbFwiIHNlbnRpbWVudD1cIm5ldXRyYWxcIiAvPn1cbiAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4gaGFuZGxlS2V5RG93bihldmVudC5rZXksIHNlYXJjaElucHV0KX1cbiAgICAgIHNpemU9XCJtZWRpdW1cIlxuICAgICAgYXV0b0ZvY3VzXG4gICAgICBhcmlhLWxhYmVsPVwic2VhcmNoLWJhclwiXG4gICAgICByZWY9e3NlYXJjaElucHV0UmVmfVxuICAgIC8+XG4gIClcbn1cbiJdfQ== */"));
25
+ const findClosestOption = (options, searchInput) => {
26
+ if (searchInput) {
27
+ if (!Array.isArray(options)) {
28
+ const possibleOptions = {
29
+ ...options
30
+ };
31
+ Object.keys(possibleOptions).map((group) => {
32
+ possibleOptions[group] = possibleOptions[group].filter((option) => !option.disabled);
33
+ return null;
34
+ });
35
+ if (Object.keys(possibleOptions).some((group) => possibleOptions[group].length > 0)) {
36
+ const firstFit = Object.keys(possibleOptions).map((group) => possibleOptions[group][0]).filter((value) => !!value)[0];
37
+ return firstFit;
38
+ }
39
+ } else {
40
+ const possibleOptions = [...options].filter((option) => !option.disabled);
41
+ if (possibleOptions.length > 0) {
42
+ return possibleOptions[0];
43
+ }
44
+ }
45
+ }
46
+ return null;
47
+ };
48
+ const SearchBarDropdown = ({
49
+ placeholder,
50
+ displayedOptions,
51
+ setSearchBarActive
52
+ }) => {
53
+ const searchInputRef = React.useRef(null);
54
+ const {
55
+ onChange,
56
+ onSearch,
57
+ setSearchInput,
58
+ searchInput,
59
+ options,
60
+ multiselect,
61
+ setSelectedData,
62
+ selectedData
63
+ } = SelectInputProvider.useSelectInput();
64
+ const handleChange = (search) => {
65
+ if (search.length > 0) {
66
+ const regex = RegExp(search, "i");
67
+ if (!Array.isArray(options)) {
68
+ const filteredOptions = {
69
+ ...options
70
+ };
71
+ Object.keys(filteredOptions).map((group) => {
72
+ filteredOptions[group] = filteredOptions[group].filter((option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
73
+ return null;
74
+ });
75
+ onSearch(filteredOptions);
76
+ } else {
77
+ const filteredOptions = [...options].filter((option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
78
+ onSearch(filteredOptions);
79
+ }
80
+ } else {
81
+ onSearch(options);
82
+ }
83
+ setSearchInput(search);
84
+ };
85
+ const handleKeyDown = (key, search) => {
86
+ if (key === "Enter") {
87
+ const closestOption = findClosestOption(displayedOptions, search);
88
+ if (closestOption) {
89
+ if (multiselect) {
90
+ setSelectedData({
91
+ type: "selectOption",
92
+ clickedOption: closestOption,
93
+ group: !Array.isArray(options) ? Object.keys(options).filter((group) => options[group].includes(closestOption))[0] : void 0
94
+ });
95
+ onChange?.(selectedData.selectedValues.includes(closestOption.value) ? selectedData.selectedValues : [...selectedData.selectedValues, closestOption.value]);
96
+ setSearchInput(closestOption.searchText ?? closestOption.value);
97
+ } else {
98
+ setSelectedData({
99
+ type: "selectOption",
100
+ clickedOption: closestOption
101
+ });
102
+ onChange?.(selectedData.selectedValues[0] ?? "");
103
+ }
104
+ }
105
+ }
106
+ };
107
+ return /* @__PURE__ */ jsxRuntime.jsx(StyledInput, { value: searchInput, onChange: (event) => handleChange(event), placeholder, onFocus: () => setSearchBarActive(true), onBlur: () => setSearchBarActive(false), "data-testid": "search-bar", prefix: /* @__PURE__ */ jsxRuntime.jsx(icons.Icon, { name: "search", size: "small", sentiment: "neutral" }), onKeyDown: (event) => handleKeyDown(event.key, searchInput), size: "medium", autoFocus: true, "aria-label": "search-bar", ref: searchInputRef });
108
+ };
109
+ exports.SearchBarDropdown = SearchBarDropdown;
@@ -1,28 +1,34 @@
1
1
  import { jsx } from "@emotion/react/jsx-runtime";
2
- import styled from "@emotion/styled";
2
+ import _styled from "@emotion/styled/base";
3
3
  import { Icon } from "@ultraviolet/icons";
4
4
  import { useRef } from "react";
5
5
  import { TextInputV2 } from "../TextInputV2/index.js";
6
6
  import { useSelectInput } from "./SelectInputProvider.js";
7
- const StyledInput = styled(TextInputV2)`
8
- padding-top: ${({ theme }) => theme.space[1.5]};
9
- padding-bottom: ${({ theme }) => theme.space[1.5]};
10
- padding-left: ${({ theme }) => theme.space[2]};
11
- padding-right: ${({ theme }) => theme.space[2]};
12
- `;
7
+ const StyledInput = /* @__PURE__ */ _styled(TextInputV2, process.env.NODE_ENV === "production" ? {
8
+ target: "e1ag0nf0"
9
+ } : {
10
+ target: "e1ag0nf0",
11
+ label: "StyledInput"
12
+ })("padding-top:", ({
13
+ theme
14
+ }) => theme.space[1.5], ";padding-bottom:", ({
15
+ theme
16
+ }) => theme.space[1.5], ";padding-left:", ({
17
+ theme
18
+ }) => theme.space[2], ";padding-right:", ({
19
+ theme
20
+ }) => theme.space[2], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL1NlbGVjdElucHV0VjIvU2VhcmNoQmFyRHJvcGRvd24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWN1QyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy91aS9zcmMvY29tcG9uZW50cy9TZWxlY3RJbnB1dFYyL1NlYXJjaEJhckRyb3Bkb3duLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHsgSWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB0eXBlIHsgRGlzcGF0Y2gsIFNldFN0YXRlQWN0aW9uIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRleHRJbnB1dFYyIH0gZnJvbSAnLi4vVGV4dElucHV0VjInXG5pbXBvcnQgeyB1c2VTZWxlY3RJbnB1dCB9IGZyb20gJy4vU2VsZWN0SW5wdXRQcm92aWRlcidcbmltcG9ydCB0eXBlIHsgRGF0YVR5cGUgfSBmcm9tICcuL3R5cGVzJ1xuXG50eXBlIFNlYXJjaEJhclByb3BzID0ge1xuICBwbGFjZWhvbGRlcjogc3RyaW5nXG4gIGRpc3BsYXllZE9wdGlvbnM6IERhdGFUeXBlXG4gIHNldFNlYXJjaEJhckFjdGl2ZTogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+XG59XG5cbmNvbnN0IFN0eWxlZElucHV0ID0gc3R5bGVkKFRleHRJbnB1dFYyKWBcbiAgcGFkZGluZy10b3A6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMS41XX07XG4gIHBhZGRpbmctYm90dG9tOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzEuNV19O1xuICBwYWRkaW5nLWxlZnQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMl19O1xuICBwYWRkaW5nLXJpZ2h0OiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzJdfTtcbmBcblxuY29uc3QgZmluZENsb3Nlc3RPcHRpb24gPSAoXG4gIG9wdGlvbnM6IERhdGFUeXBlLFxuICBzZWFyY2hJbnB1dDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuKSA9PiB7XG4gIGlmIChzZWFyY2hJbnB1dCkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xuICAgICAgY29uc3QgcG9zc2libGVPcHRpb25zID0geyAuLi5vcHRpb25zIH1cbiAgICAgIE9iamVjdC5rZXlzKHBvc3NpYmxlT3B0aW9ucykubWFwKChncm91cDogc3RyaW5nKSA9PiB7XG4gICAgICAgIHBvc3NpYmxlT3B0aW9uc1tncm91cF0gPSBwb3NzaWJsZU9wdGlvbnNbZ3JvdXBdLmZpbHRlcihcbiAgICAgICAgICBvcHRpb24gPT4gIW9wdGlvbi5kaXNhYmxlZCxcbiAgICAgICAgKVxuXG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9KVxuICAgICAgaWYgKFxuICAgICAgICBPYmplY3Qua2V5cyhwb3NzaWJsZU9wdGlvbnMpLnNvbWUoXG4gICAgICAgICAgZ3JvdXAgPT4gcG9zc2libGVPcHRpb25zW2dyb3VwXS5sZW5ndGggPiAwLFxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgZmlyc3RGaXQgPSBPYmplY3Qua2V5cyhwb3NzaWJsZU9wdGlvbnMpXG4gICAgICAgICAgLm1hcChncm91cCA9PiBwb3NzaWJsZU9wdGlvbnNbZ3JvdXBdWzBdKVxuICAgICAgICAgIC5maWx0ZXIodmFsdWUgPT4gISF2YWx1ZSlbMF1cblxuICAgICAgICByZXR1cm4gZmlyc3RGaXRcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgcG9zc2libGVPcHRpb25zID0gWy4uLm9wdGlvbnNdLmZpbHRlcihvcHRpb24gPT4gIW9wdGlvbi5kaXNhYmxlZClcblxuICAgICAgaWYgKHBvc3NpYmxlT3B0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHJldHVybiBwb3NzaWJsZU9wdGlvbnNbMF1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbFxufVxuZXhwb3J0IGNvbnN0IFNlYXJjaEJhckRyb3Bkb3duID0gKHtcbiAgcGxhY2Vob2xkZXIsXG4gIGRpc3BsYXllZE9wdGlvbnMsXG4gIHNldFNlYXJjaEJhckFjdGl2ZSxcbn06IFNlYXJjaEJhclByb3BzKSA9PiB7XG4gIGNvbnN0IHNlYXJjaElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IHtcbiAgICBvbkNoYW5nZSxcbiAgICBvblNlYXJjaCxcbiAgICBzZXRTZWFyY2hJbnB1dCxcbiAgICBzZWFyY2hJbnB1dCxcbiAgICBvcHRpb25zLFxuICAgIG11bHRpc2VsZWN0LFxuICAgIHNldFNlbGVjdGVkRGF0YSxcbiAgICBzZWxlY3RlZERhdGEsXG4gIH0gPSB1c2VTZWxlY3RJbnB1dCgpXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChzZWFyY2g6IHN0cmluZykgPT4ge1xuICAgIGlmIChzZWFyY2gubGVuZ3RoID4gMCkge1xuICAgICAgLy8gY2FzZSBpbnNlbnNpdGl2ZSBzZWFyY2hcbiAgICAgIGNvbnN0IHJlZ2V4ID0gUmVnRXhwKHNlYXJjaCwgJ2knKVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KG9wdGlvbnMpKSB7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IHsgLi4ub3B0aW9ucyB9XG4gICAgICAgIE9iamVjdC5rZXlzKGZpbHRlcmVkT3B0aW9ucykubWFwKChncm91cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgZmlsdGVyZWRPcHRpb25zW2dyb3VwXSA9IGZpbHRlcmVkT3B0aW9uc1tncm91cF0uZmlsdGVyKG9wdGlvbiA9PlxuICAgICAgICAgICAgb3B0aW9uLnNlYXJjaFRleHRcbiAgICAgICAgICAgICAgPyBvcHRpb24uc2VhcmNoVGV4dC5tYXRjaChyZWdleClcbiAgICAgICAgICAgICAgOiBvcHRpb24udmFsdWUubWF0Y2gocmVnZXgpLFxuICAgICAgICAgIClcblxuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH0pXG4gICAgICAgIG9uU2VhcmNoKGZpbHRlcmVkT3B0aW9ucylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IFsuLi5vcHRpb25zXS5maWx0ZXIob3B0aW9uID0+XG4gICAgICAgICAgb3B0aW9uLnNlYXJjaFRleHRcbiAgICAgICAgICAgID8gb3B0aW9uLnNlYXJjaFRleHQubWF0Y2gocmVnZXgpXG4gICAgICAgICAgICA6IG9wdGlvbi52YWx1ZS5tYXRjaChyZWdleCksXG4gICAgICAgIClcbiAgICAgICAgb25TZWFyY2goZmlsdGVyZWRPcHRpb25zKVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBvblNlYXJjaChvcHRpb25zKVxuICAgIH1cbiAgICBzZXRTZWFyY2hJbnB1dChzZWFyY2gpXG4gIH1cblxuICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGtleTogc3RyaW5nLCBzZWFyY2g/OiBzdHJpbmcpID0+IHtcbiAgICBpZiAoa2V5ID09PSAnRW50ZXInKSB7XG4gICAgICBjb25zdCBjbG9zZXN0T3B0aW9uID0gZmluZENsb3Nlc3RPcHRpb24oZGlzcGxheWVkT3B0aW9ucywgc2VhcmNoKVxuICAgICAgaWYgKGNsb3Nlc3RPcHRpb24pIHtcbiAgICAgICAgaWYgKG11bHRpc2VsZWN0KSB7XG4gICAgICAgICAgc2V0U2VsZWN0ZWREYXRhKHtcbiAgICAgICAgICAgIHR5cGU6ICdzZWxlY3RPcHRpb24nLFxuICAgICAgICAgICAgY2xpY2tlZE9wdGlvbjogY2xvc2VzdE9wdGlvbixcbiAgICAgICAgICAgIGdyb3VwOiAhQXJyYXkuaXNBcnJheShvcHRpb25zKVxuICAgICAgICAgICAgICA/IE9iamVjdC5rZXlzKG9wdGlvbnMpLmZpbHRlcihncm91cCA9PlxuICAgICAgICAgICAgICAgICAgb3B0aW9uc1tncm91cF0uaW5jbHVkZXMoY2xvc2VzdE9wdGlvbiksXG4gICAgICAgICAgICAgICAgKVswXVxuICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgICB9KVxuICAgICAgICAgIG9uQ2hhbmdlPy4oXG4gICAgICAgICAgICBzZWxlY3RlZERhdGEuc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMoY2xvc2VzdE9wdGlvbi52YWx1ZSlcbiAgICAgICAgICAgICAgPyBzZWxlY3RlZERhdGEuc2VsZWN0ZWRWYWx1ZXNcbiAgICAgICAgICAgICAgOiBbLi4uc2VsZWN0ZWREYXRhLnNlbGVjdGVkVmFsdWVzLCBjbG9zZXN0T3B0aW9uLnZhbHVlXSxcbiAgICAgICAgICApXG4gICAgICAgICAgc2V0U2VhcmNoSW5wdXQoY2xvc2VzdE9wdGlvbi5zZWFyY2hUZXh0ID8/IGNsb3Nlc3RPcHRpb24udmFsdWUpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0U2VsZWN0ZWREYXRhKHtcbiAgICAgICAgICAgIHR5cGU6ICdzZWxlY3RPcHRpb24nLFxuICAgICAgICAgICAgY2xpY2tlZE9wdGlvbjogY2xvc2VzdE9wdGlvbixcbiAgICAgICAgICB9KVxuICAgICAgICAgIG9uQ2hhbmdlPy4oc2VsZWN0ZWREYXRhLnNlbGVjdGVkVmFsdWVzWzBdID8/ICcnKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkSW5wdXRcbiAgICAgIHZhbHVlPXtzZWFyY2hJbnB1dH1cbiAgICAgIG9uQ2hhbmdlPXtldmVudCA9PiBoYW5kbGVDaGFuZ2UoZXZlbnQpfVxuICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgb25Gb2N1cz17KCkgPT4gc2V0U2VhcmNoQmFyQWN0aXZlKHRydWUpfVxuICAgICAgb25CbHVyPXsoKSA9PiBzZXRTZWFyY2hCYXJBY3RpdmUoZmFsc2UpfVxuICAgICAgZGF0YS10ZXN0aWQ9XCJzZWFyY2gtYmFyXCJcbiAgICAgIHByZWZpeD17PEljb24gbmFtZT1cInNlYXJjaFwiIHNpemU9XCJzbWFsbFwiIHNlbnRpbWVudD1cIm5ldXRyYWxcIiAvPn1cbiAgICAgIG9uS2V5RG93bj17ZXZlbnQgPT4gaGFuZGxlS2V5RG93bihldmVudC5rZXksIHNlYXJjaElucHV0KX1cbiAgICAgIHNpemU9XCJtZWRpdW1cIlxuICAgICAgYXV0b0ZvY3VzXG4gICAgICBhcmlhLWxhYmVsPVwic2VhcmNoLWJhclwiXG4gICAgICByZWY9e3NlYXJjaElucHV0UmVmfVxuICAgIC8+XG4gIClcbn1cbiJdfQ== */"));
13
21
  const findClosestOption = (options, searchInput) => {
14
22
  if (searchInput) {
15
23
  if (!Array.isArray(options)) {
16
- const possibleOptions = { ...options };
24
+ const possibleOptions = {
25
+ ...options
26
+ };
17
27
  Object.keys(possibleOptions).map((group) => {
18
- possibleOptions[group] = possibleOptions[group].filter(
19
- (option) => !option.disabled
20
- );
28
+ possibleOptions[group] = possibleOptions[group].filter((option) => !option.disabled);
21
29
  return null;
22
30
  });
23
- if (Object.keys(possibleOptions).some(
24
- (group) => possibleOptions[group].length > 0
25
- )) {
31
+ if (Object.keys(possibleOptions).some((group) => possibleOptions[group].length > 0)) {
26
32
  const firstFit = Object.keys(possibleOptions).map((group) => possibleOptions[group][0]).filter((value) => !!value)[0];
27
33
  return firstFit;
28
34
  }
@@ -55,18 +61,16 @@ const SearchBarDropdown = ({
55
61
  if (search.length > 0) {
56
62
  const regex = RegExp(search, "i");
57
63
  if (!Array.isArray(options)) {
58
- const filteredOptions = { ...options };
64
+ const filteredOptions = {
65
+ ...options
66
+ };
59
67
  Object.keys(filteredOptions).map((group) => {
60
- filteredOptions[group] = filteredOptions[group].filter(
61
- (option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex)
62
- );
68
+ filteredOptions[group] = filteredOptions[group].filter((option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
63
69
  return null;
64
70
  });
65
71
  onSearch(filteredOptions);
66
72
  } else {
67
- const filteredOptions = [...options].filter(
68
- (option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex)
69
- );
73
+ const filteredOptions = [...options].filter((option) => option.searchText ? option.searchText.match(regex) : option.value.match(regex));
70
74
  onSearch(filteredOptions);
71
75
  }
72
76
  } else {
@@ -82,13 +86,9 @@ const SearchBarDropdown = ({
82
86
  setSelectedData({
83
87
  type: "selectOption",
84
88
  clickedOption: closestOption,
85
- group: !Array.isArray(options) ? Object.keys(options).filter(
86
- (group) => options[group].includes(closestOption)
87
- )[0] : void 0
89
+ group: !Array.isArray(options) ? Object.keys(options).filter((group) => options[group].includes(closestOption))[0] : void 0
88
90
  });
89
- onChange?.(
90
- selectedData.selectedValues.includes(closestOption.value) ? selectedData.selectedValues : [...selectedData.selectedValues, closestOption.value]
91
- );
91
+ onChange?.(selectedData.selectedValues.includes(closestOption.value) ? selectedData.selectedValues : [...selectedData.selectedValues, closestOption.value]);
92
92
  setSearchInput(closestOption.searchText ?? closestOption.value);
93
93
  } else {
94
94
  setSelectedData({
@@ -100,23 +100,7 @@ const SearchBarDropdown = ({
100
100
  }
101
101
  }
102
102
  };
103
- return /* @__PURE__ */ jsx(
104
- StyledInput,
105
- {
106
- value: searchInput,
107
- onChange: (event) => handleChange(event),
108
- placeholder,
109
- onFocus: () => setSearchBarActive(true),
110
- onBlur: () => setSearchBarActive(false),
111
- "data-testid": "search-bar",
112
- prefix: /* @__PURE__ */ jsx(Icon, { name: "search", size: "small", sentiment: "neutral" }),
113
- onKeyDown: (event) => handleKeyDown(event.key, searchInput),
114
- size: "medium",
115
- autoFocus: true,
116
- "aria-label": "search-bar",
117
- ref: searchInputRef
118
- }
119
- );
103
+ return /* @__PURE__ */ jsx(StyledInput, { value: searchInput, onChange: (event) => handleChange(event), placeholder, onFocus: () => setSearchBarActive(true), onBlur: () => setSearchBarActive(false), "data-testid": "search-bar", prefix: /* @__PURE__ */ jsx(Icon, { name: "search", size: "small", sentiment: "neutral" }), onKeyDown: (event) => handleKeyDown(event.key, searchInput), size: "medium", autoFocus: true, "aria-label": "search-bar", ref: searchInputRef });
120
104
  };
121
105
  export {
122
106
  SearchBarDropdown