'use client'; import { useState } from 'react'; import { motion } from 'framer-motion'; import { fadeUp } from '@/lib/animations'; const SAMPLES = [ { label: 'p53 (human)', seq: `>sp|P04637|P53_HUMAN Cellular tumor antigen p53 MEEPQSDPSVEPPLSQETFSDLWKLLPENNVLSPLPSQAMDDLMLSPDDIEQWFTEDPGP DEAPRMPEAAPPVAPAPAAPTPAAPAPAPSWPLSSSVPSQKTYPQGLNGTVNLPGRNSFEV RVCACPHERCTEGRAVKLFSPKELNCEMAQDIINNKFNLNLLPETIPNTIICFVESQPPQGD SVTTCFSWRGEGNEMYLHTEKEYKALKSTLSEKYMATCLLLSPKKKSLFPEALKLCNQKYS EEFLLLDEALLSGCFAELACALHLAPAEGRYSGGFNHELYNMMTQQQQHQHHLQMQQHHQQ HHQQHHQQHHQQQQQQQQQQQQQQQQQH`, }, { label: 'Insulin (human)', seq: `>sp|P01308|INS_HUMAN Insulin MALWMRLLPLLALLALWGPDPAAAFVNQHLCGSHLVEALYLVCGERGFFYTPKTRREAED LQVGQVELGGGPGAGSLQPLALEGSLQKRGIVEQCCTSICSLYQLENYCN`, }, ]; interface SequenceInputProps { value: string; onChange: (value: string) => void; onSubmit: () => void; loading: boolean; error?: string | null; } export function SequenceInput({ value, onChange, onSubmit, loading, error }: SequenceInputProps) { const aaCount = value .split('\n') .filter((l) => !l.startsWith('>')) .join('').length; return (