more lint cleanup
authorJustin Wind <justin.wind+git@gmail.com>
Thu, 20 Jul 2023 21:31:24 +0000 (14:31 -0700)
committerJustin Wind <justin.wind+git@gmail.com>
Thu, 20 Jul 2023 21:31:51 +0000 (14:31 -0700)
CHANGELOG.md
lib/common.js
lib/dingus.js

index a17357611fd565e289367e6aeefe60e47c1ff3d8..cd9edc785e2231a3922611e5039a52df687c9146 100644 (file)
@@ -4,7 +4,7 @@ Releases and notable changes to this project are documented here.
 
 ## [Unreleased]
 
-- matched route path stored on ctx is now string, not array
+- the matched route path stored on ctx is now string, not array
 - minor cleanups
 - no longer add missing log levels to logger objects, that is a logger problem
 - updated devDependencies
index d1abf3ec3cce231f6b0332b2dcf8a13beadf71d2..723f922b20930355d6adc53ead1fc97f6e719597 100644 (file)
@@ -308,7 +308,7 @@ const ensureLoggerLevels = (logger = {}) => {
 const unfoldHeaderLines = (lines) => {
   const foldedLineRE = /^(\t| +)(.*)$/;
   if (lines) {
-    lines.reduceRight((_, line, idx) => {
+    lines.reduceRight((_, line, idx) => { // NOSONAR
       const result = foldedLineRE.exec(line);
       if (result && idx) {
         const prevIdx = idx - 1;
index f55ad06961b4cd65b1f6ecb04e5ff711e35872cf..d8eed919a6fd992b463f2fc154edc034ff7dfdb2 100644 (file)
@@ -138,9 +138,9 @@ class Dingus {
    */
   _getAddress(req) {
     // TODO: RFC7239 Forwarded support
-    const address = (this.trustProxy && req && req.getHeader(Enum.Header.XForwardedFor)) ||
-      (this.trustProxy && req && req.getHeader(Enum.Header.XRealIP)) ||
-      (req && req.connection && req.connection.remoteAddress) ||
+    const address = (this.trustProxy && req?.getHeader(Enum.Header.XForwardedFor)) ||
+      (this.trustProxy && req?.getHeader(Enum.Header.XRealIP)) ||
+      (req?.connection?.remoteAddress) ||
       '';
     return address.split(/\s*,\s*/u)[0];
   }
@@ -152,8 +152,8 @@ class Dingus {
    */
   _getProtocol(req) {
     // TODO: RFC7239 Forwarded support
-    const protocol = (this.trustProxy && req && req.getHeader(Enum.Header.XForwardedProto)) ||
-      ((req && req.connection && req.connection.encrypted) ? 'https' : 'http');
+    const protocol = (this.trustProxy && req?.getHeader(Enum.Header.XForwardedProto)) ||
+      ((req?.connection?.encrypted) ? 'https' : 'http');
     return protocol.split(/\s*,\s*/u)[0];
   }
 
@@ -538,7 +538,7 @@ class Dingus {
     // We will not deal with any subdirs, nor any dot-files.
     // (Note that we could not deal with subdirs even if we wanted, due to simple router matching scheme.)
     if (fileName.indexOf(path.sep) >= 0
-    ||  fileName.charAt(0) === '.') {
+    ||  fileName.startsWith('.')) {
       this.logger.debug(_scope, 'rejected filename', { fileName });
       return this.handlerNotFound(req, res, ctx);
     }
@@ -651,7 +651,7 @@ class Dingus {
       res.setHeader(Enum.Header.ContentType, Enum.ContentType.TextPlain);
     }
 
-    if (err && err.statusCode) {
+    if (err?.statusCode) {
       res.statusCode = err.statusCode;
       body = this.renderError(res.getHeader(Enum.Header.ContentType), err);
       this.logger.debug(_scope, 'handler error', { err, req, res, ctx });