Feat: FileManager (#98) (#703)

* feat: add file manager module

- Complete file manager implementation with UI/UX
- Add drive management functionality
- Add file upload/download with progress tracking
- Add stamp integration and handling
- Add bulk operations and context menus

Co-authored-by: Roland Seres <roland.seres90@gmail.com>
Co-authored-by: nidishk <nidishkrishnan45@gmail.com>
This commit is contained in:
Bálint Ujvári
2025-11-12 11:26:00 +01:00
committed by GitHub
parent 1249c0df71
commit 5bfe2a0331
107 changed files with 21529 additions and 5578 deletions
@@ -0,0 +1,30 @@
export class AbortManager {
private controllers = new Map<string, AbortController>()
create(key: string): AbortController | undefined {
if (!this.controllers.has(key)) {
this.controllers.set(key, new AbortController())
}
return this.controllers.get(key)
}
getSignal(key: string): AbortSignal | undefined {
return this.controllers.get(key)?.signal
}
abort(key: string): void {
const controller = this.controllers.get(key)
controller?.abort()
this.controllers.delete(key)
}
has(key: string): boolean {
return this.controllers.has(key)
}
clear(): void {
this.controllers.forEach(controller => controller.abort())
this.controllers.clear()
}
}