|
|
<!DOCTYPE html> |
|
|
<html lang="en"> |
|
|
<head> |
|
|
<meta charset="UTF-8"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<title>Hugging Face Uploader</title> |
|
|
<link rel="stylesheet" href="/style.css"> |
|
|
</head> |
|
|
<body> |
|
|
<div class="container"> |
|
|
<header class="header"> |
|
|
<div class="header-content"> |
|
|
<h1 class="title">π€ Hugging Face Uploader</h1> |
|
|
<p class="subtitle">Upload files from Telegram channels to Hugging Face datasets</p> |
|
|
</div> |
|
|
</header> |
|
|
|
|
|
<main class="main-content"> |
|
|
<div class="upload-section"> |
|
|
<form id="uploadForm" class="upload-form"> |
|
|
<div class="form-group"> |
|
|
<label for="filenames" class="form-label"> |
|
|
π Enter filenames to search and upload |
|
|
</label> |
|
|
<textarea |
|
|
id="filenames" |
|
|
name="filenames" |
|
|
class="form-textarea" |
|
|
placeholder="Enter filenames (one per line or comma-separated) Example: document.pdf image.jpg, video.mp4" |
|
|
rows="6" |
|
|
required |
|
|
></textarea> |
|
|
<div class="form-hint"> |
|
|
π‘ Tip: You can enter multiple filenames separated by commas or new lines |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="form-actions"> |
|
|
<button type="submit" class="btn btn-primary" id="uploadBtn"> |
|
|
<span class="btn-icon">π</span> |
|
|
<span class="btn-text">Start Upload</span> |
|
|
</button> |
|
|
<button type="button" class="btn btn-secondary" id="clearBtn"> |
|
|
<span class="btn-icon">ποΈ</span> |
|
|
<span class="btn-text">Clear</span> |
|
|
</button> |
|
|
</div> |
|
|
</form> |
|
|
</div> |
|
|
|
|
|
<div class="results-section" id="resultsSection" style="display: none;"> |
|
|
<div class="results-header"> |
|
|
<h3 class="results-title">π Upload Results</h3> |
|
|
<button class="btn btn-ghost" id="clearResultsBtn"> |
|
|
<span class="btn-icon">βοΈ</span> |
|
|
Clear Results |
|
|
</button> |
|
|
</div> |
|
|
<div class="results-content" id="resultsContent"></div> |
|
|
</div> |
|
|
|
|
|
<div class="loading-section" id="loadingSection" style="display: none;"> |
|
|
<div class="loading-spinner"></div> |
|
|
<p class="loading-text">Processing your request...</p> |
|
|
</div> |
|
|
</main> |
|
|
|
|
|
<footer class="footer"> |
|
|
<div class="footer-content"> |
|
|
<div class="status-indicators"> |
|
|
<div class="status-item" id="configStatus"> |
|
|
<span class="status-icon">βοΈ</span> |
|
|
<span class="status-text">Configuration</span> |
|
|
<span class="status-badge" id="configBadge">Checking...</span> |
|
|
</div> |
|
|
<div class="status-item" id="healthStatus"> |
|
|
<span class="status-icon">π</span> |
|
|
<span class="status-text">Health</span> |
|
|
<span class="status-badge" id="healthBadge">Checking...</span> |
|
|
</div> |
|
|
</div> |
|
|
<div class="footer-links"> |
|
|
<a href="/health" target="_blank" class="footer-link">Health Check</a> |
|
|
<a href="/config" target="_blank" class="footer-link">Configuration</a> |
|
|
<a href="/debug" target="_blank" class="footer-link">Debug Info</a> |
|
|
</div> |
|
|
</div> |
|
|
</footer> |
|
|
</div> |
|
|
|
|
|
<script src="/script.js"></script> |
|
|
</body> |
|
|
</html> |
|
|
|
|
|
|