@sprinklrjs/spaceweb 10.1.0 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/asyncSelect/asyncSelect.js +12 -12
  2. package/asyncSelect/helpers.d.ts +1 -1
  3. package/asyncSelect/hooks/useAsyncOptionHandlers.d.ts +2 -2
  4. package/asyncSelect/types.d.ts +3 -4
  5. package/avatar/index.d.ts +1 -1
  6. package/avatar/types.d.ts +1 -1
  7. package/banner/banner-item.d.ts +12 -0
  8. package/banner/banner-item.js +14 -0
  9. package/banner/banner.d.ts +19 -0
  10. package/banner/banner.js +56 -0
  11. package/banner/index.d.ts +5 -0
  12. package/banner/index.js +14 -0
  13. package/banner/locale.d.ts +6 -0
  14. package/banner/locale.js +2 -0
  15. package/banner/package.json +4 -0
  16. package/banner/styled-component.d.ts +6 -0
  17. package/banner/styled-component.js +39 -0
  18. package/banner/types.d.ts +26 -0
  19. package/banner/types.js +2 -0
  20. package/button/Button.d.ts +1 -3
  21. package/button/Button.js +1 -1
  22. package/button/basewebAdapter.d.ts +7 -6
  23. package/button/basewebAdapter.js +1 -1
  24. package/button/types.d.ts +1 -1
  25. package/button-group/ButtonGroup.js +1 -1
  26. package/button-group/index.d.ts +1 -2
  27. package/button-group/index.js +1 -5
  28. package/button-group/styled-components.js +4 -4
  29. package/button-group/types.d.ts +1 -0
  30. package/checkbox/basewebAdapters.d.ts +5 -2
  31. package/checkbox/basewebAdapters.js +3 -1
  32. package/checkbox/index.d.ts +1 -1
  33. package/checkbox/index.js +1 -2
  34. package/checkbox/styled-components.js +1 -1
  35. package/checkbox/types.d.ts +15 -8
  36. package/date-input/DateInput.js +2 -2
  37. package/date-picker/Calendar.d.ts +1 -1
  38. package/date-picker/Calendar.js +11 -3
  39. package/date-picker/DateInput.d.ts +3 -2
  40. package/date-picker/DateInput.js +5 -5
  41. package/date-picker/DatePickerInput.js +4 -10
  42. package/date-picker/DateTimeContainer.d.ts +4 -2
  43. package/date-picker/DateTimeContainer.js +5 -5
  44. package/date-picker/StatelessDatePicker.d.ts +1 -1
  45. package/date-picker/StatelessDatePicker.js +7 -6
  46. package/date-picker/TimeInput.d.ts +5 -2
  47. package/date-picker/TimeInput.js +4 -2
  48. package/date-picker/index.d.ts +1 -0
  49. package/date-picker/index.js +3 -1
  50. package/date-picker/stateful-container.d.ts +1 -1
  51. package/date-picker/styled-components.d.ts +0 -1
  52. package/date-picker/styled-components.js +1 -24
  53. package/date-picker/types.d.ts +1 -1
  54. package/date-picker/utils.d.ts +8 -7
  55. package/date-picker/utils.js +4 -1
  56. package/esm/asyncSelect/asyncSelect.js +12 -12
  57. package/esm/asyncSelect/helpers.d.ts +1 -1
  58. package/esm/asyncSelect/hooks/useAsyncOptionHandlers.d.ts +2 -2
  59. package/esm/asyncSelect/types.d.ts +3 -4
  60. package/esm/avatar/index.d.ts +1 -1
  61. package/esm/avatar/types.d.ts +1 -1
  62. package/esm/banner/banner-item.d.ts +12 -0
  63. package/esm/banner/banner-item.js +12 -0
  64. package/esm/banner/banner.d.ts +19 -0
  65. package/esm/banner/banner.js +54 -0
  66. package/esm/banner/index.d.ts +5 -0
  67. package/esm/banner/index.js +3 -0
  68. package/esm/banner/locale.d.ts +6 -0
  69. package/esm/banner/locale.js +1 -0
  70. package/esm/banner/styled-component.d.ts +6 -0
  71. package/esm/banner/styled-component.js +35 -0
  72. package/esm/banner/types.d.ts +26 -0
  73. package/esm/banner/types.js +1 -0
  74. package/esm/button/Button.d.ts +1 -3
  75. package/esm/button/Button.js +1 -1
  76. package/esm/button/basewebAdapter.d.ts +7 -6
  77. package/esm/button/basewebAdapter.js +1 -1
  78. package/esm/button/types.d.ts +1 -1
  79. package/esm/button-group/ButtonGroup.js +1 -1
  80. package/esm/button-group/index.d.ts +1 -2
  81. package/esm/button-group/index.js +0 -1
  82. package/esm/button-group/styled-components.js +4 -4
  83. package/esm/button-group/types.d.ts +1 -0
  84. package/esm/checkbox/basewebAdapters.d.ts +5 -2
  85. package/esm/checkbox/basewebAdapters.js +3 -1
  86. package/esm/checkbox/index.d.ts +1 -1
  87. package/esm/checkbox/index.js +1 -1
  88. package/esm/checkbox/styled-components.js +1 -1
  89. package/esm/checkbox/types.d.ts +15 -8
  90. package/esm/date-input/DateInput.js +2 -2
  91. package/esm/date-picker/Calendar.d.ts +1 -1
  92. package/esm/date-picker/Calendar.js +12 -4
  93. package/esm/date-picker/DateInput.d.ts +3 -2
  94. package/esm/date-picker/DateInput.js +5 -5
  95. package/esm/date-picker/DatePickerInput.js +4 -10
  96. package/esm/date-picker/DateTimeContainer.d.ts +4 -2
  97. package/esm/date-picker/DateTimeContainer.js +5 -5
  98. package/esm/date-picker/StatelessDatePicker.d.ts +1 -1
  99. package/esm/date-picker/StatelessDatePicker.js +7 -6
  100. package/esm/date-picker/TimeInput.d.ts +5 -2
  101. package/esm/date-picker/TimeInput.js +4 -2
  102. package/esm/date-picker/index.d.ts +1 -0
  103. package/esm/date-picker/index.js +1 -0
  104. package/esm/date-picker/stateful-container.d.ts +1 -1
  105. package/esm/date-picker/styled-components.d.ts +0 -1
  106. package/esm/date-picker/styled-components.js +0 -23
  107. package/esm/date-picker/types.d.ts +1 -1
  108. package/esm/date-picker/utils.d.ts +8 -7
  109. package/esm/date-picker/utils.js +4 -1
  110. package/esm/form-control/context.d.ts +6 -13
  111. package/esm/form-control/context.js +10 -9
  112. package/esm/form-control/styled-component.js +3 -3
  113. package/esm/helpers/baseui/withThemeOverride.js +1 -1
  114. package/esm/helpers/commonStyles.d.ts +2 -2
  115. package/esm/helpers/styletron.d.ts +14 -3
  116. package/esm/hooks/useAutoFocus.d.ts +6 -7
  117. package/esm/hooks/useAutoFocus.js +13 -13
  118. package/esm/hooks/useCombinedRef.d.ts +1 -0
  119. package/esm/hooks/useCombinedRef.js +33 -0
  120. package/esm/hooks/useIsMobileDevice.d.ts +1 -0
  121. package/esm/hooks/useIsMobileDevice.js +6 -0
  122. package/esm/hooks/useMatchMedia.d.ts +3 -0
  123. package/esm/hooks/useMatchMedia.js +38 -0
  124. package/esm/input/basewebAdapters.d.ts +1 -1
  125. package/esm/input/index.d.ts +2 -1
  126. package/esm/input/index.js +1 -0
  127. package/esm/input/styled-components.d.ts +1 -1
  128. package/esm/input/styled-components.js +1 -1
  129. package/esm/input/types.d.ts +6 -3
  130. package/esm/list/avatar-list-item.js +4 -8
  131. package/esm/list/divider.js +6 -3
  132. package/esm/list/list.d.ts +10 -5
  133. package/esm/list/list.js +47 -6
  134. package/esm/list/styled-component.js +9 -11
  135. package/esm/list/types.d.ts +5 -0
  136. package/esm/list/utils.d.ts +2 -0
  137. package/esm/list/utils.js +10 -0
  138. package/esm/locale/en_US.js +9 -0
  139. package/esm/locale/types.d.ts +2 -0
  140. package/esm/menu/menu-item.d.ts +4 -1
  141. package/esm/menu/menu.d.ts +5 -0
  142. package/esm/menu/menu.js +7 -7
  143. package/esm/modal/adapter.d.ts +1 -1
  144. package/esm/modal/index.d.ts +1 -1
  145. package/esm/modal/index.js +1 -1
  146. package/esm/modal/modal.js +2 -4
  147. package/esm/modal/overrides.d.ts +0 -1
  148. package/esm/modal/overrides.js +0 -1
  149. package/esm/modal/styled-components.d.ts +1 -1
  150. package/esm/modal/styled-components.js +1 -1
  151. package/esm/overrides/mergeOverrides.js +4 -3
  152. package/esm/payment-card/basewebAdapters.js +4 -3
  153. package/esm/payment-card/styled-components.js +1 -1
  154. package/esm/payment-card/types.d.ts +4 -2
  155. package/esm/phone-input/country-select.js +1 -3
  156. package/esm/phone-input/default-props.d.ts +1 -4
  157. package/esm/phone-input/default-props.js +0 -2
  158. package/esm/phone-input/phone-input.d.ts +0 -2
  159. package/esm/phone-input/phone-input.js +3 -2
  160. package/esm/phone-input/stateful-phone-input.d.ts +0 -2
  161. package/esm/phone-input/utils.d.ts +5 -2
  162. package/esm/phone-input/utils.js +4 -4
  163. package/esm/popover/adapter.d.ts +3 -3
  164. package/esm/popover/popover.d.ts +5 -3
  165. package/esm/popover/popover.js +6 -4
  166. package/esm/popover/types.d.ts +7 -2
  167. package/esm/popover/types.js +2 -1
  168. package/esm/progress/circular/styled-component.d.ts +1 -1
  169. package/esm/progress/circular/styled-component.js +3 -3
  170. package/esm/radio/basewebAdapters.d.ts +8 -11
  171. package/esm/radio/basewebAdapters.js +6 -3
  172. package/esm/radio/radio.js +6 -5
  173. package/esm/radio/styled-components.js +4 -6
  174. package/esm/radio/types.d.ts +13 -6
  175. package/esm/select/adaptor.d.ts +1 -1
  176. package/esm/select/base-select.d.ts +18 -15
  177. package/esm/select/base-select.js +19 -14
  178. package/esm/select/default-props.d.ts +8 -5
  179. package/esm/select/default-props.js +1 -1
  180. package/esm/select/index.d.ts +2 -2
  181. package/esm/select/index.js +1 -1
  182. package/esm/select/mobileSelect/MobileSelect.js +3 -5
  183. package/esm/select/multi-value.js +1 -1
  184. package/esm/select/overlaySelect/OverlaySelect.js +9 -18
  185. package/esm/select/overlaySelect/hooks/useControlRef.d.ts +9 -0
  186. package/esm/select/overlaySelect/hooks/useControlRef.js +33 -0
  187. package/esm/select/overlaySelect/hooks/useOverlaySelectOverrides.d.ts +23 -0
  188. package/esm/select/overlaySelect/{useOverlaySelectOverrides.js → hooks/useOverlaySelectOverrides.js} +22 -16
  189. package/esm/select/overlaySelect/{usePopover.d.ts → hooks/usePopover.d.ts} +1 -1
  190. package/esm/select/overlaySelect/{usePopover.js → hooks/usePopover.js} +2 -2
  191. package/esm/select/overrides.d.ts +0 -1
  192. package/esm/select/overrides.js +2 -9
  193. package/esm/select/select-variants.js +2 -2
  194. package/esm/select/select.d.ts +8 -5
  195. package/esm/select/select.js +3 -3
  196. package/esm/select/selectMenuAdapter/SelectMenuAdapter.d.ts +2 -0
  197. package/esm/select/selectMenuAdapter/SelectMenuAdapter.js +11 -5
  198. package/esm/select/selectMenuAdapter/SelectMenuItem.d.ts +4 -1
  199. package/esm/select/selectMenuAdapter/SelectMenuItem.js +2 -4
  200. package/esm/select/stateful-select.d.ts +8 -5
  201. package/esm/select/stateful-select.js +3 -3
  202. package/esm/select/styled-component.d.ts +5 -3
  203. package/esm/select/styled-component.js +32 -6
  204. package/esm/select/types.d.ts +13 -8
  205. package/esm/slider/mark.d.ts +3 -3
  206. package/esm/slider/slider.js +2 -1
  207. package/esm/slider/stateful-slider.js +1 -1
  208. package/esm/slider/types.d.ts +9 -2
  209. package/esm/spacewebProvider/CustomBaseProvider.js +1 -0
  210. package/esm/spacewebProvider/SpacewebProvider.d.ts +1 -1
  211. package/esm/style/_parseStyle.js +5 -5
  212. package/esm/style/useMemoizedStyletron.d.ts +1 -1
  213. package/esm/styleEngine/styleEngine.d.ts +1 -2
  214. package/esm/switch/__test__/switch.spec.js +13 -0
  215. package/esm/switch/styled-components.js +14 -21
  216. package/esm/switch/switch.js +5 -2
  217. package/esm/switch/types.d.ts +8 -11
  218. package/esm/textarea/basewebAdapters.js +2 -2
  219. package/esm/textarea/styled-components.d.ts +1 -1
  220. package/esm/textarea/textarea.js +2 -6
  221. package/esm/textarea/types.d.ts +5 -3
  222. package/esm/themes/index.js +1 -1
  223. package/esm/themes/responsive-theme.d.ts +2 -2
  224. package/esm/time-picker/TimePicker.d.ts +1 -6
  225. package/esm/time-picker/TimePicker.js +1 -4
  226. package/esm/time-picker/types.d.ts +3 -1
  227. package/esm/time-range-picker/RangeSelector.js +6 -5
  228. package/esm/time-range-picker/RangeSelectorContainer.js +27 -27
  229. package/esm/time-range-picker/TimeRangeList.js +8 -1
  230. package/esm/time-range-picker/TimeRangePicker.js +6 -5
  231. package/esm/time-range-picker/locale.d.ts +3 -0
  232. package/esm/time-range-picker/types.d.ts +16 -1
  233. package/esm/time-range-picker/utils.d.ts +14 -14
  234. package/esm/time-range-picker/utils.js +45 -1
  235. package/esm/time-zone-picker/TimezonePicker.d.ts +1 -6
  236. package/esm/time-zone-picker/TimezonePicker.js +5 -7
  237. package/esm/tooltip/disabled-tooltip-container.d.ts +26 -1
  238. package/esm/tooltip/overrides.js +1 -1
  239. package/esm/tooltip/stateful-tooltip-container.d.ts +26 -1
  240. package/esm/tooltip/stateful-tooltip.d.ts +27 -1
  241. package/esm/tooltip/stateful-tooltip.js +1 -1
  242. package/esm/tooltip/tooltip.d.ts +1 -1
  243. package/esm/tooltip/tooltip.js +4 -4
  244. package/esm/tooltip/types.d.ts +10 -2
  245. package/esm/types.d.ts +3 -2
  246. package/esm/video/Video.js +4 -2
  247. package/esm/video/types.d.ts +2 -0
  248. package/form-control/context.d.ts +6 -13
  249. package/form-control/context.js +11 -10
  250. package/form-control/styled-component.js +3 -3
  251. package/helpers/baseui/withThemeOverride.js +1 -1
  252. package/helpers/commonStyles.d.ts +2 -2
  253. package/helpers/styletron.d.ts +14 -3
  254. package/hooks/useAutoFocus.d.ts +6 -7
  255. package/hooks/useAutoFocus.js +13 -14
  256. package/hooks/useCombinedRef.d.ts +1 -0
  257. package/hooks/useCombinedRef.js +35 -1
  258. package/hooks/useIsMobileDevice.d.ts +1 -0
  259. package/hooks/useIsMobileDevice.js +11 -0
  260. package/hooks/useMatchMedia.d.ts +3 -0
  261. package/hooks/useMatchMedia.js +41 -0
  262. package/input/basewebAdapters.d.ts +1 -1
  263. package/input/index.d.ts +2 -1
  264. package/input/index.js +3 -1
  265. package/input/styled-components.d.ts +1 -1
  266. package/input/styled-components.js +1 -1
  267. package/input/types.d.ts +6 -3
  268. package/list/avatar-list-item.js +3 -7
  269. package/list/divider.js +6 -3
  270. package/list/list.d.ts +10 -5
  271. package/list/list.js +47 -6
  272. package/list/styled-component.js +9 -11
  273. package/list/types.d.ts +5 -0
  274. package/list/utils.d.ts +2 -0
  275. package/list/utils.js +14 -0
  276. package/locale/en_US.js +9 -0
  277. package/locale/types.d.ts +2 -0
  278. package/menu/menu-item.d.ts +4 -1
  279. package/menu/menu.d.ts +5 -0
  280. package/menu/menu.js +7 -7
  281. package/modal/adapter.d.ts +1 -1
  282. package/modal/index.d.ts +1 -1
  283. package/modal/index.js +1 -2
  284. package/modal/modal.js +1 -3
  285. package/modal/overrides.d.ts +0 -1
  286. package/modal/overrides.js +1 -2
  287. package/modal/styled-components.d.ts +1 -1
  288. package/modal/styled-components.js +1 -2
  289. package/overrides/mergeOverrides.js +4 -3
  290. package/package.json +13 -10
  291. package/payment-card/basewebAdapters.js +4 -3
  292. package/payment-card/styled-components.js +1 -1
  293. package/payment-card/types.d.ts +4 -2
  294. package/phone-input/country-select.js +1 -3
  295. package/phone-input/default-props.d.ts +1 -4
  296. package/phone-input/default-props.js +0 -2
  297. package/phone-input/phone-input.d.ts +0 -2
  298. package/phone-input/phone-input.js +3 -2
  299. package/phone-input/stateful-phone-input.d.ts +0 -2
  300. package/phone-input/utils.d.ts +5 -2
  301. package/phone-input/utils.js +4 -4
  302. package/popover/adapter.d.ts +3 -3
  303. package/popover/popover.d.ts +5 -3
  304. package/popover/popover.js +6 -4
  305. package/popover/types.d.ts +7 -2
  306. package/popover/types.js +5 -4
  307. package/progress/circular/styled-component.d.ts +1 -1
  308. package/progress/circular/styled-component.js +4 -4
  309. package/radio/basewebAdapters.d.ts +8 -11
  310. package/radio/basewebAdapters.js +6 -3
  311. package/radio/radio.js +6 -5
  312. package/radio/styled-components.js +4 -6
  313. package/radio/types.d.ts +13 -6
  314. package/select/adaptor.d.ts +1 -1
  315. package/select/base-select.d.ts +18 -15
  316. package/select/base-select.js +18 -13
  317. package/select/default-props.d.ts +8 -5
  318. package/select/default-props.js +1 -1
  319. package/select/index.d.ts +2 -2
  320. package/select/index.js +1 -2
  321. package/select/mobileSelect/MobileSelect.js +3 -5
  322. package/select/multi-value.js +1 -1
  323. package/select/overlaySelect/OverlaySelect.js +8 -17
  324. package/select/overlaySelect/hooks/useControlRef.d.ts +9 -0
  325. package/select/overlaySelect/hooks/useControlRef.js +37 -0
  326. package/select/overlaySelect/hooks/useOverlaySelectOverrides.d.ts +23 -0
  327. package/select/overlaySelect/{useOverlaySelectOverrides.js → hooks/useOverlaySelectOverrides.js} +22 -16
  328. package/select/overlaySelect/{usePopover.d.ts → hooks/usePopover.d.ts} +1 -1
  329. package/select/overlaySelect/{usePopover.js → hooks/usePopover.js} +2 -2
  330. package/select/overrides.d.ts +0 -1
  331. package/select/overrides.js +3 -11
  332. package/select/select-variants.js +2 -2
  333. package/select/select.d.ts +8 -5
  334. package/select/select.js +3 -3
  335. package/select/selectMenuAdapter/SelectMenuAdapter.d.ts +2 -0
  336. package/select/selectMenuAdapter/SelectMenuAdapter.js +11 -5
  337. package/select/selectMenuAdapter/SelectMenuItem.d.ts +4 -1
  338. package/select/selectMenuAdapter/SelectMenuItem.js +2 -4
  339. package/select/stateful-select.d.ts +8 -5
  340. package/select/stateful-select.js +3 -3
  341. package/select/styled-component.d.ts +5 -3
  342. package/select/styled-component.js +32 -9
  343. package/select/types.d.ts +13 -8
  344. package/slider/mark.d.ts +3 -3
  345. package/slider/slider.js +2 -1
  346. package/slider/stateful-slider.js +1 -1
  347. package/slider/types.d.ts +9 -2
  348. package/spacewebProvider/CustomBaseProvider.js +1 -0
  349. package/spacewebProvider/SpacewebProvider.d.ts +1 -1
  350. package/style/_parseStyle.js +5 -5
  351. package/style/useMemoizedStyletron.d.ts +1 -1
  352. package/styleEngine/styleEngine.d.ts +1 -2
  353. package/switch/__test__/switch.spec.js +13 -0
  354. package/switch/styled-components.js +14 -21
  355. package/switch/switch.js +5 -2
  356. package/switch/types.d.ts +8 -11
  357. package/textarea/basewebAdapters.js +2 -2
  358. package/textarea/styled-components.d.ts +1 -1
  359. package/textarea/textarea.js +2 -6
  360. package/textarea/types.d.ts +5 -3
  361. package/themes/index.js +1 -1
  362. package/themes/responsive-theme.d.ts +2 -2
  363. package/time-picker/TimePicker.d.ts +1 -6
  364. package/time-picker/TimePicker.js +1 -4
  365. package/time-picker/types.d.ts +3 -1
  366. package/time-range-picker/RangeSelector.js +5 -4
  367. package/time-range-picker/RangeSelectorContainer.js +26 -26
  368. package/time-range-picker/TimeRangeList.js +8 -1
  369. package/time-range-picker/TimeRangePicker.js +6 -5
  370. package/time-range-picker/locale.d.ts +3 -0
  371. package/time-range-picker/types.d.ts +16 -1
  372. package/time-range-picker/utils.d.ts +14 -14
  373. package/time-range-picker/utils.js +46 -1
  374. package/time-zone-picker/TimezonePicker.d.ts +1 -6
  375. package/time-zone-picker/TimezonePicker.js +5 -7
  376. package/tooltip/disabled-tooltip-container.d.ts +26 -1
  377. package/tooltip/overrides.js +1 -1
  378. package/tooltip/stateful-tooltip-container.d.ts +26 -1
  379. package/tooltip/stateful-tooltip.d.ts +27 -1
  380. package/tooltip/stateful-tooltip.js +1 -1
  381. package/tooltip/tooltip.d.ts +1 -1
  382. package/tooltip/tooltip.js +4 -4
  383. package/tooltip/types.d.ts +10 -2
  384. package/tsconfig.tsbuildinfo +1 -1
  385. package/types.d.ts +3 -2
  386. package/video/Video.js +4 -2
  387. package/video/types.d.ts +2 -0
  388. package/esm/phone-input/virtualized-country-select-dropdown.d.ts +0 -31
  389. package/esm/phone-input/virtualized-country-select-dropdown.js +0 -33
  390. package/esm/select/overlaySelect/useOverlaySelectOverrides.d.ts +0 -14
  391. package/esm/style/_escapeClassName.d.ts +0 -6
  392. package/esm/style/_escapeClassName.js +0 -6
  393. package/phone-input/virtualized-country-select-dropdown.d.ts +0 -31
  394. package/phone-input/virtualized-country-select-dropdown.js +0 -35
  395. package/select/overlaySelect/useOverlaySelectOverrides.d.ts +0 -14
  396. package/style/_escapeClassName.d.ts +0 -6
  397. package/style/_escapeClassName.js +0 -9
