Files
I2P_in_Private_Browsing_Mod…/chromium/browser-polyfill.min.js
2019-06-29 01:47:13 -04:00

904 lines
22 KiB
JavaScript

(function(a, b) {
if ("function" == typeof define && define.amd) {
define("webextension-polyfill", ["module"], b);
} else if ("undefined" != typeof exports) {
b(module);
} else {
var c = {
exports: {}
};
b(c), a.browser = c.exports
}
})(this, function(a) {
"use strict";
if ("undefined" == typeof browser || Object.getPrototypeOf(browser) !== Object.prototype) {
a.exports = (e => {
const f = {
alarms: {
clear: {
minArgs: 0,
maxArgs: 1
},
clearAll: {
minArgs: 0,
maxArgs: 0
},
get: {
minArgs: 0,
maxArgs: 1
},
getAll: {
minArgs: 0,
maxArgs: 0
}
},
bookmarks: {
create: {
minArgs: 1,
maxArgs: 1
},
get: {
minArgs: 1,
maxArgs: 1
},
getChildren: {
minArgs: 1,
maxArgs: 1
},
getRecent: {
minArgs: 1,
maxArgs: 1
},
getSubTree: {
minArgs: 1,
maxArgs: 1
},
getTree: {
minArgs: 0,
maxArgs: 0
},
move: {
minArgs: 2,
maxArgs: 2
},
remove: {
minArgs: 1,
maxArgs: 1
},
removeTree: {
minArgs: 1,
maxArgs: 1
},
search: {
minArgs: 1,
maxArgs: 1
},
update: {
minArgs: 2,
maxArgs: 2
}
},
browserAction: {
disable: {
minArgs: 0,
maxArgs: 1,
fallbackToNoCallback: !0
},
enable: {
minArgs: 0,
maxArgs: 1,
fallbackToNoCallback: !0
},
getBadgeBackgroundColor: {
minArgs: 1,
maxArgs: 1
},
getBadgeText: {
minArgs: 1,
maxArgs: 1
},
getPopup: {
minArgs: 1,
maxArgs: 1
},
getTitle: {
minArgs: 1,
maxArgs: 1
},
openPopup: {
minArgs: 0,
maxArgs: 0
},
setBadgeBackgroundColor: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
setBadgeText: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
setIcon: {
minArgs: 1,
maxArgs: 1
},
setPopup: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
setTitle: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
}
},
browsingData: {
remove: {
minArgs: 2,
maxArgs: 2
},
removeCache: {
minArgs: 1,
maxArgs: 1
},
removeCookies: {
minArgs: 1,
maxArgs: 1
},
removeDownloads: {
minArgs: 1,
maxArgs: 1
},
removeFormData: {
minArgs: 1,
maxArgs: 1
},
removeHistory: {
minArgs: 1,
maxArgs: 1
},
removeLocalStorage: {
minArgs: 1,
maxArgs: 1
},
removePasswords: {
minArgs: 1,
maxArgs: 1
},
removePluginData: {
minArgs: 1,
maxArgs: 1
},
settings: {
minArgs: 0,
maxArgs: 0
}
},
commands: {
getAll: {
minArgs: 0,
maxArgs: 0
}
},
contextMenus: {
remove: {
minArgs: 1,
maxArgs: 1
},
removeAll: {
minArgs: 0,
maxArgs: 0
},
update: {
minArgs: 2,
maxArgs: 2
}
},
cookies: {
get: {
minArgs: 1,
maxArgs: 1
},
getAll: {
minArgs: 1,
maxArgs: 1
},
getAllCookieStores: {
minArgs: 0,
maxArgs: 0
},
remove: {
minArgs: 1,
maxArgs: 1
},
set: {
minArgs: 1,
maxArgs: 1
}
},
devtools: {
inspectedWindow: {
eval: {
minArgs: 1,
maxArgs: 2,
singleCallbackArg: !1
}
},
panels: {
create: {
minArgs: 3,
maxArgs: 3,
singleCallbackArg: !0
}
}
},
downloads: {
cancel: {
minArgs: 1,
maxArgs: 1
},
download: {
minArgs: 1,
maxArgs: 1
},
erase: {
minArgs: 1,
maxArgs: 1
},
getFileIcon: {
minArgs: 1,
maxArgs: 2
},
open: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
pause: {
minArgs: 1,
maxArgs: 1
},
removeFile: {
minArgs: 1,
maxArgs: 1
},
resume: {
minArgs: 1,
maxArgs: 1
},
search: {
minArgs: 1,
maxArgs: 1
},
show: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
}
},
extension: {
isAllowedFileSchemeAccess: {
minArgs: 0,
maxArgs: 0
},
isAllowedIncognitoAccess: {
minArgs: 0,
maxArgs: 0
}
},
history: {
addUrl: {
minArgs: 1,
maxArgs: 1
},
deleteAll: {
minArgs: 0,
maxArgs: 0
},
deleteRange: {
minArgs: 1,
maxArgs: 1
},
deleteUrl: {
minArgs: 1,
maxArgs: 1
},
getVisits: {
minArgs: 1,
maxArgs: 1
},
search: {
minArgs: 1,
maxArgs: 1
}
},
i18n: {
detectLanguage: {
minArgs: 1,
maxArgs: 1
},
getAcceptLanguages: {
minArgs: 0,
maxArgs: 0
}
},
identity: {
launchWebAuthFlow: {
minArgs: 1,
maxArgs: 1
}
},
idle: {
queryState: {
minArgs: 1,
maxArgs: 1
}
},
management: {
get: {
minArgs: 1,
maxArgs: 1
},
getAll: {
minArgs: 0,
maxArgs: 0
},
getSelf: {
minArgs: 0,
maxArgs: 0
},
setEnabled: {
minArgs: 2,
maxArgs: 2
},
uninstallSelf: {
minArgs: 0,
maxArgs: 1
}
},
notifications: {
clear: {
minArgs: 1,
maxArgs: 1
},
create: {
minArgs: 1,
maxArgs: 2
},
getAll: {
minArgs: 0,
maxArgs: 0
},
getPermissionLevel: {
minArgs: 0,
maxArgs: 0
},
update: {
minArgs: 2,
maxArgs: 2
}
},
pageAction: {
getPopup: {
minArgs: 1,
maxArgs: 1
},
getTitle: {
minArgs: 1,
maxArgs: 1
},
hide: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
setIcon: {
minArgs: 1,
maxArgs: 1
},
setPopup: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
setTitle: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
},
show: {
minArgs: 1,
maxArgs: 1,
fallbackToNoCallback: !0
}
},
permissions: {
contains: {
minArgs: 1,
maxArgs: 1
},
getAll: {
minArgs: 0,
maxArgs: 0
},
remove: {
minArgs: 1,
maxArgs: 1
},
request: {
minArgs: 1,
maxArgs: 1
}
},
runtime: {
getBackgroundPage: {
minArgs: 0,
maxArgs: 0
},
getBrowserInfo: {
minArgs: 0,
maxArgs: 0
},
getPlatformInfo: {
minArgs: 0,
maxArgs: 0
},
openOptionsPage: {
minArgs: 0,
maxArgs: 0
},
requestUpdateCheck: {
minArgs: 0,
maxArgs: 0
},
sendMessage: {
minArgs: 1,
maxArgs: 3
},
sendNativeMessage: {
minArgs: 2,
maxArgs: 2
},
setUninstallURL: {
minArgs: 1,
maxArgs: 1
}
},
sessions: {
getDevices: {
minArgs: 0,
maxArgs: 1
},
getRecentlyClosed: {
minArgs: 0,
maxArgs: 1
},
restore: {
minArgs: 0,
maxArgs: 1
}
},
storage: {
local: {
clear: {
minArgs: 0,
maxArgs: 0
},
get: {
minArgs: 0,
maxArgs: 1
},
getBytesInUse: {
minArgs: 0,
maxArgs: 1
},
remove: {
minArgs: 1,
maxArgs: 1
},
set: {
minArgs: 1,
maxArgs: 1
}
},
managed: {
get: {
minArgs: 0,
maxArgs: 1
},
getBytesInUse: {
minArgs: 0,
maxArgs: 1
}
},
sync: {
clear: {
minArgs: 0,
maxArgs: 0
},
get: {
minArgs: 0,
maxArgs: 1
},
getBytesInUse: {
minArgs: 0,
maxArgs: 1
},
remove: {
minArgs: 1,
maxArgs: 1
},
set: {
minArgs: 1,
maxArgs: 1
}
}
},
tabs: {
captureVisibleTab: {
minArgs: 0,
maxArgs: 2
},
create: {
minArgs: 1,
maxArgs: 1
},
detectLanguage: {
minArgs: 0,
maxArgs: 1
},
discard: {
minArgs: 0,
maxArgs: 1
},
duplicate: {
minArgs: 1,
maxArgs: 1
},
executeScript: {
minArgs: 1,
maxArgs: 2
},
get: {
minArgs: 1,
maxArgs: 1
},
getCurrent: {
minArgs: 0,
maxArgs: 0
},
getZoom: {
minArgs: 0,
maxArgs: 1
},
getZoomSettings: {
minArgs: 0,
maxArgs: 1
},
highlight: {
minArgs: 1,
maxArgs: 1
},
insertCSS: {
minArgs: 1,
maxArgs: 2
},
move: {
minArgs: 2,
maxArgs: 2
},
query: {
minArgs: 1,
maxArgs: 1
},
reload: {
minArgs: 0,
maxArgs: 2
},
remove: {
minArgs: 1,
maxArgs: 1
},
removeCSS: {
minArgs: 1,
maxArgs: 2
},
sendMessage: {
minArgs: 2,
maxArgs: 3
},
setZoom: {
minArgs: 1,
maxArgs: 2
},
setZoomSettings: {
minArgs: 1,
maxArgs: 2
},
update: {
minArgs: 1,
maxArgs: 2
}
},
topSites: {
get: {
minArgs: 0,
maxArgs: 0
}
},
webNavigation: {
getAllFrames: {
minArgs: 1,
maxArgs: 1
},
getFrame: {
minArgs: 1,
maxArgs: 1
}
},
webRequest: {
handlerBehaviorChanged: {
minArgs: 0,
maxArgs: 0
}
},
windows: {
create: {
minArgs: 0,
maxArgs: 1
},
get: {
minArgs: 1,
maxArgs: 2
},
getAll: {
minArgs: 0,
maxArgs: 1
},
getCurrent: {
minArgs: 0,
maxArgs: 1
},
getLastFocused: {
minArgs: 0,
maxArgs: 1
},
remove: {
minArgs: 1,
maxArgs: 1
},
update: {
minArgs: 2,
maxArgs: 2
}
}
};
if (0 === Object.keys(f).length) {
throw new Error("api-metadata.json has not been included in browser-polyfill");
}
class g extends WeakMap {
constructor(v, w = void 0) {
super(w), this.createItem = v
}
get(v) {
return this.has(v) || this.set(v, this.createItem(v)), super.get(v)
}
}
const h = v => {
return v && "object" == typeof v && "function" == typeof v.then
};
const i = (v, w) => {
return (...x) => {
e.runtime.lastError ? v.reject(e.runtime.lastError) : w.singleCallbackArg || 1 >= x.length && !1 !== w.singleCallbackArg ? v.resolve(x[0]) : v.resolve(x)
}
};
const j = v => 1 == v ? "argument" : "arguments";
const k = (v, w) => {
return function(y, ...z) {
if (z.length < w.minArgs) {
throw new Error(`Expected at least ${w.minArgs} ${j(w.minArgs)} for ${v}(), got ${z.length}`);
}
if (z.length > w.maxArgs) {
throw new Error(`Expected at most ${w.maxArgs} ${j(w.maxArgs)} for ${v}(), got ${z.length}`);
}
return new Promise((A, B) => {
if (w.fallbackToNoCallback) {
try {
y[v](...z, i({
resolve: A,
reject: B
}, w))
} catch ( C ) {
console.warn(`${v} API method doesn't seem to support the callback parameter, ` + "falling back to call it without a callback: ", C), y[v](...z), w.fallbackToNoCallback = !1, w.noCallback = !0, A()
}
} else {
w.noCallback ? (y[v](...z), A()) : y[v](...z, i({
resolve: A,
reject: B
}, w))
}
})
}
};
const l = (v, w, x) => {
return new Proxy(w, {
apply(y, z, A) {
return x.call(z, v, ...A)
}
})
};
let m = Function.call.bind(Object.prototype.hasOwnProperty);
const n = (v, w = {}, x = {}) => {
let y = Object.create(null);
let z = {
has(B, C) {
return C in v || C in y
},
get(B, C) {
if (C in y) {
return y[C];
}
if (C in v) {
let E = v[C];
if ("function" == typeof E) {
if ("function" == typeof w[C]) {
E = l(v, v[C], w[C]);
} else if (m(x, C)) {
let F = k(C, x[C]);
E = l(v, v[C], F)
} else {
E = E.bind(v);
}
} else if ("object" == typeof E && null !== E && (m(w, C) || m(x, C))) {
E = n(E, w[C], x[C]);
} else {
return Object.defineProperty(y, C, {
configurable: !0,
enumerable: !0,
get() {
return v[C]
},
set(F) {
v[C] = F
}
}), E;
}
return y[C] = E, E
}
},
set(B, C, D) {
return C in y ? y[C] = D : v[C] = D, !0
},
defineProperty(B, C, D) {
return Reflect.defineProperty(y, C, D)
},
deleteProperty(B, C) {
return Reflect.deleteProperty(y, C)
}
};
let A = Object.create(v);
return new Proxy(A, z)
};
const o = v => ({
addListener(w, x, ...y) {
w.addListener(v.get(x), ...y)
},
hasListener(w, x) {
return w.hasListener(v.get(x))
},
removeListener(w, x) {
w.removeListener(v.get(x))
}
});
let p = !1;
const q = new g(v => {
return "function" == typeof v ? function(x, y, z) {
let B;
let D;
let A = !1;
let C = new Promise(G => {
B = function(H) {
p || (console.warn("Returning a Promise is the preferred way to send a reply from an onMessage/onMessageExternal listener, as the sendResponse will be removed from the specs (See https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage)", new Error().stack), p = !0), A = !0, G(H)
}
});
try {
D = v(x, y, B)
} catch ( G ) {
D = Promise.reject(G)
}
const E = !0 !== D && h(D);
if (!0 !== D && !E && !A) {
return !1;
}
const F = G => {
G.then(H => {
z(H)
}, H => {
let I;
I = H && (H instanceof Error || "string" == typeof H.message) ? H.message : "An unexpected error occurred", z({
__mozWebExtensionPolyfillReject__: !0,
message: I
})
}).catch(H => {
console.error("Failed to send onMessage rejected reply", H)
})
};
return E ? F(D) : F(C), !0
} : v
});
const r = ({reject:v, resolve:w} ,x) => {
e.runtime.lastError ? e.runtime.lastError.message === "The message port closed before a response was received." ? w() : v(e.runtime.lastError) : x && x.__mozWebExtensionPolyfillReject__ ? v(new Error(x.message)) : w(x)
};
const s = (v, w, x, ...y) => {
if (y.length < w.minArgs) {
throw new Error(`Expected at least ${w.minArgs} ${j(w.minArgs)} for ${v}(), got ${y.length}`);
}
if (y.length > w.maxArgs) {
throw new Error(`Expected at most ${w.maxArgs} ${j(w.maxArgs)} for ${v}(), got ${y.length}`);
}
return new Promise((z, A) => {
const B = r.bind(null, {
resolve: z,
reject: A
});
y.push(B), x.sendMessage(...y)
})
};
const t = {
runtime: {
onMessage: o(q),
onMessageExternal: o(q),
sendMessage: s.bind(null, "sendMessage", {
minArgs: 1,
maxArgs: 3
})
},
tabs: {
sendMessage: s.bind(null, "sendMessage", {
minArgs: 2,
maxArgs: 3
})
}
};
const u = {
clear: {
minArgs: 1,
maxArgs: 1
},
get: {
minArgs: 1,
maxArgs: 1
},
set: {
minArgs: 1,
maxArgs: 1
}
};
return f.privacy = {
network: {
networkPredictionEnabled: u,
webRTCIPHandlingPolicy: u
},
services: {
passwordSavingEnabled: u
},
websites: {
hyperlinkAuditingEnabled: u,
referrersEnabled: u
}
}, n(e, t, f)
})(chrome)
} else {
a.exports = browser
}
});
//# sourceMappingURL=browser-polyfill.min.js.map
// webextension-polyfill v.0.4.0 (https://github.com/mozilla/webextension-polyfill)
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */