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

export const SoundCloud: IconComponent = React.forwardRef<
  SVGSVGElement,
  IconProps
>(function SoundCloud(
  {
    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_2066_1183)">
        <path
          d="M24 13.7469C23.9514 14.6345 23.5704 15.4685 22.9365 16.0747C22.3026 16.6809 21.4649 17.0124 20.5984 17H12.4224C12.2424 16.9983 12.0704 16.924 11.9434 16.7931C11.8165 16.6623 11.7448 16.4854 11.744 16.3008V7.27037C11.7381 7.11541 11.778 6.96223 11.8585 6.83099C11.9391 6.69975 12.0564 6.59658 12.1952 6.53507C12.1952 6.53507 12.9472 6 14.5312 6C15.4989 5.99881 16.4488 6.26652 17.28 6.7747C17.9288 7.16626 18.4913 7.6917 18.932 8.31775C19.3726 8.94381 19.6818 9.65687 19.84 10.4118C20.1221 10.33 20.414 10.2891 20.7072 10.2904C21.1469 10.2875 21.5827 10.3756 21.9885 10.5493C22.3943 10.723 22.7618 10.9788 23.0691 11.3014C23.3764 11.624 23.6173 12.0068 23.7772 12.427C23.9371 12.8472 24.0129 13.2961 24 13.7469ZM10.7232 7.84154C10.7273 7.80348 10.7235 7.76495 10.7121 7.72848C10.7007 7.69201 10.6819 7.65842 10.657 7.62989C10.6321 7.60136 10.6016 7.57855 10.5675 7.56292C10.5335 7.5473 10.4965 7.53923 10.4592 7.53923C10.4219 7.53923 10.385 7.5473 10.3509 7.56292C10.3168 7.57855 10.2863 7.60136 10.2614 7.62989C10.2365 7.65842 10.2177 7.69201 10.2063 7.72848C10.1949 7.76495 10.1911 7.80348 10.1952 7.84154C9.9712 10.878 9.7984 13.724 10.1952 16.7505C10.2024 16.8172 10.2333 16.8788 10.282 16.9236C10.3307 16.9684 10.3938 16.9931 10.4592 16.9931C10.5246 16.9931 10.5877 16.9684 10.6364 16.9236C10.6851 16.8788 10.716 16.8172 10.7232 16.7505C11.1488 13.6977 10.9696 10.9042 10.7232 7.84154ZM9.072 8.89198C9.06465 8.82193 9.03232 8.75715 8.98123 8.71008C8.93013 8.663 8.86388 8.63696 8.7952 8.63696C8.72653 8.63696 8.66028 8.663 8.60918 8.71008C8.55809 8.75715 8.52576 8.82193 8.5184 8.89198C8.22241 11.5038 8.22241 14.142 8.5184 16.7538C8.52846 16.8213 8.56175 16.8828 8.61224 16.9273C8.66272 16.9718 8.72706 16.9962 8.7936 16.9962C8.86015 16.9962 8.92449 16.9718 8.97497 16.9273C9.02546 16.8828 9.05874 16.8213 9.0688 16.7538C9.39947 14.1442 9.40055 11.5018 9.072 8.89198ZM7.4112 8.62609C7.40399 8.55856 7.37273 8.49614 7.32342 8.4508C7.27411 8.40546 7.21022 8.38039 7.144 8.38039C7.07778 8.38039 7.0139 8.40546 6.96459 8.4508C6.91528 8.49614 6.88402 8.55856 6.8768 8.62609C6.624 11.3966 6.496 13.9833 6.8768 16.7472C6.8768 16.8195 6.90479 16.8888 6.9546 16.9399C7.00441 16.991 7.07196 17.0197 7.1424 17.0197C7.21285 17.0197 7.2804 16.991 7.33021 16.9399C7.38002 16.8888 7.408 16.8195 7.408 16.7472C7.8016 13.9472 7.68 11.4327 7.4112 8.62609ZM5.76 9.41719C5.76 9.34232 5.73101 9.27052 5.6794 9.21757C5.62779 9.16463 5.55779 9.13489 5.4848 9.13489C5.41182 9.13489 5.34182 9.16463 5.29021 9.21757C5.2386 9.27052 5.2096 9.34232 5.2096 9.41719C4.90399 11.8538 4.90399 14.3205 5.2096 16.7571C5.21687 16.8255 5.24848 16.8887 5.29838 16.9346C5.34829 16.9805 5.41297 17.0059 5.48 17.0059C5.54704 17.0059 5.61172 16.9805 5.66162 16.9346C5.71153 16.8887 5.74314 16.8255 5.7504 16.7571C6.08159 14.3225 6.08482 11.8527 5.76 9.41719ZM4.0928 11.2522C4.0928 11.1782 4.06415 11.1072 4.01314 11.0549C3.96213 11.0025 3.89294 10.9731 3.8208 10.9731C3.74867 10.9731 3.67948 11.0025 3.62847 11.0549C3.57746 11.1072 3.5488 11.1782 3.5488 11.2522C3.1552 13.1429 3.3408 14.863 3.5648 16.7768C3.57447 16.8393 3.60556 16.8962 3.65249 16.9373C3.69942 16.9784 3.7591 17.001 3.8208 17.001C3.88251 17.001 3.94219 16.9784 3.98912 16.9373C4.03605 16.8962 4.06714 16.8393 4.0768 16.7768C4.3232 14.8368 4.512 13.1561 4.0928 11.2522ZM2.4384 10.9633C2.43101 10.8924 2.39832 10.8268 2.34663 10.7792C2.29494 10.7315 2.2279 10.7052 2.1584 10.7052C2.08891 10.7052 2.02187 10.7315 1.97018 10.7792C1.91849 10.8268 1.8858 10.8924 1.8784 10.9633C1.5296 12.8935 1.6448 14.5939 1.888 16.5207C1.9136 16.8129 2.3968 16.8096 2.4288 16.5207C2.6976 14.5643 2.8224 12.9132 2.4384 10.9633ZM0.768004 11.9087C0.760607 11.8378 0.727919 11.7722 0.676229 11.7246C0.62454 11.6769 0.557499 11.6506 0.488004 11.6506C0.41851 11.6506 0.351469 11.6769 0.299779 11.7246C0.24809 11.7722 0.215402 11.8378 0.208004 11.9087C-0.111996 13.2053 -0.0127956 14.2787 0.230404 15.5786C0.237526 15.6445 0.268069 15.7053 0.316188 15.7495C0.364307 15.7937 0.426621 15.8181 0.491204 15.8181C0.555788 15.8181 0.618102 15.7937 0.666221 15.7495C0.71434 15.7053 0.744883 15.6445 0.752004 15.5786C1.0336 14.2525 1.1712 13.202 0.768004 11.9087Z"
          fill="currentColor"
        />
      </g>
      <defs>
        <clipPath id="undefined-clip0_2066_1183">
          <path fill="#fff" transform="translate(0 6)" d="M0 0H24V11H0z" />
        </clipPath>
      </defs>
    </svg>
  );
});

SoundCloud.displayName = "SoundCloud";

SoundCloud.metadata = {
  name: "SoundCloud",
  category: "icon/music",
  tags: ["sound", "cloud", "icon"],
  description: "SoundCloud icon from icon/music category",
  type: ["stroke", "icon"],
} as IconMetadata;

export default SoundCloud;
