151 lines
7.0 KiB
HTML
151 lines
7.0 KiB
HTML
<!doctype html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
|
<title>Asset Cache</title>
|
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap" rel="stylesheet" />
|
|
<link rel="stylesheet" href="/styles.css?v=20251214" />
|
|
<link rel="apple-touch-icon" sizes="512x512" href="/icon-512.png">
|
|
<link rel="icon" type="image/png" sizes="64x64" href="/icon-64.png">
|
|
<link rel="icon" type="image/png" sizes="128x128" href="/icon-128.png">
|
|
<link rel="icon" type="image/png" sizes="256x256" href="/icon-256.png">
|
|
<meta name="robots" content="noindex, nofollow">
|
|
</head>
|
|
<body>
|
|
<div class="app-layout">
|
|
<!-- Header -->
|
|
<header class="app-header glass">
|
|
<div class="header-left">
|
|
<div class="logo-icon"><img src="/icon-64.png" alt="网站LOGO" width="32" height="32"></div>
|
|
<div class="header-text">
|
|
<h1>Asset Cache</h1>
|
|
<span class="status-badge online">Online</span>
|
|
</div>
|
|
</div>
|
|
<div class="header-right">
|
|
<button id="toggleSidebar" class="icon-btn mobile-only" aria-label="Menu">
|
|
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
<line x1="3" y1="12" x2="21" y2="12"></line>
|
|
<line x1="3" y1="6" x2="21" y2="6"></line>
|
|
<line x1="3" y1="18" x2="21" y2="18"></line>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
</header>
|
|
|
|
<main class="app-main">
|
|
<!-- Sidebar (External Links & Info) -->
|
|
<aside id="sidebar" class="app-sidebar">
|
|
<div class="sidebar-content">
|
|
<section class="sidebar-section">
|
|
<h2>控制台</h2>
|
|
<div class="action-group">
|
|
<button id="seedTrigger" class="btn primary full-width" type="button">
|
|
<span class="icon">⚡</span> 触发 Seed 抓取
|
|
<span class="btn-spinner" aria-hidden="true"></span>
|
|
</button>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="sidebar-section">
|
|
<h2>公共资源加速</h2>
|
|
<p class="desc">建议优先使用成熟的公共 CDN 服务。</p>
|
|
<nav class="nav-links">
|
|
<a href="https://cdnjs.com/" target="_blank" class="nav-item">
|
|
<span class="nav-title">CDNJS</span>
|
|
<span class="nav-url">cdnjs.com</span>
|
|
</a>
|
|
<a href="https://www.jsdelivr.com/" target="_blank" class="nav-item">
|
|
<span class="nav-title">jsDelivr</span>
|
|
<span class="nav-url">jsdelivr.com</span>
|
|
</a>
|
|
<a href="https://www.staticfile.org/" target="_blank" class="nav-item">
|
|
<span class="nav-title">七牛云 CDN</span>
|
|
<span class="nav-url">staticfile.org</span>
|
|
</a>
|
|
<a href="http://jscdn.upai.com/" target="_blank" class="nav-item">
|
|
<span class="nav-title">又拍云 CDN</span>
|
|
<span class="nav-url">jscdn.upai.com</span>
|
|
</a>
|
|
</nav>
|
|
</section>
|
|
|
|
<footer class="sidebar-footer">
|
|
<p>© 2025 Asset Cache & © Photo8 Tools Team</p>
|
|
<p><a href="https://ckk.photo8.site/Photo8/Asset-cache" target="_blank">自己部署一个</a></p>
|
|
</footer>
|
|
</div>
|
|
</aside>
|
|
|
|
<!-- Main Content (Cache Manager) -->
|
|
<section class="app-content">
|
|
<!-- Toolbar -->
|
|
<div class="toolbar glass">
|
|
<div class="toolbar-row">
|
|
<div class="seg-control">
|
|
<button class="seg-btn is-active" data-type="">全部</button>
|
|
<button class="seg-btn" data-type="css">CSS</button>
|
|
<button class="seg-btn" data-type="js">JS</button>
|
|
</div>
|
|
<div class="actions-right">
|
|
<button id="refresh" class="icon-btn" title="刷新">
|
|
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
<path d="M23 4v6h-6"></path>
|
|
<path d="M1 20v-6h6"></path>
|
|
<path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="toolbar-row secondary">
|
|
<div class="search-wrapper">
|
|
<svg class="search-icon" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>
|
|
<input id="search" type="text" placeholder="输入关键词搜索更多资源..." />
|
|
</div>
|
|
<div class="filters">
|
|
<select id="timeRange" class="select-clean">
|
|
<option value="">全部时间</option>
|
|
<option value="24">24小时内</option>
|
|
<option value="168">7天内</option>
|
|
</select>
|
|
<select id="sortBy" class="select-clean">
|
|
<option value="mtime">按时间</option>
|
|
<option value="size">按大小</option>
|
|
<option value="name">按名称</option>
|
|
</select>
|
|
<!-- Hidden inputs to maintain compatibility with app.js if needed, or mapped via CSS -->
|
|
<select id="order" class="select-clean" style="display:none"><option value="desc">Desc</option><option value="asc">Asc</option></select>
|
|
<select id="pageSize" class="select-clean" style="display:none"><option value="6">6</option></select>
|
|
</div>
|
|
</div>
|
|
<div id="stats" class="stats-bar">加载中...</div>
|
|
</div>
|
|
|
|
<!-- Scrollable List -->
|
|
<div class="list-container">
|
|
<div id="list" class="resource-list"></div>
|
|
<div id="searchHint" class="search-hint" style="display:none">
|
|
仅显示部分内容,请使用搜索功能查找更多资源
|
|
</div>
|
|
<div id="sentinel" class="loading-sentinel">
|
|
<div class="spinner"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Back Top (Might not be needed if scrolling is fast/internal, but good to have) -->
|
|
<button id="backTop" class="fab-btn">↑</button>
|
|
</section>
|
|
</main>
|
|
|
|
<!-- Mobile Sidebar Overlay -->
|
|
<div id="sidebarOverlay" class="sidebar-overlay"></div>
|
|
</div>
|
|
|
|
<script src="/app.js?v=20251214"></script>
|
|
</body>
|
|
</html>
|