Skip to content

Commit

Permalink
ublock assets
Browse files Browse the repository at this point in the history
  • Loading branch information
joshrmcdaniel committed Jun 3, 2024
1 parent b6fbc4d commit 24d4e76
Show file tree
Hide file tree
Showing 9 changed files with 144 additions and 42 deletions.
37 changes: 25 additions & 12 deletions privaxy/src/resources/vendor/ublock/redirect-resources.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*******************************************************************************
uBlock Origin - a browser extension to block requests.
uBlock Origin - a comprehensive, efficient content blocker
Copyright (C) 2015-present Raymond Hill
This program is free software: you can redistribute it and/or modify
Expand Down Expand Up @@ -71,7 +71,7 @@ export default new Map([
data: 'text',
} ],
[ 'empty', {
data: 'text', // Important!
data: 'text',
} ],
[ 'fingerprint2.js', {
data: 'text',
Expand All @@ -98,24 +98,30 @@ export default new Map([
alias: 'google-analytics.com/inpage_linkid.js',
} ],
[ 'google-ima.js', {
alias: 'google-ima3',
} ],
[ 'googlesyndication_adsbygoogle.js', {
alias: 'googlesyndication.com/adsbygoogle.js',
alias: [
'googlesyndication.com/adsbygoogle.js',
'googlesyndication-adsbygoogle',
],
data: 'text',
} ],
[ 'googletagservices_gpt.js', {
alias: 'googletagservices.com/gpt.js',
alias: [
'googletagservices.com/gpt.js',
'googletagservices-gpt',
],
data: 'text',
} ],
[ 'hd-main.js', {
} ],
[ 'ligatus_angular-tag.js', {
alias: 'ligatus.com/*/angular-tag.js',
} ],
[ 'mxpnl_mixpanel.js', {
[ 'nobab.js', {
alias: [ 'bab-defuser.js', 'prevent-bab.js' ],
data: 'text',
} ],
[ 'monkeybroker.js', {
alias: 'd3pkae9owd2lcf.cloudfront.net/mb105.js',
[ 'nobab2.js', {
data: 'text',
} ],
[ 'noeval.js', {
data: 'text',
Expand All @@ -142,16 +148,23 @@ export default new Map([
[ 'noop-0.5s.mp3', {
} ],
[ 'noop-1s.mp4', {
alias: 'noopmp4-1s',
alias: [ 'noopmp4-1s', 'abp-resource:blank-mp4' ],
data: 'blob',
} ],
[ 'noop.css', {
data: 'text',
} ],
[ 'noop.html', {
alias: 'noopframe',
} ],
[ 'noop.js', {
alias: [ 'noopjs', 'abp-resource:blank-js' ],
data: 'text',
} ],
[ 'noop.json', {
alias: [ 'noopjson' ],
data: 'text',
} ],
[ 'noop.txt', {
alias: 'nooptext',
data: 'text',
Expand All @@ -164,7 +177,7 @@ export default new Map([
alias: 'widgets.outbrain.com/outbrain.js',
} ],
[ 'popads.js', {
alias: 'popads.net.js',
alias: [ 'popads.net.js', 'prevent-popads-net.js' ],
data: 'text',
} ],
[ 'popads-dummy.js', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,7 @@
activity: noopfn,
virtualPage: noopfn
};
})();
for ( const hider of document.querySelectorAll('style[id^=chartbeat-flicker-control]') ) {
hider.remove();
}
})();
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<span id="clickToLoad" data-i18n="clickToLoad"></span>
<div id="frameURL"><span></span>&nbsp;<a class="fa-icon" href="" rel="noreferrer noopener" target="_blank">external-link</a></div>

<script src="../js/fa-icons.js"></script>
<script src="../js/fa-icons.js" type="module"></script>
<script src="../js/vapi.js"></script>
<script src="../js/vapi-common.js"></script>
<script src="../js/vapi-client.js"></script>
Expand All @@ -25,4 +25,4 @@
<script src="../js/click2load.js" type="module"></script>

</body>
</html>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<!DOCTYPE html>
<html id="ublock0-inspector">

<head>
<meta charset="utf-8">
<meta name="color-scheme" content="light dark">
<title>uBlock Origin Inspector</title>
<link rel="stylesheet" href="../css/dom-inspector.css">
</head>

<body>
<svg>
<path d></path>
<path d></path>
<path d></path>
<path d></path>
</svg>

<script src="../js/vapi.js"></script>
<script src="../js/vapi-common.js"></script>
<script src="../js/vapi-client.js"></script>
<script src="../js/dom-inspector.js" type="module"></script>

</body>
</html>
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@
* - Avoid JS syntax not supported by older browser versions
* - Add missing shim event
* - Modified to avoid jshint warnings as per uBO's config
* - Added `OmidVerificationVendor` to `ima`
* - Have `AdError.getInnerError()` return `null`
* - Have `AdDisplayContainer` constructor add DIV element to container
* - Added missing event dispatcher functionality
* - Corrected return type of `Ad.getUniversalAdIds()`
* - Corrected typo in `UniversalAdIdInfo.getAdIdValue()` method name
* - Corrected dispatch of LOAD event when preloading is enabled
* - Corrected dispatch of CONTENT_PAUSE/RESUME_REQUESTED events
*
* Related issue:
* - https://github.com/uBlockOrigin/uBlock-issues/issues/2158
Expand Down Expand Up @@ -228,9 +236,15 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
};
})();

let ima = {};
const ima = {};

class AdDisplayContainer {
constructor(containerElement) {
const divElement = document.createElement("div");
divElement.style.setProperty("display", "none", "important");
divElement.style.setProperty("visibility", "collapse", "important");
containerElement.appendChild(divElement);
}
destroy() {}
initialize() {}
}
Expand Down Expand Up @@ -300,6 +314,12 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
setSessionId(/*s*/) {}
setVpaidAllowed(/*a*/) {}
setVpaidMode(/*m*/) {}

// https://github.com/uBlockOrigin/uBlock-issues/issues/2265#issuecomment-1637094149
getDisableFlashAds() {
}
setDisableFlashAds() {
}
}
ImaSdkSettings.CompanionBackfillMode = {
ALWAYS: "always",
Expand All @@ -317,8 +337,9 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
}

_dispatch(e) {
const listeners = this.listeners.get(e.type) || [];
for (const listener of Array.from(listeners)) {
let listeners = this.listeners.get(e.type);
listeners = listeners ? Array.from(listeners.values()) : [];
for (const listener of listeners) {
try {
listener(e);
} catch (r) {
Expand All @@ -327,17 +348,30 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
}
}

addEventListener(t, c) {
if (!this.listeners.has(t)) {
this.listeners.set(t, new Set());
addEventListener(types, c, options, context) {
if (!Array.isArray(types)) {
types = [types];
}

for (const t of types) {
if (!this.listeners.has(t)) {
this.listeners.set(t, new Map());
}
this.listeners.get(t).set(c, c.bind(context || this));
}
this.listeners.get(t).add(c);
}

removeEventListener(t, c) {
const typeSet = this.listeners.get(t);
if (!typeSet) { return; }
typeSet.delete(c);
removeEventListener(types, c) {
if (!Array.isArray(types)) {
types = [types];
}

for (const t of types) {
const typeSet = this.listeners.get(t);
if (typeSet) {
typeSet.delete(c);
}
}
}
}

Expand Down Expand Up @@ -380,6 +414,7 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
constructor() {
super();
this.volume = 1;
this._enablePreloading = false;
}
collapse() {}
configureAdsManager() {}
Expand All @@ -405,7 +440,11 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
getVolume() {
return this.volume;
}
init(/*w, h, m, e*/) {}
init(/*w, h, m, e*/) {
if (this._enablePreloading) {
this._dispatch(new ima.AdEvent(AdEvent.Type.LOADED));
}
}
isCustomClickTrackingUsed() {
return false;
}
Expand All @@ -425,13 +464,14 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
for (const type of [
AdEvent.Type.LOADED,
AdEvent.Type.STARTED,
AdEvent.Type.CONTENT_RESUME_REQUESTED,
AdEvent.Type.CONTENT_PAUSE_REQUESTED,
AdEvent.Type.AD_BUFFERING,
AdEvent.Type.FIRST_QUARTILE,
AdEvent.Type.MIDPOINT,
AdEvent.Type.THIRD_QUARTILE,
AdEvent.Type.COMPLETE,
AdEvent.Type.ALL_ADS_COMPLETED,
AdEvent.Type.CONTENT_RESUME_REQUESTED,
]) {
try {
this._dispatch(new ima.AdEvent(type));
Expand Down Expand Up @@ -545,7 +585,7 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
return "unknown";
}
getUniversalAdIds() {
return [""];
return [new UniversalAdIdInfo()];
}
getUniversalAdIdValue() {
return "unknown";
Expand Down Expand Up @@ -607,7 +647,9 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
getErrorCode() {
return this.errorCode;
}
getInnerError() {}
getInnerError() {
return null;
}
getMessage() {
return this.message;
}
Expand Down Expand Up @@ -709,7 +751,10 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
constructor(type) {
this.type = type;
}
getAdsManager() {
getAdsManager(c, settings) {
if (settings && settings.enablePreloading) {
manager._enablePreloading = true;
}
return manager;
}
getUserRequestContext() {
Expand Down Expand Up @@ -755,7 +800,7 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
getAdIdRegistry() {
return "";
}
getAdIsValue() {
getAdIdValue() {
return "";
}
}
Expand Down Expand Up @@ -783,6 +828,12 @@ if (!window.google || !window.google.ima || !window.google.ima.VERSION) {
FULL: "full",
LIMITED: "limited",
},
OmidVerificationVendor: {
1: "OTHER",
2: "GOOGLE",
GOOGLE: 2,
OTHER: 1
},
settings: new ImaSdkSettings(),
UiElements: {
AD_ATTRIBUTION: "adAttribution",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,3 +50,7 @@
init();
}
})();

/*
pagead2.googlesyndication.com/pagead/js/adsbygoogle.js,adsbygoogle-placeholder,adsbygoogleStatus,google_ad_channel,google_ad_client,google_ad_format,google_ad_frequency_hint,google_ad_height,google_ad_host,google_ad_host_channel,google_ad_modifications,google_ad_region,google_ad_resizable,google_ad_resize,google_ad_section,google_ad_semantic_area,google_ad_width,google_adbreak_test,google_ads_frame,google_ads_iframe,google_adtest,google_admob_interstitial_slot,google_admob_rewarded_slot,google_admob_ads_only,google-adsense-platform-account,google_adsense_settings,google_ama_config,google-ama-order-assurance,google_ama_settings,google_ama_state,google_apltlad,google_audio_sense,google-auto-placed-read-aloud-player-reserved,google_debug_params,google_full_width_responsive,google_full_width_responsive_allowed,google_image_requests,google_js_errors,google_js_reporting_queue,google_loader_features_used,google_llp,google_logging_queue,google_max_ad_content_rating,google_measure_js_timing,google_ml_rank,google_overlays,google_override_format,google_package,google_page_url,google_persistent_state_async,google_pgb_reactive,google_placement_id,google_prev_ad_formats_by_region,google_prev_ad_slotnames_by_region,google_reactive_ad_format,google_reactive_ads_global_state,google_resizing_height,google_resizing_width,google_responsive_auto_format,google_responsive_dummy_ad,google_responsive_formats,google_restrict_data_processing,google_rum_task_id_counter,google_safe_for_responsive_override,google_shadow_mode,google_srt,google_tag_for_under_age_of_consent,google_tag_origin,google_tag_partner,google_traffic_source,google_unique_id,googletag
*/
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,13 @@
disableInitialLoad: noopfn,
display: noopfn,
enableAsyncRendering: noopfn,
enableLazyLoad: noopfn,
enableSingleRequest: noopfn,
enableSyncRendering: noopfn,
enableVideoAds: noopfn,
get: noopnullfn,
getAttributeKeys: nooparrayfn,
getTargeting: noopfn,
getTargeting: nooparrayfn,
getTargetingKeys: nooparrayfn,
getSlots: nooparrayfn,
refresh: noopfn,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,19 @@
return this;
};
Fab.prototype.setOption = noopfn;
const fab = new Fab(),
getSetFab = {
get: function() { return Fab; },
set: function() {}
},
getsetfab = {
get: function() { return fab; },
set: function() {}
};
Fab.prototype.options = {
set: noopfn,
get: noopfn,
};
const fab = new Fab();
const getSetFab = {
get: function() { return Fab; },
set: function() {}
};
const getsetfab = {
get: function() { return fab; },
set: function() {}
};
if ( window.hasOwnProperty('FuckAdBlock') ) { window.FuckAdBlock = Fab; }
else { Object.defineProperty(window, 'FuckAdBlock', getSetFab); }
if ( window.hasOwnProperty('BlockAdBlock') ) { window.BlockAdBlock = Fab; }
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}

0 comments on commit 24d4e76

Please sign in to comment.