From a86c54ccda5242ad8dfc1c70d31980bdbf96af7f Mon Sep 17 00:00:00 2001 From: Sebastian Silbermann Date: Mon, 22 Jul 2024 14:15:34 +0200 Subject: [PATCH] feat: Reduce caught exceptions in prettyDom (reland) (#1323) Co-authored-by: David Rieman Co-authored-by: David Rieman --- src/pretty-dom.js | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/src/pretty-dom.js b/src/pretty-dom.js index dcff080a..155939d9 100644 --- a/src/pretty-dom.js +++ b/src/pretty-dom.js @@ -5,11 +5,19 @@ import {getDocument} from './helpers' import {getConfig} from './config' const shouldHighlight = () => { + if (typeof process === 'undefined') { + // Don't colorize in non-node environments (e.g. Browsers) + return false + } let colors + // Try to safely parse env COLORS: We will default behavior if any step fails. try { - colors = JSON.parse(process?.env?.COLORS) - } catch (e) { - // If this throws, process?.env?.COLORS wasn't parsable. Since we only + const colorsJSON = process.env?.COLORS + if (colorsJSON) { + colors = JSON.parse(colorsJSON) + } + } catch { + // If this throws, process.env?.COLORS wasn't parsable. Since we only // care about `true` or `false`, we can safely ignore the error. } @@ -18,11 +26,7 @@ const shouldHighlight = () => { return colors } else { // If `colors` is not set, colorize if we're in node. - return ( - typeof process !== 'undefined' && - process.versions !== undefined && - process.versions.node !== undefined - ) + return process.versions !== undefined && process.versions.node !== undefined } }