Commit Graph
47 Commits
Author SHA1 Message Date
kuekhaoyang 1e31a842e9 feat: Implement HLS video segment preloading and caching using a service worker. 2025-11-23 13:01:08 +08:00
kuekhaoyang 5e9af1b89e feat: centralize homepage logic into a new hook and refactor settings management with subscription and helper functions. 2025-11-23 11:41:48 +08:00
kuekhaoyang 64636a3da9 feat: Implement custom source editing and refactor source management to use full 2025-11-22 20:57:38 +08:00
kuekhaoyang c7045f8f51 feat: Add player layout with no-referrer metadata and enhance detail API to prioritize m3u8 video sources from multiple options. 2025-11-22 16:19:25 +08:00
kuekhaoyang 5c67f69b5e refactor: Remove player-specific dependencies, setup script, keyboard shortcuts, and project documentation. 2025-11-22 10:56:11 +08:00
kuekhaoyang 968ec2f421 feat: Implement search stream auto-completion timeout, filter irrelevant video results, and enhance search history dropdown animation with new image domains. 2025-11-21 19:18:13 +08:00
kuekhaoyang 58a8d4910e feat: Implement comprehensive search functionality, enhance video player controls for desktop and mobile, and refactor settings and history UI. 2025-11-21 19:00:23 +08:00
kuekhaoyang a408f2270f feat: Add video card component, desktop player controls, and introduce API utilities for search and data parsing. 2025-11-21 12:58:19 +08:00
kuekhaoyang 36488e545c feat: Introduce distinct mobile and desktop video player UI, controls, and state management, along with new styling and icon components. 2025-11-21 12:34:45 +08:00
kuekhaoyang d199c7aa6f feat: Add iOS detection and specific fullscreen handling, and remove redundant touch event handlers from player controls. 2025-11-20 09:30:48 +08:00
kuekhaoyang 0f677ddee3 perf: Optimize UI performance by simplifying glass effects, removing complex gradients and backdrop-filter, and adding hardware acceleration. 2025-11-19 16:36:11 +08:00
kuekhaoyang 7b9b359d23 refactor: remove debug console logs and the unused latency emoji utility 2025-11-19 15:16:42 +08:00
kuekhaoyang 3a756dd06f feat: Enhance search history dropdown with absolute positioning and empty state styling; improve video player autoplay functionality 2025-11-19 12:22:20 +08:00
kuekhaoyang fad6041df0 feat: Implement source management modals and settings store
- Added AddSourceModal for adding new video sources with validation.
- Introduced ExportModal for exporting settings and history options.
- Created ImportModal for importing settings from JSON files.
- Developed SourceManager for managing video sources, including enabling/disabling, deleting, and reordering.
- Established settings store to manage application settings, including default sources and sorting options.
- Implemented sorting utility functions for video search results based on various criteria.
2025-11-19 11:53:37 +08:00
kuekhaoyang 057df7434c feat: update video source configurations with new sources and localized names 2025-11-19 11:09:01 +08:00
kuekhaoyang fd1aa37767 feat: add latency tracking and display in video search results; optimize scrolling performance 2025-11-19 10:55:39 +08:00
kuekhaoyang f03ecb3294 feat: implement search history dropdown with liquid glass effect; add hooks for managing search history 2025-11-18 18:21:12 +08:00
kuekhaoyang 58f7c16d7b refactor: remove unused cache management and selection clearing logic from hooks 2025-11-18 18:11:17 +08:00
kuekhaoyang 694a015a1e refactor: implement source badge filtering; add useSourceBadges hook and integrate with HomePage and VideoGrid components 2025-11-18 18:01:33 +08:00
kuekhaoyang 973bc9048d refactor: enhance UI responsiveness and animations; add smooth transitions for video grid and improve TypeBadgeItem interaction 2025-11-18 17:47:15 +08:00
kuekhaoyang 0c9844d9ce refactor: optimize performance in various components; adjust animation intervals, memoize components, and improve sorting logic 2025-11-18 17:43:09 +08:00
kuekhaoyang 6b443dccaf refactor: remove custom API handling from GET and POST methods; delete unused useMediaQuery hook and DetailRequest type 2025-11-18 17:02:02 +08:00
kuekhaoyang ab75156071 refactor: remove unused methods from HistoryStore interface and implementation 2025-11-18 16:57:14 +08:00
kuekhaoyang 88f14290b5 refactor: remove unused accessibility utilities and hooks
- Deleted accessibility index file and related exports.
- Removed `useClickOutside` and `useClickOutsideMultiple` hooks for handling outside clicks.
- Eliminated `useSearchStream` hook and its associated logic for managing search state.
- Cleaned up `useMediaQuery` by removing predefined breakpoints and related utility hooks.
- Removed `source-checker` utility for checking video source availability.
- Refactored `client.ts` to simplify error handling and remove unused functions.
- Streamlined `video-sources.ts` by removing custom source management functions.
- Deleted `search-history-store.ts` and related search history management logic.
- Removed unused types and interfaces from `types/index.ts`.
- Cleaned up search utilities, focusing on relevance scoring and optimization.
2025-11-18 16:52:41 +08:00
kuekhaoyang d80e4420b6 refactor: remove unused utility files for error handling, M3U8 filtering, progress tracking, source switching, URL validation, and contrast testing
- Deleted error-handler.ts, m3u8-filter.ts, progress-tracker.ts, source-switcher.ts, url-validator.ts, and test-contrast.ts as they are no longer needed in the project.
2025-11-18 16:14:32 +08:00
kuekhaoyang db40601649 feat: Add ConfirmDialog component and accessibility utilities for enhanced user interaction 2025-11-18 15:31:22 +08:00
kuekhaoyang 2bc0be5d95 feat: Implement responsive design improvements and add custom hooks for keyboard navigation and click outside detection 2025-11-18 15:23:42 +08:00
kuekhaoyang 44cae03731 feat: Implement comprehensive keyboard navigation for KVideo components
- Added `useKeyboardNavigation` hook for managing keyboard interactions across lists and grids.
- Integrated keyboard navigation into VideoGrid, TypeBadges, SearchHistoryDropdown, and EpisodeList components.
- Enhanced accessibility by implementing ARIA roles and properties.
- Established visual focus indicators following Liquid Glass design principles.
- Created detailed documentation for keyboard shortcuts and component usage.
- Conducted performance optimizations and ensured compliance with WCAG 2.2 standards.
2025-11-18 15:07:39 +08:00
kuekhaoyang 251e15a37d feat: Enhance accessibility with ARIA attributes and focus trap implementation 2025-11-18 14:58:03 +08:00
kuekhaoyang 3dfcc6565d feat: Add history management components and movie grid with infinite scroll
- Implemented HistoryEmptyState component for displaying when no viewing history exists.
- Created HistoryItem component to represent individual watch history items with video details and delete functionality.
- Developed MovieCard component to display individual movie details including poster, title, and rating.
- Added MovieGrid component for displaying a grid of movie cards with infinite scroll capabilities.
- Introduced TagManager component for managing custom tags with creation, deletion, and filtering functionalities.
- Created TypeBadgeItem and TypeBadgeList components for displaying selectable badges with counts.
- Added custom hook useInfiniteScroll for managing infinite scroll behavior.
- Implemented contrast testing script to ensure WCAG compliance for UI components.
2025-11-18 14:50:14 +08:00
kuekhaoyang 5df494e8c8 feat: enhance MobileVideoPlayer with improved control responsiveness and progress seeking
refactor: clean up SourceBadges component by removing unused elements
refactor: update useDoubleTap hook to support continuous skipping in skip mode
2025-11-18 12:52:58 +08:00
kuekhaoyang a7480fb47a feat: add MobileVideoPlayer component with advanced controls and hooks
- Implemented MobileVideoPlayer component for mobile video playback.
- Added features such as play/pause, skip forward/backward, volume control, and fullscreen support.
- Integrated double-tap gesture handling for skipping video.
- Included hooks for screen orientation management and mobile detection.
- Enhanced user experience with loading indicators and playback speed options.
2025-11-18 12:40:50 +08:00
kuekhaoyang d3b3b281bd refactor: Remove video verification logic and related properties from search and display components 2025-11-17 22:53:33 +08:00
kuekhaoyang 28ef76572e feat: Implement watch history functionality; add WatchHistorySidebar component, enhance search history management, and integrate history tracking in video player 2025-11-17 17:52:47 +08:00
kuekhaoyang ba9853566f feat: Enhance relevance scoring in search functionality; add scoring for actor, director, and content matches; improve query handling and penalties for long titles 2025-11-17 16:41:32 +08:00
kuekhaoyang 1f55ba2d56 feat: Add Popular Features component and integrate with search functionality; enhance SearchForm with clear button and initial query handling; update scrollbar styling utility 2025-11-17 16:34:13 +08:00
kuekhaoyang 6a84889c2c feat: Add auto-collecting type badges with filtering functionality 2025-11-17 14:56:45 +08:00
kuekhaoyang 2802c694d0 feat: Implement parallel search functionality and update source name mappings 2025-11-17 14:29:31 +08:00
kuekhaoyang ad9e75bc8c feat: Implement video player components and search functionality
- Added EpisodeList component for displaying a list of episodes with selection functionality.
- Created PlayerError component to handle and display video playback errors.
- Developed VideoMetadata component to show detailed information about the video.
- Implemented VideoPlayer component for video playback with error handling and loading states.
- Introduced EmptyState and NoResults components for search results handling.
- Created ResultsHeader component to display search results summary.
- Developed SearchForm component for user input and search initiation.
- Implemented SourceBadges component to show available video sources.
- Created VideoGrid component to display search results in a grid format.
- Added useSearchCache and useSearchStream hooks for managing search state and caching results.
- Implemented useVideoPlayer hook for fetching and managing video details.
- Added utility function to map source IDs to their respective names.
2025-11-17 13:51:03 +08:00
kuekhaoyang 907af13ce7 Refactor video validation process by removing client-side playback testing; streamline episode filtering and enhance loading animation with accurate progress tracking 2025-11-16 22:56:39 +08:00
kuekhaoyang 5b4caf11c0 Enhance video validation process with client-side playback testing; filter out non-playable episodes and improve loading animation stages 2025-11-16 22:28:51 +08:00
kuekhaoyang c73cca570e Enhance video availability checks with improved accuracy and reduced concurrency; update source availability validation for better reliability 2025-11-16 21:53:18 +08:00
kuekhaoyang ec052df078 Refactor video source identifiers and enhance player navigation with improved button functionality 2025-11-16 21:40:29 +08:00
kuekhaoyang df8843aefb Enhance video URL accessibility checks to validate content type and ensure it contains video data 2025-11-16 21:29:31 +08:00
kuekhaoyang d0790d1307 Implement streaming search API and enhance video availability checks with loading animation 2025-11-16 19:03:19 +08:00
kuekhaoyang 610cc522c7 Enhance video source validation and availability checks across API routes and UI components 2025-11-16 11:26:28 +08:00
kuekhaoyang 11a5055b76 init 2025-11-16 10:49:55 +08:00