zustic 1.0.4 → 1.0.5

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/README.md CHANGED
@@ -123,7 +123,7 @@ function Counter() {
123
123
  <p>Count: {count}</p>
124
124
  <button onClick={inc}>➕ Increment</button>
125
125
  <button onClick={dec}>➖ Decrement</button>
126
- <button onClick={reset}>🔄 Reset</button>
126
+ <button onClick={reset}>Reset</button>
127
127
  </div>
128
128
  );
129
129
  }
@@ -172,9 +172,9 @@ Extend Zustic stores with powerful middleware for logging, persistence, validati
172
172
 
173
173
  ```typescript
174
174
  const logger = <T extends object>(): Middleware<T> => (set, get) => (next) => async (partial) => {
175
- console.log('🔵 Previous State:', get());
175
+ console.log('Previous State:', get());
176
176
  await next(partial);
177
- console.log('🟢 New State:', get());
177
+ console.log('New State:', get());
178
178
  };
179
179
 
180
180
  export const useStore = create<StoreType>(
@@ -534,7 +534,7 @@ const api = createApi({
534
534
 
535
535
  ---
536
536
 
537
- ## 📱 Multi-Platform Examples
537
+ ## Multi-Platform Examples
538
538
 
539
539
  ### React Web
540
540
 
@@ -1 +1 @@
1
- "use strict";var q=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var H=Object.getOwnPropertyNames;var C=Object.prototype.hasOwnProperty;var R=(e,n)=>{for(var i in n)q(e,i,{get:n[i],enumerable:!0})},O=(e,n,i,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let c of H(n))!C.call(e,c)&&c!==i&&q(e,c,{get:()=>n[c],enumerable:!(r=k(n,c))||r.enumerable});return e};var B=e=>O(q({},"__esModule",{value:!0}),e);var j={};R(j,{createApi:()=>D});module.exports=B(j);var x=require("react");var g=require("react");function A(e,n=[]){let i,r=[],c=l=>{let s=typeof l=="function"?l(i):l;i={...i,...s},r.forEach(u=>u())},m=()=>i,F=v(c,m,n);i=e(F,m);let w=l=>(r.push(l),()=>{r=r.filter(s=>s!==l)});return()=>(0,g.useSyncExternalStore)(w,m)}var v=(e,n,i)=>!i||i.length===0?e:i.reduceRight((r,c)=>c(e,n)(r),e);function J(e){return e.charAt(0).toUpperCase()+e.slice(1)}var N=async(e,n,i,r,c,m,F)=>{var w,l,s,u,h,p,T;n({isLoading:!0});try{let t=null,o=null,a=i().cashExp,M=Date.now(),S=!1;if(F||JSON.stringify(i().arg||{})!==JSON.stringify(e||{})?S=!1:S=a>=M,S&&(t=i().data),!S&&(r!=null&&r.queryFnc)){n({isFetching:!0});let{data:y,error:E}=await((w=r==null?void 0:r.queryFnc)==null?void 0:w.call(r,e,c));y&&(t=y),E&&(o=E)}else{let y=r.queryFn(e);if(r!=null&&r.transformHeader&&(y.headers=await((l=r==null?void 0:r.transformHeader)==null?void 0:l.call(r,y==null?void 0:y.headers))),r!=null&&r.transformBody&&(y.body=await((s=r==null?void 0:r.transformBody)==null?void 0:s.call(r,y==null?void 0:y.body))),!S){n({isFetching:!0});let{data:E,error:b}=await c(y);E&&(t=E),b&&(o=b)}}return t&&(r!=null&&r.transformResponse&&(t=await((u=r.transformResponse)==null?void 0:u.call(r,t,i().data))),r!=null&&r.onSuccess&&await((h=r.onSuccess)==null?void 0:h.call(r,t))),o&&(r!=null&&r.transformError&&(o=await((p=r.transformError)==null?void 0:p.call(r,o,i().error))),r!=null&&r.onError&&await((T=r.onError)==null?void 0:T.call(r,o))),t?(n({data:t,isSuccess:!0,isLoading:!1,isFetching:!1,cashExp:S?a:Date.now()+m,arg:e}),{data:t}):(n({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:o,arg:e}),{error:o})}catch(t){return n({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:t,arg:e}),{error:t}}};async function P(e,n,i,r,c,m,F,w,l){var T,t,o;let s={arg:e,def:r,get:i,set:n};for(let a of l)await((T=a.beforeQuery)==null?void 0:T.call(a,s));let u=-1,h=async a=>{if(a<=u)throw new Error("next() called multiple times");u=a;let M=w[a];return M?M(s,()=>h(a+1)):N(e,n,i,r,c,m,F)},p=await h(0);for(let a of l)await((t=a.afterQuery)==null?void 0:t.call(a,p,s));if(p!=null&&p.error)for(let a of l)await((o=a.onError)==null?void 0:o.call(a,p.error,s));return p}function D(e){let{baseQuery:n,endpoints:i,cacheTimeout:r=30*1e3,middlewares:c=[],plugins:m=[]}=e,w=i({query:s=>({type:"query",queryFn:s.query,...s}),mutation:s=>({type:"mutation",queryFn:s.query,...s})}),l={};for(let s in w){let u=w[s],h=`use${J(s)}`+(u.type==="query"?"Query":"Mutation"),p=(u.plugins||[]).filter(t=>(t==null?void 0:t.middleware)&&typeof t.middleware=="function").map(t=>t.middleware),T=A((t,o)=>({data:null,isLoading:!1,isError:!1,isFetching:!1,isSuccess:!1,error:null,arg:null,cashExp:0,query:a=>P(a,t,o,u,n,r,!1,[...c,...u.middlewares||[],...p],[...m,...u.plugins||[]]),reFetch:()=>{var a;return P((a=o())==null?void 0:a.arg,t,o,u,n,r,!0,[...c,...u.middlewares||[],...p],[...m,...u.plugins||[]])}}));u.type==="query"&&(l[h]=(t,o)=>{let{skip:a}=o||{},{query:M,error:S,isError:y,isLoading:E,isSuccess:b,reFetch:Q,data:L}=T();return(0,x.useEffect)(()=>{a||M(t)},[JSON.stringify(t||{})]),{error:S,isError:y,isLoading:E,isSuccess:b,data:L,reFetch:Q}}),u.type==="mutation"&&(l[h]=()=>{let{query:t,...o}=T();return[t,o]})}return l}0&&(module.exports={createApi});
1
+ "use strict";var q=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var R=Object.prototype.hasOwnProperty;var O=(t,a)=>{for(var i in a)q(t,i,{get:a[i],enumerable:!0})},B=(t,a,i,r)=>{if(a&&typeof a=="object"||typeof a=="function")for(let u of C(a))!R.call(t,u)&&u!==i&&q(t,u,{get:()=>a[u],enumerable:!(r=H(a,u))||r.enumerable});return t};var v=t=>B(q({},"__esModule",{value:!0}),t);var z={};O(z,{createApi:()=>j});module.exports=v(z);var x=require("react");var A=require("react");function g(t,a=[]){let i,r=[],u=c=>{let y=typeof c=="function"?c(i):c;i={...i,...y},r.forEach(s=>s())},w=()=>i,M=J(u,w,a);i=t(M,w);let h=c=>(r.push(c),()=>{r=r.filter(y=>y!==c)});return()=>(0,A.useSyncExternalStore)(h,w)}var J=(t,a,i)=>!i||i.length===0?t:i.reduceRight((r,u)=>u(t,a)(r),t);function N(t){return t.charAt(0).toUpperCase()+t.slice(1)}var D=async(t,a,i,r,u,w,M)=>{var h,c,y,s,l,m,E;a({isLoading:!0});try{let o=null,n=null,e=i().cashExp,S=Date.now(),T=!1;if(M||JSON.stringify(i().arg||{})!==JSON.stringify(t||{})?T=!1:T=e>=S,T&&(o=i().data),!T&&(r!=null&&r.queryFnc)){a({isFetching:!0});let{data:p,error:F}=await((h=r==null?void 0:r.queryFnc)==null?void 0:h.call(r,t,u));p&&(o=p),F&&(n=F)}else{let p=r.queryFn(t);if(r!=null&&r.transformHeader&&(p.headers=await((c=r==null?void 0:r.transformHeader)==null?void 0:c.call(r,p==null?void 0:p.headers))),r!=null&&r.transformBody&&(p.body=await((y=r==null?void 0:r.transformBody)==null?void 0:y.call(r,p==null?void 0:p.body))),!T){a({isFetching:!0});let{data:F,error:b}=await u(p);F&&(o=F),b&&(n=b)}}return o&&(r!=null&&r.transformResponse&&(o=await((s=r.transformResponse)==null?void 0:s.call(r,o,i().data))),r!=null&&r.onSuccess&&await((l=r.onSuccess)==null?void 0:l.call(r,o))),n&&(r!=null&&r.transformError&&(n=await((m=r.transformError)==null?void 0:m.call(r,n,i().error))),r!=null&&r.onError&&await((E=r.onError)==null?void 0:E.call(r,n))),o?(a({data:o,isSuccess:!0,isLoading:!1,isFetching:!1,cashExp:T?e:Date.now()+w,arg:t}),{data:o}):(a({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:n,arg:t}),{error:n})}catch(o){return a({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:o,arg:t}),{error:o}}};async function P(t,a,i,r,u,w,M,h,c){var E,o,n;let y={arg:t,def:r,get:i,set:a};for(let e of c)await((E=e.beforeQuery)==null?void 0:E.call(e,y));let s=-1,l=async e=>{if(e<=s)throw new Error("next() called multiple times");s=e;let S=h[e];return S?S(y,()=>l(e+1)):D(t,a,i,r,u,w,M)},m=await l(0);for(let e of c)await((o=e.afterQuery)==null?void 0:o.call(e,m,y));if(m!=null&&m.error)for(let e of c)await((n=e.onError)==null?void 0:n.call(e,m.error,y));return m}function j(t){let{baseQuery:a,endpoints:i,cacheTimeout:r=30*1e3,middlewares:u=[],plugins:w=[]}=t,h=i({query:s=>({type:"query",queryFn:s.query,...s}),mutation:s=>({type:"mutation",queryFn:s.query,...s})}),c={},y=(w||[]).filter(s=>s.middleware&&typeof s.middleware=="function").map(s=>s.middleware);for(let s in h){let l=h[s],m=`use${N(s)}`+(l.type==="query"?"Query":"Mutation"),E=(l.plugins||[]).filter(n=>(n==null?void 0:n.middleware)&&typeof n.middleware=="function").map(n=>n.middleware),o=g((n,e)=>({data:null,isLoading:!1,isError:!1,isFetching:!1,isSuccess:!1,error:null,arg:null,cashExp:0,query:S=>P(S,n,e,l,a,r,!1,[...u,...l.middlewares||[],...E,...y],[...w,...l.plugins||[]]),reFetch:()=>{var S;return P((S=e())==null?void 0:S.arg,n,e,l,a,r,!0,[...u,...l.middlewares||[],...E,...y],[...w,...l.plugins||[]])}}));l.type==="query"&&(c[m]=(n,e)=>{let{skip:S}=e||{},{query:T,error:p,isError:F,isLoading:b,isSuccess:Q,reFetch:L,data:k}=o();return(0,x.useEffect)(()=>{S||T(n)},[JSON.stringify(n||{})]),{error:p,isError:F,isLoading:b,isSuccess:Q,data:k,reFetch:L}}),l.type==="mutation"&&(c[m]=()=>{let{query:n,...e}=o();return[n,e]})}return c}0&&(module.exports={createApi});
@@ -1 +1 @@
1
- import{a as Q}from"../chunk-SISWF3T4.mjs";import{useEffect as k}from"react";function x(s){return s.charAt(0).toUpperCase()+s.slice(1)}var H=async(s,u,y,r,h,q,A)=>{var E,l,t,o,m,c,w;u({isLoading:!0});try{let n=null,a=null,i=y().cashExp,S=Date.now(),p=!1;if(A||JSON.stringify(y().arg||{})!==JSON.stringify(s||{})?p=!1:p=i>=S,p&&(n=y().data),!p&&(r!=null&&r.queryFnc)){u({isFetching:!0});let{data:e,error:F}=await((E=r==null?void 0:r.queryFnc)==null?void 0:E.call(r,s,h));e&&(n=e),F&&(a=F)}else{let e=r.queryFn(s);if(r!=null&&r.transformHeader&&(e.headers=await((l=r==null?void 0:r.transformHeader)==null?void 0:l.call(r,e==null?void 0:e.headers))),r!=null&&r.transformBody&&(e.body=await((t=r==null?void 0:r.transformBody)==null?void 0:t.call(r,e==null?void 0:e.body))),!p){u({isFetching:!0});let{data:F,error:b}=await h(e);F&&(n=F),b&&(a=b)}}return n&&(r!=null&&r.transformResponse&&(n=await((o=r.transformResponse)==null?void 0:o.call(r,n,y().data))),r!=null&&r.onSuccess&&await((m=r.onSuccess)==null?void 0:m.call(r,n))),a&&(r!=null&&r.transformError&&(a=await((c=r.transformError)==null?void 0:c.call(r,a,y().error))),r!=null&&r.onError&&await((w=r.onError)==null?void 0:w.call(r,a))),n?(u({data:n,isSuccess:!0,isLoading:!1,isFetching:!1,cashExp:p?i:Date.now()+q,arg:s}),{data:n}):(u({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:a,arg:s}),{error:a})}catch(n){return u({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:n,arg:s}),{error:n}}};async function M(s,u,y,r,h,q,A,E,l){var w,n,a;let t={arg:s,def:r,get:y,set:u};for(let i of l)await((w=i.beforeQuery)==null?void 0:w.call(i,t));let o=-1,m=async i=>{if(i<=o)throw new Error("next() called multiple times");o=i;let S=E[i];return S?S(t,()=>m(i+1)):H(s,u,y,r,h,q,A)},c=await m(0);for(let i of l)await((n=i.afterQuery)==null?void 0:n.call(i,c,t));if(c!=null&&c.error)for(let i of l)await((a=i.onError)==null?void 0:a.call(i,c.error,t));return c}function O(s){let{baseQuery:u,endpoints:y,cacheTimeout:r=30*1e3,middlewares:h=[],plugins:q=[]}=s,E=y({query:t=>({type:"query",queryFn:t.query,...t}),mutation:t=>({type:"mutation",queryFn:t.query,...t})}),l={};for(let t in E){let o=E[t],m=`use${x(t)}`+(o.type==="query"?"Query":"Mutation"),c=(o.plugins||[]).filter(n=>(n==null?void 0:n.middleware)&&typeof n.middleware=="function").map(n=>n.middleware),w=Q((n,a)=>({data:null,isLoading:!1,isError:!1,isFetching:!1,isSuccess:!1,error:null,arg:null,cashExp:0,query:i=>M(i,n,a,o,u,r,!1,[...h,...o.middlewares||[],...c],[...q,...o.plugins||[]]),reFetch:()=>{var i;return M((i=a())==null?void 0:i.arg,n,a,o,u,r,!0,[...h,...o.middlewares||[],...c],[...q,...o.plugins||[]])}}));o.type==="query"&&(l[m]=(n,a)=>{let{skip:i}=a||{},{query:S,error:p,isError:e,isLoading:F,isSuccess:b,reFetch:T,data:g}=w();return k(()=>{i||S(n)},[JSON.stringify(n||{})]),{error:p,isError:e,isLoading:F,isSuccess:b,data:g,reFetch:T}}),o.type==="mutation"&&(l[m]=()=>{let{query:n,...a}=w();return[n,a]})}return l}export{O as createApi};
1
+ import{a as M}from"../chunk-SISWF3T4.mjs";import{useEffect as x}from"react";function H(s){return s.charAt(0).toUpperCase()+s.slice(1)}var L=async(s,u,y,r,E,F,S)=>{var q,p,m,a,o,c,h;u({isLoading:!0});try{let t=null,i=null,n=y().cashExp,l=Date.now(),w=!1;if(S||JSON.stringify(y().arg||{})!==JSON.stringify(s||{})?w=!1:w=n>=l,w&&(t=y().data),!w&&(r!=null&&r.queryFnc)){u({isFetching:!0});let{data:e,error:A}=await((q=r==null?void 0:r.queryFnc)==null?void 0:q.call(r,s,E));e&&(t=e),A&&(i=A)}else{let e=r.queryFn(s);if(r!=null&&r.transformHeader&&(e.headers=await((p=r==null?void 0:r.transformHeader)==null?void 0:p.call(r,e==null?void 0:e.headers))),r!=null&&r.transformBody&&(e.body=await((m=r==null?void 0:r.transformBody)==null?void 0:m.call(r,e==null?void 0:e.body))),!w){u({isFetching:!0});let{data:A,error:b}=await E(e);A&&(t=A),b&&(i=b)}}return t&&(r!=null&&r.transformResponse&&(t=await((a=r.transformResponse)==null?void 0:a.call(r,t,y().data))),r!=null&&r.onSuccess&&await((o=r.onSuccess)==null?void 0:o.call(r,t))),i&&(r!=null&&r.transformError&&(i=await((c=r.transformError)==null?void 0:c.call(r,i,y().error))),r!=null&&r.onError&&await((h=r.onError)==null?void 0:h.call(r,i))),t?(u({data:t,isSuccess:!0,isLoading:!1,isFetching:!1,cashExp:w?n:Date.now()+F,arg:s}),{data:t}):(u({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:i,arg:s}),{error:i})}catch(t){return u({isLoading:!1,isSuccess:!1,isFetching:!1,isError:!0,error:t,arg:s}),{error:t}}};async function Q(s,u,y,r,E,F,S,q,p){var h,t,i;let m={arg:s,def:r,get:y,set:u};for(let n of p)await((h=n.beforeQuery)==null?void 0:h.call(n,m));let a=-1,o=async n=>{if(n<=a)throw new Error("next() called multiple times");a=n;let l=q[n];return l?l(m,()=>o(n+1)):L(s,u,y,r,E,F,S)},c=await o(0);for(let n of p)await((t=n.afterQuery)==null?void 0:t.call(n,c,m));if(c!=null&&c.error)for(let n of p)await((i=n.onError)==null?void 0:i.call(n,c.error,m));return c}function R(s){let{baseQuery:u,endpoints:y,cacheTimeout:r=30*1e3,middlewares:E=[],plugins:F=[]}=s,q=y({query:a=>({type:"query",queryFn:a.query,...a}),mutation:a=>({type:"mutation",queryFn:a.query,...a})}),p={},m=(F||[]).filter(a=>a.middleware&&typeof a.middleware=="function").map(a=>a.middleware);for(let a in q){let o=q[a],c=`use${H(a)}`+(o.type==="query"?"Query":"Mutation"),h=(o.plugins||[]).filter(i=>(i==null?void 0:i.middleware)&&typeof i.middleware=="function").map(i=>i.middleware),t=M((i,n)=>({data:null,isLoading:!1,isError:!1,isFetching:!1,isSuccess:!1,error:null,arg:null,cashExp:0,query:l=>Q(l,i,n,o,u,r,!1,[...E,...o.middlewares||[],...h,...m],[...F,...o.plugins||[]]),reFetch:()=>{var l;return Q((l=n())==null?void 0:l.arg,i,n,o,u,r,!0,[...E,...o.middlewares||[],...h,...m],[...F,...o.plugins||[]])}}));o.type==="query"&&(p[c]=(i,n)=>{let{skip:l}=n||{},{query:w,error:e,isError:A,isLoading:b,isSuccess:T,reFetch:g,data:k}=t();return x(()=>{l||w(i)},[JSON.stringify(i||{})]),{error:e,isError:A,isLoading:b,isSuccess:T,data:k,reFetch:g}}),o.type==="mutation"&&(p[c]=()=>{let{query:i,...n}=t();return[i,n]})}return p}export{R as createApi};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zustic",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "A fast, minimal state management solution for React ecosystems. Works seamlessly with React, Next.js, and React Native, offering predictable state updates with a tiny footprint.",
5
5
  "scripts": {
6
6
  "build": "tsup",