@diplodoc/transform 4.69.2 → 4.70.0

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.
@@ -96,7 +96,9 @@ const code = (md, opts) => {
96
96
  if (codeMatch) {
97
97
  const codeContent = codeMatch[1];
98
98
  const codeWithLineNumbers = addLineNumbers(codeContent, { lineWrapping });
99
- superCode = superCode.replace(codeContent, codeWithLineNumbers);
99
+ // Escape $ in replacement string: $$ becomes a literal $ in String.replace()
100
+ const escapedReplacement = codeWithLineNumbers.replace(/\$/g, '$$$$');
101
+ superCode = superCode.replace(codeContent, escapedReplacement);
100
102
  }
101
103
  }
102
104
  const superCodeWithTerms = superCode && (env === null || env === void 0 ? void 0 : env.terms) ? termReplace(superCode, env, md.utils.escapeRE) : superCode;
@@ -1 +1 @@
1
- {"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/transform/plugins/code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/transform/plugins/code.ts"],"names":[],"mappings":"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"}
@@ -77,15 +77,14 @@ function termInlineRule(state, silent) {
77
77
  if (!match || !state.env.terms[':' + match.termId]) {
78
78
  return false;
79
79
  }
80
- if (silent) {
81
- return true;
80
+ if (!silent) {
81
+ const labelContent = state.src.slice(state.pos + 1, match.labelEnd).replace(/\\(.)/g, '$1');
82
+ const termOpen = state.push('term_open', 'i', 1);
83
+ setTermAttrs(termOpen, match.termId);
84
+ const textToken = state.push('text', '', 0);
85
+ textToken.content = labelContent;
86
+ state.push('term_close', 'i', -1);
82
87
  }
83
- const labelContent = state.src.slice(state.pos + 1, match.labelEnd).replace(/\\(.)/g, '$1');
84
- const termOpen = state.push('term_open', 'i', 1);
85
- setTermAttrs(termOpen, match.termId);
86
- const textToken = state.push('text', '', 0);
87
- textToken.content = labelContent;
88
- state.push('term_close', 'i', -1);
89
88
  state.pos = match.endPos;
90
89
  return true;
91
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/plugins/term/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/plugins/term/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,30 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.termDefinitions = termDefinitions;
4
4
  const constants_1 = require("./constants");
5
+ const INCLUDE_LINE_RE = /^{%\s*include\s/;
6
+ const NEW_LINE_RE = /^(\r\n|\r|\n)/;
7
+ const TERM_DEF_RE = /^\[\*(\w+)\]:/;
8
+ /**
9
+ * Checks whether the first non-blank line after {@link fromLine} is an
10
+ * `{% include %}` directive. Used to allow blank-line gaps between
11
+ * consecutive includes inside a single term definition.
12
+ *
13
+ * @param {StateBlock} state - The markdown-it state block containing parsing information
14
+ * @param {number} fromLine - The line number from which to start searching for include directives
15
+ * @param {number} endLine - The last line number to search within
16
+ * @returns {boolean} Returns true if an include directive is found after blank lines, false otherwise
17
+ */
18
+ function hasIncludeAfterBlanks(state, fromLine, endLine) {
19
+ for (let line = fromLine + 1; line <= endLine; line++) {
20
+ const start = state.bMarks[line];
21
+ const end = state.eMarks[line];
22
+ if (start === end)
23
+ continue;
24
+ const content = state.src.slice(start, end);
25
+ return INCLUDE_LINE_RE.test(content.trimStart());
26
+ }
27
+ return false;
28
+ }
5
29
  function termDefinitions(md, options) {
6
30
  return (state, startLine, endLine, silent) => {
7
31
  let ch;
@@ -31,19 +55,25 @@ function termDefinitions(md, options) {
31
55
  pos++;
32
56
  }
33
57
  }
34
- const newLineReg = new RegExp(/^(\r\n|\r|\n)/);
35
- const termReg = new RegExp(/^\[\*(\w+)\]:/);
36
58
  let currentLine = startLine;
37
- // Allow multiline term definition
59
+ // Allow multiline term definition.
60
+ // Blank lines normally terminate the definition, but we look ahead
61
+ // past them: if the next non-blank line is an {% include %} directive,
62
+ // we keep scanning so that multiple includes can be part of one term.
38
63
  for (; currentLine < endLine; currentLine++) {
39
64
  const nextLineStart = state.bMarks[currentLine + 1];
40
65
  const nextLineEnd = state.eMarks[currentLine + 1];
41
66
  const nextLine = nextLineStart === nextLineEnd
42
67
  ? state.src[nextLineStart]
43
68
  : state.src.slice(nextLineStart, nextLineEnd);
44
- if (newLineReg.test(nextLine) || termReg.test(nextLine)) {
69
+ if (TERM_DEF_RE.test(nextLine)) {
45
70
  break;
46
71
  }
72
+ if (NEW_LINE_RE.test(nextLine)) {
73
+ if (!hasIncludeAfterBlanks(state, currentLine + 1, endLine)) {
74
+ break;
75
+ }
76
+ }
47
77
  state.line = currentLine + 1;
48
78
  }
49
79
  max = state.eMarks[currentLine];
@@ -1 +1 @@
1
- {"version":3,"file":"termDefinitions.js","sourceRoot":"","sources":["../../../src/transform/plugins/term/termDefinitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"termDefinitions.js","sourceRoot":"","sources":["../../../src/transform/plugins/term/termDefinitions.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@diplodoc/transform",
3
- "version": "4.69.2",
3
+ "version": "4.70.0",
4
4
  "description": "A simple transformer of text in YFM (Yandex Flavored Markdown) to HTML",
5
5
  "keywords": [
6
6
  "markdown",
@@ -1,7 +1,6 @@
1
1
  import type {Lang} from '../typings';
2
2
 
3
- export const CUSTOM_ID_REGEXP = /\[?{ ?#(\S+) ?}]?/g;
4
- export const CUSTOM_ID_EXCEPTION = '[{#T}]';
3
+ export {CUSTOM_ID_REGEXP, CUSTOM_ID_EXCEPTION} from './custom-id';
5
4
 
6
5
  export const ANCHOR_TITLES: Record<Lang, string> = {
7
6
  ru: 'Скопировать ссылку',
@@ -0,0 +1,45 @@
1
+ //
2
+ // Utils for working with custom ids in heading tokens
3
+ //
4
+
5
+ import type {Token} from 'markdown-it';
6
+
7
+ export const CUSTOM_ID_REGEXP = /\[?{ ?#(\S+) ?}]?/g;
8
+ export const CUSTOM_ID_EXCEPTION = '[{#T}]';
9
+
10
+ export const getCustomIds = (content: string) => {
11
+ const ids: string[] = [];
12
+
13
+ content.replace(CUSTOM_ID_REGEXP, (match, customId) => {
14
+ if (match !== CUSTOM_ID_EXCEPTION) {
15
+ ids.push(customId);
16
+ }
17
+
18
+ return '';
19
+ });
20
+
21
+ return ids.length ? ids : null;
22
+ };
23
+
24
+ export const removeCustomId = (content: string) => {
25
+ if (CUSTOM_ID_REGEXP.test(content)) {
26
+ return content
27
+ .replace(CUSTOM_ID_REGEXP, (match) => {
28
+ if (match === CUSTOM_ID_EXCEPTION) {
29
+ return match;
30
+ }
31
+
32
+ return '';
33
+ })
34
+ .trim();
35
+ }
36
+
37
+ return content;
38
+ };
39
+
40
+ export const removeCustomIds = (token: Token) => {
41
+ token.content = removeCustomId(token.content);
42
+ token.children?.forEach((child) => {
43
+ child.content = removeCustomId(child.content);
44
+ });
45
+ };
@@ -1,15 +1,14 @@
1
1
  import type StateCore from 'markdown-it/lib/rules_core/state_core';
2
- import type Token from 'markdown-it/lib/token';
3
2
  import type {MarkdownItPluginCb} from '../typings';
4
3
 
5
4
  import {bold} from 'chalk';
6
5
  import GithubSlugger from 'github-slugger';
7
- import {escapeHtml} from 'markdown-it/lib/common/utils';
8
6
  import slugify from 'slugify';
9
7
 
10
8
  import {headingInfo} from '../../utils';
11
9
 
12
- import {ANCHOR_TITLES, CUSTOM_ID_EXCEPTION, CUSTOM_ID_REGEXP} from './constants';
10
+ import {ANCHOR_TITLES} from './constants';
11
+ import {getCustomIds, removeCustomId, removeCustomIds} from './custom-id';
13
12
 
14
13
  function createAnchorButtonTokens(
15
14
  state: StateCore,
@@ -58,43 +57,6 @@ function createAnchorLinkTokens(
58
57
  return [open, hiddenDesc, close];
59
58
  }
60
59
 
61
- const getCustomIds = (content: string) => {
62
- const ids: string[] = [];
63
-
64
- content.replace(CUSTOM_ID_REGEXP, (match, customId) => {
65
- if (match !== CUSTOM_ID_EXCEPTION) {
66
- ids.push(customId);
67
- }
68
-
69
- return '';
70
- });
71
-
72
- return ids.length ? ids : null;
73
- };
74
-
75
- const removeCustomId = (content: string) => {
76
- if (CUSTOM_ID_REGEXP.test(content)) {
77
- return content
78
- .replace(CUSTOM_ID_REGEXP, (match) => {
79
- if (match === CUSTOM_ID_EXCEPTION) {
80
- return match;
81
- }
82
-
83
- return '';
84
- })
85
- .trim();
86
- }
87
-
88
- return content;
89
- };
90
-
91
- const removeCustomIds = (token: Token) => {
92
- token.content = removeCustomId(token.content);
93
- token.children?.forEach((child) => {
94
- child.content = removeCustomId(child.content);
95
- });
96
- };
97
-
98
60
  interface Options {
99
61
  extractTitle?: boolean;
100
62
  supportGithubAnchors?: boolean;
@@ -224,6 +186,8 @@ const index: MarkdownItPluginCb<Options> = (md, options) => {
224
186
  }
225
187
  }
226
188
 
189
+ const {escapeHtml} = md.utils;
190
+
227
191
  md.renderer.rules.anchor_hidden_desc = function (tokens, index) {
228
192
  return (
229
193
  '<span class="visually-hidden" data-no-index="true">' +
@@ -135,7 +135,9 @@ const code: MarkdownItPluginCb<CodeOptions> = (md, opts) => {
135
135
  if (codeMatch) {
136
136
  const codeContent = codeMatch[1];
137
137
  const codeWithLineNumbers = addLineNumbers(codeContent, {lineWrapping});
138
- superCode = superCode.replace(codeContent, codeWithLineNumbers);
138
+ // Escape $ in replacement string: $$ becomes a literal $ in String.replace()
139
+ const escapedReplacement = codeWithLineNumbers.replace(/\$/g, '$$$$');
140
+ superCode = superCode.replace(codeContent, escapedReplacement);
139
141
  }
140
142
  }
141
143
 
@@ -106,19 +106,17 @@ function termInlineRule(state: StateInline, silent: boolean): boolean {
106
106
  return false;
107
107
  }
108
108
 
109
- if (silent) {
110
- return true;
111
- }
112
-
113
- const labelContent = state.src.slice(state.pos + 1, match.labelEnd).replace(/\\(.)/g, '$1');
109
+ if (!silent) {
110
+ const labelContent = state.src.slice(state.pos + 1, match.labelEnd).replace(/\\(.)/g, '$1');
114
111
 
115
- const termOpen = state.push('term_open', 'i', 1);
116
- setTermAttrs(termOpen, match.termId);
112
+ const termOpen = state.push('term_open', 'i', 1);
113
+ setTermAttrs(termOpen, match.termId);
117
114
 
118
- const textToken = state.push('text', '', 0);
119
- textToken.content = labelContent;
115
+ const textToken = state.push('text', '', 0);
116
+ textToken.content = labelContent;
120
117
 
121
- state.push('term_close', 'i', -1);
118
+ state.push('term_close', 'i', -1);
119
+ }
122
120
 
123
121
  state.pos = match.endPos;
124
122
  return true;
@@ -4,6 +4,33 @@ import type {MarkdownItPluginOpts} from '../typings';
4
4
 
5
5
  import {BASIC_TERM_REGEXP} from './constants';
6
6
 
7
+ const INCLUDE_LINE_RE = /^{%\s*include\s/;
8
+ const NEW_LINE_RE = /^(\r\n|\r|\n)/;
9
+ const TERM_DEF_RE = /^\[\*(\w+)\]:/;
10
+
11
+ /**
12
+ * Checks whether the first non-blank line after {@link fromLine} is an
13
+ * `{% include %}` directive. Used to allow blank-line gaps between
14
+ * consecutive includes inside a single term definition.
15
+ *
16
+ * @param {StateBlock} state - The markdown-it state block containing parsing information
17
+ * @param {number} fromLine - The line number from which to start searching for include directives
18
+ * @param {number} endLine - The last line number to search within
19
+ * @returns {boolean} Returns true if an include directive is found after blank lines, false otherwise
20
+ */
21
+ function hasIncludeAfterBlanks(state: StateBlock, fromLine: number, endLine: number): boolean {
22
+ for (let line = fromLine + 1; line <= endLine; line++) {
23
+ const start = state.bMarks[line];
24
+ const end = state.eMarks[line];
25
+
26
+ if (start === end) continue;
27
+
28
+ const content = state.src.slice(start, end);
29
+ return INCLUDE_LINE_RE.test(content.trimStart());
30
+ }
31
+ return false;
32
+ }
33
+
7
34
  export function termDefinitions(md: MarkdownIt, options: MarkdownItPluginOpts) {
8
35
  return (state: StateBlock, startLine: number, endLine: number, silent: boolean) => {
9
36
  let ch;
@@ -36,11 +63,12 @@ export function termDefinitions(md: MarkdownIt, options: MarkdownItPluginOpts) {
36
63
  }
37
64
  }
38
65
 
39
- const newLineReg = new RegExp(/^(\r\n|\r|\n)/);
40
- const termReg = new RegExp(/^\[\*(\w+)\]:/);
41
66
  let currentLine = startLine;
42
67
 
43
- // Allow multiline term definition
68
+ // Allow multiline term definition.
69
+ // Blank lines normally terminate the definition, but we look ahead
70
+ // past them: if the next non-blank line is an {% include %} directive,
71
+ // we keep scanning so that multiple includes can be part of one term.
44
72
  for (; currentLine < endLine; currentLine++) {
45
73
  const nextLineStart = state.bMarks[currentLine + 1];
46
74
  const nextLineEnd = state.eMarks[currentLine + 1];
@@ -50,10 +78,16 @@ export function termDefinitions(md: MarkdownIt, options: MarkdownItPluginOpts) {
50
78
  ? state.src[nextLineStart]
51
79
  : state.src.slice(nextLineStart, nextLineEnd);
52
80
 
53
- if (newLineReg.test(nextLine) || termReg.test(nextLine)) {
81
+ if (TERM_DEF_RE.test(nextLine)) {
54
82
  break;
55
83
  }
56
84
 
85
+ if (NEW_LINE_RE.test(nextLine)) {
86
+ if (!hasIncludeAfterBlanks(state, currentLine + 1, endLine)) {
87
+ break;
88
+ }
89
+ }
90
+
57
91
  state.line = currentLine + 1;
58
92
  }
59
93