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

export const BraveBrowser: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function BraveBrowser(
  {
    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}
    >
      <g clipPath="url(#undefined-clip0_2062_2183)">
        <path
          d="M22 7.74219L21.2734 5.74086L21.7734 4.59269C21.8359 4.4412 21.8047 4.27375 21.6953 4.15415L20.3281 2.74286C19.7266 2.1289 18.8359 1.91362 18.0312 2.20066L17.6484 2.33621L15.5547 0.0239203L12.0156 0H11.9922L8.42969 0.0318937L6.34375 2.36013L5.96875 2.22458C5.15625 1.92957 4.25781 2.14485 3.65625 2.77475L2.26562 4.20997C2.17188 4.30565 2.14844 4.4412 2.19531 4.5608L2.71875 5.75681L2 7.75814L2.46875 9.56811L4.59375 17.8047C4.83594 18.7535 5.39844 19.5827 6.1875 20.1568C6.1875 20.1568 8.76562 22.0146 11.3047 23.697C11.5312 23.8485 11.7656 23.9522 12.0156 23.9522C12.2656 23.9522 12.5 23.8485 12.7266 23.697C15.5859 21.7834 17.8438 20.1488 17.8438 20.1488C18.625 19.5748 19.1875 18.7455 19.4297 17.7967L21.5391 9.56013L22 7.74219Z"
          fill="#f15a22"
        />
        <path
          d="M12.4687 14.735C12.375 14.6951 12.2734 14.6632 12.2422 14.6632H12.1172H11.9922C11.9609 14.6632 11.8594 14.6951 11.7656 14.735L10.75 15.1655C10.6562 15.2054 10.5 15.2772 10.4062 15.325L8.87498 16.1383C8.78123 16.1861 8.77342 16.2738 8.85936 16.3376L10.2109 17.3104C10.2969 17.3742 10.4297 17.4778 10.5078 17.5496L11.1094 18.0758C11.1875 18.1476 11.3125 18.2592 11.3906 18.331L11.9687 18.8572C12.0469 18.929 12.1719 18.929 12.25 18.8572L12.8437 18.331C12.9219 18.2592 13.0469 18.1476 13.125 18.0758L13.7265 17.5416C13.8047 17.4699 13.9375 17.3662 14.0234 17.3024L15.375 16.3217C15.4609 16.2579 15.4531 16.1702 15.3594 16.1223L13.8281 15.325C13.7344 15.2772 13.5781 15.2054 13.4844 15.1655L12.4687 14.735Z"
          fill="#fff"
        />
        <path
          d="M19.7979 8.09759C19.8292 7.99394 19.8292 7.95407 19.8292 7.95407C19.8292 7.85042 19.8214 7.675 19.8057 7.57135L19.7276 7.34012C19.6807 7.24444 19.6026 7.09294 19.5401 7.00523L18.6573 5.67367C18.6026 5.58596 18.501 5.45042 18.4307 5.36271L17.2901 3.90357C17.2276 3.82384 17.1651 3.75208 17.1573 3.76005H17.1417C17.1417 3.76005 17.0557 3.776 16.9542 3.79195L15.212 4.14278C15.1104 4.1667 14.9464 4.19859 14.8448 4.21454L14.8135 4.22251C14.712 4.23846 14.5479 4.23048 14.4464 4.19859L12.9854 3.72018C12.8839 3.68829 12.7198 3.64045 12.626 3.61653C12.626 3.61653 12.3292 3.54477 12.087 3.55274C11.8448 3.55274 11.5479 3.61653 11.5479 3.61653C11.4464 3.64045 11.2823 3.68829 11.1885 3.72018L9.7276 4.19859C9.62604 4.23048 9.46198 4.23846 9.36042 4.22251L9.32917 4.21454C9.2276 4.19859 9.06354 4.15872 8.96198 4.14278L7.20417 3.80789C7.1026 3.78397 7.01667 3.776 7.01667 3.776H7.00104C6.99323 3.776 6.93073 3.83979 6.86823 3.91952L5.7276 5.37866C5.6651 5.45839 5.56354 5.60191 5.50104 5.68962L4.61823 7.02118C4.56354 7.10889 4.4776 7.26038 4.43073 7.35606L4.3526 7.58729C4.33698 7.69095 4.32135 7.86636 4.32917 7.97002C4.32917 7.97002 4.32917 8.00191 4.36042 8.11354C4.4151 8.3049 4.54792 8.48032 4.54792 8.48032C4.61042 8.56005 4.7276 8.6956 4.79792 8.76736L7.38385 11.574C7.45417 11.6537 7.4776 11.7973 7.43854 11.8929L6.89948 13.1926C6.86042 13.2883 6.8526 13.4478 6.89167 13.5514L7.0401 13.9581C7.1651 14.3009 7.37604 14.6039 7.65729 14.8351L8.18073 15.2657C8.25885 15.3295 8.39948 15.3534 8.49323 15.3056L10.1495 14.5002C10.2432 14.4524 10.3839 14.3567 10.462 14.285L11.6495 13.1926C11.8214 13.0331 11.8292 12.762 11.6729 12.5866L9.18073 10.8723C9.09479 10.8165 9.06354 10.689 9.11042 10.5933L10.2042 8.48829C10.251 8.39261 10.2589 8.24111 10.2198 8.14543L10.087 7.83447C10.0479 7.73879 9.93073 7.62716 9.83698 7.58729L6.62604 6.35939C6.53229 6.31952 6.53229 6.27965 6.63385 6.27168L8.70417 6.07234C8.80573 6.06437 8.96979 6.08032 9.07135 6.10424L10.9151 6.63048C11.0167 6.66238 11.0792 6.76603 11.0635 6.86969L10.4229 10.4498C10.4073 10.5534 10.4073 10.6969 10.4307 10.7767C10.4542 10.8564 10.5557 10.9282 10.6573 10.9521L11.9385 11.2311C12.0401 11.2551 12.2042 11.2551 12.3057 11.2311L13.501 10.9521C13.6026 10.9282 13.7042 10.8484 13.7276 10.7767C13.751 10.7049 13.7589 10.5534 13.7354 10.4498L13.1026 6.86969C13.087 6.76603 13.1495 6.6544 13.251 6.63048L15.0948 6.10424C15.1964 6.07234 15.3604 6.06437 15.462 6.07234L17.5323 6.27168C17.6339 6.27965 17.6417 6.31952 17.5401 6.35939L14.3292 7.60324C14.2354 7.64311 14.1182 7.74676 14.0792 7.85042L13.9464 8.16138C13.9073 8.25706 13.9073 8.41653 13.962 8.50424L15.0635 10.6092C15.1104 10.7049 15.0792 10.8245 14.9932 10.8883L12.501 12.6105C12.337 12.778 12.3526 13.0571 12.5245 13.2165L13.712 14.3089C13.7901 14.3806 13.9307 14.4763 14.0245 14.5162L15.6885 15.3215C15.7823 15.3694 15.9229 15.3454 16.001 15.2816L16.5245 14.8431C16.8057 14.6119 17.0167 14.3089 17.1339 13.966L17.2823 13.5594C17.3214 13.4637 17.3135 13.2963 17.2745 13.2006L16.7354 11.9009C16.6964 11.8052 16.7198 11.6617 16.7901 11.582L19.376 8.77533C19.4464 8.6956 19.5557 8.56802 19.626 8.48829C19.6104 8.46437 19.751 8.28895 19.7979 8.09759Z"
          fill="#fff"
        />
      </g>
      <defs>
        <clipPath id="undefined-clip0_2062_2183">
          <path fill="#fff" transform="translate(2)" d="M0 0H20V24H0z" />
        </clipPath>
      </defs>
    </svg>
  );
});

BraveBrowser.displayName = "BraveBrowser";

BraveBrowser.metadata = {
  name: "BraveBrowser",
  category: "icon/browser",
  tags: ["brave", "browser", "icon"],
  description: "BraveBrowser icon from icon/browser category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default BraveBrowser;
