Custom Theme object
In this example we will set the editor theme to a custom object, modifying the colors of all components at once.
Purple Theme example
Code
unlayer.init({
id: 'editor',
displayMode: 'email',
appearance: {
theme: {
name: 'custom_modern_dark_purple',
extends: 'modern_dark',
isClassic: false,
isDark: true,
mapping: {
borderRadius: {
none: '0',
min: '2px',
mid: '8px',
max: '12px',
full: '50%',
},
colors: {
accent_01: '#9632a0',
accent_02: '#ae70b4',
accent_03: '#bf87c4',
accent_04: '#d9b4dc',
accent_05: '#eed5f0',
primary_01: '#ffffff',
primary_02: '#f2ebf4',
primary_03: '#e8dded',
primary_04: '#d2c2d6',
primary_05: '#9c95a6',
primary_06: '#906994',
primary_07: '#5d425c',
primary_08: '#4f344d',
primary_09: '#3c263d',
primary_10: '#4e2e51',
primary_11: '#441e42',
},
},
},
},
});
Theme Functions
You can also use the built-in functions fade, darken and lighten in your theme variables, as well as create any new variable you want inside the mapping field, which can then be referenced later. Here's an example for a blue theme:
Code
unlayer.init({
id: 'editor',
displayMode: 'email',
appearance: {
theme: {
name: 'custom_modern_dark_blue',
extends: 'modern_dark',
isClassic: false,
isDark: true,
mapping: {
colors: {
base_primary_color: '#121826',
primary_01: 'lighten(95%, {base_primary_color})',
primary_02: 'lighten(87%, {base_primary_color})',
primary_03: 'lighten(85%, {base_primary_color})',
primary_04: 'lighten(75%, {base_primary_color})',
primary_05: 'lighten(58%, {base_primary_color})',
primary_06: 'lighten(40%, {base_primary_color})',
primary_07: 'lighten(25%, {base_primary_color})',
primary_08: 'lighten(15%, {base_primary_color})',
primary_09: 'lighten(6%, {base_primary_color})',
primary_10: 'lighten(3%, {base_primary_color})',
primary_11: 'lighten(0%, {base_primary_color})',
},
},
},
},
});