Fin
This commit is contained in:
@@ -7,9 +7,6 @@ import React from "react";
|
||||
* prop is set.
|
||||
*
|
||||
* The button is also disabled when in the loading state.
|
||||
*
|
||||
* TODO: This duplicates the existing SubmitButton. Merge these two gradually
|
||||
* (didn't want to break existing layouts, so will do it piecewise).
|
||||
*/
|
||||
export const LoadingButton: React.FC<ButtonProps & { loading?: boolean }> = ({
|
||||
loading,
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
import Done from "@mui/icons-material/Done";
|
||||
import { Button, CircularProgress, type ButtonProps } from "@mui/material";
|
||||
import React from "react";
|
||||
|
||||
export interface SubmitButtonProps {
|
||||
loading: boolean;
|
||||
buttonText: string;
|
||||
|
||||
disabled?: boolean;
|
||||
success?: boolean;
|
||||
}
|
||||
const SubmitButton: React.FC<ButtonProps<"button", SubmitButtonProps>> = ({
|
||||
loading,
|
||||
buttonText,
|
||||
disabled,
|
||||
success,
|
||||
sx,
|
||||
...props
|
||||
}) => {
|
||||
return (
|
||||
<Button
|
||||
size="large"
|
||||
variant="contained"
|
||||
color="accent"
|
||||
type="submit"
|
||||
disabled={disabled || loading || success}
|
||||
sx={{
|
||||
my: 4,
|
||||
...(loading
|
||||
? {
|
||||
"&.Mui-disabled": {
|
||||
backgroundColor: (theme) =>
|
||||
theme.colors.accent.A500,
|
||||
color: (theme) => theme.colors.text.base,
|
||||
},
|
||||
}
|
||||
: {}),
|
||||
...sx,
|
||||
}}
|
||||
{...props}
|
||||
>
|
||||
{loading ? (
|
||||
<CircularProgress size={20} />
|
||||
) : success ? (
|
||||
<Done sx={{ fontSize: 20 }} />
|
||||
) : (
|
||||
buttonText
|
||||
)}
|
||||
</Button>
|
||||
);
|
||||
};
|
||||
|
||||
export default SubmitButton;
|
||||
Reference in New Issue
Block a user