@cnblogs/markdown-it-presets 1.9.5 → 1.9.7

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 (43) hide show
  1. package/dist/commonjs/index.cjs +8 -5257
  2. package/dist/commonjs/math/index.cjs +2 -3
  3. package/dist/commonjs/presets/index.cjs +6 -5254
  4. package/dist/es2015/index.mjs +2 -3
  5. package/dist/es2015/math/index.mjs +210 -3
  6. package/dist/es2015/presets/index.mjs +681 -100
  7. package/dist/umd/mathRenderer.js +1 -1
  8. package/package.json +11 -10
  9. package/dist/es2015/index.mjs.map +0 -1
  10. package/dist/es2015/math/factory.mjs +0 -13
  11. package/dist/es2015/math/factory.mjs.map +0 -1
  12. package/dist/es2015/math/impl.mjs +0 -161
  13. package/dist/es2015/math/impl.mjs.map +0 -1
  14. package/dist/es2015/math/index.mjs.map +0 -1
  15. package/dist/es2015/math/model.mjs +0 -20
  16. package/dist/es2015/math/model.mjs.map +0 -1
  17. package/dist/es2015/presets/index.mjs.map +0 -1
  18. package/dist/es2015/presets/option.mjs +0 -27
  19. package/dist/es2015/presets/option.mjs.map +0 -1
  20. package/dist/es2015/presets/plugins/highlight-code-lines.plugin.mjs +0 -49
  21. package/dist/es2015/presets/plugins/highlight-code-lines.plugin.mjs.map +0 -1
  22. package/dist/es2015/presets/plugins/html-filter.plugin.mjs +0 -43
  23. package/dist/es2015/presets/plugins/html-filter.plugin.mjs.map +0 -1
  24. package/dist/es2015/presets/plugins/meta.mjs +0 -36
  25. package/dist/es2015/presets/plugins/meta.mjs.map +0 -1
  26. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.plugin.mjs +0 -11
  27. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.plugin.mjs.map +0 -1
  28. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.rule.mjs +0 -40
  29. package/dist/es2015/presets/plugins/multiline-blockquote/multiline-blockquote.rule.mjs.map +0 -1
  30. package/dist/es2015/presets/plugins/simple-math.plugin.mjs +0 -147
  31. package/dist/es2015/presets/plugins/simple-math.plugin.mjs.map +0 -1
  32. package/dist/es2015/presets/plugins/simple-mermaid.plugin.mjs +0 -17
  33. package/dist/es2015/presets/plugins/simple-mermaid.plugin.mjs.map +0 -1
  34. package/dist/es2015/presets/plugins/toc/index.mjs +0 -184
  35. package/dist/es2015/presets/plugins/toc/index.mjs.map +0 -1
  36. package/dist/es2015/presets/plugins/toc/slugify.mjs +0 -5
  37. package/dist/es2015/presets/plugins/toc/slugify.mjs.map +0 -1
  38. package/dist/es2015/presets/plugins/toc/toc-item.mjs +0 -2
  39. package/dist/es2015/presets/plugins/toc/toc-item.mjs.map +0 -1
  40. package/dist/es2015/presets/plugins/toc/toc-option.mjs +0 -15
  41. package/dist/es2015/presets/plugins/toc/toc-option.mjs.map +0 -1
  42. package/dist/es2015/presets/plugins/unique-custom-id.mjs +0 -27
  43. package/dist/es2015/presets/plugins/unique-custom-id.mjs.map +0 -1
