'use client'; import { forwardRef, InputHTMLAttributes } from 'react'; import styles from './cyber-input.module.css'; export interface CyberInputProps extends InputHTMLAttributes { /** Neon color variant */ variant?: 'cyan' | 'pink' | 'green' | 'purple'; /** Label above input */ label?: string; /** Error message */ error?: string; } export const CyberInput = forwardRef( ( { variant = 'cyan', label, error, className, ...props }, ref ) => { const wrapperClasses = [ styles.wrapper, styles[variant], error && styles.hasError, className, ].filter(Boolean).join(' '); return (
{label && }
{error && {error}}
); } ); CyberInput.displayName = 'CyberInput'; export default CyberInput;