import * as React from "react";
import type { IconProps, IconMetadata, IconComponent } from "../../types";

export const Sketch: IconComponent = React.forwardRef<SVGSVGElement, IconProps>(
  function Sketch(
    {
      color = "currentColor",
      fill,
      size = 24,
      strokeWidth,
      strokeLinecap,
      strokeLinejoin,
      strokeDasharray,
      opacity,
      className,
      ...props
    },
    forwardedRef,
  ) {
    return (
      <svg
        width={size}
        height={size}
        viewBox="0 0 24 24"
        fill="none"
        xmlns="http://www.w3.org/2000/svg"
        className={className}
        strokeWidth={strokeWidth}
        strokeLinecap={strokeLinecap}
        strokeLinejoin={strokeLinejoin}
        strokeDasharray={strokeDasharray}
        opacity={opacity}
        {...props}
        ref={forwardedRef}
      >
        <path
          d="M0.28501 8.98955L5.09401 2.46155C5.14319 2.39493 5.20563 2.33922 5.2774 2.29792C5.34917 2.25661 5.4287 2.23061 5.51101 2.22155L11.934 1.50755C11.9779 1.50269 12.0221 1.50269 12.066 1.50755L18.489 2.2208C18.5713 2.22986 18.6509 2.25586 18.7226 2.29717C18.7944 2.33847 18.8568 2.39418 18.906 2.4608L23.7158 8.98955C23.7962 9.09915 23.8371 9.23282 23.8316 9.36867C23.8262 9.50452 23.7747 9.6345 23.6858 9.7373L12.3413 22.8563C12.299 22.9052 12.2467 22.9444 12.188 22.9713C12.1292 22.9982 12.0654 23.0121 12.0008 23.0121C11.9361 23.0121 11.8723 22.9982 11.8135 22.9713C11.7548 22.9444 11.7025 22.9052 11.6603 22.8563L0.31351 9.7373C0.224639 9.63441 0.173345 9.50439 0.168031 9.36854C0.162717 9.23269 0.204448 9.09906 0.28501 8.98955ZM13.6545 3.4373L18.1898 7.7213C18.2337 7.76293 18.2892 7.7903 18.349 7.7998C18.4088 7.80929 18.4701 7.80048 18.5248 7.77452C18.5794 7.74855 18.625 7.70665 18.6554 7.65432C18.6859 7.60199 18.6997 7.54167 18.6953 7.4813L18.4778 4.4408C18.4747 4.4036 18.4856 4.3666 18.5084 4.33703C18.5312 4.30746 18.5641 4.28743 18.6009 4.28087C18.6376 4.27431 18.6755 4.28168 18.7071 4.30155C18.7387 4.32141 18.7617 4.35234 18.7718 4.3883L19.7663 7.8698C19.7997 7.98703 19.8613 8.09433 19.9456 8.18241C20.0299 8.2705 20.1344 8.3367 20.25 8.3753L22.3725 9.08255C22.4064 9.09368 22.4352 9.1165 22.4537 9.14693C22.4723 9.17735 22.4794 9.2134 22.4738 9.2486C22.4682 9.2838 22.4503 9.31586 22.4232 9.33903C22.3961 9.3622 22.3617 9.37497 22.326 9.37505H20.286C20.1599 9.37512 20.0359 9.40698 19.9254 9.46767C19.8149 9.52837 19.7215 9.61594 19.6538 9.7223L14.0933 18.4598C14.0621 18.5075 14.0141 18.5416 13.9588 18.5552C13.9036 18.5689 13.8452 18.5611 13.7955 18.5334C13.7457 18.5057 13.7083 18.4602 13.6908 18.4061C13.6733 18.3519 13.6769 18.2931 13.701 18.2415L17.6865 10.0215C17.7198 9.95293 17.7351 9.87698 17.731 9.80081C17.7269 9.72465 17.7035 9.65079 17.663 9.58615C17.6225 9.52151 17.5663 9.46823 17.4995 9.4313C17.4328 9.39438 17.3578 9.37502 17.2815 9.37505H6.71851C6.64224 9.37502 6.56721 9.39438 6.50047 9.4313C6.43374 9.46823 6.37748 9.52151 6.33699 9.58615C6.2965 9.65079 6.2731 9.72465 6.26899 9.80081C6.26489 9.87698 6.28021 9.95293 6.31351 10.0215L10.299 18.2415C10.3241 18.2932 10.3284 18.3525 10.3111 18.4073C10.2939 18.462 10.2564 18.5081 10.2062 18.5361C10.1561 18.5641 10.0971 18.5719 10.0415 18.5578C9.9858 18.5438 9.93761 18.509 9.90676 18.4605L4.34626 9.72305C4.27858 9.61644 4.18507 9.52865 4.07442 9.46782C3.96376 9.40699 3.83954 9.37507 3.71326 9.37505H1.61101C1.57537 9.37497 1.54092 9.3622 1.51383 9.33903C1.48675 9.31586 1.4688 9.2838 1.46321 9.2486C1.45761 9.2134 1.46473 9.17735 1.4833 9.14693C1.50186 9.1165 1.53065 9.09368 1.56451 9.08255L3.74551 8.3738C3.86239 8.33572 3.96811 8.26949 4.05338 8.18095C4.13865 8.09241 4.20085 7.98427 4.23451 7.86605L5.22826 4.3883C5.23827 4.35234 5.26133 4.32141 5.29293 4.30155C5.32452 4.28168 5.36239 4.27431 5.39913 4.28087C5.43587 4.28743 5.46885 4.30746 5.49162 4.33703C5.51439 4.3666 5.52531 4.4036 5.52226 4.4408L5.30476 7.4813C5.30028 7.54167 5.31416 7.60199 5.3446 7.65432C5.37503 7.70665 5.42058 7.74855 5.47527 7.77452C5.52996 7.80048 5.59122 7.80929 5.65101 7.7998C5.7108 7.7903 5.76631 7.76293 5.81026 7.7213L10.3455 3.4373C10.3729 3.40963 10.41 3.3937 10.4489 3.39288C10.4879 3.39206 10.5256 3.40642 10.5541 3.43292C10.5827 3.45941 10.5998 3.49597 10.6019 3.53486C10.604 3.57374 10.5908 3.61192 10.5653 3.6413L7.52251 7.38605C7.48682 7.43004 7.46432 7.48323 7.45761 7.53947C7.45089 7.59572 7.46023 7.65271 7.48455 7.70387C7.50888 7.75502 7.54718 7.79825 7.59505 7.82854C7.64291 7.85883 7.69837 7.87496 7.75501 7.87505H16.245C16.3017 7.87496 16.3571 7.85883 16.405 7.82854C16.4528 7.79825 16.4911 7.75502 16.5155 7.70387C16.5398 7.65271 16.5491 7.59572 16.5424 7.53947C16.5357 7.48323 16.5132 7.43004 16.4775 7.38605L13.4348 3.6413C13.4092 3.61192 13.3961 3.57374 13.3981 3.53486C13.4002 3.49597 13.4173 3.45941 13.4459 3.43292C13.4744 3.40642 13.5121 3.39206 13.5511 3.39288C13.59 3.3937 13.6271 3.40963 13.6545 3.4373Z"
          fill="currentColor"
          fillRule="evenodd"
          clipRule="evenodd"
        />
      </svg>
    );
  },
);

Sketch.displayName = "Sketch";

Sketch.metadata = {
  name: "Sketch",
  category: "icon/design",
  tags: ["sketch", "icon"],
  description: "Sketch icon from icon/design category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default Sketch;
