import { Mask, Path, Rect, Svg } from 'react-native-svg'
import { useCurrentColor } from 'tamagui'

import type { SvgProps } from 'react-native-svg'

const SvgKeycardIcon = (props: SvgProps) => {
  const { color: colorToken = 'currentColor', ...rest } = props
  const color = useCurrentColor(colorToken)
  return (
    <Svg
      width={20}
      height={20}
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
      {...rest}
    >
      <Rect
        x={4}
        y={3}
        width={12}
        height={14}
        rx={4}
        stroke={color}
        strokeWidth={1.3}
      />
      <Mask
        id="keycard-icon_svg__a"
        maskUnits="userSpaceOnUse"
        x={6.287}
        y={4.5}
        width={7}
        height={11}
        fill="#000"
      >
        <Path fill="#fff" d="M6.287 4.5h7v11h-7z" />
        <Path
          fillRule="evenodd"
          clipRule="evenodd"
          d="M9.055 9.913a2.245 2.245 0 0 1-1.768-2.196c0-1.229.991-2.217 2.224-2.217 1.232 0 2.224.988 2.224 2.217.023 1.054-.724 1.95-1.715 2.184v2.222h.054l1.178-1.388h1.126l-1.394 1.602 1.474 2.163h-1.045l-1.072-1.549-.321.374V14.5h-.965V9.913Zm-.884-2.196c0-.721.59-1.336 1.34-1.336.75 0 1.366.615 1.34 1.336 0 .72-.59 1.335-1.34 1.335-.723 0-1.34-.588-1.34-1.335Z"
        />
      </Mask>
      <Path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M9.055 9.913a2.245 2.245 0 0 1-1.768-2.196c0-1.229.991-2.217 2.224-2.217 1.232 0 2.224.988 2.224 2.217.023 1.054-.724 1.95-1.715 2.184v2.222h.054l1.178-1.388h1.126l-1.394 1.602 1.474 2.163h-1.045l-1.072-1.549-.321.374V14.5h-.965V9.913Zm-.884-2.196c0-.721.59-1.336 1.34-1.336.75 0 1.366.615 1.34 1.336 0 .72-.59 1.335-1.34 1.335-.723 0-1.34-.588-1.34-1.335Z"
        fill={color}
      />
      <Path
        d="M9.055 9.913h.17v-.138l-.134-.029-.036.167Zm2.68-2.196h-.17v.003l.17-.003ZM10.02 9.9l-.039-.166-.131.031v.135h.17Zm0 2.222h-.17v.17h.17v-.17Zm.054 0v.17h.078l.051-.06-.13-.11Zm1.178-1.388v-.17h-.078l-.051.06.13.11Zm1.126 0 .128.111.245-.281h-.373v.17Zm-1.394 1.602-.128-.112-.086.1.074.108.14-.096Zm1.474 2.163v.17h.322l-.181-.266-.141.096Zm-1.045 0-.14.097.051.073h.09v-.17Zm-1.072-1.549.14-.097-.125-.18-.143.166.128.111Zm-.321.374-.129-.11-.041.047v.063h.17Zm0 1.175v.17h.17v-.17h-.17Zm-.965 0h-.17v.17h.17v-.17Zm1.795-6.783-.17-.007v.007h.17Zm-1.76 2.03a2.075 2.075 0 0 1-1.633-2.03h-.34c0 1.153.813 2.132 1.903 2.362l.07-.333Zm-1.633-2.03c0-1.134.915-2.047 2.054-2.047v-.34a2.385 2.385 0 0 0-2.394 2.387h.34ZM9.511 5.67c1.139 0 2.054.913 2.054 2.047h.34A2.385 2.385 0 0 0 9.51 5.33v.34Zm2.054 2.05c.02.97-.667 1.8-1.584 2.015l.078.331c1.065-.25 1.87-1.214 1.846-2.353l-.34.007ZM9.85 9.9v2.223h.34V9.901h-.34Zm.17 2.393h.054v-.34h-.054v.34Zm.183-.06 1.179-1.389-.26-.22-1.178 1.39.26.22Zm1.05-1.329h1.125v-.34h-1.126v.34Zm.996-.281-1.393 1.602.257.223 1.393-1.602-.257-.223Zm-1.405 1.81 1.474 2.163.28-.192-1.473-2.163-.281.192Zm1.614 1.897h-1.045v.34h1.045v-.34Zm-.905.073-1.072-1.549-.28.194 1.072 1.549.28-.194Zm-1.34-1.563-.322.374.258.222.321-.374-.258-.222Zm-.363.485V14.5h.34v-1.175h-.34Zm.17 1.005h-.965v.34h.965v-.34Zm-.795.17V9.913h-.34V14.5h.34Zm.286-8.289c-.846 0-1.51.692-1.51 1.506h.34c0-.63.515-1.166 1.17-1.166v-.34Zm1.51 1.512c.03-.824-.67-1.512-1.51-1.512v.34c.66 0 1.193.541 1.17 1.16l.34.012ZM9.51 9.222c.846 0 1.51-.692 1.51-1.505h-.34c0 .628-.516 1.165-1.17 1.165v.34ZM8 7.717c0 .844.695 1.505 1.51 1.505v-.34c-.632 0-1.17-.514-1.17-1.165h-.34Z"
        fill={color}
        mask="url(#keycard-icon_svg__a)"
      />
    </Svg>
  )
}
export default SvgKeycardIcon
