import { useState } from 'react' import { checkCodesPublic, checkCodesAuth } from '../services/api' import type { RequestError } from '../services/api' import { ResultsTable } from '../components/ResultsTable' import type { CodeResult, CheckCodesResponse } from '../types' export function CheckCodesPage() { const [codesInput, setCodesInput] = useState('') const [results, setResults] = useState(null) const [loading, setLoading] = useState(false) const [error, setError] = useState('') const [errorDebug, setErrorDebug] = useState(null) const [debugExpanded, setDebugExpanded] = useState(false) async function handleCheck(mode: 'public' | 'auth') { const codes = codesInput .split('\n') .map(c => c.trim()) .filter(Boolean) if (codes.length === 0) { setError('Введите хотя бы один код маркировки') return } setLoading(true) setError('') setErrorDebug(null) setDebugExpanded(false) try { const fn = mode === 'public' ? checkCodesPublic : checkCodesAuth const response: CheckCodesResponse = await fn(codes) setResults(response.results) if (response.debugInfo) { setErrorDebug(JSON.stringify(response.debugInfo, null, 2)) } } catch (err) { const re = err as RequestError setError(re.message) if (re.debugInfo) { setErrorDebug(JSON.stringify(re.debugInfo, null, 2)) } } finally { setLoading(false) } } return (

Проверка кодов маркировки (КМ)