@@ -8,7 +8,7 @@ var overrides_1 = require("../../overrides");
8
8
  var popover_1 = require("../../popover");
9
9
  var base_select_1 = (0, tslib_1.__importDefault)(require("../base-select"));
10
10
  var styled_component_1 = require("../styled-component");
11
- var useOverlaySelectOverrides_1 = (0, tslib_1.__importDefault)(require("./useOverlaySelectOverrides"));
11
+ var useOverlaySelectOverrides_1 = (0, tslib_1.__importDefault)(require("./hooks/useOverlaySelectOverrides"));
12
12
  var useScrollCapture_1 = (0, tslib_1.__importDefault)(require("../../hooks/useScrollCapture"));
13
13
  var useCombinedRef_1 = (0, tslib_1.__importDefault)(require("../../hooks/useCombinedRef"));
14
14
  // These props are handled by OverlaySelect itself and hence should not be passed to BaseSelect
@@ -19,6 +19,7 @@ var propsToOmit = [
19
19
  'onChange',
20
20
  'startOpen',
21
21
  'searchable',
22
+ 'inputRef',
22
23
  'controlRef',
23
24
  'autoFocus',
24
25
  'placeholder',
@@ -32,26 +33,16 @@ var propsToOmit = [
32
33
  'captureScroll',
33
34
  'placement',
34
35
  'methodsRef',
36
+ 'ignoreBoundary',
35
37
  ];
36
38
  var OverlaySelect = function (props) {
37
39
  var _a, _b, _c;
38
40
  var _d = (0, tslib_1.__read)((0, overrides_1.useOverrides)((_a = props.overrides) === null || _a === void 0 ? void 0 : _a.OverlayContentContainer, styled_component_1.StyledOverlayContentContainer), 2), OverlayContentContainer = _d[0], overlayContentContainerProps = _d[1];
39
- var _e = (0, tslib_1.__read)((0, overrides_1.useOverrides)((_b = props.overrides) === null || _b === void 0 ? void 0 : _b.Popover, popover_1.Popover), 2), PopoverOverriden = _e[0], popoverProps = _e[1];
41
+ var _e = (0, tslib_1.__read)((0, react_1.useState)(null), 2), scrollElement = _e[0], setScrollElement = _e[1];
42
+ var _f = (0, tslib_1.__read)((0, overrides_1.useOverrides)((_b = props.overrides) === null || _b === void 0 ? void 0 : _b.Popover, popover_1.Popover), 2), PopoverOverriden = _f[0], popoverProps = _f[1];
40
43
  var setScrollTarget = (0, useScrollCapture_1.default)({ enabled: props.captureScroll });
41
- var combinedRef = (0, useCombinedRef_1.default)(setScrollTarget, overlayContentContainerProps === null || overlayContentContainerProps === void 0 ? void 0 : overlayContentContainerProps.ref);
42
- var _f = (0, useOverlaySelectOverrides_1.default)(props), popoverOpen = _f.popoverOpen, filterOptionsOverride = _f.filterOptionsOverride, handleValuesChange = _f.handleValuesChange, overrides = _f.overrides, togglePopoverState = _f.togglePopoverState, closePopover = _f.closePopover, openPopover = _f.openPopover;
43
- (0, react_1.useEffect)(function () {
44
- if (props.methodsRef) {
45
- props.methodsRef.current = {
46
- setDropdownOpen: function (shouldOpen) {
47
- if (shouldOpen)
48
- openPopover();
49
- else
50
- closePopover();
51
- },
52
- };
53
- }
54
- }, [openPopover, closePopover]);
44
+ var combinedRef = (0, useCombinedRef_1.default)(setScrollElement, setScrollTarget, overlayContentContainerProps === null || overlayContentContainerProps === void 0 ? void 0 : overlayContentContainerProps.ref);
45
+ var _g = (0, useOverlaySelectOverrides_1.default)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), { scrollElement: scrollElement })), popoverOpen = _g.popoverOpen, filterOptionsOverride = _g.filterOptionsOverride, handleValuesChange = _g.handleValuesChange, overrides = _g.overrides, togglePopoverState = _g.togglePopoverState, closePopover = _g.closePopover;
55
46
  var baseSelectProps = (0, omit_1.default)(props, propsToOmit);
