feat: Implement directory browsing functionality
CI / skip-ci-check (pull_request) Successful in 10s
CI / python-lint (pull_request) Has been cancelled
CI / test-backend (pull_request) Has been cancelled
CI / build (pull_request) Has been cancelled
CI / secret-scanning (pull_request) Has been cancelled
CI / dependency-scan (pull_request) Has been cancelled
CI / sast-scan (pull_request) Has been cancelled
CI / workflow-summary (pull_request) Has been cancelled
CI / lint-and-type-check (pull_request) Has been cancelled

- Add `browseDirectory` API endpoint to list directory contents.
- Create `FolderBrowser` component for user interface to navigate directories.
- Update `Scan` page to integrate folder browsing feature.
- Define `DirectoryItem` and `BrowseDirectoryResponse` schemas for API responses.
This commit is contained in:
tanyar09
2026-01-30 16:09:24 +00:00
parent 920fe97c09
commit f4bdb5d9b3
5 changed files with 460 additions and 150 deletions
+17
View File
@@ -91,3 +91,20 @@ class BulkDeletePhotosResponse(BaseModel):
description="Photo IDs that were requested but not found",
)
class DirectoryItem(BaseModel):
"""Directory item (file or folder) in a directory listing."""
name: str = Field(..., description="Name of the item")
path: str = Field(..., description="Full absolute path to the item")
is_directory: bool = Field(..., description="Whether this is a directory")
is_file: bool = Field(..., description="Whether this is a file")
class BrowseDirectoryResponse(BaseModel):
"""Response for directory browsing."""
current_path: str = Field(..., description="Current directory path")
parent_path: Optional[str] = Field(None, description="Parent directory path (None if at root)")
items: List[DirectoryItem] = Field(..., description="List of items in the directory")