- Replaced snd-lib with Web Audio API for sound effects, enhancing performance and reducing external dependencies.
- Updated sound management functions to create and control audio contexts directly, improving sound playback reliability.
- Removed unused sound effect configurations and streamlined sound effect functions for better maintainability.
- Adjusted related components to ensure compatibility with the new sound management approach.
- Introduced latency measurement for API options, displaying latency information conditionally.
- Updated API options to include new entries and modified labels for clarity.
- Enhanced the logic for fetching and displaying API latency, improving user feedback on network performance.
- Changed v-show to v-if for better conditional rendering of the VNDB panel.
- Added a function to validate URLs, ensuring only safe http/https links are rendered as clickable.
- Updated link rendering logic to display plain text for unsafe URLs, enhancing security against XSS attacks.
- Deleted eslint.config.mjs and tailwind.config.ts as they are no longer needed.
- Updated tsconfig.json to include additional TypeScript files for better project structure.
- Refactored various components to enhance modal management and improve code clarity.
- Changed console.log statements to console.info for consistent logging practices across the application.
- Updated SearchHeader.vue to enhance search history management by utilizing historyStore for better data handling.
- Refactored StatsCorner.vue to improve readability and streamline the display of visitor statistics, enhancing user insights.
- Updated ImageViewer.vue to enhance event handling for image navigation.
- Refactored SearchHeader.vue to streamline search history management by removing direct persistence calls and utilizing historyStore for unified management.
- Simplified image preview logic by removing unused features such as zooming and transformations, focusing on a straightforward full-screen preview experience.
- Enhanced event handling for image navigation and touch interactions, improving user experience on mobile devices.
- Updated styles for better visual consistency and responsiveness across different screen sizes.
- Removed unnecessary imports and streamlined the code for better maintainability.
- Simplified the status indicator section by removing unnecessary elements and enhancing the display of response time.
- Updated visitor statistics display to use more descriptive titles and improved data binding for clarity.
- Removed unused gamepad icon and related logic, streamlining the component's structure.
- Updated KeyboardHelpPanel.vue to include an additional icon for better navigation clarity.
- Modified SearchHeader.vue to utilize window.performance for more accurate search timing metrics.
- Enhanced StatsCorner.vue by refining status text and icon logic for improved readability and maintainability.
- Cleaned up conditional returns in plugins.ts and stats.ts for better code consistency and clarity.
- Integrated new Pinia plugins for state persistence, snapshots, and tab synchronization in main.ts, improving state management capabilities.
- Updated SearchHeader.vue to utilize caching for VNDB data, enhancing performance and user experience by reducing unnecessary API calls.
- Refactored SearchHistoryModal.vue to leverage the history store for managing search history, improving data handling and user interaction.
- Enhanced StatsCorner.vue to display visitor statistics and search counts, providing users with better insights into application usage.
- Improved settings management in settings.ts by adding undo/redo functionality for setting changes, enhancing user control over preferences.
- Updated CommentsModal.vue to include additional icons and improved title display for better user engagement.
- Enhanced KeyboardHelpPanel.vue by adding icons next to navigation and operation shortcuts for improved clarity.
- Refactored ResultItem.vue to include a copy link feature with visual feedback, enhancing user interaction.
- Improved SearchHistoryModal.vue by adding icons and additional text for better user guidance on search history.
- Updated StatsCorner.vue to replace the gamepad icon and add status indicators for online/offline status.
- Refactored icons management in icons.ts for better organization and maintainability.
- Added `referrerpolicy="no-referrer"` to image elements to improve privacy during image loading.
- Removed unused `screenshotsReady` state and related logic, simplifying the component's state management.
- Updated class names for consistency and improved styling of screenshot buttons.
- Cleaned up comments for better clarity regarding screenshot loading behavior.
- Implemented a toast notification to inform users of available service worker updates, enhancing user awareness of new versions.
- Added a countdown timer for automatic updates, allowing users to manually trigger the update if desired.
- Refactored service worker update handling in main.ts to integrate the new notification system, improving user experience during updates.
- Added a new function to retrieve the Video Parse API URL from settings, improving flexibility in API configuration.
- Updated SettingsModal.vue to include an input field for the Video Parse API URL, allowing users to customize their settings.
- Refactored the handling of video parsing API URL in the fetchGameVideoUrl function to utilize the new settings-based approach.
- Enhanced the settings store to include videoParseApiUrl, ensuring consistent access across components.
- Introduced a new API for fetching game PV video URLs, improving multimedia support.
- Added a video player component in VndbPanel.vue to display PV videos, enhancing user engagement.
- Refactored translation logic to allow for a single API request to translate descriptions, tags, and quotes simultaneously, improving efficiency.
- Updated loading states and error handling for translations and video fetching, ensuring a smoother user experience.
- Changed the placeholder URL in `SettingsModal.vue` for the VNDB image proxy input field.
- Updated the default VNDB image proxy URL in `settings.ts` to maintain consistency.
- Simplified fetch event logic in sw.js to only process same-origin GET requests, improving clarity and performance.
- Consolidated caching strategies for documents and static resources, ensuring a more efficient response handling.
- Removed the unused cacheFirstCrossOrigin function to streamline the service worker code.
- Simplified service worker code in sw.js by consolidating caching patterns and improving resource handling.
- Enhanced fetch event logic to streamline caching strategies for static resources and cross-origin requests.
- Updated service worker registration and update handling in main.ts for better version management and user experience.
- Improved offline page design and functionality for clearer user communication during network issues.
- Adjusted font family order in SettingsModal.vue for consistency in code editor styling.
- Removed the UpdateToast component and related service worker update logic from App.vue, streamlining the user interface.
- Implemented automatic application of service worker updates without user prompts in main.ts, enhancing user experience.
- Simplified friend logo error handling in SearchHeader.vue by removing the Google Favicon fallback logic, improving code clarity.
- Added a comment in fetchVndbQuotes to clarify the increase in quote results based on user feedback.
- Implemented a function to extract domain names from URLs for better handling of friend logos in SearchHeader.vue.
- Updated logo error handling to utilize Google Favicon service as a fallback, improving user experience when logos fail to load.
- Adjusted the number of quotes displayed in VndbPanel.vue from 5 to 10, enhancing content visibility for users.
- Improved comments in VndbPanel.vue to clarify data loading behavior during component lifecycle events.
- Integrated custom JavaScript and HTML functionality into the application, allowing users to apply their scripts and markup dynamically.
- Updated API configuration handling in search.ts to utilize settings from the store, improving flexibility and maintainability.
- Refactored theme application logic to ensure custom styles are applied correctly during component lifecycle events.
- Improved the user interface in SettingsModal.vue with an IDE-style code editor for better user experience when editing custom code.
- Updated the translation process to capture the current data state before executing tasks, allowing for parallel execution of translation functions.
- Implemented Promise.allSettled to ensure all translation tasks complete, enhancing reliability during the translation process.
- Adjusted conditions for translating descriptions, tags, and quotes to streamline the logic and improve performance.
- Increased the number of results returned by fetchVndbQuotes from 10 to 25 for better data retrieval.
- Refactored translation logic in VndbPanel.vue to execute tasks sequentially, preventing API rate limiting and ensuring accurate game ID checks during translations.
- Added a custom variant for dark mode in App.vue to support Tailwind v4 features.
- Simplified the onEnter function in ImageViewer.vue by removing the done parameter, allowing Vue to manage CSS animation completion automatically.
- Updated theme handling in index.html and ui.ts to support migration from old format, ensuring compatibility with previous user settings.
- Refactored VndbPanel.vue to streamline game ID handling and improve race condition checks during data loading.
- Simplified the onEnter function in ImageViewer.vue to ensure sound effects play correctly during transitions.
- Updated theme detection logic in index.html to support user-selected theme modes (light, dark, system) and improved handling of local storage.
- Removed unused theme-related functions from App.vue, streamlining the component and enhancing performance.
- Added new theme options in friends.json to expand the community resource list.
- Eliminated the `useAnime` composable and its associated animation functions from ImageViewer.vue, opting for a more straightforward approach to transitions.
- Updated the onEnter function to focus solely on sound effects during transitions, enhancing clarity and maintainability of the code.
- Replaced `vue-virtual-scroll-list` with `@tanstack/vue-virtual` in package.json for enhanced virtual scrolling capabilities.
- Refactored multiple components to utilize CSS transitions instead of JavaScript animations, improving performance and simplifying code.
- Updated transition classes in `AnimatedBackground.vue`, `CommentsModal.vue`, `KeyboardHelpPanel.vue`, `SettingsModal.vue`, `VndbPanel.vue`, and others for a more cohesive user experience.
- Removed unnecessary animation functions and streamlined component structures for better maintainability.
- Eliminated the use of anime.js in favor of simpler CSS transitions and effects.
- Updated SearchResults.vue to implement virtual scrolling for better performance with large result sets.
- Refactored SettingsModal.vue to enhance button interactions and remove unnecessary animation directives.
- Improved overall styling and structure for a more cohesive user experience across components.
- Removed the `animejs` dependency and replaced it with a lightweight animation system using the Web Animations API for better performance.
- Introduced theme settings in `SettingsModal.vue`, allowing users to select between light, dark, and system themes.
- Updated `useUIStore` to manage theme state and apply changes dynamically, enhancing the overall UI consistency.
- Improved styling in `VndbPanel.vue` and other components to align with the new theme management system, ensuring a cohesive look and feel across the application.