diff --git a/src/filters/boardgame_filters.py b/src/filters/boardgame_filters.py new file mode 100644 index 0000000..4b60707 --- /dev/null +++ b/src/filters/boardgame_filters.py @@ -0,0 +1,21 @@ +from typing import Union + +from src.classes import boardgame_classes + +def filter_expansions_out(to_filter_boardgames: list[Union[ + list[boardgame_classes.BoardGame], list[boardgame_classes.BoardGameExpansion], + list[boardgame_classes.OwnedBoardGame], list[boardgame_classes.OwnedBoardGameExpansion], + list[boardgame_classes.WishlistBoardGame], list[boardgame_classes.WishlistBoardGameExpansion]]]): + + filtered_boardgames = list(filter(lambda x: type(x) in [boardgame_classes.BoardGame, boardgame_classes.OwnedBoardGame, boardgame_classes.WishlistBoardGame], to_filter_boardgames)) + + return filtered_boardgames + +def filter_non_expansions_out(to_filter_boardgames: list[Union[ + list[boardgame_classes.BoardGame], list[boardgame_classes.BoardGameExpansion], + list[boardgame_classes.OwnedBoardGame], list[boardgame_classes.OwnedBoardGameExpansion], + list[boardgame_classes.WishlistBoardGame], list[boardgame_classes.WishlistBoardGameExpansion]]]): + + filtered_boardgames = list(filter(lambda x: type(x) in [boardgame_classes.BoardGameExpansion, boardgame_classes.OwnedBoardGameExpansion, boardgame_classes.WishlistBoardGameExpansion], to_filter_boardgames)) + + return filtered_boardgames \ No newline at end of file