diff --git a/TODO.md b/TODO.md
index b055503..01e9e26 100644
--- a/TODO.md
+++ b/TODO.md
@@ -21,6 +21,10 @@
- Move other things
- Prevent styles to be global
+# JS
+
+- Use delegation for action attributes like: https://javascript.info/event-delegation#delegation-example-actions-in-markup
+
# Content
- *Intro*
diff --git a/source/code/hippie/app.js b/source/code/hippie/app.js
index 81d2494..d5f077f 100644
--- a/source/code/hippie/app.js
+++ b/source/code/hippie/app.js
@@ -523,6 +523,22 @@ function capitalizeFirstLetter(text) {
return text.charAt(0).toUpperCase() + text.slice(1);
}
+function mapRange(value, inMin, inMax, outMin, outMax, reverse = false, clamp = false) {
+ let min = outMin;
+ let max = outMax;
+
+ if (reverse) {
+ [min, max] = [max, min];
+ }
+
+ const mapped = (value - inMin) * (max - min) / (inMax - inMin) + min;
+
+ if (clamp) {
+ return Math.max(Math.min(min, max), Math.min(Math.max(min, max), mapped));
+ }
+ return mapped;
+}
+
// CONCEPTS
// NOTE: Benutzt private Zuweisungen
diff --git a/source/screens/demo/basics.liquid b/source/screens/demo/basics.liquid
index 6d190ec..a300a21 100644
--- a/source/screens/demo/basics.liquid
+++ b/source/screens/demo/basics.liquid
@@ -495,7 +495,7 @@ tags:
oder das Element H2O
Die Zeichen in Absätzen bis hin zu ganzen Texten können, mit einem geeigneten Eingabegerät, markiert werden.
Dies stellt sich wie folgt dar:
-
Bei spiel zum markieren 😉.
+
Beispiel zum markieren 😉.
Eine Markierung kann, mittels
<mark>, auch durch den Autor geschehen. Diese stellt sich ein wenig anders dar:
Diese Worte sind markiert.
@@ -881,61 +881,63 @@ tags:
Innerhalb einer Gruppe können nicht nur Ein- und Ausgabefelder platziert werden. Andere Elemente ergänzen
Information oder lockern das Erscheinungsbild auf.
Hier nun eine Liste weiterer Arten von Eingabefeldern: