Add support for removal of response headers · gorhill/uBlock@f876b68 (original) (raw)

`@@ -29,6 +29,9 @@

`

29

29

``

30

30

`/******************************************************************************/

`

31

31

``

``

32

`+

// TODO: fix the inconsistencies re. realm vs. filter source which have

`

``

33

`+

// accumulated over time.

`

``

34

+

32

35

`const messaging = vAPI.messaging;

`

33

36

`const logger = self.logger = { ownerId: Date.now() };

`

34

37

`const logDate = new Date();

`

`@@ -341,6 +344,11 @@ const processLoggerEntries = function(response) {

`

341

344

`/******************************************************************************/

`

342

345

``

343

346

`const parseLogEntry = function(details) {

`

``

347

`+

// Patch realm until changed all over codebase to make this unecessary

`

``

348

`+

if ( details.realm === 'cosmetic' ) {

`

``

349

`+

details.realm = 'extended';

`

``

350

`+

}

`

``

351

+

344

352

`const entry = new LogEntry(details);

`

345

353

``

346

354

`// Assemble the text content, i.e. the pre-built string which will be

`

`@@ -441,6 +449,8 @@ const viewPort = (( ) => {

`

441

449

`const vwLogEntryTemplate = document.querySelector('#logEntryTemplate > div');

`

442

450

`const vwEntries = [];

`

443

451

``

``

452

`+

const detailableRealms = new Set([ 'network', 'extended' ]);

`

``

453

+

444

454

`let vwHeight = 0;

`

445

455

`let lineHeight = 0;

`

446

456

`let wholeHeight = 0;

`

`@@ -672,7 +682,7 @@ const viewPort = (( ) => {

`

672

682

`return div;

`

673

683

`}

`

674

684

``

675

``

`-

if ( details.realm === 'network' || details.realm === 'cosmetic' ) {

`

``

685

`+

if ( detailableRealms.has(details.realm) ) {

`

676

686

`divcl.add('canDetails');

`

677

687

`}

`

678

688

``

`@@ -685,13 +695,13 @@ const viewPort = (( ) => {

`

685

695

`}

`

686

696

`if ( filteringType === 'static' ) {

`

687

697

`divcl.add('canLookup');

`

688

``

`-

if ( filter.modifier === true ) {

`

689

``

`-

div.setAttribute('data-modifier', '');

`

690

``

`-

}

`

691

``

`-

} else if ( filteringType === 'cosmetic' ) {

`

``

698

`+

} else if ( details.realm === 'extended' ) {

`

692

699

`divcl.add('canLookup');

`

693

700

`divcl.toggle('isException', filter.raw.startsWith('#@#'));

`

694

701

`}

`

``

702

`+

if ( filter.modifier === true ) {

`

``

703

`+

div.setAttribute('data-modifier', '');

`

``

704

`+

}

`

695

705

`}

`

696

706

`span = div.children[1];

`

697

707

`if ( renderFilterToSpan(span, cells[1]) === false ) {

`

`@@ -1575,15 +1585,15 @@ const reloadTab = function(ev) {

`

1575

1585

`rawFilter: rawFilter,

`

1576

1586

`});

`

1577

1587

`handleResponse(response);

`

1578

``

`-

} else if ( targetRow.classList.contains('cosmeticRealm') ) {

`

``

1588

`+

} else if ( targetRow.classList.contains('extendedRealm') ) {

`

1579

1589

`const response = await messaging.send('loggerUI', {

`

1580

1590

`what: 'listsFromCosmeticFilter',

`

1581

1591

`url: targetRow.children[6].textContent,

`

1582

1592

`rawFilter: rawFilter,

`

1583

1593

`});

`

1584

1594

`handleResponse(response);

`

1585

1595

`}

`

1586

``

`-

} ;

`

``

1596

`+

};

`

1587

1597

``

1588

1598

`const fillSummaryPane = function() {

`

1589

1599

`const rows = dialog.querySelectorAll('.pane.details > div');

`

`@@ -1595,7 +1605,7 @@ const reloadTab = function(ev) {

`

1595

1605

`text = filterFromTargetRow();

`

1596

1606

`if (

`

1597

1607

`(text !== '') &&

`

1598

``

