Skip to content

Commit 291fa94

Browse files
fix: remove mock-local-storage to address CVE on min-document (#1496)
1 parent 3322cb3 commit 291fa94

File tree

4 files changed

+21
-91
lines changed

4 files changed

+21
-91
lines changed

app/core/utils.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,8 @@ const utils = {
120120

121121
localStorageGet: function (key) {
122122
let data;
123-
if (_.has(window.localStorage, key)) {
124-
data = window.localStorage[key];
123+
if (window.localStorage.getItem(key) != null) {
124+
data = window.localStorage.getItem(key);
125125
try {
126126
return JSON.parse(data);
127127
} catch (e) {

jest-setup.js

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,27 @@
1212

1313
require('jest');
1414
require('whatwg-fetch');
15-
require('mock-local-storage');
15+
16+
function newMockLocalStorage() {
17+
let store = {};
18+
return {
19+
getItem: (key) => {
20+
return store[key] || null;
21+
},
22+
setItem: (key, value) => {
23+
store[key] = String(value);
24+
},
25+
removeItem: (key) => {
26+
delete store[key];
27+
},
28+
clear: () => {
29+
store = {};
30+
},
31+
};
32+
}
1633

1734
Object.defineProperty(window, 'localStorage', {
18-
value: global.localStorage,
35+
value: newMockLocalStorage(),
1936
configurable:true,
2037
enumerable:true,
2138
writable:true

package-lock.json

Lines changed: 0 additions & 86 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@
5050
"jest": "^29.3.1",
5151
"jest-environment-jsdom": "^29.3.1",
5252
"mini-css-extract-plugin": "^2.6.1",
53-
"mock-local-storage": "^1.1.23",
5453
"nightwatch": "^3.12.0",
5554
"node-fetch": "^2.6.7",
5655
"redux-mock-store": "^1.5.4",

0 commit comments

Comments
 (0)