brand-midjourney-icon
itshover/brand-midjourney-iconFreeComponent
itshover publishes no description for this item.
Install it
npx shadcn@latest add https://itshover.com/r/brand-midjourney-icon.jsonSource
1import { forwardRef, useImperativeHandle, useCallback } from "react";2import type { AnimatedIconHandle, AnimatedIconProps } from "./types";3import { motion, useAnimate } from "motion/react";45const BrandMidJourneyIcon = forwardRef<AnimatedIconHandle, AnimatedIconProps>(6 (7 { size = 24, color = "currentColor", strokeWidth = 0.75, className = "" },8 ref,9 ) => {10 const [scope, animate] = useAnimate();1112 const start = useCallback(() => {13 // Boat rocking on the waves14 animate(15 ".midjourney-sails",16 {17 rotate: [0, 2, -2, 0],18 y: [0, -0.5, 0.5, 0],19 },20 { duration: 2, repeat: Infinity, ease: "easeInOut" },21 );2223 // Waves undulating24 animate(25 ".midjourney-waves",26 {27 y: [0, 0.5, -0.5, 0],28 scaleY: [1, 0.98, 1.02, 1],29 },30 { duration: 1.5, repeat: Infinity, ease: "easeInOut" },31 );32 }, [animate]);3334 const stop = useCallback(() => {35 animate(".midjourney-sails", { rotate: 0, y: 0 }, { duration: 0.3 });36 animate(".midjourney-waves", { y: 0, scaleY: 1 }, { duration: 0.3 });37 }, [animate]);3839 useImperativeHandle(ref, () => ({40 startAnimation: start,41 stopAnimation: stop,42 }));4344 return (45 <motion.svg46 ref={scope}47 width={size}48 height={size}49 viewBox="0 0 24 24"50 fill="none"51 className={className}52 xmlns="http://www.w3.org/2000/svg"53 onHoverStart={start}54 onHoverEnd={stop}55 >56 <title>Midjourney</title>5758 {/* Boat with sails */}59 <motion.g60 className="midjourney-sails"61 style={{ transformBox: "fill-box", transformOrigin: "center bottom" }}62 >63 <path64 fill={color}65 stroke={color}66 strokeWidth={strokeWidth}67 strokeLinejoin="round"68// … truncated
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 |
