@cnblogs/markdown-it-presets 1.9.7 → 1.9.9-beta

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.
Files changed (44) hide show
  1. package/dist/es2015/index.mjs +3 -2
  2. package/dist/es2015/index.mjs.map +1 -0
  3. package/dist/es2015/math/factory.mjs +13 -0
  4. package/dist/es2015/math/factory.mjs.map +1 -0
  5. package/dist/es2015/math/impl.mjs +160 -0
  6. package/dist/es2015/math/impl.mjs.map +1 -0
  7. package/dist/es2015/math/index.mjs +3 -210
  8. package/dist/es2015/math/index.mjs.map +1 -0
  9. package/dist/es2015/math/model.mjs +20 -0
  10. package/dist/es2015/math/model.mjs.map +1 -0
  11. package/dist/es2015/presets/index.mjs +101 -681
  12. package/dist/es2015/presets/index.mjs.map +1 -0
  13. package/dist/es2015/presets/option.mjs +27 -0
  14. package/dist/es2015/presets/option.mjs.map +1 -0
  15. package/dist/es2015/presets/plugins/highlight-code-lines.plugin.mjs +49 -0
  16. package/dist/es2015/presets/plugins/highlight-code-lines.plugin.mjs.map +1 -0
  17. package/dist/es2015/presets/plugins/html-filter.plugin.mjs +43 -0
  18. package/dist/es2015/presets/plugins/html-filter.plugin.mjs.map +1 -0
  19. package/dist/es2015/presets/plugins/index.mjs +8 -0
  20. package/dist/es2015/presets/plugins/index.mjs.map +1 -0
  21. package/dist/es2015/presets/plugins/meta.mjs +36 -0
  22. package/dist/es2015/presets/plugins/meta.mjs.map +1 -0
  23. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.plugin.mjs +11 -0
  24. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.plugin.mjs.map +1 -0
  25. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.rule.mjs +40 -0
  26. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.rule.mjs.map +1 -0
  27. package/dist/es2015/presets/plugins/simple-math.plugin.mjs +147 -0
  28. package/dist/es2015/presets/plugins/simple-math.plugin.mjs.map +1 -0
  29. package/dist/es2015/presets/plugins/simple-mermaid.plugin.mjs +17 -0
  30. package/dist/es2015/presets/plugins/simple-mermaid.plugin.mjs.map +1 -0
  31. package/dist/es2015/presets/plugins/toc/index.mjs +184 -0
  32. package/dist/es2015/presets/plugins/toc/index.mjs.map +1 -0
  33. package/dist/es2015/presets/plugins/toc/slugify.mjs +5 -0
  34. package/dist/es2015/presets/plugins/toc/slugify.mjs.map +1 -0
  35. package/dist/es2015/presets/plugins/toc/toc-item.mjs +2 -0
  36. package/dist/es2015/presets/plugins/toc/toc-item.mjs.map +1 -0
  37. package/dist/es2015/presets/plugins/toc/toc-option.mjs +15 -0
  38. package/dist/es2015/presets/plugins/toc/toc-option.mjs.map +1 -0
  39. package/dist/es2015/presets/plugins/unique-custom-id.mjs +27 -0
  40. package/dist/es2015/presets/plugins/unique-custom-id.mjs.map +1 -0
  41. package/dist/types/index.d.ts +2 -2
  42. package/dist/types/presets/index.d.ts +2 -2
  43. package/dist/umd/markdownItPresets.js +1 -1
  44. package/package.json +3 -8
