tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

sethtml-tree-construction.sub.dat (9490B)


      1 #data
      2 test
      3 #document
      4 | "test"
      5 
      6 #data
      7 <b>bla</b>
      8 #document
      9 | <b>
     10 |   "bla"
     11 
     12 #data
     13 <a<embla
     14 #errors
     15 Parse error
     16 #document
     17 
     18 #data
     19 <html><head></head><body>test</body></html>
     20 #document
     21 | "test"
     22 
     23 #data
     24 <div>test
     25 #document
     26 | <div>
     27 |   "test"
     28 
     29 #data
     30 <script>alert('i am a test')</script>
     31 #document
     32 
     33 #data
     34 hello<script>alert('i am a test')</script>
     35 #document
     36 | "hello"
     37 
     38 #data
     39 <div><b>hello<script>alert('i am a test')</script>
     40 #document
     41 | <div>
     42 |   <b>
     43 |     "hello"
     44 
     45 #data
     46 <p onclick='a= 123'>Click.</p>
     47 #document
     48 | <p>
     49 |   "Click."
     50 
     51 #data
     52 <plaintext><p>text</p>
     53 #config
     54 {}
     55 #document
     56 | <plaintext>
     57 |   "<p>text</p>"
     58 
     59 #data
     60 <xmp>TEXT</xmp>
     61 #config
     62 {}
     63 #document
     64 | <xmp>
     65 |   "TEXT"
     66 
     67 #data
     68 test
     69 #config
     70 { "test": 123 }
     71 #document
     72 | "test"
     73 
     74 #data
     75 test
     76 #config
     77 { "removeElements": [] }
     78 #document
     79 | "test"
     80 
     81 #data
     82 <div>test</div><p>bla
     83 #config
     84 { "removeElements": ["div"] }
     85 #document
     86 | <p>
     87 |   "bla"
     88 
     89 #data
     90 <custom-element>test1</custom-element>bla
     91 #document
     92 | "bla"
     93 
     94 #data
     95 <custom-element>test3</custom-element>bla
     96 #config
     97 { "elements": ["custom-element"] }
     98 #document
     99 | <custom-element>
    100 |   "test3"
    101 | "bla"
    102 
    103 #data
    104 <custom-element>test5</custom-element>bla
    105 #config
    106 { "removeElements": ["custom-element"] }
    107 #document
    108 | "bla"
    109 
    110 #data
    111 <script>alert('i am a test')</script>
    112 #config
    113 { "removeElements": ["script"] }
    114 #document
    115 
    116 #data
    117 <div>balabala<i>test</i></div><test-element>t</test-element>
    118 #config
    119 { "removeElements": ["test-element", "i"] }
    120 #document
    121 | <div>
    122 |   "balabala"
    123 
    124 #data
    125 <div>balabala<i>i</i><p>t</p></div>
    126 #config
    127 { "removeElements": ["dl", "p"] }
    128 #document
    129 | <div>
    130 |   "balabala"
    131 |   <i>
    132 |     "i"
    133 
    134 #data
    135 <div>test<div>p</div>tt<p>div</p></div>
    136 #config
    137 { "elements": ["p"], "replaceWithChildrenElements": ["div"] }
    138 #document
    139 | "test"
    140 | "p"
    141 | "tt"
    142 | <p>
    143 |   "div"
    144 
    145 #data
    146 <div>test</div><p>bla
    147 #config
    148 { "removeElements": ["div"], "elements": ["div"] }
    149 #error
    150 TypeError
    151 
    152 #data
    153 <p id='test'>Click.</p>
    154 #config
    155 { "removeAttributes": [] }
    156 #document
    157 | <p>
    158 |   id="test"
    159 |   "Click."
    160 
    161 #data
    162 <p id='test'>Click.</p>
    163 #config
    164 { "removeAttributes": ["id"] }
    165 #document
    166 | <p>
    167 |   "Click."
    168 
    169 #data
    170 <p id='test'>Click.</p>
    171 #config
    172 { "elements": ["p"], "removeAttributes": ["id"] }
    173 #document
    174 | <p>
    175 |   "Click."
    176 
    177 #data
    178 <p id='p' data-attribute-with-dashes='123'>Click.</p><script>document.getElementById('p').dataset.attributeWithDashes=123;</script>
    179 #config
    180 { "elements": ["p"], "removeAttributes": ["data-attribute-with-dashes"] }
    181 #document
    182 | <p>
    183 |   id="p"
    184 |   "Click."
    185 
    186 #data
    187 <p id='p' title='p'>P</p><div id='div' title='div'>DIV</div>
    188 #config
    189 { "elements": [
    190   { "name": "p", "attributes": ["title"] },
    191   { "name": "div", "attributes": ["id"] }
    192 ]}
    193 #document
    194 | <p>
    195 |   title="p"
    196 |   "P"
    197 | <div>
    198 |   id="div"
    199 |   "DIV"
    200 
    201 #data
    202 <p id='p' title='p'>P</p><div id='div' title='div'>DIV</div>
    203 #config
    204 { "elements":
    205   [
    206     { "name": "p", "removeAttributes": ["title"] },
    207     { "name": "div", "removeAttributes": ["id"] }
    208   ]
    209 }
    210 #document
    211 | <p>
    212 |   id="p"
    213 |   "P"
    214 | <div>
    215 |   title="div"
    216 |   "DIV"
    217 
    218 #data
    219 <div id='div' title='div'>DIV</div>
    220 #config
    221 { "elements": [{ "name": "div", "attributes": ["id"], "removeAttributes": ["id"] }]}
    222 #error
    223 TypeError
    224 
    225 #data
    226 <div id='div' title='div'>DIV</div>
    227 #config
    228 { "elements": [{ "name": "div", "attributes": ["id", "title"] }],
    229   "attributes": []}
    230 #document
    231 | <div>
    232 |   id="div"
    233 |   title="div"
    234 |   "DIV"
    235 
    236 #data
    237 <div id='div' title='div'>DIV</div>
    238 #config
    239 {
    240   "elements": [{ "name": "div", "attributes": [] }],
    241   "removeAttributes": ["id", "title"]
    242 }
    243 #document
    244 | <div>
    245 |   "DIV"
    246 
    247 #data
    248 <div id='div' title='div'>DIV</div>
    249 #config
    250 {
    251   "elements": [{ "name": "div", "removeAttributes": ["id", "title"] }],
    252   "attributes": ["id", "title"]
    253 }
    254 #document
    255 | <div>
    256 |   "DIV"
    257 
    258 #data
    259 <p id='test' onclick='a= 123'>Click.</p>
    260 #config
    261 { "attributes": ["id"] }
    262 #document
    263 | <p>
    264 |   id="test"
    265 |   "Click."
    266 
    267 #data
    268 <p style='color: black'>Click.</p>
    269 #config
    270 { "removeAttributes": ["style"], "attributes": ["style"] }
    271 #error
    272 TypeError
    273 
    274 #data
    275 <template><script>test</script><div>hello</div></template>
    276 #config
    277 { "elements": ["template", "div"] }
    278 #document
    279 | <template>
    280 |   content
    281 |     <div>
    282 |       "hello"
    283 
    284 #data
    285 <a href='javascript:evil.com'>Click.</a>
    286 #document
    287 | <a>
    288 |   "Click."
    289 
    290 #data
    291 <a href='  javascript:evil.com'>Click.</a>
    292 #document
    293 | <a>
    294 |   "Click."
    295 
    296 #data
    297 <a href='http:evil.com'>Click.</a>
    298 #document
    299 | <a>
    300 |   href="http:evil.com"
    301 |   "Click."
    302 
    303 #data
    304 <area href='javascript:evil.com'>
    305 #config
    306 {}
    307 #document
    308 | <area>
    309 
    310 #data
    311 <area href=' javascript:evil.com'>
    312 #config
    313 {}
    314 #document
    315 | <area>
    316 
    317 #data
    318 <area href='http:evil.com'>
    319 #config
    320 {}
    321 #document
    322 | <area>
    323 |   href="http:evil.com"
    324 
    325 #data
    326 <form action='javascript:evil.com'>Click.</form>
    327 #config
    328 {}
    329 #document
    330 | <form>
    331 |   "Click."
    332 
    333 #data
    334 <form action=' javascript:evil.com'>Click.</form>
    335 #config
    336 {}
    337 #document
    338 | <form>
    339 |   "Click."
    340 
    341 #data
    342 <form action='http:evil.com'>Click.</form>
    343 #config
    344 {}
    345 #document
    346 | <form>
    347 |   action="http:evil.com"
    348 |   "Click."
    349 
    350 #data
    351 <input formaction='javascript:evil.com'>
    352 #config
    353 {}
    354 #document
    355 | <input>
    356 
    357 #data
    358 <input formaction=' javascript:evil.com'>
    359 #config
    360 {}
    361 #document
    362 | <input>
    363 
    364 #data
    365 <input formaction='http:evil.com'>
    366 #config
    367 {}
    368 #document
    369 | <input>
    370 |   formaction="http:evil.com"
    371 
    372 #data
    373 <button formaction='javascript:evil.com'>Click.</button>
    374 #config
    375 {}
    376 #document
    377 | <button>
    378 |   "Click."
    379 
    380 #data
    381 <button formaction=' javascript:evil.com'>Click.</button>
    382 #config
    383 {}
    384 #document
    385 | <button>
    386 |   "Click."
    387 
    388 #data
    389 <button formaction='http:evil.com'>Click.</button>
    390 #config
    391 {}
    392 #document
    393 | <button>
    394 |   formaction="http:evil.com"
    395 |   "Click."
    396 
    397 #data
    398 <p>Some text</p></body><!-- 1 --></html><!-- 2 --><p>Some more text</p>
    399 #document
    400 | <p>
    401 |   "Some text"
    402 | <p>
    403 |   "Some more text"
    404 
    405 #data
    406 <p>Some text</p><!-- 1 --><!-- 2 --><p>Some more text</p>
    407 #document
    408 | <p>
    409 |   "Some text"
    410 | <p>
    411 |   "Some more text"
    412 
    413 #data
    414 <p>Some text</p><!-- 1 --><!-- 2 --><p>Some more text</p>
    415 #config
    416 { "comments": true }
    417 #document
    418 | <p>
    419 |   "Some text"
    420 | <!-- 1 -->
    421 | <!-- 2 -->
    422 | <p>
    423 |   "Some more text"
    424 
    425 #data
    426 <p>Some text</p><!-- 1 --><!-- 2 --><p>Some more text</p>
    427 #config
    428 { "comments": false }
    429 #document
    430 | <p>
    431 |   "Some text"
    432 | <p>
    433 |   "Some more text"
    434 
    435 #data
    436 <p>comment<!-- hello -->in<!-- </p> -->text</p>
    437 #document
    438 | <p>
    439 |   "comment"
    440 |   "in"
    441 |   "text"
    442 
    443 #data
    444 <p>comment<!-- hello -->in<!-- </p> -->text</p>
    445 #config
    446 { "comments": true }
    447 #document
    448 | <p>
    449 |   "comment"
    450 |   <!-- hello -->
    451 |   "in"
    452 |   <!-- </p> -->
    453 |   "text"
    454 
    455 #data
    456 <p>comment<!-- hello -->in<!-- </p> -->text</p>
    457 #config
    458 { "comments": false }
    459 #document
    460 | <p>
    461 |   "comment"
    462 |   "in"
    463 |   "text"
    464 
    465 #data
    466 <svg></svg>
    467 #config
    468 { "elements": ["svg"] }
    469 #document
    470 
    471 #data
    472 <div><svg></svg></div>
    473 #config
    474 { "elements": ["div", "svg"] }
    475 #document
    476 | <div>
    477 
    478 #data
    479 <div>balabala<dl>test</dl></div>
    480 #config
    481 { "removeElements": ["I", "DL"] }
    482 #document
    483 | <div>
    484 |   "balabala"
    485 |   <dl>
    486 |     "test"
    487 
    488 #data
    489 <div>balabala<dl>test</dl></div>
    490 #config
    491 { "removeElements": ["i", "dl"] }
    492 #document
    493 | <div>
    494 |   "balabala"
    495 
    496 #data
    497 <DIV>balabala<DL>test</DL></DIV>
    498 #config
    499 { "removeElements": ["i", "dl"] }
    500 #document
    501 | <div>
    502 |   "balabala"
    503 
    504 #data
    505 <p id="test">Click.</p>
    506 #config
    507 { "removeAttributes": ["ID"] }
    508 #document
    509 | <p>
    510 |   id="test"
    511 |   "Click."
    512 
    513 #data
    514 <p ID="test">Click.</p>
    515 #config
    516 { "removeAttributes": ["ID"] }
    517 #document
    518 | <p>
    519 |   id="test"
    520 |   "Click."
    521 
    522 #data
    523 <p ID="test">Click.</p>
    524 #config
    525 { "removeAttributes": ["id"] }
    526 #document
    527 | <p>
    528 |   "Click."
    529 
    530 #data
    531 <div>balabala<i>test</i></div><test>t</test><custom-element>custom-element</custom-element>
    532 #config
    533 { "removeElements": [123, "test", "i", "custom-element"] }
    534 #document
    535 | <div>
    536 |   "balabala"
    537 
    538 #data
    539 <div>balabala<i>test</i></div><test>t</test><custom-element>custom-element</custom-element>
    540 #config
    541 { "replaceWithChildrenElements": [123, "test", "i", "custom-element"],
    542   "elements": ["div"]}
    543 #document
    544 | <div>
    545 |   "balabala"
    546 |   "test"
    547 | "t"
    548 | "custom-element"
    549 
    550 #data
    551 <div>test<div>p</div>tt<p>div</p></div><test>test</test>
    552 #config
    553 { "elements": ["p", "test"], "replaceWithChildrenElements": ["div"] }
    554 #document
    555 | "test"
    556 | "p"
    557 | "tt"
    558 | <p>
    559 |   "div"
    560 | <test>
    561 |   "test"
    562 
    563 #data
    564 test<div>p</div>tt<p>div</p><test>test</test>
    565 #config
    566 { "elements": ["p", "test"], "replaceWithChildrenElements": ["div"] }
    567 #document
    568 | "test"
    569 | "p"
    570 | "tt"
    571 | <p>
    572 |   "div"
    573 | <test>
    574 |   "test"
    575 
    576 #data
    577 <div hello='1' world='2'><b hello='3' world='4'>
    578 #config
    579 { "elements": ["div", "b"], "attributes": ["hello", "world"] }
    580 #document
    581 | <div>
    582 |   hello="1"
    583 |   world="2"
    584 |   <b>
    585 |     hello="3"
    586 |     world="4"
    587 
    588 #data
    589 <div hello='1' world='2'><b hello='3' world='4'>
    590 #config
    591 { "elements": ["div", "b"], "removeAttributes": ["hello", "world"] }
    592 #document
    593 | <div>
    594 |   <b>
    595 
    596 #data
    597 <table><div><td>
    598 #config
    599 { "replaceWithChildrenElements": ["table"] }
    600 #document
    601 | <div>
    602 | <tbody>
    603 |   <tr>
    604 |     <td>
    605 
    606 #data
    607 <template><div>Hello</div></template>
    608 #config
    609 {}
    610 #document
    611 | <template>
    612 |   content
    613 |     <div>
    614 |       "Hello"
    615 
    616 #data
    617 <template><div>Hello</div></template>
    618 #config
    619 { "elements": ["div"]}
    620 #document
    621 
    622 #data
    623 <template><div>Hello</div></template>
    624 #config
    625 { "elements": ["template"]}
    626 #document
    627 | <template>
    628 |   content
    629 
    630 #data
    631 <template><div>Hello</div></template>
    632 #config
    633 { "elements": ["div", "template"]}
    634 #document
    635 | <template>
    636 |   content
    637 |     <div>
    638 |       "Hello"
    639 
    640 #data
    641 <template><div>Hello</div></template>
    642 #config
    643 { "elements": ["template"], "replaceWithChildrenElements": ["div"]}
    644 #document
    645 | <template>
    646 |   content
    647 |     "Hello"
    648 
    649 #data
    650 <a href="about:blank" rel="opener">Click.</a>
    651 #document
    652 | <a>
    653 |   href="about:blank"
    654 |   "Click."