From fc9b58f51f21a6c16bd1587be2434a0b23ad9def Mon Sep 17 00:00:00 2001 From: natxocc Date: Wed, 25 Mar 2026 19:55:00 +0100 Subject: [PATCH] Persistencia en sigpro --- src/sigpro.js | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/sigpro.js b/src/sigpro.js index 21a26d6..6a88233 100644 --- a/src/sigpro.js +++ b/src/sigpro.js @@ -53,9 +53,9 @@ }; // ------------------------- - // --- $ = Signal puro --- + // --- $ = Signal puro + Persistencia --- // ------------------------- - const $ = (initial) => { + const $ = (initial, key = null) => { if (typeof initial === "function") { const subs = new Set(); let cached; @@ -103,6 +103,18 @@ } let value = initial; + + if (key) { + const saved = localStorage.getItem(key); + if (saved !== null) { + try { + value = JSON.parse(saved); + } catch { + value = saved; + } + } + } + const subs = new Set(); return (...args) => { @@ -110,6 +122,10 @@ const next = typeof args[0] === "function" ? args[0](value) : args[0]; if (!Object.is(value, next)) { value = next; + if (key) { + localStorage.setItem(key, JSON.stringify(value)); + } + trigger(subs); } }