@quarto/jupyterlab-quarto 0.1.27

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 (168) hide show
  1. package/LICENSE +29 -0
  2. package/README.md +71 -0
  3. package/lib/const.d.ts +5 -0
  4. package/lib/const.js +11 -0
  5. package/lib/const.js.map +1 -0
  6. package/lib/hooks/codemirror.d.ts +4 -0
  7. package/lib/hooks/codemirror.js +51 -0
  8. package/lib/hooks/codemirror.js.map +1 -0
  9. package/lib/index.d.ts +6 -0
  10. package/lib/index.js +57 -0
  11. package/lib/index.js.map +1 -0
  12. package/lib/manager.d.ts +8 -0
  13. package/lib/manager.js +116 -0
  14. package/lib/manager.js.map +1 -0
  15. package/lib/plugins/callouts.d.ts +3 -0
  16. package/lib/plugins/callouts.js +208 -0
  17. package/lib/plugins/callouts.js.map +1 -0
  18. package/lib/plugins/cites.d.ts +3 -0
  19. package/lib/plugins/cites.js +147 -0
  20. package/lib/plugins/cites.js.map +1 -0
  21. package/lib/plugins/decorator.d.ts +3 -0
  22. package/lib/plugins/decorator.js +58 -0
  23. package/lib/plugins/decorator.js.map +1 -0
  24. package/lib/plugins/divs.d.ts +6 -0
  25. package/lib/plugins/divs.js +99 -0
  26. package/lib/plugins/divs.js.map +1 -0
  27. package/lib/plugins/figure-divs.d.ts +3 -0
  28. package/lib/plugins/figure-divs.js +52 -0
  29. package/lib/plugins/figure-divs.js.map +1 -0
  30. package/lib/plugins/figures.d.ts +17 -0
  31. package/lib/plugins/figures.js +98 -0
  32. package/lib/plugins/figures.js.map +1 -0
  33. package/lib/plugins/gridtables/common/gridtables/GetCells.d.ts +8 -0
  34. package/lib/plugins/gridtables/common/gridtables/GetCells.js +44 -0
  35. package/lib/plugins/gridtables/common/gridtables/GetCells.js.map +1 -0
  36. package/lib/plugins/gridtables/common/gridtables/GetColumnWidths.d.ts +8 -0
  37. package/lib/plugins/gridtables/common/gridtables/GetColumnWidths.js +26 -0
  38. package/lib/plugins/gridtables/common/gridtables/GetColumnWidths.js.map +1 -0
  39. package/lib/plugins/gridtables/common/markdown-it/ColumnAlignments.d.ts +8 -0
  40. package/lib/plugins/gridtables/common/markdown-it/ColumnAlignments.js +12 -0
  41. package/lib/plugins/gridtables/common/markdown-it/ColumnAlignments.js.map +1 -0
  42. package/lib/plugins/gridtables/common/markdown-it/EmitTable.d.ts +5 -0
  43. package/lib/plugins/gridtables/common/markdown-it/EmitTable.js +66 -0
  44. package/lib/plugins/gridtables/common/markdown-it/EmitTable.js.map +1 -0
  45. package/lib/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.d.ts +9 -0
  46. package/lib/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.js +18 -0
  47. package/lib/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.js.map +1 -0
  48. package/lib/plugins/gridtables/common/markdown-it/GetLine.d.ts +3 -0
  49. package/lib/plugins/gridtables/common/markdown-it/GetLine.js +9 -0
  50. package/lib/plugins/gridtables/common/markdown-it/GetLine.js.map +1 -0
  51. package/lib/plugins/gridtables/common/markdown-it/ParseTable.d.ts +4 -0
  52. package/lib/plugins/gridtables/common/markdown-it/ParseTable.js +161 -0
  53. package/lib/plugins/gridtables/common/markdown-it/ParseTable.js.map +1 -0
  54. package/lib/plugins/gridtables/common/markdown-it/ParseTableResult.d.ts +13 -0
  55. package/lib/plugins/gridtables/common/markdown-it/ParseTableResult.js +17 -0
  56. package/lib/plugins/gridtables/common/markdown-it/ParseTableResult.js.map +1 -0
  57. package/lib/plugins/gridtables/index.d.ts +2 -0
  58. package/lib/plugins/gridtables/index.js +8 -0
  59. package/lib/plugins/gridtables/index.js.map +1 -0
  60. package/lib/plugins/gridtables/interfaces/markdown-it/IState.d.ts +11 -0
  61. package/lib/plugins/gridtables/interfaces/markdown-it/IState.js +5 -0
  62. package/lib/plugins/gridtables/interfaces/markdown-it/IState.js.map +1 -0
  63. package/lib/plugins/gridtables/interfaces/markdown-it/IToken.d.ts +7 -0
  64. package/lib/plugins/gridtables/interfaces/markdown-it/IToken.js +5 -0
  65. package/lib/plugins/gridtables/interfaces/markdown-it/IToken.js.map +1 -0
  66. package/lib/plugins/gridtables/interfaces/markdown-it/TRuleFunction.d.ts +4 -0
  67. package/lib/plugins/gridtables/interfaces/markdown-it/TRuleFunction.js +5 -0
  68. package/lib/plugins/gridtables/interfaces/markdown-it/TRuleFunction.js.map +1 -0
  69. package/lib/plugins/gridtables/rules/gridtable.d.ts +4 -0
  70. package/lib/plugins/gridtables/rules/gridtable.js +25 -0
  71. package/lib/plugins/gridtables/rules/gridtable.js.map +1 -0
  72. package/lib/plugins/math.d.ts +5 -0
  73. package/lib/plugins/math.js +174 -0
  74. package/lib/plugins/math.js.map +1 -0
  75. package/lib/plugins/mermaid/index.d.ts +3 -0
  76. package/lib/plugins/mermaid/index.js +53 -0
  77. package/lib/plugins/mermaid/index.js.map +1 -0
  78. package/lib/plugins/spans.d.ts +3 -0
  79. package/lib/plugins/spans.js +38 -0
  80. package/lib/plugins/table-captions.d.ts +3 -0
  81. package/lib/plugins/table-captions.js +74 -0
  82. package/lib/plugins/table-captions.js.map +1 -0
  83. package/lib/plugins/yaml.d.ts +3 -0
  84. package/lib/plugins/yaml.js +309 -0
  85. package/lib/plugins/yaml.js.map +1 -0
  86. package/lib/providers/attrs.d.ts +2 -0
  87. package/lib/providers/attrs.js +15 -0
  88. package/lib/providers/attrs.js.map +1 -0
  89. package/lib/providers/callouts.d.ts +2 -0
  90. package/lib/providers/callouts.js +15 -0
  91. package/lib/providers/callouts.js.map +1 -0
  92. package/lib/providers/cites.d.ts +2 -0
  93. package/lib/providers/cites.js +15 -0
  94. package/lib/providers/cites.js.map +1 -0
  95. package/lib/providers/decorator.d.ts +2 -0
  96. package/lib/providers/decorator.js +15 -0
  97. package/lib/providers/decorator.js.map +1 -0
  98. package/lib/providers/deflist.d.ts +2 -0
  99. package/lib/providers/deflist.js +15 -0
  100. package/lib/providers/deflist.js.map +1 -0
  101. package/lib/providers/divs.d.ts +2 -0
  102. package/lib/providers/divs.js +27 -0
  103. package/lib/providers/divs.js.map +1 -0
  104. package/lib/providers/figure-divs.d.ts +2 -0
  105. package/lib/providers/figure-divs.js +15 -0
  106. package/lib/providers/figure-divs.js.map +1 -0
  107. package/lib/providers/figures.d.ts +2 -0
  108. package/lib/providers/figures.js +15 -0
  109. package/lib/providers/figures.js.map +1 -0
  110. package/lib/providers/footnotes.d.ts +2 -0
  111. package/lib/providers/footnotes.js +15 -0
  112. package/lib/providers/footnotes.js.map +1 -0
  113. package/lib/providers/gridtables.d.ts +2 -0
  114. package/lib/providers/gridtables.js +15 -0
  115. package/lib/providers/gridtables.js.map +1 -0
  116. package/lib/providers/math.d.ts +2 -0
  117. package/lib/providers/math.js +104 -0
  118. package/lib/providers/math.js.map +1 -0
  119. package/lib/providers/mermaid.d.ts +2 -0
  120. package/lib/providers/mermaid.js +13 -0
  121. package/lib/providers/mermaid.js.map +1 -0
  122. package/lib/providers/provider.d.ts +4 -0
  123. package/lib/providers/provider.js +12 -0
  124. package/lib/providers/provider.js.map +1 -0
  125. package/lib/providers/spans.d.ts +2 -0
  126. package/lib/providers/spans.js +15 -0
  127. package/lib/providers/sub.d.ts +2 -0
  128. package/lib/providers/sub.js +15 -0
  129. package/lib/providers/sub.js.map +1 -0
  130. package/lib/providers/sup.d.ts +2 -0
  131. package/lib/providers/sup.js +15 -0
  132. package/lib/providers/sup.js.map +1 -0
  133. package/lib/providers/table-captions.d.ts +2 -0
  134. package/lib/providers/table-captions.js +15 -0
  135. package/lib/providers/table-captions.js.map +1 -0
  136. package/lib/providers/tasklists.d.ts +2 -0
  137. package/lib/providers/tasklists.js +15 -0
  138. package/lib/providers/tasklists.js.map +1 -0
  139. package/lib/providers/yaml.d.ts +2 -0
  140. package/lib/providers/yaml.js +15 -0
  141. package/lib/providers/yaml.js.map +1 -0
  142. package/lib/types.d.ts +44 -0
  143. package/lib/types.js +1 -0
  144. package/lib/types.js.map +1 -0
  145. package/lib/utils/html.d.ts +12 -0
  146. package/lib/utils/html.js +45 -0
  147. package/lib/utils/html.js.map +1 -0
  148. package/lib/utils/markdownit.d.ts +4 -0
  149. package/lib/utils/markdownit.js +44 -0
  150. package/lib/utils/markdownit.js.map +1 -0
  151. package/lib/utils/tok.d.ts +8 -0
  152. package/lib/utils/tok.js +13 -0
  153. package/lib/utils/tok.js.map +1 -0
  154. package/lib/widgets.d.ts +15 -0
  155. package/lib/widgets.js +57 -0
  156. package/lib/widgets.js.map +1 -0
  157. package/package.json +120 -0
  158. package/schema/plugin.json +8 -0
  159. package/src/@types/markdown-it-deflist.d.ts +10 -0
  160. package/src/@types/markdown-it-footnote.d.ts +10 -0
  161. package/src/@types/markdown-it-gridtables.d.ts +10 -0
  162. package/src/@types/markdown-it-implicit-figures.d.ts +10 -0
  163. package/src/@types/markdown-it-sub.d.ts +10 -0
  164. package/src/@types/markdown-it-sup.d.ts +10 -0
  165. package/src/@types/markdown-it-task-lists.d.ts +10 -0
  166. package/style/base.css +340 -0
  167. package/style/index.css +1 -0
  168. package/style/index.js +1 -0