56
47
  if (props.disabled) {
57
48
  if (typeof props.children === 'function') {
@@ -59,6 +50,6 @@ var OverlaySelect = function (props) {
59
50
  }
60
51
  return props.children;
61
52
  }
62
- return ((0, jsx_runtime_1.jsx)(PopoverOverriden, (0, tslib_1.__assign)({ isOpen: popoverOpen, content: (0, jsx_runtime_1.jsx)(OverlayContentContainer, (0, tslib_1.__assign)({ "$closePopover": closePopover, "$overlayWidth": props.overlayWidth }, overlayContentContainerProps, { ref: combinedRef }, { children: (0, jsx_runtime_1.jsx)(base_select_1.default, (0, tslib_1.__assign)({}, baseSelectProps, { filterOptions: filterOptionsOverride, onChange: handleValuesChange, overrides: overrides, type: "search" }), void 0) }), void 0), onClick: togglePopoverState, onClickOutside: closePopover, onEsc: closePopover, placement: (_c = props.placement) !== null && _c !== void 0 ? _c : 'bottom', focusLock: true, returnFocus: true, overrides: { Inner: { style: 'spr-ui-01' }, Arrow: { style: 'spr-ui-01' } }, mountNode: props.mountNode }, popoverProps, { children: props.children }), void 0));
53
+ return ((0, jsx_runtime_1.jsx)(PopoverOverriden, (0, tslib_1.__assign)({ isOpen: popoverOpen, content: (0, jsx_runtime_1.jsx)(OverlayContentContainer, (0, tslib_1.__assign)({ "$closePopover": closePopover, "$overlayWidth": props.overlayWidth }, overlayContentContainerProps, { ref: combinedRef }, { children: (0, jsx_runtime_1.jsx)(base_select_1.default, (0, tslib_1.__assign)({}, baseSelectProps, { filterOptions: filterOptionsOverride, onChange: handleValuesChange, overrides: overrides, type: "search" }), void 0) }), void 0), onClick: togglePopoverState, onClickOutside: closePopover, onEsc: closePopover, placement: (_c = props.placement) !== null && _c !== void 0 ? _c : 'bottom', focusLock: true, returnFocus: true, overrides: { Inner: { style: 'spr-ui-01' }, Arrow: { style: 'spr-ui-01' } }, mountNode: props.mountNode, ignoreBoundary: props.ignoreBoundary }, popoverProps, { children: props.children }), void 0));
63
54
  };
