[FIX] web_editor, website: allow to define 'null' values in palettes
When [1] was introduced, we prevented to define a 'null' value for a parameter P in a palette and forced a fallback to a default value X defined in a "base" palette (value X which could be null). That allowed to ensure that all final palette values were consistent as always fallbacking to a "safe" value. However, since then, we introduced [2] which makes it so a parameter P in the "base" palette is defined to X (not null) while null is a valid value for P. We could keep the old system and define that paramater P to a 'null' value in the "base" palette and add the default X value in all palettes explicitely... but with this commit we are choosing to be less tolerant (but in fact more tolerant to custo) and rely on the fact palettes are well defined with valid values (e.g. not defining a value to null while only X or Y are allowed for example). Indeed, an exception for the "null" value did not make much sense: if only X or Y are allowed as value for a parameter P, setting a random Z value was not prevented, only null was. [1]: https://github.com/odoo/odoo/commit/05d17089c4a604cb49f1a263b68f39aeffecccda [2]: https://github.com/odoo/odoo/commit/a48a30f954afcb6ff3a59c4f32b05fd0c2cfcd2b Part-of: odoo/odoo#76033
This commit is contained in:
@@ -20,7 +20,7 @@ $-combination-additions: ();
|
||||
$o-color-palette: map-get($o-color-palettes, $o-color-palette-name) or ();
|
||||
// Original color palette can contain override of the default combinations (so keep 'null' values for this merge)
|
||||
$o-color-palette: map-merge($-combination-additions, $o-color-palette);
|
||||
$o-color-palette: map-merge($o-base-color-palette, o-map-omit($o-color-palette));
|
||||
$o-color-palette: map-merge($o-base-color-palette, $o-color-palette);
|
||||
$o-color-palette: o-map-force-nulls($o-color-palette);
|
||||
|
||||
// Theme colors
|
||||
@@ -41,16 +41,16 @@ $o-theme-color-palette: map-merge((
|
||||
// very dark version of a desaturate version of the main color
|
||||
'light': lighten(desaturate($-main-color, 80%), min(70%, max(0%, 97% - $-main-color-lightness))), // Does not increase over 97% lightness
|
||||
'dark': darken(desaturate($-main-color, 80%), min(70%, max(0%, $-main-color-lightness - 10%))), // Does not lower under 10% lightness
|
||||
), o-map-omit($o-theme-color-palette));
|
||||
$o-theme-color-palette: map-merge($o-base-theme-color-palette, o-map-omit($o-theme-color-palette));
|
||||
), $o-theme-color-palette);
|
||||
$o-theme-color-palette: map-merge($o-base-theme-color-palette, $o-theme-color-palette);
|
||||
$o-theme-color-palette: o-map-force-nulls($o-theme-color-palette);
|
||||
|
||||
// Gray colors
|
||||
// Extend grays with transparent ones (for some reason, BS4 create black-50 and
|
||||
// white-50 but does not allow overridding that with variables).
|
||||
$o-gray-color-palette: map-get($o-gray-color-palettes, $o-gray-color-palette-name) or () !default;
|
||||
$o-gray-color-palette: map-merge($o-transparent-grays, o-map-omit($o-gray-color-palette));
|
||||
$o-gray-color-palette: map-merge($o-base-gray-color-palette, o-map-omit($o-gray-color-palette));
|
||||
$o-gray-color-palette: map-merge($o-transparent-grays, $o-gray-color-palette);
|
||||
$o-gray-color-palette: map-merge($o-base-gray-color-palette, $o-gray-color-palette);
|
||||
$o-gray-color-palette: o-map-force-nulls($o-gray-color-palette);
|
||||
|
||||
$o-color-system-initialized: false;
|
||||
|
||||
@@ -54,7 +54,7 @@ $o-fonts-similar: (
|
||||
// automatically replaced with corresponsing values in chosen default values
|
||||
// palette.
|
||||
$-website-values-default: o-safe-nth($o-website-values-palettes, $o-website-values-palette-number, ());
|
||||
$-website-values-default: map-merge($o-base-website-values-palette, o-map-omit($-website-values-default));
|
||||
$-website-values-default: map-merge($o-base-website-values-palette, $-website-values-default);
|
||||
$o-user-website-values: o-map-font-aliases($o-user-website-values);
|
||||
$-actual-user-website-values-palette: map-merge($-website-values-default, $o-user-website-values);
|
||||
// Default font selection + User font selection have been merged, now need to
|
||||
|
||||
Reference in New Issue
Block a user