diff options
Diffstat (limited to 'src/js/background.js')
-rw-r--r-- | src/js/background.js | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/src/js/background.js b/src/js/background.js new file mode 100644 index 0000000..b47cc02 --- /dev/null +++ b/src/js/background.js @@ -0,0 +1,134 @@ +/******************************************************************************* + + µBlock - a Chromium browser extension to block requests. + Copyright (C) 2014 Raymond Hill + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see {http://www.gnu.org/licenses/}. + + Home: https://github.com/gorhill/uBlock +*/ + +/* global chrome */ + +/******************************************************************************/ + +var µBlock = (function() { + +/******************************************************************************/ + +var oneSecond = 1000; +var oneMinute = 60 * oneSecond; +var oneHour = 60 * oneMinute; +var oneDay = 24 * oneHour; + +/******************************************************************************/ + +var defaultExternalLists = [ + '! Examples:', + '! https://easylist-downloads.adblockplus.org/antiadblockfilters.txt', + '! https://easylist-downloads.adblockplus.org/fb_annoyances_full.txt', + '! https://easylist-downloads.adblockplus.org/fb_annoyances_sidebar.txt', + '! https://easylist-downloads.adblockplus.org/fb_annoyances_newsfeed.txt', + '! https://easylist-downloads.adblockplus.org/yt_annoyances_full.txt', + '! https://easylist-downloads.adblockplus.org/yt_annoyances_comments.txt', + '! https://easylist-downloads.adblockplus.org/yt_annoyances_suggestions.txt', + '! https://easylist-downloads.adblockplus.org/yt_annoyances_other.txt' +].join('\n'); + +/******************************************************************************/ + +return { + name: "µBlock", + version: "0.7.0", + + userSettings: { + autoUpdate: true, + collapseBlocked: true, + contextMenuEnabled: true, + dynamicFilteringSelfie: '', + dynamicFilteringEnabled: false, + experimentalEnabled: false, + externalLists: defaultExternalLists, + logRequests: false, + parseAllABPHideFilters: true, + showIconBadge: true + }, + + // https://github.com/gorhill/uBlock/issues/180 + // Whitelist directives need to be loaded once the PSL is available + netExceptionList: {}, // TODO: remove once all users are up to date + netWhitelist: {}, + netWhitelistModifyTime: 0, + + localSettings: { + blockedRequestCount: 0, + allowedRequestCount: 0 + }, + + // EasyList, EasyPrivacy and many others have an 4-day update period, + // as per list headers. + updateAssetsEvery: 75 * oneHour + 23 * oneMinute + 53 * oneSecond + 605, + projectServerRoot: 'https://raw.githubusercontent.com/gorhill/uBlock/master/', + userFiltersPath: 'assets/user/filters.txt', + pslPath: 'assets/thirdparties/publicsuffix.org/list/effective_tld_names.dat', + + // permanent lists + permanentLists: { + // User + 'assets/user/filters.txt': { + group: 'default' + }, + // uBlock + 'assets/ublock/filters.txt': { + title: 'µBlock filters', + group: 'default' + }, + 'assets/ublock/privacy.txt': { + title: 'µBlock filters – Privacy', + group: 'default' + } + }, + + // current lists + remoteBlacklists: { + }, + + firstUpdateAfter: 5 * oneMinute, + nextUpdateAfter: 7 * oneHour, + + selfieMagic: 'odyxfmbsqllh', + selfieAfter: 7 * oneMinute, + + pageStores: {}, + + storageQuota: vAPI.storage.QUOTA_BYTES, + storageUsed: 0, + + noopFunc: function(){}, + + apiErrorCount: 0, + contextMenuTarget: '', + contextMenuClientX: -1, + contextMenuClientY: -1, + + // so that I don't have to care for last comma + dummy: 0 +}; + +/******************************************************************************/ + +})(); + +/******************************************************************************/ + |