@@ -0,0 +1,12 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ var ColumnAlignments;
6
+ (function (ColumnAlignments) {
7
+ ColumnAlignments["None"] = "";
8
+ ColumnAlignments["Left"] = "left";
9
+ ColumnAlignments["Center"] = "center";
10
+ ColumnAlignments["Right"] = "right";
11
+ })(ColumnAlignments || (ColumnAlignments = {}));
12
+ export default ColumnAlignments;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnAlignments.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/ColumnAlignments.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,IAAK,gBAMJ;AAND,WAAK,gBAAgB;IAEjB,6BAAS,CAAA;IACT,iCAAa,CAAA;IACb,qCAAiB,CAAA;IACjB,mCAAe,CAAA;AACnB,CAAC,EANI,gBAAgB,KAAhB,gBAAgB,QAMpB;AAED,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import * as MarkdownIt from "markdown-it";
2
+ import IState from "../../interfaces/markdown-it/IState";
3
+ import ParseTableResult from "./ParseTableResult";
4
+ export default function emitTable(md: MarkdownIt, state: IState, result: ParseTableResult): void;
5
+ //# sourceMappingURL=EmitTable.d.ts.map
@@ -0,0 +1,66 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import getCells from "../gridtables/GetCells";
6
+ import ColumnAlignments from "./ColumnAlignments";
7
+ export default function emitTable(md, state, result) {
8
+ let offsets = result.SeparatorLineOffsets;
9
+ let token = state.push('table_open', 'table', 1);
10
+ token.map = [offsets[0], offsets[offsets.length - 1]];
11
+ if (result.HeaderLines.length > 0) {
12
+ // emit table header
13
+ const token = state.push('thead_open', 'thead', 1);
14
+ token.map = [offsets[0], offsets[1]];
15
+ const cells = getCells(result.HeaderLines);
16
+ processRow(md, state, 'th', result.ColumnAlignments, offsets[0], offsets[1], cells);
17
+ state.push('thead_close', 'thead', -1);
18
+ offsets = offsets.slice(1);
19
+ }
20
+ // emit table body
21
+ token = state.push('tbody_open', 'tbody', 1);
22
+ token.map = [offsets[0], offsets[offsets.length - 1]];
23
+ for (let i = 0; i < result.RowLines.length; i++) {
24
+ let cells = getCells(result.RowLines[i]);
25
+ processRow(md, state, 'td', result.ColumnAlignments, offsets[i], offsets[i + 1], cells);
26
+ }
27
+ state.push('tbody_close', 'tbody', -1);
28
+ state.push('table_close', 'table', -1);
29
+ }
30
+ function processRow(md, state, tag, columnAlignments, lineBegin, lineEnd, cells) {
31
+ let token = state.push('tr_open', 'tr', 1);
32
+ token.map = [lineBegin, lineEnd];
33
+ for (let i = 0; i < cells.length; i++) {
34
+ let token = state.push(tag + '_open', tag, 1);
35
+ token.map = [lineBegin + 1, lineEnd - 1];
36
+ if (columnAlignments[i] !== ColumnAlignments.None) {
37
+ token.attrSet("style", `text-align: ${columnAlignments[i]};`);
38
+ }
39
+ if (cells[i].length === 0) {
40
+ // empty cell
41
+ }
42
+ else if (cells[i].length === 1) {
43
+ // single line cell -> emit as inline markdown
44
+ let token = state.push('inline', '', 0);
45
+ token.content = cells[i][0].trim();
46
+ token.children = [];
47
+ }
48
+ else {
49
+ // multi line cell -> render and emit as html
50
+ let cell = md
51
+ .render(cells[i].join('\r\n'))
52
+ .trim();
53
+ // remove single p tag because we're in a table cell
54
+ if ((cell.slice(0, 3) === '<p>') &&
55
+ (cell.slice(-4) === '</p>') &&
56
+ (cell.indexOf('<p>', 3) === -1)) {
57
+ cell = cell.slice(3, cell.length - 4);
58
+ }
59
+ let token = state.push('html_block', '', 0);
60
+ token.content = cell;
61
+ token.children = [];
62
+ }
63
+ state.push(tag + '_close', tag, -1);
64
+ }
65
+ state.push('tr_close', 'tr', -1);
66
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmitTable.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/EmitTable.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import IState from "../../interfaces/markdown-it/IState";
2
+ /**
3
+ * Returns the char code of the character at the start of the current line,
4
+ * or -1 if this is not available (e.g. on an empty line).
5
+ *
6
+ * @param state The Markdown It state.
7
+ */
8
+ export default function getCharCodeAtStartOfLine(state: IState, line: number): number;
9
+ //# sourceMappingURL=GetCharCodeAtStartOfLine.d.ts.map
@@ -0,0 +1,18 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /**
6
+ * Returns the char code of the character at the start of the current line,
7
+ * or -1 if this is not available (e.g. on an empty line).
8
+ *
9
+ * @param state The Markdown It state.
10
+ */
11
+ export default function getCharCodeAtStartOfLine(state, line) {
12
+ const pos = state.bMarks[line] +
13
+ state.tShift[line];
14
+ if (pos >= state.eMarks[line]) {
15
+ return -1;
16
+ }
17
+ return state.src.charCodeAt(pos);
18
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetCharCodeAtStartOfLine.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/GetCharCodeAtStartOfLine.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC5C,KAAa,EACb,IAAY;IAGZ,MAAM,GAAG,GACL,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAClB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEvB,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAC7B;QACI,OAAO,CAAC,CAAC,CAAC;KACb;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import IState from "../../interfaces/markdown-it/IState";
2
+ export default function getLine(state: IState, line: number): string;
3
+ //# sourceMappingURL=GetLine.d.ts.map
@@ -0,0 +1,9 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export default function getLine(state, line) {
6
+ const start = state.bMarks[line] + state.blkIndent;
7
+ const end = state.eMarks[line];
8
+ return state.src.substr(start, end - start);
9
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetLine.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/GetLine.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,OAAO,UAAU,OAAO,CAC3B,KAAa,EACb,IAAY;IAGZ,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;IAEnD,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CACnB,KAAK,EACL,GAAG,GAAG,KAAK,CAAC,CAAC;AACrB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import IState from "../../interfaces/markdown-it/IState";
2
+ import ParseTableResult from "./ParseTableResult";
3
+ export default function parseTable(state: IState, startLine: number, endLine: number): ParseTableResult;
4
+ //# sourceMappingURL=ParseTable.d.ts.map
@@ -0,0 +1,161 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import wcwidth from "wcwidth";
6
+ import getColumnWidths from "../gridtables/GetColumnWidths";
7
+ import ColumnAlignments from "./ColumnAlignments";
8
+ import getLine from "./GetLine";
9
+ import ParseTableResult from "./ParseTableResult";
10
+ export default function parseTable(state, startLine, endLine) {
11
+ const result = new ParseTableResult();
12
+ let rowLine = getLine(state, startLine);
13
+ if (rowLine.charAt(0) !== '+') {
14
+ // line does not start with a '+'
15
+ return result;
16
+ }
17
+ result.ColumnWidths = getColumnWidths(rowLine);
18
+ if (result.ColumnWidths.length === 0) {
19
+ // no columns found
20
+ return result;
21
+ }
22
+ // initialize column alignments
23
+ result.ColumnAlignments = result.ColumnWidths
24
+ .map(_ => ColumnAlignments.None);
25
+ if (rowLine.indexOf(':') >= 0) {
26
+ // column alignment specifiers present in first row line
27
+ result.HeaderLess = true;
28
+ // set column alignments
29
+ result.ColumnAlignments = getColumnAlignments(rowLine, result.ColumnWidths);
30
+ // remove alignment specifiers for further matching
31
+ rowLine = rowLine.replace(/[:]/g, '-');
32
+ }
33
+ // create header line matcher
34
+ const headerLineMatcher = new RegExp('^\\+' +
35
+ result.ColumnWidths
36
+ .map(w => `[=:][=]{${w - 3}}[=:]\\+`)
37
+ .join('') +
38
+ '$');
39
+ // build column offsets
40
+ result.ColumnOffsets = [0];
41
+ for (let i = 0; i < result.ColumnWidths.length - 1; i++) {
42
+ result.ColumnOffsets.push(result.ColumnOffsets[i] +
43
+ result.ColumnWidths[i]);
44
+ }
45
+ // create cell line matcher
46
+ const cellLineMatcher = new RegExp('^\\|' +
47
+ result.ColumnWidths
48
+ .map(w => `([^|]{${Math.ceil((w - 1) / 2)},${w - 1}})\\|`)
49
+ .join('') +
50
+ '$');
51
+ // save first separator line offset
52
+ result.SeparatorLineOffsets.push(startLine);
53
+ // continue to scan until a complete table is found, or an invalid line is encountered
54
+ let currentRow = [];
55
+ let currentLine = startLine + 1;
56
+ for (; currentLine <= endLine; currentLine++) {
57
+ const line = getLine(state, currentLine);
58
+ if (line.charCodeAt(0) === 0x2B) // '+'
59
+ {
60
+ // separator line
61
+ if (currentRow.length === 0) {
62
+ // no row lines since last separator -> invalid table
63
+ return result;
64
+ }
65
+ // save separator line offset
66
+ result.SeparatorLineOffsets.push(currentLine);
67
+ if (line === rowLine) {
68
+ // new regular row
69
+ result.RowLines.push(currentRow);
70
+ if (result.HeaderLines.length === 0) {
71
+ result.HeaderLess = true;
72
+ }
73
+ }
74
+ else if (!result.HeaderLess &&
75
+ line.match(headerLineMatcher)) {
76
+ // found header line
77
+ if (result.HeaderLines.length > 0 ||
78
+ result.RowLines.length > 0) {
79
+ // header already found, or not the first row -> invalid table
80
+ return result;
81
+ }
82
+ // header row
83
+ result.HeaderLines = currentRow;
84
+ if (line.indexOf(':') >= 0) {
85
+ // set column alignments
86
+ result.ColumnAlignments = getColumnAlignments(line, result.ColumnWidths);
87
+ }
88
+ }
89
+ else {
90
+ // not a header or regular row -> invalid table
91
+ return result;
92
+ }
93
+ // reset current row
94
+ currentRow = [];
95
+ }
96
+ else if (line.charCodeAt(0) === 0x7C) // '|'
97
+ {
98
+ // cell line
99
+ const matches = line.match(cellLineMatcher);
100
+ if (matches === null) {
101
+ // cell line does not match -> invalid table
102
+ return result;
103
+ }
104
+ const cells = validateColumnWidths(matches, result.ColumnWidths);
105
+ if (cells === null) {
106
+ // cell line does not match -> invalid table
107
+ return result;
108
+ }
109
+ // add the line to the current row
110
+ currentRow.push(cells);
111
+ }
112
+ else {
113
+ // not a separator or cell line, check if we have a complete table
114
+ if (currentRow.length === 0 &&
115
+ ((result.HeaderLines.length > 0) ||
116
+ (result.RowLines.length > 0))) {
117
+ // found a complete table
118
+ break;
119
+ }
120
+ return result;
121
+ }
122
+ }
123
+ result.CurrentLine = currentLine;
124
+ result.Success = true;
125
+ return result;
126
+ }
127
+ function getColumnAlignments(line, columnWidths) {
128
+ let alignments = [];
129
+ let left = 1;
130
+ let right = -1;
131
+ for (let i = 0; i < columnWidths.length; i++) {
132
+ right += columnWidths[i];
133
+ let alignment = ColumnAlignments.None;
134
+ if (line.charAt(right) === ':') {
135
+ if (line.charAt(left) === ':') {
136
+ alignment = ColumnAlignments.Center;
137
+ }
138
+ else {
139
+ alignment = ColumnAlignments.Right;
140
+ }
141
+ }
142
+ else if (line.charAt(left) === ':') {
143
+ alignment = ColumnAlignments.Left;
144
+ }
145
+ alignments.push(alignment);
146
+ left += columnWidths[i];
147
+ }
148
+ return alignments;
149
+ }
150
+ function validateColumnWidths(matches, columnWidths) {
151
+ const cells = [];
152
+ for (var i = 0; i < columnWidths.length; i++) {
153
+ const cell = matches[i + 1];
154
+ const columnWidth = wcwidth(cell) + 1; // add 1 for separator
155
+ if (columnWidth !== columnWidths[i]) {
156
+ return null;
157
+ }
158
+ cells.push(cell);
159
+ }
160
+ return cells;
161
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseTable.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/ParseTable.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import ColumnAlignments from "./ColumnAlignments";
2
+ export default class ParseTableResult {
3
+ Success: boolean;
4
+ ColumnWidths: number[];
5
+ ColumnOffsets: number[];
6
+ ColumnAlignments: ColumnAlignments[];
7
+ HeaderLess: boolean;
8
+ HeaderLines: string[][];
9
+ RowLines: string[][][];
10
+ SeparatorLineOffsets: number[];
11
+ CurrentLine: number;
12
+ }
13
+ //# sourceMappingURL=ParseTableResult.d.ts.map
@@ -0,0 +1,17 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export default class ParseTableResult {
6
+ constructor() {
7
+ this.Success = false;
8
+ this.ColumnWidths = [];
9
+ this.ColumnOffsets = [];
10
+ this.ColumnAlignments = [];
11
+ this.HeaderLess = false;
12
+ this.HeaderLines = [];
13
+ this.RowLines = [];
14
+ this.SeparatorLineOffsets = [];
15
+ this.CurrentLine = 0;
16
+ }
17
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParseTableResult.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/common/markdown-it/ParseTableResult.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAIhG,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAArC;QAEI,YAAO,GAAY,KAAK,CAAC;QAEzB,iBAAY,GAAa,EAAE,CAAC;QAE5B,kBAAa,GAAa,EAAE,CAAC;QAE7B,qBAAgB,GAAuB,EAAE,CAAC;QAE1C,eAAU,GAAY,KAAK,CAAC;QAE5B,gBAAW,GAAe,EAAE,CAAC;QAE7B,aAAQ,GAAiB,EAAE,CAAC;QAE5B,yBAAoB,GAAa,EAAE,CAAC;QAEpC,gBAAW,GAAW,CAAC,CAAC;IAC5B,CAAC;CAAA"}
@@ -0,0 +1,2 @@
1
+ export default function gridTableRulePlugin(md: any, options: any): void;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,8 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import gridTableRule from "./rules/gridtable";
6
+ export default function gridTableRulePlugin(md, options) {
7
+ md.block.ruler.before("table", "gridtable", gridTableRule(md));
8
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/gridtables/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,aAAa,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACvC,EAAO,EACP,OAAY;IAEZ,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CACjB,OAAO,EACP,WAAW,EACX,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import IToken from "./IToken";
2
+ export default interface IState {
3
+ src: string;
4
+ bMarks: number[];
5
+ eMarks: number[];
6
+ blkIndent: number;
7
+ tShift: number[];
8
+ line: number;
9
+ push(action: string, tag: string, level: number): IToken;
10
+ }
11
+ //# sourceMappingURL=IState.d.ts.map
@@ -0,0 +1,5 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IState.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/interfaces/markdown-it/IState.ts"],"names":[],"mappings":"AAAA;;;gGAGgG"}
@@ -0,0 +1,7 @@
1
+ export default interface IToken {
2
+ children: IToken[];
3
+ content: string;
4
+ map: number[];
5
+ attrSet(name: string, value: string): void;
6
+ }
7
+ //# sourceMappingURL=IToken.d.ts.map
@@ -0,0 +1,5 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IToken.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/interfaces/markdown-it/IToken.ts"],"names":[],"mappings":"AAAA;;;gGAGgG"}
@@ -0,0 +1,4 @@
1
+ import IState from "./IState";
2
+ declare type TRuleFunction = (state: IState, startLine: number, endLine: number, silent: boolean) => boolean;
3
+ export default TRuleFunction;
4
+ //# sourceMappingURL=TRuleFunction.d.ts.map
@@ -0,0 +1,5 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TRuleFunction.js","sourceRoot":"","sources":["../../../../../src/plugins/gridtables/interfaces/markdown-it/TRuleFunction.ts"],"names":[],"mappings":"AAAA;;;gGAGgG"}
@@ -0,0 +1,4 @@
1
+ import * as MarkdownIt from "markdown-it";
2
+ import TRuleFunction from "../interfaces/markdown-it/TRuleFunction";
3
+ export default function gridTableRule(md: MarkdownIt): TRuleFunction;
4
+ //# sourceMappingURL=gridtable.d.ts.map
@@ -0,0 +1,25 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bas Verweij. All rights reserved.
3
+ * Licensed under the MIT License. See LICENSE in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import emitTable from "../common/markdown-it/EmitTable";
6
+ import getCharCodeAtStartOfLine from "../common/markdown-it/GetCharCodeAtStartOfLine";
7
+ import parseTable from "../common/markdown-it/ParseTable";
8
+ export default function gridTableRule(md) {
9
+ return function (state, startLine, endLine, silent) {
10
+ if (getCharCodeAtStartOfLine(state, startLine) !== 0x2B) {
11
+ // line does not start with a '+'
12
+ return false;
13
+ }
14
+ let parseResult = parseTable(state, startLine, endLine);
15
+ if (!parseResult.Success) {
16
+ return false;
17
+ }
18
+ if (silent) {
19
+ return true;
20
+ }
21
+ emitTable(md, state, parseResult);
22
+ state.line = parseResult.CurrentLine;
23
+ return true;
24
+ };
25
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gridtable.js","sourceRoot":"","sources":["../../../../src/plugins/gridtables/rules/gridtable.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAGhG,OAAO,SAAS,MAAM,iCAAiC,CAAC;AACxD,OAAO,wBAAwB,MAAM,gDAAgD,CAAC;AACtF,OAAO,UAAU,MAAM,kCAAkC,CAAC;AAI1D,MAAM,CAAC,OAAO,UAAU,aAAa,CACjC,EAAc;IAGd,OAAO,UACH,KAAa,EACb,SAAiB,EACjB,OAAe,EACf,MAAe;QAGf,IAAI,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,EACvD;YACI,iCAAiC;YACjC,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,WAAW,GAAG,UAAU,CACxB,KAAK,EACL,SAAS,EACT,OAAO,CAAC,CAAC;QAEb,IAAI,CAAC,WAAW,CAAC,OAAO,EACxB;YACI,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,MAAM,EACV;YACI,OAAO,IAAI,CAAC;SACf;QAED,SAAS,CACL,EAAE,EACF,KAAK,EACL,WAAW,CAAC,CAAC;QAEjB,KAAK,CAAC,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC;QAErC,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type MarkdownIt from "markdown-it";
2
+ export declare const kTokMathBlock = "math_block";
3
+ export declare const kTokMathInline = "math_inline";
4
+ export declare function mathjaxPlugin(md: MarkdownIt, options: any): void;
5
+ //# sourceMappingURL=math.d.ts.map