[REF] website, web_editor: confine 'NULL' "hack" into website
Commit [1] introduced a "hack" to transform `'NULL'` values into `null` values in some maps as normally-defined `null` values are automatically removed (replaced by a fallback). This hack did not need to be general and in web_editor but can rather be confined to website only for the user palette maps (especially since the fix made by the parent of this commit here). [1]: https://github.com/odoo/odoo/commit/a48a30f954afcb6ff3a59c4f32b05fd0c2cfcd2b closes odoo/odoo#76033 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
This commit is contained in:
@@ -21,7 +21,6 @@ $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-color-palette);
|
||||
$o-color-palette: o-map-force-nulls($o-color-palette);
|
||||
|
||||
// Theme colors
|
||||
$o-theme-color-palette: map-get($o-theme-color-palettes, $o-theme-color-palette-name) or () !default;
|
||||
@@ -43,7 +42,6 @@ $o-theme-color-palette: map-merge((
|
||||
'dark': darken(desaturate($-main-color, 80%), min(70%, max(0%, $-main-color-lightness - 10%))), // Does not lower under 10% lightness
|
||||
), $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
|
||||
@@ -51,7 +49,6 @@ $o-theme-color-palette: o-map-force-nulls($o-theme-color-palette);
|
||||
$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-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;
|
||||
|
||||
|
||||
@@ -446,21 +446,6 @@ $o-we-sidebar-content-field-toggle-control-shadow: 0 2px 3px 0 $o-we-bg-darkest
|
||||
// Edited content
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
// Useful to force null values (in website, null values set by the user
|
||||
// are removed to act as "removing the user custo and resetting to theme
|
||||
// default": ideally, we should review that system to actually removing the
|
||||
// custos in that case instead of setting a null value but this cannot be
|
||||
// migrated at the moment).
|
||||
@function o-map-force-nulls($map) {
|
||||
$-map: ();
|
||||
@each $key, $value in $map {
|
||||
$-map: map-merge($-map, (
|
||||
$key: if($value == 'NULL', null, $value),
|
||||
));
|
||||
}
|
||||
@return $-map;
|
||||
}
|
||||
|
||||
$o-support-13-0-color-system: false !default;
|
||||
|
||||
$o-checklist-margin-left: 20px;
|
||||
|
||||
@@ -2055,3 +2055,19 @@ $o-theme-font-configs: (
|
||||
background-image: $-gradient;
|
||||
}
|
||||
};
|
||||
|
||||
// Replaces 'NULL' string values in a map by the sass null value (this is useful
|
||||
// as a "hack" to allow users to define null values in their custom palette as
|
||||
// normal null values are immediately removed to act as "removing the user custo
|
||||
// and resetting to theme default": ideally, we should review that system to
|
||||
// actually removing the custos in those cases instead of setting a null value
|
||||
// but this cannot be migrated at the moment).
|
||||
@function o-map-force-nulls($map) {
|
||||
$-map: ();
|
||||
@each $key, $value in $map {
|
||||
$-map: map-merge($-map, (
|
||||
$key: if($value == 'NULL', null, $value),
|
||||
));
|
||||
}
|
||||
@return $-map;
|
||||
}
|
||||
|
||||
@@ -53,9 +53,10 @@ $o-fonts-similar: (
|
||||
// By default, most website palette values are null. Each null value is
|
||||
// automatically replaced with corresponsing values in chosen default values
|
||||
// palette.
|
||||
$o-user-website-values: o-map-force-nulls($o-user-website-values);
|
||||
$o-user-website-values: o-map-font-aliases($o-user-website-values);
|
||||
$-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, $-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
|
||||
// add the right associated font default config
|
||||
@@ -67,7 +68,7 @@ $o-website-values-palettes: append($o-website-values-palettes, $-actual-user-web
|
||||
|
||||
// Enable last website values palette, which is now the user customized one
|
||||
$o-website-values-palette-number: length($o-website-values-palettes);
|
||||
$o-website-values: o-map-force-nulls($-actual-user-website-values-palette) !default;
|
||||
$o-website-values: $-actual-user-website-values-palette !default;
|
||||
@function o-website-value($key) {
|
||||
@return map-get($o-website-values, $key);
|
||||
}
|
||||
@@ -132,6 +133,7 @@ $o-has-customized-colors:
|
||||
// By default, most user color palette values are null. Each null value is
|
||||
// automatically replaced with corresponsing colors in chosen default color
|
||||
// palette.
|
||||
$o-user-color-palette: o-map-force-nulls($o-user-color-palette);
|
||||
$-palette-default: map-get($o-color-palettes, $o-color-palette-name) or ();
|
||||
$-actual-user-color-palette: map-merge($-palette-default, $o-user-color-palette);
|
||||
// Compatibility with old values in old names
|
||||
@@ -162,6 +164,7 @@ $o-color-palettes: map-merge($o-color-palettes, ('user-palette': $-actual-user-c
|
||||
// By default, most user gray palette values are null. Each null value is
|
||||
// automatically replaced with corresponsing colors in chosen default color
|
||||
// palette.
|
||||
$o-user-gray-color-palette: o-map-force-nulls($o-user-gray-color-palette);
|
||||
$-palette-default: map-get($o-gray-color-palettes, $o-gray-color-palette-name) or ();
|
||||
$-actual-user-gray-color-palette: map-merge($-palette-default, $o-user-gray-color-palette);
|
||||
$o-gray-color-palettes: map-merge($o-gray-color-palettes, ('user-palette': $-actual-user-gray-color-palette));
|
||||
@@ -184,6 +187,7 @@ $-alpha: map-get($o-user-theme-color-palette, 'alpha');
|
||||
// By default, all user theme color palette values are null. Each null value is
|
||||
// automatically replaced with corresponsing colors in chosen default theme
|
||||
// color palette.
|
||||
$o-user-theme-color-palette: o-map-force-nulls($o-user-theme-color-palette);
|
||||
$-palette-default: map-get($o-theme-color-palettes, $o-theme-color-palette-name) or ();
|
||||
$-actual-user-theme-color-palette: map-merge($-palette-default, $o-user-theme-color-palette);
|
||||
// Always remove the primary/secondary which were customizable in some theme
|
||||
|
||||
Reference in New Issue
Block a user