Commit Graph

31 Commits

Author SHA1 Message Date
ChunkyProgrammer 74dc309803
Fix: Update thumbnail url and channel name for subscriptions when change detected ()
* Update thumbnails of subscriptions

* refactor

* update channel names

* movie update thumbnail action to profiles.js

* fix updating with invidious

* apply code changes

* simplify update condition logic

* remove unneeded variables

* inline variables, use for of

* fix channel null check
2022-06-03 12:52:35 +00:00
bob1520 a9dc9c028d
Fix: wrong info displayed when quickly navigate from a channel to another ()
* Fix: wrong info displayed when you quickly navigate from a channel to another (Invidious)

* localapi

* id
2022-05-25 11:32:19 +02:00
bob1520 8b50045e78
channel fix (banner, playlist) ()
* channel fix (banner, playlist)

* remove console.log(response)
2022-05-12 09:37:25 +00:00
ChunkyProgrammer 927225d1f4
update yt-channel-info ()
* update yt-channel-info

* update to 3.0.1

* Update yarn.lock
2022-04-05 23:05:15 -04:00
Svallinn daecf944fb
Store Revamp / Full database synchronization across windows ()
* History: Refactor history module

* Profiles: Refactor profiles module

* IPC: Move channel ids to their own file and make them constants

* IPC: Replace single sync channel for one channel per sync type

* Everywhere: Replace default profile id magic strings with constant ref

* Profiles: Refactor `activeProfile` property from store

This commit makes it so that `activeProfile`'s getter returns
the entire profile, while the related update function only needs
the profile id (instead of the previously used array index)
to change the currently active profile.

This change was made due to inconsistency regarding the active profile
when creating new profiles.
If a new profile coincidentally landed in the current active profile's
array index after sorting, the app would mistakenly change to it
without any action from the user apart from the profile's creation.
Turning the profile id into the selector instead solves this issue.

* Revert "Store: Implement history synchronization between windows"

This reverts commit 99b61e6178.

This is necessary for an upcoming improved implementation of the
history synchronization.

* History: Remove unused mutation

* Everywhere: Create abstract database handlers

The project now utilizes abstract handlers to fetch, modify
or otherwise manipulate data from the database.

This facilitates 3 aspects of the app, in addition of
making them future proof:

- Switching database libraries is now trivial
Since most of the app utilizes the abstract handlers, it's incredibly
easily to change to a different DB library.
Hypothetically, all that would need to be done is to simply replace the
the file containing the base handlers, while the rest of the app
would go unchanged.

- Syncing logic between Electron and web is now properly separated
There are now two distinct DB handling APIs: the Electron one and
the web one.
The app doesn't need to manually choose the API, because it's detected
which platform is being utilized on import.

- All Electron windows now share the same database instance
This provides a single source of truth, improving consistency
regarding data manipulation and windows synchronization.

As a sidenote, syncing implementation has been left as is
(web unimplemented; Electron only syncs settings, remaining
datastore syncing will be implemented in the upcoming commits).

* Electron/History: Implement history synchronization

* Profiles: Implement suplementary profile creation logic

* ft-profile-edit: Small fix on profile name missing display

* Electron/Profiles: Implement profile synchronization

* Electron/Playlists: Implement playlist synchronization
2021-12-15 13:42:24 -05:00
ChunkyProgrammer 9bf4742cf9
Recognize more channel links ()
* Update channelPattern regex

* redirect to relevant sub page

* Simplify regex

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* fix regression

- fix regression from commit 76f0d7512a11d57598bda6fd0142767aec6218af
- add comment to explain regex

Co-authored-by: Preston <freetubeapp@protonmail.com>
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2021-11-02 11:45:50 +00:00
ChunkyProgrammer 11bb81795d
fix featured icons not loading ()
Co-authored-by: Preston <freetubeapp@protonmail.com>
2021-08-20 18:45:00 +00:00
ChunkyProgrammer 93a48ffe24
Translate window titles ()
* Update Titles to change based on locale

* Update Title on Forward/Backwards navigation

* Revert "Update Title on Forward/Backwards navigation"

This reverts commit 0a57825e920911275dcabfbb36d44712a452da15.

* Translate Window Titles

