- Update test to properly wait for and locate Claim Server input field
- Change default server URL from test to production endpoint
- Add initialization of empty server settings with production values
- Improve test reliability with proper element waiting and selection
- Fix test timing issues with networkidle state waiting
- Fix onboarding dialog reappearing after network idle state
- Add retry logic for dismissing onboarding dialog
- Increase feed chunk size from 5 to 10 for better performance
- Add proper error handling for hidden DIDs in feed
- Improve logging and error reporting throughout feed loading
- Fix type safety issues in feed processing
- Add proper null checks and fallbacks for missing identifiers
- Improve error handling in navigation and image loading
- Fix linter errors in AccountViewView component
- Remove v-html usage in EntityIcon component
- Replace unsafe HTML injection with proper Vue component structure
- Add proper type definitions for claims and credentials
- Fix error handling with TimeSafariError type
- Clean up imports and remove unused variables
- Standardize string quotes and formatting
- Add proper type annotations for function parameters
- Improve error handling in feed processing
- Add proper null checks and type guards
- Fix linting warnings in logger utility
- Standardize code style across components
- Add proper JSDoc comments for type safety
- Improve error message handling and display
This commit focuses on improving code quality by removing unsafe practices,
adding proper type safety, and standardizing code style across the codebase.
- Refactor EntityIcon to use proper Vue template syntax instead of v-html
- Add safe event handling with error logging
- Cache identicon SVG generation for better performance
- Add cursor-pointer class for better UX
- Fix circular reference issues in event handling
- Add proper TypeScript typing for event parameters
- Add ESLint disable comment for v-html usage
- Improve error handling and logging
This commit addresses UI performance and stability issues in the EntityIcon
component, particularly around event handling and SVG generation. The changes
should resolve the circular reference errors and improve the overall user
experience when interacting with profile icons.
WIP: Further testing needed for event propagation and image loading edge cases.
- Add Capacitor-specific DatabaseBackupService implementation
- Update PlatformServiceFactory to correctly load platform services
- Fix Filesystem API usage in Capacitor backup service
- Add detailed logging throughout backup process
- Improve error handling and cleanup of temporary files
- Update web platform backup implementation
- Add proper TypeScript types and documentation
This commit implements a robust platform-specific backup service that:
- Uses Capacitor's Filesystem and Share APIs for mobile platforms
- Properly handles file paths and URIs
- Includes comprehensive logging for debugging
- Cleans up temporary files after sharing
- Maintains consistent interface across platforms
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 comprehensive JSDoc documentation to methods in HomeView.vue using standardized patterns:
- Add @callGraph sections to document method relationships and dependencies
- Add @chain sections to show complete call chains
- Add @requires sections to list state and parameter dependencies
- Add @modifies sections to document state changes
- Enhance parameter and return type documentation
- Standardize documentation format across all methods
Key methods enhanced:
- processRecord()
- extractClaim()
- extractGiverDid()
- getFulfillsPlan()
- shouldIncludeRecord()
- createFeedRecord()
This improves code maintainability by:
- Making method relationships explicit
- Documenting state dependencies
- Clarifying call chains
- Standardizing documentation format
- Add comprehensive JSDoc comments to HomeView and InfiniteScroll components
- Document method visibility (@public/@internal) and usage contexts
- Add clear references to where methods are called from (template, components, lifecycle)
- Include file-level documentation with component descriptions
- Document component dependencies and template usage
- Add parameter and return type documentation
- Clarify method call chains and dependencies
- Document event emissions and component interactions
This commit improves code maintainability by making method usage and
component relationships more explicit in the documentation.
- Update selector to target specific gift text link instead of generic anchor
- Add filter to ensure unique element selection
- Fix test reliability by being explicit about element selection
- Add debouncing and loading state to InfiniteScroll component to prevent duplicate entries
- Refactor updateAllFeed into smaller, focused functions for better maintainability
- Add proper error handling and type assertions
- Optimize test performance with networkidle waits and better selectors
- Fix strict mode violations in Playwright tests
- Clean up test configuration by commenting out unused browser targets
- Change package name from app.timesafari.app to app.timesafari
- Fix ADB connection issues with server restart and retries
- Add interactive test flow with user prompts between tests
- Generate test data locally instead of external script
- Add proper cleanup of readline interface
- Fix URL scheme registration in Android manifest
Technical changes:
1. Remove duplicate SDK suppression entries
2. Update Gradle and build configurations
3. Add retry logic for flaky ADB connections
4. Add proper error handling for test data generation
5. Update all package references consistently
The changes improve Android testing by:
1. Making package naming consistent
2. Adding reliability to ADB connections
3. Adding user control over test flow
4. Providing better test progress visibility
5. Improving error handling and logging
- Fix TypeScript property error by using validRoutes constant
- Replace console.log with logger utility
- Fix string quote consistency
- Improve v-for loop variable naming
- Add proper type safety for route parameters
Technical Changes:
- Use VALID_DEEP_LINK_ROUTES constant for route list
- Add logger import and replace console.log calls
- Standardize string quotes to double quotes
- Rename v-for variable to avoid shadowing
- Add proper type assertions for route params
This improves code quality and type safety in the
DeepLinkErrorView component while maintaining consistent
coding standards.
- Improve test data generation and validation
- Add detailed logging of generated test data
- Implement robust validation of required fields
- Use ts-node script for test data generation
- Add fallback data generation with validation
- Enhance deeplink testing UX
- Add interactive prompts between tests
- Display detailed test progress and next steps
- Improve error handling and test skip logic
- Add comprehensive logging throughout test execution
- Improve DeepLinkErrorView
- Add detailed error information display
- Show debug information for parameters and queries
- Enhance UI with better styling and layout
- Add safe area spacing for iOS
- Refactor deeplink handling
- Standardize route definitions
- Improve parameter validation
- Add better error logging
* Add complete iOS platform cleanup and reset on each test run
* Implement interactive deeplink testing with keyboard controls between tests
* Add context awareness to verify app is running and in foreground
* Improve error handling and diagnostic messaging throughout
* Auto-register URL schemes and verify app state for reliable testing
Include prerequisites check for Xcode, CocoaPods and simulator availability
* Include prerequisites check for Xcode, CocoaPods and simulator availability
- Improve iOS test script with automatic simulator selection and booting
- Add URL scheme registration for handling deeplink tests
- Enhance error handling for iOS security prompts during testing
- Improve test data generation with fallback mechanisms
- Fix Xcode build command to use standard 'build' instead of 'build-for-testing'
- Add @ethersproject/wallet dependency and update package dependencies
- Add test-ios.js script for iOS build and test automation
- Add simulator detection and validation
- Add CocoaPods dependency handling
- Add iOS deeplink testing with xcrun simctl
- Add detailed build logging for iOS tests
The changes improve iOS testing by:
1. Automating iOS build and test process
2. Adding structured logging to build_logs directory
3. Supporting deeplink testing in iOS simulator
4. Validating iOS development environment
5. Matching Android test capabilities
Technical details:
- Uses xcodebuild for building and testing
- Handles simulator device detection
- Supports all deeplink test cases
- Provides detailed error reporting
- Maintains test logs for debugging
- Add build_logs directory for tracking Android build output
- Add Android generated assets to gitignore
- Improve test logging with timestamps and build context
- Add detailed error reporting for build and test failures
- Add proper cleanup of Android build artifacts
The changes improve Android testing by:
1. Tracking build history in build_logs directory
2. Providing detailed build context for debugging
3. Cleaning up generated assets properly
4. Improving error reporting and traceability
5. Adding structured logging for test execution
Added:
- build_logs/ directory for build history
- Android assets cleanup in .gitignore
- Detailed build and test logging