From 02d0e5142b86db58acb629aeaa97b02f14175920 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tristan=20Dani=C3=ABl=20Maat?= Date: Sat, 6 Aug 2022 19:34:28 +0100 Subject: [PATCH] Hide flash messages during development --- src/lib/html/message-flash.html | 14 ++++++++------ src/lib/js/index.ts | 26 +++++++++++++++++++------- 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/src/lib/html/message-flash.html b/src/lib/html/message-flash.html index 956a710..94fa260 100644 --- a/src/lib/html/message-flash.html +++ b/src/lib/html/message-flash.html @@ -1,6 +1,8 @@ -{{#if flash}} -
- - {{ flash.message }} -
-{{/if}} + + {{#if flash}} +
+ + {{ flash.message }} +
+ {{/if}} +
diff --git a/src/lib/js/index.ts b/src/lib/js/index.ts index 5774bb0..5047237 100644 --- a/src/lib/js/index.ts +++ b/src/lib/js/index.ts @@ -4,7 +4,7 @@ document.addEventListener("DOMContentLoaded", () => { flashButtons.forEach((button) => { const flash = button.parentNode; - if (flash == null) { + if (flash === null) { console.error( "Unreachable because our `querySelector` includes a parent; something went very wrong" ); @@ -12,12 +12,7 @@ document.addEventListener("DOMContentLoaded", () => { } flash.addEventListener("click", () => { - if (flash == null) { - console.error("Completely unreachable."); - return; - } - - if (flash.parentNode == null) { + if (flash.parentNode === null) { console.error( "Notification not placed in DOM; something went very wrong" ); @@ -26,6 +21,23 @@ document.addEventListener("DOMContentLoaded", () => { flash.parentNode.removeChild(flash); }); + + // In development, there won't be a web server hooked up to + // this to render the flash message, so we remove it entirely + if (process.env.NODE_ENV === "development") { + if ( + flash.parentNode === null || + flash.parentNode.parentNode === null + ) { + return; + } + + console.warn("Disabling flash message"); + + // Get the containing element + const block = flash.parentNode; + flash.parentNode.parentNode.removeChild(block); + } }); });