@rkrupinski/stan 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) Rafał Krupiński
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.esm.js CHANGED
@@ -1 +1 @@
1
- import{i as e,d as t,R as s,a,s as i,b as n,E as o,M as h,U as l}from"./store-Bbwcz5LJ.js";export{D as DEFAULT_STORE,S as Store,m as makeStore,r as refresh,c as reset}from"./store-Bbwcz5LJ.js";class u extends Error{}class d{#e;#t;#s;#r;constructor(e,t=Number.POSITIVE_INFINITY){this.#e=new Map,this.#t=new Map,this.#s=e,this.#r=t}#a(e){const t=this.#e.get(e);t&&(t.controller.abort(),this.#e.delete(e),this.#t.delete(e))}#c(){for(const e of this.#e.keys())if(!((this.#t.get(e)??0)>0))return void this.#a(e)}#i(e){const t=this.#e.get(e);!t||t.expiresAt>Date.now()||(this.#t.get(e)??0)>0||this.#a(e)}has(e){return this.#i(e),this.#e.has(e)}get(e){this.#i(e);const t=this.#e.get(e);if(t)return this.#e.delete(e),this.#e.set(e,t),t.value}set(e,t){this.#e.has(e)?this.#a(e):this.#e.size>=this.#s&&this.#c();const s=new AbortController;this.#e.set(e,{value:t(s.signal),controller:s,expiresAt:Date.now()+this.#r})}delete(e){return!!this.#e.has(e)&&(this.#a(e),!0)}clear(){for(const e of this.#e.keys())this.#a(e)}retain(e){this.#t.set(e,(this.#t.get(e)??0)+1)}release(e){const t=this.#t.get(e)??0;t>0&&this.#t.set(e,t-1),0===(this.#t.get(e)??0)&&(this.#t.delete(e),this.#e.size>this.#s&&this.#c())}}const f=(t,{cachePolicy:s={type:"keep-all"},keyMaker:r=e}={})=>{const a=(e=>{switch(e.type){case"keep-all":return new d(Number.POSITIVE_INFINITY,e.ttl);case"most-recent":return new d(1,e.ttl);case"lru":return new d(e.maxSize,e.ttl);default:return e}})(s);return e=>{const s=r(e);return a.has(s)||a.set(s,t(e,{retain:()=>a.retain(s),release:()=>a.release(s)})),a.get(s)}};let p=0;const g=(e,{tag:r,effects:c,areValuesEqual:i=t}={})=>{const n=e,o=`@@atom${r?`[${r}]`:""}-${++p}`;return f((e=>()=>{const t=new Set,r=new Set,h=(s=!1)=>c=>{d();const n=e.peek(o),h=a(c)?c(n):c;i(n,h)||(e.commit(o,h),[...t].forEach((e=>e(h))),s||r.forEach((e=>e(h))))},l=h(),u=h(!0),d=()=>{if(e.isReady(o))return;e.seed(o,n),e.markReady(o);let t=!0;c?.forEach((s=>s({init(s){t&&e.seed(o,s)},set:u,onSet(e){r.add(e)}}))),t=!1};return{key:o,get:()=>(d(),e.peek(o)),set:l,subscribe:e=>(t.add(e),()=>{t.delete(e)}),[s](){l(n)}}}))},k=(e,{tag:t,...s}={})=>f((r=>()=>g(a(e)?e(r):e,{tag:a(t)?t(r):t,...s})),{keyMaker:i});let E=0;const y=(e,{tag:s,areValuesEqual:r=t}={},{[o]:a,[h]:c,[l]:i}={})=>{const d=`@@selector${s?`[${s}]`:""}-${++E}`;return f((t=>()=>{const s=new Set,o=new Set;let h=null;a?.addEventListener("abort",(()=>{h?.abort(new u),t.erase(d)}),{once:!0});const l=new Set;let f=0;const p=()=>{t.resetDeps(d),s.clear(),o.forEach((e=>e())),o.clear(),h?.abort(new u),h=new AbortController;const a=e({get:(c=++f,e=>{const r=e(t),a=r.get();if(c===f&&t.trackDep(d,r.key)){const e=()=>r.subscribe((()=>{g()}));s.add(e),t.isMounted(d)&&o.add(e())}return a}),signal:h.signal});var c;(!t.has(d)||!r(t.peek(d),a))&&(t.commit(d,a),[...l].forEach((e=>e(t.peek(d)))))},g=()=>{t.isMounted(d)?p():t.markStale(d)};return{key:d,get(){switch(!0){case!t.isReady(d):p(),t.markReady(d);break;case t.depsChanged(d):p()}return t.peek(d)},subscribe:e=>(0===l.size&&(s.forEach((e=>{o.add(e())})),t.mount(d),c?.()),l.add(e),function(){l.delete(e),0===l.size&&(o.forEach((e=>{e()})),o.clear(),t.unmount(d),i?.())}),[n](){g()}}}))},w=(e,{cachePolicy:t,tag:s,...r}={})=>f(((t,{retain:c,release:i})=>n=>y(e(t),{tag:a(s)?s(t):s,...r},{[o]:n,[h]:c,[l]:i})),{cachePolicy:t,keyMaker:i});export{u as Aborted,g as atom,k as atomFamily,y as selector,w as selectorFamily};
1
+ import{i as e,d as t,R as s,a,s as i,b as n,E as o,M as h,U as l}from"./store-gmHIArt3.js";export{D as DEFAULT_STORE,S as Store,m as makeStore,r as refresh,c as reset}from"./store-gmHIArt3.js";class u extends Error{}class d{#e;#t;#s;#r;constructor(e,t=Number.POSITIVE_INFINITY){this.#e=new Map,this.#t=new Map,this.#s=e,this.#r=t}#a(e){const t=this.#e.get(e);t&&(t.controller.abort(),this.#e.delete(e),this.#t.delete(e))}#c(){for(const e of this.#e.keys())if(!((this.#t.get(e)??0)>0))return void this.#a(e)}#i(e){const t=this.#e.get(e);!t||t.expiresAt>Date.now()||(this.#t.get(e)??0)>0||this.#a(e)}has(e){return this.#i(e),this.#e.has(e)}get(e){this.#i(e);const t=this.#e.get(e);if(t)return this.#e.delete(e),this.#e.set(e,t),t.value}set(e,t){this.#e.has(e)?this.#a(e):this.#e.size>=this.#s&&this.#c();const s=new AbortController;this.#e.set(e,{value:t(s.signal),controller:s,expiresAt:Date.now()+this.#r})}delete(e){return!!this.#e.has(e)&&(this.#a(e),!0)}clear(){for(const e of this.#e.keys())this.#a(e)}retain(e){this.#t.set(e,(this.#t.get(e)??0)+1)}release(e){const t=this.#t.get(e)??0;t>0&&this.#t.set(e,t-1),0===(this.#t.get(e)??0)&&(this.#t.delete(e),this.#e.size>this.#s&&this.#c())}}const f=(t,{cachePolicy:s={type:"keep-all"},keyMaker:r=e}={})=>{const a=(e=>{switch(e.type){case"keep-all":return new d(Number.POSITIVE_INFINITY,e.ttl);case"most-recent":return new d(1,e.ttl);case"lru":return new d(e.maxSize,e.ttl);default:return e}})(s);return e=>{const s=r(e);return a.has(s)||a.set(s,t(e,{retain:()=>a.retain(s),release:()=>a.release(s)})),a.get(s)}};let p=0;const g=(e,{tag:r,effects:c,areValuesEqual:i=t}={})=>{const n=e,o=`@@atom${r?`[${r}]`:""}-${++p}`;return f(e=>()=>{const t=new Set,r=new Set,h=(s=!1)=>c=>{d();const n=e.peek(o),h=a(c)?c(n):c;i(n,h)||(e.commit(o,h),[...t].forEach(e=>e(h)),s||r.forEach(e=>e(h)))},l=h(),u=h(!0),d=()=>{if(e.isReady(o))return;e.seed(o,n),e.markReady(o);let t=!0;c?.forEach(s=>s({init(s){t&&e.seed(o,s)},set:u,onSet(e){r.add(e)}})),t=!1};return{key:o,get:()=>(d(),e.peek(o)),set:l,subscribe:e=>(t.add(e),()=>{t.delete(e)}),[s](){l(n)}}})},k=(e,{tag:t,...s}={})=>f(r=>()=>g(a(e)?e(r):e,{tag:a(t)?t(r):t,...s}),{keyMaker:i});let E=0;const y=(e,{tag:s,areValuesEqual:r=t}={},{[o]:a,[h]:c,[l]:i}={})=>{const d=`@@selector${s?`[${s}]`:""}-${++E}`;return f(t=>()=>{const s=new Set,o=new Set;let h=null;a?.addEventListener("abort",()=>{h?.abort(new u),t.erase(d)},{once:!0});const l=new Set;let f=0;const p=()=>{t.resetDeps(d),s.clear(),o.forEach(e=>e()),o.clear(),h?.abort(new u),h=new AbortController;const a=e({get:(c=++f,e=>{const r=e(t),a=r.get();if(c===f&&t.trackDep(d,r.key)){const e=()=>r.subscribe(()=>{g()});s.add(e),t.isMounted(d)&&o.add(e())}return a}),signal:h.signal});var c;(!t.has(d)||!r(t.peek(d),a))&&(t.commit(d,a),[...l].forEach(e=>e(t.peek(d))))},g=()=>{t.isMounted(d)?p():t.markStale(d)};return{key:d,get(){switch(!0){case!t.isReady(d):p(),t.markReady(d);break;case t.depsChanged(d):p()}return t.peek(d)},subscribe:e=>(0===l.size&&(s.forEach(e=>{o.add(e())}),t.mount(d),c?.()),l.add(e),function(){l.delete(e),0===l.size&&(o.forEach(e=>{e()}),o.clear(),t.unmount(d),i?.())}),[n](){g()}}})},w=(e,{cachePolicy:t,tag:s,...r}={})=>f((t,{retain:c,release:i})=>n=>y(e(t),{tag:a(s)?s(t):s,...r},{[o]:n,[h]:c,[l]:i}),{cachePolicy:t,keyMaker:i});export{u as Aborted,g as atom,k as atomFamily,y as selector,w as selectorFamily};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var e=require("./store-DxpQZiWF.js");class t extends Error{}class s{#e;#t;#s;#r;constructor(e,t=Number.POSITIVE_INFINITY){this.#e=new Map,this.#t=new Map,this.#s=e,this.#r=t}#a(e){const t=this.#e.get(e);t&&(t.controller.abort(),this.#e.delete(e),this.#t.delete(e))}#i(){for(const e of this.#e.keys())if(!((this.#t.get(e)??0)>0))return void this.#a(e)}#c(e){const t=this.#e.get(e);!t||t.expiresAt>Date.now()||(this.#t.get(e)??0)>0||this.#a(e)}has(e){return this.#c(e),this.#e.has(e)}get(e){this.#c(e);const t=this.#e.get(e);if(t)return this.#e.delete(e),this.#e.set(e,t),t.value}set(e,t){this.#e.has(e)?this.#a(e):this.#e.size>=this.#s&&this.#i();const s=new AbortController;this.#e.set(e,{value:t(s.signal),controller:s,expiresAt:Date.now()+this.#r})}delete(e){return!!this.#e.has(e)&&(this.#a(e),!0)}clear(){for(const e of this.#e.keys())this.#a(e)}retain(e){this.#t.set(e,(this.#t.get(e)??0)+1)}release(e){const t=this.#t.get(e)??0;t>0&&this.#t.set(e,t-1),0===(this.#t.get(e)??0)&&(this.#t.delete(e),this.#e.size>this.#s&&this.#i())}}const r=(t,{cachePolicy:r={type:"keep-all"},keyMaker:a=e.identity}={})=>{const i=(e=>{switch(e.type){case"keep-all":return new s(Number.POSITIVE_INFINITY,e.ttl);case"most-recent":return new s(1,e.ttl);case"lru":return new s(e.maxSize,e.ttl);default:return e}})(r);return e=>{const s=a(e);return i.has(s)||i.set(s,t(e,{retain:()=>i.retain(s),release:()=>i.release(s)})),i.get(s)}};let a=0;const i=(t,{tag:s,effects:i,areValuesEqual:c=e.dejaVu}={})=>{const o=t,n=`@@atom${s?`[${s}]`:""}-${++a}`;return r((t=>()=>{const s=new Set,r=new Set,a=(a=!1)=>i=>{u();const o=t.peek(n),h=e.isFunction(i)?i(o):i;c(o,h)||(t.commit(n,h),[...s].forEach((e=>e(h))),a||r.forEach((e=>e(h))))},h=a(),l=a(!0),u=()=>{if(t.isReady(n))return;t.seed(n,o),t.markReady(n);let e=!0;i?.forEach((s=>s({init(s){e&&t.seed(n,s)},set:l,onSet(e){r.add(e)}}))),e=!1};return{key:n,get:()=>(u(),t.peek(n)),set:h,subscribe:e=>(s.add(e),()=>{s.delete(e)}),[e.RESET_TAG](){h(o)}}}))};let c=0;const o=(s,{tag:a,areValuesEqual:i=e.dejaVu}={},{[e.ERASE_TAG]:o,[e.MOUNT_TAG]:n,[e.UNMOUNT_TAG]:h}={})=>{const l=`@@selector${a?`[${a}]`:""}-${++c}`;return r((r=>()=>{const a=new Set,c=new Set;let u=null;o?.addEventListener("abort",(()=>{u?.abort(new t),r.erase(l)}),{once:!0});const d=new Set;let p=0;const f=()=>{r.resetDeps(l),a.clear(),c.forEach((e=>e())),c.clear(),u?.abort(new t),u=new AbortController;const e=s({get:(o=++p,e=>{const t=e(r),s=t.get();if(o===p&&r.trackDep(l,t.key)){const e=()=>t.subscribe((()=>{E()}));a.add(e),r.isMounted(l)&&c.add(e())}return s}),signal:u.signal});var o;(!r.has(l)||!i(r.peek(l),e))&&(r.commit(l,e),[...d].forEach((e=>e(r.peek(l)))))},E=()=>{r.isMounted(l)?f():r.markStale(l)};return{key:l,get(){switch(!0){case!r.isReady(l):f(),r.markReady(l);break;case r.depsChanged(l):f()}return r.peek(l)},subscribe:e=>(0===d.size&&(a.forEach((e=>{c.add(e())})),r.mount(l),n?.()),d.add(e),function(){d.delete(e),0===d.size&&(c.forEach((e=>{e()})),c.clear(),r.unmount(l),h?.())}),[e.REFRESH_TAG](){E()}}}))};exports.DEFAULT_STORE=e.DEFAULT_STORE,exports.Store=e.Store,exports.makeStore=e.makeStore,exports.refresh=e.refresh,exports.reset=e.reset,exports.Aborted=t,exports.atom=i,exports.atomFamily=(t,{tag:s,...a}={})=>r((r=>()=>i(e.isFunction(t)?t(r):t,{tag:e.isFunction(s)?s(r):s,...a})),{keyMaker:e.stableStringify}),exports.selector=o,exports.selectorFamily=(t,{cachePolicy:s,tag:a,...i}={})=>r(((s,{retain:r,release:c})=>n=>o(t(s),{tag:e.isFunction(a)?a(s):a,...i},{[e.ERASE_TAG]:n,[e.MOUNT_TAG]:r,[e.UNMOUNT_TAG]:c})),{cachePolicy:s,keyMaker:e.stableStringify});
1
+ "use strict";var e=require("./store-3FOWqJUr.js");class t extends Error{}class s{#e;#t;#s;#r;constructor(e,t=Number.POSITIVE_INFINITY){this.#e=new Map,this.#t=new Map,this.#s=e,this.#r=t}#a(e){const t=this.#e.get(e);t&&(t.controller.abort(),this.#e.delete(e),this.#t.delete(e))}#i(){for(const e of this.#e.keys())if(!((this.#t.get(e)??0)>0))return void this.#a(e)}#c(e){const t=this.#e.get(e);!t||t.expiresAt>Date.now()||(this.#t.get(e)??0)>0||this.#a(e)}has(e){return this.#c(e),this.#e.has(e)}get(e){this.#c(e);const t=this.#e.get(e);if(t)return this.#e.delete(e),this.#e.set(e,t),t.value}set(e,t){this.#e.has(e)?this.#a(e):this.#e.size>=this.#s&&this.#i();const s=new AbortController;this.#e.set(e,{value:t(s.signal),controller:s,expiresAt:Date.now()+this.#r})}delete(e){return!!this.#e.has(e)&&(this.#a(e),!0)}clear(){for(const e of this.#e.keys())this.#a(e)}retain(e){this.#t.set(e,(this.#t.get(e)??0)+1)}release(e){const t=this.#t.get(e)??0;t>0&&this.#t.set(e,t-1),0===(this.#t.get(e)??0)&&(this.#t.delete(e),this.#e.size>this.#s&&this.#i())}}const r=(t,{cachePolicy:r={type:"keep-all"},keyMaker:a=e.identity}={})=>{const i=(e=>{switch(e.type){case"keep-all":return new s(Number.POSITIVE_INFINITY,e.ttl);case"most-recent":return new s(1,e.ttl);case"lru":return new s(e.maxSize,e.ttl);default:return e}})(r);return e=>{const s=a(e);return i.has(s)||i.set(s,t(e,{retain:()=>i.retain(s),release:()=>i.release(s)})),i.get(s)}};let a=0;const i=(t,{tag:s,effects:i,areValuesEqual:c=e.dejaVu}={})=>{const o=t,n=`@@atom${s?`[${s}]`:""}-${++a}`;return r(t=>()=>{const s=new Set,r=new Set,a=(a=!1)=>i=>{u();const o=t.peek(n),h=e.isFunction(i)?i(o):i;c(o,h)||(t.commit(n,h),[...s].forEach(e=>e(h)),a||r.forEach(e=>e(h)))},h=a(),l=a(!0),u=()=>{if(t.isReady(n))return;t.seed(n,o),t.markReady(n);let e=!0;i?.forEach(s=>s({init(s){e&&t.seed(n,s)},set:l,onSet(e){r.add(e)}})),e=!1};return{key:n,get:()=>(u(),t.peek(n)),set:h,subscribe:e=>(s.add(e),()=>{s.delete(e)}),[e.RESET_TAG](){h(o)}}})};let c=0;const o=(s,{tag:a,areValuesEqual:i=e.dejaVu}={},{[e.ERASE_TAG]:o,[e.MOUNT_TAG]:n,[e.UNMOUNT_TAG]:h}={})=>{const l=`@@selector${a?`[${a}]`:""}-${++c}`;return r(r=>()=>{const a=new Set,c=new Set;let u=null;o?.addEventListener("abort",()=>{u?.abort(new t),r.erase(l)},{once:!0});const d=new Set;let p=0;const f=()=>{r.resetDeps(l),a.clear(),c.forEach(e=>e()),c.clear(),u?.abort(new t),u=new AbortController;const e=s({get:(o=++p,e=>{const t=e(r),s=t.get();if(o===p&&r.trackDep(l,t.key)){const e=()=>t.subscribe(()=>{E()});a.add(e),r.isMounted(l)&&c.add(e())}return s}),signal:u.signal});var o;(!r.has(l)||!i(r.peek(l),e))&&(r.commit(l,e),[...d].forEach(e=>e(r.peek(l))))},E=()=>{r.isMounted(l)?f():r.markStale(l)};return{key:l,get(){switch(!0){case!r.isReady(l):f(),r.markReady(l);break;case r.depsChanged(l):f()}return r.peek(l)},subscribe:e=>(0===d.size&&(a.forEach(e=>{c.add(e())}),r.mount(l),n?.()),d.add(e),function(){d.delete(e),0===d.size&&(c.forEach(e=>{e()}),c.clear(),r.unmount(l),h?.())}),[e.REFRESH_TAG](){E()}}})};exports.DEFAULT_STORE=e.DEFAULT_STORE,exports.Store=e.Store,exports.makeStore=e.makeStore,exports.refresh=e.refresh,exports.reset=e.reset,exports.Aborted=t,exports.atom=i,exports.atomFamily=(t,{tag:s,...a}={})=>r(r=>()=>i(e.isFunction(t)?t(r):t,{tag:e.isFunction(s)?s(r):s,...a}),{keyMaker:e.stableStringify}),exports.selector=o,exports.selectorFamily=(t,{cachePolicy:s,tag:a,...i}={})=>r((s,{retain:r,release:c})=>n=>o(t(s),{tag:e.isFunction(a)?a(s):a,...i},{[e.ERASE_TAG]:n,[e.MOUNT_TAG]:r,[e.UNMOUNT_TAG]:c}),{cachePolicy:s,keyMaker:e.stableStringify});
package/dist/react.esm.js CHANGED
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{createContext as e,useContext as t,useMemo as n,useRef as s,useState as o,useEffect as c,useCallback as u}from"react";import{D as a,m as i,r as l,c as p}from"./store-Bbwcz5LJ.js";const m=e({store:a}),d=({store:e,children:t})=>{const s=n((()=>({store:e??i()})),[e]);return r(m.Provider,{value:s,children:t})},g=()=>t(m),h=r=>{const{store:e}=g(),t=r(e),n=s(t),[u,a]=o((()=>t.get()));let i=u;t!==n.current&&(i=t.get(),n.current=t,a(i));const l=s(new WeakMap);return l.current.has(t)||l.current.set(t,t.subscribe(a)),c((()=>{const r=l.current;return()=>{const e=r.get(t);e&&(e(),r.delete(t))}}),[t]),i},y=r=>{const{store:e}=g();return r(e).set},f=r=>[h(r),y(r)],v=r=>{const e=h(r),[t,n]=o({type:"loading"});return c((()=>{let r=!0;return n({type:"loading"}),e.then((e=>{r&&n({type:"ready",value:e})}),(e=>{r&&n({type:"error",reason:e})})),()=>{r=!1}}),[e]),t},b=r=>{const{store:e}=g(),t=r(e);return u((()=>{l(t)}),[t])},j=r=>{const{store:e}=g(),t=r(e);return u((()=>{p(t)}),[t])},x=(r,e=[])=>{const{store:t}=g(),n=s(r);return c((()=>{n.current=r})),u(((...r)=>{const e={get:r=>r(t).get(),set:(r,e)=>{r(t).set(e)},reset:r=>{p(r(t))},refresh:r=>{l(r(t))}};return n.current(e)(...r)}),[t,...e])};export{d as StanProvider,y as useSetStanValue,f as useStan,x as useStanCallback,g as useStanCtx,b as useStanRefresh,j as useStanReset,h as useStanValue,v as useStanValueAsync};
1
+ import{jsx as r}from"react/jsx-runtime";import{createContext as e,useContext as t,useMemo as n,useRef as s,useState as o,useEffect as c,useCallback as u}from"react";import{D as a,m as i,r as l,c as p}from"./store-gmHIArt3.js";const m=e({store:a}),d=({store:e,children:t})=>{const s=n(()=>({store:e??i()}),[e]);return r(m.Provider,{value:s,children:t})},g=()=>t(m),h=r=>{const{store:e}=g(),t=r(e),n=s(t),[u,a]=o(()=>t.get());let i=u;t!==n.current&&(i=t.get(),n.current=t,a(i));const l=s(new WeakMap);return l.current.has(t)||l.current.set(t,t.subscribe(a)),c(()=>{const r=l.current;return()=>{const e=r.get(t);e&&(e(),r.delete(t))}},[t]),i},y=r=>{const{store:e}=g();return r(e).set},f=r=>[h(r),y(r)],v=r=>{const e=h(r),[t,n]=o({type:"loading"});return c(()=>{let r=!0;return n({type:"loading"}),e.then(e=>{r&&n({type:"ready",value:e})},e=>{r&&n({type:"error",reason:e})}),()=>{r=!1}},[e]),t},b=r=>{const{store:e}=g(),t=r(e);return u(()=>{l(t)},[t])},j=r=>{const{store:e}=g(),t=r(e);return u(()=>{p(t)},[t])},x=(r,e=[])=>{const{store:t}=g(),n=s(r);return c(()=>{n.current=r}),u((...r)=>{const e={get:r=>r(t).get(),set:(r,e)=>{r(t).set(e)},reset:r=>{p(r(t))},refresh:r=>{l(r(t))}};return n.current(e)(...r)},[t,...e])};export{d as StanProvider,y as useSetStanValue,f as useStan,x as useStanCallback,g as useStanCtx,b as useStanRefresh,j as useStanReset,h as useStanValue,v as useStanValueAsync};
package/dist/react.js CHANGED
@@ -1 +1 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("./store-DxpQZiWF.js");const s=t.createContext({store:r.DEFAULT_STORE}),n=()=>t.useContext(s),u=e=>{const{store:r}=n(),s=e(r),u=t.useRef(s),[o,a]=t.useState((()=>s.get()));let c=o;s!==u.current&&(c=s.get(),u.current=s,a(c));const l=t.useRef(new WeakMap);return l.current.has(s)||l.current.set(s,s.subscribe(a)),t.useEffect((()=>{const e=l.current;return()=>{const t=e.get(s);t&&(t(),e.delete(s))}}),[s]),c},o=e=>{const{store:t}=n();return e(t).set};exports.StanProvider=({store:n,children:u})=>{const o=t.useMemo((()=>({store:n??r.makeStore()})),[n]);return e.jsx(s.Provider,{value:o,children:u})},exports.useSetStanValue=o,exports.useStan=e=>[u(e),o(e)],exports.useStanCallback=(e,s=[])=>{const{store:u}=n(),o=t.useRef(e);return t.useEffect((()=>{o.current=e})),t.useCallback(((...e)=>{const t={get:e=>e(u).get(),set:(e,t)=>{e(u).set(t)},reset:e=>{r.reset(e(u))},refresh:e=>{r.refresh(e(u))}};return o.current(t)(...e)}),[u,...s])},exports.useStanCtx=n,exports.useStanRefresh=e=>{const{store:s}=n(),u=e(s);return t.useCallback((()=>{r.refresh(u)}),[u])},exports.useStanReset=e=>{const{store:s}=n(),u=e(s);return t.useCallback((()=>{r.reset(u)}),[u])},exports.useStanValue=u,exports.useStanValueAsync=e=>{const r=u(e),[s,n]=t.useState({type:"loading"});return t.useEffect((()=>{let e=!0;return n({type:"loading"}),r.then((t=>{e&&n({type:"ready",value:t})}),(t=>{e&&n({type:"error",reason:t})})),()=>{e=!1}}),[r]),s};
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("./store-3FOWqJUr.js");const s=t.createContext({store:r.DEFAULT_STORE}),n=()=>t.useContext(s),u=e=>{const{store:r}=n(),s=e(r),u=t.useRef(s),[o,a]=t.useState(()=>s.get());let c=o;s!==u.current&&(c=s.get(),u.current=s,a(c));const l=t.useRef(new WeakMap);return l.current.has(s)||l.current.set(s,s.subscribe(a)),t.useEffect(()=>{const e=l.current;return()=>{const t=e.get(s);t&&(t(),e.delete(s))}},[s]),c},o=e=>{const{store:t}=n();return e(t).set};exports.StanProvider=({store:n,children:u})=>{const o=t.useMemo(()=>({store:n??r.makeStore()}),[n]);return e.jsx(s.Provider,{value:o,children:u})},exports.useSetStanValue=o,exports.useStan=e=>[u(e),o(e)],exports.useStanCallback=(e,s=[])=>{const{store:u}=n(),o=t.useRef(e);return t.useEffect(()=>{o.current=e}),t.useCallback((...e)=>{const t={get:e=>e(u).get(),set:(e,t)=>{e(u).set(t)},reset:e=>{r.reset(e(u))},refresh:e=>{r.refresh(e(u))}};return o.current(t)(...e)},[u,...s])},exports.useStanCtx=n,exports.useStanRefresh=e=>{const{store:s}=n(),u=e(s);return t.useCallback(()=>{r.refresh(u)},[u])},exports.useStanReset=e=>{const{store:s}=n(),u=e(s);return t.useCallback(()=>{r.reset(u)},[u])},exports.useStanValue=u,exports.useStanValueAsync=e=>{const r=u(e),[s,n]=t.useState({type:"loading"});return t.useEffect(()=>{let e=!0;return n({type:"loading"}),r.then(t=>{e&&n({type:"ready",value:t})},t=>{e&&n({type:"error",reason:t})}),()=>{e=!1}},[r]),s};
@@ -1 +1 @@
1
- "use strict";function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var t,s;var r=e(s?t:(s=1,t=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var s,r="boolean"==typeof t.cycles&&t.cycles,i=t.cmp&&(s=t.cmp,function(e){return function(t,r){var i={key:t,value:e[t]},n={key:r,value:e[r]};return s(i,n)}}),n=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var s,o;if(Array.isArray(t)){for(o="[",s=0;s<t.length;s++)s&&(o+=","),o+=e(t[s])||"null";return o+"]"}if(null===t)return"null";if(-1!==n.indexOf(t)){if(r)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var u=n.push(t)-1,a=Object.keys(t).sort(i&&i(t));for(o="",s=0;s<a.length;s++){var l=a[s],c=e(t[l]);c&&(o&&(o+=","),o+=JSON.stringify(l)+":"+c)}return n.splice(u,1),"{"+o+"}"}}(e)}));const i=Symbol("@@refresh"),n=Symbol("@@reset"),o=Symbol("@@erase"),u=Symbol("@@mount"),a=Symbol("@@unmount"),l=["[object Function]","[object AsyncFunction]","[object GeneratorFunction]","[object AsyncGeneratorFunction]"];let c=0;class p{__v_skip=!0;key;libVersion="2.0.0";#e=new Map;#t=new Map;#s=new Map;#r=new Map;#i=new Map;constructor({tag:e}={}){this.key=`@@store${e?`[${e}]`:""}-${c++}`,"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.register(this)}#n(e){"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.send(this.key,e)}destroy(){this.#e.clear(),this.#t.clear(),this.#s.clear(),this.#r.clear(),this.#i.clear(),"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.unregister(this)}erase(e){this.#e.delete(e),this.#t.delete(e),this.#s.delete(e),this.#r.delete(e),this.#i.delete(e),this.#n({type:"DELETE",key:e})}has(e){return this.#t.has(e)}peek(e){return this.#t.get(e)}seed(e,t){this.#t.set(e,t),this.#n({type:"SET",key:e,value:t})}commit(e,t){this.#s.set(e,(this.#s.get(e)??0)+1),this.#t.set(e,t),this.#n({type:"SET",key:e,value:t})}versionOf(e){return this.#s.get(e)??0}isReady(e){return!!this.#i.get(e)}markReady(e){this.#i.set(e,!0)}markStale(e){this.#i.set(e,!1)}isMounted(e){return!!this.#r.get(e)}mount(e){this.#r.set(e,!0)}unmount(e){this.#r.set(e,!1)}resetDeps(e){const t=this.#e.get(e);t?t.clear():this.#e.set(e,new Map)}trackDep(e,t){let s=this.#e.get(e);return s||(s=new Map,this.#e.set(e,s)),!s.has(t)&&(s.set(t,this.#s.get(t)??0),!0)}depsChanged(e){const t=this.#e.get(e);if(!t||!t.size)return!1;for(const[e,s]of t.entries())if((this.#s.get(e)??0)!==s)return!0;for(const e of t.keys())if(this.depsChanged(e))return!0;return!1}entries(){return this.#t.entries()}}const h=e=>new p(e),d=h({tag:"Default"});exports.DEFAULT_STORE=d,exports.ERASE_TAG=o,exports.MOUNT_TAG=u,exports.REFRESH_TAG=i,exports.RESET_TAG=n,exports.Store=p,exports.UNMOUNT_TAG=a,exports.dejaVu=(e,t)=>e===t,exports.identity=e=>e,exports.isFunction=e=>l.includes(Object.prototype.toString.call(e)),exports.makeStore=h,exports.refresh=e=>{e[i]()},exports.reset=e=>{e[n]()},exports.stableStringify=r;
1
+ "use strict";function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var t,s;var r=e(s?t:(s=1,t=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var s,r="boolean"==typeof t.cycles&&t.cycles,i=t.cmp&&(s=t.cmp,function(e){return function(t,r){var i={key:t,value:e[t]},n={key:r,value:e[r]};return s(i,n)}}),n=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var s,o;if(Array.isArray(t)){for(o="[",s=0;s<t.length;s++)s&&(o+=","),o+=e(t[s])||"null";return o+"]"}if(null===t)return"null";if(-1!==n.indexOf(t)){if(r)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var u=n.push(t)-1,a=Object.keys(t).sort(i&&i(t));for(o="",s=0;s<a.length;s++){var l=a[s],c=e(t[l]);c&&(o&&(o+=","),o+=JSON.stringify(l)+":"+c)}return n.splice(u,1),"{"+o+"}"}}(e)}));const i=Symbol("@@refresh"),n=Symbol("@@reset"),o=Symbol("@@erase"),u=Symbol("@@mount"),a=Symbol("@@unmount"),l=["[object Function]","[object AsyncFunction]","[object GeneratorFunction]","[object AsyncGeneratorFunction]"];let c=0;class p{__v_skip=!0;key;libVersion="2.0.1";#e=new Map;#t=new Map;#s=new Map;#r=new Map;#i=new Map;constructor({tag:e}={}){this.key=`@@store${e?`[${e}]`:""}-${c++}`,"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.register(this)}#n(e){"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.send(this.key,e)}destroy(){this.#e.clear(),this.#t.clear(),this.#s.clear(),this.#r.clear(),this.#i.clear(),"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.unregister(this)}erase(e){this.#e.delete(e),this.#t.delete(e),this.#s.delete(e),this.#r.delete(e),this.#i.delete(e),this.#n({type:"DELETE",key:e})}has(e){return this.#t.has(e)}peek(e){return this.#t.get(e)}seed(e,t){this.#t.set(e,t),this.#n({type:"SET",key:e,value:t})}commit(e,t){this.#s.set(e,(this.#s.get(e)??0)+1),this.#t.set(e,t),this.#n({type:"SET",key:e,value:t})}versionOf(e){return this.#s.get(e)??0}isReady(e){return!!this.#i.get(e)}markReady(e){this.#i.set(e,!0)}markStale(e){this.#i.set(e,!1)}isMounted(e){return!!this.#r.get(e)}mount(e){this.#r.set(e,!0)}unmount(e){this.#r.set(e,!1)}resetDeps(e){const t=this.#e.get(e);t?t.clear():this.#e.set(e,new Map)}trackDep(e,t){let s=this.#e.get(e);return s||(s=new Map,this.#e.set(e,s)),!s.has(t)&&(s.set(t,this.#s.get(t)??0),!0)}depsChanged(e){const t=this.#e.get(e);if(!t||!t.size)return!1;for(const[e,s]of t.entries())if((this.#s.get(e)??0)!==s)return!0;for(const e of t.keys())if(this.depsChanged(e))return!0;return!1}entries(){return this.#t.entries()}}const h=e=>new p(e),d=h({tag:"Default"});exports.DEFAULT_STORE=d,exports.ERASE_TAG=o,exports.MOUNT_TAG=u,exports.REFRESH_TAG=i,exports.RESET_TAG=n,exports.Store=p,exports.UNMOUNT_TAG=a,exports.dejaVu=(e,t)=>e===t,exports.identity=e=>e,exports.isFunction=e=>l.includes(Object.prototype.toString.call(e)),exports.makeStore=h,exports.refresh=e=>{e[i]()},exports.reset=e=>{e[n]()},exports.stableStringify=r;
@@ -1 +1 @@
1
- function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var t,s;var i=e(s?t:(s=1,t=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var s,i="boolean"==typeof t.cycles&&t.cycles,n=t.cmp&&(s=t.cmp,function(e){return function(t,i){var n={key:t,value:e[t]},r={key:i,value:e[i]};return s(n,r)}}),r=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var s,o;if(Array.isArray(t)){for(o="[",s=0;s<t.length;s++)s&&(o+=","),o+=e(t[s])||"null";return o+"]"}if(null===t)return"null";if(-1!==r.indexOf(t)){if(i)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var a=r.push(t)-1,u=Object.keys(t).sort(n&&n(t));for(o="",s=0;s<u.length;s++){var l=u[s],c=e(t[l]);c&&(o&&(o+=","),o+=JSON.stringify(l)+":"+c)}return r.splice(a,1),"{"+o+"}"}}(e)}));const n=Symbol("@@refresh"),r=Symbol("@@reset"),o=Symbol("@@erase"),a=Symbol("@@mount"),u=Symbol("@@unmount"),l=(e,t)=>e===t,c=e=>e,h=["[object Function]","[object AsyncFunction]","[object GeneratorFunction]","[object AsyncGeneratorFunction]"],d=e=>h.includes(Object.prototype.toString.call(e)),p=e=>{e[n]()},y=e=>{e[r]()};let f=0;class v{__v_skip=!0;key;libVersion="2.0.0";#e=new Map;#t=new Map;#s=new Map;#i=new Map;#n=new Map;constructor({tag:e}={}){this.key=`@@store${e?`[${e}]`:""}-${f++}`,"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.register(this)}#r(e){"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.send(this.key,e)}destroy(){this.#e.clear(),this.#t.clear(),this.#s.clear(),this.#i.clear(),this.#n.clear(),"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.unregister(this)}erase(e){this.#e.delete(e),this.#t.delete(e),this.#s.delete(e),this.#i.delete(e),this.#n.delete(e),this.#r({type:"DELETE",key:e})}has(e){return this.#t.has(e)}peek(e){return this.#t.get(e)}seed(e,t){this.#t.set(e,t),this.#r({type:"SET",key:e,value:t})}commit(e,t){this.#s.set(e,(this.#s.get(e)??0)+1),this.#t.set(e,t),this.#r({type:"SET",key:e,value:t})}versionOf(e){return this.#s.get(e)??0}isReady(e){return!!this.#n.get(e)}markReady(e){this.#n.set(e,!0)}markStale(e){this.#n.set(e,!1)}isMounted(e){return!!this.#i.get(e)}mount(e){this.#i.set(e,!0)}unmount(e){this.#i.set(e,!1)}resetDeps(e){const t=this.#e.get(e);t?t.clear():this.#e.set(e,new Map)}trackDep(e,t){let s=this.#e.get(e);return s||(s=new Map,this.#e.set(e,s)),!s.has(t)&&(s.set(t,this.#s.get(t)??0),!0)}depsChanged(e){const t=this.#e.get(e);if(!t||!t.size)return!1;for(const[e,s]of t.entries())if((this.#s.get(e)??0)!==s)return!0;for(const e of t.keys())if(this.depsChanged(e))return!0;return!1}entries(){return this.#t.entries()}}const m=e=>new v(e),_=m({tag:"Default"});export{_ as D,o as E,a as M,r as R,v as S,u as U,d as a,n as b,y as c,l as d,c as i,m,p as r,i as s};
1
+ function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var t,s;var i=e(s?t:(s=1,t=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var s,i="boolean"==typeof t.cycles&&t.cycles,n=t.cmp&&(s=t.cmp,function(e){return function(t,i){var n={key:t,value:e[t]},r={key:i,value:e[i]};return s(n,r)}}),r=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var s,o;if(Array.isArray(t)){for(o="[",s=0;s<t.length;s++)s&&(o+=","),o+=e(t[s])||"null";return o+"]"}if(null===t)return"null";if(-1!==r.indexOf(t)){if(i)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var a=r.push(t)-1,u=Object.keys(t).sort(n&&n(t));for(o="",s=0;s<u.length;s++){var l=u[s],c=e(t[l]);c&&(o&&(o+=","),o+=JSON.stringify(l)+":"+c)}return r.splice(a,1),"{"+o+"}"}}(e)}));const n=Symbol("@@refresh"),r=Symbol("@@reset"),o=Symbol("@@erase"),a=Symbol("@@mount"),u=Symbol("@@unmount"),l=(e,t)=>e===t,c=e=>e,h=["[object Function]","[object AsyncFunction]","[object GeneratorFunction]","[object AsyncGeneratorFunction]"],d=e=>h.includes(Object.prototype.toString.call(e)),p=e=>{e[n]()},y=e=>{e[r]()};let f=0;class v{__v_skip=!0;key;libVersion="2.0.1";#e=new Map;#t=new Map;#s=new Map;#i=new Map;#n=new Map;constructor({tag:e}={}){this.key=`@@store${e?`[${e}]`:""}-${f++}`,"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.register(this)}#r(e){"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.send(this.key,e)}destroy(){this.#e.clear(),this.#t.clear(),this.#s.clear(),this.#i.clear(),this.#n.clear(),"production"!==process.env.NODE_ENV&&window.__STAN_DEVTOOLS__?.unregister(this)}erase(e){this.#e.delete(e),this.#t.delete(e),this.#s.delete(e),this.#i.delete(e),this.#n.delete(e),this.#r({type:"DELETE",key:e})}has(e){return this.#t.has(e)}peek(e){return this.#t.get(e)}seed(e,t){this.#t.set(e,t),this.#r({type:"SET",key:e,value:t})}commit(e,t){this.#s.set(e,(this.#s.get(e)??0)+1),this.#t.set(e,t),this.#r({type:"SET",key:e,value:t})}versionOf(e){return this.#s.get(e)??0}isReady(e){return!!this.#n.get(e)}markReady(e){this.#n.set(e,!0)}markStale(e){this.#n.set(e,!1)}isMounted(e){return!!this.#i.get(e)}mount(e){this.#i.set(e,!0)}unmount(e){this.#i.set(e,!1)}resetDeps(e){const t=this.#e.get(e);t?t.clear():this.#e.set(e,new Map)}trackDep(e,t){let s=this.#e.get(e);return s||(s=new Map,this.#e.set(e,s)),!s.has(t)&&(s.set(t,this.#s.get(t)??0),!0)}depsChanged(e){const t=this.#e.get(e);if(!t||!t.size)return!1;for(const[e,s]of t.entries())if((this.#s.get(e)??0)!==s)return!0;for(const e of t.keys())if(this.depsChanged(e))return!0;return!1}entries(){return this.#t.entries()}}const m=e=>new v(e),_=m({tag:"Default"});export{_ as D,o as E,a as M,r as R,v as S,u as U,d as a,n as b,y as c,l as d,c as i,m,p as r,i as s};
package/dist/vue.esm.js CHANGED
@@ -1 +1 @@
1
- import{defineComponent as e,provide as t,computed as s,inject as r,shallowRef as a,watch as u,readonly as o,isRef as l}from"vue";import{m as n,D as v,r as c,c as i}from"./store-Bbwcz5LJ.js";const m=Symbol("stan"),p=()=>r(m,{store:s((()=>v))}),d=e=>{const r=e??n();t(m,{store:s((()=>r))})},y=e({name:"StanProvider",props:{store:{type:Object,default:void 0}},setup(e,{slots:r}){let a;return t(m,{store:s((()=>e.store??(a??=n())))}),()=>r.default?.()}}),g=e=>l(e)?e.value:e,f=e=>{const{store:t}=p(),r=s((()=>g(e)(t.value))),l=a(r.value.get());return u(r,((e,t,s)=>{l.value=e.get();s(e.subscribe((e=>{l.value=e})))}),{immediate:!0,flush:"sync"}),o(l)},b=e=>{const{store:t}=p(),r=s((()=>g(e)(t.value))),o=a(r.value.get());return u(r,((e,t,s)=>{o.value=e.get();s(e.subscribe((e=>{o.value=e})))}),{immediate:!0,flush:"sync"}),s({get:()=>o.value,set:e=>{r.value.set(e)}})},h=e=>{const t=f(e),s=a({type:"loading"});return u(t,((e,t,r)=>{s.value={type:"loading"};let a=!0;r((()=>{a=!1})),e.then((e=>{a&&(s.value={type:"ready",value:e})}),(e=>{a&&(s.value={type:"error",reason:e})}))}),{immediate:!0,flush:"sync"}),o(s)},j=e=>{const{store:t}=p();return()=>{c(g(e)(t.value))}},S=e=>{const{store:t}=p();return()=>{i(g(e)(t.value))}},x=e=>{const{store:t}=p();return(...s)=>e({get:e=>e(t.value).get(),set:(e,s)=>{e(t.value).set(s)},reset:e=>{i(e(t.value))},refresh:e=>{c(e(t.value))}})(...s)};export{y as StanProvider,d as provideStan,b as useStan,x as useStanCallback,j as useStanRefresh,S as useStanReset,p as useStanStore,f as useStanValue,h as useStanValueAsync};
1
+ import{defineComponent as e,provide as t,computed as s,inject as r,shallowRef as a,watch as u,readonly as o,isRef as l}from"vue";import{m as n,D as v,r as c,c as i}from"./store-gmHIArt3.js";const m=Symbol("stan"),p=()=>r(m,{store:s(()=>v)}),d=e=>{const r=e??n();t(m,{store:s(()=>r)})},y=e({name:"StanProvider",props:{store:{type:Object,default:void 0}},setup(e,{slots:r}){let a;return t(m,{store:s(()=>e.store??(a??=n()))}),()=>r.default?.()}}),g=e=>l(e)?e.value:e,f=e=>{const{store:t}=p(),r=s(()=>g(e)(t.value)),l=a(r.value.get());return u(r,(e,t,s)=>{l.value=e.get();s(e.subscribe(e=>{l.value=e}))},{immediate:!0,flush:"sync"}),o(l)},b=e=>{const{store:t}=p(),r=s(()=>g(e)(t.value)),o=a(r.value.get());return u(r,(e,t,s)=>{o.value=e.get();s(e.subscribe(e=>{o.value=e}))},{immediate:!0,flush:"sync"}),s({get:()=>o.value,set:e=>{r.value.set(e)}})},h=e=>{const t=f(e),s=a({type:"loading"});return u(t,(e,t,r)=>{s.value={type:"loading"};let a=!0;r(()=>{a=!1}),e.then(e=>{a&&(s.value={type:"ready",value:e})},e=>{a&&(s.value={type:"error",reason:e})})},{immediate:!0,flush:"sync"}),o(s)},j=e=>{const{store:t}=p();return()=>{c(g(e)(t.value))}},S=e=>{const{store:t}=p();return()=>{i(g(e)(t.value))}},x=e=>{const{store:t}=p();return(...s)=>e({get:e=>e(t.value).get(),set:(e,s)=>{e(t.value).set(s)},reset:e=>{i(e(t.value))},refresh:e=>{c(e(t.value))}})(...s)};export{y as StanProvider,d as provideStan,b as useStan,x as useStanCallback,j as useStanRefresh,S as useStanReset,p as useStanStore,f as useStanValue,h as useStanValueAsync};
package/dist/vue.js CHANGED
@@ -1 +1 @@
1
- "use strict";var e=require("vue"),t=require("./store-DxpQZiWF.js");const s=Symbol("stan"),r=()=>e.inject(s,{store:e.computed((()=>t.DEFAULT_STORE))}),a=e.defineComponent({name:"StanProvider",props:{store:{type:Object,default:void 0}},setup(r,{slots:a}){let o;return e.provide(s,{store:e.computed((()=>r.store??(o??=t.makeStore())))}),()=>a.default?.()}}),o=t=>e.isRef(t)?t.value:t,u=t=>{const{store:s}=r(),a=e.computed((()=>o(t)(s.value))),u=e.shallowRef(a.value.get());return e.watch(a,((e,t,s)=>{u.value=e.get();s(e.subscribe((e=>{u.value=e})))}),{immediate:!0,flush:"sync"}),e.readonly(u)};exports.StanProvider=a,exports.provideStan=r=>{const a=r??t.makeStore();e.provide(s,{store:e.computed((()=>a))})},exports.useStan=t=>{const{store:s}=r(),a=e.computed((()=>o(t)(s.value))),u=e.shallowRef(a.value.get());return e.watch(a,((e,t,s)=>{u.value=e.get();s(e.subscribe((e=>{u.value=e})))}),{immediate:!0,flush:"sync"}),e.computed({get:()=>u.value,set:e=>{a.value.set(e)}})},exports.useStanCallback=e=>{const{store:s}=r();return(...r)=>e({get:e=>e(s.value).get(),set:(e,t)=>{e(s.value).set(t)},reset:e=>{t.reset(e(s.value))},refresh:e=>{t.refresh(e(s.value))}})(...r)},exports.useStanRefresh=e=>{const{store:s}=r();return()=>{t.refresh(o(e)(s.value))}},exports.useStanReset=e=>{const{store:s}=r();return()=>{t.reset(o(e)(s.value))}},exports.useStanStore=r,exports.useStanValue=u,exports.useStanValueAsync=t=>{const s=u(t),r=e.shallowRef({type:"loading"});return e.watch(s,((e,t,s)=>{r.value={type:"loading"};let a=!0;s((()=>{a=!1})),e.then((e=>{a&&(r.value={type:"ready",value:e})}),(e=>{a&&(r.value={type:"error",reason:e})}))}),{immediate:!0,flush:"sync"}),e.readonly(r)};
1
+ "use strict";var e=require("vue"),t=require("./store-3FOWqJUr.js");const s=Symbol("stan"),r=()=>e.inject(s,{store:e.computed(()=>t.DEFAULT_STORE)}),a=e.defineComponent({name:"StanProvider",props:{store:{type:Object,default:void 0}},setup(r,{slots:a}){let o;return e.provide(s,{store:e.computed(()=>r.store??(o??=t.makeStore()))}),()=>a.default?.()}}),o=t=>e.isRef(t)?t.value:t,u=t=>{const{store:s}=r(),a=e.computed(()=>o(t)(s.value)),u=e.shallowRef(a.value.get());return e.watch(a,(e,t,s)=>{u.value=e.get();s(e.subscribe(e=>{u.value=e}))},{immediate:!0,flush:"sync"}),e.readonly(u)};exports.StanProvider=a,exports.provideStan=r=>{const a=r??t.makeStore();e.provide(s,{store:e.computed(()=>a)})},exports.useStan=t=>{const{store:s}=r(),a=e.computed(()=>o(t)(s.value)),u=e.shallowRef(a.value.get());return e.watch(a,(e,t,s)=>{u.value=e.get();s(e.subscribe(e=>{u.value=e}))},{immediate:!0,flush:"sync"}),e.computed({get:()=>u.value,set:e=>{a.value.set(e)}})},exports.useStanCallback=e=>{const{store:s}=r();return(...r)=>e({get:e=>e(s.value).get(),set:(e,t)=>{e(s.value).set(t)},reset:e=>{t.reset(e(s.value))},refresh:e=>{t.refresh(e(s.value))}})(...r)},exports.useStanRefresh=e=>{const{store:s}=r();return()=>{t.refresh(o(e)(s.value))}},exports.useStanReset=e=>{const{store:s}=r();return()=>{t.reset(o(e)(s.value))}},exports.useStanStore=r,exports.useStanValue=u,exports.useStanValueAsync=t=>{const s=u(t),r=e.shallowRef({type:"loading"});return e.watch(s,(e,t,s)=>{r.value={type:"loading"};let a=!0;s(()=>{a=!1}),e.then(e=>{a&&(r.value={type:"ready",value:e})},e=>{a&&(r.value={type:"error",reason:e})})},{immediate:!0,flush:"sync"}),e.readonly(r)};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@rkrupinski/stan",
3
3
  "description": "Minimal, type-safe state management",
4
- "version": "2.0.0",
4
+ "version": "2.0.1",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.esm.js",
7
7
  "types": "./dist/index.d.ts",
@@ -36,14 +36,6 @@
36
36
  }
