/
githubmirror
/
tldraw
Обзор
Документация
Войти
/
githubmirror
/
tldraw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
apps/dotcom/client/src/pages/admin/shared.tsx
33 строки
1016 B
Mitja Bezenšek
feat(dotcom): redesign admin panel and add file undelete (#9792)
31 июл 2026, 18:09
Не верифицирован
31 июл 2026, 18:09
4c6a5fb
Код
Авторство
О чём код?
import { useState } from 'react' import { AdminButton } from './AdminButton' import styles from './admin.module.css' // Helper component for structured data display. export function StructuredDataDisplay({ data }: { data: object }) { const [copied, setCopied] = useState(false) const handleCopy = async () => { try { await navigator.clipboard.writeText(JSON.stringify(data, null, 2)) setCopied(true) setTimeout(() => setCopied(false), 2000) } catch (err) { console.error('Failed to copy:', err) } } return ( <div className={styles.structuredData}> <AdminButton onClick={handleCopy} variant="secondary" className={styles.copyButton}> {copied ? 'Copied!' : 'Copy JSON'} </AdminButton> <pre className={styles.dataDisplay}>{JSON.stringify(data, null, 2)}</pre> </div> ) } export function formatBytes(bytes: number) { if (bytes < 1024) return `${bytes} B` if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB` return `${(bytes / (1024 * 1024)).toFixed(1)} MB` }