release: v1.4.0 — 标签系统、操作日志扩展与文档截图更新
ci / ci (22, ubuntu-latest) (push) Canceled after 0s
GitHub Release / release (push) Canceled after 0s
Publish Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Canceled after 0s
Publish Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Canceled after 0s
Publish Docker image / merge (push) Canceled after 0s
ci / ci (22, ubuntu-latest) (push) Canceled after 0s
GitHub Release / release (push) Canceled after 0s
Publish Docker image / build (linux/amd64, ubuntu-latest, amd64) (push) Canceled after 0s
Publish Docker image / build (linux/arm64, ubuntu-24.04-arm, arm64) (push) Canceled after 0s
Publish Docker image / merge (push) Canceled after 0s
- 每用户标签与彩色打标,图库 OR/AND 筛选与批量打标 - 操作日志记录登录、删除、设置与标签操作 - API 标签/打标接口;README 与文档站截图同步
This commit is contained in:
1 parent
f17d79b236
commit
737235acff
110 files changed
+5881
-778
No files matched your search
+14
-6
@@ -19,6 +19,7 @@ import {
|
||||
searchImages as searchImagesFromIndex
|
||||
} from './image-index'
|
||||
import { DEFAULT_FOLDER, toCanonicalImageKey, validateImageKey } from './image-key'
|
||||
import type { TagFilterInput } from './tags'
|
||||
import {
|
||||
getActiveBackend,
|
||||
getBackendForKey
|
||||
@@ -171,15 +172,17 @@ export async function listImageKeys(): Promise<string[]> {
|
||||
|
||||
export async function countImages(
|
||||
userFilter?: number | 'admin',
|
||||
backendId?: string
|
||||
backendId?: string,
|
||||
tagFilter?: TagFilterInput
|
||||
): Promise<number> {
|
||||
return countImagesFromIndex(userFilter, backendId)
|
||||
return countImagesFromIndex(userFilter, backendId, tagFilter)
|
||||
}
|
||||
|
||||
export async function getFolderStorageStats(
|
||||
userFilter?: number | 'admin'
|
||||
userFilter?: number | 'admin',
|
||||
tagFilter?: TagFilterInput
|
||||
): Promise<FolderStorageStat[]> {
|
||||
return getFolderStorageStatsFromIndex(userFilter)
|
||||
return getFolderStorageStatsFromIndex(userFilter, tagFilter)
|
||||
}
|
||||
|
||||
export async function listFoldersForUser(
|
||||
@@ -188,7 +191,10 @@ export async function listFoldersForUser(
|
||||
return listFoldersForUserFromIndex(userFilter)
|
||||
}
|
||||
|
||||
export async function getUserScopedStorageStats(userId: number): Promise<{
|
||||
export async function getUserScopedStorageStats(
|
||||
userId: number,
|
||||
tagFilter?: TagFilterInput
|
||||
): Promise<{
|
||||
storedCount: number
|
||||
uploadBytesTotal: number
|
||||
uploadToday: number
|
||||
@@ -197,7 +203,7 @@ export async function getUserScopedStorageStats(userId: number): Promise<{
|
||||
uploadLastMonth: number
|
||||
byFolder: FolderStorageStat[]
|
||||
}> {
|
||||
return getUserScopedStorageStatsFromIndex(userId)
|
||||
return getUserScopedStorageStatsFromIndex(userId, tagFilter)
|
||||
}
|
||||
|
||||
export async function listImages(options: {
|
||||
@@ -207,6 +213,7 @@ export async function listImages(options: {
|
||||
backendId?: string
|
||||
contentType?: string
|
||||
uploadSource?: 'web' | 'api'
|
||||
tagFilter?: TagFilterInput
|
||||
}): Promise<PaginatedResult<StoredImage>> {
|
||||
return listImagesFromIndex(options)
|
||||
}
|
||||
@@ -219,6 +226,7 @@ export async function searchImages(options: {
|
||||
backendId?: string
|
||||
contentType?: string
|
||||
uploadSource?: 'web' | 'api'
|
||||
tagFilter?: TagFilterInput
|
||||
}): Promise<PaginatedResult<StoredImage>> {
|
||||
return searchImagesFromIndex(options)
|
||||
}
|
||||
Reference in new issue
Block a user