@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
@@ -13,13 +13,14 @@ var layer_1 = require("../layer");
13
13
  var adapter_1 = require("./adapter");
14
14
  var overrides_2 = require("./overrides");
15
15
  var styled_components_1 = require("./styled-components");
16
+ var useCombinedRef_1 = (0, tslib_1.__importDefault)(require("../hooks/useCombinedRef"));
16
17
  // @ts-ignore
17
18
  popover_1.Popover.displayName = 'BaseUIPopover';
18
19
  var Popover = React.forwardRef(function (_a, ref) {
19
- var overrides = _a.overrides, children = _a.children, placement = _a.placement, accessibilityType = _a.accessibilityType, _b = _a.triggerType, triggerType = _b === void 0 ? 'click' : _b, _c = _a.showArrow, showArrow = _c === void 0 ? false : _c, targetElement = _a.targetElement, isOpen = _a.isOpen, _d = _a.focusLock, focusLock = _d === void 0 ? false : _d, _e = _a.returnFocus, returnFocus = _e === void 0 ? triggerType === 'click' : _e, content = _a.content, restProps = (0, tslib_1.__rest)(_a, ["overrides", "children", "placement", "accessibilityType", "triggerType", "showArrow", "targetElement", "isOpen", "focusLock", "returnFocus", "content"]);
20
- var _f = (0, hooks_1.useContent)({ content: content }), setContentHost = _f.setContentHost, wrappedContent = _f.wrappedContent;
20
+ var overrides = _a.overrides, children = _a.children, _b = _a.placement, placement = _b === void 0 ? 'auto' : _b, accessibilityType = _a.accessibilityType, _c = _a.triggerType, triggerType = _c === void 0 ? 'click' : _c, _d = _a.showArrow, showArrow = _d === void 0 ? false : _d, targetElement = _a.targetElement, isOpen = _a.isOpen, _e = _a.focusLock, focusLock = _e === void 0 ? false : _e, _f = _a.returnFocus, returnFocus = _f === void 0 ? triggerType === 'click' : _f, content = _a.content, restProps = (0, tslib_1.__rest)(_a, ["overrides", "children", "placement", "accessibilityType", "triggerType", "showArrow", "targetElement", "isOpen", "focusLock", "returnFocus", "content"]);
21
+ var _g = (0, hooks_1.useContent)({ content: content }), setContentHost = _g.setContentHost, wrappedContent = _g.wrappedContent;
21
22
  var focusLockProps = (0, hooks_1.useFocusLock)({ returnFocus: returnFocus, focusLock: focusLock });
22
- var _g = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides === null || overrides === void 0 ? void 0 : overrides.ArrowTriangle, styled_components_1.StyledArrowTriangle), 2), ArrowTriangle = _g[0], arrowTriangleProps = _g[1];
23
+ var _h = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides === null || overrides === void 0 ? void 0 : overrides.ArrowTriangle, styled_components_1.StyledArrowTriangle), 2), ArrowTriangle = _h[0], arrowTriangleProps = _h[1];
23
24
  var _overrides = (0, useConvertOverrides_1.useConvertOverrides)({
24
25
  Body: { style: overrides_2.getBodyStyles },
25
26
  Arrow: { style: overrides_2.arrowStyles, props: { children: (0, jsx_runtime_1.jsx)(ArrowTriangle, (0, tslib_1.__assign)({}, arrowTriangleProps), void 0) } },
@@ -30,12 +31,13 @@ var Popover = React.forwardRef(function (_a, ref) {
30
31
  accessibilityType: accessibilityType && adapter_1.accessibilityMap[accessibilityType],
31
32
  triggerType: triggerType && adapter_1.triggerTypeMap[triggerType],
32
33
  };
34
+ var combinedRef = (0, useCombinedRef_1.default)(ref, restProps.innerRef);
33
35
  var childNode = children;
34
36
  if (typeof children === 'function') {
35
37
  childNode = children({ isOpen: isOpen });
36
38
  }
37
39
  var id = (0, useUniqueId_1.default)();
38
- return ((0, jsx_runtime_1.jsx)(layer_1.LayersManager, (0, tslib_1.__assign)({ zIndex: layer_1.Z_INDEX.POPOVER }, { children: (0, jsx_runtime_1.jsx)(popover_1.Popover, (0, tslib_1.__assign)({ id: id }, restProps, mappedProps, { showArrow: showArrow, isOpen: isOpen, overrides: _overrides, ref: ref, content: wrappedContent }, focusLockProps, { children: (0, jsx_runtime_1.jsx)(PopoverEnahncer_1.PopoverChildEnhancer, (0, tslib_1.__assign)({ targetElement: targetElement }, { children: childNode }), void 0) }), void 0) }), void 0));
40
+ return ((0, jsx_runtime_1.jsx)(layer_1.LayersManager, (0, tslib_1.__assign)({ zIndex: layer_1.Z_INDEX.POPOVER }, { children: (0, jsx_runtime_1.jsx)(popover_1.Popover, (0, tslib_1.__assign)({ id: id }, restProps, mappedProps, { showArrow: showArrow, isOpen: isOpen, overrides: _overrides, innerRef: combinedRef, content: wrappedContent }, focusLockProps, { children: (0, jsx_runtime_1.jsx)(PopoverEnahncer_1.PopoverChildEnhancer, (0, tslib_1.__assign)({ targetElement: targetElement }, { children: childNode }), void 0) }), void 0) }), void 0));
39
41
  });
40
42
  Popover.displayName = 'Popover';
41
43
  exports.default = Popover;
@@ -1,7 +1,8 @@
1
1
  /// <reference types="react" />
2
+ import { TetherPlacement } from 'baseui/layer';
2
3
  import { PopoverProps as BasePopoverProps, StatefulPopoverProps as BaseStatefulPopoverProps, StatefulPopoverContainerProps as BaseStatefulPopoverContainerProps, PopoverOverrides as BasePopoverOverrides } from 'baseui/popover';
3
4
  import { Override } from '../overrides';
4
- export declare type PopoverProps = Omit<BasePopoverProps, 'overrides' | 'children'> & {
5
+ export declare type PopoverProps = Omit<BasePopoverProps, 'overrides' | 'children' | 'triggerType' | 'placement'> & {
5
6
  overrides?: {
6
7
  [key in keyof BasePopoverOverrides]?: Override<any>;
7
8
  } & {
@@ -11,6 +12,9 @@ export declare type PopoverProps = Omit<BasePopoverProps, 'overrides' | 'childre
11
12
  isOpen: boolean;
12
13
  }) => React.ReactNode);
13
14
  targetElement?: HTMLElement | null;
15
+ triggerType?: TriggerType;
16
+ placement?: TetherPlacement;
17
+ innerRef?: React.Ref<HTMLElement>;
14
18
  };
