import React from 'react' type Variant = 'mark' | 'ribbonS' | 'badge' | 'crane' | 'craneOutline' type Props = { variant?: Variant height?: number color?: string className?: string title?: string strokeWidth?: number } /** * Origami-style dragon logo for small header placement. * - Uses currentColor by default so it adapts to surrounding text color. * - Keep height around 20–24px in compact headers. */ export const OrigamiDragonLogo: React.FC = ({ variant = 'crane', height = 20, color = 'currentColor', className = '', title = 'Soryu logo', strokeWidth = 12, }) => { if (variant === 'craneOutline') { // Outline rendition inspired by provided licensed crane icon return ( {title} {/* Left tail → left wing base → body pivot */} {/* Left wing upstroke */} {/* Left wing inner crease to pivot */} {/* Body lower crease */} {/* Center mast (rear triangle) */} {/* Right wing outer edge */} {/* Right wing inner crease */} {/* Neck and head */} {/* Neck inner crease */} ) } if (variant === 'crane') { // Origami crane silhouette with a dragon head return ( {title} {/* Left/up wing */} {/* Right/down wing */} {/* Body (diamond) */} {/* Tail */} {/* Neck */} {/* Dragon head (top plane) */} {/* Dragon jaw plane */} {/* Small horn */} ) } if (variant === 'mark') { // Angular origami dragon head/neck, faceted into simple planes return ( {title} {/* Upper head */} {/* Snout / jaw plane */} {/* Neck planes */} {/* Small ear/horn suggestion */} ) } if (variant === 'ribbonS') { // Folded ribbon forming an angular "S" silhouette return ( {title} {/* Top fold */} {/* Middle fold (turning back) */} {/* Lower fold */} ) } // badge return ( {title} {/* Hex container */} {/* Mini mark inside */} ) } export default OrigamiDragonLogo