@basic-ui/material 1.0.0-alpha.5 → 1.0.0-alpha.50

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 (702) hide show
  1. package/README.md +3 -3
  2. package/build/cjs/index.js +2262 -1469
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/esm/Alert/Alert.d.ts +6 -6
  5. package/build/esm/Alert/Alert.js +3 -2
  6. package/build/esm/Alert/Alert.js.map +1 -1
  7. package/build/esm/Alert/index.d.ts +1 -1
  8. package/build/esm/Alert/index.js.map +1 -1
  9. package/build/esm/AppBar/AppBar.d.ts +9 -9
  10. package/build/esm/AppBar/AppBar.js +6 -5
  11. package/build/esm/AppBar/AppBar.js.map +1 -1
  12. package/build/esm/AppBar/AppBarButton.d.ts +4 -4
  13. package/build/esm/AppBar/AppBarButton.js +2 -1
  14. package/build/esm/AppBar/AppBarButton.js.map +1 -1
  15. package/build/esm/AppBar/context.d.ts +5 -5
  16. package/build/esm/AppBar/context.js.map +1 -1
  17. package/build/esm/AppBar/index.d.ts +3 -3
  18. package/build/esm/AppBar/index.js.map +1 -1
  19. package/build/esm/Badge/Badge.d.ts +6 -6
  20. package/build/esm/Badge/Badge.js +28 -2
  21. package/build/esm/Badge/Badge.js.map +1 -1
  22. package/build/esm/Badge/index.d.ts +1 -1
  23. package/build/esm/Badge/index.js.map +1 -1
  24. package/build/esm/BaseLine/BaseLine.d.ts +1 -1
  25. package/build/esm/BaseLine/BaseLine.js +1 -1
  26. package/build/esm/BaseLine/BaseLine.js.map +1 -1
  27. package/build/esm/BaseLine/index.d.ts +1 -1
  28. package/build/esm/BaseLine/index.js.map +1 -1
  29. package/build/esm/BottomSheet/BottomSheet.d.ts +7 -7
  30. package/build/esm/BottomSheet/BottomSheet.js +2 -1
  31. package/build/esm/BottomSheet/BottomSheet.js.map +1 -1
  32. package/build/esm/BottomSheet/BottomSheetSurface.d.ts +5 -5
  33. package/build/esm/BottomSheet/BottomSheetSurface.js +2 -2
  34. package/build/esm/BottomSheet/BottomSheetSurface.js.map +1 -1
  35. package/build/esm/BottomSheet/index.d.ts +1 -1
  36. package/build/esm/BottomSheet/index.js.map +1 -1
  37. package/build/esm/Box/Box.d.ts +23 -23
  38. package/build/esm/Box/Box.js +1 -2
  39. package/build/esm/Box/Box.js.map +1 -1
  40. package/build/esm/Box/index.d.ts +1 -1
  41. package/build/esm/Box/index.js.map +1 -1
  42. package/build/esm/Button/BaseButton.d.ts +7 -7
  43. package/build/esm/Button/BaseButton.js +6 -5
  44. package/build/esm/Button/BaseButton.js.map +1 -1
  45. package/build/esm/Button/Button.d.ts +13 -13
  46. package/build/esm/Button/Button.js +6 -6
  47. package/build/esm/Button/Button.js.map +1 -1
  48. package/build/esm/Button/ButtonGroup.d.ts +5 -5
  49. package/build/esm/Button/ButtonGroup.js +3 -2
  50. package/build/esm/Button/ButtonGroup.js.map +1 -1
  51. package/build/esm/Button/FilledButton.d.ts +11 -11
  52. package/build/esm/Button/FilledButton.js +22 -9
  53. package/build/esm/Button/FilledButton.js.map +1 -1
  54. package/build/esm/Button/FloatingActionButton.d.ts +7 -7
  55. package/build/esm/Button/FloatingActionButton.js +1 -1
  56. package/build/esm/Button/FloatingActionButton.js.map +1 -1
  57. package/build/esm/Button/IconButton.d.ts +8 -8
  58. package/build/esm/Button/IconButton.js +1 -1
  59. package/build/esm/Button/IconButton.js.map +1 -1
  60. package/build/esm/Button/OutlinedButton.d.ts +4 -4
  61. package/build/esm/Button/OutlinedButton.js +18 -3
  62. package/build/esm/Button/OutlinedButton.js.map +1 -1
  63. package/build/esm/Button/TransparentButton.d.ts +11 -11
  64. package/build/esm/Button/TransparentButton.js +17 -2
  65. package/build/esm/Button/TransparentButton.js.map +1 -1
  66. package/build/esm/Button/context.d.ts +8 -8
  67. package/build/esm/Button/context.js.map +1 -1
  68. package/build/esm/Button/index.d.ts +2 -2
  69. package/build/esm/Button/index.js.map +1 -1
  70. package/build/esm/CheckBox/CheckBox.d.ts +13 -13
  71. package/build/esm/CheckBox/CheckBox.js +6 -5
  72. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  73. package/build/esm/CheckBox/CheckBoxIcon.d.ts +10 -10
  74. package/build/esm/CheckBox/CheckBoxIcon.js +6 -5
  75. package/build/esm/CheckBox/CheckBoxIcon.js.map +1 -1
  76. package/build/esm/CheckBox/CheckPath.d.ts +3 -4
  77. package/build/esm/CheckBox/CheckPath.js +1 -1
  78. package/build/esm/CheckBox/CheckPath.js.map +1 -1
  79. package/build/esm/CheckBox/IndeterminatePath.d.ts +3 -4
  80. package/build/esm/CheckBox/IndeterminatePath.js +1 -1
  81. package/build/esm/CheckBox/IndeterminatePath.js.map +1 -1
  82. package/build/esm/CheckBox/index.d.ts +1 -1
  83. package/build/esm/CheckBox/index.js.map +1 -1
  84. package/build/esm/Chip/ButtonChip.d.ts +9 -9
  85. package/build/esm/Chip/ButtonChip.js +4 -4
  86. package/build/esm/Chip/ButtonChip.js.map +1 -1
  87. package/build/esm/Chip/Chip.d.ts +4 -4
  88. package/build/esm/Chip/Chip.js.map +1 -1
  89. package/build/esm/Chip/ChipBase.d.ts +10 -10
  90. package/build/esm/Chip/ChipBase.js +10 -10
  91. package/build/esm/Chip/ChipBase.js.map +1 -1
  92. package/build/esm/Chip/ChoiceChip.d.ts +10 -10
  93. package/build/esm/Chip/ChoiceChip.js +6 -5
  94. package/build/esm/Chip/ChoiceChip.js.map +1 -1
  95. package/build/esm/Chip/index.d.ts +2 -2
  96. package/build/esm/Chip/index.js.map +1 -1
  97. package/build/esm/Combobox/Combobox.d.ts +23 -23
  98. package/build/esm/Combobox/Combobox.js +25 -16
  99. package/build/esm/Combobox/Combobox.js.map +1 -1
  100. package/build/esm/Combobox/index.d.ts +1 -1
  101. package/build/esm/Combobox/index.js.map +1 -1
  102. package/build/esm/Dialog/Dialog.d.ts +20 -20
  103. package/build/esm/Dialog/Dialog.js +6 -5
  104. package/build/esm/Dialog/Dialog.js.map +1 -1
  105. package/build/esm/Dialog/DialogBackdrop.d.ts +7 -7
  106. package/build/esm/Dialog/DialogBackdrop.js +2 -2
  107. package/build/esm/Dialog/DialogBackdrop.js.map +1 -1
  108. package/build/esm/Dialog/DialogContainer.d.ts +4 -4
  109. package/build/esm/Dialog/DialogContainer.js +2 -1
  110. package/build/esm/Dialog/DialogContainer.js.map +1 -1
  111. package/build/esm/Dialog/DialogSurface.d.ts +7 -7
  112. package/build/esm/Dialog/DialogSurface.js +4 -4
  113. package/build/esm/Dialog/DialogSurface.js.map +1 -1
  114. package/build/esm/Dialog/Scrim.d.ts +4 -4
  115. package/build/esm/Dialog/Scrim.js +2 -1
  116. package/build/esm/Dialog/Scrim.js.map +1 -1
  117. package/build/esm/Dialog/index.d.ts +2 -2
  118. package/build/esm/Dialog/index.js +1 -0
  119. package/build/esm/Dialog/index.js.map +1 -1
  120. package/build/esm/Dialog/useDialogAnimation.d.ts +824 -824
  121. package/build/esm/Dialog/useDialogAnimation.js +6 -4
  122. package/build/esm/Dialog/useDialogAnimation.js.map +1 -1
  123. package/build/esm/Divider/Divider.d.ts +7 -7
  124. package/build/esm/Divider/Divider.js +9 -10
  125. package/build/esm/Divider/Divider.js.map +1 -1
  126. package/build/esm/Divider/index.d.ts +1 -1
  127. package/build/esm/Divider/index.js.map +1 -1
  128. package/build/esm/FloatingLabel/FloatingLabel.d.ts +13 -13
  129. package/build/esm/FloatingLabel/FloatingLabel.js +7 -6
  130. package/build/esm/FloatingLabel/FloatingLabel.js.map +1 -1
  131. package/build/esm/FloatingLabel/index.d.ts +1 -1
  132. package/build/esm/FloatingLabel/index.js.map +1 -1
  133. package/build/esm/LineRipple/LineRipple.d.ts +9 -9
  134. package/build/esm/LineRipple/LineRipple.js +5 -4
  135. package/build/esm/LineRipple/LineRipple.js.map +1 -1
  136. package/build/esm/LineRipple/index.d.ts +1 -1
  137. package/build/esm/LineRipple/index.js.map +1 -1
  138. package/build/esm/Link/Link.d.ts +9 -9
  139. package/build/esm/Link/Link.js +14 -2
  140. package/build/esm/Link/Link.js.map +1 -1
  141. package/build/esm/Link/index.d.ts +1 -1
  142. package/build/esm/Link/index.js.map +1 -1
  143. package/build/esm/List/List.d.ts +8 -8
  144. package/build/esm/List/List.js +2 -2
  145. package/build/esm/List/List.js.map +1 -1
  146. package/build/esm/List/index.d.ts +1 -1
  147. package/build/esm/List/index.js.map +1 -1
  148. package/build/esm/ListItem/ListItem.d.ts +14 -12
  149. package/build/esm/ListItem/ListItem.js +50 -47
  150. package/build/esm/ListItem/ListItem.js.map +1 -1
  151. package/build/esm/ListItem/ListItemText.d.ts +7 -7
  152. package/build/esm/ListItem/ListItemText.js +5 -5
  153. package/build/esm/ListItem/ListItemText.js.map +1 -1
  154. package/build/esm/ListItem/index.d.ts +2 -2
  155. package/build/esm/ListItem/index.js.map +1 -1
  156. package/build/esm/Menu/Menu.d.ts +18 -16
  157. package/build/esm/Menu/Menu.js +31 -11
  158. package/build/esm/Menu/Menu.js.map +1 -1
  159. package/build/esm/Menu/animation.d.ts +2 -2
  160. package/build/esm/Menu/animation.js.map +1 -1
  161. package/build/esm/Menu/index.d.ts +2 -1
  162. package/build/esm/Menu/index.js +1 -0
  163. package/build/esm/Menu/index.js.map +1 -1
  164. package/build/esm/NavRail/NavRailItem.d.ts +15 -0
  165. package/build/esm/NavRail/NavRailItem.js +149 -0
  166. package/build/esm/NavRail/NavRailItem.js.map +1 -0
  167. package/build/esm/NavRail/icons/test-icons.d.ts +4 -0
  168. package/build/esm/NavRail/icons/test-icons.js +42 -0
  169. package/build/esm/NavRail/icons/test-icons.js.map +1 -0
  170. package/build/esm/NavRail/index.d.ts +1 -0
  171. package/build/esm/NavRail/index.js +2 -0
  172. package/build/esm/NavRail/index.js.map +1 -0
  173. package/build/esm/NotchedOutline/NotchedOutline.d.ts +14 -14
  174. package/build/esm/NotchedOutline/NotchedOutline.js +4 -4
  175. package/build/esm/NotchedOutline/NotchedOutline.js.map +1 -1
  176. package/build/esm/NotchedOutline/context.d.ts +6 -6
  177. package/build/esm/NotchedOutline/context.js.map +1 -1
  178. package/build/esm/NotchedOutline/index.d.ts +1 -1
  179. package/build/esm/NotchedOutline/index.js.map +1 -1
  180. package/build/esm/NotchedOutline/styledComponents.d.ts +575 -485
  181. package/build/esm/NotchedOutline/styledComponents.js +3 -2
  182. package/build/esm/NotchedOutline/styledComponents.js.map +1 -1
  183. package/build/esm/Paper/Paper.d.ts +11 -11
  184. package/build/esm/Paper/Paper.js +8 -8
  185. package/build/esm/Paper/Paper.js.map +1 -1
  186. package/build/esm/Paper/index.d.ts +1 -1
  187. package/build/esm/Paper/index.js.map +1 -1
  188. package/build/esm/Popover/Popover.d.ts +14 -0
  189. package/build/esm/Popover/Popover.js +74 -0
  190. package/build/esm/Popover/Popover.js.map +1 -0
  191. package/build/esm/Popover/PopoverContainer.d.ts +4 -0
  192. package/build/esm/Popover/PopoverContainer.js +20 -0
  193. package/build/esm/Popover/PopoverContainer.js.map +1 -0
  194. package/build/esm/Popover/PopoverSurface.d.ts +5 -0
  195. package/build/esm/Popover/PopoverSurface.js +41 -0
  196. package/build/esm/Popover/PopoverSurface.js.map +1 -0
  197. package/build/esm/Popover/index.d.ts +1 -0
  198. package/build/esm/Popover/index.js +2 -0
  199. package/build/esm/Popover/index.js.map +1 -0
  200. package/build/esm/ProgressSpinner/ProgressSpinner.d.ts +8 -8
  201. package/build/esm/ProgressSpinner/ProgressSpinner.js +14 -14
  202. package/build/esm/ProgressSpinner/ProgressSpinner.js.map +1 -1
  203. package/build/esm/ProgressSpinner/index.d.ts +1 -1
  204. package/build/esm/ProgressSpinner/index.js.map +1 -1
  205. package/build/esm/RadioButton/RadioButton.d.ts +4 -4
  206. package/build/esm/RadioButton/RadioButton.js +4 -2
  207. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  208. package/build/esm/RadioButton/RadioButtonIcon.d.ts +6 -6
  209. package/build/esm/RadioButton/RadioButtonIcon.js +6 -5
  210. package/build/esm/RadioButton/RadioButtonIcon.js.map +1 -1
  211. package/build/esm/RadioButton/RadioGroup.d.ts +5 -5
  212. package/build/esm/RadioButton/RadioGroup.js +2 -1
  213. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  214. package/build/esm/RadioButton/index.d.ts +2 -2
  215. package/build/esm/RadioButton/index.js.map +1 -1
  216. package/build/esm/Ripple/Ripple.d.ts +11 -11
  217. package/build/esm/Ripple/Ripple.js +1 -1
  218. package/build/esm/Ripple/Ripple.js.map +1 -1
  219. package/build/esm/Ripple/RippleBox.d.ts +5 -6
  220. package/build/esm/Ripple/RippleBox.js +7 -6
  221. package/build/esm/Ripple/RippleBox.js.map +1 -1
  222. package/build/esm/Ripple/constants.d.ts +7 -7
  223. package/build/esm/Ripple/constants.js.map +1 -1
  224. package/build/esm/Ripple/index.d.ts +5 -5
  225. package/build/esm/Ripple/index.js.map +1 -1
  226. package/build/esm/Ripple/keyframes.d.ts +4 -4
  227. package/build/esm/Ripple/keyframes.js.map +1 -1
  228. package/build/esm/Ripple/useRipple.d.ts +14 -14
  229. package/build/esm/Ripple/useRipple.js +2 -2
  230. package/build/esm/Ripple/useRipple.js.map +1 -1
  231. package/build/esm/Ripple/useRippleHandlers.d.ts +8 -8
  232. package/build/esm/Ripple/useRippleHandlers.js +2 -1
  233. package/build/esm/Ripple/useRippleHandlers.js.map +1 -1
  234. package/build/esm/Ripple/useRippleSurface.d.ts +787 -786
  235. package/build/esm/Ripple/useRippleSurface.js +65 -60
  236. package/build/esm/Ripple/useRippleSurface.js.map +1 -1
  237. package/build/esm/SearchBar/SearchBar.d.ts +15 -0
  238. package/build/esm/SearchBar/SearchBar.js +90 -0
  239. package/build/esm/SearchBar/SearchBar.js.map +1 -0
  240. package/build/esm/SearchBar/index.d.ts +1 -0
  241. package/build/esm/SearchBar/index.js +2 -0
  242. package/build/esm/SearchBar/index.js.map +1 -0
  243. package/build/esm/Select/CustomContainerExample.d.ts +3 -0
  244. package/build/esm/Select/CustomContainerExample.js +59 -0
  245. package/build/esm/Select/CustomContainerExample.js.map +1 -0
  246. package/build/esm/Select/Select.d.ts +32 -18
  247. package/build/esm/Select/Select.js +67 -15
  248. package/build/esm/Select/Select.js.map +1 -1
  249. package/build/esm/Select/SelectIcon.d.ts +6 -6
  250. package/build/esm/Select/SelectIcon.js +6 -5
  251. package/build/esm/Select/SelectIcon.js.map +1 -1
  252. package/build/esm/Select/context.d.ts +9 -8
  253. package/build/esm/Select/context.js +2 -1
  254. package/build/esm/Select/context.js.map +1 -1
  255. package/build/esm/Select/defaultRender.d.ts +3 -1
  256. package/build/esm/Select/defaultRender.js +33 -4
  257. package/build/esm/Select/defaultRender.js.map +1 -1
  258. package/build/esm/Select/index.d.ts +1 -1
  259. package/build/esm/Select/index.js.map +1 -1
  260. package/build/esm/Select/styledComponents.d.ts +15 -15
  261. package/build/esm/Select/styledComponents.js +13 -22
  262. package/build/esm/Select/styledComponents.js.map +1 -1
  263. package/build/esm/SelectItem/SelectItem.d.ts +11 -4
  264. package/build/esm/SelectItem/SelectItem.js +34 -9
  265. package/build/esm/SelectItem/SelectItem.js.map +1 -1
  266. package/build/esm/SelectItem/index.d.ts +1 -1
  267. package/build/esm/SelectItem/index.js.map +1 -1
  268. package/build/esm/SelectionControl/SelectionControlLabel.d.ts +7 -7
  269. package/build/esm/SelectionControl/SelectionControlLabel.js +4 -3
  270. package/build/esm/SelectionControl/SelectionControlLabel.js.map +1 -1
  271. package/build/esm/SelectionControl/SelectionControlText.d.ts +8 -8
  272. package/build/esm/SelectionControl/SelectionControlText.js +4 -4
  273. package/build/esm/SelectionControl/SelectionControlText.js.map +1 -1
  274. package/build/esm/SelectionControl/index.d.ts +2 -2
  275. package/build/esm/SelectionControl/index.js.map +1 -1
  276. package/build/esm/Skeleton/DelayAppearance.d.ts +13 -13
  277. package/build/esm/Skeleton/DelayAppearance.js +5 -5
  278. package/build/esm/Skeleton/DelayAppearance.js.map +1 -1
  279. package/build/esm/Skeleton/Skeleton.d.ts +9 -9
  280. package/build/esm/Skeleton/Skeleton.js +4 -4
  281. package/build/esm/Skeleton/Skeleton.js.map +1 -1
  282. package/build/esm/Skeleton/animation.d.ts +8 -8
  283. package/build/esm/Skeleton/animation.js.map +1 -1
  284. package/build/esm/Skeleton/index.d.ts +2 -2
  285. package/build/esm/Skeleton/index.js.map +1 -1
  286. package/build/esm/Slider/Slider.d.ts +17 -0
  287. package/build/esm/Slider/Slider.js +224 -0
  288. package/build/esm/Slider/Slider.js.map +1 -0
  289. package/build/esm/Slider/index.d.ts +1 -0
  290. package/build/esm/Slider/index.js +2 -0
  291. package/build/esm/Slider/index.js.map +1 -0
  292. package/build/esm/Snackbar/Snackbar.d.ts +8 -8
  293. package/build/esm/Snackbar/Snackbar.js +12 -12
  294. package/build/esm/Snackbar/Snackbar.js.map +1 -1
  295. package/build/esm/Snackbar/Stack.d.ts +31 -32
  296. package/build/esm/Snackbar/Stack.js +11 -10
  297. package/build/esm/Snackbar/Stack.js.map +1 -1
  298. package/build/esm/Snackbar/index.d.ts +3 -2
  299. package/build/esm/Snackbar/index.js +1 -0
  300. package/build/esm/Snackbar/index.js.map +1 -1
  301. package/build/esm/Snackbar/useSnackbarAnimation.d.ts +6 -70
  302. package/build/esm/Snackbar/useSnackbarAnimation.js +9 -8
  303. package/build/esm/Snackbar/useSnackbarAnimation.js.map +1 -1
  304. package/build/esm/Switch/Switch.d.ts +13 -8
  305. package/build/esm/Switch/Switch.js +70 -48
  306. package/build/esm/Switch/Switch.js.map +1 -1
  307. package/build/esm/Switch/index.d.ts +1 -1
  308. package/build/esm/Switch/index.js.map +1 -1
  309. package/build/esm/Switch/styledComponents.d.ts +13 -13
  310. package/build/esm/Switch/styledComponents.js +34 -25
  311. package/build/esm/Switch/styledComponents.js.map +1 -1
  312. package/build/esm/Tab/Tab.d.ts +5 -5
  313. package/build/esm/Tab/Tab.js +51 -14
  314. package/build/esm/Tab/Tab.js.map +1 -1
  315. package/build/esm/Tab/TabList.d.ts +10 -9
  316. package/build/esm/Tab/TabList.js +8 -3
  317. package/build/esm/Tab/TabList.js.map +1 -1
  318. package/build/esm/Tab/TabPanel.d.ts +5 -5
  319. package/build/esm/Tab/TabPanel.js +4 -2
  320. package/build/esm/Tab/TabPanel.js.map +1 -1
  321. package/build/esm/Tab/TabPanels.d.ts +4 -4
  322. package/build/esm/Tab/TabPanels.js.map +1 -1
  323. package/build/esm/Tab/Tabs.d.ts +4 -4
  324. package/build/esm/Tab/Tabs.js.map +1 -1
  325. package/build/esm/Tab/context.d.ts +9 -8
  326. package/build/esm/Tab/context.js +2 -1
  327. package/build/esm/Tab/context.js.map +1 -1
  328. package/build/esm/Tab/index.d.ts +5 -5
  329. package/build/esm/Tab/index.js.map +1 -1
  330. package/build/esm/TabIndicator/TabIndicator.d.ts +9 -7
  331. package/build/esm/TabIndicator/TabIndicator.js +78 -10
  332. package/build/esm/TabIndicator/TabIndicator.js.map +1 -1
  333. package/build/esm/TabIndicator/context.d.ts +6 -6
  334. package/build/esm/TabIndicator/context.js.map +1 -1
  335. package/build/esm/TabIndicator/index.d.ts +2 -2
  336. package/build/esm/TabIndicator/index.js.map +1 -1
  337. package/build/esm/Table/Table.d.ts +4 -4
  338. package/build/esm/Table/Table.js +13 -11
  339. package/build/esm/Table/Table.js.map +1 -1
  340. package/build/esm/Table/TableBody.d.ts +4 -4
  341. package/build/esm/Table/TableBody.js +4 -3
  342. package/build/esm/Table/TableBody.js.map +1 -1
  343. package/build/esm/Table/TableCell.d.ts +4 -4
  344. package/build/esm/Table/TableCell.js +9 -6
  345. package/build/esm/Table/TableCell.js.map +1 -1
  346. package/build/esm/Table/TableHead.d.ts +4 -4
  347. package/build/esm/Table/TableHead.js +5 -5
  348. package/build/esm/Table/TableHead.js.map +1 -1
  349. package/build/esm/Table/TableRow.d.ts +4 -4
  350. package/build/esm/Table/TableRow.js +9 -9
  351. package/build/esm/Table/TableRow.js.map +1 -1
  352. package/build/esm/Table/context.d.ts +3 -3
  353. package/build/esm/Table/context.js.map +1 -1
  354. package/build/esm/Table/index.d.ts +5 -5
  355. package/build/esm/Table/index.js.map +1 -1
  356. package/build/esm/Text/LoremIpsum.d.ts +4 -4
  357. package/build/esm/Text/LoremIpsum.js +1 -1
  358. package/build/esm/Text/LoremIpsum.js.map +1 -1
  359. package/build/esm/Text/Text.d.ts +11 -7
  360. package/build/esm/Text/Text.js +7 -3
  361. package/build/esm/Text/Text.js.map +1 -1
  362. package/build/esm/Text/index.d.ts +1 -1
  363. package/build/esm/Text/index.js.map +1 -1
  364. package/build/esm/TextField/FilledContainer.d.ts +18 -15
  365. package/build/esm/TextField/FilledContainer.js +11 -11
  366. package/build/esm/TextField/FilledContainer.js.map +1 -1
  367. package/build/esm/TextField/HelperText.d.ts +10 -10
  368. package/build/esm/TextField/HelperText.js +5 -5
  369. package/build/esm/TextField/HelperText.js.map +1 -1
  370. package/build/esm/TextField/IconContainer.d.ts +5 -6
  371. package/build/esm/TextField/IconContainer.js +0 -1
  372. package/build/esm/TextField/IconContainer.js.map +1 -1
  373. package/build/esm/TextField/Input.d.ts +11 -11
  374. package/build/esm/TextField/Input.js +12 -10
  375. package/build/esm/TextField/Input.js.map +1 -1
  376. package/build/esm/TextField/OutlinedContainer.d.ts +17 -17
  377. package/build/esm/TextField/OutlinedContainer.js +17 -9
  378. package/build/esm/TextField/OutlinedContainer.js.map +1 -1
  379. package/build/esm/TextField/TextField.d.ts +19 -19
  380. package/build/esm/TextField/TextField.js +4 -4
  381. package/build/esm/TextField/TextField.js.map +1 -1
  382. package/build/esm/TextField/consts.d.ts +5 -5
  383. package/build/esm/TextField/consts.js.map +1 -1
  384. package/build/esm/TextField/index.d.ts +4 -4
  385. package/build/esm/TextField/index.js.map +1 -1
  386. package/build/esm/ThemeExplorer/BorderSlider.d.ts +7 -0
  387. package/build/esm/ThemeExplorer/BorderSlider.js +78 -0
  388. package/build/esm/ThemeExplorer/BorderSlider.js.map +1 -0
  389. package/build/esm/ThemeExplorer/ColorPicker.d.ts +8 -8
  390. package/build/esm/ThemeExplorer/ColorPicker.js +4 -3
  391. package/build/esm/ThemeExplorer/ColorPicker.js.map +1 -1
  392. package/build/esm/ThemeExplorer/ColorSchemePicker.d.ts +10 -0
  393. package/build/esm/ThemeExplorer/ColorSchemePicker.js +54 -0
  394. package/build/esm/ThemeExplorer/ColorSchemePicker.js.map +1 -0
  395. package/build/esm/ThemeExplorer/FontAutoComplete.d.ts +9 -0
  396. package/build/esm/ThemeExplorer/FontAutoComplete.js +128 -0
  397. package/build/esm/ThemeExplorer/FontAutoComplete.js.map +1 -0
  398. package/build/esm/ThemeExplorer/TextFieldColorPicker.d.ts +9 -9
  399. package/build/esm/ThemeExplorer/TextFieldColorPicker.js +4 -3
  400. package/build/esm/ThemeExplorer/TextFieldColorPicker.js.map +1 -1
  401. package/build/esm/ThemeExplorer/ThemeBuilder.d.ts +11 -0
  402. package/build/esm/ThemeExplorer/ThemeBuilder.js +400 -0
  403. package/build/esm/ThemeExplorer/ThemeBuilder.js.map +1 -0
  404. package/build/esm/ThemeExplorer/ThemeColors.d.ts +5 -5
  405. package/build/esm/ThemeExplorer/ThemeColors.js +38 -16
  406. package/build/esm/ThemeExplorer/ThemeColors.js.map +1 -1
  407. package/build/esm/ThemeExplorer/components.d.ts +31 -32
  408. package/build/esm/ThemeExplorer/components.js +29 -28
  409. package/build/esm/ThemeExplorer/components.js.map +1 -1
  410. package/build/esm/ThemeExplorer/googleFonts.d.ts +1 -0
  411. package/build/esm/ThemeExplorer/googleFonts.js +7 -0
  412. package/build/esm/ThemeExplorer/googleFonts.js.map +1 -0
  413. package/build/esm/ThemeExplorer/index.d.ts +1 -0
  414. package/build/esm/ThemeExplorer/index.js +2 -0
  415. package/build/esm/ThemeExplorer/index.js.map +1 -0
  416. package/build/esm/ThemeExplorer/makeColorScheme.d.ts +98 -66
  417. package/build/esm/ThemeExplorer/makeColorScheme.js +46 -10
  418. package/build/esm/ThemeExplorer/makeColorScheme.js.map +1 -1
  419. package/build/esm/ThemeExplorer/makeTailwindTheme.d.ts +2 -0
  420. package/build/esm/ThemeExplorer/makeTailwindTheme.js +30 -0
  421. package/build/esm/ThemeExplorer/makeTailwindTheme.js.map +1 -0
  422. package/build/esm/ThemeExplorer/updateGoogleFonts.js +70 -0
  423. package/build/esm/ThemeExplorer/updateGoogleFonts.js.map +1 -0
  424. package/build/esm/ThemeExplorer/useDeferredColor.d.ts +3 -3
  425. package/build/esm/ThemeExplorer/useDeferredColor.js +6 -9
  426. package/build/esm/ThemeExplorer/useDeferredColor.js.map +1 -1
  427. package/build/esm/ThemeExplorer/useLocalStorageCachedState.d.ts +1 -1
  428. package/build/esm/ThemeExplorer/useLocalStorageCachedState.js +1 -1
  429. package/build/esm/ThemeExplorer/useLocalStorageCachedState.js.map +1 -1
  430. package/build/esm/Tooltip/Tooltip.d.ts +8 -8
  431. package/build/esm/Tooltip/Tooltip.js +30 -16
  432. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  433. package/build/esm/Tooltip/index.d.ts +1 -1
  434. package/build/esm/Tooltip/index.js.map +1 -1
  435. package/build/esm/color.d.ts +8 -6
  436. package/build/esm/color.js +14 -5
  437. package/build/esm/color.js.map +1 -1
  438. package/build/esm/css.d.ts +1 -1
  439. package/build/esm/css.js.map +1 -1
  440. package/build/esm/hooks/useAnimation.d.ts +20 -20
  441. package/build/esm/hooks/useAnimation.js +3 -3
  442. package/build/esm/hooks/useAnimation.js.map +1 -1
  443. package/build/esm/index.d.ts +42 -37
  444. package/build/esm/index.js +6 -1
  445. package/build/esm/index.js.map +1 -1
  446. package/build/esm/motion.d.ts +7 -0
  447. package/build/esm/motion.js +8 -0
  448. package/build/esm/motion.js.map +1 -0
  449. package/build/esm/tailwind/extendColors.d.ts +5 -0
  450. package/build/esm/tailwind/extendColors.js +59 -0
  451. package/build/esm/tailwind/extendColors.js.map +1 -0
  452. package/build/esm/tailwind/index.d.ts +8 -0
  453. package/build/esm/tailwind/index.js +45 -0
  454. package/build/esm/tailwind/index.js.map +1 -0
  455. package/build/esm/theme/index.d.ts +2 -2
  456. package/build/esm/theme/index.js.map +1 -1
  457. package/build/esm/theme/theme.d.ts +562 -472
  458. package/build/esm/theme/theme.js +54 -42
  459. package/build/esm/theme/theme.js.map +1 -1
  460. package/build/esm/theme/typography-raleway.d.ts +112 -112
  461. package/build/esm/theme/typography-raleway.js.map +1 -1
  462. package/build/esm/theme/typography-roboto.d.ts +111 -111
  463. package/build/esm/theme/typography-roboto.js.map +1 -1
  464. package/build/esm/theme/useTheme.d.ts +566 -6
  465. package/build/esm/theme/useTheme.js.map +1 -1
  466. package/build/tsconfig-build.tsbuildinfo +1 -0
  467. package/package.json +22 -13
  468. package/src/Alert/Alert.tsx +1 -1
  469. package/src/Alert/index.ts +1 -1
  470. package/src/AppBar/AppBar.story.tsx +69 -69
  471. package/src/AppBar/AppBar.tsx +85 -84
  472. package/src/AppBar/AppBarButton.tsx +25 -25
  473. package/src/AppBar/context.ts +13 -13
  474. package/src/AppBar/index.ts +3 -3
  475. package/src/Badge/Badge.story.tsx +68 -0
  476. package/src/Badge/Badge.tsx +47 -17
  477. package/src/Badge/index.ts +1 -1
  478. package/src/BaseLine/BaseLine.tsx +100 -100
  479. package/src/BaseLine/index.ts +1 -1
  480. package/src/BottomSheet/BottomSheet.story.tsx +35 -35
  481. package/src/BottomSheet/BottomSheet.tsx +39 -39
  482. package/src/BottomSheet/BottomSheetSurface.tsx +49 -49
  483. package/src/BottomSheet/index.ts +1 -1
  484. package/src/Box/Box.tsx +127 -129
  485. package/src/Box/index.ts +1 -1
  486. package/src/Button/BaseButton.tsx +4 -11
  487. package/src/Button/Button.story.tsx +10 -1
  488. package/src/Button/Button.tsx +4 -4
  489. package/src/Button/ButtonGroup.story.tsx +68 -43
  490. package/src/Button/ButtonGroup.tsx +1 -1
  491. package/src/Button/FilledButton.tsx +20 -10
  492. package/src/Button/FloatingActionButton.tsx +9 -9
  493. package/src/Button/OutlinedButton.tsx +17 -2
  494. package/src/Button/SpinnerButton.story.tsx +91 -91
  495. package/src/Button/TransparentButton.tsx +16 -1
  496. package/src/Button/context.tsx +17 -17
  497. package/src/Button/index.ts +2 -2
  498. package/src/CheckBox/CheckBox.story.tsx +155 -154
  499. package/src/CheckBox/CheckBox.tsx +170 -174
  500. package/src/CheckBox/CheckBoxIcon.tsx +64 -64
  501. package/src/CheckBox/CheckPath.tsx +18 -18
  502. package/src/CheckBox/IndeterminatePath.tsx +16 -16
  503. package/src/CheckBox/index.ts +1 -1
  504. package/src/Chip/ButtonChip.tsx +86 -86
  505. package/src/Chip/Chip.story.tsx +242 -242
  506. package/src/Chip/Chip.tsx +5 -5
  507. package/src/Chip/ChipBase.tsx +141 -141
  508. package/src/Chip/ChoiceChip.tsx +127 -127
  509. package/src/Chip/index.ts +2 -2
  510. package/src/Combobox/Combobox.story.tsx +3 -3
  511. package/src/Combobox/Combobox.tsx +274 -272
  512. package/src/Combobox/index.ts +1 -1
  513. package/src/Dialog/Dialog.story.tsx +53 -53
  514. package/src/Dialog/Dialog.tsx +73 -73
  515. package/src/Dialog/DialogBackdrop.tsx +42 -42
  516. package/src/Dialog/DialogContainer.tsx +31 -31
  517. package/src/Dialog/DialogSurface.tsx +55 -57
  518. package/src/Dialog/Scrim.tsx +35 -35
  519. package/src/Dialog/index.ts +2 -2
  520. package/src/Dialog/useDialogAnimation.tsx +49 -50
  521. package/src/Divider/Divider.story.tsx +39 -39
  522. package/src/Divider/Divider.tsx +48 -49
  523. package/src/Divider/index.ts +1 -1
  524. package/src/FloatingLabel/FloatingLabel.story.tsx +55 -55
  525. package/src/FloatingLabel/FloatingLabel.tsx +77 -76
  526. package/src/FloatingLabel/index.ts +1 -1
  527. package/src/LineRipple/LineRipple.story.tsx +43 -43
  528. package/src/LineRipple/LineRipple.tsx +81 -81
  529. package/src/LineRipple/index.ts +1 -1
  530. package/src/Link/Link.story.tsx +14 -14
  531. package/src/Link/Link.tsx +65 -56
  532. package/src/Link/index.ts +1 -1
  533. package/src/List/List.tsx +46 -46
  534. package/src/List/index.ts +1 -1
  535. package/src/ListItem/ListItem.story.tsx +43 -43
  536. package/src/ListItem/ListItem.tsx +104 -99
  537. package/src/ListItem/ListItemText.tsx +35 -36
  538. package/src/ListItem/index.ts +2 -2
  539. package/src/Menu/ContextMenu.story.tsx +34 -0
  540. package/src/Menu/Menu.story.tsx +54 -54
  541. package/src/Menu/Menu.tsx +124 -110
  542. package/src/Menu/animation.ts +16 -16
  543. package/src/Menu/index.ts +2 -1
  544. package/src/NavRail/NavRail.story.tsx +146 -0
  545. package/src/NavRail/NavRailItem.tsx +175 -0
  546. package/src/NavRail/icons/test-icons.tsx +46 -0
  547. package/src/NavRail/index.ts +1 -0
  548. package/src/NotchedOutline/NotchedOutline.story.tsx +99 -99
  549. package/src/NotchedOutline/NotchedOutline.tsx +80 -81
  550. package/src/NotchedOutline/context.ts +12 -12
  551. package/src/NotchedOutline/index.ts +1 -1
  552. package/src/NotchedOutline/styledComponents.ts +122 -121
  553. package/src/Paper/Paper.story.tsx +50 -50
  554. package/src/Paper/Paper.tsx +67 -71
  555. package/src/Paper/index.ts +1 -1
  556. package/src/Popover/Popover.story.tsx +34 -0
  557. package/src/Popover/Popover.tsx +97 -0
  558. package/src/Popover/PopoverContainer.tsx +25 -0
  559. package/src/Popover/PopoverSurface.tsx +51 -0
  560. package/src/Popover/index.ts +1 -0
  561. package/src/ProgressSpinner/ProgressSpinner.story.tsx +35 -35
  562. package/src/ProgressSpinner/ProgressSpinner.tsx +119 -119
  563. package/src/ProgressSpinner/index.ts +1 -1
  564. package/src/RadioButton/RadioButton.story.tsx +109 -109
  565. package/src/RadioButton/RadioButton.tsx +112 -112
  566. package/src/RadioButton/RadioButtonIcon.tsx +44 -45
  567. package/src/RadioButton/RadioGroup.tsx +27 -27
  568. package/src/RadioButton/index.ts +2 -2
  569. package/src/Ripple/Ripple.story.tsx +78 -78
  570. package/src/Ripple/Ripple.tsx +33 -33
  571. package/src/Ripple/RippleBox.tsx +52 -53
  572. package/src/Ripple/constants.ts +15 -15
  573. package/src/Ripple/index.ts +5 -5
  574. package/src/Ripple/keyframes.ts +36 -36
  575. package/src/Ripple/useRipple.ts +209 -209
  576. package/src/Ripple/useRippleHandlers.ts +54 -54
  577. package/src/Ripple/useRippleSurface.ts +155 -133
  578. package/src/SearchBar/SearchBar.story.tsx +98 -0
  579. package/src/SearchBar/SearchBar.tsx +105 -0
  580. package/src/SearchBar/index.ts +1 -0
  581. package/src/Select/CustomContainerExample.tsx +59 -0
  582. package/src/Select/PaymentMethodSelect.story.tsx +316 -323
  583. package/src/Select/Select.story.tsx +225 -226
  584. package/src/Select/Select.tsx +283 -197
  585. package/src/Select/SelectIcon.tsx +43 -44
  586. package/src/Select/SelectMultiple.story.tsx +215 -0
  587. package/src/Select/context.ts +22 -19
  588. package/src/Select/defaultRender.tsx +49 -0
  589. package/src/Select/index.ts +1 -1
  590. package/src/Select/styledComponents.tsx +38 -48
  591. package/src/SelectItem/SelectItem.tsx +92 -60
  592. package/src/SelectItem/index.ts +1 -1
  593. package/src/SelectionControl/SelectionControlLabel.tsx +34 -37
  594. package/src/SelectionControl/SelectionControlText.tsx +37 -37
  595. package/src/SelectionControl/index.ts +2 -2
  596. package/src/Skeleton/DelayAppearance.tsx +41 -41
  597. package/src/Skeleton/Skeleton.story.tsx +57 -57
  598. package/src/Skeleton/Skeleton.tsx +40 -40
  599. package/src/Skeleton/animation.ts +54 -54
  600. package/src/Skeleton/index.ts +2 -2
  601. package/src/Slider/Slider.story.tsx +36 -0
  602. package/src/Slider/Slider.tsx +275 -0
  603. package/src/Slider/index.ts +1 -0
  604. package/src/Snackbar/Snackbar.story.tsx +99 -99
  605. package/src/Snackbar/Snackbar.tsx +10 -10
  606. package/src/Snackbar/Stack.tsx +13 -12
  607. package/src/Snackbar/index.ts +1 -0
  608. package/src/Snackbar/useSnackbarAnimation.ts +5 -4
  609. package/src/Switch/Switch.story.tsx +98 -27
  610. package/src/Switch/Switch.tsx +170 -127
  611. package/src/Switch/index.ts +1 -1
  612. package/src/Switch/styledComponents.tsx +117 -110
  613. package/src/Tab/Tab.story.tsx +209 -53
  614. package/src/Tab/Tab.tsx +120 -82
  615. package/src/Tab/TabList.tsx +61 -57
  616. package/src/Tab/TabPanel.tsx +31 -31
  617. package/src/Tab/TabPanels.tsx +5 -5
  618. package/src/Tab/Tabs.tsx +5 -5
  619. package/src/Tab/context.ts +17 -15
  620. package/src/Tab/index.ts +5 -5
  621. package/src/TabIndicator/TabIndicator.tsx +146 -69
  622. package/src/TabIndicator/context.ts +13 -12
  623. package/src/TabIndicator/index.ts +2 -2
  624. package/src/Table/Table.tsx +12 -9
  625. package/src/Table/TableCell.tsx +5 -2
  626. package/src/Table/TableHead.tsx +1 -2
  627. package/src/Table/TableRow.tsx +5 -6
  628. package/src/Table/context.ts +6 -6
  629. package/src/Text/LoremIpsum.tsx +18 -18
  630. package/src/Text/Text.story.tsx +75 -40
  631. package/src/Text/Text.tsx +84 -64
  632. package/src/Text/index.ts +1 -1
  633. package/src/TextField/FilledContainer.tsx +173 -172
  634. package/src/TextField/HelperText.tsx +63 -63
  635. package/src/TextField/IconContainer.tsx +2 -3
  636. package/src/TextField/Input.tsx +6 -5
  637. package/src/TextField/OutlinedContainer.tsx +116 -111
  638. package/src/TextField/TextField.story.tsx +2 -3
  639. package/src/TextField/TextField.tsx +4 -4
  640. package/src/TextField/consts.ts +7 -7
  641. package/src/TextField/index.ts +4 -4
  642. package/src/ThemeExplorer/BorderSlider.tsx +73 -0
  643. package/src/ThemeExplorer/ColorPicker.tsx +104 -104
  644. package/src/ThemeExplorer/ColorSchemePicker.tsx +55 -0
  645. package/src/ThemeExplorer/FontAutoComplete.tsx +139 -0
  646. package/src/ThemeExplorer/TextFieldColorPicker.tsx +115 -115
  647. package/src/ThemeExplorer/ThemeBuilder.story.tsx +8 -165
  648. package/src/ThemeExplorer/ThemeBuilder.tsx +353 -0
  649. package/src/ThemeExplorer/ThemeColors.tsx +118 -89
  650. package/src/ThemeExplorer/components.tsx +195 -195
  651. package/src/ThemeExplorer/googleFonts.ts +1436 -0
  652. package/src/ThemeExplorer/index.ts +1 -0
  653. package/src/ThemeExplorer/makeColorScheme.tsx +111 -74
  654. package/src/ThemeExplorer/makeTailwindTheme.ts +44 -0
  655. package/src/ThemeExplorer/updateGoogleFonts.js +33 -0
  656. package/src/ThemeExplorer/useDeferredColor.tsx +21 -25
  657. package/src/ThemeExplorer/useLocalStorageCachedState.ts +18 -18
  658. package/src/Tooltip/Tooltip.story.tsx +35 -35
  659. package/src/Tooltip/Tooltip.tsx +67 -50
  660. package/src/Tooltip/index.ts +1 -1
  661. package/src/color.ts +30 -6
  662. package/src/css.ts +2 -2
  663. package/src/hooks/useAnimation.ts +111 -111
  664. package/src/index.ts +6 -1
  665. package/src/motion.ts +7 -0
  666. package/src/tailwind/extendColors.ts +51 -0
  667. package/src/tailwind/index.ts +56 -0
  668. package/src/tailwind/tests/extendColors.test.ts +123 -0
  669. package/src/theme/index.ts +2 -2
  670. package/src/theme/theme.ts +57 -39
  671. package/src/theme/typography-raleway.ts +114 -114
  672. package/src/theme/typography-roboto.ts +113 -113
  673. package/src/theme/useTheme.ts +18 -18
  674. package/tailwind/package.json +5 -0
  675. package/theme-explorer/package.json +5 -0
  676. package/build/esm/ColorMode/ColorModeProvider.d.ts +0 -7
  677. package/build/esm/ColorMode/ColorModeProvider.js +0 -92
  678. package/build/esm/ColorMode/ColorModeProvider.js.map +0 -1
  679. package/build/esm/ColorMode/color-mode.d.ts +0 -8
  680. package/build/esm/ColorMode/color-mode.js +0 -11
  681. package/build/esm/ColorMode/color-mode.js.map +0 -1
  682. package/build/esm/ColorMode/color-vars.d.ts +0 -4
  683. package/build/esm/ColorMode/color-vars.js +0 -58
  684. package/build/esm/ColorMode/color-vars.js.map +0 -1
  685. package/build/esm/ColorMode/constants.d.ts +0 -3
  686. package/build/esm/ColorMode/constants.js +0 -5
  687. package/build/esm/ColorMode/constants.js.map +0 -1
  688. package/build/esm/ColorMode/index.d.ts +0 -4
  689. package/build/esm/ColorMode/index.js +0 -5
  690. package/build/esm/ColorMode/index.js.map +0 -1
  691. package/build/esm/ListItem/context.d.ts +0 -7
  692. package/build/esm/ListItem/context.js +0 -10
  693. package/build/esm/ListItem/context.js.map +0 -1
  694. package/build/tsconfig.tsbuildinfo +0 -1
  695. package/src/ColorMode/ColorModeProvider.tsx +0 -97
  696. package/src/ColorMode/color-mode.ts +0 -20
  697. package/src/ColorMode/color-vars.ts +0 -56
  698. package/src/ColorMode/constants.ts +0 -5
  699. package/src/ColorMode/index.ts +0 -4
  700. package/src/ColorMode/tests/color-vars.test.ts +0 -9
  701. package/src/Select/defaultRender.ts +0 -18
  702. package/src/ThemeExplorer/ThemeExplorer.story.tsx +0 -43
