1
0
mirror of https://github.com/kkapsner/CanvasBlocker synced 2025-05-19 19:02:21 +02:00

Remove all "var" from intercept.js

This commit is contained in:
kkapsner 2019-05-10 00:45:50 +02:00
parent 2222ba65c8
commit a89bf0aba8

View File

@ -4,7 +4,7 @@
(function(){ (function(){
"use strict"; "use strict";
var scope; let scope;
if ((typeof exports) !== "undefined"){ if ((typeof exports) !== "undefined"){
scope = exports; scope = exports;
} }
@ -20,8 +20,8 @@
const extension = require("./extension"); const extension = require("./extension");
setRandomSupply(randomSupplies.nonPersistent); setRandomSupply(randomSupplies.nonPersistent);
var apiNames = Object.keys(changedFunctions); const apiNames = Object.keys(changedFunctions);
var undef; let undef;
function setRandomSupplyByType(type){ function setRandomSupplyByType(type){
switch (type){ switch (type){
case "persistent": case "persistent":
@ -42,7 +42,7 @@
}); });
function getURL(window){ function getURL(window){
var href; let href;
try { try {
href = window.location.href; href = window.location.href;
} }
@ -80,7 +80,7 @@
changedFunction.object: changedFunction.object:
[changedFunction.object] [changedFunction.object]
).forEach(function(object){ ).forEach(function(object){
var constructor = getWrapped(window)[object]; const constructor = getWrapped(window)[object];
if (constructor){ if (constructor){
callback({name, object: constructor.prototype}); callback({name, object: constructor.prototype});
} }
@ -100,7 +100,7 @@
const doPreIntercept = function(){ const doPreIntercept = function(){
if (!preIntercepted){ if (!preIntercepted){
forEachFunction(function({name, object}){ forEachFunction(function({name, object}){
var map = originalPropertyDescriptors[name] || new WeakMap(); const map = originalPropertyDescriptors[name] || new WeakMap();
originalPropertyDescriptors[name] = map; originalPropertyDescriptors[name] = map;
const originalPropertyDescriptor = Object.getOwnPropertyDescriptor(object, name); const originalPropertyDescriptor = Object.getOwnPropertyDescriptor(object, name);
@ -121,16 +121,16 @@
undoPreIntercept(); undoPreIntercept();
settings.forceLoad(); settings.forceLoad();
doRealIntercept(); doRealIntercept();
var descriptor = Object.getOwnPropertyDescriptor(object, name); const descriptor = Object.getOwnPropertyDescriptor(object, name);
return descriptor.value || descriptor.get.call(this); return descriptor.value || descriptor.get.call(this);
} }
else { else {
logging.notice("API blocked (%s)", name); logging.notice("API blocked (%s)", name);
var url = getURL(window); const url = getURL(window);
if (!url){ if (!url){
return undef; return undef;
} }
var error = new Error(); const error = new Error();
apis.notify({ apis.notify({
url, url,
errorStack: error.stack, errorStack: error.stack,
@ -200,11 +200,11 @@
} }
function generateChecker(name, changedFunction, siteStatus, original){ function generateChecker(name, changedFunction, siteStatus, original){
return function checker(callingDepth = 2){ return function checker(callingDepth = 2){
var url = getURL(window); const url = getURL(window);
if (!url){ if (!url){
return undef; return undef;
} }
var error = new Error(); const error = new Error();
try { try {
// return original if the extension itself requested the function // return original if the extension itself requested the function
if ( if (
@ -222,7 +222,7 @@
if (checkStack(error.stack)){ if (checkStack(error.stack)){
return {allow: true, original, window}; return {allow: true, original, window};
} }
var funcStatus = changedFunction.getStatus(this, siteStatus, prefs); const funcStatus = changedFunction.getStatus(this, siteStatus, prefs);
const This = this; const This = this;
function notifyCallback(messageId){ function notifyCallback(messageId){
@ -285,12 +285,12 @@
}; };
} }
var siteStatus = check({url: getURL(window)}); const siteStatus = check({url: getURL(window)});
logging.verbose("status for page", window, siteStatus); logging.verbose("status for page", window, siteStatus);
if (siteStatus.mode !== "allow"){ if (siteStatus.mode !== "allow"){
apiNames.forEach(function(name){ apiNames.forEach(function(name){
var changedFunction = changedFunctions[name]; const changedFunction = changedFunctions[name];
var functionStatus = changedFunction.getStatus(undefined, siteStatus, prefs); const functionStatus = changedFunction.getStatus(undefined, siteStatus, prefs);
logging.verbose("status for", name, ":", functionStatus); logging.verbose("status for", name, ":", functionStatus);
if (functionStatus.active){ if (functionStatus.active){
( (
@ -298,11 +298,11 @@
changedFunction.object: changedFunction.object:
[changedFunction.object] [changedFunction.object]
).forEach(function(object){ ).forEach(function(object){
var constructor = getWrapped(window)[object]; const constructor = getWrapped(window)[object];
if (constructor){ if (constructor){
var original = constructor.prototype[name]; const original = constructor.prototype[name];
const checker = generateChecker(name, changedFunction, siteStatus, original); const checker = generateChecker(name, changedFunction, siteStatus, original);
var descriptor = Object.getOwnPropertyDescriptor(constructor.prototype, name); const descriptor = Object.getOwnPropertyDescriptor(constructor.prototype, name);
if (descriptor){ if (descriptor){
if (descriptor.hasOwnProperty("value")){ if (descriptor.hasOwnProperty("value")){
if (changedFunction.fakeGenerator){ if (changedFunction.fakeGenerator){
@ -331,7 +331,7 @@
}); });
changedGetters.forEach(function(changedGetter){ changedGetters.forEach(function(changedGetter){
const name = changedGetter.name; const name = changedGetter.name;
var functionStatus = changedGetter.getStatus(undefined, siteStatus, prefs); const functionStatus = changedGetter.getStatus(undefined, siteStatus, prefs);
logging.verbose("status for", changedGetter, ":", functionStatus); logging.verbose("status for", changedGetter, ":", functionStatus);
if (functionStatus.active){ if (functionStatus.active){
changedGetter.objectGetters.forEach(function(objectGetter){ changedGetter.objectGetters.forEach(function(objectGetter){
@ -339,7 +339,7 @@
if (object){ if (object){
const descriptor = Object.getOwnPropertyDescriptor(object, name); const descriptor = Object.getOwnPropertyDescriptor(object, name);
if (descriptor && descriptor.hasOwnProperty("get")){ if (descriptor && descriptor.hasOwnProperty("get")){
var original = descriptor.get; const original = descriptor.get;
const checker = generateChecker(name, changedGetter, siteStatus, original); const checker = generateChecker(name, changedGetter, siteStatus, original);
const getter = changedGetter.getterGenerator(checker); const getter = changedGetter.getterGenerator(checker);
descriptor.get = exportFunction(getter, window); descriptor.get = exportFunction(getter, window);