tinybase 4.4.0 → 4.4.2

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.
Files changed (50) hide show
  1. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  2. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  3. package/lib/cjs/ui-react.cjs +1 -1
  4. package/lib/cjs/ui-react.cjs.gz +0 -0
  5. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  6. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  7. package/lib/cjs-es6/ui-react.cjs +1 -1
  8. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  9. package/lib/debug/checkpoints.js +8 -8
  10. package/lib/debug/indexes.js +8 -8
  11. package/lib/debug/metrics.js +8 -8
  12. package/lib/debug/persisters/persister-automerge.js +23 -23
  13. package/lib/debug/persisters/persister-partykit-server.js +35 -21
  14. package/lib/debug/persisters/persister-yjs.js +23 -23
  15. package/lib/debug/queries.js +10 -10
  16. package/lib/debug/relationships.js +6 -6
  17. package/lib/debug/store.js +10 -10
  18. package/lib/debug/tinybase.js +24 -24
  19. package/lib/debug/tools.js +2 -2
  20. package/lib/debug/ui-react-dom.js +12 -12
  21. package/lib/debug/ui-react.js +56 -22
  22. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  23. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  24. package/lib/es6/ui-react.js +1 -1
  25. package/lib/es6/ui-react.js.gz +0 -0
  26. package/lib/persisters/persister-partykit-server.js +1 -1
  27. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  28. package/lib/types/metrics.d.ts +2 -2
  29. package/lib/types/persisters/persister-partykit-server.d.ts +58 -2
  30. package/lib/types/persisters/persister-remote.d.ts +6 -1
  31. package/lib/types/queries.d.ts +2 -45
  32. package/lib/types/ui-react.d.ts +53 -0
  33. package/lib/types/with-schemas/metrics.d.ts +2 -2
  34. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +61 -0
  35. package/lib/types/with-schemas/persisters/persister-remote.d.ts +6 -1
  36. package/lib/types/with-schemas/queries.d.ts +2 -45
  37. package/lib/types/with-schemas/store.d.ts +8 -8
  38. package/lib/types/with-schemas/ui-react.d.ts +59 -0
  39. package/lib/ui-react.js +1 -1
  40. package/lib/ui-react.js.gz +0 -0
  41. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  42. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  43. package/lib/umd/ui-react.js +1 -1
  44. package/lib/umd/ui-react.js.gz +0 -0
  45. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  46. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  47. package/lib/umd-es6/ui-react.js +1 -1
  48. package/lib/umd-es6/ui-react.js.gz +0 -0
  49. package/package.json +19 -19
  50. package/readme.md +2 -2
