From 3938a2d1adfa9b41e2ff96b31dafea3e6d33c5c2 Mon Sep 17 00:00:00 2001 From: Hao Nguyen Date: Sun, 14 Jul 2019 06:40:05 -0700 Subject: [PATCH] Allow arbitrary regex in URL pattern. --- src/background.js | 4 ++-- src/popup.html | 8 ++++---- src/scripts/main.js | 34 +++++++++++++++++++++++++++++----- 3 files changed, 35 insertions(+), 11 deletions(-) diff --git a/src/background.js b/src/background.js index f26a37f..47cf501 100644 --- a/src/background.js +++ b/src/background.js @@ -23,7 +23,7 @@ function passFilters_(url, type, filters) { switch (filter.type) { case 'urls': hasUrlFilters = true; - if (url.search(filter.urlPattern) == 0) { + if (url.search(filter.urlRegex) == 0) { allowUrls = true; } break; @@ -77,7 +77,7 @@ function loadSelectedProfile_() { } joiner.push(c); } - filter.urlPattern = joiner.join(''); + filter.urlRegex = joiner.join(''); } filters.push(filter); } diff --git a/src/popup.html b/src/popup.html index 5f474cf..a25dde4 100644 --- a/src/popup.html +++ b/src/popup.html @@ -322,17 +322,17 @@ Resource Type + ng-click="openLink('https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions')"> = 0) { + c = '\\' + c; + } else if (c == '\\') { + c = '\\\\'; + } else if (c == '*') { + c = '.*'; + } + joiner.push(c); + } + delete filter.urlPattern; + filter.urlRegex = joiner.join(''); + } + } + } + } } else { dataSource.profiles = []; }