This commit introduces a platform-specific service architecture and configuration
system, with the following changes:
- Created platform-specific service implementations for database backup:
- Web: Uses URL.createObjectURL and download link
- Mobile: Uses Capacitor Filesystem and Share APIs
- Base: Abstract DatabaseBackupService class
- Implemented PlatformServiceFactory for dynamic service loading:
- Singleton pattern for factory management
- Dynamic imports based on platform environment
- Error handling for service loading failures
- Refactored Vite configuration:
- Split into base and platform-specific configs
- Added environment-based platform detection
- Improved build optimization settings
- Enhanced error handling:
- Added type-safe error interfaces
- Improved error message formatting
- Better error logging with context
- Updated AccountViewView:
- Moved profile management to ProfileSection component
- Improved type safety in error handling
- Enhanced database backup functionality
Note: This is a work in progress. Some features may need additional testing
and refinement before being production-ready.
- Remove duplicate class attributes in ProjectsView and ClaimView
- Fix attribute ordering for better readability
- Replace this references with direct variable names in templates
- Update icon-size prop to use kebab-case
- Remove unnecessary comments and improve formatting
- Fix import organization in ProjectsView
This commit resolves Vue template errors and improves code consistency.
- Add explicit Router type imports across views
- Replace $router type casting with proper typing
- Use $router.back() instead of $router.go(-1) for consistency
- Add proper route and router typings to components
- Clean up router navigation methods
- Fix router push/back method calls
This commit improves type safety and consistency in router usage across
the application's view components.
Reorganizes TypeScript interfaces into a modular structure:
- Create dedicated interfaces directory with specialized files
- Split interfaces by domain (claims, common, limits, records, user)
- Update imports in endorserServer.ts to use new interface locations
- Replace 'any' types with 'unknown' for better type safety
- Add proper type imports and exports
This improves code organization and maintainability by:
- Centralizing interface definitions
- Reducing file size of endorserServer.ts
- Making interface relationships more explicit
- Improving type safety with stricter types