From cecefefa57b98b24d882883a1fef19ff31a199e0 Mon Sep 17 00:00:00 2001 From: Geoff Doty Date: Thu, 27 Mar 2025 13:59:19 -0500 Subject: [PATCH] comments for signal implmentation --- src/Mite.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Mite.js b/src/Mite.js index 8a7f979..99717e0 100644 --- a/src/Mite.js +++ b/src/Mite.js @@ -1,14 +1,27 @@ -// Signal implementation +/** + * Signal + * + * Creates a signal for reactive state management + * + * @param {any} value - Initial value for the signal + * + * @returns {Object} Signal object with getter, setter, and subscription methods + */ function signal(value) { const subscribers = new Set(); return { + // gets current signal value get value() { return value; }, + + // sets a new value for the signal, notifying all subscribers set value(newValue) { value = newValue; subscribers.forEach(fn => fn()); }, + + // subscribe to value changes subscribe(fn) { subscribers.add(fn); return () => subscribers.delete(fn);