feat: 完成了 file list 右键简单菜单
feat: 完成了 file 下载 todo: 桶右键菜单和删除桶
This commit is contained in:
@@ -3,13 +3,23 @@ import {Bucket, Connection, S3File} from "../interfaces/connection";
|
||||
import {Dial} from "../api";
|
||||
|
||||
interface StoreFile {
|
||||
file_active: string | null,
|
||||
file_set: (key: string) => Promise<void>,
|
||||
prefix: string;
|
||||
filter: string;
|
||||
files_list: S3File[];
|
||||
files_get: (conn: Connection, bucket: Bucket, prefix?: string, filter?: string) => void;
|
||||
}
|
||||
|
||||
export const useStoreFile = create<StoreFile>()((set) => ({
|
||||
file_active: null,
|
||||
file_set: async (key: string) => {
|
||||
set((state) => {
|
||||
return {file_active: key}
|
||||
})
|
||||
},
|
||||
prefix: "",
|
||||
filter: "",
|
||||
files_list: [],
|
||||
files_get: async (conn: Connection, bucket: Bucket, prefix = '', filter = '') => {
|
||||
const res = await Dial<{ list: S3File[] }>('/api/bucket/files', {
|
||||
@@ -23,7 +33,7 @@ export const useStoreFile = create<StoreFile>()((set) => ({
|
||||
}
|
||||
|
||||
set((state) => {
|
||||
return {files_list: res.data.list, prefix: prefix}
|
||||
return {files_list: res.data.list, prefix: prefix, filter: filter}
|
||||
})
|
||||
}
|
||||
}))
|
||||
|
||||
Reference in New Issue
Block a user