AssetResolver::getCssAssets $cid does not account for ckeditor5-stylesheets variations

Created on 31 May 2024, 27 days ago
Updated 3 June 2024, 24 days ago

Problem/Motivation

In a scenario with the domain module, domain_config to set default theme differently per domain, themes with declared ckeditor5-stylesheets, and a configured admin theme; Drupal will utilize only one CSS aggregate for both domains.

The AssetResolver::getCssAssets logic to generate the $cid only uses the active theme, which will be the configured admin theme.

    $theme_info = $this->themeManager->getActiveTheme();
    // Add the theme name to the cache key since themes may implement
    // hook_library_info_alter().
    $cid = 'css:' . $theme_info->getName() . ':' . $language->getId() . Crypt::hashBase64(serialize($libraries_to_load)) . (int) $optimize;

This $cid value does not account for a default theme's ckeditor5-stylesheets values. Usually, this isn't an issue when there is a single default theme. However, in the case when the default theme can be dynamically set, the $cid and its css will be same and not represent each default theme's ckeditor5-stylesheets values.

Steps to reproduce

- Install multiple themes that utilize different ckeditor5-stylesheets
- Utilize a solution to dynamically set the default theme (e.g. use domain module and domain_config module to set default theme different per domain)
- Create/edit content with formatted text field using ckeditor5 utilizing admin theme with default theme A, observe one set of styles
- Edit same content within dynamic conditions to use the other default theme B, observe the same styles; expect theme B ckeditor5-stylesheets styles

Proposed resolution

- Change $cid to use default theme

Remaining tasks

- consensus on solution
- patch and tests

User interface changes

- none

API changes

- none

Data model changes

- none

Release notes snippet

TBD

πŸ› Bug report
Status

Needs work

Version

11.0 πŸ”₯

Component
Asset libraryΒ  β†’

Last updated about 5 hours ago

No maintainer
Created by

πŸ‡ΊπŸ‡ΈUnited States jasonawant New Orleans, USA

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

Production build 0.69.0 2024