@laerdal/life-react-components 1.7.0 → 1.8.0-dev.10

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 (471) hide show
  1. package/dist/Accordion/ContentAccordion.cjs +1 -1
  2. package/dist/Accordion/ContentAccordion.cjs.map +1 -1
  3. package/dist/Accordion/ContentAccordion.js +2 -2
  4. package/dist/Accordion/ContentAccordion.js.map +1 -1
  5. package/dist/Accordion/styles.cjs +1 -1
  6. package/dist/Accordion/styles.cjs.map +1 -1
  7. package/dist/Accordion/styles.js +2 -2
  8. package/dist/Accordion/styles.js.map +1 -1
  9. package/dist/Banners/Banner.cjs +3 -3
  10. package/dist/Banners/Banner.cjs.map +1 -1
  11. package/dist/Banners/Banner.js +3 -3
  12. package/dist/Banners/Banner.js.map +1 -1
  13. package/dist/Banners/styles.cjs +1 -1
  14. package/dist/Banners/styles.cjs.map +1 -1
  15. package/dist/Banners/styles.js +1 -1
  16. package/dist/Banners/styles.js.map +1 -1
  17. package/dist/Breadcrumb/Breadcrumb.cjs +1 -0
  18. package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
  19. package/dist/Breadcrumb/Breadcrumb.js +1 -0
  20. package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
  21. package/dist/Button/BackButton.cjs +5 -2
  22. package/dist/Button/BackButton.cjs.map +1 -1
  23. package/dist/Button/BackButton.js +5 -3
  24. package/dist/Button/BackButton.js.map +1 -1
  25. package/dist/Button/Button.cjs +14 -28
  26. package/dist/Button/Button.cjs.map +1 -1
  27. package/dist/Button/Button.d.ts +3 -2
  28. package/dist/Button/Button.js +15 -29
  29. package/dist/Button/Button.js.map +1 -1
  30. package/dist/Button/DualFunctionButton.cjs +30 -8
  31. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  32. package/dist/Button/DualFunctionButton.js +28 -7
  33. package/dist/Button/DualFunctionButton.js.map +1 -1
  34. package/dist/Button/Iconbutton.cjs +23 -32
  35. package/dist/Button/Iconbutton.cjs.map +1 -1
  36. package/dist/Button/Iconbutton.d.ts +3 -0
  37. package/dist/Button/Iconbutton.js +20 -32
  38. package/dist/Button/Iconbutton.js.map +1 -1
  39. package/dist/Card/Card.cjs +28 -44
  40. package/dist/Card/Card.cjs.map +1 -1
  41. package/dist/Card/Card.d.ts +3 -11
  42. package/dist/Card/Card.js +26 -44
  43. package/dist/Card/Card.js.map +1 -1
  44. package/dist/Card/CardBottomSection.cjs +33 -24
  45. package/dist/Card/CardBottomSection.cjs.map +1 -1
  46. package/dist/Card/CardBottomSection.d.ts +11 -2
  47. package/dist/Card/CardBottomSection.js +17 -24
  48. package/dist/Card/CardBottomSection.js.map +1 -1
  49. package/dist/Card/CardMiddleSection.cjs +38 -17
  50. package/dist/Card/CardMiddleSection.cjs.map +1 -1
  51. package/dist/Card/CardMiddleSection.d.ts +16 -3
  52. package/dist/Card/CardMiddleSection.js +30 -17
  53. package/dist/Card/CardMiddleSection.js.map +1 -1
  54. package/dist/Card/CardTopSection.cjs +27 -20
  55. package/dist/Card/CardTopSection.cjs.map +1 -1
  56. package/dist/Card/CardTopSection.d.ts +12 -4
  57. package/dist/Card/CardTopSection.js +17 -20
  58. package/dist/Card/CardTopSection.js.map +1 -1
  59. package/dist/Card/index.cjs +45 -9
  60. package/dist/Card/index.cjs.map +1 -1
  61. package/dist/Card/index.d.ts +3 -1
  62. package/dist/Card/index.js +3 -1
  63. package/dist/Card/index.js.map +1 -1
  64. package/dist/Chips/ActionChip.cjs +4 -4
  65. package/dist/Chips/ActionChip.cjs.map +1 -1
  66. package/dist/Chips/ActionChip.js +4 -4
  67. package/dist/Chips/ActionChip.js.map +1 -1
  68. package/dist/Chips/ChipStyles.cjs +5 -17
  69. package/dist/Chips/ChipStyles.cjs.map +1 -1
  70. package/dist/Chips/ChipStyles.d.ts +0 -3
  71. package/dist/Chips/ChipStyles.js +5 -8
  72. package/dist/Chips/ChipStyles.js.map +1 -1
  73. package/dist/Chips/ChipTypes.d.ts +8 -20
  74. package/dist/Chips/ChoiceChips.cjs +2 -2
  75. package/dist/Chips/ChoiceChips.cjs.map +1 -1
  76. package/dist/Chips/ChoiceChips.js +2 -2
  77. package/dist/Chips/ChoiceChips.js.map +1 -1
  78. package/dist/Chips/FilterChip.cjs +3 -3
  79. package/dist/Chips/FilterChip.cjs.map +1 -1
  80. package/dist/Chips/FilterChip.js +3 -3
  81. package/dist/Chips/FilterChip.js.map +1 -1
  82. package/dist/Chips/InputChip.cjs +21 -12
  83. package/dist/Chips/InputChip.cjs.map +1 -1
  84. package/dist/Chips/InputChip.js +21 -13
  85. package/dist/Chips/InputChip.js.map +1 -1
  86. package/dist/Chips/index.cjs +1 -1
  87. package/dist/Chips/index.cjs.map +1 -1
  88. package/dist/Chips/index.d.ts +1 -1
  89. package/dist/Chips/index.js +1 -1
  90. package/dist/Chips/index.js.map +1 -1
  91. package/dist/ChipsInput/ChipDropdownInput.cjs +400 -0
  92. package/dist/ChipsInput/ChipDropdownInput.cjs.map +1 -0
  93. package/dist/ChipsInput/ChipDropdownInput.d.ts +21 -0
  94. package/dist/ChipsInput/ChipDropdownInput.js +382 -0
  95. package/dist/ChipsInput/ChipDropdownInput.js.map +1 -0
  96. package/dist/ChipsInput/ChipInput.cjs +139 -0
  97. package/dist/ChipsInput/ChipInput.cjs.map +1 -0
  98. package/dist/{Chips → ChipsInput}/ChipInput.d.ts +1 -4
  99. package/dist/ChipsInput/ChipInput.js +120 -0
  100. package/dist/ChipsInput/ChipInput.js.map +1 -0
  101. package/dist/ChipsInput/ChipInputField.cjs +232 -0
  102. package/dist/ChipsInput/ChipInputField.cjs.map +1 -0
  103. package/dist/ChipsInput/ChipInputField.d.ts +25 -0
  104. package/dist/ChipsInput/ChipInputField.js +192 -0
  105. package/dist/ChipsInput/ChipInputField.js.map +1 -0
  106. package/dist/ChipsInput/ChipInputTypes.cjs +6 -0
  107. package/dist/ChipsInput/ChipInputTypes.cjs.map +1 -0
  108. package/dist/ChipsInput/ChipInputTypes.d.ts +22 -0
  109. package/dist/ChipsInput/ChipInputTypes.js +2 -0
  110. package/dist/ChipsInput/ChipInputTypes.js.map +1 -0
  111. package/dist/ChipsInput/index.cjs +19 -0
  112. package/dist/ChipsInput/index.cjs.map +1 -0
  113. package/dist/ChipsInput/index.d.ts +1 -0
  114. package/dist/ChipsInput/index.js +2 -0
  115. package/dist/ChipsInput/index.js.map +1 -0
  116. package/dist/Dropdown/BasicDropdown.cjs +40 -20
  117. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  118. package/dist/Dropdown/BasicDropdown.d.ts +2 -2
  119. package/dist/Dropdown/BasicDropdown.js +43 -22
  120. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  121. package/dist/Dropdown/CommonStyling.cjs +32 -18
  122. package/dist/Dropdown/CommonStyling.cjs.map +1 -1
  123. package/dist/Dropdown/CommonStyling.d.ts +7 -6
  124. package/dist/Dropdown/CommonStyling.js +18 -17
  125. package/dist/Dropdown/CommonStyling.js.map +1 -1
  126. package/dist/Dropdown/DropdownButton.cjs +94 -29
  127. package/dist/Dropdown/DropdownButton.cjs.map +1 -1
  128. package/dist/Dropdown/DropdownButton.d.ts +1 -1
  129. package/dist/Dropdown/DropdownButton.js +89 -29
  130. package/dist/Dropdown/DropdownButton.js.map +1 -1
  131. package/dist/Dropdown/DropdownButtonTypes.d.ts +16 -5
  132. package/dist/Dropdown/DropdownContent.cjs +167 -132
  133. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  134. package/dist/Dropdown/DropdownContent.d.ts +2 -2
  135. package/dist/Dropdown/DropdownContent.js +164 -133
  136. package/dist/Dropdown/DropdownContent.js.map +1 -1
  137. package/dist/Dropdown/DropdownFilter.cjs +135 -153
  138. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  139. package/dist/Dropdown/DropdownFilter.d.ts +9 -15
  140. package/dist/Dropdown/DropdownFilter.js +133 -153
  141. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  142. package/dist/Dropdown/index.cjs +0 -8
  143. package/dist/Dropdown/index.cjs.map +1 -1
  144. package/dist/Dropdown/index.d.ts +1 -2
  145. package/dist/Dropdown/index.js +1 -2
  146. package/dist/Dropdown/index.js.map +1 -1
  147. package/dist/Footer/Components/FooterDropdownLinks.cjs +6 -3
  148. package/dist/Footer/Components/FooterDropdownLinks.cjs.map +1 -1
  149. package/dist/Footer/Components/FooterDropdownLinks.js +6 -4
  150. package/dist/Footer/Components/FooterDropdownLinks.js.map +1 -1
  151. package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +5 -3
  152. package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
  153. package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +5 -4
  154. package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
  155. package/dist/Footer/Components/FooterTop.cjs +2 -1
  156. package/dist/Footer/Components/FooterTop.cjs.map +1 -1
  157. package/dist/Footer/Components/FooterTop.js +3 -2
  158. package/dist/Footer/Components/FooterTop.js.map +1 -1
  159. package/dist/GlobalNavigationBar/Avatar.cjs +5 -7
  160. package/dist/GlobalNavigationBar/Avatar.cjs.map +1 -1
  161. package/dist/GlobalNavigationBar/Avatar.js +5 -8
  162. package/dist/GlobalNavigationBar/Avatar.js.map +1 -1
  163. package/dist/GlobalNavigationBar/Logo.cjs +9 -6
  164. package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
  165. package/dist/GlobalNavigationBar/Logo.d.ts +2 -1
  166. package/dist/GlobalNavigationBar/Logo.js +9 -7
  167. package/dist/GlobalNavigationBar/Logo.js.map +1 -1
  168. package/dist/GlobalNavigationBar/MainMenu.cjs +10 -13
  169. package/dist/GlobalNavigationBar/MainMenu.cjs.map +1 -1
  170. package/dist/GlobalNavigationBar/MainMenu.js +9 -13
  171. package/dist/GlobalNavigationBar/MainMenu.js.map +1 -1
  172. package/dist/GlobalNavigationBar/RightSideNav.cjs +3 -5
  173. package/dist/GlobalNavigationBar/RightSideNav.cjs.map +1 -1
  174. package/dist/GlobalNavigationBar/RightSideNav.js +2 -5
  175. package/dist/GlobalNavigationBar/RightSideNav.js.map +1 -1
  176. package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs +4 -0
  177. package/dist/GlobalNavigationBar/UserMenu/MenuLink.cjs.map +1 -1
  178. package/dist/GlobalNavigationBar/UserMenu/MenuLink.js +3 -0
  179. package/dist/GlobalNavigationBar/UserMenu/MenuLink.js.map +1 -1
  180. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +1 -1
  181. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
  182. package/dist/GlobalNavigationBar/mobile/CommonStyles.js +2 -2
  183. package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  184. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +1 -1
  185. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
  186. package/dist/GlobalNavigationBar/mobile/MobileMenu.js +2 -2
  187. package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
  188. package/dist/HyperLink/styling.cjs +1 -1
  189. package/dist/HyperLink/styling.cjs.map +1 -1
  190. package/dist/HyperLink/styling.js +1 -1
  191. package/dist/HyperLink/styling.js.map +1 -1
  192. package/dist/Image/ImageWithFallbacks.cjs +3 -1
  193. package/dist/Image/ImageWithFallbacks.cjs.map +1 -1
  194. package/dist/Image/ImageWithFallbacks.js +3 -1
  195. package/dist/Image/ImageWithFallbacks.js.map +1 -1
  196. package/dist/InputFields/Checkbox.cjs +20 -17
  197. package/dist/InputFields/Checkbox.cjs.map +1 -1
  198. package/dist/InputFields/Checkbox.d.ts +4 -3
  199. package/dist/InputFields/Checkbox.js +21 -18
  200. package/dist/InputFields/Checkbox.js.map +1 -1
  201. package/dist/InputFields/DatepickerField.cjs +15 -17
  202. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  203. package/dist/InputFields/DatepickerField.d.ts +3 -3
  204. package/dist/InputFields/DatepickerField.js +16 -22
  205. package/dist/InputFields/DatepickerField.js.map +1 -1
  206. package/dist/InputFields/NumberField.cjs +276 -0
  207. package/dist/InputFields/NumberField.cjs.map +1 -0
  208. package/dist/InputFields/NumberField.d.ts +21 -0
  209. package/dist/InputFields/NumberField.js +240 -0
  210. package/dist/InputFields/NumberField.js.map +1 -0
  211. package/dist/InputFields/PasswordField.cjs +21 -17
  212. package/dist/InputFields/PasswordField.cjs.map +1 -1
  213. package/dist/InputFields/PasswordField.d.ts +2 -3
  214. package/dist/InputFields/PasswordField.js +19 -15
  215. package/dist/InputFields/PasswordField.js.map +1 -1
  216. package/dist/InputFields/QuickSearch.cjs +119 -96
  217. package/dist/InputFields/QuickSearch.cjs.map +1 -1
  218. package/dist/InputFields/QuickSearch.js +119 -96
  219. package/dist/InputFields/QuickSearch.js.map +1 -1
  220. package/dist/InputFields/RadioButton.cjs +14 -13
  221. package/dist/InputFields/RadioButton.cjs.map +1 -1
  222. package/dist/InputFields/RadioButton.d.ts +2 -1
  223. package/dist/InputFields/RadioButton.js +16 -13
  224. package/dist/InputFields/RadioButton.js.map +1 -1
  225. package/dist/InputFields/SearchBar.cjs +5 -5
  226. package/dist/InputFields/SearchBar.cjs.map +1 -1
  227. package/dist/InputFields/SearchBar.js +6 -6
  228. package/dist/InputFields/SearchBar.js.map +1 -1
  229. package/dist/InputFields/TextField.cjs +12 -27
  230. package/dist/InputFields/TextField.cjs.map +1 -1
  231. package/dist/InputFields/TextField.d.ts +4 -6
  232. package/dist/InputFields/TextField.js +12 -27
  233. package/dist/InputFields/TextField.js.map +1 -1
  234. package/dist/InputFields/Textarea.cjs +3 -14
  235. package/dist/InputFields/Textarea.cjs.map +1 -1
  236. package/dist/InputFields/Textarea.d.ts +0 -1
  237. package/dist/InputFields/Textarea.js +5 -14
  238. package/dist/InputFields/Textarea.js.map +1 -1
  239. package/dist/InputFields/components/SearchBarInput.cjs +6 -8
  240. package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
  241. package/dist/InputFields/components/SearchBarInput.d.ts +0 -3
  242. package/dist/InputFields/components/SearchBarInput.js +4 -5
  243. package/dist/InputFields/components/SearchBarInput.js.map +1 -1
  244. package/dist/InputFields/components/SearchField.cjs +29 -21
  245. package/dist/InputFields/components/SearchField.cjs.map +1 -1
  246. package/dist/InputFields/components/SearchField.d.ts +8 -8
  247. package/dist/InputFields/components/SearchField.js +25 -19
  248. package/dist/InputFields/components/SearchField.js.map +1 -1
  249. package/dist/InputFields/index.cjs +8 -0
  250. package/dist/InputFields/index.cjs.map +1 -1
  251. package/dist/InputFields/index.d.ts +2 -1
  252. package/dist/InputFields/index.js +2 -1
  253. package/dist/InputFields/index.js.map +1 -1
  254. package/dist/InputFields/styling.cjs +16 -26
  255. package/dist/InputFields/styling.cjs.map +1 -1
  256. package/dist/InputFields/styling.d.ts +3 -6
  257. package/dist/InputFields/styling.js +15 -23
  258. package/dist/InputFields/styling.js.map +1 -1
  259. package/dist/List/ListRow.cjs +6 -5
  260. package/dist/List/ListRow.cjs.map +1 -1
  261. package/dist/List/ListRow.js +9 -5
  262. package/dist/List/ListRow.js.map +1 -1
  263. package/dist/LoadingIndicator/LoadingIndicator.cjs +6 -1
  264. package/dist/LoadingIndicator/LoadingIndicator.cjs.map +1 -1
  265. package/dist/LoadingIndicator/LoadingIndicator.d.ts +2 -1
  266. package/dist/LoadingIndicator/LoadingIndicator.js +6 -1
  267. package/dist/LoadingIndicator/LoadingIndicator.js.map +1 -1
  268. package/dist/MenuItem/MenuItem.cjs +6 -2
  269. package/dist/MenuItem/MenuItem.cjs.map +1 -1
  270. package/dist/MenuItem/MenuItem.d.ts +1 -0
  271. package/dist/MenuItem/MenuItem.js +7 -3
  272. package/dist/MenuItem/MenuItem.js.map +1 -1
  273. package/dist/Modals/ModalContainer.cjs +78 -38
  274. package/dist/Modals/ModalContainer.cjs.map +1 -1
  275. package/dist/Modals/ModalContainer.d.ts +15 -8
  276. package/dist/Modals/ModalContainer.js +78 -36
  277. package/dist/Modals/ModalContainer.js.map +1 -1
  278. package/dist/Modals/ModalContent.cjs +0 -1
  279. package/dist/Modals/ModalContent.cjs.map +1 -1
  280. package/dist/Modals/ModalContent.d.ts +0 -1
  281. package/dist/Modals/ModalContent.js +0 -1
  282. package/dist/Modals/ModalContent.js.map +1 -1
  283. package/dist/Modals/ModalDialog.cjs +18 -26
  284. package/dist/Modals/ModalDialog.cjs.map +1 -1
  285. package/dist/Modals/ModalDialog.d.ts +1 -1
  286. package/dist/Modals/ModalDialog.js +19 -26
  287. package/dist/Modals/ModalDialog.js.map +1 -1
  288. package/dist/Modals/ModalStyles.cjs +33 -25
  289. package/dist/Modals/ModalStyles.cjs.map +1 -1
  290. package/dist/Modals/ModalStyles.d.ts +7 -1
  291. package/dist/Modals/ModalStyles.js +26 -24
  292. package/dist/Modals/ModalStyles.js.map +1 -1
  293. package/dist/NavItem/NavItem.cjs +1 -1
  294. package/dist/NavItem/NavItem.cjs.map +1 -1
  295. package/dist/NavItem/NavItem.js +2 -2
  296. package/dist/NavItem/NavItem.js.map +1 -1
  297. package/dist/Paginator/Paginator.cjs +1 -1
  298. package/dist/Paginator/Paginator.cjs.map +1 -1
  299. package/dist/Paginator/Paginator.js +2 -2
  300. package/dist/Paginator/Paginator.js.map +1 -1
  301. package/dist/QuizButton/QuizButton.cjs +4 -8
  302. package/dist/QuizButton/QuizButton.cjs.map +1 -1
  303. package/dist/QuizButton/QuizButton.js +5 -9
  304. package/dist/QuizButton/QuizButton.js.map +1 -1
  305. package/dist/SegmentControl/SegmentControl.cjs +1 -1
  306. package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
  307. package/dist/SegmentControl/SegmentControl.js +2 -2
  308. package/dist/SegmentControl/SegmentControl.js.map +1 -1
  309. package/dist/Switcher/SwitcherMenuItem.cjs +1 -1
  310. package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
  311. package/dist/Switcher/SwitcherMenuItem.js +2 -2
  312. package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
  313. package/dist/Table/TableBody.cjs +1 -1
  314. package/dist/Table/TableBody.cjs.map +1 -1
  315. package/dist/Table/TableBody.js +1 -1
  316. package/dist/Table/TableBody.js.map +1 -1
  317. package/dist/Table/TableFooter.cjs +12 -14
  318. package/dist/Table/TableFooter.cjs.map +1 -1
  319. package/dist/Table/TableFooter.js +13 -15
  320. package/dist/Table/TableFooter.js.map +1 -1
  321. package/dist/Table/TableHeaders.cjs +1 -0
  322. package/dist/Table/TableHeaders.cjs.map +1 -1
  323. package/dist/Table/TableHeaders.js +1 -0
  324. package/dist/Table/TableHeaders.js.map +1 -1
  325. package/dist/Table/TableStyles.cjs +4 -4
  326. package/dist/Table/TableStyles.cjs.map +1 -1
  327. package/dist/Table/TableStyles.js +5 -5
  328. package/dist/Table/TableStyles.js.map +1 -1
  329. package/dist/Tabs/HorizontalTabs.cjs +5 -1
  330. package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
  331. package/dist/Tabs/HorizontalTabs.js +6 -3
  332. package/dist/Tabs/HorizontalTabs.js.map +1 -1
  333. package/dist/Tabs/TabLink.cjs +48 -45
  334. package/dist/Tabs/TabLink.cjs.map +1 -1
  335. package/dist/Tabs/TabLink.js +47 -46
  336. package/dist/Tabs/TabLink.js.map +1 -1
  337. package/dist/Tabs/VerticalTabs.cjs.map +1 -1
  338. package/dist/Tabs/VerticalTabs.js.map +1 -1
  339. package/dist/Tile/Tile.cjs +61 -0
  340. package/dist/Tile/Tile.cjs.map +1 -0
  341. package/dist/Tile/Tile.d.ts +4 -0
  342. package/dist/Tile/Tile.js +43 -0
  343. package/dist/Tile/Tile.js.map +1 -0
  344. package/dist/Tile/TileBody.cjs +37 -0
  345. package/dist/Tile/TileBody.cjs.map +1 -0
  346. package/dist/Tile/TileBody.d.ts +6 -0
  347. package/dist/Tile/TileBody.js +22 -0
  348. package/dist/Tile/TileBody.js.map +1 -0
  349. package/dist/Tile/TileCommonItems.cjs +165 -0
  350. package/dist/Tile/TileCommonItems.cjs.map +1 -0
  351. package/dist/Tile/TileCommonItems.d.ts +9 -0
  352. package/dist/Tile/TileCommonItems.js +126 -0
  353. package/dist/Tile/TileCommonItems.js.map +1 -0
  354. package/dist/Tile/TileFooter.cjs +48 -0
  355. package/dist/Tile/TileFooter.cjs.map +1 -0
  356. package/dist/Tile/TileFooter.d.ts +7 -0
  357. package/dist/Tile/TileFooter.js +32 -0
  358. package/dist/Tile/TileFooter.js.map +1 -0
  359. package/dist/Tile/TileHeader.cjs +90 -0
  360. package/dist/Tile/TileHeader.cjs.map +1 -0
  361. package/dist/Tile/TileHeader.d.ts +7 -0
  362. package/dist/Tile/TileHeader.js +68 -0
  363. package/dist/Tile/TileHeader.js.map +1 -0
  364. package/dist/Tile/TileTypes.cjs +6 -0
  365. package/dist/Tile/TileTypes.cjs.map +1 -0
  366. package/dist/Tile/TileTypes.d.ts +57 -0
  367. package/dist/Tile/TileTypes.js +2 -0
  368. package/dist/Tile/TileTypes.js.map +1 -0
  369. package/dist/Tile/index.cjs +33 -0
  370. package/dist/Tile/index.cjs.map +1 -0
  371. package/dist/Tile/index.d.ts +3 -0
  372. package/dist/Tile/index.js +4 -0
  373. package/dist/Tile/index.js.map +1 -0
  374. package/dist/Toasters/Toast.cjs +2 -0
  375. package/dist/Toasters/Toast.cjs.map +1 -1
  376. package/dist/Toasters/Toast.js +2 -0
  377. package/dist/Toasters/Toast.js.map +1 -1
  378. package/dist/Toggles/ToggleButton.cjs +81 -0
  379. package/dist/Toggles/ToggleButton.cjs.map +1 -0
  380. package/dist/Toggles/ToggleButton.d.ts +14 -0
  381. package/dist/Toggles/ToggleButton.js +59 -0
  382. package/dist/Toggles/ToggleButton.js.map +1 -0
  383. package/dist/Toggles/ToggleSwitch.cjs +12 -6
  384. package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
  385. package/dist/Toggles/ToggleSwitch.js +11 -6
  386. package/dist/Toggles/ToggleSwitch.js.map +1 -1
  387. package/dist/Toggles/TogglerStyles.cjs +2 -2
  388. package/dist/Toggles/TogglerStyles.cjs.map +1 -1
  389. package/dist/Toggles/TogglerStyles.js +3 -3
  390. package/dist/Toggles/TogglerStyles.js.map +1 -1
  391. package/dist/Toggles/index.cjs +8 -0
  392. package/dist/Toggles/index.cjs.map +1 -1
  393. package/dist/Toggles/index.d.ts +2 -1
  394. package/dist/Toggles/index.js +2 -1
  395. package/dist/Toggles/index.js.map +1 -1
  396. package/dist/Tooltips/TooltipStyles.cjs +2 -2
  397. package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
  398. package/dist/Tooltips/TooltipStyles.js +3 -3
  399. package/dist/Tooltips/TooltipStyles.js.map +1 -1
  400. package/dist/Tooltips/TooltipTypes.cjs.map +1 -1
  401. package/dist/Tooltips/TooltipTypes.d.ts +1 -0
  402. package/dist/Tooltips/TooltipTypes.js.map +1 -1
  403. package/dist/Tooltips/TooltipWrapper.cjs +2 -0
  404. package/dist/Tooltips/TooltipWrapper.cjs.map +1 -1
  405. package/dist/Tooltips/TooltipWrapper.d.ts +1 -1
  406. package/dist/Tooltips/TooltipWrapper.js +2 -0
  407. package/dist/Tooltips/TooltipWrapper.js.map +1 -1
  408. package/dist/common/{HoverWithin.cjs → ActionWithin.cjs} +9 -5
  409. package/dist/common/ActionWithin.cjs.map +1 -0
  410. package/dist/common/{HoverWithin.d.ts → ActionWithin.d.ts} +0 -0
  411. package/dist/common/{HoverWithin.js → ActionWithin.js} +9 -5
  412. package/dist/common/ActionWithin.js.map +1 -0
  413. package/dist/common/ClickOutside.cjs +39 -0
  414. package/dist/common/ClickOutside.cjs.map +1 -0
  415. package/dist/common/ClickOutside.d.ts +1 -0
  416. package/dist/common/ClickOutside.js +25 -0
  417. package/dist/common/ClickOutside.js.map +1 -0
  418. package/dist/common/FocusOutside.cjs +39 -0
  419. package/dist/common/FocusOutside.cjs.map +1 -0
  420. package/dist/common/FocusOutside.d.ts +1 -0
  421. package/dist/common/FocusOutside.js +25 -0
  422. package/dist/common/FocusOutside.js.map +1 -0
  423. package/dist/common/FocusVisible.cjs +67 -19
  424. package/dist/common/FocusVisible.cjs.map +1 -1
  425. package/dist/common/FocusVisible.js +66 -19
  426. package/dist/common/FocusVisible.js.map +1 -1
  427. package/dist/common/InputStyling.cjs +1 -1
  428. package/dist/common/InputStyling.cjs.map +1 -1
  429. package/dist/common/InputStyling.js +2 -2
  430. package/dist/common/InputStyling.js.map +1 -1
  431. package/dist/common/index.cjs +18 -2
  432. package/dist/common/index.cjs.map +1 -1
  433. package/dist/common/index.d.ts +3 -1
  434. package/dist/common/index.js +3 -1
  435. package/dist/common/index.js.map +1 -1
  436. package/dist/icons/index.cjs +1 -1
  437. package/dist/icons/index.cjs.map +1 -1
  438. package/dist/icons/index.js +1 -1
  439. package/dist/icons/index.js.map +1 -1
  440. package/dist/index.cjs +28 -0
  441. package/dist/index.cjs.map +1 -1
  442. package/dist/index.d.ts +2 -0
  443. package/dist/index.js +2 -0
  444. package/dist/index.js.map +1 -1
  445. package/dist/styles/focus-styles.cjs +22 -0
  446. package/dist/styles/focus-styles.cjs.map +1 -0
  447. package/dist/styles/focus-styles.d.ts +2 -0
  448. package/dist/styles/focus-styles.js +9 -0
  449. package/dist/styles/focus-styles.js.map +1 -0
  450. package/dist/styles/index.cjs +60 -0
  451. package/dist/styles/index.cjs.map +1 -1
  452. package/dist/styles/index.d.ts +1 -0
  453. package/dist/styles/index.js +1 -0
  454. package/dist/styles/index.js.map +1 -1
  455. package/dist/types.cjs +10 -1
  456. package/dist/types.cjs.map +1 -1
  457. package/dist/types.d.ts +5 -0
  458. package/dist/types.js +8 -0
  459. package/dist/types.js.map +1 -1
  460. package/package.json +1 -1
  461. package/dist/Chips/ChipInput.cjs +0 -199
  462. package/dist/Chips/ChipInput.cjs.map +0 -1
  463. package/dist/Chips/ChipInput.js +0 -182
  464. package/dist/Chips/ChipInput.js.map +0 -1
  465. package/dist/Dropdown/ChipDropdownInput.cjs +0 -431
  466. package/dist/Dropdown/ChipDropdownInput.cjs.map +0 -1
  467. package/dist/Dropdown/ChipDropdownInput.d.ts +0 -24
  468. package/dist/Dropdown/ChipDropdownInput.js +0 -418
  469. package/dist/Dropdown/ChipDropdownInput.js.map +0 -1
  470. package/dist/common/HoverWithin.cjs.map +0 -1
  471. package/dist/common/HoverWithin.js.map +0 -1
