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

export const IconVaultSecretsSquare16 = 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="M7.498 10.552v1.823h1.004v-3.88h3.873v-.99h-1.82c-.422 0-.844.028-1.267.087l-.393.043.306-.247c.335-.263.655-.54.961-.846l1.267-1.284-.7-.7-1.28 1.284c-.306.306-.583.627-.845.962l-.247.306.043-.393c.059-.423.088-.846.088-1.269V3.625h-.99v3.88H3.625v.99h1.82c.422 0 .844-.028 1.267-.087l.393-.043-.306.248c-.335.262-.655.54-.961.845l-1.281 1.284.699.7 1.28-1.284c.307-.306.583-.627.845-.962l.248-.306-.044.393a9.29 9.29 0 00-.087 1.27z" />
                    <path d="M9.463 9.473v.7l1.267 1.269.699-.7-1.267-1.269h-.699zM4.557 5.258l1.266 1.27h.7v-.7l-1.267-1.27-.7.7z" />
                    <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>
        );
    }
);