64
55
  exports.default = OverlaySelect;
@@ -0,0 +1,9 @@
1
+ import { ControlRef } from 'baseui/select';
2
+ declare type Params = {
3
+ openPopover: () => void;
4
+ closePopover: () => void;
5
+ inputElement: HTMLInputElement | HTMLDivElement | null;
6
+ setInputValue: (val: string) => void;
7
+ };
8
+ export declare const useControlRef: (controlRef: ControlRef | undefined, { openPopover, closePopover, inputElement, setInputValue }: Params) => void;
9
+ export {};
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useControlRef = void 0;
4
+ var react_1 = require("react");
5
+ var useControlRef = function (controlRef, _a) {
6
+ var openPopover = _a.openPopover, closePopover = _a.closePopover, inputElement = _a.inputElement, setInputValue = _a.setInputValue;
7
+ (0, react_1.useEffect)(function () {
8
+ if (!controlRef) {
9
+ return undefined;
10
+ }
11
+ controlRef.current = {
12
+ setDropdownOpen: function (shouldOpen) {
13
+ if (shouldOpen)
14
+ openPopover();
15
+ else
16
+ closePopover();
17
+ },
18
+ setInputValue: setInputValue,
19
+ blur: function () {
20
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.blur();
21
+ },
22
+ focus: function () {
23
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.focus();
24
+ },
25
+ setInputBlur: function () {
26
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.blur();
27
+ },
28
+ setInputFocus: function () {
29
+ inputElement === null || inputElement === void 0 ? void 0 : inputElement.focus();
30
+ },
31
+ };
32
+ return function () {
33
+ controlRef.current = null;
34
+ };
35
+ }, [openPopover, closePopover, controlRef, setInputValue, inputElement]);
36
+ };
37
+ exports.useControlRef = useControlRef;
@@ -0,0 +1,23 @@
1
+ import * as React from 'react';
2
+ import { OnChangeParams, OverlaySelectProps } from '../../types';
3
+ declare const useOverlaySelectOverrides: (props: Omit<import("../../types").BaseSelectProps, "children" | "type" | "overlayWidth"> & {
4
+ type: "overlay";
5
+ overlayWidth?: string | undefined;
6
+ children: React.ReactNode | ((args: {
7
+ isOpen: boolean;
8
+ }) => React.ReactNode);
9
+ } & {
10
+ scrollElement: HTMLElement | null;
11
+ }) => {
12
+ overrides: import("../../../overrides").OverridesObject<any>;
13
+ filterOptionsOverride: (options: import("baseui/select/types").Value, filterValue: string, excludeOptions: import("baseui/select/types").Value | null | undefined, a: {
14
+ valueKey: string;
15
+ labelKey: string;
16
+ }) => import("baseui/select/types").Value;
17
+ handleValuesChange: (params: OnChangeParams) => void;
18
+ popoverOpen: boolean;
19
+ closePopover: () => void;
20
+ openPopover: () => void;
21
+ togglePopoverState: () => void;
22
+ };
23
+ export default useOverlaySelectOverrides;
@@ -5,16 +5,17 @@ var jsx_runtime_1 = require("react/jsx-runtime");
5
5
  var omit_1 = (0, tslib_1.__importDefault)(require("lodash/omit"));
6
6
  var noop_1 = (0, tslib_1.__importDefault)(require("lodash/noop"));
7
7
  var react_1 = require("react");
8
- var box_1 = require("../../box");
9
- var longHandHelpers_1 = require("../../helpers/longHandHelpers");
10
- var loader_1 = require("../../loader");
11
- var overrides_1 = require("../../overrides");
12
- var search_1 = require("../../search");
13
- var style_1 = require("../../style");
14
- var overrides_2 = require("../overrides");
8
+ var box_1 = require("../../../box");
9
+ var longHandHelpers_1 = require("../../../helpers/longHandHelpers");
10
+ var loader_1 = require("../../../loader");
11
+ var overrides_1 = require("../../../overrides");
12
+ var search_1 = require("../../../search");
13
+ var style_1 = require("../../../style");
14
+ var overrides_2 = require("../../overrides");
15
15
  var usePopover_1 = (0, tslib_1.__importDefault)(require("./usePopover"));
16
- var useStickyElement_1 = (0, tslib_1.__importDefault)(require("../../hooks/useStickyElement"));
17
- var useUpdateEffect_1 = (0, tslib_1.__importDefault)(require("../../hooks/useUpdateEffect"));
16
+ var useStickyElement_1 = (0, tslib_1.__importDefault)(require("../../../hooks/useStickyElement"));
17
+ var useUpdateEffect_1 = (0, tslib_1.__importDefault)(require("../../../hooks/useUpdateEffect"));
18
+ var useControlRef_1 = require("./useControlRef");
18
19
  var useAutoFocus = function (_a) {
19
20
  var autoFocus = _a.autoFocus, inputRef = _a.inputRef;
20
21
  var _b = (0, tslib_1.__read)((0, react_1.useState)(null), 2), inputElement = _b[0], setInputElement = _b[1];
@@ -30,6 +31,13 @@ var useAutoFocus = function (_a) {
30
31
  */
31
32
  inputElement === null || inputElement === void 0 ? void 0 : inputElement.focus({ preventScroll: true });
32
33
  }
34
+ return function () {
35
+ if (inputRef) {
36
+ typeof inputRef === 'function'
37
+ ? inputRef(null)
38
+ : (inputRef.current = null);
39
+ }
40
+ };
33
41
  }, [autoFocus, inputElement, inputRef]);
