From 3122a4e8068f71e64dcc46fc6c52957be3927f06 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Mon, 10 Jan 2022 00:05:01 +0100 Subject: build: Add eslint-plugin-security MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This would run as part of gitlab SAST (if it didn't time out). Signed-off-by: Kristóf Marussy --- .eslintrc.cjs | 1 + package.json | 1 + packages/main/src/utils/log.ts | 26 +++++++++++--------------- packages/renderer/src/utils/log.ts | 4 ++-- packages/service-preload/src/utils/log.ts | 4 ++-- yarn.lock | 26 ++++++++++++++++++++++++++ 6 files changed, 43 insertions(+), 19 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 85c928c..5587ea7 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -13,6 +13,7 @@ module.exports = { 'plugin:jest/style', 'plugin:prettier/recommended', 'plugin:promise/recommended', + 'plugin:security/recommended', 'plugin:unicorn/recommended', ], env: { diff --git a/package.json b/package.json index 819f26a..d8b27b1 100644 --- a/package.json +++ b/package.json @@ -74,6 +74,7 @@ "eslint-plugin-promise": "^6.0.0", "eslint-plugin-react": "^7.28.0", "eslint-plugin-react-hooks": "^4.3.0", + "eslint-plugin-security": "^1.4.0", "eslint-plugin-unicorn": "^40.0.0", "git-repo-info": "^2.1.1", "jest": "^27.4.7", diff --git a/packages/main/src/utils/log.ts b/packages/main/src/utils/log.ts index 0a632d8..d9748f4 100644 --- a/packages/main/src/utils/log.ts +++ b/packages/main/src/utils/log.ts @@ -29,23 +29,19 @@ if (import.meta.env?.DEV) { loglevel.setLevel('info'); } -const COLORS: Partial> = { - TRACE: chalk.magenta, - DEBUG: chalk.cyan, - INFO: chalk.blue, - WARN: chalk.yellow, - ERROR: chalk.red, - CRITICAL: chalk.red, -}; - -function getColor(level: string): ChalkInstance { - return COLORS[level] ?? chalk.gray; -} +const COLORS: Map = new Map([ + ['TRACE', chalk.magenta], + ['DEBUG', chalk.cyan], + ['INFO', chalk.blue], + ['WARN', chalk.yellow], + ['ERROR', chalk.red], + ['CRITICAL', chalk.red], +]); prefix.reg(loglevel); prefix.apply(loglevel, { format(level, name, timestamp) { - const levelColor = getColor(level); + const levelColor = COLORS.get(level) ?? chalk.gray; const timeStr = timestamp.toString(); const nameStr = typeof name === 'undefined' @@ -62,7 +58,7 @@ export function getLogger(loggerName: string): loglevel.Logger { export function silenceLogger(): void { loglevel.disableAll(); const loggers = loglevel.getLoggers(); - Object.keys(loggers).forEach((loggerName) => { - loggers[loggerName].disableAll(); + Object.values(loggers).forEach((logger) => { + logger.disableAll(); }); } diff --git a/packages/renderer/src/utils/log.ts b/packages/renderer/src/utils/log.ts index c17fc2a..11664b4 100644 --- a/packages/renderer/src/utils/log.ts +++ b/packages/renderer/src/utils/log.ts @@ -44,7 +44,7 @@ export function getLogger(loggerName: string): Logger { export function silenceLogger(): void { loglevel.disableAll(); const loggers = loglevel.getLoggers(); - Object.keys(loggers).forEach((loggerName) => { - loggers[loggerName].disableAll(); + Object.values(loggers).forEach((logger) => { + logger.disableAll(); }); } diff --git a/packages/service-preload/src/utils/log.ts b/packages/service-preload/src/utils/log.ts index 0c35319..f0bcd59 100644 --- a/packages/service-preload/src/utils/log.ts +++ b/packages/service-preload/src/utils/log.ts @@ -43,7 +43,7 @@ export function getLogger(loggerName: string): Logger { export function silenceLogger(): void { loglevel.disableAll(); const loggers = loglevel.getLoggers(); - Object.keys(loggers).forEach((loggerName) => { - loggers[loggerName].disableAll(); + Object.values(loggers).forEach((logger) => { + logger.disableAll(); }); } diff --git a/yarn.lock b/yarn.lock index 6417171..290446e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4199,6 +4199,15 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-security@npm:^1.4.0": + version: 1.4.0 + resolution: "eslint-plugin-security@npm:1.4.0" + dependencies: + safe-regex: ^1.1.0 + checksum: 31807b2b42fcb3cc670a2f96b4e6f5d716015750bdcd055f0bac9f2cbec74cad0b86405696fe6d46e778d4e3cb819023995651e312c1f61e8d32db93ffb80e38 + languageName: node + linkType: hard + "eslint-plugin-unicorn@npm:^40.0.0": version: 40.0.0 resolution: "eslint-plugin-unicorn@npm:40.0.0" @@ -7830,6 +7839,13 @@ __metadata: languageName: node linkType: hard +"ret@npm:~0.1.10": + version: 0.1.15 + resolution: "ret@npm:0.1.15" + checksum: d76a9159eb8c946586567bd934358dfc08a36367b3257f7a3d7255fdd7b56597235af23c6afa0d7f0254159e8051f93c918809962ebd6df24ca2a83dbe4d4151 + languageName: node + linkType: hard + "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" @@ -7913,6 +7929,15 @@ __metadata: languageName: node linkType: hard +"safe-regex@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-regex@npm:1.1.0" + dependencies: + ret: ~0.1.10 + checksum: 9a8bba57c87a841f7997b3b951e8e403b1128c1a4fd1182f40cc1a20e2d490593d7c2a21030fadfea320c8e859219019e136f678c6689ed5960b391b822f01d5 + languageName: node + linkType: hard + "safe-regex@npm:^2.1.1": version: 2.1.1 resolution: "safe-regex@npm:2.1.1" @@ -8189,6 +8214,7 @@ __metadata: eslint-plugin-promise: ^6.0.0 eslint-plugin-react: ^7.28.0 eslint-plugin-react-hooks: ^4.3.0 + eslint-plugin-security: ^1.4.0 eslint-plugin-unicorn: ^40.0.0 git-repo-info: ^2.1.1 jest: ^27.4.7 -- cgit v1.2.3-54-g00ecf