diff --git a/lib/model/filters/covered/album_base.dart b/lib/model/filters/covered/album_base.dart new file mode 100644 index 000000000..fdbe484fe --- /dev/null +++ b/lib/model/filters/covered/album_base.dart @@ -0,0 +1,14 @@ +import 'package:aves/model/filters/filters.dart'; +import 'package:aves_model/aves_model.dart'; + +abstract class AlbumBaseFilter extends CollectionFilter { + const AlbumBaseFilter({required super.reversed}); + + bool match(String query); + + StorageVolume? get storageVolume; + + bool get canRename; + + bool get isVault; +} diff --git a/lib/model/filters/covered/dynamic_album.dart b/lib/model/filters/covered/dynamic_album.dart index d8991ce5f..004798c95 100644 --- a/lib/model/filters/covered/dynamic_album.dart +++ b/lib/model/filters/covered/dynamic_album.dart @@ -1,5 +1,5 @@ +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/covered.dart'; -import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/theme/icons.dart'; import 'package:aves_model/aves_model.dart'; diff --git a/lib/model/filters/covered/stored_album.dart b/lib/model/filters/covered/stored_album.dart index 91ec8f6ad..a6940a453 100644 --- a/lib/model/filters/covered/stored_album.dart +++ b/lib/model/filters/covered/stored_album.dart @@ -1,4 +1,5 @@ import 'package:aves/model/covers.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/covered.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/vaults/vaults.dart'; @@ -12,18 +13,6 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/widgets.dart'; import 'package:provider/provider.dart'; -abstract class AlbumBaseFilter extends CollectionFilter { - const AlbumBaseFilter({required super.reversed}); - - bool match(String query); - - StorageVolume? get storageVolume; - - bool get canRename; - - bool get isVault; -} - class StoredAlbumFilter extends AlbumBaseFilter with CoveredFilter { static const type = 'album'; diff --git a/lib/model/settings/modules/navigation.dart b/lib/model/settings/modules/navigation.dart index 6b24ed152..a09684233 100644 --- a/lib/model/settings/modules/navigation.dart +++ b/lib/model/settings/modules/navigation.dart @@ -1,4 +1,4 @@ -import 'package:aves/model/filters/covered/stored_album.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/settings/defaults.dart'; import 'package:aves_model/aves_model.dart'; diff --git a/lib/model/source/album.dart b/lib/model/source/album.dart index 032ba52c4..8fcd01967 100644 --- a/lib/model/source/album.dart +++ b/lib/model/source/album.dart @@ -1,4 +1,5 @@ import 'package:aves/model/entry/entry.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/settings/settings.dart'; diff --git a/lib/model/source/collection_source.dart b/lib/model/source/collection_source.dart index 4ef958f47..a9859c14a 100644 --- a/lib/model/source/collection_source.dart +++ b/lib/model/source/collection_source.dart @@ -8,6 +8,7 @@ import 'package:aves/model/entry/extensions/keys.dart'; import 'package:aves/model/entry/extensions/location.dart'; import 'package:aves/model/entry/sort.dart'; import 'package:aves/model/favourites.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/location.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/covered/tag.dart'; diff --git a/lib/widgets/dialogs/pick_dialogs/album_pick_page.dart b/lib/widgets/dialogs/pick_dialogs/album_pick_page.dart index ce31a9357..f212d59f8 100644 --- a/lib/widgets/dialogs/pick_dialogs/album_pick_page.dart +++ b/lib/widgets/dialogs/pick_dialogs/album_pick_page.dart @@ -1,4 +1,5 @@ import 'package:aves/app_mode.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/selection.dart'; diff --git a/lib/widgets/filter_grids/albums_page.dart b/lib/widgets/filter_grids/albums_page.dart index 2da03354f..50d8949a1 100644 --- a/lib/widgets/filter_grids/albums_page.dart +++ b/lib/widgets/filter_grids/albums_page.dart @@ -2,8 +2,9 @@ import 'package:aves/model/app_inventory.dart'; import 'package:aves/model/covers.dart'; import 'package:aves/model/dynamic_albums.dart'; import 'package:aves/model/entry/extensions/props.dart'; -import 'package:aves/model/filters/covered/stored_album.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; +import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/settings/settings.dart'; import 'package:aves/model/source/album.dart'; diff --git a/lib/widgets/filter_grids/common/action_delegates/album_set.dart b/lib/widgets/filter_grids/common/action_delegates/album_set.dart index 557978bee..930d0ba96 100644 --- a/lib/widgets/filter_grids/common/action_delegates/album_set.dart +++ b/lib/widgets/filter_grids/common/action_delegates/album_set.dart @@ -4,6 +4,7 @@ import 'package:aves/app_mode.dart'; import 'package:aves/model/covers.dart'; import 'package:aves/model/dynamic_albums.dart'; import 'package:aves/model/entry/entry.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/filters.dart'; diff --git a/lib/widgets/filter_grids/common/action_delegates/chip.dart b/lib/widgets/filter_grids/common/action_delegates/chip.dart index c250ee3ee..4f142b9b2 100644 --- a/lib/widgets/filter_grids/common/action_delegates/chip.dart +++ b/lib/widgets/filter_grids/common/action_delegates/chip.dart @@ -1,3 +1,4 @@ +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; import 'package:aves/model/filters/covered/location.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; diff --git a/lib/widgets/filter_grids/common/filter_nav_page.dart b/lib/widgets/filter_grids/common/filter_nav_page.dart index a45608079..0a0c8daaa 100644 --- a/lib/widgets/filter_grids/common/filter_nav_page.dart +++ b/lib/widgets/filter_grids/common/filter_nav_page.dart @@ -1,3 +1,4 @@ +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/settings/settings.dart'; diff --git a/lib/widgets/navigation/drawer/app_drawer.dart b/lib/widgets/navigation/drawer/app_drawer.dart index 55fe4a623..aadb5fce2 100644 --- a/lib/widgets/navigation/drawer/app_drawer.dart +++ b/lib/widgets/navigation/drawer/app_drawer.dart @@ -1,3 +1,4 @@ +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; import 'package:aves/model/filters/trash.dart'; diff --git a/lib/widgets/navigation/drawer/collection_nav_tile.dart b/lib/widgets/navigation/drawer/collection_nav_tile.dart index e5f8676d0..4d1f60cd5 100644 --- a/lib/widgets/navigation/drawer/collection_nav_tile.dart +++ b/lib/widgets/navigation/drawer/collection_nav_tile.dart @@ -1,4 +1,4 @@ -import 'package:aves/model/filters/covered/stored_album.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/source/collection_source.dart'; import 'package:aves/theme/icons.dart'; diff --git a/lib/widgets/search/search_delegate.dart b/lib/widgets/search/search_delegate.dart index 8a60342e5..a80ad0a1d 100644 --- a/lib/widgets/search/search_delegate.dart +++ b/lib/widgets/search/search_delegate.dart @@ -1,5 +1,6 @@ import 'package:aves/model/dynamic_albums.dart'; import 'package:aves/model/filters/aspect_ratio.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/covered/dynamic_album.dart'; import 'package:aves/model/filters/covered/location.dart'; import 'package:aves/model/filters/covered/stored_album.dart'; diff --git a/lib/widgets/settings/navigation/drawer.dart b/lib/widgets/settings/navigation/drawer.dart index 417ff86fa..66f0bc787 100644 --- a/lib/widgets/settings/navigation/drawer.dart +++ b/lib/widgets/settings/navigation/drawer.dart @@ -1,4 +1,4 @@ -import 'package:aves/model/filters/covered/stored_album.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/filters/filters.dart'; import 'package:aves/model/filters/recent.dart'; import 'package:aves/model/settings/settings.dart'; diff --git a/lib/widgets/settings/navigation/drawer_tab_albums.dart b/lib/widgets/settings/navigation/drawer_tab_albums.dart index d3d088a1b..77590098e 100644 --- a/lib/widgets/settings/navigation/drawer_tab_albums.dart +++ b/lib/widgets/settings/navigation/drawer_tab_albums.dart @@ -1,4 +1,4 @@ -import 'package:aves/model/filters/covered/stored_album.dart'; +import 'package:aves/model/filters/covered/album_base.dart'; import 'package:aves/model/settings/settings.dart'; import 'package:aves/theme/icons.dart'; import 'package:aves/widgets/common/extensions/build_context.dart';