34
42
  return [inputElement, setInputElement];
35
43
  };
@@ -52,7 +60,7 @@ var useSearchContainerHeight = function () {
52
60
  */
53
61
  var overridesToOmit = ['SelectContainer', 'Popover'];
54
62
  var useOverlaySelectOverrides = function (props) {
55
- var closeOnSelect = props.closeOnSelect, autoFocus = props.autoFocus, controlRef = props.controlRef, filterOptions = props.filterOptions, onInputChange = props.onInputChange, searchable = props.searchable, placeholder = props.placeholder, isLoading = props.isLoading, onChange = props.onChange, _a = props.clearable, clearable = _a === void 0 ? true : _a, onFocus = props.onFocus, onBlur = props.onBlur, onCloseResetsInput = props.onCloseResetsInput;
63
+ var closeOnSelect = props.closeOnSelect, autoFocus = props.autoFocus, inputRef = props.inputRef, filterOptions = props.filterOptions, onInputChange = props.onInputChange, searchable = props.searchable, placeholder = props.placeholder, isLoading = props.isLoading, onChange = props.onChange, _a = props.clearable, clearable = _a === void 0 ? true : _a, onFocus = props.onFocus, onBlur = props.onBlur, onCloseResetsInput = props.onCloseResetsInput, controlRef = props.controlRef, scrollElement = props.scrollElement;
56
64
  var _b = (0, tslib_1.__read)((0, react_1.useState)(''), 2), inputValue = _b[0], setInputValue = _b[1];
57
65
  var _c = (0, usePopover_1.default)(props), popoverOpen = _c.popoverOpen, togglePopoverState = _c.togglePopoverState, closePopover = _c.closePopover, openPopover = _c.openPopover;
58
66
  (0, useUpdateEffect_1.default)(function () {
@@ -60,7 +68,8 @@ var useOverlaySelectOverrides = function (props) {
60
68
  setInputValue('');
61
69
  }
62
70
  }, [onCloseResetsInput, popoverOpen]);
63
- var _d = (0, tslib_1.__read)(useAutoFocus({ autoFocus: autoFocus, inputRef: controlRef }), 2), inputElement = _d[0], setInputElement = _d[1];
71
+ var _d = (0, tslib_1.__read)(useAutoFocus({ autoFocus: autoFocus, inputRef: inputRef }), 2), inputElement = _d[0], setInputElement = _d[1];
72
+ (0, useControlRef_1.useControlRef)(controlRef, { closePopover: closePopover, openPopover: openPopover, setInputValue: setInputValue, inputElement: inputElement });
64
73
  var filterOptionsOverride = (0, react_1.useCallback)(function (options, _, excludeOptions, params) {
65
74
  if (filterOptions) {
66
75
  return filterOptions(options, inputValue, excludeOptions, params);
@@ -115,7 +124,6 @@ var useOverlaySelectOverrides = function (props) {
115
124
  },
116
125
  },
117
126
  },
118
- autoFocus: true,
119
127
  // override baseui's onKeyDown
120
128
  onKeyDown: noop_1.default,
121
129
  clearable: clearable,
@@ -151,6 +159,7 @@ var useOverlaySelectOverrides = function (props) {
151
159
  style: (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, (searchable ? { paddingTop: 0 } : {})), (0, longHandHelpers_1.borderRadius)(0)), { overflow: 'visible' }),
152
160
  },
153
161
  },
162
+ scrollElement: scrollElement,
154
163
  },
155
164
  },
156
165
  },
@@ -189,10 +198,7 @@ var useOverlaySelectOverrides = function (props) {
189
198
  onFocus,
190
199
  onBlur,
191
200
  ]);
