From bce179acdeb6f633b78847a1eea33c2c7a618114 Mon Sep 17 00:00:00 2001 From: Azgaar Date: Wed, 21 Aug 2024 21:38:17 +0200 Subject: [PATCH] feat: slider-input - dissalow invalid numbers --- components/slider-input.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/components/slider-input.js b/components/slider-input.js index d3b84b01..f1732027 100644 --- a/components/slider-input.js +++ b/components/slider-input.js @@ -40,13 +40,17 @@ } handleEvent(e) { + const value = e.target.value; + const isNaN = Number.isNaN(Number(value)); + if (isNaN || value === "") return e.stopPropagation(); + const range = this.querySelector("input[type=range]"); const number = this.querySelector("input[type=number]"); - this.value = range.value = number.value = e.target.value; + this.value = range.value = number.value = value; this.dispatchEvent( new CustomEvent(e.type, { - detail: {value: e.target.value}, + detail: {value}, bubbles: true, composed: true })