ngx-editor
Version:
Rich Text Editor for angular using ProseMirror
58 lines • 5.41 kB
JavaScript
// Icons source: https://material.io/
import bold from './bold';
import italic from './italic';
import code from './code';
import underline from './underline';
import strike from './strike';
import orderedList from './ordered_list';
import bulletList from './bullet_list';
import quote from './quote';
import link from './link';
import unlink from './unlink';
import image from './image';
import alignLeft from './align_left';
import alignCenter from './align_center';
import alignRight from './align_right';
import alignJustify from './align_justify';
import textColor from './text_color';
import colorFill from './color_fill';
const DEFAULT_ICON_HEIGHT = 20;
const DEFAULT_ICON_WIDTH = 20;
const DEFAULT_ICON_FILL = 'currentColor';
const icons = {
bold,
italic,
code,
underline,
strike,
ordered_list: orderedList,
bullet_list: bulletList,
blockquote: quote,
link,
unlink,
image,
align_left: alignLeft,
align_center: alignCenter,
align_right: alignRight,
align_justify: alignJustify,
text_color: textColor,
color_fill: colorFill,
};
class Icon {
static get(name, fill = DEFAULT_ICON_FILL) {
const path = icons[name] || '<path></path>';
return `
<svg
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
fill=${fill}
height=${DEFAULT_ICON_HEIGHT}
width=${DEFAULT_ICON_WIDTH}
>
${path}
</svg>
`;
}
}
export default Icon;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL3NyYy9saWIvaWNvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEscUNBQXFDO0FBRXJDLE9BQU8sSUFBSSxNQUFNLFFBQVEsQ0FBQztBQUMxQixPQUFPLE1BQU0sTUFBTSxVQUFVLENBQUM7QUFDOUIsT0FBTyxJQUFJLE1BQU0sUUFBUSxDQUFDO0FBQzFCLE9BQU8sU0FBUyxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLE1BQU0sTUFBTSxVQUFVLENBQUM7QUFDOUIsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sS0FBSyxNQUFNLFNBQVMsQ0FBQztBQUM1QixPQUFPLElBQUksTUFBTSxRQUFRLENBQUM7QUFDMUIsT0FBTyxNQUFNLE1BQU0sVUFBVSxDQUFDO0FBQzlCLE9BQU8sS0FBSyxNQUFNLFNBQVMsQ0FBQztBQUM1QixPQUFPLFNBQVMsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxVQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sWUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sU0FBUyxNQUFNLGNBQWMsQ0FBQztBQUNyQyxPQUFPLFNBQVMsTUFBTSxjQUFjLENBQUM7QUFFckMsTUFBTSxtQkFBbUIsR0FBRyxFQUFFLENBQUM7QUFDL0IsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFDOUIsTUFBTSxpQkFBaUIsR0FBRyxjQUFjLENBQUM7QUFFekMsTUFBTSxLQUFLLEdBQXdCO0lBQ2pDLElBQUk7SUFDSixNQUFNO0lBQ04sSUFBSTtJQUNKLFNBQVM7SUFDVCxNQUFNO0lBQ04sWUFBWSxFQUFFLFdBQVc7SUFDekIsV0FBVyxFQUFFLFVBQVU7SUFDdkIsVUFBVSxFQUFFLEtBQUs7SUFDakIsSUFBSTtJQUNKLE1BQU07SUFDTixLQUFLO0lBQ0wsVUFBVSxFQUFFLFNBQVM7SUFDckIsWUFBWSxFQUFFLFdBQVc7SUFDekIsV0FBVyxFQUFFLFVBQVU7SUFDdkIsYUFBYSxFQUFFLFlBQVk7SUFDM0IsVUFBVSxFQUFFLFNBQVM7SUFDckIsVUFBVSxFQUFFLFNBQVM7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sSUFBSTtJQUNSLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBd0IsRUFBRSxJQUFJLEdBQUcsaUJBQWlCO1FBQzNELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxlQUFlLENBQUM7UUFDNUMsT0FBTzs7OztlQUlJLElBQUk7aUJBQ0YsbUJBQW1CO2dCQUNwQixrQkFBa0I7O1VBRXhCLElBQUk7O0tBRVQsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVELGVBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gSWNvbnMgc291cmNlOiBodHRwczovL21hdGVyaWFsLmlvL1xuXG5pbXBvcnQgYm9sZCBmcm9tICcuL2JvbGQnO1xuaW1wb3J0IGl0YWxpYyBmcm9tICcuL2l0YWxpYyc7XG5pbXBvcnQgY29kZSBmcm9tICcuL2NvZGUnO1xuaW1wb3J0IHVuZGVybGluZSBmcm9tICcuL3VuZGVybGluZSc7XG5pbXBvcnQgc3RyaWtlIGZyb20gJy4vc3RyaWtlJztcbmltcG9ydCBvcmRlcmVkTGlzdCBmcm9tICcuL29yZGVyZWRfbGlzdCc7XG5pbXBvcnQgYnVsbGV0TGlzdCBmcm9tICcuL2J1bGxldF9saXN0JztcbmltcG9ydCBxdW90ZSBmcm9tICcuL3F1b3RlJztcbmltcG9ydCBsaW5rIGZyb20gJy4vbGluayc7XG5pbXBvcnQgdW5saW5rIGZyb20gJy4vdW5saW5rJztcbmltcG9ydCBpbWFnZSBmcm9tICcuL2ltYWdlJztcbmltcG9ydCBhbGlnbkxlZnQgZnJvbSAnLi9hbGlnbl9sZWZ0JztcbmltcG9ydCBhbGlnbkNlbnRlciBmcm9tICcuL2FsaWduX2NlbnRlcic7XG5pbXBvcnQgYWxpZ25SaWdodCBmcm9tICcuL2FsaWduX3JpZ2h0JztcbmltcG9ydCBhbGlnbkp1c3RpZnkgZnJvbSAnLi9hbGlnbl9qdXN0aWZ5JztcbmltcG9ydCB0ZXh0Q29sb3IgZnJvbSAnLi90ZXh0X2NvbG9yJztcbmltcG9ydCBjb2xvckZpbGwgZnJvbSAnLi9jb2xvcl9maWxsJztcblxuY29uc3QgREVGQVVMVF9JQ09OX0hFSUdIVCA9IDIwO1xuY29uc3QgREVGQVVMVF9JQ09OX1dJRFRIID0gMjA7XG5jb25zdCBERUZBVUxUX0lDT05fRklMTCA9ICdjdXJyZW50Q29sb3InO1xuXG5jb25zdCBpY29uczogUmVjb3JkPHN0cmluZywgYW55PiA9IHtcbiAgYm9sZCxcbiAgaXRhbGljLFxuICBjb2RlLFxuICB1bmRlcmxpbmUsXG4gIHN0cmlrZSxcbiAgb3JkZXJlZF9saXN0OiBvcmRlcmVkTGlzdCxcbiAgYnVsbGV0X2xpc3Q6IGJ1bGxldExpc3QsXG4gIGJsb2NrcXVvdGU6IHF1b3RlLFxuICBsaW5rLFxuICB1bmxpbmssXG4gIGltYWdlLFxuICBhbGlnbl9sZWZ0OiBhbGlnbkxlZnQsXG4gIGFsaWduX2NlbnRlcjogYWxpZ25DZW50ZXIsXG4gIGFsaWduX3JpZ2h0OiBhbGlnblJpZ2h0LFxuICBhbGlnbl9qdXN0aWZ5OiBhbGlnbkp1c3RpZnksXG4gIHRleHRfY29sb3I6IHRleHRDb2xvcixcbiAgY29sb3JfZmlsbDogY29sb3JGaWxsLFxufTtcblxuY2xhc3MgSWNvbiB7XG4gIHN0YXRpYyBnZXQobmFtZToga2V5b2YgdHlwZW9mIGljb25zLCBmaWxsID0gREVGQVVMVF9JQ09OX0ZJTEwpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhdGggPSBpY29uc1tuYW1lXSB8fCAnPHBhdGg+PC9wYXRoPic7XG4gICAgcmV0dXJuIGBcbiAgICAgIDxzdmdcbiAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxuICAgICAgICBmaWxsPSR7ZmlsbH1cbiAgICAgICAgaGVpZ2h0PSR7REVGQVVMVF9JQ09OX0hFSUdIVH1cbiAgICAgICAgd2lkdGg9JHtERUZBVUxUX0lDT05fV0lEVEh9XG4gICAgICA+XG4gICAgICAgICR7cGF0aH1cbiAgICAgIDwvc3ZnPlxuICAgIGA7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSWNvbjtcbiJdfQ==