wikiparser-node 1.9.0-b → 1.9.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.
Files changed (169) hide show
  1. package/config/.schema.json +181 -0
  2. package/config/enwiki.json +814 -1
  3. package/config/llwiki.json +35 -1
  4. package/config/moegirl.json +44 -1
  5. package/config/zhwiki.json +466 -1
  6. package/dist/addon/table.js +485 -0
  7. package/dist/addon/token.js +236 -0
  8. package/dist/addon/transclude.js +183 -0
  9. package/dist/base.d.ts +71 -0
  10. package/dist/base.js +39 -0
  11. package/dist/index.d.ts +33 -0
  12. package/dist/index.js +218 -0
  13. package/dist/internal.d.ts +46 -0
  14. package/dist/lib/element.d.ts +129 -0
  15. package/dist/lib/element.js +593 -0
  16. package/dist/lib/node.d.ts +166 -0
  17. package/dist/lib/node.js +480 -0
  18. package/dist/lib/range.d.ts +105 -0
  19. package/dist/lib/range.js +406 -0
  20. package/dist/lib/ranges.d.ts +28 -0
  21. package/dist/lib/ranges.js +126 -0
  22. package/dist/lib/text.d.ts +54 -0
  23. package/dist/lib/text.js +350 -0
  24. package/dist/lib/title.d.ts +40 -0
  25. package/dist/lib/title.js +197 -0
  26. package/dist/mixin/attributesParent.d.ts +49 -0
  27. package/dist/mixin/attributesParent.js +81 -0
  28. package/dist/mixin/fixed.d.ts +5 -0
  29. package/dist/mixin/fixed.js +30 -0
  30. package/dist/mixin/flagsParent.d.ts +41 -0
  31. package/dist/mixin/flagsParent.js +59 -0
  32. package/dist/mixin/hidden.d.ts +4 -0
  33. package/dist/mixin/hidden.js +24 -0
  34. package/dist/mixin/magicLinkParent.d.ts +19 -0
  35. package/dist/mixin/magicLinkParent.js +42 -0
  36. package/dist/mixin/singleLine.d.ts +5 -0
  37. package/dist/mixin/singleLine.js +26 -0
  38. package/dist/mixin/sol.d.ts +5 -0
  39. package/dist/mixin/sol.js +43 -0
  40. package/dist/mixin/syntax.d.ts +8 -0
  41. package/dist/mixin/syntax.js +50 -0
  42. package/dist/parser/braces.js +139 -0
  43. package/dist/parser/commentAndExt.js +89 -0
  44. package/dist/parser/converter.js +40 -0
  45. package/dist/parser/externalLinks.js +44 -0
  46. package/dist/parser/hrAndDoubleUnderscore.js +40 -0
  47. package/dist/parser/html.js +38 -0
  48. package/dist/parser/links.js +99 -0
  49. package/dist/parser/list.js +97 -0
  50. package/dist/parser/magicLinks.js +59 -0
  51. package/dist/parser/quotes.js +67 -0
  52. package/dist/parser/redirect.js +26 -0
  53. package/dist/parser/selector.js +190 -0
  54. package/dist/parser/table.js +123 -0
  55. package/dist/src/arg.d.ts +54 -0
  56. package/dist/src/arg.js +214 -0
  57. package/dist/src/atom.d.ts +12 -0
  58. package/dist/src/atom.js +27 -0
  59. package/dist/src/attribute.d.ts +67 -0
  60. package/dist/src/attribute.js +502 -0
  61. package/dist/src/attributes.d.ts +105 -0
  62. package/dist/src/attributes.js +356 -0
  63. package/dist/src/converter.d.ts +31 -0
  64. package/dist/src/converter.js +134 -0
  65. package/dist/src/converterFlags.d.ts +83 -0
  66. package/dist/src/converterFlags.js +242 -0
  67. package/dist/src/converterRule.d.ts +75 -0
  68. package/dist/src/converterRule.js +209 -0
  69. package/dist/src/extLink.d.ts +39 -0
  70. package/dist/src/extLink.js +191 -0
  71. package/dist/src/gallery.d.ts +50 -0
  72. package/dist/src/gallery.js +139 -0
  73. package/dist/src/heading.d.ts +43 -0
  74. package/dist/src/heading.js +190 -0
  75. package/dist/src/hidden.d.ts +7 -0
  76. package/dist/src/hidden.js +23 -0
  77. package/dist/src/html.d.ts +61 -0
  78. package/dist/src/html.js +358 -0
  79. package/dist/src/imageParameter.d.ts +61 -0
  80. package/dist/src/imageParameter.js +257 -0
  81. package/dist/src/imagemap.d.ts +50 -0
  82. package/dist/src/imagemap.js +144 -0
  83. package/dist/src/imagemapLink.d.ts +31 -0
  84. package/dist/src/imagemapLink.js +93 -0
  85. package/dist/src/index.d.ts +142 -0
  86. package/dist/src/index.js +717 -0
  87. package/dist/src/link/base.d.ts +48 -0
  88. package/dist/src/link/base.js +228 -0
  89. package/dist/src/link/category.d.ts +22 -0
  90. package/dist/src/link/category.js +30 -0
  91. package/dist/src/link/file.d.ts +96 -0
  92. package/dist/src/link/file.js +272 -0
  93. package/dist/src/link/galleryImage.d.ts +30 -0
  94. package/dist/src/link/galleryImage.js +157 -0
  95. package/dist/src/link/index.d.ts +54 -0
  96. package/dist/src/link/index.js +133 -0
  97. package/dist/src/link/redirectTarget.d.ts +49 -0
  98. package/dist/src/link/redirectTarget.js +101 -0
  99. package/dist/src/magicLink.d.ts +59 -0
  100. package/dist/src/magicLink.js +261 -0
  101. package/dist/src/nested.d.ts +41 -0
  102. package/dist/src/nested.js +105 -0
  103. package/dist/src/nowiki/base.d.ts +31 -0
  104. package/dist/src/nowiki/base.js +93 -0
  105. package/dist/src/nowiki/comment.d.ts +21 -0
  106. package/dist/src/nowiki/comment.js +76 -0
  107. package/dist/src/nowiki/dd.d.ts +8 -0
  108. package/dist/src/nowiki/dd.js +24 -0
  109. package/dist/src/nowiki/doubleUnderscore.d.ts +16 -0
  110. package/dist/src/nowiki/doubleUnderscore.js +101 -0
  111. package/dist/src/nowiki/hr.d.ts +5 -0
  112. package/dist/src/nowiki/hr.js +63 -0
  113. package/dist/src/nowiki/index.d.ts +14 -0
  114. package/dist/src/nowiki/index.js +27 -0
  115. package/dist/src/nowiki/list.d.ts +16 -0
  116. package/dist/src/nowiki/list.js +109 -0
  117. package/dist/src/nowiki/listBase.d.ts +5 -0
  118. package/dist/src/nowiki/listBase.js +61 -0
  119. package/dist/src/nowiki/noinclude.d.ts +10 -0
  120. package/dist/src/nowiki/noinclude.js +23 -0
  121. package/dist/src/nowiki/quote.d.ts +17 -0
  122. package/dist/src/nowiki/quote.js +137 -0
  123. package/dist/src/onlyinclude.d.ts +14 -0
  124. package/dist/src/onlyinclude.js +57 -0
  125. package/dist/src/paramTag/index.d.ts +33 -0
  126. package/dist/src/paramTag/index.js +77 -0
  127. package/dist/src/paramTag/inputbox.d.ts +8 -0
  128. package/dist/src/paramTag/inputbox.js +22 -0
  129. package/dist/src/parameter.d.ts +66 -0
  130. package/dist/src/parameter.js +264 -0
  131. package/dist/src/pre.d.ts +29 -0
  132. package/dist/src/pre.js +59 -0
  133. package/dist/src/redirect.d.ts +28 -0
  134. package/dist/src/redirect.js +119 -0
  135. package/dist/src/syntax.d.ts +17 -0
  136. package/dist/src/syntax.js +86 -0
  137. package/dist/src/table/base.d.ts +27 -0
  138. package/dist/src/table/base.js +81 -0
  139. package/dist/src/table/index.d.ts +240 -0
  140. package/dist/src/table/index.js +498 -0
  141. package/dist/src/table/td.d.ts +82 -0
  142. package/dist/src/table/td.js +358 -0
  143. package/dist/src/table/tr.d.ts +32 -0
  144. package/dist/src/table/tr.js +58 -0
  145. package/dist/src/table/trBase.d.ts +51 -0
  146. package/dist/src/table/trBase.js +156 -0
  147. package/dist/src/tagPair/ext.d.ts +30 -0
  148. package/dist/src/tagPair/ext.js +203 -0
  149. package/dist/src/tagPair/include.d.ts +33 -0
  150. package/dist/src/tagPair/include.js +74 -0
  151. package/dist/src/tagPair/index.d.ts +25 -0
  152. package/dist/src/tagPair/index.js +128 -0
  153. package/dist/src/transclude.d.ts +162 -0
  154. package/dist/src/transclude.js +584 -0
  155. package/dist/util/constants.js +27 -0
  156. package/dist/util/debug.js +81 -0
  157. package/dist/util/diff.js +83 -0
  158. package/dist/util/lint.js +31 -0
  159. package/dist/util/string.js +60 -0
  160. package/errors/README +1 -0
  161. package/package.json +19 -29
  162. package/printed/README +1 -0
  163. package/bundle/bundle.min.js +0 -38
  164. package/extensions/dist/base.js +0 -64
  165. package/extensions/dist/editor.js +0 -159
  166. package/extensions/dist/highlight.js +0 -58
  167. package/extensions/dist/lint.js +0 -72
  168. package/extensions/editor.css +0 -64
  169. package/extensions/ui.css +0 -144
