import React from "react";
import { SvgProps } from "../Svg";

import {
  AddigySvg,
  AwsSvg,
  BambooHrSvg,
  BitbucketSvg,
  ConveyorSvg,
  DefaultSvg,
  DeploySvg,
  EventsAPI,
  GcpSvg,
  GithubSvg,
  GitlabSvg,
  GsuiteSvg,
  JamfSvg,
  JiraSvg,
  JumpcloudSvg,
  OktaSvg,
  OneLoginSvg,
  SalesforceSvg,
  SlackSvg,
  ZoomSvg,
} from "./svg";

interface IntegrationLogoSvgProps extends SvgProps {
  logo?: string;
  color?: string;
  square?: boolean;
  size?: number;
}

const IntegrationLogoSvg = ({ logo, ...rest }: IntegrationLogoSvgProps) => {
  switch (logo) {
    case "addigy":
      return <AddigySvg {...rest} />;
    case "aws":
      return <AwsSvg {...rest} />;
    case "bamboohr":
      return <BambooHrSvg {...rest} />;
    case "bitbucket":
      return <BitbucketSvg {...rest} />;
    case "conveyor":
      return <ConveyorSvg {...rest} />;
    case "deploy":
      return <DeploySvg {...rest} />;
    case "events-api":
      return <EventsAPI {...rest} />;
    case "gcp":
      return <GcpSvg {...rest} />;
    case "github":
      return <GithubSvg {...rest} />;
    case "gitlab":
      return <GitlabSvg {...rest} />;
    case "gsuite":
      return <GsuiteSvg {...rest} />;
    case "jamf":
      return <JamfSvg {...rest} />;
    case "jira":
      return <JiraSvg {...rest} />;
    case "jumpcloud":
      return <JumpcloudSvg {...rest} />;
    case "okta":
      return <OktaSvg {...rest} />;
    case "onelogin":
      return <OneLoginSvg {...rest} />;
    case "salesforce":
      return <SalesforceSvg {...rest} />;
    case "slack":
      return <SlackSvg {...rest} />;
    case "zoom":
      return <ZoomSvg {...rest} />;
    default:
      return <DefaultSvg {...rest} />;
  }
};

export default IntegrationLogoSvg;
