1
0
mirror of https://github.com/kkapsner/CanvasBlocker synced 2024-10-31 18:38:45 +01:00
CanvasBlocker/lib/settingDefinitions.js

232 lines
4.4 KiB
JavaScript
Raw Normal View History

2017-11-07 00:36:44 +01:00
/* 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/. */
(function(){
"use strict";
var settingDefinitions = [
{
name: "logLevel",
defaultValue: 1,
options: [0, 1, 25, 50, 75, 100]
},
{
name: "urlSettings",
defaultValue: [],
urlContainer: true,
entries: [
{name: "url", defaultValue: ""}
]
},
2018-07-02 00:29:41 +02:00
{
name: "hiddenSettings",
hideContainer: true,
defaultValue: {}
},
{
name: "displayHiddenSettings",
defaultValue: false
},
{
name: "urls",
defaultValue: [],
dynamic: true,
dependencies: ["urlSettings"],
getter: function(settings){
return settings.urlSettings.map(function(urlSetting){
return urlSetting.url;
});
}
},
2017-11-07 00:36:44 +01:00
{
name: "whiteList",
defaultValue: ""
},
{
name: "blackList",
defaultValue: ""
},
{
name: "blockMode",
defaultValue: "fakeReadout",
urlSpecific: true,
2017-11-07 00:36:44 +01:00
options: [
"blockReadout", "fakeReadout", "fakeInput", "askReadout", null,
"blockEverything", "block", "ask", "allow", "allowEverything"
]
},
{
name: "minFakeSize",
defaultValue: 1
},
{
name: "maxFakeSize",
defaultValue: 0
},
{
name: "rng",
defaultValue: "nonPersistent",
2017-11-24 17:06:43 +01:00
options: ["white", "nonPersistent", "constant", "persistent"]
2017-11-07 00:36:44 +01:00
},
{
name: "apiWhiteList",
defaultValue: {},
keys: [
{name: "Canvas-API", level: 1},
"getContext",
{message: "readout", level: 2},
"toDataURL", "toBlob", "mozGetAsFile", "getImageData",
"isPointInPath", "isPointInStroke",
{message: "input", level: 2},
"fillText", "strokeText",
{name: "webGL", level: 2},
2018-06-16 00:22:31 +02:00
"readPixels",
{name: "Audio-API", leve: 1},
2018-06-16 00:22:31 +02:00
"getFloatFrequencyData", "getByteFrequencyData", "getFloatTimeDomainData", "getByteTimeDomainData",
"getChannelData", "copyFromChannel",
"getFrequencyResponse"
],
defaultKeyValue: false
},
2017-11-07 00:36:44 +01:00
{
name: "useCanvasCache",
defaultValue: true
},
{
name: "ignoreFrequentColors",
defaultValue: 0
},
{
name: "minColors",
defaultValue: 0
},
2017-11-07 00:36:44 +01:00
{
name: "fakeAlphaChannel",
defaultValue: false
},
{
name: "persistentRndStorage",
defaultValue: ""
},
{
name: "storePersistentRnd",
defaultValue: false
},
{
name: "persistentRndClearIntervalValue",
defaultValue: 0
},
{
name: "persistentRndClearIntervalUnit",
defaultValue: "days",
options: ["seconds", "minutes", "hours", "days", "weeks", "months", "years"]
},
{
name: "lastPersistentRndClearing",
defaultValue: 0
},
2017-11-07 00:36:44 +01:00
{
name: "askOnlyOnce",
defaultValue: "individual",
options: ["no", "individual", "combined"]
2017-11-07 00:36:44 +01:00
},
{
name: "askDenyMode",
defaultValue: "block",
options: ["block", "fake"]
},
2018-01-04 13:36:18 +01:00
{
name: "showCanvasWhileAsking",
defaultValue: true
},
2017-11-07 00:36:44 +01:00
{
name: "showNotifications",
defaultValue: true,
urlSpecific: true
2017-11-07 00:36:44 +01:00
},
{
name: "storeImageForInspection",
defaultValue: false
},
{
name: "notificationDisplayTime",
defaultValue: 30
},
{
name: "ignoreList",
defaultValue: ""
},
{
name: "showCallingFile",
defaultValue: false
},
{
name: "showCompleteCallingStack",
defaultValue: false
},
{
name: "enableStackList",
defaultValue: false
},
{
name: "stackList",
defaultValue: ""
},
2018-06-16 00:22:31 +02:00
{
name: "protectAudio",
defaultValue: true
},
{
name: "audioFakeRate",
defaultValue: "100",
options: ["1", "10", "100", "1000", "0.1%", "1%", "10%", "100%"]
2018-06-16 00:22:31 +02:00
},
{
name: "audioNoiseLevel",
2018-06-21 00:20:41 +02:00
defaultValue: "minimal",
2018-06-16 00:22:31 +02:00
options: ["minimal", "low", "medium", "high", "maximal"]
},
2018-06-30 00:34:20 +02:00
{
name: "useAudioCache",
defaultValue: true
},
2018-06-21 00:19:49 +02:00
{
name: "audioUseFixedIndices",
defaultValue: true
},
{
name: "audioFixedIndices",
defaultValue: function(){
return Math.floor(Math.random() * 30).toString(10);
}
},
{
name: "blockRequestsFromDataURL",
defaultValue: true
},
2017-11-07 00:36:44 +01:00
{
name: "displayAdvancedSettings",
defaultValue: false
},
2017-11-11 23:34:59 +01:00
{
name: "displayDescriptions",
defaultValue: false
},
2017-11-07 00:36:44 +01:00
{
name: "isStillDefault",
defaultValue: true
},
{
name: "storageVersion",
2017-12-08 20:25:08 +01:00
defaultValue: 0.3,
fixed: true
2017-11-07 00:36:44 +01:00
}
];
if ((typeof module) !== "undefined"){
module.exports = settingDefinitions;
}
else {
window.scope.settingDefinitions = settingDefinitions;
}
}());