import { forwardRef, useMemo } from 'react';
import { IconProps } from './types';

export const IconTerraformSquare16 = forwardRef<SVGSVGElement, IconProps>(
    ({ color = 'currentColor', title, ...props }, svgRef) => {
        const titleId = useMemo(
            () =>
                title
                    ? 'title-' + Math.random().toString(36).substr(2, 9)
                    : undefined,
            [title]
        );
        return (
            <svg
                xmlns="http://www.w3.org/2000/svg"
                width={16}
                height={16}
                fill="none"
                viewBox="0 0 16 16"
                aria-hidden={!title}
                ref={svgRef}
                aria-labelledby={titleId}
                {...props}
            >
                {title ? <title id={titleId}>{title}</title> : null}
                <g fill={color}>
                    <path d="M3.625 6.157V3l2.718 1.579v3.156L3.625 6.157zM6.64 4.762L9.36 6.34v3.157L6.64 7.92V4.762zM9.657 9.497V6.34l2.718-1.578V7.92L9.657 9.497zM6.64 11.421L9.36 13V9.843L6.64 8.265v3.156z" />
                    <path
                        fillRule="evenodd"
                        d="M0 2.133c0-.746 0-1.12.145-1.405C.273.478.477.273.728.145 1.013 0 1.387 0 2.133 0h11.734c.746 0 1.12 0 1.405.145.25.128.455.332.583.583.145.285.145.659.145 1.405v11.734c0 .746 0 1.12-.145 1.405-.128.25-.332.455-.583.583-.285.145-.659.145-1.405.145H2.133c-.746 0-1.12 0-1.405-.145a1.334 1.334 0 01-.583-.583C0 14.987 0 14.613 0 13.867V2.133zM2.133.667h11.734c.384 0 .632 0 .821.016.181.014.248.04.281.056a.666.666 0 01.292.292c.017.033.042.1.056.28.016.19.016.438.016.822v11.734c0 .384 0 .632-.016.821-.014.181-.04.248-.056.281a.666.666 0 01-.292.292c-.033.017-.1.042-.28.056-.19.016-.438.016-.822.016H2.133c-.384 0-.632 0-.821-.016-.181-.014-.248-.04-.281-.056a.666.666 0 01-.292-.292c-.016-.033-.042-.1-.056-.28a11.336 11.336 0 01-.016-.822V2.133c0-.384 0-.632.016-.821.014-.181.04-.248.056-.281a.667.667 0 01.292-.292c.033-.016.1-.042.28-.056.19-.016.438-.016.822-.016z"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
