← Back

Pin Bottom

Install

npm install @svg-animated-icons/react

CLI

Copy an icon component straight into your project — shadcn-style. Replace {icon} with an icon name like arrow-left.

terminal
npx @svg-animated-icons/cli add {icon} --react
FlagDescription
--dest <dir>Destination directory (default: components/animated-icons)

Or copy the component with the CLI

CLI
npx @svg-animated-icons/cli add pin-bottom --react

Code

React
// Generated by @svg-animated-icons/cli
// You own this file — edit it freely.

import React from "react";

type Props = {
  disableHover?: boolean;
  className?: string;
};

export function PinBottomIcon({ disableHover, className }: Props) {
  const classes = [
    "ai-pin-bottom-icon",
    disableHover ? "no-hover" : "",
    className ?? "",
  ]
    .filter(Boolean)
    .join(" ");

  return (
    <>
      <style>{`
.ai-pin-bottom-icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  cursor: pointer;
  overflow: visible;
}

.ai-pin-bottom-icon * {
  transform-box: fill-box;
}

.ai-pin-bottom-icon.no-hover * {
  transform: none;
  opacity: 1;
  animation: none;
}

.ai-pin-bottom-icon .arrow {
  transform-origin: center;
}

.ai-pin-bottom-icon:not(.no-hover):hover .arrow {
  animation: ai-pin-bottom-push 700ms ease-in-out;
}

@keyframes ai-pin-bottom-push {
  0%, 50%, 100% { transform: translateY(0); }
  25%, 75% { transform: translateY(1px); }
}
`}</style>
      <svg
        xmlns="http://www.w3.org/2000/svg"
        className={classes}
        viewBox="0 0 15 15"
        fill="none"
      >
        <path className="arrow" d="M7.7478 10.8757C7.59795 10.9748 7.40156 10.9749 7.25171 10.8757L7.1814 10.8181L3.9314 7.56811C3.75592 7.39236 3.75575 7.10704 3.9314 6.9314C4.10705 6.75584 4.39239 6.75595 4.56812 6.9314L7.04956 9.41284L7.04956 1.49976C7.04969 1.25139 7.25138 1.04965 7.49976 1.04956C7.74821 1.04956 7.94983 1.25133 7.94995 1.49976L7.94995 9.41284L10.4314 6.9314L10.5017 6.87378C10.6763 6.75837 10.9143 6.77781 11.0681 6.9314C11.2219 7.08519 11.2411 7.32313 11.1257 7.4978L11.0681 7.56811L7.81812 10.8181L7.7478 10.8757Z" fill="currentColor"/>
        <path className="bar" d="M1.49976 13.95C1.25132 13.9498 1.04956 13.7482 1.04956 13.4998C1.04967 13.2514 1.25138 13.0497 1.49976 13.0496L13.4998 13.0496C13.7482 13.0496 13.9498 13.2513 13.95 13.4998C13.95 13.7483 13.7483 13.95 13.4998 13.95L1.49976 13.95Z" fill="currentColor"/>
      </svg>
    </>
  );
}