import { createStyles, Theme, withStyles, WithStyles } from "@material-ui/core/styles"; import TextField from "@material-ui/core/TextField"; import * as React from "react"; import Button from "@material-ui/core/Button"; import Card from "@material-ui/core/Card"; import CardContent from "@material-ui/core/CardContent"; import CardTitle from "@saleor/components/CardTitle"; import Hr from "@saleor/components/Hr"; import ImageTile from "@saleor/components/ImageTile"; import ImageUpload from "@saleor/components/ImageUpload"; import Skeleton from "@saleor/components/Skeleton"; import i18n from "../../../i18n"; import { CollectionDetails_collection_backgroundImage } from "../../types/CollectionDetails"; const styles = (theme: Theme) => createStyles({ PhotosIcon: { height: "64px", margin: "0 auto", width: "64px" }, PhotosIconContainer: { margin: `${theme.spacing.unit * 5}px 0`, textAlign: "center" }, fileField: { display: "none" }, image: { height: "100%", objectFit: "contain", userSelect: "none", width: "100%" }, imageContainer: { background: "#ffffff", border: "1px solid #eaeaea", borderRadius: theme.spacing.unit, height: 148, justifySelf: "start", overflow: "hidden", padding: theme.spacing.unit * 2, position: "relative", width: 148 } }); export interface CollectionImageProps extends WithStyles { data: { backgroundImageAlt: string; }; image: CollectionDetails_collection_backgroundImage; onChange: (event: React.ChangeEvent) => void; onImageDelete: () => void; onImageUpload: (file: File) => void; } export const CollectionImage = withStyles(styles)( class CollectionImageComponent extends React.Component< CollectionImageProps, {} > { imgInputAnchor = React.createRef(); clickImgInput = () => this.imgInputAnchor.current.click(); render() { const { classes, data, onImageUpload, image, onChange, onImageDelete } = this.props; return ( onImageUpload(event.target.files[0])} type="file" ref={this.imgInputAnchor} /> } /> {image === undefined ? (
) : image === null ? ( ) : ( )} {image && ( <>
)}
); } } ); CollectionImage.displayName = "CollectionImage"; export default CollectionImage;