@@ -1,2 +1,3 @@
1
- export * from "./presets";
2
- export * from "./math";
1
+ export * from './presets';
2
+ export * from './math';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { MathEngine } from './model';
2
+ import { Mathjax2Renderer, MathJax3Renderer } from './impl';
3
+ export const createMathJaxRenderer = (rendererConfig) => {
4
+ switch (rendererConfig.engine) {
5
+ case MathEngine.MathJax2:
6
+ return new Mathjax2Renderer().config(rendererConfig);
7
+ case MathEngine.MathJax3:
8
+ return new MathJax3Renderer().config(rendererConfig);
9
+ default:
10
+ throw Error('Renderer unavailable');
11
+ }
12
+ };
13
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../src/math/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAkD,MAAM,SAAS,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE5D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACjC,cAAiB,EACsD,EAAE;IACzE,QAAQ,cAAc,CAAC,MAAM,EAAE;QAC3B,KAAK,UAAU,CAAC,QAAQ;YACpB,OAAO,IAAI,gBAAgB,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzD,KAAK,UAAU,CAAC,QAAQ;YACpB,OAAO,IAAI,gBAAgB,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACzD;YACI,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;KAC3C;AACL,CAAC,CAAC"}
@@ -0,0 +1,160 @@
1
+ import { defaultConfig, MathEngine, } from './model';
2
+ import { loadScript } from '@cnblogs/load-script-css';
3
+ export class Mathjax2Renderer {
4
+ constructor() {
5
+ this._defaultConfig = defaultConfig[MathEngine.MathJax2];
6
+ this._defaultMathJaxConfig = {
7
+ tex2jax: {
8
+ inlineMath: [
9
+ ['$', '$'],
10
+ ['\\(', '\\)'],
11
+ ],
12
+ processClass: 'math',
13
+ processEscapes: true,
14
+ },
15
+ TeX: {
16
+ equationNumbers: {
17
+ autoNumber: 'AMS',
18
+ useLabelIds: true,
19
+ },
20
+ extensions: ['extpfeil.js', 'mediawiki-texvc.js'],
21
+ Macros: { bm: '\\boldsymbol' },
22
+ },
23
+ 'HTML-CSS': { linebreaks: { automatic: true } },
24
+ SVG: { linebreaks: { automatic: true } },
25
+ skipStartupTypeset: true,
26
+ };
27
+ this._config = this._defaultConfig;
28
+ }
29
+ get _global() {
30
+ var _a;
31
+ return ((_a = this._config.document.defaultView) !== null && _a !== void 0 ? _a : window);
32
+ }
33
+ render(container, callback) {
34
+ if (!this._config.isEnabled)
35
+ return Promise.resolve();
36
+ return this.init()
37
+ .then(mathjax => {
38
+ if (!mathjax)
39
+ return;
40
+ const { onRendered } = this._config;
41
+ mathjax.Hub.Queue(['Typeset', mathjax.Hub, container]);
42
+ if (onRendered != null) {
43
+ mathjax.Hub.Queue(() => onRendered(mathjax));
44
+ }
45
+ if (callback) {
46
+ mathjax.Hub.Queue(callback);
47
+ }
48
+ })
49
+ .catch(console.warn);
50
+ }
51
+ config(value) {
52
+ this._config = Object.assign({}, this._defaultConfig, value);
53
+ return this;
54
+ }
55
+ init() {
56
+ if (this._initTask)
57
+ return this._initTask;
58
+ const { entryScript, tapMathJaxConfig, document } = this._config;
59
+ return (this._initTask = loadScript({
60
+ src: entryScript,
61
+ id: 'mathjax',
62
+ timeoutSeconds: 10,
63
+ appendTo: document.head,
64
+ })
65
+ .then(() => {
66
+ var _a;
67
+ const { MathJax } = this._global;
68
+ if (MathJax) {
69
+ MathJax.Hub.Config((_a = tapMathJaxConfig === null || tapMathJaxConfig === void 0 ? void 0 : tapMathJaxConfig.call(undefined, Object.assign({}, this._defaultMathJaxConfig))) !== null && _a !== void 0 ? _a : Object.assign({}, this._defaultMathJaxConfig));
70
+ MathJax.Hub.Configured();
71
+ return MathJax;
72
+ }
73
+ })
74
+ .catch(() => (this._initTask = undefined)));
75
+ }
76
+ }
77
+ export class MathJax3Renderer {
78
+ constructor() {
79
+ this._defaultConfig = defaultConfig[MathEngine.MathJax3];
80
+ this._defaultMathJaxConfig = {
81
+ tex: {
82
+ inlineMath: [
83
+ ['$', '$'],
84
+ ['\\(', '\\)'],
85
+ ],
86
+ processEscapes: true,
87
+ tags: 'ams',
88
+ useLabelIds: true,
89
+ macros: {
90
+ bm: '\\boldsymbol',
91
+ },
92
+ packages: { '[+]': ['noerrors', 'extpfeil'] },
93
+ },
94
+ options: {
95
+ processHtmlClass: 'math',
96
+ ignoreHtmlClass: 'tex2jax_ignore',
97
+ },
98
+ loader: {
99
+ load: ['[tex]/noerrors', '[tex]/extpfeil'],
100
+ },
101
+ startup: {
102
+ typeset: false,
103
+ },
104
+ };
105
+ this._config = this._defaultConfig;
106
+ }
107
+ config(value) {
108
+ this._config = Object.assign({}, this._defaultConfig, value);
109
+ return this;
110
+ }
111
+ render(container, callback) {
112
+ if (!this._config.isEnabled)
113
+ return Promise.resolve();
114
+ return this.init()
115
+ .then(mathjax => {
116
+ mathjax
117
+ ? (mathjax.startup.promise = mathjax.startup.promise.then(() => mathjax.typesetPromise([container]).then(() => {
118
+ var _a;
119
+ try {
120
+ (_a = this._config.onRendered) === null || _a === void 0 ? void 0 : _a.call(undefined, mathjax);
121
+ }
122
+ catch (e) {
123
+ console.error(e);
124
+ }
125
+ try {
126
+ callback === null || callback === void 0 ? void 0 : callback.call(undefined);
127
+ }
128
+ catch (e) {
129
+ console.error(e);
130
+ }
131
+ })))
132
+ : undefined;
133
+ })
134
+ .catch(console.warn);
135
+ }
136
+ init() {
137
+ var _a;
138
+ return ((_a = this._initTask) !== null && _a !== void 0 ? _a : (this._initTask = new Promise((resolve, reject) => {
139
+ var _a, _b;
140
+ const { entryScript, tapMathJaxConfig, document: _document } = this._config;
141
+ const _window = ((_a = _document.defaultView) !== null && _a !== void 0 ? _a : window);
142
+ _window.MathJax = (_b = tapMathJaxConfig === null || tapMathJaxConfig === void 0 ? void 0 : tapMathJaxConfig.call(undefined, Object.assign({}, this._defaultMathJaxConfig))) !== null && _b !== void 0 ? _b : Object.assign({}, this._defaultMathJaxConfig);
143
+ if (!_window.MathJax.startup) {
144
+ _window.MathJax.startup = {};
145
+ }
146
+ _window.MathJax.startup.ready = () => {
147
+ var _a, _b;
148
+ (_b = (_a = _window.MathJax) === null || _a === void 0 ? void 0 : _a.startup) === null || _b === void 0 ? void 0 : _b.defaultReady();
149
+ resolve(_window.MathJax);
150
+ };
151
+ loadScript({
152
+ src: entryScript,
153
+ id: 'mathjax',
154
+ executionStrategy: 'defer',
155
+ appendTo: _window.document.head,
156
+ }).catch(reject);
157
+ }))).catch(() => (this._initTask = undefined));
158
+ }
159
+ }
160
+ //# sourceMappingURL=impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impl.js","sourceRoot":"","sources":["../../../src/math/impl.ts"],"names":[],"mappings":"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"}
@@ -1,210 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
- var __hasOwnProp = Object.prototype.hasOwnProperty;
4
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
- var __spreadValues = (a, b) => {
7
- for (var prop in b || (b = {}))
8
- if (__hasOwnProp.call(b, prop))
9
- __defNormalProp(a, prop, b[prop]);
10
- if (__getOwnPropSymbols)
11
- for (var prop of __getOwnPropSymbols(b)) {
12
- if (__propIsEnum.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- }
15
- return a;
16
- };
17
-
18
- // src/math/model.ts
19
- var MathEngine = /* @__PURE__ */ ((MathEngine2) => {
20
- MathEngine2[MathEngine2["MathJax2"] = 0] = "MathJax2";
21
- MathEngine2[MathEngine2["MathJax3"] = 1] = "MathJax3";
22
- return MathEngine2;
23
- })(MathEngine || {});
24
- var defaultConfig = {
25
- [0 /* MathJax2 */]: {
26
- entryScript: "https://mathjax.cnblogs.com/2_7_5/MathJax.js?config=TeX-AMS-MML_HTMLorMML&delayStartupUntil=configured&v=20200504",
27
- document: window.document,
28
- engine: 0 /* MathJax2 */,
29
- isEnabled: true
30
- },
31
- [1 /* MathJax3 */]: {
32
- entryScript: "https://mathjax.cnblogs.com/3_2_1/es5/tex-mml-chtml.js",
33
- document: window.document,
34
- engine: 1 /* MathJax3 */,
35
- isEnabled: true
36
- }
37
- };
38
-
39
- // src/math/impl.ts
40
- import { loadScript } from "@cnblogs/load-script-css";
41
- var Mathjax2Renderer = class {
42
- constructor() {
43
- this._defaultConfig = defaultConfig[0 /* MathJax2 */];
44
- this._defaultMathJaxConfig = {
45
- tex2jax: {
46
- inlineMath: [
47
- ["$", "$"],
48
- ["\\(", "\\)"]
49
- ],
50
- processClass: "math",
51
- processEscapes: true
52
- },
53
- TeX: {
54
- equationNumbers: {
55
- autoNumber: "AMS",
56
- useLabelIds: true
57
- },
58
- extensions: ["extpfeil.js", "mediawiki-texvc.js"],
59
- Macros: { bm: "\\boldsymbol" }
60
- },
61
- "HTML-CSS": { linebreaks: { automatic: true } },
62
- SVG: { linebreaks: { automatic: true } },
63
- skipStartupTypeset: true
64
- };
65
- this._config = this._defaultConfig;
66
- }
67
- get _global() {
68
- var _a;
69
- return (_a = this._config.document.defaultView) != null ? _a : window;
70
- }
71
- render(container, callback) {
72
- if (!this._config.isEnabled)
73
- return Promise.resolve();
74
- return this.init().then((mathjax) => {
75
- if (!mathjax)
76
- return;
77
- const { onRendered } = this._config;
78
- mathjax.Hub.Queue(["Typeset", mathjax.Hub, container]);
79
- if (onRendered != null) {
80
- mathjax.Hub.Queue(() => onRendered(mathjax));
81
- }
82
- if (callback) {
83
- mathjax.Hub.Queue(callback);
84
- }
85
- }).catch(console.warn);
86
- }
87
- config(value) {
88
- this._config = Object.assign({}, this._defaultConfig, value);
89
- return this;
90
- }
91
- init() {
92
- if (this._initTask)
93
- return this._initTask;
94
- const { entryScript, tapMathJaxConfig, document } = this._config;
95
- return this._initTask = loadScript({
96
- src: entryScript,
97
- id: "mathjax",
98
- timeoutSeconds: 10,
99
- appendTo: document.head
100
- }).then(() => {
101
- var _a;
102
- const { MathJax } = this._global;
103
- if (MathJax) {
104
- MathJax.Hub.Config(
105
- (_a = tapMathJaxConfig == null ? void 0 : tapMathJaxConfig.call(
106
- void 0,
107
- Object.assign({}, this._defaultMathJaxConfig)
108
- )) != null ? _a : __spreadValues({}, this._defaultMathJaxConfig)
109
- );
110
- MathJax.Hub.Configured();
111
- return MathJax;
112
- }
113
- }).catch(() => this._initTask = void 0);
114
- }
115
- };
116
- var MathJax3Renderer = class {
117
- constructor() {
118
- this._defaultConfig = defaultConfig[1 /* MathJax3 */];
119
- this._defaultMathJaxConfig = {
120
- tex: {
121
- inlineMath: [
122
- ["$", "$"],
123
- ["\\(", "\\)"]
124
- ],
125
- processEscapes: true,
126
- tags: "ams",
127
- useLabelIds: true,
128
- macros: {
129
- bm: "\\boldsymbol"
130
- },
131
- packages: { "[+]": ["noerrors", "extpfeil"] }
132
- },
133
- options: {
134
- processHtmlClass: "math",
135
- ignoreHtmlClass: "tex2jax_ignore"
136
- },
137
- loader: {
138
- load: ["[tex]/noerrors", "[tex]/extpfeil"]
139
- },
140
- startup: {
141
- typeset: false
142
- }
143
- };
144
- this._config = this._defaultConfig;
145
- }
146
- config(value) {
147
- this._config = Object.assign({}, this._defaultConfig, value);
148
- return this;
149
- }
150
- render(container, callback) {
151
- if (!this._config.isEnabled)
152
- return Promise.resolve();
153
- return this.init().then((mathjax) => {
154
- mathjax ? mathjax.startup.promise = mathjax.startup.promise.then(
155
- () => mathjax.typesetPromise([container]).then(() => {
156
- var _a;
157
- try {
158
- (_a = this._config.onRendered) == null ? void 0 : _a.call(void 0, mathjax);
159
- } catch (e) {
160
- console.error(e);
161
- }
162
- try {
163
- callback == null ? void 0 : callback.call(void 0);
164
- } catch (e) {
165
- console.error(e);
166
- }
167
- })
168
- ) : void 0;
169
- }).catch(console.warn);
170
- }
171
- init() {
172
- var _a;
173
- return ((_a = this._initTask) != null ? _a : this._initTask = new Promise((resolve, reject) => {
174
- var _a2, _b;
175
- const { entryScript, tapMathJaxConfig, document: _document } = this._config;
176
- const _window = (_a2 = _document.defaultView) != null ? _a2 : window;
177
- _window.MathJax = (_b = tapMathJaxConfig == null ? void 0 : tapMathJaxConfig.call(void 0, __spreadValues({}, this._defaultMathJaxConfig))) != null ? _b : __spreadValues({}, this._defaultMathJaxConfig);
178
- if (!_window.MathJax.startup) {
179
- _window.MathJax.startup = {};
180
- }
181
- _window.MathJax.startup.ready = () => {
182
- var _a3, _b2;
183
- (_b2 = (_a3 = _window.MathJax) == null ? void 0 : _a3.startup) == null ? void 0 : _b2.defaultReady();
184
- resolve(_window.MathJax);
185
- };
186
- loadScript({
187
- src: entryScript,
188
- id: "mathjax",
189
- executionStrategy: "defer",
190
- appendTo: _window.document.head
191
- }).catch(reject);
192
- })).catch(() => this._initTask = void 0);
193
- }
194
- };
195
-
196
- // src/math/factory.ts
197
- var createMathJaxRenderer = (rendererConfig) => {
198
- switch (rendererConfig.engine) {
199
- case 0 /* MathJax2 */:
200
- return new Mathjax2Renderer().config(rendererConfig);
201
- case 1 /* MathJax3 */:
202
- return new MathJax3Renderer().config(rendererConfig);
203
- default:
204
- throw Error("Renderer unavailable");
205
- }
206
- };
207
- export {
208
- MathEngine,
209
- createMathJaxRenderer
210
- };
1
+ export { createMathJaxRenderer } from './factory';
2
+ export { MathEngine } from './model';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/math/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAiB,UAAU,EAAkE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,20 @@
1
+ export var MathEngine;
2
+ (function (MathEngine) {
3
+ MathEngine[MathEngine["MathJax2"] = 0] = "MathJax2";
4
+ MathEngine[MathEngine["MathJax3"] = 1] = "MathJax3";
5
+ })(MathEngine || (MathEngine = {}));
6
+ export const defaultConfig = {
7
+ [MathEngine.MathJax2]: {
8
+ entryScript: 'https://mathjax.cnblogs.com/2_7_5/MathJax.js?config=TeX-AMS-MML_HTMLorMML&delayStartupUntil=configured&v=20200504',
9
+ document: window.document,
10
+ engine: MathEngine.MathJax2,
11
+ isEnabled: true,
12
+ },
13
+ [MathEngine.MathJax3]: {
14
+ entryScript: 'https://mathjax.cnblogs.com/3_2_1/es5/tex-mml-chtml.js',
15
+ document: window.document,
16
+ engine: MathEngine.MathJax3,
17
+ isEnabled: true,
18
+ },
19
+ };
20
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/math/model.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,mDAAY,CAAA;IACZ,mDAAY,CAAA;AAChB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAsBD,MAAM,CAAC,MAAM,aAAa,GAGtB;IACA,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACnB,WAAW,EACP,mHAAmH;QACvH,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,SAAS,EAAE,IAAI;KAClB;IACD,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACnB,WAAW,EAAE,wDAAwD;QACrE,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,UAAU,CAAC,QAAQ;QAC3B,SAAS,EAAE,IAAI;KAClB;CACJ,CAAC"}