X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/f86bb27a830b14cc7e872a3a735b9fe2b031032e..45d08604482ff811f1627f8dc489f14b455ea75c:/resources/js/wysiwyg/config.js diff --git a/resources/js/wysiwyg/config.js b/resources/js/wysiwyg/config.js index 49d2add77..acf5e1d52 100644 --- a/resources/js/wysiwyg/config.js +++ b/resources/js/wysiwyg/config.js @@ -3,6 +3,7 @@ import {listen as listenForCommonEvents} from "./common-events"; import {scrollToQueryString} from "./scrolling"; import {listenForDragAndPaste} from "./drop-paste-handling"; import {getPrimaryToolbar, registerAdditionalToolbars} from "./toolbars"; +import {registerCustomIcons} from "./icons"; import {getPlugin as getCodeeditorPlugin} from "./plugin-codeeditor"; import {getPlugin as getDrawioPlugin} from "./plugin-drawio"; @@ -39,6 +40,35 @@ const formats = { calloutdanger: {block: 'p', exact: true, attributes: {class: 'callout danger'}} }; +const color_map = [ + '#BFEDD2', '', + '#FBEEB8', '', + '#F8CAC6', '', + '#ECCAFA', '', + '#C2E0F4', '', + + '#2DC26B', '', + '#F1C40F', '', + '#E03E2D', '', + '#B96AD9', '', + '#3598DB', '', + + '#169179', '', + '#E67E23', '', + '#BA372A', '', + '#843FA1', '', + '#236FA1', '', + + '#ECF0F1', '', + '#CED4D9', '', + '#95A5A6', '', + '#7E8C8D', '', + '#34495E', '', + + '#000000', '', + '#ffffff', '' +]; + function file_picker_callback(callback, value, meta) { // field_name, url, type, win @@ -137,13 +167,13 @@ function getSetupCallback(options) { return function(editor) { editor.on('ExecCommand change input NodeChange ObjectResized', editorChange); listenForCommonEvents(editor); - registerShortcuts(editor); listenForDragAndPaste(editor, options); editor.on('init', () => { editorChange(); scrollToQueryString(editor); window.editor = editor; + registerShortcuts(editor); }); editor.on('PreInit', () => { @@ -226,7 +256,7 @@ export function build(options) { statusbar: false, menubar: false, paste_data_images: false, - extended_valid_elements: 'pre[*],svg[*],div[drawio-diagram],details[*],summary[*],div[*],li[class|checked]', + extended_valid_elements: 'pre[*],svg[*],div[drawio-diagram],details[*],summary[*],div[*],li[class|checked|style]', automatic_uploads: false, custom_elements: 'doc-root,code-block', valid_children: [ @@ -246,9 +276,10 @@ export function build(options) { media_alt_source: false, media_poster: false, formats, - table_style_by_css: false, - table_use_colgroups: false, + table_style_by_css: true, + table_use_colgroups: true, file_picker_types: 'file image', + color_map, file_picker_callback, paste_preprocess(plugin, args) { const content = args.content; @@ -261,6 +292,7 @@ export function build(options) { head.innerHTML += fetchCustomHeadContent(); }, setup(editor) { + registerCustomIcons(editor); registerAdditionalToolbars(editor, options); getSetupCallback(options)(editor); },