@basic-ui/material 1.0.0-alpha.1 → 1.0.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/build/cjs/index.js +248 -57
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/Alert/Alert.d.ts +1 -1
  4. package/build/esm/Alert/Alert.js +1 -1
  5. package/build/esm/Alert/Alert.js.map +1 -1
  6. package/build/esm/AppBar/AppBar.d.ts +3 -3
  7. package/build/esm/AppBar/AppBar.js +2 -2
  8. package/build/esm/AppBar/AppBar.js.map +1 -1
  9. package/build/esm/AppBar/AppBarButton.d.ts +1 -1
  10. package/build/esm/Badge/Badge.d.ts +1 -1
  11. package/build/esm/BaseLine/BaseLine.d.ts +1 -0
  12. package/build/esm/BottomSheet/BottomSheet.d.ts +1 -1
  13. package/build/esm/BottomSheet/BottomSheetSurface.d.ts +2 -2
  14. package/build/esm/BottomSheet/BottomSheetSurface.js +2 -2
  15. package/build/esm/BottomSheet/BottomSheetSurface.js.map +1 -1
  16. package/build/esm/Box/Box.d.ts +4 -4
  17. package/build/esm/Box/Box.js +1 -2
  18. package/build/esm/Box/Box.js.map +1 -1
  19. package/build/esm/Button/BaseButton.d.ts +3 -3
  20. package/build/esm/Button/BaseButton.js +0 -1
  21. package/build/esm/Button/BaseButton.js.map +1 -1
  22. package/build/esm/Button/Button.d.ts +4 -4
  23. package/build/esm/Button/Button.js +0 -1
  24. package/build/esm/Button/Button.js.map +1 -1
  25. package/build/esm/Button/ButtonGroup.d.ts +2 -2
  26. package/build/esm/Button/ButtonGroup.js +1 -1
  27. package/build/esm/Button/ButtonGroup.js.map +1 -1
  28. package/build/esm/Button/FilledButton.d.ts +1 -1
  29. package/build/esm/Button/FilledButton.js +6 -8
  30. package/build/esm/Button/FilledButton.js.map +1 -1
  31. package/build/esm/Button/OutlinedButton.d.ts +1 -1
  32. package/build/esm/Button/TransparentButton.d.ts +1 -1
  33. package/build/esm/CheckBox/CheckBox.d.ts +5 -5
  34. package/build/esm/CheckBox/CheckBox.js +0 -1
  35. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  36. package/build/esm/CheckBox/CheckBoxIcon.d.ts +4 -4
  37. package/build/esm/CheckBox/CheckBoxIcon.js +2 -2
  38. package/build/esm/CheckBox/CheckBoxIcon.js.map +1 -1
  39. package/build/esm/Chip/ButtonChip.d.ts +4 -4
  40. package/build/esm/Chip/ButtonChip.js +0 -1
  41. package/build/esm/Chip/ButtonChip.js.map +1 -1
  42. package/build/esm/Chip/ChipBase.d.ts +3 -3
  43. package/build/esm/Chip/ChipBase.js +0 -1
  44. package/build/esm/Chip/ChipBase.js.map +1 -1
  45. package/build/esm/Chip/ChoiceChip.d.ts +5 -5
  46. package/build/esm/Chip/ChoiceChip.js +0 -1
  47. package/build/esm/Chip/ChoiceChip.js.map +1 -1
  48. package/build/esm/ColorMode/ColorModeProvider.d.ts +3 -3
  49. package/build/esm/ColorMode/ColorModeProvider.js +0 -1
  50. package/build/esm/ColorMode/ColorModeProvider.js.map +1 -1
  51. package/build/esm/Combobox/Combobox.d.ts +13 -13
  52. package/build/esm/Combobox/Combobox.js +3 -3
  53. package/build/esm/Combobox/Combobox.js.map +1 -1
  54. package/build/esm/Dialog/Dialog.d.ts +1 -1
  55. package/build/esm/Dialog/DialogBackdrop.d.ts +2 -2
  56. package/build/esm/Dialog/DialogBackdrop.js +0 -1
  57. package/build/esm/Dialog/DialogBackdrop.js.map +1 -1
  58. package/build/esm/Dialog/DialogSurface.d.ts +2 -2
  59. package/build/esm/Dialog/DialogSurface.js +0 -1
  60. package/build/esm/Dialog/DialogSurface.js.map +1 -1
  61. package/build/esm/Dialog/useDialogAnimation.js +3 -2
  62. package/build/esm/Dialog/useDialogAnimation.js.map +1 -1
  63. package/build/esm/Divider/Divider.d.ts +3 -3
  64. package/build/esm/Divider/Divider.js +0 -1
  65. package/build/esm/Divider/Divider.js.map +1 -1
  66. package/build/esm/FloatingLabel/FloatingLabel.d.ts +4 -4
  67. package/build/esm/FloatingLabel/FloatingLabel.js +3 -3
  68. package/build/esm/FloatingLabel/FloatingLabel.js.map +1 -1
  69. package/build/esm/LineRipple/LineRipple.d.ts +3 -3
  70. package/build/esm/LineRipple/LineRipple.js +2 -2
  71. package/build/esm/LineRipple/LineRipple.js.map +1 -1
  72. package/build/esm/Link/Link.d.ts +3 -3
  73. package/build/esm/Link/Link.js +0 -1
  74. package/build/esm/Link/Link.js.map +1 -1
  75. package/build/esm/List/List.d.ts +5 -5
  76. package/build/esm/List/List.js +0 -1
  77. package/build/esm/List/List.js.map +1 -1
  78. package/build/esm/ListItem/ListItem.d.ts +5 -5
  79. package/build/esm/ListItem/ListItem.js +3 -3
  80. package/build/esm/ListItem/ListItem.js.map +1 -1
  81. package/build/esm/ListItem/ListItemText.d.ts +6 -6
  82. package/build/esm/ListItem/ListItemText.js +1 -2
  83. package/build/esm/ListItem/ListItemText.js.map +1 -1
  84. package/build/esm/Menu/Menu.d.ts +6 -6
  85. package/build/esm/Menu/Menu.js +5 -3
  86. package/build/esm/Menu/Menu.js.map +1 -1
  87. package/build/esm/NavRail/NavRailItem.d.ts +15 -0
  88. package/build/esm/NavRail/NavRailItem.js +147 -0
  89. package/build/esm/NavRail/NavRailItem.js.map +1 -0
  90. package/build/esm/NavRail/index.d.ts +1 -0
  91. package/build/esm/NavRail/index.js +2 -0
  92. package/build/esm/NavRail/index.js.map +1 -0
  93. package/build/esm/NotchedOutline/NotchedOutline.d.ts +5 -5
  94. package/build/esm/NotchedOutline/NotchedOutline.js +0 -1
  95. package/build/esm/NotchedOutline/NotchedOutline.js.map +1 -1
  96. package/build/esm/NotchedOutline/styledComponents.d.ts +114 -1
  97. package/build/esm/NotchedOutline/styledComponents.js +3 -2
  98. package/build/esm/NotchedOutline/styledComponents.js.map +1 -1
  99. package/build/esm/Paper/Paper.d.ts +4 -4
  100. package/build/esm/Paper/Paper.js +0 -1
  101. package/build/esm/Paper/Paper.js.map +1 -1
  102. package/build/esm/ProgressSpinner/ProgressSpinner.js +2 -1
  103. package/build/esm/ProgressSpinner/ProgressSpinner.js.map +1 -1
  104. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  105. package/build/esm/RadioButton/RadioButtonIcon.d.ts +3 -3
  106. package/build/esm/RadioButton/RadioButtonIcon.js +2 -2
  107. package/build/esm/RadioButton/RadioButtonIcon.js.map +1 -1
  108. package/build/esm/RadioButton/RadioGroup.d.ts +1 -1
  109. package/build/esm/Ripple/RippleBox.d.ts +1 -2
  110. package/build/esm/Ripple/RippleBox.js +0 -1
  111. package/build/esm/Ripple/RippleBox.js.map +1 -1
  112. package/build/esm/Ripple/useRippleHandlers.d.ts +3 -3
  113. package/build/esm/Ripple/useRippleHandlers.js.map +1 -1
  114. package/build/esm/Ripple/useRippleSurface.d.ts +5 -5
  115. package/build/esm/Ripple/useRippleSurface.js +61 -58
  116. package/build/esm/Ripple/useRippleSurface.js.map +1 -1
  117. package/build/esm/Select/Select.d.ts +6 -6
  118. package/build/esm/Select/Select.js +0 -1
  119. package/build/esm/Select/Select.js.map +1 -1
  120. package/build/esm/Select/SelectIcon.d.ts +3 -3
  121. package/build/esm/Select/SelectIcon.js +2 -2
  122. package/build/esm/Select/SelectIcon.js.map +1 -1
  123. package/build/esm/Select/context.d.ts +2 -2
  124. package/build/esm/Select/context.js.map +1 -1
  125. package/build/esm/Select/defaultRender.d.ts +2 -1
  126. package/build/esm/Select/defaultRender.js.map +1 -1
  127. package/build/esm/Select/styledComponents.d.ts +9 -9
  128. package/build/esm/Select/styledComponents.js +0 -1
  129. package/build/esm/Select/styledComponents.js.map +1 -1
  130. package/build/esm/SelectItem/SelectItem.d.ts +1 -1
  131. package/build/esm/SelectionControl/SelectionControlLabel.d.ts +5 -5
  132. package/build/esm/SelectionControl/SelectionControlLabel.js +0 -1
  133. package/build/esm/SelectionControl/SelectionControlLabel.js.map +1 -1
  134. package/build/esm/SelectionControl/SelectionControlText.d.ts +4 -4
  135. package/build/esm/SelectionControl/SelectionControlText.js +0 -1
  136. package/build/esm/SelectionControl/SelectionControlText.js.map +1 -1
  137. package/build/esm/Skeleton/DelayAppearance.d.ts +3 -3
  138. package/build/esm/Skeleton/DelayAppearance.js +0 -1
  139. package/build/esm/Skeleton/DelayAppearance.js.map +1 -1
  140. package/build/esm/Skeleton/Skeleton.d.ts +6 -6
  141. package/build/esm/Skeleton/Skeleton.js +0 -1
  142. package/build/esm/Skeleton/Skeleton.js.map +1 -1
  143. package/build/esm/Snackbar/Snackbar.d.ts +3 -3
  144. package/build/esm/Snackbar/Snackbar.js +1 -2
  145. package/build/esm/Snackbar/Snackbar.js.map +1 -1
  146. package/build/esm/Snackbar/Stack.d.ts +2 -3
  147. package/build/esm/Snackbar/Stack.js +0 -1
  148. package/build/esm/Snackbar/Stack.js.map +1 -1
  149. package/build/esm/Snackbar/useSnackbarAnimation.d.ts +2 -2
  150. package/build/esm/Snackbar/useSnackbarAnimation.js +2 -1
  151. package/build/esm/Snackbar/useSnackbarAnimation.js.map +1 -1
  152. package/build/esm/Switch/Switch.d.ts +4 -5
  153. package/build/esm/Switch/Switch.js +0 -1
  154. package/build/esm/Switch/Switch.js.map +1 -1
  155. package/build/esm/Switch/styledComponents.d.ts +1 -0
  156. package/build/esm/Switch/styledComponents.js +2 -1
  157. package/build/esm/Switch/styledComponents.js.map +1 -1
  158. package/build/esm/Tab/Tab.d.ts +3 -3
  159. package/build/esm/Tab/Tab.js +2 -3
  160. package/build/esm/Tab/Tab.js.map +1 -1
  161. package/build/esm/Tab/TabList.d.ts +1 -1
  162. package/build/esm/Tab/TabPanel.d.ts +1 -1
  163. package/build/esm/TabIndicator/TabIndicator.d.ts +1 -1
  164. package/build/esm/TabIndicator/TabIndicator.js +2 -1
  165. package/build/esm/TabIndicator/TabIndicator.js.map +1 -1
  166. package/build/esm/TabIndicator/context.d.ts +2 -2
  167. package/build/esm/TabIndicator/context.js.map +1 -1
  168. package/build/esm/Table/Table.d.ts +1 -1
  169. package/build/esm/Table/TableRow.d.ts +1 -1
  170. package/build/esm/Table/TableRow.js +1 -1
  171. package/build/esm/Table/TableRow.js.map +1 -1
  172. package/build/esm/Text/LoremIpsum.js +1 -1
  173. package/build/esm/Text/LoremIpsum.js.map +1 -1
  174. package/build/esm/Text/Text.d.ts +8 -4
  175. package/build/esm/Text/Text.js +5 -2
  176. package/build/esm/Text/Text.js.map +1 -1
  177. package/build/esm/TextField/FilledContainer.d.ts +4 -4
  178. package/build/esm/TextField/FilledContainer.js +0 -1
  179. package/build/esm/TextField/FilledContainer.js.map +1 -1
  180. package/build/esm/TextField/HelperText.d.ts +5 -5
  181. package/build/esm/TextField/HelperText.js +1 -2
  182. package/build/esm/TextField/HelperText.js.map +1 -1
  183. package/build/esm/TextField/IconContainer.d.ts +2 -3
  184. package/build/esm/TextField/IconContainer.js +0 -1
  185. package/build/esm/TextField/IconContainer.js.map +1 -1
  186. package/build/esm/TextField/Input.d.ts +4 -4
  187. package/build/esm/TextField/Input.js +2 -1
  188. package/build/esm/TextField/Input.js.map +1 -1
  189. package/build/esm/TextField/OutlinedContainer.d.ts +4 -4
  190. package/build/esm/TextField/OutlinedContainer.js +0 -1
  191. package/build/esm/TextField/OutlinedContainer.js.map +1 -1
  192. package/build/esm/TextField/TextField.d.ts +5 -5
  193. package/build/esm/TextField/TextField.js +0 -1
  194. package/build/esm/TextField/TextField.js.map +1 -1
  195. package/build/esm/ThemeExplorer/ThemeColors.d.ts +2 -2
  196. package/build/esm/ThemeExplorer/ThemeColors.js +1 -1
  197. package/build/esm/ThemeExplorer/ThemeColors.js.map +1 -1
  198. package/build/esm/ThemeExplorer/components.d.ts +5 -6
  199. package/build/esm/ThemeExplorer/components.js +4 -3
  200. package/build/esm/ThemeExplorer/components.js.map +1 -1
  201. package/build/esm/ThemeExplorer/makeColorScheme.js +2 -1
  202. package/build/esm/ThemeExplorer/makeColorScheme.js.map +1 -1
  203. package/build/esm/ThemeExplorer/useDeferredColor.js +2 -1
  204. package/build/esm/ThemeExplorer/useDeferredColor.js.map +1 -1
  205. package/build/esm/Tooltip/Tooltip.d.ts +3 -3
  206. package/build/esm/Tooltip/Tooltip.js +5 -8
  207. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  208. package/build/esm/color.d.ts +2 -0
  209. package/build/esm/color.js +8 -3
  210. package/build/esm/color.js.map +1 -1
  211. package/build/esm/index.d.ts +2 -0
  212. package/build/esm/index.js +2 -0
  213. package/build/esm/index.js.map +1 -1
  214. package/build/esm/motion.d.ts +7 -0
  215. package/build/esm/motion.js +8 -0
  216. package/build/esm/motion.js.map +1 -0
  217. package/build/esm/theme/theme.d.ts +114 -1
  218. package/build/esm/theme/theme.js +42 -7
  219. package/build/esm/theme/theme.js.map +1 -1
  220. package/build/tsconfig-build.tsbuildinfo +1 -0
  221. package/build/tsconfig.tsbuildinfo +1 -1
  222. package/package.json +6 -6
  223. package/src/Alert/Alert.tsx +1 -1
  224. package/src/AppBar/AppBar.tsx +4 -3
  225. package/src/BottomSheet/BottomSheetSurface.tsx +5 -4
  226. package/src/Box/Box.tsx +6 -8
  227. package/src/Button/BaseButton.tsx +3 -11
  228. package/src/Button/Button.story.tsx +21 -4
  229. package/src/Button/Button.tsx +4 -4
  230. package/src/Button/ButtonGroup.tsx +1 -1
  231. package/src/Button/FilledButton.tsx +4 -9
  232. package/src/Button/SpinnerButton.story.tsx +1 -1
  233. package/src/CheckBox/CheckBox.story.tsx +2 -2
  234. package/src/CheckBox/CheckBox.tsx +6 -10
  235. package/src/CheckBox/CheckBoxIcon.tsx +5 -5
  236. package/src/Chip/ButtonChip.tsx +3 -3
  237. package/src/Chip/Chip.story.tsx +1 -1
  238. package/src/Chip/ChipBase.tsx +2 -2
  239. package/src/Chip/ChoiceChip.tsx +7 -7
  240. package/src/ColorMode/ColorModeProvider.tsx +3 -3
  241. package/src/Combobox/Combobox.story.tsx +3 -3
  242. package/src/Combobox/Combobox.tsx +9 -10
  243. package/src/Dialog/DialogBackdrop.tsx +3 -3
  244. package/src/Dialog/DialogSurface.tsx +2 -4
  245. package/src/Dialog/useDialogAnimation.tsx +3 -4
  246. package/src/Divider/Divider.tsx +2 -2
  247. package/src/FloatingLabel/FloatingLabel.tsx +7 -6
  248. package/src/LineRipple/LineRipple.story.tsx +1 -1
  249. package/src/LineRipple/LineRipple.tsx +4 -4
  250. package/src/Link/Link.tsx +2 -5
  251. package/src/List/List.tsx +4 -4
  252. package/src/ListItem/ListItem.tsx +6 -6
  253. package/src/ListItem/ListItemText.tsx +6 -7
  254. package/src/Menu/Menu.tsx +5 -5
  255. package/src/NavRail/NavRail.story.tsx +190 -0
  256. package/src/NavRail/NavRailItem.tsx +176 -0
  257. package/src/NavRail/index.ts +1 -0
  258. package/src/NotchedOutline/NotchedOutline.tsx +4 -5
  259. package/src/NotchedOutline/styledComponents.ts +2 -1
  260. package/src/Paper/Paper.story.tsx +3 -3
  261. package/src/Paper/Paper.tsx +3 -3
  262. package/src/ProgressSpinner/ProgressSpinner.tsx +2 -2
  263. package/src/RadioButton/RadioButton.story.tsx +2 -2
  264. package/src/RadioButton/RadioButton.tsx +1 -1
  265. package/src/RadioButton/RadioButtonIcon.tsx +4 -5
  266. package/src/Ripple/Ripple.story.tsx +1 -1
  267. package/src/Ripple/RippleBox.tsx +1 -2
  268. package/src/Ripple/useRippleHandlers.ts +3 -3
  269. package/src/Ripple/useRippleSurface.ts +77 -61
  270. package/src/Select/Select.tsx +11 -6
  271. package/src/Select/SelectIcon.tsx +3 -4
  272. package/src/Select/context.ts +2 -1
  273. package/src/Select/defaultRender.ts +2 -1
  274. package/src/Select/styledComponents.tsx +13 -11
  275. package/src/SelectionControl/SelectionControlLabel.tsx +4 -8
  276. package/src/SelectionControl/SelectionControlText.tsx +3 -3
  277. package/src/Skeleton/DelayAppearance.tsx +2 -2
  278. package/src/Skeleton/Skeleton.story.tsx +2 -2
  279. package/src/Skeleton/Skeleton.tsx +6 -6
  280. package/src/Snackbar/Snackbar.tsx +3 -3
  281. package/src/Snackbar/Stack.tsx +6 -9
  282. package/src/Snackbar/useSnackbarAnimation.ts +4 -3
  283. package/src/Switch/Switch.tsx +6 -10
  284. package/src/Switch/styledComponents.tsx +2 -2
  285. package/src/Tab/Tab.tsx +3 -7
  286. package/src/TabIndicator/TabIndicator.tsx +2 -1
  287. package/src/TabIndicator/context.ts +2 -1
  288. package/src/Table/TableRow.tsx +1 -1
  289. package/src/Text/LoremIpsum.tsx +1 -1
  290. package/src/Text/Text.story.tsx +42 -7
  291. package/src/Text/Text.tsx +25 -5
  292. package/src/TextField/FilledContainer.tsx +3 -3
  293. package/src/TextField/HelperText.tsx +5 -5
  294. package/src/TextField/IconContainer.tsx +2 -3
  295. package/src/TextField/Input.tsx +5 -4
  296. package/src/TextField/OutlinedContainer.tsx +3 -3
  297. package/src/TextField/TextField.tsx +4 -4
  298. package/src/ThemeExplorer/ThemeBuilder.story.tsx +29 -25
  299. package/src/ThemeExplorer/ThemeColors.tsx +1 -1
  300. package/src/ThemeExplorer/components.tsx +8 -3
  301. package/src/ThemeExplorer/makeColorScheme.tsx +1 -1
  302. package/src/ThemeExplorer/useDeferredColor.tsx +1 -1
  303. package/src/Tooltip/Tooltip.story.tsx +1 -1
  304. package/src/Tooltip/Tooltip.tsx +9 -11
  305. package/src/color.ts +25 -4
  306. package/src/index.ts +2 -0
  307. package/src/motion.ts +7 -0
  308. package/src/theme/theme.ts +47 -6
  309. package/src/ThemeExplorer/ThemeExplorer.story.tsx +0 -43
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Paper/Paper.tsx"],"names":["forwardRef","React","Box","useTheme","alpha","getBackgroundOverlay","getDarkThemeBackgroundOverlay","Paper","props","forwardedRef","outlined","elevation","backgroundOverlay","darkThemeBackgroundOverlay","__css","children","otherProps","theme","backgroundColor","boxShadow","String","outline","borderStyle","borderWidth","borderColor"],"mappings":";;AAAA,SAASA,UAAT,QAA2B,OAA3B;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AAIA,SAASC,GAAT,QAAoB,QAApB;AACA,SAASC,QAAT,QAAyB,UAAzB;AACA,SACEC,KADF,EAEEC,oBAFF,EAGEC,6BAHF,QAIO,UAJP;;AAeA,OAAO,IAAMC,KAAK,gBAAGP,UAAU,CAA6B,SAASO,KAAT,CAC1DC,KAD0D,EAE1DC,YAF0D,EAG1D;AAAA,MAEEC,QAFF,GASIF,KATJ,CAEEE,QAFF;AAAA,yBASIF,KATJ,CAGEG,SAHF;AAAA,MAGEA,SAHF,iCAGc,CAHd;AAAA,MAIEC,iBAJF,GASIJ,KATJ,CAIEI,iBAJF;AAAA,MAKEC,0BALF,GASIL,KATJ,CAKEK,0BALF;AAAA,qBASIL,KATJ,CAMEM,KANF;AAAA,MAMEA,KANF,6BAMU,EANV;AAAA,MAOEC,QAPF,GASIP,KATJ,CAOEO,QAPF;AAAA,MAQKC,UARL,4BASIR,KATJ;;AAUA,MAAMS,KAAK,GAAGd,QAAQ,EAAtB;AAEA,sBACE,KAAC,GAAD;AACE,IAAA,GAAG,EAAEM,YADP;AAEE,IAAA,KAAK;AACHS,MAAAA,eAAe,EAAE,SADd;AAEHC,MAAAA,SAAS,EAAEC,MAAM,CAACT,SAAD,CAFd;AAGH,gBAAU;AACRU,QAAAA,OAAO,EAAE;AADD;AAHP,OAMCX,QAAQ,GACR;AACEY,MAAAA,WAAW,EAAE,OADf;AAEEC,MAAAA,WAAW,aAFb;AAGEC,MAAAA,WAAW,EAAEpB,KAAK,CAAC,YAAD,EAAe,IAAf;AAHpB,KADQ,GAMR,EAZD,EAaCQ,iBAAiB,GACjBP,oBAAoB,CAACY,KAAD,EAAQL,iBAAR,EAA2B,SAA3B,CADH,GAEjB,EAfD,EAgBCC,0BAA0B,GAC1BP,6BAA6B,CAC3BW,KAD2B,EAE3BJ,0BAF2B,EAG3B,SAH2B,CADH,GAM1B,EAtBD,EAuBAC,KAvBA;AAFP,KA2BME,UA3BN;AAAA,cA6BGD;AA7BH,KADF;AAiCD,CAhD8B,CAAxB","sourcesContent":["import { forwardRef } from 'react';\nimport * as React from 'react';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport { useTheme } from '../theme';\nimport {\n alpha,\n getBackgroundOverlay,\n getDarkThemeBackgroundOverlay,\n} from '../color';\n\nexport interface PaperProps extends BoxProps {\n as?: React.ElementType<any>;\n elevation?: number;\n outlined?: boolean;\n backgroundOverlay?: number | string;\n darkThemeBackgroundOverlay?: number | string;\n children?: React.ReactNode;\n}\n\nexport const Paper = forwardRef<HTMLDivElement, PaperProps>(function Paper(\n props,\n forwardedRef\n) {\n const {\n outlined,\n elevation = 0,\n backgroundOverlay,\n darkThemeBackgroundOverlay,\n __css = {},\n children,\n ...otherProps\n } = props;\n const theme = useTheme();\n\n return (\n <Box\n ref={forwardedRef}\n __css={{\n backgroundColor: 'surface',\n boxShadow: String(elevation),\n ':focus': {\n outline: 'none',\n },\n ...(outlined\n ? {\n borderStyle: 'solid',\n borderWidth: rem(1),\n borderColor: alpha('on.surface', 0.12),\n }\n : {}),\n ...(backgroundOverlay\n ? getBackgroundOverlay(theme, backgroundOverlay, 'primary')\n : {}),\n ...(darkThemeBackgroundOverlay\n ? getDarkThemeBackgroundOverlay(\n theme,\n darkThemeBackgroundOverlay,\n 'primary'\n )\n : {}),\n ...__css,\n }}\n {...otherProps}\n >\n {children}\n </Box>\n );\n});\n"],"file":"Paper.js"}
1
+ {"version":3,"sources":["../../../src/Paper/Paper.tsx"],"names":["forwardRef","Box","useTheme","alpha","getBackgroundOverlay","getDarkThemeBackgroundOverlay","Paper","props","forwardedRef","outlined","elevation","backgroundOverlay","darkThemeBackgroundOverlay","__css","children","otherProps","theme","backgroundColor","boxShadow","String","outline","borderStyle","borderWidth","borderColor"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAIA,SAASC,GAAT,QAAoB,QAApB;AACA,SAASC,QAAT,QAAyB,UAAzB;AACA,SACEC,KADF,EAEEC,oBAFF,EAGEC,6BAHF,QAIO,UAJP;;AAeA,OAAO,IAAMC,KAAK,gBAAGN,UAAU,CAA6B,SAASM,KAAT,CAC1DC,KAD0D,EAE1DC,YAF0D,EAG1D;AAAA,MAEEC,QAFF,GASIF,KATJ,CAEEE,QAFF;AAAA,yBASIF,KATJ,CAGEG,SAHF;AAAA,MAGEA,SAHF,iCAGc,CAHd;AAAA,MAIEC,iBAJF,GASIJ,KATJ,CAIEI,iBAJF;AAAA,MAKEC,0BALF,GASIL,KATJ,CAKEK,0BALF;AAAA,qBASIL,KATJ,CAMEM,KANF;AAAA,MAMEA,KANF,6BAMU,EANV;AAAA,MAOEC,QAPF,GASIP,KATJ,CAOEO,QAPF;AAAA,MAQKC,UARL,4BASIR,KATJ;;AAUA,MAAMS,KAAK,GAAGd,QAAQ,EAAtB;AAEA,sBACE,KAAC,GAAD;AACE,IAAA,GAAG,EAAEM,YADP;AAEE,IAAA,KAAK;AACHS,MAAAA,eAAe,EAAE,SADd;AAEHC,MAAAA,SAAS,EAAEC,MAAM,CAACT,SAAD,CAFd;AAGH,gBAAU;AACRU,QAAAA,OAAO,EAAE;AADD;AAHP,OAMCX,QAAQ,GACR;AACEY,MAAAA,WAAW,EAAE,OADf;AAEEC,MAAAA,WAAW,aAFb;AAGEC,MAAAA,WAAW,EAAEpB,KAAK,CAAC,YAAD,EAAe,IAAf;AAHpB,KADQ,GAMR,EAZD,EAaCQ,iBAAiB,GACjBP,oBAAoB,CAACY,KAAD,EAAQL,iBAAR,EAA2B,SAA3B,CADH,GAEjB,EAfD,EAgBCC,0BAA0B,GAC1BP,6BAA6B,CAC3BW,KAD2B,EAE3BJ,0BAF2B,EAG3B,SAH2B,CADH,GAM1B,EAtBD,EAuBAC,KAvBA;AAFP,KA2BME,UA3BN;AAAA,cA6BGD;AA7BH,KADF;AAiCD,CAhD8B,CAAxB","sourcesContent":["import type { ElementType, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport { useTheme } from '../theme';\nimport {\n alpha,\n getBackgroundOverlay,\n getDarkThemeBackgroundOverlay,\n} from '../color';\n\nexport interface PaperProps extends BoxProps {\n as?: ElementType<any>;\n elevation?: number;\n outlined?: boolean;\n backgroundOverlay?: number | string;\n darkThemeBackgroundOverlay?: number | string;\n children?: ReactNode;\n}\n\nexport const Paper = forwardRef<HTMLDivElement, PaperProps>(function Paper(\n props,\n forwardedRef\n) {\n const {\n outlined,\n elevation = 0,\n backgroundOverlay,\n darkThemeBackgroundOverlay,\n __css = {},\n children,\n ...otherProps\n } = props;\n const theme = useTheme();\n\n return (\n <Box\n ref={forwardedRef}\n __css={{\n backgroundColor: 'surface',\n boxShadow: String(elevation),\n ':focus': {\n outline: 'none',\n },\n ...(outlined\n ? {\n borderStyle: 'solid',\n borderWidth: rem(1),\n borderColor: alpha('on.surface', 0.12),\n }\n : {}),\n ...(backgroundOverlay\n ? getBackgroundOverlay(theme, backgroundOverlay, 'primary')\n : {}),\n ...(darkThemeBackgroundOverlay\n ? getDarkThemeBackgroundOverlay(\n theme,\n darkThemeBackgroundOverlay,\n 'primary'\n )\n : {}),\n ...__css,\n }}\n {...otherProps}\n >\n {children}\n </Box>\n );\n});\n"],"file":"Paper.js"}
@@ -4,6 +4,7 @@ import { forwardRef } from 'react';
4
4
  import { keyframes } from '@emotion/react';
5
5
  import { rem } from 'polished';
6
6
  import { Box } from '../Box';
7
+ import { EASING_STANDARD } from '../motion';
7
8
  import { jsx as _jsx } from "react/jsx-runtime";
8
9
  var innerDivRotate = keyframes({
9
10
  '0%': {
@@ -79,7 +80,7 @@ export var ProgressSpinner = /*#__PURE__*/forwardRef(function ProgressSpinner(pr
79
80
  strokeDasharray: '80px, 200px',
80
81
  strokeDashoffset: '0px'
81
82
  } : {
82
- transition: 'stroke-dashoffset 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',
83
+ transition: "stroke-dashoffset 300ms ".concat(EASING_STANDARD, " 0ms"),
83
84
  strokeDasharray: circumference.toFixed(3)
84
85
  }
85
86
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ProgressSpinner/ProgressSpinner.tsx"],"names":["forwardRef","keyframes","rem","Box","innerDivRotate","transformOrigin","transform","circleIndeterminate","strokeDasharray","strokeDashoffset","SIZE","ProgressSpinner","props","forwardedRef","__css","progressProp","progress","thickness","size","otherProps","indeterminate","undefined","circumference","Math","PI","color","display","width","height","animation","toFixed","transition"],"mappings":"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","sourcesContent":["import type { SVGAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { keyframes } from '@emotion/react';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\n\nexport type ProgressSpinnerProps = BoxProps & {\n progress?: number;\n thickness?: number;\n size?: number;\n};\n\nconst innerDivRotate = keyframes({\n '0%': {\n transformOrigin: '50% 50%',\n },\n '100%': {\n transform: 'rotate(360deg)',\n },\n});\n\nconst circleIndeterminate = keyframes({\n '0%': {\n strokeDasharray: '1px, 200px',\n strokeDashoffset: '0px',\n },\n '50%': {\n strokeDasharray: '100px, 200px',\n strokeDashoffset: '-15px',\n },\n '100%': {\n strokeDasharray: '100px, 200px',\n strokeDashoffset: '-125px',\n },\n});\n\nconst SIZE = 44;\n\nexport const ProgressSpinner = forwardRef<HTMLDivElement, ProgressSpinnerProps>(\n function ProgressSpinner(props, forwardedRef) {\n const {\n __css,\n progress: progressProp,\n thickness = 3.6,\n size = 40,\n ...otherProps\n } = props;\n\n const indeterminate = progressProp === undefined;\n const progress = progressProp ?? 0;\n\n const circumference = 2 * Math.PI * ((SIZE - thickness) / 2);\n return (\n <Box\n ref={forwardedRef}\n {...otherProps}\n __css={{\n color: 'primary',\n display: 'inline-block',\n width: rem(size),\n height: rem(size),\n ...__css,\n }}\n >\n <Box\n __css={{\n display: 'inline-block',\n width: '100%',\n height: '100%',\n ...(indeterminate\n ? { animation: `${innerDivRotate} 1.4s linear infinite` }\n : { transform: 'rotate(-90deg)' }),\n }}\n >\n <Box<BoxProps<SVGElement, SVGAttributes<SVGElement>>>\n as=\"svg\"\n viewBox=\"22 22 44 44\"\n display=\"block\"\n >\n <Box<BoxProps<SVGElement, SVGAttributes<SVGElement>>>\n as=\"circle\"\n stroke=\"currentColor\"\n cx={SIZE}\n cy={SIZE}\n r={(SIZE - thickness) / 2}\n fill=\"none\"\n strokeWidth={thickness}\n style={\n indeterminate\n ? {}\n : {\n strokeDashoffset: `${(\n ((100 - progress) / 100) *\n circumference\n ).toFixed(3)}px`,\n }\n }\n __css={\n indeterminate\n ? {\n animation: `${circleIndeterminate} 1.4s ease-in-out infinite`,\n strokeDasharray: '80px, 200px',\n strokeDashoffset: '0px',\n }\n : {\n transition:\n 'stroke-dashoffset 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms',\n strokeDasharray: circumference.toFixed(3),\n }\n }\n />\n </Box>\n </Box>\n </Box>\n );\n }\n);\n"],"file":"ProgressSpinner.js"}
1
+ {"version":3,"sources":["../../../src/ProgressSpinner/ProgressSpinner.tsx"],"names":["forwardRef","keyframes","rem","Box","EASING_STANDARD","innerDivRotate","transformOrigin","transform","circleIndeterminate","strokeDasharray","strokeDashoffset","SIZE","ProgressSpinner","props","forwardedRef","__css","progressProp","progress","thickness","size","otherProps","indeterminate","undefined","circumference","Math","PI","color","display","width","height","animation","toFixed","transition"],"mappings":"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","sourcesContent":["import type { SVGAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { keyframes } from '@emotion/react';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport { EASING_STANDARD } from '../motion';\n\nexport type ProgressSpinnerProps = BoxProps & {\n progress?: number;\n thickness?: number;\n size?: number;\n};\n\nconst innerDivRotate = keyframes({\n '0%': {\n transformOrigin: '50% 50%',\n },\n '100%': {\n transform: 'rotate(360deg)',\n },\n});\n\nconst circleIndeterminate = keyframes({\n '0%': {\n strokeDasharray: '1px, 200px',\n strokeDashoffset: '0px',\n },\n '50%': {\n strokeDasharray: '100px, 200px',\n strokeDashoffset: '-15px',\n },\n '100%': {\n strokeDasharray: '100px, 200px',\n strokeDashoffset: '-125px',\n },\n});\n\nconst SIZE = 44;\n\nexport const ProgressSpinner = forwardRef<HTMLDivElement, ProgressSpinnerProps>(\n function ProgressSpinner(props, forwardedRef) {\n const {\n __css,\n progress: progressProp,\n thickness = 3.6,\n size = 40,\n ...otherProps\n } = props;\n\n const indeterminate = progressProp === undefined;\n const progress = progressProp ?? 0;\n\n const circumference = 2 * Math.PI * ((SIZE - thickness) / 2);\n return (\n <Box\n ref={forwardedRef}\n {...otherProps}\n __css={{\n color: 'primary',\n display: 'inline-block',\n width: rem(size),\n height: rem(size),\n ...__css,\n }}\n >\n <Box\n __css={{\n display: 'inline-block',\n width: '100%',\n height: '100%',\n ...(indeterminate\n ? { animation: `${innerDivRotate} 1.4s linear infinite` }\n : { transform: 'rotate(-90deg)' }),\n }}\n >\n <Box<BoxProps<SVGElement, SVGAttributes<SVGElement>>>\n as=\"svg\"\n viewBox=\"22 22 44 44\"\n display=\"block\"\n >\n <Box<BoxProps<SVGElement, SVGAttributes<SVGElement>>>\n as=\"circle\"\n stroke=\"currentColor\"\n cx={SIZE}\n cy={SIZE}\n r={(SIZE - thickness) / 2}\n fill=\"none\"\n strokeWidth={thickness}\n style={\n indeterminate\n ? {}\n : {\n strokeDashoffset: `${(\n ((100 - progress) / 100) *\n circumference\n ).toFixed(3)}px`,\n }\n }\n __css={\n indeterminate\n ? {\n animation: `${circleIndeterminate} 1.4s ease-in-out infinite`,\n strokeDasharray: '80px, 200px',\n strokeDashoffset: '0px',\n }\n : {\n transition: `stroke-dashoffset 300ms ${EASING_STANDARD} 0ms`,\n strokeDasharray: circumference.toFixed(3),\n }\n }\n />\n </Box>\n </Box>\n </Box>\n );\n }\n);\n"],"file":"ProgressSpinner.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/RadioButton/RadioButton.tsx"],"names":["forwardRef","RadioButton","RadioButtonCore","Box","RippleBox","alpha","RadioButtonIcon","useTheme","SelectionControlLabel","SelectionControlText","RadioButtonInner","props","forwardedRef","as","innerAs","checked","disabled","__css","otherProps","color","theme","top","left","width","height","appearance","outline","border","borderRadius","zIndex","position","padding","lineHeight","children","inner"],"mappings":"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","sourcesContent":["import type { InputHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { RadioButtonProps as RadioButtonCoreProps } from '@basic-ui/core';\nimport { RadioButton as RadioButtonCore } from '@basic-ui/core';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport type { RippleBoxProps } from '../Ripple';\nimport { RippleBox } from '../Ripple';\nimport { alpha } from '../color';\nimport { RadioButtonIcon } from './RadioButtonIcon';\nimport { useTheme } from '../theme';\nimport {\n SelectionControlLabel,\n SelectionControlText,\n} from '../SelectionControl';\n\nexport type RadioButtonProps = RadioButtonCoreProps;\n\nconst RadioButtonInner = forwardRef<\n HTMLInputElement,\n RadioButtonProps &\n BoxProps<HTMLInputElement, React.InputHTMLAttributes<HTMLInputElement>>\n>(function RadioButtonInner(props, forwardedRef) {\n const { innerAs: as, checked, disabled, __css, ...otherProps } = props;\n const color = 'primary';\n const theme = useTheme();\n\n return (\n <Box position=\"relative\" display=\"inline-block\" minWidth=\"auto\">\n <RippleBox<\n RippleBoxProps<HTMLInputElement, InputHTMLAttributes<HTMLInputElement>>\n >\n as={as}\n checked={checked}\n ref={forwardedRef}\n rippleColor={color}\n baseOpacity={0}\n hoverOpacity={0.04}\n focusOpacity={0.12}\n center={true}\n disabled={disabled}\n theme={theme}\n __css={{\n top: 0,\n left: 0,\n width: rem(40),\n height: rem(40),\n appearance: 'none',\n ':focus': {\n outline: 'none',\n },\n border: 'none',\n borderRadius: 'full',\n zIndex: 1,\n position: 'absolute',\n ...__css,\n }}\n {...otherProps}\n />\n <Box\n __css={{\n position: 'relative',\n top: 0,\n left: 0,\n width: rem(40),\n height: rem(40),\n padding: rem(10),\n lineHeight: 1,\n color: checked ? 'primary' : alpha('on.surface', 0.54),\n 'input:disabled + &': {\n color: alpha('on.surface', 0.38),\n },\n }}\n role=\"presentation\"\n aria-hidden=\"true\"\n >\n <RadioButtonIcon checked={checked} disabled={disabled} />\n </Box>\n </Box>\n );\n});\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps>(\n function RadioButton(props, forwardedRef) {\n const { as = 'input', children, disabled, ...otherProps } = props;\n\n const inner = (\n <RadioButtonCore\n as={RadioButtonInner}\n innerAs={as}\n ref={forwardedRef}\n disabled={disabled}\n {...otherProps}\n />\n );\n\n if (!children) {\n return inner;\n }\n\n return (\n <SelectionControlLabel>\n {inner}\n <SelectionControlText disabled={disabled}>\n {children}\n </SelectionControlText>\n </SelectionControlLabel>\n );\n }\n);\n"],"file":"RadioButton.js"}
1
+ {"version":3,"sources":["../../../src/RadioButton/RadioButton.tsx"],"names":["forwardRef","RadioButton","RadioButtonCore","Box","RippleBox","alpha","RadioButtonIcon","useTheme","SelectionControlLabel","SelectionControlText","RadioButtonInner","props","forwardedRef","as","innerAs","checked","disabled","__css","otherProps","color","theme","top","left","width","height","appearance","outline","border","borderRadius","zIndex","position","padding","lineHeight","children","inner"],"mappings":"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","sourcesContent":["import type { InputHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport type { RadioButtonProps as RadioButtonCoreProps } from '@basic-ui/core';\nimport { RadioButton as RadioButtonCore } from '@basic-ui/core';\nimport { rem } from 'polished';\n\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport type { RippleBoxProps } from '../Ripple';\nimport { RippleBox } from '../Ripple';\nimport { alpha } from '../color';\nimport { RadioButtonIcon } from './RadioButtonIcon';\nimport { useTheme } from '../theme';\nimport {\n SelectionControlLabel,\n SelectionControlText,\n} from '../SelectionControl';\n\nexport type RadioButtonProps = RadioButtonCoreProps;\n\nconst RadioButtonInner = forwardRef<\n HTMLInputElement,\n RadioButtonProps &\n BoxProps<HTMLInputElement, InputHTMLAttributes<HTMLInputElement>>\n>(function RadioButtonInner(props, forwardedRef) {\n const { innerAs: as, checked, disabled, __css, ...otherProps } = props;\n const color = 'primary';\n const theme = useTheme();\n\n return (\n <Box position=\"relative\" display=\"inline-block\" minWidth=\"auto\">\n <RippleBox<\n RippleBoxProps<HTMLInputElement, InputHTMLAttributes<HTMLInputElement>>\n >\n as={as}\n checked={checked}\n ref={forwardedRef}\n rippleColor={color}\n baseOpacity={0}\n hoverOpacity={0.04}\n focusOpacity={0.12}\n center={true}\n disabled={disabled}\n theme={theme}\n __css={{\n top: 0,\n left: 0,\n width: rem(40),\n height: rem(40),\n appearance: 'none',\n ':focus': {\n outline: 'none',\n },\n border: 'none',\n borderRadius: 'full',\n zIndex: 1,\n position: 'absolute',\n ...__css,\n }}\n {...otherProps}\n />\n <Box\n __css={{\n position: 'relative',\n top: 0,\n left: 0,\n width: rem(40),\n height: rem(40),\n padding: rem(10),\n lineHeight: 1,\n color: checked ? 'primary' : alpha('on.surface', 0.54),\n 'input:disabled + &': {\n color: alpha('on.surface', 0.38),\n },\n }}\n role=\"presentation\"\n aria-hidden=\"true\"\n >\n <RadioButtonIcon checked={checked} disabled={disabled} />\n </Box>\n </Box>\n );\n});\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps>(\n function RadioButton(props, forwardedRef) {\n const { as = 'input', children, disabled, ...otherProps } = props;\n\n const inner = (\n <RadioButtonCore\n as={RadioButtonInner}\n innerAs={as}\n ref={forwardedRef}\n disabled={disabled}\n {...otherProps}\n />\n );\n\n if (!children) {\n return inner;\n }\n\n return (\n <SelectionControlLabel>\n {inner}\n <SelectionControlText disabled={disabled}>\n {children}\n </SelectionControlText>\n </SelectionControlLabel>\n );\n }\n);\n"],"file":"RadioButton.js"}
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
2
- export interface RadioButtonIconProps extends React.HTMLAttributes<HTMLDivElement> {
1
+ import type { HTMLAttributes } from 'react';
2
+ export interface RadioButtonIconProps extends HTMLAttributes<HTMLDivElement> {
3
3
  checked?: boolean;
4
4
  disabled?: boolean;
5
5
  }
6
- export declare const RadioButtonIcon: React.ForwardRefExoticComponent<RadioButtonIconProps & React.RefAttributes<HTMLDivElement>>;
6
+ export declare const RadioButtonIcon: import("react").ForwardRefExoticComponent<RadioButtonIconProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,8 +1,8 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  import { forwardRef } from 'react';
4
- import * as React from 'react';
5
4
  import { Box } from '../Box';
5
+ import { EASING_STANDARD } from '../motion';
6
6
  import { jsx as _jsx } from "react/jsx-runtime";
7
7
  export var RadioButtonIcon = /*#__PURE__*/forwardRef(function RadioButtonIcon(props, forwardedRef) {
8
8
  var checked = props.checked,
@@ -26,7 +26,7 @@ export var RadioButtonIcon = /*#__PURE__*/forwardRef(function RadioButtonIcon(pr
26
26
  borderRadius: 'full',
27
27
  width: '100%',
28
28
  height: '100%',
29
- transition: 'transform .12s cubic-bezier(0,0,.2,1) 0ms,background-color .12s cubic-bezier(0,0,.2,1) 0ms',
29
+ transition: "transform .12s ".concat(EASING_STANDARD, " 0ms,background-color .12s ").concat(EASING_STANDARD, " 0ms"),
30
30
  transform: checked ? 'scale(1)' : 'scale(0)'
31
31
  }
32
32
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/RadioButton/RadioButtonIcon.tsx"],"names":["forwardRef","React","Box","RadioButtonIcon","props","forwardedRef","checked","otherProps","borderColor","borderStyle","borderRadius","borderWidth","width","height","p","backgroundColor","transition","transform"],"mappings":";;AAAA,SAASA,UAAT,QAA2B,OAA3B;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AAGA,SAASC,GAAT,QAAoB,QAApB;;AAQA,OAAO,IAAMC,eAAe,gBAAGH,UAAU,CACvC,SAASG,eAAT,CAAyBC,KAAzB,EAAgCC,YAAhC,EAA8C;AAAA,MACpCC,OADoC,GACTF,KADS,CACpCE,OADoC;AAAA,MACxBC,UADwB,4BACTH,KADS;;AAG5C,sBACE,KAAC,GAAD;AACE,IAAA,GAAG,EAAEC,YADP;AAEE,IAAA,KAAK,EAAE;AACLG,MAAAA,WAAW,EAAE,cADR;AAELC,MAAAA,WAAW,EAAE,OAFR;AAGLC,MAAAA,YAAY,EAAE,MAHT;AAILC,MAAAA,WAAW,YAJN;AAKLC,MAAAA,KAAK,EAAE,MALF;AAMLC,MAAAA,MAAM,EAAE,MANH;AAOLC,MAAAA,CAAC;AAPI;AAFT,KAWMP,UAXN;AAAA,2BAaE,KAAC,GAAD;AACE,MAAA,KAAK,EAAE;AACLQ,QAAAA,eAAe,EAAE,cADZ;AAELL,QAAAA,YAAY,EAAE,MAFT;AAGLE,QAAAA,KAAK,EAAE,MAHF;AAILC,QAAAA,MAAM,EAAE,MAJH;AAKLG,QAAAA,UAAU,EACR,4FANG;AAOLC,QAAAA,SAAS,EAAEX,OAAO,GAAG,UAAH,GAAgB;AAP7B;AADT;AAbF,KADF;AA2BD,CA/BsC,CAAlC","sourcesContent":["import { forwardRef } from 'react';\nimport * as React from 'react';\nimport { rem } from 'polished';\n\nimport { Box } from '../Box';\n\nexport interface RadioButtonIconProps\n extends React.HTMLAttributes<HTMLDivElement> {\n checked?: boolean;\n disabled?: boolean;\n}\n\nexport const RadioButtonIcon = forwardRef<HTMLDivElement, RadioButtonIconProps>(\n function RadioButtonIcon(props, forwardedRef) {\n const { checked, ...otherProps } = props;\n\n return (\n <Box\n ref={forwardedRef}\n __css={{\n borderColor: 'currentColor',\n borderStyle: 'solid',\n borderRadius: 'full',\n borderWidth: rem(2),\n width: '100%',\n height: '100%',\n p: rem(3),\n }}\n {...otherProps}\n >\n <Box\n __css={{\n backgroundColor: 'currentColor',\n borderRadius: 'full',\n width: '100%',\n height: '100%',\n transition:\n 'transform .12s cubic-bezier(0,0,.2,1) 0ms,background-color .12s cubic-bezier(0,0,.2,1) 0ms',\n transform: checked ? 'scale(1)' : 'scale(0)',\n }}\n />\n </Box>\n );\n }\n);\n"],"file":"RadioButtonIcon.js"}
1
+ {"version":3,"sources":["../../../src/RadioButton/RadioButtonIcon.tsx"],"names":["forwardRef","Box","EASING_STANDARD","RadioButtonIcon","props","forwardedRef","checked","otherProps","borderColor","borderStyle","borderRadius","borderWidth","width","height","p","backgroundColor","transition","transform"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,GAAT,QAAoB,QAApB;AACA,SAASC,eAAT,QAAgC,WAAhC;;AAOA,OAAO,IAAMC,eAAe,gBAAGH,UAAU,CACvC,SAASG,eAAT,CAAyBC,KAAzB,EAAgCC,YAAhC,EAA8C;AAAA,MACpCC,OADoC,GACTF,KADS,CACpCE,OADoC;AAAA,MACxBC,UADwB,4BACTH,KADS;;AAG5C,sBACE,KAAC,GAAD;AACE,IAAA,GAAG,EAAEC,YADP;AAEE,IAAA,KAAK,EAAE;AACLG,MAAAA,WAAW,EAAE,cADR;AAELC,MAAAA,WAAW,EAAE,OAFR;AAGLC,MAAAA,YAAY,EAAE,MAHT;AAILC,MAAAA,WAAW,YAJN;AAKLC,MAAAA,KAAK,EAAE,MALF;AAMLC,MAAAA,MAAM,EAAE,MANH;AAOLC,MAAAA,CAAC;AAPI;AAFT,KAWMP,UAXN;AAAA,2BAaE,KAAC,GAAD;AACE,MAAA,KAAK,EAAE;AACLQ,QAAAA,eAAe,EAAE,cADZ;AAELL,QAAAA,YAAY,EAAE,MAFT;AAGLE,QAAAA,KAAK,EAAE,MAHF;AAILC,QAAAA,MAAM,EAAE,MAJH;AAKLG,QAAAA,UAAU,2BAAoBd,eAApB,wCAAiEA,eAAjE,SALL;AAMLe,QAAAA,SAAS,EAAEX,OAAO,GAAG,UAAH,GAAgB;AAN7B;AADT;AAbF,KADF;AA0BD,CA9BsC,CAAlC","sourcesContent":["import type { HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { rem } from 'polished';\n\nimport { Box } from '../Box';\nimport { EASING_STANDARD } from '../motion';\n\nexport interface RadioButtonIconProps extends HTMLAttributes<HTMLDivElement> {\n checked?: boolean;\n disabled?: boolean;\n}\n\nexport const RadioButtonIcon = forwardRef<HTMLDivElement, RadioButtonIconProps>(\n function RadioButtonIcon(props, forwardedRef) {\n const { checked, ...otherProps } = props;\n\n return (\n <Box\n ref={forwardedRef}\n __css={{\n borderColor: 'currentColor',\n borderStyle: 'solid',\n borderRadius: 'full',\n borderWidth: rem(2),\n width: '100%',\n height: '100%',\n p: rem(3),\n }}\n {...otherProps}\n >\n <Box\n __css={{\n backgroundColor: 'currentColor',\n borderRadius: 'full',\n width: '100%',\n height: '100%',\n transition: `transform .12s ${EASING_STANDARD} 0ms,background-color .12s ${EASING_STANDARD} 0ms`,\n transform: checked ? 'scale(1)' : 'scale(0)',\n }}\n />\n </Box>\n );\n }\n);\n"],"file":"RadioButtonIcon.js"}
@@ -2,4 +2,4 @@
2
2
  import type { RadioGroupProps as RadioGroupCoreProps } from '@basic-ui/core';
3
3
  import type { BoxProps } from '../Box';
4
4
  export declare type RadioGroupProps = Omit<BoxProps, 'onChange' | 'value' | 'defaultValue'> & RadioGroupCoreProps;
5
- export declare const RadioGroup: import("react").ForwardRefExoticComponent<Pick<RadioGroupProps, "children" | "p" | "slot" | "style" | "title" | "alignContent" | "alignItems" | "alignSelf" | "backgroundColor" | "backgroundImage" | "backgroundPosition" | "backgroundRepeat" | "backgroundSize" | "borderBottomColor" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderBottomStyle" | "borderBottomWidth" | "borderLeftColor" | "borderLeftStyle" | "borderLeftWidth" | "borderRightColor" | "borderRightStyle" | "borderRightWidth" | "borderTopColor" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderTopStyle" | "borderTopWidth" | "bottom" | "boxShadow" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "order" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "textAlign" | "textShadow" | "top" | "translate" | "verticalAlign" | "width" | "zIndex" | "background" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderStyle" | "borderTop" | "borderWidth" | "flex" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "gridColumnGap" | "gridGap" | "gridRowGap" | "value" | "hidden" | "as" | "sx" | "__css" | "variant" | "tx" | "theme" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "size" | "bg" | "borderX" | "borderY" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "innerAs" | "name"> & import("react").RefAttributes<HTMLDivElement>>;
5
+ export declare const RadioGroup: import("react").ForwardRefExoticComponent<Pick<RadioGroupProps, "children" | "p" | "slot" | "style" | "title" | "alignContent" | "alignItems" | "alignSelf" | "backgroundColor" | "backgroundImage" | "backgroundPosition" | "backgroundRepeat" | "backgroundSize" | "borderBottomColor" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderBottomStyle" | "borderBottomWidth" | "borderLeftColor" | "borderLeftStyle" | "borderLeftWidth" | "borderRightColor" | "borderRightStyle" | "borderRightWidth" | "borderTopColor" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderTopStyle" | "borderTopWidth" | "bottom" | "boxShadow" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "order" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "textAlign" | "textShadow" | "top" | "translate" | "verticalAlign" | "width" | "zIndex" | "background" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderStyle" | "borderTop" | "borderWidth" | "flex" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "gridColumnGap" | "gridGap" | "gridRowGap" | "value" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "hidden" | "theme" | "sx" | "__css" | "variant" | "tx" | "as" | "size" | "borderX" | "borderY" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "name" | "innerAs"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,6 +1,5 @@
1
1
  import type { HTMLAttributes } from 'react';
2
- import * as React from 'react';
3
2
  import type { UseRippleSurfaceOptions } from './useRippleSurface';
4
3
  import type { BoxProps } from '../Box';
5
- export declare type RippleBoxProps<H extends HTMLElement = HTMLDivElement, Attr = React.HTMLAttributes<H>> = BoxProps<H, Attr> & UseRippleSurfaceOptions<H>;
4
+ export declare type RippleBoxProps<H extends HTMLElement = HTMLDivElement, Attr = HTMLAttributes<H>> = BoxProps<H, Attr> & UseRippleSurfaceOptions<H>;
6
5
  export declare const RippleBox: <Props = RippleBoxProps<HTMLDivElement, HTMLAttributes<HTMLDivElement>>>(props: Props) => JSX.Element;
@@ -1,7 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  import { forwardRef } from 'react';
4
- import * as React from 'react';
5
4
  import { useRippleSurface } from './useRippleSurface';
6
5
  import { Box } from '../Box';
7
6
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Ripple/RippleBox.tsx"],"names":["forwardRef","React","useRippleSurface","Box","RippleBox","props","forwardedRef","as","__css","onKeyDown","onPointerDown","baseOpacity","hoverOpacity","focusOpacity","pressedOpacity","rippleColor","center","disabled","rippleEnabled","style","otherProps","rippleCss","rippleProps"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AAGA,SAASC,gBAAT,QAAiC,oBAAjC;AAEA,SAASC,GAAT,QAAoB,QAApB;;AAOA,OAAO,IAAMC,SAIG,gBAAGJ,UAAU,CAC3B,SAASI,SAAT,CAAmBC,KAAnB,EAA0BC,YAA1B,EAAwC;AAAA,kBAkBlCD,KAlBkC,CAEpCE,EAFoC;AAAA,MAEpCA,EAFoC,0BAE/B,KAF+B;AAAA,MAGpCC,KAHoC,GAkBlCH,KAlBkC,CAGpCG,KAHoC;AAAA,MAMpCC,SANoC,GAkBlCJ,KAlBkC,CAMpCI,SANoC;AAAA,MAOpCC,aAPoC,GAkBlCL,KAlBkC,CAOpCK,aAPoC;AAAA,MAQpCC,WARoC,GAkBlCN,KAlBkC,CAQpCM,WARoC;AAAA,MASpCC,YAToC,GAkBlCP,KAlBkC,CASpCO,YAToC;AAAA,MAUpCC,YAVoC,GAkBlCR,KAlBkC,CAUpCQ,YAVoC;AAAA,MAWpCC,cAXoC,GAkBlCT,KAlBkC,CAWpCS,cAXoC;AAAA,MAYpCC,WAZoC,GAkBlCV,KAlBkC,CAYpCU,WAZoC;AAAA,MAapCC,MAboC,GAkBlCX,KAlBkC,CAapCW,MAboC;AAAA,MAcpCC,QAdoC,GAkBlCZ,KAlBkC,CAcpCY,QAdoC;AAAA,MAepCC,aAfoC,GAkBlCb,KAlBkC,CAepCa,aAfoC;AAAA,MAgBpCC,KAhBoC,GAkBlCd,KAlBkC,CAgBpCc,KAhBoC;AAAA,MAiBjCC,UAjBiC,4BAkBlCf,KAlBkC;;AAAA,0BAoBOH,gBAAgB,CAACG,KAAD,CApBvB;AAAA,MAoBvBgB,SApBuB,qBAoB9Bb,KApB8B;AAAA,MAoBTc,WApBS;;AAsBtC,sBACE,KAAC,GAAD;AACE,IAAA,EAAE,EAAEf,EADN;AAEE,IAAA,GAAG,EAAED,YAFP;AAGE,IAAA,KAAK,eAAOe,SAAP,EAAqBb,KAArB,CAHP;AAIQS,IAAAA,QAAQ,EAARA;AAJR,KAKMG,UALN,EAMME,WANN,EADF;AAUD,CAjC0B,CAJtB","sourcesContent":["import type { HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport * as React from 'react';\n\nimport type { UseRippleSurfaceOptions } from './useRippleSurface';\nimport { useRippleSurface } from './useRippleSurface';\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\n\nexport type RippleBoxProps<\n H extends HTMLElement = HTMLDivElement,\n Attr = React.HTMLAttributes<H>\n> = BoxProps<H, Attr> & UseRippleSurfaceOptions<H>;\n\nexport const RippleBox: <\n Props = RippleBoxProps<HTMLDivElement, HTMLAttributes<HTMLDivElement>>\n>(\n props: Props\n) => JSX.Element = forwardRef<HTMLDivElement, RippleBoxProps>(\n function RippleBox(props, forwardedRef) {\n const {\n as = 'div',\n __css,\n // Cherry picking the ripple props to prevent it from falling down to\n // the Box component\n onKeyDown, // eslint-disable-line @typescript-eslint/no-unused-vars\n onPointerDown, // eslint-disable-line @typescript-eslint/no-unused-vars\n baseOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n hoverOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n focusOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n pressedOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n rippleColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n center, // eslint-disable-line @typescript-eslint/no-unused-vars\n disabled, // eslint-disable-line @typescript-eslint/no-unused-vars\n rippleEnabled, // eslint-disable-line @typescript-eslint/no-unused-vars\n style, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...otherProps\n } = props;\n\n const { __css: rippleCss, ...rippleProps } = useRippleSurface(props);\n\n return (\n <Box\n as={as}\n ref={forwardedRef}\n __css={{ ...rippleCss, ...__css }}\n {...{ disabled }}\n {...otherProps}\n {...rippleProps}\n />\n );\n }\n) as any;\n"],"file":"RippleBox.js"}
1
+ {"version":3,"sources":["../../../src/Ripple/RippleBox.tsx"],"names":["forwardRef","useRippleSurface","Box","RippleBox","props","forwardedRef","as","__css","onKeyDown","onPointerDown","baseOpacity","hoverOpacity","focusOpacity","pressedOpacity","rippleColor","center","disabled","rippleEnabled","style","otherProps","rippleCss","rippleProps"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,gBAAT,QAAiC,oBAAjC;AAEA,SAASC,GAAT,QAAoB,QAApB;;AAOA,OAAO,IAAMC,SAIG,gBAAGH,UAAU,CAC3B,SAASG,SAAT,CAAmBC,KAAnB,EAA0BC,YAA1B,EAAwC;AAAA,kBAkBlCD,KAlBkC,CAEpCE,EAFoC;AAAA,MAEpCA,EAFoC,0BAE/B,KAF+B;AAAA,MAGpCC,KAHoC,GAkBlCH,KAlBkC,CAGpCG,KAHoC;AAAA,MAMpCC,SANoC,GAkBlCJ,KAlBkC,CAMpCI,SANoC;AAAA,MAOpCC,aAPoC,GAkBlCL,KAlBkC,CAOpCK,aAPoC;AAAA,MAQpCC,WARoC,GAkBlCN,KAlBkC,CAQpCM,WARoC;AAAA,MASpCC,YAToC,GAkBlCP,KAlBkC,CASpCO,YAToC;AAAA,MAUpCC,YAVoC,GAkBlCR,KAlBkC,CAUpCQ,YAVoC;AAAA,MAWpCC,cAXoC,GAkBlCT,KAlBkC,CAWpCS,cAXoC;AAAA,MAYpCC,WAZoC,GAkBlCV,KAlBkC,CAYpCU,WAZoC;AAAA,MAapCC,MAboC,GAkBlCX,KAlBkC,CAapCW,MAboC;AAAA,MAcpCC,QAdoC,GAkBlCZ,KAlBkC,CAcpCY,QAdoC;AAAA,MAepCC,aAfoC,GAkBlCb,KAlBkC,CAepCa,aAfoC;AAAA,MAgBpCC,KAhBoC,GAkBlCd,KAlBkC,CAgBpCc,KAhBoC;AAAA,MAiBjCC,UAjBiC,4BAkBlCf,KAlBkC;;AAAA,0BAoBOH,gBAAgB,CAACG,KAAD,CApBvB;AAAA,MAoBvBgB,SApBuB,qBAoB9Bb,KApB8B;AAAA,MAoBTc,WApBS;;AAsBtC,sBACE,KAAC,GAAD;AACE,IAAA,EAAE,EAAEf,EADN;AAEE,IAAA,GAAG,EAAED,YAFP;AAGE,IAAA,KAAK,eAAOe,SAAP,EAAqBb,KAArB,CAHP;AAIQS,IAAAA,QAAQ,EAARA;AAJR,KAKMG,UALN,EAMME,WANN,EADF;AAUD,CAjC0B,CAJtB","sourcesContent":["import type { HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport type { UseRippleSurfaceOptions } from './useRippleSurface';\nimport { useRippleSurface } from './useRippleSurface';\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\n\nexport type RippleBoxProps<\n H extends HTMLElement = HTMLDivElement,\n Attr = HTMLAttributes<H>\n> = BoxProps<H, Attr> & UseRippleSurfaceOptions<H>;\n\nexport const RippleBox: <\n Props = RippleBoxProps<HTMLDivElement, HTMLAttributes<HTMLDivElement>>\n>(\n props: Props\n) => JSX.Element = forwardRef<HTMLDivElement, RippleBoxProps>(\n function RippleBox(props, forwardedRef) {\n const {\n as = 'div',\n __css,\n // Cherry picking the ripple props to prevent it from falling down to\n // the Box component\n onKeyDown, // eslint-disable-line @typescript-eslint/no-unused-vars\n onPointerDown, // eslint-disable-line @typescript-eslint/no-unused-vars\n baseOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n hoverOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n focusOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n pressedOpacity, // eslint-disable-line @typescript-eslint/no-unused-vars\n rippleColor, // eslint-disable-line @typescript-eslint/no-unused-vars\n center, // eslint-disable-line @typescript-eslint/no-unused-vars\n disabled, // eslint-disable-line @typescript-eslint/no-unused-vars\n rippleEnabled, // eslint-disable-line @typescript-eslint/no-unused-vars\n style, // eslint-disable-line @typescript-eslint/no-unused-vars\n ...otherProps\n } = props;\n\n const { __css: rippleCss, ...rippleProps } = useRippleSurface(props);\n\n return (\n <Box\n as={as}\n ref={forwardedRef}\n __css={{ ...rippleCss, ...__css }}\n {...{ disabled }}\n {...otherProps}\n {...rippleProps}\n />\n );\n }\n) as any;\n"],"file":"RippleBox.js"}
@@ -1,8 +1,8 @@
1
- import type * as React from 'react';
1
+ import type { KeyboardEvent as ReactKeyboardEvent, PointerEvent } from 'react';
2
2
  import type { RippleOptions } from './useRipple';
3
3
  export declare function useRippleHandlers<T extends HTMLElement>(opts: RippleOptions): {
4
4
  style: {};
5
5
  animation: string | undefined;
6
- handleKeyDown: (e: React.KeyboardEvent<T>) => void;
7
- handlePointerDown: (e: React.PointerEvent<T>) => void;
6
+ handleKeyDown: (e: ReactKeyboardEvent<T>) => void;
7
+ handlePointerDown: (e: PointerEvent<T>) => void;
8
8
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Ripple/useRippleHandlers.ts"],"names":["useRef","useRipple","disabledHandler","useRippleHandlers","opts","activate","deactivate","rest","handlePointerUp","window","removeEventListener","handlePointerDown","e","rect","currentTarget","getBoundingClientRect","clientX","clientY","center","addEventListener","keyReleased","handleKeyUp","key","current","handleKeyDown","disabled"],"mappings":";;AAAA,SAASA,MAAT,QAAuB,OAAvB;AAIA,SAASC,SAAT,QAA0B,aAA1B;;AAEA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5B;AACD,CAFD;;AAIA,OAAO,SAASC,iBAAT,CAAkDC,IAAlD,EAAuE;AAAA,mBAClCH,SAAS,CAACG,IAAD,CADyB;AAAA,MACpEC,QADoE,cACpEA,QADoE;AAAA,MAC1DC,UAD0D,cAC1DA,UAD0D;AAAA,MAC3CC,IAD2C,qEAG5E;;;AACA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5BC,IAAAA,MAAM,CAACC,mBAAP,CAA2B,WAA3B,EAAwCF,eAAxC;AACAC,IAAAA,MAAM,CAACC,mBAAP,CAA2B,eAA3B,EAA4CF,eAA5C;AACAF,IAAAA,UAAU;AACX,GAJD;;AAMA,MAAMK,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,CAAD,EAA8B;AACtD,QAAMC,IAAI,GAAGD,CAAC,CAACE,aAAF,CAAgBC,qBAAhB,EAAb;AACAV,IAAAA,QAAQ,CAACQ,IAAD,EAAOD,CAAC,CAACI,OAAT,EAAkBJ,CAAC,CAACK,OAApB,EAA6Bb,IAAI,CAACc,MAAlC,CAAR;AACAT,IAAAA,MAAM,CAACU,gBAAP,CAAwB,WAAxB,EAAqCX,eAArC;AACAC,IAAAA,MAAM,CAACU,gBAAP,CAAwB,eAAxB,EAAyCX,eAAzC;AACD,GALD,CAV4E,CAiB5E;;;AACA,MAAMY,WAAW,GAAGpB,MAAM,CAAC,IAAD,CAA1B;;AACA,MAAMqB,WAAW,GAAG,SAAdA,WAAc,CAACT,CAAD,EAAsB;AACxC,QAAIA,CAAC,CAACU,GAAF,KAAU,GAAd,EAAmB;AACjB;AACD;;AACDb,IAAAA,MAAM,CAACC,mBAAP,CAA2B,OAA3B,EAAoCW,WAApC;AACAD,IAAAA,WAAW,CAACG,OAAZ,GAAsB,IAAtB;AACAjB,IAAAA,UAAU;AACX,GAPD;;AASA,MAAMkB,aAAa,GAAG,SAAhBA,aAAgB,CAACZ,CAAD,EAA+B;AACnD,QAAIA,CAAC,CAACU,GAAF,KAAU,GAAV,IAAiB,CAACF,WAAW,CAACG,OAAlC,EAA2C;AACzC;AACD;;AACD,QAAMV,IAAI,GAAGD,CAAC,CAACE,aAAF,CAAgBC,qBAAhB,EAAb;AACAK,IAAAA,WAAW,CAACG,OAAZ,GAAsB,KAAtB;AACAlB,IAAAA,QAAQ,CAACQ,IAAD,EAAO,CAAP,EAAU,CAAV,EAAa,IAAb,CAAR;AACAJ,IAAAA,MAAM,CAACU,gBAAP,CAAwB,OAAxB,EAAiCE,WAAjC;AACD,GARD;;AAUA;AACEG,IAAAA,aAAa,EAAEpB,IAAI,CAACqB,QAAL,GAAgBvB,eAAhB,GAAkCsB,aADnD;AAEEb,IAAAA,iBAAiB,EAAEP,IAAI,CAACqB,QAAL,GAAgBvB,eAAhB,GAAkCS;AAFvD,KAGKJ,IAHL;AAKD","sourcesContent":["import { useRef } from 'react';\nimport type * as React from 'react';\n\nimport type { RippleOptions } from './useRipple';\nimport { useRipple } from './useRipple';\n\nconst disabledHandler = () => {\n /* When disabled, we don't wanna handle neither keyDown, nor pointerDown */\n};\n\nexport function useRippleHandlers<T extends HTMLElement>(opts: RippleOptions) {\n const { activate, deactivate, ...rest } = useRipple(opts);\n\n // Pointer activation\n const handlePointerUp = () => {\n window.removeEventListener('pointerup', handlePointerUp);\n window.removeEventListener('pointercancel', handlePointerUp);\n deactivate();\n };\n\n const handlePointerDown = (e: React.PointerEvent<T>) => {\n const rect = e.currentTarget.getBoundingClientRect();\n activate(rect, e.clientX, e.clientY, opts.center);\n window.addEventListener('pointerup', handlePointerUp);\n window.addEventListener('pointercancel', handlePointerUp);\n };\n\n // Keyboard activation\n const keyReleased = useRef(true);\n const handleKeyUp = (e: KeyboardEvent) => {\n if (e.key !== ' ') {\n return;\n }\n window.removeEventListener('keyup', handleKeyUp);\n keyReleased.current = true;\n deactivate();\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<T>) => {\n if (e.key !== ' ' || !keyReleased.current) {\n return;\n }\n const rect = e.currentTarget.getBoundingClientRect();\n keyReleased.current = false;\n activate(rect, 0, 0, true);\n window.addEventListener('keyup', handleKeyUp);\n };\n\n return {\n handleKeyDown: opts.disabled ? disabledHandler : handleKeyDown,\n handlePointerDown: opts.disabled ? disabledHandler : handlePointerDown,\n ...rest,\n };\n}\n"],"file":"useRippleHandlers.js"}
1
+ {"version":3,"sources":["../../../src/Ripple/useRippleHandlers.ts"],"names":["useRef","useRipple","disabledHandler","useRippleHandlers","opts","activate","deactivate","rest","handlePointerUp","window","removeEventListener","handlePointerDown","e","rect","currentTarget","getBoundingClientRect","clientX","clientY","center","addEventListener","keyReleased","handleKeyUp","key","current","handleKeyDown","disabled"],"mappings":";;AACA,SAASA,MAAT,QAAuB,OAAvB;AAGA,SAASC,SAAT,QAA0B,aAA1B;;AAEA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5B;AACD,CAFD;;AAIA,OAAO,SAASC,iBAAT,CAAkDC,IAAlD,EAAuE;AAAA,mBAClCH,SAAS,CAACG,IAAD,CADyB;AAAA,MACpEC,QADoE,cACpEA,QADoE;AAAA,MAC1DC,UAD0D,cAC1DA,UAD0D;AAAA,MAC3CC,IAD2C,qEAG5E;;;AACA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,GAAM;AAC5BC,IAAAA,MAAM,CAACC,mBAAP,CAA2B,WAA3B,EAAwCF,eAAxC;AACAC,IAAAA,MAAM,CAACC,mBAAP,CAA2B,eAA3B,EAA4CF,eAA5C;AACAF,IAAAA,UAAU;AACX,GAJD;;AAMA,MAAMK,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,CAAD,EAAwB;AAChD,QAAMC,IAAI,GAAGD,CAAC,CAACE,aAAF,CAAgBC,qBAAhB,EAAb;AACAV,IAAAA,QAAQ,CAACQ,IAAD,EAAOD,CAAC,CAACI,OAAT,EAAkBJ,CAAC,CAACK,OAApB,EAA6Bb,IAAI,CAACc,MAAlC,CAAR;AACAT,IAAAA,MAAM,CAACU,gBAAP,CAAwB,WAAxB,EAAqCX,eAArC;AACAC,IAAAA,MAAM,CAACU,gBAAP,CAAwB,eAAxB,EAAyCX,eAAzC;AACD,GALD,CAV4E,CAiB5E;;;AACA,MAAMY,WAAW,GAAGpB,MAAM,CAAC,IAAD,CAA1B;;AACA,MAAMqB,WAAW,GAAG,SAAdA,WAAc,CAACT,CAAD,EAAsB;AACxC,QAAIA,CAAC,CAACU,GAAF,KAAU,GAAd,EAAmB;AACjB;AACD;;AACDb,IAAAA,MAAM,CAACC,mBAAP,CAA2B,OAA3B,EAAoCW,WAApC;AACAD,IAAAA,WAAW,CAACG,OAAZ,GAAsB,IAAtB;AACAjB,IAAAA,UAAU;AACX,GAPD;;AASA,MAAMkB,aAAa,GAAG,SAAhBA,aAAgB,CAACZ,CAAD,EAA8B;AAClD,QAAIA,CAAC,CAACU,GAAF,KAAU,GAAV,IAAiB,CAACF,WAAW,CAACG,OAAlC,EAA2C;AACzC;AACD;;AACD,QAAMV,IAAI,GAAGD,CAAC,CAACE,aAAF,CAAgBC,qBAAhB,EAAb;AACAK,IAAAA,WAAW,CAACG,OAAZ,GAAsB,KAAtB;AACAlB,IAAAA,QAAQ,CAACQ,IAAD,EAAO,CAAP,EAAU,CAAV,EAAa,IAAb,CAAR;AACAJ,IAAAA,MAAM,CAACU,gBAAP,CAAwB,OAAxB,EAAiCE,WAAjC;AACD,GARD;;AAUA;AACEG,IAAAA,aAAa,EAAEpB,IAAI,CAACqB,QAAL,GAAgBvB,eAAhB,GAAkCsB,aADnD;AAEEb,IAAAA,iBAAiB,EAAEP,IAAI,CAACqB,QAAL,GAAgBvB,eAAhB,GAAkCS;AAFvD,KAGKJ,IAHL;AAKD","sourcesContent":["import type { KeyboardEvent as ReactKeyboardEvent, PointerEvent } from 'react';\nimport { useRef } from 'react';\n\nimport type { RippleOptions } from './useRipple';\nimport { useRipple } from './useRipple';\n\nconst disabledHandler = () => {\n /* When disabled, we don't wanna handle neither keyDown, nor pointerDown */\n};\n\nexport function useRippleHandlers<T extends HTMLElement>(opts: RippleOptions) {\n const { activate, deactivate, ...rest } = useRipple(opts);\n\n // Pointer activation\n const handlePointerUp = () => {\n window.removeEventListener('pointerup', handlePointerUp);\n window.removeEventListener('pointercancel', handlePointerUp);\n deactivate();\n };\n\n const handlePointerDown = (e: PointerEvent<T>) => {\n const rect = e.currentTarget.getBoundingClientRect();\n activate(rect, e.clientX, e.clientY, opts.center);\n window.addEventListener('pointerup', handlePointerUp);\n window.addEventListener('pointercancel', handlePointerUp);\n };\n\n // Keyboard activation\n const keyReleased = useRef(true);\n const handleKeyUp = (e: KeyboardEvent) => {\n if (e.key !== ' ') {\n return;\n }\n window.removeEventListener('keyup', handleKeyUp);\n keyReleased.current = true;\n deactivate();\n };\n\n const handleKeyDown = (e: ReactKeyboardEvent<T>) => {\n if (e.key !== ' ' || !keyReleased.current) {\n return;\n }\n const rect = e.currentTarget.getBoundingClientRect();\n keyReleased.current = false;\n activate(rect, 0, 0, true);\n window.addEventListener('keyup', handleKeyUp);\n };\n\n return {\n handleKeyDown: opts.disabled ? disabledHandler : handleKeyDown,\n handlePointerDown: opts.disabled ? disabledHandler : handlePointerDown,\n ...rest,\n };\n}\n"],"file":"useRippleHandlers.js"}
@@ -1,4 +1,4 @@
1
- import type { CSSProperties } from 'react';
1
+ import type { CSSProperties, KeyboardEventHandler, PointerEventHandler } from 'react';
2
2
  export interface UseRippleSurfaceOptions<T extends HTMLElement> {
3
3
  baseOpacity?: number;
4
4
  hoverOpacity?: number;
@@ -9,10 +9,10 @@ export interface UseRippleSurfaceOptions<T extends HTMLElement> {
9
9
  center?: boolean;
10
10
  disabled?: boolean;
11
11
  style?: CSSProperties;
12
- onPointerDown?: React.PointerEventHandler<T>;
13
- onKeyDown?: React.KeyboardEventHandler<T>;
12
+ onPointerDown?: PointerEventHandler<T>;
13
+ onKeyDown?: KeyboardEventHandler<T>;
14
14
  }
15
- export declare function useRippleSurface<T extends HTMLElement>(opts: UseRippleSurfaceOptions<T>): {
15
+ export declare function useRippleSurface<T extends HTMLElement>(opts?: UseRippleSurfaceOptions<T>): {
16
16
  style: {
17
17
  alignContent?: import("csstype").Property.AlignContent | undefined;
18
18
  alignItems?: import("csstype").Property.AlignItems | undefined;
@@ -782,5 +782,5 @@ export declare function useRippleSurface<T extends HTMLElement>(opts: UseRippleS
782
782
  };
783
783
  onKeyDown: import("@basic-ui/core").CustomEventHandler<import("react").KeyboardEvent<T>, []>;
784
784
  onPointerDown: import("@basic-ui/core").CustomEventHandler<import("react").PointerEvent<T>, []>;
785
- __css: Record<string, import("@styled-system/css").SystemStyleObject | import("@styled-system/css").ResponsiveStyleValue<string | number> | Record<string, import("@styled-system/css").SystemStyleObject | import("@styled-system/css").ResponsiveStyleValue<string | number>>>;
785
+ __css: import("@styled-system/css").SystemCssProperties | Record<string, import("@styled-system/css").SystemStyleObject | import("@styled-system/css").ResponsiveStyleValue<string | number> | Record<string, import("@styled-system/css").SystemStyleObject | import("@styled-system/css").ResponsiveStyleValue<string | number>>>;
786
786
  };
@@ -1,14 +1,14 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ import { useMemo } from 'react';
4
5
  import { get } from '@styled-system/css';
5
6
  import { wrapEvent } from '@basic-ui/core';
6
7
  import { useTheme } from '../theme';
7
8
  import { rippleStyle } from './Ripple';
8
9
  import { useRippleHandlers } from './useRippleHandlers';
9
- export function useRippleSurface(opts) {
10
- var _extends2;
11
-
10
+ export function useRippleSurface() {
11
+ var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
12
12
  var _opts$baseOpacity = opts.baseOpacity,
13
13
  baseOpacity = _opts$baseOpacity === void 0 ? 0 : _opts$baseOpacity,
14
14
  _opts$hoverOpacity = opts.hoverOpacity,
@@ -48,62 +48,65 @@ export function useRippleSurface(opts) {
48
48
  animationStyle = _useRippleHandlers.style,
49
49
  animation = _useRippleHandlers.animation;
50
50
 
51
- var css = _extends({
52
- overflow: 'hidden',
53
- position: 'relative',
54
- cursor: 'pointer',
55
- // fix overflow: hidden + borderRadius in Safari
56
- // https://gist.github.com/ayamflow/b602ab436ac9f05660d9c15190f4fd7b#gistcomment-2359479
57
- willChange: 'transform,opacity',
58
- WebkitTapHighlightColor: 'transparent',
59
- // ripple overlay
60
- '&::before': {
61
- backgroundColor: rippleColor,
62
- boxSizing: 'content-box',
63
- position: 'absolute',
64
- content: '""',
65
- opacity: baseOpacity,
66
- pointerEvents: 'none',
67
- top: '0',
68
- left: '0',
69
- width: '100%',
70
- height: '100%',
71
- transition: 'opacity 75ms linear'
72
- },
73
- '&:hover::before': {
74
- opacity: hoverOpacity
75
- },
76
- '&:focus-visible::before': {
77
- opacity: focusOpacity
78
- }
79
- }, !rippleEnabled && {
80
- '&:active::before': {
81
- opacity: pressedOpacity
82
- }
83
- }, {
84
- '&[aria-pressed="true"]::before': {
85
- opacity: baseOpacity + pressedOpacity
86
- },
87
- '&[aria-pressed="true"]:hover::before': {
88
- opacity: pressedOpacity + hoverOpacity
89
- },
90
- '&[aria-pressed="true"]:focus-visible::before': {
91
- opacity: pressedOpacity + focusOpacity
92
- }
93
- }, !rippleEnabled && {
94
- '&[aria-pressed="true"]:active::before': {
95
- opacity: pressedOpacity + pressedOpacity
96
- }
97
- }, (_extends2 = {}, _defineProperty(_extends2, '&:disabled::before,&:disabled:hover::before,&:disabled:focus::before,&:disabled:active::before,' + '&[data-disabled]::before,&[data-disabled]:hover::before,&[data-disabled]:focus::before,' + '&[data-disabled]:active::before,&:disabled[aria-pressed="true"]::before', {
98
- opacity: 0
99
- }), _defineProperty(_extends2, '&:disabled,&[data-disabled]', {
100
- cursor: 'default'
101
- }), _extends2), rippleEnabled && {
102
- '&::after': _extends({}, rippleStyle({
103
- animation: animation
104
- }))
105
- });
51
+ var css = useMemo(function () {
52
+ var _extends2;
106
53
 
54
+ return _extends({
55
+ overflow: 'hidden',
56
+ position: 'relative',
57
+ cursor: 'pointer',
58
+ // fix overflow: hidden + borderRadius in Safari
59
+ // https://gist.github.com/ayamflow/b602ab436ac9f05660d9c15190f4fd7b#gistcomment-2359479
60
+ willChange: 'transform,opacity',
61
+ WebkitTapHighlightColor: 'transparent',
62
+ // ripple overlay
63
+ '&::before': {
64
+ backgroundColor: rippleColor,
65
+ boxSizing: 'content-box',
66
+ position: 'absolute',
67
+ content: '""',
68
+ opacity: baseOpacity,
69
+ pointerEvents: 'none',
70
+ top: '0',
71
+ left: '0',
72
+ width: '100%',
73
+ height: '100%',
74
+ transition: 'opacity 75ms linear'
75
+ },
76
+ '&:hover::before': {
77
+ opacity: hoverOpacity
78
+ },
79
+ '&:focus-visible::before': {
80
+ opacity: focusOpacity
81
+ }
82
+ }, !rippleEnabled && {
83
+ '&:active::before': {
84
+ opacity: pressedOpacity
85
+ }
86
+ }, {
87
+ '&[aria-pressed="true"]::before': {
88
+ opacity: baseOpacity + pressedOpacity
89
+ },
90
+ '&[aria-pressed="true"]:hover::before': {
91
+ opacity: pressedOpacity + hoverOpacity
92
+ },
93
+ '&[aria-pressed="true"]:focus-visible::before': {
94
+ opacity: pressedOpacity + focusOpacity
95
+ }
96
+ }, !rippleEnabled && {
97
+ '&[aria-pressed="true"]:active::before': {
98
+ opacity: pressedOpacity + pressedOpacity
99
+ }
100
+ }, (_extends2 = {}, _defineProperty(_extends2, '&:disabled::before,&:disabled:hover::before,&:disabled:focus::before,&:disabled:active::before,' + '&[data-disabled]::before,&[data-disabled]:hover::before,&[data-disabled]:focus::before,' + '&[data-disabled]:active::before,&:disabled[aria-pressed="true"]::before', {
101
+ opacity: 0
102
+ }), _defineProperty(_extends2, '&:disabled,&[data-disabled]', {
103
+ cursor: 'default'
104
+ }), _extends2), rippleEnabled && {
105
+ '&::after': _extends({}, rippleStyle({
106
+ animation: animation
107
+ }))
108
+ });
109
+ }, [animation, baseOpacity, focusOpacity, hoverOpacity, pressedOpacity, rippleColor, rippleEnabled]);
107
110
  return {
108
111
  style: _extends({}, animationStyle, style),
109
112
  onKeyDown: wrapEvent(onKeyDown, handleKeyDown),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Ripple/useRippleSurface.ts"],"names":["get","wrapEvent","useTheme","rippleStyle","useRippleHandlers","useRippleSurface","opts","baseOpacity","hoverOpacity","focusOpacity","pressedOpacity","rippleColor","onKeyDown","onPointerDown","style","disabled","rippleEnabled","rippleProps","theme","opacity","Number","backgroundColor","handleKeyDown","handlePointerDown","animationStyle","animation","css","overflow","position","cursor","willChange","WebkitTapHighlightColor","boxSizing","content","pointerEvents","top","left","width","height","transition","__css"],"mappings":"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","sourcesContent":["import type { CSSProperties } from 'react';\nimport { get } from '@styled-system/css';\nimport { wrapEvent } from '@basic-ui/core';\n\nimport { useTheme } from '../theme';\nimport { rippleStyle } from './Ripple';\nimport { useRippleHandlers } from './useRippleHandlers';\nimport type { SxStyleProp } from '../Box';\n\nexport interface UseRippleSurfaceOptions<T extends HTMLElement> {\n baseOpacity?: number;\n hoverOpacity?: number;\n focusOpacity?: number;\n pressedOpacity?: number;\n rippleColor?: string;\n rippleEnabled?: boolean;\n center?: boolean;\n disabled?: boolean;\n style?: CSSProperties;\n onPointerDown?: React.PointerEventHandler<T>;\n onKeyDown?: React.KeyboardEventHandler<T>;\n}\n\nexport function useRippleSurface<T extends HTMLElement>(\n opts: UseRippleSurfaceOptions<T>\n) {\n let {\n // eslint-disable-next-line prefer-const\n baseOpacity = 0,\n hoverOpacity = 0.04,\n focusOpacity = 0.12,\n pressedOpacity = 0.12,\n rippleColor = 'on.surface',\n } = opts;\n const {\n onKeyDown,\n onPointerDown,\n style = {},\n disabled,\n rippleEnabled = true,\n ...rippleProps\n } = opts;\n\n const theme = useTheme();\n rippleColor = get(theme, `colors.${rippleColor}`) || rippleColor;\n\n if (disabled) {\n hoverOpacity = baseOpacity;\n focusOpacity = baseOpacity;\n pressedOpacity = baseOpacity;\n }\n\n const {\n handleKeyDown,\n handlePointerDown,\n style: animationStyle,\n animation,\n } = useRippleHandlers({\n opacity: Number(pressedOpacity),\n backgroundColor: rippleColor,\n disabled,\n ...rippleProps,\n });\n\n const css: SxStyleProp = {\n overflow: 'hidden',\n position: 'relative',\n cursor: 'pointer',\n // fix overflow: hidden + borderRadius in Safari\n // https://gist.github.com/ayamflow/b602ab436ac9f05660d9c15190f4fd7b#gistcomment-2359479\n willChange: 'transform,opacity',\n WebkitTapHighlightColor: 'transparent',\n // ripple overlay\n '&::before': {\n backgroundColor: rippleColor,\n boxSizing: 'content-box',\n position: 'absolute',\n content: '\"\"',\n opacity: baseOpacity,\n pointerEvents: 'none',\n top: '0',\n left: '0',\n width: '100%',\n height: '100%',\n transition: 'opacity 75ms linear',\n },\n '&:hover::before': {\n opacity: hoverOpacity,\n },\n '&:focus-visible::before': {\n opacity: focusOpacity,\n },\n ...(!rippleEnabled && {\n '&:active::before': {\n opacity: pressedOpacity,\n },\n }),\n '&[aria-pressed=\"true\"]::before': {\n opacity: baseOpacity + pressedOpacity,\n },\n '&[aria-pressed=\"true\"]:hover::before': {\n opacity: pressedOpacity + hoverOpacity,\n },\n '&[aria-pressed=\"true\"]:focus-visible::before': {\n opacity: pressedOpacity + focusOpacity,\n },\n ...(!rippleEnabled && {\n '&[aria-pressed=\"true\"]:active::before': {\n opacity: pressedOpacity + pressedOpacity,\n },\n }),\n ['&:disabled::before,&:disabled:hover::before,&:disabled:focus::before,&:disabled:active::before,' +\n '&[data-disabled]::before,&[data-disabled]:hover::before,&[data-disabled]:focus::before,' +\n '&[data-disabled]:active::before,&:disabled[aria-pressed=\"true\"]::before']:\n {\n opacity: 0,\n },\n '&:disabled,&[data-disabled]': {\n cursor: 'default',\n },\n // ripple\n ...(rippleEnabled && {\n '&::after': { ...rippleStyle({ animation }) },\n }),\n };\n\n return {\n style: { ...animationStyle, ...style },\n onKeyDown: wrapEvent(onKeyDown, handleKeyDown),\n onPointerDown: wrapEvent(onPointerDown, handlePointerDown),\n __css: css,\n };\n}\n"],"file":"useRippleSurface.js"}
1
+ {"version":3,"sources":["../../../src/Ripple/useRippleSurface.ts"],"names":["useMemo","get","wrapEvent","useTheme","rippleStyle","useRippleHandlers","useRippleSurface","opts","baseOpacity","hoverOpacity","focusOpacity","pressedOpacity","rippleColor","onKeyDown","onPointerDown","style","disabled","rippleEnabled","rippleProps","theme","opacity","Number","backgroundColor","handleKeyDown","handlePointerDown","animationStyle","animation","css","overflow","position","cursor","willChange","WebkitTapHighlightColor","boxSizing","content","pointerEvents","top","left","width","height","transition","__css"],"mappings":"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","sourcesContent":["import type {\n CSSProperties,\n KeyboardEventHandler,\n PointerEventHandler,\n} from 'react';\nimport { useMemo } from 'react';\nimport { get } from '@styled-system/css';\nimport { wrapEvent } from '@basic-ui/core';\n\nimport { useTheme } from '../theme';\nimport { rippleStyle } from './Ripple';\nimport { useRippleHandlers } from './useRippleHandlers';\nimport type { SxStyleProp } from '../Box';\n\nexport interface UseRippleSurfaceOptions<T extends HTMLElement> {\n baseOpacity?: number;\n hoverOpacity?: number;\n focusOpacity?: number;\n pressedOpacity?: number;\n rippleColor?: string;\n rippleEnabled?: boolean;\n center?: boolean;\n disabled?: boolean;\n style?: CSSProperties;\n onPointerDown?: PointerEventHandler<T>;\n onKeyDown?: KeyboardEventHandler<T>;\n}\n\nexport function useRippleSurface<T extends HTMLElement>(\n opts: UseRippleSurfaceOptions<T> = {}\n) {\n let {\n // eslint-disable-next-line prefer-const\n baseOpacity = 0,\n hoverOpacity = 0.04,\n focusOpacity = 0.12,\n pressedOpacity = 0.12,\n rippleColor = 'on.surface',\n } = opts;\n const {\n onKeyDown,\n onPointerDown,\n style = {},\n disabled,\n rippleEnabled = true,\n ...rippleProps\n } = opts;\n\n const theme = useTheme();\n rippleColor = get(theme, `colors.${rippleColor}`) || rippleColor;\n\n if (disabled) {\n hoverOpacity = baseOpacity;\n focusOpacity = baseOpacity;\n pressedOpacity = baseOpacity;\n }\n\n const {\n handleKeyDown,\n handlePointerDown,\n style: animationStyle,\n animation,\n } = useRippleHandlers({\n opacity: Number(pressedOpacity),\n backgroundColor: rippleColor,\n disabled,\n ...rippleProps,\n });\n\n const css: SxStyleProp = useMemo(\n () => ({\n overflow: 'hidden',\n position: 'relative',\n cursor: 'pointer',\n // fix overflow: hidden + borderRadius in Safari\n // https://gist.github.com/ayamflow/b602ab436ac9f05660d9c15190f4fd7b#gistcomment-2359479\n willChange: 'transform,opacity',\n WebkitTapHighlightColor: 'transparent',\n // ripple overlay\n '&::before': {\n backgroundColor: rippleColor,\n boxSizing: 'content-box',\n position: 'absolute',\n content: '\"\"',\n opacity: baseOpacity,\n pointerEvents: 'none',\n top: '0',\n left: '0',\n width: '100%',\n height: '100%',\n transition: 'opacity 75ms linear',\n },\n '&:hover::before': {\n opacity: hoverOpacity,\n },\n '&:focus-visible::before': {\n opacity: focusOpacity,\n },\n ...(!rippleEnabled && {\n '&:active::before': {\n opacity: pressedOpacity,\n },\n }),\n '&[aria-pressed=\"true\"]::before': {\n opacity: baseOpacity + pressedOpacity,\n },\n '&[aria-pressed=\"true\"]:hover::before': {\n opacity: pressedOpacity + hoverOpacity,\n },\n '&[aria-pressed=\"true\"]:focus-visible::before': {\n opacity: pressedOpacity + focusOpacity,\n },\n ...(!rippleEnabled && {\n '&[aria-pressed=\"true\"]:active::before': {\n opacity: pressedOpacity + pressedOpacity,\n },\n }),\n ['&:disabled::before,&:disabled:hover::before,&:disabled:focus::before,&:disabled:active::before,' +\n '&[data-disabled]::before,&[data-disabled]:hover::before,&[data-disabled]:focus::before,' +\n '&[data-disabled]:active::before,&:disabled[aria-pressed=\"true\"]::before']:\n {\n opacity: 0,\n },\n '&:disabled,&[data-disabled]': {\n cursor: 'default',\n },\n // ripple\n ...(rippleEnabled && {\n '&::after': { ...rippleStyle({ animation }) },\n }),\n }),\n [\n animation,\n baseOpacity,\n focusOpacity,\n hoverOpacity,\n pressedOpacity,\n rippleColor,\n rippleEnabled,\n ]\n );\n\n return {\n style: { ...animationStyle, ...style },\n onKeyDown: wrapEvent(onKeyDown, handleKeyDown),\n onPointerDown: wrapEvent(onPointerDown, handlePointerDown),\n __css: css,\n };\n}\n"],"file":"useRippleSurface.js"}
@@ -1,18 +1,18 @@
1
- import * as React from 'react';
1
+ import type { SelectHTMLAttributes, ReactNode, ChangeEvent } from 'react';
2
2
  import type { Theme } from '../theme';
3
3
  import type { BoxProps } from '../Box';
4
- export interface SelectProps extends Omit<BoxProps<HTMLSelectElement, React.SelectHTMLAttributes<HTMLSelectElement>>, 'value' | 'defaultValue' | 'onChange'> {
4
+ export interface SelectProps extends Omit<BoxProps<HTMLSelectElement, SelectHTMLAttributes<HTMLSelectElement>>, 'value' | 'defaultValue' | 'onChange'> {
5
5
  variant?: 'outlined' | 'filled';
6
6
  color?: 'primary' | 'secondary';
7
- label?: React.ReactNode;
7
+ label?: ReactNode;
8
8
  helperText?: string;
9
9
  defaultValue?: string;
10
10
  value?: string;
11
11
  native?: boolean;
12
12
  theme?: Theme;
13
13
  error?: boolean | string;
14
- onChange?: (e: React.ChangeEvent<HTMLSelectElement>, value: string) => void;
14
+ onChange?: (e: ChangeEvent<HTMLSelectElement>, value: string) => void;
15
15
  renderValue?: (value?: string) => string | undefined;
16
- leadingIcon?: React.ReactNode;
16
+ leadingIcon?: ReactNode;
17
17
  }
18
- export declare const Select: React.ForwardRefExoticComponent<Pick<SelectProps, "children" | "form" | "label" | "p" | "slot" | "style" | "title" | "alignContent" | "alignItems" | "alignSelf" | "backgroundColor" | "backgroundImage" | "backgroundPosition" | "backgroundRepeat" | "backgroundSize" | "borderBottomColor" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderBottomStyle" | "borderBottomWidth" | "borderLeftColor" | "borderLeftStyle" | "borderLeftWidth" | "borderRightColor" | "borderRightStyle" | "borderRightWidth" | "borderTopColor" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderTopStyle" | "borderTopWidth" | "bottom" | "boxShadow" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "order" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "textAlign" | "textShadow" | "top" | "translate" | "verticalAlign" | "width" | "zIndex" | "background" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderStyle" | "borderTop" | "borderWidth" | "flex" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "gridColumnGap" | "gridGap" | "gridRowGap" | "value" | "hidden" | "as" | "sx" | "__css" | "variant" | "tx" | "theme" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "size" | "bg" | "borderX" | "borderY" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "name" | "disabled" | "autoFocus" | "error" | "multiple" | "autoComplete" | "leadingIcon" | "required" | "helperText" | "native" | "renderValue"> & React.RefAttributes<HTMLButtonElement | HTMLSelectElement>>;
18
+ export declare const Select: import("react").ForwardRefExoticComponent<Pick<SelectProps, "children" | "form" | "label" | "p" | "slot" | "style" | "title" | "alignContent" | "alignItems" | "alignSelf" | "backgroundColor" | "backgroundImage" | "backgroundPosition" | "backgroundRepeat" | "backgroundSize" | "borderBottomColor" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderBottomStyle" | "borderBottomWidth" | "borderLeftColor" | "borderLeftStyle" | "borderLeftWidth" | "borderRightColor" | "borderRightStyle" | "borderRightWidth" | "borderTopColor" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderTopStyle" | "borderTopWidth" | "bottom" | "boxShadow" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "fontWeight" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "opacity" | "order" | "overflowX" | "overflowY" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "textAlign" | "textShadow" | "top" | "translate" | "verticalAlign" | "width" | "zIndex" | "background" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderStyle" | "borderTop" | "borderWidth" | "flex" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "gridColumnGap" | "gridGap" | "gridRowGap" | "value" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "hidden" | "theme" | "sx" | "__css" | "variant" | "tx" | "as" | "size" | "borderX" | "borderY" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "error" | "key" | "autoFocus" | "disabled" | "name" | "multiple" | "autoComplete" | "leadingIcon" | "required" | "helperText" | "native" | "renderValue"> & import("react").RefAttributes<HTMLButtonElement | HTMLSelectElement>>;
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
4
  import { forwardRef, useState, useRef, useEffect, useId } from 'react';
5
- import * as React from 'react';
6
5
  import { wrapEvent, assignMultipleRefs, useControlledState } from '@basic-ui/core';
7
6
  import { useTheme } from '../theme';
8
7
  import { Select as SelectComp, SelectButton } from './styledComponents';