Commit graph

217 commits

Author SHA1 Message Date
Pas
f23ac179cd add Feedback buttons to submit to TIDB 2026-01-19 16:59:31 -07:00
Pas
9af6e36d94 what happened to my prettier config 😭 2026-01-18 11:30:02 -07:00
Pas
04f5958993 fix watch history issues 2026-01-18 10:28:48 -07:00
Pas
e544334bea add watch history 2026-01-16 19:59:40 -07:00
Pas
02a179b1d8 add Find Next Source button
replace edit order button
2026-01-10 18:29:00 -07:00
Pas
474999f54a add passkey support for login and register
commit f75666a47b
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 17:10:44 2025 -0700

    more minor ui changes

commit 7f9b91ea46
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 16:51:32 2025 -0700

    oopsie

commit bd7029723d
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 16:47:44 2025 -0700

    more ui tweaks

commit 4f86020ca0
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 16:40:17 2025 -0700

    ui tweaks

commit 4a8c756eb0
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 16:31:28 2025 -0700

    passkey translations

commit b7e08b505f
Author: Pas <74743263+Pasithea0@users.noreply.github.com>
Date:   Mon Dec 29 16:02:35 2025 -0700

    meow
2025-12-29 17:15:09 -07:00
Pas
a019f3dab4 add disconnect from account option 2025-12-27 21:45:05 -07:00
Pas
006a45a84a add support for multiple backends 2025-12-27 21:32:22 -07:00
Pas
ecd5daeaa0 remove Provider API logic and OLD turnstile code 2025-12-27 13:07:32 -07:00
Pas
b82c945b05 remove DisabledSources and DisableEmbeds since it doesnt work 2025-12-24 10:51:31 -07:00
Pas
342219b461 add minimal cards setting 2025-12-24 10:12:49 -07:00
Pas
cb504ccf55 customize keyboard shortcuts! 2025-12-23 23:26:59 -07:00
Pas
58594ae4b5 track failed sources and disable multiple 2025-12-20 12:23:17 -07:00
Pas
36069f8193 Revert "refactor media failure tracking"
This reverts commit f68bb15c57.
2025-12-17 12:27:37 -07:00
Pas
f68bb15c57 refactor media failure tracking 2025-12-16 11:22:42 -07:00
Pas
dbf2c02a53 Update useProviderScrape.tsx 2025-12-08 12:16:05 -07:00
Pas
732d1d5ca3 Fix handling of undefined arrays in source selection
Updated filtering logic to safely handle cases where arrays like disabledSources, preferredSourceOrder, and preferredEmbedOrder may be undefined. This prevents runtime errors and ensures robust source and embed selection throughout the player and settings components.
2025-12-08 12:16:05 -07:00
Pas
84b1de91c4 fix PWA searchbar padding 2025-12-05 16:06:08 -07:00
Pas
0576c9fed0 Revert "feat: add skip source button during scraping"
This reverts commit bf14a85f34.
2025-12-03 18:20:04 -07:00
aq
bf14a85f34 feat: add skip source button during scraping
Implement user-initiated source skipping functionality:
- Add skipCurrentSource function to abort current source and all its embeds
- Create AbortController per source and propagate through provider stack
- Mark skipped sources and embeds with 'skipped' status
- Add skip button to scraping UI with translation support
- Filter out skipped source results in PlayerView to prevent playback
- Add fallback to direct fetch when proxy URL is unavailable
- Track failed sources and embeds in player store
- Add 'skipped' status type to ScrapeCard component

Technical details:
- AbortController is created per source in startEvent callback
- Signal is dynamically retrieved via wrapper functions
- Skipped sources continue to next source without showing error screen
- Skip button is passed through component hierarchy via callbacks
- Resume from specific source maintains skip state between attempts

Resolves user ability to manually skip slow or failing sources during media scraping
2025-12-04 01:02:20 +04:00
Pas
ebdb931d59 Add lazy loading for media carousels using Intersection Observer
Introduces a reusable useIntersectionObserver hook and a LazyMediaCarousel component to defer rendering of carousels until they are near the viewport. Updates discoverContent and AllMovieLists to use LazyMediaCarousel, improving performance by only loading carousels as needed. Priority carousels (e.g., top of page) are loaded immediately.
2025-12-01 16:57:17 -07:00
Pas
b464c2195e make sure enableAutoResumeOnPlaybackError syncs to backend 2025-12-01 16:22:02 -07:00
Pas
ad592edc65 Track and handle failed embeds in player sources
Introduces tracking of failed embeds per source in the player store, adds logic to mark embeds as failed on playback errors, and filters out failed embeds when selecting sources. Also ensures failed sources and embeds are cleared when a working source is found. This improves error handling and fallback behavior for sources with multiple embeds.
2025-12-01 12:47:15 -07:00
Pas
c460c15966 Track and skip failed sources during playback
Introduces a mechanism to track failed sources in the player store. When a playback error occurs, the current source is marked as failed and subsequent attempts will skip these sources. Failed sources are cleared when a working source is found. UI text is updated to reflect the new behavior.
2025-11-30 17:50:28 -07:00
Pas
4ced25623f Add auto-resume on playback error setting and logic
Introduces a new user preference to automatically resume playback from the next available source when a playback error occurs. Updates settings UI, preferences store, and player error handling to support this feature, including new translations and backend support. Manual resume remains available if the feature is disabled.
2025-11-30 17:28:41 -07:00
Pas
03d74e4ecd Revert "Inject popup ad for xprime sources"
This reverts commit b6be227ab3.
2025-11-30 11:14:12 -07:00
Pas
b6be227ab3 Inject popup ad for xprime sources
Xprime's own site has ads, but people have found pstream (which doesnt have ads) and moves here since there are no ads. Xprime is losing money and is finding it difficult to support the proxies and servers.

