add market-page layouts, v1 for endpoints
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
export default function ProtectedFilesTable() {
|
||||
return (
|
||||
<div className="protected-files-table">
|
||||
<h3>
|
||||
📋 Защищенные изображения (0)
|
||||
</h3>
|
||||
|
||||
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ФАЙЛ</th>
|
||||
<th>РАЗМЕР</th>
|
||||
<th>ЗАЩИТА</th>
|
||||
<th>ДАТА</th>
|
||||
<th>ДЕЙСТВИЯ</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<div>
|
||||
<div>
|
||||
🛡️
|
||||
</div>
|
||||
<div>
|
||||
<div>
|
||||
Screenshot 2025-11-13 at 10.20.14.p...
|
||||
</div>
|
||||
<div>
|
||||
ПОЛНАЯ ЗАЩИТА
|
||||
<span className="real-protection-badge">
|
||||
ВСЕ МОДУЛИ
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
1.93 МБ
|
||||
</td>
|
||||
<td>
|
||||
<div>
|
||||
<div>
|
||||
<div></div>
|
||||
</div>
|
||||
<span>
|
||||
100%
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
27.11.2025 10:16
|
||||
</td>
|
||||
<td>
|
||||
<button className="btn btn-secondary">
|
||||
📥 Скачать
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
export default function ProtectionSummary() {
|
||||
return (
|
||||
<div className="protection-summary">
|
||||
<h3>📊 Статистика защиты</h3>
|
||||
<div className="protection-stats">
|
||||
<div className="stat-card">
|
||||
<div className="stat-number">0</div>
|
||||
<div className="stat-label">Всего файлов</div>
|
||||
</div>
|
||||
<div className="stat-card">
|
||||
<div className="stat-number">0</div>
|
||||
<div className="stat-label">Защищено</div>
|
||||
</div>
|
||||
<div className="stat-card">
|
||||
<div className="stat-number">0</div>
|
||||
<div className="stat-label">Изображений</div>
|
||||
</div>
|
||||
<div className="stat-card">
|
||||
<div className="stat-number">100%</div>
|
||||
<div className="stat-label">Уровень защиты</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
export default function TestSection() {
|
||||
return (
|
||||
<div className="test-section">
|
||||
<h3>
|
||||
🔍 Проверить защиту изображения
|
||||
</h3>
|
||||
<div className="test-section-content">
|
||||
<h4>
|
||||
🔍
|
||||
</h4>
|
||||
<button className="btn btn-primary">
|
||||
🔍 Выбрать изображение для анализа
|
||||
</button>
|
||||
<p>
|
||||
При обнаружении защиты будет показана полная информация о владельце (WEBP НЕ поддерживается)
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
export default function UploadSection() {
|
||||
return (
|
||||
<div className="upload-section">
|
||||
<h3>
|
||||
📷 Загрузить изображение для защиты
|
||||
</h3>
|
||||
<div className="drag-drop-zone">
|
||||
<div className="text-[48px] mb-[15px]">🛡️</div>
|
||||
<h4>
|
||||
Перетащите изображения сюда
|
||||
</h4>
|
||||
<p>
|
||||
Размер: 150x150 - 4000x4000 пикселей, форматы: JPG, PNG, GIF, BMP (WEBP НЕ поддерживается)
|
||||
</p>
|
||||
<button className="btn btn-primary">
|
||||
🛡️ Выбрать файлы для защиты
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -15,7 +15,7 @@ export default function DropDownList() {
|
||||
const links = [
|
||||
{
|
||||
name: 'Маркировка фото',
|
||||
href: '/pages/emptypage'
|
||||
href: '/pages/marking-photo'
|
||||
},
|
||||
{
|
||||
name: 'Маркировка видео',
|
||||
|
||||
Reference in New Issue
Block a user