@@ -1,159 +0,0 @@
1
- (() => {
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _Printer_instances, _Printer_id, _Printer_preview, _Printer_textbox, _Printer_root, _Printer_viewportChanged, _Printer_running, _Printer_ticks, _Printer_tick, _Printer_exec, _Printer_paint, _Printer_coarsePrint, _Printer_finePrint;
14
- class Printer {
15
- constructor(preview, textbox, include) {
16
- _Printer_instances.add(this);
17
- _Printer_id.set(this, void 0);
18
- _Printer_preview.set(this, void 0);
19
- _Printer_textbox.set(this, void 0);
20
- _Printer_root.set(this, void 0);
21
- _Printer_viewportChanged.set(this, void 0);
22
- _Printer_running.set(this, void 0);
23
- _Printer_ticks.set(this, void 0);
24
- __classPrivateFieldSet(this, _Printer_id, wikiparse.id++, "f");
25
- __classPrivateFieldSet(this, _Printer_preview, preview, "f");
26
- __classPrivateFieldSet(this, _Printer_textbox, textbox, "f");
27
- __classPrivateFieldSet(this, _Printer_root, [], "f");
28
- __classPrivateFieldSet(this, _Printer_viewportChanged, false, "f");
29
- this.include = Boolean(include);
30
- __classPrivateFieldSet(this, _Printer_ticks, [0, undefined], "f");
31
- }
32
- queue(delay, method) {
33
- const [state] = __classPrivateFieldGet(this, _Printer_ticks, "f");
34
- if (delay === 0 || state <= 0 || method === 0 || __classPrivateFieldGet(this, _Printer_ticks, "f")[1] !== 0) {
35
- __classPrivateFieldSet(this, _Printer_ticks, [delay, method], "f");
36
- if (delay === 0) {
37
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_exec).call(this, method);
38
- }
39
- else if (state <= 0) {
40
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_tick).call(this);
41
- }
42
- }
43
- }
44
- }
45
- _Printer_id = new WeakMap(), _Printer_preview = new WeakMap(), _Printer_textbox = new WeakMap(), _Printer_root = new WeakMap(), _Printer_viewportChanged = new WeakMap(), _Printer_running = new WeakMap(), _Printer_ticks = new WeakMap(), _Printer_instances = new WeakSet(), _Printer_tick = function _Printer_tick() {
46
- setTimeout(() => {
47
- const [t, method] = __classPrivateFieldGet(this, _Printer_ticks, "f");
48
- if (t > 0) {
49
- __classPrivateFieldGet(this, _Printer_ticks, "f")[0] -= 500;
50
- if (t <= 500) {
51
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_exec).call(this, method);
52
- }
53
- else {
54
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_tick).call(this);
55
- }
56
- }
57
- }, 500);
58
- }, _Printer_exec = function _Printer_exec(method) {
59
- if (method === 0) {
60
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_coarsePrint).call(this);
61
- }
62
- else {
63
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_finePrint).call(this);
64
- }
65
- }, _Printer_paint = function _Printer_paint() {
66
- __classPrivateFieldGet(this, _Printer_preview, "f").innerHTML = `<span class="wpb-root">${__classPrivateFieldGet(this, _Printer_root, "f").map(([, , printed]) => printed).join('')}</span> `;
67
- __classPrivateFieldGet(this, _Printer_preview, "f").scrollTop = __classPrivateFieldGet(this, _Printer_textbox, "f").scrollTop;
68
- __classPrivateFieldGet(this, _Printer_preview, "f").classList.remove('active');
69
- __classPrivateFieldGet(this, _Printer_textbox, "f").style.color = 'transparent';
70
- }, _Printer_coarsePrint = async function _Printer_coarsePrint() {
71
- if (__classPrivateFieldGet(this, _Printer_running, "f")) {
72
- return __classPrivateFieldGet(this, _Printer_running, "f");
73
- }
74
- const { include } = this, { value } = __classPrivateFieldGet(this, _Printer_textbox, "f"), parsed = await wikiparse.print(value, include, 2, __classPrivateFieldGet(this, _Printer_id, "f"));
75
- if (this.include !== include || __classPrivateFieldGet(this, _Printer_textbox, "f").value !== value) {
76
- __classPrivateFieldSet(this, _Printer_running, undefined, "f");
77
- __classPrivateFieldSet(this, _Printer_running, __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_coarsePrint).call(this), "f");
78
- return __classPrivateFieldGet(this, _Printer_running, "f");
79
- }
80
- __classPrivateFieldSet(this, _Printer_root, parsed, "f");
81
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_paint).call(this);
82
- __classPrivateFieldSet(this, _Printer_running, undefined, "f");
83
- __classPrivateFieldSet(this, _Printer_running, __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_finePrint).call(this), "f");
84
- return __classPrivateFieldGet(this, _Printer_running, "f");
85
- }, _Printer_finePrint = async function _Printer_finePrint() {
86
- if (__classPrivateFieldGet(this, _Printer_running, "f")) {
87
- __classPrivateFieldSet(this, _Printer_viewportChanged, true, "f");
88
- return __classPrivateFieldGet(this, _Printer_running, "f");
89
- }
90
- __classPrivateFieldSet(this, _Printer_viewportChanged, false, "f");
91
- const { include } = this, { value } = __classPrivateFieldGet(this, _Printer_textbox, "f"), { scrollHeight, offsetHeight: parentHeight, scrollTop, children: [rootNode] } = __classPrivateFieldGet(this, _Printer_preview, "f");
92
- let text = value, start = 0, end = __classPrivateFieldGet(this, _Printer_root, "f").length;
93
- if (scrollHeight > parentHeight) {
94
- const childNodes = [...rootNode.childNodes], headings = childNodes.filter(({ className }) => className === 'wpb-heading'), { length } = headings;
95
- if (length > 0) {
96
- let i = headings.findIndex(({ offsetTop, offsetHeight }) => offsetTop + offsetHeight > scrollTop);
97
- i = i === -1 ? length : i;
98
- let j = headings.slice(i).findIndex(({ offsetTop }) => offsetTop >= scrollTop + parentHeight);
99
- j = j === -1 ? length : i + j;
100
- start = i ? childNodes.indexOf(headings[i - 1]) : 0;
101
- while (i <= j && __classPrivateFieldGet(this, _Printer_root, "f")[start][0] === Infinity) {
102
- start = childNodes.indexOf(headings[i++]);
103
- }
104
- end = j === length ? end : childNodes.indexOf(headings[j]);
105
- while (i <= j && __classPrivateFieldGet(this, _Printer_root, "f")[end - 1][0] === Infinity) {
106
- end = childNodes.indexOf(headings[--j]);
107
- }
108
- text = __classPrivateFieldGet(this, _Printer_root, "f").slice(start, end).map(([, str]) => str).join('');
109
- }
110
- }
111
- if (start === end) {
112
- __classPrivateFieldSet(this, _Printer_running, undefined, "f");
113
- return undefined;
114
- }
115
- const parsed = await wikiparse.print(text, include, undefined, __classPrivateFieldGet(this, _Printer_id, "f"));
116
- if (this.include === include && __classPrivateFieldGet(this, _Printer_textbox, "f").value === value) {
117
- __classPrivateFieldGet(this, _Printer_root, "f").splice(start, end - start, ...parsed);
118
- __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_paint).call(this);
119
- __classPrivateFieldSet(this, _Printer_running, undefined, "f");
120
- if (__classPrivateFieldGet(this, _Printer_viewportChanged, "f")) {
121
- __classPrivateFieldSet(this, _Printer_running, __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_finePrint).call(this), "f");
122
- }
123
- }
124
- else {
125
- __classPrivateFieldSet(this, _Printer_running, undefined, "f");
126
- __classPrivateFieldSet(this, _Printer_running, __classPrivateFieldGet(this, _Printer_instances, "m", _Printer_coarsePrint).call(this), "f");
127
- }
128
- return __classPrivateFieldGet(this, _Printer_running, "f");
129
- };
130
- const edit = (textbox, include) => {
131
- if (!(textbox instanceof HTMLTextAreaElement)) {
132
- throw new TypeError('wikiparse.edit方法仅可用于textarea元素!');
133
- }
134
- const preview = document.createElement('div'), container = document.createElement('div'), printer = new Printer(preview, textbox, include);
135
- preview.id = 'wikiPretty';
136
- preview.classList.add('wikiparser', 'active');
137
- container.className = 'wikiparse-container';
138
- textbox.replaceWith(container);
139
- textbox.classList.add('wikiparsed');
140
- container.append(preview, textbox);
141
- textbox.addEventListener('input', e => {
142
- if (!e.isComposing) {
143
- printer.queue(2000, 0);
144
- }
145
- textbox.style.color = '';
146
- preview.classList.add('active');
147
- });
148
- textbox.addEventListener('scroll', () => {
149
- if (preview.scrollHeight > preview.offsetHeight && !preview.classList.contains('active')) {
150
- preview.scrollTop = textbox.scrollTop;
151
- printer.queue(500, 1);
152
- }
153
- });
154
- printer.queue(0, 0);
155
- return printer;
156
- };
157
- wikiparse.Printer = Printer;
158
- wikiparse.edit = edit;
159
- })();
@@ -1,58 +0,0 @@
1
- (() => {
2
- "use strict";
3
- const append = (parent, text) => {
4
- if (text) {
5
- parent.append(text);
6
- }
7
- };
8
- const splitNewLine = (html) => {
9
- let cur = html.cloneNode();
10
- const result = [cur];
11
- for (const child of html.childNodes) {
12
- const { textContent } = child;
13
- if (!(textContent === null || textContent === void 0 ? void 0 : textContent.includes('\n'))) {
14
- cur.append(child.cloneNode(true));
15
- continue;
16
- }
17
- const lines = child.nodeType === Node.TEXT_NODE
18
- ? textContent.split('\n')
19
- : splitNewLine(child);
20
- append(cur, lines[0]);
21
- for (const text of lines.slice(1)) {
22
- cur = html.cloneNode();
23
- result.push(cur);
24
- append(cur, text);
25
- }
26
- }
27
- return result;
28
- };
29
- const highlight = async (ele, include, linenums = false, start = 1) => {
30
- if (ele.classList.contains('wikiparser')) {
31
- return;
32
- }
33
- const html = (await wikiparse.print(ele.innerText, include)).map(([, , printed]) => printed).join('');
34
- ele.classList.add('wikiparser');
35
- if (linenums) {
36
- const root = document.createElement('span');
37
- root.innerHTML = html;
38
- const lines = splitNewLine(root.firstElementChild || root).map((line, i) => {
39
- const li = document.createElement('li');
40
- li.id = `L${i + start}`;
41
- li.append(line);
42
- return li;
43
- }), { length } = lines;
44
- if (length > 1 && !lines[length - 1].textContent) {
45
- lines.pop();
46
- }
47
- const ol = document.createElement('ol');
48
- ol.style.counterReset = `wikiparser ${start - 1}`;
49
- ol.style.paddingLeft = `${String(lines.length + start - 1).length + 1.5}ch`;
50
- ol.replaceChildren(...lines);
51
- ele.replaceChildren(ol);
52
- }
53
- else {
54
- ele.innerHTML = html;
55
- }
56
- };
57
- wikiparse.highlight = highlight;
58
- })();
@@ -1,72 +0,0 @@
1
- (() => {
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _Linter_instances, _Linter_id, _Linter_wikitext, _Linter_running, _Linter_lint;
14
- class Linter {
15
- constructor(include) {
16
- _Linter_instances.add(this);
17
- _Linter_id.set(this, void 0);
18
- _Linter_wikitext.set(this, void 0);
19
- _Linter_running.set(this, void 0);
20
- __classPrivateFieldSet(this, _Linter_id, wikiparse.id++, "f");
21
- this.include = Boolean(include);
22
- }
23
- queue(wikitext) {
24
- var _a;
25
- __classPrivateFieldSet(this, _Linter_wikitext, wikitext, "f");
26
- __classPrivateFieldSet(this, _Linter_running, (_a = __classPrivateFieldGet(this, _Linter_running, "f")) !== null && _a !== void 0 ? _a : __classPrivateFieldGet(this, _Linter_instances, "m", _Linter_lint).call(this, wikitext), "f");
27
- return __classPrivateFieldGet(this, _Linter_running, "f");
28
- }
29
- async codemirror(wikitext) {
30
- return (await this.queue(wikitext))
31
- .map(({ startIndex, endIndex, severity, message, rule, fix, suggestions = [] }) => ({
32
- source: 'WikiLint',
33
- from: startIndex,
34
- to: endIndex,
35
- severity,
36
- rule,
37
- message: `${message} (${rule})`,
38
- actions: [
39
- ...fix ? [{ name: 'fix', fix }] : [],
40
- ...suggestions.map(suggestion => ({ name: 'suggestion', fix: suggestion })),
41
- ].map(({ name, fix: { range: [from, to], text } }) => ({
42
- name,
43
- apply(view) {
44
- view.dispatch({ changes: { from, to, insert: text } });
45
- },
46
- })),
47
- }));
48
- }
49
- async monaco(wikitext) {
50
- return (await this.queue(wikitext)).map(({ startLine, startCol, endLine, endCol, severity, message, rule }) => ({
51
- source: `WikiLint(${rule})`,
52
- startLineNumber: startLine + 1,
53
- startColumn: startCol + 1,
54
- endLineNumber: endLine + 1,
55
- endColumn: endCol + 1,
56
- severity: severity === 'error' ? 8 : 4,
57
- rule,
58
- message,
59
- }));
60
- }
61
- }
62
- _Linter_id = new WeakMap(), _Linter_wikitext = new WeakMap(), _Linter_running = new WeakMap(), _Linter_instances = new WeakSet(), _Linter_lint = async function _Linter_lint(wikitext) {
63
- const { include } = this, errors = await wikiparse.lint(wikitext, include, __classPrivateFieldGet(this, _Linter_id, "f"));
64
- if (this.include === include && __classPrivateFieldGet(this, _Linter_wikitext, "f") === wikitext) {
65
- __classPrivateFieldSet(this, _Linter_running, undefined, "f");
66
- return errors;
67
- }
68
- __classPrivateFieldSet(this, _Linter_running, __classPrivateFieldGet(this, _Linter_instances, "m", _Linter_lint).call(this, __classPrivateFieldGet(this, _Linter_wikitext, "f")), "f");
69
- return __classPrivateFieldGet(this, _Linter_running, "f");
70
- };
71
- wikiparse.Linter = Linter;
72
- })();
@@ -1,64 +0,0 @@
1
- .wikiparse-container {
2
- position: relative;
3
- -webkit-text-size-adjust: none;
4
- }
5
- .wikiparsed {
6
- position: relative;
7
- display: block;
8
- box-sizing: border-box;
9
- width: 100%;
10
- resize: vertical;
11
- font-family: monospace;
12
- background: none !important;
13
- caret-color: #000;
14
- }
15
- #wikiPretty {
16
- position: absolute;
17
- inset: 0;
18
- background-color: #fff;
19
- -webkit-user-select: none;
20
- user-select: none;
21
- }
22
- #wikiPretty + .wikiparsed, #wikiPretty {
23
- outline: none;
24
- border: 1.5px solid #dedede !important;
25
- border-radius: 0;
26
- padding: .4em;
27
- line-height: 1.4 !important;
28
- font-size: inherit;
29
- tab-size: 4;
30
- overflow-y: auto;
31
- word-break: normal;
32
- }
33
-
34
- /* compromise for font-weight: bold */
35
- .wpb-ext, .wpb-html,
36
- .wpb-arg,
37
- .wpb-template,
38
- .wpb-magic-word,
39
- .wpb-heading-title,
40
- .wpb-table, .wpb-tr, .wpb-td,
41
- .wpb-double-underscore, .wpb-hr, .wpb-quote, .wpb-list, .wpb-dd, .wpb-redirect-syntax,
42
- .wpb-converter {
43
- -webkit-text-stroke-width: .1ex;
44
- }
45
- .wpb-table-inter,
46
- .wpb-hidden, .wpb-noinclude, .wpb-include, .wpb-comment, .wpb-attr-dirty,
47
- .wpb-ext-attrs, .wpb-html-attrs,
48
- .wpb-ext-inner,
49
- .wpb-arg-default,
50
- .wpb-invoke-module, .wpb-invoke-function,
51
- .wpb-parameter,
52
- .wpb-table-attrs,
53
- .wpb-td-inner,
54
- .wpb-converter-rule {
55
- -webkit-text-stroke-width: 0;
56
- }
57
- #wikiPretty span {
58
- font-weight: normal;
59
- }
60
-
61
- #wikiPretty.active span {
62
- color: transparent;
63
- background: none;
64
- }
package/extensions/ui.css DELETED
@@ -1,144 +0,0 @@
1
- .wikiparser {
2
- white-space: pre-wrap;
3
- overflow-wrap: break-word;
4
- word-break: break-all;
5
- font-family: monospace;
6
- border: 1.5px solid #dedede;
7
- }
8
- .wikiparser > ol {
9
- background-color: #f5f5f5;
10
- list-style: none;
11
- }
12
- .wikiparser > ol > li {
13
- background-color: #fff;
14
- padding: 0 6px;
15
- border-left: 1px solid #ddd;
16
- counter-increment: wikiparser;
17
- }
18
- .wikiparser > ol > li:first-child {
19
- padding-top: 4px;
20
- }
21
- .wikiparser > ol > li:last-child {
22
- padding-bottom: 4px;
23
- }
24
- .wikiparser > ol > li::before {
25
- content: counter(wikiparser);
26
- position: absolute;
27
- transform: translateX(calc(-100% - 10px));
28
- color: #6c6c6c;
29
- }
30
- .wikiparser > ol > li::after {
31
- content: "";
32
- display: inline-block;
33
- }
34
-
35
- .wpb-table-inter {
36
- color: #d73333;
37
- font-weight: normal;
38
- text-decoration: underline wavy 1px;
39
- }
40
-
41
- .wpb-hidden, .wpb-noinclude, .wpb-include, .wpb-comment, .wpb-attr-dirty {
42
- color: #7b8c8f;
43
- font-weight: normal;
44
- font-style: italic;
45
- }
46
-
47
- .wpb-ext, .wpb-html {
48
- color: #14866d;
49
- font-weight: bold;
50
- }
51
- .wpb-ext-attrs, .wpb-html-attrs {
52
- font-weight: normal;
53
- }
54
- .wpb-ext-attr > .wpb-attr-value, .wpb-html-attr > .wpb-attr-value {
55
- color: #179b1c;
56
- }
57
- .wpb-ext-inner {
58
- color: initial;
59
- font-weight: normal;
60
- background-color: rgba(0, 0, 0, .03);
61
- }
62
-
63
- .wpb-arg {
64
- color: #ac6600;
65
- font-weight: bold;
66
- }
67
- .wpb-arg-default {
68
- color: #ad9300;
69
- font-weight: normal;
70
- }
71
-
72
- .wpb-template {
73
- color: #80c;
74
- font-weight: bold;
75
- background-color: rgba(119, 0, 170, .03);
76
- }
77
- .wpb-magic-word {
78
- color: #a11;
79
- font-weight: bold;
80
- background-color: rgba(170, 17, 17, .03);
81
- }
82
- .wpb-invoke-module, .wpb-invoke-function {
83
- color: #bf3e13;
84
- font-weight: normal;
85
- }
86
- .wpb-parameter {
87
- font-weight: normal;
88
- }
89
- .wpb-template > .wpb-parameter,
90
- .wpb-invoke-function ~ .wpb-parameter {
91
- color: #b0c;
92
- }
93
- .wpb-parameter-value {
94
- color: initial;
95
- }
96
-
97
- .wpb-heading, .wpb-image-parameter {
98
- color: #0076dd;
99
- }
100
- .wpb-heading-title {
101
- color: initial;
102
- font-weight: bold;
103
- }
104
-
105
- .wpb-table, .wpb-tr, .wpb-td {
106
- color: #d08;
107
- font-weight: bold;
108
- }
109
- .wpb-table-attrs {
110
- font-weight: normal;
111
- }
112
- .wpb-table-attr > .wpb-attr-value {
113
- color: #f500d4;
114
- }
115
- .wpb-td-inner {
116
- color: initial;
117
- font-weight: normal;
118
- }
119
-
120
- .wpb-double-underscore, .wpb-hr, .wpb-quote, .wpb-list, .wpb-dd, .wpb-redirect-syntax {
121
- color: #0076dd;
122
- font-weight: bold;
123
- background-color: #eee;
124
- }
125
-
126
- .wpb-link, .wpb-category, .wpb-file, .wpb-gallery-image, .wpb-imagemap-image, .wpb-redirect-target,
127
- .wpb-ext-link, .wpb-free-ext-link, .wpb-magic-link {
128
- color: #000aaa;
129
- background-color: rgba(34, 17, 153, .03);
130
- }
131
- .wpb-link-text, .wpb-image-caption, .wpb-ext-link-text {
132
- color: initial;
133
- }
134
-
135
- .wpb-converter {
136
- color: #b68;
137
- font-weight: bold;
138
- }
139
- .wpb-converter-rule {
140
- font-weight: normal;
141
- }
142
- .wpb-converter-rule-from, .wpb-converter-rule-to, .wpb-converter-noconvert {
143
- color: initial;
144
- }