@@ -31,6 +31,10 @@ var _styling = require("../InputFields/styling");
31
31
 
32
32
  var _common = require("../common");
33
33
 
34
+ var _Button = require("../Button");
35
+
36
+ var _icons = require("../icons");
37
+
34
38
  var _jsxRuntime = require("react/jsx-runtime");
35
39
 
36
40
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -43,47 +47,45 @@ var DropdownFilter = function DropdownFilter(_ref) {
43
47
  placeholder = _ref.placeholder,
44
48
  onSelect = _ref.onSelect,
45
49
  onInputChange = _ref.onInputChange,
46
- initalValue = _ref.initalValue,
50
+ value = _ref.value,
47
51
  required = _ref.required,
48
- disableSorting = _ref.disableSorting,
49
52
  messageOnNoResults = _ref.messageOnNoResults,
50
53
  disabled = _ref.disabled,
51
- locked = _ref.locked,
54
+ readOnly = _ref.readOnly,
52
55
  scrollable = _ref.scrollable,
53
- isButton = _ref.isButton,
54
56
  activeValidationMessage = _ref.activeValidationMessage,
55
57
  autofilledMessage = _ref.autofilledMessage,
56
58
  size = _ref.size,
59
+ disableFiltering = _ref.disableFiltering,
57
60
  buttonFontSize = _ref.buttonFontSize,
58
- keepInitialValue = _ref.keepInitialValue,
59
- icon = _ref.icon,
60
61
  _ref$margin = _ref.margin,
61
- margin = _ref$margin === void 0 ? '4px 0' : _ref$margin;
62
+ margin = _ref$margin === void 0 ? '4px 0' : _ref$margin,
63
+ loading = _ref.loading;
62
64
 
63
65
  var _React$useState = React.useState(false),
64
66
  _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
65
67
  isOpen = _React$useState2[0],
66
68
  setIsOpen = _React$useState2[1];
67
69
 
68
- var _React$useState3 = React.useState(false),
70
+ var _React$useState3 = React.useState(),
69
71
  _React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
70
- isLoading = _React$useState4[0],
71
- setIsLoading = _React$useState4[1];
72
+ input = _React$useState4[0],
73
+ setInput = _React$useState4[1];
72
74
 
73
- var _React$useState5 = React.useState(initalValue !== null && initalValue !== void 0 ? initalValue : ''),
75
+ var _React$useState5 = React.useState(placeholder || ''),
74
76
  _React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
75
- input = _React$useState6[0],
76
- setInput = _React$useState6[1];
77
+ placeholderSearch = _React$useState6[0],
78
+ setPlaceholderSearch = _React$useState6[1];
77
79
 
78
- var _React$useState7 = React.useState(placeholder || ''),
80
+ var _React$useState7 = React.useState(false),
79
81
  _React$useState8 = (0, _slicedToArray2.default)(_React$useState7, 2),
80
- placeholderSearch = _React$useState8[0],
81
- setPlaceholderSearch = _React$useState8[1];
82
+ restartFilter = _React$useState8[0],
83
+ setRestartFilter = _React$useState8[1];
82
84
 
83
- var _React$useState9 = React.useState(false),
85
+ var _React$useState9 = React.useState(),
84
86
  _React$useState10 = (0, _slicedToArray2.default)(_React$useState9, 2),
85
- restartFilter = _React$useState10[0],
86
- setRestartFilter = _React$useState10[1];
87
+ selectedItem = _React$useState10[0],
88
+ setSelectedItem = _React$useState10[1];
87
89
 
88
90
  var _React$useState11 = React.useState([]),
89
91
  _React$useState12 = (0, _slicedToArray2.default)(_React$useState11, 2),
@@ -95,104 +97,119 @@ var DropdownFilter = function DropdownFilter(_ref) {
95
97
  focused = _React$useState14[0],
96
98
  setFocused = _React$useState14[1];
97
99
 
98
- var inputRef = React.useRef(null);
99
- var styledFieldRef = (0, _common.useFocusVisibleRef)([inputRef]);
100
-
101
- var handleKeyPress = function handleKeyPress(e) {
102
- if (e.key === 'Enter' && !locked) {
103
- var matches = list === null || list === void 0 ? void 0 : list.filter(function (c) {
104
- return c.label.toLowerCase() === input.toLowerCase();
105
- });
106
-
107
- if (matches.length === 1 && onSelect) {
108
- onSelect(matches[0].label);
109
- setInput(matches[0].label);
110
- }
100
+ var _React$useState15 = React.useState(true),
101
+ _React$useState16 = (0, _slicedToArray2.default)(_React$useState15, 2),
102
+ init = _React$useState16[0],
103
+ setInit = _React$useState16[1];
104
+
105
+ var styledFieldRef = (0, _common.useFocusVisibleRef)();
106
+ var inputRef = (0, _common.useFocusVisibleRef)([styledFieldRef]);
107
+ var clearButtonRef = React.useRef(null);
108
+ (0, _common.useActionWithin)(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);
109
+ var containerRef = (0, _common.useClickOutsideRef)(function () {
110
+ return setIsOpen(false);
111
+ }, [], (0, _common.useFocusOutsideRef)(function () {
112
+ return setIsOpen(false);
113
+ }));
114
+
115
+ var handleInputKeyDown = function handleInputKeyDown(e) {
116
+ if (e.key === 'Esc' || e.key === 'Escape') {
117
+ e.preventDefault();
118
+ }
111
119
 
112
- if (!isOpen) setFocused(0);
113
- setIsOpen(!isOpen);
120
+ if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {
121
+ e.preventDefault();
114
122
 
115
- if (matches.length === 0) {
116
- setInput('');
123
+ if (!isOpen) {
124
+ setIsOpen(true);
117
125
  }
118
126
  }
119
127
  };
120
128
 
121
129
  React.useEffect(function () {
122
- if (initalValue || initalValue === '') {
123
- setInput(initalValue);
124
- setRestartFilter(true);
125
- }
126
- }, [initalValue]);
130
+ setInit(true);
131
+ setSelectedValues(!!value ? [value] : []);
132
+ }, [value]);
127
133
  React.useEffect(function () {
128
- if (!isOpen && !list.some(function (x) {
129
- return x.label == input;
130
- })) {
134
+ if (selectedValues !== null && selectedValues !== void 0 && selectedValues.length) {
135
+ var _ref2, _item$displayLabel;
136
+
137
+ var val = selectedValues[0];
138
+ var item = list.find(function (a) {
139
+ return a.value === val;
140
+ });
141
+ setSelectedItem(item);
142
+ setInput((_ref2 = (_item$displayLabel = item === null || item === void 0 ? void 0 : item.displayLabel) !== null && _item$displayLabel !== void 0 ? _item$displayLabel : item === null || item === void 0 ? void 0 : item.value) !== null && _ref2 !== void 0 ? _ref2 : '');
143
+ onSelect && !init && onSelect(val);
144
+ } else {
145
+ setSelectedItem(undefined);
146
+ onSelect && !init && onSelect('');
131
147
  setInput('');
132
- setPlaceholderSearch(placeholder || '');
133
148
  }
134
- }, [isOpen]);
149
+ }, [selectedValues]);
135
150
  React.useEffect(function () {
136
- setIsLoading(false);
137
- if (selectedValues.length > 0 && !list.some(function (x) {
138
- return x.label == input;
139
- })) setSelectedValues([]);
140
-
141
- if (list.some(function (x) {
142
- return x.label == input;
143
- })) {
144
- setSelectedValues([input]);
145
- onSelect && onSelect(input);
151
+ if (!isOpen && !!selectedItem) {
152
+ var _ref3, _selectedItem$display;
153
+
154
+ setInput((_ref3 = (_selectedItem$display = selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.displayLabel) !== null && _selectedItem$display !== void 0 ? _selectedItem$display : selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.value) !== null && _ref3 !== void 0 ? _ref3 : '');
146
155
  }
147
- }, [input]);
148
156
 
149
- var renderStandardDropdown = function renderStandardDropdown() {
157
+ setRestartFilter(true);
158
+ }, [isOpen, selectedItem]);
159
+
160
+ var handleInputClear = function handleInputClear(e) {
161
+ var _inputRef$current;
162
+
163
+ setInput('');
164
+ setSelectedValues([]);
165
+ onSelect && onSelect('');
166
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus({
167
+ focusVisible: (e === null || e === void 0 ? void 0 : e.detail) !== 1
168
+ });
169
+ };
170
+
171
+ var renderInput = function renderInput() {
150
172
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CommonStyling.StyledField, {
151
173
  ref: styledFieldRef,
152
- className: (isOpen ? 'expanded ' : '').concat(size ? size : ''),
174
+ className: size ? size : '',
153
175
  onClick: function onClick(e) {
154
- if (!locked && !disabled) {
176
+ if (!readOnly && !disabled) {
155
177
  e.stopPropagation();
156
178
  setIsOpen(!isOpen);
157
179
 
158
180
  if (isOpen) {
159
- var _inputRef$current;
181
+ var _inputRef$current2;
160
182
 
161
- (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();
183
+ (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
162
184
  } else {
163
- var _inputRef$current2;
185
+ var _inputRef$current3;
164
186
 
165
- (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
187
+ (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
166
188
  }
167
189
  }
168
190
  },
169
- tabIndex: disabled || locked ? -1 : 0,
170
191
  disabled: disabled || false,
171
- locked: locked || false,
192
+ readOnly: readOnly || false,
172
193
  isPlaceholder: !input,
173
194
  fontSize: buttonFontSize,
174
195
  showValidationMessage: !!activeValidationMessage,
175
- onKeyPress: function onKeyPress(e) {
176
- if (e.key === 'Enter') {
177
- var _inputRef$current3;
178
-
179
- setIsOpen(true);
180
- (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
181
- }
182
- },
183
196
  onMouseDown: _common.defaultOnMouseDownHandler,
184
197
  "data-testid": "otherdiv_".concat(id),
185
198
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_CommonStyling.InputField, {
199
+ id: id,
186
200
  ref: inputRef,
187
201
  autoComplete: 'off-' + Math.floor(Math.random() * 999999999999),
188
202
  type: "search",
189
203
  placeholder: placeholderSearch,
204
+ onKeyDown: handleInputKeyDown,
190
205
  value: input,
191
- className: size ? "".concat(size, " value") : 'value',
192
206
  onChange: function onChange(e) {
193
- if (!locked && !disabled) {
207
+ if (!e.target.value) {
208
+ setSelectedValues([]);
209
+ }
210
+
211
+ if (!readOnly && !disabled && e.target.value !== input) {
194
212
  setRestartFilter(false);
195
- setIsLoading(true);
196
213
  setIsOpen(true);
197
214
  setInput(e.target.value);
198
215
 
@@ -208,14 +225,29 @@ var DropdownFilter = function DropdownFilter(_ref) {
208
225
  return setPlaceholderSearch(placeholder || '');
209
226
  },
210
227
  required: required,
211
- tabIndex: -1,
228
+ tabIndex: disabled || readOnly ? -1 : 0,
212
229
  disabled: disabled || false
213
- }), isLoading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingIndicator.LoadingIndicator, {
214
- size: _types.Size.Small,
215
- color: _styles.COLORS.neutral_600
216
- }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
230
+ }), input && !readOnly && !disabled && !loading && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.IconButton, {
231
+ action: handleInputClear,
232
+ ref: clearButtonRef,
233
+ useTransparentBackground: true,
234
+ shape: 'circular',
235
+ style: {
236
+ marginLeft: '-4px'
237
+ },
238
+ variant: 'secondary',
239
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.Clear, {})
240
+ }), !disabled && !readOnly && loading && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
241
+ style: {
242
+ marginLeft: '-4xp'
243
+ },
244
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingIndicator.LoadingIndicator, {
245
+ size: _types.Size.Small,
246
+ color: _styles.COLORS.neutral_600
247
+ })
248
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
217
249
  className: 'dropdown-arrow',
218
- children: isOpen && !locked && !disabled ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowDropUp, {
250
+ children: isOpen && !readOnly && !disabled ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowDropUp, {
219
251
  size: "24px",
220
252
  className: size ? size : ''
221
253
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowDropDown, {
@@ -226,90 +258,45 @@ var DropdownFilter = function DropdownFilter(_ref) {
226
258
  });
227
259
  };
228
260
 
229
- var renderButtonDropdown = function renderButtonDropdown() {
230
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CommonStyling.ButtonDropdownWrapper, {
231
- onClick: function onClick(e) {
232
- e.stopPropagation();
233
- setIsOpen(!isOpen);
234
- },
235
- disabled: disabled,
236
- locked: locked,
237
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_CommonStyling.StyledField, {
238
- ref: styledFieldRef,
239
- className: (isOpen ? 'expanded ' : '').concat(size ? size + ' ' : '').concat(isButton ? 'button' : ''),
240
- tabIndex: disabled || locked ? -1 : 0,
241
- onKeyPress: handleKeyPress,
242
- onMouseDown: _common.defaultOnMouseDownHandler,
243
- disabled: disabled || false,
244
- locked: locked || false,
245
- showValidationMessage: !!activeValidationMessage,
246
- fontSize: buttonFontSize,
247
- children: [icon, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
248
- className: 'value',
249
- children: initalValue && keepInitialValue ? initalValue : input || placeholderSearch
250
- }), isLoading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingIndicator.LoadingIndicator, {
251
- size: _types.Size.Small,
252
- color: _styles.COLORS.neutral_600
253
- }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
254
- className: 'dropdown-arrow',
255
- children: isOpen && !locked && !disabled ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowDropUp, {
256
- size: "24px",
257
- className: size ? size : ''
258
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.ArrowDropDown, {
259
- size: "24px",
260
- className: size ? size : ''
261
- })
262
- })]
263
- })
264
- });
265
- };
266
-
267
261
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
268
262
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_CommonStyling.Dropdown, {
269
- isButton: isButton || false,
263
+ ref: containerRef,
270
264
  disabled: disabled,
271
- locked: locked,
265
+ isButton: false,
266
+ readOnly: readOnly,
272
267
  className: size ? size : '',
273
268
  margin: margin,
274
- children: [!isButton && renderStandardDropdown(), !!isButton && renderButtonDropdown(), !locked && !disabled && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DropdownContent.default, {
275
- isOpen: isOpen,
269
+ children: [renderInput(), !readOnly && !disabled && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DropdownContent.default, {
270
+ isOpen: isOpen && !loading,
276
271
  messageOnNoResults: messageOnNoResults !== null && messageOnNoResults !== void 0 ? messageOnNoResults : '',
277
272
  selectedValues: selectedValues,
278
273
  setSelectedValues: setSelectedValues,
279
- hideOnClickOutside: true,
280
274
  size: size !== null && size !== void 0 ? size : _types.Size.Small,
281
275
  focused: focused,
282
276
  setFocused: setFocused,
277
+ outline: false,
283
278
  customizationProps: {
284
279
  itemsType: 'normal',
285
280
  scrollable: scrollable,
286
281
  multiSelect: false,
287
282
  action: function action() {},
288
283
  onValueUpdate: function onValueUpdate(values) {
289
- var _values$;
290
-
291
- var val = (_values$ = values[0]) !== null && _values$ !== void 0 ? _values$ : '';
292
284
  setRestartFilter(true);
293
- setInput(val);
285
+ setInit(false);
294
286
  },
295
- items: list.map(function (x) {
296
- return {
297
- value: x.label,
298
- customContent: x.customContent
299
- };
300
- })
287
+ items: list
301
288
  },
302
- filter: !restartFilter ? input : '',
289
+ filter: !disableFiltering && !restartFilter ? input || '' : '',
303
290
  setIsOpen: setIsOpen,
304
291
  alignLeft: false,
305
- isButton: isButton || false,
292
+ isButton: false,
306
293
  id: "".concat(id, "_dropdowncontent")
307
294
  })]
308
- }), activeValidationMessage && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styling.WarningMessage, {
295
+ }), activeValidationMessage && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styling.ErrorMessage, {
309
296
  className: size || '',
310
297
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.TechnicalWarning, {
311
298
  size: "20px",
312
- color: _styles.COLORS.warning_400
299
+ color: _styles.COLORS.critical_400
313
300
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
314
301
  children: activeValidationMessage
315
302
  })]
