mirror of
https://github.com/immich-app/immich
synced 2025-11-07 17:27:20 +00:00
feat: upload manager (#19565)
This commit is contained in:
parent
6c6a32c63e
commit
30b4f334d8
2 changed files with 27 additions and 13 deletions
24
web/src/lib/managers/upload-manager.svelte.ts
Normal file
24
web/src/lib/managers/upload-manager.svelte.ts
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
import { eventManager } from '$lib/managers/event-manager.svelte';
|
||||
import { getSupportedMediaTypes, type ServerMediaTypesResponseDto } from '@immich/sdk';
|
||||
|
||||
class UploadManager {
|
||||
mediaTypes = $state<ServerMediaTypesResponseDto>({ image: [], sidecar: [], video: [] });
|
||||
|
||||
constructor() {
|
||||
eventManager.on('app.init', () => void this.#loadExtensions());
|
||||
}
|
||||
|
||||
async #loadExtensions() {
|
||||
try {
|
||||
this.mediaTypes = await getSupportedMediaTypes();
|
||||
} catch {
|
||||
console.error('Failed to load supported media types');
|
||||
}
|
||||
}
|
||||
|
||||
getExtensions() {
|
||||
return [...this.mediaTypes.image, ...this.mediaTypes.video];
|
||||
}
|
||||
}
|
||||
|
||||
export const uploadManager = new UploadManager();
|
||||
Loading…
Add table
Add a link
Reference in a new issue