37
37
  },
38
38
  "sideEffects": false,
39
- "scripts": {
40
- "typecheck": "tsc",
41
- "lint": "eslint --cache --max-warnings=0",
42
- "test": "jest",
43
- "build": "rm -rf dist && rollup --config",
44
- "format": "prettier --write \"src/**/*.{ts,tsx}\"",
45
- "prepublishOnly": "yarn typecheck && yarn lint && yarn test && yarn build"
46
- },
47
39
  "dependencies": {
48
40
  "fast-json-stable-stringify": "2.1.0"
49
41
  },
@@ -58,8 +50,10 @@
58
50
  "@testing-library/dom": "10.4.0",
59
51
  "@testing-library/react": "16.2.0",
60
52
  "@types/jest": "29.5.14",
53
+ "@types/node": "^22.19.19",
61
54
  "@types/react": ">=19.0.0",
62
55
  "@types/react-dom": ">=19.0.0",
56
+ "@vue/test-utils": "^2.4.6",
63
57
  "eslint": "9.27.0",
64
58
  "eslint-import-resolver-typescript": "4.3.5",
65
59
  "eslint-plugin-import": "2.31.0",
@@ -77,8 +71,7 @@
77
71
  "tslib": "2.8.1",
78
72
  "typescript": "5.9.3",
79
73
  "typescript-eslint": "8.32.1",
80
- "vue": "^3.5.0",
81
- "@vue/test-utils": "^2.4.6"
74
+ "vue": "^3.5.0"
82
75
  },
83
76
  "peerDependencies": {
84
77
  "react": ">=19.0.0",
@@ -99,5 +92,12 @@
99
92
  "url": "git+https://github.com/rkrupinski/stan.git"
100
93
  },
101
94
  "license": "MIT",
102
- "prettier": "@rkrupinski/prettierconfig"
103
- }
95
+ "prettier": "@rkrupinski/prettierconfig",
96
+ "scripts": {
97
+ "typecheck": "tsc",
98
+ "lint": "eslint --cache --max-warnings=0",
99
+ "test": "jest",
100
+ "build": "rm -rf dist && rollup --config",
101
+ "format": "prettier --write \"src/**/*.{ts,tsx}\""
102
+ }
103
+ }