json-joy
Version:
Collection of libraries for building collaborative editing apps.
22 lines (21 loc) • 859 B
JavaScript
import { CommonSliceType } from '../../../json-crdt-extensions';
export const text = (props, inline) => {
const style = (props.style || (props.style = {}));
const attrs = inline.attr();
let textDecoration = '';
let attr;
if (attrs[CommonSliceType.b])
style.fontWeight = 'bold';
if (attrs[CommonSliceType.i])
style.fontStyle = 'italic';
if (attrs[CommonSliceType.u])
textDecoration = 'underline';
if (attrs[CommonSliceType.overline])
textDecoration = textDecoration ? textDecoration + ' overline' : 'overline';
if (attrs[CommonSliceType.s])
textDecoration = textDecoration ? textDecoration + ' line-through' : 'line-through';
if ((attr = attrs[CommonSliceType.col]))
style.color = attr[0].slice.data() + '';
style.textDecoration = textDecoration;
return props;
};