import { type Theme, Tooltip } from '@mui/material'; import { makeStyles } from 'tss-react/mui'; import { Button, type ButtonProps } from '../../components'; import { getNormalizedId } from '../../utils'; import { useSave } from './useSave'; const useStyles = makeStyles()((theme: Theme) => ({ loadingButton: { width: theme.spacing(5) } })); export interface Props { className?: string; labelLoading?: string; labelSave?: string; labelSucceeded?: string; loading?: boolean; size?: 'small' | 'medium' | 'large'; startIcon?: boolean; succeeded?: boolean; tooltip?: string; tooltipLabel?: string; } const SaveButton = ({ succeeded = false, loading = false, tooltipLabel = '', labelSucceeded = '', labelLoading = '', labelSave = '', size = 'small', className, startIcon = true, ...rest }: Props & Omit): JSX.Element => { const { classes, cx } = useStyles(); const { content, startIconToDisplay, hasLabel } = useSave({ labelLoading, labelSave, labelSucceeded, loading, startIcon, succeeded }); return (
); }; export default SaveButton;