import React from 'react';
import { elementType } from 'prop-types';

// eslint-disable-next-line import/no-unresolved
import IconAIColorSVG from '../../assets/svg/IconAIColorrr.svg';
import IconAngleLeftSVG from '../../assets/svg/IconAngleLeft.svg';
import IconAngleRightSVG from '../../assets/svg/IconAngleRight.svg';
import IconAngleRightCircleFilledSVG from '../../assets/svg/IconAngleRightCircleFilled.svg';
import IconAnnotationInfoFilledSVG from '../../assets/svg/IconAnnotationInfoFilled.svg';
import IconAnnotationQuestionFilledSVG from '../../assets/svg/IconAnnotationQuestionFilled.svg';
import IconArrowLeftSVG from '../../assets/svg/IconArrowLeft.svg';
import IconArrowLeftHalfSVG from '../../assets/svg/IconArrowLeftHalf.svg';
import IconArrowRightSVG from '../../assets/svg/IconArrowRight.svg';
import IconArrowRotateLeftSVG from '../../assets/svg/IconArrowRotateLeft.svg';
import IconArrowRotateRightSVG from '../../assets/svg/IconArrowRotateRight.svg';
import IconArrowsFromCenterSVG from '../../assets/svg/IconArrowsFromCenter.svg';
import IconArrowsToLineHorizontalSVG from '../../assets/svg/IconArrowsToLineHorizontal.svg';
import IconArrowsToLineVerticalSVG from '../../assets/svg/IconArrowsToLineVertical.svg';
import IconArrowUpSVG from '../../assets/svg/IconArrowUp.svg';
import IconArrowUpFromBracketSVG from '../../assets/svg/IconArrowUpFromBracket.svg';
import IconArrowUpRightSVG from '../../assets/svg/IconArrowUpRight.svg';
import IconCheckSVG from '../../assets/svg/IconCheck.svg';
import IconChevronLeftSVG from '../../assets/svg/IconChevronLeft.svg';
import IconChevronRightSVG from '../../assets/svg/IconChevronRight.svg';
import IconCloudArrowUpSVG from '../../assets/svg/IconCloudArrowUp.svg';
import IconCopySVG from '../../assets/svg/IconCopy.svg';
import IconDocumentDocFilledSVG from '../../assets/svg/IconDocumentDocFilled.svg';
import IconDocumentPdfFilledSVG from '../../assets/svg/IconDocumentPdfFilled.svg';
import IconEllipsisVerticalSVG from '../../assets/svg/IconEllipsisVertical.svg';
import IconEraserFilledSVG from '../../assets/svg/IconEraserFilled.svg';
import IconExclamationCircleSVG from '../../assets/svg/IconExclamationCircle.svg';
import IconExclamationCircleFilledSVG from '../../assets/svg/IconExclamationCircleFilled.svg';
import IconExclamationTriangleSVG from '../../assets/svg/IconExclamationTriangle.svg';
import IconEyeFilledSVG from '../../assets/svg/IconEyeFilled.svg';
import IconHeadsetSVG from '../../assets/svg/IconHeadset.svg';
import IconInfoCircleSVG from '../../assets/svg/IconInfoCircle.svg';
import IconInfoSquareFilledSVG from '../../assets/svg/IconInfoSquareFilled.svg';
import IconLinkDiagonalSVG from '../../assets/svg/IconLinkDiagonal.svg';
import IconMagnifyingGlassSVG from '../../assets/svg/IconMagnifyingGlass.svg';
import IconMessagePlusFilledSVG from '../../assets/svg/IconMessagePlusFilled.svg';
import IconNotificationTextSVG from '../../assets/svg/IconNotificationText.svg';
import IconNotificationTextFilledSVG from '../../assets/svg/IconNotificationTextFilled.svg';
import IconPencilLineFilledSVG from '../../assets/svg/IconPencilLineFilled.svg';
import IconPlusSVG from '../../assets/svg/IconPlus.svg';
import IconPlusSquareFilledSVG from '../../assets/svg/IconPlusSquareFilled.svg';
import IconTrashExclamationFilledSVG from '../../assets/svg/IconTrashExclamationFilled.svg';
import IconTrashFilledSVG from '../../assets/svg/IconTrashFilled.svg';
import IconWandMagicFilledSVG from '../../assets/svg/IconWandMagicFilled.svg';
import IconXmarkSVG from '../../assets/svg/IconXmark.svg';
import IconXmarkCircleSVG from '../../assets/svg/IconXmarkCircle.svg';
import LogoJotformColorSVG from '../../assets/svg/LogoJotformColor.svg';

const Icon = ({ Component, ...props }) => <Component {...props} />;

Icon.propTypes = {
  Component: elementType.isRequired
};

