diff --git a/main.css b/main.css deleted file mode 100644 index a3f2973..0000000 --- a/main.css +++ /dev/null @@ -1,27 +0,0 @@ -.milkdown .ProseMirror { - border: 1px solid var(--border-color); - border-radius: 4px; - padding: 5px 6px; -} - -/* -.milkdown-menu ul[role="menubar"] { - list-style: none; - padding: 0; - margin: 0; -} - -/* -.milkdown-menu button[role="menuitem"] { - appearance: none; - background: none; - border: 1px solid; - display: inline-grid; - place-items: center; - padding: 0; -} - -.milkdown-menu button[role="menuitem"].active { - background: #abc; -} -*/ diff --git a/main.js b/main.js deleted file mode 100644 index f8afb74..0000000 --- a/main.js +++ /dev/null @@ -1,70 +0,0 @@ -import { Editor, rootCtx, defaultValueCtx } from "@milkdown/core" -import { commonmark } from "@milkdown/preset-commonmark" -import { history } from "@milkdown/plugin-history" -import { listener, listenerCtx } from "@milkdown/plugin-listener" -import { menu, menuDefaultConfig } from "@milkdown-lab/plugin-menu" - -import { nord } from "@milkdown/theme-nord" -import "@milkdown/theme-nord/style.css" -import "@milkdown-lab/plugin-menu/style.css" -import "./main.css" - -function milkdownEditor(element) { - const blocker = document.createElement("style-blocker") - blocker.style = "width:100%;flex-basis:100%" - blocker.setAttribute( - "css-files", - "/static/content_editor/material-icons.css,/static/django_milkdown.css" - ) - const div = document.createElement("div") - blocker.append(div) - element.before(blocker) - - Editor.make() - .config(nord) - .config(menuDefaultConfig) - .config((ctx) => { - ctx.set(rootCtx, div) - ctx.set(defaultValueCtx, element.value) - }) - .config((ctx) => { - const listener = ctx.get(listenerCtx) - listener.markdownUpdated((ctx, markdown, _prevMarkdown) => { - element.value = markdown - }) - }) - .use(commonmark) - .use(history) - .use(listener) - .use(menu) - .create() -} - -window.milkdownEditor = milkdownEditor - -/* Thanks, https://matthewjamestaylor.com/style-blocker */ -window.customElements.define( - "style-blocker", - class extends HTMLElement { - constructor() { - super() - this.attachShadow({ mode: "open" }) - } - connectedCallback() { - while (this.childNodes.length > 0) { - this.shadowRoot.appendChild(this.childNodes[0]) - } - - const cssFiles = this.getAttribute("css-files") - if (cssFiles) { - const arrCssFiles = cssFiles.split(",") - for (let i = 0; i < arrCssFiles.length; i++) { - let link = document.createElement("link") - link.setAttribute("rel", "stylesheet") - link.setAttribute("href", arrCssFiles[i]) - this.shadowRoot.appendChild(link) - } - } - } - } -)