@@ -327,27 +314,22 @@ var DropdownFilter = function DropdownFilter(_ref) {
327
314
 
328
315
  DropdownFilter.propTypes = {
329
316
  id: _propTypes.default.string.isRequired,
330
- list: _propTypes.default.arrayOf(_propTypes.default.shape({
331
- label: _propTypes.default.string.isRequired,
332
- customContent: _propTypes.default.node
333
- })).isRequired,
317
+ list: _propTypes.default.array.isRequired,
334
318
  placeholder: _propTypes.default.string,
319
+ value: _propTypes.default.string,
335
320
  onSelect: _propTypes.default.func,
336
321
  onInputChange: _propTypes.default.func,
337
- initalValue: _propTypes.default.string,
338
322
  required: _propTypes.default.bool,
339
- disableSorting: _propTypes.default.bool,
340
- messageOnNoResults: _propTypes.default.string,
341
323
  disabled: _propTypes.default.bool,
342
- locked: _propTypes.default.bool,
343
- isButton: _propTypes.default.bool,
324
+ readOnly: _propTypes.default.bool,
325
+ loading: _propTypes.default.bool,
326
+ disableFiltering: _propTypes.default.bool,
327
+ messageOnNoResults: _propTypes.default.string,
344
328
  activeValidationMessage: _propTypes.default.string,
345
329
  autofilledMessage: _propTypes.default.string,
346
- scrollable: _propTypes.default.bool,
347
330
  buttonFontSize: _propTypes.default.string,
348
- keepInitialValue: _propTypes.default.bool,
349
- icon: _propTypes.default.node,
350
- margin: _propTypes.default.string
331
+ margin: _propTypes.default.string,
332
+ scrollable: _propTypes.default.bool
351
333
  };
352
334
  var _default = DropdownFilter;
353
335
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Dropdown/DropdownFilter.tsx"],"names":["DropdownFilter","id","list","placeholder","onSelect","onInputChange","initalValue","required","disableSorting","messageOnNoResults","disabled","locked","scrollable","isButton","activeValidationMessage","autofilledMessage","size","buttonFontSize","keepInitialValue","icon","margin","React","useState","isOpen","setIsOpen","isLoading","setIsLoading","input","setInput","placeholderSearch","setPlaceholderSearch","restartFilter","setRestartFilter","selectedValues","setSelectedValues","focused","setFocused","inputRef","useRef","styledFieldRef","handleKeyPress","e","key","matches","filter","c","label","toLowerCase","length","useEffect","some","x","renderStandardDropdown","concat","stopPropagation","current","blur","focus","defaultOnMouseDownHandler","Math","floor","random","target","value","Size","Small","COLORS","neutral_600","renderButtonDropdown","itemsType","multiSelect","action","onValueUpdate","values","val","items","map","customContent","warning_400"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {COLORS} from '../styles';\nimport {ArrowDropDown, ArrowDropUp, Information, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {LoadingIndicator} from '../LoadingIndicator';\nimport {StyledField, Dropdown, ButtonDropdownWrapper, InputField} from './CommonStyling';\nimport DropdownContent from './DropdownContent';\nimport {Size} from '../types'\nimport {AutofilledMessage, WarningMessage} from '../InputFields/styling';\nimport {defaultOnMouseDownHandler, useFocusVisibleRef} from '../common';\n\nexport interface DropdownFilterItem {\n label: string;\n customContent?: React.ReactNode;\n}\n\ninterface DropdownFilterProps {\n id: string;\n list: DropdownFilterItem[];\n placeholder?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n initalValue?: string;\n required?: boolean;\n disableSorting?: boolean;\n messageOnNoResults?: string;\n disabled?: boolean;\n locked?: boolean;\n isButton?: boolean;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n scrollable?: boolean;\n buttonFontSize?: string;\n keepInitialValue?: boolean;\n icon?: React.ReactNode;\n margin?: string;\n}\n\nconst DropdownFilter = ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n initalValue,\n required,\n disableSorting,\n messageOnNoResults,\n disabled,\n locked,\n scrollable,\n isButton,\n activeValidationMessage,\n autofilledMessage,\n size,\n buttonFontSize,\n keepInitialValue,\n icon,\n margin = '4px 0',\n }: DropdownFilterProps) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [isLoading, setIsLoading] = React.useState<Boolean>(false);\n const [input, setInput] = React.useState<string>(initalValue ?? '');\n const [placeholderSearch, setPlaceholderSearch] = React.useState<string>(placeholder || '');\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n\n const inputRef = React.useRef<HTMLInputElement>(null);\n const styledFieldRef = useFocusVisibleRef([inputRef]);\n\n const handleKeyPress = (e: React.KeyboardEvent<any>) => {\n if (e.key === 'Enter' && !locked) {\n const matches = list?.filter((c) => c.label.toLowerCase() === input.toLowerCase());\n if (matches.length === 1 && onSelect) {\n onSelect(matches[0].label);\n setInput(matches[0].label);\n }\n if (!isOpen)\n setFocused(0);\n setIsOpen(!isOpen);\n if (matches.length === 0) {\n setInput('');\n }\n }\n };\n\n React.useEffect(() => {\n if (initalValue || initalValue === '') {\n setInput(initalValue);\n setRestartFilter(true);\n }\n }, [initalValue]);\n\n React.useEffect(() => {\n if (!isOpen && !list.some(x => x.label == input)) {\n setInput('');\n setPlaceholderSearch(placeholder || '');\n }\n }, [isOpen]);\n\n React.useEffect(() => {\n setIsLoading(false);\n if (selectedValues.length > 0 && !list.some(x => x.label == input))\n setSelectedValues([]);\n\n if (list.some(x => x.label == input)) {\n setSelectedValues([input]);\n onSelect && onSelect(input);\n }\n }, [input]);\n\n const renderStandardDropdown = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={(isOpen ? 'expanded ' : '').concat(size ? size : '')}\n onClick={(e: any) => {\n if (!locked && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n tabIndex={disabled || locked ? -1 : 0}\n disabled={disabled || false}\n locked={locked || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onKeyPress={e => {\n if (e.key === 'Enter') {\n setIsOpen(true);\n inputRef.current?.focus();\n }\n }}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={placeholderSearch}\n value={input}\n className={size ? `${size} value` : 'value'}\n onChange={(e: any) => {\n if (!locked && !disabled) {\n setRestartFilter(false);\n setIsLoading(true);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={() => setPlaceholderSearch('')}\n onBlur={() => setPlaceholderSearch(placeholder || '')}\n required={required}\n tabIndex={-1}\n disabled={disabled || false}\n />\n\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.neutral_600}/> : null}\n\n <div className={'dropdown-arrow'}>\n {isOpen && !locked && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''}/> :\n <ArrowDropDown size=\"24px\" className={size ? size : ''}/>}\n </div>\n </StyledField>\n );\n };\n\n const renderButtonDropdown = () => (\n <ButtonDropdownWrapper\n onClick={(e: any) => {\n e.stopPropagation();\n setIsOpen(!isOpen);\n }}\n disabled={disabled}\n locked={locked}>\n <StyledField\n ref={styledFieldRef}\n className={(isOpen ? 'expanded ' : '').concat(size ? size + ' ' : '').concat(isButton ? 'button' : '')}\n tabIndex={disabled || locked ? -1 : 0}\n onKeyPress={handleKeyPress}\n onMouseDown={defaultOnMouseDownHandler}\n disabled={disabled || false}\n locked={locked || false}\n showValidationMessage={!!activeValidationMessage}\n fontSize={buttonFontSize}>\n {icon}\n <div className={'value'}>{initalValue && keepInitialValue ? initalValue : input || placeholderSearch}</div>\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.neutral_600}/> : null}\n <div className={'dropdown-arrow'}>\n {isOpen && !locked && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''}/> :\n <ArrowDropDown size=\"24px\" className={size ? size : ''}/>}\n </div>\n </StyledField>\n </ButtonDropdownWrapper>\n );\n\n return (\n <>\n <Dropdown isButton={isButton || false} disabled={disabled} locked={locked} className={size ? size : ''}\n margin={margin}>\n {!isButton && renderStandardDropdown()}\n {!!isButton && renderButtonDropdown()}\n {!locked && !disabled && (\n <DropdownContent\n isOpen={isOpen}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n hideOnClickOutside={true}\n size={size ?? Size.Small}\n focused={focused}\n setFocused={setFocused}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {},\n onValueUpdate: (values: string[]) => {\n const val = values[0] ?? '';\n setRestartFilter(true);\n setInput(val);\n },\n items: list.map(x => ({value: x.label, customContent: x.customContent}))\n }}\n filter={!restartFilter ? input : ''}\n setIsOpen={setIsOpen}\n alignLeft={false}\n isButton={isButton || false}\n id={`${id}_dropdowncontent`}/>\n )}\n </Dropdown>\n {activeValidationMessage && (\n <WarningMessage className={size || ''}>\n <TechnicalWarning size=\"20px\" color={COLORS.warning_400}/>\n <span>{activeValidationMessage}</span>\n </WarningMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information size=\"20px\" color={COLORS.neutral_600}/>\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n};\n\nexport default DropdownFilter;\n"],"file":"DropdownFilter.cjs"}
1
+ {"version":3,"sources":["../../src/Dropdown/DropdownFilter.tsx"],"names":["DropdownFilter","id","list","placeholder","onSelect","onInputChange","value","required","messageOnNoResults","disabled","readOnly","scrollable","activeValidationMessage","autofilledMessage","size","disableFiltering","buttonFontSize","margin","loading","React","useState","isOpen","setIsOpen","input","setInput","placeholderSearch","setPlaceholderSearch","restartFilter","setRestartFilter","selectedItem","setSelectedItem","selectedValues","setSelectedValues","focused","setFocused","init","setInit","styledFieldRef","inputRef","clearButtonRef","useRef","containerRef","handleInputKeyDown","e","key","preventDefault","useEffect","length","val","item","find","a","displayLabel","undefined","handleInputClear","current","focus","focusVisible","detail","renderInput","stopPropagation","blur","defaultOnMouseDownHandler","Math","floor","random","target","marginLeft","Size","Small","COLORS","neutral_600","itemsType","multiSelect","action","onValueUpdate","values","items","critical_400"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport {COLORS} from '../styles';\nimport {ArrowDropDown, ArrowDropUp, Information, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {LoadingIndicator} from '../LoadingIndicator';\nimport {StyledField, Dropdown, InputField} from './CommonStyling';\nimport DropdownContent, {DropdownItem} from './DropdownContent';\nimport {Size} from '../types'\nimport {AutofilledMessage, ErrorMessage} from '../InputFields/styling';\nimport {\n defaultOnMouseDownHandler,\n useActionWithin,\n useClickOutsideRef,\n useFocusOutsideRef,\n useFocusVisibleRef\n} from '../common';\nimport {IconButton} from '../Button';\nimport {SystemIcons} from '../icons';\n\ninterface DropdownFilterProps {\n id: string;\n list: DropdownItem[];\n placeholder?: string;\n\n value?: string;\n onSelect?: (value: string) => void;\n onInputChange?: (input: string) => void;\n\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n\n disableFiltering?: boolean;\n\n messageOnNoResults?: string;\n activeValidationMessage?: string;\n autofilledMessage?: string;\n size?: Size.Small | Size.Medium;\n\n buttonFontSize?: string;\n margin?: string;\n scrollable?: boolean;\n}\n\nconst DropdownFilter = ({\n id,\n list,\n placeholder,\n onSelect,\n onInputChange,\n value,\n required,\n messageOnNoResults,\n disabled,\n readOnly,\n scrollable,\n activeValidationMessage,\n autofilledMessage,\n size,\n disableFiltering,\n buttonFontSize,\n margin = '4px 0',\n loading\n }: DropdownFilterProps) => {\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\n const [input, setInput] = React.useState<string>();\n const [placeholderSearch, setPlaceholderSearch] = React.useState<string>(placeholder || '');\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [selectedItem, setSelectedItem] = React.useState<DropdownItem>();\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\n const [focused, setFocused] = React.useState<number | null>(null);\n const [init, setInit] = React.useState<boolean>(true);\n\n const styledFieldRef = useFocusVisibleRef();\n const inputRef = useFocusVisibleRef([styledFieldRef]);\n const clearButtonRef = React.useRef<HTMLButtonElement>(null);\n\n useActionWithin(styledFieldRef, input && !readOnly && !disabled ? [clearButtonRef] : []);\n\n const containerRef = useClickOutsideRef(() => setIsOpen(false), [], useFocusOutsideRef(() => setIsOpen(false)));\n\n const handleInputKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Esc' || e.key === 'Escape') {\n e.preventDefault();\n }\n if (e.key === 'ArrowDown' || e.key === 'Down' || e.key === 'ArrowUp' || e.key === 'Up') {\n e.preventDefault();\n if (!isOpen) {\n setIsOpen(true);\n }\n }\n };\n\n React.useEffect(() => {\n setInit(true);\n setSelectedValues(!!value ? [value] : []);\n }, [value]);\n\n React.useEffect(() => {\n if (selectedValues?.length) {\n const val = selectedValues[0];\n const item = list.find(a => a.value === val);\n setSelectedItem(item);\n setInput(item?.displayLabel ?? item?.value ?? '');\n onSelect && !init && onSelect(val);\n } else {\n setSelectedItem(undefined);\n onSelect && !init && onSelect('');\n setInput('');\n }\n }, [selectedValues])\n\n React.useEffect(() => {\n if (!isOpen && !!selectedItem) {\n setInput(selectedItem?.displayLabel ?? selectedItem?.value ?? '');\n }\n\n setRestartFilter(true);\n }, [isOpen, selectedItem]);\n\n const handleInputClear = (e: any) => {\n setInput('');\n setSelectedValues([]);\n onSelect && onSelect('');\n inputRef.current?.focus({focusVisible: e?.detail !== 1} as any)\n };\n\n const renderInput = () => {\n return (\n <StyledField\n ref={styledFieldRef}\n className={size ? size : ''}\n onClick={(e: any) => {\n if (!readOnly && !disabled) {\n e.stopPropagation();\n setIsOpen(!isOpen);\n if (isOpen) {\n inputRef.current?.blur();\n } else {\n inputRef.current?.focus();\n }\n }\n }}\n disabled={disabled || false}\n readOnly={readOnly || false}\n isPlaceholder={!input}\n fontSize={buttonFontSize}\n showValidationMessage={!!activeValidationMessage}\n onMouseDown={defaultOnMouseDownHandler}\n data-testid={`otherdiv_${id}`}>\n <InputField\n id={id}\n ref={inputRef}\n autoComplete={'off-' + Math.floor(Math.random() * 999999999999)}\n type=\"search\"\n placeholder={placeholderSearch}\n onKeyDown={handleInputKeyDown}\n value={input}\n onChange={(e: any) => {\n if (!e.target.value) {\n setSelectedValues([])\n }\n if (!readOnly && !disabled && e.target.value !== input) {\n setRestartFilter(false);\n setIsOpen(true);\n setInput(e.target.value);\n if (onInputChange) {\n onInputChange(e.target.value || '');\n }\n }\n }}\n onFocus={() => setPlaceholderSearch('')}\n onBlur={() => setPlaceholderSearch(placeholder || '')}\n required={required}\n tabIndex={disabled || readOnly ? -1 : 0}\n disabled={disabled || false}\n />\n {\n input && !readOnly && !disabled && !loading &&\n <IconButton action={handleInputClear}\n ref={clearButtonRef}\n useTransparentBackground={true}\n shape={'circular'}\n style={{marginLeft: '-4px'}}\n variant={'secondary'}>\n <SystemIcons.Clear/>\n </IconButton>\n }\n\n {\n !disabled && !readOnly && loading &&\n <div style={{marginLeft: '-4xp'}}>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600}/>\n </div>\n }\n\n <div className={'dropdown-arrow'}>\n {isOpen && !readOnly && !disabled ? <ArrowDropUp size=\"24px\" className={size ? size : ''}/> :\n <ArrowDropDown size=\"24px\" className={size ? size : ''}/>}\n </div>\n </StyledField>\n );\n };\n\n return (\n <>\n <Dropdown ref={containerRef}\n disabled={disabled}\n isButton={false}\n readOnly={readOnly}\n className={size ? size : ''}\n margin={margin}>\n {renderInput()}\n {!readOnly && !disabled && (\n <DropdownContent\n isOpen={isOpen && !loading}\n messageOnNoResults={messageOnNoResults ?? ''}\n selectedValues={selectedValues}\n setSelectedValues={setSelectedValues}\n size={size ?? Size.Small}\n focused={focused}\n setFocused={setFocused}\n outline={false}\n customizationProps={{\n itemsType: 'normal',\n scrollable: scrollable,\n multiSelect: false,\n action: () => {\n },\n onValueUpdate: (values: string[]) => {\n setRestartFilter(true);\n setInit(false);\n },\n items: list,\n }}\n filter={!disableFiltering && !restartFilter ? input || '' : ''}\n setIsOpen={setIsOpen}\n alignLeft={false}\n isButton={false}\n id={`${id}_dropdowncontent`}/>\n )}\n </Dropdown>\n {activeValidationMessage && (\n <ErrorMessage className={size || ''}>\n <TechnicalWarning size=\"20px\" color={COLORS.critical_400}/>\n <span>{activeValidationMessage}</span>\n </ErrorMessage>\n )}\n {autofilledMessage && (\n <AutofilledMessage className={size || ''}>\n <Information size=\"20px\" color={COLORS.neutral_600}/>\n <span>{autofilledMessage}</span>\n </AutofilledMessage>\n )}\n </>\n );\n};\n\nexport default DropdownFilter;\n"],"file":"DropdownFilter.cjs"}
@@ -1,30 +1,24 @@
1
- import * as React from 'react';
1
+ import { DropdownItem } from './DropdownContent';
2
2
  import { Size } from '../types';
3
- export interface DropdownFilterItem {
4
- label: string;
5
- customContent?: React.ReactNode;
6
- }
7
3
  interface DropdownFilterProps {
8
4
  id: string;
9
- list: DropdownFilterItem[];
5
+ list: DropdownItem[];
10
6
  placeholder?: string;
7
+ value?: string;
11
8
  onSelect?: (value: string) => void;
12
9
  onInputChange?: (input: string) => void;
13
- initalValue?: string;
14
10
  required?: boolean;
15
- disableSorting?: boolean;
16
- messageOnNoResults?: string;
17
11
  disabled?: boolean;
18
- locked?: boolean;
19
- isButton?: boolean;
12
+ readOnly?: boolean;
13
+ loading?: boolean;
14
+ disableFiltering?: boolean;
15
+ messageOnNoResults?: string;
20
16
  activeValidationMessage?: string;
21
17
  autofilledMessage?: string;
22
18
  size?: Size.Small | Size.Medium;
23
- scrollable?: boolean;
24
19
  buttonFontSize?: string;
25
- keepInitialValue?: boolean;
26
- icon?: React.ReactNode;
27
20
  margin?: string;
21
+ scrollable?: boolean;
28
22
  }
29
- declare const DropdownFilter: ({ id, list, placeholder, onSelect, onInputChange, initalValue, required, disableSorting, messageOnNoResults, disabled, locked, scrollable, isButton, activeValidationMessage, autofilledMessage, size, buttonFontSize, keepInitialValue, icon, margin, }: DropdownFilterProps) => JSX.Element;
23
+ declare const DropdownFilter: ({ id, list, placeholder, onSelect, onInputChange, value, required, messageOnNoResults, disabled, readOnly, scrollable, activeValidationMessage, autofilledMessage, size, disableFiltering, buttonFontSize, margin, loading }: DropdownFilterProps) => JSX.Element;
30
24
  export default DropdownFilter;