feature: v1

This commit is contained in:
Alexander Nicholson 4584443+DragonStuff@users.noreply.github.com
2024-11-19 00:48:26 +09:00
parent 6b1e6c945f
commit 6d8acb2752
17 changed files with 794 additions and 2 deletions

19
src/services/search.ts Normal file
View File

@@ -0,0 +1,19 @@
import { SearchOptions, StorageObject } from "../types/mod.ts";
import { StorageService } from "./storage.ts";
export class SearchService {
constructor(private storageService: StorageService) {}
async search(options: SearchOptions): Promise<StorageObject[]> {
const listResult = await this.storageService.listObjects({
prefix: options.prefix,
maxKeys: options.maxKeys,
continuationToken: options.continuationToken
});
// Filter objects based on search query
return listResult.objects.filter(obj =>
obj.key.toLowerCase().includes(options.query.toLowerCase())
);
}
}