From 30e27b7ece479bf8276bc4715acb8d2d392ce329 Mon Sep 17 00:00:00 2001 From: BrightDV <92821484+BrightDV@users.noreply.github.com> Date: Wed, 26 Feb 2025 20:24:52 +0100 Subject: [PATCH] feat: remove youtube player, remove piped setting add a button to watch on youtube instead --- lib/Screens/free_practice_screen.dart | 2 +- lib/Screens/race_details.dart | 8 +- lib/Screens/settings.dart | 46 ------- lib/Screens/test.dart | 4 +- lib/api/article_parts.dart | 5 + lib/helpers/driver_result_item.dart | 2 +- lib/helpers/news.dart | 168 ++++++++++++++++---------- lib/l10n/app_ar.arb | 6 +- lib/l10n/app_bn.arb | 6 +- lib/l10n/app_de.arb | 6 +- lib/l10n/app_en.arb | 8 +- lib/l10n/app_es.arb | 6 +- lib/l10n/app_fi.arb | 6 +- lib/l10n/app_fr.arb | 6 +- lib/l10n/app_hi.arb | 6 +- lib/l10n/app_hu.arb | 6 +- lib/l10n/app_it.arb | 6 +- lib/l10n/app_nb.arb | 6 +- lib/l10n/app_nl.arb | 6 +- lib/l10n/app_pa.arb | 6 +- lib/l10n/app_pt.arb | 6 +- lib/l10n/app_sw.arb | 6 +- lib/l10n/app_ta.arb | 6 +- lib/l10n/app_tr.arb | 6 +- lib/l10n/app_zh.arb | 6 +- 25 files changed, 176 insertions(+), 169 deletions(-) diff --git a/lib/Screens/free_practice_screen.dart b/lib/Screens/free_practice_screen.dart index 9f5fc368..10ab5d88 100644 --- a/lib/Screens/free_practice_screen.dart +++ b/lib/Screens/free_practice_screen.dart @@ -176,7 +176,7 @@ class FreePracticeResultsList extends StatelessWidget { FontAwesomeIcons.youtube, ), title: Text( - AppLocalizations.of(context)!.watchOnYoutube, + AppLocalizations.of(context)!.watchHighlightsOnYoutube, textAlign: TextAlign.center, ), onTap: () async { diff --git a/lib/Screens/race_details.dart b/lib/Screens/race_details.dart index 1aa6c9d9..2a44b4bc 100644 --- a/lib/Screens/race_details.dart +++ b/lib/Screens/race_details.dart @@ -742,7 +742,8 @@ class _RaceResultsProviderState extends State { FontAwesomeIcons.youtube, ), title: Text( - AppLocalizations.of(context)!.watchOnYoutube, + AppLocalizations.of(context)! + .watchHighlightsOnYoutube, textAlign: TextAlign.center, ), onTap: () async { @@ -826,7 +827,8 @@ class _RaceResultsProviderState extends State { FontAwesomeIcons.youtube, ), title: Text( - AppLocalizations.of(context)!.watchOnYoutube, + AppLocalizations.of(context)! + .watchHighlightsOnYoutube, textAlign: TextAlign.center, ), onTap: () async { @@ -983,7 +985,7 @@ class _SprintResultsProviderState extends State { ), title: Text( AppLocalizations.of(context)! - .watchOnYoutube, + .watchHighlightsOnYoutube, textAlign: TextAlign.center, ), onTap: () async { diff --git a/lib/Screens/settings.dart b/lib/Screens/settings.dart index 5c89fcae..b3b305d0 100644 --- a/lib/Screens/settings.dart +++ b/lib/Screens/settings.dart @@ -434,8 +434,6 @@ class _PlayerCardState extends State { Widget build(BuildContext context) { int playerQuality = Hive.box('settings').get('playerQuality', defaultValue: 360) as int; - String pipedApiUrl = Hive.box('settings') - .get('pipedApiUrl', defaultValue: 'pipedapi.kavin.rocks') as String; bool swipeUpToEnterFullScreen = Hive.box('settings') .get('swipeUpToEnterFullScreen', defaultValue: false) as bool; return Card( @@ -498,50 +496,6 @@ class _PlayerCardState extends State { ).toList(), ), ), - ListTile( - title: Text( - 'Piped Proxy URL', - ), - subtitle: Text( - AppLocalizations.of(context)!.pipedApiUrlSub, - style: TextStyle( - fontSize: 12, - ), - ), - onTap: () {}, - trailing: DropdownButton( - value: pipedApiUrl, - onChanged: (String? newValue) { - if (newValue != null) { - setState( - () { - pipedApiUrl = newValue; - Hive.box('settings').put('pipedApiUrl', newValue); - }, - ); - } - }, - items: [ - 'pipedapi.kavin.rocks', - 'pipedapi.syncpundit.io', - 'pipedapi.adminforge.de', - 'watchapi.whatever.social', - 'api.piped.privacydev.net', - ].map>( - (String value) { - return DropdownMenuItem( - value: value, - child: Text( - value, - style: TextStyle( - fontSize: 12, - ), - ), - ); - }, - ).toList(), - ), - ), if (!kIsWeb) SwitchListTile( title: Text( diff --git a/lib/Screens/test.dart b/lib/Screens/test.dart index a505bd4f..bc9c8a5d 100644 --- a/lib/Screens/test.dart +++ b/lib/Screens/test.dart @@ -26,8 +26,8 @@ class TestScreen extends StatelessWidget { @override Widget build(BuildContext context) { return const ArticleScreen( - '2H7KjYuyfv7tSQ24RH47wM', - 'circuit', + '1AbyIc0y5jDaRudNv2Mc5s', + 'youtube video', true, ); } diff --git a/lib/api/article_parts.dart b/lib/api/article_parts.dart index 3993a72e..40fc5ebf 100644 --- a/lib/api/article_parts.dart +++ b/lib/api/article_parts.dart @@ -75,6 +75,8 @@ class ArticleParts extends StatelessWidget { youtubeId: article.articleHero['fields'] ['youTubeVideoId'] ?? '', + youtubeThumbnail: + article.articleHero['fields']['image']['url'] ?? '', player: article.articleHero['fields']['player'], articleChampionship: articleChampionship, ), @@ -266,6 +268,9 @@ class WidgetsList extends StatelessWidget { ? VideoRenderer( '', youtubeId: element['fields']['youTubeVideoId'], + youtubeThumbnail: article.articleHero['fields'] + ['image']['url'] ?? + '', ) : element['contentType'] == 'atomImage' ? ImageRenderer( diff --git a/lib/helpers/driver_result_item.dart b/lib/helpers/driver_result_item.dart index 40830e60..1cbe9d2f 100644 --- a/lib/helpers/driver_result_item.dart +++ b/lib/helpers/driver_result_item.dart @@ -649,7 +649,7 @@ class QualificationDriversResultsList extends StatelessWidget { FontAwesomeIcons.youtube, ), title: Text( - AppLocalizations.of(context)!.watchOnYoutube, + AppLocalizations.of(context)!.watchHighlightsOnYoutube, textAlign: TextAlign.center, ), onTap: () async { diff --git a/lib/helpers/news.dart b/lib/helpers/news.dart index 1dc0a8a0..f78e2be0 100644 --- a/lib/helpers/news.dart +++ b/lib/helpers/news.dart @@ -41,7 +41,6 @@ import 'package:flutter_markdown/flutter_markdown.dart'; import 'package:fluttertoast/fluttertoast.dart'; import 'package:go_router/go_router.dart'; import 'package:hive_flutter/hive_flutter.dart'; -import 'package:http/http.dart'; import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; import 'package:loading_indicator/loading_indicator.dart'; import 'package:river_player/river_player.dart'; @@ -1839,6 +1838,7 @@ class VideoRenderer extends StatelessWidget { final String videoId; final bool? autoplay; final String? youtubeId; + final String? youtubeThumbnail; final String? heroTag; final String? caption; final Function? update; @@ -1850,6 +1850,7 @@ class VideoRenderer extends StatelessWidget { Key? key, this.autoplay, this.youtubeId, + this.youtubeThumbnail, this.heroTag, this.caption, this.update, @@ -1857,7 +1858,7 @@ class VideoRenderer extends StatelessWidget { this.articleChampionship, }) : super(key: key); - Future> getYouTubeVideoLinks(String videoId) async { + /* Future> getYouTubeVideoLinks(String videoId) async { String playerQuality = "${Hive.box('settings').get('playerQuality', defaultValue: 360) as int}p"; String pipedApiUrl = Hive.box('settings') @@ -1898,6 +1899,7 @@ class VideoRenderer extends StatelessWidget { urls['videos'].insert(0, defaultUrl); return urls; } + */ @override Widget build(BuildContext context) { @@ -1907,76 +1909,118 @@ class VideoRenderer extends StatelessWidget { : width > 1000 ? 500 : 400; - return FutureBuilder>( - future: (youtubeId ?? '') != '' - ? getYouTubeVideoLinks(youtubeId!) - : BrightCove().getVideoLinks( + return (youtubeId ?? '') != '' + ? Stack( + children: [ + CachedNetworkImage( + imageUrl: youtubeThumbnail!, + placeholder: (context, url) => SizedBox( + height: MediaQuery.of(context).size.width / (16 / 9), + child: const LoadingIndicatorUtil( + replaceImage: true, + fullBorderRadius: false, + borderRadius: false, + ), + ), + errorWidget: (context, url, error) => ImageRequestErrorUtil( + height: MediaQuery.of(context).size.width / (16 / 9), + ), + fadeOutDuration: const Duration(milliseconds: 100), + fadeInDuration: const Duration(seconds: 1), + colorBlendMode: BlendMode.darken, + color: Colors.black.withOpacity(0.5), + ), + Center( + child: ElevatedButton.icon( + onPressed: () async => await launchUrl( + Uri.parse('https://youtube.com/watch?v=$youtubeId!'), + mode: LaunchMode.externalApplication, + ), + label: Padding( + padding: EdgeInsets.only(top: 15, right: 10, bottom: 15), + child: Text(AppLocalizations.of(context)!.watchOnYouTube), + ), + icon: Padding( + padding: EdgeInsets.only(top: 15, left: 10, bottom: 15), + child: Icon( + Icons.play_arrow_outlined, + size: 28, + ), + ), + ), + ) + ], + ) + : FutureBuilder>( + future: BrightCove().getVideoLinks( videoId, player: player, articleChampionship: articleChampionship, ), - builder: (context, snapshot) => snapshot.hasError - ? RequestErrorWidget( - snapshot.error.toString(), - ) - : snapshot.hasData - ? Column( - children: [ - kIsWeb - ? SizedBox( - height: width / (16 / 9), - child: InAppWebView( - initialUrlRequest: URLRequest( - url: WebUri( - snapshot.data!['videos'][0], + builder: (context, snapshot) => snapshot.hasError + ? RequestErrorWidget( + snapshot.error.toString(), + ) + : snapshot.hasData + ? Column( + children: [ + kIsWeb + ? SizedBox( + height: width / (16 / 9), + child: InAppWebView( + initialUrlRequest: URLRequest( + url: WebUri( + snapshot.data!['videos'][0], + ), + ), + initialSettings: InAppWebViewSettings( + preferredContentMode: + UserPreferredContentMode.DESKTOP, + transparentBackground: true, + iframeAllowFullscreen: true, + mediaPlaybackRequiresUserGesture: + !(autoplay ?? false), + ), + ), + ) + : BetterPlayerVideoPlayer( + snapshot.data!, + videoId, + autoplay == null ? false : autoplay!, + heroTag ?? '', + Theme.of(context).colorScheme.surface, + (youtubeId ?? '') != '', + update: update, ), + if (caption != null) + Padding( + padding: const EdgeInsets.only( + top: 7, + left: 10, + right: 10, ), - initialSettings: InAppWebViewSettings( - preferredContentMode: - UserPreferredContentMode.DESKTOP, - transparentBackground: true, - iframeAllowFullscreen: true, - mediaPlaybackRequiresUserGesture: - !(autoplay ?? false), + child: Text( + caption!, + textAlign: TextAlign.center, + style: TextStyle( + color: Theme.of(context) + .textTheme + .labelSmall! + .color, + ), ), ), - ) - : BetterPlayerVideoPlayer( - snapshot.data!, - videoId, - autoplay == null ? false : autoplay!, - heroTag ?? '', - Theme.of(context).colorScheme.surface, - (youtubeId ?? '') != '', - update: update, - ), - if (caption != null) - Padding( - padding: const EdgeInsets.only( - top: 7, - left: 10, - right: 10, - ), - child: Text( - caption!, - textAlign: TextAlign.center, - style: TextStyle( - color: - Theme.of(context).textTheme.labelSmall!.color, - ), + ], + ) + : SizedBox( + height: MediaQuery.of(context).size.width / (16 / 9), + child: const LoadingIndicatorUtil( + replaceImage: true, + fullBorderRadius: false, + borderRadius: false, ), ), - ], - ) - : SizedBox( - height: MediaQuery.of(context).size.width / (16 / 9), - child: const LoadingIndicatorUtil( - replaceImage: true, - fullBorderRadius: false, - borderRadius: false, - ), - ), - ); + ); } } diff --git a/lib/l10n/app_ar.arb b/lib/l10n/app_ar.arb index cdfc9460..a2f2353d 100644 --- a/lib/l10n/app_ar.arb +++ b/lib/l10n/app_ar.arb @@ -25,8 +25,8 @@ "@filter": {}, "driverAbbreviation": "سائق", "@driverAbbreviation": {}, - "watchOnYoutube": "شاهد أبرز الأحداث على اليوتيوب", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "شاهد أبرز الأحداث على اليوتيوب", + "@watchHighlightsOnYoutube": {}, "victories": "انتصارات", "@victories": {}, "from": "من ", @@ -315,4 +315,4 @@ "@fontDescription": {}, "monthAbbreviationFebruary": "فبراير", "@monthAbbreviationFebruary": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_bn.arb b/lib/l10n/app_bn.arb index e643ef41..91b0ff70 100644 --- a/lib/l10n/app_bn.arb +++ b/lib/l10n/app_bn.arb @@ -233,8 +233,8 @@ "@viewHighlights": {}, "viewMore": "আরো দেখুন", "@viewMore": {}, - "watchOnYoutube": "YouTube এ হাইলাইট দেখুন", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "YouTube এ হাইলাইট দেখুন", + "@watchHighlightsOnYoutube": {}, "yes": "হ্যাঁ", "@yes": {}, "errorOccurredDetails": "অ্যাপটি একটি অজানা ত্রুটির সম্মুখীন হয়েছে ।\nঅনুগ্রহ করে একটু পরে আবার চেষ্টা করুন।", @@ -385,4 +385,4 @@ "@refreshChampionshipDataSub": {}, "teamBase": "বেস", "@teamBase": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 4e8e6038..ea4212e0 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -211,8 +211,8 @@ "@victory": {}, "viewHighlights": "Highlights ansehen", "@viewHighlights": {}, - "watchOnYoutube": "Highlights auf Youtube anzeigen", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Highlights auf Youtube anzeigen", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Weltmeisterschaft", "@worldChampionships": {}, "about": "Über", @@ -353,4 +353,4 @@ "@refreshChampionshipData": {}, "refreshChampionshipDataSub": "Meisterschaftsdaten vor einer neuen Saison auffrischen.", "@refreshChampionshipDataSub": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 40f2547c..bcf2adbe 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -245,8 +245,6 @@ "@openingWithInAppBrowser": {}, "other": "Other", "@other": {}, - "pipedApiUrlSub": "Used for YouTube videos.", - "@pipedApiUrlSub": {}, "placeOfBirth": "Place of birth", "@placeOfBirth": {}, "player": "Player", @@ -391,8 +389,10 @@ "@viewMore": {}, "viewResults": "View results", "@viewResults": {}, - "watchOnYoutube": "Watch highlights on YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Watch highlights on YouTube", + "@watchHighlightsOnYoutube": {}, + "watchOnYouTube": "Watch on YouTube", + "@watchOnYouTube": {}, "worldChampionships": "World Championships", "@worldChampionships": {}, "yes": "Yes", diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 5448e399..d11a7592 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -219,8 +219,8 @@ "@victories": {}, "viewResults": "Ver resultados", "@viewResults": {}, - "watchOnYoutube": "Ver los mejores momentos en YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Ver los mejores momentos en YouTube", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Campeonatos del mundo", "@worldChampionships": {}, "history": "Historia", @@ -387,4 +387,4 @@ "@refreshChampionshipData": {}, "refreshChampionshipDataSub": "Actualice los datos del campeonato antes de una nueva temporada.", "@refreshChampionshipDataSub": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_fi.arb b/lib/l10n/app_fi.arb index 48b70fec..bd0dfdfc 100644 --- a/lib/l10n/app_fi.arb +++ b/lib/l10n/app_fi.arb @@ -243,8 +243,8 @@ "@viewMore": {}, "viewResults": "Näytä tulokset", "@viewResults": {}, - "watchOnYoutube": "Katso kohokohdat YouTubessa", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Katso kohokohdat YouTubessa", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Maailmanmestaruuskilpailut", "@worldChampionships": {}, "yes": "Kyllä", @@ -367,4 +367,4 @@ "@teamBase": {}, "technicalChief": "Tekninen päällikkö", "@technicalChief": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 8083d06c..094fe3d8 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -391,8 +391,10 @@ "@viewMore": {}, "viewResults": "Voir les résultats", "@viewResults": {}, - "watchOnYoutube": "Voir le résumé sur YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Voir le résumé sur YouTube", + "@watchHighlightsOnYoutube": {}, + "watchOnYouTube": "Voir sur YouTube", + "@watchOnYouTube": {}, "worldChampionships": "Champion du monde", "@worldChampionships": {}, "yes": "Oui", diff --git a/lib/l10n/app_hi.arb b/lib/l10n/app_hi.arb index 789bdf2b..0312d043 100644 --- a/lib/l10n/app_hi.arb +++ b/lib/l10n/app_hi.arb @@ -239,8 +239,8 @@ "@viewHighlights": {}, "viewResults": "परिणाम देखें", "@viewResults": {}, - "watchOnYoutube": "YouTube पर मुख्य अंश देखें", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "YouTube पर मुख्य अंश देखें", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "विश्व चैंपियनशिप", "@worldChampionships": {}, "filter": "फिल्टर", @@ -387,4 +387,4 @@ "@refreshChampionshipData": {}, "refreshChampionshipDataSub": "नये सत्र से पहले चैम्पियनशिप डेटा को ताज़ा करें।", "@refreshChampionshipDataSub": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_hu.arb b/lib/l10n/app_hu.arb index 869de4f1..5e5cc21c 100644 --- a/lib/l10n/app_hu.arb +++ b/lib/l10n/app_hu.arb @@ -261,8 +261,8 @@ "@updates": {}, "viewMore": "TÖBB MEGTEKINTÉSE", "@viewMore": {}, - "watchOnYoutube": "Kiemelések megtekintése YouTube-on", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Kiemelések megtekintése YouTube-on", + "@watchHighlightsOnYoutube": {}, "openQuiz": "Nyílt kvíz", "@openQuiz": {}, "quiz": "Kvíz", @@ -279,4 +279,4 @@ "@startingGrid": {}, "openingWithInAppBrowser": "Megnyitás az alkalmazáson belüli böngészővel", "@openingWithInAppBrowser": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_it.arb b/lib/l10n/app_it.arb index e2f1c48c..d4c8fd5c 100644 --- a/lib/l10n/app_it.arb +++ b/lib/l10n/app_it.arb @@ -261,8 +261,8 @@ "@victory": {}, "victories": "Vittorie", "@victories": {}, - "watchOnYoutube": "Guarda i momenti salienti su YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Guarda i momenti salienti su YouTube", + "@watchHighlightsOnYoutube": {}, "quiz": "Quiz", "@quiz": {}, "openQuiz": "Aprire il quiz", @@ -385,4 +385,4 @@ "@useOfficialDataSourceSub": {}, "technicalChief": "Direttore Tecnico", "@technicalChief": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_nb.arb b/lib/l10n/app_nb.arb index 2a1b0a3e..03c3ce54 100644 --- a/lib/l10n/app_nb.arb +++ b/lib/l10n/app_nb.arb @@ -179,8 +179,8 @@ "@victories": {}, "viewResults": "Vis resultater", "@viewResults": {}, - "watchOnYoutube": "Vis høydepunkter på YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Vis høydepunkter på YouTube", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Verdensmesterskap", "@worldChampionships": {}, "share": "Del", @@ -291,4 +291,4 @@ "@server": {}, "yes": "Ja", "@yes": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_nl.arb b/lib/l10n/app_nl.arb index f42a20b1..f7384c21 100644 --- a/lib/l10n/app_nl.arb +++ b/lib/l10n/app_nl.arb @@ -189,8 +189,8 @@ "@raceFirstLetter": {}, "playerQuality": "Kwaliteit video's", "@playerQuality": {}, - "watchOnYoutube": "Hoogtepunten op YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Hoogtepunten op YouTube", + "@watchHighlightsOnYoutube": {}, "victories": "Overwinningen", "@victories": {}, "newsLayout": "Opmaak Nieuws", @@ -385,4 +385,4 @@ "@useOfficialDataSourceSub": {}, "copyTitle": "Titel kopiëren", "@copyTitle": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_pa.arb b/lib/l10n/app_pa.arb index f1134f46..b1054778 100644 --- a/lib/l10n/app_pa.arb +++ b/lib/l10n/app_pa.arb @@ -193,8 +193,8 @@ "@fontDescription": {}, "laps": "ਲੈਪਸ", "@laps": {}, - "watchOnYoutube": "ਯੂਟਿਊਬ 'ਤੇ ਮੁੱਖ ਅੰਸ਼ ਵੇਖੋ", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "ਯੂਟਿਊਬ 'ਤੇ ਮੁੱਖ ਅੰਸ਼ ਵੇਖੋ", + "@watchHighlightsOnYoutube": {}, "sessionCompleted": "ਸੈਸ਼ਨ ਪੂਰਾ ਹੋ ਚੁੱਕਿਆ।", "@sessionCompleted": {}, "sprintQualifyings": "ਸਪ੍ਰਿੰਟ ਕੁਆਲੀਫਾਈਇੰਗਜ਼", @@ -387,4 +387,4 @@ "@twelveHourClock": {}, "useOfficialDataSourceSub": "ਅਧਿਕਾਰਤ ਮੋਬਾਈਲ ਐਪ ਦੇ ਡੇਟਾ ਸਰੋਤ ਦੀ ਵਰਤੋਂ ਕਰੋ। ਇਹ ਤੇਜ਼ ਨਤੀਜੇ ਦਿੰਦਾ ਹੈ, ਪਰ ਸਾਰੇ ਵੇਰਵੇ ਉਪਲਬਧ ਨਹੀਂ ਹਨ। ਹੋਰ ਵੇਰਵਿਆਂ ਲਈ ਲੰਬੇ ਸਮੇਂ ਲਈ ਦਬਾਓ।", "@useOfficialDataSourceSub": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index f5e55cf1..5ac6023e 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -219,8 +219,8 @@ "@victories": {}, "viewResults": "Ver resultados", "@viewResults": {}, - "watchOnYoutube": "Veja os destaques no YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Veja os destaques no YouTube", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Campeonatos do Mundo", "@worldChampionships": {}, "history": "Histórico", @@ -329,4 +329,4 @@ "@copyTitle": {}, "pleaseWait": "Espere, por favor...", "@pleaseWait": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_sw.arb b/lib/l10n/app_sw.arb index 033505c7..26c52f34 100644 --- a/lib/l10n/app_sw.arb +++ b/lib/l10n/app_sw.arb @@ -309,10 +309,10 @@ "@viewMore": {}, "viewResults": "Ona matokeo", "@viewResults": {}, - "watchOnYoutube": "Tazama matokeo muhimu kwenye YouTube", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Tazama matokeo muhimu kwenye YouTube", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Mabingwa wa Dunia", "@worldChampionships": {}, "yes": "Ndio", "@yes": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_ta.arb b/lib/l10n/app_ta.arb index 85b62e85..239f2c80 100644 --- a/lib/l10n/app_ta.arb +++ b/lib/l10n/app_ta.arb @@ -381,8 +381,8 @@ "@viewMore": {}, "viewResults": "முடிவுகளைக் காண்க", "@viewResults": {}, - "watchOnYoutube": "YouTube இல் சிறப்பம்சங்களைப் பாருங்கள்", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "YouTube இல் சிறப்பம்சங்களைப் பாருங்கள்", + "@watchHighlightsOnYoutube": {}, "yes": "ஆம்", "@yes": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_tr.arb b/lib/l10n/app_tr.arb index ab141e8c..922584f3 100644 --- a/lib/l10n/app_tr.arb +++ b/lib/l10n/app_tr.arb @@ -179,8 +179,8 @@ "@victory": {}, "victories": "Zafer", "@victories": {}, - "watchOnYoutube": "Önemli anları YouTube'dan izleyin", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "Önemli anları YouTube'dan izleyin", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "Dünya Şampiyonlukları", "@worldChampionships": {}, "openInBrowser": "Web tarayıcısında aç", @@ -385,4 +385,4 @@ "@chassis": {}, "firstTeamEntry": "Birinci Takım Girişi", "@firstTeamEntry": {} -} +} \ No newline at end of file diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index acb22577..8772c38a 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -245,8 +245,8 @@ "@viewMore": {}, "viewResults": "查看结果", "@viewResults": {}, - "watchOnYoutube": "在油管看集锦", - "@watchOnYoutube": {}, + "watchHighlightsOnYoutube": "在油管看集锦", + "@watchHighlightsOnYoutube": {}, "worldChampionships": "世界冠军", "@worldChampionships": {}, "yes": "是", @@ -325,4 +325,4 @@ "@listen": {}, "useOfficialWebview": "使用官网版本现场直播", "@useOfficialWebview": {} -} +} \ No newline at end of file