brand-gemini-icon
itshover/brand-gemini-iconFreeComponent
itshover publishes no description for this item.
Install it
npx shadcn@latest add https://itshover.com/r/brand-gemini-icon.jsonSource
1import { forwardRef, useImperativeHandle, useCallback } from "react";2import type { AnimatedIconHandle, AnimatedIconProps } from "./types";3import { motion, useAnimate } from "motion/react";45const BrandGeminiIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(6 ({ size = 24, color = "currentColor", className = "" }, ref) => {7 const [scope, animate] = useAnimate();89 const start = useCallback(() => {10 animate(11 scope.current,12 { scale: 0.9, rotate: [0, 180] },13 {14 duration: 0.8,15 ease: "easeInOut",16 },17 );18 }, [animate, scope]);1920 const stop = useCallback(() => {21 animate(22 scope.current,23 { scale: 1, rotate: 0 },24 {25 duration: 0.8,26 ease: "easeInOut",27 },28 );29 }, [animate, scope]);3031 useImperativeHandle(32 ref,33 () => ({34 startAnimation: start,35 stopAnimation: stop,36 }),37 [start, stop],38 );3940 return (41 <motion.svg42 ref={scope}43 onHoverStart={start}44 onHoverEnd={stop}45 fill={color}46 viewBox="0 0 24 24"47 height={size}48 width={size}49 xmlns="http://www.w3.org/2000/svg"50 className={`gemini-icon cursor-pointer ${className}`}51 role="img"52 aria-label="Gemini"53 style={{54 flex: "none",55 lineHeight: 1,56 transformBox: "fill-box",57 transformOrigin: "center",58 }}59 >60 <title>Gemini</title>6162 {/* Gemini star glyph */}63 <motion.path64 className="gemini-shape"65 d="M20.616 10.835a14.147 14.147 0 01-4.45-3.001 14.111 14.111 0 01-3.678-6.452.503.503 0 00-.975 0 14.134 14.134 0 01-3.679 6.452 14.155 14.155 0 01-4.45 3.001c-.65.28-1.318.505-2.002.678a.502.502 0 000 .975c.684.172 1.35.397 2.002.677a14.147 14.147 0 014.45 3.001 14.112 14.112 0 013.679 6.453.502.502 0 00.975 0c.172-.685.397-1.351.677-2.003a14.145 14.145 0 013.001-4.45 14.113 14.113 0 016.453-3.678.503.503 0 000-.975 13.245 13.245 0 01-2.003-.678z"66 />67 </motion.svg>68 );69 },70);7172BrandGeminiIcon.displayName = "BrandGeminiIcon";73export default BrandGeminiIcon;
What it pulls in
npm packages
Files it writes
More from itshover
All 263 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| accessibility-iconaccessibility-icon | itshover | Components | Free | 1 dep · 2 files | |
| airplane-iconairplane-icon | itshover | Components | Free | 1 dep · 2 files | |
| alarm-clock-plus-iconalarm-clock-plus-icon | itshover | Components | Free | 1 dep · 2 files | |
| align-center-iconalign-center-icon | itshover | Components | Free | 1 dep · 2 files | |
| align-vertical-space-around-iconalign-vertical-space-around-icon | itshover | Components | Free | 1 dep · 2 files | |
| ambulance-iconambulance-icon | itshover | Components | Free | 1 dep · 2 files | |
| ampersand-iconampersand-icon | itshover | Components | Free | 1 dep · 2 files | |
| angry-iconangry-icon | itshover | Components | Free | 1 dep · 2 files |