@@ -1 +1 @@
1
- "use strict";const t=t=>typeof t,a="",e=t(a),s="t",n=(t,a)=>t.startsWith(a),r=Promise,i=t=>null==t,c=(t,a,e)=>i(t)?e?.():a(t),o=(t,a,e)=>t.slice(a,e),l=t=>t.length,h=async t=>r.all(t),u=(t,a)=>t.map(a),w=(t,...a)=>t.push(...a),g=Object,y=(t=[])=>g.fromEntries(t),f=(t,a)=>u(g.entries(t),(([t,e])=>a(e,t))),p=(t,a,e)=>(((t,a)=>!i(((t,a)=>c(t,(t=>t[a])))(t,a)))(t,a)||(t[a]=e()),t[a]),S=t=>JSON.stringify(t,((t,a)=>a instanceof Map?g.fromEntries([...a]):a)),d=JSON.parse,D=(a,s,n)=>a+s+(t(n)==e?n:S(n)),P=(t,a,e)=>{const s=l(t);return n(a,t)?[a[s],(e?d:String)(o(a,s+1))]:void 0},m=(t,a)=>((t,a)=>t?.forEach(a))(t,((t,e)=>a(e,t))),R="hasStore",b=y(u(["Origin","Methods","Headers"],(t=>["Access-Control-Allow-"+t,"*"]))),x=async t=>await t.party.storage.get((t.config.storagePrefix??a)+R),T=async(t,e,r,c)=>{const o=t.party.storage,u=t.config.storagePrefix??a,g={[u+R]:1},y=[],p=[];await h(f(e[0],(async(a,e)=>i(a)?!r&&t.canDelTable(e,c)&&((t,...a)=>t.unshift(...a))(p,v(u,s,e)):t.canSetTable(e,r,c)&&await h(f(a,(async(a,n)=>i(a)?!r&&t.canDelRow(e,n,c)&&w(p,v(u,s,e,n)):t.canSetRow(e,n,r,c)&&await h(f(a,(async(a,l)=>{const h=[e,n,l],f=v(u,s,...h);i(a)?!r&&t.canDelCell(...h,c)&&w(y,f):t.canSetCell(...h,a,r,c,await o.get(f))&&(g[f]=a)}))))))))),await h(f(e[1],(async(a,e)=>{const s=u+"v"+e;i(a)?!r&&t.canDelValue(e,c)&&w(y,s):t.canSetValue(e,a,r,c,await o.get(s))&&(g[s]=a)}))),0!=l(p)&&m(await o.list(),(t=>p.every((a=>!n(t,a)||w(y,t)&&0)))),await o.delete(y),await o.put(g)},v=(t,a,...e)=>D(t,a,o(S(e),1,-1)),C=async(t,a,e=null)=>new Response(e,{status:a,headers:t.config.responseHeaders??b});exports.TinyBasePartyKitServer=class{constructor(t){this.party=t,this.config={}}async onRequest(t){const e=this.config.storePath??"/store";if(new URL(t.url).pathname.endsWith(e)){const e=await x(this),n=await t.text();return"PUT"==t.method?e?C(this,205):(await T(this,d(n),!0,t),C(this,201)):C(this,200,e?S(await(async t=>{const e={},n={},r=t.config.storagePrefix??a;return m(await t.party.storage.list(),((t,a)=>c(P(r,t),(([t,r])=>{if(t==s){const[t,s,n]=d("["+r+"]");p(p(e,t,y),s,y)[n]=a}else"v"==t&&(n[r]=a)})))),[e,n]})(this)):a)}return C(this,404)}async onMessage(t,e){const s=this.config.messagePrefix??a;await c(P(s,t,1),(async([t,a])=>{"s"==t&&await x(this)&&(await T(this,a,!1,e),this.party.broadcast(D(s,"s",a)))}))}canSetTable(t,a,e){return!0}canDelTable(t,a){return!0}canSetRow(t,a,e,s){return!0}canDelRow(t,a,e){return!0}canSetCell(t,a,e,s,n,r,i){return!0}canDelCell(t,a,e,s){return!0}canSetValue(t,a,e,s,n){return!0}canDelValue(t,a){return!0}};
1
+ "use strict";const t=t=>typeof t,e=t(""),a="t",s=(t,e)=>t.startsWith(e),n=Promise,r=t=>null==t,i=(t,e,a)=>r(t)?a?.():e(t),o=(t,e,a)=>t.slice(e,a),c=t=>t.length,l=async t=>n.all(t),g=(t,e)=>t.map(e),h=(t,...e)=>t.push(...e),u=Object,w=(t=[])=>u.fromEntries(t),f=(t,e)=>g(u.entries(t),(([t,a])=>e(a,t))),y=(t,e,a)=>(((t,e)=>!r(((t,e)=>i(t,(t=>t[e])))(t,e)))(t,e)||(t[e]=a()),t[e]),p=t=>JSON.stringify(t,((t,e)=>e instanceof Map?u.fromEntries([...e]):e)),S=JSON.parse,d=(a,s,n)=>a+s+(t(n)==e?n:p(n)),P=(t,e,a)=>{const n=c(t);return s(e,t)?[e[n],(a?S:String)(o(e,n+1))]:void 0},x=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),m="hasStore",D=w(g(["Origin","Methods","Headers"],(t=>["Access-Control-Allow-"+t,"*"]))),R=async(t,e="")=>!!await t.get(e+m),b=async(t,e="")=>{const s={},n={};return x(await t.list(),((t,r)=>i(P(e,t),(([t,e])=>{if(t==a){const[t,a,n]=S("["+e+"]");y(y(s,t,w),a,w)[n]=r}else"v"==t&&(n[e]=r)})))),[s,n]},T=async(t,e,n,i)=>{const o=t.party.storage,g=t.config.storagePrefix,u={[g+m]:1},w=[],y=[];await l(f(e[0],(async(e,s)=>r(e)?!n&&t.canDelTable(s,i)&&((t,...e)=>t.unshift(...e))(y,v(g,a,s)):t.canSetTable(s,n,i)&&await l(f(e,(async(e,c)=>r(e)?!n&&t.canDelRow(s,c,i)&&h(y,v(g,a,s,c)):t.canSetRow(s,c,n,i)&&await l(f(e,(async(e,l)=>{const f=[s,c,l],y=v(g,a,...f);r(e)?!n&&t.canDelCell(...f,i)&&h(w,y):t.canSetCell(...f,e,n,i,await o.get(y))&&(u[y]=e)}))))))))),await l(f(e[1],(async(e,a)=>{const s=g+"v"+a;r(e)?!n&&t.canDelValue(a,i)&&h(w,s):t.canSetValue(a,e,n,i,await o.get(s))&&(u[s]=e)}))),0!=c(y)&&x(await o.list(),(t=>y.every((e=>!s(t,e)||h(w,t)&&0)))),await o.delete(w),await o.put(u)},v=(t,e,...a)=>d(t,e,o(p(a),1,-1)),C=async(t,e,a=null)=>new Response(a,{status:e,headers:t.config.responseHeaders});exports.TinyBasePartyKitServer=class{constructor(t){this.party=t,this.config={},this.config.storePath??="/store",this.config.messagePrefix??="",this.config.storagePrefix??="",this.config.responseHeaders??=D}async onRequest(t){const{party:{storage:e},config:{storePath:a,storagePrefix:s}}=this;if(new URL(t.url).pathname.endsWith(a)){const a=await R(e,s),n=await t.text();return"PUT"==t.method?a?C(this,205):(await T(this,S(n),!0,t),C(this,201)):C(this,200,a?p(await b(e,s)):"")}return C(this,404)}async onMessage(t,e){const{party:{storage:a,broadcast:s},config:{messagePrefix:n,storagePrefix:r}}=this;await i(P(n,t,1),(async([t,i])=>{"s"==t&&await R(a,r)&&(await T(this,i,!1,e),s(d(n,"s",i),[e.id]))}))}canSetTable(t,e,a){return!0}canDelTable(t,e){return!0}canSetRow(t,e,a,s){return!0}canDelRow(t,e,a){return!0}canSetCell(t,e,a,s,n,r,i){return!0}canDelCell(t,e,a,s){return!0}canSetValue(t,e,a,s,n){return!0}canDelValue(t,e){return!0}},exports.hasStoreInStorage=R,exports.loadStoreFromStorage=b;
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Listener",u="Result",l="Has",d="has",n="Ids",p="Table",i=p+"s",a=p+n,x="Row",I=x+"Count",c=x+n,C="Sorted"+x+n,b="Cell",w=b+n,R="Value",k=R+"s",L=R+n,g=e=>null==e,h=(e,s,t)=>g(e)?t?.():s(e),m=e=>s(e)==o,y=()=>{},V=(e,s)=>e.map(s),T=Object.keys,{createContext:S,useContext:v}=e,P=S([]),q=(e,s)=>{const t=v(P);return g(e)?t[s]:m(e)?((e,s)=>h(e,(e=>e[s])))(t[s+1]??{},e):e},f=(e,s)=>{const t=q(e,s);return g(e)||m(e)?t:e},B=e=>T(v(P)[e]??{}),H=e=>f(e,0),M=e=>f(e,2),D=e=>f(e,4),F=e=>f(e,6),O=e=>f(e,8),Q=e=>f(e,10),E=e=>e.toLowerCase();E(r);const A="Transaction";E(A);const{useCallback:G,useEffect:W,useMemo:j,useLayoutEffect:U,useRef:z,useState:J}=e,K=[],N={},X=[[],void 0,[]],Y=(e,s,t=K)=>{const o=j((()=>s(e)),[e,...t]);return W((()=>()=>o.destroy()),[o]),o},Z=(e,s,t,o=K,r,u="get",l="")=>{const[,d]=J(),n=G((()=>s?.[u+e]?.(...o)??t),[s,e,...o,t]),p=z();return j((()=>p.current=n()),[n]),$(l+e,s,((...e)=>{p.current=g(r)?n():e[r],d([])}),[n,r],o),p.current},$=(e,s,t,o=K,u=K,...l)=>U((()=>{const o=s?.["add"+e+r]?.(...u,t,...l);return()=>s?.delListener(o)}),[s,e,...u,...o,...l]),_=(e,s,t,o=K,r=y,u=K,...l)=>{const d=H(e);return G((e=>h(d,(o=>h(t(e,o),(e=>r(o["set"+s](...l,e),e)))))),[d,s,...o,...u,...l])},ee=(e,s,t=y,o=K,...r)=>{const u=H(e);return G((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},se=(e,s,t)=>{const o=Q(e);return G((()=>o?.[s](t)),[o,s,t])},te=e=>Z(a,H(e),K),oe=(e,s)=>Z(c,H(s),K,[e]),re=(e,s,t,o=0,r,u)=>Z(C,H(u),K,[e,s,t,o,r],6),ue=(e,s,t)=>Z(w,H(t),K,[e,s]),le=(e,s,t,o)=>Z(b,H(o),void 0,[e,s,t],4),de=e=>Z(L,H(e),K),ne=(e,s)=>Z(R,H(s),void 0,[e]),pe=(e,s)=>Z("Metric",M(s),void 0,[e]),ie=(e,s)=>Z("SliceIds",D(s),K,[e]),ae=(e,s,t)=>Z("Slice"+c,D(t),K,[e,s]),xe=(e,s,t)=>Z("RemoteRowId",F(t),void 0,[e,s]),Ie=(e,s,t)=>Z("Local"+c,F(t),K,[e,s]),ce=(e,s,t)=>Z("Linked"+c,F(t),K,[e,s]),Ce=(e,s)=>Z(u+c,O(s),K,[e]),be=(e,s,t,o=0,r,l)=>Z(u+C,O(l),K,[e,s,t,o,r],6),we=(e,s,t)=>Z(u+w,O(t),K,[e,s]),Re=(e,s,t,o)=>Z(u+b,O(o),void 0,[e,s,t]),ke=e=>Z("CheckpointIds",Q(e),X),Le=(e,s)=>Z("Checkpoint",Q(s),void 0,[e]),ge=e=>se(e,"goBackward"),he=e=>se(e,"goForward"),{PureComponent:me,Fragment:ye,createElement:Ve,useCallback:Te,useLayoutEffect:Se,useRef:ve,useState:Pe}=e,qe=(e,...s)=>g(e)?{}:e(...s),fe=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:Be}=e,He=({tableId:e,store:s,rowComponent:t=Ee,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},d)=>Oe(V(d,(u=>Ve(t,{...qe(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),Me=({queryId:e,queries:s,resultRowComponent:t=Ue,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>Oe(V(l,(r=>Ve(t,{...qe(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),De=({relationshipId:e,relationships:s,rowComponent:t=Ee,getRowComponentProps:o,separator:r,debugIds:u},l,d)=>{const[n,p,i]=fe(F(s),e),a=l(e,d,n);return Oe(V(a,(e=>Ve(t,{...qe(o,e),key:e,tableId:i,rowId:e,store:p,debugIds:u}))),r,u,d)},Fe=e=>({checkpoints:s,checkpointComponent:t=ze,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=Q(s);return Oe(V(e(ke(l)),(e=>Ve(t,{...qe(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},Oe=(e,s,t,o)=>{const r=g(s)||!Array.isArray(e)?e:V(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Qe=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>Oe(t+(le(e,s,o,r)??t),void 0,u,o),Ee=({tableId:e,rowId:s,store:t,cellComponent:o=Qe,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:d})=>Oe(V(((e,s,t,o)=>{const r=ue(s,t,o);return e??r})(u,e,s,t),(u=>Ve(o,{...qe(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:d}))),l,d,s),Ae=e=>He(e,oe(e.tableId,e.store)),Ge=({valueId:e,store:s,debugIds:o})=>Oe(t+(ne(e,s)??t),void 0,o,e),We=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Ee,getRowComponentProps:r,separator:u,debugIds:l})=>{const[d,n,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(D(t),e),i=ae(e,s,d);return Oe(V(i,(e=>Ve(o,{...qe(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:l}))),u,l,s)},je=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>Oe(t+(Re(e,s,o,r)??t),void 0,u,o),Ue=({queryId:e,rowId:s,queries:t,resultCellComponent:o=je,getResultCellComponentProps:r,separator:u,debugIds:l})=>Oe(V(we(e,s,t),(u=>Ve(o,{...qe(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),ze=({checkpoints:e,checkpointId:s,debugIds:o})=>Oe(Le(s,e)??t,void 0,o,s),Je=Fe((e=>e[0])),Ke=Fe((e=>g(e[1])?[]:[e[1]])),Ne=Fe((e=>e[2]));exports.BackwardCheckpointsView=Je,exports.CellView=Qe,exports.CheckpointView=ze,exports.CurrentCheckpointView=Ke,exports.ForwardCheckpointsView=Ne,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=We,getSliceComponentProps:o,separator:r,debugIds:u})=>Oe(V(ie(e,s),(r=>Ve(t,{...qe(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>De(e,ce,e.firstRowId),exports.LocalRowsView=e=>De(e,Ie,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>Oe(pe(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:l,relationships:d,relationshipsById:n,queries:p,queriesById:i,checkpoints:a,checkpointsById:x,children:I})=>{const c=e.useContext(P);return Ve(P.Provider,{value:Be((()=>[s??c[0],{...c[1],...t},o??c[2],{...c[3],...r},u??c[4],{...c[5],...l},d??c[6],{...c[7],...n},p??c[8],{...c[9],...i},a??c[10],{...c[11],...x}]),[s,t,o,r,u,l,d,n,p,i,a,x,c])},I)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Ee,getRowComponentProps:r,debugIds:u})=>{const[l,d,,n]=fe(F(t),e),p=xe(e,s,l);return Oe(g(n)||g(p)?null:Ve(o,{...qe(r,p),key:p,tableId:n,rowId:p,store:d,debugIds:u}),void 0,u,s)},exports.ResultCellView=je,exports.ResultRowView=Ue,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Me(r,be(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>Me(e,Ce(e.queryId,e.queries)),exports.RowView=Ee,exports.SliceView=We,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>He(r,re(r.tableId,e,s,t,o,r.store)),exports.TableView=Ae,exports.TablesView=({store:e,tableComponent:s=Ae,getTableComponentProps:t,separator:o,debugIds:r})=>Oe(V(te(e),(o=>Ve(s,{...qe(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Ge,exports.ValuesView=({store:e,valueComponent:s=Ge,getValueComponentProps:t,separator:o,debugIds:r})=>Oe(V(de(e),(o=>Ve(s,{...qe(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=K,o,r=y,u=K,l=!0)=>{const d=H(o);return G((t=>h(d,(o=>h(s(t,o),(s=>r(o.addRow(e,s,l),o,s)))))),[d,e,...t,...u,l])},exports.useCell=le,exports.useCellIds=ue,exports.useCellIdsListener=(e,s,t,o,r,u)=>$(w,H(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,l)=>$(b,H(l),o,r,[e,s,t],u),exports.useCheckpoint=Le,exports.useCheckpointIds=ke,exports.useCheckpointIdsListener=(e,s,t)=>$("CheckpointIds",Q(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>$("Checkpoint",Q(o),s,t,[e]),exports.useCheckpoints=e=>q(e,10),exports.useCheckpointsIds=()=>B(11),exports.useCheckpointsOrCheckpointsById=Q,exports.useCreateCheckpoints=(e,s,t)=>Y(e,s,t),exports.useCreateIndexes=(e,s,t)=>Y(e,s,t),exports.useCreateMetrics=(e,s,t)=>Y(e,s,t),exports.useCreatePersister=(e,s,t=K,o,r=K,u,l=K)=>{const[,d]=J(),n=j((()=>s(e)),[e,...t]);return W((()=>((async()=>{o&&(await o(n),d([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...l]),n},exports.useCreateQueries=(e,s,t)=>Y(e,s,t),exports.useCreateRelationships=(e,s,t)=>Y(e,s,t),exports.useCreateStore=(e,s=K)=>j(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,l)=>ee(r,b,u,l,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>ee(t,x,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>ee(s,p,t,o,e),exports.useDelTablesCallback=(e,s,t)=>ee(e,i,s,t),exports.useDelValueCallback=(e,s,t,o)=>ee(s,R,t,o,e),exports.useDelValuesCallback=(e,s,t)=>ee(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>$("DidFinish"+A,H(t),e,s),exports.useGoBackwardCallback=ge,exports.useGoForwardCallback=he,exports.useGoToCallback=(e,s=K,t,o=y,r=K)=>{const u=Q(t);return G((s=>h(u,(t=>h(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useHasCell=(e,s,t,o)=>Z(b,H(o),!1,[e,s,t],4,d,l),exports.useHasCellListener=(e,s,t,o,r,u,d)=>$(l+b,H(d),o,r,[e,s,t],u),exports.useHasRow=(e,s,t)=>Z(x,H(t),!1,[e,s],3,d,l),exports.useHasRowListener=(e,s,t,o,r,u)=>$(l+x,H(u),t,o,[e,s],r),exports.useHasTable=(e,s)=>Z(p,H(s),!1,[e],2,d,l),exports.useHasTableCell=(e,s,t)=>Z(p+b,H(t),!1,[e,s],3,d,l),exports.useHasTableCellListener=(e,s,t,o,r,u)=>$(l+p+b,H(u),t,o,[e,s],r),exports.useHasTableListener=(e,s,t,o,r)=>$(l+p,H(r),s,t,[e],o),exports.useHasTables=e=>Z(i,H(e),!1,[],1,d,l),exports.useHasTablesListener=(e,s,t,o)=>$(l+i,H(o),e,s,[],t),exports.useHasValue=(e,s)=>Z(R,H(s),!1,[e],2,d,l),exports.useHasValueListener=(e,s,t,o,r)=>$(l+R,H(r),s,t,[e],o),exports.useHasValues=e=>Z(k,H(e),!1,[],1,d,l),exports.useHasValuesListener=(e,s,t,o)=>$(l+k,H(o),e,s,[],t),exports.useIndexIds=e=>Z("IndexIds",D(e),K),exports.useIndexes=e=>q(e,4),exports.useIndexesIds=()=>B(5),exports.useIndexesOrIndexesById=D,exports.useLinkedRowIds=ce,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>$("Linked"+c,F(r),t,o,[e,s]),exports.useLocalRowIds=Ie,exports.useLocalRowIdsListener=(e,s,t,o,r)=>$("Local"+c,F(r),t,o,[e,s]),exports.useMetric=pe,exports.useMetricIds=e=>Z("MetricIds",M(e),K),exports.useMetricListener=(e,s,t,o)=>$("Metric",M(o),s,t,[e]),exports.useMetrics=e=>q(e,2),exports.useMetricsIds=()=>B(3),exports.useMetricsOrMetricsById=M,exports.useQueries=e=>q(e,8),exports.useQueriesIds=()=>B(9),exports.useQueriesOrQueriesById=O,exports.useQueryIds=e=>Z("QueryIds",O(e),K),exports.useRedoInformation=e=>{const s=Q(e),[,,[o]]=ke(s);return[!g(o),he(s),o,h(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>Z("RelationshipIds",F(e),K),exports.useRelationships=e=>q(e,6),exports.useRelationshipsIds=()=>B(7),exports.useRelationshipsOrRelationshipsById=F,exports.useRemoteRowId=xe,exports.useRemoteRowIdListener=(e,s,t,o,r)=>$("RemoteRowId",F(r),t,o,[e,s]),exports.useResultCell=Re,exports.useResultCellIds=we,exports.useResultCellIdsListener=(e,s,t,o,r)=>$(u+w,O(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,l)=>$(u+b,O(l),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>Z(u+x,O(t),N,[e,s]),exports.useResultRowCount=(e,s)=>Z(u+I,O(s),0,[e]),exports.useResultRowCountListener=(e,s,t,o)=>$(u+I,O(o),s,t,[e]),exports.useResultRowIds=Ce,exports.useResultRowIdsListener=(e,s,t,o)=>$(u+c,O(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>$(u+x,O(r),t,o,[e,s]),exports.useResultSortedRowIds=be,exports.useResultSortedRowIdsListener=(e,s,t,o,r,l,d,n)=>$(u+C,O(n),l,d,[e,s,t,o,r]),exports.useResultTable=(e,s)=>Z(u+p,O(s),N,[e]),exports.useResultTableCellIds=(e,s)=>Z(u+p+w,O(s),K,[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>$(u+p+w,O(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>$(u+p,O(o),s,t,[e]),exports.useRow=(e,s,t)=>Z(x,H(t),N,[e,s]),exports.useRowCount=(e,s)=>Z(I,H(s),0,[e]),exports.useRowCountListener=(e,s,t,o,r)=>$(I,H(r),s,t,[e],o),exports.useRowIds=oe,exports.useRowIdsListener=(e,s,t,o,r)=>$(c,H(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>$(x,H(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,l,d)=>_(u,b,o,r,l,d,e,s,t),exports.useSetCheckpointCallback=(e=y,s=K,t,o=y,r=K)=>{const u=Q(t);return G((s=>h(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>_(r,"PartialRow",t,o,u,l,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>_(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,l)=>_(r,x,t,o,u,l,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>_(o,p,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>_(t,i,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>_(o,R,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>_(t,k,e,s,o,r),exports.useSliceIds=ie,exports.useSliceIdsListener=(e,s,t,o)=>$("SliceIds",D(o),s,t,[e]),exports.useSliceRowIds=ae,exports.useSliceRowIdsListener=(e,s,t,o,r)=>$("Slice"+c,D(r),t,o,[e,s]),exports.useSortedRowIds=re,exports.useSortedRowIdsListener=(e,s,t,o,r,u,l,d,n)=>$(C,H(n),u,l,[e,s,t,o,r],d),exports.useStartTransactionListener=(e,s,t)=>$("Start"+A,H(t),e,s),exports.useStore=e=>q(e,0),exports.useStoreIds=()=>B(1),exports.useStoreOrStoreById=H,exports.useTable=(e,s)=>Z(p,H(s),N,[e]),exports.useTableCellIds=(e,s)=>Z(p+w,H(s),K,[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>$(p+w,H(r),s,t,[e],o),exports.useTableIds=te,exports.useTableIdsListener=(e,s,t,o)=>$(a,H(o),e,s,K,t),exports.useTableListener=(e,s,t,o,r)=>$(p,H(r),s,t,[e],o),exports.useTables=e=>Z(i,H(e),N),exports.useTablesListener=(e,s,t,o)=>$(i,H(o),e,s,K,t),exports.useUndoInformation=e=>{const s=Q(e),[o,r]=ke(s);return[(u=o,!(0==u.length)),ge(s),r,h(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=ne,exports.useValueIds=de,exports.useValueIdsListener=(e,s,t,o)=>$(L,H(o),e,s,K,t),exports.useValueListener=(e,s,t,o,r)=>$(R,H(r),s,t,[e],o),exports.useValues=e=>Z(k,H(e),N),exports.useValuesListener=(e,s,t,o)=>$(k,H(o),e,s,K,t),exports.useWillFinishTransactionListener=(e,s,t)=>$("WillFinish"+A,H(t),e,s);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Listener",u="Result",l="Has",d="has",n="Ids",p="Table",a=p+"s",i=p+n,x="Row",I=x+"Count",c=x+n,C="Sorted"+x+n,b="Cell",w=b+n,R="Value",k=R+"s",L=R+n,g=e=>null==e,h=(e,s,t)=>g(e)?t?.():s(e),m=e=>s(e)==o,y=()=>{},V=(e,s)=>e.map(s),S=Object.keys,T=(e,s)=>h(e,(e=>e[s])),v=(e,s)=>(delete e[s],e),{createContext:P,useContext:f,useEffect:q}=e,B=P([]),H=(e,s)=>{const t=f(B);return g(e)?t[s]:m(e)?T(t[s+1]??{},e):e},M=(e,s)=>{const t=H(e,s);return g(e)||m(e)?t:e},D=e=>S(f(B)[e]??{}),F=e=>M(e,0),O=e=>M(e,2),Q=e=>M(e,4),E=e=>M(e,6),A=e=>M(e,8),G=e=>M(e,10),W=e=>e.toLowerCase();W(r);const j="Transaction";W(j);const{useCallback:U,useEffect:z,useMemo:J,useLayoutEffect:K,useRef:N,useState:X}=e,Y=[],Z={},$=[[],void 0,[]],_=(e,s,t=Y)=>{const o=J((()=>s(e)),[e,...t]);return z((()=>()=>o.destroy()),[o]),o},ee=(e,s,t,o=Y,r,u="get",l="")=>{const[,d]=X(),n=U((()=>s?.[u+e]?.(...o)??t),[s,e,...o,t]),p=N();return J((()=>p.current=n()),[n]),se(l+e,s,((...e)=>{p.current=g(r)?n():e[r],d([])}),[n,r],o),p.current},se=(e,s,t,o=Y,u=Y,...l)=>K((()=>{const o=s?.["add"+e+r]?.(...u,t,...l);return()=>s?.delListener(o)}),[s,e,...u,...o,...l]),te=(e,s,t,o=Y,r=y,u=Y,...l)=>{const d=F(e);return U((e=>h(d,(o=>h(t(e,o),(e=>r(o["set"+s](...l,e),e)))))),[d,s,...o,...u,...l])},oe=(e,s,t=y,o=Y,...r)=>{const u=F(e);return U((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},re=(e,s,t)=>{const o=G(e);return U((()=>o?.[s](t)),[o,s,t])},ue=e=>ee(i,F(e),Y),le=(e,s)=>ee(c,F(s),Y,[e]),de=(e,s,t,o=0,r,u)=>ee(C,F(u),Y,[e,s,t,o,r],6),ne=(e,s,t)=>ee(w,F(t),Y,[e,s]),pe=(e,s,t,o)=>ee(b,F(o),void 0,[e,s,t],4),ae=e=>ee(L,F(e),Y),ie=(e,s)=>ee(R,F(s),void 0,[e]),xe=(e,s)=>ee("Metric",O(s),void 0,[e]),Ie=(e,s)=>ee("SliceIds",Q(s),Y,[e]),ce=(e,s,t)=>ee("Slice"+c,Q(t),Y,[e,s]),Ce=(e,s,t)=>ee("RemoteRowId",E(t),void 0,[e,s]),be=(e,s,t)=>ee("Local"+c,E(t),Y,[e,s]),we=(e,s,t)=>ee("Linked"+c,E(t),Y,[e,s]),Re=(e,s)=>ee(u+c,A(s),Y,[e]),ke=(e,s,t,o=0,r,l)=>ee(u+C,A(l),Y,[e,s,t,o,r],6),Le=(e,s,t)=>ee(u+w,A(t),Y,[e,s]),ge=(e,s,t,o)=>ee(u+b,A(o),void 0,[e,s,t]),he=e=>ee("CheckpointIds",G(e),$),me=(e,s)=>ee("Checkpoint",G(s),void 0,[e]),ye=e=>re(e,"goBackward"),Ve=e=>re(e,"goForward"),{PureComponent:Se,Fragment:Te,createElement:ve,useCallback:Pe,useLayoutEffect:fe,useRef:qe,useState:Be}=e,He=(e,...s)=>g(e)?{}:e(...s),Me=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useCallback:De,useContext:Fe,useMemo:Oe,useState:Qe}=e,Ee=({tableId:e,store:s,rowComponent:t=ze,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},d)=>je(V(d,(u=>ve(t,{...He(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),Ae=({queryId:e,queries:s,resultRowComponent:t=Ye,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>je(V(l,(r=>ve(t,{...He(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Ge=({relationshipId:e,relationships:s,rowComponent:t=ze,getRowComponentProps:o,separator:r,debugIds:u},l,d)=>{const[n,p,a]=Me(E(s),e),i=l(e,d,n);return je(V(i,(e=>ve(t,{...He(o,e),key:e,tableId:a,rowId:e,store:p,debugIds:u}))),r,u,d)},We=e=>({checkpoints:s,checkpointComponent:t=Ze,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=G(s);return je(V(e(he(l)),(e=>ve(t,{...He(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},je=(e,s,t,o)=>{const r=g(s)||!Array.isArray(e)?e:V(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Ue=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>je(t+(pe(e,s,o,r)??t),void 0,u,o),ze=({tableId:e,rowId:s,store:t,cellComponent:o=Ue,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:d})=>je(V(((e,s,t,o)=>{const r=ne(s,t,o);return e??r})(u,e,s,t),(u=>ve(o,{...He(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:d}))),l,d,s),Je=e=>Ee(e,le(e.tableId,e.store)),Ke=({valueId:e,store:s,debugIds:o})=>je(t+(ie(e,s)??t),void 0,o,e),Ne=({indexId:e,sliceId:s,indexes:t,rowComponent:o=ze,getRowComponentProps:r,separator:u,debugIds:l})=>{const[d,n,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(Q(t),e),a=ce(e,s,d);return je(V(a,(e=>ve(o,{...He(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:l}))),u,l,s)},Xe=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>je(t+(ge(e,s,o,r)??t),void 0,u,o),Ye=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Xe,getResultCellComponentProps:r,separator:u,debugIds:l})=>je(V(Le(e,s,t),(u=>ve(o,{...He(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),Ze=({checkpoints:e,checkpointId:s,debugIds:o})=>je(me(s,e)??t,void 0,o,s),$e=We((e=>e[0])),_e=We((e=>g(e[1])?[]:[e[1]])),es=We((e=>e[2]));exports.BackwardCheckpointsView=$e,exports.CellView=Ue,exports.CheckpointView=Ze,exports.CurrentCheckpointView=_e,exports.ForwardCheckpointsView=es,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=Ne,getSliceComponentProps:o,separator:r,debugIds:u})=>je(V(Ie(e,s),(r=>ve(t,{...He(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>Ge(e,we,e.firstRowId),exports.LocalRowsView=e=>Ge(e,be,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>je(xe(e,s)??t,void 0,o,e),exports.Provider=({store:e,storesById:s,metrics:t,metricsById:o,indexes:r,indexesById:u,relationships:l,relationshipsById:d,queries:n,queriesById:p,checkpoints:a,checkpointsById:i,children:x})=>{const I=Fe(B),[c,C]=Qe({}),b=De(((e,s)=>C((t=>T(t,e)==s?t:{...t,[e]:s}))),[]),w=De((e=>C((s=>({...v(s,e)})))),[]);return ve(B.Provider,{value:Oe((()=>[e??I[0],{...I[1],...s,...c},t??I[2],{...I[3],...o},r??I[4],{...I[5],...u},l??I[6],{...I[7],...d},n??I[8],{...I[9],...p},a??I[10],{...I[11],...i},b,w]),[e,s,c,t,o,r,u,l,d,n,p,a,i,I,b,w])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=ze,getRowComponentProps:r,debugIds:u})=>{const[l,d,,n]=Me(E(t),e),p=Ce(e,s,l);return je(g(n)||g(p)?null:ve(o,{...He(r,p),key:p,tableId:n,rowId:p,store:d,debugIds:u}),void 0,u,s)},exports.ResultCellView=Xe,exports.ResultRowView=Ye,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ae(r,ke(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>Ae(e,Re(e.queryId,e.queries)),exports.RowView=ze,exports.SliceView=Ne,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ee(r,de(r.tableId,e,s,t,o,r.store)),exports.TableView=Je,exports.TablesView=({store:e,tableComponent:s=Je,getTableComponentProps:t,separator:o,debugIds:r})=>je(V(ue(e),(o=>ve(s,{...He(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Ke,exports.ValuesView=({store:e,valueComponent:s=Ke,getValueComponentProps:t,separator:o,debugIds:r})=>je(V(ae(e),(o=>ve(s,{...He(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=Y,o,r=y,u=Y,l=!0)=>{const d=F(o);return U((t=>h(d,(o=>h(s(t,o),(s=>r(o.addRow(e,s,l),o,s)))))),[d,e,...t,...u,l])},exports.useCell=pe,exports.useCellIds=ne,exports.useCellIdsListener=(e,s,t,o,r,u)=>se(w,F(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,l)=>se(b,F(l),o,r,[e,s,t],u),exports.useCheckpoint=me,exports.useCheckpointIds=he,exports.useCheckpointIdsListener=(e,s,t)=>se("CheckpointIds",G(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>se("Checkpoint",G(o),s,t,[e]),exports.useCheckpoints=e=>H(e,10),exports.useCheckpointsIds=()=>D(11),exports.useCheckpointsOrCheckpointsById=G,exports.useCreateCheckpoints=(e,s,t)=>_(e,s,t),exports.useCreateIndexes=(e,s,t)=>_(e,s,t),exports.useCreateMetrics=(e,s,t)=>_(e,s,t),exports.useCreatePersister=(e,s,t=Y,o,r=Y,u,l=Y)=>{const[,d]=X(),n=J((()=>s(e)),[e,...t]);return z((()=>((async()=>{o&&(await o(n),d([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...l]),n},exports.useCreateQueries=(e,s,t)=>_(e,s,t),exports.useCreateRelationships=(e,s,t)=>_(e,s,t),exports.useCreateStore=(e,s=Y)=>J(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,l)=>oe(r,b,u,l,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>oe(t,x,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>oe(s,p,t,o,e),exports.useDelTablesCallback=(e,s,t)=>oe(e,a,s,t),exports.useDelValueCallback=(e,s,t,o)=>oe(s,R,t,o,e),exports.useDelValuesCallback=(e,s,t)=>oe(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>se("DidFinish"+j,F(t),e,s),exports.useGoBackwardCallback=ye,exports.useGoForwardCallback=Ve,exports.useGoToCallback=(e,s=Y,t,o=y,r=Y)=>{const u=G(t);return U((s=>h(u,(t=>h(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useHasCell=(e,s,t,o)=>ee(b,F(o),!1,[e,s,t],4,d,l),exports.useHasCellListener=(e,s,t,o,r,u,d)=>se(l+b,F(d),o,r,[e,s,t],u),exports.useHasRow=(e,s,t)=>ee(x,F(t),!1,[e,s],3,d,l),exports.useHasRowListener=(e,s,t,o,r,u)=>se(l+x,F(u),t,o,[e,s],r),exports.useHasTable=(e,s)=>ee(p,F(s),!1,[e],2,d,l),exports.useHasTableCell=(e,s,t)=>ee(p+b,F(t),!1,[e,s],3,d,l),exports.useHasTableCellListener=(e,s,t,o,r,u)=>se(l+p+b,F(u),t,o,[e,s],r),exports.useHasTableListener=(e,s,t,o,r)=>se(l+p,F(r),s,t,[e],o),exports.useHasTables=e=>ee(a,F(e),!1,[],1,d,l),exports.useHasTablesListener=(e,s,t,o)=>se(l+a,F(o),e,s,[],t),exports.useHasValue=(e,s)=>ee(R,F(s),!1,[e],2,d,l),exports.useHasValueListener=(e,s,t,o,r)=>se(l+R,F(r),s,t,[e],o),exports.useHasValues=e=>ee(k,F(e),!1,[],1,d,l),exports.useHasValuesListener=(e,s,t,o)=>se(l+k,F(o),e,s,[],t),exports.useIndexIds=e=>ee("IndexIds",Q(e),Y),exports.useIndexes=e=>H(e,4),exports.useIndexesIds=()=>D(5),exports.useIndexesOrIndexesById=Q,exports.useLinkedRowIds=we,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>se("Linked"+c,E(r),t,o,[e,s]),exports.useLocalRowIds=be,exports.useLocalRowIdsListener=(e,s,t,o,r)=>se("Local"+c,E(r),t,o,[e,s]),exports.useMetric=xe,exports.useMetricIds=e=>ee("MetricIds",O(e),Y),exports.useMetricListener=(e,s,t,o)=>se("Metric",O(o),s,t,[e]),exports.useMetrics=e=>H(e,2),exports.useMetricsIds=()=>D(3),exports.useMetricsOrMetricsById=O,exports.useProvideStore=(e,s)=>{const{12:t,13:o}=f(B);q((()=>(t?.(e,s),()=>o?.(e))),[t,e,s,o])},exports.useQueries=e=>H(e,8),exports.useQueriesIds=()=>D(9),exports.useQueriesOrQueriesById=A,exports.useQueryIds=e=>ee("QueryIds",A(e),Y),exports.useRedoInformation=e=>{const s=G(e),[,,[o]]=he(s);return[!g(o),Ve(s),o,h(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>ee("RelationshipIds",E(e),Y),exports.useRelationships=e=>H(e,6),exports.useRelationshipsIds=()=>D(7),exports.useRelationshipsOrRelationshipsById=E,exports.useRemoteRowId=Ce,exports.useRemoteRowIdListener=(e,s,t,o,r)=>se("RemoteRowId",E(r),t,o,[e,s]),exports.useResultCell=ge,exports.useResultCellIds=Le,exports.useResultCellIdsListener=(e,s,t,o,r)=>se(u+w,A(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,l)=>se(u+b,A(l),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>ee(u+x,A(t),Z,[e,s]),exports.useResultRowCount=(e,s)=>ee(u+I,A(s),0,[e]),exports.useResultRowCountListener=(e,s,t,o)=>se(u+I,A(o),s,t,[e]),exports.useResultRowIds=Re,exports.useResultRowIdsListener=(e,s,t,o)=>se(u+c,A(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>se(u+x,A(r),t,o,[e,s]),exports.useResultSortedRowIds=ke,exports.useResultSortedRowIdsListener=(e,s,t,o,r,l,d,n)=>se(u+C,A(n),l,d,[e,s,t,o,r]),exports.useResultTable=(e,s)=>ee(u+p,A(s),Z,[e]),exports.useResultTableCellIds=(e,s)=>ee(u+p+w,A(s),Y,[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>se(u+p+w,A(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>se(u+p,A(o),s,t,[e]),exports.useRow=(e,s,t)=>ee(x,F(t),Z,[e,s]),exports.useRowCount=(e,s)=>ee(I,F(s),0,[e]),exports.useRowCountListener=(e,s,t,o,r)=>se(I,F(r),s,t,[e],o),exports.useRowIds=le,exports.useRowIdsListener=(e,s,t,o,r)=>se(c,F(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>se(x,F(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,l,d)=>te(u,b,o,r,l,d,e,s,t),exports.useSetCheckpointCallback=(e=y,s=Y,t,o=y,r=Y)=>{const u=G(t);return U((s=>h(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>te(r,"PartialRow",t,o,u,l,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>te(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,l)=>te(r,x,t,o,u,l,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>te(o,p,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>te(t,a,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>te(o,R,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>te(t,k,e,s,o,r),exports.useSliceIds=Ie,exports.useSliceIdsListener=(e,s,t,o)=>se("SliceIds",Q(o),s,t,[e]),exports.useSliceRowIds=ce,exports.useSliceRowIdsListener=(e,s,t,o,r)=>se("Slice"+c,Q(r),t,o,[e,s]),exports.useSortedRowIds=de,exports.useSortedRowIdsListener=(e,s,t,o,r,u,l,d,n)=>se(C,F(n),u,l,[e,s,t,o,r],d),exports.useStartTransactionListener=(e,s,t)=>se("Start"+j,F(t),e,s),exports.useStore=e=>H(e,0),exports.useStoreIds=()=>D(1),exports.useStoreOrStoreById=F,exports.useTable=(e,s)=>ee(p,F(s),Z,[e]),exports.useTableCellIds=(e,s)=>ee(p+w,F(s),Y,[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>se(p+w,F(r),s,t,[e],o),exports.useTableIds=ue,exports.useTableIdsListener=(e,s,t,o)=>se(i,F(o),e,s,Y,t),exports.useTableListener=(e,s,t,o,r)=>se(p,F(r),s,t,[e],o),exports.useTables=e=>ee(a,F(e),Z),exports.useTablesListener=(e,s,t,o)=>se(a,F(o),e,s,Y,t),exports.useUndoInformation=e=>{const s=G(e),[o,r]=he(s);return[(u=o,!(0==u.length)),ye(s),r,h(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=ie,exports.useValueIds=ae,exports.useValueIdsListener=(e,s,t,o)=>se(L,F(o),e,s,Y,t),exports.useValueListener=(e,s,t,o,r)=>se(R,F(r),s,t,[e],o),exports.useValues=e=>ee(k,F(e),Z),exports.useValuesListener=(e,s,t,o)=>se(k,F(o),e,s,Y,t),exports.useWillFinishTransactionListener=(e,s,t)=>se("WillFinish"+j,F(t),e,s);
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",n=e(t),r="t",l=(e,t)=>e.startsWith(t),i=Promise,s=e=>null==e,o=(e,t,n)=>s(e)?null==n?void 0:n():t(e),a=(e,t,n)=>e.slice(t,n),u=e=>e.length,c=e=>{return t=function*(){return i.all(e)},new Promise(((e,n)=>{var r=e=>{try{i(t.next(e))}catch(e){n(e)}},l=e=>{try{i(t.throw(e))}catch(e){n(e)}},i=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,l);i((t=t.apply(void 0,null)).next())}));var t},d=(e,t)=>e.map(t),h=(e,...t)=>e.push(...t),y=Object,v=(e=[])=>y.fromEntries(e),f=(e,t)=>d(y.entries(e),(([e,n])=>t(n,e))),g=(e,t,n)=>(((e,t)=>!s(((e,t)=>o(e,(e=>e[t])))(e,t)))(e,t)||(e[t]=n()),e[t]),p=e=>JSON.stringify(e,((e,t)=>t instanceof Map?y.fromEntries([...t]):t)),S=JSON.parse,P=(t,r,l)=>t+r+(e(l)==n?l:p(l)),m=(e,t,n)=>{const r=u(e);return l(t,e)?[t[r],(n?S:String)(a(t,r+1))]:void 0},w=(e,t)=>((e,t)=>null==e?void 0:e.forEach(t))(e,((e,n)=>t(n,e)));var x=(e,t,n)=>new Promise(((r,l)=>{var i=e=>{try{o(n.next(e))}catch(e){l(e)}},s=e=>{try{o(n.throw(e))}catch(e){l(e)}},o=e=>e.done?r(e.value):Promise.resolve(e.value).then(i,s);o((n=n.apply(e,t)).next())}));const D="hasStore",R=v(d(["Origin","Methods","Headers"],(e=>["Access-Control-Allow-"+e,"*"]))),b=e=>x(void 0,null,(function*(){var n;return yield e.party.storage.get((null!=(n=e.config.storagePrefix)?n:t)+D)})),T=(e,n,i,o)=>x(void 0,null,(function*(){var a;const d=e.party.storage,y=null!=(a=e.config.storagePrefix)?a:t,v={[y+D]:1},g=[],p=[];yield c(f(n[0],((t,n)=>x(void 0,null,(function*(){return s(t)?!i&&e.canDelTable(n,o)&&((e,...t)=>e.unshift(...t))(p,C(y,r,n)):e.canSetTable(n,i,o)&&(yield c(f(t,((t,l)=>x(void 0,null,(function*(){return s(t)?!i&&e.canDelRow(n,l,o)&&h(p,C(y,r,n,l)):e.canSetRow(n,l,i,o)&&(yield c(f(t,((t,a)=>x(void 0,null,(function*(){const u=[n,l,a],c=C(y,r,...u);s(t)?!i&&e.canDelCell(...u,o)&&h(g,c):e.canSetCell(...u,t,i,o,yield d.get(c))&&(v[c]=t)}))))))}))))))}))))),yield c(f(n[1],((t,n)=>x(void 0,null,(function*(){const r=y+"v"+n;s(t)?!i&&e.canDelValue(n,o)&&h(g,r):e.canSetValue(n,t,i,o,yield d.get(r))&&(v[r]=t)}))))),0!=u(p)&&w(yield d.list(),(e=>p.every((t=>!l(e,t)||h(g,e)&&0)))),yield d.delete(g),yield d.put(v)})),C=(e,t,...n)=>P(e,t,a(p(n),1,-1)),O=(e,t,n=null)=>x(void 0,null,(function*(){var r;return new Response(n,{status:t,headers:null!=(r=e.config.responseHeaders)?r:R})}));exports.TinyBasePartyKitServer=class{constructor(e){this.party=e,this.config={}}onRequest(e){return x(this,null,(function*(){var n;const l=null!=(n=this.config.storePath)?n:"/store";if(new URL(e.url).pathname.endsWith(l)){const n=yield b(this),l=yield e.text();return"PUT"==e.method?n?O(this,205):(yield T(this,S(l),!0,e),O(this,201)):O(this,200,n?p(yield(i=this,x(void 0,null,(function*(){var e;const n={},l={},s=null!=(e=i.config.storagePrefix)?e:t;return w(yield i.party.storage.list(),((e,t)=>o(m(s,e),(([e,i])=>{if(e==r){const[e,r,l]=S("["+i+"]");g(g(n,e,v),r,v)[l]=t}else"v"==e&&(l[i]=t)})))),[n,l]})))):t)}var i;return O(this,404)}))}onMessage(e,n){return x(this,null,(function*(){var r;const l=null!=(r=this.config.messagePrefix)?r:t;yield o(m(l,e,1),(e=>x(this,[e],(function*([e,t]){"s"==e&&(yield b(this))&&(yield T(this,t,!1,n),this.party.broadcast(P(l,"s",t)))}))))}))}canSetTable(e,t,n){return!0}canDelTable(e,t){return!0}canSetRow(e,t,n,r){return!0}canDelRow(e,t,n){return!0}canSetCell(e,t,n,r,l,i,s){return!0}canDelCell(e,t,n,r){return!0}canSetValue(e,t,n,r,l){return!0}canDelValue(e,t){return!0}};
1
+ "use strict";const e=e=>typeof e,t=e(""),n="t",r=(e,t)=>e.startsWith(t),s=Promise,i=e=>null==e,o=(e,t,n)=>i(e)?null==n?void 0:n():t(e),l=(e,t,n)=>e.slice(t,n),a=e=>e.length,c=e=>{return t=function*(){return s.all(e)},new Promise(((e,n)=>{var r=e=>{try{i(t.next(e))}catch(e){n(e)}},s=e=>{try{i(t.throw(e))}catch(e){n(e)}},i=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,s);i((t=t.apply(void 0,null)).next())}));var t},u=(e,t)=>e.map(t),d=(e,...t)=>e.push(...t),h=Object,f=(e=[])=>h.fromEntries(e),y=(e,t)=>u(h.entries(e),(([e,n])=>t(n,e))),g=(e,t,n)=>(((e,t)=>!i(((e,t)=>o(e,(e=>e[t])))(e,t)))(e,t)||(e[t]=n()),e[t]),v=e=>JSON.stringify(e,((e,t)=>t instanceof Map?h.fromEntries([...t]):t)),p=JSON.parse,P=(n,r,s)=>n+r+(e(s)==t?s:v(s)),S=(e,t,n)=>{const s=a(e);return r(t,e)?[t[s],(n?p:String)(l(t,s+1))]:void 0},x=(e,t)=>((e,t)=>null==e?void 0:e.forEach(t))(e,((e,n)=>t(n,e)));var m=(e,t,n)=>new Promise(((r,s)=>{var i=e=>{try{l(n.next(e))}catch(e){s(e)}},o=e=>{try{l(n.throw(e))}catch(e){s(e)}},l=e=>e.done?r(e.value):Promise.resolve(e.value).then(i,o);l((n=n.apply(e,t)).next())}));const w="hasStore",D=f(u(["Origin","Methods","Headers"],(e=>["Access-Control-Allow-"+e,"*"]))),R=(e,...t)=>m(void 0,[e,...t],(function*(e,t=""){return!!(yield e.get(t+w))})),b=(e,...t)=>m(void 0,[e,...t],(function*(e,t=""){const r={},s={};return x(yield e.list(),((e,i)=>o(S(t,e),(([e,t])=>{if(e==n){const[e,n,s]=p("["+t+"]");g(g(r,e,f),n,f)[s]=i}else"v"==e&&(s[t]=i)})))),[r,s]})),T=(e,t,s,o)=>m(void 0,null,(function*(){const l=e.party.storage,u=e.config.storagePrefix,h={[u+w]:1},f=[],g=[];yield c(y(t[0],((t,r)=>m(void 0,null,(function*(){return i(t)?!s&&e.canDelTable(r,o)&&((e,...t)=>e.unshift(...t))(g,C(u,n,r)):e.canSetTable(r,s,o)&&(yield c(y(t,((t,a)=>m(void 0,null,(function*(){return i(t)?!s&&e.canDelRow(r,a,o)&&d(g,C(u,n,r,a)):e.canSetRow(r,a,s,o)&&(yield c(y(t,((t,c)=>m(void 0,null,(function*(){const y=[r,a,c],g=C(u,n,...y);i(t)?!s&&e.canDelCell(...y,o)&&d(f,g):e.canSetCell(...y,t,s,o,yield l.get(g))&&(h[g]=t)}))))))}))))))}))))),yield c(y(t[1],((t,n)=>m(void 0,null,(function*(){const r=u+"v"+n;i(t)?!s&&e.canDelValue(n,o)&&d(f,r):e.canSetValue(n,t,s,o,yield l.get(r))&&(h[r]=t)}))))),0!=a(g)&&x(yield l.list(),(e=>g.every((t=>!r(e,t)||d(f,e)&&0)))),yield l.delete(f),yield l.put(h)})),C=(e,t,...n)=>P(e,t,l(v(n),1,-1)),H=(e,t,n=null)=>m(void 0,null,(function*(){return new Response(n,{status:t,headers:e.config.responseHeaders})}));exports.TinyBasePartyKitServer=class{constructor(e){var t,n,r,s;this.party=e,this.config={},null!=(t=this.config).storePath||(t.storePath="/store"),null!=(n=this.config).messagePrefix||(n.messagePrefix=""),null!=(r=this.config).storagePrefix||(r.storagePrefix=""),null!=(s=this.config).responseHeaders||(s.responseHeaders=D)}onRequest(e){return m(this,null,(function*(){const{party:{storage:t},config:{storePath:n,storagePrefix:r}}=this;if(new URL(e.url).pathname.endsWith(n)){const n=yield R(t,r),s=yield e.text();return"PUT"==e.method?n?H(this,205):(yield T(this,p(s),!0,e),H(this,201)):H(this,200,n?v(yield b(t,r)):"")}return H(this,404)}))}onMessage(e,t){return m(this,null,(function*(){const{party:{storage:n,broadcast:r},config:{messagePrefix:s,storagePrefix:i}}=this;yield o(S(s,e,1),(e=>m(this,[e],(function*([e,o]){"s"==e&&(yield R(n,i))&&(yield T(this,o,!1,t),r(P(s,"s",o),[t.id]))}))))}))}canSetTable(e,t,n){return!0}canDelTable(e,t){return!0}canSetRow(e,t,n,r){return!0}canDelRow(e,t,n){return!0}canSetCell(e,t,n,r,s,i,o){return!0}canDelCell(e,t,n,r){return!0}canSetValue(e,t,n,r,s){return!0}canDelValue(e,t){return!0}},exports.hasStoreInStorage=R,exports.loadStoreFromStorage=b;
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",r=s(t),o="Listener",l="Result",u="Has",n="has",d="Ids",i="Table",a=i+"s",p=i+d,c="Row",x=c+"Count",I=c+d,C="Sorted"+c+d,b="Cell",w=b+d,R="Value",k=R+"s",v=R+d,g=e=>null==e,h=(e,s,t)=>g(e)?null==t?void 0:t():s(e),L=e=>s(e)==r,m=()=>{},y=(e,s)=>e.map(s),V=Object.keys,{createContext:S,useContext:T}=e,f=S([]),P=(e,s)=>{var t;const r=T(f);return g(e)?r[s]:L(e)?((e,s)=>h(e,(e=>e[s])))(null!=(t=r[s+1])?t:{},e):e},O=(e,s)=>{const t=P(e,s);return g(e)||L(e)?t:e},q=e=>{var s;return V(null!=(s=T(f)[e])?s:{})},B=e=>O(e,0),H=e=>O(e,2),M=e=>O(e,4),D=e=>O(e,6),F=e=>O(e,8),j=e=>O(e,10),Q=e=>e.toLowerCase();Q(o);const E="Transaction";Q(E);const{useCallback:A,useEffect:G,useMemo:W,useLayoutEffect:U,useRef:z,useState:J}=e,K=[],N={},X=[[],void 0,[]],Y=(e,s,t=K)=>{const r=W((()=>s(e)),[e,...t]);return G((()=>()=>r.destroy()),[r]),r},Z=(e,s,t,r=K,o,l="get",u="")=>{const[,n]=J(),d=A((()=>{var o,u;return null!=(u=null==(o=null==s?void 0:s[l+e])?void 0:o.call(s,...r))?u:t}),[s,e,...r,t]),i=z();return W((()=>i.current=d()),[d]),$(u+e,s,((...e)=>{i.current=g(o)?d():e[o],n([])}),[d,o],r),i.current},$=(e,s,t,r=K,l=K,...u)=>U((()=>{var r;const n=null==(r=null==s?void 0:s["add"+e+o])?void 0:r.call(s,...l,t,...u);return()=>null==s?void 0:s.delListener(n)}),[s,e,...l,...r,...u]),_=(e,s,t,r=K,o=m,l=K,...u)=>{const n=B(e);return A((e=>h(n,(r=>h(t(e,r),(e=>o(r["set"+s](...u,e),e)))))),[n,s,...r,...l,...u])},ee=(e,s,t=m,r=K,...o)=>{const l=B(e);return A((()=>t(null==l?void 0:l["del"+s](...o))),[l,s,...r,...o])},se=(e,s,t)=>{const r=j(e);return A((()=>null==r?void 0:r[s](t)),[r,s,t])},te=e=>Z(p,B(e),K),re=(e,s)=>Z(I,B(s),K,[e]),oe=(e,s,t,r=0,o,l)=>Z(C,B(l),K,[e,s,t,r,o],6),le=(e,s,t)=>Z(w,B(t),K,[e,s]),ue=(e,s,t,r)=>Z(b,B(r),void 0,[e,s,t],4),ne=e=>Z(v,B(e),K),de=(e,s)=>Z(R,B(s),void 0,[e]),ie=(e,s)=>Z("Metric",H(s),void 0,[e]),ae=(e,s)=>Z("SliceIds",M(s),K,[e]),pe=(e,s,t)=>Z("Slice"+I,M(t),K,[e,s]),ce=(e,s,t)=>Z("RemoteRowId",D(t),void 0,[e,s]),xe=(e,s,t)=>Z("Local"+I,D(t),K,[e,s]),Ie=(e,s,t)=>Z("Linked"+I,D(t),K,[e,s]),Ce=(e,s)=>Z(l+I,F(s),K,[e]),be=(e,s,t,r=0,o,u)=>Z(l+C,F(u),K,[e,s,t,r,o],6),we=(e,s,t)=>Z(l+w,F(t),K,[e,s]),Re=(e,s,t,r)=>Z(l+b,F(r),void 0,[e,s,t]),ke=e=>Z("CheckpointIds",j(e),X),ve=(e,s)=>Z("Checkpoint",j(s),void 0,[e]),ge=e=>se(e,"goBackward"),he=e=>se(e,"goForward"),{PureComponent:Le,Fragment:me,createElement:ye,useCallback:Ve,useLayoutEffect:Se,useRef:Te,useState:fe}=e,Pe=(e,...s)=>g(e)?{}:e(...s),Oe=(e,s)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getLocalTableId(s),null==e?void 0:e.getRemoteTableId(s)];var qe=Object.defineProperty,Be=Object.defineProperties,He=Object.getOwnPropertyDescriptors,Me=Object.getOwnPropertySymbols,De=Object.prototype.hasOwnProperty,Fe=Object.prototype.propertyIsEnumerable,je=(e,s,t)=>s in e?qe(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,Qe=(e,s)=>{for(var t in s||(s={}))De.call(s,t)&&je(e,t,s[t]);if(Me)for(var t of Me(s))Fe.call(s,t)&&je(e,t,s[t]);return e},Ee=(e,s)=>Be(e,He(s)),Ae=(e,s)=>{var t={};for(var r in e)De.call(e,r)&&s.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Me)for(var r of Me(e))s.indexOf(r)<0&&Fe.call(e,r)&&(t[r]=e[r]);return t};const{useMemo:Ge}=e,We=({tableId:e,store:s,rowComponent:t=Xe,getRowComponentProps:r,customCellIds:o,separator:l,debugIds:u},n)=>Ke(y(n,(l=>ye(t,Ee(Qe({},Pe(r,l)),{key:l,tableId:e,rowId:l,customCellIds:o,store:s,debugIds:u})))),l,u,e),Ue=({queryId:e,queries:s,resultRowComponent:t=es,getResultRowComponentProps:r,separator:o,debugIds:l},u)=>Ke(y(u,(o=>ye(t,Ee(Qe({},Pe(r,o)),{key:o,queryId:e,rowId:o,queries:s,debugIds:l})))),o,l,e),ze=({relationshipId:e,relationships:s,rowComponent:t=Xe,getRowComponentProps:r,separator:o,debugIds:l},u,n)=>{const[d,i,a]=Oe(D(s),e),p=u(e,n,d);return Ke(y(p,(e=>ye(t,Ee(Qe({},Pe(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:l})))),o,l,n)},Je=e=>({checkpoints:s,checkpointComponent:t=ss,getCheckpointComponentProps:r,separator:o,debugIds:l})=>{const u=j(s);return Ke(y(e(ke(u)),(e=>ye(t,Ee(Qe({},Pe(r,e)),{key:e,checkpoints:u,checkpointId:e,debugIds:l})))),o)},Ke=(e,s,t,r)=>{const o=g(s)||!Array.isArray(e)?e:y(e,((e,t)=>t>0?[s,e]:e));return t?[r,":{",o,"}"]:o},Ne=({tableId:e,rowId:s,cellId:r,store:o,debugIds:l})=>{var u;return Ke(t+(null!=(u=ue(e,s,r,o))?u:t),void 0,l,r)},Xe=({tableId:e,rowId:s,store:t,cellComponent:r=Ne,getCellComponentProps:o,customCellIds:l,separator:u,debugIds:n})=>Ke(y(((e,s,t,r)=>{const o=le(s,t,r);return null!=e?e:o})(l,e,s,t),(l=>ye(r,Ee(Qe({},Pe(o,l)),{key:l,tableId:e,rowId:s,cellId:l,store:t,debugIds:n})))),u,n,s),Ye=e=>We(e,re(e.tableId,e.store)),Ze=({valueId:e,store:s,debugIds:r})=>{var o;return Ke(t+(null!=(o=de(e,s))?o:t),void 0,r,e)},$e=({indexId:e,sliceId:s,indexes:t,rowComponent:r=Xe,getRowComponentProps:o,separator:l,debugIds:u})=>{const[n,d,i]=((e,s)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getTableId(s)])(M(t),e),a=pe(e,s,n);return Ke(y(a,(e=>ye(r,Ee(Qe({},Pe(o,e)),{key:e,tableId:i,rowId:e,store:d,debugIds:u})))),l,u,s)},_e=({queryId:e,rowId:s,cellId:r,queries:o,debugIds:l})=>{var u;return Ke(t+(null!=(u=Re(e,s,r,o))?u:t),void 0,l,r)},es=({queryId:e,rowId:s,queries:t,resultCellComponent:r=_e,getResultCellComponentProps:o,separator:l,debugIds:u})=>Ke(y(we(e,s,t),(l=>ye(r,Ee(Qe({},Pe(o,l)),{key:l,queryId:e,rowId:s,cellId:l,queries:t,debugIds:u})))),l,u,s),ss=({checkpoints:e,checkpointId:s,debugIds:r})=>{var o;return Ke(null!=(o=ve(s,e))?o:t,void 0,r,s)},ts=Je((e=>e[0])),rs=Je((e=>g(e[1])?[]:[e[1]])),os=Je((e=>e[2]));exports.BackwardCheckpointsView=ts,exports.CellView=Ne,exports.CheckpointView=ss,exports.CurrentCheckpointView=rs,exports.ForwardCheckpointsView=os,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=$e,getSliceComponentProps:r,separator:o,debugIds:l})=>Ke(y(ae(e,s),(o=>ye(t,Ee(Qe({},Pe(r,o)),{key:o,indexId:e,sliceId:o,indexes:s,debugIds:l})))),o,l,e),exports.LinkedRowsView=e=>ze(e,Ie,e.firstRowId),exports.LocalRowsView=e=>ze(e,xe,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:r})=>{var o;return Ke(null!=(o=ie(e,s))?o:t,void 0,r,e)},exports.Provider=({store:s,storesById:t,metrics:r,metricsById:o,indexes:l,indexesById:u,relationships:n,relationshipsById:d,queries:i,queriesById:a,checkpoints:p,checkpointsById:c,children:x})=>{const I=e.useContext(f);return ye(f.Provider,{value:Ge((()=>[null!=s?s:I[0],Qe(Qe({},I[1]),t),null!=r?r:I[2],Qe(Qe({},I[3]),o),null!=l?l:I[4],Qe(Qe({},I[5]),u),null!=n?n:I[6],Qe(Qe({},I[7]),d),null!=i?i:I[8],Qe(Qe({},I[9]),a),null!=p?p:I[10],Qe(Qe({},I[11]),c)]),[s,t,r,o,l,u,n,d,i,a,p,c,I])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:r=Xe,getRowComponentProps:o,debugIds:l})=>{const[u,n,,d]=Oe(D(t),e),i=ce(e,s,u);return Ke(g(d)||g(i)?null:ye(r,Ee(Qe({},Pe(o,i)),{key:i,tableId:d,rowId:i,store:n,debugIds:l})),void 0,l,s)},exports.ResultCellView=_e,exports.ResultRowView=es,exports.ResultSortedTableView=e=>{var s=e,{cellId:t,descending:r,offset:o,limit:l}=s,u=Ae(s,["cellId","descending","offset","limit"]);return Ue(u,be(u.queryId,t,r,o,l,u.queries))},exports.ResultTableView=e=>Ue(e,Ce(e.queryId,e.queries)),exports.RowView=Xe,exports.SliceView=$e,exports.SortedTableView=e=>{var s=e,{cellId:t,descending:r,offset:o,limit:l}=s,u=Ae(s,["cellId","descending","offset","limit"]);return We(u,oe(u.tableId,t,r,o,l,u.store))},exports.TableView=Ye,exports.TablesView=({store:e,tableComponent:s=Ye,getTableComponentProps:t,separator:r,debugIds:o})=>Ke(y(te(e),(r=>ye(s,Ee(Qe({},Pe(t,r)),{key:r,tableId:r,store:e,debugIds:o})))),r),exports.ValueView=Ze,exports.ValuesView=({store:e,valueComponent:s=Ze,getValueComponentProps:t,separator:r,debugIds:o})=>Ke(y(ne(e),(r=>ye(s,Ee(Qe({},Pe(t,r)),{key:r,valueId:r,store:e,debugIds:o})))),r),exports.useAddRowCallback=(e,s,t=K,r,o=m,l=K,u=!0)=>{const n=B(r);return A((t=>h(n,(r=>h(s(t,r),(s=>o(r.addRow(e,s,u),r,s)))))),[n,e,...t,...l,u])},exports.useCell=ue,exports.useCellIds=le,exports.useCellIdsListener=(e,s,t,r,o,l)=>$(w,B(l),t,r,[e,s],o),exports.useCellListener=(e,s,t,r,o,l,u)=>$(b,B(u),r,o,[e,s,t],l),exports.useCheckpoint=ve,exports.useCheckpointIds=ke,exports.useCheckpointIdsListener=(e,s,t)=>$("CheckpointIds",j(t),e,s),exports.useCheckpointListener=(e,s,t,r)=>$("Checkpoint",j(r),s,t,[e]),exports.useCheckpoints=e=>P(e,10),exports.useCheckpointsIds=()=>q(11),exports.useCheckpointsOrCheckpointsById=j,exports.useCreateCheckpoints=(e,s,t)=>Y(e,s,t),exports.useCreateIndexes=(e,s,t)=>Y(e,s,t),exports.useCreateMetrics=(e,s,t)=>Y(e,s,t),exports.useCreatePersister=(e,s,t=K,r,o=K,l,u=K)=>{const[,n]=J(),d=W((()=>s(e)),[e,...t]);return G((()=>{var e;return e=function*(){r&&(yield r(d),n([]))},new Promise(((s,t)=>{var r=s=>{try{l(e.next(s))}catch(e){t(e)}},o=s=>{try{l(e.throw(s))}catch(e){t(e)}},l=e=>e.done?s(e.value):Promise.resolve(e.value).then(r,o);l((e=e.apply(void 0,null)).next())})),()=>{null==d||d.destroy(),null==l||l(d)}}),[d,...o,...u]),d},exports.useCreateQueries=(e,s,t)=>Y(e,s,t),exports.useCreateRelationships=(e,s,t)=>Y(e,s,t),exports.useCreateStore=(e,s=K)=>W(e,s),exports.useDelCellCallback=(e,s,t,r,o,l,u)=>ee(o,b,l,u,e,s,t,r),exports.useDelRowCallback=(e,s,t,r,o)=>ee(t,c,r,o,e,s),exports.useDelTableCallback=(e,s,t,r)=>ee(s,i,t,r,e),exports.useDelTablesCallback=(e,s,t)=>ee(e,a,s,t),exports.useDelValueCallback=(e,s,t,r)=>ee(s,R,t,r,e),exports.useDelValuesCallback=(e,s,t)=>ee(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>$("DidFinish"+E,B(t),e,s),exports.useGoBackwardCallback=ge,exports.useGoForwardCallback=he,exports.useGoToCallback=(e,s=K,t,r=m,o=K)=>{const l=j(t);return A((s=>h(l,(t=>h(e(s),(e=>r(t.goTo(e),e)))))),[l,...s,...o])},exports.useHasCell=(e,s,t,r)=>Z(b,B(r),!1,[e,s,t],4,n,u),exports.useHasCellListener=(e,s,t,r,o,l,n)=>$(u+b,B(n),r,o,[e,s,t],l),exports.useHasRow=(e,s,t)=>Z(c,B(t),!1,[e,s],3,n,u),exports.useHasRowListener=(e,s,t,r,o,l)=>$(u+c,B(l),t,r,[e,s],o),exports.useHasTable=(e,s)=>Z(i,B(s),!1,[e],2,n,u),exports.useHasTableCell=(e,s,t)=>Z(i+b,B(t),!1,[e,s],3,n,u),exports.useHasTableCellListener=(e,s,t,r,o,l)=>$(u+i+b,B(l),t,r,[e,s],o),exports.useHasTableListener=(e,s,t,r,o)=>$(u+i,B(o),s,t,[e],r),exports.useHasTables=e=>Z(a,B(e),!1,[],1,n,u),exports.useHasTablesListener=(e,s,t,r)=>$(u+a,B(r),e,s,[],t),exports.useHasValue=(e,s)=>Z(R,B(s),!1,[e],2,n,u),exports.useHasValueListener=(e,s,t,r,o)=>$(u+R,B(o),s,t,[e],r),exports.useHasValues=e=>Z(k,B(e),!1,[],1,n,u),exports.useHasValuesListener=(e,s,t,r)=>$(u+k,B(r),e,s,[],t),exports.useIndexIds=e=>Z("IndexIds",M(e),K),exports.useIndexes=e=>P(e,4),exports.useIndexesIds=()=>q(5),exports.useIndexesOrIndexesById=M,exports.useLinkedRowIds=Ie,exports.useLinkedRowIdsListener=(e,s,t,r,o)=>$("Linked"+I,D(o),t,r,[e,s]),exports.useLocalRowIds=xe,exports.useLocalRowIdsListener=(e,s,t,r,o)=>$("Local"+I,D(o),t,r,[e,s]),exports.useMetric=ie,exports.useMetricIds=e=>Z("MetricIds",H(e),K),exports.useMetricListener=(e,s,t,r)=>$("Metric",H(r),s,t,[e]),exports.useMetrics=e=>P(e,2),exports.useMetricsIds=()=>q(3),exports.useMetricsOrMetricsById=H,exports.useQueries=e=>P(e,8),exports.useQueriesIds=()=>q(9),exports.useQueriesOrQueriesById=F,exports.useQueryIds=e=>Z("QueryIds",F(e),K),exports.useRedoInformation=e=>{var s;const r=j(e),[,,[o]]=ke(r);return[!g(o),he(r),o,null!=(s=h(o,(e=>null==r?void 0:r.getCheckpoint(e))))?s:t]},exports.useRelationshipIds=e=>Z("RelationshipIds",D(e),K),exports.useRelationships=e=>P(e,6),exports.useRelationshipsIds=()=>q(7),exports.useRelationshipsOrRelationshipsById=D,exports.useRemoteRowId=ce,exports.useRemoteRowIdListener=(e,s,t,r,o)=>$("RemoteRowId",D(o),t,r,[e,s]),exports.useResultCell=Re,exports.useResultCellIds=we,exports.useResultCellIdsListener=(e,s,t,r,o)=>$(l+w,F(o),t,r,[e,s]),exports.useResultCellListener=(e,s,t,r,o,u)=>$(l+b,F(u),r,o,[e,s,t]),exports.useResultRow=(e,s,t)=>Z(l+c,F(t),N,[e,s]),exports.useResultRowCount=(e,s)=>Z(l+x,F(s),0,[e]),exports.useResultRowCountListener=(e,s,t,r)=>$(l+x,F(r),s,t,[e]),exports.useResultRowIds=Ce,exports.useResultRowIdsListener=(e,s,t,r)=>$(l+I,F(r),s,t,[e]),exports.useResultRowListener=(e,s,t,r,o)=>$(l+c,F(o),t,r,[e,s]),exports.useResultSortedRowIds=be,exports.useResultSortedRowIdsListener=(e,s,t,r,o,u,n,d)=>$(l+C,F(d),u,n,[e,s,t,r,o]),exports.useResultTable=(e,s)=>Z(l+i,F(s),N,[e]),exports.useResultTableCellIds=(e,s)=>Z(l+i+w,F(s),K,[e]),exports.useResultTableCellIdsListener=(e,s,t,r)=>$(l+i+w,F(r),s,t,[e]),exports.useResultTableListener=(e,s,t,r)=>$(l+i,F(r),s,t,[e]),exports.useRow=(e,s,t)=>Z(c,B(t),N,[e,s]),exports.useRowCount=(e,s)=>Z(x,B(s),0,[e]),exports.useRowCountListener=(e,s,t,r,o)=>$(x,B(o),s,t,[e],r),exports.useRowIds=re,exports.useRowIdsListener=(e,s,t,r,o)=>$(I,B(o),s,t,[e],r),exports.useRowListener=(e,s,t,r,o,l)=>$(c,B(l),t,r,[e,s],o),exports.useSetCellCallback=(e,s,t,r,o,l,u,n)=>_(l,b,r,o,u,n,e,s,t),exports.useSetCheckpointCallback=(e=m,s=K,t,r=m,o=K)=>{const l=j(t);return A((s=>h(l,(t=>{const o=e(s);r(t.addCheckpoint(o),t,o)}))),[l,...s,...o])},exports.useSetPartialRowCallback=(e,s,t,r,o,l,u)=>_(o,"PartialRow",t,r,l,u,e,s),exports.useSetPartialValuesCallback=(e,s,t,r,o)=>_(t,"PartialValues",e,s,r,o),exports.useSetRowCallback=(e,s,t,r,o,l,u)=>_(o,c,t,r,l,u,e,s),exports.useSetTableCallback=(e,s,t,r,o,l)=>_(r,i,s,t,o,l,e),exports.useSetTablesCallback=(e,s,t,r,o)=>_(t,a,e,s,r,o),exports.useSetValueCallback=(e,s,t,r,o,l)=>_(r,R,s,t,o,l,e),exports.useSetValuesCallback=(e,s,t,r,o)=>_(t,k,e,s,r,o),exports.useSliceIds=ae,exports.useSliceIdsListener=(e,s,t,r)=>$("SliceIds",M(r),s,t,[e]),exports.useSliceRowIds=pe,exports.useSliceRowIdsListener=(e,s,t,r,o)=>$("Slice"+I,M(o),t,r,[e,s]),exports.useSortedRowIds=oe,exports.useSortedRowIdsListener=(e,s,t,r,o,l,u,n,d)=>$(C,B(d),l,u,[e,s,t,r,o],n),exports.useStartTransactionListener=(e,s,t)=>$("Start"+E,B(t),e,s),exports.useStore=e=>P(e,0),exports.useStoreIds=()=>q(1),exports.useStoreOrStoreById=B,exports.useTable=(e,s)=>Z(i,B(s),N,[e]),exports.useTableCellIds=(e,s)=>Z(i+w,B(s),K,[e]),exports.useTableCellIdsListener=(e,s,t,r,o)=>$(i+w,B(o),s,t,[e],r),exports.useTableIds=te,exports.useTableIdsListener=(e,s,t,r)=>$(p,B(r),e,s,K,t),exports.useTableListener=(e,s,t,r,o)=>$(i,B(o),s,t,[e],r),exports.useTables=e=>Z(a,B(e),N),exports.useTablesListener=(e,s,t,r)=>$(a,B(r),e,s,K,t),exports.useUndoInformation=e=>{var s;const r=j(e),[o,l]=ke(r);return[(u=o,!(0==u.length)),ge(r),l,null!=(s=h(l,(e=>null==r?void 0:r.getCheckpoint(e))))?s:t];var u},exports.useValue=de,exports.useValueIds=ne,exports.useValueIdsListener=(e,s,t,r)=>$(v,B(r),e,s,K,t),exports.useValueListener=(e,s,t,r,o)=>$(R,B(o),s,t,[e],r),exports.useValues=e=>Z(k,B(e),N),exports.useValuesListener=(e,s,t,r)=>$(k,B(r),e,s,K,t),exports.useWillFinishTransactionListener=(e,s,t)=>$("WillFinish"+E,B(t),e,s);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",r=s(t),o="Listener",l="Result",u="Has",n="has",d="Ids",i="Table",a=i+"s",p=i+d,c="Row",x=c+"Count",I=c+d,C="Sorted"+c+d,b="Cell",w=b+d,R="Value",k=R+"s",v=R+d,g=e=>null==e,h=(e,s,t)=>g(e)?null==t?void 0:t():s(e),L=e=>s(e)==r,m=()=>{},y=(e,s)=>e.map(s),V=Object.keys,S=(e,s)=>h(e,(e=>e[s])),{createContext:T,useContext:f,useEffect:P}=e,O=T([]),q=(e,s)=>{var t;const r=f(O);return g(e)?r[s]:L(e)?S(null!=(t=r[s+1])?t:{},e):e},B=(e,s)=>{const t=q(e,s);return g(e)||L(e)?t:e},H=e=>{var s;return V(null!=(s=f(O)[e])?s:{})},M=e=>B(e,0),D=e=>B(e,2),F=e=>B(e,4),j=e=>B(e,6),Q=e=>B(e,8),E=e=>B(e,10),A=e=>e.toLowerCase();A(o);const G="Transaction";A(G);const{useCallback:W,useEffect:U,useMemo:z,useLayoutEffect:J,useRef:K,useState:N}=e,X=[],Y={},Z=[[],void 0,[]],$=(e,s,t=X)=>{const r=z((()=>s(e)),[e,...t]);return U((()=>()=>r.destroy()),[r]),r},_=(e,s,t,r=X,o,l="get",u="")=>{const[,n]=N(),d=W((()=>{var o,u;return null!=(u=null==(o=null==s?void 0:s[l+e])?void 0:o.call(s,...r))?u:t}),[s,e,...r,t]),i=K();return z((()=>i.current=d()),[d]),ee(u+e,s,((...e)=>{i.current=g(o)?d():e[o],n([])}),[d,o],r),i.current},ee=(e,s,t,r=X,l=X,...u)=>J((()=>{var r;const n=null==(r=null==s?void 0:s["add"+e+o])?void 0:r.call(s,...l,t,...u);return()=>null==s?void 0:s.delListener(n)}),[s,e,...l,...r,...u]),se=(e,s,t,r=X,o=m,l=X,...u)=>{const n=M(e);return W((e=>h(n,(r=>h(t(e,r),(e=>o(r["set"+s](...u,e),e)))))),[n,s,...r,...l,...u])},te=(e,s,t=m,r=X,...o)=>{const l=M(e);return W((()=>t(null==l?void 0:l["del"+s](...o))),[l,s,...r,...o])},re=(e,s,t)=>{const r=E(e);return W((()=>null==r?void 0:r[s](t)),[r,s,t])},oe=e=>_(p,M(e),X),le=(e,s)=>_(I,M(s),X,[e]),ue=(e,s,t,r=0,o,l)=>_(C,M(l),X,[e,s,t,r,o],6),ne=(e,s,t)=>_(w,M(t),X,[e,s]),de=(e,s,t,r)=>_(b,M(r),void 0,[e,s,t],4),ie=e=>_(v,M(e),X),ae=(e,s)=>_(R,M(s),void 0,[e]),pe=(e,s)=>_("Metric",D(s),void 0,[e]),ce=(e,s)=>_("SliceIds",F(s),X,[e]),xe=(e,s,t)=>_("Slice"+I,F(t),X,[e,s]),Ie=(e,s,t)=>_("RemoteRowId",j(t),void 0,[e,s]),Ce=(e,s,t)=>_("Local"+I,j(t),X,[e,s]),be=(e,s,t)=>_("Linked"+I,j(t),X,[e,s]),we=(e,s)=>_(l+I,Q(s),X,[e]),Re=(e,s,t,r=0,o,u)=>_(l+C,Q(u),X,[e,s,t,r,o],6),ke=(e,s,t)=>_(l+w,Q(t),X,[e,s]),ve=(e,s,t,r)=>_(l+b,Q(r),void 0,[e,s,t]),ge=e=>_("CheckpointIds",E(e),Z),he=(e,s)=>_("Checkpoint",E(s),void 0,[e]),Le=e=>re(e,"goBackward"),me=e=>re(e,"goForward"),{PureComponent:ye,Fragment:Ve,createElement:Se,useCallback:Te,useLayoutEffect:fe,useRef:Pe,useState:Oe}=e,qe=(e,...s)=>g(e)?{}:e(...s),Be=(e,s)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getLocalTableId(s),null==e?void 0:e.getRemoteTableId(s)];var He=Object.defineProperty,Me=Object.defineProperties,De=Object.getOwnPropertyDescriptors,Fe=Object.getOwnPropertySymbols,je=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable,Ee=(e,s,t)=>s in e?He(e,s,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[s]=t,Ae=(e,s)=>{for(var t in s||(s={}))je.call(s,t)&&Ee(e,t,s[t]);if(Fe)for(var t of Fe(s))Qe.call(s,t)&&Ee(e,t,s[t]);return e},Ge=(e,s)=>Me(e,De(s)),We=(e,s)=>{var t={};for(var r in e)je.call(e,r)&&s.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Fe)for(var r of Fe(e))s.indexOf(r)<0&&Qe.call(e,r)&&(t[r]=e[r]);return t};const{useCallback:Ue,useContext:ze,useMemo:Je,useState:Ke}=e,Ne=({tableId:e,store:s,rowComponent:t=es,getRowComponentProps:r,customCellIds:o,separator:l,debugIds:u},n)=>$e(y(n,(l=>Se(t,Ge(Ae({},qe(r,l)),{key:l,tableId:e,rowId:l,customCellIds:o,store:s,debugIds:u})))),l,u,e),Xe=({queryId:e,queries:s,resultRowComponent:t=ls,getResultRowComponentProps:r,separator:o,debugIds:l},u)=>$e(y(u,(o=>Se(t,Ge(Ae({},qe(r,o)),{key:o,queryId:e,rowId:o,queries:s,debugIds:l})))),o,l,e),Ye=({relationshipId:e,relationships:s,rowComponent:t=es,getRowComponentProps:r,separator:o,debugIds:l},u,n)=>{const[d,i,a]=Be(j(s),e),p=u(e,n,d);return $e(y(p,(e=>Se(t,Ge(Ae({},qe(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:l})))),o,l,n)},Ze=e=>({checkpoints:s,checkpointComponent:t=us,getCheckpointComponentProps:r,separator:o,debugIds:l})=>{const u=E(s);return $e(y(e(ge(u)),(e=>Se(t,Ge(Ae({},qe(r,e)),{key:e,checkpoints:u,checkpointId:e,debugIds:l})))),o)},$e=(e,s,t,r)=>{const o=g(s)||!Array.isArray(e)?e:y(e,((e,t)=>t>0?[s,e]:e));return t?[r,":{",o,"}"]:o},_e=({tableId:e,rowId:s,cellId:r,store:o,debugIds:l})=>{var u;return $e(t+(null!=(u=de(e,s,r,o))?u:t),void 0,l,r)},es=({tableId:e,rowId:s,store:t,cellComponent:r=_e,getCellComponentProps:o,customCellIds:l,separator:u,debugIds:n})=>$e(y(((e,s,t,r)=>{const o=ne(s,t,r);return null!=e?e:o})(l,e,s,t),(l=>Se(r,Ge(Ae({},qe(o,l)),{key:l,tableId:e,rowId:s,cellId:l,store:t,debugIds:n})))),u,n,s),ss=e=>Ne(e,le(e.tableId,e.store)),ts=({valueId:e,store:s,debugIds:r})=>{var o;return $e(t+(null!=(o=ae(e,s))?o:t),void 0,r,e)},rs=({indexId:e,sliceId:s,indexes:t,rowComponent:r=es,getRowComponentProps:o,separator:l,debugIds:u})=>{const[n,d,i]=((e,s)=>[e,null==e?void 0:e.getStore(),null==e?void 0:e.getTableId(s)])(F(t),e),a=xe(e,s,n);return $e(y(a,(e=>Se(r,Ge(Ae({},qe(o,e)),{key:e,tableId:i,rowId:e,store:d,debugIds:u})))),l,u,s)},os=({queryId:e,rowId:s,cellId:r,queries:o,debugIds:l})=>{var u;return $e(t+(null!=(u=ve(e,s,r,o))?u:t),void 0,l,r)},ls=({queryId:e,rowId:s,queries:t,resultCellComponent:r=os,getResultCellComponentProps:o,separator:l,debugIds:u})=>$e(y(ke(e,s,t),(l=>Se(r,Ge(Ae({},qe(o,l)),{key:l,queryId:e,rowId:s,cellId:l,queries:t,debugIds:u})))),l,u,s),us=({checkpoints:e,checkpointId:s,debugIds:r})=>{var o;return $e(null!=(o=he(s,e))?o:t,void 0,r,s)},ns=Ze((e=>e[0])),ds=Ze((e=>g(e[1])?[]:[e[1]])),is=Ze((e=>e[2]));exports.BackwardCheckpointsView=ns,exports.CellView=_e,exports.CheckpointView=us,exports.CurrentCheckpointView=ds,exports.ForwardCheckpointsView=is,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=rs,getSliceComponentProps:r,separator:o,debugIds:l})=>$e(y(ce(e,s),(o=>Se(t,Ge(Ae({},qe(r,o)),{key:o,indexId:e,sliceId:o,indexes:s,debugIds:l})))),o,l,e),exports.LinkedRowsView=e=>Ye(e,be,e.firstRowId),exports.LocalRowsView=e=>Ye(e,Ce,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:r})=>{var o;return $e(null!=(o=pe(e,s))?o:t,void 0,r,e)},exports.Provider=({store:e,storesById:s,metrics:t,metricsById:r,indexes:o,indexesById:l,relationships:u,relationshipsById:n,queries:d,queriesById:i,checkpoints:a,checkpointsById:p,children:c})=>{const x=ze(O),[I,C]=Ke({}),b=Ue(((e,s)=>C((t=>S(t,e)==s?t:Ge(Ae({},t),{[e]:s})))),[]),w=Ue((e=>C((s=>Ae({},((e,s)=>(delete e[s],e))(s,e))))),[]);return Se(O.Provider,{value:Je((()=>[null!=e?e:x[0],Ae(Ae(Ae({},x[1]),s),I),null!=t?t:x[2],Ae(Ae({},x[3]),r),null!=o?o:x[4],Ae(Ae({},x[5]),l),null!=u?u:x[6],Ae(Ae({},x[7]),n),null!=d?d:x[8],Ae(Ae({},x[9]),i),null!=a?a:x[10],Ae(Ae({},x[11]),p),b,w]),[e,s,I,t,r,o,l,u,n,d,i,a,p,x,b,w])},c)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:r=es,getRowComponentProps:o,debugIds:l})=>{const[u,n,,d]=Be(j(t),e),i=Ie(e,s,u);return $e(g(d)||g(i)?null:Se(r,Ge(Ae({},qe(o,i)),{key:i,tableId:d,rowId:i,store:n,debugIds:l})),void 0,l,s)},exports.ResultCellView=os,exports.ResultRowView=ls,exports.ResultSortedTableView=e=>{var s=e,{cellId:t,descending:r,offset:o,limit:l}=s,u=We(s,["cellId","descending","offset","limit"]);return Xe(u,Re(u.queryId,t,r,o,l,u.queries))},exports.ResultTableView=e=>Xe(e,we(e.queryId,e.queries)),exports.RowView=es,exports.SliceView=rs,exports.SortedTableView=e=>{var s=e,{cellId:t,descending:r,offset:o,limit:l}=s,u=We(s,["cellId","descending","offset","limit"]);return Ne(u,ue(u.tableId,t,r,o,l,u.store))},exports.TableView=ss,exports.TablesView=({store:e,tableComponent:s=ss,getTableComponentProps:t,separator:r,debugIds:o})=>$e(y(oe(e),(r=>Se(s,Ge(Ae({},qe(t,r)),{key:r,tableId:r,store:e,debugIds:o})))),r),exports.ValueView=ts,exports.ValuesView=({store:e,valueComponent:s=ts,getValueComponentProps:t,separator:r,debugIds:o})=>$e(y(ie(e),(r=>Se(s,Ge(Ae({},qe(t,r)),{key:r,valueId:r,store:e,debugIds:o})))),r),exports.useAddRowCallback=(e,s,t=X,r,o=m,l=X,u=!0)=>{const n=M(r);return W((t=>h(n,(r=>h(s(t,r),(s=>o(r.addRow(e,s,u),r,s)))))),[n,e,...t,...l,u])},exports.useCell=de,exports.useCellIds=ne,exports.useCellIdsListener=(e,s,t,r,o,l)=>ee(w,M(l),t,r,[e,s],o),exports.useCellListener=(e,s,t,r,o,l,u)=>ee(b,M(u),r,o,[e,s,t],l),exports.useCheckpoint=he,exports.useCheckpointIds=ge,exports.useCheckpointIdsListener=(e,s,t)=>ee("CheckpointIds",E(t),e,s),exports.useCheckpointListener=(e,s,t,r)=>ee("Checkpoint",E(r),s,t,[e]),exports.useCheckpoints=e=>q(e,10),exports.useCheckpointsIds=()=>H(11),exports.useCheckpointsOrCheckpointsById=E,exports.useCreateCheckpoints=(e,s,t)=>$(e,s,t),exports.useCreateIndexes=(e,s,t)=>$(e,s,t),exports.useCreateMetrics=(e,s,t)=>$(e,s,t),exports.useCreatePersister=(e,s,t=X,r,o=X,l,u=X)=>{const[,n]=N(),d=z((()=>s(e)),[e,...t]);return U((()=>{var e;return e=function*(){r&&(yield r(d),n([]))},new Promise(((s,t)=>{var r=s=>{try{l(e.next(s))}catch(e){t(e)}},o=s=>{try{l(e.throw(s))}catch(e){t(e)}},l=e=>e.done?s(e.value):Promise.resolve(e.value).then(r,o);l((e=e.apply(void 0,null)).next())})),()=>{null==d||d.destroy(),null==l||l(d)}}),[d,...o,...u]),d},exports.useCreateQueries=(e,s,t)=>$(e,s,t),exports.useCreateRelationships=(e,s,t)=>$(e,s,t),exports.useCreateStore=(e,s=X)=>z(e,s),exports.useDelCellCallback=(e,s,t,r,o,l,u)=>te(o,b,l,u,e,s,t,r),exports.useDelRowCallback=(e,s,t,r,o)=>te(t,c,r,o,e,s),exports.useDelTableCallback=(e,s,t,r)=>te(s,i,t,r,e),exports.useDelTablesCallback=(e,s,t)=>te(e,a,s,t),exports.useDelValueCallback=(e,s,t,r)=>te(s,R,t,r,e),exports.useDelValuesCallback=(e,s,t)=>te(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>ee("DidFinish"+G,M(t),e,s),exports.useGoBackwardCallback=Le,exports.useGoForwardCallback=me,exports.useGoToCallback=(e,s=X,t,r=m,o=X)=>{const l=E(t);return W((s=>h(l,(t=>h(e(s),(e=>r(t.goTo(e),e)))))),[l,...s,...o])},exports.useHasCell=(e,s,t,r)=>_(b,M(r),!1,[e,s,t],4,n,u),exports.useHasCellListener=(e,s,t,r,o,l,n)=>ee(u+b,M(n),r,o,[e,s,t],l),exports.useHasRow=(e,s,t)=>_(c,M(t),!1,[e,s],3,n,u),exports.useHasRowListener=(e,s,t,r,o,l)=>ee(u+c,M(l),t,r,[e,s],o),exports.useHasTable=(e,s)=>_(i,M(s),!1,[e],2,n,u),exports.useHasTableCell=(e,s,t)=>_(i+b,M(t),!1,[e,s],3,n,u),exports.useHasTableCellListener=(e,s,t,r,o,l)=>ee(u+i+b,M(l),t,r,[e,s],o),exports.useHasTableListener=(e,s,t,r,o)=>ee(u+i,M(o),s,t,[e],r),exports.useHasTables=e=>_(a,M(e),!1,[],1,n,u),exports.useHasTablesListener=(e,s,t,r)=>ee(u+a,M(r),e,s,[],t),exports.useHasValue=(e,s)=>_(R,M(s),!1,[e],2,n,u),exports.useHasValueListener=(e,s,t,r,o)=>ee(u+R,M(o),s,t,[e],r),exports.useHasValues=e=>_(k,M(e),!1,[],1,n,u),exports.useHasValuesListener=(e,s,t,r)=>ee(u+k,M(r),e,s,[],t),exports.useIndexIds=e=>_("IndexIds",F(e),X),exports.useIndexes=e=>q(e,4),exports.useIndexesIds=()=>H(5),exports.useIndexesOrIndexesById=F,exports.useLinkedRowIds=be,exports.useLinkedRowIdsListener=(e,s,t,r,o)=>ee("Linked"+I,j(o),t,r,[e,s]),exports.useLocalRowIds=Ce,exports.useLocalRowIdsListener=(e,s,t,r,o)=>ee("Local"+I,j(o),t,r,[e,s]),exports.useMetric=pe,exports.useMetricIds=e=>_("MetricIds",D(e),X),exports.useMetricListener=(e,s,t,r)=>ee("Metric",D(r),s,t,[e]),exports.useMetrics=e=>q(e,2),exports.useMetricsIds=()=>H(3),exports.useMetricsOrMetricsById=D,exports.useProvideStore=(e,s)=>{const{12:t,13:r}=f(O);P((()=>(null==t||t(e,s),()=>null==r?void 0:r(e))),[t,e,s,r])},exports.useQueries=e=>q(e,8),exports.useQueriesIds=()=>H(9),exports.useQueriesOrQueriesById=Q,exports.useQueryIds=e=>_("QueryIds",Q(e),X),exports.useRedoInformation=e=>{var s;const r=E(e),[,,[o]]=ge(r);return[!g(o),me(r),o,null!=(s=h(o,(e=>null==r?void 0:r.getCheckpoint(e))))?s:t]},exports.useRelationshipIds=e=>_("RelationshipIds",j(e),X),exports.useRelationships=e=>q(e,6),exports.useRelationshipsIds=()=>H(7),exports.useRelationshipsOrRelationshipsById=j,exports.useRemoteRowId=Ie,exports.useRemoteRowIdListener=(e,s,t,r,o)=>ee("RemoteRowId",j(o),t,r,[e,s]),exports.useResultCell=ve,exports.useResultCellIds=ke,exports.useResultCellIdsListener=(e,s,t,r,o)=>ee(l+w,Q(o),t,r,[e,s]),exports.useResultCellListener=(e,s,t,r,o,u)=>ee(l+b,Q(u),r,o,[e,s,t]),exports.useResultRow=(e,s,t)=>_(l+c,Q(t),Y,[e,s]),exports.useResultRowCount=(e,s)=>_(l+x,Q(s),0,[e]),exports.useResultRowCountListener=(e,s,t,r)=>ee(l+x,Q(r),s,t,[e]),exports.useResultRowIds=we,exports.useResultRowIdsListener=(e,s,t,r)=>ee(l+I,Q(r),s,t,[e]),exports.useResultRowListener=(e,s,t,r,o)=>ee(l+c,Q(o),t,r,[e,s]),exports.useResultSortedRowIds=Re,exports.useResultSortedRowIdsListener=(e,s,t,r,o,u,n,d)=>ee(l+C,Q(d),u,n,[e,s,t,r,o]),exports.useResultTable=(e,s)=>_(l+i,Q(s),Y,[e]),exports.useResultTableCellIds=(e,s)=>_(l+i+w,Q(s),X,[e]),exports.useResultTableCellIdsListener=(e,s,t,r)=>ee(l+i+w,Q(r),s,t,[e]),exports.useResultTableListener=(e,s,t,r)=>ee(l+i,Q(r),s,t,[e]),exports.useRow=(e,s,t)=>_(c,M(t),Y,[e,s]),exports.useRowCount=(e,s)=>_(x,M(s),0,[e]),exports.useRowCountListener=(e,s,t,r,o)=>ee(x,M(o),s,t,[e],r),exports.useRowIds=le,exports.useRowIdsListener=(e,s,t,r,o)=>ee(I,M(o),s,t,[e],r),exports.useRowListener=(e,s,t,r,o,l)=>ee(c,M(l),t,r,[e,s],o),exports.useSetCellCallback=(e,s,t,r,o,l,u,n)=>se(l,b,r,o,u,n,e,s,t),exports.useSetCheckpointCallback=(e=m,s=X,t,r=m,o=X)=>{const l=E(t);return W((s=>h(l,(t=>{const o=e(s);r(t.addCheckpoint(o),t,o)}))),[l,...s,...o])},exports.useSetPartialRowCallback=(e,s,t,r,o,l,u)=>se(o,"PartialRow",t,r,l,u,e,s),exports.useSetPartialValuesCallback=(e,s,t,r,o)=>se(t,"PartialValues",e,s,r,o),exports.useSetRowCallback=(e,s,t,r,o,l,u)=>se(o,c,t,r,l,u,e,s),exports.useSetTableCallback=(e,s,t,r,o,l)=>se(r,i,s,t,o,l,e),exports.useSetTablesCallback=(e,s,t,r,o)=>se(t,a,e,s,r,o),exports.useSetValueCallback=(e,s,t,r,o,l)=>se(r,R,s,t,o,l,e),exports.useSetValuesCallback=(e,s,t,r,o)=>se(t,k,e,s,r,o),exports.useSliceIds=ce,exports.useSliceIdsListener=(e,s,t,r)=>ee("SliceIds",F(r),s,t,[e]),exports.useSliceRowIds=xe,exports.useSliceRowIdsListener=(e,s,t,r,o)=>ee("Slice"+I,F(o),t,r,[e,s]),exports.useSortedRowIds=ue,exports.useSortedRowIdsListener=(e,s,t,r,o,l,u,n,d)=>ee(C,M(d),l,u,[e,s,t,r,o],n),exports.useStartTransactionListener=(e,s,t)=>ee("Start"+G,M(t),e,s),exports.useStore=e=>q(e,0),exports.useStoreIds=()=>H(1),exports.useStoreOrStoreById=M,exports.useTable=(e,s)=>_(i,M(s),Y,[e]),exports.useTableCellIds=(e,s)=>_(i+w,M(s),X,[e]),exports.useTableCellIdsListener=(e,s,t,r,o)=>ee(i+w,M(o),s,t,[e],r),exports.useTableIds=oe,exports.useTableIdsListener=(e,s,t,r)=>ee(p,M(r),e,s,X,t),exports.useTableListener=(e,s,t,r,o)=>ee(i,M(o),s,t,[e],r),exports.useTables=e=>_(a,M(e),Y),exports.useTablesListener=(e,s,t,r)=>ee(a,M(r),e,s,X,t),exports.useUndoInformation=e=>{var s;const r=E(e),[o,l]=ge(r);return[(u=o,!(0==u.length)),Le(r),l,null!=(s=h(l,(e=>null==r?void 0:r.getCheckpoint(e))))?s:t];var u},exports.useValue=ae,exports.useValueIds=ie,exports.useValueIdsListener=(e,s,t,r)=>ee(v,M(r),e,s,X,t),exports.useValueListener=(e,s,t,r,o)=>ee(R,M(o),s,t,[e],r),exports.useValues=e=>_(k,M(e),Y),exports.useValuesListener=(e,s,t,r)=>ee(k,M(r),e,s,X,t),exports.useWillFinishTransactionListener=(e,s,t)=>ee("WillFinish"+G,M(t),e,s);
Binary file
@@ -109,8 +109,8 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
109
109
  p == size(path)
110
110
  ? arrayPush(leaves, node)
111
111
  : path[p] === null
112
- ? collForEach(node, (node2) => deep(node2, p + 1))
113
- : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
112
+ ? collForEach(node, (node2) => deep(node2, p + 1))
113
+ : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
114
114
  deep(deepIdSet, 0);
115
115
  return leaves;
116
116
  };
@@ -162,10 +162,10 @@ const getListenerFunctions = (getThing) => {
162
162
  index == size(path)
163
163
  ? listener(thing, ...ids, ...extraArgsGetter(ids))
164
164
  : isUndefined(path[index])
165
- ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
166
- callWithIds(...ids, id2),
167
- )
168
- : callWithIds(...ids, path[index]);
165
+ ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
166
+ callWithIds(...ids, id2),
167
+ )
168
+ : callWithIds(...ids, path[index]);
169
169
  };
170
170
  callWithIds();
171
171
  },
@@ -344,8 +344,8 @@ const createCheckpoints = getCreateFunction((store) => {
344
344
  const action = arrayHas(backwardIds, checkpointId)
345
345
  ? goBackwardImpl
346
346
  : arrayHas(forwardIds, checkpointId)
347
- ? goForwardImpl
348
- : null;
347
+ ? goForwardImpl
348
+ : null;
349
349
  while (!isUndefined(action) && checkpointId != currentId) {
350
350
  action();
351
351
  }
@@ -279,8 +279,8 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
279
279
  p == size(path)
280
280
  ? arrayPush(leaves, node)
281
281
  : path[p] === null
282
- ? collForEach(node, (node2) => deep(node2, p + 1))
283
- : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
282
+ ? collForEach(node, (node2) => deep(node2, p + 1))
283
+ : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
284
284
  deep(deepIdSet, 0);
285
285
  return leaves;
286
286
  };
@@ -332,10 +332,10 @@ const getListenerFunctions = (getThing) => {
332
332
  index == size(path)
333
333
  ? listener(thing, ...ids, ...extraArgsGetter(ids))
334
334
  : isUndefined(path[index])
335
- ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
336
- callWithIds(...ids, id2),
337
- )
338
- : callWithIds(...ids, path[index]);
335
+ ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
336
+ callWithIds(...ids, id2),
337
+ )
338
+ : callWithIds(...ids, path[index]);
339
339
  };
340
340
  callWithIds();
341
341
  },
@@ -369,8 +369,8 @@ const createIndexes = getCreateFunction((store) => {
369
369
  isUndefined(value)
370
370
  ? EMPTY_STRING
371
371
  : isArray(value)
372
- ? arrayMap(value, id)
373
- : id(value),
372
+ ? arrayMap(value, id)
373
+ : id(value),
374
374
  addListener,
375
375
  callListeners,
376
376
  );
@@ -139,8 +139,8 @@ const getAggregateValue = (
139
139
  aggregateValue = isUndefined(oldValue)
140
140
  ? aggregateAdd?.(aggregateValue, newValue, oldLength++)
141
141
  : isUndefined(newValue)
142
- ? aggregateRemove?.(aggregateValue, oldValue, oldLength--)
143
- : aggregateReplace?.(aggregateValue, newValue, oldValue, oldLength);
142
+ ? aggregateRemove?.(aggregateValue, oldValue, oldLength--)
143
+ : aggregateReplace?.(aggregateValue, newValue, oldValue, oldLength);
144
144
  force ||= isUndefined(aggregateValue);
145
145
  }
146
146
  });
@@ -347,8 +347,8 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
347
347
  p == size(path)
348
348
  ? arrayPush(leaves, node)
349
349
  : path[p] === null
350
- ? collForEach(node, (node2) => deep(node2, p + 1))
351
- : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
350
+ ? collForEach(node, (node2) => deep(node2, p + 1))
351
+ : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
352
352
  deep(deepIdSet, 0);
353
353
  return leaves;
354
354
  };
@@ -400,10 +400,10 @@ const getListenerFunctions = (getThing) => {
400
400
  index == size(path)
401
401
  ? listener(thing, ...ids, ...extraArgsGetter(ids))
402
402
  : isUndefined(path[index])
403
- ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
404
- callWithIds(...ids, id2),
405
- )
406
- : callWithIds(...ids, path[index]);
403
+ ? arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
404
+ callWithIds(...ids, id2),
405
+ )
406
+ : callWithIds(...ids, path[index]);
407
407
  };
408
408
  callWithIds();
409
409
  },
@@ -224,35 +224,35 @@ const setTransactionChangesToDoc = (
224
224
  transactionChangesFailed
225
225
  ? 0
226
226
  : isUndefined(table)
227
- ? objDel(docTables, tableId)
228
- : ifNotUndefined(
229
- docTables[tableId],
230
- (docTable) =>
231
- objMap(table, (row, rowId) =>
232
- transactionChangesFailed
233
- ? 0
234
- : isUndefined(row)
235
- ? objDel(docTable, rowId)
236
- : ifNotUndefined(
237
- objGet(docTable, rowId),
238
- (docRow) =>
239
- objMap(row, (cell, cellId) =>
240
- isUndefined(cell)
241
- ? objDel(docRow, cellId)
242
- : (docRow[cellId] = cell),
227
+ ? objDel(docTables, tableId)
228
+ : ifNotUndefined(
229
+ docTables[tableId],
230
+ (docTable) =>
231
+ objMap(table, (row, rowId) =>
232
+ transactionChangesFailed
233
+ ? 0
234
+ : isUndefined(row)
235
+ ? objDel(docTable, rowId)
236
+ : ifNotUndefined(
237
+ objGet(docTable, rowId),
238
+ (docRow) =>
239
+ objMap(row, (cell, cellId) =>
240
+ isUndefined(cell)
241
+ ? objDel(docRow, cellId)
242
+ : (docRow[cellId] = cell),
243
+ ),
244
+ transactionChangesDidFail,
243
245
  ),
244
- transactionChangesDidFail,
245
- ),
246
- ),
247
- transactionChangesDidFail,
248
- ),
246
+ ),
247
+ transactionChangesDidFail,
248
+ ),
249
249
  );
250
250
  objMap(valueChanges, (value, valueId) =>
251
251
  transactionChangesFailed
252
252
  ? 0
253
253
  : isUndefined(value)
254
- ? objDel(docValues, valueId)
255
- : (docValues[valueId] = value),
254
+ ? objDel(docValues, valueId)
255
+ : (docValues[valueId] = value),
256
256
  );
257
257
  });
258
258
  if (transactionChangesFailed) {
@@ -67,15 +67,12 @@ const RESPONSE_HEADERS = objNew(
67
67
  '*',
68
68
  ]),
69
69
  );
70
- const hasStore = async (that) =>
71
- await that.party.storage.get(
72
- (that.config.storagePrefix ?? EMPTY_STRING) + HAS_STORE,
73
- );
74
- const loadStore = async (that) => {
70
+ const hasStoreInStorage = async (storage, storagePrefix = EMPTY_STRING) =>
71
+ !!(await storage.get(storagePrefix + HAS_STORE));
72
+ const loadStoreFromStorage = async (storage, storagePrefix = EMPTY_STRING) => {
75
73
  const tables = {};
76
74
  const values = {};
77
- const storagePrefix = that.config.storagePrefix ?? EMPTY_STRING;
78
- mapForEach(await that.party.storage.list(), (key, cellOrValue) =>
75
+ mapForEach(await storage.list(), (key, cellOrValue) =>
79
76
  ifNotUndefined(deconstruct(storagePrefix, key), ([type, ids]) => {
80
77
  if (type == T) {
81
78
  const [tableId, rowId, cellId] = jsonParse('[' + ids + ']');
@@ -95,9 +92,9 @@ const saveStore = async (
95
92
  requestOrConnection,
96
93
  ) => {
97
94
  const storage = that.party.storage;
98
- const prefix = that.config.storagePrefix ?? EMPTY_STRING;
95
+ const storagePrefix = that.config.storagePrefix;
99
96
  const keysToSet = {
100
- [prefix + HAS_STORE]: 1,
97
+ [storagePrefix + HAS_STORE]: 1,
101
98
  };
102
99
  const keysToDel = [];
103
100
  const keyPrefixesToDel = [];
@@ -108,7 +105,7 @@ const saveStore = async (
108
105
  that.canDelTable(tableId, requestOrConnection) &&
109
106
  arrayUnshift(
110
107
  keyPrefixesToDel,
111
- constructStorageKey(prefix, T, tableId),
108
+ constructStorageKey(storagePrefix, T, tableId),
112
109
  )
113
110
  : that.canSetTable(tableId, initialSave, requestOrConnection) &&
114
111
  (await promiseAll(
@@ -118,7 +115,7 @@ const saveStore = async (
118
115
  that.canDelRow(tableId, rowId, requestOrConnection) &&
119
116
  arrayPush(
120
117
  keyPrefixesToDel,
121
- constructStorageKey(prefix, T, tableId, rowId),
118
+ constructStorageKey(storagePrefix, T, tableId, rowId),
122
119
  )
123
120
  : that.canSetRow(
124
121
  tableId,
@@ -129,7 +126,7 @@ const saveStore = async (
129
126
  (await promiseAll(
130
127
  objMap(row, async (cell, cellId) => {
131
128
  const ids = [tableId, rowId, cellId];
132
- const key = constructStorageKey(prefix, T, ...ids);
129
+ const key = constructStorageKey(storagePrefix, T, ...ids);
133
130
  isUndefined(cell)
134
131
  ? !initialSave &&
135
132
  that.canDelCell(...ids, requestOrConnection) &&
@@ -149,7 +146,7 @@ const saveStore = async (
149
146
  );
150
147
  await promiseAll(
151
148
  objMap(transactionChanges[1], async (value, valueId) => {
152
- const key = prefix + V + valueId;
149
+ const key = storagePrefix + V + valueId;
153
150
  isUndefined(value)
154
151
  ? !initialSave &&
155
152
  that.canDelValue(valueId, requestOrConnection) &&
@@ -181,17 +178,24 @@ const constructStorageKey = (storagePrefix, type, ...ids) =>
181
178
  const createResponse = async (that, status, body = null) =>
182
179
  new Response(body, {
183
180
  status,
184
- headers: that.config.responseHeaders ?? RESPONSE_HEADERS,
181
+ headers: that.config.responseHeaders,
185
182
  });
186
183
  class TinyBasePartyKitServer {
187
184
  constructor(party) {
188
185
  this.party = party;
189
186
  this.config = {};
187
+ this.config.storePath ??= STORE_PATH;
188
+ this.config.messagePrefix ??= EMPTY_STRING;
189
+ this.config.storagePrefix ??= EMPTY_STRING;
190
+ this.config.responseHeaders ??= RESPONSE_HEADERS;
190
191
  }
191
192
  async onRequest(request) {
192
- const storePath = this.config.storePath ?? STORE_PATH;
193
+ const {
194
+ party: {storage},
195
+ config: {storePath, storagePrefix},
196
+ } = this;
193
197
  if (new URL(request.url).pathname.endsWith(storePath)) {
194
- const hasExistingStore = await hasStore(this);
198
+ const hasExistingStore = await hasStoreInStorage(storage, storagePrefix);
195
199
  const text = await request.text();
196
200
  if (request.method == PUT) {
197
201
  if (hasExistingStore) {
@@ -203,19 +207,29 @@ class TinyBasePartyKitServer {
203
207
  return createResponse(
204
208
  this,
205
209
  200,
206
- hasExistingStore ? jsonString(await loadStore(this)) : EMPTY_STRING,
210
+ hasExistingStore
211
+ ? jsonString(await loadStoreFromStorage(storage, storagePrefix))
212
+ : EMPTY_STRING,
207
213
  );
208
214
  }
209
215
  return createResponse(this, 404);
210
216
  }
211
217
  async onMessage(message, connection) {
212
- const messagePrefix = this.config.messagePrefix ?? EMPTY_STRING;
218
+ const {
219
+ party: {storage, broadcast},
220
+ config: {messagePrefix, storagePrefix},
221
+ } = this;
213
222
  await ifNotUndefined(
214
223
  deconstruct(messagePrefix, message, 1),
215
224
  async ([type, payload]) => {
216
- if (type == SET_CHANGES && (await hasStore(this))) {
225
+ if (
226
+ type == SET_CHANGES &&
227
+ (await hasStoreInStorage(storage, storagePrefix))
228
+ ) {
217
229
  await saveStore(this, payload, false, connection);
218
- this.party.broadcast(construct(messagePrefix, SET_CHANGES, payload));
230
+ broadcast(construct(messagePrefix, SET_CHANGES, payload), [
231
+ connection.id,
232
+ ]);
219
233
  }
220
234
  },
221
235
  );
@@ -254,4 +268,4 @@ class TinyBasePartyKitServer {
254
268
  }
255
269
  }
256
270
 
257
- export {TinyBasePartyKitServer};
271
+ export {TinyBasePartyKitServer, hasStoreInStorage, loadStoreFromStorage};
@@ -275,35 +275,35 @@ const setTransactionChangesToYDoc = (
275
275
  transactionChangesFailed
276
276
  ? 0
277
277
  : isUndefined(table)
278
- ? yTables.delete(tableId)
279
- : ifNotUndefined(
280
- yTables.get(tableId),
281
- (yTable) =>
282
- objMap(table, (row, rowId) =>
283
- transactionChangesFailed
284
- ? 0
285
- : isUndefined(row)
286
- ? yTable.delete(rowId)
287
- : ifNotUndefined(
288
- yTable.get(rowId),
289
- (yRow) =>
290
- objMap(row, (cell, cellId) =>
291
- isUndefined(cell)
292
- ? yRow.delete(cellId)
293
- : yRow.set(cellId, cell),
278
+ ? yTables.delete(tableId)
279
+ : ifNotUndefined(
280
+ yTables.get(tableId),
281
+ (yTable) =>
282
+ objMap(table, (row, rowId) =>
283
+ transactionChangesFailed
284
+ ? 0
285
+ : isUndefined(row)
286
+ ? yTable.delete(rowId)
287
+ : ifNotUndefined(
288
+ yTable.get(rowId),
289
+ (yRow) =>
290
+ objMap(row, (cell, cellId) =>
291
+ isUndefined(cell)
292
+ ? yRow.delete(cellId)
293
+ : yRow.set(cellId, cell),
294
+ ),
295
+ transactionChangesDidFail,
294
296
  ),
295
- transactionChangesDidFail,
296
- ),
297
- ),
298
- transactionChangesDidFail,
299
- ),
297
+ ),
298
+ transactionChangesDidFail,
299
+ ),
300
300
  );
301
301
  objMap(valueChanges, (value, valueId) =>
302
302
  transactionChangesFailed
303
303
  ? 0
304
304
  : isUndefined(value)
305
- ? yValues.delete(valueId)
306
- : yValues.set(valueId, value),
305
+ ? yValues.delete(valueId)
306
+ : yValues.set(valueId, value),
307
307
  );
308
308
  });
309
309
  if (transactionChangesFailed) {
@@ -160,8 +160,8 @@ const getAggregateValue = (
160
160
  aggregateValue = isUndefined(oldValue)
161
161
  ? aggregateAdd?.(aggregateValue, newValue, oldLength++)
162
162
  : isUndefined(newValue)
163
- ? aggregateRemove?.(aggregateValue, oldValue, oldLength--)
164
- : aggregateReplace?.(aggregateValue, newValue, oldValue, oldLength);
163
+ ? aggregateRemove?.(aggregateValue, oldValue, oldLength--)
164
+ : aggregateReplace?.(aggregateValue, newValue, oldValue, oldLength);
165
165
  force ||= isUndefined(aggregateValue);
166
166
  }
167
167
  });
@@ -454,8 +454,8 @@ const createQueries = getCreateFunction((store) => {
454
454
  isFunction(arg1)
455
455
  ? arg1
456
456
  : isUndefined(arg3)
457
- ? (getTableCell) => getTableCell(arg1) === arg2
458
- : (getTableCell) => getTableCell(arg1, arg2) === arg3,
457
+ ? (getTableCell) => getTableCell(arg1) === arg2
458
+ : (getTableCell) => getTableCell(arg1, arg2) === arg3,
459
459
  );
460
460
  const group = (
461
461
  selectedCellId,
@@ -658,12 +658,12 @@ const createQueries = getCreateFunction((store) => {
658
658
  ...(isUndefined(arg2)
659
659
  ? [tableId, rootRowId, arg1]
660
660
  : arg1 === tableId
661
- ? [tableId, rootRowId, arg2]
662
- : [
663
- mapGet(joins, arg1)?.[0],
664
- mapGet(mapGet(joins, arg1)?.[4], rootRowId)?.[0],
665
- arg2,
666
- ]),
661
+ ? [tableId, rootRowId, arg2]
662
+ : [
663
+ mapGet(joins, arg1)?.[0],
664
+ mapGet(mapGet(joins, arg1)?.[4], rootRowId)?.[0],
665
+ arg2,
666
+ ]),
667
667
  );
668
668
  selectJoinWhereStore.transaction(() =>
669
669
  arrayEvery(wheres, (where2) => where2(getTableCell))