Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor "song" to "track" in the entire app. #1059

Merged
merged 5 commits into from
Mar 3, 2025
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Merge branch 'redesign' into pr/lukaslindnermusic/1059-1
  • Loading branch information
Chaphasilor committed Mar 3, 2025
commit 6d59624cf7d5ffef50ef16444526d5243ec68481
90 changes: 90 additions & 0 deletions lib/hive_registrar.g.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
// Generated by Hive CE
// Do not modify
// Check in to version control

import 'package:hive_ce/hive.dart';
import 'package:finamp/models/finamp_models.dart';
import 'package:finamp/models/jellyfin_models.dart';

extension HiveRegistrar on HiveInterface {
void registerAdapters() {
registerAdapter(AccessScheduleAdapter());
registerAdapter(AuthenticationResultAdapter());
registerAdapter(BaseItemAdapter());
registerAdapter(BaseItemDtoAdapter());
registerAdapter(BaseItemPersonAdapter());
registerAdapter(ClientCapabilitiesAdapter());
registerAdapter(ClientDiscoveryResponseAdapter());
registerAdapter(CodecProfileAdapter());
registerAdapter(ContainerProfileAdapter());
registerAdapter(ContentViewTypeAdapter());
registerAdapter(DeviceIdentificationAdapter());
registerAdapter(DeviceInfoAdapter());
registerAdapter(DeviceProfileAdapter());
registerAdapter(DirectPlayProfileAdapter());
registerAdapter(DownloadLocationAdapter());
registerAdapter(DownloadLocationTypeAdapter());
registerAdapter(DownloadedImageAdapter());
registerAdapter(DownloadedParentAdapter());
registerAdapter(DownloadedTrackAdapter());
registerAdapter(ExternalUrlAdapter());
registerAdapter(FinampFeatureChipTypeAdapter());
registerAdapter(FinampFeatureChipsConfigurationAdapter());
registerAdapter(FinampHistoryItemAdapter());
registerAdapter(FinampLoopModeAdapter());
registerAdapter(FinampPlaybackOrderAdapter());
registerAdapter(FinampQueueInfoAdapter());
registerAdapter(FinampQueueItemAdapter());
registerAdapter(FinampQueueOrderAdapter());
registerAdapter(FinampSegmentContainerAdapter());
registerAdapter(FinampSettingsAdapter());
registerAdapter(FinampStorableQueueInfoAdapter());
registerAdapter(FinampTranscodingCodecAdapter());
registerAdapter(FinampUserAdapter());
registerAdapter(HttpHeaderInfoAdapter());
registerAdapter(ImageBlurHashesAdapter());
registerAdapter(KeepScreenOnOptionAdapter());
registerAdapter(LyricDtoAdapter());
registerAdapter(LyricLineAdapter());
registerAdapter(LyricMetadataAdapter());
registerAdapter(LyricsAlignmentAdapter());
registerAdapter(LyricsFontSizeAdapter());
registerAdapter(MediaAttachmentAdapter());
registerAdapter(MediaItemIdAdapter());
registerAdapter(MediaItemParentTypeAdapter());
registerAdapter(MediaSourceInfoAdapter());
registerAdapter(MediaStreamAdapter());
registerAdapter(MediaUrlAdapter());
registerAdapter(NameIdPairAdapter());
registerAdapter(NameLongIdPairAdapter());
registerAdapter(OfflineListenAdapter());
registerAdapter(PlaybackSpeedVisibilityAdapter());
registerAdapter(PlayerStateInfoAdapter());
registerAdapter(ProfileConditionAdapter());
registerAdapter(PublicSystemInfoResultAdapter());
registerAdapter(PublicUsersResponseAdapter());
registerAdapter(QueueItemAdapter());
registerAdapter(QueueItemQueueTypeAdapter());
registerAdapter(QueueItemSourceAdapter());
registerAdapter(QueueItemSourceNameAdapter());
registerAdapter(QueueItemSourceNameTypeAdapter());
registerAdapter(QueueItemSourceTypeAdapter());
registerAdapter(QuickConnectStateAdapter());
registerAdapter(ResponseProfileAdapter());
registerAdapter(SavedQueueStateAdapter());
registerAdapter(SessionInfoAdapter());
registerAdapter(SessionUserInfoAdapter());
registerAdapter(SortByAdapter());
registerAdapter(SortOrderAdapter());
registerAdapter(SubtitleProfileAdapter());
registerAdapter(TabContentTypeAdapter());
registerAdapter(TranscodeDownloadsSettingAdapter());
registerAdapter(TranscodingProfileAdapter());
registerAdapter(UserConfigurationAdapter());
registerAdapter(UserDtoAdapter());
registerAdapter(UserItemDataDtoAdapter());
registerAdapter(UserPolicyAdapter());
registerAdapter(VolumeNormalizationModeAdapter());
registerAdapter(XmlAttributeAdapter());
}
}
48 changes: 24 additions & 24 deletions lib/l10n/app_de.arb
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
},
"startMix": "Starte Mix",
"@startMix": {},
"startMixNoTracksAlbum": "Vor dem Starten eines Mixes lange auf ein Album gedrückt halten, um es zum Mixzusammensteller hinzuzufügen oder zu entfernen",
"startMixNoTracksAlbum": "Vor dem Starten eines Mixes lange auf einem Album gedrückt halten, um es zum Mix hinzuzufügen oder zu entfernen",
"@startMixNoTracksAlbum": {
"description": "Snackbar message that shows when the user presses the instant mix button with no albums selected"
},
Expand All @@ -39,7 +39,7 @@
"@next": {},
"logs": "Logs",
"@logs": {},
"startMixNoTracksArtist": "Vor dem Starten eines Mixes lange auf einen Künstler gedrückt halten, um ihn zum Mixzusammensteller hinzuzufügen oder zu entfernen",
"startMixNoTracksArtist": "Vor dem Starten eines Mixes lange auf einem Künstler gedrückt halten, um ihn zum Mix hinzuzufügen oder zu entfernen",
"@startMixNoTracksArtist": {
"description": "Snackbar message that shows when the user presses the instant mix button with no artists selected"
},
Expand All @@ -51,7 +51,7 @@
"@genres": {},
"playlists": "Playlists",
"@playlists": {},
"tracks": "Lieder",
"tracks": "Tracks",
"@tracks": {},
"favourites": "Favoriten",
"@favourites": {},
Expand Down Expand Up @@ -241,9 +241,9 @@
"@customLocationsBuggy": {},
"enterLowPriorityStateOnPause": "Niedrige-Priorität-Modus beim Pausieren aktivieren",
"@enterLowPriorityStateOnPause": {},
"shuffleAllTrackCount": "Anzahl gemischter Lieder",
"shuffleAllTrackCount": "Anzahl zufälliger Tracks",
"@shuffleAllTrackCount": {},
"shuffleAllTrackCountSubtitle": "Die Anzahl der zu ladenden Tracks wenn der Zufallsknopf gedrückt wird.",
"shuffleAllTrackCountSubtitle": "Die Anzahl der zu ladenden Tracks, wenn der Zufällig-Button benutzt wird.",
"@shuffleAllTrackCountSubtitle": {},
"viewType": "Ansichtsart",
"@viewType": {},
Expand All @@ -269,11 +269,11 @@
"@useCoverAsBackground": {},
"useCoverAsBackgroundSubtitle": "Ob verschwommene Cover als Hintergrund in der Wiedergabe-Ansicht benutzt werden sollen.",
"@useCoverAsBackgroundSubtitle": {},
"hideTrackArtistsIfSameAsAlbumArtists": "Verstecke Track-Künstler falls dieser derselbe ist wie der Album-Künstler",
"hideTrackArtistsIfSameAsAlbumArtists": "Verstecke Track-Künstler, falls dieser dem Album-Künstler entspricht",
"@hideTrackArtistsIfSameAsAlbumArtists": {},
"showArtistsTopTracks": "Meistgehörte Lieder von Künstlern anzeigen",
"showArtistsTopTracks": "Meistgehörte Tracks von Künstlern anzeigen",
"@showArtistsTopTracks": {},
"showArtistsTopTracksSubtitle": "Ob die meistgehörten Lieder eines Künstlers angezeigt werden sollen.",
"showArtistsTopTracksSubtitle": "Ob die meistgehörten Tracks eines Künstlers angezeigt werden sollen.",
"@showArtistsTopTracksSubtitle": {},
"theme": "Thema",
"@theme": {},
Expand Down Expand Up @@ -340,7 +340,7 @@
}
}
},
"trackCount": "{count,plural,=1{{count} Titel} other{{count} Titel}}",
"trackCount": "{count,plural,=1{{count} Track} other{{count} Tracks}}",
"@trackCount": {
"placeholders": {
"count": {
Expand Down Expand Up @@ -428,11 +428,11 @@
"@removeFromPlaylistTitle": {},
"removedFromPlaylist": "Aus der Playlist entfernt.",
"@removedFromPlaylist": {},
"topTracks": "Top Lieder",
"topTracks": "Top Tracks",
"@topTracks": {},
"shuffleAlbums": "Alben mischen",
"shuffleAlbums": "Alben zufällig wiedergeben",
"@shuffleAlbums": {},
"couldNotLoad": "{source, select, album{Album} playlist{Wiedergabeliste} trackMix{Titelmix} artistMix{Künstlermix} albumMix{Albummix} favorites{Favoriten} allTracks{Alle Titel} filteredList{Lieder} genre{Genre} artist{Künstler} nextUpAlbum{album in next up} nextUpPlaylist{playlist in next up} nextUpArtist{artist in next up} other{}} konnte nicht geladen werden",
"couldNotLoad": "Laden {source, select, album{des Albums} playlist{der Wiedergabeliste} trackMix{des Titelmixes} artistMix{des Künstlermixes} albumMix{des Albummixes} favorites{der Favoriten} allTracks{aller Titel} filteredList{der Tracks} genre{des Genre} artist{des Künstlers} nextUpAlbum{des Album in \\\"Als Nächstes\\\"} nextUpPlaylist{der Playlist in \\\"Als Nächstes\\\"} nextUpArtist{des Künstlers in \\\"Als Nächstes\\\"} other{}} fehlgeschlagen",
"@couldNotLoad": {},
"bufferDurationSubtitle": "Die maximale Pufferdauer in Sekunden. Neustart erforderlich.",
"@bufferDurationSubtitle": {},
Expand Down Expand Up @@ -586,7 +586,7 @@
"@login": {
"description": "Label for the login button."
},
"offlineTrackCount": "{count,plural,=1{{count} Titel} other{{count} Titel}}, {downloads} heruntergeladen",
"offlineTrackCount": "{count,plural,=1{{count} Track} other{{count} Tracks}}, {downloads} heruntergeladen",
"@offlineTrackCount": {
"placeholders": {
"count": {
Expand All @@ -597,7 +597,7 @@
}
}
},
"offlineTrackCountArtist": "{count,plural,=1{{count} Titel} other{{count} Titel}} heruntergeladen",
"offlineTrackCountArtist": "{count,plural,=1{{count} Track} other{{count} Tracks}} heruntergeladen",
"@offlineTrackCountArtist": {
"placeholders": {
"count": {
Expand Down Expand Up @@ -635,7 +635,7 @@
},
"description": "Tooltip for album artwork on track and album tiles as well as the album screen"
},
"startMixNoTracksGenre": "Drücke lange auf ein Genre, um es vor dem Start eines Mixhin zuzufügen oder aus dem Mix zu entfernen",
"startMixNoTracksGenre": "Drücke lange auf ein Genre, um es vor dem Start eines Mixes hinzuzufügen oder aus dem Mix zu entfernen",
"@startMixNoTracksGenre": {
"description": "Snackbar message that shows when the user presses the instant mix button with no genres selected"
},
Expand Down Expand Up @@ -1336,7 +1336,7 @@
}
}
},
"tracksFormerNextUp": "Über Next Up Hinzugefügte Tracks",
"tracksFormerNextUp": "Über \"Als Nächstes\" hinzugefügte Tracks",
"@tracksFormerNextUp": {
"description": "Title for the queue source for tracks that were once added to the queue via the \"Next Up\" feature, but have since been played"
},
Expand Down Expand Up @@ -1441,7 +1441,7 @@
}
}
},
"downloadedCountUnified": "{trackCount,plural,=1{{trackCount} lied} other{{trackCount} lieder}}, {imageCount,plural,=1{{imageCount} bild} other{{imageCount} bilder}}\n{syncCount,plural,=1{{syncCount} Synchronisiert} other{{syncCount} Synchronisieren}}{repairing, plural, =0{} other{\nAm Reparieren}}",
"downloadedCountUnified": "{trackCount,plural,=1{{trackCount} Track} other{{trackCount} Tracks}}, {imageCount,plural,=1{{imageCount} Bild} other{{imageCount} Bilder}}\n{syncCount,plural,=1{{syncCount} synchronisiert} other{{syncCount} synchronisieren}}{repairing, plural, =0{} other{\nreparieren}}",
"@downloadedCountUnified": {
"description": "Display of downloaded track and image count on downloads screen.",
"placeholders": {
Expand Down Expand Up @@ -1486,7 +1486,7 @@
}
}
},
"playingFromType": "Wiedergabe von {source, select, album{Album} playlist{Playlist} trackMix{Track Mix} artistMix{Künstler Mix} albumMix{Album Mix} genreMix{Genre Mix} favorites{Favoriten} allTracks{All Lieder} filteredList{Lieder} genre{Genre} artist{Künstler} track{Track} nextUpAlbum{Album in Next Up} nextUpPlaylist{Playlist in Next Up} nextUpArtist{Artist in Next Up} other{}}",
"playingFromType": "Wiedergabe von {source, select, album{Album} playlist{Playlist} trackMix{Track Mix} artistMix{Künstler Mix} albumMix{Album Mix} genreMix{Genre Mix} favorites{Favoriten} allTracks{allen Tracks} filteredList{Tracks} genre{Genre} artist{Künstler} track{Track} nextUpAlbum{Album in \"Als Nächstes\"} nextUpPlaylist{Playlist in \"Als Nächstes\"} nextUpArtist{Artist in \"Als Nächstes\"} other{}}",
"@playingFromType": {
"description": "Prefix shown before the type of the main queue source at the top of the player screen. Example: \"Playing From Album\"",
"placeholders": {
Expand Down Expand Up @@ -1696,7 +1696,7 @@
"@showStopButtonOnMediaNotificationSubtitle": {
"description": "Subtitle for the setting that controls if the media notification has a stop button in addition to the pause button."
},
"lyricsFontSizeSubtitle": "Legt die Schriftgröße von Songtexten in der Songtext-Ansicht fest.",
"lyricsFontSizeSubtitle": "Legt die Schriftgröße von Texten in der Songtext-Ansicht fest.",
"@lyricsFontSizeSubtitle": {
"description": "Subtitle for the setting that controls the font size of lyrics in the lyrics view"
},
Expand Down Expand Up @@ -1724,7 +1724,7 @@
"@startInstantMixForIndividualTracksSwitchTitle": {
"description": "Title for the switch that toggles if tapping a track on the tracks tab will start an instant mix of that track instead of just playing a single track."
},
"itemTypeSubtitle": "{itemType, select, album{Album} playlist{Playlist} artist{Künstler} genre{Genre} song{Track} library{Bibliothek} unknown{Item} other{{itemType}}} {itemName}",
"itemTypeSubtitle": "{itemType, select, album{Album} playlist{Playlist} artist{Künstler} genre{Genre} track{Track} library{Bibliothek} unknown{Item} other{{itemType}}} {itemName}",
"@itemTypeSubtitle": {
"placeholders": {
"itemType": {
Expand Down Expand Up @@ -1831,7 +1831,7 @@
"@marqueeOrTruncateButton": {},
"cacheLibraryImagesSettings": "Cache derzeitige Bibliotheks-Bilder",
"@cacheLibraryImagesSettings": {},
"lyricsAlignmentSubtitle": "Legt die Ausrichtung von Songexten in der Songtext-Ansicht fest.",
"lyricsAlignmentSubtitle": "Legt die Ausrichtung von Trackexten in der Songtext-Ansicht fest.",
"@lyricsAlignmentSubtitle": {
"description": "Subtitle for the setting that controls the alignment of lyrics in the lyrics view"
},
Expand All @@ -1847,7 +1847,7 @@
"@showCoversOnAlbumScreenSubtitle": {
"description": "Subtitle for the setting that controls if album covers are shown for each track separately on the album screen"
},
"itemDeletedSnackbar": "{itemType, select, album{Album} playlist{Playlist} artist{Künstler} genre{Genre} song{Track} library{Bibliothek} other{Item}} wurde {deviceType, select, device{vom Gerät} server{vom Server} other{unknown}} gelöscht",
"itemDeletedSnackbar": "{itemType, select, album{Album} playlist{Playlist} artist{Künstler} genre{Genre} track{Track} library{Bibliothek} other{Item}} wurde {deviceType, select, device{vom Gerät} server{vom Server} other{unknown}} gelöscht",
"@itemDeletedSnackbar": {
"description": "Used whenever item gets deleted from the device or server, message in snackbar"
},
Expand All @@ -1857,7 +1857,7 @@
},
"largeDownloadWarning": "Warnung: Du bist dabei, {count} Tracks herunterzuladen.",
"@largeDownloadWarning": {
"description": "A line of warning text on the download dialog when large numbers of songs are downloaded at once.",
"description": "A line of warning text on the download dialog when large numbers of tracks are downloaded at once.",
"placeholders": {
"count": {
"type": "int"
Expand Down Expand Up @@ -1885,7 +1885,7 @@
}
}
},
"deleteFromTargetDialogText": "Du bist dabei, {itemType, select, album{das Album} playlist{die Playlist} artist{den Künstler} genre{das Genre} song{den Track} library{die Bibliothek} other{das Item}} {device, select, device{von diesem Gerät zu löschen} server{von der Bibliothek und dem Dateisystem des Servers zu löschen.{deleteType, select, canDelete{ Das Item wird dadurch auch von diesem Gerät gelöscht werden.} cantDelete{ Das Item wird bis zur nächsten Synchronisierung auf diesem Gerät bleiben.} notDownloaded{} other{}}\nDiese Aktion kann nicht rückgängig gemacht werden} other{}}.",
"deleteFromTargetDialogText": "Du bist dabei, {itemType, select, album{das Album} playlist{die Playlist} artist{den Künstler} genre{das Genre} track{den Track} library{die Bibliothek} other{das Item}} {device, select, device{von diesem Gerät zu löschen} server{von der Bibliothek und dem Dateisystem des Servers zu löschen.{deleteType, select, canDelete{ Das Item wird dadurch auch von diesem Gerät gelöscht werden.} cantDelete{ Das Item wird bis zur nächsten Synchronisierung auf diesem Gerät bleiben.} notDownloaded{} other{}}\nDiese Aktion kann nicht rückgängig gemacht werden} other{}}.",
"@deleteFromTargetDialogText": {
"description": "(Important: Note the space in front of some cases) A Confirm Prompt used whenever an item is about to be deleted from the device or server. The Server case should explain that this cannot be reverted, this information is not needed for the device since the user can just download the track again. The delete Type adapts the server text even more in can the user can or cant delete the item."
}
Expand Down
6 changes: 3 additions & 3 deletions lib/l10n/app_fr.arb
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
},
"unknownName": "Nom inconnu",
"@unknownName": {},
"tracks": "Titres",
"tracks": "Chansons",
"@tracks": {},
"albums": "Albums",
"@albums": {},
Expand Down Expand Up @@ -166,7 +166,7 @@
},
"errorScreenError": "Une erreur est survenue lors de la récupération de la liste des erreurs ! À ce stade, il serait probablement préférable de créer une issue sur GitHub et de supprimer les données de l'application.",
"@errorScreenError": {},
"failedToGetTrackFromDownloadId": "Le titre n’a pas pu être récupéré à l’aide de l’ID de téléchargement",
"failedToGetTrackFromDownloadId": "La chanson n’a pas pu être récupérée à l’aide de l’ID de téléchargement",
"@failedToGetTrackFromDownloadId": {},
"error": "Erreur",
"@error": {},
Expand Down Expand Up @@ -234,7 +234,7 @@
"@notAvailableInOfflineMode": {},
"logOut": "Déconnexion",
"@logOut": {},
"downloadedTracksWillNotBeDeleted": "Les titres téléchargés ne seront pas supprimés",
"downloadedTracksWillNotBeDeleted": "Les chansons téléchargées ne seront pas supprimées",
"@downloadedTracksWillNotBeDeleted": {},
"areYouSure": "Êtes-vous sûr ?",
"@areYouSure": {},
Expand Down
Loading
You are viewing a condensed version of this merge commit. You can view the full changes here.