update jsdom & jsdom-global development dependency, fix cookie test

This commit is contained in:
El RIDO 2025-02-06 08:39:25 +01:00
parent aa8f77f673
commit 740fd90db9
No known key found for this signature in database
GPG Key ID: 0F5C940A6BD81F92
3 changed files with 123 additions and 24 deletions

132
js/package-lock.json generated
View File

@ -10,8 +10,8 @@
"license": "zlib-acknowledgement", "license": "zlib-acknowledgement",
"devDependencies": { "devDependencies": {
"@peculiar/webcrypto": "^1.5.0", "@peculiar/webcrypto": "^1.5.0",
"jsdom": "^9.12.0", "jsdom": "^10.1.0",
"jsdom-global": "^2.1.1", "jsdom-global": "^3.0.2",
"jsdom-url": "^3.0.1", "jsdom-url": "^3.0.1",
"jsverify": "^0.8.3" "jsverify": "^0.8.3"
} }
@ -468,9 +468,9 @@
"dev": true "dev": true
}, },
"node_modules/jsdom": { "node_modules/jsdom": {
"version": "9.12.0", "version": "10.1.0",
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-10.1.0.tgz",
"integrity": "sha512-Qw4oqNxo4LyzkSqVIyCnEltTc4xV3g1GBaI88AvYTesWzmWHUSoMNmhBjUBa+6ldXIBJS9xoeLNJPfUAykTyxw==", "integrity": "sha512-fj76S9ky2I1DP0iTDblaHaEVWY7w8bIwxbKGyzKIuDsRuHPMg9oE8yrV5wNzDy1aRlUE/XtWpVXKFtb0P+u4Hw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"abab": "^1.0.3", "abab": "^1.0.3",
@ -484,7 +484,9 @@
"html-encoding-sniffer": "^1.0.1", "html-encoding-sniffer": "^1.0.1",
"nwmatcher": ">= 1.3.9 < 2.0.0", "nwmatcher": ">= 1.3.9 < 2.0.0",
"parse5": "^1.5.1", "parse5": "^1.5.1",
"pn": "^1.0.0",
"request": "^2.79.0", "request": "^2.79.0",
"request-promise-native": "^1.0.3",
"sax": "^1.2.1", "sax": "^1.2.1",
"symbol-tree": "^3.2.1", "symbol-tree": "^3.2.1",
"tough-cookie": "^2.3.2", "tough-cookie": "^2.3.2",
@ -495,10 +497,13 @@
} }
}, },
"node_modules/jsdom-global": { "node_modules/jsdom-global": {
"version": "2.1.1", "version": "3.0.2",
"resolved": "https://registry.npmjs.org/jsdom-global/-/jsdom-global-2.1.1.tgz", "resolved": "https://registry.npmjs.org/jsdom-global/-/jsdom-global-3.0.2.tgz",
"integrity": "sha512-nVZiKQhXZzmkFSF+AfpvErIYuzPEuBV684gYpWagtwWTLiy0p5EgQbP7gmNNA6/qxFb8l1E5w1NjES5nSBCw5A==", "integrity": "sha512-t1KMcBkz/pT5JrvcJbpUR2u/w1kO9jXctaaGJ0vZDzwFnIvGWw9IDSRciT83kIs8Bnw4qpOl8bQK08V01YgMPg==",
"dev": true "dev": true,
"peerDependencies": {
"jsdom": ">=10.0.0"
}
}, },
"node_modules/jsdom-url": { "node_modules/jsdom-url": {
"version": "3.0.1", "version": "3.0.1",
@ -601,6 +606,12 @@
"node": ">= 0.8.0" "node": ">= 0.8.0"
} }
}, },
"node_modules/lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
"node_modules/lodash.sortby": { "node_modules/lodash.sortby": {
"version": "4.7.0", "version": "4.7.0",
"resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
@ -672,6 +683,12 @@
"integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
"dev": true "dev": true
}, },
"node_modules/pn": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz",
"integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==",
"dev": true
},
"node_modules/prelude-ls": { "node_modules/prelude-ls": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
@ -764,6 +781,39 @@
"node": ">= 6" "node": ">= 6"
} }
}, },
"node_modules/request-promise-core": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
"integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
"dev": true,
"dependencies": {
"lodash": "^4.17.19"
},
"engines": {
"node": ">=0.10.0"
},
"peerDependencies": {
"request": "^2.34"
}
},
"node_modules/request-promise-native": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz",
"integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==",
"deprecated": "request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142",
"dev": true,
"dependencies": {
"request-promise-core": "1.1.4",
"stealthy-require": "^1.1.1",
"tough-cookie": "^2.3.3"
},
"engines": {
"node": ">=0.12.0"
},
"peerDependencies": {
"request": "^2.34"
}
},
"node_modules/safe-buffer": { "node_modules/safe-buffer": {
"version": "5.2.1", "version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
@ -831,6 +881,15 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/stealthy-require": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
"integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/symbol-tree": { "node_modules/symbol-tree": {
"version": "3.2.4", "version": "3.2.4",
"resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",
@ -1380,9 +1439,9 @@
"dev": true "dev": true
}, },
"jsdom": { "jsdom": {
"version": "9.12.0", "version": "10.1.0",
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz", "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-10.1.0.tgz",
"integrity": "sha512-Qw4oqNxo4LyzkSqVIyCnEltTc4xV3g1GBaI88AvYTesWzmWHUSoMNmhBjUBa+6ldXIBJS9xoeLNJPfUAykTyxw==", "integrity": "sha512-fj76S9ky2I1DP0iTDblaHaEVWY7w8bIwxbKGyzKIuDsRuHPMg9oE8yrV5wNzDy1aRlUE/XtWpVXKFtb0P+u4Hw==",
"dev": true, "dev": true,
"requires": { "requires": {
"abab": "^1.0.3", "abab": "^1.0.3",
@ -1396,7 +1455,9 @@
"html-encoding-sniffer": "^1.0.1", "html-encoding-sniffer": "^1.0.1",
"nwmatcher": ">= 1.3.9 < 2.0.0", "nwmatcher": ">= 1.3.9 < 2.0.0",
"parse5": "^1.5.1", "parse5": "^1.5.1",
"pn": "^1.0.0",
"request": "^2.79.0", "request": "^2.79.0",
"request-promise-native": "^1.0.3",
"sax": "^1.2.1", "sax": "^1.2.1",
"symbol-tree": "^3.2.1", "symbol-tree": "^3.2.1",
"tough-cookie": "^2.3.2", "tough-cookie": "^2.3.2",
@ -1407,10 +1468,11 @@
} }
}, },
"jsdom-global": { "jsdom-global": {
"version": "2.1.1", "version": "3.0.2",
"resolved": "https://registry.npmjs.org/jsdom-global/-/jsdom-global-2.1.1.tgz", "resolved": "https://registry.npmjs.org/jsdom-global/-/jsdom-global-3.0.2.tgz",
"integrity": "sha512-nVZiKQhXZzmkFSF+AfpvErIYuzPEuBV684gYpWagtwWTLiy0p5EgQbP7gmNNA6/qxFb8l1E5w1NjES5nSBCw5A==", "integrity": "sha512-t1KMcBkz/pT5JrvcJbpUR2u/w1kO9jXctaaGJ0vZDzwFnIvGWw9IDSRciT83kIs8Bnw4qpOl8bQK08V01YgMPg==",
"dev": true "dev": true,
"requires": {}
}, },
"jsdom-url": { "jsdom-url": {
"version": "3.0.1", "version": "3.0.1",
@ -1503,6 +1565,12 @@
"type-check": "~0.3.2" "type-check": "~0.3.2"
} }
}, },
"lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
"lodash.sortby": { "lodash.sortby": {
"version": "4.7.0", "version": "4.7.0",
"resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz",
@ -1562,6 +1630,12 @@
"integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
"dev": true "dev": true
}, },
"pn": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz",
"integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==",
"dev": true
},
"prelude-ls": { "prelude-ls": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
@ -1635,6 +1709,26 @@
"uuid": "^3.3.2" "uuid": "^3.3.2"
} }
}, },
"request-promise-core": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz",
"integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==",
"dev": true,
"requires": {
"lodash": "^4.17.19"
}
},
"request-promise-native": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz",
"integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==",
"dev": true,
"requires": {
"request-promise-core": "1.1.4",
"stealthy-require": "^1.1.1",
"tough-cookie": "^2.3.3"
}
},
"safe-buffer": { "safe-buffer": {
"version": "5.2.1", "version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
@ -1677,6 +1771,12 @@
"tweetnacl": "~0.14.0" "tweetnacl": "~0.14.0"
} }
}, },
"stealthy-require": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz",
"integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==",
"dev": true
},
"symbol-tree": { "symbol-tree": {
"version": "3.2.4", "version": "3.2.4",
"resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz",

View File

@ -8,8 +8,8 @@
}, },
"devDependencies": { "devDependencies": {
"@peculiar/webcrypto": "^1.5.0", "@peculiar/webcrypto": "^1.5.0",
"jsdom": "^9.12.0", "jsdom": "^10.1.0",
"jsdom-global": "^2.1.1", "jsdom-global": "^3.0.2",
"jsdom-url": "^3.0.1", "jsdom-url": "^3.0.1",
"jsverify": "^0.8.3" "jsverify": "^0.8.3"
}, },

