X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/74b76ecdb924787d0d0f190bd1e384ddf50b1a16..refs/pull/4247/head:/resources/js/code/views.js diff --git a/resources/js/code/views.js b/resources/js/code/views.js index 54490bc29..12148ca09 100644 --- a/resources/js/code/views.js +++ b/resources/js/code/views.js @@ -1,9 +1,6 @@ -import {getLanguageExtension} from "./languages" -import {HighlightStyle, syntaxHighlighting} from "@codemirror/language"; -import {Compartment} from "@codemirror/state" -import {EditorView} from "@codemirror/view" -import {oneDarkTheme, oneDarkHighlightStyle} from "@codemirror/theme-one-dark" -import {tags} from "@lezer/highlight" +import {Compartment} from '@codemirror/state'; +import {EditorView} from '@codemirror/view'; +import {getLanguageExtension} from './languages'; const viewLangCompartments = new WeakMap(); @@ -16,7 +13,6 @@ const viewLangCompartments = new WeakMap(); export function createView(config) { const langCompartment = new Compartment(); config.extensions.push(langCompartment.of([])); - config.extensions.push(getTheme(config.parent)); const ev = new EditorView(config); @@ -25,37 +21,6 @@ export function createView(config) { return ev; } -/** - * Get the theme extension to use for editor view instance. - * @returns {Extension[]} - */ -function getTheme(viewParentEl) { - const darkMode = document.documentElement.classList.contains('dark-mode'); - let viewTheme = darkMode ? oneDarkTheme : []; - let highlightStyle = darkMode ? oneDarkHighlightStyle : null; - - const eventData = { - darkModeActive: darkMode, - registerViewTheme(builder) { - const spec = builder(); - if (spec) { - viewTheme = EditorView.theme(spec); - } - }, - registerHighlightStyle(builder) { - const tagStyles = builder(tags) || []; - console.log('called', tagStyles); - if (tagStyles.length) { - highlightStyle = HighlightStyle.define(tagStyles); - } - } - }; - - window.$events.emitPublic(viewParentEl, 'library-cm6::configure-theme', eventData); - - return [viewTheme, highlightStyle ? syntaxHighlighting(highlightStyle) : []]; -} - /** * Set the language mode of an EditorView. * @@ -68,6 +33,6 @@ export async function updateViewLanguage(ev, modeSuggestion, content) { const language = await getLanguageExtension(modeSuggestion, content); ev.dispatch({ - effects: compartment.reconfigure(language ? language : []) - }) -} \ No newline at end of file + effects: compartment.reconfigure(language || []), + }); +}