summaryrefslogtreecommitdiff
path: root/frontend/components/drive
Commit message (Collapse)AuthorAgeFilesLines
* feat: add authentication checks for upload and create folder buttonsdiogo4642025-08-242-3/+34
| | | | | | | | | | - Check user authentication before opening file picker or create folder dialog - Display error toast message when user is not authenticated - Maintain existing functionality for authenticated users 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* frontend: improvementsdiogo4642025-08-143-66/+38
|
* feat: implement file/directory move functionalitydiogo4642025-08-141-12/+80
| | | | | | | | | | | | | | | Replace fake move implementation with actual functionality using the existing rename API. The move feature now properly moves selected files/directories to chosen destinations. - Use existing /api/rename endpoint to move files by renaming paths - Handle multiple file selection with sequential move operations - Add comprehensive error handling for partial failures - Show detailed success/failure toast notifications - Refresh page after successful moves to display changes 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* feat: optimize mobile navigation and storage displaydiogo4642025-08-141-25/+25
| | | | | | | | | | | | - Stack breadcrumbs above action buttons on mobile screens - Move storage usage component above navigation for better hierarchy - Make Create Folder and Upload buttons full-width on mobile with proper spacing - Maintain desktop horizontal layout for larger screens - Improve information architecture and mobile usability 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* feat: improve mobile responsiveness of drive headerdiogo4642025-08-141-3/+4
| | | | | | | | | | - Stack FCT Drive title and auth buttons vertically on mobile - Add clickable link to /drive on FCT Drive title with hover effect - Maintain horizontal layout on desktop screens 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* feat: move History button next to user email in headerdiogo4642025-08-141-12/+2
| | | | | | | | | | | - Relocate History button from DriveHeader to AuthButtons component - Position History button between user email and logout button - Only show History button when user is logged in - Improves UI organization and user experience 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* feat: add paginated history page with activity logdiogo4642025-08-141-2/+12
| | | | | | | | | | | | | - Create /history page showing drive activity with server-side rendering - Display timestamp, action, user, path, and file size in table format - Add pagination (50 entries per page) using URL query parameters - Sort entries by timestamp descending (most recent first) - Add History button to drive header for easy navigation - Use existing UI components and styling patterns 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* fix: simplify storage UI to show only disk usagediogo4642025-08-141-25/+13
| | | | | | | | | | Remove confusing drive usage display due to deduplication causing drive size to be larger than actual disk usage, which resulted in NaN calculations. Now shows clean disk usage with proper formatting. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* refactor: move auth components to server-side renderingdiogo4642025-08-133-42/+34
| | | | | | | | | | | | | | - Create server-side AuthButtons component that renders login/logout based on auth state - Add DriveHeader component for title and auth buttons (server-side) - Restructure DriveDirectoryClient to focus on breadcrumbs/actions/files only - Remove client-side auth state management from DriveDirectoryClient - Add /api/logout route handler for server-side logout flow - Update DriveDirectoryView to compose header and directory components - Preserve existing TinyAuth integration and dev mode bypass 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* refactor: split auth module into separate files and fix importsdiogo4642025-08-131-1/+1
| | | | | | | | | | | | - Created auth_types.ts for type definitions - Created auth_shared.ts for utility functions and endpoints - Updated auth.ts to focus on session management - Fixed all auth import statements throughout codebase - Updated login redirect to use Auth_tinyauth_public_endpoint properly 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* frontend: fixed login button redirect uridiogo4642025-08-131-2/+3
|
* Update components to use shared StorageData typediogo4642025-08-133-19/+3
| | | | | | | | | | | - Import StorageData type from lib/storage in all components - Remove duplicate interface definitions - Ensure type consistency across components - Clean up redundant type declarations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Update page title from "Drive" to "FCT Drive"diogo4642025-08-131-1/+1
| | | | | | 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Implement real-time storage usage UI with two-color progress bardiogo4642025-08-133-20/+99
| | | | | | | | | | | | | - Add /api/storage endpoint that fetches live data from fctdrive drive-size and df commands - Implement 10-second caching to avoid excessive system calls - Create StorageUsage component with two-color bar showing active drive usage vs total disk usage - Update drive pages to fetch and pass storage data server-side - Replace hardcoded storage values with real system data - Display active drive usage (blue), other disk usage (gray), and available space 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Implement path-based downloads with blob redirect systemdiogo4642025-08-131-4/+14
| | | | | | | | | | | | | - Add fctdrive stat command to get blob IDs from paths - Add Drive_stat function to drive_server.ts for backend integration - Create /download/[...path] endpoint that redirects to /blob/{blobId} - Update UI file links to use /download/ paths instead of direct blob links - Update permalinks to use immutable /blob/{blobId} URLs - Fix host preservation in redirects for remote access 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Implement rename functionality using fctdrive CLIdiogo4642025-08-131-10/+41
| | | | | | | | | | | | - Add Drive_rename function to drive_server.ts for backend integration - Create /api/rename endpoint with proper authentication and error handling - Update handleRename function to call API instead of placeholder TODO - Test rename functionality for both files and directories - Update CLAUDE.md to note fctdrive is available in PATH 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Add filename truncation to prevent table overflowdiogo4642025-08-131-21/+27
| | | | | | | | | | | - Truncate long file/directory names with ellipsis at 60% viewport width - Add tooltips showing full names on hover - Prevent icons from shrinking with flex-shrink-0 - Maintain responsive design across all screen sizes 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Add Create Folder functionality with dialog interfacediogo4642025-08-131-0/+83
| | | | | | | | | | | | - New /api/mkdir endpoint for authenticated folder creation - Create Folder button positioned left of Upload Files button - Modal dialog with input validation and keyboard shortcuts - Proper error handling and success notifications - Uses existing CLI Drive_mkdir function for backend operations 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Implement authenticated file/directory deletiondiogo4642025-08-121-10/+31
| | | | | | | | | | | - Add /api/delete endpoint with authentication checks - Update DriveDirectoryClient to use actual delete API - Replace placeholder TODO with working delete functionality - Include proper error handling and user feedback 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Replace complex /api/fs with simple /api/upload endpointdiogo4642025-08-121-10/+3
| | | | | | | | | | | | | | | | | | | - Create new /api/upload endpoint for file uploads with path query parameter - Simplify DriveDirectoryClient upload logic to use POST instead of PUT - Remove complex path encoding and AUTH header handling from client - Remove unused /api/fs endpoint entirely - no longer needed - Maintain all existing upload functionality (file size limits, auth, etc.) - Test uploads to root directory and subdirectories - both working perfectly Benefits: - Cleaner API surface with single-purpose endpoints - Simpler client code with less complexity - Better separation of concerns - Maintained backward compatibility for user experience 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
* Clean up old UI code and rename V2 to Drivediogo4642025-08-123-0/+815
- Remove old UI components: file-drive.tsx, history-view.tsx - Remove unused API endpoints: /api/tree, /api/log, /api/fs/route.ts - Rename /v2 routes to /drive routes for cleaner URLs - Rename V2* components to Drive* components (V2DirectoryView -> DriveDirectoryView, etc.) - Update all breadcrumb and navigation references from /v2 to /drive - Redirect root path to /drive instead of old UI - Keep /api/fs/[...path] and /api/directories for uploads and move functionality - Preserve Drive_* server functions for potential future use 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>