export const IconAIColor = (props) => <Icon Component={IconAIColorSVG} {...props} />;
export const IconArrowLeft = (props) => <Icon Component={IconArrowLeftSVG} {...props} />;
export const IconArrowRight = (props) => <Icon Component={IconArrowRightSVG} {...props} />;
export const IconArrowUp = (props) => <Icon Component={IconArrowUpSVG} {...props} />;
export const IconArrowUpFromBracket = (props) => <Icon Component={IconArrowUpFromBracketSVG} {...props} />;
export const IconArrowUpRight = (props) => <Icon Component={IconArrowUpRightSVG} {...props} />;
export const IconAngleRightCircleFilled = (props) => <Icon Component={IconAngleRightCircleFilledSVG} {...props} />;
export const IconCheck = (props) => <Icon Component={IconCheckSVG} {...props} />;
export const IconCopy = (props) => <Icon Component={IconCopySVG} {...props} />;
export const IconCloudArrowUp = (props) => <Icon Component={IconCloudArrowUpSVG} {...props} />;
export const IconDocumentDocFilled = (props) => <Icon Component={IconDocumentDocFilledSVG} {...props} />;
export const IconDocumentPdfFilled = (props) => <Icon Component={IconDocumentPdfFilledSVG} {...props} />;
export const IconEyeFilled = (props) => <Icon Component={IconEyeFilledSVG} {...props} />;
export const IconInfoSquareFilled = (props) => <Icon Component={IconInfoSquareFilledSVG} {...props} />;
export const IconInfoCircle = (props) => <Icon Component={IconInfoCircleSVG} {...props} />;
export const IconNotificationText = (props) => <Icon Component={IconNotificationTextSVG} {...props} />;
export const IconTrashExclamationFilled = (props) => <Icon Component={IconTrashExclamationFilledSVG} {...props} />;
export const IconTrashFilled = (props) => <Icon Component={IconTrashFilledSVG} {...props} />;
export const LogoJotformColor = (props) => <Icon Component={LogoJotformColorSVG} {...props} />;
export const IconXmark = (props) => <Icon Component={IconXmarkSVG} {...props} />;
export const IconXmarkCircle = (props) => <Icon Component={IconXmarkCircleSVG} {...props} />;
export const IconMagnifyingGlass = (props) => <Icon Component={IconMagnifyingGlassSVG} {...props} />;
export const IconMessagePlusFilled = (props) => <Icon Component={IconMessagePlusFilledSVG} {...props} />;
export const IconPencilLineFilled = (props) => <Icon Component={IconPencilLineFilledSVG} {...props} />;
export const IconPlus = (props) => <Icon Component={IconPlusSVG} {...props} />;
export const IconPlusSquareFilled = (props) => <Icon Component={IconPlusSquareFilledSVG} {...props} />;
export const IconAngleLeft = (props) => <Icon Component={IconAngleLeftSVG} {...props} />;
export const IconAngleRight = (props) => <Icon Component={IconAngleRightSVG} {...props} />;
export const IconChevronLeft = (props) => <Icon Component={IconChevronLeftSVG} {...props} />;
export const IconChevronRight = (props) => <Icon Component={IconChevronRightSVG} {...props} />;
export const IconArrowsFromCenter = (props) => <Icon Component={IconArrowsFromCenterSVG} {...props} />;
export const IconAnnotationInfoFilled = (props) => <Icon Component={IconAnnotationInfoFilledSVG} {...props} />;
export const IconAnnotationQuestionFilled = (props) => <Icon Component={IconAnnotationQuestionFilledSVG} {...props} />;
export const IconEllipsisVertical = (props) => <Icon Component={IconEllipsisVerticalSVG} {...props} />;
export const IconHeadset = (props) => <Icon Component={IconHeadsetSVG} {...props} />;
export const IconNotificationTextFilled = (props) => <Icon Component={IconNotificationTextFilledSVG} {...props} />;
export const IconExclamationCircle = (props) => <Icon Component={IconExclamationCircleSVG} {...props} />;
export const IconExclamationCircleFilled = (props) => <Icon Component={IconExclamationCircleFilledSVG} {...props} />;
export const IconLinkDiagonal = (props) => <Icon Component={IconLinkDiagonalSVG} {...props} />;
export const IconExclamationTriangle = (props) => <Icon Component={IconExclamationTriangleSVG} {...props} />;
export const IconWandMagicFilled = (props) => <Icon Component={IconWandMagicFilledSVG} {...props} />;
export const IconArrowsToLineHorizontal = (props) => <Icon Component={IconArrowsToLineHorizontalSVG} {...props} />;
export const IconArrowsToLineVertical = (props) => <Icon Component={IconArrowsToLineVerticalSVG} {...props} />;
export const IconArrowRotateLeft = (props) => <Icon Component={IconArrowRotateLeftSVG} {...props} />;
export const IconArrowRotateRight = (props) => <Icon Component={IconArrowRotateRightSVG} {...props} />;
export const IconArrowLeftHalf = (props) => <Icon Component={IconArrowLeftHalfSVG} {...props} />;
export const IconEraserFilled = (props) => <Icon Component={IconEraserFilledSVG} {...props} />;
