-
-
Notifications
You must be signed in to change notification settings - Fork 32.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[material-next][ButtonGroup] Copy
ButtonGroup
to material next (#39739
) Signed-off-by: Lucas Hilgert <[email protected]> Co-authored-by: Albert Yu <[email protected]>
- Loading branch information
1 parent
a545acd
commit 6bc9bab
Showing
9 changed files
with
940 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
107 changes: 107 additions & 0 deletions
107
packages/mui-material-next/src/ButtonGroup/ButtonGroup.d.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
import * as React from 'react'; | ||
import { SxProps } from '@mui/system'; | ||
import { OverridableComponent, OverridableStringUnion, OverrideProps } from '@mui/types'; | ||
import { Theme } from '../styles'; | ||
import { ButtonGroupClasses } from './buttonGroupClasses'; | ||
|
||
export interface ButtonGroupPropsColorOverrides {} | ||
export interface ButtonGroupPropsVariantOverrides {} | ||
export interface ButtonGroupPropsSizeOverrides {} | ||
|
||
export interface ButtonGroupOwnProps { | ||
/** | ||
* The content of the component. | ||
*/ | ||
children?: React.ReactNode; | ||
/** | ||
* Override or extend the styles applied to the component. | ||
*/ | ||
classes?: Partial<ButtonGroupClasses>; | ||
/** | ||
* The color of the component. | ||
* It supports both default and custom theme colors, which can be added as shown in the | ||
* [palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors). | ||
* @default 'primary' | ||
*/ | ||
color?: OverridableStringUnion< | ||
'inherit' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning', | ||
ButtonGroupPropsColorOverrides | ||
>; | ||
/** | ||
* If `true`, the component is disabled. | ||
* @default false | ||
*/ | ||
disabled?: boolean; | ||
/** | ||
* If `true`, no elevation is used. | ||
* @default false | ||
*/ | ||
disableElevation?: boolean; | ||
/** | ||
* If `true`, the button ripple effect is disabled. | ||
* @default false | ||
*/ | ||
disableRipple?: boolean; | ||
/** | ||
* If `true`, the touch ripple effect is disabled. | ||
* @default false | ||
*/ | ||
disableTouchRipple?: boolean; | ||
/** | ||
* If `true`, the buttons will take up the full width of its container. | ||
* @default false | ||
*/ | ||
fullWidth?: boolean; | ||
/** | ||
* The component orientation (layout flow direction). | ||
* @default 'horizontal' | ||
*/ | ||
orientation?: 'vertical' | 'horizontal'; | ||
/** | ||
* The size of the component. | ||
* `small` is equivalent to the dense button styling. | ||
* @default 'medium' | ||
*/ | ||
size?: OverridableStringUnion<'small' | 'medium' | 'large', ButtonGroupPropsSizeOverrides>; | ||
/** | ||
* The variant to use. | ||
* @default 'outlined' | ||
*/ | ||
variant?: OverridableStringUnion< | ||
'text' | 'outlined' | 'contained', | ||
ButtonGroupPropsVariantOverrides | ||
>; | ||
/** | ||
* The system prop that allows defining system overrides as well as additional CSS styles. | ||
*/ | ||
sx?: SxProps<Theme>; | ||
} | ||
|
||
export interface ButtonGroupTypeMap< | ||
AdditionalProps = {}, | ||
RootComponent extends React.ElementType = 'div', | ||
> { | ||
props: AdditionalProps & ButtonGroupOwnProps; | ||
defaultComponent: RootComponent; | ||
} | ||
|
||
/** | ||
* | ||
* Demos: | ||
* | ||
* - [Button Group](https://mui.com/material-ui/react-button-group/) | ||
* | ||
* API: | ||
* | ||
* - [ButtonGroup API](https://mui.com/material-ui/api/button-group/) | ||
*/ | ||
declare const ButtonGroup: OverridableComponent<ButtonGroupTypeMap>; | ||
|
||
export type ButtonGroupProps< | ||
RootComponent extends React.ElementType = ButtonGroupTypeMap['defaultComponent'], | ||
AdditionalProps = {}, | ||
> = OverrideProps<ButtonGroupTypeMap<AdditionalProps, RootComponent>, RootComponent> & { | ||
component?: React.ElementType; | ||
}; | ||
|
||
export default ButtonGroup; |
Oops, something went wrong.