Implements comprehensive Drop media server integration following the
media-server integration checklist:
## Core Implementation
- Create DropClient with RestApiMixin base class
- Implement full user management API (CRUD operations)
- Support Drop's two-step user creation (invitation → signup)
- Bearer token authentication with System tokens
- Proper error handling for missing Simple Authentication
## Integration Points
- Register client via @register_media_client decorator
- Add connection checker with API validation
- Wire into media_servers routes and forms
- Update UI templates (create/edit server modals)
## API Features
- User listing and synchronization from Drop API
- Statistics and server health monitoring
- Invitation-based user creation workflow
- Proper policy mapping (enabled, admin, displayName)
## Error Handling
- Clear messaging when Simple Authentication disabled
- Token permission validation and logging
- Graceful fallback for missing API endpoints
Drop integration ready for use once Simple Authentication
is enabled on the Drop server.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added `ty` version 0.0.1a14 to dependencies in `pyproject.toml`.
- Updated `.pre-commit-config.yaml` to include a pre-push hook for type checking using `ty`.
- Made minor adjustments in various files to ensure compatibility with type checking.