Revert "build: Decouple XModule styles from LMS/Studio styles (#32018)" (#32183)

This reverts commit 471ba9121b.
This commit is contained in:
connorhaugh
2023-05-04 09:59:15 -04:00
committed by GitHub
parent 4de07c25d0
commit b9be2b1e56
18 changed files with 14 additions and 166 deletions

View File

@@ -91,7 +91,7 @@ XBLOCK_CLASSES = [
def write_module_styles(output_root):
"""Write all registered XModule css, sass, and scss files to output root."""
return _write_styles('.xmodule_display', output_root, XBLOCK_CLASSES, 'get_preview_view_css', 'Preview')
return _write_styles('.xmodule_display', output_root, XBLOCK_CLASSES, 'get_preview_view_css')
def write_module_js(output_root):
@@ -101,7 +101,7 @@ def write_module_js(output_root):
def write_descriptor_styles(output_root):
"""Write all registered XModuleDescriptor css, sass, and scss files to output root."""
return _write_styles('.xmodule_edit', output_root, XBLOCK_CLASSES, 'get_studio_view_css', 'Studio')
return _write_styles('.xmodule_edit', output_root, XBLOCK_CLASSES, 'get_studio_view_css')
def write_descriptor_js(output_root):
@@ -120,7 +120,7 @@ def _ensure_dir(directory):
raise
def _write_styles(selector, output_root, classes, css_attribute, suffix):
def _write_styles(selector, output_root, classes, css_attribute):
"""
Write the css fragments from all XModules in `classes`
into `output_root` as individual files, hashed by the contents to remove
@@ -147,18 +147,17 @@ def _write_styles(selector, output_root, classes, css_attribute, suffix):
for class_ in classes:
css_imports[class_].add(fragment_name)
for class_, fragment_names in sorted(css_imports.items()):
module_styles_lines = []
module_styles_lines = []
for class_, fragment_names in sorted(css_imports.items()):
fragment_names = sorted(fragment_names)
module_styles_lines.append("""{selector}.xmodule_{class_} {{""".format(
class_=class_, selector=selector
))
module_styles_lines.extend(f' @import "{name}";' for name in fragment_names)
module_styles_lines.append('}')
file_hash = hashlib.md5("".join(fragment_names).encode('ascii')).hexdigest()
contents[f"{class_}{suffix}.{file_hash}.scss"] = '\n'.join(module_styles_lines)
contents['_module-styles.scss'] = '\n'.join(module_styles_lines)
_write_files(output_root, contents)
@@ -306,9 +305,9 @@ def main():
root = path(args['<output_root>'])
descriptor_files = write_descriptor_js(root / 'descriptors/js')
write_descriptor_styles(root / 'descriptors/scss')
write_descriptor_styles(root / 'descriptors/css')
module_files = write_module_js(root / 'modules/js')
write_module_styles(root / 'modules/scss')
write_module_styles(root / 'modules/css')
write_webpack(root / 'webpack.xmodule.config.js', module_files, descriptor_files)