tinybase 6.2.0-beta.3 → 6.2.0
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/@types/common/index.d.ts +295 -0
- package/@types/common/with-schemas/index.d.ts +375 -0
- package/@types/mergeable-store/index.d.ts +5 -34
- package/@types/mergeable-store/with-schemas/index.d.ts +5 -34
- package/@types/omni/with-schemas/index.d.ts +3 -3
- package/common/index.js +62 -3
- package/common/with-schemas/index.js +62 -3
- package/index.js +133 -86
- package/mergeable-store/index.js +102 -94
- package/mergeable-store/with-schemas/index.js +102 -94
- package/min/common/index.js +1 -1
- package/min/common/index.js.gz +0 -0
- package/min/common/with-schemas/index.js +1 -1
- package/min/common/with-schemas/index.js.gz +0 -0
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/omni/index.js +1 -1
- package/min/omni/index.js.gz +0 -0
- package/min/omni/with-schemas/index.js +1 -1
- package/min/omni/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/omni/index.js +148 -101
- package/omni/with-schemas/index.js +148 -101
- package/package.json +3 -3
- package/persisters/index.js +9 -9
- package/persisters/persister-durable-object-storage/index.js +12 -12
- package/persisters/persister-durable-object-storage/with-schemas/index.js +12 -12
- package/persisters/persister-pglite/index.js +11 -11
- package/persisters/persister-pglite/with-schemas/index.js +11 -11
- package/persisters/persister-postgres/index.js +11 -11
- package/persisters/persister-postgres/with-schemas/index.js +11 -11
- package/persisters/with-schemas/index.js +9 -9
- package/readme.md +2 -2
- package/releases.md +9 -10
- package/store/index.js +4 -4
- package/store/with-schemas/index.js +4 -4
- package/synchronizers/index.js +7 -7
- package/synchronizers/synchronizer-broadcast-channel/index.js +7 -7
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +7 -7
- package/synchronizers/synchronizer-local/index.js +7 -7
- package/synchronizers/synchronizer-local/with-schemas/index.js +7 -7
- package/synchronizers/synchronizer-ws-client/index.js +7 -7
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +7 -7
- package/synchronizers/synchronizer-ws-server/index.js +7 -7
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +7 -7
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +7 -7
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +7 -7
- package/synchronizers/with-schemas/index.js +7 -7
- package/ui-react-inspector/index.js +1 -1
- package/ui-react-inspector/with-schemas/index.js +1 -1
- package/with-schemas/index.js +133 -86
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",o=(a,t,e)=>a.replace(t,e),r=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=()=>{},g=async a=>r.all(a),A=a=>{throw Error(a)},T=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},$=(a,t)=>a.forEach(t),p=(a,t="")=>a.join(t),O=(a,t)=>a.map(t),R=a=>0==E(a),m=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),C=a=>a.shift(),I=(a,t)=>a?.has(t)??!1,L=a=>l(a)||0==(a=>a?.size??0)(a),S=a=>[...a?.values()??[]],_=(a,t)=>a?.forEach(t),b=(a,t)=>a?.delete(t),f=
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",o=(a,t,e)=>a.replace(t,e),r=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=()=>{},g=async a=>r.all(a),A=a=>{throw Error(a)},T=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},$=(a,t)=>a.forEach(t),p=(a,t="")=>a.join(t),O=(a,t)=>a.map(t),R=a=>0==E(a),m=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),C=a=>a.shift(),I=(a,t)=>a?.has(t)??!1,L=a=>l(a)||0==(a=>a?.size??0)(a),S=a=>[...a?.values()??[]],_=(a,t)=>a?.forEach(t),b=(a,t)=>a?.delete(t),f=Object,D=a=>f.getPrototypeOf(a),P=f.entries,h=f.keys,F=f.freeze,M=(a=[])=>f.fromEntries(a),U=(...a)=>f.assign({},...a),G=(a,t)=>(delete a[t],a),j=(a,t)=>O(P(a),(([a,e])=>t(e,a))),x=(a,t)=>M(j(a,((a,e)=>[e,t(a,e)]))),W=a=>f.values(a),B=a=>E(h(a)),H=a=>(a=>!l(a)&&w(D(a),(a=>a==f.prototype||l(D(a))),(()=>!0)))(a)&&0==B(a),X=JSON.stringify,Y=JSON.parse,k=a=>X(a,((a,t)=>void 0===t?"":t)),q=new c.TextEncoder,z=a=>new Map(a),J=(a,t)=>a?.get(t),K=(a,t)=>O([...a?.entries()??[]],(([a,e])=>t(e,a))),V=(a,t,e)=>l(e)?(b(a,t),a):a?.set(t,e),Q=(a,t,e,n)=>(I(a,t)?n?.(J(a,t)):V(a,t,e()),J(a,t)),Z=(a,t,e,n,s=0)=>w((e?Q:J)(a,t[s],s>E(t)-2?e:z),(i=>{if(s>E(t)-2)return n?.(i)&&V(a,t[s]),i;const o=Z(i,t,e,n,s+1);return L(i)&&V(a,t[s]),o})),aa="_",ta="_id",ea="SELECT",na="WHERE",sa="TABLE",ia="INSERT",oa="DELETE",ra="UPDATE",ca="ALTER "+sa,la="FROM",wa=oa+" "+la,ya=ea+"*"+la,da="CREATE ",ua=da+sa,Ea="OR REPLACE ",Na="FUNCTION",ga="$tableName",Aa=a=>p(O(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${o(a,/"/g,'""')}"`)),"."),Ta=(...a)=>Aa(p(a,"_")),$a=(a,t=[1])=>p(O(a,(()=>"$"+t[0]++)),n),pa=(a,t=i)=>na+`(${o(t,ga,Aa(a))})`,Oa=a=>new Set(d(a)||l(a)?a:[a]),Ra=(a,t)=>a?.add(t),ma="ColumnName",va="store",Ca="json",Ia=va+"TableName",La=va+"Id"+ma,Sa=va+ma,_a="autoLoadIntervalSeconds",ba="rowId"+ma,fa="tableId",Da="tableName",Pa="deleteEmptyColumns",ha="deleteEmptyTable",Fa="condition",Ma={mode:Ca,[_a]:1},Ua={load:0,save:0,[Da]:t+"_values"},Ga=(a,t,e,n,s)=>{const i=z();return x(a,((a,o)=>{const r=u(W(U(t,y(a)?{[e]:a}:a)),0,B(t));l(r[0])||n(o,r[0])||(s(o,r[0]),V(i,o,r))})),i},ja=/^\d+$/,xa=z(),Wa=z(),Ba=(a,t,n,s,i,o,r,c={},y=0,u=[])=>{let N,g,p,O=0,R=0,m=0;Q(xa,u,(()=>0)),Q(Wa,u,(()=>[]));const I=z(),[S,f,D,P,h]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:A("Store type not supported by this Persister"))(r,a,y),[M,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?C(a):null)??e+t++,t=>{ja.test(t)&&E(a)<1e3&&v(a,t)}]})(),s=z();return[(n,i,o,r=[],c=()=>[])=>{a??=ta;const l=t(1);return V(s,l,[n,i,o,r,c]),Ra(Z(i,o??[e],Oa),l),l},(t,n,...i)=>$(((a,t=[e])=>{const n=[],s=(a,e)=>e==E(t)?v(n,a):null===t[e]?_(a,(a=>s(a,e+1))):$([t[e],null],(t=>s(J(a,t),e+1)));return s(a,0),n})(t,n),(t=>_(t,(t=>J(s,t)[0](a,...n??[],...i))))),a=>w(J(s,a),(([,t,i])=>(Z(t,i??[e],void 0,(t=>(b(t,a),L(t)?1:0))),V(s,a),n(a),i))),t=>w(J(s,t),(([t,,e=[],n,s])=>{const i=(...o)=>{const r=E(o);r==E(e)?t(a,...o,...s(o)):l(e[r])?$(n[r]?.(...o)??[],(a=>i(...o,a))):i(...o,e[r])};i()}))]})(),j=a=>{a!=O&&(O=a,U(I,void 0,O))},x=t=>{(S&&d(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},W=async a=>(2!=O&&(j(1),R++,await aa((async()=>{await T((async()=>{const e=await t();d(e)?x(e):a?h(a):A("Content is not an array: "+e)}),(()=>{a&&h(a)})),j(0)}))),ta),B=async a=>(X(),await W(a),await T((async()=>g=await s((async(a,t)=>{t||a?2!=O&&(j(1),R++,x(t??a),j(0)):await W()}))),o),ta),X=async()=>(g&&(await T((()=>i(g)),o),g=void 0),ta),Y=async a=>(1!=O&&(j(2),m++,await aa((async()=>{await T((()=>n(f,a)),o),j(0)}))),ta),k=async()=>(q(),await Y(),p=a.addDidFinishTransactionListener((()=>{const a=D();P(a)&&Y(a)})),ta),q=async()=>(p&&(a.delListener(p),p=void 0),ta),K=async(a=!1)=>{const[t,e]=a?[q,X]:[X,q];return await t(),await e(),ta},aa=async(...a)=>(v(J(Wa,u),...a),await(async()=>{if(!J(xa,u)){for(V(xa,u,1);!l(N=C(J(Wa,u)));)await T(N,o);V(xa,u,0)}})(),ta),ta={load:W,startAutoLoad:B,stopAutoLoad:X,isAutoLoading:()=>!l(g),save:Y,startAutoSave:k,stopAutoSave:q,isAutoSaving:()=>!l(p),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[k,B]:[B,k];return await e(a),await n(a),ta},stopAutoPersisting:K,getStatus:()=>O,addStatusListener:a=>M(a,I),delListener:t=>(G(t),a),schedule:aa,getStore:()=>a,destroy:()=>(J(Wa,u).splice(0,void 0),K()),getStats:()=>({loads:R,saves:m}),...c};return F(ta)},Ha=(a,t,e,s,o,r=Xa,c,w)=>{const y=z();return[async()=>{y.clear(),O(await e(a,t),(({tn:a,cn:t})=>Ra(Q(y,a,Oa),t)))},async(t,e,n)=>((a,t)=>I(J(y,a),t))(t,e)?M(m(O(await a(ya+Aa(t)+pa(t,n)),(a=>[a[e],w?x(G(a,e),w):G(a,e)])),(([a,t])=>!l(a)&&!H(t)))):{},async(t,e,s,w,d,u=!1,E=i)=>{const N=Oa();x(s??{},(a=>O(h(a??{}),(a=>Ra(N,a)))));const A=S(N);if(!u&&d&&E==i&&R(A)&&I(y,t))return await a("DROP "+sa+Aa(t)),void V(y,t);const T=J(y,t),$=Oa(S(T));if(R(A)||(I(y,t)?await g(O([e,...A],(async(n,s)=>{b($,n)||(await a(ca+Aa(t)+"ADD"+Aa(n)+o),0==s&&await a("CREATE UNIQUE INDEX pk ON "+Aa(t)+`(${Aa(e)})`),Ra(T,n))}))):(await a(ua+Aa(t)+`(${Aa(e)}${o} PRIMARY KEY${p(O(A,(a=>n+Aa(a)+o)))});`),V(y,t,Oa([e,...A])))),await g([...!u&&w?O(S($),(async n=>{n!=e&&(await a(ca+Aa(t)+"DROP"+Aa(n)),b(T,n))})):[]]),u)l(s)?await a(wa+Aa(t)+pa(t,E)):await g(j(s,(async(n,s)=>{l(n)?await a(wa+Aa(t)+pa(t,E)+`AND(${Aa(e)}=$1)`,[s]):R(A)||await r(a,t,e,h(n),{[s]:c?O(W(n),c):W(n)},T)})));else if(R(A))I(y,t)&&await a(wa+Aa(t)+pa(t,E));else{const n=m(S(J(y,t)),(a=>a!=e)),i={},o=[];x(s??{},((a,t)=>{i[t]=O(n,(t=>c?c(a?.[t]):a?.[t])),v(o,t)})),await r(a,t,e,n,i),await a(wa+Aa(t)+pa(t,E)+`AND${Aa(e)}NOT IN(${$a(o)})`,o)}},async t=>{let e;return await a("BEGIN"),await T((async()=>e=await t()),s),await a("END"),e}]},Xa=async(a,t,e,s,i)=>{const o=[1];await a(ia+" INTO"+Aa(t)+"("+((...a)=>p(O(a,Aa),n))(e,...s)+")VALUES"+p(j(i,(a=>"($"+o[0]+++","+$a(a,o)+")")),n)+"ON CONFLICT("+Aa(e)+`)DO ${ra} SET`+p(O(s,(a=>Aa(a)+"=excluded."+Aa(a))),n),j(i,((a,t)=>[t,...O(a,(a=>a??null))])).flat())},Ya=(a,t,e,n,s,i,o,[r,c,l],w,y,d,u,E,N)=>{const[g,A,T,$]=Ha(t,w,y,s,E,N),p=Ba(a,(()=>$((async()=>{return await g(),a=(await A(r,c))[aa]?.[l]??"null",Y(a,((a,t)=>""===t?void 0:t));var a}))),(a=>$((async()=>{await g(),await T(r,c,{[aa]:{[l]:k(a()??null)}},!0,!0)}))),e,n,s,o,{[u]:()=>d,destroy:async()=>(await p.stopAutoPersisting(),i(),p)},0,d);return p},ka=(a,t,e,n,s,i,o,[r,c,[w,y,d]],u,E,N,A,T,$,p,O)=>{const[R,v,C,I]=Ha(t,u,E,s,T,$,p,O),L=(a,t)=>g(K(c,(async([e,n,s,i,o],r)=>{t&&!(r in a)||await C(e,n,a[r],s,i,t,o)}))),S=async(a,t)=>y?await C(d,ta,{[aa]:a},!0,!0,t):null,_=Ba(a,(()=>I((async()=>{await R();const a=await(async()=>M(m(await g(K(r,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!H(a[1])))))(),t=await(async()=>w?(await v(d,ta))[aa]:{})();return H(a)&&l(t)?void 0:[a,t]}))),((a,t)=>I((async()=>{if(await R(),l(t)){const[t,e]=a();await L(t),await S(e)}else await L(t[0],!0),await S(t[1],!0)}))),e,n,s,o,{[A]:()=>N,destroy:async()=>(await _.stopAutoPersisting(),i(),_)},0,N);return _},qa=/^([cd]:)(.+)/,za=(a,n,s,r,c,l,d,E,N,A,T="getDb")=>{const R=((a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a)(s,l),[m,,v,C]=(a=>{const e=(a=>U(Ma,y(a)?{[Ia]:a}:a??{}))(a),n=e[_a];if(e.mode==Ca){const a=e[Ia]??t;return[1,n,[a,e[La]??ta,e[Sa]??va],Oa(a)]}const{tables:{load:s={},save:o={}}={},values:r={}}=e,c=u(W(U(Ua,r)),0,B(Ua)),l=c[2],w=Oa(l),d=Oa(l),E=Ga(s,{[fa]:null,[ba]:ta,[Fa]:i},fa,(a=>I(d,a)),(a=>Ra(w,a))),N=Ga(o,{[Da]:null,[ba]:ta,[Pa]:0,[ha]:0,[Fa]:null},Da,((a,t)=>I(d,t)),((a,t)=>Ra(w,t)));var g;return g=(a,t)=>t[4]??=J(E,t[0])?.[2]??i,_(N,((a,t)=>g(0,a))),[0,n,[E,N,c],w]})(n),L=e+(a=>{let t=2166136261;return $(q.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(k(v)),b=t+"_"+L,f=async(a,e,n="",s="")=>{const i=Ta(t,a,L);return await R(da+Ea+Na+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},D=async(a,t,e,n)=>(await R(da+a+"TRIGGER"+t+e+"EXECUTE "+Na+n+"()"),t),P=a=>`PERFORM pg_notify('${b}',${a});`,h=(a,t)=>m?i:2===t?h(a,0)+" OR "+h(a,1):o(J(v[0],a)?.[2]??i,ga,0==t?"NEW":"OLD"),F=(a,e)=>g(O([ia,oa,ra],((n,s)=>D(Ea,Ta(t,"d",L,a,n),`AFTER ${n} ON${Aa(a)}FOR EACH ROW WHEN(${h(a,s)})`,e))));return(m?Ya:ka)(a,R,(async a=>{const e=await f("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${na} command_tag='${ua}' LOOP ${P("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await D("EVENT ",Ta(t,"c",L),`ON ddl_command_end WHEN TAG IN('${ua}')`,e);const n=await f("d",P("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await g(O(S(C),(async a=>(await R(ua+` IF NOT EXISTS${Aa(a)}("_id"text PRIMARY KEY)`),await F(a,n))))),[await r(b,(t=>{return w((e=t,s=qa,e?.match(s)),(async([,t,e])=>{I(C,e)&&("c:"==t&&await F(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await R(`DROP FUNCTION IF EXISTS${p(t,",")}CASCADE`)}),d,E,N,v,S(C),(async(a,t)=>await a(ea+` table_name tn,column_name cn FROM information_schema.columns ${na} table_schema='public'AND table_name IN(${$a(t)})`,t)),A,T,"text",void 0,(a=>X(a)),(a=>Y(a)))},Ja=async(a,t,e,n,s)=>za(a,e,(async(a,e=[])=>(await t.query(a,e)).rows),((a,e)=>t.listen(a,e)),(a=>T(a,s)),n,s,N,3,t,"getPglite");export{Ja as createPglitePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=async a=>o.all(a),g=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},T=(a,t)=>a.forEach(t),$=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),O=a=>0==E(a),R=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),v=a=>a.shift(),C=(a,t)=>a?.has(t)??!1,S=a=>l(a)||0==(a=>a?.size??0)(a),I=a=>[...a?.values()??[]],L=(a,t)=>a?.forEach(t),_=(a,t)=>a?.delete(t),b=
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=async a=>o.all(a),g=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},T=(a,t)=>a.forEach(t),$=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),O=a=>0==E(a),R=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),v=a=>a.shift(),C=(a,t)=>a?.has(t)??!1,S=a=>l(a)||0==(a=>a?.size??0)(a),I=a=>[...a?.values()??[]],L=(a,t)=>a?.forEach(t),_=(a,t)=>a?.delete(t),b=Object,f=a=>b.getPrototypeOf(a),D=b.entries,h=b.keys,P=b.freeze,F=(a=[])=>b.fromEntries(a),M=(...a)=>b.assign({},...a),U=(a,t)=>(delete a[t],a),G=(a,t)=>p(D(a),(([a,e])=>t(e,a))),j=(a,t)=>F(G(a,((a,e)=>[e,t(a,e)]))),x=a=>b.values(a),W=a=>E(h(a)),B=a=>(a=>!l(a)&&w(f(a),(a=>a==b.prototype||l(f(a))),(()=>!0)))(a)&&0==W(a),H=JSON.stringify,X=JSON.parse,Y=a=>H(a,((a,t)=>void 0===t?"":t)),k=new c.TextEncoder,q=a=>new Map(a),z=(a,t)=>a?.get(t),J=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),K=(a,t,e)=>l(e)?(_(a,t),a):a?.set(t,e),V=(a,t,e,n)=>(C(a,t)?n?.(z(a,t)):K(a,t,e()),z(a,t)),Q=(a,t,e,n,s=0)=>w((e?V:z)(a,t[s],s>E(t)-2?e:q),(i=>{if(s>E(t)-2)return n?.(i)&&K(a,t[s]),i;const r=Q(i,t,e,n,s+1);return S(i)&&K(a,t[s]),r})),Z="_",aa="_id",ta="SELECT",ea="WHERE",na="TABLE",sa="INSERT",ia="DELETE",ra="UPDATE",oa="ALTER "+na,ca="FROM",la=ia+" "+ca,wa=ta+"*"+ca,ya="CREATE ",ua=ya+na,da="OR REPLACE ",Ea="FUNCTION",Na="$tableName",ga=a=>$(p(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${r(a,/"/g,'""')}"`)),"."),Aa=(...a)=>ga($(a,"_")),Ta=(a,t=[1])=>$(p(a,(()=>"$"+t[0]++)),n),$a=(a,t=i)=>ea+`(${r(t,Na,ga(a))})`,pa=a=>new Set(u(a)||l(a)?a:[a]),Oa=(a,t)=>a?.add(t),Ra="ColumnName",ma="store",va="json",Ca=ma+"TableName",Sa=ma+"Id"+Ra,Ia=ma+Ra,La="autoLoadIntervalSeconds",_a="rowId"+Ra,ba="tableId",fa="tableName",Da="deleteEmptyColumns",ha="deleteEmptyTable",Pa="condition",Fa={mode:va,[La]:1},Ma={load:0,save:0,[fa]:t+"_values"},Ua=(a,t,e,n,s)=>{const i=q();return j(a,((a,r)=>{const o=d(x(M(t,y(a)?{[e]:a}:a)),0,W(t));l(o[0])||n(r,o[0])||(s(r,o[0]),K(i,r,o))})),i},Ga=/^\d+$/,ja=q(),xa=q(),Wa=(a,t,n,s,i,r,o,c={},y=0,d=[])=>{let N,$,p,O=0,R=0,C=0;V(ja,d,(()=>0)),V(xa,d,(()=>[]));const I=q(),[b,f,D,h,F]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:g("Store type not supported by this Persister"))(o,a,y),[M,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?v(a):null)??e+t++,t=>{Ga.test(t)&&E(a)<1e3&&m(a,t)}]})(),s=q();return[(n,i,r,o=[],c=()=>[])=>{a??=ta;const l=t(1);return K(s,l,[n,i,r,o,c]),Oa(Q(i,r??[e],pa),l),l},(t,n,...i)=>T(((a,t=[e])=>{const n=[],s=(a,e)=>e==E(t)?m(n,a):null===t[e]?L(a,(a=>s(a,e+1))):T([t[e],null],(t=>s(z(a,t),e+1)));return s(a,0),n})(t,n),(t=>L(t,(t=>z(s,t)[0](a,...n??[],...i))))),a=>w(z(s,a),(([,t,i])=>(Q(t,i??[e],void 0,(t=>(_(t,a),S(t)?1:0))),K(s,a),n(a),i))),t=>w(z(s,t),(([t,,e=[],n,s])=>{const i=(...r)=>{const o=E(r);o==E(e)?t(a,...r,...s(r)):l(e[o])?T(n[o]?.(...r)??[],(a=>i(...r,a))):i(...r,e[o])};i()}))]})(),j=a=>{a!=O&&(O=a,U(I,void 0,O))},x=t=>{(b&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},W=async a=>(2!=O&&(j(1),R++,await aa((async()=>{await A((async()=>{const e=await t();u(e)?x(e):a?F(a):g("Content is not an array: "+e)}),(()=>{a&&F(a)})),j(0)}))),ta),H=async a=>(X(),await W(a),await A((async()=>$=await s((async(a,t)=>{t||a?2!=O&&(j(1),R++,x(t??a),j(0)):await W()}))),r),ta),X=async()=>($&&(await A((()=>i($)),r),$=void 0),ta),Y=async a=>(1!=O&&(j(2),C++,await aa((async()=>{await A((()=>n(f,a)),r),j(0)}))),ta),k=async()=>(J(),await Y(),p=a.addDidFinishTransactionListener((()=>{const a=D();h(a)&&Y(a)})),ta),J=async()=>(p&&(a.delListener(p),p=void 0),ta),Z=async(a=!1)=>{const[t,e]=a?[J,X]:[X,J];return await t(),await e(),ta},aa=async(...a)=>(m(z(xa,d),...a),await(async()=>{if(!z(ja,d)){for(K(ja,d,1);!l(N=v(z(xa,d)));)await A(N,r);K(ja,d,0)}})(),ta),ta={load:W,startAutoLoad:H,stopAutoLoad:X,isAutoLoading:()=>!l($),save:Y,startAutoSave:k,stopAutoSave:J,isAutoSaving:()=>!l(p),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[k,H]:[H,k];return await e(a),await n(a),ta},stopAutoPersisting:Z,getStatus:()=>O,addStatusListener:a=>M(a,I),delListener:t=>(G(t),a),schedule:aa,getStore:()=>a,destroy:()=>(z(xa,d).splice(0,void 0),Z()),getStats:()=>({loads:R,saves:C}),...c};return P(ta)},Ba=(a,t,e,s,r,o=Ha,c,w)=>{const y=q();return[async()=>{y.clear(),p(await e(a,t),(({tn:a,cn:t})=>Oa(V(y,a,pa),t)))},async(t,e,n)=>((a,t)=>C(z(y,a),t))(t,e)?F(R(p(await a(wa+ga(t)+$a(t,n)),(a=>[a[e],w?j(U(a,e),w):U(a,e)])),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,s,w,u,d=!1,E=i)=>{const g=pa();j(s??{},(a=>p(h(a??{}),(a=>Oa(g,a)))));const A=I(g);if(!d&&u&&E==i&&O(A)&&C(y,t))return await a("DROP "+na+ga(t)),void K(y,t);const T=z(y,t),v=pa(I(T));if(O(A)||(C(y,t)?await N(p([e,...A],(async(n,s)=>{_(v,n)||(await a(oa+ga(t)+"ADD"+ga(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+ga(t)+`(${ga(e)})`),Oa(T,n))}))):(await a(ua+ga(t)+`(${ga(e)}${r} PRIMARY KEY${$(p(A,(a=>n+ga(a)+r)))});`),K(y,t,pa([e,...A])))),await N([...!d&&w?p(I(v),(async n=>{n!=e&&(await a(oa+ga(t)+"DROP"+ga(n)),_(T,n))})):[]]),d)l(s)?await a(la+ga(t)+$a(t,E)):await N(G(s,(async(n,s)=>{l(n)?await a(la+ga(t)+$a(t,E)+`AND(${ga(e)}=$1)`,[s]):O(A)||await o(a,t,e,h(n),{[s]:c?p(x(n),c):x(n)},T)})));else if(O(A))C(y,t)&&await a(la+ga(t)+$a(t,E));else{const n=R(I(z(y,t)),(a=>a!=e)),i={},r=[];j(s??{},((a,t)=>{i[t]=p(n,(t=>c?c(a?.[t]):a?.[t])),m(r,t)})),await o(a,t,e,n,i),await a(la+ga(t)+$a(t,E)+`AND${ga(e)}NOT IN(${Ta(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A((async()=>e=await t()),s),await a("END"),e}]},Ha=async(a,t,e,s,i)=>{const r=[1];await a(sa+" INTO"+ga(t)+"("+((...a)=>$(p(a,ga),n))(e,...s)+")VALUES"+$(G(i,(a=>"($"+r[0]+++","+Ta(a,r)+")")),n)+"ON CONFLICT("+ga(e)+`)DO ${ra} SET`+$(p(s,(a=>ga(a)+"=excluded."+ga(a))),n),G(i,((a,t)=>[t,...p(a,(a=>a??null))])).flat())},Xa=(a,t,e,n,s,i,r,[o,c,l],w,y,u,d,E,N)=>{const[g,A,T,$]=Ba(t,w,y,s,E,N),p=Wa(a,(()=>$((async()=>{return await g(),a=(await A(o,c))[Z]?.[l]??"null",X(a,((a,t)=>""===t?void 0:t));var a}))),(a=>$((async()=>{await g(),await T(o,c,{[Z]:{[l]:Y(a()??null)}},!0,!0)}))),e,n,s,r,{[d]:()=>u,destroy:async()=>(await p.stopAutoPersisting(),i(),p)},0,u);return p},Ya=(a,t,e,n,s,i,r,[o,c,[w,y,u]],d,E,g,A,T,$,p,O)=>{const[m,v,C,S]=Ba(t,d,E,s,T,$,p,O),I=(a,t)=>N(J(c,(async([e,n,s,i,r],o)=>{t&&!(o in a)||await C(e,n,a[o],s,i,t,r)}))),L=async(a,t)=>y?await C(u,aa,{[Z]:a},!0,!0,t):null,_=Wa(a,(()=>S((async()=>{await m();const a=await(async()=>F(R(await N(J(o,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!B(a[1])))))(),t=await(async()=>w?(await v(u,aa))[Z]:{})();return B(a)&&l(t)?void 0:[a,t]}))),((a,t)=>S((async()=>{if(await m(),l(t)){const[t,e]=a();await I(t),await L(e)}else await I(t[0],!0),await L(t[1],!0)}))),e,n,s,r,{[A]:()=>g,destroy:async()=>(await _.stopAutoPersisting(),i(),_)},0,g);return _},ka=/^([cd]:)(.+)/,qa=(a,n,s,o,c,l,u,E,g,A,O="getDb")=>{const R=((a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a)(s,l),[m,,v,S]=(a=>{const e=(a=>M(Fa,y(a)?{[Ca]:a}:a??{}))(a),n=e[La];if(e.mode==va){const a=e[Ca]??t;return[1,n,[a,e[Sa]??aa,e[Ia]??ma],pa(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=d(x(M(Ma,o)),0,W(Ma)),l=c[2],w=pa(l),u=pa(l),E=Ua(s,{[ba]:null,[_a]:aa,[Pa]:i},ba,(a=>C(u,a)),(a=>Oa(w,a))),N=Ua(r,{[fa]:null,[_a]:aa,[Da]:0,[ha]:0,[Pa]:null},fa,((a,t)=>C(u,t)),((a,t)=>Oa(w,t)));var g;return g=(a,t)=>t[4]??=z(E,t[0])?.[2]??i,L(N,((a,t)=>g(0,a))),[0,n,[E,N,c],w]})(n),_=e+(a=>{let t=2166136261;return T(k.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(Y(v)),b=t+"_"+_,f=async(a,e,n="",s="")=>{const i=Aa(t,a,_);return await R(ya+da+Ea+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},D=async(a,t,e,n)=>(await R(ya+a+"TRIGGER"+t+e+"EXECUTE "+Ea+n+"()"),t),h=a=>`PERFORM pg_notify('${b}',${a});`,P=(a,t)=>m?i:2===t?P(a,0)+" OR "+P(a,1):r(z(v[0],a)?.[2]??i,Na,0==t?"NEW":"OLD"),F=(a,e)=>N(p([sa,ia,ra],((n,s)=>D(da,Aa(t,"d",_,a,n),`AFTER ${n} ON${ga(a)}FOR EACH ROW WHEN(${P(a,s)})`,e))));return(m?Xa:Ya)(a,R,(async a=>{const e=await f("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ea} command_tag='${ua}' LOOP ${h("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await D("EVENT ",Aa(t,"c",_),`ON ddl_command_end WHEN TAG IN('${ua}')`,e);const n=await f("d",h("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await N(p(I(S),(async a=>(await R(ua+` IF NOT EXISTS${ga(a)}("_id"text PRIMARY KEY)`),await F(a,n))))),[await o(b,(t=>{return w((e=t,s=ka,e?.match(s)),(async([,t,e])=>{C(S,e)&&("c:"==t&&await F(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await R(`DROP FUNCTION IF EXISTS${$(t,",")}CASCADE`)}),u,E,g,v,I(S),(async(a,t)=>await a(ta+` table_name tn,column_name cn FROM information_schema.columns ${ea} table_schema='public'AND table_name IN(${Ta(t)})`,t)),A,O,"text",void 0,(a=>H(a)),(a=>X(a)))},za=async(a,t,e,n,s)=>{const i=await(t.reserve?.());return qa(a,e,i?.unsafe,(async(a,e)=>t.listen(a,e)),(a=>A(a.unlisten,s)),n,s,(()=>i?.release?.()),3,t,"getSql")};export{za as createPostgresPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=async a=>o.all(a),g=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},T=(a,t)=>a.forEach(t),$=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),O=a=>0==E(a),R=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),v=a=>a.shift(),C=(a,t)=>a?.has(t)??!1,S=a=>l(a)||0==(a=>a?.size??0)(a),I=a=>[...a?.values()??[]],L=(a,t)=>a?.forEach(t),_=(a,t)=>a?.delete(t),b=
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,N=async a=>o.all(a),g=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},T=(a,t)=>a.forEach(t),$=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),O=a=>0==E(a),R=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),v=a=>a.shift(),C=(a,t)=>a?.has(t)??!1,S=a=>l(a)||0==(a=>a?.size??0)(a),I=a=>[...a?.values()??[]],L=(a,t)=>a?.forEach(t),_=(a,t)=>a?.delete(t),b=Object,f=a=>b.getPrototypeOf(a),D=b.entries,h=b.keys,P=b.freeze,F=(a=[])=>b.fromEntries(a),M=(...a)=>b.assign({},...a),U=(a,t)=>(delete a[t],a),G=(a,t)=>p(D(a),(([a,e])=>t(e,a))),j=(a,t)=>F(G(a,((a,e)=>[e,t(a,e)]))),x=a=>b.values(a),W=a=>E(h(a)),B=a=>(a=>!l(a)&&w(f(a),(a=>a==b.prototype||l(f(a))),(()=>!0)))(a)&&0==W(a),H=JSON.stringify,X=JSON.parse,Y=a=>H(a,((a,t)=>void 0===t?"":t)),k=new c.TextEncoder,q=a=>new Map(a),z=(a,t)=>a?.get(t),J=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),K=(a,t,e)=>l(e)?(_(a,t),a):a?.set(t,e),V=(a,t,e,n)=>(C(a,t)?n?.(z(a,t)):K(a,t,e()),z(a,t)),Q=(a,t,e,n,s=0)=>w((e?V:z)(a,t[s],s>E(t)-2?e:q),(i=>{if(s>E(t)-2)return n?.(i)&&K(a,t[s]),i;const r=Q(i,t,e,n,s+1);return S(i)&&K(a,t[s]),r})),Z="_",aa="_id",ta="SELECT",ea="WHERE",na="TABLE",sa="INSERT",ia="DELETE",ra="UPDATE",oa="ALTER "+na,ca="FROM",la=ia+" "+ca,wa=ta+"*"+ca,ya="CREATE ",ua=ya+na,da="OR REPLACE ",Ea="FUNCTION",Na="$tableName",ga=a=>$(p(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${r(a,/"/g,'""')}"`)),"."),Aa=(...a)=>ga($(a,"_")),Ta=(a,t=[1])=>$(p(a,(()=>"$"+t[0]++)),n),$a=(a,t=i)=>ea+`(${r(t,Na,ga(a))})`,pa=a=>new Set(u(a)||l(a)?a:[a]),Oa=(a,t)=>a?.add(t),Ra="ColumnName",ma="store",va="json",Ca=ma+"TableName",Sa=ma+"Id"+Ra,Ia=ma+Ra,La="autoLoadIntervalSeconds",_a="rowId"+Ra,ba="tableId",fa="tableName",Da="deleteEmptyColumns",ha="deleteEmptyTable",Pa="condition",Fa={mode:va,[La]:1},Ma={load:0,save:0,[fa]:t+"_values"},Ua=(a,t,e,n,s)=>{const i=q();return j(a,((a,r)=>{const o=d(x(M(t,y(a)?{[e]:a}:a)),0,W(t));l(o[0])||n(r,o[0])||(s(r,o[0]),K(i,r,o))})),i},Ga=/^\d+$/,ja=q(),xa=q(),Wa=(a,t,n,s,i,r,o,c={},y=0,d=[])=>{let N,$,p,O=0,R=0,C=0;V(ja,d,(()=>0)),V(xa,d,(()=>[]));const I=q(),[b,f,D,h,F]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:g("Store type not supported by this Persister"))(o,a,y),[M,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?v(a):null)??e+t++,t=>{Ga.test(t)&&E(a)<1e3&&m(a,t)}]})(),s=q();return[(n,i,r,o=[],c=()=>[])=>{a??=ta;const l=t(1);return K(s,l,[n,i,r,o,c]),Oa(Q(i,r??[e],pa),l),l},(t,n,...i)=>T(((a,t=[e])=>{const n=[],s=(a,e)=>e==E(t)?m(n,a):null===t[e]?L(a,(a=>s(a,e+1))):T([t[e],null],(t=>s(z(a,t),e+1)));return s(a,0),n})(t,n),(t=>L(t,(t=>z(s,t)[0](a,...n??[],...i))))),a=>w(z(s,a),(([,t,i])=>(Q(t,i??[e],void 0,(t=>(_(t,a),S(t)?1:0))),K(s,a),n(a),i))),t=>w(z(s,t),(([t,,e=[],n,s])=>{const i=(...r)=>{const o=E(r);o==E(e)?t(a,...r,...s(r)):l(e[o])?T(n[o]?.(...r)??[],(a=>i(...r,a))):i(...r,e[o])};i()}))]})(),j=a=>{a!=O&&(O=a,U(I,void 0,O))},x=t=>{(b&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},W=async a=>(2!=O&&(j(1),R++,await aa((async()=>{await A((async()=>{const e=await t();u(e)?x(e):a?F(a):g("Content is not an array: "+e)}),(()=>{a&&F(a)})),j(0)}))),ta),H=async a=>(X(),await W(a),await A((async()=>$=await s((async(a,t)=>{t||a?2!=O&&(j(1),R++,x(t??a),j(0)):await W()}))),r),ta),X=async()=>($&&(await A((()=>i($)),r),$=void 0),ta),Y=async a=>(1!=O&&(j(2),C++,await aa((async()=>{await A((()=>n(f,a)),r),j(0)}))),ta),k=async()=>(J(),await Y(),p=a.addDidFinishTransactionListener((()=>{const a=D();h(a)&&Y(a)})),ta),J=async()=>(p&&(a.delListener(p),p=void 0),ta),Z=async(a=!1)=>{const[t,e]=a?[J,X]:[X,J];return await t(),await e(),ta},aa=async(...a)=>(m(z(xa,d),...a),await(async()=>{if(!z(ja,d)){for(K(ja,d,1);!l(N=v(z(xa,d)));)await A(N,r);K(ja,d,0)}})(),ta),ta={load:W,startAutoLoad:H,stopAutoLoad:X,isAutoLoading:()=>!l($),save:Y,startAutoSave:k,stopAutoSave:J,isAutoSaving:()=>!l(p),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[k,H]:[H,k];return await e(a),await n(a),ta},stopAutoPersisting:Z,getStatus:()=>O,addStatusListener:a=>M(a,I),delListener:t=>(G(t),a),schedule:aa,getStore:()=>a,destroy:()=>(z(xa,d).splice(0,void 0),Z()),getStats:()=>({loads:R,saves:C}),...c};return P(ta)},Ba=(a,t,e,s,r,o=Ha,c,w)=>{const y=q();return[async()=>{y.clear(),p(await e(a,t),(({tn:a,cn:t})=>Oa(V(y,a,pa),t)))},async(t,e,n)=>((a,t)=>C(z(y,a),t))(t,e)?F(R(p(await a(wa+ga(t)+$a(t,n)),(a=>[a[e],w?j(U(a,e),w):U(a,e)])),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,s,w,u,d=!1,E=i)=>{const g=pa();j(s??{},(a=>p(h(a??{}),(a=>Oa(g,a)))));const A=I(g);if(!d&&u&&E==i&&O(A)&&C(y,t))return await a("DROP "+na+ga(t)),void K(y,t);const T=z(y,t),v=pa(I(T));if(O(A)||(C(y,t)?await N(p([e,...A],(async(n,s)=>{_(v,n)||(await a(oa+ga(t)+"ADD"+ga(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+ga(t)+`(${ga(e)})`),Oa(T,n))}))):(await a(ua+ga(t)+`(${ga(e)}${r} PRIMARY KEY${$(p(A,(a=>n+ga(a)+r)))});`),K(y,t,pa([e,...A])))),await N([...!d&&w?p(I(v),(async n=>{n!=e&&(await a(oa+ga(t)+"DROP"+ga(n)),_(T,n))})):[]]),d)l(s)?await a(la+ga(t)+$a(t,E)):await N(G(s,(async(n,s)=>{l(n)?await a(la+ga(t)+$a(t,E)+`AND(${ga(e)}=$1)`,[s]):O(A)||await o(a,t,e,h(n),{[s]:c?p(x(n),c):x(n)},T)})));else if(O(A))C(y,t)&&await a(la+ga(t)+$a(t,E));else{const n=R(I(z(y,t)),(a=>a!=e)),i={},r=[];j(s??{},((a,t)=>{i[t]=p(n,(t=>c?c(a?.[t]):a?.[t])),m(r,t)})),await o(a,t,e,n,i),await a(la+ga(t)+$a(t,E)+`AND${ga(e)}NOT IN(${Ta(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A((async()=>e=await t()),s),await a("END"),e}]},Ha=async(a,t,e,s,i)=>{const r=[1];await a(sa+" INTO"+ga(t)+"("+((...a)=>$(p(a,ga),n))(e,...s)+")VALUES"+$(G(i,(a=>"($"+r[0]+++","+Ta(a,r)+")")),n)+"ON CONFLICT("+ga(e)+`)DO ${ra} SET`+$(p(s,(a=>ga(a)+"=excluded."+ga(a))),n),G(i,((a,t)=>[t,...p(a,(a=>a??null))])).flat())},Xa=(a,t,e,n,s,i,r,[o,c,l],w,y,u,d,E,N)=>{const[g,A,T,$]=Ba(t,w,y,s,E,N),p=Wa(a,(()=>$((async()=>{return await g(),a=(await A(o,c))[Z]?.[l]??"null",X(a,((a,t)=>""===t?void 0:t));var a}))),(a=>$((async()=>{await g(),await T(o,c,{[Z]:{[l]:Y(a()??null)}},!0,!0)}))),e,n,s,r,{[d]:()=>u,destroy:async()=>(await p.stopAutoPersisting(),i(),p)},0,u);return p},Ya=(a,t,e,n,s,i,r,[o,c,[w,y,u]],d,E,g,A,T,$,p,O)=>{const[m,v,C,S]=Ba(t,d,E,s,T,$,p,O),I=(a,t)=>N(J(c,(async([e,n,s,i,r],o)=>{t&&!(o in a)||await C(e,n,a[o],s,i,t,r)}))),L=async(a,t)=>y?await C(u,aa,{[Z]:a},!0,!0,t):null,_=Wa(a,(()=>S((async()=>{await m();const a=await(async()=>F(R(await N(J(o,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!B(a[1])))))(),t=await(async()=>w?(await v(u,aa))[Z]:{})();return B(a)&&l(t)?void 0:[a,t]}))),((a,t)=>S((async()=>{if(await m(),l(t)){const[t,e]=a();await I(t),await L(e)}else await I(t[0],!0),await L(t[1],!0)}))),e,n,s,r,{[A]:()=>g,destroy:async()=>(await _.stopAutoPersisting(),i(),_)},0,g);return _},ka=/^([cd]:)(.+)/,qa=(a,n,s,o,c,l,u,E,g,A,O="getDb")=>{const R=((a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a)(s,l),[m,,v,S]=(a=>{const e=(a=>M(Fa,y(a)?{[Ca]:a}:a??{}))(a),n=e[La];if(e.mode==va){const a=e[Ca]??t;return[1,n,[a,e[Sa]??aa,e[Ia]??ma],pa(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=d(x(M(Ma,o)),0,W(Ma)),l=c[2],w=pa(l),u=pa(l),E=Ua(s,{[ba]:null,[_a]:aa,[Pa]:i},ba,(a=>C(u,a)),(a=>Oa(w,a))),N=Ua(r,{[fa]:null,[_a]:aa,[Da]:0,[ha]:0,[Pa]:null},fa,((a,t)=>C(u,t)),((a,t)=>Oa(w,t)));var g;return g=(a,t)=>t[4]??=z(E,t[0])?.[2]??i,L(N,((a,t)=>g(0,a))),[0,n,[E,N,c],w]})(n),_=e+(a=>{let t=2166136261;return T(k.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(Y(v)),b=t+"_"+_,f=async(a,e,n="",s="")=>{const i=Aa(t,a,_);return await R(ya+da+Ea+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},D=async(a,t,e,n)=>(await R(ya+a+"TRIGGER"+t+e+"EXECUTE "+Ea+n+"()"),t),h=a=>`PERFORM pg_notify('${b}',${a});`,P=(a,t)=>m?i:2===t?P(a,0)+" OR "+P(a,1):r(z(v[0],a)?.[2]??i,Na,0==t?"NEW":"OLD"),F=(a,e)=>N(p([sa,ia,ra],((n,s)=>D(da,Aa(t,"d",_,a,n),`AFTER ${n} ON${ga(a)}FOR EACH ROW WHEN(${P(a,s)})`,e))));return(m?Xa:Ya)(a,R,(async a=>{const e=await f("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ea} command_tag='${ua}' LOOP ${h("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await D("EVENT ",Aa(t,"c",_),`ON ddl_command_end WHEN TAG IN('${ua}')`,e);const n=await f("d",h("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await N(p(I(S),(async a=>(await R(ua+` IF NOT EXISTS${ga(a)}("_id"text PRIMARY KEY)`),await F(a,n))))),[await o(b,(t=>{return w((e=t,s=ka,e?.match(s)),(async([,t,e])=>{C(S,e)&&("c:"==t&&await F(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await R(`DROP FUNCTION IF EXISTS${$(t,",")}CASCADE`)}),u,E,g,v,I(S),(async(a,t)=>await a(ta+` table_name tn,column_name cn FROM information_schema.columns ${ea} table_schema='public'AND table_name IN(${Ta(t)})`,t)),A,O,"text",void 0,(a=>H(a)),(a=>X(a)))},za=async(a,t,e,n,s)=>{const i=await(t.reserve?.());return qa(a,e,i?.unsafe,(async(a,e)=>t.listen(a,e)),(a=>A(a.unlisten,s)),n,s,(()=>i?.release?.()),3,t,"getSql")};export{za as createPostgresPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=clearInterval,w=a=>null==a,y=(a,t,e)=>w(a)?e?.():t(a),d=t=>a(t)==s,u=a=>Array.isArray(a),E=(a,t,e)=>a.slice(t,e),N=a=>a.length,g=async a=>o.all(a),$=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},O=(a,t)=>a.forEach(t),m=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),R=a=>0==N(a),p=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),I=a=>a.shift(),S=(a,t)=>a?.has(t)??!1,_=a=>w(a)||0==(a=>a?.size??0)(a),C=a=>[...a?.values()??[]],b=(a,t)=>a?.forEach(t),L=(a,t)=>a?.delete(t),D=Object,f=a=>D.getPrototypeOf(a),h=D.entries,P=D.keys,M=D.freeze,F=(a=[])=>D.fromEntries(a),U=(...a)=>D.assign({},...a),G=(a,t)=>(delete a[t],a),j=(a,t)=>T(h(a),(([a,e])=>t(e,a))),x=(a,t)=>F(j(a,((a,e)=>[e,t(a,e)]))),B=a=>D.values(a),H=a=>N(P(a)),W=a=>(a=>!w(a)&&y(f(a),(a=>a==D.prototype||w(f(a))),(()=>!0)))(a)&&0==H(a),Y=a=>new Map(a),X=(a,t)=>a?.get(t),J=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>w(e)?(L(a,t),a):a?.set(t,e),z=(a,t,e,n)=>(S(a,t)?n?.(X(a,t)):k(a,t,e()),X(a,t)),K=(a,t,e,n,s=0)=>y((e?z:X)(a,t[s],s>N(t)-2?e:Y),(i=>{if(s>N(t)-2)return n?.(i)&&k(a,t[s]),i;const r=K(i,t,e,n,s+1);return _(i)&&k(a,t[s]),r})),V=/^\d+$/,q=a=>new Set(u(a)||w(a)?a:[a]),Q=(a,t)=>a?.add(t),Z={Idle:0,Loading:1,Saving:2},aa={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ta=Y(),ea=Y(),na=(a,t,n,s,i,r,o,c={},l=0,d=[])=>{let E,g,m,T=0,R=0,p=0;z(ta,d,(()=>0)),z(ea,d,(()=>[]));const S=Y(),[C,D,f,h,P]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!W(a)||!W(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!W(a)||!W(t),t.setContent]:$("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?I(a):null)??e+t++,t=>{V.test(t)&&N(a)<1e3&&v(a,t)}]})(),s=Y();return[(n,i,r,o=[],c=()=>[])=>{a??=ra;const l=t(1);return k(s,l,[n,i,r,o,c]),Q(K(i,r??[e],q),l),l},(t,n,...i)=>O(((a,t=[e])=>{const n=[],s=(a,e)=>e==N(t)?v(n,a):null===t[e]?b(a,(a=>s(a,e+1))):O([t[e],null],(t=>s(X(a,t),e+1)));return s(a,0),n})(t,n),(t=>b(t,(t=>X(s,t)[0](a,...n??[],...i))))),a=>y(X(s,a),(([,t,i])=>(K(t,i??[e],void 0,(t=>(L(t,a),_(t)?1:0))),k(s,a),n(a),i))),t=>y(X(s,t),(([t,,e=[],n,s])=>{const i=(...r)=>{const o=N(r);o==N(e)?t(a,...r,...s(r)):w(e[o])?O(n[o]?.(...r)??[],(a=>i(...r,a))):i(...r,e[o])};i()}))]})(),j=a=>{a!=T&&(T=a,U(S,void 0,T))},x=t=>{(C&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},B=async a=>(2!=T&&(j(1),R++,await ia((async()=>{await A((async()=>{const e=await t();u(e)?x(e):a?P(a):$("Content is not an array: "+e)}),(()=>{a&&P(a)})),j(0)}))),ra),H=async a=>(J(),await B(a),await A((async()=>g=await s((async(a,t)=>{t||a?2!=T&&(j(1),R++,x(t??a),j(0)):await B()}))),r),ra),J=async()=>(g&&(await A((()=>i(g)),r),g=void 0),ra),Z=async a=>(1!=T&&(j(2),p++,await ia((async()=>{await A((()=>n(D,a)),r),j(0)}))),ra),aa=async()=>(na(),await Z(),m=a.addDidFinishTransactionListener((()=>{const a=f();h(a)&&Z(a)})),ra),na=async()=>(m&&(a.delListener(m),m=void 0),ra),sa=async(a=!1)=>{const[t,e]=a?[na,J]:[J,na];return await t(),await e(),ra},ia=async(...a)=>(v(X(ea,d),...a),await(async()=>{if(!X(ta,d)){for(k(ta,d,1);!w(E=I(X(ea,d)));)await A(E,r);k(ta,d,0)}})(),ra),ra={load:B,startAutoLoad:H,stopAutoLoad:J,isAutoLoading:()=>!w(g),save:Z,startAutoSave:aa,stopAutoSave:na,isAutoSaving:()=>!w(m),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[aa,H]:[H,aa];return await e(a),await n(a),ra},stopAutoPersisting:sa,getStatus:()=>T,addStatusListener:a=>F(a,S),delListener:t=>(G(t),a),schedule:ia,getStore:()=>a,destroy:()=>(X(ea,d).splice(0,void 0),sa()),getStats:()=>({loads:R,saves:p}),...c};return M(ra)},sa=new c.TextEncoder,ia=JSON.stringify,ra=JSON.parse,oa=a=>ia(a,((a,t)=>void 0===t?"":t)),ca="_",la="_id",wa="SELECT",ya="WHERE",da="TABLE",ua="INSERT",Ea="DELETE",Na="UPDATE",ga="ALTER "+da,$a="FROM",Aa=Ea+" "+$a,Oa=wa+"*"+$a,ma="pragma_",Ta="data_version",Ra="schema_version",pa="pragma_table_",va="CREATE ",Ia=va+da,Sa="OR REPLACE ",_a="FUNCTION",Ca="$tableName",ba=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,La=a=>m(T(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${r(a,/"/g,'""')}"`)),"."),Da=(...a)=>La(m(a,"_")),fa=(a,t=[1])=>m(T(a,(()=>"$"+t[0]++)),n),ha=(a,t=i)=>ya+`(${r(t,Ca,La(a))})`,Pa="ColumnName",Ma="store",Fa="json",Ua=Ma+"TableName",Ga=Ma+"Id"+Pa,ja=Ma+Pa,xa="autoLoadIntervalSeconds",Ba="rowId"+Pa,Ha="tableId",Wa="tableName",Ya="deleteEmptyColumns",Xa="deleteEmptyTable",Ja="condition",ka={mode:Fa,[xa]:1},za={load:0,save:0,[Wa]:t+"_values"},Ka=(a,t,e,n,s)=>{const i=Y();return x(a,((a,r)=>{const o=E(B(U(t,d(a)?{[e]:a}:a)),0,H(t));w(o[0])||n(r,o[0])||(s(r,o[0]),k(i,r,o))})),i},Va=a=>{const e=(a=>U(ka,d(a)?{[Ua]:a}:a??{}))(a),n=e[xa];if(e.mode==Fa){const a=e[Ua]??t;return[1,n,[a,e[Ga]??la,e[ja]??Ma],q(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=E(B(U(za,o)),0,H(za)),l=c[2],w=q(l),y=q(l),u=Ka(s,{[Ha]:null,[Ba]:la,[Ja]:i},Ha,(a=>S(y,a)),(a=>Q(w,a))),N=Ka(r,{[Wa]:null,[Ba]:la,[Ya]:0,[Xa]:0,[Ja]:null},Wa,((a,t)=>S(y,t)),((a,t)=>Q(w,t)));var g;return g=(a,t)=>t[4]??=X(u,t[0])?.[2]??i,b(N,((a,t)=>g(0,a))),[0,n,[u,N,c],w]},qa=(a,t,e,s,r,o=Qa,c,l)=>{const y=Y();return[async()=>{y.clear(),T(await e(a,t),(({tn:a,cn:t})=>Q(z(y,a,q),t)))},async(t,e,n)=>((a,t)=>S(X(y,a),t))(t,e)?F(p(T(await a(Oa+La(t)+ha(t,n)),(a=>[a[e],l?x(G(a,e),l):G(a,e)])),(([a,t])=>!w(a)&&!W(t)))):{},async(t,e,s,l,d,u=!1,E=i)=>{const N=q();x(s??{},(a=>T(P(a??{}),(a=>Q(N,a)))));const $=C(N);if(!u&&d&&E==i&&R($)&&S(y,t))return await a("DROP "+da+La(t)),void k(y,t);const A=X(y,t),O=q(C(A));if(R($)||(S(y,t)?await g(T([e,...$],(async(n,s)=>{L(O,n)||(await a(ga+La(t)+"ADD"+La(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+La(t)+`(${La(e)})`),Q(A,n))}))):(await a(Ia+La(t)+`(${La(e)}${r} PRIMARY KEY${m(T($,(a=>n+La(a)+r)))});`),k(y,t,q([e,...$])))),await g([...!u&&l?T(C(O),(async n=>{n!=e&&(await a(ga+La(t)+"DROP"+La(n)),L(A,n))})):[]]),u)w(s)?await a(Aa+La(t)+ha(t,E)):await g(j(s,(async(n,s)=>{w(n)?await a(Aa+La(t)+ha(t,E)+`AND(${La(e)}=$1)`,[s]):R($)||await o(a,t,e,P(n),{[s]:c?T(B(n),c):B(n)},A)})));else if(R($))S(y,t)&&await a(Aa+La(t)+ha(t,E));else{const n=p(C(X(y,t)),(a=>a!=e)),i={},r=[];x(s??{},((a,t)=>{i[t]=T(n,(t=>c?c(a?.[t]):a?.[t])),v(r,t)})),await o(a,t,e,n,i),await a(Aa+La(t)+ha(t,E)+`AND${La(e)}NOT IN(${fa(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A((async()=>e=await t()),s),await a("END"),e}]},Qa=async(a,t,e,s,i)=>{const r=[1];await a(ua+" INTO"+La(t)+"("+((...a)=>m(T(a,La),n))(e,...s)+")VALUES"+m(j(i,(a=>"($"+r[0]+++","+fa(a,r)+")")),n)+"ON CONFLICT("+La(e)+`)DO ${Na} SET`+m(T(s,(a=>La(a)+"=excluded."+La(a))),n),j(i,((a,t)=>[t,...T(a,(a=>a??null))])).flat())},Za=(a,t,e,n,s,i,r,[o,c,l],w,y,d,u,E,N)=>{const[g,$,A,O]=qa(t,w,y,s,E,N),m=na(a,(()=>O((async()=>{return await g(),a=(await $(o,c))[ca]?.[l]??"null",ra(a,((a,t)=>""===t?void 0:t));var a}))),(a=>O((async()=>{await g(),await A(o,c,{[ca]:{[l]:oa(a()??null)}},!0,!0)}))),e,n,s,r,{[u]:()=>d,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,d);return m},at=(a,t,e,n,s,i,r,[o,c,[l,y,d]],u,E,N,$,A,O,m,T)=>{const[R,v,I,S]=qa(t,u,E,s,A,O,m,T),_=(a,t)=>g(J(c,(async([e,n,s,i,r],o)=>{t&&!(o in a)||await I(e,n,a[o],s,i,t,r)}))),C=async(a,t)=>y?await I(d,la,{[ca]:a},!0,!0,t):null,b=na(a,(()=>S((async()=>{await R();const a=await(async()=>F(p(await g(J(o,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!W(a[1])))))(),t=await(async()=>l?(await v(d,la))[ca]:{})();return W(a)&&w(t)?void 0:[a,t]}))),((a,t)=>S((async()=>{if(await R(),w(t)){const[t,e]=a();await _(t),await C(e)}else await _(t[0],!0),await C(t[1],!0)}))),e,n,s,r,{[$]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},tt=/^([cd]:)(.+)/,et=(a,n,s,o,c,l,w,d,u,E,N="getDb")=>{const $=ba(s,l),[A,,R,p]=Va(n),v=e+(a=>{let t=2166136261;return O(sa.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(oa(R)),I=t+"_"+v,_=async(a,e,n="",s="")=>{const i=Da(t,a,v);return await $(va+Sa+_a+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},b=async(a,t,e,n)=>(await $(va+a+"TRIGGER"+t+e+"EXECUTE "+_a+n+"()"),t),L=a=>`PERFORM pg_notify('${I}',${a});`,D=(a,t)=>A?i:2===t?D(a,0)+" OR "+D(a,1):r(X(R[0],a)?.[2]??i,Ca,0==t?"NEW":"OLD"),f=(a,e)=>g(T([ua,Ea,Na],((n,s)=>b(Sa,Da(t,"d",v,a,n),`AFTER ${n} ON${La(a)}FOR EACH ROW WHEN(${D(a,s)})`,e))));return(A?Za:at)(a,$,(async a=>{const e=await _("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ya} command_tag='${Ia}' LOOP ${L("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await b("EVENT ",Da(t,"c",v),`ON ddl_command_end WHEN TAG IN('${Ia}')`,e);const n=await _("d",L("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await g(T(C(p),(async a=>(await $(Ia+` IF NOT EXISTS${La(a)}("_id"text PRIMARY KEY)`),await f(a,n))))),[await o(I,(t=>{return y((e=t,s=tt,e?.match(s)),(async([,t,e])=>{S(p,e)&&("c:"==t&&await f(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await $(`DROP FUNCTION IF EXISTS${m(t,",")}CASCADE`)}),w,d,u,R,C(p),(async(a,t)=>await a(wa+` table_name tn,column_name cn FROM information_schema.columns ${ya} table_schema='public'AND table_name IN(${fa(t)})`,t)),E,N,"text",void 0,(a=>ia(a)),(a=>ra(a)))},nt=(a,t,n,s,i,r,o,c,w,y,d="getDb",u)=>{let E,N,g;const $=ba(n,r),[O,m,T,R]=Va(t);return(O?Za:at)(a,$,(a=>{let t;const e=()=>t=setInterval((()=>A((async()=>{const[{d:t,s:e,c:n}]=await $(wa+` ${Ta} d,${Ra} s,TOTAL_CHANGES() c FROM ${ma}${Ta} JOIN ${ma}${Ra}`);t==E&&e==N&&n==g||(null!=E&&a(),E=t,N=e,g=n)}))),1e3*m),n=()=>{E=N=g=null,l(t)},r=s((t=>{R.has(t)&&(n(),a(),e())}));return e(),()=>{n(),i(r)}}),(a=>a()),o,c,w,T,C(R),(async(a,t)=>await a(wa+` t.name tn,c.name cn FROM ${pa}list()t,${pa}info(t.name)c ${ya} t.schema='main'AND t.type IN('table','view')AND t.name IN(${fa(t)})ORDER BY t.name,c.name`,t)),y,d,e,u,(a=>!0===a?1:!1===a?0:a),void 0)};export{aa as Persists,Z as Status,na as createCustomPersister,et as createCustomPostgreSqlPersister,nt as createCustomSqlitePersister};
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=clearInterval,w=a=>null==a,y=(a,t,e)=>w(a)?e?.():t(a),d=t=>a(t)==s,u=a=>Array.isArray(a),E=(a,t,e)=>a.slice(t,e),N=a=>a.length,g=async a=>o.all(a),$=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},O=(a,t)=>a.forEach(t),m=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),R=a=>0==N(a),p=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),I=a=>a.shift(),S=(a,t)=>a?.has(t)??!1,_=a=>w(a)||0==(a=>a?.size??0)(a),C=a=>[...a?.values()??[]],b=(a,t)=>a?.forEach(t),L=(a,t)=>a?.delete(t),D=Object,f=a=>D.getPrototypeOf(a),h=D.entries,P=D.keys,M=D.freeze,F=(a=[])=>D.fromEntries(a),U=(...a)=>D.assign({},...a),G=(a,t)=>(delete a[t],a),j=(a,t)=>T(h(a),(([a,e])=>t(e,a))),x=(a,t)=>F(j(a,((a,e)=>[e,t(a,e)]))),B=a=>D.values(a),H=a=>N(P(a)),W=a=>(a=>!w(a)&&y(f(a),(a=>a==D.prototype||w(f(a))),(()=>!0)))(a)&&0==H(a),Y=a=>new Map(a),X=(a,t)=>a?.get(t),J=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>w(e)?(L(a,t),a):a?.set(t,e),z=(a,t,e,n)=>(S(a,t)?n?.(X(a,t)):k(a,t,e()),X(a,t)),K=(a,t,e,n,s=0)=>y((e?z:X)(a,t[s],s>N(t)-2?e:Y),(i=>{if(s>N(t)-2)return n?.(i)&&k(a,t[s]),i;const r=K(i,t,e,n,s+1);return _(i)&&k(a,t[s]),r})),V=/^\d+$/,q=a=>new Set(u(a)||w(a)?a:[a]),Q=(a,t)=>a?.add(t),Z={Idle:0,Loading:1,Saving:2},aa={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ta=Y(),ea=Y(),na=(a,t,n,s,i,r,o,c={},l=0,d=[])=>{let E,g,m,T=0,R=0,p=0;z(ta,d,(()=>0)),z(ea,d,(()=>[]));const S=Y(),[C,D,f,h,P]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!W(a)||!W(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!W(a)||!W(t),t.setContent]:$("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?I(a):null)??e+t++,t=>{V.test(t)&&N(a)<1e3&&v(a,t)}]})(),s=Y();return[(n,i,r,o=[],c=()=>[])=>{a??=ra;const l=t(1);return k(s,l,[n,i,r,o,c]),Q(K(i,r??[e],q),l),l},(t,n,...i)=>O(((a,t=[e])=>{const n=[],s=(a,e)=>e==N(t)?v(n,a):null===t[e]?b(a,(a=>s(a,e+1))):O([t[e],null],(t=>s(X(a,t),e+1)));return s(a,0),n})(t,n),(t=>b(t,(t=>X(s,t)[0](a,...n??[],...i))))),a=>y(X(s,a),(([,t,i])=>(K(t,i??[e],void 0,(t=>(L(t,a),_(t)?1:0))),k(s,a),n(a),i))),t=>y(X(s,t),(([t,,e=[],n,s])=>{const i=(...r)=>{const o=N(r);o==N(e)?t(a,...r,...s(r)):w(e[o])?O(n[o]?.(...r)??[],(a=>i(...r,a))):i(...r,e[o])};i()}))]})(),j=a=>{a!=T&&(T=a,U(S,void 0,T))},x=t=>{(C&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},B=async a=>(2!=T&&(j(1),R++,await ia((async()=>{await A((async()=>{const e=await t();u(e)?x(e):a?P(a):$("Content is not an array: "+e)}),(()=>{a&&P(a)})),j(0)}))),ra),H=async a=>(J(),await B(a),await A((async()=>g=await s((async(a,t)=>{t||a?2!=T&&(j(1),R++,x(t??a),j(0)):await B()}))),r),ra),J=async()=>(g&&(await A((()=>i(g)),r),g=void 0),ra),Z=async a=>(1!=T&&(j(2),p++,await ia((async()=>{await A((()=>n(D,a)),r),j(0)}))),ra),aa=async()=>(na(),await Z(),m=a.addDidFinishTransactionListener((()=>{const a=f();h(a)&&Z(a)})),ra),na=async()=>(m&&(a.delListener(m),m=void 0),ra),sa=async(a=!1)=>{const[t,e]=a?[na,J]:[J,na];return await t(),await e(),ra},ia=async(...a)=>(v(X(ea,d),...a),await(async()=>{if(!X(ta,d)){for(k(ta,d,1);!w(E=I(X(ea,d)));)await A(E,r);k(ta,d,0)}})(),ra),ra={load:B,startAutoLoad:H,stopAutoLoad:J,isAutoLoading:()=>!w(g),save:Z,startAutoSave:aa,stopAutoSave:na,isAutoSaving:()=>!w(m),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[aa,H]:[H,aa];return await e(a),await n(a),ra},stopAutoPersisting:sa,getStatus:()=>T,addStatusListener:a=>F(a,S),delListener:t=>(G(t),a),schedule:ia,getStore:()=>a,destroy:()=>(X(ea,d).splice(0,void 0),sa()),getStats:()=>({loads:R,saves:p}),...c};return M(ra)},sa=JSON.stringify,ia=JSON.parse,ra=a=>sa(a,((a,t)=>void 0===t?"":t)),oa=new c.TextEncoder,ca="_",la="_id",wa="SELECT",ya="WHERE",da="TABLE",ua="INSERT",Ea="DELETE",Na="UPDATE",ga="ALTER "+da,$a="FROM",Aa=Ea+" "+$a,Oa=wa+"*"+$a,ma="pragma_",Ta="data_version",Ra="schema_version",pa="pragma_table_",va="CREATE ",Ia=va+da,Sa="OR REPLACE ",_a="FUNCTION",Ca="$tableName",ba=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,La=a=>m(T(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${r(a,/"/g,'""')}"`)),"."),Da=(...a)=>La(m(a,"_")),fa=(a,t=[1])=>m(T(a,(()=>"$"+t[0]++)),n),ha=(a,t=i)=>ya+`(${r(t,Ca,La(a))})`,Pa="ColumnName",Ma="store",Fa="json",Ua=Ma+"TableName",Ga=Ma+"Id"+Pa,ja=Ma+Pa,xa="autoLoadIntervalSeconds",Ba="rowId"+Pa,Ha="tableId",Wa="tableName",Ya="deleteEmptyColumns",Xa="deleteEmptyTable",Ja="condition",ka={mode:Fa,[xa]:1},za={load:0,save:0,[Wa]:t+"_values"},Ka=(a,t,e,n,s)=>{const i=Y();return x(a,((a,r)=>{const o=E(B(U(t,d(a)?{[e]:a}:a)),0,H(t));w(o[0])||n(r,o[0])||(s(r,o[0]),k(i,r,o))})),i},Va=a=>{const e=(a=>U(ka,d(a)?{[Ua]:a}:a??{}))(a),n=e[xa];if(e.mode==Fa){const a=e[Ua]??t;return[1,n,[a,e[Ga]??la,e[ja]??Ma],q(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=E(B(U(za,o)),0,H(za)),l=c[2],w=q(l),y=q(l),u=Ka(s,{[Ha]:null,[Ba]:la,[Ja]:i},Ha,(a=>S(y,a)),(a=>Q(w,a))),N=Ka(r,{[Wa]:null,[Ba]:la,[Ya]:0,[Xa]:0,[Ja]:null},Wa,((a,t)=>S(y,t)),((a,t)=>Q(w,t)));var g;return g=(a,t)=>t[4]??=X(u,t[0])?.[2]??i,b(N,((a,t)=>g(0,a))),[0,n,[u,N,c],w]},qa=(a,t,e,s,r,o=Qa,c,l)=>{const y=Y();return[async()=>{y.clear(),T(await e(a,t),(({tn:a,cn:t})=>Q(z(y,a,q),t)))},async(t,e,n)=>((a,t)=>S(X(y,a),t))(t,e)?F(p(T(await a(Oa+La(t)+ha(t,n)),(a=>[a[e],l?x(G(a,e),l):G(a,e)])),(([a,t])=>!w(a)&&!W(t)))):{},async(t,e,s,l,d,u=!1,E=i)=>{const N=q();x(s??{},(a=>T(P(a??{}),(a=>Q(N,a)))));const $=C(N);if(!u&&d&&E==i&&R($)&&S(y,t))return await a("DROP "+da+La(t)),void k(y,t);const A=X(y,t),O=q(C(A));if(R($)||(S(y,t)?await g(T([e,...$],(async(n,s)=>{L(O,n)||(await a(ga+La(t)+"ADD"+La(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+La(t)+`(${La(e)})`),Q(A,n))}))):(await a(Ia+La(t)+`(${La(e)}${r} PRIMARY KEY${m(T($,(a=>n+La(a)+r)))});`),k(y,t,q([e,...$])))),await g([...!u&&l?T(C(O),(async n=>{n!=e&&(await a(ga+La(t)+"DROP"+La(n)),L(A,n))})):[]]),u)w(s)?await a(Aa+La(t)+ha(t,E)):await g(j(s,(async(n,s)=>{w(n)?await a(Aa+La(t)+ha(t,E)+`AND(${La(e)}=$1)`,[s]):R($)||await o(a,t,e,P(n),{[s]:c?T(B(n),c):B(n)},A)})));else if(R($))S(y,t)&&await a(Aa+La(t)+ha(t,E));else{const n=p(C(X(y,t)),(a=>a!=e)),i={},r=[];x(s??{},((a,t)=>{i[t]=T(n,(t=>c?c(a?.[t]):a?.[t])),v(r,t)})),await o(a,t,e,n,i),await a(Aa+La(t)+ha(t,E)+`AND${La(e)}NOT IN(${fa(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A((async()=>e=await t()),s),await a("END"),e}]},Qa=async(a,t,e,s,i)=>{const r=[1];await a(ua+" INTO"+La(t)+"("+((...a)=>m(T(a,La),n))(e,...s)+")VALUES"+m(j(i,(a=>"($"+r[0]+++","+fa(a,r)+")")),n)+"ON CONFLICT("+La(e)+`)DO ${Na} SET`+m(T(s,(a=>La(a)+"=excluded."+La(a))),n),j(i,((a,t)=>[t,...T(a,(a=>a??null))])).flat())},Za=(a,t,e,n,s,i,r,[o,c,l],w,y,d,u,E,N)=>{const[g,$,A,O]=qa(t,w,y,s,E,N),m=na(a,(()=>O((async()=>{return await g(),a=(await $(o,c))[ca]?.[l]??"null",ia(a,((a,t)=>""===t?void 0:t));var a}))),(a=>O((async()=>{await g(),await A(o,c,{[ca]:{[l]:ra(a()??null)}},!0,!0)}))),e,n,s,r,{[u]:()=>d,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,d);return m},at=(a,t,e,n,s,i,r,[o,c,[l,y,d]],u,E,N,$,A,O,m,T)=>{const[R,v,I,S]=qa(t,u,E,s,A,O,m,T),_=(a,t)=>g(J(c,(async([e,n,s,i,r],o)=>{t&&!(o in a)||await I(e,n,a[o],s,i,t,r)}))),C=async(a,t)=>y?await I(d,la,{[ca]:a},!0,!0,t):null,b=na(a,(()=>S((async()=>{await R();const a=await(async()=>F(p(await g(J(o,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!W(a[1])))))(),t=await(async()=>l?(await v(d,la))[ca]:{})();return W(a)&&w(t)?void 0:[a,t]}))),((a,t)=>S((async()=>{if(await R(),w(t)){const[t,e]=a();await _(t),await C(e)}else await _(t[0],!0),await C(t[1],!0)}))),e,n,s,r,{[$]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},tt=/^([cd]:)(.+)/,et=(a,n,s,o,c,l,w,d,u,E,N="getDb")=>{const $=ba(s,l),[A,,R,p]=Va(n),v=e+(a=>{let t=2166136261;return O(oa.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(ra(R)),I=t+"_"+v,_=async(a,e,n="",s="")=>{const i=Da(t,a,v);return await $(va+Sa+_a+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},b=async(a,t,e,n)=>(await $(va+a+"TRIGGER"+t+e+"EXECUTE "+_a+n+"()"),t),L=a=>`PERFORM pg_notify('${I}',${a});`,D=(a,t)=>A?i:2===t?D(a,0)+" OR "+D(a,1):r(X(R[0],a)?.[2]??i,Ca,0==t?"NEW":"OLD"),f=(a,e)=>g(T([ua,Ea,Na],((n,s)=>b(Sa,Da(t,"d",v,a,n),`AFTER ${n} ON${La(a)}FOR EACH ROW WHEN(${D(a,s)})`,e))));return(A?Za:at)(a,$,(async a=>{const e=await _("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ya} command_tag='${Ia}' LOOP ${L("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await b("EVENT ",Da(t,"c",v),`ON ddl_command_end WHEN TAG IN('${Ia}')`,e);const n=await _("d",L("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await g(T(C(p),(async a=>(await $(Ia+` IF NOT EXISTS${La(a)}("_id"text PRIMARY KEY)`),await f(a,n))))),[await o(I,(t=>{return y((e=t,s=tt,e?.match(s)),(async([,t,e])=>{S(p,e)&&("c:"==t&&await f(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await $(`DROP FUNCTION IF EXISTS${m(t,",")}CASCADE`)}),w,d,u,R,C(p),(async(a,t)=>await a(wa+` table_name tn,column_name cn FROM information_schema.columns ${ya} table_schema='public'AND table_name IN(${fa(t)})`,t)),E,N,"text",void 0,(a=>sa(a)),(a=>ia(a)))},nt=(a,t,n,s,i,r,o,c,w,y,d="getDb",u)=>{let E,N,g;const $=ba(n,r),[O,m,T,R]=Va(t);return(O?Za:at)(a,$,(a=>{let t;const e=()=>t=setInterval((()=>A((async()=>{const[{d:t,s:e,c:n}]=await $(wa+` ${Ta} d,${Ra} s,TOTAL_CHANGES() c FROM ${ma}${Ta} JOIN ${ma}${Ra}`);t==E&&e==N&&n==g||(null!=E&&a(),E=t,N=e,g=n)}))),1e3*m),n=()=>{E=N=g=null,l(t)},r=s((t=>{R.has(t)&&(n(),a(),e())}));return e(),()=>{n(),i(r)}}),(a=>a()),o,c,w,T,C(R),(async(a,t)=>await a(wa+` t.name tn,c.name cn FROM ${pa}list()t,${pa}info(t.name)c ${ya} t.schema='main'AND t.type IN('table','view')AND t.name IN(${fa(t)})ORDER BY t.name,c.name`,t)),y,d,e,u,(a=>!0===a?1:!1===a?0:a),void 0)};export{aa as Persists,Z as Status,na as createCustomPersister,et as createCustomPostgreSqlPersister,nt as createCustomSqlitePersister};
|
|
Binary file
|
package/min/store/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=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",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.entries,Y=Q.isFrozen,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(X(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||Y(e)?(s?.(),!1):(((e,t)=>{O(X(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=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",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
package/min/store/index.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=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",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.entries,Y=Q.isFrozen,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(X(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||Y(e)?(s?.(),!1):(((e,t)=>{O(X(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=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",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useCell as s,useValue as r,useSetValueCallback as l,ValueView as a,useValueIds as i,useStoreOrStoreById as o,useIndexesOrIndexesById as d,useSliceRowIds as c,useTableCellIds as h,useResultRowCount as u,useResultSortedRowIds as m,ResultCellView as g,useResultTableCellIds as p,useRelationshipsOrRelationshipsById as b,CellView as f,useRowIds as I,useSetCellCallback as w,useRemoteRowId as y,useRowCount as v,useSortedRowIds as C,useIndexes as x,useIndexIds as T,useSliceIds as k,useMetrics as S,useMetricIds as q,useMetric as N,useQueries as V,useQueryIds as L,useRelationships as M,useRelationshipIds as R,useStore as E,useTableIds as z,useValues as $,useStoreIds as A,useMetricsIds as P,useIndexesIds as J,useRelationshipsIds as O,useQueriesIds as D,useCreateStore as F,useCreatePersister as j}from"../ui-react/index.js";import B from"react";const H=e=>typeof e,W="",Q=H(W),G=H(!0),K=H(0),U=H(H),X="type",Y="default",Z="Has",_="Ids",ee="Table",te=ee+"s",ne=ee+_,se="Row",re=se+"Count",le=se+_,ae="Cell",ie=ae+_,oe="Value",de=oe+"s",ce=oe+_,he="currentTarget",ue="value",me=e=>W+e,ge=globalThis.window,pe=Math,be=pe.min,fe=pe.floor,Ie=isFinite,we=e=>null==e,ye=(e,t,n)=>we(e)?n?.():t(e),ve=e=>e==Q||e==G,Ce=e=>H(e)==U,xe=e=>Array.isArray(e),Te=(e,t,n)=>e.slice(t,n),ke=e=>e.length,Se=e=>{throw Error(e)},qe=async(e,t,n)=>{try{return await e()}catch(e){t?.(e)}},Ne=(e,t)=>e.sort(t),Ve=(e,t)=>e.forEach(t),Le=(e,t)=>e.map(t),Me=e=>0==ke(e),Re=(e,...t)=>e.push(...t),Ee=e=>e.shift(),ze=Object,$e=e=>ze.getPrototypeOf(e),Ae=ze.entries,Pe=ze.isFrozen,Je=e=>!we(e)&&ye($e(e),(e=>e==ze.prototype||we($e(e))),(()=>!0)),Oe=ze.keys,De=ze.freeze,Fe=(e=[])=>ze.fromEntries(e),je=(e,t)=>t in e,Be=(e,t)=>(delete e[t],e),He=(e,t)=>Le(Ae(e),(([e,n])=>t(n,e))),We=(e,t)=>Fe(He(e,((e,n)=>[n,t(e,n)]))),Qe=e=>Je(e)&&0==(e=>ke(Oe(e)))(e),Ge=(e,t,n,s=0)=>we(e)||!Je(e)||!s&&Qe(e)||Pe(e)?(n?.(),!1):(((e,t)=>{Ve(Ae(e),(([e,n])=>t(n,e)))})(e,((n,s)=>{t(n,s)||Be(e,s)})),!!s||!Qe(e)),Ke=JSON.stringify,Ue=JSON.parse,Xe=e=>Ke(e,((e,t)=>t instanceof Map?ze.fromEntries([...t]):t)),Ye=e=>t=>{return n=(t,n)=>t+e(n),rt(t).reduce(n,0);var n},Ze=e=>e?.size??0,_e=Ye(Ze),et=Ye(_e),tt=Ye(et),nt=(e,t)=>e?.has(t)??!1,st=e=>we(e)||0==Ze(e),rt=e=>[...e?.values()??[]],lt=e=>e.clear(),at=(e,t)=>e?.forEach(t),it=(e,t)=>e?.delete(t),ot=e=>new Map(e),dt=e=>[...e?.keys()??[]],ct=(e,t)=>e?.get(t),ht=(e,t)=>at(e,((e,n)=>t(n,e))),ut=(e,t,n)=>we(n)?(it(e,t),e):e?.set(t,n),mt=(e,t,n,s)=>(nt(e,t)?s?.(ct(e,t)):ut(e,t,n()),ct(e,t)),gt=(e,t,n,s=ut)=>(We(t,((t,s)=>n(e,s,t))),ht(e,(n=>je(t,n)?0:s(e,n))),e),pt=(e,t,n,s)=>{const r={};return at(e,((e,l)=>{if(!n?.(e,l)){const n=t?t(e,l):e;s?.(n)||(r[l]=n)}})),r},bt=(e,t,n)=>pt(e,(e=>pt(e,t,n)),st,Qe),ft=(e,t,n)=>pt(e,(e=>bt(e,t,n)),st,Qe),It=(e,t)=>{const n=ot();return at(e,((e,s)=>n.set(s,t?.(e)??e))),n},wt=e=>It(e,It),yt=e=>It(e,wt),vt=(e,t,n,s,r=0)=>ye((n?mt:ct)(e,t[r],r>ke(t)-2?n:ot),(l=>{if(r>ke(t)-2)return s?.(l)&&ut(e,t[r]),l;const a=vt(l,t,n,s,r+1);return st(l)&&ut(e,t[r]),a})),Ct=/^\d+$/,xt=()=>{const e=[];let t=0;return[n=>(n?Ee(e):null)??W+t++,t=>{Ct.test(t)&&ke(e)<1e3&&Re(e,t)}]},Tt=e=>new Set(xe(e)||we(e)?e:[e]),kt=(e,t)=>e?.add(t),St=e=>{let t;const[n,s]=xt(),r=ot();return[(s,l,a,i=[],o=()=>[])=>{t??=e();const d=n(1);return ut(r,d,[s,l,a,i,o]),kt(vt(l,a??[W],Tt),d),d},(e,n,...s)=>Ve(((e,t=[W])=>{const n=[],s=(e,r)=>r==ke(t)?Re(n,e):null===t[r]?at(e,(e=>s(e,r+1))):Ve([t[r],null],(t=>s(ct(e,t),r+1)));return s(e,0),n})(e,n),(e=>at(e,(e=>ct(r,e)[0](t,...n??[],...s))))),e=>ye(ct(r,e),(([,t,n])=>(vt(t,n??[W],void 0,(t=>(it(t,e),st(t)?1:0))),ut(r,e),s(e),n))),e=>ye(ct(r,e),(([e,,n=[],s,r])=>{const l=(...a)=>{const i=ke(a);i==ke(n)?e(t,...a,...r(a)):we(n[i])?Ve(s[i]?.(...a)??[],(e=>l(...a,e))):l(...a,n[i])};l()}))]},qt=ot(),Nt=ot(),Vt="storage",Lt=e=>{const t=H(e);return ve(t)||t==K&&Ie(e)?t:void 0},Mt=(e,t,n,s,r)=>we(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r),Rt=(e,t,n)=>we(n)?e.delValue(t):e.setValue(t,n),Et=(e,t,n,s)=>e==Q?t:e==K?n:s,zt=e=>[e,e],$t=(e,t=_e)=>t(e[0])+t(e[1]),At=()=>[ot(),ot()],Pt=e=>[...e],Jt=([e,t])=>e===t,Ot=(e,t,n)=>ut(e,t,ct(e,t)==-n?void 0:n),Dt=()=>{let e,t,n=!1,s=!1,r=0,l=[];const a=ot(),i=ot(),o=ot(),d=ot(),c=ot(),h=ot(),u=ot(),m=ot(),g=ot(),p=ot(),b=ot(),f=ot(),I=ot(),w=ot(),y=Tt(),v=ot(),C=ot(),x=ot(),T=ot(),k=At(),S=At(),q=At(),N=At(),V=At(),L=At(),M=At(),R=At(),E=At(),z=At(),$=At(),A=At(),P=At(),J=At(),O=At(),D=At(),F=At(),j=At(),B=At(),H=At(),W=At(),Q=At(),G=ot(),U=At(),[_,he,ue,ge]=St((()=>On)),pe=e=>{if(!Ge(e,((e,t)=>[X,Y].includes(t))))return!1;const t=e[X];return!(!ve(t)&&t!=K||(Lt(e[Y])!=t&&Be(e,Y),0))},be=xe,fe=(t,n)=>(!e||nt(b,n)||Ut(n))&&Ge(t,((e,t)=>Ie(n,t,e)),(()=>Ut(n))),Ie=(e,t,n,s)=>Ge(s?n:ze(n,e,t),((s,r)=>ye(Se(e,t,r,s),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Ut(e,t))),Se=(t,n,s,r)=>e?ye(ct(ct(b,t),s),(e=>Lt(r)!=e[X]?Ut(t,n,s,r,e[Y]):r),(()=>Ut(t,n,s,r))):we(Lt(r))?Ut(t,n,s,r):r,Me=(e,t)=>Ge(t?e:$e(e),((t,n)=>ye(Ee(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Xt())),Ee=(e,n)=>t?ye(ct(I,e),(t=>Lt(n)!=t[X]?Xt(e,n,t[Y]):n),(()=>Xt(e,n))):we(Lt(n))?Xt(e,n):n,ze=(e,t,n)=>(ye(ct(f,t),(([s,r])=>{at(s,((t,n)=>{je(e,n)||(e[n]=t)})),at(r,(s=>{je(e,s)||Ut(t,n,s)}))})),e),$e=e=>(t&&(at(w,((t,n)=>{je(e,n)||(e[n]=t)})),at(y,(t=>{je(e,t)||Xt(t)}))),e),Ae=e=>gt(b,e,((e,t,n)=>{const s=ot(),r=Tt();gt(mt(b,t,ot),n,((e,t,n)=>{ut(e,t,n),ye(n[Y],(e=>ut(s,t,e)),(()=>kt(r,t)))})),ut(f,t,[s,r])}),((e,t)=>{ut(b,t),ut(f,t)})),Pe=e=>gt(I,e,((e,t,n)=>{ut(I,t,n),ye(n[Y],(e=>ut(w,t,e)),(()=>kt(y,t)))}),((e,t)=>{ut(I,t),ut(w,t),it(y,t)})),Oe=e=>Qe(e)?Ln():kn(e),Fe=e=>gt(x,e,((e,t,n)=>He(t,n)),((e,t)=>Vt(t))),He=(e,t)=>gt(mt(x,e,(()=>(Bt(e,1),ut(v,e,xt()),ut(C,e,ot()),ot()))),t,((t,n,s)=>Ke(e,t,n,s)),((t,n)=>Et(e,t,n))),Ke=(e,t,n,s,r)=>gt(mt(t,n,(()=>(Ht(e,n,1),ot()))),s,((t,s,r)=>Ye(e,n,t,s,r)),((s,l)=>Ft(e,t,n,s,l,r))),Ye=(e,t,n,s,r)=>{nt(n,s)||Wt(e,t,s,1);const l=ct(n,s);r!==l&&(Qt(e,t,s,l,r),ut(n,s,r))},rt=(e,t,n,s,r)=>ye(ct(t,n),(t=>Ye(e,n,t,s,r)),(()=>Ke(e,t,n,ze({[s]:r},e,n)))),vt=e=>Qe(e)?En():Sn(e),Ct=e=>gt(T,e,((e,t,n)=>qt(t,n)),((e,t)=>jt(t))),qt=(e,t)=>{nt(T,e)||Gt(e,1);const n=ct(T,e);t!==n&&(Kt(e,n,t),ut(T,e,t))},Nt=e=>ct(x,e)??He(e,{}),Vt=e=>He(e,{}),Et=(e,t,n)=>{const[,s]=ct(v,e);s(n),Ke(e,t,n,{},!0)},Ft=(e,t,n,s,r,l)=>{const a=ct(ct(f,e)?.[0],r);if(!we(a)&&!l)return Ye(e,n,s,r,a);const i=t=>{Qt(e,n,t,ct(s,t)),Wt(e,n,t,-1),ut(s,t)};we(a)?i(r):ht(s,i),st(s)&&(Ht(e,n,-1),st(ut(t,n))&&(Bt(e,-1),ut(x,e),ut(v,e),ut(C,e)))},jt=e=>{const t=ct(w,e);if(!we(t))return qt(e,t);Kt(e,ct(T,e)),Gt(e,-1),ut(T,e)},Bt=(e,t)=>Ot(a,e,t),Ht=(e,t,n)=>Ot(mt(d,e,ot),t,n)&&ut(o,e,mt(o,e,(()=>0))+n),Wt=(e,t,n,s)=>{const r=ct(C,e),l=ct(r,n)??0;(0==l&&1==s||1==l&&-1==s)&&Ot(mt(i,e,ot),n,s),ut(r,n,l!=-s?l+s:null),Ot(mt(mt(c,e,ot),t,ot),n,s)},Qt=(e,t,n,s,r)=>{mt(mt(mt(h,e,ot),t,ot),n,(()=>[s,0]))[1]=r,l[3]?.(e,t,n,r)},Gt=(e,t)=>Ot(u,e,t),Kt=(e,t,n)=>{mt(m,e,(()=>[t,0]))[1]=n,l[4]?.(e,n)},Ut=(e,t,n,s,r)=>(Re(mt(mt(mt(g,e,ot),t,ot),n,(()=>[])),s),r),Xt=(e,t,n)=>(Re(mt(p,e,(()=>[])),t),n),Yt=(e,t,n)=>ye(ct(ct(ct(h,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...zt(gn(e,t,n))])),Zt=e=>ye(ct(m,e),(([e,t])=>[!0,e,t]),(()=>[!1,...zt(fn(e))])),_t=e=>st(g)||st(D[e])?0:at(e?yt(g):g,((t,n)=>at(t,((t,s)=>at(t,((t,r)=>he(D[e],[n,s,r],t))))))),en=e=>st(p)||st(F[e])?0:at(e?It(p):p,((t,n)=>he(F[e],[n],t))),tn=(e,t,n,s)=>{if(!st(e))return he(t,s,(()=>pt(e))),ht(e,((e,t)=>he(n,[...s??[],e],1==t))),1},nn=e=>{const t=In();t!=n&&he(k[e],void 0,t);const s=st(z[e]),r=st(P[e])&&st(J[e])&&st(E[e])&&st($[e])&&st(L[e])&&st(M[e])&&st(R[e])&&s&&st(q[e])&&st(N[e]),l=st(O[e])&&st(A[e])&&st(V[e])&&st(S[e]);if(!r||!l){const t=e?[It(a),wt(i),It(o),wt(d),yt(c),yt(h)]:[a,i,o,d,c,h];if(!r){tn(t[0],q[e],N[e]),at(t[1],((t,n)=>tn(t,L[e],M[e],[n]))),at(t[2],((t,n)=>{0!=t&&he(R[e],[n],cn(n))}));const n=Tt();at(t[3],((t,r)=>{tn(t,E[e],$[e],[r])&&!s&&(he(z[e],[r,null]),kt(n,r))})),s||at(t[5],((t,s)=>{if(!nt(n,s)){const n=Tt();at(t,(e=>at(e,(([t,s],r)=>s!==t?kt(n,r):it(e,r))))),at(n,(t=>he(z[e],[s,t])))}})),at(t[4],((t,n)=>at(t,((t,s)=>tn(t,P[e],J[e],[n,s])))))}if(!l){let n;at(t[5],((t,s)=>{let r;at(t,((t,l)=>{let a;at(t,(([t,i],o)=>{i!==t&&(he(O[e],[s,l,o],i,t,Yt),n=r=a=1)})),a&&he(A[e],[s,l],Yt)})),r&&he(V[e],[s],Yt)})),n&&he(S[e],void 0,Yt)}}},sn=e=>{const t=xn();t!=s&&he(j[e],void 0,t);const n=st(H[e])&&st(W[e]),r=st(Q[e])&&st(B[e]);if(!n||!r){const t=e?[It(u),It(m)]:[u,m];if(n||tn(t[0],H[e],W[e]),!r){let n;at(t[1],(([t,s],r)=>{s!==t&&(he(Q[e],[r],s,t,Zt),n=1)})),n&&he(B[e],void 0,Zt)}}},rn=(e,...t)=>(An((()=>e(...Le(t,me)))),On),ln=(e,t,n,s,r)=>{let l=un(e,t,...n);return _((()=>{const r=un(e,t,...n);var a,i,o;i=l,ke(a=r)===ke(i)&&(o=(e,t)=>i[t]===e,a.every(o))||(l=r,s(On,e,t,...n,l))}),z[r?1:0],[e,t],[on])},an=()=>ft(x),on=()=>dt(x),dn=e=>dt(ct(C,me(e))),cn=e=>Ze(ct(x,me(e))),hn=e=>dt(ct(x,me(e))),un=(e,t,n,s=0,r)=>{return Je(e)?un(e.tableId,e.cellId,e.descending,e.offset,e.limit):Le(Te(Ne((l=ct(x,me(e)),a=(e,n)=>[we(t)?n:ct(e,me(t)),n],Le([...l?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(n?-1:1))),s,we(r)?r:s+r),(([,e])=>e));var l,a},mn=(e,t)=>dt(ct(ct(x,me(e)),me(t))),gn=(e,t,n)=>ct(ct(ct(x,me(e)),me(t)),me(n)),pn=()=>pt(T),bn=()=>dt(T),fn=e=>ct(T,me(e)),In=()=>!st(x),wn=e=>nt(x,me(e)),yn=(e,t)=>nt(ct(C,me(e)),me(t)),vn=(e,t)=>nt(ct(x,me(e)),me(t)),Cn=(e,t,n)=>nt(ct(ct(x,me(e)),me(t)),me(n)),xn=()=>!st(T),Tn=e=>nt(T,me(e)),kn=e=>rn((()=>(e=>Ge(e,fe,Ut))(e)?Fe(e):0)),Sn=e=>rn((()=>Me(e)?Ct(e):0)),qn=e=>(qe((()=>Oe(Ue(e)))),On),Nn=t=>rn((()=>{if((e=Ge(t,(e=>Ge(e,pe))))&&(Ae(t),!st(x))){const e=an();Ln(),kn(e)}})),Vn=e=>rn((()=>{if(t=(e=>Ge(e,pe))(e)){const n=pn();$n(),En(),t=!0,Pe(e),Sn(n)}})),Ln=()=>rn((()=>Fe({}))),Mn=e=>rn((e=>nt(x,e)?Vt(e):0),e),Rn=(e,t)=>rn(((e,t)=>ye(ct(x,e),(n=>nt(n,t)?Et(e,n,t):0))),e,t),En=()=>rn((()=>Ct({}))),zn=()=>rn((()=>{Ae({}),e=!1})),$n=()=>rn((()=>{Pe({}),t=!1})),An=(e,t)=>{if(-1!=r){Pn();const n=e();return Jn(t),n}},Pn=()=>(-1!=r&&r++,1==r&&(l[0]?.(),he(G)),On),Jn=e=>(r>0&&(r--,0==r&&(r=1,_t(1),st(h)||nn(1),en(1),st(m)||sn(1),e?.(On)&&(at(h,((e,t)=>at(e,((e,n)=>at(e,(([e],s)=>Mt(On,t,n,s,e))))))),lt(h),at(m,(([e],t)=>Rt(On,t,e))),lt(m)),he(U[0],void 0),r=-1,_t(0),st(h)||nn(0),en(0),st(m)||sn(0),l[1]?.(),he(U[1],void 0),l[2]?.(),r=0,n=In(),s=xn(),Ve([a,i,o,d,c,h,g,u,m,p],lt))),On),On={getContent:()=>[an(),pn()],getTables:an,getTableIds:on,getTable:e=>bt(ct(x,me(e))),getTableCellIds:dn,getRowCount:cn,getRowIds:hn,getSortedRowIds:un,getRow:(e,t)=>pt(ct(ct(x,me(e)),me(t))),getCellIds:mn,getCell:gn,getValues:pn,getValueIds:bn,getValue:fn,hasTables:In,hasTable:wn,hasTableCell:yn,hasRow:vn,hasCell:Cn,hasValues:xn,hasValue:Tn,getTablesJson:()=>Xe(x),getValuesJson:()=>Xe(T),getJson:()=>Xe([x,T]),getTablesSchemaJson:()=>Xe(b),getValuesSchemaJson:()=>Xe(I),getSchemaJson:()=>Xe([b,I]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>rn((()=>{const t=Ce(e)?e():e;be(t)&&(([e,t])=>{(Qe(e)?Ln:kn)(e),(Qe(t)?En:Sn)(t)})(t)})),setTables:kn,setTable:(e,t)=>rn((e=>fe(t,e)?He(e,t):0),e),setRow:(e,t,n)=>rn(((e,t)=>Ie(e,t,n)?Ke(e,Nt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let s;return Ie(e,s,t)&&(e=me(e),Ke(e,Nt(e),s=((e,t)=>{const[n]=ct(v,e);let s;do{s=n(t)}while(nt(ct(x,e),s));return s})(e,n?1:0),t)),s})),setPartialRow:(e,t,n)=>rn(((e,t)=>{if(Ie(e,t,n,1)){const s=Nt(e);We(n,((n,r)=>rt(e,s,t,r,n)))}}),e,t),setCell:(e,t,n,s)=>rn(((e,t,n)=>ye(Se(e,t,n,Ce(s)?s(gn(e,t,n)):s),(s=>rt(e,Nt(e),t,n,s)))),e,t,n),setValues:Sn,setPartialValues:e=>rn((()=>Me(e,1)?We(e,((e,t)=>qt(t,e))):0)),setValue:(e,t)=>rn((e=>ye(Ee(e,Ce(t)?t(fn(e)):t),(t=>qt(e,t)))),e),applyChanges:e=>rn((()=>{We(e[0],((e,t)=>we(e)?Mn(t):We(e,((e,n)=>we(e)?Rn(t,n):We(e,((e,s)=>Mt(On,t,n,s,e))))))),We(e[1],((e,t)=>Rt(On,t,e)))})),setTablesJson:qn,setValuesJson:e=>(qe((()=>vt(Ue(e)))),On),setJson:e=>rn((()=>qe((()=>{const[t,n]=Ue(e);Oe(t),vt(n)}),(()=>qn(e))))),setTablesSchema:Nn,setValuesSchema:Vn,setSchema:(e,t)=>rn((()=>{Nn(e),Vn(t)})),delTables:Ln,delTable:Mn,delRow:Rn,delCell:(e,t,n,s)=>rn(((e,t,n)=>ye(ct(x,e),(r=>ye(ct(r,t),(l=>nt(l,n)?Ft(e,r,t,l,n,s):0))))),e,t,n),delValues:En,delValue:e=>rn((e=>nt(T,e)?jt(e):0),e),delTablesSchema:zn,delValuesSchema:$n,delSchema:()=>rn((()=>{zn(),$n()})),transaction:An,startTransaction:Pn,getTransactionChanges:()=>[pt(h,((e,t)=>-1===ct(a,t)?void 0:pt(e,((e,n)=>-1===ct(ct(d,t),n)?void 0:pt(e,(([,e])=>e),(e=>Jt(e)))),st,Qe)),st,Qe),pt(m,(([,e])=>e),(e=>Jt(e))),1],getTransactionLog:()=>[!st(h),!st(m),ft(h,Pt,Jt),ft(g),pt(m,Pt,Jt),pt(p),pt(a),bt(d),ft(c),pt(u)],finishTransaction:Jn,forEachTable:e=>at(x,((t,n)=>e(n,(e=>at(t,((t,n)=>e(n,(e=>ht(t,e))))))))),forEachTableCell:(e,t)=>ht(ct(C,me(e)),t),forEachRow:(e,t)=>at(ct(x,me(e)),((e,n)=>t(n,(t=>ht(e,t))))),forEachCell:(e,t,n)=>ht(ct(ct(x,me(e)),me(t)),n),forEachValue:e=>ht(T,e),addSortedRowIdsListener:(e,t,n,s,r,l,a)=>Je(e)?ln(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,n):ln(e,t,[n,s,r],l,a),addStartTransactionListener:e=>_(e,G),addWillFinishTransactionListener:e=>_(e,U[0]),addDidFinishTransactionListener:e=>_(e,U[1]),callListener:e=>(ge(e),On),delListener:e=>(ue(e),On),getListenerStats:()=>({hasTables:$t(k),tables:$t(S),tableIds:$t(q),hasTable:$t(N),table:$t(V),tableCellIds:$t(L),hasTableCell:$t(M,et),rowCount:$t(R),rowIds:$t(E),sortedRowIds:$t(z),hasRow:$t($,et),row:$t(A,et),cellIds:$t(P,et),hasCell:$t(J,tt),cell:$t(O,tt),invalidCell:$t(D,tt),hasValues:$t(j),values:$t(B),valueIds:$t(H),hasValue:$t(W),value:$t(Q),invalidValue:$t(F),transaction:_e(G)+$t(U)}),isMergeable:()=>!1,createStore:Dt,addListener:_,callListeners:he,setInternalListeners:(e,t,n,s,r)=>l=[e,t,n,s,r]};return We({[Z+te]:[0,k,[],()=>[In()]],[te]:[0,S],[ne]:[0,q],[Z+ee]:[1,N,[on],e=>[wn(...e)]],[ee]:[1,V,[on]],[ee+ie]:[1,L,[on]],[Z+ee+ae]:[2,M,[on,dn],e=>[yn(...e)]],[re]:[1,R,[on]],[le]:[1,E,[on]],[Z+se]:[2,$,[on,hn],e=>[vn(...e)]],[se]:[2,A,[on,hn]],[ie]:[2,P,[on,hn]],[Z+ae]:[3,J,[on,hn,mn],e=>[Cn(...e)]],[ae]:[3,O,[on,hn,mn],e=>zt(gn(...e))],InvalidCell:[3,D],[Z+de]:[0,j,[],()=>[xn()]],[de]:[0,B],[ce]:[0,H],[Z+oe]:[1,W,[bn],e=>[Tn(...e)]],[oe]:[1,Q,[bn],e=>zt(fn(e[0]))],InvalidValue:[1,F]},(([e,t,n,s],r)=>{On["add"+r+"Listener"]=(...r)=>_(r[e],t[r[e+1]?1:0],e>0?Te(r,0,e):void 0,n,s)})),De(On)},{PureComponent:Ft,createContext:jt,useCallback:Bt,useContext:Ht,useEffect:Wt,useLayoutEffect:Qt,useMemo:Gt,useRef:Kt,useState:Ut,useSyncExternalStore:Xt}=B,Yt=(e,...t)=>we(e)?{}:e(...t),Zt="tinybaseInspector",_t="TinyBase Inspector",en=["left","top","bottom","right","full"],tn="state",nn="sort",sn="open",rn="position",ln=sn,an="editable",on=(...e)=>Xe(e),dn=(e,t)=>Le(Ne([...e]),t),cn=(e,t)=>[!!s(tn,e,an,t),Bt((n=>{t.setCell(tn,e,an,(e=>!e)),n.preventDefault()}),[t,e])],hn=({s:t})=>{const n=r(rn,t)??1,s=l(ln,(()=>!0),[],t);return r(ln,t)?null:e("img",{onClick:s,title:_t,"data-position":n})},un="editable",mn=(e,t)=>Le(h(e,t),(t=>e+"."+t)),gn=(e,t,n)=>{const s=Bt(e,t);return n?s:void 0},pn=(...e)=>Gt((()=>e),e),bn=(e,t)=>Gt((()=>({store:e,tableId:t})),[e,t]),fn=(e,t)=>Gt((()=>({queries:e,queryId:t})),[e,t]),In=(t,n=!1,s,r=0,l,a,i,o)=>{const[[d,c,h],u]=Ut([t,n,r]),m=Bt((e=>{u(e),o?.(e)}),[o]),g=gn((e=>m([e,e==d&&!c,h])),[m,d,c,h],s),p=Bt((e=>m([d,c,e])),[m,d,c]),b=!0===i?Mn:i;return[[d,c,h],g,Gt((()=>!1===i?null:e(b,{offset:h,limit:l,total:a,onChange:p})),[i,b,h,l,a,p])]},wn=(e,t,n)=>Gt((()=>{const s=t??e;return We(xe(s)?Fe(Le(s,(e=>[e,e]))):s,((e,t)=>{return{label:t,component:n,...(s=e,H(s)==Q?{label:e}:e)};var s}))}),[t,n,e]),yn=({className:n,headerRow:s,idColumn:r,params:[l,a,i,o,d,c]})=>t("table",{className:n,children:[c?e("caption",{children:c}):null,!1===s?null:e("thead",{children:t("tr",{children:[!1===r?null:e(vn,{sort:o??[],label:"Id",onClick:d}),He(l,(({label:t},n)=>e(vn,{cellId:n,label:t,sort:o??[],onClick:d},n)))]})}),e("tbody",{children:Le(i,(n=>t("tr",{children:[!1===r?null:e("th",{children:n}),He(l,(({component:t,getComponentProps:s},r)=>e("td",{children:e(t,{...Yt(s,n,r),...a,rowId:n,cellId:r})},r)))]},n)))})]}),vn=({cellId:e,sort:[n,s],label:r=e??W,onClick:l})=>t("th",{onClick:gn((()=>l?.(e)),[l,e],l),className:we(s)||n!=e?void 0:`sorted ${s?"de":"a"}scending`,children:[we(s)||n!=e?null:(s?"↓":"↑")+" ",r]}),Cn=({localRowId:s,params:[r,l,a,i,o,d,c]})=>{const h=y(o,s,d);return t("tr",{children:[!1===r?null:t(n,{children:[e("th",{children:s}),e("th",{children:h})]}),He(l,(({component:t,getComponentProps:n},r)=>{const[l,o]=((e,t="",n)=>e.split(t,n))(r,".",2),d=l===a?s:l===i?h:null;return we(d)?null:e("td",{children:e(t,{...Yt(n,d,o),store:c,tableId:l,rowId:d,cellId:o})},r)}))]})},xn=({thing:n,onThingChange:s,className:r,hasSchema:l,showType:a=!0})=>{const[i,o]=Ut(),[d,c]=Ut(),[h,u]=Ut(),[m,g]=Ut(),[p,b]=Ut();d!==n&&(o(Lt(n)),c(n),u(n+""),g(Number(n)||0),b(!!n));const f=Bt(((e,t)=>{t(e),c(e),s(e)}),[s]),I=Bt((()=>{if(!l?.()){const e=Et(i,K,G,Q),t=Et(e,h,m,p);o(e),c(t),s(t)}}),[l,s,h,m,p,i]);return t("div",{className:r,children:[a?e("button",{className:i,onClick:I,children:i}):null,Et(i,e("input",{value:h,onChange:Bt((e=>f(e[he][ue]+"",u)),[f])},i),e("input",{type:"number",value:m,onChange:Bt((e=>f(Number(e[he][ue]||0),g)),[f])},i),e("input",{type:"checkbox",checked:p,onChange:Bt((e=>f(!!e[he].checked,b)),[f])},i))]})},Tn=({tableId:t,cellId:n,descending:s,offset:r,limit:l,store:a,editable:i,sortOnClick:o,paginator:d=!1,onChange:c,customCells:u,...m})=>{const[g,p,b]=In(n,s,o,r,l,v(t,a),d,c);return e(yn,{...m,params:pn(wn(h(t,a),u,i?Vn:f),bn(a,t),C(t,...g,l,a),g,p,b)})},kn=({store:n,editable:s=!1,valueComponent:r=(s?Ln:a),getValueComponentProps:l,className:o,headerRow:d,idColumn:c})=>t("table",{className:o,children:[!1===d?null:e("thead",{children:t("tr",{children:[!1===c?null:e("th",{children:"Id"}),e("th",{children:oe})]})}),e("tbody",{children:Le(i(n),(s=>t("tr",{children:[!1===c?null:e("th",{children:s}),e("td",{children:e(r,{...Yt(l,s),valueId:s,store:n})})]},s)))})]}),Sn=({indexId:t,sliceId:n,indexes:s,editable:r,customCells:l,...a})=>{const[i,o,u]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(d(s),t);return e(yn,{...a,params:pn(wn(h(u,o),l,r?Vn:f),bn(o,u),c(t,n,i))})},qn=({relationshipId:s,relationships:r,editable:l,customCells:a,className:i,headerRow:o,idColumn:d=!0})=>{const[c,h,u,m]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(b(r),s),g=wn([...mn(u,h),...mn(m,h)],a,l?Vn:f),p=pn(d,g,u,m,s,c,h);return t("table",{className:i,children:[!1===o?null:e("thead",{children:t("tr",{children:[!1===d?null:t(n,{children:[t("th",{children:[u,".Id"]}),t("th",{children:[m,".Id"]})]}),He(g,(({label:t},n)=>e("th",{children:t},n)))]})}),e("tbody",{children:Le(I(u,h),(t=>e(Cn,{localRowId:t,params:p},t)))})]})},Nn=({queryId:t,cellId:n,descending:s,offset:r,limit:l,queries:a,sortOnClick:i,paginator:o=!1,customCells:d,onChange:c,...h})=>{const[b,f,I]=In(n,s,i,r,l,u(t,a),o,c);return e(yn,{...h,params:pn(wn(p(t,a),d,g),fn(a,t),m(t,...b,l,a),b,f,I)})},Vn=({tableId:t,rowId:n,cellId:r,store:l,className:a,showType:i})=>e(xn,{thing:s(t,n,r,l),onThingChange:w(t,n,r,(e=>e),[],l),className:a??un+ae,showType:i,hasSchema:o(l)?.hasTablesSchema}),Ln=({valueId:t,store:n,className:s,showType:a})=>e(xn,{thing:r(t,n),onThingChange:l(t,(e=>e),[],n),className:s??un+oe,showType:a,hasSchema:o(n)?.hasValuesSchema}),Mn=({onChange:s,total:r,offset:l=0,limit:a=r,singular:i="row",plural:o=i+"s"})=>{(l>r||l<0)&&(l=0,s(0));const d=gn((()=>s(l-a)),[s,l,a],l>0),c=gn((()=>s(l+a)),[s,l,a],l+a<r);return t(n,{children:[r>a&&t(n,{children:[e("button",{className:"previous",disabled:0==l,onClick:d,children:"←"}),e("button",{className:"next",disabled:l+a>=r,onClick:c,children:"→"}),l+1," to ",be(r,l+a)," of "]}),r," ",1!=r?o:i]})},Rn=({uniqueId:n,summary:r,editable:l,handleEditable:a,children:i,s:o})=>{const d=!!s(tn,n,sn,o),c=w(tn,n,sn,(e=>e[he].open),[],o);return t("details",{open:d,onToggle:c,children:[t("summary",{children:[r,a?e("img",{onClick:a,className:l?"done":"edit"}):null]}),i]})},En=({indexes:t,indexesId:n,indexId:s,s:r})=>e(Rn,{uniqueId:on("i",n,s),summary:"Index: "+s,s:r,children:Le(k(s,t),(l=>e(zn,{indexes:t,indexesId:n,indexId:s,sliceId:l,s:r},l)))}),zn=({indexes:t,indexesId:n,indexId:s,sliceId:r,s:l})=>{const a=on("i",n,s,r),[i,o]=cn(a,l);return e(Rn,{uniqueId:a,summary:"Slice: "+r,editable:i,handleEditable:o,s:l,children:e(Sn,{sliceId:r,indexId:s,indexes:t,editable:i})})},$n=({indexesId:t,s:n})=>{const s=x(t),r=T(s);return we(s)?null:e(Rn,{uniqueId:on("i",t),summary:"Indexes: "+(t??Y),s:n,children:Me(r)?"No indexes defined":dn(r,(r=>e(En,{indexes:s,indexesId:t,indexId:r,s:n},r)))})},An=({metrics:n,metricId:s})=>t("tr",{children:[e("th",{children:s}),e("td",{children:n?.getTableId(s)}),e("td",{children:N(s,n)})]}),Pn=({metricsId:n,s:s})=>{const r=S(n),l=q(r);return we(r)?null:e(Rn,{uniqueId:on("m",n),summary:"Metrics: "+(n??Y),s:s,children:Me(l)?"No metrics defined":t("table",{children:[t("thead",{children:[e("th",{children:"Metric Id"}),e("th",{children:"Table Id"}),e("th",{children:"Metric"})]}),e("tbody",{children:Le(l,(t=>e(An,{metrics:r,metricId:t},t)))})]})})},Jn=({queries:t,queriesId:n,queryId:r,s:l})=>{const a=on("q",n,r),[i,o,d]=Ue(s(tn,a,nn,l)??"[]"),c=w(tn,a,nn,Xe,[],l);return e(Rn,{uniqueId:a,summary:"Query: "+r,s:l,children:e(Nn,{queryId:r,queries:t,cellId:i,descending:o,offset:d,limit:10,paginator:!0,sortOnClick:!0,onChange:c})})},On=({queriesId:t,s:n})=>{const s=V(t),r=L(s);return we(s)?null:e(Rn,{uniqueId:on("q",t),summary:"Queries: "+(t??Y),s:n,children:Me(r)?"No queries defined":dn(r,(r=>e(Jn,{queries:s,queriesId:t,queryId:r,s:n},r)))})},Dn=({relationships:t,relationshipsId:n,relationshipId:s,s:r})=>{const l=on("r",n,s),[a,i]=cn(l,r);return e(Rn,{uniqueId:l,summary:"Relationship: "+s,editable:a,handleEditable:i,s:r,children:e(qn,{relationshipId:s,relationships:t,editable:a})})},Fn=({relationshipsId:t,s:n})=>{const s=M(t),r=R(s);return we(s)?null:e(Rn,{uniqueId:on("r",t),summary:"Relationships: "+(t??Y),s:n,children:Me(r)?"No relationships defined":dn(r,(r=>e(Dn,{relationships:s,relationshipsId:t,relationshipId:r,s:n},r)))})},jn=({tableId:t,store:n,storeId:r,s:l})=>{const a=on("t",r,t),[i,o,d]=Ue(s(tn,a,nn,l)??"[]"),c=w(tn,a,nn,Xe,[],l),[h,u]=cn(a,l);return e(Rn,{uniqueId:a,summary:ee+": "+t,editable:h,handleEditable:u,s:l,children:e(Tn,{tableId:t,store:n,cellId:i,descending:o,offset:d,limit:10,paginator:!0,sortOnClick:!0,onChange:c,editable:h})})},Bn=({store:t,storeId:n,s:s})=>{const r=on("v",n),[l,a]=cn(r,s);return Me(i(t))?null:e(Rn,{uniqueId:r,summary:de,editable:l,handleEditable:a,s:s,children:e(kn,{store:t,editable:l})})},Hn=({storeId:n,s:s})=>{const r=E(n),l=z(r);return we(r)?null:t(Rn,{uniqueId:on("s",n),summary:(r.isMergeable()?"Mergeable":"")+"Store: "+(n??Y),s:s,children:[e(Bn,{storeId:n,store:r,s:s}),dn(l,(t=>e(jn,{store:r,storeId:n,tableId:t,s:s},t)))]})},Wn=({s:n})=>{const s=Kt(null),r=Kt(0),[l,a]=Ut(!1),{scrollLeft:i,scrollTop:o}=$(n);Qt((()=>{const e=s.current;if(e&&!l){const t=new MutationObserver((()=>{e.scrollWidth>=fe(i)+e.clientWidth&&e.scrollHeight>=fe(o)+e.clientHeight&&e.scrollTo(i,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[l,i,o]);const d=Bt((e=>{const{scrollLeft:t,scrollTop:s}=e[he];cancelIdleCallback(r.current),r.current=requestIdleCallback((()=>{a(!0),n.setPartialValues({scrollLeft:t,scrollTop:s})}))}),[n]),c=E(),h=A(),u=S(),m=P(),g=x(),p=J(),b=M(),f=O(),I=V(),w=D();return we(c)&&Me(h)&&we(u)&&Me(m)&&we(g)&&Me(p)&&we(b)&&Me(f)&&we(I)&&Me(w)?e("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):t("article",{ref:s,onScroll:d,children:[e(Hn,{s:n}),Le(h,(t=>e(Hn,{storeId:t,s:n},t))),e(Pn,{s:n}),Le(m,(t=>e(Pn,{metricsId:t,s:n},t))),e($n,{s:n}),Le(p,(t=>e($n,{indexesId:t,s:n},t))),e(Fn,{s:n}),Le(f,(t=>e(Fn,{relationshipsId:t,s:n},t))),e(On,{s:n}),Le(w,(t=>e(On,{queriesId:t,s:n},t)))]})};class Qn extends Ft{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?e("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const Gn=({s:n})=>{const s=r(rn,n)??1,a=l(ln,(()=>!1),[],n),i=l(rn,(e=>Number(e[he].dataset.id)),[],n);return t("header",{children:[e("img",{title:_t}),e("span",{children:_t}),Le(en,((t,n)=>n==s?null:e("img",{onClick:i,"data-id":n,title:"Dock to "+t},n))),e("img",{onClick:a,title:"Close"})]})},Kn=({s:n})=>{const s=r(rn,n)??1;return r(ln,n)?t("main",{"data-position":s,children:[e(Gn,{s:n}),e(Qn,{children:e(Wn,{s:n})})]}):null},Un="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Xn='content:url("',Yn=Xn+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Zn='</svg>")',_n=Xn+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",es=Le([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,n,s])=>Yn+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${n}' height='${s}' fill='white'/>`+Zn)),ts=Yn+"<path d='M20 20l60 60M20 80l60-60' />"+Zn,ns=Yn+`<path d='${Un}' />`+Zn,ss=Yn+`<path d='${Un}M20 20l60 60' />`+Zn,rs="*::-webkit-scrollbar",ls=((e,t="")=>e.join(t))(He({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[rs]:"width:0.5rem;height:0.5rem;",[rs+"-track"]:"background:#111",[rs+"-thumb"]:"background:#999;border:1px solid #111",[rs+"-thumb:hover"]:"background:#fff",[rs+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+_n,...Fe(Le(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...Fe(Le(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":_n,"header>img:nth-of-type(6)":ts,...Fe(Le(es,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":ns,"details[open]>summary img.done":ss,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${Zt} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${Zt} ${t}{${e}}`:""))),as=({position:s="right",open:r=!1})=>{const l=F(Dt),a=en.indexOf(s);return j(l,(e=>{return t=Zt,n=sessionStorage,((e,t,n,s,r,l,a,i={},o=0,d=[])=>{let c,h,u,m=0,g=0,p=0;mt(qt,d,(()=>0)),mt(Nt,d,(()=>[]));const b=ot(),[f,I,w,y,v]=((e=1,t,n)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!n),([[e],[t]])=>!Qe(e)||!Qe(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!Qe(e)||!Qe(t),t.setContent]:Se("Store type not supported by this Persister"))(a,e,o),[C,x,T]=St((()=>$)),k=e=>{e!=m&&(m=e,x(b,void 0,m))},S=t=>{(f&&xe(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},q=async e=>(2!=m&&(k(1),g++,await z((async()=>{await qe((async()=>{const n=await t();xe(n)?S(n):e?v(e):Se("Content is not an array: "+n)}),(()=>{e&&v(e)})),k(0)}))),$),N=async e=>(V(),await q(e),await qe((async()=>h=await s((async(e,t)=>{t||e?2!=m&&(k(1),g++,S(t??e),k(0)):await q()}))),l),$),V=async()=>(h&&(await qe((()=>r(h)),l),h=void 0),$),L=async e=>(1!=m&&(k(2),p++,await z((async()=>{await qe((()=>n(I,e)),l),k(0)}))),$),M=async()=>(R(),await L(),u=e.addDidFinishTransactionListener((()=>{const e=w();y(e)&&L(e)})),$),R=async()=>(u&&(e.delListener(u),u=void 0),$),E=async(e=!1)=>{const[t,n]=e?[R,V]:[V,R];return await t(),await n(),$},z=async(...e)=>(Re(ct(Nt,d),...e),await(async()=>{if(!ct(qt,d)){for(ut(qt,d,1);!we(c=Ee(ct(Nt,d)));)await qe(c,l);ut(qt,d,0)}})(),$),$={load:q,startAutoLoad:N,stopAutoLoad:V,isAutoLoading:()=>!we(h),save:L,startAutoSave:M,stopAutoSave:R,isAutoSaving:()=>!we(u),startAutoPersisting:async(e,t=!1)=>{const[n,s]=t?[M,N]:[N,M];return await n(e),await s(e),$},stopAutoPersisting:E,getStatus:()=>m,addStatusListener:e=>C(e,b),delListener:t=>(T(t),e),schedule:z,getStore:()=>e,destroy:()=>(ct(Nt,d).splice(0,void 0),E()),getStats:()=>({loads:g,saves:p}),...i};return De($)})(e,(async()=>{return e=n.getItem(t),Ue(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return n.setItem(t,(s=e(),Ke(s,((e,t)=>void 0===t?"":t))));var s}),(e=>{const s=s=>{s.storageArea===n&&s.key===t&&qe((()=>e(Ue(s.newValue))),e)};return ge.addEventListener(Vt,s),s}),(e=>ge.removeEventListener(Vt,e)),void 0,3,{getStorageName:()=>t});var t,n}),void 0,(async e=>{await e.load([{},{position:-1==a?1:a,open:!!r}]),await e.startAutoSave()})),t(n,{children:[t("aside",{id:Zt,children:[e(hn,{s:l}),e(Kn,{s:l})]}),e("style",{children:ls})]})};export{as as Inspector};
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useCell as s,useValue as r,useSetValueCallback as l,ValueView as a,useValueIds as i,useStoreOrStoreById as o,useIndexesOrIndexesById as d,useSliceRowIds as c,useTableCellIds as h,useResultRowCount as u,useResultSortedRowIds as m,ResultCellView as g,useResultTableCellIds as p,useRelationshipsOrRelationshipsById as b,CellView as f,useRowIds as I,useSetCellCallback as w,useRemoteRowId as y,useRowCount as v,useSortedRowIds as C,useIndexes as x,useIndexIds as T,useSliceIds as k,useMetrics as S,useMetricIds as q,useMetric as N,useQueries as V,useQueryIds as L,useRelationships as M,useRelationshipIds as R,useStore as E,useTableIds as z,useValues as $,useStoreIds as A,useMetricsIds as P,useIndexesIds as J,useRelationshipsIds as O,useQueriesIds as D,useCreateStore as F,useCreatePersister as j}from"../ui-react/index.js";import B from"react";const H=e=>typeof e,W="",Q=H(W),G=H(!0),K=H(0),U=H(H),X="type",Y="default",Z="Has",_="Ids",ee="Table",te=ee+"s",ne=ee+_,se="Row",re=se+"Count",le=se+_,ae="Cell",ie=ae+_,oe="Value",de=oe+"s",ce=oe+_,he="currentTarget",ue="value",me=e=>W+e,ge=globalThis.window,pe=Math,be=pe.min,fe=pe.floor,Ie=isFinite,we=e=>null==e,ye=(e,t,n)=>we(e)?n?.():t(e),ve=e=>e==Q||e==G,Ce=e=>H(e)==U,xe=e=>Array.isArray(e),Te=(e,t,n)=>e.slice(t,n),ke=e=>e.length,Se=e=>{throw Error(e)},qe=async(e,t,n)=>{try{return await e()}catch(e){t?.(e)}},Ne=(e,t)=>e.sort(t),Ve=(e,t)=>e.forEach(t),Le=(e,t)=>e.map(t),Me=e=>0==ke(e),Re=(e,...t)=>e.push(...t),Ee=e=>e.shift(),ze=Object,$e=e=>ze.getPrototypeOf(e),Ae=ze.isFrozen,Pe=ze.entries,Je=e=>!we(e)&&ye($e(e),(e=>e==ze.prototype||we($e(e))),(()=>!0)),Oe=ze.keys,De=ze.freeze,Fe=(e=[])=>ze.fromEntries(e),je=(e,t)=>t in e,Be=(e,t)=>(delete e[t],e),He=(e,t)=>Le(Pe(e),(([e,n])=>t(n,e))),We=(e,t)=>Fe(He(e,((e,n)=>[n,t(e,n)]))),Qe=e=>Je(e)&&0==(e=>ke(Oe(e)))(e),Ge=(e,t,n,s=0)=>we(e)||!Je(e)||!s&&Qe(e)||Ae(e)?(n?.(),!1):(((e,t)=>{Ve(Pe(e),(([e,n])=>t(n,e)))})(e,((n,s)=>{t(n,s)||Be(e,s)})),!!s||!Qe(e)),Ke=JSON.stringify,Ue=JSON.parse,Xe=e=>Ke(e,((e,t)=>t instanceof Map?ze.fromEntries([...t]):t)),Ye=e=>t=>{return n=(t,n)=>t+e(n),rt(t).reduce(n,0);var n},Ze=e=>e?.size??0,_e=Ye(Ze),et=Ye(_e),tt=Ye(et),nt=(e,t)=>e?.has(t)??!1,st=e=>we(e)||0==Ze(e),rt=e=>[...e?.values()??[]],lt=e=>e.clear(),at=(e,t)=>e?.forEach(t),it=(e,t)=>e?.delete(t),ot=e=>new Map(e),dt=e=>[...e?.keys()??[]],ct=(e,t)=>e?.get(t),ht=(e,t)=>at(e,((e,n)=>t(n,e))),ut=(e,t,n)=>we(n)?(it(e,t),e):e?.set(t,n),mt=(e,t,n,s)=>(nt(e,t)?s?.(ct(e,t)):ut(e,t,n()),ct(e,t)),gt=(e,t,n,s=ut)=>(We(t,((t,s)=>n(e,s,t))),ht(e,(n=>je(t,n)?0:s(e,n))),e),pt=(e,t,n,s)=>{const r={};return at(e,((e,l)=>{if(!n?.(e,l)){const n=t?t(e,l):e;s?.(n)||(r[l]=n)}})),r},bt=(e,t,n)=>pt(e,(e=>pt(e,t,n)),st,Qe),ft=(e,t,n)=>pt(e,(e=>bt(e,t,n)),st,Qe),It=(e,t)=>{const n=ot();return at(e,((e,s)=>n.set(s,t?.(e)??e))),n},wt=e=>It(e,It),yt=e=>It(e,wt),vt=(e,t,n,s,r=0)=>ye((n?mt:ct)(e,t[r],r>ke(t)-2?n:ot),(l=>{if(r>ke(t)-2)return s?.(l)&&ut(e,t[r]),l;const a=vt(l,t,n,s,r+1);return st(l)&&ut(e,t[r]),a})),Ct=/^\d+$/,xt=()=>{const e=[];let t=0;return[n=>(n?Ee(e):null)??W+t++,t=>{Ct.test(t)&&ke(e)<1e3&&Re(e,t)}]},Tt=e=>new Set(xe(e)||we(e)?e:[e]),kt=(e,t)=>e?.add(t),St=e=>{let t;const[n,s]=xt(),r=ot();return[(s,l,a,i=[],o=()=>[])=>{t??=e();const d=n(1);return ut(r,d,[s,l,a,i,o]),kt(vt(l,a??[W],Tt),d),d},(e,n,...s)=>Ve(((e,t=[W])=>{const n=[],s=(e,r)=>r==ke(t)?Re(n,e):null===t[r]?at(e,(e=>s(e,r+1))):Ve([t[r],null],(t=>s(ct(e,t),r+1)));return s(e,0),n})(e,n),(e=>at(e,(e=>ct(r,e)[0](t,...n??[],...s))))),e=>ye(ct(r,e),(([,t,n])=>(vt(t,n??[W],void 0,(t=>(it(t,e),st(t)?1:0))),ut(r,e),s(e),n))),e=>ye(ct(r,e),(([e,,n=[],s,r])=>{const l=(...a)=>{const i=ke(a);i==ke(n)?e(t,...a,...r(a)):we(n[i])?Ve(s[i]?.(...a)??[],(e=>l(...a,e))):l(...a,n[i])};l()}))]},qt=ot(),Nt=ot(),Vt="storage",Lt=e=>{const t=H(e);return ve(t)||t==K&&Ie(e)?t:void 0},Mt=(e,t,n,s,r)=>we(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r),Rt=(e,t,n)=>we(n)?e.delValue(t):e.setValue(t,n),Et=(e,t,n,s)=>e==Q?t:e==K?n:s,zt=e=>[e,e],$t=(e,t=_e)=>t(e[0])+t(e[1]),At=()=>[ot(),ot()],Pt=e=>[...e],Jt=([e,t])=>e===t,Ot=(e,t,n)=>ut(e,t,ct(e,t)==-n?void 0:n),Dt=()=>{let e,t,n=!1,s=!1,r=0,l=[];const a=ot(),i=ot(),o=ot(),d=ot(),c=ot(),h=ot(),u=ot(),m=ot(),g=ot(),p=ot(),b=ot(),f=ot(),I=ot(),w=ot(),y=Tt(),v=ot(),C=ot(),x=ot(),T=ot(),k=At(),S=At(),q=At(),N=At(),V=At(),L=At(),M=At(),R=At(),E=At(),z=At(),$=At(),A=At(),P=At(),J=At(),O=At(),D=At(),F=At(),j=At(),B=At(),H=At(),W=At(),Q=At(),G=ot(),U=At(),[_,he,ue,ge]=St((()=>On)),pe=e=>{if(!Ge(e,((e,t)=>[X,Y].includes(t))))return!1;const t=e[X];return!(!ve(t)&&t!=K||(Lt(e[Y])!=t&&Be(e,Y),0))},be=xe,fe=(t,n)=>(!e||nt(b,n)||Ut(n))&&Ge(t,((e,t)=>Ie(n,t,e)),(()=>Ut(n))),Ie=(e,t,n,s)=>Ge(s?n:ze(n,e,t),((s,r)=>ye(Se(e,t,r,s),(e=>(n[r]=e,!0)),(()=>!1))),(()=>Ut(e,t))),Se=(t,n,s,r)=>e?ye(ct(ct(b,t),s),(e=>Lt(r)!=e[X]?Ut(t,n,s,r,e[Y]):r),(()=>Ut(t,n,s,r))):we(Lt(r))?Ut(t,n,s,r):r,Me=(e,t)=>Ge(t?e:$e(e),((t,n)=>ye(Ee(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Xt())),Ee=(e,n)=>t?ye(ct(I,e),(t=>Lt(n)!=t[X]?Xt(e,n,t[Y]):n),(()=>Xt(e,n))):we(Lt(n))?Xt(e,n):n,ze=(e,t,n)=>(ye(ct(f,t),(([s,r])=>{at(s,((t,n)=>{je(e,n)||(e[n]=t)})),at(r,(s=>{je(e,s)||Ut(t,n,s)}))})),e),$e=e=>(t&&(at(w,((t,n)=>{je(e,n)||(e[n]=t)})),at(y,(t=>{je(e,t)||Xt(t)}))),e),Ae=e=>gt(b,e,((e,t,n)=>{const s=ot(),r=Tt();gt(mt(b,t,ot),n,((e,t,n)=>{ut(e,t,n),ye(n[Y],(e=>ut(s,t,e)),(()=>kt(r,t)))})),ut(f,t,[s,r])}),((e,t)=>{ut(b,t),ut(f,t)})),Pe=e=>gt(I,e,((e,t,n)=>{ut(I,t,n),ye(n[Y],(e=>ut(w,t,e)),(()=>kt(y,t)))}),((e,t)=>{ut(I,t),ut(w,t),it(y,t)})),Oe=e=>Qe(e)?Ln():kn(e),Fe=e=>gt(x,e,((e,t,n)=>He(t,n)),((e,t)=>Vt(t))),He=(e,t)=>gt(mt(x,e,(()=>(Bt(e,1),ut(v,e,xt()),ut(C,e,ot()),ot()))),t,((t,n,s)=>Ke(e,t,n,s)),((t,n)=>Et(e,t,n))),Ke=(e,t,n,s,r)=>gt(mt(t,n,(()=>(Ht(e,n,1),ot()))),s,((t,s,r)=>Ye(e,n,t,s,r)),((s,l)=>Ft(e,t,n,s,l,r))),Ye=(e,t,n,s,r)=>{nt(n,s)||Wt(e,t,s,1);const l=ct(n,s);r!==l&&(Qt(e,t,s,l,r),ut(n,s,r))},rt=(e,t,n,s,r)=>ye(ct(t,n),(t=>Ye(e,n,t,s,r)),(()=>Ke(e,t,n,ze({[s]:r},e,n)))),vt=e=>Qe(e)?En():Sn(e),Ct=e=>gt(T,e,((e,t,n)=>qt(t,n)),((e,t)=>jt(t))),qt=(e,t)=>{nt(T,e)||Gt(e,1);const n=ct(T,e);t!==n&&(Kt(e,n,t),ut(T,e,t))},Nt=e=>ct(x,e)??He(e,{}),Vt=e=>He(e,{}),Et=(e,t,n)=>{const[,s]=ct(v,e);s(n),Ke(e,t,n,{},!0)},Ft=(e,t,n,s,r,l)=>{const a=ct(ct(f,e)?.[0],r);if(!we(a)&&!l)return Ye(e,n,s,r,a);const i=t=>{Qt(e,n,t,ct(s,t)),Wt(e,n,t,-1),ut(s,t)};we(a)?i(r):ht(s,i),st(s)&&(Ht(e,n,-1),st(ut(t,n))&&(Bt(e,-1),ut(x,e),ut(v,e),ut(C,e)))},jt=e=>{const t=ct(w,e);if(!we(t))return qt(e,t);Kt(e,ct(T,e)),Gt(e,-1),ut(T,e)},Bt=(e,t)=>Ot(a,e,t),Ht=(e,t,n)=>Ot(mt(d,e,ot),t,n)&&ut(o,e,mt(o,e,(()=>0))+n),Wt=(e,t,n,s)=>{const r=ct(C,e),l=ct(r,n)??0;(0==l&&1==s||1==l&&-1==s)&&Ot(mt(i,e,ot),n,s),ut(r,n,l!=-s?l+s:null),Ot(mt(mt(c,e,ot),t,ot),n,s)},Qt=(e,t,n,s,r)=>{mt(mt(mt(h,e,ot),t,ot),n,(()=>[s,0]))[1]=r,l[3]?.(e,t,n,r)},Gt=(e,t)=>Ot(u,e,t),Kt=(e,t,n)=>{mt(m,e,(()=>[t,0]))[1]=n,l[4]?.(e,n)},Ut=(e,t,n,s,r)=>(Re(mt(mt(mt(g,e,ot),t,ot),n,(()=>[])),s),r),Xt=(e,t,n)=>(Re(mt(p,e,(()=>[])),t),n),Yt=(e,t,n)=>ye(ct(ct(ct(h,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...zt(gn(e,t,n))])),Zt=e=>ye(ct(m,e),(([e,t])=>[!0,e,t]),(()=>[!1,...zt(fn(e))])),_t=e=>st(g)||st(D[e])?0:at(e?yt(g):g,((t,n)=>at(t,((t,s)=>at(t,((t,r)=>he(D[e],[n,s,r],t))))))),en=e=>st(p)||st(F[e])?0:at(e?It(p):p,((t,n)=>he(F[e],[n],t))),tn=(e,t,n,s)=>{if(!st(e))return he(t,s,(()=>pt(e))),ht(e,((e,t)=>he(n,[...s??[],e],1==t))),1},nn=e=>{const t=In();t!=n&&he(k[e],void 0,t);const s=st(z[e]),r=st(P[e])&&st(J[e])&&st(E[e])&&st($[e])&&st(L[e])&&st(M[e])&&st(R[e])&&s&&st(q[e])&&st(N[e]),l=st(O[e])&&st(A[e])&&st(V[e])&&st(S[e]);if(!r||!l){const t=e?[It(a),wt(i),It(o),wt(d),yt(c),yt(h)]:[a,i,o,d,c,h];if(!r){tn(t[0],q[e],N[e]),at(t[1],((t,n)=>tn(t,L[e],M[e],[n]))),at(t[2],((t,n)=>{0!=t&&he(R[e],[n],cn(n))}));const n=Tt();at(t[3],((t,r)=>{tn(t,E[e],$[e],[r])&&!s&&(he(z[e],[r,null]),kt(n,r))})),s||at(t[5],((t,s)=>{if(!nt(n,s)){const n=Tt();at(t,(e=>at(e,(([t,s],r)=>s!==t?kt(n,r):it(e,r))))),at(n,(t=>he(z[e],[s,t])))}})),at(t[4],((t,n)=>at(t,((t,s)=>tn(t,P[e],J[e],[n,s])))))}if(!l){let n;at(t[5],((t,s)=>{let r;at(t,((t,l)=>{let a;at(t,(([t,i],o)=>{i!==t&&(he(O[e],[s,l,o],i,t,Yt),n=r=a=1)})),a&&he(A[e],[s,l],Yt)})),r&&he(V[e],[s],Yt)})),n&&he(S[e],void 0,Yt)}}},sn=e=>{const t=xn();t!=s&&he(j[e],void 0,t);const n=st(H[e])&&st(W[e]),r=st(Q[e])&&st(B[e]);if(!n||!r){const t=e?[It(u),It(m)]:[u,m];if(n||tn(t[0],H[e],W[e]),!r){let n;at(t[1],(([t,s],r)=>{s!==t&&(he(Q[e],[r],s,t,Zt),n=1)})),n&&he(B[e],void 0,Zt)}}},rn=(e,...t)=>(An((()=>e(...Le(t,me)))),On),ln=(e,t,n,s,r)=>{let l=un(e,t,...n);return _((()=>{const r=un(e,t,...n);var a,i,o;i=l,ke(a=r)===ke(i)&&(o=(e,t)=>i[t]===e,a.every(o))||(l=r,s(On,e,t,...n,l))}),z[r?1:0],[e,t],[on])},an=()=>ft(x),on=()=>dt(x),dn=e=>dt(ct(C,me(e))),cn=e=>Ze(ct(x,me(e))),hn=e=>dt(ct(x,me(e))),un=(e,t,n,s=0,r)=>{return Je(e)?un(e.tableId,e.cellId,e.descending,e.offset,e.limit):Le(Te(Ne((l=ct(x,me(e)),a=(e,n)=>[we(t)?n:ct(e,me(t)),n],Le([...l?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(n?-1:1))),s,we(r)?r:s+r),(([,e])=>e));var l,a},mn=(e,t)=>dt(ct(ct(x,me(e)),me(t))),gn=(e,t,n)=>ct(ct(ct(x,me(e)),me(t)),me(n)),pn=()=>pt(T),bn=()=>dt(T),fn=e=>ct(T,me(e)),In=()=>!st(x),wn=e=>nt(x,me(e)),yn=(e,t)=>nt(ct(C,me(e)),me(t)),vn=(e,t)=>nt(ct(x,me(e)),me(t)),Cn=(e,t,n)=>nt(ct(ct(x,me(e)),me(t)),me(n)),xn=()=>!st(T),Tn=e=>nt(T,me(e)),kn=e=>rn((()=>(e=>Ge(e,fe,Ut))(e)?Fe(e):0)),Sn=e=>rn((()=>Me(e)?Ct(e):0)),qn=e=>(qe((()=>Oe(Ue(e)))),On),Nn=t=>rn((()=>{if((e=Ge(t,(e=>Ge(e,pe))))&&(Ae(t),!st(x))){const e=an();Ln(),kn(e)}})),Vn=e=>rn((()=>{if(t=(e=>Ge(e,pe))(e)){const n=pn();$n(),En(),t=!0,Pe(e),Sn(n)}})),Ln=()=>rn((()=>Fe({}))),Mn=e=>rn((e=>nt(x,e)?Vt(e):0),e),Rn=(e,t)=>rn(((e,t)=>ye(ct(x,e),(n=>nt(n,t)?Et(e,n,t):0))),e,t),En=()=>rn((()=>Ct({}))),zn=()=>rn((()=>{Ae({}),e=!1})),$n=()=>rn((()=>{Pe({}),t=!1})),An=(e,t)=>{if(-1!=r){Pn();const n=e();return Jn(t),n}},Pn=()=>(-1!=r&&r++,1==r&&(l[0]?.(),he(G)),On),Jn=e=>(r>0&&(r--,0==r&&(r=1,_t(1),st(h)||nn(1),en(1),st(m)||sn(1),e?.(On)&&(at(h,((e,t)=>at(e,((e,n)=>at(e,(([e],s)=>Mt(On,t,n,s,e))))))),lt(h),at(m,(([e],t)=>Rt(On,t,e))),lt(m)),he(U[0],void 0),r=-1,_t(0),st(h)||nn(0),en(0),st(m)||sn(0),l[1]?.(),he(U[1],void 0),l[2]?.(),r=0,n=In(),s=xn(),Ve([a,i,o,d,c,h,g,u,m,p],lt))),On),On={getContent:()=>[an(),pn()],getTables:an,getTableIds:on,getTable:e=>bt(ct(x,me(e))),getTableCellIds:dn,getRowCount:cn,getRowIds:hn,getSortedRowIds:un,getRow:(e,t)=>pt(ct(ct(x,me(e)),me(t))),getCellIds:mn,getCell:gn,getValues:pn,getValueIds:bn,getValue:fn,hasTables:In,hasTable:wn,hasTableCell:yn,hasRow:vn,hasCell:Cn,hasValues:xn,hasValue:Tn,getTablesJson:()=>Xe(x),getValuesJson:()=>Xe(T),getJson:()=>Xe([x,T]),getTablesSchemaJson:()=>Xe(b),getValuesSchemaJson:()=>Xe(I),getSchemaJson:()=>Xe([b,I]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>rn((()=>{const t=Ce(e)?e():e;be(t)&&(([e,t])=>{(Qe(e)?Ln:kn)(e),(Qe(t)?En:Sn)(t)})(t)})),setTables:kn,setTable:(e,t)=>rn((e=>fe(t,e)?He(e,t):0),e),setRow:(e,t,n)=>rn(((e,t)=>Ie(e,t,n)?Ke(e,Nt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let s;return Ie(e,s,t)&&(e=me(e),Ke(e,Nt(e),s=((e,t)=>{const[n]=ct(v,e);let s;do{s=n(t)}while(nt(ct(x,e),s));return s})(e,n?1:0),t)),s})),setPartialRow:(e,t,n)=>rn(((e,t)=>{if(Ie(e,t,n,1)){const s=Nt(e);We(n,((n,r)=>rt(e,s,t,r,n)))}}),e,t),setCell:(e,t,n,s)=>rn(((e,t,n)=>ye(Se(e,t,n,Ce(s)?s(gn(e,t,n)):s),(s=>rt(e,Nt(e),t,n,s)))),e,t,n),setValues:Sn,setPartialValues:e=>rn((()=>Me(e,1)?We(e,((e,t)=>qt(t,e))):0)),setValue:(e,t)=>rn((e=>ye(Ee(e,Ce(t)?t(fn(e)):t),(t=>qt(e,t)))),e),applyChanges:e=>rn((()=>{We(e[0],((e,t)=>we(e)?Mn(t):We(e,((e,n)=>we(e)?Rn(t,n):We(e,((e,s)=>Mt(On,t,n,s,e))))))),We(e[1],((e,t)=>Rt(On,t,e)))})),setTablesJson:qn,setValuesJson:e=>(qe((()=>vt(Ue(e)))),On),setJson:e=>rn((()=>qe((()=>{const[t,n]=Ue(e);Oe(t),vt(n)}),(()=>qn(e))))),setTablesSchema:Nn,setValuesSchema:Vn,setSchema:(e,t)=>rn((()=>{Nn(e),Vn(t)})),delTables:Ln,delTable:Mn,delRow:Rn,delCell:(e,t,n,s)=>rn(((e,t,n)=>ye(ct(x,e),(r=>ye(ct(r,t),(l=>nt(l,n)?Ft(e,r,t,l,n,s):0))))),e,t,n),delValues:En,delValue:e=>rn((e=>nt(T,e)?jt(e):0),e),delTablesSchema:zn,delValuesSchema:$n,delSchema:()=>rn((()=>{zn(),$n()})),transaction:An,startTransaction:Pn,getTransactionChanges:()=>[pt(h,((e,t)=>-1===ct(a,t)?void 0:pt(e,((e,n)=>-1===ct(ct(d,t),n)?void 0:pt(e,(([,e])=>e),(e=>Jt(e)))),st,Qe)),st,Qe),pt(m,(([,e])=>e),(e=>Jt(e))),1],getTransactionLog:()=>[!st(h),!st(m),ft(h,Pt,Jt),ft(g),pt(m,Pt,Jt),pt(p),pt(a),bt(d),ft(c),pt(u)],finishTransaction:Jn,forEachTable:e=>at(x,((t,n)=>e(n,(e=>at(t,((t,n)=>e(n,(e=>ht(t,e))))))))),forEachTableCell:(e,t)=>ht(ct(C,me(e)),t),forEachRow:(e,t)=>at(ct(x,me(e)),((e,n)=>t(n,(t=>ht(e,t))))),forEachCell:(e,t,n)=>ht(ct(ct(x,me(e)),me(t)),n),forEachValue:e=>ht(T,e),addSortedRowIdsListener:(e,t,n,s,r,l,a)=>Je(e)?ln(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,n):ln(e,t,[n,s,r],l,a),addStartTransactionListener:e=>_(e,G),addWillFinishTransactionListener:e=>_(e,U[0]),addDidFinishTransactionListener:e=>_(e,U[1]),callListener:e=>(ge(e),On),delListener:e=>(ue(e),On),getListenerStats:()=>({hasTables:$t(k),tables:$t(S),tableIds:$t(q),hasTable:$t(N),table:$t(V),tableCellIds:$t(L),hasTableCell:$t(M,et),rowCount:$t(R),rowIds:$t(E),sortedRowIds:$t(z),hasRow:$t($,et),row:$t(A,et),cellIds:$t(P,et),hasCell:$t(J,tt),cell:$t(O,tt),invalidCell:$t(D,tt),hasValues:$t(j),values:$t(B),valueIds:$t(H),hasValue:$t(W),value:$t(Q),invalidValue:$t(F),transaction:_e(G)+$t(U)}),isMergeable:()=>!1,createStore:Dt,addListener:_,callListeners:he,setInternalListeners:(e,t,n,s,r)=>l=[e,t,n,s,r]};return We({[Z+te]:[0,k,[],()=>[In()]],[te]:[0,S],[ne]:[0,q],[Z+ee]:[1,N,[on],e=>[wn(...e)]],[ee]:[1,V,[on]],[ee+ie]:[1,L,[on]],[Z+ee+ae]:[2,M,[on,dn],e=>[yn(...e)]],[re]:[1,R,[on]],[le]:[1,E,[on]],[Z+se]:[2,$,[on,hn],e=>[vn(...e)]],[se]:[2,A,[on,hn]],[ie]:[2,P,[on,hn]],[Z+ae]:[3,J,[on,hn,mn],e=>[Cn(...e)]],[ae]:[3,O,[on,hn,mn],e=>zt(gn(...e))],InvalidCell:[3,D],[Z+de]:[0,j,[],()=>[xn()]],[de]:[0,B],[ce]:[0,H],[Z+oe]:[1,W,[bn],e=>[Tn(...e)]],[oe]:[1,Q,[bn],e=>zt(fn(e[0]))],InvalidValue:[1,F]},(([e,t,n,s],r)=>{On["add"+r+"Listener"]=(...r)=>_(r[e],t[r[e+1]?1:0],e>0?Te(r,0,e):void 0,n,s)})),De(On)},{PureComponent:Ft,createContext:jt,useCallback:Bt,useContext:Ht,useEffect:Wt,useLayoutEffect:Qt,useMemo:Gt,useRef:Kt,useState:Ut,useSyncExternalStore:Xt}=B,Yt=(e,...t)=>we(e)?{}:e(...t),Zt="tinybaseInspector",_t="TinyBase Inspector",en=["left","top","bottom","right","full"],tn="state",nn="sort",sn="open",rn="position",ln=sn,an="editable",on=(...e)=>Xe(e),dn=(e,t)=>Le(Ne([...e]),t),cn=(e,t)=>[!!s(tn,e,an,t),Bt((n=>{t.setCell(tn,e,an,(e=>!e)),n.preventDefault()}),[t,e])],hn=({s:t})=>{const n=r(rn,t)??1,s=l(ln,(()=>!0),[],t);return r(ln,t)?null:e("img",{onClick:s,title:_t,"data-position":n})},un="editable",mn=(e,t)=>Le(h(e,t),(t=>e+"."+t)),gn=(e,t,n)=>{const s=Bt(e,t);return n?s:void 0},pn=(...e)=>Gt((()=>e),e),bn=(e,t)=>Gt((()=>({store:e,tableId:t})),[e,t]),fn=(e,t)=>Gt((()=>({queries:e,queryId:t})),[e,t]),In=(t,n=!1,s,r=0,l,a,i,o)=>{const[[d,c,h],u]=Ut([t,n,r]),m=Bt((e=>{u(e),o?.(e)}),[o]),g=gn((e=>m([e,e==d&&!c,h])),[m,d,c,h],s),p=Bt((e=>m([d,c,e])),[m,d,c]),b=!0===i?Mn:i;return[[d,c,h],g,Gt((()=>!1===i?null:e(b,{offset:h,limit:l,total:a,onChange:p})),[i,b,h,l,a,p])]},wn=(e,t,n)=>Gt((()=>{const s=t??e;return We(xe(s)?Fe(Le(s,(e=>[e,e]))):s,((e,t)=>{return{label:t,component:n,...(s=e,H(s)==Q?{label:e}:e)};var s}))}),[t,n,e]),yn=({className:n,headerRow:s,idColumn:r,params:[l,a,i,o,d,c]})=>t("table",{className:n,children:[c?e("caption",{children:c}):null,!1===s?null:e("thead",{children:t("tr",{children:[!1===r?null:e(vn,{sort:o??[],label:"Id",onClick:d}),He(l,(({label:t},n)=>e(vn,{cellId:n,label:t,sort:o??[],onClick:d},n)))]})}),e("tbody",{children:Le(i,(n=>t("tr",{children:[!1===r?null:e("th",{children:n}),He(l,(({component:t,getComponentProps:s},r)=>e("td",{children:e(t,{...Yt(s,n,r),...a,rowId:n,cellId:r})},r)))]},n)))})]}),vn=({cellId:e,sort:[n,s],label:r=e??W,onClick:l})=>t("th",{onClick:gn((()=>l?.(e)),[l,e],l),className:we(s)||n!=e?void 0:`sorted ${s?"de":"a"}scending`,children:[we(s)||n!=e?null:(s?"↓":"↑")+" ",r]}),Cn=({localRowId:s,params:[r,l,a,i,o,d,c]})=>{const h=y(o,s,d);return t("tr",{children:[!1===r?null:t(n,{children:[e("th",{children:s}),e("th",{children:h})]}),He(l,(({component:t,getComponentProps:n},r)=>{const[l,o]=((e,t="",n)=>e.split(t,n))(r,".",2),d=l===a?s:l===i?h:null;return we(d)?null:e("td",{children:e(t,{...Yt(n,d,o),store:c,tableId:l,rowId:d,cellId:o})},r)}))]})},xn=({thing:n,onThingChange:s,className:r,hasSchema:l,showType:a=!0})=>{const[i,o]=Ut(),[d,c]=Ut(),[h,u]=Ut(),[m,g]=Ut(),[p,b]=Ut();d!==n&&(o(Lt(n)),c(n),u(n+""),g(Number(n)||0),b(!!n));const f=Bt(((e,t)=>{t(e),c(e),s(e)}),[s]),I=Bt((()=>{if(!l?.()){const e=Et(i,K,G,Q),t=Et(e,h,m,p);o(e),c(t),s(t)}}),[l,s,h,m,p,i]);return t("div",{className:r,children:[a?e("button",{className:i,onClick:I,children:i}):null,Et(i,e("input",{value:h,onChange:Bt((e=>f(e[he][ue]+"",u)),[f])},i),e("input",{type:"number",value:m,onChange:Bt((e=>f(Number(e[he][ue]||0),g)),[f])},i),e("input",{type:"checkbox",checked:p,onChange:Bt((e=>f(!!e[he].checked,b)),[f])},i))]})},Tn=({tableId:t,cellId:n,descending:s,offset:r,limit:l,store:a,editable:i,sortOnClick:o,paginator:d=!1,onChange:c,customCells:u,...m})=>{const[g,p,b]=In(n,s,o,r,l,v(t,a),d,c);return e(yn,{...m,params:pn(wn(h(t,a),u,i?Vn:f),bn(a,t),C(t,...g,l,a),g,p,b)})},kn=({store:n,editable:s=!1,valueComponent:r=(s?Ln:a),getValueComponentProps:l,className:o,headerRow:d,idColumn:c})=>t("table",{className:o,children:[!1===d?null:e("thead",{children:t("tr",{children:[!1===c?null:e("th",{children:"Id"}),e("th",{children:oe})]})}),e("tbody",{children:Le(i(n),(s=>t("tr",{children:[!1===c?null:e("th",{children:s}),e("td",{children:e(r,{...Yt(l,s),valueId:s,store:n})})]},s)))})]}),Sn=({indexId:t,sliceId:n,indexes:s,editable:r,customCells:l,...a})=>{const[i,o,u]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(d(s),t);return e(yn,{...a,params:pn(wn(h(u,o),l,r?Vn:f),bn(o,u),c(t,n,i))})},qn=({relationshipId:s,relationships:r,editable:l,customCells:a,className:i,headerRow:o,idColumn:d=!0})=>{const[c,h,u,m]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(b(r),s),g=wn([...mn(u,h),...mn(m,h)],a,l?Vn:f),p=pn(d,g,u,m,s,c,h);return t("table",{className:i,children:[!1===o?null:e("thead",{children:t("tr",{children:[!1===d?null:t(n,{children:[t("th",{children:[u,".Id"]}),t("th",{children:[m,".Id"]})]}),He(g,(({label:t},n)=>e("th",{children:t},n)))]})}),e("tbody",{children:Le(I(u,h),(t=>e(Cn,{localRowId:t,params:p},t)))})]})},Nn=({queryId:t,cellId:n,descending:s,offset:r,limit:l,queries:a,sortOnClick:i,paginator:o=!1,customCells:d,onChange:c,...h})=>{const[b,f,I]=In(n,s,i,r,l,u(t,a),o,c);return e(yn,{...h,params:pn(wn(p(t,a),d,g),fn(a,t),m(t,...b,l,a),b,f,I)})},Vn=({tableId:t,rowId:n,cellId:r,store:l,className:a,showType:i})=>e(xn,{thing:s(t,n,r,l),onThingChange:w(t,n,r,(e=>e),[],l),className:a??un+ae,showType:i,hasSchema:o(l)?.hasTablesSchema}),Ln=({valueId:t,store:n,className:s,showType:a})=>e(xn,{thing:r(t,n),onThingChange:l(t,(e=>e),[],n),className:s??un+oe,showType:a,hasSchema:o(n)?.hasValuesSchema}),Mn=({onChange:s,total:r,offset:l=0,limit:a=r,singular:i="row",plural:o=i+"s"})=>{(l>r||l<0)&&(l=0,s(0));const d=gn((()=>s(l-a)),[s,l,a],l>0),c=gn((()=>s(l+a)),[s,l,a],l+a<r);return t(n,{children:[r>a&&t(n,{children:[e("button",{className:"previous",disabled:0==l,onClick:d,children:"←"}),e("button",{className:"next",disabled:l+a>=r,onClick:c,children:"→"}),l+1," to ",be(r,l+a)," of "]}),r," ",1!=r?o:i]})},Rn=({uniqueId:n,summary:r,editable:l,handleEditable:a,children:i,s:o})=>{const d=!!s(tn,n,sn,o),c=w(tn,n,sn,(e=>e[he].open),[],o);return t("details",{open:d,onToggle:c,children:[t("summary",{children:[r,a?e("img",{onClick:a,className:l?"done":"edit"}):null]}),i]})},En=({indexes:t,indexesId:n,indexId:s,s:r})=>e(Rn,{uniqueId:on("i",n,s),summary:"Index: "+s,s:r,children:Le(k(s,t),(l=>e(zn,{indexes:t,indexesId:n,indexId:s,sliceId:l,s:r},l)))}),zn=({indexes:t,indexesId:n,indexId:s,sliceId:r,s:l})=>{const a=on("i",n,s,r),[i,o]=cn(a,l);return e(Rn,{uniqueId:a,summary:"Slice: "+r,editable:i,handleEditable:o,s:l,children:e(Sn,{sliceId:r,indexId:s,indexes:t,editable:i})})},$n=({indexesId:t,s:n})=>{const s=x(t),r=T(s);return we(s)?null:e(Rn,{uniqueId:on("i",t),summary:"Indexes: "+(t??Y),s:n,children:Me(r)?"No indexes defined":dn(r,(r=>e(En,{indexes:s,indexesId:t,indexId:r,s:n},r)))})},An=({metrics:n,metricId:s})=>t("tr",{children:[e("th",{children:s}),e("td",{children:n?.getTableId(s)}),e("td",{children:N(s,n)})]}),Pn=({metricsId:n,s:s})=>{const r=S(n),l=q(r);return we(r)?null:e(Rn,{uniqueId:on("m",n),summary:"Metrics: "+(n??Y),s:s,children:Me(l)?"No metrics defined":t("table",{children:[t("thead",{children:[e("th",{children:"Metric Id"}),e("th",{children:"Table Id"}),e("th",{children:"Metric"})]}),e("tbody",{children:Le(l,(t=>e(An,{metrics:r,metricId:t},t)))})]})})},Jn=({queries:t,queriesId:n,queryId:r,s:l})=>{const a=on("q",n,r),[i,o,d]=Ue(s(tn,a,nn,l)??"[]"),c=w(tn,a,nn,Xe,[],l);return e(Rn,{uniqueId:a,summary:"Query: "+r,s:l,children:e(Nn,{queryId:r,queries:t,cellId:i,descending:o,offset:d,limit:10,paginator:!0,sortOnClick:!0,onChange:c})})},On=({queriesId:t,s:n})=>{const s=V(t),r=L(s);return we(s)?null:e(Rn,{uniqueId:on("q",t),summary:"Queries: "+(t??Y),s:n,children:Me(r)?"No queries defined":dn(r,(r=>e(Jn,{queries:s,queriesId:t,queryId:r,s:n},r)))})},Dn=({relationships:t,relationshipsId:n,relationshipId:s,s:r})=>{const l=on("r",n,s),[a,i]=cn(l,r);return e(Rn,{uniqueId:l,summary:"Relationship: "+s,editable:a,handleEditable:i,s:r,children:e(qn,{relationshipId:s,relationships:t,editable:a})})},Fn=({relationshipsId:t,s:n})=>{const s=M(t),r=R(s);return we(s)?null:e(Rn,{uniqueId:on("r",t),summary:"Relationships: "+(t??Y),s:n,children:Me(r)?"No relationships defined":dn(r,(r=>e(Dn,{relationships:s,relationshipsId:t,relationshipId:r,s:n},r)))})},jn=({tableId:t,store:n,storeId:r,s:l})=>{const a=on("t",r,t),[i,o,d]=Ue(s(tn,a,nn,l)??"[]"),c=w(tn,a,nn,Xe,[],l),[h,u]=cn(a,l);return e(Rn,{uniqueId:a,summary:ee+": "+t,editable:h,handleEditable:u,s:l,children:e(Tn,{tableId:t,store:n,cellId:i,descending:o,offset:d,limit:10,paginator:!0,sortOnClick:!0,onChange:c,editable:h})})},Bn=({store:t,storeId:n,s:s})=>{const r=on("v",n),[l,a]=cn(r,s);return Me(i(t))?null:e(Rn,{uniqueId:r,summary:de,editable:l,handleEditable:a,s:s,children:e(kn,{store:t,editable:l})})},Hn=({storeId:n,s:s})=>{const r=E(n),l=z(r);return we(r)?null:t(Rn,{uniqueId:on("s",n),summary:(r.isMergeable()?"Mergeable":"")+"Store: "+(n??Y),s:s,children:[e(Bn,{storeId:n,store:r,s:s}),dn(l,(t=>e(jn,{store:r,storeId:n,tableId:t,s:s},t)))]})},Wn=({s:n})=>{const s=Kt(null),r=Kt(0),[l,a]=Ut(!1),{scrollLeft:i,scrollTop:o}=$(n);Qt((()=>{const e=s.current;if(e&&!l){const t=new MutationObserver((()=>{e.scrollWidth>=fe(i)+e.clientWidth&&e.scrollHeight>=fe(o)+e.clientHeight&&e.scrollTo(i,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[l,i,o]);const d=Bt((e=>{const{scrollLeft:t,scrollTop:s}=e[he];cancelIdleCallback(r.current),r.current=requestIdleCallback((()=>{a(!0),n.setPartialValues({scrollLeft:t,scrollTop:s})}))}),[n]),c=E(),h=A(),u=S(),m=P(),g=x(),p=J(),b=M(),f=O(),I=V(),w=D();return we(c)&&Me(h)&&we(u)&&Me(m)&&we(g)&&Me(p)&&we(b)&&Me(f)&&we(I)&&Me(w)?e("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):t("article",{ref:s,onScroll:d,children:[e(Hn,{s:n}),Le(h,(t=>e(Hn,{storeId:t,s:n},t))),e(Pn,{s:n}),Le(m,(t=>e(Pn,{metricsId:t,s:n},t))),e($n,{s:n}),Le(p,(t=>e($n,{indexesId:t,s:n},t))),e(Fn,{s:n}),Le(f,(t=>e(Fn,{relationshipsId:t,s:n},t))),e(On,{s:n}),Le(w,(t=>e(On,{queriesId:t,s:n},t)))]})};class Qn extends Ft{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?e("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const Gn=({s:n})=>{const s=r(rn,n)??1,a=l(ln,(()=>!1),[],n),i=l(rn,(e=>Number(e[he].dataset.id)),[],n);return t("header",{children:[e("img",{title:_t}),e("span",{children:_t}),Le(en,((t,n)=>n==s?null:e("img",{onClick:i,"data-id":n,title:"Dock to "+t},n))),e("img",{onClick:a,title:"Close"})]})},Kn=({s:n})=>{const s=r(rn,n)??1;return r(ln,n)?t("main",{"data-position":s,children:[e(Gn,{s:n}),e(Qn,{children:e(Wn,{s:n})})]}):null},Un="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Xn='content:url("',Yn=Xn+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Zn='</svg>")',_n=Xn+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",es=Le([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,n,s])=>Yn+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${n}' height='${s}' fill='white'/>`+Zn)),ts=Yn+"<path d='M20 20l60 60M20 80l60-60' />"+Zn,ns=Yn+`<path d='${Un}' />`+Zn,ss=Yn+`<path d='${Un}M20 20l60 60' />`+Zn,rs="*::-webkit-scrollbar",ls=((e,t="")=>e.join(t))(He({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[rs]:"width:0.5rem;height:0.5rem;",[rs+"-track"]:"background:#111",[rs+"-thumb"]:"background:#999;border:1px solid #111",[rs+"-thumb:hover"]:"background:#fff",[rs+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+_n,...Fe(Le(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...Fe(Le(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":_n,"header>img:nth-of-type(6)":ts,...Fe(Le(es,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":ns,"details[open]>summary img.done":ss,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${Zt} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${Zt} ${t}{${e}}`:""))),as=({position:s="right",open:r=!1})=>{const l=F(Dt),a=en.indexOf(s);return j(l,(e=>{return t=Zt,n=sessionStorage,((e,t,n,s,r,l,a,i={},o=0,d=[])=>{let c,h,u,m=0,g=0,p=0;mt(qt,d,(()=>0)),mt(Nt,d,(()=>[]));const b=ot(),[f,I,w,y,v]=((e=1,t,n)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!n),([[e],[t]])=>!Qe(e)||!Qe(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!Qe(e)||!Qe(t),t.setContent]:Se("Store type not supported by this Persister"))(a,e,o),[C,x,T]=St((()=>$)),k=e=>{e!=m&&(m=e,x(b,void 0,m))},S=t=>{(f&&xe(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},q=async e=>(2!=m&&(k(1),g++,await z((async()=>{await qe((async()=>{const n=await t();xe(n)?S(n):e?v(e):Se("Content is not an array: "+n)}),(()=>{e&&v(e)})),k(0)}))),$),N=async e=>(V(),await q(e),await qe((async()=>h=await s((async(e,t)=>{t||e?2!=m&&(k(1),g++,S(t??e),k(0)):await q()}))),l),$),V=async()=>(h&&(await qe((()=>r(h)),l),h=void 0),$),L=async e=>(1!=m&&(k(2),p++,await z((async()=>{await qe((()=>n(I,e)),l),k(0)}))),$),M=async()=>(R(),await L(),u=e.addDidFinishTransactionListener((()=>{const e=w();y(e)&&L(e)})),$),R=async()=>(u&&(e.delListener(u),u=void 0),$),E=async(e=!1)=>{const[t,n]=e?[R,V]:[V,R];return await t(),await n(),$},z=async(...e)=>(Re(ct(Nt,d),...e),await(async()=>{if(!ct(qt,d)){for(ut(qt,d,1);!we(c=Ee(ct(Nt,d)));)await qe(c,l);ut(qt,d,0)}})(),$),$={load:q,startAutoLoad:N,stopAutoLoad:V,isAutoLoading:()=>!we(h),save:L,startAutoSave:M,stopAutoSave:R,isAutoSaving:()=>!we(u),startAutoPersisting:async(e,t=!1)=>{const[n,s]=t?[M,N]:[N,M];return await n(e),await s(e),$},stopAutoPersisting:E,getStatus:()=>m,addStatusListener:e=>C(e,b),delListener:t=>(T(t),e),schedule:z,getStore:()=>e,destroy:()=>(ct(Nt,d).splice(0,void 0),E()),getStats:()=>({loads:g,saves:p}),...i};return De($)})(e,(async()=>{return e=n.getItem(t),Ue(e,((e,t)=>""===t?void 0:t));var e}),(async e=>{return n.setItem(t,(s=e(),Ke(s,((e,t)=>void 0===t?"":t))));var s}),(e=>{const s=s=>{s.storageArea===n&&s.key===t&&qe((()=>e(Ue(s.newValue))),e)};return ge.addEventListener(Vt,s),s}),(e=>ge.removeEventListener(Vt,e)),void 0,3,{getStorageName:()=>t});var t,n}),void 0,(async e=>{await e.load([{},{position:-1==a?1:a,open:!!r}]),await e.startAutoSave()})),t(n,{children:[t("aside",{id:Zt,children:[e(hn,{s:l}),e(Kn,{s:l})]}),e("style",{children:ls})]})};export{as as Inspector};
|
|
Binary file
|