Skip to content
Snippets Groups Projects
Commit c02b72d9 authored by Dennis Ahrens's avatar Dennis Ahrens
Browse files

This should also work for watchassets, of course...

parent 2e8d5a60
No related branches found
No related tags found
1 merge request!1Support multiple scss include paths
......@@ -10,12 +10,16 @@ from watchdog.observers import Observer
class AssetBuildHandler(events.PatternMatchingEventHandler):
def __init__(self, scss_include_paths, *args, **kwargs):
super().__init__(*args, **kwargs)
self.scss_include_paths = scss_include_paths
def on_modified(self, event):
if isinstance(event, events.FileModifiedEvent):
print('File modified: \033[35m{}\033[0m'.format(event.src_path))
try:
app_name, app_directories = utils.discover_app(event.src_path)
utils.build_specific(app_name, app_directories, event.src_path)
utils.build_specific(app_name, app_directories, event.src_path, self.scss_include_paths)
except Exception as e:
print('Failed! \033[31m(✖_✖)\033[0m\n')
traceback.print_exc()
......@@ -47,10 +51,12 @@ class Command(BaseCommand):
observer = Observer()
build_handler = AssetBuildHandler(patterns=['*.js', '*.sass', '*.scss', '*.css'])
image_handler = ImageHandler(patterns=['*'])
asset_directories = utils.get_asset_directories()
scss_include_paths = utils.get_scss_include_paths(asset_directories)
for app_name, app_directories in utils.get_asset_directories().items():
build_handler = AssetBuildHandler(scss_include_paths, patterns=['*.js', '*.sass', '*.scss', '*.css'])
image_handler = ImageHandler(patterns=['*'])
for app_name, app_directories in asset_directories.items():
if not os.path.isdir(app_directories['static_path']):
os.makedirs(app_directories['static_path'])
......
......@@ -217,8 +217,8 @@ def do_everything(verbose=False):
copy_fonts(app_name, app_directories, verbose=verbose)
def build_specific(app_name, app_directories, file_path):
def build_specific(app_name, app_directories, file_path, scss_include_paths):
if file_path.endswith(('.sass', '.scss', '.css')):
build_scss(app_name, app_directories)
build_scss(app_name, app_directories, scss_include_paths)
elif file_path.endswith(('.js')):
build_javascript(app_name, app_directories)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment