- Removed `getChatLocale` function from common utilities as it was not being used.
- Deleted unused imports in the header component, including `getChatLocale` and `SyncService`.
- Changed the main container for book content name from <span> to <div> for better semantic structure.
- Updated the layout of chapter titles to use flexbox for improved alignment and spacing.
- Adjusted styles in contentList.css to support the new layout, ensuring consistent spacing and alignment of chapter title elements.
- Introduced `chapterPages` state to store the pages of each chapter.
- Updated state when new `htmlBook` is received to include chapter pages.
- Added event listener for `chapter-pages` to handle scrolling to chapters.
- Displayed chapter page numbers next to chapter labels in the content list.
- Added a new setting for displaying the total page number in the reader settings interface.
- Updated the localization file to include the new setting label in Chinese.
- Modified the component state and interface to manage the new setting.
- Included the new setting in the reader settings list for configuration.
- Added "Analyze title with AI" functionality to the edit dialog, allowing users to analyze book titles using AI.
- Implemented a new button in the edit dialog for triggering the title analysis.
- Updated English and Chinese localization files to include the new feature.
- Enhanced the edit dialog's CSS for better layout and user experience.
- Introduced a new feature that utilizes AI to recognize book titles and authors when importing books if no title is parsed from the metadata.
- Updated English, Simplified Chinese, Traditional Chinese, and Cantonese localization files to include new strings for the AI recognition feature.
- Implemented the `analyzeBookMetadata` method in the `ImportLocal` component to handle the AI analysis.
- Added a new setting option for enabling/disabling the AI recognition feature in the general settings.
- Added ISBN field to the metadata dialog for book details.
- Implemented copy-to-clipboard feature for ISBN with a toast notification on success.
- Updated styles for the ISBN display and copy button for better user experience.
- Removed the hardcoded source string and replaced it with rating_source from the item in MetadataDialog component.
- Updated the CloudBookItem interface to include additional properties: isbn, rating_source, rating, rating_count, categories, pub_date, language, and pages.
- Introduced `isReadingAidMode` utility to determine if reading aid features are active.
- Updated the Viewer component to conditionally apply styles based on reading aid mode.
- Modified plugin fetching logic to check user authentication status before displaying limited free options for self-hosted voices.
- Enhanced mouse event handling to prevent default scrolling behavior in paragraph mode, allowing for segment navigation instead.
- Improved scroll event handling to ensure proper behavior in different reading modes.
- Added "FAQ" translation to zh-CN locale.
- Updated AboutSetting component to include a new FAQ section with a link to the FAQ page based on the user's language.
- Cleaned up code formatting in the AboutSetting component for better readability.
- Removed commented-out code in the Viewer component related to total page display.
- Added `exclusiveModeNames` array to define modes that should be mutually exclusive.
- Introduced `handleExclusiveOff` method to disable other exclusive modes when one is enabled.
- Updated click handlers for `isReadingRuler`, `isSpeedReading`, and `isParagraphMode` to call `handleExclusiveOff` when enabling their respective modes.