@@ -1,8 +1,11 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import { forwardRef } from 'react';
4
- import * as React from 'react';
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
+ import _extends from "@babel/runtime/helpers/extends";
4
+ var _excluded = ["as", "disabled", "checked", "onChange", "size", "__css", "icon"],
5
+ _excluded2 = ["as", "icon", "disabled", "children"];
6
+ import { cloneElement, forwardRef } from 'react';
5
7
  import { CheckBox as _CheckBoxCore } from '@basic-ui/core';
8
+ import { rem } from 'polished';
6
9
  import { RippleBox } from '../Ripple';
7
10
  import { Box } from '../Box';
8
11
  import { useTheme } from '../theme';
@@ -11,79 +14,98 @@ import { SwitchTrail, SwitchThumb, SwitchCircle } from './styledComponents';
11
14
  import { jsx as _jsx } from "react/jsx-runtime";
12
15
  import { jsxs as _jsxs } from "react/jsx-runtime";
13
16
  var CheckBoxCore = _CheckBoxCore;
17
+
18
+ function getSizeCssVariables(size, hasIcon) {
19
+ var _extends2, _ref;
20
+
21
+ var multiplier = size === 'small' ? 0.75 : 1;
22
+ var BORDER_WIDTH = 2;
23
+ var TRAIL_WIDTH = 52 * multiplier;
24
+ var TRAIL_HEIGHT = 32 * multiplier;
25
+ return _extends((_extends2 = {}, _defineProperty(_extends2, '--switch-border-width', rem(BORDER_WIDTH)), _defineProperty(_extends2, '--switch-trail-width', rem(TRAIL_WIDTH)), _defineProperty(_extends2, '--switch-trail-height', rem(TRAIL_HEIGHT)), _defineProperty(_extends2, '--switch-icon-size', rem(TRAIL_HEIGHT / 2)), _defineProperty(_extends2, '--switch-state-layer-size', rem(40 * multiplier)), _defineProperty(_extends2, '--switch-thumb-size-checked-inactive', rem(TRAIL_HEIGHT - BORDER_WIDTH * 4)), _defineProperty(_extends2, '--switch-thumb-size-checked-active', rem(TRAIL_HEIGHT - BORDER_WIDTH * 2)), _defineProperty(_extends2, '--switch-thumb-size-unchecked-inactive', rem(TRAIL_HEIGHT / 2)), _defineProperty(_extends2, '--switch-thumb-size-unchecked-active', rem(TRAIL_HEIGHT - BORDER_WIDTH * 2)), _extends2), hasIcon && (_ref = {}, _defineProperty(_ref, '--switch-thumb-size-unchecked-inactive', 'var(--switch-thumb-size-checked-inactive)'), _defineProperty(_ref, '--switch-thumb-size-unchecked-active', 'var(--switch-thumb-size-checked-active)'), _ref));
26
+ }
27
+
14
28
  var SwitchInner = /*#__PURE__*/forwardRef(function SwitchInner(props, forwardedRef) {
29
+ var _cloneElement;
30
+
15
31
  var _props$as = props.as,
16
32
  Comp = _props$as === void 0 ? 'input' : _props$as,
17
33
  disabled = props.disabled,
18
34
  checked = props.checked,
19
35
  onChange = props.onChange,
36
+ _props$size = props.size,
37
+ size = _props$size === void 0 ? 'default' : _props$size,
20
38
  __css = props.__css,
21
- otherProps = _objectWithoutProperties(props, ["as", "disabled", "checked", "onChange", "__css"]);
39
+ icon = props.icon,
40
+ otherProps = _objectWithoutProperties(props, _excluded);
22
41
 
23
42
  var color = checked ? 'primary' : 'on.surface';
24
43
  var theme = useTheme();
25
- return /*#__PURE__*/_jsx(Box, {
26
- p: 2,
44
+ return /*#__PURE__*/_jsxs(Box, {
27
45
  display: "inline-block",
46
+ position: "relative",
28
47
  minWidth: "auto",
29
- children: /*#__PURE__*/_jsxs(Box, {
30
- position: "relative",
31
- children: [/*#__PURE__*/_jsx(SwitchTrail, {
48
+ sx: getSizeCssVariables(size, Boolean(icon)),
49
+ children: [/*#__PURE__*/_jsx(SwitchTrail, {
50
+ checked: checked,
51
+ disabled: disabled
52
+ }), /*#__PURE__*/_jsxs(SwitchThumb, {
53
+ checked: checked,
54
+ children: [/*#__PURE__*/_jsx(RippleBox, _extends(_extends({
55
+ as: Comp,
56
+ role: "switch",
57
+ type: "checkbox",
32
58
  checked: checked,
33
- disabled: disabled
34
- }), /*#__PURE__*/_jsxs(SwitchThumb, {
59
+ onChange: onChange,
60
+ theme: theme,
61
+ ref: forwardedRef,
62
+ "aria-checked": checked ? 'true' : 'false',
63
+ rippleColor: color,
64
+ baseOpacity: 0,
65
+ hoverOpacity: 0.04,
66
+ focusOpacity: 0.12,
67
+ center: true,
68
+ disabled: disabled,
69
+ "data-switch-thumb": ""
70
+ }, otherProps), {}, {
71
+ __css: _extends({
72
+ top: '50%',
73
+ left: '50%',
74
+ backgroundColor: 'transparent',
75
+ transform: 'translate(-50%, -50%)',
76
+ width: '100%',
77
+ height: '100%',
78
+ appearance: 'none',
79
+ ':focus': {
80
+ outline: 'none'
81
+ },
82
+ border: 'none',
83
+ borderRadius: 'full',
84
+ zIndex: 1,
85
+ position: 'absolute'
86
+ }, __css)
87
+ })), /*#__PURE__*/_jsx(SwitchCircle, {
35
88
  checked: checked,
36
- children: [/*#__PURE__*/_jsx(RippleBox, _extends({
37
- as: Comp,
38
- role: "switch",
39
- type: "checkbox",
40
- checked: checked,
41
- onChange: onChange,
42
- theme: theme,
43
- ref: forwardedRef,
44
- "aria-checked": checked ? 'true' : 'false',
45
- rippleColor: color,
46
- baseOpacity: 0,
47
- hoverOpacity: 0.04,
48
- focusOpacity: 0.12,
49
- center: true,
50
- disabled: disabled,
51
- "data-switch-thumb": ""
52
- }, otherProps, {
53
- __css: _extends({
54
- top: '50%',
55
- left: '50%',
56
- backgroundColor: 'transparent',
57
- transform: 'translate(-50%, -50%)',
58
- width: '100%',
59
- height: '100%',
60
- appearance: 'none',
61
- ':focus': {
62
- outline: 'none'
63
- },
64
- border: 'none',
65
- borderRadius: 'full',
66
- zIndex: 1,
67
- position: 'absolute'
68
- }, __css)
69
- })), /*#__PURE__*/_jsx(SwitchCircle, {
89
+ children: icon ? /*#__PURE__*/cloneElement(icon, (_cloneElement = {
70
90
  checked: checked
71
- })]
91
+ }, _defineProperty(_cloneElement, 'data-checkbox-icon', ''), _defineProperty(_cloneElement, "disabled", disabled), _cloneElement)) : null
72
92
  })]
73
- })
93
+ })]
74
94
  });
75
95
  });
76
96
  export var Switch = /*#__PURE__*/forwardRef(function Switch(props, forwardedRef) {
77
97
  var _props$as2 = props.as,
78
98
  as = _props$as2 === void 0 ? 'input' : _props$as2,
99
+ icon = props.icon,
79
100
  disabled = props.disabled,
80
101
  children = props.children,
81
- otherProps = _objectWithoutProperties(props, ["as", "disabled", "children"]);
102
+ otherProps = _objectWithoutProperties(props, _excluded2);
82
103
 
83
104
  var inner = /*#__PURE__*/_jsx(CheckBoxCore, _extends({
84
105
  as: SwitchInner,
85
106
  innerAs: as,
86
107
  ref: forwardedRef,
108
+ icon: icon,
87
109
  disabled: disabled
88
110
  }, otherProps));
89
111
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Switch/Switch.tsx"],"names":["forwardRef","React","CheckBox","_CheckBoxCore","RippleBox","Box","useTheme","SelectionControlLabel","SelectionControlText","SwitchTrail","SwitchThumb","SwitchCircle","CheckBoxCore","SwitchInner","props","forwardedRef","as","Comp","disabled","checked","onChange","__css","otherProps","color","theme","top","left","backgroundColor","transform","width","height","appearance","outline","border","borderRadius","zIndex","position","Switch","children","inner"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AACA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,QAAQ,IAAIC,aAArB,QAA0C,gBAA1C;AAGA,SAASC,SAAT,QAA0B,WAA1B;AAEA,SAASC,GAAT,QAAoB,QAApB;AACA,SAASC,QAAT,QAAyB,UAAzB;AACA,SACEC,qBADF,EAEEC,oBAFF,QAGO,qBAHP;AAIA,SAASC,WAAT,EAAsBC,WAAtB,EAAmCC,YAAnC,QAAuD,oBAAvD;;;AAEA,IAAMC,YAIL,GAAGT,aAJJ;AAgBA,IAAMU,WAAW,gBAAGb,UAAU,CAC5B,SAASa,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;AAAA,kBAQpCD,KARoC,CAEtCE,EAFsC;AAAA,MAElCC,IAFkC,0BAE3B,OAF2B;AAAA,MAGtCC,QAHsC,GAQpCJ,KARoC,CAGtCI,QAHsC;AAAA,MAItCC,OAJsC,GAQpCL,KARoC,CAItCK,OAJsC;AAAA,MAKtCC,QALsC,GAQpCN,KARoC,CAKtCM,QALsC;AAAA,MAMtCC,KANsC,GAQpCP,KARoC,CAMtCO,KANsC;AAAA,MAOnCC,UAPmC,4BAQpCR,KARoC;;AASxC,MAAMS,KAAK,GAAGJ,OAAO,GAAG,SAAH,GAAe,YAApC;AACA,MAAMK,KAAK,GAAGlB,QAAQ,EAAtB;AAEA,sBACE,KAAC,GAAD;AAAK,IAAA,CAAC,EAAE,CAAR;AAAW,IAAA,OAAO,EAAC,cAAnB;AAAkC,IAAA,QAAQ,EAAC,MAA3C;AAAA,2BACE,MAAC,GAAD;AAAK,MAAA,QAAQ,EAAC,UAAd;AAAA,8BACE,KAAC,WAAD;AAAa,QAAA,OAAO,EAAEa,OAAtB;AAA+B,QAAA,QAAQ,EAAED;AAAzC,QADF,eAEE,MAAC,WAAD;AAAa,QAAA,OAAO,EAAEC,OAAtB;AAAA,gCACE,KAAC,SAAD;AAME,UAAA,EAAE,EAAEF,IANN;AAOE,UAAA,IAAI,EAAC,QAPP;AAQE,UAAA,IAAI,EAAC,UARP;AASE,UAAA,OAAO,EAAEE,OATX;AAUE,UAAA,QAAQ,EAAEC,QAVZ;AAWE,UAAA,KAAK,EAAEI,KAXT;AAYE,UAAA,GAAG,EAAET,YAZP;AAaE,0BAAcI,OAAO,GAAG,MAAH,GAAY,OAbnC;AAcE,UAAA,WAAW,EAAEI,KAdf;AAeE,UAAA,WAAW,EAAE,CAff;AAgBE,UAAA,YAAY,EAAE,IAhBhB;AAiBE,UAAA,YAAY,EAAE,IAjBhB;AAkBE,UAAA,MAAM,EAAE,IAlBV;AAmBE,UAAA,QAAQ,EAAEL,QAnBZ;AAoBE,+BAAkB;AApBpB,WAqBMI,UArBN;AAsBE,UAAA,KAAK;AACHG,YAAAA,GAAG,EAAE,KADF;AAEHC,YAAAA,IAAI,EAAE,KAFH;AAGHC,YAAAA,eAAe,EAAE,aAHd;AAIHC,YAAAA,SAAS,EAAE,uBAJR;AAKHC,YAAAA,KAAK,EAAE,MALJ;AAMHC,YAAAA,MAAM,EAAE,MANL;AAOHC,YAAAA,UAAU,EAAE,MAPT;AAQH,sBAAU;AACRC,cAAAA,OAAO,EAAE;AADD,aARP;AAWHC,YAAAA,MAAM,EAAE,MAXL;AAYHC,YAAAA,YAAY,EAAE,MAZX;AAaHC,YAAAA,MAAM,EAAE,CAbL;AAcHC,YAAAA,QAAQ,EAAE;AAdP,aAeAf,KAfA;AAtBP,WADF,eAyCE,KAAC,YAAD;AAAc,UAAA,OAAO,EAAEF;AAAvB,UAzCF;AAAA,QAFF;AAAA;AADF,IADF;AAkDD,CA/D2B,CAA9B;AAkEA,OAAO,IAAMkB,MAAM,gBAAGrC,UAAU,CAAgC,SAASqC,MAAT,CAC9DvB,KAD8D,EAE9DC,YAF8D,EAG9D;AAAA,mBAC4DD,KAD5D,CACQE,EADR;AAAA,MACQA,EADR,2BACa,OADb;AAAA,MACsBE,QADtB,GAC4DJ,KAD5D,CACsBI,QADtB;AAAA,MACgCoB,QADhC,GAC4DxB,KAD5D,CACgCwB,QADhC;AAAA,MAC6ChB,UAD7C,4BAC4DR,KAD5D;;AAGA,MAAMyB,KAAK,gBACT,KAAC,YAAD;AACE,IAAA,EAAE,EAAE1B,WADN;AAEE,IAAA,OAAO,EAAEG,EAFX;AAGE,IAAA,GAAG,EAAED,YAHP;AAIE,IAAA,QAAQ,EAAEG;AAJZ,KAKMI,UALN,EADF;;AAUA,MAAI,CAACgB,QAAL,EAAe;AACb,WAAOC,KAAP;AACD;;AAED,sBACE,MAAC,qBAAD;AAAA,eACGA,KADH,eAEE,KAAC,oBAAD;AAAsB,MAAA,QAAQ,EAAErB,QAAhC;AAAA,gBACGoB;AADH,MAFF;AAAA,IADF;AAQD,CA5B+B,CAAzB","sourcesContent":["import type { InputHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport * as React from 'react';\nimport { CheckBox as _CheckBoxCore } from '@basic-ui/core';\n\nimport type { RippleBoxProps } from '../Ripple';\nimport { RippleBox } from '../Ripple';\nimport type { BoxProps } from '../Box';\nimport { Box } from '../Box';\nimport { useTheme } from '../theme';\nimport {\n SelectionControlLabel,\n SelectionControlText,\n} from '../SelectionControl';\nimport { SwitchTrail, SwitchThumb, SwitchCircle } from './styledComponents';\n\nconst CheckBoxCore: React.FC<\n SwitchProps & {\n innerAs?: React.ElementType<any>;\n }\n> = _CheckBoxCore as any;\n\nexport interface SwitchProps\n extends BoxProps<\n HTMLInputElement,\n React.InputHTMLAttributes<HTMLInputElement>\n > {\n as?: React.ElementType<any>;\n checked?: boolean;\n disabled?: boolean;\n}\n\nconst SwitchInner = forwardRef<HTMLInputElement, SwitchProps>(\n function SwitchInner(props, forwardedRef) {\n const {\n as: Comp = 'input',\n disabled,\n checked,\n onChange,\n __css,\n ...otherProps\n } = props;\n const color = checked ? 'primary' : 'on.surface';\n const theme = useTheme();\n\n return (\n <Box p={2} display=\"inline-block\" minWidth=\"auto\">\n <Box position=\"relative\">\n <SwitchTrail checked={checked} disabled={disabled} />\n <SwitchThumb checked={checked}>\n <RippleBox<\n RippleBoxProps<\n HTMLInputElement,\n InputHTMLAttributes<HTMLInputElement>\n >\n >\n as={Comp}\n role=\"switch\"\n type=\"checkbox\"\n checked={checked}\n onChange={onChange}\n theme={theme}\n ref={forwardedRef}\n aria-checked={checked ? 'true' : 'false'}\n rippleColor={color}\n baseOpacity={0}\n hoverOpacity={0.04}\n focusOpacity={0.12}\n center={true}\n disabled={disabled}\n data-switch-thumb=\"\"\n {...otherProps}\n __css={{\n top: '50%',\n left: '50%',\n backgroundColor: 'transparent',\n transform: 'translate(-50%, -50%)',\n width: '100%',\n height: '100%',\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 />\n <SwitchCircle checked={checked} />\n </SwitchThumb>\n </Box>\n </Box>\n );\n }\n);\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>(function Switch(\n props,\n forwardedRef\n) {\n const { as = 'input', disabled, children, ...otherProps } = props;\n\n const inner = (\n <CheckBoxCore\n as={SwitchInner}\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"],"file":"Switch.js"}
1
+ {"version":3,"file":"Switch.js","names":["cloneElement","forwardRef","CheckBox","_CheckBoxCore","rem","RippleBox","Box","useTheme","SelectionControlLabel","SelectionControlText","SwitchTrail","SwitchThumb","SwitchCircle","CheckBoxCore","getSizeCssVariables","size","hasIcon","multiplier","BORDER_WIDTH","TRAIL_WIDTH","TRAIL_HEIGHT","SwitchInner","props","forwardedRef","as","Comp","disabled","checked","onChange","__css","icon","otherProps","color","theme","Boolean","top","left","backgroundColor","transform","width","height","appearance","outline","border","borderRadius","zIndex","position","Switch","children","inner"],"sources":["../../../src/Switch/Switch.tsx"],"sourcesContent":["import type { ElementType, FC, InputHTMLAttributes, ReactElement } from 'react';\r\nimport { cloneElement, forwardRef } from 'react';\r\nimport { CheckBox as _CheckBoxCore } from '@basic-ui/core';\r\nimport { rem } from 'polished';\r\n\r\nimport type { RippleBoxProps } from '../Ripple';\r\nimport { RippleBox } from '../Ripple';\r\nimport type { BoxProps } from '../Box';\r\nimport { Box } from '../Box';\r\nimport { useTheme } from '../theme';\r\nimport {\r\n SelectionControlLabel,\r\n SelectionControlText,\r\n} from '../SelectionControl';\r\nimport { SwitchTrail, SwitchThumb, SwitchCircle } from './styledComponents';\r\n\r\nconst CheckBoxCore: FC<\r\n SwitchProps & {\r\n innerAs?: ElementType<any>;\r\n }\r\n> = _CheckBoxCore as any;\r\n\r\nexport interface SwitchProps\r\n extends BoxProps<HTMLInputElement, InputHTMLAttributes<HTMLInputElement>> {\r\n as?: ElementType<any>;\r\n checked?: boolean;\r\n disabled?: boolean;\r\n size?: 'small' | 'default';\r\n icon?: ReactElement<{ checked?: boolean; disabled?: boolean }>;\r\n}\r\n\r\nfunction getSizeCssVariables(size: 'small' | 'default', hasIcon: boolean) {\r\n const multiplier = size === 'small' ? 0.75 : 1;\r\n const BORDER_WIDTH = 2;\r\n const TRAIL_WIDTH = 52 * multiplier;\r\n const TRAIL_HEIGHT = 32 * multiplier;\r\n return {\r\n ['--switch-border-width']: rem(BORDER_WIDTH),\r\n ['--switch-trail-width']: rem(TRAIL_WIDTH),\r\n ['--switch-trail-height']: rem(TRAIL_HEIGHT),\r\n ['--switch-icon-size']: rem(TRAIL_HEIGHT / 2),\r\n ['--switch-state-layer-size']: rem(40 * multiplier),\r\n ['--switch-thumb-size-checked-inactive']: rem(\r\n TRAIL_HEIGHT - BORDER_WIDTH * 4\r\n ),\r\n ['--switch-thumb-size-checked-active']: rem(\r\n TRAIL_HEIGHT - BORDER_WIDTH * 2\r\n ),\r\n ['--switch-thumb-size-unchecked-inactive']: rem(TRAIL_HEIGHT / 2),\r\n ['--switch-thumb-size-unchecked-active']: rem(\r\n TRAIL_HEIGHT - BORDER_WIDTH * 2\r\n ),\r\n ...(hasIcon && {\r\n ['--switch-thumb-size-unchecked-inactive']:\r\n 'var(--switch-thumb-size-checked-inactive)',\r\n ['--switch-thumb-size-unchecked-active']:\r\n 'var(--switch-thumb-size-checked-active)',\r\n }),\r\n };\r\n}\r\n\r\nconst SwitchInner = forwardRef<HTMLInputElement, SwitchProps>(\r\n function SwitchInner(props, forwardedRef) {\r\n const {\r\n as: Comp = 'input',\r\n disabled,\r\n checked,\r\n onChange,\r\n size = 'default',\r\n __css,\r\n icon,\r\n ...otherProps\r\n } = props;\r\n const color = checked ? 'primary' : 'on.surface';\r\n const theme = useTheme();\r\n\r\n return (\r\n <Box\r\n display=\"inline-block\"\r\n position=\"relative\"\r\n minWidth=\"auto\"\r\n sx={getSizeCssVariables(size, Boolean(icon))}\r\n >\r\n <SwitchTrail checked={checked} disabled={disabled} />\r\n <SwitchThumb checked={checked}>\r\n <RippleBox<\r\n RippleBoxProps<\r\n HTMLInputElement,\r\n InputHTMLAttributes<HTMLInputElement>\r\n >\r\n >\r\n as={Comp}\r\n role=\"switch\"\r\n type=\"checkbox\"\r\n checked={checked}\r\n onChange={onChange}\r\n theme={theme}\r\n ref={forwardedRef}\r\n aria-checked={checked ? 'true' : 'false'}\r\n rippleColor={color}\r\n baseOpacity={0}\r\n hoverOpacity={0.04}\r\n focusOpacity={0.12}\r\n center={true}\r\n disabled={disabled}\r\n data-switch-thumb=\"\"\r\n {...otherProps}\r\n __css={{\r\n top: '50%',\r\n left: '50%',\r\n backgroundColor: 'transparent',\r\n transform: 'translate(-50%, -50%)',\r\n width: '100%',\r\n height: '100%',\r\n appearance: 'none',\r\n ':focus': {\r\n outline: 'none',\r\n },\r\n border: 'none',\r\n borderRadius: 'full',\r\n zIndex: 1,\r\n position: 'absolute',\r\n ...__css,\r\n }}\r\n />\r\n <SwitchCircle checked={checked}>\r\n {icon\r\n ? cloneElement(icon, {\r\n checked,\r\n ['data-checkbox-icon' as any]: '',\r\n disabled,\r\n })\r\n : null}\r\n </SwitchCircle>\r\n </SwitchThumb>\r\n </Box>\r\n );\r\n }\r\n);\r\n\r\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>(function Switch(\r\n props,\r\n forwardedRef\r\n) {\r\n const { as = 'input', icon, disabled, children, ...otherProps } = props;\r\n\r\n const inner = (\r\n <CheckBoxCore\r\n as={SwitchInner}\r\n innerAs={as}\r\n ref={forwardedRef}\r\n icon={icon}\r\n disabled={disabled}\r\n {...otherProps}\r\n />\r\n );\r\n\r\n if (!children) {\r\n return inner;\r\n }\r\n\r\n return (\r\n <SelectionControlLabel>\r\n {inner}\r\n <SelectionControlText disabled={disabled}>\r\n {children}\r\n </SelectionControlText>\r\n </SelectionControlLabel>\r\n );\r\n});\r\n"],"mappings":";;;;;AACA,SAASA,YAAT,EAAuBC,UAAvB,QAAyC,OAAzC;AACA,SAASC,QAAQ,IAAIC,aAArB,QAA0C,gBAA1C;AACA,SAASC,GAAT,QAAoB,UAApB;AAGA,SAASC,SAAT,QAA0B,WAA1B;AAEA,SAASC,GAAT,QAAoB,QAApB;AACA,SAASC,QAAT,QAAyB,UAAzB;AACA,SACEC,qBADF,EAEEC,oBAFF,QAGO,qBAHP;AAIA,SAASC,WAAT,EAAsBC,WAAtB,EAAmCC,YAAnC,QAAuD,oBAAvD;;;AAEA,IAAMC,YAIL,GAAGV,aAJJ;;AAeA,SAASW,mBAAT,CAA6BC,IAA7B,EAAwDC,OAAxD,EAA0E;EAAA;;EACxE,IAAMC,UAAU,GAAGF,IAAI,KAAK,OAAT,GAAmB,IAAnB,GAA0B,CAA7C;EACA,IAAMG,YAAY,GAAG,CAArB;EACA,IAAMC,WAAW,GAAG,KAAKF,UAAzB;EACA,IAAMG,YAAY,GAAG,KAAKH,UAA1B;EACA,4DACG,uBADH,EAC6Bb,GAAG,CAACc,YAAD,CADhC,8BAEG,sBAFH,EAE4Bd,GAAG,CAACe,WAAD,CAF/B,8BAGG,uBAHH,EAG6Bf,GAAG,CAACgB,YAAD,CAHhC,8BAIG,oBAJH,EAI0BhB,GAAG,CAACgB,YAAY,GAAG,CAAhB,CAJ7B,8BAKG,2BALH,EAKiChB,GAAG,CAAC,KAAKa,UAAN,CALpC,8BAMG,sCANH,EAM4Cb,GAAG,CAC3CgB,YAAY,GAAGF,YAAY,GAAG,CADa,CAN/C,8BASG,oCATH,EAS0Cd,GAAG,CACzCgB,YAAY,GAAGF,YAAY,GAAG,CADW,CAT7C,8BAYG,wCAZH,EAY8Cd,GAAG,CAACgB,YAAY,GAAG,CAAhB,CAZjD,8BAaG,sCAbH,EAa4ChB,GAAG,CAC3CgB,YAAY,GAAGF,YAAY,GAAG,CADa,CAb/C,eAgBMF,OAAO,sCACR,wCADQ,EAEP,2CAFO,yBAGR,sCAHQ,EAIP,yCAJO,QAhBb;AAuBD;;AAED,IAAMK,WAAW,gBAAGpB,UAAU,CAC5B,SAASoB,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;EAAA;;EACxC,gBASID,KATJ,CACEE,EADF;EAAA,IACMC,IADN,0BACa,OADb;EAAA,IAEEC,QAFF,GASIJ,KATJ,CAEEI,QAFF;EAAA,IAGEC,OAHF,GASIL,KATJ,CAGEK,OAHF;EAAA,IAIEC,QAJF,GASIN,KATJ,CAIEM,QAJF;EAAA,kBASIN,KATJ,CAKEP,IALF;EAAA,IAKEA,IALF,4BAKS,SALT;EAAA,IAMEc,KANF,GASIP,KATJ,CAMEO,KANF;EAAA,IAOEC,IAPF,GASIR,KATJ,CAOEQ,IAPF;EAAA,IAQKC,UARL,4BASIT,KATJ;;EAUA,IAAMU,KAAK,GAAGL,OAAO,GAAG,SAAH,GAAe,YAApC;EACA,IAAMM,KAAK,GAAG1B,QAAQ,EAAtB;EAEA,oBACE,MAAC,GAAD;IACE,OAAO,EAAC,cADV;IAEE,QAAQ,EAAC,UAFX;IAGE,QAAQ,EAAC,MAHX;IAIE,EAAE,EAAEO,mBAAmB,CAACC,IAAD,EAAOmB,OAAO,CAACJ,IAAD,CAAd,CAJzB;IAAA,wBAME,KAAC,WAAD;MAAa,OAAO,EAAEH,OAAtB;MAA+B,QAAQ,EAAED;IAAzC,EANF,eAOE,MAAC,WAAD;MAAa,OAAO,EAAEC,OAAtB;MAAA,wBACE,KAAC,SAAD;QAME,EAAE,EAAEF,IANN;QAOE,IAAI,EAAC,QAPP;QAQE,IAAI,EAAC,UARP;QASE,OAAO,EAAEE,OATX;QAUE,QAAQ,EAAEC,QAVZ;QAWE,KAAK,EAAEK,KAXT;QAYE,GAAG,EAAEV,YAZP;QAaE,gBAAcI,OAAO,GAAG,MAAH,GAAY,OAbnC;QAcE,WAAW,EAAEK,KAdf;QAeE,WAAW,EAAE,CAff;QAgBE,YAAY,EAAE,IAhBhB;QAiBE,YAAY,EAAE,IAjBhB;QAkBE,MAAM,EAAE,IAlBV;QAmBE,QAAQ,EAAEN,QAnBZ;QAoBE,qBAAkB;MApBpB,GAqBMK,UArBN;QAsBE,KAAK;UACHI,GAAG,EAAE,KADF;UAEHC,IAAI,EAAE,KAFH;UAGHC,eAAe,EAAE,aAHd;UAIHC,SAAS,EAAE,uBAJR;UAKHC,KAAK,EAAE,MALJ;UAMHC,MAAM,EAAE,MANL;UAOHC,UAAU,EAAE,MAPT;UAQH,UAAU;YACRC,OAAO,EAAE;UADD,CARP;UAWHC,MAAM,EAAE,MAXL;UAYHC,YAAY,EAAE,MAZX;UAaHC,MAAM,EAAE,CAbL;UAcHC,QAAQ,EAAE;QAdP,GAeAjB,KAfA;MAtBP,GADF,eAyCE,KAAC,YAAD;QAAc,OAAO,EAAEF,OAAvB;QAAA,UACGG,IAAI,gBACD9B,YAAY,CAAC8B,IAAD;UACVH,OAAO,EAAPA;QADU,kCAET,oBAFS,EAEqB,EAFrB,8CAGVD,QAHU,kBADX,GAMD;MAPN,EAzCF;IAAA,EAPF;EAAA,EADF;AA6DD,CA5E2B,CAA9B;AA+EA,OAAO,IAAMqB,MAAM,gBAAG9C,UAAU,CAAgC,SAAS8C,MAAT,CAC9DzB,KAD8D,EAE9DC,YAF8D,EAG9D;EACA,iBAAkED,KAAlE,CAAQE,EAAR;EAAA,IAAQA,EAAR,2BAAa,OAAb;EAAA,IAAsBM,IAAtB,GAAkER,KAAlE,CAAsBQ,IAAtB;EAAA,IAA4BJ,QAA5B,GAAkEJ,KAAlE,CAA4BI,QAA5B;EAAA,IAAsCsB,QAAtC,GAAkE1B,KAAlE,CAAsC0B,QAAtC;EAAA,IAAmDjB,UAAnD,4BAAkET,KAAlE;;EAEA,IAAM2B,KAAK,gBACT,KAAC,YAAD;IACE,EAAE,EAAE5B,WADN;IAEE,OAAO,EAAEG,EAFX;IAGE,GAAG,EAAED,YAHP;IAIE,IAAI,EAAEO,IAJR;IAKE,QAAQ,EAAEJ;EALZ,GAMMK,UANN,EADF;;EAWA,IAAI,CAACiB,QAAL,EAAe;IACb,OAAOC,KAAP;EACD;;EAED,oBACE,MAAC,qBAAD;IAAA,WACGA,KADH,eAEE,KAAC,oBAAD;MAAsB,QAAQ,EAAEvB,QAAhC;MAAA,UACGsB;IADH,EAFF;EAAA,EADF;AAQD,CA7B+B,CAAzB"}
@@ -1 +1 @@
1
- export * from './Switch';
1
+ export * from './Switch';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Switch/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAd","sourcesContent":["export * from './Switch';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/Switch/index.ts"],"sourcesContent":["export * from './Switch';\r\n"],"mappings":"AAAA,cAAc,UAAd"}
@@ -1,13 +1,13 @@
1
- export declare const SwitchTrail: ({ checked, disabled, ...otherProps }: {
2
- [x: string]: any;
3
- checked?: boolean | undefined;
4
- disabled?: boolean | undefined;
5
- }) => JSX.Element;
6
- export declare const SwitchThumb: ({ checked, ...otherProps }: {
7
- [x: string]: any;
8
- checked?: boolean | undefined;
9
- }) => JSX.Element;
10
- export declare const SwitchCircle: ({ checked, ...otherProps }: {
11
- [x: string]: any;
12
- checked?: boolean | undefined;
13
- }) => JSX.Element;
1
+ export declare const SwitchTrail: ({ checked, disabled, ...otherProps }: {
2
+ [x: string]: any;
3
+ checked?: boolean | undefined;
4
+ disabled?: boolean | undefined;
5
+ }) => JSX.Element;
6
+ export declare const SwitchThumb: ({ checked, ...otherProps }: {
7
+ [x: string]: any;
8
+ checked?: boolean | undefined;
9
+ }) => JSX.Element;
10
+ export declare const SwitchCircle: ({ checked, ...otherProps }: {
11
+ [x: string]: any;
12
+ checked?: boolean | undefined;
13
+ }) => JSX.Element;
@@ -1,28 +1,32 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import { rem } from 'polished';
3
+ var _excluded = ["checked", "disabled"],
4
+ _excluded2 = ["checked"],
5
+ _excluded3 = ["checked"];
4
6
  import { Box } from '../Box';
7
+ import { EASING_STANDARD } from '../motion';
5
8
  import { jsx as _jsx } from "react/jsx-runtime";
6
- var BORDER_WIDTH = 2;
7
- var TRAIL_WIDTH = 52;
8
- var TRAIL_HEIGHT = 32;
9
- var CIRCLE_SIZE_INACTIVE_CHECKED = 24;
10
- var CIRCLE_SIZE_ACTIVE_CHECKED = 28;
11
- var CIRCLE_SIZE_INACTIVE_UNCHECKED = 16;
12
- var CIRCLE_SIZE_ACTIVE_UNCHECKED = 28;
9
+ var BORDER_WIDTH = 'var(--switch-border-width)';
10
+ var TRAIL_WIDTH = 'var(--switch-trail-width)';
11
+ var TRAIL_HEIGHT = 'var(--switch-trail-height)';
12
+ var STATE_LAYER_SIZE = 'var(--switch-state-layer-size)';
13
+ var CIRCLE_SIZE_INACTIVE_CHECKED = 'var(--switch-thumb-size-checked-inactive)';
14
+ var CIRCLE_SIZE_ACTIVE_CHECKED = 'var(--switch-thumb-size-checked-active)';
15
+ var CIRCLE_SIZE_INACTIVE_UNCHECKED = 'var(--switch-thumb-size-unchecked-inactive)';
16
+ var CIRCLE_SIZE_ACTIVE_UNCHECKED = 'var(--switch-thumb-size-unchecked-active)';
13
17
  export var SwitchTrail = function SwitchTrail(_ref) {
14
18
  var _ref$checked = _ref.checked,
15
19
  checked = _ref$checked === void 0 ? false : _ref$checked,
16
20
  _ref$disabled = _ref.disabled,
17
21
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
18
- otherProps = _objectWithoutProperties(_ref, ["checked", "disabled"]);
22
+ otherProps = _objectWithoutProperties(_ref, _excluded);
19
23
 
20
24
  return /*#__PURE__*/_jsx(Box, _extends({
21
25
  __css: _extends({
22
- width: rem(TRAIL_WIDTH),
23
- height: rem(TRAIL_HEIGHT),
24
- borderRadius: rem(TRAIL_HEIGHT / 2),
25
- borderWidth: rem(BORDER_WIDTH),
26
+ width: TRAIL_WIDTH,
27
+ height: TRAIL_HEIGHT,
28
+ borderRadius: 'full',
29
+ borderWidth: BORDER_WIDTH,
26
30
  borderStyle: 'solid',
27
31
  backgroundColor: checked ? 'primary' : 'surface-variant',
28
32
  borderColor: checked ? 'primary' : 'outline'
@@ -33,26 +37,25 @@ export var SwitchTrail = function SwitchTrail(_ref) {
33
37
  })
34
38
  }, otherProps));
35
39
  };
36
- var THUMB_SIZE = 40;
37
40
  export var SwitchThumb = function SwitchThumb(_ref2) {
38
41
  var _ref2$checked = _ref2.checked,
39
42
  checked = _ref2$checked === void 0 ? false : _ref2$checked,
40
- otherProps = _objectWithoutProperties(_ref2, ["checked"]);
43
+ otherProps = _objectWithoutProperties(_ref2, _excluded2);
41
44
 
42
45
  return /*#__PURE__*/_jsx(Box, _extends({
43
46
  position: "absolute",
44
- width: rem(THUMB_SIZE),
45
- height: rem(THUMB_SIZE),
47
+ width: STATE_LAYER_SIZE,
48
+ height: STATE_LAYER_SIZE,
46
49
  borderRadius: "full",
47
50
  left: '50%',
48
51
  top: '50%',
49
52
  __css: {
50
- transform: "translateX(calc(-50% ".concat(checked ? '+' : '-', " ").concat(rem((TRAIL_WIDTH - CIRCLE_SIZE_INACTIVE_CHECKED - BORDER_WIDTH * 4) / 2), ")) translateY(-50%)"),
53
+ transform: "translateX(calc(-50% ".concat(checked ? '+' : '-', "\n (").concat(TRAIL_WIDTH, " - ").concat(CIRCLE_SIZE_INACTIVE_CHECKED, " - ").concat(BORDER_WIDTH, " * 4) / 2\n )) translateY(-50%)"),
51
54
  WebkitTapHighlightColor: 'transparent',
52
- transition: 'background-color 90ms cubic-bezier(.4,0,.2,1),border-color 90ms cubic-bezier(.4,0,.2,1),transform 90ms cubic-bezier(.4,0,.2,1),height 90ms cubic-bezier(.4,0,.2,1),width 90ms cubic-bezier(.4,0,.2,1)',
55
+ transition: "background-color 90ms ".concat(EASING_STANDARD, ",border-color 90ms ").concat(EASING_STANDARD, ",transform 90ms ").concat(EASING_STANDARD, ",height 90ms ").concat(EASING_STANDARD, ",width 90ms ").concat(EASING_STANDARD),
53
56
  '& > input': {
54
- width: THUMB_SIZE,
55
- height: THUMB_SIZE
57
+ width: STATE_LAYER_SIZE,
58
+ height: STATE_LAYER_SIZE
56
59
  }
57
60
  }
58
61
  }, otherProps));
@@ -60,24 +63,29 @@ export var SwitchThumb = function SwitchThumb(_ref2) {
60
63
  export var SwitchCircle = function SwitchCircle(_ref3) {
61
64
  var _ref3$checked = _ref3.checked,
62
65
  checked = _ref3$checked === void 0 ? false : _ref3$checked,
63
- otherProps = _objectWithoutProperties(_ref3, ["checked"]);
66
+ otherProps = _objectWithoutProperties(_ref3, _excluded3);
64
67
 
65
68
  return /*#__PURE__*/_jsx(Box, _extends({
66
69
  __css: {
67
70
  position: 'absolute',
68
- width: checked ? rem(CIRCLE_SIZE_INACTIVE_CHECKED) : rem(CIRCLE_SIZE_INACTIVE_UNCHECKED),
69
- height: checked ? rem(CIRCLE_SIZE_INACTIVE_CHECKED) : rem(CIRCLE_SIZE_INACTIVE_UNCHECKED),
71
+ display: 'inline-flex',
72
+ alignItems: 'center',
73
+ justifyContent: 'center',
74
+ width: checked ? CIRCLE_SIZE_INACTIVE_CHECKED : CIRCLE_SIZE_INACTIVE_UNCHECKED,
75
+ height: checked ? CIRCLE_SIZE_INACTIVE_CHECKED : CIRCLE_SIZE_INACTIVE_UNCHECKED,
70
76
  boxSizing: 'border-box',
71
77
  borderRadius: 'full',
72
78
  pointerEvents: 'none',
73
79
  zIndex: 1,
74
80
  backgroundColor: checked ? 'on.primary' : 'outline',
81
+ color: checked ? 'primary' : 'on.outline',
75
82
  top: '50%',
76
83
  left: '50%',
77
84
  transform: 'translate(-50%, -50%)',
78
85
  transition: 'inherit',
79
86
  '[data-switch-thumb=""]:active ~ &, [data-switch-thumb=""]:focus-visible ~ &, [data-switch-thumb=""]:hover ~ &': {
80
- backgroundColor: checked ? 'primary-container' : 'on.surface-variant'
87
+ backgroundColor: checked ? 'primary-container' : 'on.surface-variant',
88
+ color: checked ? 'on.primary-container' : 'surface-variant'
81
89
  },
82
90
  '[data-switch-thumb=""]:active ~ &, [data-switch-thumb=""]:focus-visible ~ &': {
83
91
  height: checked ? CIRCLE_SIZE_ACTIVE_CHECKED : CIRCLE_SIZE_ACTIVE_UNCHECKED,
@@ -86,6 +94,7 @@ export var SwitchCircle = function SwitchCircle(_ref3) {
86
94
  '[data-switch-thumb=""]:disabled ~ &': {
87
95
  opacity: checked ? 1 : 0.38,
88
96
  backgroundColor: checked ? 'surface' : 'on.surface',
97
+ color: checked ? 'on.surface' : 'surface',
89
98
  height: checked ? CIRCLE_SIZE_INACTIVE_CHECKED : CIRCLE_SIZE_INACTIVE_UNCHECKED,
90
99
  width: checked ? CIRCLE_SIZE_INACTIVE_CHECKED : CIRCLE_SIZE_INACTIVE_UNCHECKED
91
100
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Switch/styledComponents.tsx"],"names":["rem","Box","BORDER_WIDTH","TRAIL_WIDTH","TRAIL_HEIGHT","CIRCLE_SIZE_INACTIVE_CHECKED","CIRCLE_SIZE_ACTIVE_CHECKED","CIRCLE_SIZE_INACTIVE_UNCHECKED","CIRCLE_SIZE_ACTIVE_UNCHECKED","SwitchTrail","checked","disabled","otherProps","width","height","borderRadius","borderWidth","borderStyle","backgroundColor","borderColor","opacity","THUMB_SIZE","SwitchThumb","transform","WebkitTapHighlightColor","transition","SwitchCircle","position","boxSizing","pointerEvents","zIndex","top","left"],"mappings":"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","sourcesContent":["import { rem } from 'polished';\n\nimport { Box } from '../Box';\n\nconst BORDER_WIDTH = 2;\nconst TRAIL_WIDTH = 52;\nconst TRAIL_HEIGHT = 32;\nconst CIRCLE_SIZE_INACTIVE_CHECKED = 24;\nconst CIRCLE_SIZE_ACTIVE_CHECKED = 28;\nconst CIRCLE_SIZE_INACTIVE_UNCHECKED = 16;\nconst CIRCLE_SIZE_ACTIVE_UNCHECKED = 28;\n\nexport const SwitchTrail = ({\n checked = false,\n disabled = false,\n ...otherProps\n}) => (\n <Box\n __css={{\n width: rem(TRAIL_WIDTH),\n height: rem(TRAIL_HEIGHT),\n borderRadius: rem(TRAIL_HEIGHT / 2),\n borderWidth: rem(BORDER_WIDTH),\n borderStyle: 'solid',\n backgroundColor: checked ? 'primary' : 'surface-variant',\n borderColor: checked ? 'primary' : 'outline',\n ...(disabled && {\n opacity: 0.12,\n backgroundColor: checked ? 'on.surface' : 'surface-variant',\n borderColor: 'on.surface',\n }),\n }}\n {...otherProps}\n />\n);\n\nconst THUMB_SIZE = 40;\nexport const SwitchThumb = ({ checked = false, ...otherProps }) => (\n <Box\n position=\"absolute\"\n width={rem(THUMB_SIZE)}\n height={rem(THUMB_SIZE)}\n borderRadius=\"full\"\n left={'50%'}\n top={'50%'}\n __css={{\n transform: `translateX(calc(-50% ${checked ? '+' : '-'} ${rem(\n (TRAIL_WIDTH - CIRCLE_SIZE_INACTIVE_CHECKED - BORDER_WIDTH * 4) / 2\n )})) translateY(-50%)`,\n WebkitTapHighlightColor: 'transparent',\n transition:\n 'background-color 90ms cubic-bezier(.4,0,.2,1),border-color 90ms cubic-bezier(.4,0,.2,1),transform 90ms cubic-bezier(.4,0,.2,1),height 90ms cubic-bezier(.4,0,.2,1),width 90ms cubic-bezier(.4,0,.2,1)',\n '& > input': {\n width: THUMB_SIZE,\n height: THUMB_SIZE,\n },\n }}\n {...otherProps}\n />\n);\n\nexport const SwitchCircle = ({ checked = false, ...otherProps }) => (\n <Box\n __css={{\n position: 'absolute',\n width: checked\n ? rem(CIRCLE_SIZE_INACTIVE_CHECKED)\n : rem(CIRCLE_SIZE_INACTIVE_UNCHECKED),\n height: checked\n ? rem(CIRCLE_SIZE_INACTIVE_CHECKED)\n : rem(CIRCLE_SIZE_INACTIVE_UNCHECKED),\n boxSizing: 'border-box',\n borderRadius: 'full',\n pointerEvents: 'none',\n zIndex: 1,\n backgroundColor: checked ? 'on.primary' : 'outline',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n transition: 'inherit',\n '[data-switch-thumb=\"\"]:active ~ &, [data-switch-thumb=\"\"]:focus-visible ~ &, [data-switch-thumb=\"\"]:hover ~ &':\n {\n backgroundColor: checked ? 'primary-container' : 'on.surface-variant',\n },\n '[data-switch-thumb=\"\"]:active ~ &, [data-switch-thumb=\"\"]:focus-visible ~ &':\n {\n height: checked\n ? CIRCLE_SIZE_ACTIVE_CHECKED\n : CIRCLE_SIZE_ACTIVE_UNCHECKED,\n width: checked\n ? CIRCLE_SIZE_ACTIVE_CHECKED\n : CIRCLE_SIZE_ACTIVE_UNCHECKED,\n },\n '[data-switch-thumb=\"\"]:disabled ~ &': {\n opacity: checked ? 1 : 0.38,\n backgroundColor: checked ? 'surface' : 'on.surface',\n height: checked\n ? CIRCLE_SIZE_INACTIVE_CHECKED\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\n width: checked\n ? CIRCLE_SIZE_INACTIVE_CHECKED\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\n },\n }}\n data-switch-circle=\"\"\n role=\"presentation\"\n aria-hidden=\"true\"\n {...otherProps}\n />\n);\n"],"file":"styledComponents.js"}
1
+ {"version":3,"file":"styledComponents.js","names":["Box","EASING_STANDARD","BORDER_WIDTH","TRAIL_WIDTH","TRAIL_HEIGHT","STATE_LAYER_SIZE","CIRCLE_SIZE_INACTIVE_CHECKED","CIRCLE_SIZE_ACTIVE_CHECKED","CIRCLE_SIZE_INACTIVE_UNCHECKED","CIRCLE_SIZE_ACTIVE_UNCHECKED","SwitchTrail","checked","disabled","otherProps","width","height","borderRadius","borderWidth","borderStyle","backgroundColor","borderColor","opacity","SwitchThumb","transform","WebkitTapHighlightColor","transition","SwitchCircle","position","display","alignItems","justifyContent","boxSizing","pointerEvents","zIndex","color","top","left"],"sources":["../../../src/Switch/styledComponents.tsx"],"sourcesContent":["import { Box } from '../Box';\r\nimport { EASING_STANDARD } from '../motion';\r\n\r\nconst BORDER_WIDTH = 'var(--switch-border-width)';\r\nconst TRAIL_WIDTH = 'var(--switch-trail-width)';\r\nconst TRAIL_HEIGHT = 'var(--switch-trail-height)';\r\nconst STATE_LAYER_SIZE = 'var(--switch-state-layer-size)';\r\nconst CIRCLE_SIZE_INACTIVE_CHECKED =\r\n 'var(--switch-thumb-size-checked-inactive)';\r\nconst CIRCLE_SIZE_ACTIVE_CHECKED = 'var(--switch-thumb-size-checked-active)';\r\nconst CIRCLE_SIZE_INACTIVE_UNCHECKED =\r\n 'var(--switch-thumb-size-unchecked-inactive)';\r\nconst CIRCLE_SIZE_ACTIVE_UNCHECKED =\r\n 'var(--switch-thumb-size-unchecked-active)';\r\n\r\nexport const SwitchTrail = ({\r\n checked = false,\r\n disabled = false,\r\n ...otherProps\r\n}) => (\r\n <Box\r\n __css={{\r\n width: TRAIL_WIDTH,\r\n height: TRAIL_HEIGHT,\r\n borderRadius: 'full',\r\n borderWidth: BORDER_WIDTH,\r\n borderStyle: 'solid',\r\n backgroundColor: checked ? 'primary' : 'surface-variant',\r\n borderColor: checked ? 'primary' : 'outline',\r\n ...(disabled && {\r\n opacity: 0.12,\r\n backgroundColor: checked ? 'on.surface' : 'surface-variant',\r\n borderColor: 'on.surface',\r\n }),\r\n }}\r\n {...otherProps}\r\n />\r\n);\r\n\r\nexport const SwitchThumb = ({ checked = false, ...otherProps }) => (\r\n <Box\r\n position=\"absolute\"\r\n width={STATE_LAYER_SIZE}\r\n height={STATE_LAYER_SIZE}\r\n borderRadius=\"full\"\r\n left={'50%'}\r\n top={'50%'}\r\n __css={{\r\n transform: `translateX(calc(-50% ${checked ? '+' : '-'}\r\n (${TRAIL_WIDTH} - ${CIRCLE_SIZE_INACTIVE_CHECKED} - ${BORDER_WIDTH} * 4) / 2\r\n )) translateY(-50%)`,\r\n WebkitTapHighlightColor: 'transparent',\r\n transition: `background-color 90ms ${EASING_STANDARD},border-color 90ms ${EASING_STANDARD},transform 90ms ${EASING_STANDARD},height 90ms ${EASING_STANDARD},width 90ms ${EASING_STANDARD}`,\r\n '& > input': {\r\n width: STATE_LAYER_SIZE,\r\n height: STATE_LAYER_SIZE,\r\n },\r\n }}\r\n {...otherProps}\r\n />\r\n);\r\n\r\nexport const SwitchCircle = ({ checked = false, ...otherProps }) => (\r\n <Box\r\n __css={{\r\n position: 'absolute',\r\n display: 'inline-flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n width: checked\r\n ? CIRCLE_SIZE_INACTIVE_CHECKED\r\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\r\n height: checked\r\n ? CIRCLE_SIZE_INACTIVE_CHECKED\r\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\r\n boxSizing: 'border-box',\r\n borderRadius: 'full',\r\n pointerEvents: 'none',\r\n zIndex: 1,\r\n backgroundColor: checked ? 'on.primary' : 'outline',\r\n color: checked ? 'primary' : 'on.outline',\r\n top: '50%',\r\n left: '50%',\r\n transform: 'translate(-50%, -50%)',\r\n transition: 'inherit',\r\n '[data-switch-thumb=\"\"]:active ~ &, [data-switch-thumb=\"\"]:focus-visible ~ &, [data-switch-thumb=\"\"]:hover ~ &':\r\n {\r\n backgroundColor: checked ? 'primary-container' : 'on.surface-variant',\r\n color: checked ? 'on.primary-container' : 'surface-variant',\r\n },\r\n '[data-switch-thumb=\"\"]:active ~ &, [data-switch-thumb=\"\"]:focus-visible ~ &':\r\n {\r\n height: checked\r\n ? CIRCLE_SIZE_ACTIVE_CHECKED\r\n : CIRCLE_SIZE_ACTIVE_UNCHECKED,\r\n width: checked\r\n ? CIRCLE_SIZE_ACTIVE_CHECKED\r\n : CIRCLE_SIZE_ACTIVE_UNCHECKED,\r\n },\r\n '[data-switch-thumb=\"\"]:disabled ~ &': {\r\n opacity: checked ? 1 : 0.38,\r\n backgroundColor: checked ? 'surface' : 'on.surface',\r\n color: checked ? 'on.surface' : 'surface',\r\n height: checked\r\n ? CIRCLE_SIZE_INACTIVE_CHECKED\r\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\r\n width: checked\r\n ? CIRCLE_SIZE_INACTIVE_CHECKED\r\n : CIRCLE_SIZE_INACTIVE_UNCHECKED,\r\n },\r\n }}\r\n data-switch-circle=\"\"\r\n role=\"presentation\"\r\n aria-hidden=\"true\"\r\n {...otherProps}\r\n />\r\n);\r\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import type { TabProps as TabPropsCore } from '@basic-ui/core';
3
- import type { RippleBoxProps } from '../Ripple';
4
- export declare type TabProps = TabPropsCore & RippleBoxProps<HTMLButtonElement, React.ButtonHTMLAttributes<HTMLButtonElement>>;
5
- export declare const Tab: React.ForwardRefExoticComponent<Pick<TabProps, "bottom" | "top" | "hidden" | "center" | "left" | "right" | "as" | "sx" | "__css" | "variant" | "tx" | "theme" | "m" | "margin" | "mt" | "marginTop" | "mr" | "marginRight" | "mb" | "marginBottom" | "ml" | "marginLeft" | "mx" | "marginX" | "my" | "marginY" | "p" | "padding" | "pt" | "paddingTop" | "pr" | "paddingRight" | "pb" | "paddingBottom" | "pl" | "paddingLeft" | "px" | "paddingX" | "py" | "paddingY" | "width" | "height" | "minWidth" | "minHeight" | "maxWidth" | "maxHeight" | "display" | "verticalAlign" | "size" | "overflow" | "overflowX" | "overflowY" | "fontFamily" | "fontSize" | "fontWeight" | "lineHeight" | "letterSpacing" | "fontStyle" | "textAlign" | "color" | "bg" | "backgroundColor" | "opacity" | "alignItems" | "alignContent" | "justifyItems" | "justifyContent" | "flexWrap" | "flexDirection" | "flex" | "flexGrow" | "flexShrink" | "flexBasis" | "justifySelf" | "alignSelf" | "order" | "border" | "borderX" | "borderY" | "borderWidth" | "borderTopWidth" | "borderBottomWidth" | "borderLeftWidth" | "borderRightWidth" | "borderStyle" | "borderTopStyle" | "borderBottomStyle" | "borderLeftStyle" | "borderRightStyle" | "borderColor" | "borderTopColor" | "borderBottomColor" | "borderLeftColor" | "borderRightColor" | "borderRadius" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "gridGap" | "gridColumnGap" | "gridRowGap" | "gridColumn" | "gridRow" | "gridAutoFlow" | "gridAutoColumns" | "gridAutoRows" | "gridTemplateColumns" | "gridTemplateRows" | "gridTemplateAreas" | "gridArea" | "background" | "backgroundImage" | "backgroundSize" | "backgroundPosition" | "backgroundRepeat" | "position" | "zIndex" | "boxShadow" | "textShadow" | "autoFocus" | "disabled" | "form" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "type" | "value" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "style" | "tabIndex" | "title" | "translate" | "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" | "children" | "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" | "innerAs" | "key" | "baseOpacity" | "hoverOpacity" | "focusOpacity" | "pressedOpacity" | "rippleColor" | "rippleEnabled"> & React.RefAttributes<HTMLButtonElement>>;
1
+ import type { ButtonHTMLAttributes } from 'react';
2
+ import type { TabProps as TabPropsCore } from '@basic-ui/core';
3
+ import type { RippleBoxProps } from '../Ripple';
4
+ export declare type TabProps = TabPropsCore & RippleBoxProps<HTMLButtonElement, ButtonHTMLAttributes<HTMLButtonElement>>;
5
+ export declare const Tab: import("react").ForwardRefExoticComponent<Pick<TabProps, "boxShadow" | "fontWeight" | "zIndex" | "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" | "color" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "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" | "background" | "border" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderStyle" | "borderTop" | "borderWidth" | "flex" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "bg" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "p" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "center" | "form" | "slot" | "style" | "title" | "hidden" | "as" | "sx" | "__css" | "variant" | "tx" | "theme" | "size" | "borderX" | "borderY" | "gridGap" | "gridColumnGap" | "gridRowGap" | "autoFocus" | "disabled" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "type" | "value" | "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" | "children" | "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" | "rippleColor" | "pressedOpacity" | "rippleEnabled" | "baseOpacity" | "hoverOpacity" | "focusOpacity" | "mouseFocus" | "innerAs"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -1,7 +1,9 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- import { forwardRef } from 'react';
4
- import * as React from 'react';
4
+ var _excluded = ["innerAs", "selected", "children", "disabled"],
5
+ _excluded2 = ["as"];
6
+ import { useState, useEffect, useRef, forwardRef } from 'react';
5
7
  import { Tab as TabCore } from '@basic-ui/core';
6
8
  import { RippleBox } from '../Ripple';
7
9
  import { alpha } from '../color';
@@ -16,28 +18,41 @@ var TabInner = /*#__PURE__*/forwardRef(function Tab(props, forwardedRef) {
16
18
  selected = props.selected,
17
19
  children = props.children,
18
20
  disabled = props.disabled,
19
- otherProps = _objectWithoutProperties(props, ["innerAs", "selected", "children", "disabled"]);
21
+ otherProps = _objectWithoutProperties(props, _excluded);
20
22
 
21
23
  var _useTabListContext = useTabListContext(),
22
24
  textColor = _useTabListContext.textColor,
23
25
  indicatorColor = _useTabListContext.indicatorColor,
24
- selectedTextColor = _useTabListContext.selectedTextColor;
26
+ selectedTextColor = _useTabListContext.selectedTextColor,
27
+ variant = _useTabListContext.variant;
25
28
 
29
+ var labelRef = useRef(null);
30
+
31
+ var _useState = useState(false),
32
+ _useState2 = _slicedToArray(_useState, 2),
33
+ mounted = _useState2[0],
34
+ setMounted = _useState2[1];
35
+
36
+ useEffect(function () {
37
+ setMounted(true);
38
+ }, []);
26
39
  return /*#__PURE__*/_jsxs(Box, {
27
40
  position: "relative",
28
41
  display: "flex",
29
42
  flex: 1,
30
43
  flexDirection: "column",
31
- children: [/*#__PURE__*/_jsx(RippleBox, _extends({
44
+ height: "100%",
45
+ children: [/*#__PURE__*/_jsx(RippleBox, _extends(_extends({
32
46
  as: innerAs,
33
47
  ref: forwardedRef,
34
48
  rippleColor: indicatorColor,
35
49
  disabled: disabled,
36
50
  __css: {
37
51
  px: 3,
38
- position: 'relative',
52
+ py: 0,
39
53
  color: selected ? selectedTextColor || indicatorColor : alpha(textColor, disabled ? 0.37 : 0.7),
40
- height: "3rem",
54
+ minHeight: "3rem",
55
+ height: '100%',
41
56
  backgroundColor: 'transparent',
42
57
  border: 'none',
43
58
  ':focus': {
@@ -46,25 +61,47 @@ var TabInner = /*#__PURE__*/forwardRef(function Tab(props, forwardedRef) {
46
61
  width: '100%',
47
62
  alignItems: 'center'
48
63
  }
49
- }, otherProps, {
64
+ }, otherProps), {}, {
50
65
  children: /*#__PURE__*/_jsx(Text, {
51
66
  as: "span",
52
- variant: "button",
53
- color: "inherit",
54
- height: "100%",
55
- textAlign: "center",
67
+ variant: "title-small",
68
+ ref: labelRef,
69
+ __css: _extends({
70
+ display: 'inline-flex',
71
+ justifyContent: 'center',
72
+ alignItems: 'center',
73
+ color: 'inherit',
74
+ height: '100%',
75
+ textAlign: 'center',
76
+ position: 'relative',
77
+ flexDirection: 'column'
78
+ }, variant === 'primary' && selected && !mounted && {
79
+ '&::before': {
80
+ content: '""',
81
+ bg: indicatorColor,
82
+ position: 'absolute',
83
+ bottom: 0,
84
+ zIndex: 1,
85
+ width: '100%',
86
+ height: "0.1875rem",
87
+ borderTopLeftRadius: "0.1875rem",
88
+ borderTopRightRadius: "0.1875rem"
89
+ }
90
+ }),
56
91
  children: children
57
92
  })
58
93
  })), /*#__PURE__*/_jsx(TabIndicator, {
59
94
  selected: selected,
60
- color: indicatorColor
95
+ color: indicatorColor,
96
+ variant: variant,
97
+ labelRef: labelRef
61
98
  })]
62
99
  });
63
100
  });
64
101
  export var Tab = /*#__PURE__*/forwardRef(function Tab(props, forwardedRef) {
65
102
  var _props$as = props.as,
66
103
  as = _props$as === void 0 ? 'button' : _props$as,
67
- otherProps = _objectWithoutProperties(props, ["as"]);
104
+ otherProps = _objectWithoutProperties(props, _excluded2);
68
105
 
69
106
  return /*#__PURE__*/_jsx(TabCore, _extends({
70
107
  as: TabInner,