@8btc/mditor 0.0.17 → 0.0.18

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 CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vditor v0.0.17 - A markdown editor written in TypeScript.
2
+ * Vditor v0.0.18 - 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.17 - A markdown editor written in TypeScript.
28
+ * Vditor v0.0.18 - 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.17 - A markdown editor written in TypeScript.
2
+ * Vditor v0.0.18 - A markdown editor written in TypeScript.
3
3
  *
4
4
  * MIT License
5
5
  *
@@ -2561,6 +2561,9 @@ var mergeOptions = function (options) {
2561
2561
  markdown: constants/* Constants.MARKDOWN_OPTIONS */.g.MARKDOWN_OPTIONS,
2562
2562
  math: constants/* Constants.MATH_OPTIONS */.g.MATH_OPTIONS,
2563
2563
  mode: "light",
2564
+ link: {
2565
+ isOpen: true,
2566
+ },
2564
2567
  speech: {
2565
2568
  enable: false,
2566
2569
  },
@@ -2620,6 +2623,14 @@ var md2html = function (mdText, options) {
2620
2623
  return lute.Md2HTML(mdText);
2621
2624
  });
2622
2625
  };
2626
+ /**
2627
+ * 预览区域渲染入口
2628
+ * - 负责将 Markdown 转为 HTML 并对各类增强特性进行初始化
2629
+ * - 支持目录点击定位与链接点击行为配置(link.click / link.isOpen)
2630
+ * @param previewElement 预览容器元素
2631
+ * @param markdown Markdown 文本内容
2632
+ * @param options 预览配置项,支持 link 点击行为自定义
2633
+ */
2623
2634
  var previewRender = function (previewElement, markdown, options) { return __awaiter(void 0, void 0, void 0, function () {
2624
2635
  var mergedOptions, html, i18nScriptPrefix, i18nScriptID_1;
2625
2636
  return __generator(this, function (_a) {
@@ -2711,6 +2722,7 @@ var previewRender = function (previewElement, markdown, options) { return __awai
2711
2722
  lazyLoadImageRender(previewElement);
2712
2723
  }
2713
2724
  previewElement.addEventListener("click", function (event) {
2725
+ var _a, _b;
2714
2726
  var spanElement = (0,hasClosest/* hasClosestByMatchTag */.lG)(event.target, "SPAN");
2715
2727
  if (spanElement &&
2716
2728
  (0,hasClosest/* hasClosestByClassName */.fb)(spanElement, "vditor-toc")) {
@@ -2720,6 +2732,16 @@ var previewRender = function (previewElement, markdown, options) { return __awai
2720
2732
  }
2721
2733
  return;
2722
2734
  }
2735
+ if (event.target.tagName === "A") {
2736
+ if ((_a = mergedOptions.link) === null || _a === void 0 ? void 0 : _a.click) {
2737
+ mergedOptions.link.click(event.target);
2738
+ }
2739
+ else if ((_b = mergedOptions.link) === null || _b === void 0 ? void 0 : _b.isOpen) {
2740
+ window.open(event.target.getAttribute("href"));
2741
+ }
2742
+ event.preventDefault();
2743
+ return;
2744
+ }
2723
2745
  });
2724
2746
  return [2 /*return*/];
2725
2747
  }
@@ -2844,7 +2866,7 @@ var Vditor = /** @class */ (function () {
2844
2866
  /* harmony export */ "H": () => (/* binding */ _VDITOR_VERSION),
2845
2867
  /* harmony export */ "g": () => (/* binding */ Constants)
2846
2868
  /* harmony export */ });
2847
- var _VDITOR_VERSION = "0.0.17";
2869
+ var _VDITOR_VERSION = "0.0.18";
2848
2870
 
2849
2871
  var Constants = /** @class */ (function () {
2850
2872
  function Constants() {
@@ -3146,7 +3168,7 @@ var Constants = /** @class */ (function () {
3146
3168
  "c#",
3147
3169
  "bat",
3148
3170
  ];
3149
- Constants.CDN = "https://webcdn.wujieai.com/vditor@".concat("0.0.17");
3171
+ Constants.CDN = "https://webcdn.wujieai.com/vditor@".concat("0.0.18");
3150
3172
  Constants.MARKDOWN_OPTIONS = {
3151
3173
  autoSpace: false,
3152
3174
  gfmAutoLink: true,