@alpinejs/persist
Advanced tools
Comparing version 3.10.5 to 3.11.0
@@ -29,2 +29,11 @@ (() => { | ||
Alpine.magic("persist", persist); | ||
Alpine.persist = (key, {get, set}, storage = localStorage) => { | ||
let initial = storageHas(key, storage) ? storageGet(key, storage) : get(); | ||
set(initial); | ||
Alpine.effect(() => { | ||
let value = get(); | ||
storageSet(key, value, storage); | ||
set(value); | ||
}); | ||
}; | ||
} | ||
@@ -31,0 +40,0 @@ function storageHas(key, storage) { |
@@ -1,1 +0,1 @@ | ||
(()=>{function g(t){let e=()=>{let n,s=localStorage;return t.interceptor((r,i,a,p,m)=>{let o=n||`_x_${p}`,l=c(o,s)?d(o,s):r;return a(l),t.effect(()=>{let u=i();f(o,u,s),a(u)}),l},r=>{r.as=i=>(n=i,r),r.using=i=>(s=i,r)})};Object.defineProperty(t,"$persist",{get:()=>e()}),t.magic("persist",e)}function c(t,e){return e.getItem(t)!==null}function d(t,e){return JSON.parse(e.getItem(t,e))}function f(t,e,n){n.setItem(t,JSON.stringify(e))}document.addEventListener("alpine:init",()=>{window.Alpine.plugin(g)});})(); | ||
(()=>{function d(t){let e=()=>{let n,l=localStorage;return t.interceptor((r,i,s,a,m)=>{let o=n||`_x_${a}`,u=f(o,l)?g(o,l):r;return s(u),t.effect(()=>{let c=i();p(o,c,l),s(c)}),u},r=>{r.as=i=>(n=i,r),r.using=i=>(l=i,r)})};Object.defineProperty(t,"$persist",{get:()=>e()}),t.magic("persist",e),t.persist=(n,{get:l,set:r},i=localStorage)=>{let s=f(n,i)?g(n,i):l();r(s),t.effect(()=>{let a=l();p(n,a,i),r(a)})}}function f(t,e){return e.getItem(t)!==null}function g(t,e){return JSON.parse(e.getItem(t,e))}function p(t,e,n){n.setItem(t,JSON.stringify(e))}document.addEventListener("alpine:init",()=>{window.Alpine.plugin(d)});})(); |
@@ -41,2 +41,11 @@ var __defProp = Object.defineProperty; | ||
Alpine.magic("persist", persist); | ||
Alpine.persist = (key, {get, set}, storage = localStorage) => { | ||
let initial = storageHas(key, storage) ? storageGet(key, storage) : get(); | ||
set(initial); | ||
Alpine.effect(() => { | ||
let value = get(); | ||
storageSet(key, value, storage); | ||
set(value); | ||
}); | ||
}; | ||
} | ||
@@ -43,0 +52,0 @@ function storageHas(key, storage) { |
@@ -28,2 +28,11 @@ // packages/persist/src/index.js | ||
Alpine.magic("persist", persist); | ||
Alpine.persist = (key, {get, set}, storage = localStorage) => { | ||
let initial = storageHas(key, storage) ? storageGet(key, storage) : get(); | ||
set(initial); | ||
Alpine.effect(() => { | ||
let value = get(); | ||
storageSet(key, value, storage); | ||
set(value); | ||
}); | ||
}; | ||
} | ||
@@ -30,0 +39,0 @@ function storageHas(key, storage) { |
{ | ||
"name": "@alpinejs/persist", | ||
"version": "3.10.5", | ||
"version": "3.11.0", | ||
"description": "Persist Alpine data across page loads", | ||
"homepage": "https://alpinejs.dev/plugins/persist", | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/alpinejs/alpine.git", | ||
"directory": "packages/persist" | ||
}, | ||
"author": "Caleb Porzio", | ||
@@ -6,0 +12,0 @@ "license": "MIT", |
@@ -32,2 +32,17 @@ export default function (Alpine) { | ||
Alpine.magic('persist', persist) | ||
Alpine.persist = (key, { get, set }, storage = localStorage) => { | ||
let initial = storageHas(key, storage) | ||
? storageGet(key, storage) | ||
: get() | ||
set(initial) | ||
Alpine.effect(() => { | ||
let value = get() | ||
storageSet(key, value, storage) | ||
set(value) | ||
}) | ||
} | ||
} | ||
@@ -34,0 +49,0 @@ |
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
7712
215
0
0