192
- var overrides = (0, react_1.useMemo)(function () { return (0, overrides_1.mergeOverrides)(memoizedOverrides, (0, omit_1.default)(props.overrides, overridesToOmit)); }, [
193
- memoizedOverrides,
194
- props.overrides,
195
- ]);
201
+ var overrides = (0, react_1.useMemo)(function () { return (0, overrides_1.mergeOverrides)(memoizedOverrides, (0, omit_1.default)(props.overrides, overridesToOmit)); }, [memoizedOverrides, props.overrides]);
196
202
  return {
197
203
  overrides: overrides,
198
204
  filterOptionsOverride: filterOptionsOverride,
@@ -1,4 +1,4 @@
1
- import { OverlaySelectProps } from '../types';
1
+ import { OverlaySelectProps } from '../../types';
2
2
  declare const usePopover: ({ startOpen, onOpen, onClose }: OverlaySelectProps) => {
3
3
  popoverOpen: boolean;
4
4
  togglePopoverState: () => void;
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
4
  var react_1 = require("react");
5
- var useLatest_1 = require("../../hooks/useLatest");
6
- var useFirstMountState_1 = require("../../hooks/useFirstMountState");
5
+ var useLatest_1 = require("../../../hooks/useLatest");
6
+ var useFirstMountState_1 = require("../../../hooks/useFirstMountState");
7
7
  var usePopover = function (_a) {
8
8
  var startOpen = _a.startOpen, onOpen = _a.onOpen, onClose = _a.onClose;
9
9
  var isFirstMount = (0, useFirstMountState_1.useFirstMountState)();
@@ -12,7 +12,6 @@ export declare const getSearchIconStyles: StyleFn<SharedProps>;
12
12
  export declare const getControlContainerStyles: Styles;
13
13
  export declare const getValueContainerStyles: Styles;
14
14
  export declare const getValueTypography: Styles;
15
- export declare const getSelectInputStyles: StyleFn;
16
15
  export declare const OverlaySelectPopoverOverride: ({ content, children: inputContainer, setStickySentinelRef }: {
17
16
  content: any;
18
17
  children: any;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.selectMenuOverrides = exports.OverlaySelectPopoverOverride = exports.getSelectInputStyles = exports.getValueTypography = exports.getValueContainerStyles = exports.getControlContainerStyles = exports.getSearchIconStyles = exports.getSearchIconContainerStyles = exports.SelectArrow = void 0;
3
+ exports.selectMenuOverrides = exports.OverlaySelectPopoverOverride = exports.getValueTypography = exports.getValueContainerStyles = exports.getControlContainerStyles = exports.getSearchIconStyles = exports.getSearchIconContainerStyles = exports.SelectArrow = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var jsx_runtime_1 = require("react/jsx-runtime");
6
6
  var commonStyles_1 = require("../helpers/commonStyles");
@@ -64,7 +64,7 @@ exports.getValueContainerStyles = [
64
64
  function (_a, _b) {
65
65
  var theme = _a.theme;
66
66
  var $multi = _b.$multi, $isEmpty = _b.$isEmpty, $size = _b.$size;
67
- var multiSelectTheme = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'multiSelect', $size, 'lg');
67
+ var multiSelectTheme = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'multiSelect', $size, 'md');
68
68
  return $multi && !$isEmpty
69
69
  ? {
70
70
  paddingTop: multiSelectTheme.paddingY,
@@ -76,18 +76,10 @@ exports.getValueContainerStyles = [
76
76
  var getValueTypography = function (_a, _b) {
77
77
  var theme = _a.theme;
78
78
  var $selectSize = _b.$selectSize;
79
- var _c = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'input', $selectSize, 'lg'), fontSize = _c.fontSize, lineHeight = _c.lineHeight;
79
+ var _c = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'input', $selectSize, 'md'), fontSize = _c.fontSize, lineHeight = _c.lineHeight;
80
80
  return { fontSize: fontSize, lineHeight: lineHeight, height: lineHeight };
81
81
  };
82
82
  exports.getValueTypography = getValueTypography;
83
- var getSelectInputStyles = function () { return ({
84
- color: 'inherit',
85
- lineHeight: 'inherit',
86
- fontSize: 'inherit',
87
- fontWeight: 'inherit',
88
- letterSpacing: 'normal',
89
- }); };
90
- exports.getSelectInputStyles = getSelectInputStyles;
91
83
  // BaseSelect wil render this Popover component with DropdownContainer as content and ControlContainer as children/target
92
84
  var OverlaySelectPopoverOverride = function (_a) {
93
85
  var content = _a.content, inputContainer = _a.children, setStickySentinelRef = _a.setStickySentinelRef;
@@ -5,10 +5,10 @@ var tslib_1 = require("tslib");
5
5
  var jsx_runtime_1 = require("react/jsx-runtime");
6
6
  var select_1 = (0, tslib_1.__importDefault)(require("./select"));
7
7
  function MultiSelect(props) {
8
- return (0, jsx_runtime_1.jsx)(select_1.default, (0, tslib_1.__assign)({}, props, { multi: true }), void 0);
8
+ return (0, jsx_runtime_1.jsx)(select_1.default, (0, tslib_1.__assign)({}, props, { filterOptions: props.filterOptions, multi: true }), void 0);
9
9
  }
10
10
  exports.MultiSelect = MultiSelect;
11
11
  function SingleSelect(props) {
12
- return (0, jsx_runtime_1.jsx)(select_1.default, (0, tslib_1.__assign)({}, props, { multi: false }), void 0);
12
+ return (0, jsx_runtime_1.jsx)(select_1.default, (0, tslib_1.__assign)({}, props, { filterOptions: props.filterOptions, multi: false }), void 0);
13
13
  }
14
14
  exports.SingleSelect = SingleSelect;
@@ -13,7 +13,10 @@ declare const Select: {
13
13
  error: boolean;
14
14
  positive: boolean;
15
15
  escapeClearsValue: boolean;
16
- filterOptions: any;
16
+ filterOptions: ((options: import("baseui/select/types").Value, filterValue: string, excludeOptions: import("baseui/select/types").Value | null | undefined, a: {
17
+ valueKey: string;
18
+ labelKey: string;
19
+ }) => import("baseui/select/types").Value) | null | undefined;
17
20
  filterOutSelected: boolean;
18
21
  isLoading: boolean;
19
22
  labelKey: string;
@@ -28,15 +31,15 @@ declare const Select: {
28
31
  onSelectResetsInput: boolean;
29
32
  openOnClick: boolean;
30
33
  startOpen: boolean;
31
- options: import("baseui/select").OptionsT;
34
+ options: import("baseui/select/types").Options;
32
35
  overrides: {};
33
36
  required: boolean;
34
37
  searchable: boolean;
35
- size: import("./types").Size;
36
38
  type: "overlay" | import("./types").Type | "mobile";
37
- value: import("baseui/select").Value;
39
+ value: import("baseui/select/types").Value;
38
40
  valueKey: string;
39
- placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | undefined;
41
+ placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomRight" | "bottomLeft" | "leftBottom" | "leftTop" | undefined;
42
+ virtual: boolean;
40
43
  };
41
44
  };
42
45
  export default Select;
package/select/select.js CHANGED
@@ -11,11 +11,11 @@ var Select = function (props) {
11
11
  var adaptedProps = (0, context_1.useContextualFormProps)(props);
12
12
  switch (adaptedProps.type) {
13
13
  case 'overlay':
14
- return (0, jsx_runtime_1.jsx)(overlaySelect_1.default, (0, tslib_1.__assign)({}, adaptedProps), void 0);
14
+ return (0, jsx_runtime_1.jsx)(overlaySelect_1.default, (0, tslib_1.__assign)({}, adaptedProps, { size: adaptedProps.size || 'md' }), void 0);
15
15
  case 'mobile':
16
- return (0, jsx_runtime_1.jsx)(mobileSelect_1.default, (0, tslib_1.__assign)({}, adaptedProps), void 0);
16
+ return (0, jsx_runtime_1.jsx)(mobileSelect_1.default, (0, tslib_1.__assign)({}, adaptedProps, { size: adaptedProps.size || 'md' }), void 0);
17
17
  default:
18
- return (0, jsx_runtime_1.jsx)(base_select_1.default, (0, tslib_1.__assign)({}, adaptedProps), void 0);
18
+ return (0, jsx_runtime_1.jsx)(base_select_1.default, (0, tslib_1.__assign)({}, adaptedProps, { size: adaptedProps.size || 'md' }), void 0);
19
19
  }
20
20
  };
21
21
  Select.defaultProps = default_props_1.default;
@@ -29,6 +29,8 @@ declare type PropsAddedByOverride = {
29
29
  selectAllSelected: boolean;
30
30
  noResultsMsg?: string;
31
31
  captureScroll?: boolean;
32
+ virtual?: boolean;
33
+ overscanCount?: number;
32
34
  };
33
35
  declare const SelectMenuAdapter: (props: BaseStatefulMenuProps & PropsAddedByOverride) => React.ReactElement;
34
36
  export default SelectMenuAdapter;
@@ -17,6 +17,7 @@ var overrides_2 = require("../overrides");
17
17
  var styled_component_1 = require("../styled-component");
18
18
  var types_1 = require("../types");
19
19
  var SelectMenuItem_1 = (0, tslib_1.__importDefault)(require("./SelectMenuItem"));
20
+ var utils_1 = require("baseui/select/utils");
20
21
  var removeUngroupedIfEmpty = function (groupedOptions) {
21
22
  var _a;
22
23
  if (!((_a = groupedOptions[constants_1.UNGROUPED_ID]) === null || _a === void 0 ? void 0 : _a.length)) {
@@ -26,7 +27,7 @@ var removeUngroupedIfEmpty = function (groupedOptions) {
26
27
  };
27
28
  var SelectMenuAdapter = function (props) {
28
29
  var _a, _b, _c, _d;
29
- var id = props.id, groupedItems = props.items, overrides = props.overrides, _e = props.onItemSelect, onItemSelect = _e === void 0 ? noop_1.default : _e, value = props.value, valueKey = props.valueKey, labelKey = props.labelKey, multi = props.multi, selectAllSelected = props.selectAllSelected, noResultsMsg = props.noResultsMsg, captureScroll = props.captureScroll;
30
+ var id = props.id, groupedItems = props.items, overrides = props.overrides, _e = props.onItemSelect, onItemSelect = _e === void 0 ? noop_1.default : _e, value = props.value, valueKey = props.valueKey, labelKey = props.labelKey, multi = props.multi, selectAllSelected = props.selectAllSelected, noResultsMsg = props.noResultsMsg, captureScroll = props.captureScroll, virtual = props.virtual, overscanCount = props.overscanCount;
30
31
  var selectedValuesSet = (0, react_1.useMemo)(function () {
31
32
  var set = new Set((0, map_1.default)(value, valueKey));
32
33
  return set;
@@ -38,7 +39,7 @@ var SelectMenuAdapter = function (props) {
38
39
  var optionOverride = overrides === null || overrides === void 0 ? void 0 : overrides.Option;
39
40
  var baseuiMenuListProps;
40
41
  var getItemLabel, baseuiMenuItemProps;
41
- if (typeof optionOverride === 'object') {
42
+ if (typeof optionOverride === 'object' && typeof optionOverride.props === 'object') {
42
43
  getItemLabel = (_a = optionOverride === null || optionOverride === void 0 ? void 0 : optionOverride.props) === null || _a === void 0 ? void 0 : _a.getItemLabel;
43
44
  baseuiMenuItemProps = (_d = (_c = (_b = optionOverride === null || optionOverride === void 0 ? void 0 : optionOverride.props) === null || _b === void 0 ? void 0 : _b.overrides) === null || _c === void 0 ? void 0 : _c.ListItem) === null || _d === void 0 ? void 0 : _d.props;
44
45
  }
@@ -53,11 +54,16 @@ var SelectMenuAdapter = function (props) {
53
54
  MenuItem: mergedOverrides.MenuItem,
54
55
  ListItemText: mergedOverrides.ListItemText,
55
56
  }); }, [mergedOverrides.ListItemText, mergedOverrides.MenuItem]);
57
+ var currentCount = 0, totalCount = (0, utils_1.normalizeOptions)(groupedItems).length;
56
58
  var itemsToRender = (0, flatten_1.default)(Object.keys(removeUngroupedIfEmpty(groupedItems)).map(function (itemGroup, index) {
57
59
  var itemsInGroup = groupedItems[itemGroup];
58
- var menuItems = itemsInGroup.map(function (item) {
60
+ var menuItems = itemsInGroup.flatMap(function (item) {
61
+ currentCount += 1;
59
62
  var selected = selectedValuesSet.has(item[valueKey]) || (item[types_1.SELECT_ALL_ID] && selectAllSelected);
60
- return ((0, jsx_runtime_1.jsx)(SelectMenuItem_1.default, (0, tslib_1.__assign)({ overrides: menuItemOverrides, item: item, selected: selected, multi: multi, getItemLabel: getItemLabel, labelKey: labelKey, valueKey: valueKey, onItemSelect: onItemSelect, "$item": item }, baseuiMenuItemProps), item.isCreatable ? 'creatable-option' : item[valueKey]));
63
+ var selectMenuItem = ((0, jsx_runtime_1.jsx)(SelectMenuItem_1.default, (0, tslib_1.__assign)({ overrides: menuItemOverrides, item: item, selected: selected, multi: multi, getItemLabel: getItemLabel, labelKey: labelKey, valueKey: valueKey, onItemSelect: onItemSelect, "$item": item, "aria-posinset": currentCount, "aria-setsize": totalCount }, baseuiMenuItemProps), item.isCreatable ? 'creatable-option' : item[valueKey]));
64
+ return item[types_1.SELECT_ALL_ID]
65
+ ? [selectMenuItem, (0, jsx_runtime_1.jsx)(DividerOverriden, (0, tslib_1.__assign)({ "$item": item }, dividerProps), "divider-select-all")]
66
+ : selectMenuItem;
61
67
  });
62
68
  if (itemGroup !== constants_1.UNGROUPED_ID) {
63
69
  menuItems.unshift((0, jsx_runtime_1.jsx)(DividerOverriden, (0, tslib_1.__assign)({ first: index === 0 }, dividerProps, { children: (0, jsx_runtime_1.jsx)(typography_1.Typography, (0, tslib_1.__assign)({ variant: "l4", weight: "medium", className: "spr-text-03" }, { children: itemGroup }), void 0) }), "divider-".concat(itemGroup)));
@@ -69,6 +75,6 @@ var SelectMenuAdapter = function (props) {
69
75
  }
70
76
  return (
71
77
  // focusWhenNavigationEnabled false, or else it will remove focus from select input
72
- (0, jsx_runtime_1.jsx)(MenuOverriden, (0, tslib_1.__assign)({ resetMenuHighlightOnMouseLeave: true, focusWhenNavigationEnabled: false, "$multi": multi, captureScroll: captureScroll, tabIndex: -1, "aria-label": "Menu", role: "listbox" }, baseuiMenuListProps, { id: id }, menuProps, { children: itemsToRender }), void 0));
78
+ (0, jsx_runtime_1.jsx)(MenuOverriden, (0, tslib_1.__assign)({ resetMenuHighlightOnMouseLeave: true, focusWhenNavigationEnabled: false, "$multi": multi, captureScroll: captureScroll, tabIndex: -1, "aria-label": "Menu", role: "listbox" }, baseuiMenuListProps, { id: id, virtual: virtual, overscanCount: overscanCount }, menuProps, { children: itemsToRender }), void 0));
73
79
  };
74
80
  exports.default = SelectMenuAdapter;
@@ -36,7 +36,7 @@ declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponen
36
36
  selected?: boolean | undefined;
37
37
  startEnhancer?: import("../../list/types").Enhancer<import("../../list").ListItemSharedProps>;
38
38
  } & Record<string, any>> | undefined;
39
- Popover?: Override<Omit<import("baseui/popover").PopoverProps, "overrides" | "children"> & {
39
+ Popover?: Override<Omit<import("baseui/popover").PopoverProps, "children" | "overrides" | "triggerType" | "placement"> & {
40
40
  overrides?: ({
41
41
  Body?: Override<any> | undefined;
42
42
  Arrow?: Override<any> | undefined;
@@ -48,6 +48,9 @@ declare const _default: React.MemoExoticComponent<React.ForwardRefExoticComponen
48
48
  isOpen: boolean;
49
49
  }) => React.ReactNode);
50
50
  targetElement?: HTMLElement | null | undefined;
51
+ triggerType?: import("../../popover").TriggerType | undefined;
52
+ placement?: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomRight" | "bottomLeft" | "leftBottom" | "leftTop" | undefined;
53
+ innerRef?: React.Ref<HTMLElement> | undefined;
51
54
  } & Record<string, any>> | undefined;
52
55
  } | undefined;
53
56
  } & Record<string, any>> | undefined;
@@ -27,11 +27,9 @@ var SelectMenuItem = React.forwardRef(function (_a, ref) {
27
27
  // Passes intent to override intent from useContextualFormProps,
28
28
  // see: https://prod-gitlab.sprinklr.com/sprinklr/frontend/spaceweb/-/issues/282
29
29
  var startEnhancer = (0, react_1.useMemo)(function () {
30
- return multi && ((0, jsx_runtime_1.jsx)(checkbox_1.Checkbox, { checked: selected, size: "sm", overrides: { Input: { props: { 'aria-labelledby': id } } }, disabled: item.disabled, intent: "default" }, void 0));
30
+ return multi && ((0, jsx_runtime_1.jsx)(checkbox_1.Checkbox, { checked: selected, size: "sm", overrides: { Input: { props: { 'aria-labelledby': id } }, Label: { style: 'hidden' } }, disabled: item.disabled, intent: "default" }, void 0));
31
31
  }, [multi, selected, item.disabled, item[valueKey], id]);
32
- return ((0, jsx_runtime_1.jsx)(MenuItemOverriden, (0, tslib_1.__assign)({ role: "option", "aria-selected": selected, className: (0, classNames_1.default)({
33
- 'border-b spr-border-01 border-solid border-t-0 border-l-0 border-r-0': item[types_1.SELECT_ALL_ID],
34
- }),
32
+ return ((0, jsx_runtime_1.jsx)(MenuItemOverriden, (0, tslib_1.__assign)({ role: "option", "aria-selected": selected,
35
33
  // for Multi Select variant do not show selected styles
36
34
  selected: multi ? false : selected, onClick: handleItemSelect, startEnhancer: startEnhancer, disabled: item.disabled, "$multi": multi, "$item": item, "$valueKey": valueKey, "$labelKey": labelKey, ref: ref, id: id }, restProps, menuItemProps, { children: (0, jsx_runtime_1.jsx)(ListItemTextOverriden, (0, tslib_1.__assign)({ "$multi": multi, "$item": item, "$labelKey": labelKey }, listItemTextProps, { overrides: listItemTextOverrides }, { children: getItemLabel(item) }), void 0) }), void 0));
37
35
  });
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { StatefulSelectProps } from './types';
3
- declare function StatefulSelect({ overrides, ...restProps }: StatefulSelectProps): React.ReactElement;
3
+ declare function StatefulSelect({ overrides, onChange, ...restProps }: StatefulSelectProps): React.ReactElement;
4
4
  declare namespace StatefulSelect {
5
5
  var defaultProps: {
6
6
  autoFocus: boolean;
@@ -13,7 +13,10 @@ declare namespace StatefulSelect {
13
13
  error: boolean;
14
14
  positive: boolean;
15
15
  escapeClearsValue: boolean;
16
- filterOptions: any;
16
+ filterOptions: ((options: import("baseui/select").Value, filterValue: string, excludeOptions: import("baseui/select").Value | null | undefined, a: {
17
+ valueKey: string;
18
+ labelKey: string;
19
+ }) => import("baseui/select").Value) | null | undefined;
17
20
  filterOutSelected: boolean;
18
21
  isLoading: boolean;
19
22
  labelKey: string;
@@ -28,15 +31,15 @@ declare namespace StatefulSelect {
28
31
  onSelectResetsInput: boolean;
29
32
  openOnClick: boolean;
30
33
  startOpen: boolean;
31
- options: import("baseui/select").OptionsT;
34
+ options: import("baseui/select").Options;
32
35
  overrides: {};
33
36
  required: boolean;
34
37
  searchable: boolean;
35
- size: import("./types").Size;
36
38
  type: "overlay" | import("./types").Type | "mobile";
37
39
  value: import("baseui/select").Value;
38
40
  valueKey: string;
39
- placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | undefined;
41
+ placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomRight" | "bottomLeft" | "leftBottom" | "leftTop" | undefined;
42
+ virtual: boolean;
40
43
  };
41
44
  }
42
45
  export default StatefulSelect;
@@ -7,9 +7,9 @@ var overlaySelect_1 = (0, tslib_1.__importDefault)(require("./overlaySelect"));
7
7
  var select_2 = (0, tslib_1.__importDefault)(require("./select"));
8
8
  var default_props_1 = (0, tslib_1.__importDefault)(require("./default-props"));
9
9
  function StatefulSelect(_a) {
10
- var overrides = _a.overrides, restProps = (0, tslib_1.__rest)(_a, ["overrides"]);
11
- return ((0, jsx_runtime_1.jsx)(select_1.StatefulSelectContainer, (0, tslib_1.__assign)({}, restProps, { children: function (selectProps) {
12
- return restProps.type === 'overlay' ? ((0, jsx_runtime_1.jsx)(overlaySelect_1.default, (0, tslib_1.__assign)({}, selectProps, { overrides: overrides }, { children: restProps.children }), void 0)) : ((0, jsx_runtime_1.jsx)(select_2.default, (0, tslib_1.__assign)({}, selectProps, { overrides: overrides }), void 0));
10
+ var overrides = _a.overrides, onChange = _a.onChange, restProps = (0, tslib_1.__rest)(_a, ["overrides", "onChange"]);
11
+ return ((0, jsx_runtime_1.jsx)(select_1.StatefulSelectContainer, (0, tslib_1.__assign)({}, restProps, { onChange: onChange }, { children: function (selectProps) {
12
+ return restProps.type === 'overlay' ? ((0, jsx_runtime_1.jsx)(overlaySelect_1.default, (0, tslib_1.__assign)({}, selectProps, { overrides: overrides }, { children: restProps.children }), void 0)) : ((0, jsx_runtime_1.jsx)(select_2.default, (0, tslib_1.__assign)({}, selectProps, { filterOptions: selectProps.filterOptions, overrides: overrides }), void 0));
13
13
  } }), void 0));
14
14
  }
15
15
  StatefulSelect.defaultProps = default_props_1.default;
@@ -2,9 +2,11 @@ import { SelectProps } from 'baseui/select';
2
2
  import * as React from 'react';
3
3
  import { SharedProps, Size } from './types';
4
4
  declare const StyledSelect: React.ComponentType<SelectProps>;
5
- declare const NoResults: ({ msg, ...props }: {
5
+ declare const NoResults: React.ForwardRefExoticComponent<{
6
6
  msg?: string | undefined;
7
- }) => JSX.Element;
7
+ } & React.RefAttributes<HTMLElement>>;
8
+ export declare const StyledInputContainer: import("../style/styled").StyledComponent;
9
+ export declare const StyledInput: import("../style/styled").StyledComponent;
8
10
  declare const StyledOverlayContentContainer: import("../style/styled").StyledComponent;
9
11
  declare const InputContainer: ({ menuId, size, ...props }: SharedProps & {
10
12
  menuId: string;
@@ -14,5 +16,5 @@ declare const Input: React.ForwardRefExoticComponent<SharedProps & {
14
16
  id: string;
15
17
  menuId: string;
16
18
  } & React.RefAttributes<HTMLInputElement>>;
17
- export { StyledRoot, StyledClearIcon, StyledControlContainer, StyledDropdownContainer, StyledIconsContainer, StyledInput, StyledInputContainer, StyledInputSizer, StyledPlaceholder, StyledSearchIcon, StyledSearchIconContainer, StyledSelectArrow, StyledSingleValue, StyledValueContainer, } from 'baseui/select';
19
+ export { StyledRoot, StyledClearIcon, StyledControlContainer, StyledDropdownContainer, StyledIconsContainer, StyledInputSizer, StyledPlaceholder, StyledSearchIconContainer, StyledSelectArrow, StyledSingleValue, StyledValueContainer, } from 'baseui/select';
18
20
  export { StyledSelect, NoResults, StyledOverlayContentContainer, InputContainer, Input };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Input = exports.InputContainer = exports.StyledOverlayContentContainer = exports.NoResults = exports.StyledSelect = exports.StyledValueContainer = exports.StyledSingleValue = exports.StyledSelectArrow = exports.StyledSearchIconContainer = exports.StyledSearchIcon = exports.StyledPlaceholder = exports.StyledInputSizer = exports.StyledInputContainer = exports.StyledInput = exports.StyledIconsContainer = exports.StyledDropdownContainer = exports.StyledControlContainer = exports.StyledClearIcon = exports.StyledRoot = void 0;
3
+ exports.Input = exports.InputContainer = exports.StyledOverlayContentContainer = exports.NoResults = exports.StyledSelect = exports.StyledValueContainer = exports.StyledSingleValue = exports.StyledSelectArrow = exports.StyledSearchIconContainer = exports.StyledPlaceholder = exports.StyledInputSizer = exports.StyledIconsContainer = exports.StyledDropdownContainer = exports.StyledControlContainer = exports.StyledClearIcon = exports.StyledRoot = exports.StyledInput = exports.StyledInputContainer = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var jsx_runtime_1 = require("react/jsx-runtime");
6
6
  var select_1 = require("baseui/select");
@@ -10,6 +10,7 @@ var longHandHelpers_1 = require("../helpers/longHandHelpers");
10
10
  var locale_1 = require("../locale");
11
11
  var menu_item_1 = (0, tslib_1.__importDefault)(require("../menu/menu-item"));
12
12
  var style_1 = require("../style");
13
+ var themeHelpers_1 = require("../helpers/themeHelpers");
13
14
  var StyledSelect = (0, withThemeOverride_1.default)(select_1.Select, function (theme) { return ({
14
15
  borders: {
15
16
  inputBorderRadius: theme.input.borderRadius,
@@ -34,12 +35,37 @@ var StyledSelect = (0, withThemeOverride_1.default)(select_1.Select, function (t
34
35
  },
35
36
  }); });
36
37
  exports.StyledSelect = StyledSelect;
37
- var NoResults = function (_a) {
38
+ var NoResults = React.forwardRef(function (_a, ref) {
38
39
  var msg = _a.msg, props = (0, tslib_1.__rest)(_a, ["msg"]);
39
40
  var locale = (0, locale_1.useLocale)();
40
- return ((0, jsx_runtime_1.jsx)(menu_item_1.default, (0, tslib_1.__assign)({ button: false }, props, { children: msg || locale.select.noResultsMsg }), void 0));
41
- };
41
+ return ((0, jsx_runtime_1.jsx)(menu_item_1.default, (0, tslib_1.__assign)({ button: false, ref: ref }, props, { children: msg || locale.select.noResultsMsg }), void 0));
42
+ });
42
43
  exports.NoResults = NoResults;
44
+ exports.StyledInputContainer = (0, style_1.styled)('div', 'relative inline-block bg-transparent max-w-full border-none box-border m-0 p-0 outline-none', function (_a, props) {
45
+ var theme = _a.theme, px2rem = _a.px2rem;
46
+ var $selectSize = props.$selectSize, $isEmpty = props.$isEmpty;
47
+ var _b = (0, themeHelpers_1.getComponentSizeTheme)(theme, 'input', $selectSize, 'md'), fontSize = _b.fontSize, lineHeight = _b.lineHeight;
48
+ return {
49
+ boxShadow: 'none',
50
+ marginLeft: $isEmpty ? 0 : px2rem(2),
51
+ height: lineHeight,
52
+ maxHeight: lineHeight,
53
+ fontSize: fontSize,
54
+ lineHeight: lineHeight,
55
+ };
56
+ });
57
+ exports.StyledInput = (0, style_1.styled)('input', 'bg-transparent border-none inline-block m-0 p-0 max-w-full box-content outline-none', function (_, props) {
58
+ var $searchable = props.$searchable, $width = props.$width;
59
+ return {
60
+ color: 'inherit',
61
+ lineHeight: 'inherit',
62
+ fontSize: 'inherit',
63
+ fontWeight: 'inherit',
64
+ letterSpacing: 'normal',
65
+ width: !$searchable ? '1px' : $width || '100%',
66
+ boxShadow: 'none',
67
+ };
68
+ });
43
69
  var DEFAULT_OVERLAY_WIDTH = '300px';
44
70
  var StyledOverlayContentContainer = (0, style_1.styled)('div', 'overflow-auto', function (_a, _b) {
45
71
  var px2rem = _a.px2rem;
@@ -49,12 +75,12 @@ var StyledOverlayContentContainer = (0, style_1.styled)('div', 'overflow-auto',
49
75
  exports.StyledOverlayContentContainer = StyledOverlayContentContainer;
50
76
  var InputContainer = function (_a) {
51
77
  var menuId = _a.menuId, size = _a.size, props = (0, tslib_1.__rest)(_a, ["menuId", "size"]);
52
- return ((0, jsx_runtime_1.jsx)(select_1.StyledInputContainer, (0, tslib_1.__assign)({}, props, { "$selectSize": size, role: props.$searchable ? null : 'combobox', "aria-haspopup": props.$searchable ? null : 'listbox', "aria-owns": !props.$searchable && props.$isOpen ? menuId : null }), void 0));
78
+ return ((0, jsx_runtime_1.jsx)(exports.StyledInputContainer, (0, tslib_1.__assign)({}, props, { "$selectSize": size, role: props.$searchable ? undefined : 'combobox', "aria-haspopup": props.$searchable ? null : 'listbox', "aria-owns": !props.$searchable && props.$isOpen ? menuId : null }), void 0));
53
79
  };
54
80
  exports.InputContainer = InputContainer;
55
81
  var Input = React.forwardRef(function (_a, ref) {
56
82
  var id = _a.id, menuId = _a.menuId, props = (0, tslib_1.__rest)(_a, ["id", "menuId"]);
57
- return ((0, jsx_runtime_1.jsx)(select_1.StyledInput, (0, tslib_1.__assign)({}, props, { id: id, "aria-controls": props.$searchable && props.$isOpen ? menuId : null, ref: ref }), void 0));
83
+ return ((0, jsx_runtime_1.jsx)(exports.StyledInput, (0, tslib_1.__assign)({}, props, { id: id, "aria-controls": props.$searchable && props.$isOpen ? menuId : null, ref: ref }), void 0));
58
84
  });
59
85
  exports.Input = Input;
60
86
  var select_2 = require("baseui/select");
@@ -63,11 +89,8 @@ Object.defineProperty(exports, "StyledClearIcon", { enumerable: true, get: funct
63
89
  Object.defineProperty(exports, "StyledControlContainer", { enumerable: true, get: function () { return select_2.StyledControlContainer; } });
64
90
  Object.defineProperty(exports, "StyledDropdownContainer", { enumerable: true, get: function () { return select_2.StyledDropdownContainer; } });
65
91
  Object.defineProperty(exports, "StyledIconsContainer", { enumerable: true, get: function () { return select_2.StyledIconsContainer; } });
66
- Object.defineProperty(exports, "StyledInput", { enumerable: true, get: function () { return select_2.StyledInput; } });
67
- Object.defineProperty(exports, "StyledInputContainer", { enumerable: true, get: function () { return select_2.StyledInputContainer; } });
68
92
  Object.defineProperty(exports, "StyledInputSizer", { enumerable: true, get: function () { return select_2.StyledInputSizer; } });
69
93
  Object.defineProperty(exports, "StyledPlaceholder", { enumerable: true, get: function () { return select_2.StyledPlaceholder; } });
70
- Object.defineProperty(exports, "StyledSearchIcon", { enumerable: true, get: function () { return select_2.StyledSearchIcon; } });
71
94
  Object.defineProperty(exports, "StyledSearchIconContainer", { enumerable: true, get: function () { return select_2.StyledSearchIconContainer; } });
72
95
  Object.defineProperty(exports, "StyledSelectArrow", { enumerable: true, get: function () { return select_2.StyledSelectArrow; } });
73
96
  Object.defineProperty(exports, "StyledSingleValue", { enumerable: true, get: function () { return select_2.StyledSingleValue; } });