import { forwardRef } from "react";
import type { IconProps } from "@/types";

export const IconRotateRight = forwardRef<SVGSVGElement, IconProps>(
  ({ color = "currentColor", ...props }, forwardedRef) => {
    const { className } = props;
    props = {
      ...props,
      width: `${props.width || props.size || 20}`,
      height: `${props.height || props.size || 20}`,
      className: `${
        className ? className + " " : ""
      }customeow-icon customeow-icon-icon-rotate-right`,
    };
    return (
      <svg
        viewBox="0 0 20 20"
        fill="none"
        xmlns="http://www.w3.org/2000/svg"
        {...props}
        ref={forwardedRef}
      >
        <path
          d="M15.8336 4.21374C14.3415 2.72159 12.278 1.79736 10 1.79736C5.44366 1.79736 1.75 5.49102 1.75 10.0474C1.75 14.6037 5.44366 18.2974 10 18.2974C12.278 18.2974 14.3415 17.3731 15.8336 15.881C16.1265 15.5881 16.1265 15.1132 15.8336 14.8203C15.5407 14.5274 15.0658 14.5274 14.773 14.8203C13.5507 16.0427 11.8642 16.7974 10 16.7974C6.27209 16.7974 3.25 13.7753 3.25 10.0474C3.25 6.31945 6.27209 3.29736 10 3.29736C11.8642 3.29736 13.5507 4.05206 14.773 5.2744C15.036 5.53747 15.4301 5.96076 15.8142 6.3807H14.1667C13.7525 6.3807 13.4167 6.71648 13.4167 7.1307C13.4167 7.54491 13.7525 7.8807 14.1667 7.8807H17.5C17.6207 7.8807 17.7346 7.85221 17.8356 7.80159C17.8702 7.78427 17.9038 7.76408 17.936 7.741C17.9619 7.72247 17.9866 7.70235 18.0098 7.68076C18.0848 7.61137 18.1424 7.53005 18.1824 7.44233C18.2258 7.34742 18.25 7.24189 18.25 7.1307V3.79736C18.25 3.38315 17.9142 3.04736 17.5 3.04736C17.0858 3.04736 16.75 3.38315 16.75 3.79736V5.18184C16.4147 4.8173 16.078 4.45811 15.8336 4.21374Z"
          fill={color}
        />
        <path
          d="M9.21119 8.54167C9.51218 8.54167 9.78443 8.61884 10.0279 8.77316 10.2715 8.9275 10.4611 9.14569 10.597 9.42774 10.7329 9.70979 10.8029 10.0349 10.8071 10.4032V10.7451C10.8071 11.2581 10.7083 11.645 10.5108 12.0218 10.3133 12.3986 10.0616 12.6486 9.69586 12.8508 9.41362 13.0068 9.07741 13.0853 8.71482 13.113 8.49767 13.1296 8.32076 12.9485 8.32076 12.7307V12.6575C8.32076 12.4386 8.49704 12.2678 8.71482 12.2451 9.32082 12.1819 9.66081 11.96 9.73479 11.3901 9.50696 11.5987 9.25195 11.703 8.96977 11.703 8.55591 11.703 8.22774 11.5604 7.98528 11.2751 7.74282 10.9898 7.62158 10.6789 7.62158 10.202 7.62158 9.90403 7.68952 9.6273 7.82538 9.37185 7.96124 9.11642 8.15197 8.91419 8.39757 8.76518 8.64317 8.61618 8.91438 8.54167 9.21119 8.54167ZM8.7891 9.61452C8.88942 9.45274 9.05627 9.37185 9.20468 9.37185 9.3719 9.37185 9.50463 9.44317 9.60287 9.58579 9.70111 9.72841 9.75482 9.93698 9.75482 10.1165 9.75482 10.296 9.73455 10.4463 9.66557 10.629 9.5966 10.8117 9.39102 10.9271 9.21409 10.9271 9.03642 10.9271 8.89465 10.8553 8.79223 10.7115 8.68981 10.5678 8.64779 10.4447 8.64779 10.202 8.64779 9.97214 8.68877 9.77631 8.7891 9.61452ZM14.1247 9.05896C13.8467 8.71624 13.4548 8.54488 12.949 8.54488 12.4432 8.54488 12.0518 8.71517 11.7748 9.05576 11.4979 9.39635 11.3594 9.88063 11.3594 10.5086V11.1293C11.3594 11.7531 11.4984 12.2363 11.7764 12.579 12.0544 12.9217 12.4473 13.0931 12.9552 13.0931 13.459 13.0931 13.8494 12.9228 14.1263 12.5822 14.4033 12.2416 14.5417 11.7573 14.5417 11.1293V10.5118C14.5417 9.88595 14.4027 9.40167 14.1247 9.05896ZM12.5522 9.60496C12.6348 9.45169 12.767 9.37506 12.9488 9.37506 13.1348 9.37506 13.2707 9.45754 13.3564 9.62251 13.4421 9.78749 13.485 10.0371 13.485 10.3713V11.2922C13.4829 11.6264 13.439 11.8717 13.3533 12.0282 13.2676 12.1847 13.1348 12.2629 12.9551 12.2629 12.7691 12.2629 12.6332 12.1825 12.5475 12.0218 12.4618 11.8611 12.4189 11.6073 12.4189 11.2603V10.301C12.4252 9.99025 12.4696 9.75822 12.5522 9.60496ZM16.3741 8.8067C16.2037 8.63215 16.0016 8.54488 15.7674 8.54488 15.5291 8.54488 15.3227 8.63215 15.1482 8.8067 14.9737 8.98126 14.8864 9.19306 14.8864 9.44211 14.8864 9.68904 14.9726 9.89819 15.1451 10.0695 15.3175 10.2409 15.525 10.3266 15.7674 10.3266 16.0057 10.3266 16.209 10.2409 16.3772 10.0695 16.5455 9.89819 16.6296 9.68904 16.6296 9.44211 16.6296 9.19306 16.5445 8.98126 16.3741 8.8067ZM15.7673 9.03341C15.6565 9.03341 15.563 9.07333 15.4866 9.15315 15.4104 9.23298 15.3722 9.3293 15.3722 9.44212 15.3722 9.55494 15.4114 9.64913 15.4898 9.7247 15.5682 9.80027 15.6607 9.83805 15.7673 9.83805 15.8781 9.83805 15.969 9.79974 16.0401 9.7231 16.1111 9.64647 16.1466 9.55281 16.1466 9.44212 16.1466 9.33143 16.1111 9.23564 16.0401 9.15475 15.969 9.07386 15.8781 9.03341 15.7673 9.03341Z"
          fill={color}
          fillRule="evenodd"
          clipRule="evenodd"
        />
        <path
          d="M4.96289 10.9136C4.96289 10.6895 5.14458 10.5078 5.36871 10.5078H5.53333V10.3431C5.53333 10.119 5.71502 9.93732 5.93914 9.93732C6.16327 9.93732 6.34496 10.119 6.34496 10.3431V10.5078H6.50959C6.73372 10.5078 6.91541 10.6895 6.91541 10.9136C6.91541 11.1377 6.73372 11.3194 6.50959 11.3194H6.34496V11.484C6.34496 11.7081 6.16327 11.8898 5.93914 11.8898C5.71502 11.8898 5.53333 11.7081 5.53333 11.484V11.3194H5.36871C5.14458 11.3194 4.96289 11.1377 4.96289 10.9136Z"
          fill={color}
        />
      </svg>
    );
  }
);

IconRotateRight.displayName = "IconRotateRight";

export default IconRotateRight;
