Add ZIP folder creation option and improve camera zoom/pan (#121, #132)

File Manager improvements (#121):
- New option to create folder from ZIP filename (e.g., MyProject.zip → MyProject/)
- Upload modal now accepts all file types, not just ZIP files
- Updated drop zone text to clarify all files are supported
- Both options can be combined: create folder + preserve internal structure

Camera zoom/pan improvements (#132):
- Pan range now based on actual container size instead of fixed pixels
- Users can pan across the entire zoomed image at any zoom level
- Added pinch-to-zoom gesture for mobile (two fingers)
- Added single finger pan when zoomed in on touch devices
- Pan while pinching to reposition zoom focus
- Both EmbeddedCameraViewer and standalone CameraPage updated
This commit is contained in:
maziggy
2026-01-24 08:13:20 +01:00
parent 721eab1f67
commit 8ba04dfa89
10 changed files with 367 additions and 75 deletions
+3 -1
View File
@@ -2725,13 +2725,15 @@ export const api = {
extractZipFile: async (
file: File,
folderId?: number | null,
preserveStructure: boolean = true
preserveStructure: boolean = true,
createFolderFromZip: boolean = false
): Promise<ZipExtractResponse> => {
const formData = new FormData();
formData.append('file', file);
const params = new URLSearchParams();
if (folderId) params.set('folder_id', String(folderId));
params.set('preserve_structure', String(preserveStructure));
params.set('create_folder_from_zip', String(createFolderFromZip));
const response = await fetch(`${API_BASE}/library/files/extract-zip?${params}`, {
method: 'POST',
body: formData,