15
19
  export declare type StatefulPopoverProps = Omit<BaseStatefulPopoverProps, 'overrides' | 'children'> & {
16
20
  overrides?: {
@@ -29,4 +33,5 @@ export declare type AccessibilityType = 'none' | 'menu' | 'tooltip';
29
33
  export declare type TriggerType = 'click' | 'hover';
30
34
  export declare type Placement = 'auto' | 'top' | 'topLeft' | 'topRight' | 'right' | 'rightTop' | 'rightBottom' | 'bottom' | 'bottomLeft' | 'bottomRight' | 'left' | 'leftTop' | 'leftBottom';
31
35
  export type { Offset, SharedStylePropsArg as SharedProps, StateReducer, } from 'baseui/popover';
32
- export { ARROW_SIZE, ARROW_WIDTH, POPOVER_MARGIN, STATE_CHANGE_TYPE, ANIMATE_IN_TIME, ANIMATE_OUT_TIME, } from 'baseui/popover';
36
+ export { STATE_CHANGE_TYPE, ANIMATE_IN_TIME, ANIMATE_OUT_TIME } from 'baseui/popover';
37
+ export { ARROW_SIZE, ARROW_WIDTH, POPOVER_MARGIN } from 'baseui/popover/constants';
package/popover/types.js CHANGED
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ANIMATE_OUT_TIME = exports.ANIMATE_IN_TIME = exports.STATE_CHANGE_TYPE = exports.POPOVER_MARGIN = exports.ARROW_WIDTH = exports.ARROW_SIZE = void 0;
3
+ exports.POPOVER_MARGIN = exports.ARROW_WIDTH = exports.ARROW_SIZE = exports.ANIMATE_OUT_TIME = exports.ANIMATE_IN_TIME = exports.STATE_CHANGE_TYPE = void 0;
4
4
  var popover_1 = require("baseui/popover");
5
- Object.defineProperty(exports, "ARROW_SIZE", { enumerable: true, get: function () { return popover_1.ARROW_SIZE; } });
6
- Object.defineProperty(exports, "ARROW_WIDTH", { enumerable: true, get: function () { return popover_1.ARROW_WIDTH; } });
7
- Object.defineProperty(exports, "POPOVER_MARGIN", { enumerable: true, get: function () { return popover_1.POPOVER_MARGIN; } });
8
5
  Object.defineProperty(exports, "STATE_CHANGE_TYPE", { enumerable: true, get: function () { return popover_1.STATE_CHANGE_TYPE; } });
9
6
  Object.defineProperty(exports, "ANIMATE_IN_TIME", { enumerable: true, get: function () { return popover_1.ANIMATE_IN_TIME; } });
10
7
  Object.defineProperty(exports, "ANIMATE_OUT_TIME", { enumerable: true, get: function () { return popover_1.ANIMATE_OUT_TIME; } });
8
+ var constants_1 = require("baseui/popover/constants");
9
+ Object.defineProperty(exports, "ARROW_SIZE", { enumerable: true, get: function () { return constants_1.ARROW_SIZE; } });
10
+ Object.defineProperty(exports, "ARROW_WIDTH", { enumerable: true, get: function () { return constants_1.ARROW_WIDTH; } });
11
+ Object.defineProperty(exports, "POPOVER_MARGIN", { enumerable: true, get: function () { return constants_1.POPOVER_MARGIN; } });
@@ -1,3 +1,4 @@
1
+ export declare const VIEWBOX_SIZE = 44;
1
2
  export declare const getProgressInlineStyles: ({ strokeWidth, value, infinite, }: {
2
3
  strokeWidth: number;
3
4
  value: number;
@@ -5,7 +6,6 @@ export declare const getProgressInlineStyles: ({ strokeWidth, value, infinite, }
5
6
  }) => {
6
7
  strokeDashoffset: string;
7
8
  };
8
- export declare const VIEWBOX_SIZE = 44;
9
9
  export declare const StyledRoot: import("../../style/styled").StyledComponent;
10
10
  export declare const StyledBarContainer: import("../../style/styled").StyledComponent;
11
11
  export declare const StyledSvg: import("../../style/styled").StyledComponent;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StyledLabel = exports.StyledLabelContainer = exports.StyledProgress = exports.StyledBar = exports.StyledSvg = exports.StyledBarContainer = exports.StyledRoot = exports.VIEWBOX_SIZE = exports.getProgressInlineStyles = void 0;
3
+ exports.StyledLabel = exports.StyledLabelContainer = exports.StyledProgress = exports.StyledBar = exports.StyledSvg = exports.StyledBarContainer = exports.StyledRoot = exports.getProgressInlineStyles = exports.VIEWBOX_SIZE = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var jsx_runtime_1 = require("react/jsx-runtime");
6
6
  var style_1 = require("../../style");
@@ -14,6 +14,7 @@ var BaseProgress = function (_a) {
14
14
  var inlineStyles = _a.inlineStyles, props = (0, tslib_1.__rest)(_a, ["inlineStyles"]);
15
15
  return ((0, jsx_runtime_1.jsx)("circle", (0, tslib_1.__assign)({ style: inlineStyles }, props), void 0));
16
16
  };
17
+ exports.VIEWBOX_SIZE = 44;
17
18
  var getProgressInlineStyles = function (_a) {
18
19
  var strokeWidth = _a.strokeWidth, value = _a.value, infinite = _a.infinite;
19
20
  var circumference = 2 * Math.PI * ((exports.VIEWBOX_SIZE - strokeWidth) / 2);
@@ -22,7 +23,6 @@ var getProgressInlineStyles = function (_a) {
22
23
  };
23
24
  };
24
25
  exports.getProgressInlineStyles = getProgressInlineStyles;
25
- exports.VIEWBOX_SIZE = 44;
26
26
  exports.StyledRoot = (0, style_1.styled)('span', 'relative inline-flex', function (_a, _b) {
27
27
  var px2rem = _a.px2rem;
28
28
  var $size = _b.$size;
@@ -62,14 +62,14 @@ exports.StyledBar = (0, style_1.styled)('circle', function (_a, _b) {
62
62
  cx: px2rem(exports.VIEWBOX_SIZE),
63
63
  cy: px2rem(exports.VIEWBOX_SIZE),
64
64
  r: px2rem((exports.VIEWBOX_SIZE - $strokeWidth) / 2),
65
- strokeWidth: $strokeWidth,
65
+ strokeWidth: $strokeWidth.toString(),
66
66
  });
67
67
  });
68
68
  exports.StyledProgress = (0, style_1.styled)(BaseProgress, 'stroke-current', { fill: 'none' }, function (_a, _b) {
69
69
  var px2rem = _a.px2rem;
70
70
  var $infinite = _b.$infinite, $value = _b.$value, $strokeWidth = _b.$strokeWidth;
71
71
  var circumference = 2 * Math.PI * ((exports.VIEWBOX_SIZE - $strokeWidth) / 2);
72
- return (0, tslib_1.__assign)({ cx: px2rem(exports.VIEWBOX_SIZE), cy: px2rem(exports.VIEWBOX_SIZE), r: px2rem((exports.VIEWBOX_SIZE - $strokeWidth) / 2), strokeWidth: $strokeWidth }, (!$infinite
72
+ return (0, tslib_1.__assign)({ cx: px2rem(exports.VIEWBOX_SIZE), cy: px2rem(exports.VIEWBOX_SIZE), r: px2rem((exports.VIEWBOX_SIZE - $strokeWidth) / 2), strokeWidth: $strokeWidth.toString() }, (!$infinite
73
73
  ? {
74
74
  willChange: 'strokeDashoffset',
75
75
  transitionTimingFunction: 'ease',
@@ -1,16 +1,13 @@
1
- /// <reference types="react" />
2
- import { RadioOverrides, RadioGroupOverrides } from 'baseui/radio';
1
+ import * as React from 'react';
2
+ import type { Radio as BaseRadio, RadioGroup as BaseRadioGroup } from 'baseui/radio';
3
3
  import { RadioGroupProps, RadioProps, Size } from './types';
4
4
  import { Intent } from '../types';
5
- export declare const SpaceRadioContext: import("react").Context<{
5
+ export declare const SpaceRadioContext: React.Context<{
6
6
  size?: Size | undefined;
7
7
  intent?: Intent | undefined;
8
8
  }>;
9
- export declare function useRadioGroupAdapter<T extends RadioGroupProps>(props: T): {
10
- adaptedProps: Omit<T, 'size' | 'overrides' | 'className' | 'style' | 'intent'> & {
11
- overrides?: RadioGroupOverrides;
12
- };
13
- };
14
- export declare const useRadioAdapter: <T extends RadioProps>(props: T) => Omit<T, "style" | "className" | "$outlineColor" | "$outlineWidth" | "$outlineOffset" | "$outlineStyle"> & {
15
- overrides: RadioOverrides;
16
- };
9
+ declare type BaseuiRadioGroupProps = React.ComponentProps<typeof BaseRadioGroup>;
10
+ export declare function useRadioGroupAdapter(props: RadioGroupProps): BaseuiRadioGroupProps;
11
+ declare type BaseuiRadioProps = React.ComponentProps<typeof BaseRadio>;
12
+ export declare const useRadioAdapter: (props: RadioProps) => BaseuiRadioProps;
13
+ export {};
@@ -7,6 +7,7 @@ var helpers_1 = require("../helpers");
7
7
  var useConvertOverrides_1 = require("../helpers/baseui/useConvertOverrides");
8
8
  var styled_components_1 = require("./styled-components");
9
9
  var context_1 = require("../form-control/context");
10
+ var useCombinedRef_1 = require("../hooks/useCombinedRef");
10
11
  exports.SpaceRadioContext = (0, react_1.createContext)({
11
12
  size: 'md',
12
13
  intent: 'default',
@@ -19,7 +20,7 @@ function useRadioGroupAdapter(props) {
19
20
  style: [className, style],
20
21
  },
21
22
  }, overrides);
22
- return { adaptedProps: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, restProps), { overrides: convertOverrides }) };
23
+ return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, restProps), { overrides: convertOverrides, onMouseEnter: props.onMouseEnter, onMouseLeave: props.onMouseLeave, onFocus: props.onFocus, onBlur: props.onBlur });
23
24
  }
24
25
  exports.useRadioGroupAdapter = useRadioGroupAdapter;
25
26
  var useRadioAdapter = function (props) {
@@ -44,8 +45,10 @@ var useRadioAdapter = function (props) {
44
45
  props: sharedProps,
45
46
  },
46
47
  // https://prod-gitlab.sprinklr.com/sprinklr/frontend/spaceweb/-/issues/472 - baseui adds position absolute
47
- Input: { style: { position: 'static' } },
48
+ // static position gives unexpected behaviour in Safari. Using position fixed works well for the above issue and Safari as well.
49
+ Input: { style: { position: 'fixed' } },
48
50
  }, props.overrides);
49
- return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, restProps), { overrides: overrides });
51
+ var inputRefObj = (0, useCombinedRef_1.useCombineRefObjects)(props.inputRef);
52
+ return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, restProps), { overrides: overrides, onMouseEnter: props.onMouseEnter, onMouseLeave: props.onMouseLeave, onFocus: props.onFocus, onBlur: props.onBlur, inputRef: inputRefObj });
50
53
  };
