securemark 0.253.1 → 0.254.1
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.
- package/.eslintrc.json +7 -1
- package/CHANGELOG.md +12 -0
- package/README.md +1 -1
- package/design.md +6 -0
- package/dist/index.js +32 -27
- package/markdown.d.ts +3 -2
- package/package.json +3 -3
- package/src/parser/api/parse.test.ts +2 -2
- package/src/parser/block/blockquote.test.ts +1 -1
- package/src/parser/block/extension/aside.test.ts +1 -1
- package/src/parser/block/extension/example.test.ts +2 -2
- package/src/parser/block/extension/fig.test.ts +23 -23
- package/src/parser/block/extension/figure.test.ts +36 -36
- package/src/parser/block/extension/figure.ts +4 -4
- package/src/parser/block/extension/table.ts +5 -4
- package/src/parser/inline/emphasis.test.ts +1 -1
- package/src/parser/inline/html.test.ts +65 -62
- package/src/parser/inline/html.ts +162 -21
- package/src/parser/inline/strong.test.ts +1 -1
- package/src/parser/inline.test.ts +4 -5
- package/src/parser/processor/figure.test.ts +33 -33
- package/src/parser/processor/footnote.test.ts +2 -2
- package/src/parser/processor/footnote.ts +10 -10
|
@@ -23,52 +23,52 @@ describe('Unit: parser/block/extension/figure', () => {
|
|
|
23
23
|
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]a\nhttps://host\n~~~')), [['<pre class="invalid" translate="no">~~~figure [$group-name]a\nhttps://host\n~~~</pre>'], '']);
|
|
24
24
|
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]a\n!https://host\n~~~')), [['<pre class="invalid" translate="no">~~~figure [$group-name]a\n!https://host\n~~~</pre>'], '']);
|
|
25
25
|
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name] a\nhttps://host\n~~~')), [['<pre class="invalid" translate="no">~~~figure [$group-name] a\nhttps://host\n~~~</pre>'], '']);
|
|
26
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name] a\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
26
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name] a\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
27
27
|
assert.deepStrictEqual(inspect(parser('~~~figure a[$group-name]\n!https://host\n~~~')), [['<pre class="invalid" translate="no">~~~figure a[$group-name]\n!https://host\n~~~</pre>'], '']);
|
|
28
28
|
assert.deepStrictEqual(inspect(parser('~~~figure a [$group-name]\n!https://host\n~~~')), [['<pre class="invalid" translate="no">~~~figure a [$group-name]\n!https://host\n~~~</pre>'], '']);
|
|
29
29
|
assert.deepStrictEqual(inspect(parser('~~~ [$group-name]\n!https://host\n~~~')), undefined);
|
|
30
30
|
assert.deepStrictEqual(inspect(parser('~~~ $group-name\n!https://host\n~~~')), undefined);
|
|
31
31
|
assert.deepStrictEqual(inspect(parser(' ~~~figure [$group-name]\n!https://host\n~~~')), undefined);
|
|
32
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
33
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$fig-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="fig-name" data-group="fig" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
34
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$figure-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="figure-name" data-group="figure" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
35
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$table-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="table-name" data-group="table" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
32
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
33
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$fig-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="fig-name" data-group="fig" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
34
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$figure-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="figure-name" data-group="figure" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
35
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$table-name]\n> \n\n~~~')), [['<figure data-type="quote" data-label="table-name" data-group="table" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
36
36
|
assert.deepStrictEqual(inspect(parser(`~~~figure [$group-name]\n0${'\n'.repeat(301)}~~~`), '>'), [['<pre class="invalid" translate="no">'], '']);
|
|
37
37
|
assert.deepStrictEqual(inspect(parser(`~~~figure [$group-name]\n~~~\n0${'\n'.repeat(301)}~~~\n~~~`), '>'), [['<pre class="invalid" translate="no">'], `${'\n'.repeat(300)}~~~\n~~~`]);
|
|
38
38
|
});
|
|
39
39
|
|
|
40
40
|
it('valid', () => {
|
|
41
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
42
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n~~~\n')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
43
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
44
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
45
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n\\\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>\\</figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
46
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n!https://caption\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>!<a href="https://caption" target="_blank">https://caption</a></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
47
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n- a\n~~~')), [['<figure data-type="list" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><ul><li>a</li></ul></div></figure>'], '']);
|
|
48
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n1. a\n~~~')), [['<figure data-type="list" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><ol><li>a</li></ol></div></figure>'], '']);
|
|
49
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n|\n|-\n|\n~~~')), [['<figure data-type="table" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><table><thead><tr></tr></thead><tbody><tr></tr></tbody></table></div></figure>'], '']);
|
|
50
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n\n```\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><pre class="text"></pre></div></figure>'], '']);
|
|
51
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n~~~\n```\n\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><pre class="text">~~~</pre></div></figure>'], '']);
|
|
52
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n```\n\ncaption\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><pre class="text"></pre></div></figure>'], '']);
|
|
53
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
54
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n~~~\n$$\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><div class="math" translate="no">$$\n~~~\n$$</div></div></figure>'], '']);
|
|
55
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n\n$$\n\ncaption\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
56
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~\n~~~\n\ncaption\n~~~')), [['<figure data-type="example" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><aside class="example" data-type="markdown"><pre translate="no"></pre><hr><section><ol class="references"></ol></section></aside></div></figure>'], '']);
|
|
57
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~example/markdown\n~~~\n\ncaption\n~~~')), [['<figure data-type="example" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><aside class="example" data-type="markdown"><pre translate="no"></pre><hr><section><ol class="references"></ol></section></aside></div></figure>'], '']);
|
|
58
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~table\n~~~\n\ncaption\n~~~')), [['<figure data-type="table" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><table></table></div></figure>'], '']);
|
|
59
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n> \n~~~\n\n~~~')), [['<figure data-type="quote" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><blockquote><pre><br>~~~</pre></blockquote></div></figure>'], '']);
|
|
60
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n> \n~~~\n\ncaption\n~~~')), [['<figure data-type="quote" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span>caption</figcaption><div><blockquote><pre><br>~~~</pre></blockquote></div></figure>'], '']);
|
|
61
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n![]{https://host}\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
62
|
-
assert.deepStrictEqual(inspect(parser('~~~~figure [$group-name]\n!https://host\n~~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
63
|
-
assert.deepStrictEqual(inspect(parser('~~~figure $group-name\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
64
|
-
assert.deepStrictEqual(inspect(parser('~~~[$group-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
65
|
-
assert.deepStrictEqual(inspect(parser('~~~$group-name\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
66
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-0]\n> \n\n~~~')), [['<figure data-type="quote" data-label="group-0" data-group="group" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
67
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$group-0.0]\n> \n\n~~~')), [['<figure data-type="quote" data-label="group-0.0" data-group="group" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
68
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$-0]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="$-0" data-group="$" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
69
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$-0.0]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="$-0.0" data-group="$" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
70
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
71
|
-
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n$$\n\n$$\n\ncaption\n~~~')), [['<figure data-type="math" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span>caption</figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
41
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
42
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n~~~\n')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
43
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
44
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
45
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n\\\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">\\</span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
46
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n!https://host\n\n!https://caption\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">!<a href="https://caption" target="_blank">https://caption</a></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
47
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n- a\n~~~')), [['<figure data-type="list" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><ul><li>a</li></ul></div></figure>'], '']);
|
|
48
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n1. a\n~~~')), [['<figure data-type="list" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><ol><li>a</li></ol></div></figure>'], '']);
|
|
49
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n|\n|-\n|\n~~~')), [['<figure data-type="table" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><table><thead><tr></tr></thead><tbody><tr></tr></tbody></table></div></figure>'], '']);
|
|
50
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n\n```\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><pre class="text"></pre></div></figure>'], '']);
|
|
51
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n~~~\n```\n\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><pre class="text">~~~</pre></div></figure>'], '']);
|
|
52
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n```\n```\n\ncaption\n~~~')), [['<figure data-type="text" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><pre class="text"></pre></div></figure>'], '']);
|
|
53
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
54
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n~~~\n$$\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><div class="math" translate="no">$$\n~~~\n$$</div></div></figure>'], '']);
|
|
55
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n$$\n\n$$\n\ncaption\n~~~')), [['<figure data-type="math" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
56
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~\n~~~\n\ncaption\n~~~')), [['<figure data-type="example" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><aside class="example" data-type="markdown"><pre translate="no"></pre><hr><section><ol class="references"></ol></section></aside></div></figure>'], '']);
|
|
57
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~example/markdown\n~~~\n\ncaption\n~~~')), [['<figure data-type="example" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><aside class="example" data-type="markdown"><pre translate="no"></pre><hr><section><ol class="references"></ol></section></aside></div></figure>'], '']);
|
|
58
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n~~~table\n~~~\n\ncaption\n~~~')), [['<figure data-type="table" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><table></table></div></figure>'], '']);
|
|
59
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n> \n~~~\n\n~~~')), [['<figure data-type="quote" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote><pre><br>~~~</pre></blockquote></div></figure>'], '']);
|
|
60
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n> \n~~~\n\ncaption\n~~~')), [['<figure data-type="quote" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><blockquote><pre><br>~~~</pre></blockquote></div></figure>'], '']);
|
|
61
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-name]\n![]{https://host}\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
62
|
+
assert.deepStrictEqual(inspect(parser('~~~~figure [$group-name]\n!https://host\n~~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
63
|
+
assert.deepStrictEqual(inspect(parser('~~~figure $group-name\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
64
|
+
assert.deepStrictEqual(inspect(parser('~~~[$group-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
65
|
+
assert.deepStrictEqual(inspect(parser('~~~$group-name\n!https://host\n~~~')), [['<figure data-type="media" data-label="group-name" data-group="group"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
66
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-0]\n> \n\n~~~')), [['<figure data-type="quote" data-label="group-0" data-group="group" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
67
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$group-0.0]\n> \n\n~~~')), [['<figure data-type="quote" data-label="group-0.0" data-group="group" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><blockquote></blockquote></div></figure>'], '']);
|
|
68
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$-0]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="$-0" data-group="$" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
69
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$-0.0]\n$$\n\n$$\n~~~')), [['<figure data-type="math" data-label="$-0.0" data-group="$" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
70
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n!https://host\n~~~')), [['<figure data-type="media" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span><span class="figtext"></span></figcaption><div><a href="https://host" target="_blank"><img class="media" data-src="https://host" alt=""></a></div></figure>'], '']);
|
|
71
|
+
assert.deepStrictEqual(inspect(parser('~~~figure [$-name]\n$$\n\n$$\n\ncaption\n~~~')), [['<figure data-type="math" data-label="$-name" data-group="$" class="invalid"><figcaption><span class="figindex"></span><span class="figtext">caption</span></figcaption><div><div class="math" translate="no">$$\n\n$$</div></div></figure>'], '']);
|
|
72
72
|
assert.deepStrictEqual(inspect(parser(`~~~figure [$group-name]\n${'>\n'.repeat(500)}\n~~~`), '>'), [['<figure data-type="quote" data-label="group-name" data-group="group">'], '']);
|
|
73
73
|
assert.deepStrictEqual(inspect(parser(`~~~figure [$group-name]\n~~~\n0${'\n'.repeat(300)}~~~\n~~~`), '>'), [['<figure data-type="example" data-label="group-name" data-group="group">'], '']);
|
|
74
74
|
});
|
|
@@ -17,7 +17,6 @@ import { localize } from '../../locale';
|
|
|
17
17
|
import { visualize, trimBlank } from '../../util';
|
|
18
18
|
import { html, defrag } from 'typed-dom/dom';
|
|
19
19
|
import { memoize } from 'spica/memoize';
|
|
20
|
-
import { unshift } from 'spica/array';
|
|
21
20
|
|
|
22
21
|
import FigureParser = ExtensionParser.FigureParser;
|
|
23
22
|
|
|
@@ -75,9 +74,10 @@ export const figure: FigureParser = block(fallback(rewrite(segment, fmap(
|
|
|
75
74
|
html('figure',
|
|
76
75
|
attributes(label.getAttribute('data-label')!, param, content, caption),
|
|
77
76
|
[
|
|
78
|
-
html('figcaption',
|
|
79
|
-
|
|
80
|
-
defrag(caption))
|
|
77
|
+
html('figcaption', [
|
|
78
|
+
html('span', { class: 'figindex' }),
|
|
79
|
+
html('span', { class: 'figtext' }, defrag(caption)),
|
|
80
|
+
]),
|
|
81
81
|
html('div', [content]),
|
|
82
82
|
])
|
|
83
83
|
])),
|
|
@@ -220,7 +220,8 @@ function format(rows: Tree<RowParser>[]): HTMLTableSectionElement[] {
|
|
|
220
220
|
let hasDataCell = false;
|
|
221
221
|
let lHeadCellIdx: bigint;
|
|
222
222
|
let rHeadCellIdx: bigint;
|
|
223
|
-
for (let j = 0
|
|
223
|
+
for (let j = 0; j < cells.length; ++j) {
|
|
224
|
+
const jn = BigInt(j);
|
|
224
225
|
const isVirtual = !!ranges[i]?.[j];
|
|
225
226
|
const cell = isVirtual
|
|
226
227
|
? splice(cells, j, 0, undefined) && ranges[i][j]
|
|
@@ -248,8 +249,8 @@ function format(rows: Tree<RowParser>[]): HTMLTableSectionElement[] {
|
|
|
248
249
|
assert(colSpan > 0);
|
|
249
250
|
if (colSpan > 1) {
|
|
250
251
|
splice(cells, j + 1, 0, ...Array(colSpan - 1));
|
|
251
|
-
heads |=
|
|
252
|
-
highlights |=
|
|
252
|
+
heads |= heads & 1n << jn && ~(~0n << BigInt(colSpan)) << jn;
|
|
253
|
+
highlights |= highlights & 1n << jn && ~(~0n << BigInt(colSpan)) << jn;
|
|
253
254
|
j += colSpan - 1;
|
|
254
255
|
}
|
|
255
256
|
if (target === thead) {
|
|
@@ -311,7 +312,7 @@ function format(rows: Tree<RowParser>[]): HTMLTableSectionElement[] {
|
|
|
311
312
|
'v c',
|
|
312
313
|
'v h',
|
|
313
314
|
'v h c',
|
|
314
|
-
][+!!(highlights & m)
|
|
315
|
+
][+!!(highlights & m) | +!!(lHighlight | rHighlight) << 1 | +!!(tHighlights & m) << 2]));
|
|
315
316
|
}
|
|
316
317
|
continue;
|
|
317
318
|
case tfoot:
|
|
@@ -46,7 +46,7 @@ describe('Unit: parser/inline/emphasis', () => {
|
|
|
46
46
|
assert.deepStrictEqual(inspect(parser('*a**b**c*')), [['<em>a<strong>b</strong>c</em>'], '']);
|
|
47
47
|
assert.deepStrictEqual(inspect(parser('*a**b**c*d')), [['<em>a<strong>b</strong>c</em>'], 'd']);
|
|
48
48
|
assert.deepStrictEqual(inspect(parser('*`a`*')), [['<em><code data-src="`a`">a</code></em>'], '']);
|
|
49
|
-
assert.deepStrictEqual(inspect(parser('*<
|
|
49
|
+
assert.deepStrictEqual(inspect(parser('*<bdi>*')), [['<em><bdi></em>'], '']);
|
|
50
50
|
assert.deepStrictEqual(inspect(parser('*(*a*)*')), [['<em><span class="paren">(<em>a</em>)</span></em>'], '']);
|
|
51
51
|
assert.deepStrictEqual(inspect(parser('*(**a**)*')), [['<em><span class="paren">(<strong>a</strong>)</span></em>'], '']);
|
|
52
52
|
});
|
|
@@ -11,12 +11,11 @@ describe('Unit: parser/inline/html', () => {
|
|
|
11
11
|
assert.deepStrictEqual(inspect(parser('<script>alert()<script>')), undefined);
|
|
12
12
|
assert.deepStrictEqual(inspect(parser('<script>alert()</script>')), [['<span class="invalid"><script>alert<span class="paren">()</span></script></span>'], '']);
|
|
13
13
|
assert.deepStrictEqual(inspect(parser('<script src="\\""></script>')), undefined);
|
|
14
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
15
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
16
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
17
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
14
|
+
assert.deepStrictEqual(inspect(parser('<bdi onclick="alert()">')), undefined);
|
|
15
|
+
assert.deepStrictEqual(inspect(parser('<bdi onclick="alert()"></bdi>')), undefined);
|
|
16
|
+
assert.deepStrictEqual(inspect(parser('<bdi onclick="alert()">a</bdi>')), [['<span class="invalid"><bdi onclick="alert()">a</bdi></span>'], '']);
|
|
17
|
+
assert.deepStrictEqual(inspect(parser('<bdi><bdi onclick="alert()">a</bdi></bdi>')), [['<bdi><span class="invalid"><bdi onclick="alert()">a</bdi></span></bdi>'], '']);
|
|
18
18
|
assert.deepStrictEqual(inspect(parser('<bdo dir="rtl\\"><">a</bdo>')), [['<span class="invalid"><bdo dir="rtl\\"><">a</bdo></span>'], '']);
|
|
19
|
-
assert.deepStrictEqual(inspect(parser('<wbr onclick="alert()">')), [['<wbr class="invalid">'], '']);
|
|
20
19
|
});
|
|
21
20
|
|
|
22
21
|
it('invalid', () => {
|
|
@@ -26,78 +25,80 @@ describe('Unit: parser/inline/html', () => {
|
|
|
26
25
|
assert.deepStrictEqual(inspect(parser('<a,b>')), undefined);
|
|
27
26
|
assert.deepStrictEqual(inspect(parser('<a, b>')), undefined);
|
|
28
27
|
assert.deepStrictEqual(inspect(parser('<T>')), undefined);
|
|
29
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
30
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
31
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
32
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
33
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
34
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
35
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
36
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
37
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
38
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
39
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
40
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
41
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
42
|
-
assert.deepStrictEqual(inspect(parser('</
|
|
43
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
28
|
+
assert.deepStrictEqual(inspect(parser('<bdi>z')), undefined);
|
|
29
|
+
assert.deepStrictEqual(inspect(parser('<bdi></bdi>')), undefined);
|
|
30
|
+
assert.deepStrictEqual(inspect(parser('<bdi> </bdi>')), undefined);
|
|
31
|
+
assert.deepStrictEqual(inspect(parser('<bdi>\\ </bdi>')), undefined);
|
|
32
|
+
assert.deepStrictEqual(inspect(parser('<bdi>	</bdi>')), undefined);
|
|
33
|
+
assert.deepStrictEqual(inspect(parser('<bdi><wbr></bdi>')), undefined);
|
|
34
|
+
assert.deepStrictEqual(inspect(parser('<bdi>\n</bdi>')), undefined);
|
|
35
|
+
assert.deepStrictEqual(inspect(parser('<bdi>\na</bdi>')), undefined);
|
|
36
|
+
assert.deepStrictEqual(inspect(parser('<bdi>\\\na</bdi>')), undefined);
|
|
37
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a')), undefined);
|
|
38
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a</BDO>')), undefined);
|
|
39
|
+
assert.deepStrictEqual(inspect(parser('<BDI>a</BDI>')), undefined);
|
|
40
|
+
assert.deepStrictEqual(inspect(parser('<BDI>a</bdo>')), undefined);
|
|
41
|
+
assert.deepStrictEqual(inspect(parser('</bdi>')), undefined);
|
|
42
|
+
assert.deepStrictEqual(inspect(parser('<bdi/>')), undefined);
|
|
44
43
|
assert.deepStrictEqual(inspect(parser('<b><b><b>a</b></b></b>')), [['<span class="invalid"><b><span class="invalid"><b><span class="invalid"><b>a</b></span></b></span></b></span>'], '']);
|
|
45
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
44
|
+
assert.deepStrictEqual(inspect(parser('<bdi><bdi><bdi>a</bdi></bdi></bdi>')), [['<bdi><bdi><bdi>a</bdi></bdi></bdi>'], '']);
|
|
46
45
|
assert.deepStrictEqual(inspect(parser('<x a="*b*"')), undefined);
|
|
47
46
|
assert.deepStrictEqual(inspect(parser('<x a="*b*">')), undefined);
|
|
48
47
|
assert.deepStrictEqual(inspect(parser('<x a="*b*">c')), undefined);
|
|
49
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
50
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
51
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
52
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
53
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
54
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
55
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
56
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
57
|
-
assert.deepStrictEqual(inspect(parser(' <
|
|
48
|
+
assert.deepStrictEqual(inspect(parser('<bdi a="*b*"')), undefined);
|
|
49
|
+
assert.deepStrictEqual(inspect(parser('<bdi a="*b*">')), undefined);
|
|
50
|
+
assert.deepStrictEqual(inspect(parser('<bdi a="*b*">c')), undefined);
|
|
51
|
+
assert.deepStrictEqual(inspect(parser('<bdi a b="*" *c*')), undefined);
|
|
52
|
+
assert.deepStrictEqual(inspect(parser('<bdi a b="*" *c*>')), undefined);
|
|
53
|
+
assert.deepStrictEqual(inspect(parser('<bdi a b="*" *c*>d</bdi>')), undefined);
|
|
54
|
+
assert.deepStrictEqual(inspect(parser('<bdi a b="*" *>*c*')), undefined);
|
|
55
|
+
assert.deepStrictEqual(inspect(parser('<bdi a b="*" *>*c*</bdi>')), undefined);
|
|
56
|
+
assert.deepStrictEqual(inspect(parser(' <bdi>a</bdi>')), undefined);
|
|
58
57
|
});
|
|
59
58
|
|
|
60
59
|
it('basic', () => {
|
|
61
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
62
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
63
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
64
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
65
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
66
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
67
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
68
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
69
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
70
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
71
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
72
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
73
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
60
|
+
assert.deepStrictEqual(inspect(parser('<bdi> a</bdi>')), [['<bdi> a</bdi>'], '']);
|
|
61
|
+
assert.deepStrictEqual(inspect(parser('<bdi> a </bdi>')), [['<bdi> a </bdi>'], '']);
|
|
62
|
+
assert.deepStrictEqual(inspect(parser('<bdi> a </bdi>')), [['<bdi> a </bdi>'], '']);
|
|
63
|
+
assert.deepStrictEqual(inspect(parser('<bdi>\\ a</bdi>')), [['<bdi> a</bdi>'], '']);
|
|
64
|
+
assert.deepStrictEqual(inspect(parser('<bdi><wbr>a</bdi>')), [['<bdi><wbr>a</bdi>'], '']);
|
|
65
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a</bdi>')), [['<bdi>a</bdi>'], '']);
|
|
66
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a</bdi>a')), [['<bdi>a</bdi>'], 'a']);
|
|
67
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a </bdi>')), [['<bdi>a </bdi>'], '']);
|
|
68
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a \n </bdi>')), [['<bdi>a </bdi>'], '']);
|
|
69
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a\n</bdi>')), [['<bdi>a</bdi>'], '']);
|
|
70
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a\n </bdi>')), [['<bdi>a </bdi>'], '']);
|
|
71
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a\n<wbr></bdi>')), [['<bdi>a<wbr></bdi>'], '']);
|
|
72
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a\nb</bdi>')), [['<bdi>a<br>b</bdi>'], '']);
|
|
74
73
|
assert.deepStrictEqual(inspect(parser('<wbr>a')), [['<wbr>'], 'a']);
|
|
75
74
|
});
|
|
76
75
|
|
|
77
76
|
it('nest', () => {
|
|
78
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
79
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
80
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
77
|
+
assert.deepStrictEqual(inspect(parser('<bdi><bdi>a</bdi></bdi>')), [['<bdi><bdi>a</bdi></bdi>'], '']);
|
|
78
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a<bdi>b</bdi>c</bdi>')), [['<bdi>a<bdi>b</bdi>c</bdi>'], '']);
|
|
79
|
+
assert.deepStrictEqual(inspect(parser('<bdi>`a`</bdi>')), [['<bdi><code data-src="`a`">a</code></bdi>'], '']);
|
|
81
80
|
});
|
|
82
81
|
|
|
83
82
|
it('escape', () => {
|
|
84
83
|
assert.deepStrictEqual(inspect(parser('<a>')), undefined);
|
|
85
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
86
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
87
|
-
assert.deepStrictEqual(inspect(parser('<img>')),
|
|
88
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
89
|
-
assert.deepStrictEqual(inspect(parser('<img />')),
|
|
90
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
84
|
+
assert.deepStrictEqual(inspect(parser('<bdi><a>a</a></bdi>')), [['<bdi><span class="invalid"><a>a</a></span></bdi>'], '']);
|
|
85
|
+
assert.deepStrictEqual(inspect(parser('<bdi>a<a>b</a>c</bdi>')), [['<bdi>a<span class="invalid"><a>b</a></span>c</bdi>'], '']);
|
|
86
|
+
assert.deepStrictEqual(inspect(parser('<img>')), [['<img'], '>']);
|
|
87
|
+
assert.deepStrictEqual(inspect(parser('<bdi><img></bdi>')), [['<bdi><img></bdi>'], '']);
|
|
88
|
+
assert.deepStrictEqual(inspect(parser('<img />')), [['<img'], ' />']);
|
|
89
|
+
assert.deepStrictEqual(inspect(parser('<bdi><img /></bdi>')), [['<bdi><img /></bdi>'], '']);
|
|
91
90
|
});
|
|
92
91
|
|
|
93
92
|
it('attribute', () => {
|
|
94
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
95
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
96
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
97
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
98
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
99
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
100
|
-
assert.deepStrictEqual(inspect(parser('<
|
|
93
|
+
assert.deepStrictEqual(inspect(parser('<bdi\n>a</bdi>')), undefined);
|
|
94
|
+
assert.deepStrictEqual(inspect(parser('<bdi >a</bdi>')), [['<bdi>a</bdi>'], '']);
|
|
95
|
+
assert.deepStrictEqual(inspect(parser('<bdi \n>a</bdi>')), undefined);
|
|
96
|
+
assert.deepStrictEqual(inspect(parser('<bdi >a</bdi>')), [['<bdi>a</bdi>'], '']);
|
|
97
|
+
assert.deepStrictEqual(inspect(parser('<bdi __proto__>a</bdi>')), undefined);
|
|
98
|
+
assert.deepStrictEqual(inspect(parser('<bdi constructor>a</bdi>')), [['<span class="invalid"><bdi constructor>a</bdi></span>'], '']);
|
|
99
|
+
assert.deepStrictEqual(inspect(parser('<bdi toString>a</bdi>')), undefined);
|
|
100
|
+
assert.deepStrictEqual(inspect(parser('<bdi X>a</bdi>')), undefined);
|
|
101
|
+
assert.deepStrictEqual(inspect(parser('<bdi x>a</bdi>')), [['<span class="invalid"><bdi x>a</bdi></span>'], '']);
|
|
101
102
|
assert.deepStrictEqual(inspect(parser('<bdo>a</bdo>')), [['<span class="invalid"><bdo>a</bdo></span>'], '']);
|
|
102
103
|
assert.deepStrictEqual(inspect(parser('<bdo >a</bdo>')), [['<span class="invalid"><bdo >a</bdo></span>'], '']);
|
|
103
104
|
assert.deepStrictEqual(inspect(parser('<bdo __proto__>a</bdo>')), undefined);
|
|
@@ -116,9 +117,11 @@ describe('Unit: parser/inline/html', () => {
|
|
|
116
117
|
assert.deepStrictEqual(inspect(parser('<bdo dir="rtl" >a</bdo>')), [['<bdo dir="rtl">a</bdo>'], '']);
|
|
117
118
|
assert.deepStrictEqual(inspect(parser('<bdo dir="rtl" >a</bdo>')), [['<bdo dir="rtl">a</bdo>'], '']);
|
|
118
119
|
assert.deepStrictEqual(inspect(parser('<bdo dir="rtl">a</bdo>')), [['<bdo dir="rtl">a</bdo>'], '']);
|
|
119
|
-
assert.deepStrictEqual(inspect(parser('<wbr
|
|
120
|
-
assert.deepStrictEqual(inspect(parser('<wbr
|
|
121
|
-
assert.deepStrictEqual(inspect(parser('<wbr
|
|
120
|
+
assert.deepStrictEqual(inspect(parser('<wbr\n>')), undefined);
|
|
121
|
+
assert.deepStrictEqual(inspect(parser('<wbr >')), [['<wbr'], ' >']);
|
|
122
|
+
assert.deepStrictEqual(inspect(parser('<wbr constructor>')), [['<wbr'], ' constructor>']);
|
|
123
|
+
assert.deepStrictEqual(inspect(parser('<wbr X>')), [['<wbr'], ' X>']);
|
|
124
|
+
assert.deepStrictEqual(inspect(parser('<wbr x>')), [['<wbr'], ' x>']);
|
|
122
125
|
});
|
|
123
126
|
|
|
124
127
|
});
|