@8btc/mditor 0.0.32 → 0.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +2 -2
- package/dist/index.js +50 -92
- package/dist/index.min.js +1 -1
- package/dist/js/mathjax/tex-svg-full.js +34 -1
- package/dist/method.js +49 -91
- package/dist/method.min.js +1 -1
- package/dist/ts/markdown/mathRender.d.ts +2 -2
- package/package.json +1 -1
- package/src/ts/markdown/mathRender.ts +53 -91
- package/src/ts/util/addScript.ts +3 -5
package/dist/index.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vditor v0.0.
|
|
2
|
+
* Vditor v0.0.34 - A markdown editor written in TypeScript.
|
|
3
3
|
*
|
|
4
4
|
* MIT License
|
|
5
5
|
*
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
*
|
|
26
26
|
*/
|
|
27
27
|
/*!
|
|
28
|
-
* Vditor v0.0.
|
|
28
|
+
* Vditor v0.0.34 - A markdown editor written in TypeScript.
|
|
29
29
|
*
|
|
30
30
|
* MIT License
|
|
31
31
|
*
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vditor v0.0.
|
|
2
|
+
* Vditor v0.0.34 - A markdown editor written in TypeScript.
|
|
3
3
|
*
|
|
4
4
|
* MIT License
|
|
5
5
|
*
|
|
@@ -2923,7 +2923,7 @@ var Vditor = /** @class */ (function () {
|
|
|
2923
2923
|
/* harmony export */ "H": () => (/* binding */ _VDITOR_VERSION),
|
|
2924
2924
|
/* harmony export */ "g": () => (/* binding */ Constants)
|
|
2925
2925
|
/* harmony export */ });
|
|
2926
|
-
var _VDITOR_VERSION = "0.0.
|
|
2926
|
+
var _VDITOR_VERSION = "0.0.34";
|
|
2927
2927
|
|
|
2928
2928
|
var Constants = /** @class */ (function () {
|
|
2929
2929
|
function Constants() {
|
|
@@ -3225,7 +3225,7 @@ var Constants = /** @class */ (function () {
|
|
|
3225
3225
|
"c#",
|
|
3226
3226
|
"bat",
|
|
3227
3227
|
];
|
|
3228
|
-
Constants.CDN = "https://webcdn.wujieai.com/vditor@".concat("0.0.
|
|
3228
|
+
Constants.CDN = "https://webcdn.wujieai.com/vditor@".concat("0.0.34");
|
|
3229
3229
|
Constants.MARKDOWN_OPTIONS = {
|
|
3230
3230
|
autoSpace: false,
|
|
3231
3231
|
gfmAutoLink: true,
|
|
@@ -5472,8 +5472,8 @@ var normalizeTex = function (tex) {
|
|
|
5472
5472
|
/**
|
|
5473
5473
|
* 数学公式渲染入口
|
|
5474
5474
|
*
|
|
5475
|
-
* 默认使用
|
|
5476
|
-
* 支持通过 options.math.engine 切换为
|
|
5475
|
+
* 默认使用 KaTeX 渲染,并在需要时按需加载相关脚本与样式。
|
|
5476
|
+
* 支持通过 options.math.engine 切换为 MathJax。
|
|
5477
5477
|
*
|
|
5478
5478
|
* 参数说明:
|
|
5479
5479
|
* - element: 需要进行数学渲染的根容器(默认 document)
|
|
@@ -5488,7 +5488,7 @@ var mathRender = function (element, options) {
|
|
|
5488
5488
|
var defaultOptions = {
|
|
5489
5489
|
cdn: _constants__WEBPACK_IMPORTED_MODULE_0__/* .Constants.CDN */ .g.CDN,
|
|
5490
5490
|
math: {
|
|
5491
|
-
engine: "
|
|
5491
|
+
engine: "KaTeX",
|
|
5492
5492
|
inlineDigit: true,
|
|
5493
5493
|
macros: {},
|
|
5494
5494
|
},
|
|
@@ -5560,80 +5560,22 @@ var mathRender = function (element, options) {
|
|
|
5560
5560
|
next();
|
|
5561
5561
|
};
|
|
5562
5562
|
if (!window.MathJax) {
|
|
5563
|
-
// typeset 设为 true 以正常完成公式渲染;elements 限定为传入的容器,外部使用本包时仅处理该容器,不影响编辑器以外的公式。
|
|
5564
|
-
// 渲染时会将 startup.elements 临时设为传入的 element(当前预览/编辑容器),再 clear/updateDocument。
|
|
5565
5563
|
window.MathJax = {
|
|
5566
5564
|
loader: {
|
|
5567
5565
|
paths: { mathjax: "".concat(options.cdn, "/dist/js/mathjax") },
|
|
5568
5566
|
},
|
|
5569
5567
|
startup: {
|
|
5570
|
-
typeset:
|
|
5568
|
+
typeset: false,
|
|
5571
5569
|
elements: element instanceof HTMLElement ? [element] : [],
|
|
5572
5570
|
},
|
|
5573
5571
|
tex: {
|
|
5574
|
-
inlineMath: [
|
|
5575
|
-
["$", "$"],
|
|
5576
|
-
["\\(", "\\)"],
|
|
5577
|
-
],
|
|
5578
|
-
displayMath: [
|
|
5579
|
-
["$$", "$$"],
|
|
5580
|
-
["\\[", "\\]"],
|
|
5581
|
-
],
|
|
5582
|
-
processEscapes: true,
|
|
5583
5572
|
macros: options.math.macros,
|
|
5584
|
-
// 启用 ams 与 unicode,支持 \unicode 宏以渲染 ∯(oiint)
|
|
5585
|
-
packages: { "[+]": ["ams", "unicode", "noerrors"] },
|
|
5586
|
-
},
|
|
5587
|
-
// 关闭 MathJax 自带右键菜单,使用自定义菜单
|
|
5588
|
-
options: {
|
|
5589
|
-
enableMenu: false,
|
|
5590
5573
|
},
|
|
5591
5574
|
};
|
|
5592
|
-
// https://github.com/Vanessa219/vditor/issues/1453
|
|
5575
|
+
// https://github.com/Vanessa219/vditor/issues/1453 额外配置(packages、inlineMath、displayMath 等)由调用方通过 mathJaxOptions 传入
|
|
5593
5576
|
Object.assign(window.MathJax, options.math.mathJaxOptions);
|
|
5594
5577
|
}
|
|
5595
|
-
|
|
5596
|
-
var mathJaxScriptId = "protyleMathJaxScript";
|
|
5597
|
-
// Qt WebView 中同步 XHR 被限制,addScriptSync 无法加载脚本,改为异步 addScript
|
|
5598
|
-
var isQtWebView_1 = typeof navigator !== "undefined" &&
|
|
5599
|
-
/Qt|QtWebEngine/i.test(navigator.userAgent);
|
|
5600
|
-
var runRenderChain = function () {
|
|
5601
|
-
window.MathJax.startup.promise.then(function () {
|
|
5602
|
-
if (window.MathJax.startup) {
|
|
5603
|
-
window.MathJax.startup.typeset = true;
|
|
5604
|
-
window.MathJax.startup.elements =
|
|
5605
|
-
element instanceof HTMLElement ? [element] : [];
|
|
5606
|
-
}
|
|
5607
|
-
var chains = [];
|
|
5608
|
-
var _loop_1 = function (i) {
|
|
5609
|
-
var mathElement = mathElements[i];
|
|
5610
|
-
if (!mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") &&
|
|
5611
|
-
!mathElement.parentElement.classList.contains("vditor-ir__marker--pre") &&
|
|
5612
|
-
!mathElement.getAttribute("data-math") &&
|
|
5613
|
-
(0,_util_code160to32__WEBPACK_IMPORTED_MODULE_5__/* .code160to32 */ .X)(mathElement.textContent).trim()) {
|
|
5614
|
-
chains.push(function (next) {
|
|
5615
|
-
if (i === mathElements.length - 1) {
|
|
5616
|
-
renderMath_1(mathElement);
|
|
5617
|
-
}
|
|
5618
|
-
else {
|
|
5619
|
-
renderMath_1(mathElement, next);
|
|
5620
|
-
}
|
|
5621
|
-
});
|
|
5622
|
-
}
|
|
5623
|
-
};
|
|
5624
|
-
for (var i = 0; i < mathElements.length; i++) {
|
|
5625
|
-
_loop_1(i);
|
|
5626
|
-
}
|
|
5627
|
-
chainAsync_1(chains);
|
|
5628
|
-
});
|
|
5629
|
-
};
|
|
5630
|
-
if (isQtWebView_1) {
|
|
5631
|
-
(0,_util_addScript__WEBPACK_IMPORTED_MODULE_4__/* .addScript */ .G)(mathJaxScriptUrl, mathJaxScriptId).then(runRenderChain);
|
|
5632
|
-
}
|
|
5633
|
-
else {
|
|
5634
|
-
(0,_util_addScript__WEBPACK_IMPORTED_MODULE_4__/* .addScriptSync */ .J)(mathJaxScriptUrl, mathJaxScriptId);
|
|
5635
|
-
runRenderChain();
|
|
5636
|
-
}
|
|
5578
|
+
(0,_util_addScript__WEBPACK_IMPORTED_MODULE_4__/* .addScriptSync */ .J)("".concat(options.cdn, "/dist/js/mathjax/tex-svg-full.js"), "protyleMathJaxScript");
|
|
5637
5579
|
var renderMath_1 = function (mathElement, next) {
|
|
5638
5580
|
var rawText = (0,_util_code160to32__WEBPACK_IMPORTED_MODULE_5__/* .code160to32 */ .X)(mathElement.textContent).trim();
|
|
5639
5581
|
var math = normalizeTex(rawText);
|
|
@@ -5642,7 +5584,6 @@ var mathRender = function (element, options) {
|
|
|
5642
5584
|
var mathOptions = window.MathJax.getMetricsFor(mathElement);
|
|
5643
5585
|
mathOptions.display = inPreviewPre || mathElement.tagName === "DIV";
|
|
5644
5586
|
window.MathJax.tex2svgPromise(math, mathOptions).then(function (node) {
|
|
5645
|
-
var _a, _b;
|
|
5646
5587
|
mathElement.innerHTML = "";
|
|
5647
5588
|
mathElement.setAttribute("data-math", math);
|
|
5648
5589
|
mathElement.append(node);
|
|
@@ -5650,40 +5591,57 @@ var mathRender = function (element, options) {
|
|
|
5650
5591
|
var pre = mathElement.parentElement;
|
|
5651
5592
|
pre.classList.add("vditor-wysiwyg__preview--math");
|
|
5652
5593
|
}
|
|
5653
|
-
// 绑定自定义右键菜单(编辑区生效,预览区自动跳过)
|
|
5654
5594
|
(0,_mathContextMenu__WEBPACK_IMPORTED_MODULE_2__/* .bindMathContextMenu */ .xX)(mathElement);
|
|
5655
|
-
|
|
5656
|
-
|
|
5657
|
-
if (
|
|
5658
|
-
|
|
5659
|
-
|
|
5660
|
-
|
|
5661
|
-
|
|
5662
|
-
|
|
5663
|
-
|
|
5664
|
-
startup.document.clear();
|
|
5665
|
-
startup.document.updateDocument();
|
|
5666
|
-
startup.elements =
|
|
5667
|
-
prevElements !== undefined ? prevElements : [];
|
|
5668
|
-
}
|
|
5669
|
-
catch (_) {
|
|
5670
|
-
if (((_b = (_a = window.MathJax) === null || _a === void 0 ? void 0 : _a.startup) === null || _b === void 0 ? void 0 : _b.elements) !== undefined) {
|
|
5671
|
-
window.MathJax.startup.elements = [];
|
|
5672
|
-
}
|
|
5673
|
-
}
|
|
5674
|
-
}
|
|
5595
|
+
var startup = window.MathJax.startup;
|
|
5596
|
+
var prevElements = startup.elements;
|
|
5597
|
+
if (element instanceof HTMLElement) {
|
|
5598
|
+
startup.elements = [element];
|
|
5599
|
+
}
|
|
5600
|
+
startup.document.clear();
|
|
5601
|
+
startup.document.updateDocument();
|
|
5602
|
+
startup.elements =
|
|
5603
|
+
prevElements !== undefined ? prevElements : [];
|
|
5675
5604
|
var errorTextElement = node.querySelector('[data-mml-node="merror"]');
|
|
5676
5605
|
if (errorTextElement &&
|
|
5677
5606
|
errorTextElement.textContent.trim() !== "") {
|
|
5678
|
-
|
|
5679
|
-
|
|
5680
|
-
mathElement.className =
|
|
5607
|
+
mathElement.innerHTML =
|
|
5608
|
+
errorTextElement.textContent.trim();
|
|
5609
|
+
mathElement.className =
|
|
5610
|
+
"language-math vditor-reset--error";
|
|
5681
5611
|
}
|
|
5682
5612
|
if (next) {
|
|
5683
5613
|
next();
|
|
5684
5614
|
}
|
|
5685
5615
|
});
|
|
5686
5616
|
};
|
|
5617
|
+
window.MathJax.startup.promise.then(function () {
|
|
5618
|
+
if (window.MathJax.startup) {
|
|
5619
|
+
window.MathJax.startup.typeset = true;
|
|
5620
|
+
window.MathJax.startup.elements =
|
|
5621
|
+
element instanceof HTMLElement ? [element] : [];
|
|
5622
|
+
}
|
|
5623
|
+
var chains = [];
|
|
5624
|
+
var _loop_1 = function (i) {
|
|
5625
|
+
var mathElement = mathElements[i];
|
|
5626
|
+
if (!mathElement.parentElement.classList.contains("vditor-wysiwyg__pre") &&
|
|
5627
|
+
!mathElement.parentElement.classList.contains("vditor-ir__marker--pre") &&
|
|
5628
|
+
!mathElement.getAttribute("data-math") &&
|
|
5629
|
+
(0,_util_code160to32__WEBPACK_IMPORTED_MODULE_5__/* .code160to32 */ .X)(mathElement.textContent).trim()) {
|
|
5630
|
+
chains.push(function (next) {
|
|
5631
|
+
if (i === mathElements.length - 1) {
|
|
5632
|
+
renderMath_1(mathElement);
|
|
5633
|
+
}
|
|
5634
|
+
else {
|
|
5635
|
+
renderMath_1(mathElement, next);
|
|
5636
|
+
}
|
|
5637
|
+
});
|
|
5638
|
+
}
|
|
5639
|
+
};
|
|
5640
|
+
for (var i = 0; i < mathElements.length; i++) {
|
|
5641
|
+
_loop_1(i);
|
|
5642
|
+
}
|
|
5643
|
+
chainAsync_1(chains);
|
|
5644
|
+
});
|
|
5687
5645
|
}
|
|
5688
5646
|
};
|
|
5689
5647
|
|