`-

(trcl.contains('cosmeticRealm') || trcl.contains('networkRealm'))

`

``

1608

`+

(trcl.contains('extendedRealm') || trcl.contains('networkRealm'))

`

1599

1609

`) {

`

1600

1610

`toSummaryPaneFilterNode(rows[0], text);

`

1601

1611

`} else {

`

`@@ -1607,7 +1617,7 @@ const reloadTab = function(ev) {

`

1607

1617

`(

`

1608

1618

`trcl.contains('dynamicHost') ||

`

1609

1619

`trcl.contains('dynamicUrl') ||

`

1610

``

`-

trcl.contains('switch')

`

``

1620

`+

trcl.contains('switchRealm')

`

1611

1621

`)

`

1612

1622

`) {

`

1613

1623

`rows[2].children[1].textContent = text;

`

`@@ -1677,7 +1687,9 @@ const reloadTab = function(ev) {

`

1677

1687

``

1678

1688

`// Fill dynamic URL filtering pane

`

1679

1689

`const fillDynamicPane = function() {

`

1680

``

`-

if ( targetRow.classList.contains('cosmeticRealm') ) { return; }

`

``

1690

`+

if ( targetRow.classList.contains('extendedRealm') ) {

`

``

1691

`+

return;

`

``

1692

`+

}

`

1681

1693

``

1682

1694

`// https://github.com/uBlockOrigin/uBlock-issues/issues/662#issuecomment-509220702

`

1683

1695

`if ( targetType === 'doc' ) { return; }

`

`@@ -1712,8 +1724,6 @@ const reloadTab = function(ev) {

`

1712

1724

`}

`

1713

1725

``

1714

1726

`colorize();

`

1715

``

-

1716

``

`-

uDom('#modalOverlayContainer [data-pane="dynamic"]').removeClass('hide');

`

1717

1727

`};

`

1718

1728

``

1719

1729

`const fillOriginSelect = function(select, hostname, domain) {

`

`@@ -1733,7 +1743,9 @@ const reloadTab = function(ev) {

`

1733

1743

``

1734

1744

`// Fill static filtering pane

`

1735

1745

`const fillStaticPane = function() {

`

1736

``

`-

if ( targetRow.classList.contains('cosmeticRealm') ) { return; }

`

``

1746

`+

if ( targetRow.classList.contains('extendedRealm') ) {

`

``

1747

`+

return;

`

``

1748

`+

}

`

1737

1749

``

1738

1750

`const template = vAPI.i18n('loggerStaticFilteringSentence');

`

1739

1751

`const rePlaceholder = /{{[^}]+?}}/g;

`

`@@ -1842,8 +1854,8 @@ const reloadTab = function(ev) {

`

1842

1854

`}

`

1843

1855

`);

`

1844

1856

`dialog.classList.toggle(

`

1845

``

`-

'cosmeticRealm',

`

1846

``

`-

targetRow.classList.contains('cosmeticRealm')

`

``

1857

`+

'extendedRealm',

`

``

1858

`+

targetRow.classList.contains('extendedRealm')

`

1847

1859

`);

`

1848

1860

`targetDomain = domains[0];

`

1849

1861

`targetPageDomain = domains[1];

`

`@@ -2403,10 +2415,10 @@ const popupManager = (( ) => {

`

2403

2415

`// Filter hit stats' MVP ("minimum viable product")

`

2404

2416

`//

`

2405

2417

`const loggerStats = (( ) => {

`

``

2418

`+

const enabled = false;

`

2406

2419

`const filterHits = new Map();

`

2407

2420

`let dialog;

`

2408

2421

`let timer;

`

2409

``

-

2410

2422

`const makeRow = function() {

`

2411

2423

`const div = document.createElement('div');

`

2412

2424

`div.appendChild(document.createElement('span'));

`

`@@ -2470,6 +2482,7 @@ const loggerStats = (( ) => {

`

2470

2482

``

2471

2483

`return {

`

2472

2484

`processFilter: function(filter) {

`

``

2485

`+

if ( enabled !== true ) { return; }

`

2473

2486

`if ( filter.source !== 'static' && filter.source !== 'cosmetic' ) {

`

2474

2487

`return;

`

2475

2488

`}

`