/* eslint-disable max-len */ import * as React from 'react'; import { CSSProperties, HTMLAttributes, Component } from 'react'; import { ARROW_DIMENSIONS } from '../../consts'; import { ArrowSize } from '../../../types'; export interface AddToCartIconProps extends HTMLAttributes { style?: CSSProperties; enabled?: boolean; size?: ArrowSize; iconColor?: string; showCircle?: boolean; } class AddToCartIcon extends Component { public render() { const { style, enabled = true, size = 'medium', iconColor = 'black', showCircle = true, ...props } = this.props; const dynamicStyle = enabled ? iconEnabled : iconDisabled; const color = iconColor; const dim = ARROW_DIMENSIONS[size].width; return ( {showCircle ? ( ) : null} {/* Bag body: sharp top corners, rounded bottom corners */} {/* Single centered handle */} {/* Dots at handle connection points, 1/4 into the bag */} ); } } const iconStyle: CSSProperties = { cursor: 'pointer', }; const iconEnabled: CSSProperties = { transition: 'opacity 0.3s ease-in-out', opacity: 1, }; const iconDisabled: CSSProperties = { transition: 'opacity 0.3s ease-in-out', opacity: 0.4, cursor: 'default', }; export default AddToCartIcon;