mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-30 11:38:50 -07:00
WebUI: add linting for regular expressions
And applies to following suggestions: * Use case-insensitive flag `i` * Use `\w` for matching characters * Sort the regex flags
This commit is contained in:
parent
e2d6cd31b2
commit
6231208ddf
4 changed files with 7 additions and 3 deletions
|
@ -2,9 +2,11 @@ import Globals from 'globals';
|
|||
import Html from 'eslint-plugin-html';
|
||||
import Js from '@eslint/js';
|
||||
import Stylistic from '@stylistic/eslint-plugin';
|
||||
import * as RegexpPlugin from 'eslint-plugin-regexp';
|
||||
|
||||
export default [
|
||||
Js.configs.recommended,
|
||||
RegexpPlugin.configs["flat/recommended"],
|
||||
Stylistic.configs["disable-legacy"],
|
||||
{
|
||||
files: [
|
||||
|
@ -20,6 +22,7 @@ export default [
|
|||
},
|
||||
plugins: {
|
||||
Html,
|
||||
RegexpPlugin,
|
||||
Stylistic
|
||||
},
|
||||
rules: {
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
"@stylistic/eslint-plugin": "*",
|
||||
"eslint": "*",
|
||||
"eslint-plugin-html": "*",
|
||||
"eslint-plugin-regexp": "*",
|
||||
"html-validate": "*",
|
||||
"i18next-parser": "*",
|
||||
"js-beautify": "*",
|
||||
|
|
|
@ -1527,8 +1527,8 @@ window.addEventListener("DOMContentLoaded", function() {
|
|||
return lowercaseStr.startsWith("http:")
|
||||
|| lowercaseStr.startsWith("https:")
|
||||
|| lowercaseStr.startsWith("magnet:")
|
||||
|| ((str.length === 40) && !(/[^0-9A-Fa-f]/.test(str))) // v1 hex-encoded SHA-1 info-hash
|
||||
|| ((str.length === 32) && !(/[^2-7A-Za-z]/.test(str))); // v1 Base32 encoded SHA-1 info-hash
|
||||
|| ((str.length === 40) && !(/[^0-9A-F]/i.test(str))) // v1 hex-encoded SHA-1 info-hash
|
||||
|| ((str.length === 32) && !(/[^2-7A-Z]/i.test(str))); // v1 Base32 encoded SHA-1 info-hash
|
||||
});
|
||||
|
||||
if (urls.length <= 0)
|
||||
|
|
|
@ -143,7 +143,7 @@ window.qBittorrent.Misc = (function() {
|
|||
* JS counterpart of the function in src/misc.cpp
|
||||
*/
|
||||
const parseHtmlLinks = function(text) {
|
||||
const exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|])/ig;
|
||||
const exp = /(\b(https?|ftp|file):\/\/[-\w+&@#/%?=~|!:,.;]*[-\w+&@#/%=~|])/gi;
|
||||
return text.replace(exp, "<a target='_blank' rel='noopener noreferrer' href='$1'>$1</a>");
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue