import Button from "@material-ui/core/Button"; import Progress from "@material-ui/core/CircularProgress"; import IconButton from "@material-ui/core/IconButton"; import TableBody from "@material-ui/core/TableBody"; import TableCell from "@material-ui/core/TableCell"; import TableRow from "@material-ui/core/TableRow"; import Tooltip from "@material-ui/core/Tooltip"; import Typography from "@material-ui/core/Typography"; import DeleteIcon from "@material-ui/icons/Delete"; import ErrorIcon from "@material-ui/icons/Error"; import CardTitle from "@saleor/components/CardTitle"; import { renderCollection, stopPropagation } from "@saleor/misc"; import classNames from "classnames"; import React from "react"; import { FormattedMessage, useIntl } from "react-intl"; import { JobStatusEnum } from "../../../types/globalTypes"; import { useStyles } from "../../styles"; import { AppsInstallations_appsInstallations } from "../../types/AppsInstallations"; import CardContainer from "../CardContainer"; export interface AppsInProgressProps { appsList: AppsInstallations_appsInstallations[]; disabled: boolean; onAppInstallRetry: (id: string) => void; onRemove: (id: string) => void; } const AppsInProgress: React.FC = ({ appsList, disabled, onAppInstallRetry, onRemove, ...props }) => { const intl = useIntl(); const classes = useStyles(props); return ( } > {renderCollection(appsList, ({ status, appName, id, message }) => ( {appName} {status === JobStatusEnum.PENDING && (
)} {status === JobStatusEnum.FAILED && ( {message}} classes={{ tooltip: classes.customTooltip }} > onRemove(id))} > )}
))}
); }; AppsInProgress.displayName = "AppsInProgress"; export default AppsInProgress;