-Updated en-US & en_GB localization files to include 'Playlist" and "Profile Settings"
- Updated app to dynamically change titles + translate (App.js sets title instead of router now)
- Channel & Video get title based on Channel Name & Video name (changing those titles are in their respective views)

* Revert "Update Titles to change based on locale"

This reverts commit 9e8081606710c2a63655dc33594c542af7826df8.

* Re-add update title to channel view

* fix playlist title

* Fix 'Edit Profile' title
2021-07-21 11:45:02 -04:00
Svallinn 40d7278383
Invidious: Randomize instance on startup
There are now two separate settings related to Invidious instances:
- currentInvidiousInstance
- defaultInvidiousInstance

'currentInvidiousInstance' is a value that exists solely in memory
and it's the value used by the app to make the API calls,
while 'defaultInvidiousInstance' is the value that can be persisted
in the database by user action and will be used to initiate
the 'currentInvidiousInstance' on startup.

If the user has not saved a default value to the database,
'currentInvidiousInstance' is randomized from
a fetched list of viable candidates.
2021-07-03 02:55:56 +01:00
Svallinn 6ccc7e9fa4
Refactor: Swap `dispatch`/`commit` calls with mapped actions/mutations 2021-05-22 00:56:32 +01:00
Preston 689479eb21 Channel Fixes and finish quality change logic 2021-04-30 17:18:45 -04:00
Preston d4370f25f9 Update Channel module in Local API 2021-03-04 16:51:56 -05:00
Preston ef5aee3576 Update local API comment module and fix Invidious logic on channel page 2021-02-15 09:59:35 -05:00
Preston eab93c2b61 Fix network leak to Invidious instance when viewing channel playlists on Local API 2021-01-11 11:26:14 -05:00
Preston acf9b850c2 Proxy channel profile icons and banners through Invidious when API is preferred 2020-10-13 11:06:04 -04:00
Preston 854fd08f9c Hide subscriber count in channel view if 0 is returned 2020-10-06 17:45:30 -04:00
tayloraviets d5970f58c6
PR ready distraction free feature ()
* PR ready distraction free feature

Signed-off-by: Taylor <tayloraviets@gmail.com>

* presumably fixed linter issues

Signed-off-by: Taylor <tayloraviets@gmail.com>

* addressed PR issues and hopefully made the linter happy

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues again

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues again.

Signed-off-by: Taylor <tayloraviets@gmail.com>

* moved bad quote

Signed-off-by: Taylor <tayloraviets@gmail.com>
2020-10-05 22:27:32 -04:00
Preston 66ab2b11b9 Clear out more data in channel view to prevent other channel data from showing up 2020-09-20 22:20:40 -04:00
Preston 35b35b2525 Fix Locale and messaging issues 2020-09-16 08:51:24 -04:00
Preston 2a0c062915 Add subscription manager within profile settings. Add Upcoming video information. Other changes 2020-09-15 22:07:54 -04:00
Preston 9b7b240de4 Add proper logic for route change 2020-09-02 21:06:49 -04:00
Preston 1e035105d1 Finish Profile Logic and working subscriptions 2020-09-01 23:21:32 -04:00
Luca 4e822d8093 Turn the subscriber number into an integer number. Sometimes an issue with a somewhat low decimal 1 caused the number to have 9 decimal places 2020-08-19 23:21:39 +02:00
Preston 306335ab16 Have channel toast messages show up again 2020-08-13 14:21:25 -04:00
Preston 99524f3556 Add Locale Strings to Channel and Search pages 2020-08-08 23:15:00 -04:00
Preston 94b6ababf3 Add API Fallback to Channel view, update dependencies and add Windows Portable build 2020-07-29 22:58:07 -04:00
Preston a460fd08ce Fix channel banners and temporarily remove RPM for testing 2020-07-16 23:14:26 -04:00
Preston b625683a2e Add error handling for local channel API and add check for missing channel info 2020-07-11 18:36:42 -04:00
Preston 56fd7fbaa5 Fix banner URL in Channel View 2020-06-23 23:15:14 -04:00
Preston 71fbb6dde6 Add local API for Channel Info 2020-06-23 22:40:34 -04:00
Preston ded6534d16 Push Latest Code to Repository 2020-02-16 13:30:00 -05:00