tinybase 4.4.0-beta.2 → 4.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/debug/persisters/persister-partykit-server.js +35 -21
- package/lib/debug/tools.js +355 -14
- package/lib/es6/persisters/persister-partykit-server.js +1 -1
- package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/persisters/persister-partykit-server.js +1 -1
- package/lib/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/persisters/persister-partykit-server.d.ts +58 -2
- package/lib/types/persisters/persister-remote.d.ts +6 -1
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +61 -0
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +6 -1
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/umd/persisters/persister-partykit-server.js +1 -1
- package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/package.json +1 -1
- package/readme.md +13 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=
|
|
1
|
+
const e=e=>typeof e,t=e(""),n="t",r=(e,t)=>e.startsWith(t),i=Promise,l=e=>null==e,s=(e,t,n)=>l(e)?null==n?void 0:n():t(e),o=(e,t,n)=>e.slice(t,n),a=e=>e.length,c=e=>{return t=function*(){return i.all(e)},new Promise(((e,n)=>{var r=e=>{try{l(t.next(e))}catch(e){n(e)}},i=e=>{try{l(t.throw(e))}catch(e){n(e)}},l=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,i);l((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)=>!l(((e,t)=>s(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,i)=>n+r+(e(i)==t?i:v(i)),x=(e,t,n)=>{const i=a(e);return r(t,e)?[t[i],(n?p:String)(o(t,i+1))]:void 0},m=(e,t)=>((e,t)=>null==e?void 0:e.forEach(t))(e,((e,n)=>t(n,e)));var S=(e,t,n)=>new Promise(((r,i)=>{var l=e=>{try{o(n.next(e))}catch(e){i(e)}},s=e=>{try{o(n.throw(e))}catch(e){i(e)}},o=e=>e.done?r(e.value):Promise.resolve(e.value).then(l,s);o((n=n.apply(e,t)).next())}));const w="hasStore",D=f(u(["Origin","Methods","Headers"],(e=>["Access-Control-Allow-"+e,"*"]))),R=(e,...t)=>S(void 0,[e,...t],(function*(e,t=""){return!!(yield e.get(t+w))})),b=(e,...t)=>S(void 0,[e,...t],(function*(e,t=""){const r={},i={};return m(yield e.list(),((e,l)=>s(x(t,e),(([e,t])=>{if(e==n){const[e,n,i]=p("["+t+"]");g(g(r,e,f),n,f)[i]=l}else"v"==e&&(i[t]=l)})))),[r,i]})),C=(e,t,i,s)=>S(void 0,null,(function*(){const o=e.party.storage,u=e.config.storagePrefix,h={[u+w]:1},f=[],g=[];yield c(y(t[0],((t,r)=>S(void 0,null,(function*(){return l(t)?!i&&e.canDelTable(r,s)&&((e,...t)=>e.unshift(...t))(g,T(u,n,r)):e.canSetTable(r,i,s)&&(yield c(y(t,((t,a)=>S(void 0,null,(function*(){return l(t)?!i&&e.canDelRow(r,a,s)&&d(g,T(u,n,r,a)):e.canSetRow(r,a,i,s)&&(yield c(y(t,((t,c)=>S(void 0,null,(function*(){const y=[r,a,c],g=T(u,n,...y);l(t)?!i&&e.canDelCell(...y,s)&&d(f,g):e.canSetCell(...y,t,i,s,yield o.get(g))&&(h[g]=t)}))))))}))))))}))))),yield c(y(t[1],((t,n)=>S(void 0,null,(function*(){const r=u+"v"+n;l(t)?!i&&e.canDelValue(n,s)&&d(f,r):e.canSetValue(n,t,i,s,yield o.get(r))&&(h[r]=t)}))))),0!=a(g)&&m(yield o.list(),(e=>g.every((t=>!r(e,t)||d(f,e)&&0)))),yield o.delete(f),yield o.put(h)})),T=(e,t,...n)=>P(e,t,o(v(n),1,-1)),H=(e,t,n=null)=>S(void 0,null,(function*(){return new Response(n,{status:t,headers:e.config.responseHeaders})}));class O{constructor(e){var t,n,r,i;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!=(i=this.config).responseHeaders||(i.responseHeaders=D)}onRequest(e){return S(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),i=yield e.text();return"PUT"==e.method?n?H(this,205):(yield C(this,p(i),!0,e),H(this,201)):H(this,200,n?v(yield b(t,r)):"")}return H(this,404)}))}onMessage(e,t){return S(this,null,(function*(){const{party:{storage:n,broadcast:r},config:{messagePrefix:i,storagePrefix:l}}=this;yield s(x(i,e,1),(e=>S(this,[e],(function*([e,s]){"s"==e&&(yield R(n,l))&&(yield C(this,s,!1,t),r(P(i,"s",s),[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,i,l,s){return!0}canDelCell(e,t,n,r){return!0}canSetValue(e,t,n,r,i){return!0}canDelValue(e,t){return!0}}export{O as TinyBasePartyKitServer,R as hasStoreInStorage,b as loadStoreFromStorage};
|
|
Binary file
|
package/lib/es6/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),r="type",s="default",I="Listener",c="get",u="add",i="Ids",$="Table",p=$+"s",b=$+i,C="Row",h=C+i,m="Sorted"+C+i,g="Cell",f=g+i,w="Value",y=w+"s",v=w+i;var T=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const V=Promise,x=isFinite,R=e=>null==e,P=(e,t,l)=>R(e)?null==l?void 0:l():t(e),k=e=>e==n||e==o,S=t=>e(t)==n,A=e=>Array.isArray(e),O=(e,t,l)=>e.slice(t,l),E=e=>e.length,D=e=>T(void 0,null,(function*(){return V.all(e)})),j=t=>{const l=e(t);return k(l)||l==d&&x(t)?l:void 0},N=(e,t)=>e.every(t),G=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),M=(e,t=l)=>e.join(t),J=(e,t)=>e.map(t),z=(e,t)=>e.filter(t),W=(e,...t)=>e.push(...t),B=e=>e.pop(),F=(e,...t)=>e.unshift(...t),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),H=_.keys,Q=_.freeze,q=e=>!R(e)&&P(Z(e),(e=>e==_.prototype||R(Z(e))),(()=>!0)),K=(e,t)=>J(_.entries(e),(([e,l])=>t(l,e))),X=e=>E(H(e)),Y=e=>q(e)&&0==X(e),ee=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},te=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},le=(e,t)=>null==e?void 0:e.forEach(t),ae=(e,t)=>null==e?void 0:e.delete(t),ne=e=>new Map(e),oe=(e,t)=>null==e?void 0:e.get(t),de=(e,t)=>le(e,((e,l)=>t(l,e))),re=(e,t)=>{var l;return J([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},se=(e,t,l)=>R(l)?(ae(e,t),e):null==e?void 0:e.set(t,l),Ie=(e,t,l)=>(ee(e,t)||se(e,t,l()),oe(e,t)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",$e="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",be="Callback",Ce="Del",he="Deps",me=he+"?: React.DependencyList",ge="doRollback?: DoRollback",fe="actions: () => Return, "+ge,we="export",ye="Id",ve="Invalid",Te="Json",Ve=ue(I),xe="?: ",Re=" | undefined",Pe="NonNullable",ke="Partial",Se="Props",Ae="Provider",Oe=`Registers a ${Ve} that will be called`,Ee="Represents",De="rowId: "+ye,je="Schema",Ne="Set",Ge=", descending?: boolean, offset?: number, limit?: number",Le="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=ue(Je),Be="Execute a "+We+" to make multiple mutations",Fe="Explicitly starts a "+We,Ue="Explicitly finishes a "+We,_e="the end of the "+We,Ze="void",He=" => "+Ze,Qe="WhenSet",qe=" when setting it",Ke=ie+"string serialization of",Xe=" ",Ye="Gets a callback that can ",et="the ",tt=" the schema for",lt=(e=0,t=0)=>`the ${ft[e]}content of`+(t?Xe+Me:l),at=(e=0,t,a=0)=>ht[t]+Xe+lt(e,1)+(a?" when setting it":l),nt=(e,t=0)=>Ee+` a Row when ${t?"s":"g"}etting ${lt()} the '${e}' `+$,ot=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,dt=(e,t)=>`Calls a function for each ${e} in `+t,rt=e=>"The props passed to a component that renders "+e,st=e=>"A function that takes "+e,It=(e,t=0)=>$e+" listening to changes to "+gt[e]+" in "+gt[t],ct=(e,t,a=0)=>Oe+" whenever "+gt[e]+" in "+gt[t]+" change"+(a?l:"s"),ut=e=>`the '${e}' `+$,it=e=>"the specified Row in "+ut(e),$t=(e,t=0)=>ht[t]+` ${lt()} `+ut(e),pt=(e,t=0)=>ht[t]+` ${lt()} `+it(e),bt=(e,t,l=0)=>ht[l]+` the '${t}' Cell for `+it(e),Ct=(e,t=0)=>ht[t]+` the '${e}' Value`,ht=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ee,"Gets "+Ke,"Sets "+Ke,Oe+" whenever",Ye+"set",Ye+"add",Ye+"set part of",Ye+"delete","Renders","Gets "+Ke+tt,"Sets"+tt,"Deletes"+tt],mt=[c,"has","set","del","set","forEach",u,l],gt=[Me,p,et+$+Xe+i,ie+$,et+C+Xe+i,ie+C,et+g+Xe+i,ie+g,"invalid Cell changes",y,et+w+Xe+i,ie+w,"invalid Value changes",et+"sorted "+C+Xe+i,et+g+Xe+i+" anywhere",et+"number of Rows"],ft=[l,"tabular ","keyed value "],wt=e=>new Set(A(e)||R(e)?e:[e]),yt=(e,t)=>null==e?void 0:e.add(t),vt=/[^A-Za-z]+/,Tt=/[^A-Za-z0-9]+/,Vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,xt=e=>e.includes(a),Rt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return ee(e,n)?Rt(e,t,l,a+1):(se(e,n,l),n)},Pt=e=>e.replace(Vt,((e,t,l)=>{const a=77-E(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),kt=e=>e.flat(1e3),St=(e,t=0)=>M(J(e.split(Tt),((e,l)=>(l>0||t?ce:ue)(O(e,0,1))+O(e,1)))),At=e=>ce(M((e&&!vt.test(e[0])?e:" "+e).split(Tt),"_")),Ot=e=>`/** ${e}. */`,Et=(...e)=>M(z(e,(e=>e)),", "),Dt=(...e)=>"{"+M(e,"; ")+"}",jt=(...e)=>Dt(...J(e,(e=>"readonly "+e))),Nt=()=>{const e=[ne(),ne(),ne(),ne()],t=ne(),a=ne(),n=e=>{const t=e.indexOf(" as ");return-1!=t?O(e,t+4):e};return[(...e)=>M(kt(e),"\n"),(t,l,...a)=>L(a,(a=>L([0,1],(n=>(null!=t?t:n)==n?yt(Ie(e[n],l,wt),a):0)))),(e,a,n,o=l,d=1)=>Rt(t,e,[a,n,o,d]),(e,t,l)=>Rt(a,e,A(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>oe(a,e)===t?e:Rt(a,e,t),(t=0)=>J([...G(re(e[t],((e,t)=>`import {${M(G(te(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>xt(e)!=xt(t)?xt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>re(t,(([e,t,a,n],o)=>[Ot(t),`${n?we+" ":l}type ${o}${a} = ${e};`,l])),()=>re(a,((e,t)=>(e=A(e)?e:[e],W(e,B(e)+";"),[`const ${t} = ${U(e)}`,e,l])))]},Gt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>K(e,((e,a)=>t(a,St(a,1),l(At(a),`'${a}'`)))),(t,a)=>K(e[t],((e,t)=>a(t,e[r],e[s],l(At(t),`'${t}'`),St(t,1)))),e=>K(t,((t,a)=>e(a,t[r],t[s],l(At(a),`'${a}'`),St(a,1))))],Mt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(p,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...a(e,((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`)))+"}"))),at(1,5)),s=e(p+Qe,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),at(1,5,1)),c=e($+ye,"keyof "+r,"A "+$+" Id in "+Me),u=`<TId extends ${c}>`,i=e($,Pe+`<${r}[TId]>`,"A "+$+" in "+Me,u),w=e($+Qe,Pe+`<${s}[TId]>`,"A "+$+" in "+Me+qe,u),y=e(C,i+"<TId>[Id]","A "+C+" in a "+$,u),v=e(C+Qe,w+"<TId>[Id]","A "+C+" in a "+$+qe,u),T=e(g+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,u),V=e(g,Pe+`<${r}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${c}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${c}, CId = ${T}<TId>>`,0),P=e(g+be,`(...[cellId, cell]: ${x}<TId>)`+He,st(ie+g+" Id, and "+g),u),k=e(C+be,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+He+") "+He,st(ie+C+" Id, and a "+g+" iterator"),u),S=e($+g+be,`(cellId: ${T}<TId>, count: number) `+He,st(ie+g+" Id, and count of how many times it appears"),u),A=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${He}] : never`,$+" Ids and callback types",`<TId = ${c}>`,0),O=e($+be,`(...[tableId, forEachRow]: ${A})`+He,st(ie+$+" Id, and a "+C+" iterator"),l),E=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${E}) => CellChange`,$e+" returning information about any Cell's changes during a "+We),j=e(p+I,`(${d}, getCellChange: ${D}${Re})`+He,It(1)),N=e(b+I,`(${d})`+He,It(2)),G=e($+I,`(${d}, tableId: ${c}, getCellChange: ${D}${Re})`+He,It(3)),L=e($+f+I,`(${d}, tableId: ${c})`+He,It(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${c})`+He,It(15,3)),J=e(h+I,`(${d}, tableId: ${c})`+He,It(4,3)),z=e(m+I,"("+Et(d,"tableId: "+c,"cellId: Id"+Re,"descending: boolean","offset: number","limit: number"+Re,"sortedRowIds: Ids")+")"+He,It(13,3)),W=e(C+I,"("+Et(""+d,"tableId: "+c,De,`getCellChange: ${D}${Re}`)+")"+He,It(5,3)),B=e(f+I,"("+Et(""+d,"tableId: "+c,De)+")"+He,It(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${De}, cellId: CId, newCell: ${V}<TId, CId> ${Re}, oldCell: ${V}<TId, CId> ${Re}, getCellChange: ${D} ${Re}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${T}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[r,s,c,i,w,y,v,T,V,P,k,S,O,j,N,G,L,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+He,It(7,5)),e(ve+g+I,`(${d}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+He,It(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Dt(...n(((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`))),at(2,5)),r=e(y+Qe,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),at(2,5,1)),s=e(w+ye,"keyof "+d,"A "+w+" Id in "+Me),c=e(w,Pe+`<${d}[VId]>`,"A "+w+" Id in "+Me,`<VId extends ${s}>`),u=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+Me,`<VId = ${s}>`,0),i=e(w+be,`(...[valueId, value]: ${u})`+He,st(ie+w+" Id, and "+w)),$=e("GetValueChange",`(valueId: ${s}) => ValueChange`,$e+" returning information about any Value's changes during a "+We),p=e(y+I,`(${o}, getValueChange: ${$}${Re})`+He,It(9)),b=e(v+I,`(${o})`+He,It(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${c}<VId> ${Re}, oldValue: ${c}<VId> ${Re}, getValueChange: ${$} ${Re}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,c,i,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+He,It(11)),e(ve+w+I,`(${o}, valueId: Id, invalidValues: any[])`+He,It(12))]},(t,l)=>e(Je+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+He,$e+" listening to the completion of a "+We)],Jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),zt=(e,t=l)=>`fluent(() => ${Jt(e,t)})`,Wt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Bt=(e,a,n)=>{const[d,c,T,V,x,P,k,A]=Nt(),[O,E,D]=Lt(e,a,x),[j,N,G]=Mt(T,O,E,D),J=ne(),z=(e=0)=>re(J,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||F(s,Ot(o)),W(s,l),s})),B=(e,t,a,n,o,d=l)=>Rt(J,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,r=l,s=l)=>B(mt[e]+t+(4==e?ke:l)+a,d,n,(n==H?zt:Jt)(mt[e]+(4==e?ke:l)+a,r,e?void 0:n),o,s),_=(e,t,a,n=l,o=l,d=1,r=l)=>B(u+e+I,(n?n+", ":l)+Ve+": "+t+(d?", mutator?: boolean":l),ye,Wt(u+e+I,o,d?"mutator":l),a,r),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),q=[],K=ne();let X=[],ee=[];if(c(1,Z,H,`create${H} as create${H}Decl`),Y(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,i);const[e,a,n,d,I,u,w,y,v,V,P,k,A,D,N,G,J,z,B,F,Y,ee,le,ae]=j(Q,H),de=ne();O(((e,t)=>{const l=`<'${e}'>`,a=[T(t+$,d+l,Ee+` the '${e}' `+$),T(t+$+Qe,I+l,Ee+` the '${e}' `+$+qe),T(t+C,u+l,nt(e)),T(t+C+Qe,w+l,nt(e,1)),T(t+g+ye,y+l,`A Cell Id for the '${e}' `+$),T(t+g+be,V+l,st(`a Cell Id and value from a Row in the '${e}' `+$)),T(t+C+be,P+l,st(`a Row Id from the '${e}' Table, and a Cell iterator`)),T(t+$+g+be,k+l,st(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];se(de,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,A,D,N,G,J,z,B,F,Y,ee,le,ae),X=[e,a,n,y,D,N,G,J,z,B,F,Y,ee,le,de],L([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,at(1,n),t,a))),U(0,l,b,n+Le,ot($,Me)),U(5,l,$,Ze,dt($,Me),"tableCallback: "+A,"tableCallback as any"),O(((e,t,a)=>{const[n,d,r,s,I,c,u,p]=oe(de,e);L([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],r)=>U(r,t,$,n,$t(e,r),o,a+d))),U(0,t,$+f,i,ot(g,"the whole of "+ut(e)),l,a),U(5,t,$+g,Ze,dt($+g,"the whole of "+ut(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+ut(e),l,a),U(0,t,h,i,ot(C,ut(e)),l,a),U(0,t,m,i,ot(C,ut(e),1),"cellId?: "+I+Ge,a+", cellId, descending, offset, limit"),U(5,t,C,Ze,dt(C,ut(e)),"rowCallback: "+u,a+", rowCallback as any"),L([[r],[o],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>U(r,t,C,n,pt(e,r),De+o,a+", rowId"+d))),U(6,t,C,ye+Re,"Add a new Row to "+ut(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Le,ot(g,it(e)),De,a+", rowId"),U(5,t,g,Ze,dt(g,it(e)),De+", cellCallback: "+c,a+", rowId, cellCallback as any"),E(e,((n,d,r,s,I)=>{const c="Map"+St(d,1);se(K,d,c);const u=d+(R(r)?Re:l);L([[u],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,r=l],c)=>U(c,t+I,g,o,bt(e,n,c),De+d,a+", rowId, "+s+r))),U(1,t+I,$+g,o,ht[1]+` the '${n}' Cell anywhere in `+ut(e),l,a+", "+s)}))})),U(0,l,p+Te,Te,at(1,6)),U(2,l,p+Te,H,at(1,7),"tablesJson: "+Te,"tables"+Te),_(p,D,at(1,8)+" changes"),_(b,N,ct(2,0,1)),_($,G,ct(3,0),`tableId: ${n} | null`,"tableId"),_($+f,J,ct(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",z,ct(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,ct(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,ct(13,3,1),Et("tableId: TId",`cellId: ${y}<TId>`+Re,"descending: boolean","offset: number","limit: number"+Re),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,Y,ct(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,ee,ct(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,ct(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(O((e=>{var t,a;return null!=(a=null==(t=oe(de,e))?void 0:t[4])?a:l}))," | ")} | null`,"tableId, rowId, cellId"),_(ve+g,ae,Oe+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...te(K)),W(q,".set"+p+je+"({",kt(O(((e,t,a)=>[`[${a}]: {`,...E(e,((e,t,a,n)=>`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(a)?l:`, [${x(At(s),`'${s}'`)}]: `+(S(a)?x(At(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Y(a))c(null,t,y);else{const[e,a,n,d,I,u,i,$,p]=N(Q,H);c(1,Z,e,a,n,I,u,i,$,p),ee=[e,a,n,u,i,$],L([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,at(2,n),t,a))),U(0,l,v,n+Le,ot(w,Me)),U(5,l,w,"void",dt(w,Me),"valueCallback: "+I,"valueCallback as any"),D(((e,t,a,n,d)=>{const r="Map"+St(t,1);se(K,t,r),L([[t],[o],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,a,o=l],r)=>U(r,d,w,t,Ct(e,r),a,n+o)))})),U(0,l,y+Te,Te,at(2,6)),U(2,l,y+Te,H,at(2,7),"valuesJson: "+Te,"values"+Te),_(y,u,at(2,8)+" changes"),_(v,i,ct(10,0,1)),_(w,$,ct(11,0),`valueId: ${n} | null`,"valueId"),_(ve+w,p,Oe+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...te(K)),c(0,t,"ValueChange"),W(q,".set"+y+je+"({",D(((e,t,a,n)=>[`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(a)?l:`, [${x(At(s),`'${s}'`)}]: `+(S(a)?x(At(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,at(0,0)),U(2,l,"Content",H,at(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,ze,H,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),de(K,((e,t)=>T(t,`(cell: ${e}${Re}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",ye,"IdOrNull",Te,"Store",ze),c(0,t,"Get"+ze,"GetTransactionLog"),U(0,l,Te,Te,at(0,6)),U(2,l,Te,H,at(0,7),"tablesAndValuesJson: "+Te,"tablesAndValuesJson"),U(7,l,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,l,"start"+Je,H,Fe),U(7,l,"finish"+Je,H,Ue,ge,"doRollback");const le=G(Q,H);return _("Start"+Je,le,Oe+" just before the start of the "+We,l,l,0),_("WillFinish"+Je,le,Oe+" just before "+_e,l,l,0),_("DidFinish"+Je,le,Oe+" just after "+_e,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),B("getStore",l,"Store","store",ht[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,le),x("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...z(1),"}"]),[d(...P(0),...k(),we+" interface "+H+" {",...z(0),"}",l,Ot(`Creates a ${H} object`),we+" function create"+H+"(): "+H+";"),d(...P(1),we+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),X,ee]},Ft=e=>c+e,Ut=e=>Et(Ft(e),Ft(e)+he),_t="debugIds?: boolean",Zt="debugIds={debugIds}",Ht="then"+me,Qt="Parameter",qt=": (parameter: "+Qt+", store: Store) => ",Kt="const contextValue = useContext(Context);",Xt=", based on a parameter",Yt=": ",el="<"+Qt+",>",tl=Qt+"ized"+be+"<"+Qt+">",ll="rowId",al="rowId={rowId}",nl=", separator, debugIds",ol="separator?: ReactElement | string",dl="then?: (store: Store",rl=Et(dl+")"+He,Ht),sl="then, then"+he,Il=ll+Yt+ye,cl="View",ul=(e,...t)=>Et(...t,Ve+": "+e,Ve+me,"mutator?: boolean"),il=(...e)=>Et(...e,Ve,Ve+he,"mutator"),$l=(e,a,n,o,d)=>{const[r,s,c,u,T,V,x,P]=Nt(),[k,S,A]=Lt(e,a,T),O=`./${St(n)}.d`,E=`./${St(n)}-ui-react.d`,D="tinybase/ui-react",j=St(n,1),N=St(j),G=j+"Or"+j+ye,L=N+"Or"+j+ye,J=N+`={${N}}`,z=ne(),B=(e,t,a,n,o,d=l)=>(s(1,E,e+" as "+e+"Decl"),Rt(z,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>B("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,r=l,I=l,c=l)=>(s(1,D,`use${t} as use${t}Core`),U(e,Et(o,K,I),a,ee+`(${L}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,r)),Z=(e,t,l,a)=>B(e,t,1,l,a),H=(e=0)=>re(z,(([t,a,n,o,d],r)=>{const s=e?[we+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[we+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||F(s,Ot(o)),W(s,l),s}));s(null,t,ye,"Store",be,Qt+"ized"+be),s(0,D,"ComponentReturnType"),s(1,D,"useCellIds"),s(null,D,"ExtraProps"),s(0,O,j);const Q=c(G,j+" | "+ye,`Used when you need to refer to a ${j} in a React hook or component`),q=c(Ae+Se,jt(N+xe+j,N+`ById?: {[${N}Id: Id]: ${j}}`),`Used with the ${Ae} component, so that a `+j+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,E,Q,q);const K=L+xe+Q;T("{createContext, useContext, useMemo}","React"),T("Context",`createContext<[${j}?, {[${N}Id: Id]: ${j}}?]>([])`),U("Create"+j,`create: () => ${j}, create`+me,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const X=U(j,"id?: Id",j+Re,["{",Kt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ae} component context`),ee=u("useHook",L+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${N} = ${X}(${L} as Id);`,`return hook(...preParams, ((${L} == null || typeof ${L} == 'string')`,`? ${N} : ${L})?.getStore(), ...postParams)`]),te=u("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=u("wrap",Et("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),ae=u("useCustomOrDefaultCellIds",Et("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${L}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${L}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),de=T("NullComponent","() => null");if(!Y(e)){const[e,a,n,d,r,w,y,v,T,V,x,P,A,D,G]=o;s(null,O,e,a,n,r,w,y,v,T,V,x,P,A,D),s(0,O,d),s(1,O,j),s(null,t,i,"IdOrNull");const L=u("tableView",`{${N}, rowComponent, getRowComponentProps, customCellIds`+nl+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${le}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",al,"customCellIds={customCellIds}",J,Zt,"/>","))",nl,", tableId,",");"]),z=u("getDefaultTableComponent","tableId: Id",M(k(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),W=u("getDefaultCellComponent","tableId: Id, cellId: Id",M(k(((e,t,l)=>`tableId == ${l} ? ${M(S(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(p,p,e,at(1,0)+pe);const B=_(b,b,n+Le,ot($,Me)+pe);_(Ne+p+be,Ne+p+be,tl,at(1,9)+Xt,Et(Ft(p)+qt+a,Ft(p)+me),Ut(p),el,Et(dl,`tables: ${a})`+He,Ht),sl),_(Ce+p+be,Ce+p+be,be,at(1,12),l,l,l,rl,sl);const F=c(g+Se,jt("tableId?: TId","rowId: Id","cellId?: CId",N+xe+j,_t),rt(ie+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=c(C+Se,jt("tableId?: TId","rowId: Id",N+xe+j,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,ol,_t),rt(ie+C),`<TId extends ${n}>`),H=c($+Se,jt("tableId?: TId",N+xe+j,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),rt(ie+$),`<TId extends ${n}>`),Q=c("Sorted"+$+Se,jt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",N+xe+j,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),rt(ie+"sorted "+$),`<TId extends ${n}>`),q=c(p+Se,jt(N+xe+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,ol,_t),rt(lt(1,1)));s(1,E,q,H,Q,U,F),Z(p+cl,"{"+N+", tableComponents, getTableComponentProps"+nl+"}: "+q,[le+`(${B}(${N}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+z+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${te}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Zt,"/>;","}), separator)"],at(1,13)+pe),k(((e,t,a)=>{const[n,o,d,r,I]=oe(G,e);s(null,O,n,o,d,r,I),_(t+$,$,n,$t(e)+pe,l,a),_(t+$+f,$+f,i,ot(g,"the whole of "+ut(e))+pe,l,a);const c=_(t+h,h,i,ot(C,ut(e))+pe,l,a),u=_(t+m,m,i,ot(C,ut(e),1)+pe,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,pt(e)+pe,Il,Et(a,ll)),_(t+f,f,I+Le,ot(g,it(e))+pe,Il,Et(a,ll)),_(Ne+t+$+be,Ne+$+be,tl,$t(e,9)+Xt,Et(Ft($)+qt+o,Ft($)+me),Et(a,Ut($)),el,Et(dl,`table: ${o})`+He,Ht),sl),_(Ce+t+$+be,Ce+$+be,be,$t(e,12),l,a,l,rl,sl),_(Ne+t+C+be,Ne+C+be,tl,pt(e,9)+Xt,Et(Il,Ft(C)+qt+r,Ft(C)+me),Et(a,ll,Ut(C)),el,Et(dl,`row: ${r})`+He,Ht),sl),_("Add"+t+C+be,"Add"+C+be,tl,pt(e,10)+Xt,Et(Ft(C)+qt+r,Ft(C)+me),Et(a,Ut(C)),el,"then?: ("+Et(Il+Re,"store: Store","row: "+r+")"+He,"then"+me)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(Ne+t+ke+C+be,Ne+ke+C+be,tl,pt(e,11)+Xt,Et(Il,Ft(ke+C)+qt+r,Ft(ke+C)+me),Et(a,ll,Ut(ke+C)),el,Et(dl,`partialRow: ${r})`+He,Ht),sl),_(Ce+t+C+be,Ce+C+be,be,pt(e,12),Il,Et(a,ll),l,rl,sl);const p=Z(t+C+cl,"{rowId, "+N+", cellComponents, getCellComponentProps, customCellIds"+nl+`}: ${U}<'${e}'>`,[le+`(${ae}(customCellIds, `+a+`, rowId, ${N}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,al,"cellId={cellId}",J,Zt,"/>;","})"+nl+", rowId)"],pt(e,13)+pe);Z(t+"Sorted"+$+cl,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,L+"(props, "+u+`(cellId, descending, offset, limit, props.${N}), ${a}, ${p});`,$t(e,13)+", sorted"+pe),Z(t+$+cl,`props: ${H}<'${e}'>`,L+"(props, "+c+`(props.${N}), ${a}, ${p});`,$t(e,13)+pe),S(e,((n,o,d,r,I)=>{const c="Map"+St(o,1);s(0,O,c),s(1,O,c);const u=_(t+I+g,g,o+(R(d)?Re:l),bt(e,n)+pe,Il,Et(a,ll,r));_(Ne+t+I+g+be,Ne+g+be,tl,bt(e,n,9)+Xt,Et(Il,Ft(g)+qt+o+" | "+c,Ft(g)+me),Et(a,ll,r,Ut(g)),el,Et(dl,`cell: ${o} | ${c})`+He,Ht),sl),_(Ce+t+I+g+be,Ce+g+be,be,bt(e,n,12),Et(Il,"forceDel?: boolean"),Et(a,ll,r,"forceDel"),l,rl,sl),Z(t+I+g+cl,`{rowId, ${N}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${u}(rowId, `+N+`) ?? '', undefined, debugIds, ${r})`],bt(e,n,13)+pe)}))}));const K=M(k((e=>{var t,a;return null!=(a=null==(t=oe(G,e))?void 0:t[4])?a:l}))," | ");_(p+I,p+I,Ze,at(1,8)+" changes",ul(r),il()),_(b+I,b+I,Ze,ct(2,0,1),ul(w),il()),_($+I,$+I,Ze,ct(3,0),ul(y,`tableId: ${n} | null`),il("tableId")),_($+f+I,$+f+I,Ze,ct(14,3,1),ul(v,`tableId: ${n} | null`),il("tableId")),_(h+I,h+I,Ze,ct(4,3,1),ul(V,`tableId: ${n} | null`),il("tableId")),_(m+I,m+I,Ze,ct(13,3,1),ul(x,`tableId: ${n} | null`,"cellId: "+K+Re,"descending: boolean","offset: number","limit: number"+Re),il("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Ze,ct(5,3),ul(P,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(f+I,f+I,Ze,ct(6,5,1),ul(A,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(g+I,g+I,Ze,ct(7,5),ul(D,`tableId: ${n} | null`,ll+": IdOrNull",`cellId: ${K} | null`),il("tableId",ll,"cellId"))}if(!Y(a)){const[e,t,a,n,o,r]=d;s(null,O,...d),s(1,O,j);const i=u("getDefaultValueComponent","valueId: Id",M(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(y,y,e,at(2,0)+pe);const $=_(v,v,a+Le,ot(w,Me)+pe);_(Ne+y+be,Ne+y+be,tl,at(2,9)+Xt,Et(Ft(y)+qt+t,Ft(y)+me),Ut(y),el,Et(dl,`values: ${t})`+He,Ht),sl),_(Ne+ke+y+be,Ne+ke+y+be,tl,at(2,11)+Xt,Et(Ft(ke+y)+qt+t,Ft(ke+y)+me),Ut(ke+y),el,Et(dl,`partialValues: ${t})`+He,Ht),sl),_(Ce+y+be,Ce+y+be,be,at(2,12),l,l,l,rl,sl);const p=c(w+Se,jt("valueId?: VId",N+xe+j,_t),rt("a Value"),`<VId extends ${a}>`),b=c(y+Se,jt(N+xe+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,ol,_t),rt(lt(2,1)));s(1,E,b,p),Z(y+cl,"{"+N+", valueComponents, getValueComponentProps"+nl+"}: "+b,[le+`(${$}(${N}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,Zt,"/>;","}), separator)"],at(2,13)+pe),A(((e,t,a,n,o)=>{const d="Map"+St(t,1);s(0,O,d),s(1,O,d);const r=_(o+w,w,t,Ct(e)+pe,l,n);_(Ne+o+w+be,Ne+w+be,tl,Ct(e,9)+Xt,Et(Ft(w)+qt+t+" | "+d,Ft(w)+me),Et(n,Ut(w)),el,Et(dl,`value: ${t} | ${d})`+He,Ht),sl),_(Ce+o+w+be,Ce+w+be,be,Ct(e,12),l,n,l,rl,sl),Z(o+w+cl,`{${N}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${r}(`+N+`) ?? '', undefined, debugIds, ${n})`],Ct(e,13)+pe)})),_(y+I,y+I,Ze,at(2,8)+" changes",ul(n),il()),_(v+I,v+I,Ze,ct(10,0,1),ul(o),il()),_(w+I,w+I,Ze,ct(11,0),ul(r,`valueId: ${a} | null`),il("valueId"))}return Z(Ae,`{${N}, ${N}ById, children}: `+q+" & {children: React.ReactNode}",["{",Kt,"return (","<Context."+Ae,"value={useMemo(",`() => [${N} ?? contextValue[0], {...contextValue[1], ...${N}ById}],`,`[${N}, ${N}ById, contextValue],`,")}>","{children}",`</Context.${Ae}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...P(),...H(1))]},pl=(e,t,a)=>{if(Y(e)&&Y(t))return[l,l,l,l];const[n,o,d,r]=Bt(e,t,a);return[n,o,...$l(e,t,a,d,r)]},bl=JSON.parse;var Cl=Object.defineProperty,hl=Object.defineProperties,ml=Object.getOwnPropertyDescriptors,gl=Object.getOwnPropertySymbols,fl=Object.prototype.hasOwnProperty,wl=Object.prototype.propertyIsEnumerable,yl=(e,t,l)=>t in e?Cl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,vl=(e,t)=>{for(var l in t||(t={}))fl.call(t,l)&&yl(e,l,t[l]);if(gl)for(var l of gl(t))wl.call(t,l)&&yl(e,l,t[l]);return e},Tl=(e,t)=>hl(e,ml(t)),Vl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const xl="prettier/",Rl=xl+"plugins/",Pl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},kl=Gt((e=>{const t=()=>{const t=bl(e.getTablesSchemaJson());return!Y(t)||N(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ne();if(N(a,(t=>N(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=Ie(n,a,(()=>[j(o),ne(),[0],0])),[r,s,[I]]=d,c=Ie(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),se(s,o,c),d[3]++,r==j(o)})))))return t[l]={},le(n,(([e,,[,n],o],d)=>{t[l][d]=vl({[r]:e},o==E(a)?{[s]:n}:{})})),1}))?t:{}},l=()=>{const t=bl(e.getValuesSchemaJson());return Y(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:j(l)}})),t},a=e=>pl(t(),l(),e),n=e=>Vl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(yield import(xl+"standalone")).format,W(l,yield import(Rl+"estree"),yield import(Rl+"typescript"))}catch(e){n=e=>Vl(void 0,null,(function*(){return e}))}return yield D(J(a(e),((e,a)=>Vl(void 0,null,(function*(){return Pt(yield n(e,Tl(vl({},Pl),{plugins:l,filepath:"_."+t[a]})))})))))}));return Q({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),vl({totalTables:l,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{kl as createTools};
|
|
1
|
+
const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),o=e(!0),d=e(0),r="type",s="default",I="Listener",u="get",c="add",$="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",m=h+i,g="Sorted"+h+i,f="Cell",w=f+i,y="Value",v=y+"s",T=y+i;var x=(e,l,t)=>new Promise(((a,n)=>{var o=e=>{try{r(t.next(e))}catch(e){n(e)}},d=e=>{try{r(t.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((t=t.apply(e,l)).next())}));const V=Promise,R=isFinite,P=e=>null==e,A=(e,l,t)=>P(e)?null==t?void 0:t():l(e),k=e=>e==n||e==o,S=l=>e(l)==n,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),L=e=>e.length,D=e=>x(void 0,null,(function*(){return V.all(e)})),N=l=>{const t=e(l);return k(t)||t==d&&R(l)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=t)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.keys,q=_.freeze,K=e=>!P(e)&&A(Z(e),(e=>e==_.prototype||P(Z(e))),(()=>!0)),X=(e,l)=>J(_.entries(e),(([e,t])=>l(t,e))),Y=e=>L(Q(e)),ee=e=>K(e)&&0==Y(e),le=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},te=e=>{var l;return[...null!=(l=null==e?void 0:e.values())?l:[]]},ae=(e,l)=>null==e?void 0:e.forEach(l),ne=(e,l)=>null==e?void 0:e.delete(l),oe=e=>new Map(e),de=(e,l)=>null==e?void 0:e.get(l),re=(e,l)=>ae(e,((e,t)=>l(t,e))),se=(e,l)=>{var t;return J([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>l(t,e)))},Ie=(e,l,t)=>P(t)?(ne(e,l),e):null==e?void 0:e.set(l,t),ue=(e,l,t)=>(le(e,l)||Ie(e,l,t()),de(e,l)),ce=e=>e.toUpperCase(),$e=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Count",me="Del",ge="Deps",fe=ge+"?: React.DependencyList",we="doRollback?: DoRollback",ye="actions: () => Return, "+we,ve="export",Te="Id",xe="Invalid",Ve="Json",Re=$e(I),Pe="?: ",Ae=" | undefined",ke="NonNullable",Se="Partial",Oe="Props",Ee="Provider",Le=`Registers a ${Re} that will be called`,De="Represents",Ne="rowId: "+Te,je="Schema",Ge="Set",He=", descending?: boolean, offset?: number, limit?: number",Me="[]",Je="the Store",ze="Transaction",We=ze+"Changes",Be=$e(ze),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,a=0)=>nl(a)+`the ${vl[e]}content of`+(l?el+Je:t),dl=(e=0,l,a=0,n=0)=>fl[l]+el+nl(n)+ol(e,1)+(a?" when setting it":t),rl=(e,l=0)=>De+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+b,sl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,ul=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,$l=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+yl[e]+" in "+yl[l],il=(e,l,a=0,n=0)=>Le+" whenever "+nl(n)+yl[e]+" in "+yl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>fl[l]+el+ol(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>fl[l]+` ${ol(0,0,t)} `+pl(e),ml=(e,l,t=0,a=0)=>fl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),gl=(e,l=0,t=0)=>fl[l]+el+nl(t)+`the '${e}' Value`,fl=["Gets","Checks existence of","Sets","Deletes","Sets part of",De,"Gets "+Ye,"Sets "+Ye,Le+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],wl=[u,"has","set","del","set","forEach",c,t],yl=[Je,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+f+el+i,ie+f,"invalid Cell changes",v,tl+y+el+i,ie+y,"invalid Value changes",tl+"sorted "+h+el+i,tl+f+el+i+" anywhere",tl+"number of Rows",ie+f+" anywhere"],vl=[t,"tabular ","keyed value "],Tl=e=>new Set(O(e)||P(e)?e:[e]),xl=(e,l)=>null==e?void 0:e.add(l),Vl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Pl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Al=e=>e.includes(a),kl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?kl(e,l,t,a+1):(Ie(e,n,t),n)},Sl=e=>e.replace(Pl,((e,l,t)=>{const a=77-L(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>M(J(e.split(Rl),((e,t)=>(t>0||l?ce:$e)(E(e,0,1))+E(e,1)))),Ll=e=>ce(M((e&&!Vl.test(e[0])?e:" "+e).split(Rl),"_")),Dl=e=>`/** ${e}. */`,Nl=(...e)=>M(z(e,(e=>e)),", "),jl=(...e)=>"{"+M(e,"; ")+"}",Gl=(...e)=>jl(...J(e,(e=>"readonly "+e))),Hl=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),a=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(Ol(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(null!=l?l:n)==n?xl(ue(e[n],t,Tl),a):0)))),(e,a,n,o=t,d=1)=>kl(l,e,[a,n,o,d]),(e,l,t)=>kl(a,e,O(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>de(a,e)===l?e:kl(a,e,l),(l=0)=>J([...G(se(e[l],((e,l)=>`import {${M(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Al(e)!=Al(l)?Al(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>se(l,(([e,l,a,n],o)=>[Dl(l),`${n?ve+" ":t}type ${o}${a} = ${e};`,t])),()=>se(a,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,t])))]},Ml=e=>{const l=new WeakMap;return t=>(l.has(t)||l.set(t,e(t)),l.get(t))},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Ll(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[r],e[s],t(Ll(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[r],l[s],t(Ll(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(p,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...a(e,((e,l,a)=>`'${e}'${P(a)?"?":t}: ${l}`)))+"}"))),dl(1,5)),s=e(p+Ke,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),dl(1,5,1)),u=e(b+Te,"keyof "+r,"A "+b+" Id in "+Je),c=`<TId extends ${u}>`,i=e(b,ke+`<${r}[TId]>`,"A "+b+" in "+Je,c),y=e(b+Ke,ke+`<${s}[TId]>`,"A "+b+" in "+Je+Xe,c),v=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),T=e(h+Ke,y+"<TId>[Id]","A "+h+" in a "+b+Xe,c),x=e(f+Te,`Extract<keyof ${v}<TId>, Id>`,"A "+f+" Id in a "+h,c),V=e(f,ke+`<${r}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${u}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${u}, CId = ${x}<TId>>`,0),A=e(f+Ce,`(...[cellId, cell]: ${R}<TId>)`+qe,cl(ie+f+" Id, and "+f),c),k=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+f+" iterator"),c),S=e(b+f+Ce,`(cellId: ${x}<TId>, count: number) `+qe,cl(ie+f+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${u} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${u}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${u} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${u}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),N=e($+p+I,`(${d}, hasTables: boolean)`+qe,$l(1,0,1)),j=e(p+I,`(${d}, getCellChange: ${D}${Ae})`+qe,$l(1)),G=e(C+I,`(${d})`+qe,$l(2)),H=e($+b+I,`(${d}, tableId: ${u}, hasTable: boolean)`+qe,$l(3,0,1)),M=e(b+I,`(${d}, tableId: ${u}, getCellChange: ${D}${Ae})`+qe,$l(3)),J=e(b+w+I,`(${d}, tableId: ${u})`+qe,$l(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${d}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${u}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${u} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${u}>`,0),B=e($+b+f+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,$l(16,3,1)),F=e(h+"Count"+I,`(${d}, tableId: ${u})`+qe,$l(15,3)),U=e(m+I,`(${d}, tableId: ${u})`+qe,$l(4,3)),_=e(g+I,"("+Nl(d,"tableId: "+u,"cellId: Id"+Ae,"descending: boolean","offset: number","limit: number"+Ae,"sortedRowIds: Ids")+")"+qe,$l(13,3)),Z=e($+h+I,"("+Nl(""+d,"tableId: "+u,Ne,"hasRow: boolean")+")"+qe,$l(5,3,1)),Q=e(h+I,"("+Nl(""+d,"tableId: "+u,Ne,`getCellChange: ${D}${Ae}`)+")"+qe,$l(5,3)),q=e(w+I,"("+Nl(""+d,"tableId: "+u,Ne)+")"+qe,$l(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${d}, tableId: TId, ${Ne}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${u}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${u} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${u}>`,0),Y=e($+f+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,$l(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${d}, tableId: TId, ${Ne}, cellId: CId, newCell: ${V}<TId, CId> ${Ae}, oldCell: ${V}<TId, CId> ${Ae}, getCellChange: ${D} ${Ae}] : never`,"Cell args for CellListener",`<TId extends ${u}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${u} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${u}>`,0);return[r,s,u,i,y,v,T,x,V,A,k,S,E,N,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(f+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,$l(7,5)),e(xe+f+I,`(${d}, tableId: Id, ${Ne}, cellId: Id, invalidCells: any[])`+qe,$l(8))]},(l,a)=>{const o=l+": "+a,d=e(v,jl(...n(((e,l,a)=>`'${e}'${P(a)?"?":t}: ${l}`))),dl(2,5)),r=e(v+Ke,jl(...n(((e,l)=>`'${e}'?: ${l}`))),dl(2,5,1)),s=e(y+Te,"keyof "+d,"A "+y+" Id in "+Je),u=e(y,ke+`<${d}[VId]>`,"A "+y+" Id in "+Je,`<VId extends ${s}>`),c=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${u}<VId>] : never`,y+" Ids and types in "+Je,`<VId = ${s}>`,0),i=e(y+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${s}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e($+v+I,`(${o}, hasValues: boolean)`+qe,$l(9,0,1)),C=e(v+I,`(${o}, getValueChange: ${b}${Ae})`+qe,$l(9)),h=e(T+I,`(${o})`+qe,$l(10)),m=e($+y+I,`(${o}, valueId: ValueId, hasValue: boolean)`+qe,$l(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${u}<VId> ${Ae}, oldValue: ${u}<VId> ${Ae}, getValueChange: ${b} ${Ae}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,u,i,p,C,h,m,e(y+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+qe,$l(11)),e(xe+y+I,`(${o}, valueId: Id, invalidValues: any[])`+qe,$l(12))]},(l,t)=>e(ze+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[d,u,x,V,R,A,k,O]=Hl(),[E,L,D]=Jl(e,a,R),[N,j,G]=zl(x,E,L,D),J=oe(),z=(e=0)=>se(J,(([l,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${l}): ${a} => ${n},`]:[r+d+`(${l}): ${a};`];return e||F(s,Dl(o)),W(s,t),s})),B=(e,l,a,n,o,d=t)=>kl(J,e,[l,a,n,o,d]),U=(e,l,a,n,o,d=t,r=t,s=t)=>B(wl[e]+l+(4==e?Se:t)+a,d,n,(n==Q?Bl:Wl)(wl[e]+(4==e?Se:t)+a,r,e?void 0:n),o,s),_=(e,l,a,n=t,o=t,d=1,r=t)=>B(c+e+I,(n?n+", ":t)+Re+": "+l+(d?", mutator?: boolean":t),Te,Fl(c+e+I,o,d?"mutator":t),a,r),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=oe();let Y=[],le=[];if(u(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))u(null,l,p);else{u(0,l,"CellChange"),u(null,l,i);const[e,a,n,d,I,c,y,v,T,V,A,k,O,D,j,G,J,z,B,F,ee,le,ae,ne,re,se,ue,ce,$e]=N(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[x(l+b,d+t,De+` the '${e}' `+b),x(l+b+Ke,I+t,De+` the '${e}' `+b+Xe),x(l+h,c+t,rl(e)),x(l+h+Ke,y+t,rl(e,1)),x(l+f+Te,v+t,`A Cell Id for the '${e}' `+b),x(l+f+Ce,V+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),x(l+h+Ce,A+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),x(l+b+f+Ce,k+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),u(1,Z,...a)})),u(1,Z,e,a,n,v,O,D,j,G,J,z,B,F,ee,le,ae,ne,re,se,ue,ce,$e),Y=[e,a,n,v,D,j,G,J,z,B,F,ee,le,ae,ne,re,se,ue,ce,ie],H([[e],[o],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,dl(1,n),l,a))),U(0,t,C,n+Me,sl(b,Je)),U(5,t,b,Qe,Il(b,Je),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,d,r,s,I,u,c,$]=de(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,o,d=t],r)=>U(r,l,b,n,Cl(e,r),o,a+d))),U(0,l,b+w,i,sl(f,"the whole of "+bl(e)),t,a),U(5,l,b+f,Qe,Il(b+f,"the whole of "+bl(e)),"tableCellCallback: "+$,a+", tableCellCallback as any"),U(0,l,h+he,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,m,i,sl(h,bl(e)),t,a),U(0,l,g,i,sl(h,bl(e),1),"cellId?: "+I+He,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),H([[r],[o],[Q,", row: "+s,", row"],[Q],[Q,", partialRow: "+s,", partialRow"]],(([n,o=t,d=t],r)=>U(r,l,h,n,hl(e,r),Ne+o,a+", rowId"+d))),U(6,l,h,Te+Ae,"Add a new Row to "+bl(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,w,I+Me,sl(f,pl(e)),Ne,a+", rowId"),U(5,l,f,Qe,Il(f,pl(e)),Ne+", cellCallback: "+u,a+", rowId, cellCallback as any"),L(e,((n,d,r,s,I)=>{const u="Map"+El(d,1);Ie(X,d,u);const c=d+(P(r)?Ae:t);H([[c],[o],[Q,`, cell: ${d} | `+u,", cell as any"],[Q]],(([o,d=t,r=t],u)=>U(u,l+I,f,o,ml(e,n,u),Ne+d,a+", rowId, "+s+r))),U(1,l+I,b+f,o,fl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+s)}))})),U(0,t,p+Ve,Ve,dl(1,6)),U(2,t,p+Ve,Q,dl(1,7),"tablesJson: "+Ve,"tables"+Ve),_($+p,D,dl(1,8,0,1)+" changes"),_(p,j,dl(1,8)+" changes"),_(C,G,il(2,0,1)),_($+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,z,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+w,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_($+b+f,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>{var l,a;return null!=(a=null==(l=de(ie,e))?void 0:l[4])?a:t}))," | ")} | null`,"tableId, cellId"),_(h+he,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,ae,il(13,3,1),Nl("tableId: TId",`cellId: ${v}<TId>`+Ae,"descending: boolean","offset: number","limit: number"+Ae),Nl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_($+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,re,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,se,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_($+f,ue,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>{var l,a;return null!=(a=null==(l=de(ie,e))?void 0:l[4])?a:t}))," | ")} | null`,"tableId, rowId, cellId"),_(f,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>{var l,a;return null!=(a=null==(l=de(ie,e))?void 0:l[4])?a:t}))," | ")} | null`,"tableId, rowId, cellId"),_(xe+f,$e,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),u(1,Z,...te(X)),W(K,".set"+p+je+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${R(Ll(r),`'${r}'`)}]: ${R(Ll(l),`'${l}'`)}${P(a)?t:`, [${R(Ll(s),`'${s}'`)}]: `+(S(a)?R(Ll(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))u(null,l,v);else{const[e,a,n,d,I,c,i,b,p,C,h]=j(q,Q);u(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],H([[e],[o],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,v,e,dl(2,n),l,a))),U(0,t,T,n+Me,sl(y,Je)),U(5,t,y,"void",Il(y,Je),"valueCallback: "+I,"valueCallback as any"),D(((e,l,a,n,d)=>{const r="Map"+El(l,1);Ie(X,l,r),H([[l],[o],[Q,`value: ${l} | `+r,", value as any"],[Q]],(([l,a,o=t],r)=>U(r,d,y,l,gl(e,r),a,n+o)))})),U(0,t,v+Ve,Ve,dl(2,6)),U(2,t,v+Ve,Q,dl(2,7),"valuesJson: "+Ve,"values"+Ve),_($+v,c,dl(2,8,0,1)+" changes"),_(v,i,dl(2,8)+" changes"),_(T,b,il(10,0,1)),_($+y,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(xe+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),u(1,Z,...te(X)),u(0,l,"ValueChange"),W(K,".set"+v+je+"({",D(((e,l,a,n)=>[`[${n}]: {[${R(Ll(r),`'${r}'`)}]: ${R(Ll(l),`'${l}'`)}${P(a)?t:`, [${R(Ll(s),`'${s}'`)}]: `+(S(a)?R(Ll(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${v}]`,dl(0,0)),U(2,t,"Content",Q,dl(0,2),`[tables, values]: [${p}, ${v}]`,"[tables, values]"),U(2,t,We,Q,`Applies a set of ${We} to the Store`,"transactionChanges: "+We,"transactionChanges"),re(X,((e,l)=>x(l,`(cell: ${e}${Ae}) => `+e,`Takes a ${e} Cell value and returns another`))),u(null,l,"DoRollback",Te,"IdOrNull",Ve,"Store",We),u(0,l,"Get"+We,"GetTransactionLog"),U(0,t,Ve,Ve,dl(0,6)),U(2,t,Ve,Q,dl(0,7),"tablesAndValuesJson: "+Ve,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,ye,"actions, doRollback","<Return>"),U(7,t,"start"+ze,Q,Ue),U(7,t,"finish"+ze,Q,_e,we,"doRollback");const ae=G(q,Q);return _("Start"+ze,ae,Le+" just before the start of the "+Be,t,t,0),_("WillFinish"+ze,ae,Le+" just before "+Ze,t,t,0),_("DidFinish"+ze,ae,Le+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Je,"listenerId: Id","listenerId"),B("getStore",t,"Store","store",fl[0]+" the underlying Store object"),u(1,l,"createStore"),u(1,Z,Q,`create${Q} as create${Q}Decl`,ae),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...A(0),...k(),ve+" interface "+Q+" {",...z(0),"}",t,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),d(...A(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>u+e,Zl=e=>Nl(_l(e),_l(e)+ge),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+fe,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",ot="rowId",dt="rowId={rowId}",rt=", separator, debugIds",st="separator?: ReactElement | string",It="then?: (store: Store",ut=Nl(It+")"+qe,Kl),ct="then, then"+ge,$t=ot+tt+Te,it="View",bt=(e,...l)=>Nl(...l,Re+": "+e,Re+fe,"mutator?: boolean"),pt=(...e)=>Nl(...e,Re,Re+ge,"mutator"),Ct=(e,a,n,r,s)=>{const[u,c,x,V,R,A,k,S]=Hl(),[O,E,L]=Jl(e,a,R),D=`./${El(n)}.d`,N=`./${El(n)}-ui-react.d`,j="tinybase/ui-react",G=El(n,1),H=El(G),J=G+"Or"+G+Te,z=H+"Or"+G+Te,B=H+`={${H}}`,U=oe(),_=(e,l,a,n,o,d=t)=>(c(1,N,e+" as "+e+"Decl"),kl(U,e,[l,a,n,o,d])),Z=(e,l,a,n,o,d=t)=>_("use"+e,l,a,n,o,d),Q=(e,l,a,n,o=t,d=t,r=t,s=t,I=t)=>(c(1,j,`use${l} as use${l}Core`),Z(e,Nl(o,le,s),a,ae+`(${z}, use${l}Core, [`+(d||t)+(I?"], ["+I:t)+"]);",n,r)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>se(U,(([l,a,n,o,d],r)=>{const s=e?[ve+` const ${r}: typeof ${r}Decl = ${d}(${l}): ${1==a?"any":a} =>`,n]:[ve+` function ${r}${d}(${l}): ${1==a?"ComponentReturnType":a};`];return e||F(s,Dl(o)),W(s,t),s}));c(null,l,Te,"Store",Ce,Xl+"ized"+Ce),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=x(J,G+" | "+Te,`Used when you need to refer to a ${G} in a React hook or component`),Y=x(Ee+Oe,Gl(H+Pe+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${Ee} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,N,X,Y);const le=z+Pe+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+fe,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Ae,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${Ee} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=V("wrap",Nl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=V("useCustomOrDefaultCellIds",Nl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),ue=R("NullComponent","() => null");if(!ee(e)){const[e,a,n,s,u,y,v,T,R,A,k,S,L,j,J,z,W,F,U,_]=r;c(null,D,e,a,n,u,y,v,T,R,A,k,S,L,j,J,z,W,U,F),c(0,D,s),c(1,D,G),c(null,l,i,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",dt,"customCellIds={customCellIds}",B,ql,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+ue),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,o)=>`cellId == ${n} ? `+l+o+"CellView : ")))+ue} : `)))+ue);Q($+p,$+p,o,dl(1,0,0,1)+pe),Q(p,p,e,dl(1,0)+pe);const Y=Q(C,C,n+Me,sl(b,Je)+pe);Q(Ge+p+Ce,Ge+p+Ce,nt,dl(1,9)+lt,Nl(_l(p)+Yl+a,_l(p)+fe),Zl(p),at,Nl(It,`tables: ${a})`+qe,Kl),ct),Q(me+p+Ce,me+p+Ce,Ce,dl(1,12),t,t,t,ut,ct);const ee=x(f+Oe,Gl("tableId?: TId","rowId: Id","cellId?: CId",H+Pe+G,Ql),ul(ie+f),`<TId extends ${n}, CId extends ${s}<TId>>`),le=x(h+Oe,Gl("tableId?: TId","rowId: Id",H+Pe+G,"cellComponents?: {readonly [CId in "+s+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${s}<TId>) => ExtraProps`,`customCellIds?: ${s}<TId>[]`,st,Ql),ul(ie+h),`<TId extends ${n}>`),te=x(b+Oe,Gl("tableId?: TId",H+Pe+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Ql),ul(ie+b),`<TId extends ${n}>`),ae=x("Sorted"+b+Oe,Gl("tableId?: TId","cellId?: "+s+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Pe+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Ql),ul(ie+"sorted "+b),`<TId extends ${n}>`),oe=x(p+Oe,Gl(H+Pe+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,st,Ql),ul(ol(1,1)));c(1,N,oe,te,ae,le,ee),q(p+it,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[re+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,ql,"/>;","}), separator)"],dl(1,13)+pe),O(((e,l,a)=>{const[n,r,s,I,u]=de(_,e);c(null,D,n,r,s,I,u),Q($+l+b,$+b,o,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+w,b+w,i,sl(f,"the whole of "+bl(e))+pe,t,a),Q(l+h+he,h+he,d,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+m,m,i,sl(h,bl(e))+pe,t,a),C=Q(l+g,g,i,sl(h,bl(e),1)+pe,"cellId?: "+u+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q($+l+h,$+h,o,hl(e,0,1)+pe,$t,Nl(a,ot)),Q(l+h,h,s,hl(e)+pe,$t,Nl(a,ot)),Q(l+w,w,u+Me,sl(f,pl(e))+pe,$t,Nl(a,ot)),Q(Ge+l+b+Ce,Ge+b+Ce,nt,Cl(e,9)+lt,Nl(_l(b)+Yl+r,_l(b)+fe),Nl(a,Zl(b)),at,Nl(It,`table: ${r})`+qe,Kl),ct),Q(me+l+b+Ce,me+b+Ce,Ce,Cl(e,12),t,a,t,ut,ct),Q(Ge+l+h+Ce,Ge+h+Ce,nt,hl(e,9)+lt,Nl($t,_l(h)+Yl+I,_l(h)+fe),Nl(a,ot,Zl(h)),at,Nl(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Nl(_l(h)+Yl+I,_l(h)+fe),Nl(a,Zl(h)),at,"then?: ("+Nl($t+Ae,"store: Store","row: "+I+")"+qe,"then"+fe)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(Ge+l+Se+h+Ce,Ge+Se+h+Ce,nt,hl(e,11)+lt,Nl($t,_l(Se+h)+Yl+I,_l(Se+h)+fe),Nl(a,ot,Zl(Se+h)),at,Nl(It,`partialRow: ${I})`+qe,Kl),ct),Q(me+l+h+Ce,me+h+Ce,Ce,hl(e,12),$t,Nl(a,ot),t,ut,ct);const y=q(l+h+it,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[re+`(${Ie}(customCellIds, `+a+`, rowId, ${H}).map((cellId: ${u}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,dt,"cellId={cellId}",B,ql,"/>;","})"+rt+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${a}, ${y});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${H}), ${a}, ${y});`,Cl(e,13)+pe),E(e,((n,d,r,s,I)=>{const u="Map"+El(d,1);c(0,D,u),c(1,D,u),Q($+l+I+b+f,$+b+f,o,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Nl(a,s)),Q($+l+I+f,$+f,o,ml(e,n,0,1)+pe,$t,Nl(a,ot,s));const i=Q(l+I+f,f,d+(P(r)?Ae:t),ml(e,n)+pe,$t,Nl(a,ot,s));Q(Ge+l+I+f+Ce,Ge+f+Ce,nt,ml(e,n,9)+lt,Nl($t,_l(f)+Yl+d+" | "+u,_l(f)+fe),Nl(a,ot,s,Zl(f)),at,Nl(It,`cell: ${d} | ${u})`+qe,Kl),ct),Q(me+l+I+f+Ce,me+f+Ce,Ce,ml(e,n,12),Nl($t,"forceDel?: boolean"),Nl(a,ot,s,"forceDel"),t,ut,ct),q(l+I+f+it,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[re+`('' + ${i}(rowId, `+H+`) ?? '', undefined, debugIds, ${s})`],ml(e,n,13)+pe)}))}));const se=M(O((e=>{var l,a;return null!=(a=null==(l=de(_,e))?void 0:l[4])?a:t}))," | ");Q($+p+I,$+p+I,Qe,dl(1,8,0,1)+" changes",bt(u),pt()),Q(p+I,p+I,Qe,dl(1,8)+" changes",bt(y),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(v),pt()),Q($+b+I,$+b+I,Qe,il(3,0,0,1),bt(T,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(R,`tableId: ${n} | null`),pt("tableId")),Q(b+w+I,b+w+I,Qe,il(14,3,1),bt(A,`tableId: ${n} | null`),pt("tableId")),Q($+b+f+I,$+b+f+I,Qe,il(16,3,0,1),bt(k,`tableId: ${n} | null`,`cellId: ${se} | null`),pt("tableId","cellId")),Q(h+he+I,h+he+I,Qe,il(15,3),bt(S,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(4,3,1),bt(L,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(13,3,1),bt(j,`tableId: ${n} | null`,"cellId: "+se+Ae,"descending: boolean","offset: number","limit: number"+Ae),pt("tableId","cellId","descending","offset","limit")),Q($+h+I,$+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,ot+": IdOrNull"),pt("tableId",ot)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,ot+": IdOrNull"),pt("tableId",ot)),Q(w+I,w+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,ot+": IdOrNull"),pt("tableId",ot)),Q($+f+I,$+f+I,Qe,il(7,5,0,1),bt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${se} | null`),pt("tableId",ot,"cellId")),Q(f+I,f+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${se} | null`),pt("tableId",ot,"cellId"))}if(!ee(a)){const[e,l,a,n,d,r,u,i]=s;c(null,D,...s),c(1,D,G);const b=V("getDefaultValueComponent","valueId: Id",M(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+ue);Q($+v,$+v,o,dl(2,0,0,1)+pe),Q(v,v,e,dl(2,0)+pe);const p=Q(T,T,a+Me,sl(y,Je)+pe);Q(Ge+v+Ce,Ge+v+Ce,nt,dl(2,9)+lt,Nl(_l(v)+Yl+l,_l(v)+fe),Zl(v),at,Nl(It,`values: ${l})`+qe,Kl),ct),Q(Ge+Se+v+Ce,Ge+Se+v+Ce,nt,dl(2,11)+lt,Nl(_l(Se+v)+Yl+l,_l(Se+v)+fe),Zl(Se+v),at,Nl(It,`partialValues: ${l})`+qe,Kl),ct),Q(me+v+Ce,me+v+Ce,Ce,dl(2,12),t,t,t,ut,ct);const C=x(y+Oe,Gl("valueId?: VId",H+Pe+G,Ql),ul("a Value"),`<VId extends ${a}>`),h=x(v+Oe,Gl(H+Pe+G,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,st,Ql),ul(ol(2,1)));c(1,N,h,C),q(v+it,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+h,[re+`(${p}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,ql,"/>;","}), separator)"],dl(2,13)+pe),L(((e,l,a,n,d)=>{const r="Map"+El(l,1);c(0,D,r),c(1,D,r),Q($+d+y,$+y,o,gl(e,0,1)+pe,t,n);const s=Q(d+y,y,l,gl(e)+pe,t,n);Q(Ge+d+y+Ce,Ge+y+Ce,nt,gl(e,9)+lt,Nl(_l(y)+Yl+l+" | "+r,_l(y)+fe),Nl(n,Zl(y)),at,Nl(It,`value: ${l} | ${r})`+qe,Kl),ct),Q(me+d+y+Ce,me+y+Ce,Ce,gl(e,12),t,n,t,ut,ct),q(d+y+it,`{${H}, debugIds}: ${C}<'${e}'>`,[re+`('' + ${s}(`+H+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+pe)})),Q($+v+I,$+v+I,Qe,dl(2,8,0,1)+" changes",bt(n),pt()),Q(v+I,v+I,Qe,dl(2,8)+" changes",bt(d),pt()),Q(T+I,T+I,Qe,il(10,0,1),bt(r),pt()),Q($+y+I,$+y+I,Qe,il(11,0,0,1),bt(u,`valueId: ${a} | null`),pt("valueId")),Q(y+I,y+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ee,`{${H}, ${H}ById, children}: `+Y+" & {children: React.ReactNode}",["{",et,"return (","<Context."+Ee,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${Ee}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[u(...A(0),...k(),...K(0)),u(...A(1),...S(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,o,d,r]=Ul(e,l,a);return[n,o,...Ct(e,l,a,d,r)]},mt=JSON.parse;var gt=Object.defineProperty,ft=Object.defineProperties,wt=Object.getOwnPropertyDescriptors,yt=Object.getOwnPropertySymbols,vt=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,xt=(e,l,t)=>l in e?gt(e,l,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[l]=t,Vt=(e,l)=>{for(var t in l||(l={}))vt.call(l,t)&&xt(e,t,l[t]);if(yt)for(var t of yt(l))Tt.call(l,t)&&xt(e,t,l[t]);return e},Rt=(e,l)=>ft(e,wt(l)),Pt=(e,l,t)=>new Promise(((a,n)=>{var o=e=>{try{r(t.next(e))}catch(e){n(e)}},d=e=>{try{r(t.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((t=t.apply(e,l)).next())}));const At="prettier/",kt=At+"plugins/",St={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Ot=Ml((e=>{const l=()=>{const l=mt(e.getTablesSchemaJson());return!ee(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const o=e.getCell(t,l,a),d=ue(n,a,(()=>[N(o),oe(),[0],0])),[r,s,[I]]=d,u=ue(s,o,(()=>0))+1;return u>I&&(d[2]=[u,o]),Ie(s,o,u),d[3]++,r==N(o)})))))return l[t]={},ae(n,(([e,,[,n],o],d)=>{l[t][d]=Vt({[r]:e},o==L(a)?{[s]:n}:{})})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:N(t)}})),l},a=e=>ht(l(),t(),e),n=e=>Pt(void 0,null,(function*(){const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(yield import(At+"standalone")).format,W(t,yield import(kt+"estree"),yield import(kt+"typescript"))}catch(e){n=e=>Pt(void 0,null,(function*(){return e}))}return yield D(J(a(e),((e,a)=>Pt(void 0,null,(function*(){return Sl(yield n(e,Rt(Vt({},St),{plugins:t,filepath:"_."+l[a]})))})))))}));return q({getStoreStats:l=>{let t=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{t++;let r=0,s=0;const I={};d(((e,t)=>{r++;let a=0;t((()=>a++)),s+=a,l&&(I[e]={rowCells:a})})),a+=r,n+=s,l&&(o[e]={tableRows:r,tableCells:s,rows:I})})),Vt({totalTables:t,totalRows:a,totalCells:n,totalValues:L(e.getValueIds()),jsonLength:L(e.getJson())},l?{detail:{tables:o}}:{})},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{Ot as createTools};
|
package/lib/es6/tools.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>typeof t,
|
|
1
|
+
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),c=(t,e,a)=>t.slice(e,a),o=t=>t.length,l=async t=>n.all(t),h=(t,e)=>t.map(e),g=(t,...e)=>t.push(...e),u=Object,w=(t=[])=>u.fromEntries(t),f=(t,e)=>h(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=o(t);return s(e,t)?[e[n],(a?S:String)(c(e,n+1))]:void 0},m=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),x="hasStore",D=w(h(["Origin","Methods","Headers"],(t=>["Access-Control-Allow-"+t,"*"]))),R=async(t,e="")=>!!await t.get(e+x),b=async(t,e="")=>{const s={},n={};return m(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]},C=async(t,e,n,i)=>{const c=t.party.storage,h=t.config.storagePrefix,u={[h+x]:1},w=[],y=[];await l(f(e[0],(async(e,s)=>r(e)?!n&&t.canDelTable(s,i)&&((t,...e)=>t.unshift(...e))(y,T(h,a,s)):t.canSetTable(s,n,i)&&await l(f(e,(async(e,o)=>r(e)?!n&&t.canDelRow(s,o,i)&&g(y,T(h,a,s,o)):t.canSetRow(s,o,n,i)&&await l(f(e,(async(e,l)=>{const f=[s,o,l],y=T(h,a,...f);r(e)?!n&&t.canDelCell(...f,i)&&g(w,y):t.canSetCell(...f,e,n,i,await c.get(y))&&(u[y]=e)}))))))))),await l(f(e[1],(async(e,a)=>{const s=h+"v"+a;r(e)?!n&&t.canDelValue(a,i)&&g(w,s):t.canSetValue(a,e,n,i,await c.get(s))&&(u[s]=e)}))),0!=o(y)&&m(await c.list(),(t=>y.every((e=>!s(t,e)||g(w,t)&&0)))),await c.delete(w),await c.put(u)},T=(t,e,...a)=>d(t,e,c(p(a),1,-1)),v=async(t,e,a=null)=>new Response(a,{status:e,headers:t.config.responseHeaders});class O{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?v(this,205):(await C(this,S(n),!0,t),v(this,201)):v(this,200,a?p(await b(e,s)):"")}return v(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 C(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}}export{O as TinyBasePartyKitServer,R as hasStoreInStorage,b as loadStoreFromStorage};
|
|
Binary file
|
package/lib/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=Promise,V=isFinite,x=e=>null==e,R=(e,t,l)=>x(e)?l?.():t(e),k=e=>e==n||e==o,S=t=>e(t)==n,P=e=>Array.isArray(e),A=(e,t,l)=>e.slice(t,l),E=e=>e.length,O=async e=>v.all(e),D=t=>{const l=e(t);return k(l)||l==d&&V(t)?l:void 0},N=(e,t)=>e.every(t),G=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),j=(e,t=l)=>e.join(t),M=(e,t)=>e.map(t),J=(e,t)=>e.filter(t),z=(e,...t)=>e.push(...t),W=e=>e.pop(),B=(e,...t)=>e.unshift(...t),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,H=U.freeze,Q=e=>!x(e)&&R(_(e),(e=>e==U.prototype||x(_(e))),(()=>!0)),q=(e,t)=>M(U.entries(e),(([e,l])=>t(l,e))),K=e=>E(Z(e)),X=e=>Q(e)&&0==K(e),Y=(e,t)=>e?.has(t)??!1,ee=e=>[...e?.values()??[]],te=(e,t)=>e?.forEach(t),le=(e,t)=>e?.delete(t),ae=e=>new Map(e),ne=(e,t)=>e?.get(t),oe=(e,t)=>te(e,((e,l)=>t(l,e))),de=(e,t)=>M([...e?.entries()??[]],(([e,l])=>t(l,e))),se=(e,t,l)=>x(l)?(le(e,t),e):e?.set(t,l),re=(e,t,l)=>(Y(e,t)||se(e,t,l()),ne(e,t)),Ie=e=>e.toUpperCase(),$e=e=>e.toLowerCase(),ce="a ",ue="A function for",ie=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",be="Del",Ce="Deps",he=Ce+"?: React.DependencyList",me="doRollback?: DoRollback",ge="actions: () => Return, "+me,fe="export",we="Id",ye="Invalid",Te="Json",ve=$e(I),Ve="?: ",xe=" | undefined",Re="NonNullable",ke="Partial",Se="Props",Pe="Provider",Ae=`Registers a ${ve} that will be called`,Ee="Represents",Oe="rowId: "+we,De="Schema",Ne="Set",Ge=", descending?: boolean, offset?: number, limit?: number",Le="[]",je="the Store",Me="Transaction",Je=Me+"Changes",ze=$e(Me),We="Execute a "+ze+" to make multiple mutations",Be="Explicitly starts a "+ze,Fe="Explicitly finishes a "+ze,Ue="the end of the "+ze,_e="void",Ze=" => "+_e,He="WhenSet",Qe=" when setting it",qe=ce+"string serialization of",Ke=" ",Xe="Gets a callback that can ",Ye="the ",et=" the schema for",tt=(e=0,t=0)=>`the ${gt[e]}content of`+(t?Ke+je:l),lt=(e=0,t,a=0)=>Ct[t]+Ke+tt(e,1)+(a?" when setting it":l),at=(e,t=0)=>Ee+` a Row when ${t?"s":"g"}etting ${tt()} the '${e}' `+i,nt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,ot=(e,t)=>`Calls a function for each ${e} in `+t,dt=e=>"The props passed to a component that renders "+e,st=e=>"A function that takes "+e,rt=(e,t=0)=>ue+" listening to changes to "+mt[e]+" in "+mt[t],It=(e,t,a=0)=>Ae+" whenever "+mt[e]+" in "+mt[t]+" change"+(a?l:"s"),$t=e=>`the '${e}' `+i,ct=e=>"the specified Row in "+$t(e),ut=(e,t=0)=>Ct[t]+` ${tt()} `+$t(e),it=(e,t=0)=>Ct[t]+` ${tt()} `+ct(e),pt=(e,t,l=0)=>Ct[l]+` the '${t}' Cell for `+ct(e),bt=(e,t=0)=>Ct[t]+` the '${e}' Value`,Ct=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ee,"Gets "+qe,"Sets "+qe,Ae+" whenever",Xe+"set",Xe+"add",Xe+"set part of",Xe+"delete","Renders","Gets "+qe+et,"Sets"+et,"Deletes"+et],ht=[$,"has","set","del","set","forEach",c,l],mt=[je,p,Ye+i+Ke+u,ce+i,Ye+C+Ke+u,ce+C,Ye+g+Ke+u,ce+g,"invalid Cell changes",y,Ye+w+Ke+u,ce+w,"invalid Value changes",Ye+"sorted "+C+Ke+u,Ye+g+Ke+u+" anywhere",Ye+"number of Rows"],gt=[l,"tabular ","keyed value "],ft=e=>new Set(P(e)||x(e)?e:[e]),wt=(e,t)=>e?.add(t),yt=/[^A-Za-z]+/,Tt=/[^A-Za-z0-9]+/,vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Vt=e=>e.includes(a),xt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return Y(e,n)?xt(e,t,l,a+1):(se(e,n,l),n)},Rt=e=>e.replace(vt,((e,t,l)=>{const a=77-E(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),kt=e=>e.flat(1e3),St=(e,t=0)=>j(M(e.split(Tt),((e,l)=>(l>0||t?Ie:$e)(A(e,0,1))+A(e,1)))),Pt=e=>Ie(j((e&&!yt.test(e[0])?e:" "+e).split(Tt),"_")),At=e=>`/** ${e}. */`,Et=(...e)=>j(J(e,(e=>e)),", "),Ot=(...e)=>"{"+j(e,"; ")+"}",Dt=(...e)=>Ot(...M(e,(e=>"readonly "+e))),Nt=()=>{const e=[ae(),ae(),ae(),ae()],t=ae(),a=ae(),n=e=>{const t=e.indexOf(" as ");return-1!=t?A(e,t+4):e};return[(...e)=>j(kt(e),"\n"),(t,l,...a)=>L(a,(a=>L([0,1],(n=>(t??n)==n?wt(re(e[n],l,ft),a):0)))),(e,a,n,o=l,d=1)=>xt(t,e,[a,n,o,d]),(e,t,l)=>xt(a,e,P(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>ne(a,e)===t?e:xt(a,e,t),(t=0)=>M([...G(de(e[t],((e,t)=>`import {${j(G(ee(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Vt(e)!=Vt(t)?Vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>de(t,(([e,t,a,n],o)=>[At(t),`${n?fe+" ":l}type ${o}${a} = ${e};`,l])),()=>de(a,((e,t)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${t} = ${F(e)}`,e,l])))]},Gt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>q(e,((e,a)=>t(a,St(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>q(e[t],((e,t)=>a(t,e[s],e[r],l(Pt(t),`'${t}'`),St(t,1)))),e=>q(t,((t,a)=>e(a,t[s],t[r],l(Pt(a),`'${a}'`),St(a,1))))],jt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`)))+"}"))),lt(1,5)),r=e(p+He,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),lt(1,5,1)),$=e(i+we,"keyof "+s,"A "+i+" Id in "+je),c=`<TId extends ${$}>`,u=e(i,Re+`<${s}[TId]>`,"A "+i+" in "+je,c),w=e(i+He,Re+`<${r}[TId]>`,"A "+i+" in "+je+Qe,c),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,c),T=e(C+He,w+"<TId>[Id]","A "+C+" in a "+i+Qe,c),v=e(g+we,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,c),V=e(g,Re+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${$}, CId extends ${v}<TId>>`),R=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${$}, CId = ${v}<TId>>`,0),k=e(g+pe,`(...[cellId, cell]: ${R}<TId>)`+Ze,st(ce+g+" Id, and "+g),c),S=e(C+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ze+") "+Ze,st(ce+C+" Id, and a "+g+" iterator"),c),P=e(i+g+pe,`(cellId: ${v}<TId>, count: number) `+Ze,st(ce+g+" Id, and count of how many times it appears"),c),A=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ze}] : never`,i+" Ids and callback types",`<TId = ${$}>`,0),E=e(i+pe,`(...[tableId, forEachRow]: ${A})`+Ze,st(ce+i+" Id, and a "+C+" iterator"),l),O=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ue+" returning information about any Cell's changes during a "+ze),N=e(p+I,`(${d}, getCellChange: ${D}${xe})`+Ze,rt(1)),G=e(b+I,`(${d})`+Ze,rt(2)),L=e(i+I,`(${d}, tableId: ${$}, getCellChange: ${D}${xe})`+Ze,rt(3)),j=e(i+f+I,`(${d}, tableId: ${$})`+Ze,rt(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${$})`+Ze,rt(15,3)),J=e(h+I,`(${d}, tableId: ${$})`+Ze,rt(4,3)),z=e(m+I,"("+Et(d,"tableId: "+$,"cellId: Id"+xe,"descending: boolean","offset: number","limit: number"+xe,"sortedRowIds: Ids")+")"+Ze,rt(13,3)),W=e(C+I,"("+Et(""+d,"tableId: "+$,Oe,`getCellChange: ${D}${xe}`)+")"+Ze,rt(5,3)),B=e(f+I,"("+Et(""+d,"tableId: "+$,Oe)+")"+Ze,rt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Oe}, cellId: CId, newCell: ${V}<TId, CId> ${xe}, oldCell: ${V}<TId, CId> ${xe}, getCellChange: ${D} ${xe}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,u,w,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Ze,rt(7,5)),e(ye+g+I,`(${d}, tableId: Id, ${Oe}, cellId: Id, invalidCells: any[])`+Ze,rt(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Ot(...n(((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`))),lt(2,5)),s=e(y+He,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),lt(2,5,1)),r=e(w+we,"keyof "+d,"A "+w+" Id in "+je),$=e(w,Re+`<${d}[VId]>`,"A "+w+" Id in "+je,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,w+" Ids and types in "+je,`<VId = ${r}>`,0),u=e(w+pe,`(...[valueId, value]: ${c})`+Ze,st(ce+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ue+" returning information about any Value's changes during a "+ze),p=e(y+I,`(${o}, getValueChange: ${i}${xe})`+Ze,rt(9)),b=e(T+I,`(${o})`+Ze,rt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${$}<VId> ${xe}, oldValue: ${$}<VId> ${xe}, getValueChange: ${i} ${xe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,$,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ze,rt(11)),e(ye+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Ze,rt(12))]},(t,l)=>e(Me+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ze,ue+" listening to the completion of a "+ze)],Mt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Jt=(e,t=l)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Wt=(e,a,n)=>{const[d,$,v,V,R,k,P,A]=Nt(),[E,O,D]=Lt(e,a,R),[N,G,M]=jt(v,E,O,D),J=ae(),W=(e=0)=>de(J,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||B(r,At(o)),z(r,l),r})),F=(e,t,a,n,o,d=l)=>xt(J,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(ht[e]+t+(4==e?ke:l)+a,d,n,(n==H?Jt:Mt)(ht[e]+(4==e?ke:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F(c+e+I,(n?n+", ":l)+ve+": "+t+(d?", mutator?: boolean":l),we,zt(c+e+I,o,d?"mutator":l),a,s),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),q=[],K=ae();let Y=[],te=[];if($(1,Z,H,`create${H} as create${H}Decl`),X(e))$(null,t,p);else{$(0,t,"CellChange"),$(null,t,u);const[e,a,n,d,I,c,w,y,T,V,k,P,A,D,G,M,J,W,B,F,X,te,le,oe]=N(Q,H),de=ae();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Ee+` the '${e}' `+i),v(t+i+He,I+l,Ee+` the '${e}' `+i+Qe),v(t+C,c+l,at(e)),v(t+C+He,w+l,at(e,1)),v(t+g+we,y+l,`A Cell Id for the '${e}' `+i),v(t+g+pe,V+l,st(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+pe,k+l,st(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+pe,P+l,st(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];se(de,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,A,D,G,M,J,W,B,F,X,te,le,oe),Y=[e,a,n,y,D,G,M,J,W,B,F,X,te,le,de],L([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,lt(1,n),t,a))),U(0,l,b,n+Le,nt(i,je)),U(5,l,i,_e,ot(i,je),"tableCallback: "+A,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,$,c,p]=ne(de,e);L([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,ut(e,s),o,a+d))),U(0,t,i+f,u,nt(g,"the whole of "+$t(e)),l,a),U(5,t,i+g,_e,ot(i+g,"the whole of "+$t(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+$t(e),l,a),U(0,t,h,u,nt(C,$t(e)),l,a),U(0,t,m,u,nt(C,$t(e),1),"cellId?: "+I+Ge,a+", cellId, descending, offset, limit"),U(5,t,C,_e,ot(C,$t(e)),"rowCallback: "+c,a+", rowCallback as any"),L([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,it(e,s),Oe+o,a+", rowId"+d))),U(6,t,C,we+xe,"Add a new Row to "+$t(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Le,nt(g,ct(e)),Oe,a+", rowId"),U(5,t,g,_e,ot(g,ct(e)),Oe+", cellCallback: "+$,a+", rowId, cellCallback as any"),O(e,((n,d,s,r,I)=>{const $="Map"+St(d,1);se(K,d,$);const c=d+(x(s)?xe:l);L([[c],[o],[H,`, cell: ${d} | `+$,", cell as any"],[H]],(([o,d=l,s=l],$)=>U($,t+I,g,o,pt(e,n,$),Oe+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,Ct[1]+` the '${n}' Cell anywhere in `+$t(e),l,a+", "+r)}))})),U(0,l,p+Te,Te,lt(1,6)),U(2,l,p+Te,H,lt(1,7),"tablesJson: "+Te,"tables"+Te),_(p,D,lt(1,8)+" changes"),_(b,G,It(2,0,1)),_(i,M,It(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,J,It(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,It(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,It(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,It(13,3,1),Et("tableId: TId",`cellId: ${y}<TId>`+xe,"descending: boolean","offset: number","limit: number"+xe),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,X,It(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,te,It(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,It(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${j(E((e=>ne(de,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(ye+g,oe,Ae+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...ee(K)),z(q,".set"+p+De+"({",kt(E(((e,t,a)=>[`[${a}]: {`,...O(e,((e,t,a,n)=>`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(X(a))$(null,t,y);else{const[e,a,n,d,I,c,u,i,p]=G(Q,H);$(1,Z,e,a,n,I,c,u,i,p),te=[e,a,n,c,u,i],L([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,lt(2,n),t,a))),U(0,l,T,n+Le,nt(w,je)),U(5,l,w,"void",ot(w,je),"valueCallback: "+I,"valueCallback as any"),D(((e,t,a,n,d)=>{const s="Map"+St(t,1);se(K,t,s),L([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,bt(e,s),a,n+o)))})),U(0,l,y+Te,Te,lt(2,6)),U(2,l,y+Te,H,lt(2,7),"valuesJson: "+Te,"values"+Te),_(y,c,lt(2,8)+" changes"),_(T,u,It(10,0,1)),_(w,i,It(11,0),`valueId: ${n} | null`,"valueId"),_(ye+w,p,Ae+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...ee(K)),$(0,t,"ValueChange"),z(q,".set"+y+De+"({",D(((e,t,a,n)=>[`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,lt(0,0)),U(2,l,"Content",H,lt(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Je,H,`Applies a set of ${Je} to the Store`,"transactionChanges: "+Je,"transactionChanges"),oe(K,((e,t)=>v(t,`(cell: ${e}${xe}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,t,"DoRollback",we,"IdOrNull",Te,"Store",Je),$(0,t,"Get"+Je,"GetTransactionLog"),U(0,l,Te,Te,lt(0,6)),U(2,l,Te,H,lt(0,7),"tablesAndValuesJson: "+Te,"tablesAndValuesJson"),U(7,l,ze,"Return",We,ge,"actions, doRollback","<Return>"),U(7,l,"start"+Me,H,Be),U(7,l,"finish"+Me,H,Fe,me,"doRollback");const le=M(Q,H);return _("Start"+Me,le,Ae+" just before the start of the "+ze,l,l,0),_("WillFinish"+Me,le,Ae+" just before "+Ue,l,l,0),_("DidFinish"+Me,le,Ae+" just after "+Ue,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",Ct[0]+" the underlying Store object"),$(1,t,"createStore"),$(1,Z,H,`create${H} as create${H}Decl`,le),R("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),R(Q,["{",...W(1),"}"]),[d(...k(0),...P(),fe+" interface "+H+" {",...W(0),"}",l,At(`Creates a ${H} object`),fe+" function create"+H+"(): "+H+";"),d(...k(1),fe+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),Y,te]},Bt=e=>$+e,Ft=e=>Et(Bt(e),Bt(e)+Ce),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+he,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+pe+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ze,Zt),sl="then, then"+Ce,rl=tl+Xt+we,Il="View",$l=(e,...t)=>Et(...t,ve+": "+e,ve+he,"mutator?: boolean"),cl=(...e)=>Et(...e,ve,ve+Ce,"mutator"),ul=(e,a,n,o,d)=>{const[s,r,$,c,v,V,R,k]=Nt(),[S,P,A]=Lt(e,a,v),E=`./${St(n)}.d`,O=`./${St(n)}-ui-react.d`,D="tinybase/ui-react",N=St(n,1),G=St(N),L=N+"Or"+N+we,M=G+"Or"+N+we,J=G+`={${G}}`,W=ae(),F=(e,t,a,n,o,d=l)=>(r(1,O,e+" as "+e+"Decl"),xt(W,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,$=l)=>(r(1,D,`use${t} as use${t}Core`),U(e,Et(o,K,I),a,ee+`(${M}, use${t}Core, [`+(d||l)+($?"], ["+$:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>de(W,(([t,a,n,o,d],s)=>{const r=e?[fe+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[fe+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||B(r,At(o)),z(r,l),r}));r(null,t,we,"Store",pe,Ht+"ized"+pe),r(0,D,"ComponentReturnType"),r(1,D,"useCellIds"),r(null,D,"ExtraProps"),r(0,E,N);const Q=$(L,N+" | "+we,`Used when you need to refer to a ${N} in a React hook or component`),q=$(Pe+Se,Dt(G+Ve+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Pe} component, so that a `+N+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,O,Q,q);const K=M+Ve+Q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+he,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+xe,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Pe} component context`),ee=c("useHook",M+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${M} as Id);`,`return hook(...preParams, ((${M} == null || typeof ${M} == 'string')`,`? ${G} : ${M})?.getStore(), ...postParams)`]),te=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=c("wrap",Et("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),oe=c("useCustomOrDefaultCellIds",Et("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${M}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${M}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!X(e)){const[e,a,n,d,s,w,y,T,v,V,R,k,A,D,L]=o;r(null,E,e,a,n,s,w,y,T,v,V,R,k,A,D),r(0,E,d),r(1,E,N),r(null,t,u,"IdOrNull");const M=c("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+al+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${le}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ll,"customCellIds={customCellIds}",J,_t,"/>","))",al,", tableId,",");"]),z=c("getDefaultTableComponent","tableId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=c("getDefaultCellComponent","tableId: Id, cellId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${j(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,lt(1,0)+ie);const B=_(b,b,n+Le,nt(i,je)+ie);_(Ne+p+pe,Ne+p+pe,el,lt(1,9)+Kt,Et(Bt(p)+Qt+a,Bt(p)+he),Ft(p),Yt,Et(ol,`tables: ${a})`+Ze,Zt),sl),_(be+p+pe,be+p+pe,pe,lt(1,12),l,l,l,dl,sl);const F=$(g+Se,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+Ve+N,Ut),dt(ce+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=$(C+Se,Dt("tableId?: TId","rowId: Id",G+Ve+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,nl,Ut),dt(ce+C),`<TId extends ${n}>`),H=$(i+Se,Dt("tableId?: TId",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt(ce+i),`<TId extends ${n}>`),Q=$("Sorted"+i+Se,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt(ce+"sorted "+i),`<TId extends ${n}>`),q=$(p+Se,Dt(G+Ve+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),dt(tt(1,1)));r(1,O,q,H,Q,U,F),Z(p+Il,"{"+G+", tableComponents, getTableComponentProps"+al+"}: "+q,[le+`(${B}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+z+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${te}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,_t,"/>;","}), separator)"],lt(1,13)+ie),S(((e,t,a)=>{const[n,o,d,s,I]=ne(L,e);r(null,E,n,o,d,s,I),_(t+i,i,n,ut(e)+ie,l,a),_(t+i+f,i+f,u,nt(g,"the whole of "+$t(e))+ie,l,a);const $=_(t+h,h,u,nt(C,$t(e))+ie,l,a),c=_(t+m,m,u,nt(C,$t(e),1)+ie,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,it(e)+ie,rl,Et(a,tl)),_(t+f,f,I+Le,nt(g,ct(e))+ie,rl,Et(a,tl)),_(Ne+t+i+pe,Ne+i+pe,el,ut(e,9)+Kt,Et(Bt(i)+Qt+o,Bt(i)+he),Et(a,Ft(i)),Yt,Et(ol,`table: ${o})`+Ze,Zt),sl),_(be+t+i+pe,be+i+pe,pe,ut(e,12),l,a,l,dl,sl),_(Ne+t+C+pe,Ne+C+pe,el,it(e,9)+Kt,Et(rl,Bt(C)+Qt+s,Bt(C)+he),Et(a,tl,Ft(C)),Yt,Et(ol,`row: ${s})`+Ze,Zt),sl),_("Add"+t+C+pe,"Add"+C+pe,el,it(e,10)+Kt,Et(Bt(C)+Qt+s,Bt(C)+he),Et(a,Ft(C)),Yt,"then?: ("+Et(rl+xe,"store: Store","row: "+s+")"+Ze,"then"+he)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(Ne+t+ke+C+pe,Ne+ke+C+pe,el,it(e,11)+Kt,Et(rl,Bt(ke+C)+Qt+s,Bt(ke+C)+he),Et(a,tl,Ft(ke+C)),Yt,Et(ol,`partialRow: ${s})`+Ze,Zt),sl),_(be+t+C+pe,be+C+pe,pe,it(e,12),rl,Et(a,tl),l,dl,sl);const p=Z(t+C+Il,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+al+`}: ${U}<'${e}'>`,[le+`(${oe}(customCellIds, `+a+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ll,"cellId={cellId}",J,_t,"/>;","})"+al+", rowId)"],it(e,13)+ie);Z(t+"Sorted"+i+Il,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+c+`(cellId, descending, offset, limit, props.${G}), ${a}, ${p});`,ut(e,13)+", sorted"+ie),Z(t+i+Il,`props: ${H}<'${e}'>`,M+"(props, "+$+`(props.${G}), ${a}, ${p});`,ut(e,13)+ie),P(e,((n,o,d,s,I)=>{const $="Map"+St(o,1);r(0,E,$),r(1,E,$);const c=_(t+I+g,g,o+(x(d)?xe:l),pt(e,n)+ie,rl,Et(a,tl,s));_(Ne+t+I+g+pe,Ne+g+pe,el,pt(e,n,9)+Kt,Et(rl,Bt(g)+Qt+o+" | "+$,Bt(g)+he),Et(a,tl,s,Ft(g)),Yt,Et(ol,`cell: ${o} | ${$})`+Ze,Zt),sl),_(be+t+I+g+pe,be+g+pe,pe,pt(e,n,12),Et(rl,"forceDel?: boolean"),Et(a,tl,s,"forceDel"),l,dl,sl),Z(t+I+g+Il,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${c}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],pt(e,n,13)+ie)}))}));const K=j(S((e=>ne(L,e)?.[4]??l))," | ");_(p+I,p+I,_e,lt(1,8)+" changes",$l(s),cl()),_(b+I,b+I,_e,It(2,0,1),$l(w),cl()),_(i+I,i+I,_e,It(3,0),$l(y,`tableId: ${n} | null`),cl("tableId")),_(i+f+I,i+f+I,_e,It(14,3,1),$l(T,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,_e,It(4,3,1),$l(V,`tableId: ${n} | null`),cl("tableId")),_(m+I,m+I,_e,It(13,3,1),$l(R,`tableId: ${n} | null`,"cellId: "+K+xe,"descending: boolean","offset: number","limit: number"+xe),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,_e,It(5,3),$l(k,`tableId: ${n} | null`,tl+": IdOrNull"),cl("tableId",tl)),_(f+I,f+I,_e,It(6,5,1),$l(A,`tableId: ${n} | null`,tl+": IdOrNull"),cl("tableId",tl)),_(g+I,g+I,_e,It(7,5),$l(D,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${K} | null`),cl("tableId",tl,"cellId"))}if(!X(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,N);const u=c("getDefaultValueComponent","valueId: Id",j(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,lt(2,0)+ie);const i=_(T,T,a+Le,nt(w,je)+ie);_(Ne+y+pe,Ne+y+pe,el,lt(2,9)+Kt,Et(Bt(y)+Qt+t,Bt(y)+he),Ft(y),Yt,Et(ol,`values: ${t})`+Ze,Zt),sl),_(Ne+ke+y+pe,Ne+ke+y+pe,el,lt(2,11)+Kt,Et(Bt(ke+y)+Qt+t,Bt(ke+y)+he),Ft(ke+y),Yt,Et(ol,`partialValues: ${t})`+Ze,Zt),sl),_(be+y+pe,be+y+pe,pe,lt(2,12),l,l,l,dl,sl);const p=$(w+Se,Dt("valueId?: VId",G+Ve+N,Ut),dt("a Value"),`<VId extends ${a}>`),b=$(y+Se,Dt(G+Ve+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,nl,Ut),dt(tt(2,1)));r(1,O,b,p),Z(y+Il,"{"+G+", valueComponents, getValueComponentProps"+al+"}: "+b,[le+`(${i}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,_t,"/>;","}), separator)"],lt(2,13)+ie),A(((e,t,a,n,o)=>{const d="Map"+St(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,bt(e)+ie,l,n);_(Ne+o+w+pe,Ne+w+pe,el,bt(e,9)+Kt,Et(Bt(w)+Qt+t+" | "+d,Bt(w)+he),Et(n,Ft(w)),Yt,Et(ol,`value: ${t} | ${d})`+Ze,Zt),sl),_(be+o+w+pe,be+w+pe,pe,bt(e,12),l,n,l,dl,sl),Z(o+w+Il,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],bt(e,13)+ie)})),_(y+I,y+I,_e,lt(2,8)+" changes",$l(n),cl()),_(T+I,T+I,_e,It(10,0,1),$l(o),cl()),_(w+I,w+I,_e,It(11,0),$l(s,`valueId: ${a} | null`),cl("valueId"))}return Z(Pe,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+Pe,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Pe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...R(),...H(0)),s(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(X(e)&&X(t))return[l,l,l,l];const[n,o,d,s]=Wt(e,t,a);return[n,o,...ul(e,t,a,d,s)]},pl=JSON.parse,bl="prettier/",Cl=bl+"plugins/",hl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ml=Gt((e=>{const t=()=>{const t=pl(e.getTablesSchemaJson());return!X(t)||N(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ae();if(N(a,(t=>N(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=re(n,a,(()=>[D(o),ae(),[0],0])),[s,r,[I]]=d,$=re(r,o,(()=>0))+1;return $>I&&(d[2]=[$,o]),se(r,o,$),d[3]++,s==D(o)})))))return t[l]={},te(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==E(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=pl(e.getValuesSchemaJson());return X(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:D(l)}})),t},a=e=>il(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(bl+"standalone")).format,z(l,await import(Cl+"estree"),await import(Cl+"typescript"))}catch(e){n=async e=>e}return await O(M(a(e),(async(e,a)=>Rt(await n(e,{...hl,plugins:l,filepath:"_."+t[a]})))))};return H({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{ml as createTools};
|
|
1
|
+
const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",g=h+i,m="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,L=async e=>V.all(e),N=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},D=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,Q=U.freeze,q=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),K=(e,l)=>M(U.entries(e),(([e,t])=>l(t,e))),X=e=>E(Z(e)),Y=e=>q(e)&&0==X(e),ee=(e,l)=>e?.has(l)??!1,le=e=>[...e?.values()??[]],te=(e,l)=>e?.forEach(l),ae=(e,l)=>e?.delete(l),ne=e=>new Map(e),de=(e,l)=>e?.get(l),oe=(e,l)=>te(e,((e,t)=>l(t,e))),se=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),re=(e,l,t)=>R(t)?(ae(e,l),e):e?.set(l,t),Ie=(e,l,t)=>(ee(e,l)||re(e,l,t()),de(e,l)),$e=e=>e.toUpperCase(),ce=e=>e.toLowerCase(),ue="a ",ie="A function for",be=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",Ce="Count",he="Del",ge="Deps",me=ge+"?: React.DependencyList",we="doRollback?: DoRollback",fe="actions: () => Return, "+we,Te="export",ye="Id",ve="Invalid",Ve="Json",xe=ce(I),Re="?: ",Ae=" | undefined",ke="NonNullable",Se="Partial",Pe="Props",Oe="Provider",Ee=`Registers a ${xe} that will be called`,Le="Represents",Ne="rowId: "+ye,De="Schema",Ge="Set",je=", descending?: boolean, offset?: number, limit?: number",He="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=ce(Je),Be="Execute a "+We+" to make multiple mutations",Fe="Explicitly starts a "+We,Ue="Explicitly finishes a "+We,_e="the end of the "+We,Ze="void",Qe=" => "+Ze,qe="WhenSet",Ke=" when setting it",Xe=ue+"string serialization of",Ye=" ",el="Gets a callback that can ",ll="the ",tl=" the schema for",al=(e=0)=>e?"the existence of ":"",nl=(e=0,l=0,a=0)=>al(a)+`the ${Tl[e]}content of`+(l?Ye+Me:t),dl=(e=0,l,a=0,n=0)=>ml[l]+Ye+al(n)+nl(e,1)+(a?" when setting it":t),ol=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${nl()} the '${e}' `+b,sl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,rl=(e,l)=>`Calls a function for each ${e} in `+l,Il=e=>"The props passed to a component that renders "+e,$l=e=>"A function that takes "+e,cl=(e,l=0,t=0)=>ie+" listening to changes to "+al(t)+fl[e]+" in "+fl[l],ul=(e,l,a=0,n=0)=>Ee+" whenever "+al(n)+fl[e]+" in "+fl[l]+" change"+(a?t:"s"),il=e=>`the '${e}' `+b,bl=e=>"the specified Row in "+il(e),pl=(e,l=0,t=0)=>ml[l]+Ye+nl(0,0,t)+Ye+il(e),Cl=(e,l=0,t=0)=>ml[l]+` ${nl(0,0,t)} `+bl(e),hl=(e,l,t=0,a=0)=>ml[t]+Ye+al(a)+`the '${l}' Cell for `+bl(e),gl=(e,l=0,t=0)=>ml[l]+Ye+al(t)+`the '${e}' Value`,ml=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Xe,"Sets "+Xe,Ee+" whenever",el+"set",el+"add",el+"set part of",el+"delete","Renders","Gets "+Xe+tl,"Sets"+tl,"Deletes"+tl],wl=[$,"has","set","del","set","forEach",c,t],fl=[Me,p,ll+b+Ye+i,ue+b,ll+h+Ye+i,ue+h,ll+w+Ye+i,ue+w,"invalid Cell changes",y,ll+T+Ye+i,ue+T,"invalid Value changes",ll+"sorted "+h+Ye+i,ll+w+Ye+i+" anywhere",ll+"number of Rows",ue+w+" anywhere"],Tl=[t,"tabular ","keyed value "],yl=e=>new Set(P(e)||R(e)?e:[e]),vl=(e,l)=>e?.add(l),Vl=/[^A-Za-z]+/,xl=/[^A-Za-z0-9]+/,Rl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Al=e=>e.includes(a),kl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return ee(e,n)?kl(e,l,t,a+1):(re(e,n,t),n)},Sl=e=>e.replace(Rl,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Pl=e=>e.flat(1e3),Ol=(e,l=0)=>H(M(e.split(xl),((e,t)=>(t>0||l?$e:ce)(O(e,0,1))+O(e,1)))),El=e=>$e(H((e&&!Vl.test(e[0])?e:" "+e).split(xl),"_")),Ll=e=>`/** ${e}. */`,Nl=(...e)=>H(J(e,(e=>e)),", "),Dl=(...e)=>"{"+H(e,"; ")+"}",Gl=(...e)=>Dl(...M(e,(e=>"readonly "+e))),jl=()=>{const e=[ne(),ne(),ne(),ne()],l=ne(),a=ne(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Pl(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?vl(Ie(e[n],t,yl),a):0)))),(e,a,n,d=t,o=1)=>kl(l,e,[a,n,d,o]),(e,l,t)=>kl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>de(a,e)===l?e:kl(a,e,l),(l=0)=>M([...G(se(e[l],((e,l)=>`import {${H(G(le(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Al(e)!=Al(l)?Al(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>se(l,(([e,l,a,n],d)=>[Ll(l),`${n?Te+" ":t}type ${d}${a} = ${e};`,t])),()=>se(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Hl=e=>{const l=new WeakMap;return t=>(l.has(t)||l.set(t,e(t)),l.get(t))},Ml=(e,l,t)=>[l=>K(e,((e,a)=>l(a,Ol(a,1),t(El(a),`'${a}'`)))),(l,a)=>K(e[l],((e,l)=>a(l,e[s],e[r],t(El(l),`'${l}'`),Ol(l,1)))),e=>K(l,((l,a)=>e(a,l[s],l[r],t(El(a),`'${a}'`),Ol(a,1))))],Jl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),dl(1,5)),r=e(p+qe,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),dl(1,5,1)),$=e(b+ye,"keyof "+s,"A "+b+" Id in "+Me),c=`<TId extends ${$}>`,i=e(b,ke+`<${s}[TId]>`,"A "+b+" in "+Me,c),T=e(b+qe,ke+`<${r}[TId]>`,"A "+b+" in "+Me+Ke,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+qe,T+"<TId>[Id]","A "+h+" in a "+b+Ke,c),V=e(w+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,ke+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+pe,`(...[cellId, cell]: ${A}<TId>)`+Qe,$l(ue+w+" Id, and "+w),c),S=e(h+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Qe+") "+Qe,$l(ue+h+" Id, and a "+w+" iterator"),c),P=e(b+w+pe,`(cellId: ${V}<TId>, count: number) `+Qe,$l(ue+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+pe,`(...[tableId, forEachRow]: ${O})`+Qe,$l(ue+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,ie+" returning information about any Cell's changes during a "+We),D=e(u+p+I,`(${o}, hasTables: boolean)`+Qe,cl(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${N}${Ae})`+Qe,cl(1)),j=e(C+I,`(${o})`+Qe,cl(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+Qe,cl(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${N}${Ae})`+Qe,cl(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+Qe,cl(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Qe,cl(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+Qe,cl(15,3)),U=e(g+I,`(${o}, tableId: ${$})`+Qe,cl(4,3)),_=e(m+I,"("+Nl(o,"tableId: "+$,"cellId: Id"+Ae,"descending: boolean","offset: number","limit: number"+Ae,"sortedRowIds: Ids")+")"+Qe,cl(13,3)),Z=e(u+h+I,"("+Nl(""+o,"tableId: "+$,Ne,"hasRow: boolean")+")"+Qe,cl(5,3,1)),Q=e(h+I,"("+Nl(""+o,"tableId: "+$,Ne,`getCellChange: ${N}${Ae}`)+")"+Qe,cl(5,3)),q=e(f+I,"("+Nl(""+o,"tableId: "+$,Ne)+")"+Qe,cl(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Qe,cl(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, newCell: ${x}<TId, CId> ${Ae}, oldCell: ${x}<TId, CId> ${Ae}, getCellChange: ${N} ${Ae}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Qe,cl(7,5)),e(ve+w+I,`(${o}, tableId: Id, ${Ne}, cellId: Id, invalidCells: any[])`+Qe,cl(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Dl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),dl(2,5)),s=e(y+qe,Dl(...n(((e,l)=>`'${e}'?: ${l}`))),dl(2,5,1)),r=e(T+ye,"keyof "+o,"A "+T+" Id in "+Me),$=e(T,ke+`<${o}[VId]>`,"A "+T+" Id in "+Me,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+Me,`<VId = ${r}>`,0),i=e(T+pe,`(...[valueId, value]: ${c})`+Qe,$l(ue+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ie+" returning information about any Value's changes during a "+We),p=e(u+y+I,`(${d}, hasValues: boolean)`+Qe,cl(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Ae})`+Qe,cl(9)),h=e(v+I,`(${d})`+Qe,cl(10)),g=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+Qe,cl(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Ae}, oldValue: ${$}<VId> ${Ae}, getValueChange: ${b} ${Ae}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,g,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+Qe,cl(11)),e(ve+T+I,`(${d}, valueId: Id, invalidValues: any[])`+Qe,cl(12))]},(l,t)=>e(Je+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Qe,ie+" listening to the completion of a "+We)],zl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Wl=(e,l=t)=>`fluent(() => ${zl(e,l)})`,Bl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Fl=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=jl(),[E,L,N]=Ml(e,a,A),[D,G,M]=Jl(V,E,L,N),J=ne(),W=(e=0)=>se(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Ll(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>kl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(wl[e]+l+(4==e?Se:t)+a,o,n,(n==Q?Wl:zl)(wl[e]+(4==e?Se:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+xe+": "+l+(o?", mutator?: boolean":t),ye,Bl(c+e+I,d,o?"mutator":t),a,s),Z=`./${Ol(n)}.d`,Q=Ol(n,1),q=Ol(Q),K=[],X=ne();let ee=[],te=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),Y(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue]=D(q,Q),ie=ne();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+qe,I+t,Le+` the '${e}' `+b+Ke),V(l+h,c+t,ol(e)),V(l+h+qe,T+t,ol(e,1)),V(l+w+ye,y+t,`A Cell Id for the '${e}' `+b),V(l+w+pe,x+t,$l(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+pe,k+t,$l(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+pe,P+t,$l(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];re(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue),ee=[e,a,n,y,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,dl(1,n),l,a))),U(0,t,C,n+He,sl(b,Me)),U(5,t,b,Ze,rl(b,Me),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=de(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,pl(e,s),d,a+o))),U(0,l,b+f,i,sl(w,"the whole of "+il(e)),t,a),U(5,l,b+w,Ze,rl(b+w,"the whole of "+il(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+Ce,"number","Gets the number of Rows in the "+il(e),t,a),U(0,l,g,i,sl(h,il(e)),t,a),U(0,l,m,i,sl(h,il(e),1),"cellId?: "+I+je,a+", cellId, descending, offset, limit"),U(5,l,h,Ze,rl(h,il(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,Cl(e,s),Ne+d,a+", rowId"+o))),U(6,l,h,ye+Ae,"Add a new Row to "+il(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+He,sl(w,bl(e)),Ne,a+", rowId"),U(5,l,w,Ze,rl(w,bl(e)),Ne+", cellCallback: "+$,a+", rowId, cellCallback as any"),L(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);re(X,o,$);const c=o+(R(s)?Ae:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,hl(e,n,$),Ne+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,ml[1]+` the '${n}' Cell anywhere in `+il(e),t,a+", "+r)}))})),U(0,t,p+Ve,Ve,dl(1,6)),U(2,t,p+Ve,Q,dl(1,7),"tablesJson: "+Ve,"tables"+Ve),_(u+p,N,dl(1,8,0,1)+" changes"),_(p,G,dl(1,8)+" changes"),_(C,M,ul(2,0,1)),_(u+b,J,ul(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,ul(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,ul(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,ul(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+Ce,Y,ul(15,3),`tableId: ${n} | null`,"tableId"),_(g,te,ul(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,ae,ul(13,3,1),Nl("tableId: TId",`cellId: ${y}<TId>`+Ae,"descending: boolean","offset: number","limit: number"+Ae),Nl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,oe,ul(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,ul(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Ie,ul(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,ul(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,ul(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(ve+w,ue,Ee+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...le(X)),z(K,".set"+p+De+"({",Pl(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Y(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),te=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,dl(2,n),l,a))),U(0,t,v,n+He,sl(T,Me)),U(5,t,T,"void",rl(T,Me),"valueCallback: "+I,"valueCallback as any"),N(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);re(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Ve,Ve,dl(2,6)),U(2,t,y+Ve,Q,dl(2,7),"valuesJson: "+Ve,"values"+Ve),_(u+y,c,dl(2,8,0,1)+" changes"),_(y,i,dl(2,8)+" changes"),_(v,b,ul(10,0,1)),_(u+T,p,ul(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,ul(11,0),`valueId: ${n} | null`,"valueId"),_(ve+T,h,Ee+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...le(X)),$(0,l,"ValueChange"),z(K,".set"+y+De+"({",N(((e,l,a,n)=>[`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,dl(0,0)),U(2,t,"Content",Q,dl(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,t,ze,Q,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),oe(X,((e,l)=>V(l,`(cell: ${e}${Ae}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",ye,"IdOrNull",Ve,"Store",ze),$(0,l,"Get"+ze,"GetTransactionLog"),U(0,t,Ve,Ve,dl(0,6)),U(2,t,Ve,Q,dl(0,7),"tablesAndValuesJson: "+Ve,"tablesAndValuesJson"),U(7,t,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,t,"start"+Je,Q,Fe),U(7,t,"finish"+Je,Q,Ue,we,"doRollback");const ae=M(q,Q);return _("Start"+Je,ae,Ee+" just before the start of the "+We,t,t,0),_("WillFinish"+Je,ae,Ee+" just before "+_e,t,t,0),_("DidFinish"+Je,ae,Ee+" just after "+_e,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",ml[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),Te+" interface "+Q+" {",...W(0),"}",t,Ll(`Creates a ${Q} object`),Te+" function create"+Q+"(): "+Q+";"),o(...k(1),Te+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),ee,te]},Ul=e=>$+e,_l=e=>Nl(Ul(e),Ul(e)+ge),Zl="debugIds?: boolean",Ql="debugIds={debugIds}",ql="then"+me,Kl="Parameter",Xl=": (parameter: "+Kl+", store: Store) => ",Yl="const contextValue = useContext(Context);",et=", based on a parameter",lt=": ",tt="<"+Kl+",>",at=Kl+"ized"+pe+"<"+Kl+">",nt="rowId",dt="rowId={rowId}",ot=", separator, debugIds",st="separator?: ReactElement | string",rt="then?: (store: Store",It=Nl(rt+")"+Qe,ql),$t="then, then"+ge,ct=nt+lt+ye,ut="View",it=(e,...l)=>Nl(...l,xe+": "+e,xe+me,"mutator?: boolean"),bt=(...e)=>Nl(...e,xe,xe+ge,"mutator"),pt=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=jl(),[O,E,L]=Ml(e,a,A),N=`./${Ol(n)}.d`,D=`./${Ol(n)}-ui-react.d`,G="tinybase/ui-react",j=Ol(n,1),M=Ol(j),J=j+"Or"+j+ye,W=M+"Or"+j+ye,F=M+`={${M}}`,U=ne(),_=(e,l,a,n,d,o=t)=>(c(1,D,e+" as "+e+"Decl"),kl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Nl(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>se(U,(([l,a,n,d,o],s)=>{const r=e?[Te+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[Te+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Ll(d)),z(r,t),r}));c(null,l,ye,"Store",pe,Kl+"ized"+pe),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=V(J,j+" | "+ye,`Used when you need to refer to a ${j} in a React hook or component`),ee=V(Oe+Pe,Gl(M+Re+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Oe} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,ee);const le=W+Re+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+me,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Ae,["{",Yl,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Oe} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),oe=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=x("wrap",Nl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Nl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!Y(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,L,G,J,z,W,B,U,_]=s;c(null,N,e,a,n,$,T,y,v,A,k,S,P,L,G,J,z,W,U,B),c(0,N,r),c(1,N,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+ot+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+oe+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",dt,"customCellIds={customCellIds}",F,Ql,"/>","))",ot,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,dl(1,0,0,1)+be),Q(p,p,e,dl(1,0)+be);const Y=Q(C,C,n+He,sl(b,Me)+be);Q(Ge+p+pe,Ge+p+pe,at,dl(1,9)+et,Nl(Ul(p)+Xl+a,Ul(p)+me),_l(p),tt,Nl(rt,`tables: ${a})`+Qe,ql),$t),Q(he+p+pe,he+p+pe,pe,dl(1,12),t,t,t,It,$t);const ee=V(w+Pe,Gl("tableId?: TId","rowId: Id","cellId?: CId",M+Re+j,Zl),Il(ue+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Pe,Gl("tableId?: TId","rowId: Id",M+Re+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,st,Zl),Il(ue+h),`<TId extends ${n}>`),te=V(b+Pe,Gl("tableId?: TId",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Pe,Gl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+"sorted "+b),`<TId extends ${n}>`),ne=V(p+Pe,Gl(M+Re+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,st,Zl),Il(nl(1,1)));c(1,D,ne,te,ae,le,ee),q(p+ut,"{"+M+", tableComponents, getTableComponentProps"+ot+"}: "+ne,[re+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${oe}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,Ql,"/>;","}), separator)"],dl(1,13)+be),O(((e,l,a)=>{const[n,s,r,I,$]=de(_,e);c(null,N,n,s,r,I,$),Q(u+l+b,u+b,d,pl(e,0,1)+be,t,a),Q(l+b,b,n,pl(e)+be,t,a),Q(l+b+f,b+f,i,sl(w,"the whole of "+il(e))+be,t,a),Q(l+h+Ce,h+Ce,o,"Gets the number of Rows in "+il(e)+be,t,a);const p=Q(l+g,g,i,sl(h,il(e))+be,t,a),C=Q(l+m,m,i,sl(h,il(e),1)+be,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,Cl(e,0,1)+be,ct,Nl(a,nt)),Q(l+h,h,r,Cl(e)+be,ct,Nl(a,nt)),Q(l+f,f,$+He,sl(w,bl(e))+be,ct,Nl(a,nt)),Q(Ge+l+b+pe,Ge+b+pe,at,pl(e,9)+et,Nl(Ul(b)+Xl+s,Ul(b)+me),Nl(a,_l(b)),tt,Nl(rt,`table: ${s})`+Qe,ql),$t),Q(he+l+b+pe,he+b+pe,pe,pl(e,12),t,a,t,It,$t),Q(Ge+l+h+pe,Ge+h+pe,at,Cl(e,9)+et,Nl(ct,Ul(h)+Xl+I,Ul(h)+me),Nl(a,nt,_l(h)),tt,Nl(rt,`row: ${I})`+Qe,ql),$t),Q("Add"+l+h+pe,"Add"+h+pe,at,Cl(e,10)+et,Nl(Ul(h)+Xl+I,Ul(h)+me),Nl(a,_l(h)),tt,"then?: ("+Nl(ct+Ae,"store: Store","row: "+I+")"+Qe,"then"+me)+", reuseRowIds?: boolean",$t+", reuseRowIds"),Q(Ge+l+Se+h+pe,Ge+Se+h+pe,at,Cl(e,11)+et,Nl(ct,Ul(Se+h)+Xl+I,Ul(Se+h)+me),Nl(a,nt,_l(Se+h)),tt,Nl(rt,`partialRow: ${I})`+Qe,ql),$t),Q(he+l+h+pe,he+h+pe,pe,Cl(e,12),ct,Nl(a,nt),t,It,$t);const T=q(l+h+ut,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+ot+`}: ${le}<'${e}'>`,[re+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${oe}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,dt,"cellId={cellId}",F,Ql,"/>;","})"+ot+", rowId)"],Cl(e,13)+be);q(l+"Sorted"+b+ut,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,pl(e,13)+", sorted"+be),q(l+b+ut,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,pl(e,13)+be),E(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);c(0,N,$),c(1,N,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${al(1)}the '${n}' Cell anywhere in `+il(e)+be,t,Nl(a,r)),Q(u+l+I+w,u+w,d,hl(e,n,0,1)+be,ct,Nl(a,nt,r));const i=Q(l+I+w,w,o+(R(s)?Ae:t),hl(e,n)+be,ct,Nl(a,nt,r));Q(Ge+l+I+w+pe,Ge+w+pe,at,hl(e,n,9)+et,Nl(ct,Ul(w)+Xl+o+" | "+$,Ul(w)+me),Nl(a,nt,r,_l(w)),tt,Nl(rt,`cell: ${o} | ${$})`+Qe,ql),$t),Q(he+l+I+w+pe,he+w+pe,pe,hl(e,n,12),Nl(ct,"forceDel?: boolean"),Nl(a,nt,r,"forceDel"),t,It,$t),q(l+I+w+ut,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[re+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],hl(e,n,13)+be)}))}));const se=H(O((e=>de(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Ze,dl(1,8,0,1)+" changes",it($),bt()),Q(p+I,p+I,Ze,dl(1,8)+" changes",it(T),bt()),Q(C+I,C+I,Ze,ul(2,0,1),it(y),bt()),Q(u+b+I,u+b+I,Ze,ul(3,0,0,1),it(v,`tableId: ${n} | null`),bt("tableId")),Q(b+I,b+I,Ze,ul(3,0),it(A,`tableId: ${n} | null`),bt("tableId")),Q(b+f+I,b+f+I,Ze,ul(14,3,1),it(k,`tableId: ${n} | null`),bt("tableId")),Q(u+b+w+I,u+b+w+I,Ze,ul(16,3,0,1),it(S,`tableId: ${n} | null`,`cellId: ${se} | null`),bt("tableId","cellId")),Q(h+Ce+I,h+Ce+I,Ze,ul(15,3),it(P,`tableId: ${n} | null`),bt("tableId")),Q(g+I,g+I,Ze,ul(4,3,1),it(L,`tableId: ${n} | null`),bt("tableId")),Q(m+I,m+I,Ze,ul(13,3,1),it(G,`tableId: ${n} | null`,"cellId: "+se+Ae,"descending: boolean","offset: number","limit: number"+Ae),bt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Ze,ul(5,3,0,1),it(J,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(h+I,h+I,Ze,ul(5,3),it(z,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(f+I,f+I,Ze,ul(6,5,1),it(W,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(u+w+I,u+w+I,Ze,ul(7,5,0,1),it(B,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId")),Q(w+I,w+I,Ze,ul(7,5),it(U,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId"))}if(!Y(a)){const[e,l,a,n,o,s,$,i]=r;c(null,N,...r),c(1,N,j);const b=x("getDefaultValueComponent","valueId: Id",H(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,dl(2,0,0,1)+be),Q(y,y,e,dl(2,0)+be);const p=Q(v,v,a+He,sl(T,Me)+be);Q(Ge+y+pe,Ge+y+pe,at,dl(2,9)+et,Nl(Ul(y)+Xl+l,Ul(y)+me),_l(y),tt,Nl(rt,`values: ${l})`+Qe,ql),$t),Q(Ge+Se+y+pe,Ge+Se+y+pe,at,dl(2,11)+et,Nl(Ul(Se+y)+Xl+l,Ul(Se+y)+me),_l(Se+y),tt,Nl(rt,`partialValues: ${l})`+Qe,ql),$t),Q(he+y+pe,he+y+pe,pe,dl(2,12),t,t,t,It,$t);const C=V(T+Pe,Gl("valueId?: VId",M+Re+j,Zl),Il("a Value"),`<VId extends ${a}>`),h=V(y+Pe,Gl(M+Re+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,st,Zl),Il(nl(2,1)));c(1,D,h,C),q(y+ut,"{"+M+", valueComponents, getValueComponentProps"+ot+"}: "+h,[re+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${oe}(getValueComponentProps, valueId)}`,"key={valueId}",F,Ql,"/>;","}), separator)"],dl(2,13)+be),L(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);c(0,N,s),c(1,N,s),Q(u+o+T,u+T,d,gl(e,0,1)+be,t,n);const r=Q(o+T,T,l,gl(e)+be,t,n);Q(Ge+o+T+pe,Ge+T+pe,at,gl(e,9)+et,Nl(Ul(T)+Xl+l+" | "+s,Ul(T)+me),Nl(n,_l(T)),tt,Nl(rt,`value: ${l} | ${s})`+Qe,ql),$t),Q(he+o+T+pe,he+T+pe,pe,gl(e,12),t,n,t,It,$t),q(o+T+ut,`{${M}, debugIds}: ${C}<'${e}'>`,[re+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+be)})),Q(u+y+I,u+y+I,Ze,dl(2,8,0,1)+" changes",it(n),bt()),Q(y+I,y+I,Ze,dl(2,8)+" changes",it(o),bt()),Q(v+I,v+I,Ze,ul(10,0,1),it(s),bt()),Q(u+T+I,u+T+I,Ze,ul(11,0,0,1),it($,`valueId: ${a} | null`),bt("valueId")),Q(T+I,T+I,Ze,ul(11,0),it(i,`valueId: ${a} | null`),bt("valueId"))}return q(Oe,`{${M}, ${M}ById, children}: `+ee+" & {children: React.ReactNode}",["{",Yl,"return (","<Context."+Oe,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Oe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},Ct=(e,l,a)=>{if(Y(e)&&Y(l))return[t,t,t,t];const[n,d,o,s]=Fl(e,l,a);return[n,d,...pt(e,l,a,o,s)]},ht=JSON.parse,gt="prettier/",mt=gt+"plugins/",wt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ft=Hl((e=>{const l=()=>{const l=ht(e.getTablesSchemaJson());return!Y(l)||D(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=ne();if(D(a,(l=>D(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=Ie(n,a,(()=>[N(d),ne(),[0],0])),[s,r,[I]]=o,$=Ie(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),re(r,d,$),o[3]++,s==N(d)})))))return l[t]={},te(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=ht(e.getValuesSchemaJson());return Y(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:N(t)}})),l},a=e=>Ct(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(mt+"estree"),await import(mt+"typescript"))}catch(e){n=async e=>e}return await L(M(a(e),(async(e,a)=>Sl(await n(e,{...wt,plugins:t,filepath:"_."+l[a]})))))};return Q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{ft as createTools};
|
package/lib/tools.js.gz
CHANGED
|
Binary file
|
|
@@ -18,8 +18,15 @@
|
|
|
18
18
|
* @since 4.3.0
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
|
-
import {
|
|
22
|
-
|
|
21
|
+
import {
|
|
22
|
+
Cell,
|
|
23
|
+
CellOrUndefined,
|
|
24
|
+
Tables,
|
|
25
|
+
Value,
|
|
26
|
+
ValueOrUndefined,
|
|
27
|
+
Values,
|
|
28
|
+
} from '../store';
|
|
29
|
+
import {Connection, Party, Request, Server, Storage} from 'partykit/server';
|
|
23
30
|
import {Id} from '../common';
|
|
24
31
|
|
|
25
32
|
/**
|
|
@@ -517,3 +524,52 @@ export class TinyBasePartyKitServer implements Server {
|
|
|
517
524
|
*/
|
|
518
525
|
canDelValue(valueId: Id, connection: Connection): boolean;
|
|
519
526
|
}
|
|
527
|
+
|
|
528
|
+
/**
|
|
529
|
+
* The hasStoreInStorage function returns a boolean indicating whether durable
|
|
530
|
+
* PartyKit storage contains a serialized Store.
|
|
531
|
+
*
|
|
532
|
+
* This is intended for specialist applications that require the ability to
|
|
533
|
+
* inspect or load a TinyBase Store from a server's storage outside of the
|
|
534
|
+
* normal context of a TinyBasePartyKitServer.
|
|
535
|
+
*
|
|
536
|
+
* The function is asynchronous, so you should use the `await` keyword or handle
|
|
537
|
+
* the result as a promise.
|
|
538
|
+
* @param storage A reference to the storage object, as would normally be
|
|
539
|
+
* accessible from the `TinyBasePartyKitServer.party` object.
|
|
540
|
+
* @param storagePrefix An optional prefix used before all the keys in the
|
|
541
|
+
* server's durable storage, to match the equivalent property in the server's
|
|
542
|
+
* TinyBasePartyKitServerConfig.
|
|
543
|
+
* @returns A promised boolean indicating whether a Store is present in the
|
|
544
|
+
* storage.
|
|
545
|
+
* @category Storage
|
|
546
|
+
* @since v4.4.1
|
|
547
|
+
*/
|
|
548
|
+
export function hasStoreInStorage(
|
|
549
|
+
storage: Storage,
|
|
550
|
+
storagePrefix?: string,
|
|
551
|
+
): Promise<boolean>;
|
|
552
|
+
|
|
553
|
+
/**
|
|
554
|
+
* The loadStoreFromStorage function returns the content of a Store from durable
|
|
555
|
+
* PartyKit storage.
|
|
556
|
+
*
|
|
557
|
+
* This is intended for specialist applications that require the ability to
|
|
558
|
+
* inspect or load a TinyBase Store from a server's storage outside of the
|
|
559
|
+
* normal context of a TinyBasePartyKitServer.
|
|
560
|
+
*
|
|
561
|
+
* The function is asynchronous, so you should use the `await` keyword or handle
|
|
562
|
+
* the result as a promise.
|
|
563
|
+
* @param storage A reference to the storage object, as would normally be
|
|
564
|
+
* accessible from the `TinyBasePartyKitServer.party` object.
|
|
565
|
+
* @param storagePrefix An optional prefix used before all the keys in the
|
|
566
|
+
* server's durable storage, to match the equivalent property in the server's
|
|
567
|
+
* TinyBasePartyKitServerConfig.
|
|
568
|
+
* @returns A promised array of a Tables object and a Values object.
|
|
569
|
+
* @category Storage
|
|
570
|
+
* @since v4.4.1
|
|
571
|
+
*/
|
|
572
|
+
export function loadStoreFromStorage(
|
|
573
|
+
storage: Storage,
|
|
574
|
+
storagePrefix?: string,
|
|
575
|
+
): Promise<[Tables, Values]>;
|
|
@@ -55,8 +55,13 @@ export interface RemotePersister extends Persister {
|
|
|
55
55
|
* the `POST` method (to send the Store JSON to save) respectively.
|
|
56
56
|
*
|
|
57
57
|
* For when you choose to enable automatic loading for the Persister (with the
|
|
58
|
-
* startAutoLoad method), it will poll the loadUrl for changes
|
|
58
|
+
* startAutoLoad method), it will poll the loadUrl for changes, using the
|
|
59
|
+
* `ETag` HTTP header to identify if things have changed. The
|
|
59
60
|
* `autoLoadIntervalSeconds` method is used to indicate how often to do this.
|
|
61
|
+
*
|
|
62
|
+
* If you are implementing the server portion of this functionality yourself,
|
|
63
|
+
* remember to ensure that the `ETag` header changes every time the server's
|
|
64
|
+
* Store content does - otherwise changes will not be detected by the client.
|
|
60
65
|
* @param store The Store to persist.
|
|
61
66
|
* @param loadUrl The endpoint that supports a `GET` method to load JSON.
|
|
62
67
|
* @param saveUrl The endpoint that supports a `POST` method to save JSON.
|
package/lib/types/tools.d.ts
CHANGED
|
@@ -421,7 +421,7 @@ export interface Tools {
|
|
|
421
421
|
* // -> `export type Tables = {pets?: {[rowId: Id]: {price?: number}}};`
|
|
422
422
|
*
|
|
423
423
|
* const tsLines = ts.split('\n');
|
|
424
|
-
* console.log(tsLines[
|
|
424
|
+
* console.log(tsLines[89]);
|
|
425
425
|
* // -> ' hasPetsTable: (): boolean => store.hasTable(PETS),'
|
|
426
426
|
* ```
|
|
427
427
|
* @example
|
|
@@ -441,7 +441,7 @@ export interface Tools {
|
|
|
441
441
|
* // -> 'export type Tables = {pets?: {[rowId: Id]: {price: number}}};'
|
|
442
442
|
*
|
|
443
443
|
* const tsLines = ts.split('\n');
|
|
444
|
-
* console.log(tsLines[
|
|
444
|
+
* console.log(tsLines[91]);
|
|
445
445
|
* // -> ' hasPetsTable: (): boolean => store.hasTable(PETS),'
|
|
446
446
|
* ```
|
|
447
447
|
* @category Modelling
|
|
@@ -23,8 +23,11 @@ import {
|
|
|
23
23
|
CellOrUndefined,
|
|
24
24
|
NoTablesSchema,
|
|
25
25
|
NoValuesSchema,
|
|
26
|
+
OptionalSchemas,
|
|
27
|
+
Tables,
|
|
26
28
|
Value,
|
|
27
29
|
ValueOrUndefined,
|
|
30
|
+
Values,
|
|
28
31
|
} from '../store';
|
|
29
32
|
import {Connection, Party, Request, Server} from 'partykit/server';
|
|
30
33
|
import {Id} from '../common';
|
|
@@ -550,3 +553,61 @@ export class TinyBasePartyKitServer implements Server {
|
|
|
550
553
|
*/
|
|
551
554
|
canDelValue(valueId: Id, connection: Connection): boolean;
|
|
552
555
|
}
|
|
556
|
+
|
|
557
|
+
/**
|
|
558
|
+
* The hasStoreInStorage function returns a boolean indicating whether durable
|
|
559
|
+
* PartyKit storage contains a serialized Store.
|
|
560
|
+
*
|
|
561
|
+
* This is intended for specialist applications that require the ability to
|
|
562
|
+
* inspect or load a TinyBase Store from a server's storage outside of the
|
|
563
|
+
* normal context of a TinyBasePartyKitServer.
|
|
564
|
+
*
|
|
565
|
+
* The function is asynchronous, so you should use the `await` keyword or handle
|
|
566
|
+
* the result as a promise.
|
|
567
|
+
* @param storage A reference to the storage object, as would normally be
|
|
568
|
+
* accessible from the `TinyBasePartyKitServer.party` object.
|
|
569
|
+
* @param storagePrefix An optional prefix used before all the keys in the
|
|
570
|
+
* server's durable storage, to match the equivalent property in the server's
|
|
571
|
+
* TinyBasePartyKitServerConfig.
|
|
572
|
+
* @returns A promised boolean indicating whether a Store is present in the
|
|
573
|
+
* storage.
|
|
574
|
+
* @category Storage
|
|
575
|
+
* @since v4.4.1
|
|
576
|
+
*/
|
|
577
|
+
export function hasStoreInStorage(
|
|
578
|
+
storage: Storage,
|
|
579
|
+
storagePrefix?: string,
|
|
580
|
+
): Promise<boolean>;
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* The loadStoreFromStorage function returns the content of a Store from durable
|
|
584
|
+
* PartyKit storage.
|
|
585
|
+
*
|
|
586
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
587
|
+
*
|
|
588
|
+
* ```ts override
|
|
589
|
+
* loadStoreFromStorage(
|
|
590
|
+
* storage: Storage,
|
|
591
|
+
* storagePrefix?: string,
|
|
592
|
+
* ): Promise<[Tables, Values]>;
|
|
593
|
+
* ```
|
|
594
|
+
*
|
|
595
|
+
* This is intended for specialist applications that require the ability to
|
|
596
|
+
* inspect or load a TinyBase Store from a server's storage outside of the
|
|
597
|
+
* normal context of a TinyBasePartyKitServer.
|
|
598
|
+
*
|
|
599
|
+
* The function is asynchronous, so you should use the `await` keyword or handle
|
|
600
|
+
* the result as a promise.
|
|
601
|
+
* @param storage A reference to the storage object, as would normally be
|
|
602
|
+
* accessible from the `TinyBasePartyKitServer.party` object.
|
|
603
|
+
* @param storagePrefix An optional prefix used before all the keys in the
|
|
604
|
+
* server's durable storage, to match the equivalent property in the server's
|
|
605
|
+
* TinyBasePartyKitServerConfig.
|
|
606
|
+
* @returns A promised array of a Tables object and a Values object.
|
|
607
|
+
* @category Storage
|
|
608
|
+
* @since v4.4.1
|
|
609
|
+
*/
|
|
610
|
+
export function loadStoreFromStorage<Schemas extends OptionalSchemas>(
|
|
611
|
+
storage: Storage,
|
|
612
|
+
storagePrefix?: string,
|
|
613
|
+
): Promise<[Tables<Schemas[0]>, Values<Schemas[1]>]>;
|
|
@@ -68,8 +68,13 @@ export interface RemotePersister<Schemas extends OptionalSchemas>
|
|
|
68
68
|
* the `POST` method (to send the Store JSON to save) respectively.
|
|
69
69
|
*
|
|
70
70
|
* For when you choose to enable automatic loading for the Persister (with the
|
|
71
|
-
* startAutoLoad method), it will poll the loadUrl for changes
|
|
71
|
+
* startAutoLoad method), it will poll the loadUrl for changes, using the
|
|
72
|
+
* `ETag` HTTP header to identify if things have changed. The
|
|
72
73
|
* `autoLoadIntervalSeconds` method is used to indicate how often to do this.
|
|
74
|
+
*
|
|
75
|
+
* If you are implementing the server portion of this functionality yourself,
|
|
76
|
+
* remember to ensure that the `ETag` header changes every time the server's
|
|
77
|
+
* Store content does - otherwise changes will not be detected by the client.
|
|
73
78
|
* @param store The Store to persist.
|
|
74
79
|
* @param loadUrl The endpoint that supports a `GET` method to load JSON.
|
|
75
80
|
* @param saveUrl The endpoint that supports a `POST` method to save JSON.
|