Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 1x 1x 1x 2984x 2984x 78x 3226x 47x | import { getColor, setColor } from '../utils/color';
import { shouldSetValue } from '../utils/shouldSetValue';
import type { BackgroundColorFormat } from 'roosterjs-content-model-types';
import type { FormatHandler } from '../FormatHandler';
/**
* @internal
*/
export const backgroundColorFormatHandler: FormatHandler<BackgroundColorFormat> = {
parse: (format, element, context, defaultStyle) => {
const backgroundColor =
getColor(
element,
true /*isBackground*/,
!!context.isDarkMode,
context.darkColorHandler
) || defaultStyle.backgroundColor;
if (
shouldSetValue(
backgroundColor,
'transparent',
undefined /*existingValue*/,
defaultStyle.backgroundColor
)
) {
format.backgroundColor = backgroundColor;
}
},
apply: (format, element, context) => {
if (format.backgroundColor) {
setColor(
element,
format.backgroundColor,
true /*isBackground*/,
!!context.isDarkMode,
context.darkColorHandler
);
}
},
};
|