wip: file list
This commit is contained in:
@@ -5,10 +5,8 @@ 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;
|
||||
files_get: (conn: Connection, bucket: Bucket, prefix?: string, filter?: string) => Promise<void>;
|
||||
}
|
||||
|
||||
export const useStoreFile = create<StoreFile>()((set) => ({
|
||||
@@ -18,8 +16,6 @@ export const useStoreFile = create<StoreFile>()((set) => ({
|
||||
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', {
|
||||
@@ -33,7 +29,25 @@ export const useStoreFile = create<StoreFile>()((set) => ({
|
||||
}
|
||||
|
||||
set((state) => {
|
||||
return {files_list: res.data.list, prefix: prefix, filter: filter}
|
||||
return {files_list: res.data.list}
|
||||
})
|
||||
}
|
||||
},
|
||||
}))
|
||||
|
||||
interface StoreFileFilter {
|
||||
prefix: string;
|
||||
filter: string;
|
||||
prefix_set: (prefix: string) => Promise<void>;
|
||||
filter_set: (filter: string) => Promise<void>;
|
||||
}
|
||||
|
||||
export const useStoreFileFilter = create<StoreFileFilter>()((set) => ({
|
||||
prefix: '',
|
||||
filter: '',
|
||||
prefix_set: async (keyword: string) => {
|
||||
set(state => {return {prefix: keyword}})
|
||||
},
|
||||
filter_set: async (keyword: string) => {
|
||||
set(state => {return {filter: keyword}})
|
||||
},
|
||||
}))
|
||||
Reference in New Issue
Block a user