|
@@ -18,31 +18,20 @@
|
|
|
</svg>
|
|
</svg>
|
|
|
项目文件
|
|
项目文件
|
|
|
</h2>
|
|
</h2>
|
|
|
- <div class="file-stats">
|
|
|
|
|
- <span class="stat-item">
|
|
|
|
|
- <span class="stat-number">{{ totalFiles }}</span>
|
|
|
|
|
- <span class="stat-label">文件</span>
|
|
|
|
|
- </span>
|
|
|
|
|
- <span class="stat-item">
|
|
|
|
|
- <span class="stat-number">{{ formatFileSize(totalSize) }}</span>
|
|
|
|
|
- <span class="stat-label">总大小</span>
|
|
|
|
|
- </span>
|
|
|
|
|
- @if (imageCount > 0) {
|
|
|
|
|
- <span class="stat-item">
|
|
|
|
|
- <span class="stat-number">{{ imageCount }}</span>
|
|
|
|
|
- <span class="stat-label">图片</span>
|
|
|
|
|
- </span>
|
|
|
|
|
- }
|
|
|
|
|
- @if (documentCount > 0) {
|
|
|
|
|
- <span class="stat-item">
|
|
|
|
|
- <span class="stat-number">{{ documentCount }}</span>
|
|
|
|
|
- <span class="stat-label">文档</span>
|
|
|
|
|
- </span>
|
|
|
|
|
- }
|
|
|
|
|
- </div>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
|
|
|
- <div class="header-right">
|
|
|
|
|
|
|
+ <!-- 搜索框 -->
|
|
|
|
|
+ <div class="search-box">
|
|
|
|
|
+ <svg class="search-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
|
|
|
+ <circle cx="11" cy="11" r="8"></circle>
|
|
|
|
|
+ <path d="m21 21-4.35-4.35"></path>
|
|
|
|
|
+ </svg>
|
|
|
|
|
+ <input
|
|
|
|
|
+ type="text"
|
|
|
|
|
+ class="search-input"
|
|
|
|
|
+ placeholder="搜索文件..."
|
|
|
|
|
+ [(ngModel)]="searchQuery">
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
<!-- 视图切换 -->
|
|
<!-- 视图切换 -->
|
|
|
<div class="view-toggle">
|
|
<div class="view-toggle">
|
|
|
<button
|
|
<button
|
|
@@ -73,27 +62,40 @@
|
|
|
</button>
|
|
</button>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
- <!-- 搜索框 -->
|
|
|
|
|
- <div class="search-box">
|
|
|
|
|
- <svg class="search-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
|
|
|
- <circle cx="11" cy="11" r="8"></circle>
|
|
|
|
|
- <path d="m21 21-4.35-4.35"></path>
|
|
|
|
|
- </svg>
|
|
|
|
|
- <input
|
|
|
|
|
- type="text"
|
|
|
|
|
- class="search-input"
|
|
|
|
|
- placeholder="搜索文件..."
|
|
|
|
|
- [(ngModel)]="searchQuery">
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ </div>
|
|
|
|
|
|
|
|
- <!-- 过滤器 -->
|
|
|
|
|
|
|
+ <div class="header-right">
|
|
|
|
|
+ <div class="file-stats">
|
|
|
|
|
+ <span class="stat-item">
|
|
|
|
|
+ <span class="stat-number">{{ totalFiles }}</span>
|
|
|
|
|
+ <span class="stat-label">文件</span>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ <span class="stat-item">
|
|
|
|
|
+ <span class="stat-number">{{ formatFileSize(totalSize) }}</span>
|
|
|
|
|
+ <span class="stat-label">总大小</span>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ @if (imageCount > 0) {
|
|
|
|
|
+ <span class="stat-item">
|
|
|
|
|
+ <span class="stat-number">{{ imageCount }}</span>
|
|
|
|
|
+ <span class="stat-label">图片</span>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ }
|
|
|
|
|
+ @if (documentCount > 0) {
|
|
|
|
|
+ <span class="stat-item">
|
|
|
|
|
+ <span class="stat-number">{{ documentCount }}</span>
|
|
|
|
|
+ <span class="stat-label">文档</span>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <!-- 过滤器 -->
|
|
|
<select class="filter-select" [(ngModel)]="filterType">
|
|
<select class="filter-select" [(ngModel)]="filterType">
|
|
|
<option value="all">全部文件</option>
|
|
<option value="all">全部文件</option>
|
|
|
<option value="images">图片</option>
|
|
<option value="images">图片</option>
|
|
|
<option value="documents">文档</option>
|
|
<option value="documents">文档</option>
|
|
|
<option value="videos">视频</option>
|
|
<option value="videos">视频</option>
|
|
|
</select>
|
|
</select>
|
|
|
-
|
|
|
|
|
<!-- 关闭按钮 -->
|
|
<!-- 关闭按钮 -->
|
|
|
<button class="close-btn" (click)="onClose()">
|
|
<button class="close-btn" (click)="onClose()">
|
|
|
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
|
|
@@ -102,6 +104,9 @@
|
|
|
</svg>
|
|
</svg>
|
|
|
</button>
|
|
</button>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<!-- 模态框内容 -->
|
|
<!-- 模态框内容 -->
|