/
DME
/
Notes
Обзор
Документация
Войти
/
DME
/
Notes
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/components/ai-analysis.tsx
38 строк
1 KB
Karasique333
Commit
19 июн 2025, 15:09
19 июн 2025, 15:09
d96c829
Код
Авторство
О чём код?
'use client' import { useState } from 'react' import { Button } from './ui/button' import { Loader } from 'lucide-react' import { api } from '@/trpc/react' export default function AiAnalysis() { const [result, setResult] = useState('') const [loading, setLoading] = useState(false) const getAiInsights = api.ai.analyze.useMutation() const handleAnalyze = async () => { setLoading(true) setResult('') try { const res = await getAiInsights.mutateAsync({}) setResult(res.message) } catch (e) { setResult('Ошибка при анализе данных.') } setLoading(false) } return ( <div className="space-y-4 h-full flex flex-col"> <Button onClick={handleAnalyze} disabled={loading}> {loading ? <Loader className="animate-spin" /> : 'Запустить анализ'} </Button> {result && ( <div className="flex-1 overflow-auto max-h-[500px] p-4 rounded-lg bg-neutral-100 dark:bg-neutral-800 whitespace-pre-line text-neutral-900 dark:text-white border border-neutral-200 dark:border-neutral-700"> {result} </div> )} </div> ) }