From 5578076fdb9089b658894f32f38865d3bc9cdc20 Mon Sep 17 00:00:00 2001 From: PartyDonut <42371342+PartyDonut@users.noreply.github.com> Date: Sat, 5 Apr 2025 23:36:48 +0200 Subject: [PATCH] chore: Move to different iconsax library (#301) Co-authored-by: PartyDonut --- lib/models/account_model.dart | 10 +-- lib/models/collection_types.dart | 17 +++-- lib/models/item_base_model.dart | 74 +++++++++---------- lib/models/syncing/sync_item.dart | 6 +- lib/models/video_stream_model.dart | 8 +- .../book_viewer/book_viewer_controls.dart | 12 +-- .../collections/add_to_collection.dart | 4 +- .../details_screens/book_detail_screen.dart | 14 ++-- .../episode_detail_screen.dart | 10 +-- .../details_screens/movie_detail_screen.dart | 10 +-- .../details_screens/season_detail_screen.dart | 10 +-- .../details_screens/series_detail_screen.dart | 10 +-- lib/screens/home_screen.dart | 18 ++--- .../library_search/library_search_screen.dart | 48 ++++++------ .../widgets/library_filter_chips.dart | 8 +- .../widgets/library_saved_filters.dart | 10 +-- .../library_search/widgets/library_views.dart | 12 +-- .../widgets/suggestion_search_bar.dart | 4 +- lib/screens/login/lock_screen.dart | 6 +- lib/screens/login/login_edit_user.dart | 4 +- lib/screens/login/login_screen.dart | 12 +-- lib/screens/login/login_user_grid.dart | 6 +- .../widgets/discover_servers_widget.dart | 10 +-- lib/screens/metadata/edit_item.dart | 4 +- .../metadata/edit_screens/edit_fields.dart | 4 +- lib/screens/metadata/identifty_screen.dart | 4 +- lib/screens/metadata/info_screen.dart | 4 +- .../photo_viewer/photo_viewer_controls.dart | 6 +- .../photo_viewer/photo_viewer_screen.dart | 26 +++---- .../photo_viewer/simple_video_player.dart | 4 +- lib/screens/playlists/add_to_playlists.dart | 4 +- lib/screens/settings/about_settings_page.dart | 4 +- .../client_settings_download.dart | 4 +- lib/screens/settings/settings_screen.dart | 20 ++--- .../widgets/settings_message_box.dart | 8 +- .../shared/authenticate_button_options.dart | 4 +- lib/screens/shared/chips/category_chip.dart | 6 +- lib/screens/shared/detail_scaffold.dart | 8 +- lib/screens/shared/file_picker.dart | 4 +- .../shared/media/banner_play_button.dart | 4 +- lib/screens/shared/media/carousel_banner.dart | 6 +- .../media/components/media_play_button.dart | 4 +- .../shared/media/components/poster_image.dart | 6 +- .../shared/media/episode_details_list.dart | 6 +- .../shared/media/expanding_overview.dart | 6 +- lib/screens/shared/media/media_banner.dart | 4 +- .../shared/media/poster_list_item.dart | 4 +- lib/screens/shared/nested_sliver_appbar.dart | 6 +- lib/screens/syncing/sync_button.dart | 10 +-- lib/screens/syncing/sync_item_details.dart | 14 ++-- lib/screens/syncing/sync_list_item.dart | 6 +- lib/screens/syncing/sync_widgets.dart | 8 +- lib/screens/syncing/synced_screen.dart | 4 +- .../syncing/widgets/sync_status_overlay.dart | 6 +- .../syncing/widgets/synced_episode_item.dart | 6 +- .../video_playback_information.dart | 4 +- .../components/video_player_next_wrapper.dart | 10 +-- .../video_player_options_sheet.dart | 4 +- .../components/video_volume_slider.dart | 8 +- .../video_player/video_player_controls.dart | 32 ++++---- .../item_base_model_extensions.dart | 34 ++++----- lib/util/sticky_header_text.dart | 4 +- .../components/floating_player_bar.dart | 8 +- .../components/navigation_body.dart | 6 +- .../components/navigation_drawer.dart | 12 +-- lib/widgets/shared/full_screen_button.dart | 4 +- .../shared/full_screen_button_web.dart | 4 +- lib/widgets/shared/horizontal_list.dart | 6 +- .../shared/progress_floating_button.dart | 4 +- pubspec.lock | 16 ++-- pubspec.yaml | 2 +- 71 files changed, 349 insertions(+), 346 deletions(-) diff --git a/lib/models/account_model.dart b/lib/models/account_model.dart index b0cb85d..b5070d2 100644 --- a/lib/models/account_model.dart +++ b/lib/models/account_model.dart @@ -4,7 +4,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart'; @@ -85,13 +85,13 @@ enum Authentication { IconData get icon { switch (this) { case Authentication.none: - return IconsaxBold.arrow_bottom; + return IconsaxPlusBold.arrow_bottom; case Authentication.autoLogin: - return IconsaxOutline.login_1; + return IconsaxPlusLinear.login_1; case Authentication.biometrics: - return IconsaxOutline.finger_scan; + return IconsaxPlusLinear.finger_scan; case Authentication.passcode: - return IconsaxOutline.password_check; + return IconsaxPlusLinear.password_check; } } diff --git a/lib/models/collection_types.dart b/lib/models/collection_types.dart index 07a6922..10867df 100644 --- a/lib/models/collection_types.dart +++ b/lib/models/collection_types.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.enums.swagger.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart'; @@ -31,18 +31,21 @@ extension CollectionTypeExtension on CollectionType { IconData getIconType(bool outlined) { switch (this) { case CollectionType.movies: - return outlined ? IconsaxOutline.video_horizontal : IconsaxBold.video_horizontal; + return outlined ? IconsaxPlusLinear.video_horizontal : IconsaxPlusBold.video_horizontal; case CollectionType.tvshows: - return outlined ? IconsaxOutline.video_vertical : IconsaxBold.video_vertical; + return outlined ? IconsaxPlusLinear.video_vertical : IconsaxPlusBold.video_vertical; case CollectionType.boxsets: + return outlined ? IconsaxPlusLinear.box : IconsaxPlusBold.box; case CollectionType.folders: - return outlined ? IconsaxOutline.folder : IconsaxBold.folder; + return outlined ? IconsaxPlusLinear.folder_2 : IconsaxPlusBold.folder_2; case CollectionType.homevideos: - return outlined ? IconsaxOutline.gallery : IconsaxBold.gallery; + return outlined ? IconsaxPlusLinear.gallery : IconsaxPlusBold.gallery; case CollectionType.books: - return outlined ? IconsaxOutline.book : Icons.book_rounded; + return outlined ? IconsaxPlusLinear.book : IconsaxPlusBold.book; + case CollectionType.playlists: + return outlined ? IconsaxPlusLinear.archive : IconsaxPlusBold.archive; default: - return IconsaxOutline.info_circle; + return IconsaxPlusLinear.information; } } } diff --git a/lib/models/item_base_model.dart b/lib/models/item_base_model.dart index a900ac0..ee16017 100644 --- a/lib/models/item_base_model.dart +++ b/lib/models/item_base_model.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; import 'package:dart_mappable/dart_mappable.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.enums.swagger.dart'; @@ -72,7 +72,7 @@ class ItemBaseModel with ItemBaseModelMappable { ? Row( children: [ const Icon( - IconsaxBold.star_1, + IconsaxPlusBold.star_1, size: 14, color: Colors.yellowAccent, ), @@ -85,7 +85,7 @@ class ItemBaseModel with ItemBaseModelMappable { ? Row( children: [ const Icon( - IconsaxBold.star_1, + IconsaxPlusBold.star_1, size: 14, color: Colors.yellowAccent, ), @@ -234,72 +234,72 @@ class ItemBaseModel with ItemBaseModelMappable { // Currently supported types enum FladderItemType { baseType( - icon: IconsaxOutline.folder_2, - selectedicon: IconsaxBold.folder_2, + icon: IconsaxPlusLinear.folder_2, + selectedicon: IconsaxPlusBold.folder_2, ), audio( - icon: IconsaxOutline.music, - selectedicon: IconsaxBold.music, + icon: IconsaxPlusLinear.music, + selectedicon: IconsaxPlusBold.music, ), musicAlbum( - icon: IconsaxOutline.music, - selectedicon: IconsaxBold.music, + icon: IconsaxPlusLinear.music, + selectedicon: IconsaxPlusBold.music, ), musicVideo( - icon: IconsaxOutline.music, - selectedicon: IconsaxBold.music, + icon: IconsaxPlusLinear.music, + selectedicon: IconsaxPlusBold.music, ), collectionFolder( - icon: IconsaxOutline.music, - selectedicon: IconsaxBold.music, + icon: IconsaxPlusLinear.music, + selectedicon: IconsaxPlusBold.music, ), video( - icon: IconsaxOutline.video, - selectedicon: IconsaxBold.video, + icon: IconsaxPlusLinear.video, + selectedicon: IconsaxPlusBold.video, ), movie( - icon: IconsaxOutline.video_horizontal, - selectedicon: IconsaxBold.video_horizontal, + icon: IconsaxPlusLinear.video_horizontal, + selectedicon: IconsaxPlusBold.video_horizontal, ), series( - icon: IconsaxOutline.video_vertical, - selectedicon: IconsaxBold.video_vertical, + icon: IconsaxPlusLinear.video_vertical, + selectedicon: IconsaxPlusBold.video_vertical, ), season( - icon: IconsaxOutline.video_vertical, - selectedicon: IconsaxBold.video_vertical, + icon: IconsaxPlusLinear.video_vertical, + selectedicon: IconsaxPlusBold.video_vertical, ), episode( - icon: IconsaxOutline.video_vertical, - selectedicon: IconsaxBold.video_vertical, + icon: IconsaxPlusLinear.video_vertical, + selectedicon: IconsaxPlusBold.video_vertical, ), photo( - icon: IconsaxOutline.picture_frame, - selectedicon: IconsaxBold.picture_frame, + icon: IconsaxPlusLinear.picture_frame, + selectedicon: IconsaxPlusBold.picture_frame, ), person( - icon: IconsaxOutline.user, - selectedicon: IconsaxBold.user, + icon: IconsaxPlusLinear.user, + selectedicon: IconsaxPlusBold.user, ), photoAlbum( - icon: IconsaxOutline.gallery, - selectedicon: IconsaxBold.gallery, + icon: IconsaxPlusLinear.gallery, + selectedicon: IconsaxPlusBold.gallery, ), folder( - icon: IconsaxOutline.folder, - selectedicon: IconsaxBold.folder, + icon: IconsaxPlusLinear.folder, + selectedicon: IconsaxPlusBold.folder, ), boxset( - icon: IconsaxOutline.bookmark, - selectedicon: IconsaxBold.bookmark, + icon: IconsaxPlusLinear.bookmark, + selectedicon: IconsaxPlusBold.bookmark, ), playlist( - icon: IconsaxOutline.archive_book, - selectedicon: IconsaxBold.archive_book, + icon: IconsaxPlusLinear.archive_book, + selectedicon: IconsaxPlusBold.archive_book, ), book( - icon: IconsaxOutline.book, - selectedicon: IconsaxBold.book, + icon: IconsaxPlusLinear.book, + selectedicon: IconsaxPlusBold.book, ); const FladderItemType({required this.icon, required this.selectedicon}); diff --git a/lib/models/syncing/sync_item.dart b/lib/models/syncing/sync_item.dart index 26840c2..035fdab 100644 --- a/lib/models/syncing/sync_item.dart +++ b/lib/models/syncing/sync_item.dart @@ -4,7 +4,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:background_downloader/background_downloader.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:path/path.dart'; @@ -159,11 +159,11 @@ class SyncedItem with _$SyncedItem { enum SyncStatus { complete( Color.fromARGB(255, 141, 214, 58), - IconsaxOutline.tick_circle, + IconsaxPlusLinear.tick_circle, ), partially( Color.fromARGB(255, 221, 135, 23), - IconsaxOutline.more_circle, + IconsaxPlusLinear.more_circle, ), ; diff --git a/lib/models/video_stream_model.dart b/lib/models/video_stream_model.dart index 0a8f966..4083802 100644 --- a/lib/models/video_stream_model.dart +++ b/lib/models/video_stream_model.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; // ignore_for_file: public_member_api_docs, sort_constructors_first import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart'; @@ -19,9 +19,9 @@ enum PlaybackType { transcode; IconData get icon => switch (this) { - PlaybackType.offline => IconsaxOutline.cloud, - PlaybackType.directStream => IconsaxOutline.arrow_right_1, - PlaybackType.transcode => IconsaxOutline.convert, + PlaybackType.offline => IconsaxPlusLinear.cloud, + PlaybackType.directStream => IconsaxPlusLinear.arrow_right_1, + PlaybackType.transcode => IconsaxPlusLinear.convert, }; String get name { diff --git a/lib/screens/book_viewer/book_viewer_controls.dart b/lib/screens/book_viewer/book_viewer_controls.dart index 76289fa..b33bb83 100644 --- a/lib/screens/book_viewer/book_viewer_controls.dart +++ b/lib/screens/book_viewer/book_viewer_controls.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:extended_image/extended_image.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:screen_brightness/screen_brightness.dart'; import 'package:wakelock_plus/wakelock_plus.dart'; @@ -239,7 +239,7 @@ class _BookViewerControlsState extends ConsumerState { : nextChapter != null ? () async => await loadNextBook(nextChapter) : null, - icon: const Icon(IconsaxOutline.backward), + icon: const Icon(IconsaxPlusLinear.backward), ), ), const SizedBox(width: 8), @@ -280,7 +280,7 @@ class _BookViewerControlsState extends ConsumerState { : previousChapter != null ? () async => await loadNextBook(previousChapter) : null, - icon: const Icon(IconsaxOutline.forward), + icon: const Icon(IconsaxPlusLinear.forward), ), ), const SizedBox(width: 8), @@ -296,13 +296,13 @@ class _BookViewerControlsState extends ConsumerState { child: IconButton( onPressed: () => widget.controller .animateToPage(1, duration: pageAnimDuration, curve: pageAnimCurve), - icon: const Icon(IconsaxOutline.backward)), + icon: const Icon(IconsaxPlusLinear.backward)), ), IconButton( onPressed: () { showBookViewerSettings(context); }, - icon: const Icon(IconsaxOutline.setting_2), + icon: const Icon(IconsaxPlusLinear.setting_2), ), IconButton( onPressed: chapters.length > 1 @@ -317,7 +317,7 @@ class _BookViewerControlsState extends ConsumerState { ); } : () => fladderSnackbar(context, title: "No other chapters"), - icon: const Icon(IconsaxOutline.bookmark_2), + icon: const Icon(IconsaxPlusLinear.bookmark_2), ) ], ), diff --git a/lib/screens/collections/add_to_collection.dart b/lib/screens/collections/add_to_collection.dart index 311f898..dbfbf0d 100644 --- a/lib/screens/collections/add_to_collection.dart +++ b/lib/screens/collections/add_to_collection.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -60,7 +60,7 @@ class _AddToCollectionState extends ConsumerState { ), IconButton( onPressed: () => ref.read(provider.notifier).setItems(widget.items), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ) ], ), diff --git a/lib/screens/details_screens/book_detail_screen.dart b/lib/screens/details_screens/book_detail_screen.dart index 78fe3f6..7cb514d 100644 --- a/lib/screens/details_screens/book_detail_screen.dart +++ b/lib/screens/details_screens/book_detail_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/book_model.dart'; @@ -105,16 +105,16 @@ class _BookDetailScreenState extends ConsumerState { SelectableIconButton( onPressed: () async => await details.parentModel?.navigateTo(context), selected: false, - selectedIcon: IconsaxBold.book, - icon: IconsaxOutline.book, + selectedIcon: IconsaxPlusBold.book, + icon: IconsaxPlusLinear.book, ), if (details.parentModel != null) SelectableIconButton( onPressed: () async => await ref.read(userProvider.notifier).setAsFavorite( !details.parentModel!.userData.isFavourite, details.parentModel!.id), selected: details.parentModel!.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ) else SelectableIconButton( @@ -122,8 +122,8 @@ class _BookDetailScreenState extends ConsumerState { .read(userProvider.notifier) .setAsFavorite(!details.book!.userData.isFavourite, details.book!.id), selected: details.book!.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ), //This one toggles all books in a collection diff --git a/lib/screens/details_screens/episode_detail_screen.dart b/lib/screens/details_screens/episode_detail_screen.dart index 2b7700a..967d4bd 100644 --- a/lib/screens/details_screens/episode_detail_screen.dart +++ b/lib/screens/details_screens/episode_detail_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -115,8 +115,8 @@ class _ItemDetailScreenState extends ConsumerState { .setAsFavorite(!(episodeDetails.userData.isFavourite), episodeDetails.id); }, selected: episodeDetails.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ), SelectableIconButton( onPressed: () async { @@ -125,8 +125,8 @@ class _ItemDetailScreenState extends ConsumerState { .markAsPlayed(!(episodeDetails.userData.played), episodeDetails.id); }, selected: episodeDetails.userData.played, - selectedIcon: IconsaxBold.tick_circle, - icon: IconsaxOutline.tick_circle, + selectedIcon: IconsaxPlusBold.tick_circle, + icon: IconsaxPlusLinear.tick_circle, ), ].addPadding(const EdgeInsets.symmetric(horizontal: 6)), ).padding(padding), diff --git a/lib/screens/details_screens/movie_detail_screen.dart b/lib/screens/details_screens/movie_detail_screen.dart index 52cea60..7c64fe9 100644 --- a/lib/screens/details_screens/movie_detail_screen.dart +++ b/lib/screens/details_screens/movie_detail_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -111,16 +111,16 @@ class _ItemDetailScreenState extends ConsumerState { .setAsFavorite(!details.userData.isFavourite, details.id); }, selected: details.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ), SelectableIconButton( onPressed: () async { await ref.read(userProvider.notifier).markAsPlayed(!details.userData.played, details.id); }, selected: details.userData.played, - selectedIcon: IconsaxBold.tick_circle, - icon: IconsaxOutline.tick_circle, + selectedIcon: IconsaxPlusBold.tick_circle, + icon: IconsaxPlusLinear.tick_circle, ), ], ).padding(padding), diff --git a/lib/screens/details_screens/season_detail_screen.dart b/lib/screens/details_screens/season_detail_screen.dart index d96a465..fecceb1 100644 --- a/lib/screens/details_screens/season_detail_screen.dart +++ b/lib/screens/details_screens/season_detail_screen.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -83,16 +83,16 @@ class _SeasonDetailScreenState extends ConsumerState { .read(userProvider.notifier) .setAsFavorite(!details.userData.isFavourite, details.id), selected: details.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ), SelectableIconButton( onPressed: () async => await ref .read(userProvider.notifier) .markAsPlayed(!details.userData.played, details.id), selected: details.userData.played, - selectedIcon: IconsaxBold.tick_circle, - icon: IconsaxOutline.tick_circle, + selectedIcon: IconsaxPlusBold.tick_circle, + icon: IconsaxPlusLinear.tick_circle, ), ], ), diff --git a/lib/screens/details_screens/series_detail_screen.dart b/lib/screens/details_screens/series_detail_screen.dart index c347b71..32b91eb 100644 --- a/lib/screens/details_screens/series_detail_screen.dart +++ b/lib/screens/details_screens/series_detail_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -112,16 +112,16 @@ class _SeriesDetailScreenState extends ConsumerState { .setAsFavorite(!details.userData.isFavourite, details.id); }, selected: details.userData.isFavourite, - selectedIcon: IconsaxBold.heart, - icon: IconsaxOutline.heart, + selectedIcon: IconsaxPlusBold.heart, + icon: IconsaxPlusLinear.heart, ), SelectableIconButton( onPressed: () async { await ref.read(userProvider.notifier).markAsPlayed(!details.userData.played, details.id); }, selected: details.userData.played, - selectedIcon: IconsaxBold.tick_circle, - icon: IconsaxOutline.tick_circle, + selectedIcon: IconsaxPlusBold.tick_circle, + icon: IconsaxPlusLinear.tick_circle, ), ], ).padding(padding), diff --git a/lib/screens/home_screen.dart b/lib/screens/home_screen.dart index 39739f0..61c0d55 100644 --- a/lib/screens/home_screen.dart +++ b/lib/screens/home_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/providers/user_provider.dart'; @@ -31,8 +31,8 @@ class HomeScreen extends ConsumerWidget { case HomeTabs.dashboard: return DestinationModel( label: context.localized.navigationDashboard, - icon: const Icon(IconsaxOutline.home), - selectedIcon: const Icon(IconsaxBold.home), + icon: const Icon(IconsaxPlusLinear.home), + selectedIcon: const Icon(IconsaxPlusBold.home), route: const DashboardRoute(), action: () => context.router.navigate(const DashboardRoute()), floatingActionButton: AdaptiveFab( @@ -40,21 +40,21 @@ class HomeScreen extends ConsumerWidget { title: context.localized.search, key: Key(e.name.capitalize()), onPressed: () => context.router.navigate(LibrarySearchRoute()), - child: const Icon(IconsaxOutline.search_normal_1), + child: const Icon(IconsaxPlusLinear.search_normal_1), ), ); case HomeTabs.favorites: return DestinationModel( label: context.localized.navigationFavorites, - icon: const Icon(IconsaxOutline.heart), - selectedIcon: const Icon(IconsaxBold.heart), + icon: const Icon(IconsaxPlusLinear.heart), + selectedIcon: const Icon(IconsaxPlusBold.heart), route: const FavouritesRoute(), floatingActionButton: AdaptiveFab( context: context, title: context.localized.filter(0), key: Key(e.name.capitalize()), onPressed: () => context.router.navigate(LibrarySearchRoute(favourites: true)), - child: const Icon(IconsaxOutline.heart_search), + child: const Icon(IconsaxPlusLinear.heart_search), ), action: () => context.router.navigate(const FavouritesRoute()), ); @@ -62,8 +62,8 @@ class HomeScreen extends ConsumerWidget { if (canDownload) { return DestinationModel( label: context.localized.navigationSync, - icon: const Icon(IconsaxOutline.cloud), - selectedIcon: const Icon(IconsaxBold.cloud), + icon: const Icon(IconsaxPlusLinear.cloud), + selectedIcon: const Icon(IconsaxPlusBold.cloud), route: SyncedRoute(), action: () => context.router.navigate(SyncedRoute()), ); diff --git a/lib/screens/library_search/library_search_screen.dart b/lib/screens/library_search/library_search_screen.dart index 25b7e84..a099a39 100644 --- a/lib/screens/library_search/library_search_screen.dart +++ b/lib/screens/library_search/library_search_screen.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/boxset_model.dart'; @@ -201,7 +201,7 @@ class _LibrarySearchScreenState extends ConsumerState { ); }, label: Text(context.localized.playLabel), - icon: const Icon(IconsaxBold.play), + icon: const Icon(IconsaxPlusBold.play), ), ].addInBetween(const SizedBox(height: 10)), ), @@ -293,17 +293,17 @@ class _LibrarySearchScreenState extends ConsumerState { []; final itemCountWidget = ItemActionButton( label: Text(context.localized.itemCount(librarySearchResults.totalItemCount)), - icon: const Icon(IconsaxBold.document_1), + icon: const Icon(IconsaxPlusBold.document_1), ); final refreshAction = ItemActionButton( label: Text(context.localized.forceRefresh), action: () => refreshKey.currentState?.show(), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ); final showSavedFiltersDialogue = ItemActionButton( label: Text(context.localized.filter(2)), action: () => showSavedFilters(context, librarySearchResults, libraryProvider), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ); final itemViewAction = ItemActionButton( label: Text(context.localized.selectViewType), @@ -414,7 +414,7 @@ class _LibrarySearchScreenState extends ConsumerState { isFavorite ? librarySearchResults.nestedCurrentItem?.type.selectedicon : librarySearchResults.nestedCurrentItem?.type.icon ?? - IconsaxOutline.document, + IconsaxPlusLinear.document, color: isFavorite ? Theme.of(context).colorScheme.primary : null, ), ), @@ -535,7 +535,7 @@ class _LibrarySearchScreenState extends ConsumerState { Text(context.localized.fetchingLibrary, style: Theme.of(context).textTheme.titleMedium), IconButton( onPressed: () => libraryProvider.cancelFetch(), - icon: const Icon(IconsaxOutline.close_square), + icon: const Icon(IconsaxPlusLinear.close_square), ) ].addInBetween(const SizedBox(width: 16)), ), @@ -593,7 +593,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.addAsFavorite), - icon: const Icon(IconsaxOutline.heart_add), + icon: const Icon(IconsaxPlusLinear.heart_add), ), ItemActionButton( action: () async { @@ -601,7 +601,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.removeAsFavorite), - icon: const Icon(IconsaxOutline.heart_remove), + icon: const Icon(IconsaxPlusLinear.heart_remove), ), ItemActionButton( action: () async { @@ -609,7 +609,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.markAsWatched), - icon: const Icon(IconsaxOutline.eye), + icon: const Icon(IconsaxPlusLinear.eye), ), ItemActionButton( action: () async { @@ -617,7 +617,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.markAsUnwatched), - icon: const Icon(IconsaxOutline.eye_slash), + icon: const Icon(IconsaxPlusLinear.eye_slash), ), if (librarySearchResults.nestedCurrentItem is BoxSetModel) ItemActionButton( @@ -631,7 +631,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { BoxDecoration(color: Theme.of(context).colorScheme.onPrimary, borderRadius: BorderRadius.circular(6)), child: const Padding( padding: EdgeInsets.all(3.0), - child: Icon(IconsaxOutline.save_remove, size: 20), + child: Icon(IconsaxPlusLinear.save_remove, size: 20), ), )), if (librarySearchResults.nestedCurrentItem is PlaylistModel) @@ -641,7 +641,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.removeFromPlaylist), - icon: const Icon(IconsaxOutline.save_remove), + icon: const Icon(IconsaxPlusLinear.save_remove), ), ItemActionButton( action: () async { @@ -650,7 +650,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { }, label: Text(context.localized.addToCollection), icon: const Icon( - IconsaxOutline.save_add, + IconsaxPlusLinear.save_add, size: 20, ), ), @@ -660,7 +660,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { if (context.mounted) context.refreshData(); }, label: Text(context.localized.addToPlaylist), - icon: const Icon(IconsaxOutline.save_add), + icon: const Icon(IconsaxPlusLinear.save_add), ), ]; return NestedBottomAppBar( @@ -688,7 +688,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { ), padding: const EdgeInsets.all(6), child: Icon( - IconsaxOutline.arrow_up_3, + IconsaxPlusLinear.arrow_up_3, color: Theme.of(context).colorScheme.onPrimaryContainer, ), ), @@ -718,14 +718,14 @@ class _LibrarySearchBottomBar extends ConsumerWidget { } } }, - icon: const Icon(IconsaxOutline.sort), + icon: const Icon(IconsaxPlusLinear.sort), ), if (librarySearchResults.hasActiveFilters) ...{ const SizedBox(width: 6), IconButton( tooltip: context.localized.disableFilters, onPressed: disableFilters(librarySearchResults, libraryProvider), - icon: const Icon(IconsaxOutline.filter_remove), + icon: const Icon(IconsaxPlusLinear.filter_remove), ), }, }, @@ -733,7 +733,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { IconButton( onPressed: () => libraryProvider.toggleSelectMode(), color: librarySearchResults.selecteMode ? Theme.of(context).colorScheme.primary : null, - icon: const Icon(IconsaxOutline.category_2), + icon: const Icon(IconsaxPlusLinear.category_2), ), const SizedBox(width: 6), AnimatedFadeSize( @@ -748,7 +748,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { message: context.localized.selectAll, child: IconButton( onPressed: () => libraryProvider.selectAll(true), - icon: const Icon(IconsaxOutline.box_add), + icon: const Icon(IconsaxPlusLinear.box_add), ), ), const SizedBox(width: 6), @@ -756,7 +756,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { message: context.localized.clearSelection, child: IconButton( onPressed: () => libraryProvider.selectAll(false), - icon: const Icon(IconsaxOutline.box_remove), + icon: const Icon(IconsaxPlusLinear.box_remove), ), ), const SizedBox(width: 6), @@ -777,7 +777,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { ), ); }, - icon: const Icon(IconsaxOutline.more)) + icon: const Icon(IconsaxPlusLinear.more)) }, ], ), @@ -794,7 +794,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { child: Padding( padding: const EdgeInsets.all(2.0), child: Icon( - IconsaxBold.arrow_up_1, + IconsaxPlusBold.arrow_up_1, color: Theme.of(context).colorScheme.onSecondary, ), ), @@ -823,7 +823,7 @@ class _LibrarySearchBottomBar extends ConsumerWidget { : null, ); }, - icon: const Icon(IconsaxOutline.shuffle), + icon: const Icon(IconsaxPlusLinear.shuffle), ), ], ), diff --git a/lib/screens/library_search/widgets/library_filter_chips.dart b/lib/screens/library_search/widgets/library_filter_chips.dart index 288f8ec..a158673 100644 --- a/lib/screens/library_search/widgets/library_filter_chips.dart +++ b/lib/screens/library_search/widgets/library_filter_chips.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.enums.swagger.dart'; @@ -125,7 +125,7 @@ List libraryFilterChips( FilterChip( label: Text(context.localized.favorites), avatar: Icon( - librarySearchResults.favourites ? IconsaxBold.heart : IconsaxOutline.heart, + librarySearchResults.favourites ? IconsaxPlusBold.heart : IconsaxPlusLinear.heart, color: Theme.of(context).colorScheme.onSurface, ), selected: librarySearchResults.favourites, @@ -146,7 +146,7 @@ List libraryFilterChips( if (librarySearchResults.genres.isNotEmpty) CategoryChip( label: Text(context.localized.genre(librarySearchResults.genres.length)), - activeIcon: IconsaxBold.hierarchy_2, + activeIcon: IconsaxPlusBold.hierarchy_2, items: librarySearchResults.genres, labelBuilder: (item) => Text(item), onSave: (value) => libraryProvider.setGenres(value), @@ -156,7 +156,7 @@ List libraryFilterChips( if (librarySearchResults.studios.isNotEmpty) CategoryChip( label: Text(context.localized.studio(librarySearchResults.studios.length)), - activeIcon: IconsaxBold.airdrop, + activeIcon: IconsaxPlusBold.airdrop, items: librarySearchResults.studios, labelBuilder: (item) => Text(item.name), onSave: (value) => libraryProvider.setStudios(value), diff --git a/lib/screens/library_search/widgets/library_saved_filters.dart b/lib/screens/library_search/widgets/library_saved_filters.dart index e19cb28..93dfc50 100644 --- a/lib/screens/library_search/widgets/library_saved_filters.dart +++ b/lib/screens/library_search/widgets/library_saved_filters.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/library_search/library_search_model.dart'; @@ -80,13 +80,13 @@ class LibrarySavedFiltersDialogue extends ConsumerWidget { filterProvider.saveFilter(filter.copyWith(isFavourite: !filter.isFavourite)), icon: Icon( color: filter.isFavourite ? Colors.yellowAccent : null, - filter.isFavourite ? IconsaxBold.star_1 : IconsaxOutline.star, + filter.isFavourite ? IconsaxPlusBold.star_1 : IconsaxPlusLinear.star, ), ), IconButton.filledTonal( tooltip: context.localized.updateFilterForLibrary, onPressed: () => provider.updateFilter(filter), - icon: const Icon(IconsaxBold.refresh), + icon: const Icon(IconsaxPlusBold.refresh), ), IconButton.filledTonal( tooltip: context.localized.delete, @@ -114,7 +114,7 @@ class LibrarySavedFiltersDialogue extends ConsumerWidget { foregroundColor: WidgetStatePropertyAll(Theme.of(context).colorScheme.onErrorContainer), ), - icon: const Icon(IconsaxOutline.trash), + icon: const Icon(IconsaxPlusLinear.trash), ), ].addInBetween(const SizedBox(width: 8)), ), @@ -142,7 +142,7 @@ class LibrarySavedFiltersDialogue extends ConsumerWidget { const SizedBox(width: 6), FilledButton.tonal( onPressed: () => provider.saveFiltersNew(controller.text), - child: const Icon(IconsaxOutline.save_2), + child: const Icon(IconsaxPlusLinear.save_2), ), ], ) diff --git a/lib/screens/library_search/widgets/library_views.dart b/lib/screens/library_search/widgets/library_views.dart index 7ce625f..5a2eee0 100644 --- a/lib/screens/library_search/widgets/library_views.dart +++ b/lib/screens/library_search/widgets/library_views.dart @@ -1,7 +1,7 @@ import 'dart:ui'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/models/boxset_model.dart'; import 'package:fladder/models/item_base_model.dart'; import 'package:fladder/models/items/photos_model.dart'; @@ -32,9 +32,9 @@ final libraryViewTypeProvider = StateProvider((ref) { }); enum LibraryViewTypes { - grid(icon: IconsaxOutline.grid_2), - list(icon: IconsaxOutline.grid_6), - masonry(icon: IconsaxOutline.grid_3); + grid(icon: IconsaxPlusLinear.grid_2), + list(icon: IconsaxPlusLinear.grid_6), + masonry(icon: IconsaxPlusLinear.grid_3); const LibraryViewTypes({required this.icon}); @@ -81,7 +81,7 @@ class LibraryViews extends ConsumerWidget { if (ref.watch(librarySearchProvider(key!).select((value) => value.nestedCurrentItem is BoxSetModel))) ...{ ItemActionButton( label: Text(context.localized.removeFromCollection), - icon: const Icon(IconsaxOutline.archive_slash), + icon: const Icon(IconsaxPlusLinear.archive_slash), action: () async { await libraryProvider.removeFromCollection(items: [item]); if (context.mounted) { @@ -93,7 +93,7 @@ class LibraryViews extends ConsumerWidget { if (ref.watch(librarySearchProvider(key!).select((value) => value.nestedCurrentItem is PlaylistModel))) ...{ ItemActionButton( label: Text(context.localized.removeFromPlaylist), - icon: const Icon(IconsaxOutline.archive_minus), + icon: const Icon(IconsaxPlusLinear.archive_minus), action: () async { await libraryProvider.removeFromPlaylist(items: [item]); if (context.mounted) { diff --git a/lib/screens/library_search/widgets/suggestion_search_bar.dart b/lib/screens/library_search/widgets/suggestion_search_bar.dart index 136326b..b52b286 100644 --- a/lib/screens/library_search/widgets/suggestion_search_bar.dart +++ b/lib/screens/library_search/widgets/suggestion_search_bar.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_typeahead/flutter_typeahead.dart'; import 'package:page_transition/page_transition.dart'; @@ -98,7 +98,7 @@ class _SearchBarState extends ConsumerState { }, decoration: InputDecoration( hintText: widget.title ?? "${context.localized.search}...", - prefixIcon: const Icon(IconsaxOutline.search_normal), + prefixIcon: const Icon(IconsaxPlusLinear.search_normal), contentPadding: const EdgeInsets.only(top: 13), suffixIcon: controller.text.isNotEmpty ? IconButton( diff --git a/lib/screens/login/lock_screen.dart b/lib/screens/login/lock_screen.dart index c89c19a..21c89bd 100644 --- a/lib/screens/login/lock_screen.dart +++ b/lib/screens/login/lock_screen.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/account_model.dart'; @@ -107,7 +107,7 @@ class _LockScreenState extends ConsumerState with WidgetsBindingObse ref.read(lockScreenActiveProvider.notifier).update((state) => false); context.router.push(const LoginRoute()); }, - child: const Icon(IconsaxOutline.arrow_swap_horizontal), + child: const Icon(IconsaxPlusLinear.arrow_swap_horizontal), ), body: Center( child: Wrap( @@ -117,7 +117,7 @@ class _LockScreenState extends ConsumerState with WidgetsBindingObse direction: Axis.vertical, children: [ const Icon( - IconsaxOutline.lock_1, + IconsaxPlusLinear.lock_1, size: 38, ), if (user != null) diff --git a/lib/screens/login/login_edit_user.dart b/lib/screens/login/login_edit_user.dart index ac96135..68ec68e 100644 --- a/lib/screens/login/login_edit_user.dart +++ b/lib/screens/login/login_edit_user.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:intl/intl.dart'; @@ -59,7 +59,7 @@ class LoginEditUser extends ConsumerWidget { ), Row( children: [ - const Icon(IconsaxBold.clock), + const Icon(IconsaxPlusBold.clock), const SizedBox(width: 8), Column( mainAxisAlignment: MainAxisAlignment.start, diff --git a/lib/screens/login/login_screen.dart b/lib/screens/login/login_screen.dart index 95b96c4..3b03518 100644 --- a/lib/screens/login/login_screen.dart +++ b/lib/screens/login/login_screen.dart @@ -3,7 +3,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/account_model.dart'; @@ -90,12 +90,12 @@ class _LoginPageState extends ConsumerState { if (!AdaptiveLayout.of(context).isDesktop) FloatingActionButton( key: const Key("edit_button"), - child: const Icon(IconsaxOutline.edit_2), + child: const Icon(IconsaxPlusLinear.edit_2), onPressed: () => setState(() => editingUsers = !editingUsers), ), FloatingActionButton( key: const Key("new_button"), - child: const Icon(IconsaxOutline.add_square), + child: const Icon(IconsaxPlusLinear.add_square), onPressed: startAddingNewUser, ), ].addInBetween(const SizedBox(width: 16)), @@ -287,7 +287,7 @@ class _LoginPageState extends ConsumerState { ref.read(authProvider.notifier).setServer(""); }, icon: const Icon( - IconsaxOutline.arrow_left_2, + IconsaxPlusLinear.arrow_left_2, ), ), ), @@ -315,7 +315,7 @@ class _LoginPageState extends ConsumerState { child: IconButton.filled( onPressed: () => retrieveListOfUsers(), icon: const Icon( - IconsaxOutline.refresh, + IconsaxPlusLinear.refresh, ), ), ), @@ -381,7 +381,7 @@ class _LoginPageState extends ConsumerState { children: [ Text(context.localized.login), const SizedBox(width: 8), - const Icon(IconsaxBold.send_1), + const Icon(IconsaxPlusBold.send_1), ], ), ), diff --git a/lib/screens/login/login_user_grid.dart b/lib/screens/login/login_user_grid.dart index 4efc438..a2f6684 100644 --- a/lib/screens/login/login_user_grid.dart +++ b/lib/screens/login/login_user_grid.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:reorderable_grid/reorderable_grid.dart'; @@ -80,7 +80,7 @@ class LoginUserGrid extends ConsumerWidget { mainAxisSize: MainAxisSize.max, children: [ const Icon( - IconsaxBold.driver_2, + IconsaxPlusBold.driver_2, size: 14, ), const SizedBox(width: 4), @@ -107,7 +107,7 @@ class LoginUserGrid extends ConsumerWidget { child: const Padding( padding: EdgeInsets.all(8.0), child: Icon( - IconsaxBold.edit_2, + IconsaxPlusBold.edit_2, size: 14, ), ), diff --git a/lib/screens/login/widgets/discover_servers_widget.dart b/lib/screens/login/widgets/discover_servers_widget.dart index 11e5e1b..9d326ad 100644 --- a/lib/screens/login/widgets/discover_servers_widget.dart +++ b/lib/screens/login/widgets/discover_servers_widget.dart @@ -1,7 +1,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/credentials_model.dart'; @@ -46,7 +46,7 @@ class DiscoverServersWidget extends ConsumerWidget { style: context.textTheme.bodyLarge, ), const Spacer(), - const Opacity(opacity: 0.65, child: Icon(IconsaxOutline.bookmark, size: 16)), + const Opacity(opacity: 0.65, child: Icon(IconsaxPlusLinear.bookmark, size: 16)), ], ), const SizedBox(height: 4), @@ -69,7 +69,7 @@ class DiscoverServersWidget extends ConsumerWidget { style: context.textTheme.bodyLarge, ), const Spacer(), - const Opacity(opacity: 0.65, child: Icon(IconsaxBold.airdrop, size: 16)), + const Opacity(opacity: 0.65, child: Icon(IconsaxPlusBold.airdrop, size: 16)), ], ), const SizedBox(height: 4), @@ -135,7 +135,7 @@ class _ServerInfoCard extends StatelessWidget { child: Padding( padding: const EdgeInsets.all(8.0), child: Icon( - IconsaxBold.driver, + IconsaxPlusBold.driver, color: Theme.of(context).colorScheme.onPrimaryContainer, ), ), @@ -158,7 +158,7 @@ class _ServerInfoCard extends StatelessWidget { ], ), ), - const Icon(IconsaxOutline.edit_2, size: 16) + const Icon(IconsaxPlusLinear.edit_2, size: 16) ].addInBetween(const SizedBox(width: 12)), ), ), diff --git a/lib/screens/metadata/edit_item.dart b/lib/screens/metadata/edit_item.dart index b4fb2bd..9ef4a82 100644 --- a/lib/screens/metadata/edit_item.dart +++ b/lib/screens/metadata/edit_item.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart'; import 'package:fladder/models/item_base_model.dart'; import 'package:fladder/providers/edit_item_provider.dart'; @@ -103,7 +103,7 @@ class _EditDialogSwitcherState extends ConsumerState with Ti style: Theme.of(context).textTheme.titleLarge, ), ), - IconButton(onPressed: () => refreshEditor(), icon: const Icon(IconsaxOutline.refresh)) + IconButton(onPressed: () => refreshEditor(), icon: const Icon(IconsaxPlusLinear.refresh)) ], ), ), diff --git a/lib/screens/metadata/edit_screens/edit_fields.dart b/lib/screens/metadata/edit_screens/edit_fields.dart index 74c850f..6c9aeab 100644 --- a/lib/screens/metadata/edit_screens/edit_fields.dart +++ b/lib/screens/metadata/edit_screens/edit_fields.dart @@ -1,5 +1,5 @@ import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/jellyfin/jellyfin_open_api.swagger.dart'; import 'package:fladder/models/items/item_shared_models.dart'; import 'package:fladder/providers/edit_item_provider.dart'; @@ -557,7 +557,7 @@ class _EditGeneralState extends ConsumerState { .read(editItemProvider.notifier) .updateField(MapEntry(e.key, newDate.toIso8601String())); }, - icon: const Icon(IconsaxOutline.calendar_2)) + icon: const Icon(IconsaxPlusLinear.calendar_2)) ], ), DisplayOrder _ => Builder(builder: (context) { diff --git a/lib/screens/metadata/identifty_screen.dart b/lib/screens/metadata/identifty_screen.dart index 120b8b3..9c662a2 100644 --- a/lib/screens/metadata/identifty_screen.dart +++ b/lib/screens/metadata/identifty_screen.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:cached_network_image/cached_network_image.dart'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -67,7 +67,7 @@ class _IdentifyScreenState extends ConsumerState with TickerProv const Spacer(), IconButton( onPressed: () async => await ref.read(provider.notifier).fetchInformation(), - icon: const Icon(IconsaxOutline.refresh)), + icon: const Icon(IconsaxPlusLinear.refresh)), ], ), TabBar( diff --git a/lib/screens/metadata/info_screen.dart b/lib/screens/metadata/info_screen.dart index de5b0e7..74b4fb1 100644 --- a/lib/screens/metadata/info_screen.dart +++ b/lib/screens/metadata/info_screen.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/information_model.dart'; @@ -83,7 +83,7 @@ class ItemInfoScreenState extends ConsumerState { const SizedBox(width: 6), IconButton( onPressed: () => ref.read(provider.notifier).getItemInformation(widget.item), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ), ], ), diff --git a/lib/screens/photo_viewer/photo_viewer_controls.dart b/lib/screens/photo_viewer/photo_viewer_controls.dart index ef90be2..77d3f52 100644 --- a/lib/screens/photo_viewer/photo_viewer_controls.dart +++ b/lib/screens/photo_viewer/photo_viewer_controls.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:extended_image/extended_image.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_cache_manager/flutter_cache_manager.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:share_plus/share_plus.dart'; @@ -301,13 +301,13 @@ class _PhotoViewerControllsState extends ConsumerState with children: [ ElevatedIconButton( onPressed: widget.openOptions, - icon: IconsaxOutline.more_2, + icon: IconsaxPlusLinear.more_2, ), const Spacer(), ElevatedIconButton( onPressed: markAsFavourite, color: widget.photo.userData.isFavourite ? Colors.red : null, - icon: widget.photo.userData.isFavourite ? IconsaxBold.heart : IconsaxOutline.heart, + icon: widget.photo.userData.isFavourite ? IconsaxPlusBold.heart : IconsaxPlusLinear.heart, ), ProgressFloatingButton( controller: timerController, diff --git a/lib/screens/photo_viewer/photo_viewer_screen.dart b/lib/screens/photo_viewer/photo_viewer_screen.dart index 326d8fd..f8b8d6d 100644 --- a/lib/screens/photo_viewer/photo_viewer_screen.dart +++ b/lib/screens/photo_viewer/photo_viewer_screen.dart @@ -5,7 +5,7 @@ import 'package:flutter/services.dart'; import 'package:cached_network_image/cached_network_image.dart'; import 'package:extended_image/extended_image.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_blurhash/flutter_blurhash.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -334,7 +334,7 @@ class _PhotoViewerScreenState extends ConsumerState with Widg IconButton.styleFrom(shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8))), onPressed: () => controller.nextPage(duration: const Duration(milliseconds: 125), curve: Curves.easeInOut), - icon: const Icon(IconsaxBold.arrow_right_1), + icon: const Icon(IconsaxPlusBold.arrow_right_1), ), ), ), @@ -358,7 +358,7 @@ class _PhotoViewerScreenState extends ConsumerState with Widg IconButton.styleFrom(shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8))), onPressed: () => controller.previousPage(duration: const Duration(milliseconds: 125), curve: Curves.easeInOut), - icon: const Icon(IconsaxBold.arrow_left), + icon: const Icon(IconsaxPlusBold.arrow_left), ), ), ), @@ -410,8 +410,8 @@ class _PhotoViewerScreenState extends ConsumerState with Widg child: AnimatedVisibilityIcon( key: Key(currentPhoto.id), isFilled: currentPhoto.userData.isFavourite, - filledIcon: IconsaxBold.heart, - outlinedIcon: IconsaxOutline.heart, + filledIcon: IconsaxPlusBold.heart, + outlinedIcon: IconsaxPlusLinear.heart, ), ), ) @@ -441,8 +441,8 @@ class _PhotoViewerScreenState extends ConsumerState with Widg .read(photoViewSettingsProvider.notifier) .update((state) => state.copyWith(repeat: !state.repeat)), icon: ref.watch(photoViewSettingsProvider.select((value) => value.repeat)) - ? IconsaxOutline.repeat - : IconsaxOutline.repeate_one, + ? IconsaxPlusLinear.repeat + : IconsaxPlusLinear.repeate_one, ), ElevatedIconButtonLabel( label: context.localized.audio, @@ -450,8 +450,8 @@ class _PhotoViewerScreenState extends ConsumerState with Widg .read(photoViewSettingsProvider.notifier) .update((state) => state.copyWith(mute: !state.mute)), icon: ref.watch(photoViewSettingsProvider.select((value) => value.mute)) - ? IconsaxOutline.volume_slash - : IconsaxOutline.volume_high, + ? IconsaxPlusLinear.volume_slash + : IconsaxPlusLinear.volume_high, ), ElevatedIconButtonLabel( label: context.localized.autoPlay, @@ -459,8 +459,8 @@ class _PhotoViewerScreenState extends ConsumerState with Widg .read(photoViewSettingsProvider.notifier) .update((state) => state.copyWith(autoPlay: !state.autoPlay)), icon: ref.watch(photoViewSettingsProvider.select((value) => value.autoPlay)) - ? IconsaxOutline.play_remove - : IconsaxOutline.play, + ? IconsaxPlusLinear.play_remove + : IconsaxPlusLinear.play, ), ElevatedIconButtonLabel( label: context.localized.backgroundBlur, @@ -468,8 +468,8 @@ class _PhotoViewerScreenState extends ConsumerState with Widg .read(photoViewSettingsProvider.notifier) .update((state) => state.copyWith(theaterMode: !state.theaterMode)), icon: ref.watch(photoViewSettingsProvider.select((value) => value.theaterMode)) - ? IconsaxOutline.filter_remove - : IconsaxOutline.filter, + ? IconsaxPlusLinear.filter_remove + : IconsaxPlusLinear.filter, ), ].addInBetween(const SizedBox(width: 16)), ); diff --git a/lib/screens/photo_viewer/simple_video_player.dart b/lib/screens/photo_viewer/simple_video_player.dart index 7d03982..28f5a0f 100644 --- a/lib/screens/photo_viewer/simple_video_player.dart +++ b/lib/screens/photo_viewer/simple_video_player.dart @@ -2,7 +2,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:path/path.dart'; import 'package:wakelock_plus/wakelock_plus.dart'; @@ -222,7 +222,7 @@ class _SimpleVideoPlayerState extends ConsumerState with Wind } }, icon: Icon( - player.lastState.playing ? IconsaxBold.pause_circle : IconsaxBold.play_circle, + player.lastState.playing ? IconsaxPlusBold.pause_circle : IconsaxPlusBold.play_circle, ), ) ], diff --git a/lib/screens/playlists/add_to_playlists.dart b/lib/screens/playlists/add_to_playlists.dart index 666d1fa..e25e677 100644 --- a/lib/screens/playlists/add_to_playlists.dart +++ b/lib/screens/playlists/add_to_playlists.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -55,7 +55,7 @@ class _AddToPlaylistState extends ConsumerState { ), IconButton( onPressed: () => ref.read(provider.notifier).setItems(widget.items), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ) ], ), diff --git a/lib/screens/settings/about_settings_page.dart b/lib/screens/settings/about_settings_page.dart index 2e0f87c..ac24bf4 100644 --- a/lib/screens/settings/about_settings_page.dart +++ b/lib/screens/settings/about_settings_page.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; @@ -31,7 +31,7 @@ const socials = [ _Socials( 'Weblate', 'https://hosted.weblate.org/projects/fladder/', - IconsaxOutline.global, + IconsaxPlusLinear.global, ), ]; diff --git a/lib/screens/settings/client_sections/client_settings_download.dart b/lib/screens/settings/client_sections/client_settings_download.dart index 6c3bc91..c54ee32 100644 --- a/lib/screens/settings/client_sections/client_settings_download.dart +++ b/lib/screens/settings/client_sections/client_settings_download.dart @@ -1,7 +1,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:file_picker/file_picker.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -74,7 +74,7 @@ List buildClientSettingsDownload(BuildContext context, WidgetRef ref, Fu ], ), ), - icon: const Icon(IconsaxOutline.folder_minus), + icon: const Icon(IconsaxPlusLinear.folder_minus), ) : null, ), diff --git a/lib/screens/settings/settings_screen.dart b/lib/screens/settings/settings_screen.dart index e435ee0..f9945e0 100644 --- a/lib/screens/settings/settings_screen.dart +++ b/lib/screens/settings/settings_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/settings/home_settings_model.dart'; @@ -76,15 +76,15 @@ class _SettingsScreenState extends ConsumerState { IconData get deviceIcon { if (AdaptiveLayout.of(context).isDesktop) { - return IconsaxOutline.monitor; + return IconsaxPlusLinear.monitor; } switch (AdaptiveLayout.viewSizeOf(context)) { case ViewSize.phone: - return IconsaxOutline.mobile; + return IconsaxPlusLinear.mobile; case ViewSize.tablet: - return IconsaxOutline.monitor; + return IconsaxPlusLinear.monitor; case ViewSize.desktop: - return IconsaxOutline.monitor; + return IconsaxPlusLinear.monitor; } } @@ -115,21 +115,21 @@ class _SettingsScreenState extends ConsumerState { if (quickConnectAvailable) SettingsListTile( label: Text(context.localized.settingsQuickConnectTitle), - icon: IconsaxOutline.password_check, + icon: IconsaxPlusLinear.password_check, onTap: () => openQuickConnectDialog(context), ), SettingsListTile( label: Text(context.localized.settingsProfileTitle), subLabel: Text(context.localized.settingsProfileDesc), selected: containsRoute(const SecuritySettingsRoute()), - icon: IconsaxOutline.security_user, + icon: IconsaxPlusLinear.security_user, onTap: () => navigateTo(const SecuritySettingsRoute()), ), SettingsListTile( label: Text(context.localized.settingsPlayerTitle), subLabel: Text(context.localized.settingsPlayerDesc), selected: containsRoute(const PlayerSettingsRoute()), - icon: IconsaxOutline.video_play, + icon: IconsaxPlusLinear.video_play, onTap: () => navigateTo(const PlayerSettingsRoute()), ), SettingsListTile( @@ -162,7 +162,7 @@ class _SettingsScreenState extends ConsumerState { context.router.replaceAll([const LoginRoute()]); }, child: const Icon( - IconsaxOutline.arrow_swap_horizontal, + IconsaxPlusLinear.arrow_swap_horizontal, ), ), const SizedBox(width: 16), @@ -205,7 +205,7 @@ class _SettingsScreenState extends ConsumerState { ); }, child: Icon( - IconsaxOutline.logout, + IconsaxPlusLinear.logout, color: Theme.of(context).colorScheme.onErrorContainer, ), ), diff --git a/lib/screens/settings/widgets/settings_message_box.dart b/lib/screens/settings/widgets/settings_message_box.dart index 68f7906..9298076 100644 --- a/lib/screens/settings/widgets/settings_message_box.dart +++ b/lib/screens/settings/widgets/settings_message_box.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/util/list_padding.dart'; @@ -41,9 +41,9 @@ class SettingsMessageBox extends ConsumerWidget { children: [ Icon( switch (messageType) { - MessageType.info => IconsaxOutline.information, - MessageType.warning => IconsaxOutline.warning_2, - MessageType.error => IconsaxOutline.danger, + MessageType.info => IconsaxPlusLinear.information, + MessageType.warning => IconsaxPlusLinear.warning_2, + MessageType.error => IconsaxPlusLinear.danger, }, ), Flexible( diff --git a/lib/screens/shared/authenticate_button_options.dart b/lib/screens/shared/authenticate_button_options.dart index bb83916..766943d 100644 --- a/lib/screens/shared/authenticate_button_options.dart +++ b/lib/screens/shared/authenticate_button_options.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/models/account_model.dart'; import 'package:fladder/screens/shared/fladder_snackbar.dart'; import 'package:fladder/screens/shared/passcode_input.dart'; @@ -16,7 +16,7 @@ void showAuthOptionsDialogue( context: context, builder: (context) => AlertDialog( scrollable: true, - icon: const Icon(IconsaxBold.lock_1), + icon: const Icon(IconsaxPlusBold.lock_1), title: Text(context.localized.appLockTitle(currentUser.name)), actionsOverflowDirection: VerticalDirection.down, actions: Authentication.values diff --git a/lib/screens/shared/chips/category_chip.dart b/lib/screens/shared/chips/category_chip.dart index dba69ce..0921c29 100644 --- a/lib/screens/shared/chips/category_chip.dart +++ b/lib/screens/shared/chips/category_chip.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/models/settings/home_settings_model.dart'; import 'package:fladder/util/adaptive_layout.dart'; @@ -96,7 +96,7 @@ class CategoryChip extends StatelessWidget { newEntry = null; onClear!(); }, - icon: const Icon(IconsaxOutline.back_square), + icon: const Icon(IconsaxPlusLinear.back_square), label: Text(context.localized.clear), ) ].addInBetween(const SizedBox(width: 6)); @@ -123,7 +123,7 @@ class CategoryChip extends StatelessWidget { newEntry = null; onClear!(); }, - icon: const Icon(IconsaxOutline.back_square), + icon: const Icon(IconsaxPlusLinear.back_square), label: Text(context.localized.clear), ) ].addInBetween(const SizedBox(width: 6)), diff --git a/lib/screens/shared/detail_scaffold.dart b/lib/screens/shared/detail_scaffold.dart index 0fc3d74..63d6b24 100644 --- a/lib/screens/shared/detail_scaffold.dart +++ b/lib/screens/shared/detail_scaffold.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -194,7 +194,7 @@ class _DetailScaffoldState extends ConsumerState { onPressed: () => context.router.popBack(), icon: Padding( padding: EdgeInsets.all(AdaptiveLayout.of(context).inputDevice == InputDevice.pointer ? 0 : 4), - child: const Icon(IconsaxOutline.arrow_left_2), + child: const Icon(IconsaxPlusLinear.arrow_left_2), ), ), const Spacer(), @@ -241,7 +241,7 @@ class _DetailScaffoldState extends ConsumerState { message: context.localized.refresh, child: IconButton( onPressed: () => context.refreshData(), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), ), ), ), @@ -259,7 +259,7 @@ class _DetailScaffoldState extends ConsumerState { message: context.localized.home, child: IconButton( onPressed: () => context.router.navigate(const DashboardRoute()), - icon: const Icon(IconsaxOutline.home), + icon: const Icon(IconsaxPlusLinear.home), ), ), ], diff --git a/lib/screens/shared/file_picker.dart b/lib/screens/shared/file_picker.dart index 659313e..89f6ad9 100644 --- a/lib/screens/shared/file_picker.dart +++ b/lib/screens/shared/file_picker.dart @@ -1,5 +1,5 @@ import 'package:desktop_drop/desktop_drop.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/screens/shared/outlined_text_field.dart'; import 'package:fladder/util/adaptive_layout.dart'; import 'package:flutter/foundation.dart'; @@ -131,7 +131,7 @@ class _FilePickerBarState extends ConsumerState { ), const SizedBox(width: 12), Icon( - IconsaxBold.folder_add, + IconsaxPlusBold.folder_add, color: contentColor, ) ], diff --git a/lib/screens/shared/media/banner_play_button.dart b/lib/screens/shared/media/banner_play_button.dart index 5735bd0..691f5af 100644 --- a/lib/screens/shared/media/banner_play_button.dart +++ b/lib/screens/shared/media/banner_play_button.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:square_progress_indicator/square_progress_indicator.dart'; @@ -42,7 +42,7 @@ class BannerPlayButton extends ConsumerWidget { IconButton( onPressed: () => item.play(context, ref), icon: const Icon( - IconsaxBold.play, + IconsaxPlusBold.play, size: 30, ), ) diff --git a/lib/screens/shared/media/carousel_banner.dart b/lib/screens/shared/media/carousel_banner.dart index ef83ea1..8540eb7 100644 --- a/lib/screens/shared/media/carousel_banner.dart +++ b/lib/screens/shared/media/carousel_banner.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -194,7 +194,7 @@ class _CarouselBannerState extends ConsumerState { carouselController.animateTo(currentPos.pixels - itemExtent, curve: Curves.easeInOutCubic, duration: const Duration(milliseconds: 250)); }, - icon: const Icon(IconsaxOutline.arrow_left_2), + icon: const Icon(IconsaxPlusLinear.arrow_left_2), ), IconButton.filledTonal( onPressed: () { @@ -202,7 +202,7 @@ class _CarouselBannerState extends ConsumerState { carouselController.animateTo(currentPos.pixels + itemExtent, curve: Curves.easeInOutCubic, duration: const Duration(milliseconds: 250)); }, - icon: const Icon(IconsaxOutline.arrow_right_3), + icon: const Icon(IconsaxPlusLinear.arrow_right_3), ), ], ), diff --git a/lib/screens/shared/media/components/media_play_button.dart b/lib/screens/shared/media/components/media_play_button.dart index 78a45ec..5fd4671 100644 --- a/lib/screens/shared/media/components/media_play_button.dart +++ b/lib/screens/shared/media/components/media_play_button.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -43,7 +43,7 @@ class MediaPlayButton extends ConsumerWidget { ), const SizedBox(width: 4), const Icon( - IconsaxBold.play, + IconsaxPlusBold.play, ), ], ), diff --git a/lib/screens/shared/media/components/poster_image.dart b/lib/screens/shared/media/components/poster_image.dart index 8fd0877..882f76b 100644 --- a/lib/screens/shared/media/components/poster_image.dart +++ b/lib/screens/shared/media/components/poster_image.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/book_model.dart'; @@ -171,7 +171,7 @@ class _PosterImageState extends ConsumerState { StatusCard( color: Colors.red, child: Icon( - IconsaxBold.heart, + IconsaxPlusBold.heart, size: 21, color: Colors.red, ), @@ -252,7 +252,7 @@ class _PosterImageState extends ConsumerState { child: IconButton.filledTonal( onPressed: () => widget.playVideo?.call(false), icon: const Icon( - IconsaxBold.play, + IconsaxPlusBold.play, size: 32, ), ), diff --git a/lib/screens/shared/media/episode_details_list.dart b/lib/screens/shared/media/episode_details_list.dart index 60df085..3dfd80f 100644 --- a/lib/screens/shared/media/episode_details_list.dart +++ b/lib/screens/shared/media/episode_details_list.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/providers/settings/client_settings_provider.dart'; import 'package:fladder/providers/sync_provider.dart'; import 'package:fladder/screens/shared/media/episode_posters.dart'; @@ -13,8 +13,8 @@ import 'package:fladder/models/items/episode_model.dart'; import 'package:fladder/util/humanize_duration.dart'; enum EpisodeDetailsViewType { - list(icon: IconsaxBold.grid_6), - grid(icon: IconsaxBold.grid_2); + list(icon: IconsaxPlusBold.grid_6), + grid(icon: IconsaxPlusBold.grid_2); const EpisodeDetailsViewType({required this.icon}); diff --git a/lib/screens/shared/media/expanding_overview.dart b/lib/screens/shared/media/expanding_overview.dart index 28b6503..d0508a9 100644 --- a/lib/screens/shared/media/expanding_overview.dart +++ b/lib/screens/shared/media/expanding_overview.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/util/localization_helper.dart'; import 'package:fladder/util/sticky_header_text.dart'; import 'package:flutter/material.dart'; @@ -68,11 +68,11 @@ class _ExpandingOverviewState extends ConsumerState { child: expanded ? IconButton.filledTonal( onPressed: toggleState, - icon: const Icon(IconsaxOutline.arrow_up_2), + icon: const Icon(IconsaxPlusLinear.arrow_up_2), ) : IconButton.filledTonal( onPressed: toggleState, - icon: const Icon(IconsaxOutline.arrow_down_1), + icon: const Icon(IconsaxPlusLinear.arrow_down_1), ), ), ), diff --git a/lib/screens/shared/media/media_banner.dart b/lib/screens/shared/media/media_banner.dart index c15be73..302de4e 100644 --- a/lib/screens/shared/media/media_banner.dart +++ b/lib/screens/shared/media/media_banner.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:async/async.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -253,7 +253,7 @@ class _MediaBannerState extends ConsumerState { children: [ IconButton.filledTonal( onPressed: () => nextSlide(), - icon: const Icon(IconsaxOutline.arrow_right_3), + icon: const Icon(IconsaxPlusLinear.arrow_right_3), ) ], ), diff --git a/lib/screens/shared/media/poster_list_item.dart b/lib/screens/shared/media/poster_list_item.dart index 1305700..51fa691 100644 --- a/lib/screens/shared/media/poster_list_item.dart +++ b/lib/screens/shared/media/poster_list_item.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/models/book_model.dart'; import 'package:fladder/models/item_base_model.dart'; import 'package:fladder/models/items/item_shared_models.dart'; @@ -181,7 +181,7 @@ class PosterListItem extends ConsumerWidget { ), if (poster.userData.isFavourite) const Icon( - IconsaxBold.heart, + IconsaxPlusBold.heart, color: Colors.red, ), if (AdaptiveLayout.of(context).isDesktop) diff --git a/lib/screens/shared/nested_sliver_appbar.dart b/lib/screens/shared/nested_sliver_appbar.dart index 93d20d8..bd23967 100644 --- a/lib/screens/shared/nested_sliver_appbar.dart +++ b/lib/screens/shared/nested_sliver_appbar.dart @@ -1,5 +1,5 @@ import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/util/list_padding.dart'; import 'package:fladder/util/localization_helper.dart'; import 'package:fladder/widgets/navigation_scaffold/components/settings_user_icon.dart'; @@ -36,7 +36,7 @@ class NestedSliverAppBar extends ConsumerWidget { ), onPressed: () => Scaffold.of(parent).openDrawer(), icon: const Icon( - IconsaxBold.menu, + IconsaxPlusBold.menu, size: 28, ), ), @@ -59,7 +59,7 @@ class NestedSliverAppBar extends ConsumerWidget { child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ - const Icon(IconsaxOutline.search_normal), + const Icon(IconsaxPlusLinear.search_normal), const SizedBox(width: 16), Transform.translate( offset: const Offset(0, 2.5), diff --git a/lib/screens/syncing/sync_button.dart b/lib/screens/syncing/sync_button.dart index 225eb3a..ee44de4 100644 --- a/lib/screens/syncing/sync_button.dart +++ b/lib/screens/syncing/sync_button.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/models/item_base_model.dart'; import 'package:fladder/models/syncing/sync_item.dart'; import 'package:fladder/providers/sync/sync_provider_helpers.dart'; @@ -45,10 +45,10 @@ class _SyncButtonState extends ConsumerState { syncedItem != null ? status == SyncStatus.partially ? (progress?.progress ?? 0) > 0 - ? IconsaxOutline.arrow_down - : IconsaxOutline.more_circle - : IconsaxOutline.tick_circle - : IconsaxOutline.arrow_down_2, + ? IconsaxPlusLinear.arrow_down + : IconsaxPlusLinear.more_circle + : IconsaxPlusLinear.tick_circle + : IconsaxPlusLinear.arrow_down_2, color: status?.color, size: (progress?.progress ?? 0) > 0 ? 16 : null, ), diff --git a/lib/screens/syncing/sync_item_details.dart b/lib/screens/syncing/sync_item_details.dart index 5f1c0a2..2cb2180 100644 --- a/lib/screens/syncing/sync_item_details.dart +++ b/lib/screens/syncing/sync_item_details.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:background_downloader/background_downloader.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/items/episode_model.dart'; @@ -73,7 +73,7 @@ class _SyncItemDetailsState extends ConsumerState { ), IconButton( onPressed: () => Navigator.pop(context), - icon: const Icon(IconsaxBold.close_circle), + icon: const Icon(IconsaxPlusBold.close_circle), ) ], ), @@ -126,19 +126,19 @@ class _SyncItemDetailsState extends ConsumerState { IconButton( onPressed: () => ref.read(backgroundDownloaderProvider).pause(combinedStream!.task!), - icon: const Icon(IconsaxBold.pause), + icon: const Icon(IconsaxPlusBold.pause), ), if (combinedStream?.status == TaskStatus.paused) ...[ IconButton( onPressed: () => ref.read(backgroundDownloaderProvider).resume(combinedStream!.task!), - icon: const Icon(IconsaxBold.play), + icon: const Icon(IconsaxPlusBold.play), ), IconButton( onPressed: () => ref .read(syncProvider.notifier) .deleteFullSyncFiles(syncedItem, combinedStream?.task), - icon: const Icon(IconsaxBold.stop), + icon: const Icon(IconsaxPlusBold.stop), ), ], const SizedBox(width: 16) @@ -168,7 +168,7 @@ class _SyncItemDetailsState extends ConsumerState { if (!hasFile && !downloadTask.hasDownload && syncedItem.hasVideoFile) IconButtonAwait( onPressed: () async => await ref.read(syncProvider.notifier).syncVideoFile(syncedItem, false), - icon: const Icon(IconsaxOutline.cloud_change), + icon: const Icon(IconsaxPlusLinear.cloud_change), ) else if (hasFile) IconButtonAwait( @@ -187,7 +187,7 @@ class _SyncItemDetailsState extends ConsumerState { context.localized.cancel, ); }, - icon: const Icon(IconsaxOutline.trash), + icon: const Icon(IconsaxPlusLinear.trash), ), ].addInBetween(const SizedBox(width: 16)), ), diff --git a/lib/screens/syncing/sync_list_item.dart b/lib/screens/syncing/sync_list_item.dart index ac5f3a8..49c38d7 100644 --- a/lib/screens/syncing/sync_list_item.dart +++ b/lib/screens/syncing/sync_list_item.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/syncing/sync_item.dart'; @@ -43,7 +43,7 @@ class SyncListItemState extends ConsumerState { child: const Padding( padding: EdgeInsets.all(8.0), child: Row( - children: [Icon(IconsaxBold.trash)], + children: [Icon(IconsaxPlusBold.trash)], ), ), ), @@ -132,7 +132,7 @@ class SyncListItemState extends ConsumerState { )), IconButton( onPressed: () => showSyncItemDetails(context, syncedItem, ref), - icon: const Icon(IconsaxOutline.more_square), + icon: const Icon(IconsaxPlusLinear.more_square), ), ], ), diff --git a/lib/screens/syncing/sync_widgets.dart b/lib/screens/syncing/sync_widgets.dart index 4fbfd51..f416c36 100644 --- a/lib/screens/syncing/sync_widgets.dart +++ b/lib/screens/syncing/sync_widgets.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:background_downloader/background_downloader.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/items/episode_model.dart'; @@ -75,17 +75,17 @@ class SyncProgressBar extends ConsumerWidget { if (downloadStatus != TaskStatus.paused) IconButton( onPressed: () => ref.read(backgroundDownloaderProvider).pause(downloadTask), - icon: const Icon(IconsaxBold.pause), + icon: const Icon(IconsaxPlusBold.pause), ) }, if (downloadStatus == TaskStatus.paused && downloadTask != null) ...[ IconButton( onPressed: () => ref.read(backgroundDownloaderProvider).resume(downloadTask), - icon: const Icon(IconsaxBold.play), + icon: const Icon(IconsaxPlusBold.play), ), IconButton( onPressed: () => ref.read(syncProvider.notifier).deleteFullSyncFiles(item, downloadTask), - icon: const Icon(IconsaxBold.stop), + icon: const Icon(IconsaxPlusBold.stop), ) ], ].addInBetween(const SizedBox(width: 8)), diff --git a/lib/screens/syncing/synced_screen.dart b/lib/screens/syncing/synced_screen.dart index 5fd1b02..b5d3279 100644 --- a/lib/screens/syncing/synced_screen.dart +++ b/lib/screens/syncing/synced_screen.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/settings/home_settings_model.dart'; @@ -83,7 +83,7 @@ class _SyncedScreenState extends ConsumerState { ), const SizedBox(width: 16), const Icon( - IconsaxOutline.cloud_cross, + IconsaxPlusLinear.cloud_cross, ) ], ), diff --git a/lib/screens/syncing/widgets/sync_status_overlay.dart b/lib/screens/syncing/widgets/sync_status_overlay.dart index c1884fd..76962d4 100644 --- a/lib/screens/syncing/widgets/sync_status_overlay.dart +++ b/lib/screens/syncing/widgets/sync_status_overlay.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/syncing/sync_item.dart'; @@ -33,7 +33,7 @@ class SyncStatusOverlay extends ConsumerWidget { valueColor: AlwaysStoppedAnimation(Theme.of(context).colorScheme.error), ), Text(context.localized.syncOverlayDeleting), - const Icon(IconsaxOutline.trash) + const Icon(IconsaxPlusLinear.trash) ].addPadding(const EdgeInsets.symmetric(horizontal: 16)), ), ), @@ -55,7 +55,7 @@ class SyncStatusOverlay extends ConsumerWidget { valueColor: AlwaysStoppedAnimation(Theme.of(context).colorScheme.error), ), Text(context.localized.syncOverlaySyncing), - const Icon(IconsaxOutline.cloud_notif) + const Icon(IconsaxPlusLinear.cloud_notif) ].addPadding(const EdgeInsets.symmetric(horizontal: 16)), ), ), diff --git a/lib/screens/syncing/widgets/synced_episode_item.dart b/lib/screens/syncing/widgets/synced_episode_item.dart index b65e598..64a2123 100644 --- a/lib/screens/syncing/widgets/synced_episode_item.dart +++ b/lib/screens/syncing/widgets/synced_episode_item.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/items/episode_model.dart'; @@ -97,7 +97,7 @@ class _SyncedEpisodeItemState extends ConsumerState { if (!hasFile && !downloadTask.hasDownload) IconButtonAwait( onPressed: () async => await ref.read(syncProvider.notifier).syncVideoFile(syncedItem, false), - icon: const Icon(IconsaxOutline.cloud_change), + icon: const Icon(IconsaxPlusLinear.cloud_change), ) else if (hasFile) IconButtonAwait( @@ -116,7 +116,7 @@ class _SyncedEpisodeItemState extends ConsumerState { context.localized.cancel, ); }, - icon: const Icon(IconsaxOutline.trash), + icon: const Icon(IconsaxPlusLinear.trash), ) ].addInBetween(const SizedBox(width: 16)), ); diff --git a/lib/screens/video_player/components/video_playback_information.dart b/lib/screens/video_player/components/video_playback_information.dart index dbc74c5..0b575ad 100644 --- a/lib/screens/video_player/components/video_playback_information.dart +++ b/lib/screens/video_player/components/video_playback_information.dart @@ -2,7 +2,7 @@ import 'dart:ui'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/playback/playback_model.dart'; @@ -70,7 +70,7 @@ class _VideoPlaybackInformation extends ConsumerWidget { ), IconButton.filled( onPressed: () => context.copyToClipboard(playbackModel?.media?.url ?? "No url"), - icon: const Icon(IconsaxOutline.copy), + icon: const Icon(IconsaxPlusLinear.copy), ) ], ) diff --git a/lib/screens/video_player/components/video_player_next_wrapper.dart b/lib/screens/video_player/components/video_player_next_wrapper.dart index e8068a3..b66d313 100644 --- a/lib/screens/video_player/components/video_player_next_wrapper.dart +++ b/lib/screens/video_player/components/video_player_next_wrapper.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:screen_brightness/screen_brightness.dart'; @@ -276,13 +276,13 @@ class _VideoPlayerNextWrapperState extends ConsumerState IconButton.filledTonal( onPressed: () => hideNextUp(), tooltip: context.localized.resumeVideo, - icon: const Icon(IconsaxBold.maximize_4), + icon: const Icon(IconsaxPlusBold.maximize_4), ), const SizedBox(width: 8), IconButton.filledTonal( onPressed: () => closePlayer(), tooltip: context.localized.closeVideo, - icon: const Icon(IconsaxBold.close_square), + icon: const Icon(IconsaxPlusBold.close_square), ), ], ), @@ -454,13 +454,13 @@ class _SimpleControls extends ConsumerWidget { children: [ IconButton.filledTonal( onPressed: () => player.playOrPause(), - icon: Icon(isPlaying ? IconsaxBold.pause : IconsaxBold.play), + icon: Icon(isPlaying ? IconsaxPlusBold.pause : IconsaxPlusBold.play), ), if (skip != null) IconButton.filledTonal( onPressed: skip, tooltip: context.localized.playNextVideo, - icon: const Icon(IconsaxBold.next), + icon: const Icon(IconsaxPlusBold.next), ) ].addInBetween(const SizedBox(width: 4))); } diff --git a/lib/screens/video_player/components/video_player_options_sheet.dart b/lib/screens/video_player/components/video_player_options_sheet.dart index ae35590..d708f14 100644 --- a/lib/screens/video_player/components/video_player_options_sheet.dart +++ b/lib/screens/video_player/components/video_player_options_sheet.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/item_base_model.dart'; @@ -124,7 +124,7 @@ class _VideoOptionsMobileState extends ConsumerState { icon: Opacity( opacity: videoSettings.screenBrightness != null ? 0.5 : 1, child: Icon( - IconsaxBold.autobrightness, + IconsaxPlusBold.autobrightness, color: Theme.of(context).colorScheme.primary, ), ), diff --git a/lib/screens/video_player/components/video_volume_slider.dart b/lib/screens/video_player/components/video_volume_slider.dart index 763a2d2..81d1ce0 100644 --- a/lib/screens/video_player/components/video_volume_slider.dart +++ b/lib/screens/video_player/components/video_volume_slider.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/providers/settings/video_player_settings_provider.dart'; @@ -70,10 +70,10 @@ class _VideoVolumeSliderState extends ConsumerState { IconData volumeIcon(double value) { if (value <= 0) { - return IconsaxOutline.volume_mute; + return IconsaxPlusLinear.volume_mute; } if (value < 50) { - return IconsaxOutline.volume_low; + return IconsaxPlusLinear.volume_low; } - return IconsaxOutline.volume_high; + return IconsaxPlusLinear.volume_high; } diff --git a/lib/screens/video_player/video_player_controls.dart b/lib/screens/video_player/video_player_controls.dart index c36787a..93799a5 100644 --- a/lib/screens/video_player/video_player_controls.dart +++ b/lib/screens/video_player/video_player_controls.dart @@ -5,7 +5,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:async/async.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:screen_brightness/screen_brightness.dart'; @@ -216,7 +216,7 @@ class _DesktopControlsState extends ConsumerState { isSelected: true, iconSize: 65, tooltip: "Resume video", - icon: const Icon(IconsaxBold.play), + icon: const Icon(IconsaxPlusBold.play), ), ), ); @@ -253,7 +253,7 @@ class _DesktopControlsState extends ConsumerState { IconButton( onPressed: () => minimizePlayer(context), icon: const Icon( - IconsaxOutline.arrow_down_1, + IconsaxPlusLinear.arrow_down_1, size: 24, ), ), @@ -276,7 +276,7 @@ class _DesktopControlsState extends ConsumerState { Tooltip( message: context.localized.stop, child: IconButton( - onPressed: () => closePlayer(), icon: const Icon(IconsaxOutline.close_square))), + onPressed: () => closePlayer(), icon: const Icon(IconsaxPlusLinear.close_square))), ], ), ), @@ -321,22 +321,22 @@ class _DesktopControlsState extends ConsumerState { children: [ IconButton( onPressed: () => showVideoPlayerOptions(context, () => minimizePlayer(context)), - icon: const Icon(IconsaxOutline.more)), + icon: const Icon(IconsaxPlusLinear.more)), if (AdaptiveLayout.layoutOf(context) == ViewSize.tablet) ...[ IconButton( onPressed: () => showSubSelection(context), - icon: const Icon(IconsaxOutline.subtitle), + icon: const Icon(IconsaxPlusLinear.subtitle), ), IconButton( onPressed: () => showAudioSelection(context), - icon: const Icon(IconsaxOutline.audio_square), + icon: const Icon(IconsaxPlusLinear.audio_square), ), ], if (AdaptiveLayout.layoutOf(context) == ViewSize.desktop) ...[ Flexible( child: ElevatedButton.icon( onPressed: () => showSubSelection(context), - icon: const Icon(IconsaxOutline.subtitle), + icon: const Icon(IconsaxPlusLinear.subtitle), label: Text( ref.watch(playBackModel.select((value) { final language = value?.mediaStreams?.currentSubStream?.language; @@ -350,7 +350,7 @@ class _DesktopControlsState extends ConsumerState { Flexible( child: ElevatedButton.icon( onPressed: () => showAudioSelection(context), - icon: const Icon(IconsaxOutline.audio_square), + icon: const Icon(IconsaxPlusLinear.audio_square), label: Text( ref.watch(playBackModel.select((value) { final language = value?.mediaStreams?.currentAudioStream?.language; @@ -375,7 +375,7 @@ class _DesktopControlsState extends ConsumerState { ref.read(videoPlayerProvider).playOrPause(); }, icon: Icon( - mediaPlayback.playing ? IconsaxBold.pause : IconsaxBold.play, + mediaPlayback.playing ? IconsaxPlusBold.pause : IconsaxPlusBold.play, ), ), seekForwardButton(ref), @@ -389,7 +389,7 @@ class _DesktopControlsState extends ConsumerState { Tooltip( message: context.localized.stop, child: IconButton( - onPressed: () => closePlayer(), icon: const Icon(IconsaxOutline.close_square))), + onPressed: () => closePlayer(), icon: const Icon(IconsaxPlusLinear.close_square))), const Spacer(), if (AdaptiveLayout.viewSizeOf(context) >= ViewSize.tablet && ref.read(videoPlayerProvider).hasPlayer) ...{ @@ -398,7 +398,7 @@ class _DesktopControlsState extends ConsumerState { message: context.localized.qualityOptionsTitle, child: IconButton( onPressed: () => openQualityOptions(context), - icon: const Icon(IconsaxOutline.speedometer), + icon: const Icon(IconsaxPlusLinear.speedometer), ), ), }, @@ -537,7 +537,7 @@ class _DesktopControlsState extends ConsumerState { : null, iconSize: 30, icon: const Icon( - IconsaxOutline.backward, + IconsaxPlusLinear.backward, ), ), ); @@ -563,7 +563,7 @@ class _DesktopControlsState extends ConsumerState { nextVideo != null && !buffering ? () => ref.read(playbackModelHelper).loadNewVideo(nextVideo) : null, iconSize: 30, icon: const Icon( - IconsaxOutline.forward, + IconsaxPlusLinear.forward, ), ), ); @@ -577,7 +577,7 @@ class _DesktopControlsState extends ConsumerState { tooltip: "-10", iconSize: 40, icon: const Icon( - IconsaxOutline.backward_10_seconds, + IconsaxPlusLinear.backward_10_seconds, ), ); } @@ -589,7 +589,7 @@ class _DesktopControlsState extends ConsumerState { iconSize: 40, icon: const Stack( children: [ - Icon(IconsaxOutline.forward_15_seconds), + Icon(IconsaxPlusLinear.forward_15_seconds), ], ), ); diff --git a/lib/util/item_base_model/item_base_model_extensions.dart b/lib/util/item_base_model/item_base_model_extensions.dart index f189195..c5cdff1 100644 --- a/lib/util/item_base_model/item_base_model_extensions.dart +++ b/lib/util/item_base_model/item_base_model_extensions.dart @@ -1,7 +1,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/book_model.dart'; @@ -85,7 +85,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (playAble) ItemActionButton( action: () => play(context, ref), - icon: const Icon(IconsaxOutline.play), + icon: const Icon(IconsaxPlusLinear.play), label: Text(playButtonLabel(context)), ), if (parentId?.isNotEmpty == true) ...[ @@ -105,7 +105,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (!galleryItem && !exclude.contains(ItemActions.details)) ItemActionButton( action: () async => await navigateTo(context), - icon: const Icon(IconsaxOutline.main_component), + icon: const Icon(IconsaxPlusLinear.main_component), label: Text(context.localized.showDetails), ) else if (!exclude.contains(ItemActions.showAlbum) && galleryItem) @@ -117,7 +117,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (!exclude.contains(ItemActions.playFromStart)) if ((userData.progress) > 0) ItemActionButton( - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), action: (this is BookModel) ? () => ((this as BookModel).play(context, ref, currentPage: 0)) : () => play(context, ref, startPosition: Duration.zero), @@ -129,7 +129,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (!exclude.contains(ItemActions.addCollection) && isAdmin) if (type != FladderItemType.boxset) ItemActionButton( - icon: const Icon(IconsaxOutline.archive_add), + icon: const Icon(IconsaxPlusLinear.archive_add), action: () async { await addItemToCollection(context, [this]); if (context.mounted) { @@ -141,7 +141,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (!exclude.contains(ItemActions.addPlaylist)) if (type != FladderItemType.playlist) ItemActionButton( - icon: const Icon(IconsaxOutline.archive_add), + icon: const Icon(IconsaxPlusLinear.archive_add), action: () async { await addItemToPlaylist(context, [this]); if (context.mounted) { @@ -152,7 +152,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.markPlayed)) ItemActionButton( - icon: const Icon(IconsaxOutline.eye), + icon: const Icon(IconsaxPlusLinear.eye), action: () async { final userData = await ref.read(userProvider.notifier).markAsPlayed(true, id); onUserDataChanged?.call(userData?.bodyOrThrow); @@ -162,7 +162,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.markUnplayed)) ItemActionButton( - icon: const Icon(IconsaxOutline.eye_slash), + icon: const Icon(IconsaxPlusLinear.eye_slash), label: Text(context.localized.markAsUnwatched), action: () async { final userData = await ref.read(userProvider.notifier).markAsPlayed(false, id); @@ -172,7 +172,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.setFavorite)) ItemActionButton( - icon: Icon(userData.isFavourite ? IconsaxOutline.heart_remove : IconsaxOutline.heart_add), + icon: Icon(userData.isFavourite ? IconsaxPlusLinear.heart_remove : IconsaxPlusLinear.heart_add), action: () async { final newData = await ref.read(userProvider.notifier).setAsFavorite(!userData.isFavourite, id); onUserDataChanged?.call(newData?.bodyOrThrow); @@ -184,7 +184,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ItemActionDivider(), if (!exclude.contains(ItemActions.editMetaData) && isAdmin) ItemActionButton( - icon: const Icon(IconsaxOutline.edit), + icon: const Icon(IconsaxPlusLinear.edit), action: () async { final newItem = await showEditItemPopup(context, id); if (newItem != null) { @@ -195,7 +195,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.refreshMetaData) && isAdmin) ItemActionButton( - icon: const Icon(IconsaxOutline.global_refresh), + icon: const Icon(IconsaxPlusLinear.global_refresh), action: () async { showRefreshPopup(context, id, detailedName(context) ?? name); }, @@ -205,7 +205,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { if (!kIsWeb) if (syncedItem == null) ItemActionButton( - icon: const Icon(IconsaxOutline.arrow_down_2), + icon: const Icon(IconsaxPlusLinear.arrow_down_2), label: Text(context.localized.sync), action: () => ref.read(syncProvider.notifier).addSyncItem(context, this), ) @@ -217,12 +217,12 @@ extension ItemBaseModelExtensions on ItemBaseModel { ) else if (downloadUrl != null) ...[ ItemActionButton( - icon: const Icon(IconsaxOutline.document_download), + icon: const Icon(IconsaxPlusLinear.document_download), action: () => downloadFile(downloadUrl), label: Text(context.localized.downloadFile(type.label(context).toLowerCase())), ), ItemActionButton( - icon: const Icon(IconsaxOutline.link_21), + icon: const Icon(IconsaxPlusLinear.link_21), action: () => context.copyToClipboard(downloadUrl), label: Text(context.localized.copyStreamUrl), ) @@ -232,7 +232,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ItemActionButton( icon: Container( child: const Icon( - IconsaxOutline.trash, + IconsaxPlusLinear.trash, ), ), action: () async { @@ -250,7 +250,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.identify) && identifiable && isAdmin) ItemActionButton( - icon: const Icon(IconsaxOutline.search_normal), + icon: const Icon(IconsaxPlusLinear.search_normal), action: () async { showIdentifyScreen(context, this); }, @@ -258,7 +258,7 @@ extension ItemBaseModelExtensions on ItemBaseModel { ), if (!exclude.contains(ItemActions.mediaInfo)) ItemActionButton( - icon: const Icon(IconsaxOutline.info_circle), + icon: const Icon(IconsaxPlusLinear.info_circle), action: () async { showInfoScreen(context, this); }, diff --git a/lib/util/sticky_header_text.dart b/lib/util/sticky_header_text.dart index d70d929..c934057 100644 --- a/lib/util/sticky_header_text.dart +++ b/lib/util/sticky_header_text.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/screens/shared/flat_button.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -36,7 +36,7 @@ class StickyHeaderTextState extends ConsumerState { Padding( padding: const EdgeInsets.symmetric(horizontal: 8).copyWith(bottom: 4), child: Icon( - IconsaxOutline.arrow_right_3, + IconsaxPlusLinear.arrow_right_3, size: 18, color: Theme.of(context).colorScheme.onSurfaceVariant, ), diff --git a/lib/widgets/navigation_scaffold/components/floating_player_bar.dart b/lib/widgets/navigation_scaffold/components/floating_player_bar.dart index e4a2dc3..3c73930 100644 --- a/lib/widgets/navigation_scaffold/components/floating_player_bar.dart +++ b/lib/widgets/navigation_scaffold/components/floating_player_bar.dart @@ -1,7 +1,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:window_manager/window_manager.dart'; @@ -173,8 +173,8 @@ class _CurrentlyPlayingBarState extends ConsumerState { }, icon: Icon( ref.watch(videoPlayerSettingsProvider.select((value) => value.volume)) <= 0 - ? IconsaxBold.volume_cross - : IconsaxBold.volume_high, + ? IconsaxPlusBold.volume_cross + : IconsaxPlusBold.volume_high, ), ), }, @@ -183,7 +183,7 @@ class _CurrentlyPlayingBarState extends ConsumerState { waitDuration: const Duration(milliseconds: 500), child: IconButton( onPressed: () async => stopPlayer(), - icon: const Icon(IconsaxBold.stop), + icon: const Icon(IconsaxPlusBold.stop), ), ), ].addInBetween(const SizedBox(width: 6)), diff --git a/lib/widgets/navigation_scaffold/components/navigation_body.dart b/lib/widgets/navigation_scaffold/components/navigation_body.dart index f581775..0e40256 100644 --- a/lib/widgets/navigation_scaffold/components/navigation_body.dart +++ b/lib/widgets/navigation_scaffold/components/navigation_body.dart @@ -3,7 +3,7 @@ import 'package:flutter/services.dart'; import 'package:auto_route/auto_route.dart'; import 'package:collection/collection.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/settings/home_settings_model.dart'; @@ -162,7 +162,7 @@ class _NavigationBodyState extends ConsumerState { }); } }, - icon: const Icon(IconsaxBold.menu), + icon: const Icon(IconsaxPlusBold.menu), ), if (AdaptiveLayout.layoutModeOf(context) == LayoutMode.dual) ...[ const SizedBox(height: 8), @@ -198,7 +198,7 @@ class _NavigationBodyState extends ConsumerState { color: Theme.of(context).colorScheme.primaryContainer, child: const Padding( padding: EdgeInsets.all(10), - child: Icon(IconsaxBold.setting_3), + child: Icon(IconsaxPlusBold.setting_3), ), ) : const SettingsUserIcon()), diff --git a/lib/widgets/navigation_scaffold/components/navigation_drawer.dart b/lib/widgets/navigation_scaffold/components/navigation_drawer.dart index 73cf9cb..3c88e45 100644 --- a/lib/widgets/navigation_scaffold/components/navigation_drawer.dart +++ b/lib/widgets/navigation_scaffold/components/navigation_drawer.dart @@ -2,7 +2,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:auto_route/auto_route.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:fladder/models/collection_types.dart'; @@ -54,7 +54,7 @@ class NestedNavigationDrawer extends ConsumerWidget { ), IconButton( onPressed: () => toggleExpanded(false), - icon: const Icon(IconsaxOutline.menu), + icon: const Icon(IconsaxPlusLinear.menu), ), ], ), @@ -96,7 +96,7 @@ class NestedNavigationDrawer extends ConsumerWidget { actions: [ ItemActionButton( label: Text(context.localized.scanLibrary), - icon: const Icon(IconsaxOutline.refresh), + icon: const Icon(IconsaxPlusLinear.refresh), action: () => showRefreshPopup(context, library.id, library.name), ), ], @@ -113,7 +113,7 @@ class NestedNavigationDrawer extends ConsumerWidget { offset: const Offset(-8, 0), child: DrawerListButton( label: context.localized.settings, - selectedIcon: const Icon(IconsaxBold.setting_3), + selectedIcon: const Icon(IconsaxPlusBold.setting_3), selected: currentLocation.contains(const SettingsRoute().routeName), icon: const SizedBox(width: 35, height: 35, child: SettingsUserIcon()), onPressed: () { @@ -132,8 +132,8 @@ class NestedNavigationDrawer extends ConsumerWidget { else DrawerListButton( label: context.localized.settings, - selectedIcon: const Icon(IconsaxBold.setting_2), - icon: const Icon(IconsaxOutline.setting_2), + selectedIcon: const Icon(IconsaxPlusBold.setting_2), + icon: const Icon(IconsaxPlusLinear.setting_2), selected: currentLocation.contains(const SettingsRoute().routeName), onPressed: () { switch (AdaptiveLayout.layoutModeOf(context)) { diff --git a/lib/widgets/shared/full_screen_button.dart b/lib/widgets/shared/full_screen_button.dart index dfe093e..4720dde 100644 --- a/lib/widgets/shared/full_screen_button.dart +++ b/lib/widgets/shared/full_screen_button.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:window_manager/window_manager.dart'; @@ -28,7 +28,7 @@ class FullScreenButton extends ConsumerWidget { return IconButton( onPressed: () => toggleFullScreen(ref), icon: Icon( - fullScreen ? IconsaxOutline.screenmirroring : IconsaxOutline.maximize_4, + fullScreen ? IconsaxPlusLinear.screenmirroring : IconsaxPlusLinear.maximize_4, ), ); } diff --git a/lib/widgets/shared/full_screen_button_web.dart b/lib/widgets/shared/full_screen_button_web.dart index 8469b81..2a48335 100644 --- a/lib/widgets/shared/full_screen_button_web.dart +++ b/lib/widgets/shared/full_screen_button_web.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:universal_html/html.dart' as html; @@ -37,7 +37,7 @@ class FullScreenButton extends ConsumerWidget { return IconButton( onPressed: () => toggleFullScreen(ref), icon: Icon( - fullScreen ? IconsaxOutline.screenmirroring : IconsaxOutline.maximize_4, + fullScreen ? IconsaxPlusLinear.screenmirroring : IconsaxPlusLinear.maximize_4, ), ); } diff --git a/lib/widgets/shared/horizontal_list.dart b/lib/widgets/shared/horizontal_list.dart index fcc7b4d..7ae37ac 100644 --- a/lib/widgets/shared/horizontal_list.dart +++ b/lib/widgets/shared/horizontal_list.dart @@ -1,4 +1,4 @@ -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:fladder/providers/settings/client_settings_provider.dart'; import 'package:fladder/util/adaptive_layout.dart'; import 'package:fladder/util/disable_keypad_focus.dart'; @@ -124,7 +124,7 @@ class _HorizontalListState extends ConsumerState { curve: Curves.easeInOut); }, icon: const Icon( - IconsaxOutline.arrow_left_2, + IconsaxPlusLinear.arrow_left_2, size: 20, )), ), @@ -155,7 +155,7 @@ class _HorizontalListState extends ConsumerState { curve: Curves.easeInOut); }, icon: const Icon( - IconsaxOutline.arrow_right_3, + IconsaxPlusLinear.arrow_right_3, size: 20, )), ), diff --git a/lib/widgets/shared/progress_floating_button.dart b/lib/widgets/shared/progress_floating_button.dart index d449e7e..609b30c 100644 --- a/lib/widgets/shared/progress_floating_button.dart +++ b/lib/widgets/shared/progress_floating_button.dart @@ -4,7 +4,7 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:async/async.dart'; -import 'package:ficonsax/ficonsax.dart'; +import 'package:iconsax_plus/iconsax_plus.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:square_progress_indicator/square_progress_indicator.dart'; @@ -160,7 +160,7 @@ class _ProgressFloatingButtonState extends ConsumerState strokeWidth: 4, value: timeLeft.inMilliseconds / timer._duration.inMilliseconds, ), - Icon(isActive ? IconsaxBold.pause : IconsaxBold.play) + Icon(isActive ? IconsaxPlusBold.pause : IconsaxPlusBold.play) ], ), ), diff --git a/pubspec.lock b/pubspec.lock index 479eb3a..a7e06f1 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -502,14 +502,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.3" - ficonsax: - dependency: "direct main" - description: - name: ficonsax - sha256: f7c69817fb4a9a8545ed66656990d4634adad61b2b8d601fb91ba99d389fad47 - url: "https://pub.dev" - source: hosted - version: "0.0.3" file: dependency: transitive description: @@ -890,6 +882,14 @@ packages: url: "https://pub.dev" source: hosted version: "3.0.0" + iconsax_plus: + dependency: "direct main" + description: + name: iconsax_plus + sha256: e9e51b0652a1d3ceea5fedbfc2c1bb4ad432c2ceb7be7de2e30caf085678933c + url: "https://pub.dev" + source: hosted + version: "1.0.0" image: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 2ba16b7..eab4c4e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -37,7 +37,7 @@ dependencies: # Use with the CupertinoIcons class for iOS style icons. # Icons cupertino_icons: ^1.0.8 - ficonsax: ^0.0.3 + iconsax_plus: ^1.0.0 # Network and HTTP chopper: ^8.0.4