- Updated `checkReachPageEnd` function to include `currentBook` parameter for better handling of multi-role voice books.
- Added logging for debugging purposes to track page end checks.
- Modified conditions in `SyncSetting` component to restrict WebDAV access based on authentication status and Electron environment.
- Improved error handling by checking for response code and data presence.
- Consolidated state updates for loading and error messages.
- Added console log for debugging metadata search results.
- Updated translations in zh-CN.json for clarity and consistency in sync feature descriptions.
- Added console log for debugging in TextToSpeech component to track visible text list.
- Enhanced string comparison in findLastMatchIndex function to ignore leading/trailing whitespace.
- Removed the syncWordToEudic and syncWordToAnki methods from PopupDict class.
- Introduced WordSyncManager to handle synchronization with Eudic and Anki.
- Updated the saveWord method to utilize the new WordSyncManager for syncing words.
- Removed unnecessary console logs from ImportLocal, TextToSpeech, Header, and Viewer components to clean up the code and enhance performance.
- Streamlined the components for better readability and maintainability by eliminating debug statements that are no longer needed.
- Added new styles for pin keypad elements in dark.css and default.css, enhancing visual consistency.
- Refactored component rendering in ProtectionOverlay and MoreSetting to streamline pin key display logic.
- Removed unnecessary background color definitions in protection.css for cleaner styling.
- Updated theme utility to include new selectors for biometric and pin key elements, improving theme management.
- Simplified the filtering logic for supported formats in the ImportLocal component by removing unnecessary file types from the check.
- Improved code readability by consolidating the filter conditions into a single line.
- Ensured that only relevant formats are considered for import, enhancing user experience.
- Updated the cloud synchronization logic in ImportLocal and Manager components to check for the 'isDisableAutoSync' setting before executing the sync function.
- Improved code readability by consolidating the conditional statements for synchronization.
- Ensured consistent behavior across components when handling book imports and synchronization.
- Updated the cloud synchronization calls in ImportLocal and Manager components to conditionally execute based on the default sync option setting.
- Improved code readability by consolidating the cloud sync function calls into a single conditional statement.
- Ensured consistent handling of synchronization after importing books across both components.
- Updated color codes in emptyCover component for better visual consistency.
- Added HTML entity decoding in ImportLocal component to handle special characters in titles.
- Adjusted width of popupNote component for responsive design.
- Enhanced page number handling in PageWidget and ProgressPanel components to prevent errors when page info is unavailable.
- Removed deprecated warning message in accountSetting component for cleaner UI.
- Slightly adjusted sidebar width for better layout.
- Introduced the @mozilla/readability library to improve HTML content extraction from URLs.
- Enhanced the importHtmlFromURL method to fetch, parse, and sanitize HTML content, ensuring relative URLs are converted to absolute.
- Added utility functions for escaping HTML and making URLs absolute within the imported content.
- Updated type definitions to include Readability class for TypeScript support.
- Introduced a `throttle` utility function to optimize resize event handling in the Background, ImportLocal, Header, BookList, Viewer, and main application logic.
- Replaced existing resize event listeners with throttled versions to improve performance and reduce unnecessary re-renders.
- Ensured proper cleanup of event listeners in component lifecycle methods to prevent memory leaks.
- Removed unnecessary console.log statements from BookCardItem, MetadataDialog, SelectBook, TextToSpeech, common utility functions, CoverUtil, and DatabaseService components.
- Improved code readability and maintainability by eliminating debug logs that are no longer needed.
- Integrated `cloudSyncFunc` into the ImportLocal component to trigger synchronization after importing books.
- Updated the Manager component to call `cloudSyncFunc` after importing a book.
- Added `cloudSyncFunc` to the props in both ImportLocal and Manager interfaces and their respective state mappings.
- Updated BookCardItem, BookCoverItem, and BookListItem components to conditionally display the original file name without extension based on user settings.
- Introduced getFileNameWithoutExtension utility function to handle file name extraction.
- Removed redundant code in ImportLocal component related to name assignment.
- Adjusted DictSetting component to utilize the new utility for dictionary file name handling.
- Implemented a new option to import books from a URL in the ImportLocal component.
- Added user prompts for entering a book download URL and validation for http/https links.
- Included loading feedback during the download process and error handling for failed imports.
- Updated English and Chinese translations for new URL import features.
- Introduced Tufte CSS for enhanced typography and layout.
- Added Typebase CSS for foundational typography styles.
- Included Typo CSS for comprehensive typographic control and responsive design.
- Moved logic for determining if the end of the page is reached into a new utility function `checkReachPageEnd`.
- Added `findLastMatchIndex` helper function to assist with matching visible text against node text.
- Updated the text-to-speech component to utilize the new utility functions for improved readability and maintainability.
- Added console logs for debugging purposes to track visible text lists and last match indices.
- Removed unused imports and code related to Apple and Open Library book items.
- Simplified the metadata fetching logic to use a single API call.
- Updated state management for loading and error handling.
- Cleaned up the metadata application logic to focus on cloud book items.
- Removed the "Get more results" button and related functionality.
- Commented out the "Get metadata" button in the EditDialog component for future use.
- Reduced z-index in protection CSS from 99999 to 10 for better layering.
- Added logic to handle bookmark deletion in the DeleteIcon component, checking if the current bookmark matches the recorded location before deletion.
- Updated the mapStateToProps in the DeleteIcon index file to include currentBook from the Redux store.
- Modified DeleteIconProps interface to include currentBook of type BookModel.
- Adjusted padding in the Sidebar component for better UI alignment.
- Updated sidebar CSS to refine height calculation for improved layout.