Index: lib/filterComposer.js |
=================================================================== |
--- a/lib/filterComposer.js |
+++ b/lib/filterComposer.js |
@@ -12,39 +12,34 @@ |
* GNU General Public License for more details. |
* |
* You should have received a copy of the GNU General Public License |
* along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
*/ |
/** @module filterComposer */ |
-"use strict"; |
- |
-const {defaultMatcher} = require("matcher"); |
-const {RegExpFilter} = require("filterClasses"); |
-const {FilterNotifier} = require("filterNotifier"); |
-const {Prefs} = require("prefs"); |
-const {extractHostFromFrame, stringifyURL, isThirdParty} = require("url"); |
-const {getKey, checkWhitelisted} = require("whitelisting"); |
-const {port} = require("messaging"); |
-const info = require("info"); |
+import {defaultMatcher} from "matcher"; |
+import {RegExpFilter} from "filterClasses"; |
+import {FilterNotifier} from "filterNotifier"; |
+import {Prefs} from "prefs"; |
+import {extractHostFromFrame, stringifyURL, isThirdParty} from "url"; |
+import {getKey, checkWhitelisted} from "whitelisting"; |
+import {port} from "messaging"; |
+import info from "info"; |
let readyPages = new ext.PageMap(); |
/** |
* Checks whether the given page is ready to use the filter composer |
* |
* @param {Page} page |
* @return {boolean} |
*/ |
-exports.isPageReady = page => |
-{ |
- return readyPages.has(page); |
-}; |
+export const isPageReady = page => readyPages.has(page); |
function isValidString(s) |
{ |
return s && s.indexOf("\0") == -1; |
} |
function escapeChar(chr) |
{ |
@@ -55,42 +50,36 @@ |
// in elemhide filters, and therefore must be escaped based on their |
// char code as well. |
if (code <= 0x1F || code == 0x7F || /[\d{}]/.test(chr)) |
return "\\" + code.toString(16) + " "; |
return "\\" + chr; |
} |
-let escapeCSS = |
/** |
* Escapes a token (e.g. tag, id, class or attribute) to be used in |
* CSS selectors. |
* |
* @param {string} s |
* @return {string} |
* @static |
*/ |
-exports.escapeCSS = s => |
-{ |
- return s.replace(/^[\d-]|[^\w\-\u0080-\uFFFF]/g, escapeChar); |
-}; |
+export const escapeCSS = s => s.replace(/^[\d-]|[^\w\-\u0080-\uFFFF]/g, |
+ escapeChar); |
-let quoteCSS = |
/** |
* Quotes a string to be used as attribute value in CSS selectors. |
* |
* @param {string} value |
* @return {string} |
* @static |
*/ |
-exports.quoteCSS = value => |
-{ |
- return '"' + value.replace(/["\\{}\x00-\x1F\x7F]/g, escapeChar) + '"'; |
-}; |
+export const quoteCSS = value => '"' + value.replace(/["\\{}\x00-\x1F\x7F]/g, |
+ escapeChar) + '"'; |
function composeFilters(details) |
{ |
let {page, frame} = details; |
let filters = []; |
let selectors = []; |
if (!checkWhitelisted(page, frame)) |