UNPKG

md-editor-rt

Version:

Markdown editor for react, developed in jsx and typescript, dark theme、beautify content by prettier、render articles directly、paste or clip the picture and upload it...

483 lines (482 loc) 12.6 kB
import { deepMerge as r } from "@vavt/util"; const y = "md-editor", e = "https://unpkg.com", a = `${e}/@highlightjs/cdn-assets@11.10.0/highlight.min.js`, i = { main: `${e}/prettier@3.3.3/standalone.js`, markdown: `${e}/prettier@3.3.3/plugins/markdown.js` }, o = { css: `${e}/cropperjs@1.6.2/dist/cropper.min.css`, js: `${e}/cropperjs@1.6.2/dist/cropper.min.js` }, n = `${e}/screenfull@5.2.0/dist/screenfull.js`, l = `${e}/mermaid@11.9.0/dist/mermaid.min.js`, c = { js: `${e}/katex@0.16.22/dist/katex.min.js`, css: `${e}/katex@0.16.22/dist/katex.min.css` }, d = { a11y: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/a11y-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/a11y-dark.min.css` }, atom: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/atom-one-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/atom-one-dark.min.css` }, github: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/github.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/github-dark.min.css` }, gradient: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/gradient-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/gradient-dark.min.css` }, kimbie: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/kimbie-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/kimbie-dark.min.css` }, paraiso: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/paraiso-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/paraiso-dark.min.css` }, qtcreator: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/qtcreator-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/qtcreator-dark.min.css` }, stackoverflow: { light: `${e}/@highlightjs/cdn-assets@11.10.0/styles/stackoverflow-light.min.css`, dark: `${e}/@highlightjs/cdn-assets@11.10.0/styles/stackoverflow-dark.min.css` } }, g = `${e}/echarts@6.0.0/dist/echarts.min.js`, k = { highlight: { js: { integrity: "sha384-GdEWAbCjn+ghjX0gLx7/N1hyTVmPAjdC2OvoAA0RyNcAOhqwtT8qnbCxWle2+uJX", crossOrigin: "anonymous" }, css: { a11y: { light: { integrity: "sha384-qdZDAN3jffvh670RHw1wxLekabidEFaNRninYgIzBvMbL6WlHdXeHS/Bt+vx33lN", crossOrigin: "anonymous" }, dark: { integrity: "sha384-2QAAjX8pqaM5azX68KWI2wExF6Q13kY4kEiQFY4b/1zPe6rpgmTByNpDEllH3sb+", crossOrigin: "anonymous" } }, atom: { light: { integrity: "sha384-w6Ujm1VWa9HYFqGc89oAPn/DWDi2gUamjNrq9DRvEYm2X3ClItg9Y9xs1ViVo5b5", crossOrigin: "anonymous" }, dark: { integrity: "sha384-oaMLBGEzBOJx3UHwac0cVndtX5fxGQIfnAeFZ35RTgqPcYlbprH9o9PUV/F8Le07", crossOrigin: "anonymous" } }, github: { light: { integrity: "sha384-eFTL69TLRZTkNfYZOLM+G04821K1qZao/4QLJbet1pP4tcF+fdXq/9CdqAbWRl/L", crossOrigin: "anonymous" }, dark: { integrity: "sha384-wH75j6z1lH97ZOpMOInqhgKzFkAInZPPSPlZpYKYTOqsaizPvhQZmAtLcPKXpLyH", crossOrigin: "anonymous" } }, gradient: { light: { integrity: "sha384-yErHBR8aEZPxRl3XmR8dGSRAclMlnSRRw8sXQLcmPWzWUvb56BzQmBw3EWHl7QGI", crossOrigin: "anonymous" }, dark: { integrity: "sha384-lUCvtSOdvDbp5hLWKgwz/taFu1HxlpqES2OVP5UG2JMTfnU481gXcBhGF9lAGoSr", crossOrigin: "anonymous" } }, kimbie: { light: { integrity: "sha384-tloeSLUPczAvoZ48TUz+OxRie0oYLCRwlkadUXovGzzJEIbNQB2TkfUuvJ6SW5Mi", crossOrigin: "anonymous" }, dark: { integrity: "sha384-o5F1vUaMNOmou1sQrsWiFo4/QUGSV0svqNZW+EesmKxWC8MpFJcveBhAyfvTHbGb", crossOrigin: "anonymous" } }, paraiso: { light: { integrity: "sha384-5j6QHU2Hwg1ehtlIQNDebhETDB8bga3/88hzBFsMRaGmgQHCftqIN7GZNDNw0vTL", crossOrigin: "anonymous" }, dark: { integrity: "sha384-I5vnnMQu0LWDQnHpT61xyoMwKarAB8jpZkB2ioFOlmzUFnIFaV4QbUwlBBOMKhTH", crossOrigin: "anonymous" } }, qtcreator: { light: { integrity: "sha384-iEBgHrwi8Hv4dSZBz+MOGvS05rF7I7fGKM2fASQyE9jn2Istg9Qd5dSoK18WyRTB", crossOrigin: "anonymous" }, dark: { integrity: "sha384-D6LXJGWNR4QV7gnpuP3ccbvOYoR02td3cU0y7lESABPg/tzCSC4m+y+M2TtrmpHc", crossOrigin: "anonymous" } }, stackoverflow: { light: { integrity: "sha384-FMwt7cTGo4aLxZnno5k0xTj0W4gmi48Kwept+y/oQmE6cFk36Kr+QJZOKNOQwORe", crossOrigin: "anonymous" }, dark: { integrity: "sha384-iL+x+BroCyHm/p2c6sMA9umXhdCWp2cKe4QUjPeMzHgwXAk+ZxHyIGP3NZTZensU", crossOrigin: "anonymous" } } } }, prettier: { standaloneJs: { integrity: "sha384-92h6ALm8/lHpNGn6MfGlgZ+I8c/4yn/nSN8dV9ZmDxqbP9L93gk/Jj2i0LtV+AVd", crossOrigin: "anonymous" }, parserMarkdownJs: { integrity: "sha384-5ufuUgoSsr/2oihBZ5d+c+yt0qaUmzLtUz41VZNJ4txtyJ6mBve3ZwuKoq/IygYX", crossOrigin: "anonymous" } }, cropper: { js: { integrity: "sha384-jrOgQzBlDeUNdmQn3rUt/PZD+pdcRBdWd/HWRqRo+n2OR2QtGyjSaJC0GiCeH+ir", crossOrigin: "anonymous" }, css: { integrity: "sha384-6LFfkTKLRlzFtgx8xsWyBdKGpcMMQTkv+dB7rAbugeJAu1Ym2q1Aji1cjHBG12Xh", crossOrigin: "anonymous" } }, screenfull: { js: { integrity: "sha384-Qfbv8upMDu/ikv42M0Jnym2hahbDQ77Nm8PGU0G+iA6UIwt1+scE6P1qKXA0anWU", crossOrigin: "anonymous" } }, mermaid: { js: { integrity: "sha384-UzWEhMP22MxNnr2bzqAdmtf1FDy5iKDUq6hLXJFLqC7dfGkc6W/hshbx9m71zyt5", crossOrigin: "anonymous" } }, katex: { js: { integrity: "sha384-cMkvdD8LoxVzGF/RPUKAcvmm49FQ0oxwDF3BGKtDXcEc+T1b2N+teh/OJfpU0jr6", crossOrigin: "anonymous" }, css: { integrity: "sha384-5TcZemv2l/9On385z///+d7MSYlvIEw9FuZTIdZ14vJLqWphw7e7ZPuOiCHJcFCP", crossOrigin: "anonymous" } }, echarts: { js: { integrity: "sha384-F07Cpw5v8spSU0H113F33m2NQQ/o6GqPTnTjf45ssG4Q6q58ZwhxBiQtIaqvnSpR", crossOrigin: "anonymous" } } }, h = [ "bold", "underline", "italic", "strikeThrough", "-", "title", "sub", "sup", "quote", "unorderedList", "orderedList", "task", "-", "codeRow", "code", "link", "image", "table", "mermaid", "katex", "-", "revoke", "next", "save", "=", "prettier", "pageFullscreen", "fullscreen", "preview", "previewOnly", "htmlPreview", "catalog", "github" ], m = ["markdownTotal", "=", "scrollSwitch"], b = { "zh-CN": { toolbarTips: { bold: "加粗", underline: "下划线", italic: "斜体", strikeThrough: "删除线", title: "标题", sub: "下标", sup: "上标", quote: "引用", unorderedList: "无序列表", orderedList: "有序列表", task: "任务列表", codeRow: "行内代码", code: "块级代码", link: "链接", image: "图片", table: "表格", mermaid: "mermaid图", katex: "katex公式", revoke: "后退", next: "前进", save: "保存", prettier: "美化", pageFullscreen: "浏览器全屏", fullscreen: "屏幕全屏", preview: "预览", previewOnly: "仅预览", htmlPreview: "html代码预览", catalog: "目录", github: "源码地址" }, titleItem: { h1: "一级标题", h2: "二级标题", h3: "三级标题", h4: "四级标题", h5: "五级标题", h6: "六级标题" }, imgTitleItem: { link: "添加链接", upload: "上传图片", clip2upload: "裁剪上传" }, linkModalTips: { linkTitle: "添加链接", imageTitle: "添加图片", descLabel: "链接描述:", descLabelPlaceHolder: "请输入描述...", urlLabel: "链接地址:", urlLabelPlaceHolder: "请输入链接...", buttonOK: "确定" }, clipModalTips: { title: "裁剪图片上传", buttonUpload: "上传" }, copyCode: { text: "复制代码", successTips: "已复制!", failTips: "复制失败!" }, mermaid: { flow: "流程图", sequence: "时序图", gantt: "甘特图", class: "类图", state: "状态图", pie: "饼图", relationship: "关系图", journey: "旅程图" }, katex: { inline: "行内公式", block: "块级公式" }, footer: { markdownTotal: "字数", scrollAuto: "同步滚动" } }, "en-US": { toolbarTips: { bold: "bold", underline: "underline", italic: "italic", strikeThrough: "strikeThrough", title: "title", sub: "subscript", sup: "superscript", quote: "quote", unorderedList: "unordered list", orderedList: "ordered list", task: "task list", codeRow: "inline code", code: "block-level code", link: "link", image: "image", table: "table", mermaid: "mermaid", katex: "formula", revoke: "revoke", next: "undo revoke", save: "save", prettier: "prettier", pageFullscreen: "fullscreen in page", fullscreen: "fullscreen", preview: "preview", previewOnly: "preview only", htmlPreview: "html preview", catalog: "catalog", github: "source code" }, titleItem: { h1: "Lv1 Heading", h2: "Lv2 Heading", h3: "Lv3 Heading", h4: "Lv4 Heading", h5: "Lv5 Heading", h6: "Lv6 Heading" }, imgTitleItem: { link: "Add Image Link", upload: "Upload Images", clip2upload: "Crop And Upload" }, linkModalTips: { linkTitle: "Add Link", imageTitle: "Add Image", descLabel: "Desc:", descLabelPlaceHolder: "Enter a description...", urlLabel: "Link:", urlLabelPlaceHolder: "Enter a link...", buttonOK: "OK" }, clipModalTips: { title: "Crop Image", buttonUpload: "Upload" }, copyCode: { text: "Copy", successTips: "Copied!", failTips: "Copy failed!" }, mermaid: { flow: "flow", sequence: "sequence", gantt: "gantt", class: "class", state: "state", pie: "pie", relationship: "relationship", journey: "journey" }, katex: { inline: "inline", block: "block" }, footer: { markdownTotal: "Character Count", scrollAuto: "Scroll Auto" } } }, f = { modelValue: "", theme: "light", className: "", onChange: () => { }, pageFullscreen: !1, preview: !0, htmlPreview: !1, language: "zh-CN", toolbars: h, toolbarsExclude: [], noPrettier: !1, onHtmlChanged: () => { }, onGetCatalog: () => { }, tabWidth: 2, showCodeRowNumber: !0, previewTheme: "default", mdHeadingId: (({ text: s }) => s), tableShape: [6, 4], noMermaid: !1, sanitize: (s) => s, placeholder: "", noKatex: !1, defToolbars: [], onError: () => { }, codeTheme: "atom", footers: m, defFooters: [], noUploadImg: !1, codeStyleReverse: !0, codeStyleReverseList: ["default", "mk-cute"], noHighlight: !1, noImgZoomIn: !1, inputBoxWidth: "50%", sanitizeMermaid: (s) => Promise.resolve(s), transformImgUrl: (s) => s, codeFoldable: !0, autoFoldThreshold: 30, catalogLayout: "fixed", floatingToolbars: [], customIcon: {} }, u = { editorExtensions: { highlight: { js: a, css: d }, prettier: { standaloneJs: i.main, parserMarkdownJs: i.markdown }, cropper: { ...o }, screenfull: { js: n }, mermaid: { js: l, enableZoom: !0 }, katex: { ...c }, echarts: { js: g } }, editorExtensionsAttrs: {}, editorConfig: { languageUserDefined: {}, mermaidTemplate: {}, renderDelay: 500, zIndex: 2e4 }, codeMirrorExtensions: (s) => s, markdownItConfig: () => { }, markdownItPlugins: (s) => s, mermaidConfig: (s) => s, katexConfig: (s) => s, echartsConfig: (s) => s }, v = (s) => r(u, s, { excludeKeys(t) { return /[iI]{1}nstance/.test(t); } }), w = 0.1; export { w as M, h as a, m as b, v as c, f as d, k as e, d as f, u as g, y as p, b as s };