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

export const IconOctagon16 = 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}
                <path
                    fill={color}
                    d="M10.485 0c.597 0 1.17.237 1.592.66l3.264 3.263c.422.422.659.995.659 1.592v4.97c0 .597-.237 1.17-.66 1.592l-3.263 3.264c-.422.422-.995.659-1.592.659h-4.97c-.597 0-1.17-.237-1.592-.66L.659 12.078A2.25 2.25 0 0 1 0 10.485v-4.97c0-.597.237-1.17.66-1.592L3.922.659C4.345.237 4.918 0 5.515 0zm-4.97 1.5c-.2 0-.39.08-.532.22L1.72 4.983a.75.75 0 0 0-.22.532v4.97c0 .2.08.39.22.532l3.263 3.263c.141.14.333.22.532.22h4.97c.2 0 .39-.08.532-.22l3.263-3.263c.14-.141.22-.333.22-.532v-4.97c0-.2-.08-.39-.22-.532L11.017 1.72a.75.75 0 0 0-.532-.22z"
                />
            </svg>
        );
    }
);
