tinybase
Version:
A reactive data store and sync engine.
2 lines (1 loc) • 12.8 kB
JavaScript
const e=e=>typeof e,t="",s=e(t),a=e(!0),l=e(0),n=e(e),o="type",r="default",i="Has",c="Ids",d="Table",u=d+"s",h=d+c,f="Row",g=f+"Count",T=f+c,b="Cell",v=b+c,C="Value",V=C+"s",w=C+c,S=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==a,p=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,...t)=>e.push(...t),M=t=>{const s=e(t);return R(s)||s==l&&I(t)?s:void 0},P=(e,t,s,a,l)=>m(l)?e.delCell(t,s,a,!0):e.setCell(t,s,a,l),k=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),A=e=>t=>{return s=(t,s)=>t+e(s),$(t).reduce(s,0);var s},N=e=>e?.size??0,j=A(N),x=A(j),D=A(x),H=(e,t)=>e?.has(t)??!1,W=e=>m(e)||0==N(e),$=e=>[...e?.values()??[]],q=e=>e.clear(),B=(e,t)=>e?.forEach(t),G=(e,t)=>e?.delete(t),K=Object,Q=e=>K.getPrototypeOf(e),U=K.entries,X=K.isFrozen,Y=e=>!m(e)&&y(Q(e),(e=>e==K.prototype||m(Q(e))),(()=>!0)),Z=K.keys,_=K.freeze,ee=(e,t)=>t in e,te=(e,t)=>(delete e[t],e),se=(e,t)=>((e=[])=>K.fromEntries(e))(((e,t)=>O(U(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Y(e)&&0==(e=>E(Z(e)))(e),le=(e,t,s,a=0)=>m(e)||!Y(e)||!a&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{F(U(e),(([e,s])=>t(s,e)))})(e,((s,a)=>{t(s,a)||te(e,a)})),!!a||!ae(e)),ne=e=>new Map(e),oe=e=>[...e?.keys()??[]],re=(e,t)=>e?.get(t),ie=(e,t)=>B(e,((e,s)=>t(s,e))),ce=(e,t,s)=>m(s)?(G(e,t),e):e?.set(t,s),de=(e,t,s,a)=>(H(e,t)?a?.(re(e,t)):ce(e,t,s()),re(e,t)),ue=(e,t,s,a=ce)=>(se(t,((t,a)=>s(e,a,t))),ie(e,(s=>ee(t,s)?0:a(e,s))),e),he=(e,t,s,a)=>{const l={};return B(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;a?.(s)||(l[n]=s)}})),l},fe=(e,t,s)=>he(e,(e=>he(e,t,s)),W,ae),ge=(e,t,s)=>he(e,(e=>fe(e,t,s)),W,ae),Te=(e,t)=>{const s=ne();return B(e,((e,a)=>s.set(a,t?.(e)??e))),s},be=e=>Te(e,Te),ve=e=>Te(e,be),Ce=(e,t,s,a,l=0)=>y((s?de:re)(e,t[l],l>E(t)-2?s:ne),(n=>{if(l>E(t)-2)return a?.(n)&&ce(e,t[l]),n;const o=Ce(n,t,s,a,l+1);return W(n)&&ce(e,t[l]),o})),Ve=JSON.stringify,we=JSON.parse,Se=e=>Ve(e,((e,t)=>t instanceof Map?K.fromEntries([...t]):t)),Ie=/^\d+$/,me=()=>{const e=[];let s=0;return[a=>(a?e.shift():null)??t+s++,t=>{Ie.test(t)&&E(e)<1e3&&z(e,t)}]},ye=e=>new Set(L(e)||m(e)?e:[e]),Re=(e,t)=>e?.add(t),pe=e=>[e,e],Le=(e,t=j)=>t(e[0])+t(e[1]),Je=()=>[ne(),ne()],Ee=e=>[...e],Fe=([e,t])=>e===t,Oe=(e,t,s)=>ce(e,t,re(e,t)==-s?void 0:s),ze=()=>{let e,s,a=!1,n=!1,c=0,I=[];const A=ne(),$=ne(),K=ne(),Q=ne(),U=ne(),X=ne(),Y=ne(),Z=ne(),Ve=ne(),Ie=ne(),Me=ne(),Pe=ne(),ke=ne(),Ae=ne(),Ne=ye(),je=ne(),xe=ne(),De=ne(),He=ne(),We=Je(),$e=Je(),qe=Je(),Be=Je(),Ge=Je(),Ke=Je(),Qe=Je(),Ue=Je(),Xe=Je(),Ye=Je(),Ze=Je(),_e=Je(),et=Je(),tt=Je(),st=Je(),at=Je(),lt=Je(),nt=Je(),ot=Je(),rt=Je(),it=Je(),ct=Je(),dt=ne(),ut=Je(),[ht,ft,gt,Tt]=(()=>{let e;const[s,a]=me(),l=ne();return[(a,n,o,r=[],i=()=>[])=>{e??=ks;const c=s(1);return ce(l,c,[a,n,o,r,i]),Re(Ce(n,o??[t],ye),c),c},(s,a,...n)=>F(((e,s=[t])=>{const a=[],l=(e,t)=>t==E(s)?z(a,e):null===s[t]?B(e,(e=>l(e,t+1))):F([s[t],null],(s=>l(re(e,s),t+1)));return l(e,0),a})(s,a),(t=>B(t,(t=>re(l,t)[0](e,...a??[],...n))))),e=>y(re(l,e),(([,s,n])=>(Ce(s,n??[t],void 0,(t=>(G(t,e),W(t)?1:0))),ce(l,e),a(e),n))),t=>y(re(l,t),(([t,,s=[],a,l])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...l(o)):m(s[r])?F(a[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),bt=e=>{if(!le(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=l||(M(e[r])!=t&&te(e,r),0))},vt=L,Ct=(t,s)=>(!e||H(Me,s)||Kt(s))&&le(t,((e,t)=>Vt(s,t,e)),(()=>Kt(s))),Vt=(e,t,s,a)=>le(a?s:mt(s,e,t),((a,l)=>y(wt(e,t,l,a),(e=>(s[l]=e,!0)),(()=>!1))),(()=>Kt(e,t))),wt=(t,s,a,l)=>e?y(re(re(Me,t),a),(e=>M(l)!=e[o]?Kt(t,s,a,l,e[r]):l),(()=>Kt(t,s,a,l))):m(M(l))?Kt(t,s,a,l):l,St=(e,t)=>le(t?e:yt(e),((t,s)=>y(It(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Qt())),It=(e,t)=>s?y(re(ke,e),(s=>M(t)!=s[o]?Qt(e,t,s[r]):t),(()=>Qt(e,t))):m(M(t))?Qt(e,t):t,mt=(e,t,s)=>(y(re(Pe,t),(([a,l])=>{B(a,((t,s)=>{ee(e,s)||(e[s]=t)})),B(l,(a=>{ee(e,a)||Kt(t,s,a)}))})),e),yt=e=>(s&&(B(Ae,((t,s)=>{ee(e,s)||(e[s]=t)})),B(Ne,(t=>{ee(e,t)||Qt(t)}))),e),Rt=e=>ue(Me,e,((e,t,s)=>{const a=ne(),l=ye();ue(de(Me,t,ne),s,((e,t,s)=>{ce(e,t,s),y(s[r],(e=>ce(a,t,e)),(()=>Re(l,t)))})),ce(Pe,t,[a,l])}),((e,t)=>{ce(Me,t),ce(Pe,t)})),pt=e=>ue(ke,e,((e,t,s)=>{ce(ke,t,s),y(s[r],(e=>ce(Ae,t,e)),(()=>Re(Ne,t)))}),((e,t)=>{ce(ke,t),ce(Ae,t),G(Ne,t)})),Lt=e=>ae(e)?ps():Ss(e),Jt=e=>ue(De,e,((e,t,s)=>Et(t,s)),((e,t)=>Nt(t))),Et=(e,t)=>ue(de(De,e,(()=>(Ht(e,1),ce(je,e,me()),ce(xe,e,ne()),ne()))),t,((t,s,a)=>Ft(e,t,s,a)),((t,s)=>jt(e,t,s))),Ft=(e,t,s,a,l)=>ue(de(t,s,(()=>(Wt(e,s,1),ne()))),a,((t,a,l)=>Ot(e,s,t,a,l)),((a,n)=>xt(e,t,s,a,n,l))),Ot=(e,t,s,a,l)=>{H(s,a)||$t(e,t,a,1);const n=re(s,a);l!==n&&(qt(e,t,a,n,l),ce(s,a,l))},zt=(e,t,s,a,l)=>y(re(t,s),(t=>Ot(e,s,t,a,l)),(()=>Ft(e,t,s,mt({[a]:l},e,s)))),Mt=e=>ae(e)?Es():Is(e),Pt=e=>ue(He,e,((e,t,s)=>kt(t,s)),((e,t)=>Dt(t))),kt=(e,t)=>{H(He,e)||Bt(e,1);const s=re(He,e);t!==s&&(Gt(e,s,t),ce(He,e,t))},At=e=>re(De,e)??Et(e,{}),Nt=e=>Et(e,{}),jt=(e,t,s)=>{const[,a]=re(je,e);a(s),Ft(e,t,s,{},!0)},xt=(e,t,s,a,l,n)=>{const o=re(re(Pe,e)?.[0],l);if(!m(o)&&!n)return Ot(e,s,a,l,o);const r=t=>{qt(e,s,t,re(a,t)),$t(e,s,t,-1),ce(a,t)};m(o)?r(l):ie(a,r),W(a)&&(Wt(e,s,-1),W(ce(t,s))&&(Ht(e,-1),ce(De,e),ce(je,e),ce(xe,e)))},Dt=e=>{const t=re(Ae,e);if(!m(t))return kt(e,t);Gt(e,re(He,e)),Bt(e,-1),ce(He,e)},Ht=(e,t)=>Oe(A,e,t),Wt=(e,t,s)=>Oe(de(Q,e,ne),t,s)&&ce(K,e,de(K,e,(()=>0))+s),$t=(e,t,s,a)=>{const l=re(xe,e),n=re(l,s)??0;(0==n&&1==a||1==n&&-1==a)&&Oe(de($,e,ne),s,a),ce(l,s,n!=-a?n+a:null),Oe(de(de(U,e,ne),t,ne),s,a)},qt=(e,t,s,a,l)=>{de(de(de(X,e,ne),t,ne),s,(()=>[a,0]))[1]=l,I[3]?.(e,t,s,l)},Bt=(e,t)=>Oe(Y,e,t),Gt=(e,t,s)=>{de(Z,e,(()=>[t,0]))[1]=s,I[4]?.(e,s)},Kt=(e,t,s,a,l)=>(z(de(de(de(Ve,e,ne),t,ne),s,(()=>[])),a),l),Qt=(e,t,s)=>(z(de(Ie,e,(()=>[])),t),s),Ut=(e,t,s)=>y(re(re(re(X,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...pe(ds(e,t,s))])),Xt=e=>y(re(Z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...pe(fs(e))])),Yt=e=>W(Ve)||W(at[e])?0:B(e?ve(Ve):Ve,((t,s)=>B(t,((t,a)=>B(t,((t,l)=>ft(at[e],[s,a,l],t))))))),Zt=e=>W(Ie)||W(lt[e])?0:B(e?Te(Ie):Ie,((t,s)=>ft(lt[e],[s],t))),_t=(e,t,s,a)=>{if(!W(e))return ft(t,a,(()=>he(e))),ie(e,((e,t)=>ft(s,[...a??[],e],1==t))),1},es=e=>{const t=gs();t!=a&&ft(We[e],void 0,t);const s=W(Ye[e]),l=W(et[e])&&W(tt[e])&&W(Xe[e])&&W(Ze[e])&&W(Ke[e])&&W(Qe[e])&&W(Ue[e])&&s&&W(qe[e])&&W(Be[e]),n=W(st[e])&&W(_e[e])&&W(Ge[e])&&W($e[e]);if(!l||!n){const t=e?[Te(A),be($),Te(K),be(Q),ve(U),ve(X)]:[A,$,K,Q,U,X];if(!l){_t(t[0],qe[e],Be[e]),B(t[1],((t,s)=>_t(t,Ke[e],Qe[e],[s]))),B(t[2],((t,s)=>{0!=t&&ft(Ue[e],[s],os(s))}));const a=ye();B(t[3],((t,l)=>{_t(t,Xe[e],Ze[e],[l])&&!s&&(ft(Ye[e],[l,null]),Re(a,l))})),s||B(t[5],((t,s)=>{if(!H(a,s)){const a=ye();B(t,(e=>B(e,(([t,s],l)=>s!==t?Re(a,l):G(e,l))))),B(a,(t=>ft(Ye[e],[s,t])))}})),B(t[4],((t,s)=>B(t,((t,a)=>_t(t,et[e],tt[e],[s,a])))))}if(!n){let s;B(t[5],((t,a)=>{let l;B(t,((t,n)=>{let o;B(t,(([t,r],i)=>{r!==t&&(ft(st[e],[a,n,i],r,t,Ut),s=l=o=1)})),o&&ft(_e[e],[a,n],Ut)})),l&&ft(Ge[e],[a],Ut)})),s&&ft($e[e],void 0,Ut)}}},ts=e=>{const t=Vs();t!=n&&ft(nt[e],void 0,t);const s=W(rt[e])&&W(it[e]),a=W(ct[e])&&W(ot[e]);if(!s||!a){const t=e?[Te(Y),Te(Z)]:[Y,Z];if(s||_t(t[0],rt[e],it[e]),!a){let s;B(t[1],(([t,a],l)=>{a!==t&&(ft(ct[e],[l],a,t,Xt),s=1)})),s&&ft(ot[e],void 0,Xt)}}},ss=(e,...t)=>(zs((()=>e(...O(t,S)))),ks),as=()=>ge(De),ls=()=>oe(De),ns=e=>oe(re(xe,S(e))),os=e=>N(re(De,S(e))),rs=e=>oe(re(De,S(e))),is=(e,t,s,a=0,l)=>{return O(J((o=re(De,S(e)),r=(e,s)=>[m(t)?s:re(e,S(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),a,m(l)?l:a+l),(([,e])=>e));var n,o,r},cs=(e,t)=>oe(re(re(De,S(e)),S(t))),ds=(e,t,s)=>re(re(re(De,S(e)),S(t)),S(s)),us=()=>he(He),hs=()=>oe(He),fs=e=>re(He,S(e)),gs=()=>!W(De),Ts=e=>H(De,S(e)),bs=(e,t)=>H(re(xe,S(e)),S(t)),vs=(e,t)=>H(re(De,S(e)),S(t)),Cs=(e,t,s)=>H(re(re(De,S(e)),S(t)),S(s)),Vs=()=>!W(He),ws=e=>H(He,S(e)),Ss=e=>ss((()=>(e=>le(e,Ct,Kt))(e)?Jt(e):0)),Is=e=>ss((()=>St(e)?Pt(e):0)),ms=e=>{try{Lt(we(e))}catch{}return ks},ys=t=>ss((()=>{if((e=le(t,(e=>le(e,bt))))&&(Rt(t),!W(De))){const e=as();ps(),Ss(e)}})),Rs=e=>ss((()=>{if(s=(e=>le(e,bt))(e)){const t=us();Os(),Es(),s=!0,pt(e),Is(t)}})),ps=()=>ss((()=>Jt({}))),Ls=e=>ss((e=>H(De,e)?Nt(e):0),e),Js=(e,t)=>ss(((e,t)=>y(re(De,e),(s=>H(s,t)?jt(e,s,t):0))),e,t),Es=()=>ss((()=>Pt({}))),Fs=()=>ss((()=>{Rt({}),e=!1})),Os=()=>ss((()=>{pt({}),s=!1})),zs=(e,t)=>{if(-1!=c){Ms();const s=e();return Ps(t),s}},Ms=()=>(-1!=c&&c++,1==c&&(I[0]?.(),ft(dt)),ks),Ps=e=>(c>0&&(c--,0==c&&(c=1,Yt(1),W(X)||es(1),Zt(1),W(Z)||ts(1),e?.(ks)&&(B(X,((e,t)=>B(e,((e,s)=>B(e,(([e],a)=>P(ks,t,s,a,e))))))),q(X),B(Z,(([e],t)=>k(ks,t,e))),q(Z)),ft(ut[0],void 0),c=-1,Yt(0),W(X)||es(0),Zt(0),W(Z)||ts(0),I[1]?.(),ft(ut[1],void 0),I[2]?.(),c=0,a=gs(),n=Vs(),F([A,$,K,Q,U,X,Ve,Y,Z,Ie],q))),ks),ks={getContent:()=>[as(),us()],getTables:as,getTableIds:ls,getTable:e=>fe(re(De,S(e))),getTableCellIds:ns,getRowCount:os,getRowIds:rs,getSortedRowIds:is,getRow:(e,t)=>he(re(re(De,S(e)),S(t))),getCellIds:cs,getCell:ds,getValues:us,getValueIds:hs,getValue:fs,hasTables:gs,hasTable:Ts,hasTableCell:bs,hasRow:vs,hasCell:Cs,hasValues:Vs,hasValue:ws,getTablesJson:()=>Se(De),getValuesJson:()=>Se(He),getJson:()=>Se([De,He]),getTablesSchemaJson:()=>Se(Me),getValuesSchemaJson:()=>Se(ke),getSchemaJson:()=>Se([Me,ke]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>ss((()=>{const t=p(e)?e():e;vt(t)&&(([e,t])=>{(ae(e)?ps:Ss)(e),(ae(t)?Es:Is)(t)})(t)})),setTables:Ss,setTable:(e,t)=>ss((e=>Ct(t,e)?Et(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>Vt(e,t,s)?Ft(e,At(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let a;return Vt(e,a,t)&&(e=S(e),Ft(e,At(e),a=((e,t)=>{const[s]=re(je,e);let a;do{a=s(t)}while(H(re(De,e),a));return a})(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(Vt(e,t,s,1)){const a=At(e);se(s,((s,l)=>zt(e,a,t,l,s)))}}),e,t),setCell:(e,t,s,a)=>ss(((e,t,s)=>y(wt(e,t,s,p(a)?a(ds(e,t,s)):a),(a=>zt(e,At(e),t,s,a)))),e,t,s),setValues:Is,setPartialValues:e=>ss((()=>St(e,1)?se(e,((e,t)=>kt(t,e))):0)),setValue:(e,t)=>ss((e=>y(It(e,p(t)?t(fs(e)):t),(t=>kt(e,t)))),e),applyChanges:e=>ss((()=>{se(e[0],((e,t)=>m(e)?Ls(t):se(e,((e,s)=>m(e)?Js(t,s):se(e,((e,a)=>P(ks,t,s,a,e))))))),se(e[1],((e,t)=>k(ks,t,e)))})),setTablesJson:ms,setValuesJson:e=>{try{Mt(we(e))}catch{}return ks},setJson:e=>ss((()=>{try{const[t,s]=we(e);Lt(t),Mt(s)}catch{ms(e)}})),setTablesSchema:ys,setValuesSchema:Rs,setSchema:(e,t)=>ss((()=>{ys(e),Rs(t)})),delTables:ps,delTable:Ls,delRow:Js,delCell:(e,t,s,a)=>ss(((e,t,s)=>y(re(De,e),(l=>y(re(l,t),(n=>H(n,s)?xt(e,l,t,n,s,a):0))))),e,t,s),delValues:Es,delValue:e=>ss((e=>H(He,e)?Dt(e):0),e),delTablesSchema:Fs,delValuesSchema:Os,delSchema:()=>ss((()=>{Fs(),Os()})),transaction:zs,startTransaction:Ms,getTransactionChanges:()=>[he(X,((e,t)=>-1===re(A,t)?void 0:he(e,((e,s)=>-1===re(re(Q,t),s)?void 0:he(e,(([,e])=>e),(e=>Fe(e)))),W,ae)),W,ae),he(Z,(([,e])=>e),(e=>Fe(e))),1],getTransactionLog:()=>[!W(X),!W(Z),ge(X,Ee,Fe),ge(Ve),he(Z,Ee,Fe),he(Ie),he(A),fe(Q),ge(U),he(Y)],finishTransaction:Ps,forEachTable:e=>B(De,((t,s)=>e(s,(e=>B(t,((t,s)=>e(s,(e=>ie(t,e))))))))),forEachTableCell:(e,t)=>ie(re(xe,S(e)),t),forEachRow:(e,t)=>B(re(De,S(e)),((e,s)=>t(s,(t=>ie(e,t))))),forEachCell:(e,t,s)=>ie(re(re(De,S(e)),S(t)),s),forEachValue:e=>ie(He,e),addSortedRowIdsListener:(e,t,s,a,l,n,o)=>{let r=is(e,t,s,a,l);return ht((()=>{const o=is(e,t,s,a,l);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,n(ks,e,t,s,a,l,r))}),Ye[o?1:0],[e,t],[ls])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Tt(e),ks),delListener:e=>(gt(e),ks),getListenerStats:()=>({hasTables:Le(We),tables:Le($e),tableIds:Le(qe),hasTable:Le(Be),table:Le(Ge),tableCellIds:Le(Ke),hasTableCell:Le(Qe,x),rowCount:Le(Ue),rowIds:Le(Xe),sortedRowIds:Le(Ye),hasRow:Le(Ze,x),row:Le(_e,x),cellIds:Le(et,x),hasCell:Le(tt,D),cell:Le(st,D),invalidCell:Le(at,D),hasValues:Le(nt),values:Le(ot),valueIds:Le(rt),hasValue:Le(it),value:Le(ct),invalidValue:Le(lt),transaction:j(dt)+Le(ut)}),isMergeable:()=>!1,createStore:ze,addListener:ht,callListeners:ft,setInternalListeners:(e,t,s,a,l)=>I=[e,t,s,a,l]};return se({[i+u]:[0,We,[],()=>[gs()]],[u]:[0,$e],[h]:[0,qe],[i+d]:[1,Be,[ls],e=>[Ts(...e)]],[d]:[1,Ge,[ls]],[d+v]:[1,Ke,[ls]],[i+d+b]:[2,Qe,[ls,ns],e=>[bs(...e)]],[g]:[1,Ue,[ls]],[T]:[1,Xe,[ls]],[i+f]:[2,Ze,[ls,rs],e=>[vs(...e)]],[f]:[2,_e,[ls,rs]],[v]:[2,et,[ls,rs]],[i+b]:[3,tt,[ls,rs,cs],e=>[Cs(...e)]],[b]:[3,st,[ls,rs,cs],e=>pe(ds(...e))],InvalidCell:[3,at],[i+V]:[0,nt,[],()=>[Vs()]],[V]:[0,ot],[w]:[0,rt],[i+C]:[1,it,[hs],e=>[ws(...e)]],[C]:[1,ct,[hs],e=>pe(fs(e[0]))],InvalidValue:[1,lt]},(([e,t,s,a],l)=>{ks["add"+l+"Listener"]=(...l)=>ht(l[e],t[l[e+1]?1:0],e>0?J(l,0,e):void 0,s,a)})),_(ks)};export{ze as createStore};