From 9095a8c8f849e42daabb7efcc20085cfb863c974 Mon Sep 17 00:00:00 2001 From: Kingkor Roy Tirtho Date: Sun, 25 Feb 2024 11:13:23 +0600 Subject: [PATCH] feat: add songlink based track matching for youtube and open song link button songlink.com will provide accurate match verified by community for most spotify tracks improving overall match accuracy for Youtube audio source --- assets/logos/songlink-transparent.png | Bin 0 -> 73176 bytes assets/logos/songlink.png | Bin 0 -> 88538 bytes lib/collections/assets.gen.dart | 16 + lib/components/player/player.dart | 16 + .../shared/track_tile/track_options.dart | 17 + lib/l10n/app_en.arb | 3 +- lib/services/song_link/model.dart | 19 ++ lib/services/song_link/song_link.dart | 47 +++ lib/services/song_link/song_link.freezed.dart | 320 ++++++++++++++++++ lib/services/song_link/song_link.g.dart | 33 ++ .../sourced_track/sources/youtube.dart | 15 + lib/songlink.dart | 43 +++ pubspec.yaml | 1 + untranslated_messages.json | 54 ++- 14 files changed, 565 insertions(+), 19 deletions(-) create mode 100644 assets/logos/songlink-transparent.png create mode 100644 assets/logos/songlink.png create mode 100644 lib/services/song_link/model.dart create mode 100644 lib/services/song_link/song_link.dart create mode 100644 lib/services/song_link/song_link.freezed.dart create mode 100644 lib/services/song_link/song_link.g.dart create mode 100644 lib/songlink.dart diff --git a/assets/logos/songlink-transparent.png b/assets/logos/songlink-transparent.png new file mode 100644 index 0000000000000000000000000000000000000000..6b7064c92fcb567ca37c040d637b53cb038211d6 GIT binary patch literal 73176 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 literal 0 HcmV?d00001 diff --git a/assets/logos/songlink.png b/assets/logos/songlink.png new file mode 100644 index 0000000000000000000000000000000000000000..43d823a587e26534ae0f57d7a2c527ed8a1b3bfa GIT binary patch literal 88538 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�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 z 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 V$Zxm?H0uBW002ovPDHLkV1lE`BG>=` literal 0 HcmV?d00001 diff --git a/lib/collections/assets.gen.dart b/lib/collections/assets.gen.dart index 2587800e..8a2950fb 100644 --- a/lib/collections/assets.gen.dart +++ b/lib/collections/assets.gen.dart @@ -9,6 +9,21 @@ import 'package:flutter/widgets.dart'; +class $AssetsLogosGen { + const $AssetsLogosGen(); + + /// File path: assets/logos/songlink-transparent.png + AssetGenImage get songlinkTransparent => + const AssetGenImage('assets/logos/songlink-transparent.png'); + + /// File path: assets/logos/songlink.png + AssetGenImage get songlink => + const AssetGenImage('assets/logos/songlink.png'); + + /// List of all assets + List get values => [songlinkTransparent, songlink]; +} + class $AssetsTutorialGen { const $AssetsTutorialGen(); @@ -37,6 +52,7 @@ class Assets { static const AssetGenImage jiosaavn = AssetGenImage('assets/jiosaavn.png'); static const AssetGenImage likedTracks = AssetGenImage('assets/liked-tracks.jpg'); + static const $AssetsLogosGen logos = $AssetsLogosGen(); static const AssetGenImage placeholder = AssetGenImage('assets/placeholder.png'); static const AssetGenImage spotubeHeroBanner = diff --git a/lib/components/player/player.dart b/lib/components/player/player.dart index 298458b5..a43fcbca 100644 --- a/lib/components/player/player.dart +++ b/lib/components/player/player.dart @@ -25,6 +25,7 @@ import 'package:spotube/pages/lyrics/lyrics.dart'; import 'package:spotube/provider/authentication_provider.dart'; import 'package:spotube/provider/proxy_playlist/proxy_playlist_provider.dart'; import 'package:spotube/utils/type_conversion_utils.dart'; +import 'package:url_launcher/url_launcher_string.dart'; class PlayerView extends HookConsumerWidget { final PanelController panelController; @@ -137,6 +138,21 @@ class PlayerView extends HookConsumerWidget { onPressed: panelController.close, ), actions: [ + IconButton( + icon: Assets.logos.songlink.image( + width: 20, + height: 20, + ), + tooltip: context.l10n.song_link, + onPressed: currentTrack == null + ? null + : () { + final url = + "https://song.link/s/${currentTrack.id}"; + + launchUrlString(url); + }, + ), IconButton( icon: const Icon(SpotubeIcons.info, size: 18), tooltip: context.l10n.details, diff --git a/lib/components/shared/track_tile/track_options.dart b/lib/components/shared/track_tile/track_options.dart index 419f61a4..a094259d 100644 --- a/lib/components/shared/track_tile/track_options.dart +++ b/lib/components/shared/track_tile/track_options.dart @@ -7,6 +7,7 @@ import 'package:flutter_hooks/flutter_hooks.dart'; import 'package:go_router/go_router.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; import 'package:spotify/spotify.dart'; +import 'package:spotube/collections/assets.gen.dart'; import 'package:spotube/collections/spotube_icons.dart'; import 'package:spotube/components/library/user_local_tracks.dart'; import 'package:spotube/components/shared/adaptive/adaptive_pop_sheet_list.dart'; @@ -26,10 +27,12 @@ import 'package:spotube/provider/spotify_provider.dart'; import 'package:spotube/services/mutations/mutations.dart'; import 'package:spotube/services/queries/search.dart'; import 'package:spotube/utils/type_conversion_utils.dart'; +import 'package:url_launcher/url_launcher_string.dart'; enum TrackOptionValue { album, share, + songlink, addToPlaylist, addToQueue, removeFromPlaylist, @@ -165,6 +168,7 @@ class TrackOptions extends HookConsumerWidget { final scaffoldMessenger = ScaffoldMessenger.of(context); final mediaQuery = MediaQuery.of(context); final router = GoRouter.of(context); + final ThemeData(:colorScheme) = Theme.of(context); final playlist = ref.watch(ProxyPlaylistNotifier.provider); final playback = ref.watch(ProxyPlaylistNotifier.notifier); @@ -276,6 +280,10 @@ class TrackOptions extends HookConsumerWidget { case TrackOptionValue.share: actionShare(context, track); break; + case TrackOptionValue.songlink: + final url = "https://song.link/s/${track.id}"; + await launchUrlString(url); + break; case TrackOptionValue.details: showDialog( context: context, @@ -418,6 +426,15 @@ class TrackOptions extends HookConsumerWidget { leading: const Icon(SpotubeIcons.share), title: Text(context.l10n.share), ), + PopSheetEntry( + value: TrackOptionValue.songlink, + leading: Assets.logos.songlinkTransparent.image( + width: 22, + height: 22, + color: colorScheme.onSurface.withOpacity(0.5), + ), + title: Text(context.l10n.song_link), + ), PopSheetEntry( value: TrackOptionValue.details, leading: const Icon(SpotubeIcons.info), diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index a3c93546..6b684d48 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -294,5 +294,6 @@ "endless_playback": "Endless Playback", "delete_playlist": "Delete Playlist", "delete_playlist_confirmation": "Are you sure you want to delete this playlist?", - "local_tracks": "Local Tracks" + "local_tracks": "Local Tracks", + "song_link": "Song Link" } \ No newline at end of file diff --git a/lib/services/song_link/model.dart b/lib/services/song_link/model.dart new file mode 100644 index 00000000..ae9d3833 --- /dev/null +++ b/lib/services/song_link/model.dart @@ -0,0 +1,19 @@ +part of './song_link.dart'; + +@freezed +class SongLink with _$SongLink { + const factory SongLink({ + required String displayName, + required String linkId, + required String platform, + required bool show, + required String? uniqueId, + required String? country, + required String? url, + required String? nativeAppUriMobile, + required String? nativeAppUriDesktop, + }) = _SongLink; + + factory SongLink.fromJson(Map json) => + _$SongLinkFromJson(json); +} diff --git a/lib/services/song_link/song_link.dart b/lib/services/song_link/song_link.dart new file mode 100644 index 00000000..c3d73f23 --- /dev/null +++ b/lib/services/song_link/song_link.dart @@ -0,0 +1,47 @@ +library song_link; + +import 'dart:convert'; + +import 'package:dio/dio.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; +import 'package:html/parser.dart'; + +part 'model.dart'; + +part 'song_link.freezed.dart'; +part 'song_link.g.dart'; + +abstract class SongLinkService { + static Future> links(String spotifyId) async { + final dio = Dio(); + + final res = await dio.get( + "https://song.link/s/$spotifyId", + options: Options( + headers: { + "Accept": + "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8", + "User-Agent": + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" + }, + responseType: ResponseType.plain, + ), + ); + + final document = parse(res.data); + + final script = document.getElementById("__NEXT_DATA__")?.text; + + if (script == null) { + return []; + } + + final pageProps = jsonDecode(script) as Map; + final songLinks = + pageProps["props"]["pageProps"]["pageData"]["sections"].firstWhere( + (section) => section["sectionId"] == "section|auto|links|listen", + )["links"] as List; + + return songLinks.map((link) => SongLink.fromJson(link)).toList(); + } +} diff --git a/lib/services/song_link/song_link.freezed.dart b/lib/services/song_link/song_link.freezed.dart new file mode 100644 index 00000000..a8230eeb --- /dev/null +++ b/lib/services/song_link/song_link.freezed.dart @@ -0,0 +1,320 @@ +// coverage:ignore-file +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: type=lint +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark + +part of 'song_link.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +SongLink _$SongLinkFromJson(Map json) { + return _SongLink.fromJson(json); +} + +/// @nodoc +mixin _$SongLink { + String get displayName => throw _privateConstructorUsedError; + String get linkId => throw _privateConstructorUsedError; + String get platform => throw _privateConstructorUsedError; + bool get show => throw _privateConstructorUsedError; + String? get uniqueId => throw _privateConstructorUsedError; + String? get country => throw _privateConstructorUsedError; + String? get url => throw _privateConstructorUsedError; + String? get nativeAppUriMobile => throw _privateConstructorUsedError; + String? get nativeAppUriDesktop => throw _privateConstructorUsedError; + + Map toJson() => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + $SongLinkCopyWith get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $SongLinkCopyWith<$Res> { + factory $SongLinkCopyWith(SongLink value, $Res Function(SongLink) then) = + _$SongLinkCopyWithImpl<$Res, SongLink>; + @useResult + $Res call( + {String displayName, + String linkId, + String platform, + bool show, + String? uniqueId, + String? country, + String? url, + String? nativeAppUriMobile, + String? nativeAppUriDesktop}); +} + +/// @nodoc +class _$SongLinkCopyWithImpl<$Res, $Val extends SongLink> + implements $SongLinkCopyWith<$Res> { + _$SongLinkCopyWithImpl(this._value, this._then); + + // ignore: unused_field + final $Val _value; + // ignore: unused_field + final $Res Function($Val) _then; + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? displayName = null, + Object? linkId = null, + Object? platform = null, + Object? show = null, + Object? uniqueId = freezed, + Object? country = freezed, + Object? url = freezed, + Object? nativeAppUriMobile = freezed, + Object? nativeAppUriDesktop = freezed, + }) { + return _then(_value.copyWith( + displayName: null == displayName + ? _value.displayName + : displayName // ignore: cast_nullable_to_non_nullable + as String, + linkId: null == linkId + ? _value.linkId + : linkId // ignore: cast_nullable_to_non_nullable + as String, + platform: null == platform + ? _value.platform + : platform // ignore: cast_nullable_to_non_nullable + as String, + show: null == show + ? _value.show + : show // ignore: cast_nullable_to_non_nullable + as bool, + uniqueId: freezed == uniqueId + ? _value.uniqueId + : uniqueId // ignore: cast_nullable_to_non_nullable + as String?, + country: freezed == country + ? _value.country + : country // ignore: cast_nullable_to_non_nullable + as String?, + url: freezed == url + ? _value.url + : url // ignore: cast_nullable_to_non_nullable + as String?, + nativeAppUriMobile: freezed == nativeAppUriMobile + ? _value.nativeAppUriMobile + : nativeAppUriMobile // ignore: cast_nullable_to_non_nullable + as String?, + nativeAppUriDesktop: freezed == nativeAppUriDesktop + ? _value.nativeAppUriDesktop + : nativeAppUriDesktop // ignore: cast_nullable_to_non_nullable + as String?, + ) as $Val); + } +} + +/// @nodoc +abstract class _$$SongLinkImplCopyWith<$Res> + implements $SongLinkCopyWith<$Res> { + factory _$$SongLinkImplCopyWith( + _$SongLinkImpl value, $Res Function(_$SongLinkImpl) then) = + __$$SongLinkImplCopyWithImpl<$Res>; + @override + @useResult + $Res call( + {String displayName, + String linkId, + String platform, + bool show, + String? uniqueId, + String? country, + String? url, + String? nativeAppUriMobile, + String? nativeAppUriDesktop}); +} + +/// @nodoc +class __$$SongLinkImplCopyWithImpl<$Res> + extends _$SongLinkCopyWithImpl<$Res, _$SongLinkImpl> + implements _$$SongLinkImplCopyWith<$Res> { + __$$SongLinkImplCopyWithImpl( + _$SongLinkImpl _value, $Res Function(_$SongLinkImpl) _then) + : super(_value, _then); + + @pragma('vm:prefer-inline') + @override + $Res call({ + Object? displayName = null, + Object? linkId = null, + Object? platform = null, + Object? show = null, + Object? uniqueId = freezed, + Object? country = freezed, + Object? url = freezed, + Object? nativeAppUriMobile = freezed, + Object? nativeAppUriDesktop = freezed, + }) { + return _then(_$SongLinkImpl( + displayName: null == displayName + ? _value.displayName + : displayName // ignore: cast_nullable_to_non_nullable + as String, + linkId: null == linkId + ? _value.linkId + : linkId // ignore: cast_nullable_to_non_nullable + as String, + platform: null == platform + ? _value.platform + : platform // ignore: cast_nullable_to_non_nullable + as String, + show: null == show + ? _value.show + : show // ignore: cast_nullable_to_non_nullable + as bool, + uniqueId: freezed == uniqueId + ? _value.uniqueId + : uniqueId // ignore: cast_nullable_to_non_nullable + as String?, + country: freezed == country + ? _value.country + : country // ignore: cast_nullable_to_non_nullable + as String?, + url: freezed == url + ? _value.url + : url // ignore: cast_nullable_to_non_nullable + as String?, + nativeAppUriMobile: freezed == nativeAppUriMobile + ? _value.nativeAppUriMobile + : nativeAppUriMobile // ignore: cast_nullable_to_non_nullable + as String?, + nativeAppUriDesktop: freezed == nativeAppUriDesktop + ? _value.nativeAppUriDesktop + : nativeAppUriDesktop // ignore: cast_nullable_to_non_nullable + as String?, + )); + } +} + +/// @nodoc +@JsonSerializable() +class _$SongLinkImpl implements _SongLink { + const _$SongLinkImpl( + {required this.displayName, + required this.linkId, + required this.platform, + required this.show, + required this.uniqueId, + required this.country, + required this.url, + required this.nativeAppUriMobile, + required this.nativeAppUriDesktop}); + + factory _$SongLinkImpl.fromJson(Map json) => + _$$SongLinkImplFromJson(json); + + @override + final String displayName; + @override + final String linkId; + @override + final String platform; + @override + final bool show; + @override + final String? uniqueId; + @override + final String? country; + @override + final String? url; + @override + final String? nativeAppUriMobile; + @override + final String? nativeAppUriDesktop; + + @override + String toString() { + return 'SongLink(displayName: $displayName, linkId: $linkId, platform: $platform, show: $show, uniqueId: $uniqueId, country: $country, url: $url, nativeAppUriMobile: $nativeAppUriMobile, nativeAppUriDesktop: $nativeAppUriDesktop)'; + } + + @override + bool operator ==(Object other) { + return identical(this, other) || + (other.runtimeType == runtimeType && + other is _$SongLinkImpl && + (identical(other.displayName, displayName) || + other.displayName == displayName) && + (identical(other.linkId, linkId) || other.linkId == linkId) && + (identical(other.platform, platform) || + other.platform == platform) && + (identical(other.show, show) || other.show == show) && + (identical(other.uniqueId, uniqueId) || + other.uniqueId == uniqueId) && + (identical(other.country, country) || other.country == country) && + (identical(other.url, url) || other.url == url) && + (identical(other.nativeAppUriMobile, nativeAppUriMobile) || + other.nativeAppUriMobile == nativeAppUriMobile) && + (identical(other.nativeAppUriDesktop, nativeAppUriDesktop) || + other.nativeAppUriDesktop == nativeAppUriDesktop)); + } + + @JsonKey(ignore: true) + @override + int get hashCode => Object.hash(runtimeType, displayName, linkId, platform, + show, uniqueId, country, url, nativeAppUriMobile, nativeAppUriDesktop); + + @JsonKey(ignore: true) + @override + @pragma('vm:prefer-inline') + _$$SongLinkImplCopyWith<_$SongLinkImpl> get copyWith => + __$$SongLinkImplCopyWithImpl<_$SongLinkImpl>(this, _$identity); + + @override + Map toJson() { + return _$$SongLinkImplToJson( + this, + ); + } +} + +abstract class _SongLink implements SongLink { + const factory _SongLink( + {required final String displayName, + required final String linkId, + required final String platform, + required final bool show, + required final String? uniqueId, + required final String? country, + required final String? url, + required final String? nativeAppUriMobile, + required final String? nativeAppUriDesktop}) = _$SongLinkImpl; + + factory _SongLink.fromJson(Map json) = + _$SongLinkImpl.fromJson; + + @override + String get displayName; + @override + String get linkId; + @override + String get platform; + @override + bool get show; + @override + String? get uniqueId; + @override + String? get country; + @override + String? get url; + @override + String? get nativeAppUriMobile; + @override + String? get nativeAppUriDesktop; + @override + @JsonKey(ignore: true) + _$$SongLinkImplCopyWith<_$SongLinkImpl> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/services/song_link/song_link.g.dart b/lib/services/song_link/song_link.g.dart new file mode 100644 index 00000000..911849e3 --- /dev/null +++ b/lib/services/song_link/song_link.g.dart @@ -0,0 +1,33 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'song_link.dart'; + +// ************************************************************************** +// JsonSerializableGenerator +// ************************************************************************** + +_$SongLinkImpl _$$SongLinkImplFromJson(Map json) => + _$SongLinkImpl( + displayName: json['displayName'] as String, + linkId: json['linkId'] as String, + platform: json['platform'] as String, + show: json['show'] as bool, + uniqueId: json['uniqueId'] as String?, + country: json['country'] as String?, + url: json['url'] as String?, + nativeAppUriMobile: json['nativeAppUriMobile'] as String?, + nativeAppUriDesktop: json['nativeAppUriDesktop'] as String?, + ); + +Map _$$SongLinkImplToJson(_$SongLinkImpl instance) => + { + 'displayName': instance.displayName, + 'linkId': instance.linkId, + 'platform': instance.platform, + 'show': instance.show, + 'uniqueId': instance.uniqueId, + 'country': instance.country, + 'url': instance.url, + 'nativeAppUriMobile': instance.nativeAppUriMobile, + 'nativeAppUriDesktop': instance.nativeAppUriDesktop, + }; diff --git a/lib/services/sourced_track/sources/youtube.dart b/lib/services/sourced_track/sources/youtube.dart index 5f75c4db..3fc78f0b 100644 --- a/lib/services/sourced_track/sources/youtube.dart +++ b/lib/services/sourced_track/sources/youtube.dart @@ -3,6 +3,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:http/http.dart'; import 'package:spotify/spotify.dart'; import 'package:spotube/models/source_match.dart'; +import 'package:spotube/services/song_link/song_link.dart'; import 'package:spotube/services/sourced_track/enums.dart'; import 'package:spotube/services/sourced_track/exceptions.dart'; import 'package:spotube/services/sourced_track/models/source_info.dart'; @@ -216,6 +217,20 @@ class YoutubeSourcedTrack extends SourcedTrack { required Track track, required Ref ref, }) async { + final links = await SongLinkService.links(track.id!); + final ytLink = links.firstWhereOrNull((link) => link.platform == "youtube"); + + if (ytLink?.url != null) { + return [ + await toSiblingType( + 0, + YoutubeVideoInfo.fromVideo( + await youtubeClient.videos.get(ytLink!.url!), + ), + ) + ]; + } + final query = SourcedTrack.getSearchTerm(track); final searchResults = await youtubeClient.search.search( diff --git a/lib/songlink.dart b/lib/songlink.dart new file mode 100644 index 00000000..65aae7e3 --- /dev/null +++ b/lib/songlink.dart @@ -0,0 +1,43 @@ +import 'dart:convert'; + +import 'package:html/parser.dart'; +import 'package:dio/dio.dart'; + +void main(List args) async { + final dio = Dio(); + + final spotifyId = args[0]; + + print("Fetching song link for $spotifyId"); + + final res = await dio.get( + "https://song.link/s/$spotifyId", + options: Options( + headers: { + "Accept": + "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8", + "User-Agent": + "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36" + }, + responseType: ResponseType.plain, + ), + ); + + final document = parse(res.data); + + final script = document.getElementById("__NEXT_DATA__")?.text; + + if (script == null) { + throw Exception("Could not find __NEXT_DATA__ script tag."); + } + + final pageProps = jsonDecode(script) as Map; + final songLinks = + pageProps["props"]["pageProps"]["pageData"]["sections"].firstWhere( + (section) => section["sectionId"] == "section|auto|links|listen", + )["links"]; + + for (final link in songLinks) { + print("${link["platform"]} - ${link["url"]}"); + } +} diff --git a/pubspec.yaml b/pubspec.yaml index 82377d08..9bacf6dd 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -153,6 +153,7 @@ flutter: assets: - assets/ - assets/tutorial/ + - assets/logos/ - LICENSE flutter_launcher_icons: diff --git a/untranslated_messages.json b/untranslated_messages.json index 41251435..cc14528c 100644 --- a/untranslated_messages.json +++ b/untranslated_messages.json @@ -7,7 +7,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "bn": [ @@ -18,7 +19,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "ca": [ @@ -29,7 +31,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "de": [ @@ -40,7 +43,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "es": [ @@ -51,7 +55,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "fa": [ @@ -62,7 +67,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "fr": [ @@ -73,7 +79,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "hi": [ @@ -84,7 +91,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "it": [ @@ -95,7 +103,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "ja": [ @@ -106,7 +115,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "ne": [ @@ -117,7 +127,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "nl": [ @@ -129,7 +140,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "pl": [ @@ -140,7 +152,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "pt": [ @@ -151,7 +164,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "ru": [ @@ -162,7 +176,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "tr": [ @@ -173,7 +188,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "uk": [ @@ -184,7 +200,8 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ], "zh": [ @@ -195,6 +212,7 @@ "endless_playback", "delete_playlist", "delete_playlist_confirmation", - "local_tracks" + "local_tracks", + "song_link" ] }