markdown-it-any-block 3.3.8 → 3.3.9-beta1

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.
@@ -24,7 +24,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
25
25
  const MarkdownIt = require("markdown-it");
26
26
  let dom = null;
27
- async function jsdom_init(enable = true) {
27
+ let disable_disable_flag = false;
28
+ async function jsdom_init(enable = true, disable_disable = false) {
29
+ disable_disable_flag = disable_disable;
28
30
  if (typeof document !== "undefined") return;
29
31
  const { default: jsdom } = await import("jsdom");
30
32
  const { JSDOM } = jsdom;
@@ -54,6 +56,7 @@ function jsdom_enable() {
54
56
  global.MutationObserver = dom.window.MutationObserver;
55
57
  }
56
58
  function jsdom_disable() {
59
+ if (disable_disable_flag) return;
57
60
  if (!dom) return;
58
61
  global.window = void 0;
59
62
  global.history = void 0;
@@ -1,6 +1,8 @@
1
1
  import MarkdownIt from "markdown-it";
2
2
  let dom = null;
3
- async function jsdom_init(enable = true) {
3
+ let disable_disable_flag = false;
4
+ async function jsdom_init(enable = true, disable_disable = false) {
5
+ disable_disable_flag = disable_disable;
4
6
  if (typeof document !== "undefined") return;
5
7
  const { default: jsdom } = await import("jsdom");
6
8
  const { JSDOM } = jsdom;
@@ -30,6 +32,7 @@ function jsdom_enable() {
30
32
  global.MutationObserver = dom.window.MutationObserver;
31
33
  }
32
34
  function jsdom_disable() {
35
+ if (disable_disable_flag) return;
33
36
  if (!dom) return;
34
37
  global.window = void 0;
35
38
  global.history = void 0;
package/jsdom_init.ts CHANGED
@@ -6,9 +6,15 @@
6
6
 
7
7
  // import jsdom from "jsdom"
8
8
 
9
- let dom: any = null;
9
+ let dom: any = null // 缓存 jsdom 实例
10
+ let disable_disable_flag: boolean = false // 禁止禁用
10
11
 
11
- export async function jsdom_init(enable: boolean = true) {
12
+ /**
13
+ * @param enable 默认开启
14
+ * @param disable_disable 禁止禁用
15
+ */
16
+ export async function jsdom_init(enable: boolean = true, disable_disable: boolean = false) {
17
+ disable_disable_flag = disable_disable
12
18
  if (typeof document !== "undefined") return // 客户端环境,无需 jsdom 环境,同时也避免误卸载 document 环境
13
19
  const { default: jsdom } = await import('jsdom') // 废弃,要同步,避免docuemnt初始化不及时
14
20
  const { JSDOM } = jsdom
@@ -40,6 +46,7 @@ export function jsdom_enable() {
40
46
 
41
47
  /// 禁用 jsdom 环境
42
48
  export function jsdom_disable() {
49
+ if (disable_disable_flag) return
43
50
  if (!dom) return // console.error("jsdom_disable failed: please run jsdom_init first.") // 允许客户端中运行,不使用jsdom
44
51
  global.window = undefined
45
52
  global.history = undefined
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "markdown-it-any-block",
3
- "version": "3.3.8",
3
+ "version": "3.3.9-beta1",
4
4
  "description": "You can flexibility to create a 'Block' by many means. It also provides many useful features, like `list to table`. (obsidian/markdown-it/vuepress plugin/app)",
5
5
  "types": "@types/index_mdit.d.ts",
6
6
  "type": "module",