Skip to content

Commit 06c6fa2

Browse files
committed
Add regex support for the actions filtering
Related to #45.
1 parent 66e13a2 commit 06c6fa2

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
"redux-devtools": "^3.1.0",
6464
"redux-devtools-chart-monitor": "^1.1.3",
6565
"redux-devtools-diff-monitor": "^4.0.1",
66-
"redux-devtools-filter-actions": "^1.0.1",
66+
"redux-devtools-filter-actions": "^1.1.0",
6767
"redux-devtools-log-monitor": "^1.0.4",
6868
"redux-slider-monitor": "^1.0.1",
6969
"redux-thunk": "^1.0.3",

src/browser/extension/inject/pageScript.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ window.devToolsExtension = function(config = {}) {
1919

2020
function relay(type, state, action, nextActionId) {
2121
setTimeout(() => {
22+
if (type === 'STATE') addFilter(state);
2223
const message = {
2324
payload: state,
2425
action: action || '',
@@ -64,15 +65,15 @@ window.devToolsExtension = function(config = {}) {
6465
if (!window.devToolsOptions.filter) return false;
6566
const { whitelist, blacklist } = window.devToolsOptions;
6667
return (
67-
whitelist && whitelist.indexOf(action.type) === -1 ||
68-
blacklist && blacklist.indexOf(action.type) !== -1
68+
whitelist && !action.type.match(whitelist) ||
69+
blacklist && action.type.match(blacklist)
6970
);
7071
}
7172

7273
function addFilter(state) {
7374
if (window.devToolsOptions.filter) {
74-
if (window.devToolsOptions.whitelist) state.whitelist = window.devToolsOptions.whitelist;
75-
else if (window.devToolsOptions.blacklist) state.blacklist = window.devToolsOptions.blacklist;
75+
if (window.devToolsOptions.whitelist) state.whitelist = [window.devToolsOptions.whitelist];
76+
else if (window.devToolsOptions.blacklist) state.blacklist = [window.devToolsOptions.blacklist];
7677
}
7778
}
7879

@@ -131,7 +132,6 @@ window.devToolsExtension = function(config = {}) {
131132
relay('ACTION', state, liftedAction, nextActionId);
132133
} else {
133134
if (errorOccurred && !liftedState.computedStates[liftedState.currentStateIndex].error) errorOccurred = false;
134-
addFilter(liftedState);
135135
relay('STATE', liftedState);
136136
}
137137
}

src/browser/extension/options/syncOptions.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ const get = callback => {
3131
}
3232
};
3333

34-
const toArray = str => (
35-
str !== '' ? str.split('\n') : null
34+
const toReg = str => (
35+
str !== '' ? str.split('\n').join('|') : null
3636
);
3737

3838
const injectOptions = newOptions => {
3939
if (!newOptions) return;
4040
if (newOptions.filter) {
41-
newOptions.whitelist = toArray(newOptions.whitelist);
42-
newOptions.blacklist = toArray(newOptions.blacklist);
41+
newOptions.whitelist = toReg(newOptions.whitelist);
42+
newOptions.blacklist = toReg(newOptions.blacklist);
4343
}
4444

4545
options = newOptions;
@@ -61,7 +61,7 @@ export const getOptionsFromBg = () => {
6161

6262
export const isAllowed = (localOptions = options) => (
6363
!localOptions || localOptions.inject || !localOptions.urls
64-
|| location.href.match(localOptions.urls.split('\n').join('|'))
64+
|| location.href.match(toReg(localOptions.urls))
6565
);
6666

6767
export default {

0 commit comments

Comments
 (0)