import { useEffect, useState } from 'react' import { Link } from 'react-router-dom' import { api, getToken, User } from '../api/client' export default function Settings() { const [user, setUser] = useState(null) const [copied, setCopied] = useState(false) const [rotating, setRotating] = useState(false) useEffect(() => { if (!getToken()) { window.location.href = '/login' return } api.me().then(setUser) }, []) async function copyKey() { if (!user) return await navigator.clipboard.writeText(user.api_key) setCopied(true) setTimeout(() => setCopied(false), 2000) } async function rotateKey() { if (!confirm('Сгенерировать новый API-ключ? Старый перестанет работать.')) return setRotating(true) try { const res = await api.rotateApiKey() setUser(prev => prev ? { ...prev, api_key: res.api_key } : null) } catch (err: any) { alert('Ошибка: ' + err.message) } finally { setRotating(false) } } return (
← Назад

Настройки

{user && (

Email: {user.email}

API Key:{' '} {user.api_key}

REST API:{' '} POST /api/v1/search

Используйте Authorization: Bearer <API_Key> для доступа к API. Документация: /api/docs

План: {user.plan}

Дата регистрации: {new Date(user.created_at).toLocaleDateString()}

)}
) }