Fix props for <Button> (#29780)
				
					
				
			This commit is contained in:
		@@ -1,26 +1,26 @@
 | 
			
		||||
import type { PropsWithChildren } from 'react';
 | 
			
		||||
import { useCallback } from 'react';
 | 
			
		||||
 | 
			
		||||
import classNames from 'classnames';
 | 
			
		||||
 | 
			
		||||
interface BaseProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
 | 
			
		||||
interface BaseProps
 | 
			
		||||
  extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
 | 
			
		||||
  block?: boolean;
 | 
			
		||||
  secondary?: boolean;
 | 
			
		||||
  text?: JSX.Element;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
interface PropsWithChildren extends BaseProps {
 | 
			
		||||
  text?: never;
 | 
			
		||||
interface PropsChildren extends PropsWithChildren<BaseProps> {
 | 
			
		||||
  text?: undefined;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
interface PropsWithText extends BaseProps {
 | 
			
		||||
  text: JSX.Element;
 | 
			
		||||
  children: never;
 | 
			
		||||
  text: JSX.Element | string;
 | 
			
		||||
  children?: undefined;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Props = PropsWithText | PropsWithChildren;
 | 
			
		||||
type Props = PropsWithText | PropsChildren;
 | 
			
		||||
 | 
			
		||||
export const Button: React.FC<Props> = ({
 | 
			
		||||
  text,
 | 
			
		||||
  type = 'button',
 | 
			
		||||
  onClick,
 | 
			
		||||
  disabled,
 | 
			
		||||
@@ -28,6 +28,7 @@ export const Button: React.FC<Props> = ({
 | 
			
		||||
  secondary,
 | 
			
		||||
  className,
 | 
			
		||||
  title,
 | 
			
		||||
  text,
 | 
			
		||||
  children,
 | 
			
		||||
  ...props
 | 
			
		||||
}) => {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user