clean up ad for xprime when switching sources or destroying player

new method for tracking if ad is shown

Revert "Track XPrime ad script load state in player"

This reverts commit c50bdd9ad8.

Track XPrime ad script load state in player

Adds xprimeAdScriptLoaded state and setter to the player store. Updates XPrimeAdOverlay to only show when the ad script is loaded, and base display logic to set the load state based on script events. This ensures the overlay only appears when the ad script is ready.

remove infinite loop

When conditions are met → show becomes true → timer starts
Timer fires after 5s → show becomes false
Effect re-runs (because show changed) → show becomes true again → new timer starts
Loop repeats infinitely

Refactor XPrime ad injection so it loads when the source changes
2025-11-30 11:14:03 -07:00
Pas
1e00777c64 update migration to support settings
groups and favorite eps are still broken
2025-11-29 14:41:52 -07:00
Pas
fa7b70b52a Update useSettingsState.ts 2025-11-19 17:56:36 -07:00
Pas
0a7816ff77 Update debrid key entry 2025-11-19 17:56:36 -07:00
Pas
04a08af5e9 fix account nickname not updating or displaying 2025-11-17 13:05:57 -07:00
Pas
067b6e43bc Add nickname to user account settings
Introduces a nickname field to user accounts, updates the backend user interface, and extends the settings UI to allow users to view and edit their nickname. Localization strings and state management have been updated accordingly to support this new field.
2025-11-17 10:49:20 -07:00
Isra
9da140444c Handle backtick earlier + Ignore commands when cmd/atl is pressed + prevent -0.0 as subtitle delay 2025-11-09 21:23:53 -07:00
Pas
3cfd44579c encode queries to fix some issues 2025-11-09 12:50:03 -07:00
Pas
2017cb2f26 Merge branch 'production' into dev 2025-11-07 16:36:57 -07:00
Pas
0e4724f9bd Revert "add drag and drop bookmark reordering"
This reverts commit c90e77ddf3.
2025-11-06 00:44:25 -07:00
Pas
c90e77ddf3 add drag and drop bookmark reordering 2025-11-06 00:28:38 -07:00
Pas
80d2ae13bd fix watchparty join shortcut on home page 2025-11-03 15:57:31 -07:00
Pas
d575d71108 add lastSuccessfulSource feature
to sort the last successful source to the top
2025-11-02 22:10:48 -07:00
Pas
1ab1b34187 Revert "Prevent settings from loading empty and rewriting to backend"
This reverts commit 3de8a35df4.
2025-10-28 11:16:00 -06:00
Pas
3de8a35df4 Prevent settings from loading empty and rewriting to backend
- No saves happen until backend settings are loaded and applied
- Automatic syncers wait for settings to be loaded before syncing
2025-10-25 12:07:15 -06:00
Pas
b46f618386 update packages 2025-10-25 00:21:34 -06:00
Pas
3a31d172b1 add keyboard shortcut modal 2025-10-24 22:18:24 -06:00
Pas
71a3d91b2a add save confirmation to admin page
fixes embed order not propagating to backend
2025-10-24 22:18:24 -06:00
Pas
52c1162f3c fix new settings with incorrect data
homeSectionOrder should never be empty.
2025-10-23 12:01:06 -06:00
Pas
8d7a61c5d4 increase watch party pull rate 2025-10-23 10:17:22 -06:00
Pas
d0db810e2a add remaining (missing) settings to all the parts 2025-10-19 18:43:35 -06:00
Pas
f0a35f6408 Add the ability to disable sources and embeds 2025-10-19 18:33:26 -06:00
Chris
47653c2906
Fix casting (#49)
* Tbh i tried adding it and it works but i cant fix the dual casting

* clean up chromecasting

* Apply Chromecast fixes

* Update Icon.tsx

---------

Co-authored-by: Pas <74743263+Pasithea0@users.noreply.github.com>
2025-10-12 11:16:16 -06:00
Pas
243314b12a restore manual source selection in auth 2025-10-10 14:05:13 -06:00