* feat: add caching support with track metadata
* feat(settings): add cache music toggle
* fix(mobile): cache dir not open-able
* feat(local folder): add cache export/clear actions and size of the folder
* chore: ios deps upgrades
* chore: upgrade lint flutter version
* chore: lint secrets causing error
* cd: invalid value for env var
* feat: add invidious audio source with automatic track switch even on server playback endpoint
* fix: switching to different source on playback endpoint error not working
* chore: update invidious version
* feat: invidious instances customizability
commit e160d4f561ff2e945fd67bf12b223c012da58b1e
Author: Kingkor Roy Tirtho <krtirtho@gmail.com>
Date: Sat Sep 14 10:48:08 2024 +0600
fix: pagination issues in playlist and album pages
* feat: add discord rpc support for macos, windows arm64 and linux arm64
* chore: discord rpc not clearing activity after close/setting rpc to false
* chore: add migration script to move from files from macos sandbox to non-sandbox directories
* feat: add playback history provider
* feat: implement recently played section
* refactor: use route names
* feat: add stats summary and top tracks/artists/albums
* feat: add top date based filtering
* feat: add stream money calculation
* refactor: place search in mobile navbar and settings in home appbar
* feat: add individual minutes and streams page
* feat(stats): add individual minutes and streams page
* chore: default period to 1 month
* feat: add text to explain user how hypothetical fees are calculated
* chore: ensure usage of route names instead of direct paths
* cd: add cache key
* cd: remove media_kit_event_loop from git
* feat: add one additional library folder
This folder just doesn't get downloaded to.
I think I'm going to rework it so that it can be multiple folders,
but I'm going to commit my progress so far anyway.
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: update dependencies so that it builds
I'm not sure if this breaks CI or something, but I couldn't build
it locally to test my changes, so I made these changes and it
builds again.
Signed-off-by: Blake Leonard <me@blakes.dev>
* feat: index multiple folders of local music
If you used a previous commit from this branch, this is a breaking
change, because it changes the type of a configuration field. but
since this is still in development, it should be fine.
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: manage local library in local tracks tab
This also refactors the list to use slivers instead. That's the
easiest way to have multiple scrolling lists here...
The console keeps getting spammed with some intermediate layout
error but I can't hold it long enough to figure out what's causing
it.
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: use folder add/remove icons in library
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: remove redundant settings page
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: rename "Local Tracks" to just "Local"
Not sure if this would be the recommended way to do it...
Signed-off-by: Blake Leonard <me@blakes.dev>
* fix: console spam about useless Expanded
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: remove completed TODO
Signed-off-by: Blake Leonard <me@blakes.dev>
* chore: use new Platform constants; regenerate plugins
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: put local libraries on separate pages
Signed-off-by: Blake Leonard <me@blakes.dev>
---------
Signed-off-by: Blake Leonard <me@blakes.dev>
* refactor: remove SourcedTrack based audio player and utilize mediakit playback system
* feat: implement local (loopback) server to resolve stream source and leverage the media_kit playback API
* feat: add source change support and re-add prefetching tracks
* fix: assign lastId when track fetch completes regardless of error
* chore: remove print statements
* fix: remote queue not working
* fix: increase mpv network timeout to reduce auto-skipping
* fix: do not pre-fetch local tracks
* fix(proxy-playlist): reset collections on load
* chore: fix lint warnings
* fix(mobile): player overlay should not be visible when the player is not playing
* chore: fix typo in turkish translation
* cd: checkout PR branch
* cd: upgrade flutter version
* chore: fix lint errors