@@ -1,147 +0,0 @@
1
- function isValidDelimiter(state, pos) {
2
- let max = state.posMax;
3
- let canOpen = true;
4
- let canClose = true;
5
- let prevChar = pos > 0 ? state.src.charCodeAt(pos - 1) : -1;
6
- let nextChar = pos + 1 <= max ? state.src.charCodeAt(pos + 1) : -1;
7
- if (prevChar === 0x20 ||
8
- prevChar === 0x09 ||
9
- (nextChar >= 0x30 && nextChar <= 0x39)) {
10
- canClose = false;
11
- }
12
- if (nextChar === 0x20 || nextChar === 0x09) {
13
- canOpen = false;
14
- }
15
- return {
16
- canOpen,
17
- canClose,
18
- };
19
- }
20
- const mathInTable = (state) => {
21
- const { src } = state;
22
- const regex = /(\|.*\|)\n(\|\s*?-+:?\s*?)+\|\n(\|.*\|\n?)*?((\|.*?\$+.*\n?)+)/g;
23
- const inlineMathRegex = /\$(.*?)\$/g;
24
- state.src = src.replace(regex, (match, sub1, sub2, sub3, sub4) => match.replace(sub4, sub4.replace(inlineMathRegex, (match, sub) => `\$${sub.replace(/\\*?\|/g, '\\|')}$\$`)));
25
- return true;
26
- };
27
- const mathInline = (state, silent) => {
28
- let start, match, token, res, pos;
29
- if (state.src[state.pos] !== '$') {
30
- return false;
31
- }
32
- res = isValidDelimiter(state, state.pos);
33
- if (!res.canOpen) {
34
- if (!silent) {
35
- state.pending += '$';
36
- }
37
- state.pos += 1;
38
- return true;
39
- }
40
- start = state.pos + 1;
41
- match = start;
42
- while ((match = state.src.indexOf('$', match)) !== -1) {
43
- pos = match - 1;
44
- while (state.src[pos] === '\\') {
45
- pos -= 1;
46
- }
47
- if ((match - pos) % 2 == 1) {
48
- break;
49
- }
50
- match += 1;
51
- }
52
- if (match === -1) {
53
- if (!silent) {
54
- state.pending += '$';
55
- }
56
- state.pos = start;
57
- return true;
58
- }
59
- if (match - start === 0) {
60
- if (!silent) {
61
- state.pending += '$$';
62
- }
63
- state.pos = start + 1;
64
- return true;
65
- }
66
- res = isValidDelimiter(state, match);
67
- if (!res.canClose) {
68
- if (!silent) {
69
- state.pending += '$';
70
- }
71
- state.pos = start;
72
- return true;
73
- }
74
- if (!silent) {
75
- token = state.push('math_inline', 'math', 0);
76
- token.markup = '$';
77
- token.content = state.src.slice(start, match);
78
- }
79
- state.pos = match + 1;
80
- return true;
81
- };
82
- const mathBlock = (state, start, end, silent) => {
83
- let lastLine;
84
- let next;
85
- let lastPos;
86
- let found = false;
87
- let token;
88
- let pos = state.bMarks[start] + state.tShift[start];
89
- let max = state.eMarks[start];
90
- if (pos + 2 > max) {
91
- return false;
92
- }
93
- if (state.src[pos] !== '$' || state.src[pos + 1] !== '$') {
94
- return false;
95
- }
96
- pos += 2;
97
- if (silent) {
98
- return true;
99
- }
100
- let firstLine = state.src.slice(pos, max);
101
- if (firstLine.trim().slice(-2) === '$$') {
102
- firstLine = firstLine.trim().slice(0, -2);
103
- found = true;
104
- }
105
- for (next = start; !found;) {
106
- next++;
107
- if (next >= end) {
108
- break;
109
- }
110
- pos = state.bMarks[next] + state.tShift[next];
111
- max = state.eMarks[next];
112
- if (pos < max && state.tShift[next] < state.blkIndent) {
113
- break;
114
- }
115
- if (state.src.slice(pos, max).trim().slice(-2) === '$$') {
116
- lastPos = state.src.slice(0, max).lastIndexOf('$$');
117
- lastLine = state.src.slice(pos, lastPos);
118
- found = true;
119
- }
120
- }
121
- state.line = next + 1;
122
- token = state.push('math_block', 'math', 0);
123
- token.block = true;
124
- token.content =
125
- (firstLine && firstLine.trim() ? firstLine + '\n' : '') +
126
- state.getLines(start + 1, next, state.tShift[start], true) +
127
- (lastLine && lastLine.trim() ? lastLine : '');
128
- token.map = [start, state.line];
129
- token.markup = '$$';
130
- return true;
131
- };
132
- export const simpleMathPlugin = (md) => {
133
- md.core.ruler.before('block', 'math_in_table', mathInTable);
134
- md.inline.ruler.after('escape', 'math_inline', mathInline);
135
- md.block.ruler.after('blockquote', 'math_block', mathBlock, {
136
- alt: ['paragraph', 'reference', 'blockquote', 'list'],
137
- });
138
- const simpleInlineRenderer = (tokens, idx) => {
139
- return '<span class="math inline">\\(' + md.utils.escapeHtml(tokens[idx].content) + '\\)</span>';
140
- };
141
- const simpleBlockRenderer = (tokens, idx) => {
142
- return '<p><div class="math display">\\[' + md.utils.escapeHtml(tokens[idx].content) + '\\]</div></p>';
143
- };
144
- md.renderer.rules.math_inline = simpleInlineRenderer;
145
- md.renderer.rules.math_block = simpleBlockRenderer;
146
- };
147
- //# sourceMappingURL=simple-math.plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simple-math.plugin.js","sourceRoot":"","sources":["../../../../src/presets/plugins/simple-math.plugin.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- export function diagramPlugin(md, options) {
2
- function getLangName(info) {
3
- return info.split(/\s+/g)[0];
4
- }
5
- let defaultFenceRenderer = md.renderer.rules.fence;
6
- function customFenceRenderer(tokens, idx, options, env, slf) {
7
- let token = tokens[idx];
8
- let info = token.info.trim();
9
- let langName = info ? getLangName(info) : '';
10
- if (langName.toLowerCase() === 'mermaid') {
11
- return '<div class="mermaid">' + md.utils.escapeHtml(token.content) + '</div>';
12
- }
13
- return defaultFenceRenderer(tokens, idx, options, env, slf);
14
- }
15
- md.renderer.rules.fence = customFenceRenderer;
16
- }
17
- //# sourceMappingURL=simple-mermaid.plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simple-mermaid.plugin.js","sourceRoot":"","sources":["../../../../src/presets/plugins/simple-mermaid.plugin.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,aAAa,CAAC,EAAc,EAAE,OAAY;IACtD,SAAS,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IAGD,IAAI,oBAAoB,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;IAEnD,SAAS,mBAAmB,CAAC,MAAe,EAAE,GAAW,EAAE,OAAY,EAAE,GAAQ,EAAE,GAAQ;QACvF,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7C,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE;YACtC,OAAO,uBAAuB,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC;SAClF;QACD,OAAO,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,mBAAmB,CAAC;AAClD,CAAC"}
@@ -1,184 +0,0 @@
1
- import { defaultTocOption } from './toc-option';
2
- const defaults = defaultTocOption;
3
- const findHeadlineElements = (levels, tokens, options, md, env) => {
4
- const headings = [];
5
- let currentHeading = null;
6
- tokens.forEach(token => {
7
- if (token.type === 'heading_open') {
8
- const id = findExistingIdAttr(token);
9
- const level = parseInt(token.tag.toLowerCase().replace('h', ''), 10);
10
- if (levels.indexOf(level) >= 0) {
11
- currentHeading = {
12
- level: level,
13
- textContent: null,
14
- anchor: id || null,
15
- markdownContent: null,
16
- };
17
- }
18
- }
19
- else if (currentHeading && token.type === 'inline') {
20
- const textContent = token.children
21
- .filter(childToken => childToken.type === 'text' || childToken.type === 'code_inline')
22
- .reduce((acc, t) => acc + t.content, '');
23
- currentHeading.textContent = textContent;
24
- currentHeading.markdownContent = md.renderer.renderInline(token.children, options, env);
25
- if (!currentHeading.anchor) {
26
- currentHeading.anchor = options.slugify(textContent, token.content);
27
- }
28
- }
29
- else if (token.type === 'heading_close') {
30
- if (currentHeading) {
31
- headings.push(currentHeading);
32
- }
33
- currentHeading = null;
34
- }
35
- });
36
- return headings;
37
- };
38
- const findExistingIdAttr = (token) => {
39
- if (token && token.attrs && token.attrs.length > 0) {
40
- const idAttr = token.attrs.find(attr => {
41
- if (Array.isArray(attr) && attr.length >= 2) {
42
- return attr[0] === 'id';
43
- }
44
- return false;
45
- });
46
- if (idAttr && Array.isArray(idAttr) && idAttr.length >= 2) {
47
- const [, val] = idAttr;
48
- return val;
49
- }
50
- }
51
- return null;
52
- };
53
- function getMinLevel(headlineItems) {
54
- return Math.min(...headlineItems.map(item => item.level));
55
- }
56
- const addListItem = (level, text, anchor, rootNode) => {
57
- const listItem = {
58
- level,
59
- text,
60
- anchor,
61
- children: [],
62
- parent: rootNode,
63
- };
64
- rootNode.children.push(listItem);
65
- return listItem;
66
- };
67
- const flatHeadlineItemsToNestedTree = (headlineItems) => {
68
- const toc = {
69
- level: getMinLevel(headlineItems) - 1,
70
- anchor: null,
71
- text: null,
72
- children: [],
73
- parent: null,
74
- };
75
- let currentRootNode = toc;
76
- let prevListItem = currentRootNode;
77
- headlineItems.forEach(headlineItem => {
78
- if (headlineItem.level > prevListItem.level) {
79
- Array.from({ length: headlineItem.level - prevListItem.level }).forEach(_ => {
80
- currentRootNode = prevListItem;
81
- prevListItem = addListItem(headlineItem.level, null, null, currentRootNode);
82
- });
83
- prevListItem.text = headlineItem.markdownContent;
84
- prevListItem.anchor = headlineItem.anchor;
85
- }
86
- else if (headlineItem.level === prevListItem.level) {
87
- prevListItem = addListItem(headlineItem.level, headlineItem.markdownContent, headlineItem.anchor, currentRootNode);
88
- }
89
- else if (headlineItem.level < prevListItem.level) {
90
- for (let i = 0; i < prevListItem.level - headlineItem.level; i++) {
91
- currentRootNode = currentRootNode.parent;
92
- }
93
- prevListItem = addListItem(headlineItem.level, headlineItem.markdownContent, headlineItem.anchor, currentRootNode);
94
- }
95
- });
96
- return toc;
97
- };
98
- const tocItemToHtml = (tocItem, options, md) => {
99
- return ('<' +
100
- options.listType +
101
- '>' +
102
- tocItem.children
103
- .map(childItem => {
104
- let li = '<li>';
105
- let anchor = childItem.anchor;
106
- if (options && options.transformLink) {
107
- anchor = options.transformLink(anchor);
108
- }
109
- let text = childItem.text ? options.format(childItem.text, md, anchor) : null;
110
- li += anchor ? `<a href="#${anchor}">${text}</a>` : text || '';
111
- return li + (childItem.children.length > 0 ? tocItemToHtml(childItem, options, md) : '') + '</li>';
112
- })
113
- .join('') +
114
- '</' +
115
- options.listType +
116
- '>');
117
- };
118
- const plugin = (md, o) => {
119
- const options = Object.assign({}, defaults, o);
120
- const tocRegexp = options.markerPattern;
121
- let gState;
122
- const toc = (state, silent) => {
123
- let token;
124
- let match;
125
- if (state.src.charCodeAt(state.pos) !== 0x5b) {
126
- return false;
127
- }
128
- if (silent) {
129
- return false;
130
- }
131
- match = tocRegexp.exec(state.src.substr(state.pos));
132
- match = !match
133
- ? []
134
- : match.filter(function (m) {
135
- return m;
136
- });
137
- if (match.length < 1) {
138
- return false;
139
- }
140
- token = state.push('toc_open', 'toc', 1);
141
- token.markup = '[[toc]]';
142
- token = state.push('toc_body', '', 0);
143
- token = state.push('toc_close', 'toc', -1);
144
- const newline = state.src.indexOf('\n', state.pos);
145
- if (newline !== -1) {
146
- state.pos = newline;
147
- }
148
- else {
149
- state.pos = state.pos + state.posMax + 1;
150
- }
151
- return true;
152
- };
153
- md.renderer.rules.toc_open = (tokens, index) => {
154
- let tocOpenHtml = '<div class="' + options.containerClass + '">';
155
- if (options.containerHeaderHtml) {
156
- tocOpenHtml += options.containerHeaderHtml;
157
- }
158
- return tocOpenHtml;
159
- };
160
- md.renderer.rules.toc_close = (tokens, index) => {
161
- let tocFooterHtml = '';
162
- if (options.containerFooterHtml) {
163
- tocFooterHtml = options.containerFooterHtml;
164
- }
165
- return tocFooterHtml + '</div>';
166
- };
167
- md.renderer.rules.toc_body = (tokens, index, opt, env) => {
168
- if (options.forceFullToc) {
169
- throw 'forceFullToc was removed in version 0.5.0. For more information, see https://github.com/Oktavilla/markdown-it-table-of-contents/pull/41';
170
- }
171
- else {
172
- const headlineItems = findHeadlineElements(options.includeLevel, gState.tokens, options, md, env);
173
- const toc = flatHeadlineItemsToNestedTree(headlineItems);
174
- return tocItemToHtml(toc, options, md);
175
- }
176
- };
177
- md.core.ruler.push('grab_state', state => {
178
- gState = state;
179
- return true;
180
- });
181
- md.inline.ruler.after('emphasis', 'toc', toc);
182
- };
183
- export { plugin as TocPlugin };
184
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/presets/plugins/toc/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,gBAAgB,EAAa,MAAM,cAAc,CAAC;AAI3D,MAAM,QAAQ,GAAG,gBAAgB,CAAC;AAkClC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAe,EAAE,OAAO,EAAE,EAAc,EAAE,GAAQ,EAAE,EAAE;IACxF,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,IAAI,cAAc,GAAiB,IAAI,CAAC;IAExC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACnB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE;YAC/B,MAAM,EAAE,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACrE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAC5B,cAAc,GAAG;oBACb,KAAK,EAAE,KAAK;oBACZ,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,EAAE,IAAI,IAAI;oBAClB,eAAe,EAAE,IAAI;iBACxB,CAAC;aACL;SACJ;aAAM,IAAI,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YAClD,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ;iBAC7B,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC;iBACrF,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,cAAc,CAAC,WAAW,GAAG,WAAW,CAAC;YACzC,cAAc,CAAC,eAAe,GAAG,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YACxF,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;gBACxB,cAAc,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;aACvE;SACJ;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE;YACvC,IAAI,cAAc,EAAE;gBAChB,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACjC;YACD,cAAc,GAAG,IAAI,CAAC;SACzB;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAMF,MAAM,kBAAkB,GAAG,CAAC,KAAY,EAAU,EAAE;IAChD,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QAChD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACnC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;gBACzC,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;aAC3B;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;YACvD,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;YACvB,OAAO,GAAG,CAAC;SACd;KACJ;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAOF,SAAS,WAAW,CAAC,aAAa;IAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9D,CAAC;AAUD,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,MAAc,EAAE,QAAiB,EAAW,EAAE;IAC5F,MAAM,QAAQ,GAAG;QACb,KAAK;QACL,IAAI;QACJ,MAAM;QACN,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,QAAQ;KACnB,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAOF,MAAM,6BAA6B,GAAG,CAAC,aAA6B,EAAW,EAAE;IAE7E,MAAM,GAAG,GAAY;QACjB,KAAK,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC;QACrC,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,IAAI;KACf,CAAC;IAEF,IAAI,eAAe,GAAG,GAAG,CAAC;IAE1B,IAAI,YAAY,GAAG,eAAe,CAAC;IAEnC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QAEjC,IAAI,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE;YAEzC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACxE,eAAe,GAAG,YAAY,CAAC;gBAC/B,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;YAChF,CAAC,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,eAAe,CAAC;YACjD,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;SAC7C;aAEI,IAAI,YAAY,CAAC,KAAK,KAAK,YAAY,CAAC,KAAK,EAAE;YAChD,YAAY,GAAG,WAAW,CACtB,YAAY,CAAC,KAAK,EAClB,YAAY,CAAC,eAAe,EAC5B,YAAY,CAAC,MAAM,EACnB,eAAe,CAClB,CAAC;SACL;aAEI,IAAI,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE;YAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC9D,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC;aAC5C;YACD,YAAY,GAAG,WAAW,CACtB,YAAY,CAAC,KAAK,EAClB,YAAY,CAAC,eAAe,EAC5B,YAAY,CAAC,MAAM,EACnB,eAAe,CAClB,CAAC;SACL;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AASF,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAkB,EAAE,EAAc,EAAE,EAAE;IAC3E,OAAO,CACH,GAAG;QACH,OAAO,CAAC,QAAQ;QAChB,GAAG;QACH,OAAO,CAAC,QAAQ;aACX,GAAG,CAAC,SAAS,CAAC,EAAE;YACb,IAAI,EAAE,GAAG,MAAM,CAAC;YAChB,IAAI,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;YAC9B,IAAI,OAAO,IAAI,OAAO,CAAC,aAAa,EAAE;gBAClC,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aAC1C;YAED,IAAI,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAE9E,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,MAAM,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;YAE/D,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;QACvG,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC;QACb,IAAI;QACJ,OAAO,CAAC,QAAQ;QAChB,GAAG,CACN,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,MAAM,GAAsB,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;IACxC,MAAM,OAAO,GAAc,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;IACxC,IAAI,MAAiB,CAAC;IAEtB,MAAM,GAAG,GAAe,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtC,IAAI,KAAY,CAAC;QACjB,IAAI,KAAiC,CAAC;QAGtC,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAU;YAClD,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,MAAM,EAAE;YACR,OAAO,KAAK,CAAC;SAChB;QAGD,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,KAAK,GAAG,CAAC,KAAK;YACV,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;gBACpB,OAAO,CAAC,CAAC;YACb,CAAC,CAAC,CAAC;QACT,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC;SAChB;QAGD,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACzC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QAG3C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE;YAChB,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC;SACvB;aAAM;YACH,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAC3C,IAAI,WAAW,GAAG,cAAc,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;QAEjE,IAAI,OAAO,CAAC,mBAAmB,EAAE;YAC7B,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;SAC9C;QAED,OAAO,WAAW,CAAC;IACvB,CAAC,CAAC;IAEF,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,aAAa,GAAG,EAAE,CAAC;QAEvB,IAAI,OAAO,CAAC,mBAAmB,EAAE;YAC7B,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC;SAC/C;QAED,OAAO,aAAa,GAAG,QAAQ,CAAC;IACpC,CAAC,CAAC;IAEF,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACrD,IAAI,OAAO,CAAC,YAAY,EAAE;YACtB,MAAM,yIAAyI,CAAC;SACnJ;aAAM;YACH,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAClG,MAAM,GAAG,GAAG,6BAA6B,CAAC,aAAa,CAAC,CAAC;YACzD,OAAO,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;SAC1C;IACL,CAAC,CAAC;IAGF,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE;QACrC,MAAM,GAAG,KAAK,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC"}
@@ -1,5 +0,0 @@
1
- const slugify = function (s) {
2
- return encodeURIComponent(String(s).trim().toLowerCase().replace(/\s+/g, '-'));
3
- };
4
- export { slugify };
5
- //# sourceMappingURL=slugify.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"slugify.js","sourceRoot":"","sources":["../../../../../src/presets/plugins/toc/slugify.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,UAAU,CAAC;IACvB,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=toc-item.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toc-item.js","sourceRoot":"","sources":["../../../../../src/presets/plugins/toc/toc-item.ts"],"names":[],"mappings":""}
@@ -1,15 +0,0 @@
1
- import { slugify } from './slugify';
2
- const defaultTocOption = {
3
- includeLevel: [1, 2, 3, 4, 5, 6],
4
- containerClass: 'toc',
5
- slugify: slugify,
6
- markerPattern: /\[TOC]/im,
7
- listType: 'ul',
8
- format: content => content.replace(/<\/?a.*?>/g, ''),
9
- forceFullToc: false,
10
- containerHeaderHtml: `<div class="toc-container-header">目录</div>`,
11
- containerFooterHtml: undefined,
12
- transformLink: undefined,
13
- };
14
- export { defaultTocOption };
15
- //# sourceMappingURL=toc-option.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toc-option.js","sourceRoot":"","sources":["../../../../../src/presets/plugins/toc/toc-option.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,MAAM,gBAAgB,GAAG;IACrB,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAChC,cAAc,EAAE,KAAK;IACrB,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,UAAU;IACzB,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IACpD,YAAY,EAAE,KAAK;IACnB,mBAAmB,EAAE,4CAA4C;IACjE,mBAAmB,EAAE,SAAS;IAC9B,aAAa,EAAE,SAAS;CAC3B,CAAC;AAEF,OAAO,EAAa,gBAAgB,EAAE,CAAC"}
@@ -1,27 +0,0 @@
1
- const attrPluginName = 'curly_attributes';
2
- const uniqueCustomIdAttr = state => {
3
- const { tokens } = state;
4
- let map;
5
- tokens
6
- .filter(x => !!x.attrGet('id'))
7
- .forEach(token => {
8
- map !== null && map !== void 0 ? map : (map = {});
9
- const idAttrValue = token.attrGet('id');
10
- if (map.hasOwnProperty(idAttrValue)) {
11
- const count = map[idAttrValue];
12
- token.attrSet('id', `${idAttrValue}-${count}`);
13
- map[idAttrValue] = count + 1;
14
- }
15
- else {
16
- map[idAttrValue] = 1;
17
- }
18
- });
19
- map = undefined;
20
- };
21
- const plugin = (md, opt) => {
22
- if (md.core.ruler.getRules('').some(x => x.name === attrPluginName) != null) {
23
- md.core.ruler.after(attrPluginName, 'unique_custom_id_attribute', uniqueCustomIdAttr, opt);
24
- }
25
- };
26
- export { plugin as UniqueCustomIdAttrs };
27
- //# sourceMappingURL=unique-custom-id.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unique-custom-id.js","sourceRoot":"","sources":["../../../../src/presets/plugins/unique-custom-id.ts"],"names":[],"mappings":"AAGA,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAE1C,MAAM,kBAAkB,GAAa,KAAK,CAAC,EAAE;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,IAAI,GAA0C,CAAC;IAC/C,MAAM;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC9B,OAAO,CAAC,KAAK,CAAC,EAAE;QACb,GAAG,aAAH,GAAG,cAAH,GAAG,IAAH,GAAG,GAAK,EAAE,EAAC;QACX,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;YACjC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,WAAW,IAAI,KAAK,EAAE,CAAC,CAAC;YAC/C,GAAG,CAAC,WAAW,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;SAChC;aAAM;YACH,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SACxB;IACL,CAAC,CAAC,CAAC;IACP,GAAG,GAAG,SAAS,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;IAC1C,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,IAAI,EAAE;QACzE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAC;KAC9F;AACL,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,IAAI,mBAAmB,EAAE,CAAC"}