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

export const Directus: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function Directus(
  {
    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_2281)">
        <path d="M24 0H0V24H24V0Z" fill="#64f" />
        <path
          d="M0 19.9886V0H24V24H23.144C22.1451 23.4649 20.6685 22.8423 18.5762 22.3214C16.5594 21.8192 13.5724 21.5787 10.3974 21.323C6.79254 21.0327 2.9452 20.7229 0 19.9886Z"
          fill="#754dfc"
        />
        <path
          d="M0 14.7251V0H24V20.1751C23.1441 19.5378 21.4452 18.5276 18.4809 17.6823C16.4827 17.1124 13.5056 16.7712 10.3411 16.4084C6.75005 15.9968 2.91755 15.5575 0 14.7251Z"
          fill="#8555f8"
        />
        <path
          d="M0 8.99017V0H24V15.4465C23.2557 14.8052 21.5676 13.6228 18.3567 12.585C16.3797 11.946 13.4164 11.5015 10.2665 11.029C6.69588 10.4933 2.88548 9.92174 0 8.99017Z"
          fill="#945ef5"
        />
        <path
          d="M24 0V10.9959C23.3425 10.3777 21.6725 9.08279 18.2815 7.92131C16.316 7.24807 13.361 6.7521 10.2198 6.22487C6.66302 5.62791 2.86762 4.99088 0 4.01113V0H24Z"
          fill="#a366f1"
        />
        <path
          d="M4.00687 0H24V6.49198C23.636 6.07583 22.059 4.49057 18.0793 3.04959C16.1259 2.34229 13.18 1.79502 10.0486 1.21328C8.04004 0.840142 5.95516 0.452825 4.00687 0Z"
          fill="#b36eee"
        />
        <path
          d="M17.6183 13.5035C17.5312 13.4818 17.4587 13.4601 17.3935 13.4312C17.3452 13.4099 17.3049 13.3846 17.2696 13.3553C17.2461 13.3359 17.2361 13.3053 17.239 13.275C17.2739 12.9122 17.2355 12.5921 17.2702 12.2323C17.4152 10.7733 18.3362 11.2356 19.1629 10.9972C19.6376 10.864 20.1123 10.6019 20.2858 10.0863C20.3142 10.0019 20.2892 9.91014 20.2302 9.84328C19.6886 9.23004 19.0891 8.68817 18.4377 8.22379C16.2539 6.67521 13.4157 6.03216 10.8093 6.40831C10.7105 6.42255 10.6588 6.53151 10.7127 6.61509C11.0428 7.12672 11.4783 7.54542 11.9778 7.85359C12.0686 7.9096 12.0321 8.03058 11.9279 8.0073C11.683 7.95262 11.3682 7.84595 11.0723 7.63792C11.0437 7.61788 11.007 7.61282 10.9746 7.62571C10.8423 7.67826 10.6512 7.75404 10.4933 7.82193C10.4024 7.86101 10.3839 7.97774 10.4587 8.04234C11.7678 9.17256 13.6723 9.34437 15.1636 8.43991C15.2544 8.38481 15.3999 8.49804 15.3706 8.59988C15.3238 8.76304 15.269 8.98731 15.2107 9.29273C14.8409 11.1561 13.7749 11.0117 12.4551 10.5422C9.81785 9.59025 8.32172 10.4032 6.99154 8.79393C6.89913 8.6821 6.73666 8.64335 6.62672 8.73813C6.35212 8.97491 6.18961 9.32053 6.18961 9.68996C6.18961 10.1275 6.41639 10.5023 6.75253 10.7267C6.79458 10.7548 6.85045 10.7429 6.88181 10.7033C6.96372 10.6001 7.03073 10.5316 7.11417 10.4884C7.20548 10.441 7.25004 10.5711 7.17293 10.6391C6.89041 10.8882 6.80934 11.185 6.62472 11.77C6.33464 12.6873 6.45792 13.6262 5.10185 13.8718C4.38393 13.9079 4.39844 14.3918 4.13737 15.1141C3.8344 15.9858 3.43767 16.372 2.7034 17.1337C2.60299 17.2379 2.59436 17.4045 2.70473 17.4982C2.99803 17.7472 3.30051 17.7608 3.60801 17.6348C4.36943 17.317 4.95682 16.3347 5.50795 15.6991C6.12436 14.9913 7.60368 15.2946 8.72046 14.6013C9.32273 14.2335 9.68461 13.7636 9.5689 13.0598C9.55024 12.9464 9.68048 12.8783 9.72771 12.9831C9.81738 13.1821 9.87616 13.3943 9.90061 13.6136C9.907 13.671 9.95859 13.7136 10.0166 13.7103C11.2248 13.6427 12.7873 14.97 14.2474 15.3291C14.3363 15.351 14.3994 15.2488 14.3492 15.1726C14.2568 15.0325 14.1783 14.8871 14.1157 14.7385C14.0511 14.5841 14.0022 14.4344 13.9676 14.2898C13.9405 14.1768 14.1064 14.1464 14.163 14.248C14.5375 14.9203 15.2859 15.5516 16.3275 15.6269C16.6828 15.6558 17.0744 15.6124 17.4805 15.4897C17.9664 15.3452 18.416 15.1574 18.9526 15.2585C19.3514 15.3308 19.7213 15.533 19.9533 15.8725C20.2789 16.3454 20.9663 16.4707 21.3327 15.9764C21.3825 15.9092 21.3867 15.8192 21.3538 15.7423C20.5471 13.8591 18.4987 13.7298 17.6183 13.5035Z"
          fill="#fff"
          fillRule="evenodd"
          clipRule="evenodd"
        />
      </g>
      <defs>
        <clipPath id="undefined-clip0_2062_2281">
          <path fill="#fff" d="M0 0H24V24H0z" />
        </clipPath>
      </defs>
    </svg>
  );
});

Directus.displayName = "Directus";

Directus.metadata = {
  name: "Directus",
  category: "icon/cms",
  tags: ["directus", "icon"],
  description: "Directus icon from icon/cms category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default Directus;