View File

@ -234,20 +234,19 @@ describe('Helper', function () {
jsc.nearray(jsc.nearray(common.jscAlnumString())), jsc.nearray(jsc.nearray(common.jscAlnumString())),
jsc.nearray(jsc.nearray(common.jscAlnumString())), jsc.nearray(jsc.nearray(common.jscAlnumString())),
function (labels, values) { function (labels, values) {
var selectedKey = '', selectedValue = '', let selectedKey = '', selectedValue = '';
cookieArray = []; const clean = jsdom();
labels.forEach(function(item, i) { labels.forEach(function(item, i) {
var key = item.join(''), const key = item.join(''),
value = (values[i] || values[0]).join(''); value = (values[i] || values[0]).join('');
cookieArray.push(key + '=' + value); document.cookie = key + '=' + value;
if (Math.random() < 1 / i || selectedKey === key) if (Math.random() < 1 / i || selectedKey === key)
{ {
selectedKey = key; selectedKey = key;
selectedValue = value; selectedValue = value;
} }
}); });
var clean = jsdom('', {cookie: cookieArray}), const result = $.PrivateBin.Helper.getCookie(selectedKey);
result = $.PrivateBin.Helper.getCookie(selectedKey);
$.PrivateBin.Helper.reset(); $.PrivateBin.Helper.reset();
clean(); clean();
return result === selectedValue; return result === selectedValue;