51
54
  exports.useRadioAdapter = useRadioAdapter;
package/radio/radio.js CHANGED
@@ -6,6 +6,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
6
6
  var radio_1 = require("baseui/radio");
7
7
  var react_1 = require("react");
8
8
  var basewebAdapters_1 = require("./basewebAdapters");
9
+ var context_1 = require("../form-control/context");
9
10
  // @ts-ignore
10
11
  radio_1.Radio.displayName = 'BaseUIRadio';
11
12
  // @ts-ignore
@@ -17,11 +18,11 @@ var Radio = function (props) {
17
18
  exports.Radio = Radio;
18
19
  exports.Radio.displayName = 'Radio';
19
20
  var RadioGroup = function (props) {
20
- var adaptedProps = (0, basewebAdapters_1.useRadioGroupAdapter)(props).adaptedProps;
21
- var memoizedProviderValue = (0, react_1.useMemo)(function () { return ({ size: props.size || 'md', intent: props.intent || 'default' }); }, [
22
- props.size,
23
- props.intent,
24
- ]);
21
+ var adaptedProps = (0, basewebAdapters_1.useRadioGroupAdapter)(props);
22
+ var _a = (0, context_1.useContextualFormProps)(props, {
23
+ intent: 'default',
24
+ }), formIntent = _a.intent, _b = _a.size, formSize = _b === void 0 ? 'md' : _b;
25
+ var memoizedProviderValue = (0, react_1.useMemo)(function () { return ({ size: formSize, intent: formIntent }); }, [formSize, formIntent]);
25
26
  return ((0, jsx_runtime_1.jsx)(basewebAdapters_1.SpaceRadioContext.Provider, (0, tslib_1.__assign)({ value: memoizedProviderValue }, { children: (0, jsx_runtime_1.jsx)(radio_1.RadioGroup, (0, tslib_1.__assign)({}, adaptedProps), void 0) }), void 0));
26
27
  };
27
28
  exports.RadioGroup = RadioGroup;
@@ -123,19 +123,17 @@ var getRootStyles = function (_a, _b) {
123
123
  var directionMargin = direction === 'rtl' ? 'Left' : 'Right';
124
124
  var styles = (_c = {},
125
125
  _c["margin".concat(directionMargin)] = isHorizontal ? px2rem(30) : undefined,
126
- _c.marginTop = px2rem(6),
127
- _c.marginBottom = $hasDescription && !isHorizontal ? undefined : px2rem(6),
126
+ _c.marginTop = '0px',
127
+ _c.marginBottom = isHorizontal || $hasDescription ? undefined : px2rem(6),
128
128
  _c);
129
129
  switch ($size) {
130
130
  case 'md':
131
131
  styles["margin".concat(directionMargin)] = isHorizontal ? px2rem(38) : undefined;
132
- styles.marginTop = px2rem(8);
133
- styles.marginBottom = $hasDescription && !isHorizontal ? undefined : px2rem(8);
132
+ styles.marginBottom = isHorizontal || $hasDescription ? undefined : px2rem(8);
134
133
  break;
135
134
  case 'lg':
136
135
  styles["margin".concat(directionMargin)] = isHorizontal ? px2rem(46) : undefined;
137
- styles.marginTop = px2rem(10);
138
- styles.marginBottom = $hasDescription && !isHorizontal ? undefined : px2rem(10);
136
+ styles.marginBottom = isHorizontal || $hasDescription ? undefined : px2rem(10);
139
137
  break;
140
138
  default:
141
139
  break;
package/radio/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { RadioGroupProps as BaseRadioGroupProps, RadioProps as BaseRadioProps, RadioOverrides, RadioGroupOverrides } from 'baseui/radio';
2
3
  import { Intent, SpacewebComponentProps } from '../types';
3
4
  import { Override } from '../overrides';
@@ -21,17 +22,23 @@ export declare type SharedProps = {
21
22
  $size?: Size;
22
23
  $labelPosition?: LabelPosition;
23
24
  };
24
- export declare type RadioProps = SpacewebComponentProps<Omit<BaseRadioProps, 'overrides' | 'isError'>> & {
25
+ declare type CommonProps = {
26
+ onMouseEnter?: (e: React.MouseEvent<HTMLInputElement>) => unknown;
27
+ onMouseLeave?: (e: React.MouseEvent<HTMLInputElement>) => unknown;
28
+ onFocus?: (e: React.FocusEvent<HTMLInputElement>) => unknown;
29
+ onBlur?: (e: React.FocusEvent<HTMLInputElement>) => unknown;
25
30
  size?: Size;
26
31
  intent?: Intent;
32
+ };
33
+ export declare type RadioProps = SpacewebComponentProps<Omit<BaseRadioProps, 'overrides' | 'isError' | keyof CommonProps>> & {
27
34
  overrides?: {
28
35
  [key in keyof RadioOverrides]?: Override<SharedProps>;
29
36
  };
30
- } & OutlineProps;
31
- export declare type RadioGroupProps = SpacewebComponentProps<Omit<BaseRadioGroupProps, 'overrides'>> & {
32
- intent?: Intent;
33
- size?: Size;
37
+ inputRef?: React.Ref<HTMLInputElement>;
38
+ } & OutlineProps & CommonProps;
39
+ export declare type RadioGroupProps = SpacewebComponentProps<Omit<BaseRadioGroupProps, 'overrides' | keyof CommonProps>> & {
34
40
  overrides?: {
35
41
  [key in keyof RadioGroupOverrides]?: Override<SharedProps>;
36
42
  };
37
- };
43
+ } & CommonProps;
44
+ export {};
@@ -1,4 +1,4 @@
1
1
  import { TYPE } from 'baseui/select';
2
2
  import { Type } from './types';
3
3
  import { ValueOf } from '../utility-types';
4
- export declare const typeAdaptor: Record<Type, ValueOf<TYPE>>;
4
+ export declare const typeAdaptor: Record<Type, ValueOf<typeof TYPE>>;
@@ -1,9 +1,10 @@
1
+ import type { OnChangeParams as BaseOnChangeParams } from 'baseui/select';
1
2
  import { Component } from 'react';
2
3
  import * as React from 'react';
3
4
  import { Locale } from '../locale';
4
5
  import { Overrides } from '../overrides';
5
6
  import defaultProps from './default-props';
6
- import { BaseSelectProps, OnChangeParams, Option, OptionsT, Value } from './types';
7
+ import { BaseSelectProps, Option, Options, Value } from './types';
7
8
  declare class BaseSelect extends Component<BaseSelectProps & typeof defaultProps, {
8
9
  selectAllSelected: boolean;
9
10
  }> {
@@ -18,7 +19,10 @@ declare class BaseSelect extends Component<BaseSelectProps & typeof defaultProps
18
19
  error: boolean;
19
20
  positive: boolean;
20
21
  escapeClearsValue: boolean;
21
- filterOptions: any;
22
+ filterOptions: ((options: Value, filterValue: string, excludeOptions: Value | null | undefined, a: {
23
+ valueKey: string;
24
+ labelKey: string;
25
+ }) => Value) | null | undefined;
22
26
  filterOutSelected: boolean;
23
27
  isLoading: boolean;
24
28
  labelKey: string;
@@ -33,31 +37,30 @@ declare class BaseSelect extends Component<BaseSelectProps & typeof defaultProps
33
37
  onSelectResetsInput: boolean;
34
38
  openOnClick: boolean;
35
39
  startOpen: boolean;
36
- options: OptionsT;
40
+ options: Options;
37
41
  overrides: {};
38
42
  required: boolean;
39
43
  searchable: boolean;
40
- size: import("./types").Size;
41
44
  type: "overlay" | import("./types").Type | "mobile";
42
45
  value: Value;
43
46
  valueKey: string;
44
- placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | undefined;
47
+ placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomRight" | "bottomLeft" | "leftBottom" | "leftTop" | undefined;
48
+ virtual: boolean;
45
49
  };
46
50
  id: string;
47
51
  menuId: string;
48
- createdOptions: OptionsT | undefined;
52
+ createdOptions: Options | undefined;
49
53
  shouldDisplaySelectAll: () => boolean;
50
- getNormalizedOptions: (options?: OptionsT | undefined) => Option[];
51
- isSelectAllChecked: (value: Value, options?: OptionsT | undefined) => boolean;
54
+ getNormalizedOptions: (options?: Options) => Value;
55
+ isSelectAllChecked: (value: Value, options?: Options) => boolean;
52
56
  getSelectOverrides: () => Overrides<any>;
53
- mergeOptions: (options1?: OptionsT | undefined, options2?: OptionsT | undefined) => OptionsT | undefined;
54
- getOptions: (locale: Locale, createdOptions: OptionsT | undefined, options?: OptionsT | undefined) => Option[];
55
- getCreatedOptions: (option: Option) => Promise<OptionsT>;
56
- getCreatedValues: (options: OptionsT) => OptionsT;
57
- handleChange: (params: OnChangeParams) => Promise<void>;
57
+ mergeOptions: (options1?: Options, options2?: Options) => Options | undefined;
58
+ getOptions: (locale: Locale, createdOptions: Options | undefined, options?: Options) => Value;
59
+ getCreatedOptions: (option: Option) => Promise<Options>;
60
+ getCreatedValues: (options: Options) => Options;
61
+ handleChange: (params: BaseOnChangeParams) => Promise<void>;
58
62
  handlePaste: (e: React.ClipboardEvent) => void;
59
- inputRef: React.RefObject<HTMLInputElement | HTMLDivElement>;
60
- combinedInputRef: (refParam: BaseSelectProps['controlRef']) => (element: HTMLInputElement | HTMLDivElement) => void;
63
+ inputRef: React.RefObject<HTMLInputElement>;
61
64
  render(): React.ReactElement;
62
65
  }
63
66
  export default BaseSelect;
@@ -48,7 +48,7 @@ var BaseSelect = /** @class */ (function (_super) {
48
48
  _this.getSelectOverrides =
49
49
  // FIXME: Remove use of any
50
50
  function () {
51
- var _a = _this.props, _b = _a.id, id = _b === void 0 ? _this.id : _b, valueKey = _a.valueKey, labelKey = _a.labelKey, value = _a.value, multi = _a.multi, overrides = _a.overrides, noResultsMsg = _a.noResultsMsg, options = _a.options, className = _a.className, style = _a.style, intent = _a.intent, size = _a.size, disabled = _a.disabled, captureScroll = _a.captureScroll, placement = _a.placement, popoverMinWidth = _a.popoverMinWidth, searchable = _a.searchable;
51
+ var _a = _this.props, _b = _a.id, id = _b === void 0 ? _this.id : _b, valueKey = _a.valueKey, labelKey = _a.labelKey, value = _a.value, multi = _a.multi, overrides = _a.overrides, noResultsMsg = _a.noResultsMsg, options = _a.options, className = _a.className, style = _a.style, intent = _a.intent, size = _a.size, disabled = _a.disabled, captureScroll = _a.captureScroll, placement = _a.placement, popoverMinWidth = _a.popoverMinWidth, searchable = _a.searchable, virtual = _a.virtual, ignoreBoundary = _a.ignoreBoundary;
52
52
  return {
53
53
  Root: {
54
54
  style: [className, style],
@@ -67,6 +67,8 @@ var BaseSelect = /** @class */ (function (_super) {
67
67
  selectAllSelected: _this.isSelectAllChecked(value, options),
68
68
  noResultsMsg: noResultsMsg,
69
69
  captureScroll: captureScroll,
70
+ virtual: virtual,
71
+ overscanCount: 20,
70
72
  },
71
73
  },
72
74
  DropdownContainer: {
@@ -76,7 +78,8 @@ var BaseSelect = /** @class */ (function (_super) {
76
78
  },
77
79
  style: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, (popoverMinWidth ? { minWidth: popoverMinWidth } : {})), (0, longHandHelpers_1.borderRadius)('inherit')),
78
80
  },
79
- OptionContent: { style: { fontWeight: 'inherit' } },
81
+ // aria-selected is applied on SelectMenuItem. No need to apply it on OptionContent
82
+ OptionContent: { style: { fontWeight: 'inherit' }, props: { 'aria-selected': undefined } },
80
83
  ControlContainer: { style: overrides_1.getControlContainerStyles, props: (0, helpers_1.add$props)({ intent: intent, size: size, disabled: disabled }) },
81
84
  ValueContainer: { style: overrides_1.getValueContainerStyles, props: (0, helpers_1.add$props)({ intent: intent, size: size, disabled: disabled }) },
82
85
  MultiValue: { component: multi_value_1.default, props: { selectSize: size } },
@@ -84,12 +87,10 @@ var BaseSelect = /** @class */ (function (_super) {
84
87
  InputContainer: {
85
88
  component: styled_component_1.InputContainer,
86
89
  props: { menuId: _this.menuId, size: size },
87
- style: overrides_1.getValueTypography,
88
90
  },
89
91
  Input: {
90
92
  component: styled_component_1.Input,
91
93
  props: { id: id, menuId: searchable ? _this.menuId : null, onPaste: _this.handlePaste },
92
- style: overrides_1.getSelectInputStyles,
93
94
  },
94
95
  Placeholder: {
95
96
  style: styled_components_1.getPlaceholderTypography,
@@ -101,7 +102,13 @@ var BaseSelect = /** @class */ (function (_super) {
101
102
  SearchIconContainer: { style: overrides_1.getSearchIconContainerStyles },
102
103
  Popover: {
103
104
  component: popover_1.Popover,
104
- props: { placement: placement, showArrow: false, returnFocus: false, overrides: { Body: { style: 'mt-2' } } },
105
+ props: {
106
+ placement: placement,
107
+ showArrow: false,
108
+ returnFocus: false,
109
+ overrides: { Body: { style: 'mt-2' } },
110
+ ignoreBoundary: ignoreBoundary,
111
+ },
105
112
  },
106
113
  LoadingIndicator: {
107
114
  component: function () { return ((0, jsx_runtime_1.jsx)(loader_1.Loader, { size: 16, variant: "clip", className: "mx-1", overrides: {
@@ -113,6 +120,7 @@ var BaseSelect = /** @class */ (function (_super) {
113
120
  };
114
121
  };
115
122
  _this.mergeOptions = function (options1, options2) {
123
+ var _a;
116
124
  var mergedOptions = options1;
117
125
  if (Array.isArray(options1)) {
118
126
  if (Array.isArray(options2)) {
@@ -129,10 +137,10 @@ var BaseSelect = /** @class */ (function (_super) {
129
137
  mergedOptions = (0, tslib_1.__assign)({}, options1);
130
138
  if (Array.isArray(options2)) {
131
139
  mergedOptions.__ungrouped = mergedOptions.__ungrouped
132
- ? mergedOptions.__ungrouped.concat(options2)
140
+ ? (_a = mergedOptions.__ungrouped) === null || _a === void 0 ? void 0 : _a.concat(options2)
133
141
  : options2;
134
142
  }
135
- else if (typeof options2 === 'object') {
143
+ else if (typeof options2 === 'object' && options2) {
136
144
  Object.keys(options2).forEach(function (key) {
137
145
  if (!mergedOptions) {
138
146
  return;
@@ -220,7 +228,7 @@ var BaseSelect = /** @class */ (function (_super) {
220
228
  newCreatedValues = this.getCreatedValues(newCreatedOptions);
221
229
  mergedValue = this.mergeOptions(value, newCreatedValues);
222
230
  onChange({
223
- option: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, newCreatedOptions[0]), { isCreatable: true }),
231
+ option: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, newCreatedOptions === null || newCreatedOptions === void 0 ? void 0 : newCreatedOptions[0]), { isCreatable: true }),
224
232
  type: constants_1.STATE_CHANGE_TYPE.select,
225
233
  value: this.getNormalizedOptions(mergedValue),
226
234
  });
@@ -242,15 +250,12 @@ var BaseSelect = /** @class */ (function (_super) {
242
250
  onChange({ type: constants_1.STATE_CHANGE_TYPE.select, value: _this.getNormalizedOptions(mergedValue) });
243
251
  };
244
252
  _this.inputRef = React.createRef();
245
- _this.combinedInputRef = (0, memoize_one_1.default)(function (refParam) {
246
- return (0, useCombinedRef_1.combineRefs)(_this.inputRef, refParam);
247
- });
248
253
  return _this;
249
254
  }
250
255
  BaseSelect.prototype.render = function () {
251
256
  var _this = this;
252
- var _a = this.props, options = _a.options, selectOverrides = _a.overrides, type = _a.type, controlRef = _a.controlRef;
253
- return ((0, jsx_runtime_1.jsx)(locale_1.LocaleConsumer, { children: function (locale) { return ((0, jsx_runtime_1.jsx)(spaceConsumer_1.default, { children: function (utils) { return ((0, jsx_runtime_1.jsx)(styled_component_1.StyledSelect, (0, tslib_1.__assign)({}, (0, omit_1.default)(_this.props, 'size'), { overrides: (0, useConvertOverrides_1.mergeAndConvertOverrides)(_this.getSelectOverrides(), selectOverrides, utils), controlRef: _this.combinedInputRef(controlRef), options: _this.getOptions(locale, _this.createdOptions, options), onChange: _this.handleChange, type: adaptor_1.typeAdaptor[type] }), void 0)); } }, void 0)); } }, void 0));
257
+ var _a = this.props, options = _a.options, selectOverrides = _a.overrides, type = _a.type, controlRef = _a.controlRef, inputRef = _a.inputRef;
258
+ return ((0, jsx_runtime_1.jsx)(locale_1.LocaleConsumer, { children: function (locale) { return ((0, jsx_runtime_1.jsx)(spaceConsumer_1.default, { children: function (utils) { return ((0, jsx_runtime_1.jsx)(styled_component_1.StyledSelect, (0, tslib_1.__assign)({}, (0, omit_1.default)(_this.props, 'size'), { overrides: (0, useConvertOverrides_1.mergeAndConvertOverrides)(_this.getSelectOverrides(), selectOverrides, utils), controlRef: controlRef, inputRef: (0, useCombinedRef_1.combineRefs)(_this.inputRef, inputRef), options: _this.getOptions(locale, _this.createdOptions, options), onChange: _this.handleChange, type: adaptor_1.typeAdaptor[type] }), void 0)); } }, void 0)); } }, void 0));
254
259
  };
255
260
  BaseSelect.defaultProps = default_props_1.default;
256
261
  return BaseSelect;
@@ -1,4 +1,4 @@
1
- import { OptionsT, Value, Size, Type } from './types';
1
+ import { Options, Value, Type } from './types';
2
2
  declare const defaultProps: {
3
3
  autoFocus: boolean;
4
4
  backspaceRemoves: boolean;
@@ -10,7 +10,10 @@ declare const defaultProps: {
10
10
  error: boolean;
11
11
  positive: boolean;
12
12
  escapeClearsValue: boolean;
13
- filterOptions: any;
13
+ filterOptions: ((options: Value, filterValue: string, excludeOptions: Value | null | undefined, a: {
14
+ valueKey: string;
15
+ labelKey: string;
16
+ }) => Value) | null | undefined;
14
17
  filterOutSelected: boolean;
15
18
  isLoading: boolean;
16
19
  labelKey: string;
@@ -25,14 +28,14 @@ declare const defaultProps: {
25
28
  onSelectResetsInput: boolean;
26
29
  openOnClick: boolean;
27
30
  startOpen: boolean;
28
- options: OptionsT;
31
+ options: Options;
29
32
  overrides: {};
30
33
  required: boolean;
31
34
  searchable: boolean;
32
- size: Size;
33
35
  type: "overlay" | Type | "mobile";
34
36
  value: Value;
35
37
  valueKey: string;
36
- placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomLeft" | "bottomRight" | "leftTop" | "leftBottom" | undefined;
38
+ placement: "auto" | "bottom" | "left" | "right" | "top" | "topLeft" | "topRight" | "rightTop" | "rightBottom" | "bottomRight" | "bottomLeft" | "leftBottom" | "leftTop" | undefined;
39
+ virtual: boolean;
37
40
  };
38
41
  export default defaultProps;
@@ -33,10 +33,10 @@ var defaultProps = {
33
33
  overrides: {},
34
34
  required: false,
35
35
  searchable: true,
36
- size: 'lg',
37
36
  type: 'select',
38
37
  value: [],
39
38
  valueKey: 'id',
40
39
  placement: 'bottom',
40
+ virtual: true,
41
41
  };
42
42
  exports.default = defaultProps;
package/select/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export type { Option, Value, OptionsT, StateReducer, OnChangeParams, SelectProps, AutosizeInputProps, DropdownProps, StatefulSelectProps, StatefulContainerProps, SelectActions, SelectState, AutosizeInputState, StatefulContainerState, } from './types';
1
+ export type { Option, Value, Options, Optgroups, StateReducer, OnChangeParams, ControlRef, ImperativeMethods, SelectProps, AutosizeInputProps, DropdownProps, StatefulSelectProps, StatefulContainerProps, SelectActions, SelectState, AutosizeInputState, StatefulContainerState, } from './types';
2
2
  export { SELECT_ALL_ID } from './types';
3
3
  export type { SelectLocale } from './locale';
4
4
  export { STATE_CHANGE_TYPE } from './constants';
5
- export { StyledRoot, StyledClearIcon, StyledControlContainer, StyledDropdownContainer, StyledIconsContainer, StyledInput, StyledInputContainer, StyledInputSizer, StyledPlaceholder, StyledSearchIcon, StyledSearchIconContainer, StyledSelectArrow, StyledSingleValue, StyledValueContainer, NoResults, StyledOverlayContentContainer, } from './styled-component';
5
+ export { StyledRoot, StyledClearIcon, StyledControlContainer, StyledDropdownContainer, StyledIconsContainer, StyledInput, StyledInputContainer, StyledInputSizer, StyledPlaceholder, StyledSearchIconContainer, StyledSelectArrow, StyledSingleValue, StyledValueContainer, NoResults, StyledOverlayContentContainer, } from './styled-component';
6
6
  export type { StyledSelect } from './styled-component';
7
7
  export { default as Select } from './select';
8
8
  export { default as StatefulSelect } from './stateful-select';
package/select/index.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.defaultFilterOptions = exports.SingleValue = exports.MobileSheet = exports.SelectMenuAdapter = exports.MultiValue = exports.SingleSelect = exports.MultiSelect = exports.StatefulSelect = exports.Select = exports.StyledOverlayContentContainer = exports.NoResults = 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 = exports.STATE_CHANGE_TYPE = exports.SELECT_ALL_ID = void 0;
6
+ exports.defaultFilterOptions = exports.SingleValue = exports.MobileSheet = exports.SelectMenuAdapter = exports.MultiValue = exports.SingleSelect = exports.MultiSelect = exports.StatefulSelect = exports.Select = exports.StyledOverlayContentContainer = exports.NoResults = exports.StyledValueContainer = exports.StyledSingleValue = exports.StyledSelectArrow = exports.StyledSearchIconContainer = exports.StyledPlaceholder = exports.StyledInputSizer = exports.StyledInputContainer = exports.StyledInput = exports.StyledIconsContainer = exports.StyledDropdownContainer = exports.StyledControlContainer = exports.StyledClearIcon = exports.StyledRoot = exports.STATE_CHANGE_TYPE = exports.SELECT_ALL_ID = void 0;
7
7
  var types_1 = require("./types");
8
8
  Object.defineProperty(exports, "SELECT_ALL_ID", { enumerable: true, get: function () { return types_1.SELECT_ALL_ID; } });
9
9
  var constants_1 = require("./constants");
@@ -19,7 +19,6 @@ Object.defineProperty(exports, "StyledInput", { enumerable: true, get: function
19
19
  Object.defineProperty(exports, "StyledInputContainer", { enumerable: true, get: function () { return styled_component_1.StyledInputContainer; } });
20
20
  Object.defineProperty(exports, "StyledInputSizer", { enumerable: true, get: function () { return styled_component_1.StyledInputSizer; } });
21
21
  Object.defineProperty(exports, "StyledPlaceholder", { enumerable: true, get: function () { return styled_component_1.StyledPlaceholder; } });
22
- Object.defineProperty(exports, "StyledSearchIcon", { enumerable: true, get: function () { return styled_component_1.StyledSearchIcon; } });
23
22
  Object.defineProperty(exports, "StyledSearchIconContainer", { enumerable: true, get: function () { return styled_component_1.StyledSearchIconContainer; } });
24
23
  Object.defineProperty(exports, "StyledSelectArrow", { enumerable: true, get: function () { return styled_component_1.StyledSelectArrow; } });
25
24
  Object.defineProperty(exports, "StyledSingleValue", { enumerable: true, get: function () { return styled_component_1.StyledSingleValue; } });
@@ -12,12 +12,10 @@ var usePauseBodyScrollEffect_1 = require("./hooks/usePauseBodyScrollEffect");
12
12
  exports.MobileSelect = React.memo(function (props) {
13
13
  var overrides = props.overrides, children = props.children, label = props.label;
14
14
  var _a = (0, tslib_1.__read)(React.useState(null), 2), scrollContainer = _a[0], setScrollContainer = _a[1];
15
- var mergedOverrides = React.useMemo(function () { return (0, overrides_1.mergeOverrides)(overrides !== null && overrides !== void 0 ? overrides : {}, (0, overrides_2.getOverlayOverrides)({ overlayContainerRef: setScrollContainer, label: label })); }, [overrides]);
16
- var childSelectOverrides = React.useMemo(function () { return (0, overrides_1.mergeOverrides)(overrides !== null && overrides !== void 0 ? overrides : {}, overrides_2.CHILD_SELECT_OVERRIDES); }, [
17
- overrides,
18
- ]);
15
+ var mergedOverrides = React.useMemo(function () { return (0, overrides_1.mergeOverrides)(overrides !== null && overrides !== void 0 ? overrides : {}, (0, overrides_2.getOverlayOverrides)({ overlayContainerRef: setScrollContainer, label: label })); }, [overrides, label]);
16
+ var childSelectOverrides = React.useMemo(function () { return (0, overrides_1.mergeOverrides)(overrides !== null && overrides !== void 0 ? overrides : {}, overrides_2.CHILD_SELECT_OVERRIDES); }, [overrides]);
19
17
  var overlaySelectProps = (0, omit_1.default)(props, overrides_2.OVERLAY_SELECT_PROPS_TO_OMIT);
20
18
  var viewSelectProps = (0, omit_1.default)(props, overrides_2.CHILD_SELECT_PROPS_TO_OMIT);
21
19
  (0, usePauseBodyScrollEffect_1.usePauseBodyScrollEffect)({ currentEl: scrollContainer || undefined });
22
- return ((0, jsx_runtime_1.jsx)(index_1.Select, (0, tslib_1.__assign)({ overlayWidth: "100%", maxDropdownHeight: "100%", autoFocus: true }, overlaySelectProps, { overrides: mergedOverrides, type: "overlay" }, { children: React.isValidElement(children) ? (children) : ((0, jsx_runtime_1.jsx)(index_1.Select, (0, tslib_1.__assign)({}, viewSelectProps, { overrides: childSelectOverrides, type: "select" }), void 0)) }), void 0));
20
+ return ((0, jsx_runtime_1.jsx)(index_1.Select, (0, tslib_1.__assign)({ overlayWidth: "100%", maxDropdownHeight: "100%", autoFocus: true }, overlaySelectProps, { overrides: mergedOverrides, type: "overlay", filterOptions: overlaySelectProps.filterOptions }, { children: React.isValidElement(children) ? (children) : ((0, jsx_runtime_1.jsx)(index_1.Select, (0, tslib_1.__assign)({}, viewSelectProps, { filterOptions: viewSelectProps.filterOptions, overrides: childSelectOverrides, type: "select" }), void 0)) }), void 0));
23
21
  });
@@ -13,7 +13,7 @@ function MultiValue(props) {
13
13
  var _b = props.overrides, overrides = _b === void 0 ? {} : _b, onActionClick = props.onActionClick, value = props.value, selectSize = props.selectSize, $disabled = props.$disabled, restProps = (0, tslib_1.__rest)(props, ["overrides", "onActionClick", "value", "selectSize", "$disabled"]);
14
14
  var _c = (0, tslib_1.__read)((0, overrides_1.useOverrides)(overrides.Tag, tag_1.Tag), 2), TagComponent = _c[0], tagProps = _c[1];
15
15
  var theme = (0, style_1.useStyle)().theme;
16
- var multiSelectTheme = (0, react_1.useMemo)(function () { return (0, themeHelpers_1.getComponentSizeTheme)(theme, 'multiSelect', selectSize, 'lg'); }, [
16
+ var multiSelectTheme = (0, react_1.useMemo)(function () { return (0, themeHelpers_1.getComponentSizeTheme)(theme, 'multiSelect', selectSize, 'md'); }, [
17
17
  selectSize,
18
18
  theme,
19
19
  ]);