diff --git a/djangobower/finders.py b/djangobower/finders.py index 746cb6d..bac8ca3 100644 --- a/djangobower/finders.py +++ b/djangobower/finders.py @@ -3,6 +3,7 @@ except ImportError: from ordereddict import OrderedDict +from django.conf import settings from django.contrib.staticfiles.finders import FileSystemFinder from django.core.files.storage import FileSystemStorage from . import conf @@ -25,6 +26,19 @@ def __init__(self, apps=None, *args, **kwargs): filesystem_storage.prefix = prefix self.storages[root] = filesystem_storage + def list(self, ignore_patterns): + # inspired by + # https://stackoverflow.com/questions/12082902/how-do-i-ignore-static-files-of-a-particular-app-only-with-collectstatic/27368843 + ignore = getattr(settings, 'BOWER_IGNORE_PATTERNS', None) + + if ignore: + if ignore_patterns: + ignore_patterns.extend(ignore) + else: + ignore_patterns = ignore + + return super().list(ignore_patterns) + def _get_bower_components_location(self): """ Return the bower components location, or None if one does not exist.