feat: Admin 媒体库列表、删除与同步索引

SSR /admin/media 复用 ListMedia/DeleteMedia,并支持按 ID 批量删与扫盘回填。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-30 03:47:20 +08:00
parent 0c5fe8a1b4
commit 9e403a7178
11 changed files with 570 additions and 34 deletions

View File

@@ -1046,6 +1046,72 @@ points-only[data-locked="false"] {
gap: 0.5rem;
align-items: center;
}
.j13-admin-media-toolbar {
display: flex;
flex-wrap: wrap;
gap: 0.75rem 1.25rem;
align-items: flex-end;
margin-bottom: 0.75rem;
}
.j13-admin-media-batch {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-items: center;
margin: 0 0 0.75rem;
}
.j13-admin-media-grid {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
gap: 0.85rem;
}
.j13-admin-media-card {
position: relative;
border: 1px solid var(--j13-border);
border-radius: 6px;
overflow: hidden;
background: var(--j13-surface, #fff);
}
.j13-admin-media-check {
position: absolute;
top: 0.4rem;
left: 0.4rem;
z-index: 1;
background: rgba(255,255,255,0.85);
border-radius: 3px;
padding: 0.1rem 0.2rem;
}
.j13-admin-media-thumb {
display: block;
aspect-ratio: 1;
background: var(--j13-bg, #f5f5f5);
}
.j13-admin-media-thumb img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.j13-admin-media-meta {
padding: 0.45rem 0.55rem 0.6rem;
font-size: 0.85rem;
}
.j13-admin-media-name {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
font-weight: 600;
}
.j13-admin-media-ops {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
align-items: center;
margin-top: 0.35rem;
}
.j13-post__admin {
display: flex;
flex-wrap: wrap;