import React, { useCallback, useState } from 'react'; import { View, Text } from 'react-native'; import Svg, { Path } from 'react-native-svg'; import type { ASA } from '../types/algorand'; import { SearchSheet } from '../ui/SearchSheet'; function ShieldIcon({ size = 12, color = '#60a5fa' }: { size?: number; color?: string }) { return ( ); } interface ASASearchProps { data: ASA[]; onSelect?: (asset: ASA) => void; placeholder?: string; className?: string; } export function ASASearch({ data, onSelect, placeholder = 'Search assets...', className, }: ASASearchProps) { const [selected, setSelected] = useState(null); const handleSelect = useCallback( (asset: ASA) => { setSelected(asset); onSelect?.(asset); }, [onSelect], ); const renderItem = useCallback( (asset: ASA) => ( {asset.unitName.slice(0, 2)} {asset.name} {asset.verified && } {asset.unitName} - #{asset.id} {asset.price !== undefined && ( ${asset.price} )} ), [], ); return ( {selected && ( Selected Asset {renderItem(selected)} )} ); }