tinybase 4.0.0 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  11. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  12. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  13. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  14. package/lib/cjs/persisters/persister-file.cjs +1 -1
  15. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  16. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  17. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  18. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  19. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  20. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  21. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  22. package/lib/cjs/relationships.cjs +1 -1
  23. package/lib/cjs/relationships.cjs.gz +0 -0
  24. package/lib/cjs/store.cjs +1 -1
  25. package/lib/cjs/store.cjs.gz +0 -0
  26. package/lib/cjs/tinybase.cjs +1 -1
  27. package/lib/cjs/tinybase.cjs.gz +0 -0
  28. package/lib/cjs/tools.cjs +1 -1
  29. package/lib/cjs/tools.cjs.gz +0 -0
  30. package/lib/cjs/ui-react.cjs +1 -1
  31. package/lib/cjs/ui-react.cjs.gz +0 -0
  32. package/lib/cjs-es6/checkpoints.cjs +1 -1
  33. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  34. package/lib/cjs-es6/indexes.cjs +1 -1
  35. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  36. package/lib/cjs-es6/metrics.cjs +1 -1
  37. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  38. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  39. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  40. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  41. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  42. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  43. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  44. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  45. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  46. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  47. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  48. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  49. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  50. package/lib/cjs-es6/relationships.cjs +1 -1
  51. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  52. package/lib/cjs-es6/store.cjs +1 -1
  53. package/lib/cjs-es6/store.cjs.gz +0 -0
  54. package/lib/cjs-es6/tinybase.cjs +1 -1
  55. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  56. package/lib/cjs-es6/tools.cjs +1 -1
  57. package/lib/cjs-es6/tools.cjs.gz +0 -0
  58. package/lib/cjs-es6/ui-react.cjs +1 -1
  59. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  60. package/lib/debug/checkpoints.js +6 -6
  61. package/lib/debug/indexes.js +7 -7
  62. package/lib/debug/metrics.js +12 -12
  63. package/lib/debug/persisters/persister-browser.js +10 -19
  64. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +183 -132
  65. package/lib/debug/persisters/persister-file.js +10 -19
  66. package/lib/debug/persisters/persister-remote.js +10 -19
  67. package/lib/debug/persisters/persister-sqlite-wasm.js +178 -131
  68. package/lib/debug/persisters/persister-sqlite3.js +178 -132
  69. package/lib/debug/persisters.js +4 -4
  70. package/lib/debug/relationships.js +7 -7
  71. package/lib/debug/store.js +16 -24
  72. package/lib/debug/tinybase.js +20 -28
  73. package/lib/debug/tools.js +14 -13
  74. package/lib/debug/ui-react.js +4 -4
  75. package/lib/es6/checkpoints.js +1 -1
  76. package/lib/es6/checkpoints.js.gz +0 -0
  77. package/lib/es6/indexes.js +1 -1
  78. package/lib/es6/indexes.js.gz +0 -0
  79. package/lib/es6/metrics.js +1 -1
  80. package/lib/es6/metrics.js.gz +0 -0
  81. package/lib/es6/persisters/persister-browser.js +1 -1
  82. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  83. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  84. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  85. package/lib/es6/persisters/persister-file.js +1 -1
  86. package/lib/es6/persisters/persister-file.js.gz +0 -0
  87. package/lib/es6/persisters/persister-remote.js +1 -1
  88. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  89. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  90. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  91. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  92. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  93. package/lib/es6/relationships.js +1 -1
  94. package/lib/es6/relationships.js.gz +0 -0
  95. package/lib/es6/store.js +1 -1
  96. package/lib/es6/store.js.gz +0 -0
  97. package/lib/es6/tinybase.js +1 -1
  98. package/lib/es6/tinybase.js.gz +0 -0
  99. package/lib/es6/tools.js +1 -1
  100. package/lib/es6/tools.js.gz +0 -0
  101. package/lib/es6/ui-react.js +1 -1
  102. package/lib/es6/ui-react.js.gz +0 -0
  103. package/lib/indexes.js +1 -1
  104. package/lib/indexes.js.gz +0 -0
  105. package/lib/metrics.js +1 -1
  106. package/lib/metrics.js.gz +0 -0
  107. package/lib/persisters/persister-browser.js +1 -1
  108. package/lib/persisters/persister-browser.js.gz +0 -0
  109. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  110. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  111. package/lib/persisters/persister-file.js +1 -1
  112. package/lib/persisters/persister-file.js.gz +0 -0
  113. package/lib/persisters/persister-remote.js +1 -1
  114. package/lib/persisters/persister-remote.js.gz +0 -0
  115. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  116. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  117. package/lib/persisters/persister-sqlite3.js +1 -1
  118. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  119. package/lib/relationships.js +1 -1
  120. package/lib/relationships.js.gz +0 -0
  121. package/lib/store.js +1 -1
  122. package/lib/store.js.gz +0 -0
  123. package/lib/tinybase.js +1 -1
  124. package/lib/tinybase.js.gz +0 -0
  125. package/lib/tools.js +1 -1
  126. package/lib/tools.js.gz +0 -0
  127. package/lib/types/persisters.d.ts +7 -0
  128. package/lib/types/with-schemas/persisters.d.ts +7 -0
  129. package/lib/ui-react.js +1 -1
  130. package/lib/ui-react.js.gz +0 -0
  131. package/lib/umd/checkpoints.js +1 -1
  132. package/lib/umd/checkpoints.js.gz +0 -0
  133. package/lib/umd/indexes.js +1 -1
  134. package/lib/umd/indexes.js.gz +0 -0
  135. package/lib/umd/metrics.js +1 -1
  136. package/lib/umd/metrics.js.gz +0 -0
  137. package/lib/umd/persisters/persister-browser.js +1 -1
  138. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  139. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  140. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  141. package/lib/umd/persisters/persister-file.js +1 -1
  142. package/lib/umd/persisters/persister-file.js.gz +0 -0
  143. package/lib/umd/persisters/persister-remote.js +1 -1
  144. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  145. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  146. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  147. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  148. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  149. package/lib/umd/relationships.js +1 -1
  150. package/lib/umd/relationships.js.gz +0 -0
  151. package/lib/umd/store.js +1 -1
  152. package/lib/umd/store.js.gz +0 -0
  153. package/lib/umd/tinybase.js +1 -1
  154. package/lib/umd/tinybase.js.gz +0 -0
  155. package/lib/umd/tools.js +1 -1
  156. package/lib/umd/tools.js.gz +0 -0
  157. package/lib/umd/ui-react.js +1 -1
  158. package/lib/umd/ui-react.js.gz +0 -0
  159. package/lib/umd-es6/checkpoints.js +1 -1
  160. package/lib/umd-es6/checkpoints.js.gz +0 -0
  161. package/lib/umd-es6/indexes.js +1 -1
  162. package/lib/umd-es6/indexes.js.gz +0 -0
  163. package/lib/umd-es6/metrics.js +1 -1
  164. package/lib/umd-es6/metrics.js.gz +0 -0
  165. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  166. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  167. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  168. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  169. package/lib/umd-es6/persisters/persister-file.js +1 -1
  170. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  171. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  172. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  173. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  174. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  175. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  176. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  177. package/lib/umd-es6/relationships.js +1 -1
  178. package/lib/umd-es6/relationships.js.gz +0 -0
  179. package/lib/umd-es6/store.js +1 -1
  180. package/lib/umd-es6/store.js.gz +0 -0
  181. package/lib/umd-es6/tinybase.js +1 -1
  182. package/lib/umd-es6/tinybase.js.gz +0 -0
  183. package/lib/umd-es6/tools.js +1 -1
  184. package/lib/umd-es6/tools.js.gz +0 -0
  185. package/lib/umd-es6/ui-react.js +1 -1
  186. package/lib/umd-es6/ui-react.js.gz +0 -0
  187. package/package.json +33 -33
  188. package/readme.md +5 -5
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),r=t(0),s="type",I="default",c="Listener",$="get",i="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",g=h+u,m="Sorted"+h+u,f="Cell",w=f+u,y="Value",T=y+"s",v=y+u,V=(e,t)=>e.every(t),x=(e,t)=>e.sort(t),R=(e,t)=>e.forEach(t),k=(e,t=a)=>e.join(t),S=(e,t)=>e.map(t),A=e=>e.length,P=(e,t)=>e.filter(t),E=(e,...t)=>e.push(...t),D=e=>e.pop(),O=(e,...t)=>e.unshift(...t),N=e=>e.shift(),L=JSON.parse,G=isFinite,j=(e,t)=>e instanceof t,M=e=>null==e,J=e=>e==o||e==d,z=e=>t(e)==o,W=e=>Array.isArray(e),B=e=>{const l=t(e);return J(l)||l==r&&G(e)?l:void 0},F=Object,U=F.keys,_=F.freeze,Z=e=>j(e,F)&&e.constructor==F,H=(e,t)=>S(F.entries(e),(([e,l])=>t(l,e))),Q=e=>A(U(e)),q=e=>Z(e)&&0==Q(e),K=(e,t)=>e?.has(t)??!1,X=e=>[...e?.values()??[]],Y=(e,t)=>e?.forEach(t),ee=(e,t)=>e?.delete(t),te=e=>new Map(e),le=(e,t)=>e?.get(t),ae=(e,t)=>Y(e,((e,l)=>t(l,e))),ne=(e,t)=>S([...e?.entries()??[]],(([e,l])=>t(l,e))),oe=(e,t,l)=>M(l)?(ee(e,t),e):e?.set(t,l),de=(e,t,l)=>(K(e,t)||oe(e,t,l()),le(e,t)),re=e=>e.toUpperCase(),se=e=>e.toLowerCase(),Ie="a ",ce="A function for",$e=", and registers a listener so that any changes to that result will cause a re-render",ie="Callback",ue="Del",pe="Deps",be=pe+"?: React.DependencyList",Ce="doRollback?: DoRollback",he="actions: () => Return, "+Ce,ge="export",me="Id",fe="Invalid",we="Json",ye=se(c),Te="?: ",ve=" | undefined",Ve="NonNullable",xe="Partial",Re="Props",ke="Provider",Se=`Registers a ${ye} that will be called`,Ae="Represents",Pe="rowId: "+me,Ee="Schema",De="Set",Oe=", descending?: boolean, offset?: number, limit?: number",Ne="[]",Le="the Store",Ge="Transaction",je=Ge+"Changes",Me=se(Ge),Je="Execute a "+Me+" to make multiple mutations",ze="Explicitly starts a "+Me,We="Explicitly finishes a "+Me,Be="the end of the "+Me,Fe="void",Ue=" => "+Fe,_e="WhenSet",Ze=" when setting it",He=Ie+"string serialization of",Qe=" ",qe="Gets a callback that can ",Ke="the ",Xe=" the schema for",Ye=(e=0,t=0)=>`the ${ht[e]}content of`+(t?Qe+Le:a),et=(e=0,t,l=0)=>pt[t]+Qe+Ye(e,1)+(l?" when setting it":a),tt=(e,t=0)=>Ae+` a Row when ${t?"s":"g"}etting ${Ye()} the '${e}' `+p,lt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,at=(e,t)=>`Calls a function for each ${e} in `+t,nt=e=>"The props passed to a component that renders "+e,ot=e=>"A function that takes "+e,dt=(e,t=0)=>ce+" listening to changes to "+Ct[e]+" in "+Ct[t],rt=(e,t,l=0)=>Se+" whenever "+Ct[e]+" in "+Ct[t]+" change"+(l?a:"s"),st=e=>`the '${e}' `+p,It=e=>"the specified Row in "+st(e),ct=(e,t=0)=>pt[t]+` ${Ye()} `+st(e),$t=(e,t=0)=>pt[t]+` ${Ye()} `+It(e),it=(e,t,l=0)=>pt[l]+` the '${t}' Cell for `+It(e),ut=(e,t=0)=>pt[t]+` the '${e}' Value`,pt=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ae,"Gets "+He,"Sets "+He,Se+" whenever",qe+"set",qe+"add",qe+"set part of",qe+"delete","Renders","Gets "+He+Xe,"Sets"+Xe,"Deletes"+Xe],bt=[$,"has","set","del","set","forEach",i,a],Ct=[Le,b,Ke+p+Qe+u,Ie+p,Ke+h+Qe+u,Ie+h,Ke+f+Qe+u,Ie+f,"invalid Cell changes",T,Ke+y+Qe+u,Ie+y,"invalid Value changes",Ke+"sorted "+h+Qe+u,Ke+f+Qe+u+" anywhere"],ht=[a,"tabular ","keyed value "],gt=e=>new Set(W(e)||M(e)?e:[e]),mt=(e,t)=>e?.add(t),ft=/[^A-Za-z]+/,wt=/[^A-Za-z0-9]+/,yt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Tt=(e,t,l)=>e.substring(t,l),vt=e=>e.includes(n),Vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return K(e,n)?Vt(e,t,l,a+1):(oe(e,n,l),n)},xt=e=>e.replace(yt,((e,t,l)=>{const a=77-Rt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Rt=e=>e.length,kt=e=>e.flat(1e3),St=(e,t=0)=>k(S(e.split(wt),((e,l)=>(l>0||t?re:se)(Tt(e,0,1))+Tt(e,1)))),At=e=>re(k((e&&!ft.test(e[0])?e:" "+e).split(wt),"_")),Pt=e=>`/** ${e}. */`,Et=(...e)=>k(P(e,(e=>e)),", "),Dt=(...e)=>"{"+k(e,"; ")+"}",Ot=(...e)=>Dt(...S(e,(e=>"readonly "+e))),Nt=()=>{const e=[te(),te(),te(),te()],t=te(),l=te(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>k(kt(e),"\n"),(t,l,...a)=>R(a,(a=>R([0,1],(n=>(t??n)==n?mt(de(e[n],l,gt),a):0)))),(e,l,n,o=a,d=1)=>Vt(t,e,[l,n,o,d]),(e,t,a)=>Vt(l,e,W(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>le(l,e)===t?e:Vt(l,e,t),(t=0)=>S([...x(ne(e[t],((e,t)=>`import {${k(x(X(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)),a],(e=>e.replace("{React}","React"))),()=>ne(t,(([e,t,l,n],o)=>[Pt(t),`${n?ge+" ":a}type ${o}${l} = ${e};`,a])),()=>ne(l,((e,t)=>(e=W(e)?e:[e],E(e,D(e)+";"),[`const ${t} = ${N(e)}`,e,a])))]},Lt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Gt=(e,t,l)=>[t=>H(e,((e,a)=>t(a,St(a,1),l(At(a),`'${a}'`)))),(t,a)=>H(e[t],((e,t)=>a(t,e[s],e[I],l(At(t),`'${t}'`),St(t,1)))),e=>H(t,((t,a)=>e(a,t[s],t[I],l(At(a),`'${a}'`),St(a,1))))],jt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,r=e(b,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t,l)=>`'${e}'${M(l)?"?":a}: ${t}`)))+"}"))),et(1,5)),s=e(b+_e,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),et(1,5,1)),I=e(p+me,"keyof "+r,"A "+p+" Id in "+Le),$=`<TId extends ${I}>`,i=e(p,Ve+`<${r}[TId]>`,"A "+p+" in "+Le,$),u=e(p+_e,Ve+`<${s}[TId]>`,"A "+p+" in "+Le+Ze,$),y=e(h,i+"<TId>[Id]","A "+h+" in a "+p,$),T=e(h+_e,u+"<TId>[Id]","A "+h+" in a "+p+Ze,$),v=e(f+me,`Extract<keyof ${y}<TId>, Id>`,"A "+f+" Id in a "+h,$),V=e(f,Ve+`<${r}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${I}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${I}, CId = ${v}<TId>>`,0),R=e(f+ie,`(...[cellId, cell]: ${x}<TId>)`+Ue,ot(Ie+f+" Id, and "+f),$),k=e(h+ie,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ue+") "+Ue,ot(Ie+h+" Id, and a "+f+" iterator"),$),S=e(p+f+ie,`(cellId: ${v}<TId>, count: number) `+Ue,ot(Ie+f+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Ue}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),P=e(p+ie,`(...[tableId, forEachRow]: ${A})`+Ue,ot(Ie+p+" Id, and a "+h+" iterator"),a),E=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${E}) => CellChange`,ce+" returning information about any Cell's changes during a "+Me),O=e(b+c,`(${d}, getCellChange: ${D}${ve})`+Ue,dt(1)),N=e(C+c,`(${d})`+Ue,dt(2)),L=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${D}${ve})`+Ue,dt(3)),G=e(p+w+c,`(${d}, tableId: ${I})`+Ue,dt(14,3)),j=e(g+c,`(${d}, tableId: ${I})`+Ue,dt(4,3)),J=e(m+c,"("+Et(d,"tableId: "+I,"cellId: Id"+ve,"descending: boolean","offset: number","limit: number"+ve,"sortedRowIds: Ids")+")"+Ue,dt(13,3)),z=e(h+c,"("+Et(""+d,"tableId: "+I,Pe,`getCellChange: ${D}${ve}`)+")"+Ue,dt(5,3)),W=e(w+c,"("+Et(""+d,"tableId: "+I,Pe)+")"+Ue,dt(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Pe}, cellId: CId, newCell: ${V}<TId, CId> ${ve}, oldCell: ${V}<TId, CId> ${ve}, getCellChange: ${D} ${ve}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${v}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[r,s,I,i,u,y,T,v,V,R,k,S,P,O,N,L,G,j,J,z,W,e(f+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Ue,dt(7,5)),e(fe+f+c,`(${d}, tableId: Id, ${Pe}, cellId: Id, invalidCells: any[])`+Ue,dt(8))]},(t,l)=>{const o=t+": "+l,d=e(T,Dt(...n(((e,t,l)=>`'${e}'${M(l)?"?":a}: ${t}`))),et(2,5)),r=e(T+_e,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),et(2,5,1)),s=e(y+me,"keyof "+d,"A "+y+" Id in "+Le),I=e(y,Ve+`<${d}[VId]>`,"A "+y+" Id in "+Le,`<VId extends ${s}>`),$=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Le,`<VId = ${s}>`,0),i=e(y+ie,`(...[valueId, value]: ${$})`+Ue,ot(Ie+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,ce+" returning information about any Value's changes during a "+Me),p=e(T+c,`(${o}, getValueChange: ${u}${ve})`+Ue,dt(9)),b=e(v+c,`(${o})`+Ue,dt(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${I}<VId> ${ve}, oldValue: ${I}<VId> ${ve}, getValueChange: ${u} ${ve}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,I,i,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ue,dt(11)),e(fe+y+c,`(${o}, valueId: Id, invalidValues: any[])`+Ue,dt(12))]},(t,l)=>e(Ge+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ue,ce+" listening to the completion of a "+Me)],Mt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),Jt=(e,t=a)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,Wt=(e,t,n)=>{const[o,r,$,V,x,S,A,P]=Nt(),[D,N,L]=Gt(e,t,x),[G,j,J]=jt($,D,N,L),W=te(),B=(e=0)=>ne(W,(([t,l,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${l} => ${n},`]:[r+d+`(${t}): ${l};`];return e||O(s,Pt(o)),E(s,a),s})),F=(e,t,l,n,o,d=a)=>Vt(W,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,r=a,s=a)=>F(bt[e]+t+(4==e?xe:a)+l,d,n,(n==H?Jt:Mt)(bt[e]+(4==e?xe:a)+l,r,e?void 0:n),o,s),_=(e,t,l,n=a,o=a,d=1,r=a)=>F(i+e+c,(n?n+", ":a)+ye+": "+t+(d?", mutator?: boolean":a),me,zt(i+e+c,o,d?"mutator":a),l,r),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),K=[],Y=te();let ee=[],de=[];if(r(1,Z,H,`create${H} as create${H}Decl`),q(e))r(null,l,b);else{r(0,l,"CellChange"),r(null,l,u);const[e,t,n,o,c,i,y,T,v,V,S,A,P,O,L,j,J,W,B,F,q,ae,ne]=G(Q,H),de=te();D(((e,t)=>{const l=`<'${e}'>`,a=[$(t+p,o+l,Ae+` the '${e}' `+p),$(t+p+_e,c+l,Ae+` the '${e}' `+p+Ze),$(t+h,i+l,tt(e)),$(t+h+_e,y+l,tt(e,1)),$(t+f+me,T+l,`A Cell Id for the '${e}' `+p),$(t+f+ie,V+l,ot(`a Cell Id and value from a Row in the '${e}' `+p)),$(t+h+ie,S+l,ot(`a Row Id from the '${e}' Table, and a Cell iterator`)),$(t+p+f+ie,A+l,ot(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];oe(de,e,a),r(1,Z,...a)})),r(1,Z,e,t,n,T,P,O,L,j,J,W,B,F,q,ae,ne),ee=[e,t,n,T,O,L,j,J,W,B,F,q,ae,de],R([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,et(1,n),t,l))),U(0,a,C,n+Ne,lt(p,Le)),U(5,a,p,Fe,at(p,Le),"tableCallback: "+P,"tableCallback as any"),D(((e,t,l)=>{const[n,o,r,s,I,c,$,i]=le(de,e);R([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],r)=>U(r,t,p,n,ct(e,r),o,l+d))),U(0,t,p+w,u,lt(f,"the whole of "+st(e)),a,l),U(5,t,p+f,Fe,at(p+f,"the whole of "+st(e)),"tableCellCallback: "+i,l+", tableCellCallback as any"),U(0,t,g,u,lt(h,st(e)),a,l),U(0,t,m,u,lt(h,st(e),1),"cellId?: "+I+Oe,l+", cellId, descending, offset, limit"),U(5,t,h,Fe,at(h,st(e)),"rowCallback: "+$,l+", rowCallback as any"),R([[r],[d],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=a,d=a],r)=>U(r,t,h,n,$t(e,r),Pe+o,l+", rowId"+d))),U(6,t,h,me+ve,"Add a new Row to "+st(e),"row: "+s+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+Ne,lt(f,It(e)),Pe,l+", rowId"),U(5,t,f,Fe,at(f,It(e)),Pe+", cellCallback: "+c,l+", rowId, cellCallback as any"),N(e,((n,o,r,s,I)=>{const c="Map"+St(o,1);oe(Y,o,c);const $=o+(M(r)?ve:a);R([[$],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,r=a],c)=>U(c,t+I,f,o,it(e,n,c),Pe+d,l+", rowId, "+s+r))),U(1,t+I,p+f,d,pt[1]+` the '${n}' Cell anywhere in `+st(e),a,l+", "+s)}))})),U(0,a,b+we,we,et(1,6)),U(2,a,b+we,H,et(1,7),"tablesJson: "+we,"tables"+we),_(b,O,et(1,8)+" changes"),_(C,L,rt(2,0,1)),_(p,j,rt(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,J,rt(14,3,1),`tableId: ${n} | null`,"tableId"),_(g,W,rt(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,B,rt(13,3,1),Et("tableId: TId",`cellId: ${T}<TId>`+ve,"descending: boolean","offset: number","limit: number"+ve),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,F,rt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,q,rt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,ae,rt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${k(D((e=>le(de,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(fe+f,ne,Se+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),r(1,Z,...X(Y)),E(K,".set"+b+Ee+"({",kt(D(((e,t,l)=>[`[${l}]: {`,...N(e,((e,t,l,n)=>`[${n}]: {[${x(At(s),`'${s}'`)}]: ${x(At(t),`'${t}'`)}${M(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(z(l)?x(At(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(q(t))r(null,l,T);else{const[e,t,n,o,c,$,i,u,p]=j(Q,H);r(1,Z,e,t,n,c,$,i,u,p),de=[e,t,n,$,i,u],R([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,T,e,et(2,n),t,l))),U(0,a,v,n+Ne,lt(y,Le)),U(5,a,y,"void",at(y,Le),"valueCallback: "+c,"valueCallback as any"),L(((e,t,l,n,o)=>{const r="Map"+St(t,1);oe(Y,t,r),R([[t],[d],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,l,d=a],r)=>U(r,o,y,t,ut(e,r),l,n+d)))})),U(0,a,T+we,we,et(2,6)),U(2,a,T+we,H,et(2,7),"valuesJson: "+we,"values"+we),_(T,$,et(2,8)+" changes"),_(v,i,rt(10,0,1)),_(y,u,rt(11,0),`valueId: ${n} | null`,"valueId"),_(fe+y,p,Se+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),r(1,Z,...X(Y)),r(0,l,"ValueChange"),E(K,".set"+T+Ee+"({",L(((e,t,l,n)=>[`[${n}]: {[${x(At(s),`'${s}'`)}]: ${x(At(t),`'${t}'`)}${M(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(z(l)?x(At(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${T}]`,et(0,0)),U(2,a,"Content",H,et(0,2),`[tables, values]: [${b}, ${T}]`,"[tables, values]"),U(2,a,je,H,`Applies a set of ${je} to the Store`,"transactionChanges: "+je,"transactionChanges"),ae(Y,((e,t)=>$(t,`(cell: ${e}${ve}) => `+e,`Takes a ${e} Cell value and returns another`))),r(null,l,"DoRollback",me,"IdOrNull",we,"Store",je),r(0,l,"Get"+je,"GetTransactionLog"),U(0,a,we,we,et(0,6)),U(2,a,we,H,et(0,7),"tablesAndValuesJson: "+we,"tablesAndValuesJson"),U(7,a,Me,"Return",Je,he,"actions, doRollback","<Return>"),U(7,a,"start"+Ge,H,ze),U(7,a,"finish"+Ge,H,We,Ce,"doRollback");const re=J(Q,H);return _("Start"+Ge,re,Se+" just before the start of the "+Me,a,a,0),_("WillFinish"+Ge,re,Se+" just before "+Be,a,a,0),_("DidFinish"+Ge,re,Se+" just after "+Be,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+Le,"listenerId: Id","listenerId"),F("getStore",a,"Store","store",pt[0]+" the underlying Store object"),r(1,l,"createStore"),r(1,Z,H,`create${H} as create${H}Decl`,re),x("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...B(1),"}"]),[o(...S(0),...A(),ge+" interface "+H+" {",...B(0),"}",a,Pt(`Creates a ${H} object`),ge+" function create"+H+"(): "+H+";"),o(...S(1),ge+" const create"+H+": typeof create"+H+"Decl = () => {",...P(),`return Object.freeze(${Q});`,"};"),ee,de]},Bt=e=>$+e,Ft=e=>Et(Bt(e),Bt(e)+pe),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+be,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+ie+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ue,Zt),rl="then, then"+pe,sl=tl+Xt+me,Il="View",cl=(e,...t)=>Et(...t,ye+": "+e,ye+be,"mutator?: boolean"),$l=(...e)=>Et(...e,ye,ye+pe,"mutator"),il=(e,t,n,o,d)=>{const[r,s,I,$,i,V,x,R]=Nt(),[S,A,P]=Gt(e,t,i),D=`./${St(n)}.d`,N=`./${St(n)}-ui-react.d`,L="tinybase/ui-react",G=St(n,1),j=St(G),J=G+"Or"+G+me,z=j+"Or"+G+me,W=j+`={${j}}`,B=te(),F=(e,t,l,n,o,d=a)=>(s(1,N,e+" as "+e+"Decl"),Vt(B,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>F("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,r=a,I=a,c=a)=>(s(1,L,`use${t} as use${t}Core`),U(e,Et(o,X,I),l,ee+`(${z}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ne(B,(([t,l,n,o,d],r)=>{const s=e?[ge+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[ge+` function ${r}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||O(s,Pt(o)),E(s,a),s}));s(null,l,me,"Store",ie,Ht+"ized"+ie),s(0,L,"ComponentReturnType"),s(null,L,"ExtraProps"),s(0,D,G);const Q=I(J,G+" | "+me,`Used when you need to refer to a ${G} in a React hook or component`),K=I(ke+Re,Ot(j+Te+G,j+`ById?: {[${j}Id: Id]: ${G}}`),`Used with the ${ke} component, so that a `+G+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,N,Q,K);const X=z+Te+Q;i("{createContext, useContext, useMemo}","React"),i("Context",`createContext<[${G}?, {[${j}Id: Id]: ${G}}?]>([])`),U("Create"+G,`create: () => ${G}, create`+be,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const Y=U(G,"id?: Id",G+ve,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${ke} component context`),ee=$("useHook",z+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${j} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${j} : ${z})?.getStore(), ...postParams)`]),ae=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=$("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;"]),de=i("NullComponent","() => null");if(!q(e)){const[e,t,n,d,r,i,y,T,v,V,x,R,P,E]=o;s(null,D,e,t,n,r,i,y,T,v,V,x,R,P),s(0,D,d),s(1,D,G),s(null,l,u,"IdOrNull");const O=$("tableView",`{${j}, rowComponent, getRowComponentProps`+al+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ae+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ll,W,_t,"/>","))",al,", tableId,",");"]),L=$("getDefaultTableComponent","tableId: Id",k(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=$("getDefaultCellComponent","tableId: Id, cellId: Id",k(S(((e,t,l)=>`tableId == ${l} ? ${k(A(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,et(1,0)+$e);const z=_(C,C,n+Ne,lt(p,Le)+$e);_(De+b+ie,De+b+ie,el,et(1,9)+Kt,Et(Bt(b)+Qt+t,Bt(b)+be),Ft(b),Yt,Et(ol,`tables: ${t})`+Ue,Zt),rl),_(ue+b+ie,ue+b+ie,ie,et(1,12),a,a,a,dl,rl);const B=I(f+Re,Ot("tableId?: TId","rowId: Id","cellId?: CId",j+Te+G,Ut),nt(Ie+f),`<TId extends ${n}, CId extends ${d}<TId>>`),F=I(h+Re,Ot("tableId?: TId","rowId: Id",j+Te+G,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,nl,Ut),nt(Ie+h),`<TId extends ${n}>`),U=I(p+Re,Ot("tableId?: TId",j+Te+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",nl,Ut),nt(Ie+p),`<TId extends ${n}>`),H=I("Sorted"+p+Re,Ot("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",j+Te+G,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",nl,Ut),nt(Ie+"sorted "+p),`<TId extends ${n}>`),Q=I(b+Re,Ot(j+Te+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),nt(Ye(1,1)));s(1,N,Q,U,H,F,B),Z(b+Il,"{"+j+", tableComponents, getTableComponentProps"+al+"}: "+Q,[oe+`(${z}(${j}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+L+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ae}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,_t,"/>;","}), separator)"],et(1,13)+$e),S(((e,t,l)=>{const[n,o,d,r,I]=le(E,e);s(null,D,n,o,d,r,I),_(t+p,p,n,ct(e)+$e,a,l),_(t+p+w,p+w,u,lt(f,"the whole of "+st(e))+$e,a,l);const c=_(t+g,g,u,lt(h,st(e))+$e,a,l),$=_(t+m,m,u,lt(h,st(e),1)+$e,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,$t(e)+$e,sl,Et(l,tl));const i=_(t+w,w,I+Ne,lt(f,It(e))+$e,sl,Et(l,tl));_(De+t+p+ie,De+p+ie,el,ct(e,9)+Kt,Et(Bt(p)+Qt+o,Bt(p)+be),Et(l,Ft(p)),Yt,Et(ol,`table: ${o})`+Ue,Zt),rl),_(ue+t+p+ie,ue+p+ie,ie,ct(e,12),a,l,a,dl,rl),_(De+t+h+ie,De+h+ie,el,$t(e,9)+Kt,Et(sl,Bt(h)+Qt+r,Bt(h)+be),Et(l,tl,Ft(h)),Yt,Et(ol,`row: ${r})`+Ue,Zt),rl),_("Add"+t+h+ie,"Add"+h+ie,el,$t(e,10)+Kt,Et(Bt(h)+Qt+r,Bt(h)+be),Et(l,Ft(h)),Yt,"then?: ("+Et(sl+ve,"store: Store","row: "+r+")"+Ue,"then"+be)+", reuseRowIds?: boolean",rl+", reuseRowIds"),_(De+t+xe+h+ie,De+xe+h+ie,el,$t(e,11)+Kt,Et(sl,Bt(xe+h)+Qt+r,Bt(xe+h)+be),Et(l,tl,Ft(xe+h)),Yt,Et(ol,`partialRow: ${r})`+Ue,Zt),rl),_(ue+t+h+ie,ue+h+ie,ie,$t(e,12),sl,Et(l,tl),a,dl,rl);const b=Z(t+h+Il,"{rowId, "+j+", cellComponents, getCellComponentProps"+al+`}: ${F}<'${e}'>`,[oe+`(${i}(rowId, ${j}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${ae}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,ll,"cellId={cellId}",W,_t,"/>;","})"+al+", rowId)"],$t(e,13)+$e);Z(t+"Sorted"+p+Il,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,O+"(props, "+$+`(cellId, descending, offset, limit, props.${j}), ${l}, ${b});`,ct(e,13)+", sorted"+$e),Z(t+p+Il,`props: ${U}<'${e}'>`,O+"(props, "+c+`(props.${j}), ${l}, ${b});`,ct(e,13)+$e),A(e,((n,o,d,r,I)=>{const c="Map"+St(o,1);s(0,D,c),s(1,D,c);const $=_(t+I+f,f,o+(M(d)?ve:a),it(e,n)+$e,sl,Et(l,tl,r));_(De+t+I+f+ie,De+f+ie,el,it(e,n,9)+Kt,Et(sl,Bt(f)+Qt+o+" | "+c,Bt(f)+be),Et(l,tl,r,Ft(f)),Yt,Et(ol,`cell: ${o} | ${c})`+Ue,Zt),rl),_(ue+t+I+f+ie,ue+f+ie,ie,it(e,n,12),Et(sl,"forceDel?: boolean"),Et(l,tl,r,"forceDel"),a,dl,rl),Z(t+I+f+Il,`{rowId, ${j}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${$}(rowId, `+j+`) ?? '', undefined, debugIds, ${r})`],it(e,n,13)+$e)}))}));const q=k(S((e=>le(E,e)?.[4]??a))," | ");_(b+c,b+c,Fe,et(1,8)+" changes",cl(r),$l()),_(C+c,C+c,Fe,rt(2,0,1),cl(i),$l()),_(p+c,p+c,Fe,rt(3,0),cl(y,`tableId: ${n} | null`),$l("tableId")),_(p+w+c,p+w+c,Fe,rt(14,3,1),cl(T,`tableId: ${n} | null`),$l("tableId")),_(g+c,g+c,Fe,rt(4,3,1),cl(v,`tableId: ${n} | null`),$l("tableId")),_(m+c,m+c,Fe,rt(13,3,1),cl(V,`tableId: ${n} | null`,"cellId: "+q+ve,"descending: boolean","offset: number","limit: number"+ve),$l("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Fe,rt(5,3),cl(x,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(w+c,w+c,Fe,rt(6,5,1),cl(R,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(f+c,f+c,Fe,rt(7,5),cl(P,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${q} | null`),$l("tableId",tl,"cellId"))}if(!q(t)){const[e,t,l,n,o,r]=d;s(null,D,...d),s(1,D,G);const i=$("getDefaultValueComponent","valueId: Id",k(P(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(T,T,e,et(2,0)+$e);const u=_(v,v,l+Ne,lt(y,Le)+$e);_(De+T+ie,De+T+ie,el,et(2,9)+Kt,Et(Bt(T)+Qt+t,Bt(T)+be),Ft(T),Yt,Et(ol,`values: ${t})`+Ue,Zt),rl),_(De+xe+T+ie,De+xe+T+ie,el,et(2,11)+Kt,Et(Bt(xe+T)+Qt+t,Bt(xe+T)+be),Ft(xe+T),Yt,Et(ol,`partialValues: ${t})`+Ue,Zt),rl),_(ue+T+ie,ue+T+ie,ie,et(2,12),a,a,a,dl,rl);const p=I(y+Re,Ot("valueId?: VId",j+Te+G,Ut),nt("a Value"),`<VId extends ${l}>`),b=I(T+Re,Ot(j+Te+G,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,nl,Ut),nt(Ye(2,1)));s(1,N,b,p),Z(T+Il,"{"+j+", valueComponents, getValueComponentProps"+al+"}: "+b,[oe+`(${u}(${j}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${ae}(getValueComponentProps, valueId)}`,"key={valueId}",W,_t,"/>;","}), separator)"],et(2,13)+$e),P(((e,t,l,n,o)=>{const d="Map"+St(t,1);s(0,D,d),s(1,D,d);const r=_(o+y,y,t,ut(e)+$e,a,n);_(De+o+y+ie,De+y+ie,el,ut(e,9)+Kt,Et(Bt(y)+Qt+t+" | "+d,Bt(y)+be),Et(n,Ft(y)),Yt,Et(ol,`value: ${t} | ${d})`+Ue,Zt),rl),_(ue+o+y+ie,ue+y+ie,ie,ut(e,12),a,n,a,dl,rl),Z(o+y+Il,`{${j}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+j+`) ?? '', undefined, debugIds, ${n})`],ut(e,13)+$e)})),_(T+c,T+c,Fe,et(2,8)+" changes",cl(n),$l()),_(v+c,v+c,Fe,rt(10,0,1),cl(o),$l()),_(y+c,y+c,Fe,rt(11,0),cl(r,`valueId: ${l} | null`),$l("valueId"))}return Z(ke,`{${j}, ${j}ById, children}: `+K+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+ke,"value={useMemo(",`() => [${j} ?? contextValue[0], {...contextValue[1], ...${j}ById}],`,`[${j}, ${j}ById, contextValue],`,")}>","{children}",`</Context.${ke}>`,");","}"],"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),...R(),...H(1))]},ul=(e,t,l)=>{if(q(e)&&q(t))return[a,a,a,a];const[n,o,d,r]=Wt(e,t,l);return[n,o,...il(e,t,l,d,r)]},pl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},bl=Lt((e=>{const t=()=>{const t=L(e.getTablesSchemaJson());return!q(t)||V(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=te();if(V(a,(t=>V(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=de(n,a,(()=>[B(o),te(),[0],0])),[r,s,[I]]=d,c=de(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),oe(s,o,c),d[3]++,r==B(o)})))))return t[l]={},Y(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==A(a)?{[I]:n}:{}}})),1}))?t:{}},l=()=>{const t=L(e.getValuesSchemaJson());return q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:B(l)}})),t},a=e=>ul(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(await import("prettier")).format}catch(e){l=e=>e}return S(a(e),((e,a)=>xt(l(e,{...pl,filepath:"_."+t[a]}))))};return _({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})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:A(e.getValueIds()),jsonLength:Rt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=bl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),r=t(0),s="type",I="default",c="Listener",$="get",i="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",g=h+u,m="Sorted"+h+u,f="Cell",w=f+u,y="Value",T=y+"s",v=y+u,V=isFinite,x=(e,t)=>e instanceof t,R=e=>null==e,k=e=>e==o||e==d,S=e=>t(e)==o,A=e=>Array.isArray(e),P=e=>{const l=t(e);return k(l)||l==r&&V(e)?l:void 0},E=(e,t)=>e.every(t),D=(e,t)=>e.sort(t),O=(e,t)=>e.forEach(t),N=(e,t=a)=>e.join(t),L=(e,t)=>e.map(t),G=e=>e.length,j=(e,t)=>e.filter(t),M=(e,...t)=>e.push(...t),J=e=>e.pop(),z=(e,...t)=>e.unshift(...t),W=e=>e.shift(),B=Object,F=B.keys,U=B.freeze,_=e=>x(e,B)&&e.constructor==B,Z=(e,t)=>L(B.entries(e),(([e,l])=>t(l,e))),H=e=>G(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>e?.has(t)??!1,K=e=>[...e?.values()??[]],X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),ee=e=>new Map(e),te=(e,t)=>e?.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>L([...e?.entries()??[]],(([e,l])=>t(l,e))),ne=(e,t,l)=>R(l)?(Y(e,t),e):e?.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),re=e=>e.toLowerCase(),se="a ",Ie="A function for",ce=", and registers a listener so that any changes to that result will cause a re-render",$e="Callback",ie="Del",ue="Deps",pe=ue+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",ge="Id",me="Invalid",fe="Json",we=re(c),ye="?: ",Te=" | undefined",ve="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Se="Represents",Ae="rowId: "+ge,Pe="Schema",Ee="Set",De=", descending?: boolean, offset?: number, limit?: number",Oe="[]",Ne="the Store",Le="Transaction",Ge=Le+"Changes",je=re(Le),Me="Execute a "+je+" to make multiple mutations",Je="Explicitly starts a "+je,ze="Explicitly finishes a "+je,We="the end of the "+je,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=se+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+Ne:a),Ye=(e=0,t,l=0)=>ut[t]+He+Xe(e,1)+(l?" when setting it":a),et=(e,t=0)=>Se+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+p,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,l=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(l?a:"s"),rt=e=>`the '${e}' `+p,st=e=>"the specified Row in "+rt(e),It=(e,t=0)=>ut[t]+` ${Xe()} `+rt(e),ct=(e,t=0)=>ut[t]+` ${Xe()} `+st(e),$t=(e,t,l=0)=>ut[l]+` the '${t}' Cell for `+st(e),it=(e,t=0)=>ut[t]+` the '${e}' Value`,ut=["Gets","Checks existence of","Sets","Deletes","Sets part of",Se,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[$,"has","set","del","set","forEach",i,a],bt=[Ne,b,qe+p+He+u,se+p,qe+h+He+u,se+h,qe+f+He+u,se+f,"invalid Cell changes",T,qe+y+He+u,se+y,"invalid Value changes",qe+"sorted "+h+He+u,qe+f+He+u+" anywhere"],Ct=[a,"tabular ","keyed value "],ht=e=>new Set(A(e)||R(e)?e:[e]),gt=(e,t)=>e?.add(t),mt=/[^A-Za-z]+/,ft=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),Tt=e=>e.includes(n),vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?vt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>N(L(e.split(ft),((e,l)=>(l>0||t?de:re)(yt(e,0,1))+yt(e,1)))),St=e=>de(N((e&&!mt.test(e[0])?e:" "+e).split(ft),"_")),At=e=>`/** ${e}. */`,Pt=(...e)=>N(j(e,(e=>e)),", "),Et=(...e)=>"{"+N(e,"; ")+"}",Dt=(...e)=>Et(...L(e,(e=>"readonly "+e))),Ot=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),l=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>N(Rt(e),"\n"),(t,l,...a)=>O(a,(a=>O([0,1],(n=>(t??n)==n?gt(oe(e[n],l,ht),a):0)))),(e,l,n,o=a,d=1)=>vt(t,e,[l,n,o,d]),(e,t,a)=>vt(l,e,A(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>te(l,e)===t?e:vt(l,e,t),(t=0)=>L([...D(ae(e[t],((e,t)=>`import {${N(D(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Tt(e)!=Tt(t)?Tt(e)?-1:1:e>t?1:-1)),a],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,l,n],o)=>[At(t),`${n?he+" ":a}type ${o}${l} = ${e};`,a])),()=>ae(l,((e,t)=>(e=A(e)?e:[e],M(e,J(e)+";"),[`const ${t} = ${W(e)}`,e,a])))]},Nt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(St(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[s],e[I],l(St(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[s],t[I],l(St(a),`'${a}'`),kt(a,1))))],Gt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,r=e(b,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...l(e,((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`)))+"}"))),Ye(1,5)),s=e(b+Ue,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),I=e(p+ge,"keyof "+r,"A "+p+" Id in "+Ne),$=`<TId extends ${I}>`,i=e(p,ve+`<${r}[TId]>`,"A "+p+" in "+Ne,$),u=e(p+Ue,ve+`<${s}[TId]>`,"A "+p+" in "+Ne+_e,$),y=e(h,i+"<TId>[Id]","A "+h+" in a "+p,$),T=e(h+Ue,u+"<TId>[Id]","A "+h+" in a "+p+_e,$),v=e(f+ge,`Extract<keyof ${y}<TId>, Id>`,"A "+f+" Id in a "+h,$),V=e(f,ve+`<${r}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${I}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${I}, CId = ${v}<TId>>`,0),k=e(f+$e,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(se+f+" Id, and "+f),$),S=e(h+$e,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(se+h+" Id, and a "+f+" iterator"),$),A=e(p+f+$e,`(cellId: ${v}<TId>, count: number) `+Fe,nt(se+f+" Id, and count of how many times it appears"),$),P=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Fe}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+$e,`(...[tableId, forEachRow]: ${P})`+Fe,nt(se+p+" Id, and a "+h+" iterator"),a),D=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${D}) => CellChange`,Ie+" returning information about any Cell's changes during a "+je),N=e(b+c,`(${d}, getCellChange: ${O}${Te})`+Fe,ot(1)),L=e(C+c,`(${d})`+Fe,ot(2)),G=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${O}${Te})`+Fe,ot(3)),j=e(p+w+c,`(${d}, tableId: ${I})`+Fe,ot(14,3)),M=e(g+c,`(${d}, tableId: ${I})`+Fe,ot(4,3)),J=e(m+c,"("+Pt(d,"tableId: "+I,"cellId: Id"+Te,"descending: boolean","offset: number","limit: number"+Te,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(h+c,"("+Pt(""+d,"tableId: "+I,Ae,`getCellChange: ${O}${Te}`)+")"+Fe,ot(5,3)),W=e(w+c,"("+Pt(""+d,"tableId: "+I,Ae)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Ae}, cellId: CId, newCell: ${V}<TId, CId> ${Te}, oldCell: ${V}<TId, CId> ${Te}, getCellChange: ${O} ${Te}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${v}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[r,s,I,i,u,y,T,v,V,k,S,A,E,N,L,G,j,M,J,z,W,e(f+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(me+f+c,`(${d}, tableId: Id, ${Ae}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,l)=>{const o=t+": "+l,d=e(T,Et(...n(((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`))),Ye(2,5)),r=e(T+Ue,Et(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),s=e(y+ge,"keyof "+d,"A "+y+" Id in "+Ne),I=e(y,ve+`<${d}[VId]>`,"A "+y+" Id in "+Ne,`<VId extends ${s}>`),$=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Ne,`<VId = ${s}>`,0),i=e(y+$e,`(...[valueId, value]: ${$})`+Fe,nt(se+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,Ie+" returning information about any Value's changes during a "+je),p=e(T+c,`(${o}, getValueChange: ${u}${Te})`+Fe,ot(9)),b=e(v+c,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${I}<VId> ${Te}, oldValue: ${I}<VId> ${Te}, getValueChange: ${u} ${Te}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,I,i,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(me+y+c,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Le+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+je)],jt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),Mt=(e,t=a)=>`fluent(() => ${jt(e,t)})`,Jt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,zt=(e,t,n)=>{const[o,r,$,V,x,k,A,P]=Ot(),[E,D,L]=Lt(e,t,x),[G,j,J]=Gt($,E,D,L),W=ee(),B=(e=0)=>ae(W,(([t,l,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${l} => ${n},`]:[r+d+`(${t}): ${l};`];return e||z(s,At(o)),M(s,a),s})),F=(e,t,l,n,o,d=a)=>vt(W,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,r=a,s=a)=>F(pt[e]+t+(4==e?Ve:a)+l,d,n,(n==H?Mt:jt)(pt[e]+(4==e?Ve:a)+l,r,e?void 0:n),o,s),_=(e,t,l,n=a,o=a,d=1,r=a)=>F(i+e+c,(n?n+", ":a)+we+": "+t+(d?", mutator?: boolean":a),ge,Jt(i+e+c,o,d?"mutator":a),l,r),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if(r(1,Z,H,`create${H} as create${H}Decl`),Q(e))r(null,l,b);else{r(0,l,"CellChange"),r(null,l,u);const[e,t,n,o,c,i,y,T,v,V,k,A,P,L,j,J,z,W,B,F,Q,le,ae]=G(q,H),de=ee();E(((e,t)=>{const l=`<'${e}'>`,a=[$(t+p,o+l,Se+` the '${e}' `+p),$(t+p+Ue,c+l,Se+` the '${e}' `+p+_e),$(t+h,i+l,et(e)),$(t+h+Ue,y+l,et(e,1)),$(t+f+ge,T+l,`A Cell Id for the '${e}' `+p),$(t+f+$e,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+p)),$(t+h+$e,k+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),$(t+p+f+$e,A+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),r(1,Z,...a)})),r(1,Z,e,t,n,T,P,L,j,J,z,W,B,F,Q,le,ae),oe=[e,t,n,T,L,j,J,z,W,B,F,Q,le,de],O([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,Ye(1,n),t,l))),U(0,a,C,n+Oe,tt(p,Ne)),U(5,a,p,Be,lt(p,Ne),"tableCallback: "+P,"tableCallback as any"),E(((e,t,l)=>{const[n,o,r,s,I,c,$,i]=te(de,e);O([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],r)=>U(r,t,p,n,It(e,r),o,l+d))),U(0,t,p+w,u,tt(f,"the whole of "+rt(e)),a,l),U(5,t,p+f,Be,lt(p+f,"the whole of "+rt(e)),"tableCellCallback: "+i,l+", tableCellCallback as any"),U(0,t,g,u,tt(h,rt(e)),a,l),U(0,t,m,u,tt(h,rt(e),1),"cellId?: "+I+De,l+", cellId, descending, offset, limit"),U(5,t,h,Be,lt(h,rt(e)),"rowCallback: "+$,l+", rowCallback as any"),O([[r],[d],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=a,d=a],r)=>U(r,t,h,n,ct(e,r),Ae+o,l+", rowId"+d))),U(6,t,h,ge+Te,"Add a new Row to "+rt(e),"row: "+s+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+Oe,tt(f,st(e)),Ae,l+", rowId"),U(5,t,f,Be,lt(f,st(e)),Ae+", cellCallback: "+c,l+", rowId, cellCallback as any"),D(e,((n,o,r,s,I)=>{const c="Map"+kt(o,1);ne(Y,o,c);const $=o+(R(r)?Te:a);O([[$],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,r=a],c)=>U(c,t+I,f,o,$t(e,n,c),Ae+d,l+", rowId, "+s+r))),U(1,t+I,p+f,d,ut[1]+` the '${n}' Cell anywhere in `+rt(e),a,l+", "+s)}))})),U(0,a,b+fe,fe,Ye(1,6)),U(2,a,b+fe,H,Ye(1,7),"tablesJson: "+fe,"tables"+fe),_(b,L,Ye(1,8)+" changes"),_(C,j,dt(2,0,1)),_(p,J,dt(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(g,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,B,dt(13,3,1),Pt("tableId: TId",`cellId: ${T}<TId>`+Te,"descending: boolean","offset: number","limit: number"+Te),Pt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${N(E((e=>te(de,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(me+f,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),r(1,Z,...K(Y)),M(X,".set"+b+Pe+"({",Rt(E(((e,t,l)=>[`[${l}]: {`,...D(e,((e,t,l,n)=>`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${R(l)?a:`, [${x(St(I),`'${I}'`)}]: `+(S(l)?x(St(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(Q(t))r(null,l,T);else{const[e,t,n,o,c,$,i,u,p]=j(q,H);r(1,Z,e,t,n,c,$,i,u,p),de=[e,t,n,$,i,u],O([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,T,e,Ye(2,n),t,l))),U(0,a,v,n+Oe,tt(y,Ne)),U(5,a,y,"void",lt(y,Ne),"valueCallback: "+c,"valueCallback as any"),L(((e,t,l,n,o)=>{const r="Map"+kt(t,1);ne(Y,t,r),O([[t],[d],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,l,d=a],r)=>U(r,o,y,t,it(e,r),l,n+d)))})),U(0,a,T+fe,fe,Ye(2,6)),U(2,a,T+fe,H,Ye(2,7),"valuesJson: "+fe,"values"+fe),_(T,$,Ye(2,8)+" changes"),_(v,i,dt(10,0,1)),_(y,u,dt(11,0),`valueId: ${n} | null`,"valueId"),_(me+y,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),r(1,Z,...K(Y)),r(0,l,"ValueChange"),M(X,".set"+T+Pe+"({",L(((e,t,l,n)=>[`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${R(l)?a:`, [${x(St(I),`'${I}'`)}]: `+(S(l)?x(St(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${T}]`,Ye(0,0)),U(2,a,"Content",H,Ye(0,2),`[tables, values]: [${b}, ${T}]`,"[tables, values]"),U(2,a,Ge,H,`Applies a set of ${Ge} to the Store`,"transactionChanges: "+Ge,"transactionChanges"),le(Y,((e,t)=>$(t,`(cell: ${e}${Te}) => `+e,`Takes a ${e} Cell value and returns another`))),r(null,l,"DoRollback",ge,"IdOrNull",fe,"Store",Ge),r(0,l,"Get"+Ge,"GetTransactionLog"),U(0,a,fe,fe,Ye(0,6)),U(2,a,fe,H,Ye(0,7),"tablesAndValuesJson: "+fe,"tablesAndValuesJson"),U(7,a,je,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,a,"start"+Le,H,Je),U(7,a,"finish"+Le,H,ze,be,"doRollback");const re=J(q,H);return _("Start"+Le,re,ke+" just before the start of the "+je,a,a,0),_("WillFinish"+Le,re,ke+" just before "+We,a,a,0),_("DidFinish"+Le,re,ke+" just after "+We,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+Ne,"listenerId: Id","listenerId"),F("getStore",a,"Store","store",ut[0]+" the underlying Store object"),r(1,l,"createStore"),r(1,Z,H,`create${H} as create${H}Decl`,re),x("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),x(q,["{",...B(1),"}"]),[o(...k(0),...A(),he+" interface "+H+" {",...B(0),"}",a,At(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),o(...k(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...P(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>$+e,Bt=e=>Pt(Wt(e),Wt(e)+ue),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+$e+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=Pt(nl+")"+Fe,_t),dl="then, then"+ue,rl=el+Kt+ge,sl="View",Il=(e,...t)=>Pt(...t,we+": "+e,we+pe,"mutator?: boolean"),cl=(...e)=>Pt(...e,we,we+ue,"mutator"),$l=(e,t,n,o,d)=>{const[r,s,I,$,i,V,x,k]=Ot(),[S,A,P]=Lt(e,t,i),E=`./${kt(n)}.d`,D=`./${kt(n)}-ui-react.d`,O="tinybase/ui-react",L=kt(n,1),G=kt(L),j=L+"Or"+L+ge,J=G+"Or"+L+ge,W=G+`={${G}}`,B=ee(),F=(e,t,l,n,o,d=a)=>(s(1,D,e+" as "+e+"Decl"),vt(B,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>F("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,r=a,I=a,c=a)=>(s(1,O,`use${t} as use${t}Core`),U(e,Pt(o,X,I),l,le+`(${J}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,l,n,o,d],r)=>{const s=e?[he+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[he+` function ${r}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||z(s,At(o)),M(s,a),s}));s(null,l,ge,"Store",$e,Zt+"ized"+$e),s(0,O,"ComponentReturnType"),s(null,O,"ExtraProps"),s(0,E,L);const q=I(j,L+" | "+ge,`Used when you need to refer to a ${L} in a React hook or component`),K=I(Re+xe,Dt(G+ye+L,G+`ById?: {[${G}Id: Id]: ${L}}`),`Used with the ${Re} component, so that a `+L+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,D,q,K);const X=J+ye+q;i("{createContext, useContext, useMemo}","React"),i("Context",`createContext<[${L}?, {[${G}Id: Id]: ${L}}?]>([])`),U("Create"+L,`create: () => ${L}, create`+pe,L,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${L} within a React application with convenient memoization`);const Y=U(L,"id?: Id",L+Te,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${L} from within a ${Re} component context`),le=$("useHook",J+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${J} as Id);`,`return hook(...preParams, ((${J} == null || typeof ${J} == 'string')`,`? ${G} : ${J})?.getStore(), ...postParams)`]),ne=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=$("wrap",Pt("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;"]),de=i("NullComponent","() => null");if(!Q(e)){const[e,t,n,d,r,i,y,T,v,V,x,k,P,O]=o;s(null,E,e,t,n,r,i,y,T,v,V,x,k,P),s(0,E,d),s(1,E,L),s(null,l,u,"IdOrNull");const j=$("tableView",`{${G}, rowComponent, getRowComponentProps`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,W,Ut,"/>","))",ll,", tableId,",");"]),M=$("getDefaultTableComponent","tableId: Id",N(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=$("getDefaultCellComponent","tableId: Id, cellId: Id",N(S(((e,t,l)=>`tableId == ${l} ? ${N(A(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,Ye(1,0)+ce);const z=_(C,C,n+Oe,tt(p,Ne)+ce);_(Ee+b+$e,Ee+b+$e,Yt,Ye(1,9)+qt,Pt(Wt(b)+Ht+t,Wt(b)+pe),Bt(b),Xt,Pt(nl,`tables: ${t})`+Fe,_t),dl),_(ie+b+$e,ie+b+$e,$e,Ye(1,12),a,a,a,ol,dl);const B=I(f+xe,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+ye+L,Ft),at(se+f),`<TId extends ${n}, CId extends ${d}<TId>>`),F=I(h+xe,Dt("tableId?: TId","rowId: Id",G+ye+L,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,al,Ft),at(se+h),`<TId extends ${n}>`),U=I(p+xe,Dt("tableId?: TId",G+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+p),`<TId extends ${n}>`),H=I("Sorted"+p+xe,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+"sorted "+p),`<TId extends ${n}>`),Q=I(b+xe,Dt(G+ye+L,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));s(1,D,Q,U,H,F,B),Z(b+sl,"{"+G+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+M+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+ce),S(((e,t,l)=>{const[n,o,d,r,I]=te(O,e);s(null,E,n,o,d,r,I),_(t+p,p,n,It(e)+ce,a,l),_(t+p+w,p+w,u,tt(f,"the whole of "+rt(e))+ce,a,l);const c=_(t+g,g,u,tt(h,rt(e))+ce,a,l),$=_(t+m,m,u,tt(h,rt(e),1)+ce,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,ct(e)+ce,rl,Pt(l,el));const i=_(t+w,w,I+Oe,tt(f,st(e))+ce,rl,Pt(l,el));_(Ee+t+p+$e,Ee+p+$e,Yt,It(e,9)+qt,Pt(Wt(p)+Ht+o,Wt(p)+pe),Pt(l,Bt(p)),Xt,Pt(nl,`table: ${o})`+Fe,_t),dl),_(ie+t+p+$e,ie+p+$e,$e,It(e,12),a,l,a,ol,dl),_(Ee+t+h+$e,Ee+h+$e,Yt,ct(e,9)+qt,Pt(rl,Wt(h)+Ht+r,Wt(h)+pe),Pt(l,el,Bt(h)),Xt,Pt(nl,`row: ${r})`+Fe,_t),dl),_("Add"+t+h+$e,"Add"+h+$e,Yt,ct(e,10)+qt,Pt(Wt(h)+Ht+r,Wt(h)+pe),Pt(l,Bt(h)),Xt,"then?: ("+Pt(rl+Te,"store: Store","row: "+r+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Ee+t+Ve+h+$e,Ee+Ve+h+$e,Yt,ct(e,11)+qt,Pt(rl,Wt(Ve+h)+Ht+r,Wt(Ve+h)+pe),Pt(l,el,Bt(Ve+h)),Xt,Pt(nl,`partialRow: ${r})`+Fe,_t),dl),_(ie+t+h+$e,ie+h+$e,$e,ct(e,12),rl,Pt(l,el),a,ol,dl);const b=Z(t+h+sl,"{rowId, "+G+", cellComponents, getCellComponentProps"+ll+`}: ${F}<'${e}'>`,[oe+`(${i}(rowId, ${G}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],ct(e,13)+ce);Z(t+"Sorted"+p+sl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,j+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${l}, ${b});`,It(e,13)+", sorted"+ce),Z(t+p+sl,`props: ${U}<'${e}'>`,j+"(props, "+c+`(props.${G}), ${l}, ${b});`,It(e,13)+ce),A(e,((n,o,d,r,I)=>{const c="Map"+kt(o,1);s(0,E,c),s(1,E,c);const $=_(t+I+f,f,o+(R(d)?Te:a),$t(e,n)+ce,rl,Pt(l,el,r));_(Ee+t+I+f+$e,Ee+f+$e,Yt,$t(e,n,9)+qt,Pt(rl,Wt(f)+Ht+o+" | "+c,Wt(f)+pe),Pt(l,el,r,Bt(f)),Xt,Pt(nl,`cell: ${o} | ${c})`+Fe,_t),dl),_(ie+t+I+f+$e,ie+f+$e,$e,$t(e,n,12),Pt(rl,"forceDel?: boolean"),Pt(l,el,r,"forceDel"),a,ol,dl),Z(t+I+f+sl,`{rowId, ${G}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${r})`],$t(e,n,13)+ce)}))}));const q=N(S((e=>te(O,e)?.[4]??a))," | ");_(b+c,b+c,Be,Ye(1,8)+" changes",Il(r),cl()),_(C+c,C+c,Be,dt(2,0,1),Il(i),cl()),_(p+c,p+c,Be,dt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(p+w+c,p+w+c,Be,dt(14,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(g+c,g+c,Be,dt(4,3,1),Il(v,`tableId: ${n} | null`),cl("tableId")),_(m+c,m+c,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+Te,"descending: boolean","offset: number","limit: number"+Te),cl("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(w+c,w+c,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(f+c,f+c,Be,dt(7,5),Il(P,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),cl("tableId",el,"cellId"))}if(!Q(t)){const[e,t,l,n,o,r]=d;s(null,E,...d),s(1,E,L);const i=$("getDefaultValueComponent","valueId: Id",N(P(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(T,T,e,Ye(2,0)+ce);const u=_(v,v,l+Oe,tt(y,Ne)+ce);_(Ee+T+$e,Ee+T+$e,Yt,Ye(2,9)+qt,Pt(Wt(T)+Ht+t,Wt(T)+pe),Bt(T),Xt,Pt(nl,`values: ${t})`+Fe,_t),dl),_(Ee+Ve+T+$e,Ee+Ve+T+$e,Yt,Ye(2,11)+qt,Pt(Wt(Ve+T)+Ht+t,Wt(Ve+T)+pe),Bt(Ve+T),Xt,Pt(nl,`partialValues: ${t})`+Fe,_t),dl),_(ie+T+$e,ie+T+$e,$e,Ye(2,12),a,a,a,ol,dl);const p=I(y+xe,Dt("valueId?: VId",G+ye+L,Ft),at("a Value"),`<VId extends ${l}>`),b=I(T+xe,Dt(G+ye+L,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,al,Ft),at(Xe(2,1)));s(1,D,b,p),Z(T+sl,"{"+G+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${u}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+ce),P(((e,t,l,n,o)=>{const d="Map"+kt(t,1);s(0,E,d),s(1,E,d);const r=_(o+y,y,t,it(e)+ce,a,n);_(Ee+o+y+$e,Ee+y+$e,Yt,it(e,9)+qt,Pt(Wt(y)+Ht+t+" | "+d,Wt(y)+pe),Pt(n,Bt(y)),Xt,Pt(nl,`value: ${t} | ${d})`+Fe,_t),dl),_(ie+o+y+$e,ie+y+$e,$e,it(e,12),a,n,a,ol,dl),Z(o+y+sl,`{${G}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+G+`) ?? '', undefined, debugIds, ${n})`],it(e,13)+ce)})),_(T+c,T+c,Be,Ye(2,8)+" changes",Il(n),cl()),_(v+c,v+c,Be,dt(10,0,1),Il(o),cl()),_(y+c,y+c,Be,dt(11,0),Il(r,`valueId: ${l} | null`),cl("valueId"))}return Z(Re,`{${G}, ${G}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"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),...k(),...H(1))]},il=(e,t,l)=>{if(Q(e)&&Q(t))return[a,a,a,a];const[n,o,d,r]=zt(e,t,l);return[n,o,...$l(e,t,l,d,r)]},ul=JSON.parse,pl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},bl=Nt((e=>{const t=()=>{const t=ul(e.getTablesSchemaJson());return!Q(t)||E(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(E(a,(t=>E(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[P(o),ee(),[0],0])),[r,s,[I]]=d,c=oe(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),ne(s,o,c),d[3]++,r==P(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==G(a)?{[I]:n}:{}}})),1}))?t:{}},l=()=>{const t=ul(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:P(l)}})),t},a=e=>il(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(await import("prettier")).format}catch(e){l=e=>e}return L(a(e),((e,a)=>Vt(l(e,{...pl,filepath:"_."+t[a]}))))};return U({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})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:G(e.getValueIds()),jsonLength:xt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=bl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u=d+"s",n=d+r,i="Row",a=i+r,I="Sorted"+i+r,c="Cell",w=c+r,R="Value",C=R+"s",b=R+r,p=(e,s)=>e.map(s),k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),m=e=>t(e)==l,h=()=>{},{createContext:L,useContext:V}=s,y=L([]),S=(e,s)=>{const t=V(y);return k(e)?t[s]:m(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return k(e)||m(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=k(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=h,r=[],...d)=>{const u=f(e);return M((e=>g(u,(o=>g(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=h,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(p(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(p(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>k(e)?{}:e(s),ge=(e,s,t,o)=>{const l=k(s)||!Array.isArray(e)?e:p(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(p(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Le=e=>we(e,K(e.tableId,e.store)),Ve=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(p(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(p(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>k(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(p($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(k(n)||k(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Le,e.TablesView=({store:e,tableComponent:s=Le,getTableComponentProps:t,separator:o,debugIds:l})=>ge(p(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Ve,e.ValuesView=({store:e,valueComponent:s=Ve,getValueComponentProps:t,separator:o,debugIds:l})=>ge(p(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=h,r=[],d=!0)=>{const u=f(o);return M((t=>g(u,(o=>g(s(t,o),(s=>l(o.addRow(e,s,d),o,s)))))),[u,e,...t,...r,d])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!k(t),ae(s),t,g(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=h,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableCellIds=(e,s)=>Q(d+w,f(s),[],[e]),e.useTableCellIdsListener=(e,s,t,o,l)=>U(d+w,f(l),s,t,[e],o),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,g(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u=d+"s",n=d+r,i="Row",a=i+r,I="Sorted"+i+r,c="Cell",w=c+r,R="Value",C=R+"s",b=R+r,p=e=>null==e,k=(e,s,t)=>p(e)?t?.():s(e),g=e=>t(e)==l,m=()=>{},h=(e,s)=>e.map(s),{createContext:L,useContext:V}=s,y=L([]),S=(e,s)=>{const t=V(y);return p(e)?t[s]:g(e)?((e,s)=>k(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return p(e)||g(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=p(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=m,r=[],...d)=>{const u=f(e);return M((e=>k(u,(o=>k(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=m,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(h(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(h(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(h(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(h(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>p(e)?{}:e(s),ge=(e,s,t,o)=>{const l=p(s)||!Array.isArray(e)?e:h(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(h(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Le=e=>we(e,K(e.tableId,e.store)),Ve=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(h(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(h(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>p(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(h($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(p(n)||p(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Le,e.TablesView=({store:e,tableComponent:s=Le,getTableComponentProps:t,separator:o,debugIds:l})=>ge(h(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Ve,e.ValuesView=({store:e,valueComponent:s=Ve,getValueComponentProps:t,separator:o,debugIds:l})=>ge(h(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=m,r=[],d=!0)=>{const u=f(o);return M((t=>k(u,(o=>k(s(t,o),(s=>l(o.addRow(e,s,d),o,s)))))),[u,e,...t,...r,d])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=m,l=[])=>{const r=B(t);return M((s=>k(r,(t=>k(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!p(t),ae(s),t,k(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=m,s=[],t,o=m,l=[])=>{const r=B(t);return M((s=>k(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableCellIds=(e,s)=>Q(d+w,f(s),[],[e]),e.useTableCellIdsListener=(e,s,t,o,l)=>U(d+w,f(l),s,t,[e],o),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,k(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=(e,n)=>e.includes(n),t=(e,n)=>e.forEach(n),l=e=>e.length,o=e=>0==l(e),r=(e,...n)=>e.push(...n),s=e=>e.pop(),i=e=>e.shift(),u=e=>null==e,d=(e,n,t)=>u(e)?null==t?void 0:t():n(e),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>u(e)||0==(e=>e.size)(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),C=(e,n)=>null==e?void 0:e.get(n),g=(e,n,t)=>u(t)?(f(e,n),e):null==e?void 0:e.set(n,t),k=(e,n,t)=>(a(e,n)||g(e,n,t()),C(e,n)),y=(e,n,t,o,r=0)=>d((t?k:C)(e,n[r],r>l(n)-2?t:v),(s=>{if(r>l(n)-2)return(null==o?void 0:o(s))&&g(e,n[r]),s;const i=y(s,n,t,o,r+1);return h(s)&&g(e,n[r]),i})),L=e=>new Set(Array.isArray(e)||u(e)?e:[e]),w=/^\d+$/,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,I]=(e=>{let n;const[o,s]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?i(e):null)?l:""+n++},n=>{w.test(n)&&l(e)<1e3&&r(e,n)}]})(),c=v();return[(e,t,l,r=[],s=(()=>[]))=>{null!=n||(n=_);const i=o(1);var u,d;return g(c,i,[e,t,l,r,s]),d=i,null==(u=y(t,null!=l?l:[""],L))||u.add(d),i},(e,o,...s)=>t(((e,n=[""])=>{const o=[],s=(e,i)=>i==l(n)?r(o,e):null===n[i]?p(e,(e=>s(e,i+1))):t([n[i],null],(n=>s(C(e,n),i+1)));return s(e,0),o})(e,o),(e=>p(e,(e=>C(c,e)[0](n,...null!=o?o:[],...s))))),e=>d(C(c,e),(([,n,t])=>(y(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),g(c,e),s(e),t))),e=>d(C(c,e),(([e,,o=[],r,s])=>{const i=(...d)=>{var c,a;const h=l(d);h==l(o)?e(n,...d,...s(d)):u(o[h])?t(null!=(a=null==(c=r[h])?void 0:c.call(r,...d))?a:[],(e=>i(...d,e))):i(...d,o[h])};i()}))]})(),M=v(),F=v(),O=[],W=[],$=(n,t)=>{V=0,e.transaction((()=>{const[l,o]=C(M,t);p(l,((t,l)=>p(t,((t,o)=>p(t,((t,r)=>((e,n,t,l,o)=>u(o)?e.delCell(n,t,l,!0):e.setCell(n,t,l,o))(e,l,o,r,t[n]))))))),p(o,((t,l)=>((e,n,t)=>u(t)?e.delValue(n):e.setValue(n,t))(e,l,t[n])))})),V=1},q=e=>{g(M,e),g(F,e),B(m,[e])},D=(e,n)=>t(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),q),G=()=>D(O,l(O)-x),H=()=>d(b,(()=>{r(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=s(O),T=1},K=e.addCellListener(null,null,null,((e,n,t,l,o,r)=>{if(V){H();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[r,void 0]));i[1]=o,i[0]===o&&h(g(s,l))&&h(g(e,t))&&h(g(z,n))&&J(),U()}})),N=e.addValueListener(null,((e,n,t,l)=>{if(V){H();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(g(E,n))&&J(),U()}})),P=(e="")=>(u(b)&&(b=""+S++,g(M,b,[z,E]),Y(b,e),z=v(),E=v(),T=1),b),Q=()=>{o(O)||(((e,...n)=>{e.unshift(...n)})(W,P()),$(0,b),b=s(O),T=1)},R=()=>{o(W)||(r(O,b),b=i(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const n=P(e);return U(),n},Y=(e,n)=>(Z(e)&&C(F,e)!==n&&(g(F,e,n),B(m,[e])),_),Z=e=>a(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return n=e,p(F,((e,t)=>n(t,e)));var n},hasCheckpoint:Z,getCheckpoint:e=>C(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const t=n(O,e)?Q:n(W,e)?R:null;for(;!u(t)&&e!=b;)t();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),u(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return c(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>null==e,t=(e,t,l)=>n(e)?null==l?void 0:l():t(e),l=(e,n)=>e.includes(n),o=(e,n)=>e.forEach(n),r=e=>e.length,s=e=>0==r(e),i=(e,...n)=>e.push(...n),u=e=>e.pop(),d=e=>e.shift(),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>n(e)||0==(e=>e.size)(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),C=(e,n)=>null==e?void 0:e.get(n),g=(e,t,l)=>n(l)?(f(e,t),e):null==e?void 0:e.set(t,l),k=(e,n,t)=>(a(e,n)||g(e,n,t()),C(e,n)),y=(e,n,l,o,s=0)=>t((l?k:C)(e,n[s],s>r(n)-2?l:v),(t=>{if(s>r(n)-2)return(null==o?void 0:o(t))&&g(e,n[s]),t;const i=y(t,n,l,o,s+1);return h(t)&&g(e,n[s]),i})),L=e=>new Set(Array.isArray(e)||n(e)?e:[e]),w=/^\d+$/,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,I]=(e=>{let l;const[s,u]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?d(e):null)?l:""+n++},n=>{w.test(n)&&r(e)<1e3&&i(e,n)}]})(),c=v();return[(e,n,t,o=[],r=(()=>[]))=>{null!=l||(l=_);const i=s(1);var u,d;return g(c,i,[e,n,t,o,r]),d=i,null==(u=y(n,null!=t?t:[""],L))||u.add(d),i},(e,n,...t)=>o(((e,n=[""])=>{const t=[],l=(e,s)=>s==r(n)?i(t,e):null===n[s]?p(e,(e=>l(e,s+1))):o([n[s],null],(n=>l(C(e,n),s+1)));return l(e,0),t})(e,n),(e=>p(e,(e=>C(c,e)[0](l,...null!=n?n:[],...t))))),e=>t(C(c,e),(([,n,t])=>(y(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),g(c,e),u(e),t))),e=>t(C(c,e),(([e,,t=[],s,i])=>{const u=(...d)=>{var c,a;const h=r(d);h==r(t)?e(l,...d,...i(d)):n(t[h])?o(null!=(a=null==(c=s[h])?void 0:c.call(s,...d))?a:[],(e=>u(...d,e))):u(...d,t[h])};u()}))]})(),M=v(),F=v(),O=[],W=[],$=(t,l)=>{V=0,e.transaction((()=>{const[o,r]=C(M,l);p(o,((l,o)=>p(l,((l,r)=>p(l,((l,s)=>((e,t,l,o,r)=>n(r)?e.delCell(t,l,o,!0):e.setCell(t,l,o,r))(e,o,r,s,l[t]))))))),p(r,((l,o)=>((e,t,l)=>n(l)?e.delValue(t):e.setValue(t,l))(e,o,l[t])))})),V=1},q=e=>{g(M,e),g(F,e),B(m,[e])},D=(e,n)=>o(((e,n)=>e.splice(0,n))(e,null!=n?n:r(e)),q),G=()=>D(O,r(O)-x),H=()=>t(b,(()=>{i(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=u(O),T=1},K=e.addCellListener(null,null,null,((e,n,t,l,o,r)=>{if(V){H();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[r,void 0]));i[1]=o,i[0]===o&&h(g(s,l))&&h(g(e,t))&&h(g(z,n))&&J(),U()}})),N=e.addValueListener(null,((e,n,t,l)=>{if(V){H();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(g(E,n))&&J(),U()}})),P=(e="")=>(n(b)&&(b=""+S++,g(M,b,[z,E]),Y(b,e),z=v(),E=v(),T=1),b),Q=()=>{s(O)||(((e,...n)=>{e.unshift(...n)})(W,P()),$(0,b),b=u(O),T=1)},R=()=>{s(W)||(i(O,b),b=d(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const n=P(e);return U(),n},Y=(e,n)=>(Z(e)&&C(F,e)!==n&&(g(F,e,n),B(m,[e])),_),Z=e=>a(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return n=e,p(F,((e,t)=>n(t,e)));var n},hasCheckpoint:Z,getCheckpoint:e=>C(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const t=l(O,e)?Q:l(W,e)?R:null;for(;!n(t)&&e!=b;)t();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),n(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return c(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),r=e=>t+e,s=(e,n)=>e.every(n),o=(e,n)=>s(e,((t,l)=>0==l||n(e[l-1],t)<=0)),d=(e,n)=>e.sort(n),i=(e,n)=>e.forEach(n),u=e=>e.length,a=(e,...n)=>e.push(...n),c=e=>null==e,f=(e,n,t)=>c(e)?null==t?void 0:t():n(e),v=e=>Array.isArray(e),h=Object.freeze,I=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},g=e=>c(e)||0==(e=>e.size)(e),p=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},y=e=>e.clear(),x=(e,n)=>null==e?void 0:e.forEach(n),S=(e,n)=>null==e?void 0:e.delete(n),w=e=>new Map(e),L=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},b=(e,n)=>null==e?void 0:e.get(n),T=(e,n)=>x(e,((e,t)=>n(t,e))),E=(e,n,t)=>c(t)?(S(e,n),e):null==e?void 0:e.set(n,t),R=(e,n,t)=>(I(e,n)||E(e,n,t()),b(e,n)),m=(e,n,t,l,r=0)=>f((t?R:b)(e,n[r],r>u(n)-2?t:w),(s=>{if(r>u(n)-2)return(null==l?void 0:l(s))&&E(e,n[r]),s;const o=m(s,n,t,l,r+1);return g(s)&&E(e,n[r]),o})),j=e=>new Set(v(e)||c(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n),z=(e,r)=>n(e)==l?n=>n(e):null!=e?e:()=>null!=r?r:t,A=(e,n)=>e<n?-1:1,C=/^\d+$/,D=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=w(),l=w(),[D,M,B,O,W,$,q,,F,G,H]=((e,n,t)=>{const l=e.hasRow,r=w(),o=w(),d=w(),a=w(),h=w(),m=(n,t,...l)=>{const r=R(h,n,j);return i(l,(n=>k(r,n)&&t&&e.callListener(n))),l},z=(n,...t)=>f(b(h,n),(l=>{i(0==u(t)?p(l):t,(n=>{e.delListener(n),S(l,n)})),g(l)&&E(h,n)})),A=(e,t)=>{E(r,e,t),I(o,e)||(E(o,e,n()),E(d,e,w()),E(a,e,w()))},C=e=>{E(r,e),E(o,e),E(d,e),E(a,e),z(e)};return[()=>e,()=>L(r),e=>T(o,e),e=>I(o,e),e=>b(r,e),e=>b(o,e),(e,n)=>E(o,e,n),A,(n,r,o,f,h)=>{A(n,r);const g=w(),p=w(),S=b(d,n),L=b(a,n),R=n=>{const o=t=>e.getCell(r,n,t),d=b(S,n),i=l(r,n)?t(f(o,n)):void 0;var a,I;if(d===i||v(d)&&v(i)&&(I=i,u(a=d)===u(I)&&s(a,((e,n)=>I[n]===e)))||E(g,n,[d,i]),!c(h)){const e=b(L,n),t=l(r,n)?h(o,n):void 0;e!=t&&E(p,n,t)}},j=e=>{o((()=>{x(g,(([,e],n)=>E(S,n,e))),x(p,((e,n)=>E(L,n,e)))}),g,p,S,L,e),y(g),y(p)};T(S,R),e.hasTable(r)&&i(e.getRowIds(r),(e=>{I(S,e)||R(e)})),j(!0),z(n),m(n,0,e.addRowListener(r,null,((e,n,t)=>R(t))),e.addTableListener(r,(()=>j())))},C,()=>T(h,C),m,z]})(e,w,(e=>{return c(e)?t:v(e)?(n=r,e.map(n)):r(e);var n})),[J,K,N]=(e=>{let n;const[l,r]=(()=>{const e=[];let n=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:t+n++},n=>{C.test(n)&&u(e)<1e3&&a(e,n)}]})(),s=w();return[(e,r,o,d=[],i=(()=>[]))=>{null!=n||(n=Q);const u=l(1);return E(s,u,[e,r,o,d,i]),k(m(r,null!=o?o:[t],j),u),u},(e,l,...r)=>i(((e,n=[t])=>{const l=[],r=(e,t)=>t==u(n)?a(l,e):null===n[t]?x(e,(e=>r(e,t+1))):i([n[t],null],(n=>r(b(e,n),t+1)));return r(e,0),l})(e,l),(e=>x(e,(e=>b(s,e)[0](n,...null!=l?l:[],...r))))),e=>f(b(s,e),(([,n,l])=>(m(n,null!=l?l:[t],void 0,(n=>(S(n,e),g(n)?1:0))),E(s,e),r(e),l))),e=>f(b(s,e),(([e,,t=[],l,r])=>{const s=(...o)=>{var d,a;const f=u(o);f==u(t)?e(n,...o,...r(o)):c(t[f])?i(null!=(a=null==(d=l[f])?void 0:d.call(l,...o))?a:[],(e=>s(...o,e))):s(...o,t[f])};s()}))]})(),P=(n,t,l)=>{const r=W(n);x(l,((n,l)=>t(l,(t=>x(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},Q={setIndexDefinition:(e,t,r,s,i,u=A)=>{const a=c(i)?void 0:([e],[n])=>i(e,n);return F(e,t,((t,r,i,v,h,p)=>{let y=0;const L=j(),R=j(),m=$(e);if(x(r,(([e,n],t)=>{const l=j(e),r=j(n);x(l,(e=>S(r,e)?S(l,e):0)),x(l,(e=>{k(L,e),f(b(m,e),(n=>{S(n,t),g(n)&&(E(m,e),y=1)}))})),x(r,(e=>{k(L,e),I(m,e)||(E(m,e,j()),y=1),k(b(m,e),t),c(s)||k(R,e)}))})),t(),g(h)||(p?T(m,(e=>k(R,e))):T(i,(e=>f(b(v,e),(e=>k(R,e))))),x(R,(e=>{const n=(n,t)=>u(b(h,n),b(h,t),e),t=[...b(m,e)];o(t,n)||(E(m,e,j(d(t,n))),k(L,e))}))),(y||p)&&!c(a)){const n=[...m];o(n,a)||(q(e,w(d(n,a))),y=1)}y&&K(n,[e]),x(L,(n=>K(l,[e,n])))}),z(r),f(s,z)),Q},delIndexDefinition:e=>(G(e),Q),getStore:D,getIndexIds:M,forEachIndex:e=>B(((n,t)=>e(n,(e=>P(n,e,t))))),forEachSlice:(e,n)=>P(e,n,$(e)),hasIndex:O,hasSlice:(e,n)=>I($(e),n),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,n)=>p(b($(e),n)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>J(t,l,[e,n]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return h(Q)})(e)),n.get(e))})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="",l=n(t),r=e=>t+e,s=e=>null==e,o=(e,n,t)=>s(e)?null==t?void 0:t():n(e),d=e=>Array.isArray(e),i=(e,n)=>e.every(n),u=(e,n)=>i(e,((t,l)=>0==l||n(e[l-1],t)<=0)),a=(e,n)=>e.sort(n),c=(e,n)=>e.forEach(n),f=e=>e.length,v=(e,...n)=>e.push(...n),h=Object.freeze,I=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},g=e=>s(e)||0==(e=>e.size)(e),p=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},y=e=>e.clear(),x=(e,n)=>null==e?void 0:e.forEach(n),S=(e,n)=>null==e?void 0:e.delete(n),w=e=>new Map(e),L=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},b=(e,n)=>null==e?void 0:e.get(n),T=(e,n)=>x(e,((e,t)=>n(t,e))),E=(e,n,t)=>s(t)?(S(e,n),e):null==e?void 0:e.set(n,t),R=(e,n,t)=>(I(e,n)||E(e,n,t()),b(e,n)),m=(e,n,t,l,r=0)=>o((t?R:b)(e,n[r],r>f(n)-2?t:w),(s=>{if(r>f(n)-2)return(null==l?void 0:l(s))&&E(e,n[r]),s;const o=m(s,n,t,l,r+1);return g(s)&&E(e,n[r]),o})),j=e=>new Set(d(e)||s(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n),z=(e,r)=>n(e)==l?n=>n(e):null!=e?e:()=>null!=r?r:t,A=(e,n)=>e<n?-1:1,C=/^\d+$/,D=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=w(),l=w(),[D,M,B,O,W,$,q,,F,G,H]=((e,n,t)=>{const l=e.hasRow,r=w(),u=w(),a=w(),v=w(),h=w(),m=(n,t,...l)=>{const r=R(h,n,j);return c(l,(n=>k(r,n)&&t&&e.callListener(n))),l},z=(n,...t)=>o(b(h,n),(l=>{c(0==f(t)?p(l):t,(n=>{e.delListener(n),S(l,n)})),g(l)&&E(h,n)})),A=(e,t)=>{E(r,e,t),I(u,e)||(E(u,e,n()),E(a,e,w()),E(v,e,w()))},C=e=>{E(r,e),E(u,e),E(a,e),E(v,e),z(e)};return[()=>e,()=>L(r),e=>T(u,e),e=>I(u,e),e=>b(r,e),e=>b(u,e),(e,n)=>E(u,e,n),A,(n,r,o,u,h)=>{A(n,r);const g=w(),p=w(),S=b(a,n),L=b(v,n),R=n=>{const o=t=>e.getCell(r,n,t),a=b(S,n),c=l(r,n)?t(u(o,n)):void 0;var v,I;if(a===c||d(a)&&d(c)&&(I=c,f(v=a)===f(I)&&i(v,((e,n)=>I[n]===e)))||E(g,n,[a,c]),!s(h)){const e=b(L,n),t=l(r,n)?h(o,n):void 0;e!=t&&E(p,n,t)}},j=e=>{o((()=>{x(g,(([,e],n)=>E(S,n,e))),x(p,((e,n)=>E(L,n,e)))}),g,p,S,L,e),y(g),y(p)};T(S,R),e.hasTable(r)&&c(e.getRowIds(r),(e=>{I(S,e)||R(e)})),j(!0),z(n),m(n,0,e.addRowListener(r,null,((e,n,t)=>R(t))),e.addTableListener(r,(()=>j())))},C,()=>T(h,C),m,z]})(e,w,(e=>{return s(e)?t:d(e)?(n=r,e.map(n)):r(e);var n})),[J,K,N]=(e=>{let n;const[l,r]=(()=>{const e=[];let n=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:t+n++},n=>{C.test(n)&&f(e)<1e3&&v(e,n)}]})(),d=w();return[(e,r,s,o=[],i=(()=>[]))=>{null!=n||(n=Q);const u=l(1);return E(d,u,[e,r,s,o,i]),k(m(r,null!=s?s:[t],j),u),u},(e,l,...r)=>c(((e,n=[t])=>{const l=[],r=(e,t)=>t==f(n)?v(l,e):null===n[t]?x(e,(e=>r(e,t+1))):c([n[t],null],(n=>r(b(e,n),t+1)));return r(e,0),l})(e,l),(e=>x(e,(e=>b(d,e)[0](n,...null!=l?l:[],...r))))),e=>o(b(d,e),(([,n,l])=>(m(n,null!=l?l:[t],void 0,(n=>(S(n,e),g(n)?1:0))),E(d,e),r(e),l))),e=>o(b(d,e),(([e,,t=[],l,r])=>{const o=(...d)=>{var i,u;const a=f(d);a==f(t)?e(n,...d,...r(d)):s(t[a])?c(null!=(u=null==(i=l[a])?void 0:i.call(l,...d))?u:[],(e=>o(...d,e))):o(...d,t[a])};o()}))]})(),P=(n,t,l)=>{const r=W(n);x(l,((n,l)=>t(l,(t=>x(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},Q={setIndexDefinition:(e,t,r,d,i,c=A)=>{const f=s(i)?void 0:([e],[n])=>i(e,n);return F(e,t,((t,r,i,v,h,p)=>{let y=0;const L=j(),R=j(),m=$(e);if(x(r,(([e,n],t)=>{const l=j(e),r=j(n);x(l,(e=>S(r,e)?S(l,e):0)),x(l,(e=>{k(L,e),o(b(m,e),(n=>{S(n,t),g(n)&&(E(m,e),y=1)}))})),x(r,(e=>{k(L,e),I(m,e)||(E(m,e,j()),y=1),k(b(m,e),t),s(d)||k(R,e)}))})),t(),g(h)||(p?T(m,(e=>k(R,e))):T(i,(e=>o(b(v,e),(e=>k(R,e))))),x(R,(e=>{const n=(n,t)=>c(b(h,n),b(h,t),e),t=[...b(m,e)];u(t,n)||(E(m,e,j(a(t,n))),k(L,e))}))),(y||p)&&!s(f)){const n=[...m];u(n,f)||(q(e,w(a(n,f))),y=1)}y&&K(n,[e]),x(L,(n=>K(l,[e,n])))}),z(r),o(d,z)),Q},delIndexDefinition:e=>(G(e),Q),getStore:D,getIndexIds:M,forEachIndex:e=>B(((n,t)=>e(n,(e=>P(n,e,t))))),forEachSlice:(e,n)=>P(e,n,$(e)),hasIndex:O,hasSlice:(e,n)=>I($(e),n),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,n)=>p(b($(e),n)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>J(t,l,[e,n]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return h(Q)})(e)),n.get(e))})();e.createIndexes=D},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseIndexes={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),r=t(t),i=(e,t)=>e.forEach(t),o=e=>u(e,((e,t)=>e+t),0),s=e=>e.length,u=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),a=Math.max,c=Math.min,v=isFinite,f=e=>null==e,h=(e,t,n)=>f(e)?null==n?void 0:n():t(e),g=e=>Array.isArray(e),M=()=>{},p=Object.freeze,y=e=>e.size,m=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},b=e=>f(e)||0==y(e),L=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},w=e=>e.clear(),T=(e,t)=>null==e?void 0:e.forEach(t),x=(e,t)=>null==e?void 0:e.delete(t),E=e=>new Map(e),I=(e,t)=>null==e?void 0:e.get(t),R=(e,t)=>T(e,((e,n)=>t(n,e))),S=(e,t,n)=>f(n)?(x(e,t),e):null==e?void 0:e.set(t,n),j=(e,t,n)=>(m(e,t)||S(e,t,n()),I(e,t)),k=(e,t,n,l,r=0)=>h((n?j:I)(e,t[r],r>s(t)-2?n:E),(i=>{if(r>s(t)-2)return(null==l?void 0:l(i))&&S(e,t[r]),i;const o=k(i,t,n,l,r+1);return b(i)&&S(e,t[r]),o})),z=E([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>a(...e),(e,t)=>a(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:a(t,e)]],["min",[e=>c(...e),(e,t)=>c(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:c(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),A=e=>new Set(g(e)||f(e)?e:[e]),D=(e,t)=>null==e?void 0:e.add(t),N=/^\d+$/,B=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=E(),[u,a,c,B,C,F,O,,W,$,q]=((e,t,l)=>{const r=e.hasRow,o=E(),u=E(),d=E(),a=E(),c=E(),v=(t,n,...l)=>{const r=j(c,t,A);return i(l,(t=>D(r,t)&&n&&e.callListener(t))),l},M=(t,...n)=>h(I(c,t),(l=>{i(0==s(n)?L(l):n,(t=>{e.delListener(t),x(l,t)})),b(l)&&S(c,t)})),p=(e,n)=>{S(o,e,n),m(u,e)||(S(u,e,t()),S(d,e,E()),S(a,e,E()))},y=e=>{S(o,e),S(u,e),S(d,e),S(a,e),M(e)};return[()=>e,()=>{return[...null!=(t=null==(e=o)?void 0:e.keys())?t:[]];var e,t},e=>R(u,e),e=>m(u,e),e=>I(o,e),e=>I(u,e),(e,t)=>S(u,e,t),p,(t,l,o,u,c)=>{p(t,l);const h=E(),y=E(),b=I(d,t),L=I(a,t),x=t=>{const i=n=>e.getCell(l,t,n),o=I(b,t),d=r(l,t)?(a=u(i,t),isNaN(a)||f(a)||!0===a||!1===a||a===n?void 0:1*a):void 0;var a,v,M,p;if(o===d||g(o)&&g(d)&&(M=d,s(v=o)===s(M)&&(p=(e,t)=>M[t]===e,v.every(p)))||S(h,t,[o,d]),!f(c)){const e=I(L,t),n=r(l,t)?c(i,t):void 0;e!=n&&S(y,t,n)}},j=e=>{o((()=>{T(h,(([,e],t)=>S(b,t,e))),T(y,((e,t)=>S(L,t,e)))}),h,y,b,L,e),w(h),w(y)};R(b,x),e.hasTable(l)&&i(e.getRowIds(l),(e=>{m(b,e)||x(e)})),j(!0),M(t),v(t,0,e.addRowListener(l,null,((e,t,n)=>x(n))),e.addTableListener(l,(()=>j())))},y,()=>R(c,y),v,M]})(e,M),[G,H,J]=(e=>{let t;const[l,r]=(()=>{const e=[];let t=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:n+t++},t=>{N.test(t)&&s(e)<1e3&&d(e,t)}]})(),o=E();return[(e,r,i,s=[],u=(()=>[]))=>{null!=t||(t=K);const d=l(1);return S(o,d,[e,r,i,s,u]),D(k(r,null!=i?i:[n],A),d),d},(e,l,...r)=>i(((e,t=[n])=>{const l=[],r=(e,n)=>n==s(t)?d(l,e):null===t[n]?T(e,(e=>r(e,n+1))):i([t[n],null],(t=>r(I(e,t),n+1)));return r(e,0),l})(e,l),(e=>T(e,(e=>I(o,e)[0](t,...null!=l?l:[],...r))))),e=>h(I(o,e),(([,t,l])=>(k(t,null!=l?l:[n],void 0,(t=>(x(t,e),b(t)?1:0))),S(o,e),r(e),l))),e=>h(I(o,e),(([e,,n=[],l,r])=>{const o=(...u)=>{var d,a;const c=s(u);c==s(n)?e(t,...u,...r(u)):f(n[c])?i(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>o(...u,e))):o(...u,n[c])};o()}))]})(),K={setMetricDefinition:(e,n,i,s,u,d,a)=>{var c;const h=t(i)==r?[i,u,d,a]:null!=(c=I(z,i))?c:I(z,"sum");return W(e,n,((t,n,l,r,i,s)=>{const u=F(e),d=y(r);s||(s=f(u)),t();let a=((e,t,n,l,r,i=!1)=>{if(b(n))return;const[o,s,u,d]=r;return i||(i=f(e)),T(l,(([n,l])=>{i||(e=f(n)?null==s?void 0:s(e,l,t++):f(l)?null==u?void 0:u(e,n,t--):null==d?void 0:d(e,l,n,t),i||(i=f(e)))})),i?o(L(n),y(n)):e})(u,d,r,n,h,s);v(a)||(a=void 0),a!=u&&(O(e,a),H(o,[e],a,u))}),(1,t(g=s)==l?e=>e(g):null!=g?g:()=>1)),K;var g},delMetricDefinition:e=>($(e),K),getStore:u,getMetricIds:a,forEachMetric:c,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,o,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return p(K)})(e)),o.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),r=t(t),i=Math.max,o=Math.min,s=isFinite,u=e=>null==e,d=(e,t,n)=>u(e)?null==n?void 0:n():t(e),a=e=>Array.isArray(e),c=()=>{},v=(e,t)=>e.forEach(t),f=e=>g(e,((e,t)=>e+t),0),h=e=>e.length,g=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),p=Object.freeze,y=e=>e.size,m=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},b=e=>u(e)||0==y(e),L=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},w=e=>e.clear(),T=(e,t)=>null==e?void 0:e.forEach(t),x=(e,t)=>null==e?void 0:e.delete(t),E=e=>new Map(e),I=(e,t)=>null==e?void 0:e.get(t),R=(e,t)=>T(e,((e,n)=>t(n,e))),S=(e,t,n)=>u(n)?(x(e,t),e):null==e?void 0:e.set(t,n),j=(e,t,n)=>(m(e,t)||S(e,t,n()),I(e,t)),k=(e,t,n,l,r=0)=>d((n?j:I)(e,t[r],r>h(t)-2?n:E),(i=>{if(r>h(t)-2)return(null==l?void 0:l(i))&&S(e,t[r]),i;const o=k(i,t,n,l,r+1);return b(i)&&S(e,t[r]),o})),z=E([["avg",[(e,t)=>f(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>i(...e),(e,t)=>i(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:i(t,e)]],["min",[e=>o(...e),(e,t)=>o(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:o(t,e)]],["sum",[e=>f(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),A=e=>new Set(a(e)||u(e)?e:[e]),D=(e,t)=>null==e?void 0:e.add(t),N=/^\d+$/,B=(e=>{const i=new WeakMap;return e=>(i.has(e)||i.set(e,(e=>{const i=E(),[o,f,g,B,C,F,O,,W,$,q]=((e,t,l)=>{const r=e.hasRow,i=E(),o=E(),s=E(),c=E(),f=E(),g=(t,n,...l)=>{const r=j(f,t,A);return v(l,(t=>D(r,t)&&n&&e.callListener(t))),l},M=(t,...n)=>d(I(f,t),(l=>{v(0==h(n)?L(l):n,(t=>{e.delListener(t),x(l,t)})),b(l)&&S(f,t)})),p=(e,n)=>{S(i,e,n),m(o,e)||(S(o,e,t()),S(s,e,E()),S(c,e,E()))},y=e=>{S(i,e),S(o,e),S(s,e),S(c,e),M(e)};return[()=>e,()=>{return[...null!=(t=null==(e=i)?void 0:e.keys())?t:[]];var e,t},e=>R(o,e),e=>m(o,e),e=>I(i,e),e=>I(o,e),(e,t)=>S(o,e,t),p,(t,l,i,o,d)=>{p(t,l);const f=E(),y=E(),b=I(s,t),L=I(c,t),x=t=>{const i=n=>e.getCell(l,t,n),s=I(b,t),c=r(l,t)?(v=o(i,t),isNaN(v)||u(v)||!0===v||!1===v||v===n?void 0:1*v):void 0;var v,g,M,p;if(s===c||a(s)&&a(c)&&(M=c,h(g=s)===h(M)&&(p=(e,t)=>M[t]===e,g.every(p)))||S(f,t,[s,c]),!u(d)){const e=I(L,t),n=r(l,t)?d(i,t):void 0;e!=n&&S(y,t,n)}},j=e=>{i((()=>{T(f,(([,e],t)=>S(b,t,e))),T(y,((e,t)=>S(L,t,e)))}),f,y,b,L,e),w(f),w(y)};R(b,x),e.hasTable(l)&&v(e.getRowIds(l),(e=>{m(b,e)||x(e)})),j(!0),M(t),g(t,0,e.addRowListener(l,null,((e,t,n)=>x(n))),e.addTableListener(l,(()=>j())))},y,()=>R(f,y),g,M]})(e,c),[G,H,J]=(e=>{let t;const[l,r]=(()=>{const e=[];let t=0;return[l=>{var r;return null!=(r=l?e.shift():null)?r:n+t++},t=>{N.test(t)&&h(e)<1e3&&M(e,t)}]})(),i=E();return[(e,r,o,s=[],u=(()=>[]))=>{null!=t||(t=K);const d=l(1);return S(i,d,[e,r,o,s,u]),D(k(r,null!=o?o:[n],A),d),d},(e,l,...r)=>v(((e,t=[n])=>{const l=[],r=(e,n)=>n==h(t)?M(l,e):null===t[n]?T(e,(e=>r(e,n+1))):v([t[n],null],(t=>r(I(e,t),n+1)));return r(e,0),l})(e,l),(e=>T(e,(e=>I(i,e)[0](t,...null!=l?l:[],...r))))),e=>d(I(i,e),(([,t,l])=>(k(t,null!=l?l:[n],void 0,(t=>(x(t,e),b(t)?1:0))),S(i,e),r(e),l))),e=>d(I(i,e),(([e,,n=[],l,r])=>{const i=(...o)=>{var s,d;const a=h(o);a==h(n)?e(t,...o,...r(o)):u(n[a])?v(null!=(d=null==(s=l[a])?void 0:s.call(l,...o))?d:[],(e=>i(...o,e))):i(...o,n[a])};i()}))]})(),K={setMetricDefinition:(e,n,o,d,a,c,v)=>{var f;const h=t(o)==r?[o,a,c,v]:null!=(f=I(z,o))?f:I(z,"sum");return W(e,n,((t,n,l,r,o,d)=>{const a=F(e),c=y(r);d||(d=u(a)),t();let v=((e,t,n,l,r,i=!1)=>{if(b(n))return;const[o,s,d,a]=r;return i||(i=u(e)),T(l,(([n,l])=>{i||(e=u(n)?null==s?void 0:s(e,l,t++):u(l)?null==d?void 0:d(e,n,t--):null==a?void 0:a(e,l,n,t),i||(i=u(e)))})),i?o(L(n),y(n)):e})(a,c,r,n,h,d);s(v)||(v=void 0),v!=a&&(O(e,v),H(i,[e],v,a))}),(1,t(g=d)==l?e=>e(g):null!=g?g:()=>1)),K;var g},delMetricDefinition:e=>($(e),K),getStore:o,getMetricIds:f,forEachMetric:g,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,i,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return p(K)})(e)),i.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=JSON.parse,n=(e,t)=>e instanceof t,o=e=>null==e,r=Object,i=r.keys,l=r.freeze,s=e=>(e=>n(e,r)&&e.constructor==r)(e)&&0==(e=>i(e).length)(e);var u=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{s(n.next(e))}catch(e){r(e)}},l=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);s((n=n.apply(e,t)).next())})),a=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{s(n.next(e))}catch(e){r(e)}},l=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);s((n=n.apply(e,t)).next())}));const d="storage",c=globalThis.window,v=(e,r,i)=>((e,v,f,y,h)=>{let p,g,S,m=0,A=0,L=0;const w=[],x=e=>u(void 0,null,(function*(){return 2!=m&&(m=1,yield P.schedule((()=>u(void 0,null,(function*(){yield e(),m=0}))))),P})),P={load:(t,n)=>u(void 0,null,(function*(){return yield x((()=>u(void 0,null,(function*(){try{e.setContent(yield v())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>u(void 0,[...n],(function*(n={},o={}){return P.stopAutoLoad(),yield P.load(n,o),L=1,S=(e=>{const n=n=>{n.storageArea===i&&n.key===r&&e((()=>t(n.newValue)))};return c.addEventListener(d,n),n})(((t,n)=>u(void 0,null,(function*(){return yield x((()=>u(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield v())}catch(e){}}))))})))),P})),stopAutoLoad:()=>{return L&&(e=S,c.removeEventListener(d,e),S=void 0,L=0),P;var e},save:t=>u(void 0,null,(function*(){return 1!=m&&(m=2,yield P.schedule((()=>u(void 0,null,(function*(){try{yield(t=e.getContent,a(void 0,null,(function*(){return i.setItem(r,(e=t(),JSON.stringify(e,((e,t)=>{return n(t,Map)?(o=(e,[t,n])=>(e[t]=n,e),r={},[...t].reduce(o,r)):t;var o,r}))));var e})))}catch(e){}var t;m=0}))))),P})),startAutoSave:()=>u(void 0,null,(function*(){return yield P.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!o(t)||n(t),P},schedule:(...e)=>u(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(w,...e),yield u(void 0,null,(function*(){if(!A){for(A=1;!o((e=w,g=e.shift()));)try{yield g()}catch(e){}A=0}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l(P)})(e,(()=>a(void 0,null,(function*(){return t(i.getItem(r))}))));e.createLocalPersister=(e,t)=>v(e,t,localStorage),e.createSessionPersister=(e,t)=>v(e,t,sessionStorage)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e instanceof t,n=e=>null==e,o=Object,r=o.keys,i=o.freeze,s=e=>(e=>t(e,o)&&e.constructor==o)(e)&&0==(e=>r(e).length)(e),l=JSON.parse;var u=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{l(n.next(e))}catch(e){r(e)}},s=e=>{try{l(n.throw(e))}catch(e){r(e)}},l=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,s);l((n=n.apply(e,t)).next())})),a=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{l(n.next(e))}catch(e){r(e)}},s=e=>{try{l(n.throw(e))}catch(e){r(e)}},l=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,s);l((n=n.apply(e,t)).next())}));const d="storage",c=globalThis.window,v=(e,r,v)=>((e,f,y,h,p)=>{let g,S,m,A=0,L=0,w=0;const x=[],P=e=>u(void 0,null,(function*(){return 2!=A&&(A=1,yield T.schedule((()=>u(void 0,null,(function*(){yield e(),A=0}))))),T})),T={load:(t,n)=>u(void 0,null,(function*(){return yield P((()=>u(void 0,null,(function*(){try{e.setContent(yield f())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>u(void 0,[...t],(function*(t={},n={}){return T.stopAutoLoad(),yield T.load(t,n),w=1,m=(e=>{const t=t=>{t.storageArea===v&&t.key===r&&e((()=>l(t.newValue)))};return c.addEventListener(d,t),t})(((t,n)=>u(void 0,null,(function*(){return yield P((()=>u(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield f())}catch(e){}}))))})))),T})),stopAutoLoad:()=>{return w&&(e=m,c.removeEventListener(d,e),m=void 0,w=0),T;var e},save:n=>u(void 0,null,(function*(){return 1!=A&&(A=2,yield T.schedule((()=>u(void 0,null,(function*(){try{yield(n=e.getContent,a(void 0,null,(function*(){return v.setItem(r,(e=n(),JSON.stringify(e,((e,n)=>t(n,Map)?o.fromEntries([...n]):n))));var e})))}catch(e){}var n;A=0}))))),T})),startAutoSave:()=>u(void 0,null,(function*(){return yield T.stopAutoSave().save(),g=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||T.save((()=>[n,o]))})),T})),stopAutoSave:()=>{var t,o;return t=g,o=e.delListener,!!n(t)||o(t),T},schedule:(...e)=>u(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(x,...e),yield u(void 0,null,(function*(){if(!L){for(L=1;!n((e=x,S=e.shift()));)try{yield S()}catch(e){}L=0}var e})),T})),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i(T)})(e,(()=>a(void 0,null,(function*(){return l(v.getItem(r))}))));e.createLocalPersister=(e,t)=>v(e,t,localStorage),e.createSessionPersister=(e,t)=>v(e,t,sessionStorage)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",r=n(""),o=(e,n="")=>e.join(n),i=(e,n)=>e.map(n),u=e=>e.length,a=e=>0==u(e),d=(e,n)=>e.filter(n),s=(e,n,t)=>e.slice(n,t),c=(e,...n)=>e.push(...n),v=Promise,y=JSON.parse,f=(e,n)=>e instanceof n,p=e=>null==e,h=(e,n,t)=>p(e)?null==t?void 0:t():n(e),m=e=>n(e)==r,E=e=>{return n=function*(){return v.all(e)},new Promise(((e,t)=>{var l=e=>{try{o(n.next(e))}catch(e){t(e)}},r=e=>{try{o(n.throw(e))}catch(e){t(e)}},o=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);o((n=n.apply(void 0,null)).next())}));var n},T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},A=(e,n)=>null==e?void 0:e.delete(n),O=Object,b=O.keys,L=O.freeze,w=(e=[])=>O.fromEntries(e),x=(...e)=>O.assign({},...e),S=(e,n)=>(delete e[n],e),C=(e,n)=>i(O.entries(e),(([e,t])=>n(t,e))),N=e=>O.values(e),g=e=>u(b(e)),R=e=>(e=>f(e,O)&&e.constructor==O)(e)&&0==g(e),I=e=>new Map(e),D=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},$=(e,n)=>null==e?void 0:e.get(n),_=(e,n)=>{var t;return i([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},j=(e,n,t)=>p(t)?(A(e,n),e):null==e?void 0:e.set(n,t),F=(e,n,t,l=j)=>(C(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!p(((e,n)=>h(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),M="_id",B=e=>`"${e.replace(/"/g,'""')}"`,W=e=>new Set(Array.isArray(e)||p(e)?e:[e]),U=(e,n)=>null==e?void 0:e.add(n);var k=Object.defineProperty,q=Object.getOwnPropertySymbols,H=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable,Y=(e,n,t)=>n in e?k(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))H.call(n,t)&&Y(e,t,n[t]);if(q)for(var t of q(n))J.call(n,t)&&Y(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const V="SELECT*FROM",G="FROM pragma_table_",Q="WHERE",X=(e,n)=>{const t=I(),r=(e,n)=>!p($($(t,e),n)),s=(n,r,s,v,y)=>K(void 0,null,(function*(){const f=W();C(null!=y?y:{},(e=>i(b(e),(e=>U(f,e)))));const p=P(f);if(a(p)&&T(t,n)&&v)return yield e("DROP TABLE"+B(n)),void j(t,n);if(a(p)||T(t,n)){const l=$(t,n),o=W(D(l));yield E([...i(p,(t=>K(void 0,null,(function*(){A(o,t)||(yield e(`ALTER TABLE${B(n)}ADD${B(t)}`),j(l,t,""))})))),...s?i(P(o),(t=>K(void 0,null,(function*(){t!=r&&(yield e(`ALTER TABLE${B(n)}DROP${B(t)}`),j(l,t))})))):[]])}else yield e(`CREATE TABLE${B(n)}(${B(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+B(e))))});`),j(t,n,I([[r,""],...i(p,(e=>[e,""]))]));if(a(p))T(t,n)&&(yield e("DELETE FROM"+B(n)));else{const a=[],s=[],v=[],f=d(D($(t,n)),(e=>e!=r));C(y,((e,n)=>{var t;c(a,`(?${t=u(f),",?".repeat(t)})`),c(s,n,...i(f,(n=>e[n]))),c(v,n)})),yield e("INSERT INTO"+B(n)+"("+B(r)+o(i(f,(e=>l+B(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+B(r)+")DO UPDATE SET"+o(i(f,(e=>B(e)+"=excluded."+B(e))),l),s),yield e("DELETE FROM"+B(n)+Q+B(r)+"NOT IN("+Z(v)+")",v)}}));return[()=>K(void 0,null,(function*(){return F(t,w(yield E(i(yield e("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+Z(n)+")",n),(n=>K(void 0,[n],(function*({name:n}){return[n,w(i(yield e("SELECT name,type "+G+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return j(t,n,F((i=I,T(r=t,o=n)||j(r,o,i()),$(r,o)),l,((e,n,t)=>{t!=$(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))));var r,o,i}),((e,n)=>j(t,n)))})),(n,t)=>K(void 0,null,(function*(){const l=r(n,t)?yield e(V+B(n)+Q+B(t)+"=?",["_"]):[];return a(l)?null:S(l[0],t)})),(e,n,t,l)=>K(void 0,null,(function*(){return yield s(e,n,!0,!0,{[t]:l})})),(n,t)=>K(void 0,null,(function*(){return r(n,t)?w(d(i(yield e(V+B(n)),(e=>[e[t],S(z({},e),t)])),(([e,n])=>!p(e)&&!R(n)))):{}})),s]},Z=e=>o(i(e,(()=>"?")),l);var ee=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const ne=(e,n,t,l,r)=>{let o,i,u,a=0,d=0,s=0;const v=[],y=e=>ee(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(t,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ee(void 0,[...t],(function*(t={},r={}){return f.stopAutoLoad(),yield f.load(t,r),s=1,u=l(((t,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){var r;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(r=null==t?void 0:t())?r:yield n())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),f),save:n=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ee(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),f})),startAutoSave:()=>ee(void 0,null,(function*(){return yield f.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();R(t)&&R(l)||f.save((()=>[t,l]))})),f})),stopAutoSave:()=>(h(o,e.delListener),f),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!p((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return L(f)};var te=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const le="store",re=(e,n,t,l,[r],o)=>{const[i,u,a]=X(n,o),d=ne(e,(()=>te(void 0,null,(function*(){var e;return yield i(),y((null!=(e=yield u(r,M))?e:{})[le])}))),(e=>te(void 0,null,(function*(){return d.schedule(i,(()=>te(void 0,null,(function*(){var n;yield a(r,M,"_",{[le]:(n=e(),JSON.stringify(n,((e,n)=>{return f(n,Map)?(t=(e,[n,t])=>(e[n]=t,e),l={},[...n].reduce(t,l)):n;var t,l})))})}))))}))),t,l);return d};var oe=(e,n,t)=>new Promise(((l,r)=>{var o=e=>{try{u(t.next(e))}catch(e){r(e)}},i=e=>{try{u(t.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((t=t.apply(e,n)).next())}));const ie=(e,n,t,l,[r,o,[i,u,a]],s)=>{const[c,v,y,f,h]=X(n,s);return ne(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return w(d(yield E(_(r,((e,n)=>oe(void 0,[e,n],(function*([e,n],t){return[e,yield f(t,n)]}))))),(e=>!R(e[1]))))})),n=yield oe(void 0,null,(function*(){return i?yield v(a,M):{}}));return R(e)&&p(n)?void 0:[e,n]}))),(e=>oe(void 0,null,(function*(){const[n,t]=e();yield c(),yield(e=>oe(void 0,null,(function*(){return yield E(_(o,((n,t)=>oe(void 0,[n,t],(function*([n,t,l,r],o){return yield h(n,t,l,r,e[o])})))))})))(n),yield(e=>oe(void 0,null,(function*(){return u?yield y(a,M,"_",e):null})))(t)}))),t,l)},ue="json",ae="autoLoadIntervalSeconds",de="rowIdColumnName",se="tableId",ce="tableName",ve={mode:ue,[ae]:1},ye={load:0,save:0,[ce]:t+"_values"},fe=(e,n,t,l)=>{const r=I();return C(e,((e,o)=>{const i=s(N(x(n,m(e)?{[t]:e}:e)),0,g(n));p(i[0])||l(o,i[0])||j(r,o,i)})),r},pe="pragma ",he="data_version",me="schema_version",Ee=(e,n,l,r,o)=>{let i,u;const[a,d,c,v]=(e=>{const n=(e=>x(ve,m(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[ae];if(n.mode==ue){const{storeTableName:e=t}=n;return[1,l,[e],W(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=n,u=s(N(x(ye,i)),0,g(ye)),a=u[2],d=W(a);return[0,l,[fe(r,{[se]:null,[de]:M},se,(e=>U(d,e)&&e==a)),fe(o,{[ce]:null,[de]:M,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,n)=>U(d,n)&&n==a)),u],d]})(n);return(a?re:ie)(e,l,(e=>[setInterval((()=>{return n=function*(){try{const n=(yield l(pe+he))[0][he],t=(yield l(pe+me))[0][me];n==(null!=i?i:i=n)&&t==(null!=u?u:u=t)||(e(),i=n,u=t)}catch(e){}},new Promise(((e,t)=>{var l=e=>{try{o(n.next(e))}catch(e){t(e)}},r=e=>{try{o(n.throw(e))}catch(e){t(e)}},o=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);o((n=n.apply(void 0,null)).next())}));var n}),1e3*d),r((n=>v.has(n)?e():0))]),(([e,n])=>{clearInterval(e),i=u=null,o(n)}),c,P(v))};e.createCrSqliteWasmPersister=(e,n,t)=>Ee(e,t,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return yield n.execO(e,t)},new Promise(((e,n)=>{var t=e=>{try{i(r.next(e))}catch(e){n(e)}},o=e=>{try{i(r.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>e()))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=(e,n="")=>e.join(n),u=(e,n)=>e.map(n),a=e=>e.length,d=e=>0==a(e),s=(e,n)=>e.filter(n),c=(e,n,t)=>e.slice(n,t),v=(e,...n)=>e.push(...n),y=Promise,f=(e,n)=>e instanceof n,p=e=>null==e,h=(e,n,t)=>p(e)?null==t?void 0:t():n(e),E=e=>n(e)==o,m=e=>{return n=function*(){return y.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},O=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),A=Object,L=A.keys,b=A.freeze,w=(e=[])=>A.fromEntries(e),x=(...e)=>A.assign({},...e),R=(e,n)=>u(A.entries(e),(([e,t])=>n(t,e))),S=e=>A.values(e),C=e=>a(L(e)),N=e=>(e=>f(e,A)&&e.constructor==A)(e)&&0==C(e),g=e=>new Map(e),D=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},I=(e,n)=>null==e?void 0:e.get(n),F=(e,n)=>{var t;return u([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},M=(e,n,t)=>p(t)?(P(e,n),e):null==e?void 0:e.set(n,t),$=(e,n,t,l=M)=>(R(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!p(((e,n)=>h(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),j=e=>new Set(Array.isArray(e)||p(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),W="_",B="_id",H=e=>`"${e.replace(/"/g,'""')}"`;var U=Object.defineProperty,k=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,J=Object.prototype.propertyIsEnumerable,Y=(e,n,t)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))q.call(n,t)&&Y(e,t,n[t]);if(k)for(var t of k(n))J.call(n,t)&&Y(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const V="FROM pragma_table_",G="WHERE",Q=(e,n)=>{const t=g();return[()=>K(void 0,null,(function*(){return $(t,w(yield m(u(yield e("SELECT name "+V+"list WHERE schema='main'AND type='table'AND name IN("+Z(n)+")",n),(n=>K(void 0,[n],(function*({name:n}){return[n,w(u(yield e("SELECT name,type "+V+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return M(t,n,$((i=g,T(o=t,r=n)||M(o,r,i()),I(o,r)),l,((e,n,t)=>{t!=I(e,n)&&M(e,n,t)}),((e,n)=>M(e,n))));var o,r,i}),((e,n)=>M(t,n)))})),(n,l)=>K(void 0,null,(function*(){return((e,n)=>!p(I(I(t,e),n)))(n,l)?w(s(u(yield e("SELECT*FROM"+H(n)),(e=>{return[e[l],(n=z({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!p(e)&&!N(n)))):{}})),(n,o,r,a,c,y=!1)=>K(void 0,null,(function*(){const f=j();R(null!=r?r:{},(e=>u(L(null!=e?e:{}),(e=>_(f,e)))));const h=O(f);if(!y&&c&&d(h)&&T(t,n))return yield e("DROP TABLE"+H(n)),void M(t,n);if(d(h)||T(t,n)){const l=I(t,n),r=j(D(l));yield m([...u(h,(t=>K(void 0,null,(function*(){P(r,t)||(yield e(`ALTER TABLE${H(n)}ADD${H(t)}`),M(l,t,""))})))),...!y&&a?u(O(r),(t=>K(void 0,null,(function*(){t!=o&&(yield e(`ALTER TABLE${H(n)}DROP${H(t)}`),M(l,t))})))):[]])}else yield e(`CREATE TABLE${H(n)}(${H(o)} PRIMARY KEY ON CONFLICT REPLACE${i(u(h,(e=>l+H(e))))});`),M(t,n,g([[o,""],...u(h,(e=>[e,""]))]));if(y)p(r)?yield e("DELETE FROM"+H(n)+"WHERE 1"):yield m(R(r,((t,l)=>K(void 0,null,(function*(){p(t)?yield e("DELETE FROM"+H(n)+G+H(o)+"=?",[l]):d(h)||(yield X(e,n,o,L(t),[l,...S(t)]))})))));else if(d(h))T(t,n)&&(yield e("DELETE FROM"+H(n)+"WHERE 1"));else{const l=s(D(I(t,n)),(e=>e!=o)),i=[],a=[];R(null!=r?r:{},((e,n)=>{v(i,n,...u(l,(n=>null==e?void 0:e[n]))),v(a,n)})),yield X(e,n,o,l,i),yield e("DELETE FROM"+H(n)+G+H(o)+"NOT IN("+Z(a)+")",a)}}))]},X=(e,n,t,o,d)=>K(void 0,null,(function*(){return yield e("INSERT INTO"+H(n)+"("+H(t)+i(u(o,(e=>l+H(e))))+")VALUES"+r(`,(?${r(",?",a(o))})`,a(d)/(a(o)+1)).substring(1)+"ON CONFLICT("+H(t)+")DO UPDATE SET"+i(u(o,(e=>H(e)+"=excluded."+H(e))),l),d)})),Z=e=>i(u(e,(()=>"?")),l),ee=JSON.parse;var ne=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const te=(e,n,t,l,o)=>{let r,i,u,a=0,d=0,s=0;const c=[],y=e=>ne(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ne(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ne(void 0,[...t],(function*(t={},o={}){return f.stopAutoLoad(),yield f.load(t,o),s=1,u=l(((t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield n())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(o(u),u=void 0,s=0),f),save:n=>ne(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ne(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),f})),startAutoSave:()=>ne(void 0,null,(function*(){return yield f.stopAutoSave().save(),r=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();N(t)&&N(l)||f.save((()=>[t,l]))})),f})),stopAutoSave:()=>(h(r,e.delListener),f),schedule:(...e)=>ne(void 0,null,(function*(){return v(c,...e),yield ne(void 0,null,(function*(){if(!d){for(d=1;!p((e=c,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return b(f)};var le=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const oe="store",re=(e,n,t,l,[o],r)=>{const[i,u,a]=Q(n,r),d=te(e,(()=>le(void 0,null,(function*(){var e;return yield i(),ee(null==(e=(yield u(o,B))[W])?void 0:e[oe])}))),(e=>le(void 0,null,(function*(){return d.schedule(i,(()=>le(void 0,null,(function*(){var n;yield a(o,B,{[W]:{[oe]:(n=e(),JSON.stringify(n,((e,n)=>f(n,Map)?A.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l);return d};var ie=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ue=(e,n,t,l,[o,r,[i,u,a]],d)=>{const[c,v,y]=Q(n,d),f=(e,n)=>ie(void 0,null,(function*(){return yield m(F(r,((t,l)=>ie(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield y(t,l,u,o,r,n))})))))})),h=(e,n)=>ie(void 0,null,(function*(){return u?yield y(a,B,{[W]:e},!0,!0,n):null}));return te(e,(()=>ie(void 0,null,(function*(){yield c();const e=yield ie(void 0,null,(function*(){return w(s(yield m(F(o,((e,n)=>ie(void 0,[e,n],(function*([e,n],t){return[e,yield v(t,n)]}))))),(e=>!N(e[1]))))})),n=yield ie(void 0,null,(function*(){return i?(yield v(a,B))[W]:{}}));return N(e)&&p(n)?void 0:[e,n]}))),((e,n)=>ie(void 0,null,(function*(){if(yield c(),p(n)){const[n,t]=e();yield f(n),yield h(t)}else{const[e,t]=n();yield f(e,!0),yield h(t,!0)}}))),t,l)},ae="json",de="autoLoadIntervalSeconds",se="rowIdColumnName",ce="tableId",ve="tableName",ye={mode:ae,[de]:1},fe={load:0,save:0,[ve]:t+"_values"},pe=(e,n,t,l)=>{const o=g();return R(e,((e,r)=>{const i=c(S(x(n,E(e)?{[t]:e}:e)),0,C(n));p(i[0])||l(r,i[0])||M(o,r,i)})),o};var he=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ee="pragma ",me="data_version",Te="schema_version",Oe=(e,n,l,o,r,i)=>{let u,a;const[d,s,v,y]=(e=>{const n=(e=>x(ye,E(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[de];if(n.mode==ae){const{storeTableName:e=t}=n;return[1,l,[e],j(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=c(S(x(fe,i)),0,C(fe)),a=u[2],d=j(a);return[0,l,[pe(o,{[ce]:null,[se]:B},ce,(e=>_(d,e)&&e==a)),pe(r,{[ve]:null,[se]:B,deleteEmptyColumns:0,deleteEmptyTable:0},ve,((e,n)=>_(d,n)&&n==a)),u],d]})(n);return(d?re:ue)(e,i?(e,n)=>he(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>[setInterval((()=>he(void 0,null,(function*(){try{const n=(yield l(Ee+me))[0][me],t=(yield l(Ee+Te))[0][Te];n==(null!=u?u:u=n)&&t==(null!=a?a:a=t)||(e(),u=n,a=t)}catch(e){}}))),1e3*s),o((n=>y.has(n)?e():0))]),(([e,n])=>{clearInterval(e),u=a=null,r(n)}),v,O(y))};e.createCrSqliteWasmPersister=(e,n,t,l)=>Oe(e,t,((e,...t)=>{return l=[e,...t],o=function*(e,t=[]){return yield n.execO(e,t)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>e()),l)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,n){"use strict";const o="utf8",r=JSON.parse,i=(e,t)=>e instanceof t,l=e=>null==e,u=Object,s=u.keys,a=u.freeze,d=e=>(e=>i(e,u)&&e.constructor==u)(e)&&0==(e=>s(e).length)(e);var c=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())})),v=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())}));e.createFilePersister=(e,u)=>((e,r,s,f,y)=>{let h,p,m,g=0,A=0,S=0;const x=[],w=e=>c(void 0,null,(function*(){return 2!=g&&(g=1,yield L.schedule((()=>c(void 0,null,(function*(){yield e(),g=0}))))),L})),L={load:(t,n)=>c(void 0,null,(function*(){return yield w((()=>c(void 0,null,(function*(){try{e.setContent(yield r())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>c(void 0,[...n],(function*(n={},o={}){return L.stopAutoLoad(),yield L.load(n,o),S=1,i=(t,n)=>c(void 0,null,(function*(){return yield w((()=>c(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield r())}catch(e){}}))))})),m=t.watch(u,(()=>i())),L;var i})),stopAutoLoad:()=>{return S&&(null==(e=m)||e.close(),m=void 0,S=0),L;var e},save:t=>c(void 0,null,(function*(){return 1!=g&&(g=2,yield L.schedule((()=>c(void 0,null,(function*(){try{yield(t=e.getContent,v(void 0,null,(function*(){return yield n.writeFile(u,(e=t(),JSON.stringify(e,((e,t)=>{return i(t,Map)?(n=(e,[t,n])=>(e[t]=n,e),o={},[...t].reduce(n,o)):t;var n,o}))),o);var e})))}catch(e){}var t;g=0}))))),L})),startAutoSave:()=>c(void 0,null,(function*(){return yield L.stopAutoSave().save(),h=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();d(n)&&d(o)||L.save((()=>[n,o]))})),L})),stopAutoSave:()=>{var t,n;return t=h,n=e.delListener,!!l(t)||n(t),L},schedule:(...e)=>c(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(x,...e),yield c(void 0,null,(function*(){if(!A){for(A=1;!l((e=x,p=e.shift()));)try{yield p()}catch(e){}A=0}var e})),L})),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return a(L)})(e,(()=>v(void 0,null,(function*(){return r(yield n.readFile(u,o))}))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("fs/promises")):"function"==typeof define&&define.amd?define(["exports","fs","fs/promises"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterFile={},e.fs,e["fs/promises"]);
1
+ var e,t;e=this,t=function(e,t,n){"use strict";const o="utf8",i=(e,t)=>e instanceof t,r=e=>null==e,l=Object,s=l.keys,u=l.freeze,a=e=>(e=>i(e,l)&&e.constructor==l)(e)&&0==(e=>s(e).length)(e),d=JSON.parse;var c=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{s(n.next(e))}catch(e){i(e)}},l=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);s((n=n.apply(e,t)).next())})),f=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{s(n.next(e))}catch(e){i(e)}},l=e=>{try{s(n.throw(e))}catch(e){i(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);s((n=n.apply(e,t)).next())}));e.createFilePersister=(e,s)=>((e,d,v,y,h)=>{let p,m,g,A=0,S=0,x=0;const w=[],L=e=>c(void 0,null,(function*(){return 2!=A&&(A=1,yield P.schedule((()=>c(void 0,null,(function*(){yield e(),A=0}))))),P})),P={load:(t,n)=>c(void 0,null,(function*(){return yield L((()=>c(void 0,null,(function*(){try{e.setContent(yield d())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...n)=>c(void 0,[...n],(function*(n={},o={}){return P.stopAutoLoad(),yield P.load(n,o),x=1,i=(t,n)=>c(void 0,null,(function*(){return yield L((()=>c(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield d())}catch(e){}}))))})),g=t.watch(s,(()=>i())),P;var i})),stopAutoLoad:()=>{return x&&(null==(e=g)||e.close(),g=void 0,x=0),P;var e},save:t=>c(void 0,null,(function*(){return 1!=A&&(A=2,yield P.schedule((()=>c(void 0,null,(function*(){try{yield(t=e.getContent,f(void 0,null,(function*(){return yield n.writeFile(s,(e=t(),JSON.stringify(e,((e,t)=>i(t,Map)?l.fromEntries([...t]):t))),o);var e})))}catch(e){}var t;A=0}))))),P})),startAutoSave:()=>c(void 0,null,(function*(){return yield P.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();a(n)&&a(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!r(t)||n(t),P},schedule:(...e)=>c(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(w,...e),yield c(void 0,null,(function*(){if(!S){for(S=1;!r((e=w,m=e.shift()));)try{yield m()}catch(e){}S=0}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u(P)})(e,(()=>f(void 0,null,(function*(){return d(yield n.readFile(s,o))}))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs"),require("fs/promises")):"function"==typeof define&&define.amd?define(["exports","fs","fs/promises"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterFile={},e.fs,e["fs/promises"]);
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=JSON.parse,n=(e,t)=>e instanceof t,o=e=>null==e,r=Object,i=r.keys,l=r.freeze,u=e=>(e=>n(e,r)&&e.constructor==r)(e)&&0==(e=>i(e).length)(e);var d=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())})),s=(e,t,n)=>new Promise(((o,r)=>{var i=e=>{try{u(n.next(e))}catch(e){r(e)}},l=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,l);u((n=n.apply(e,t)).next())}));const a=e=>e.headers.get("ETag");e.createRemotePersister=(e,r,i,c)=>{let v;return((e,t,f,y,h)=>{let p,g,m,A=0,S=0,x=0;const T=[],P=e=>d(void 0,null,(function*(){return 2!=A&&(A=1,yield C.schedule((()=>d(void 0,null,(function*(){yield e(),A=0}))))),C})),C={load:(n,o)=>d(void 0,null,(function*(){return yield P((()=>d(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,o])}}))))})),startAutoLoad:(...n)=>d(void 0,[...n],(function*(n={},i={}){return C.stopAutoLoad(),yield C.load(n,i),x=1,l=(n,o)=>d(void 0,null,(function*(){return yield P((()=>d(void 0,null,(function*(){var r;if(o)e.setTransactionChanges(o());else try{e.setContent(null!=(r=null==n?void 0:n())?r:yield t())}catch(e){}}))))})),m=setInterval((()=>s(void 0,null,(function*(){const e=yield fetch(r,{method:"HEAD"}),t=a(e);o(v)||o(t)||t==v||(v=t,l())}))),1e3*c),C;var l})),stopAutoLoad:()=>(x&&(clearInterval(m),m=void 0,x=0),C),save:t=>d(void 0,null,(function*(){return 1!=A&&(A=2,yield C.schedule((()=>d(void 0,null,(function*(){try{yield(t=e.getContent,s(void 0,null,(function*(){return yield fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((e,t)=>{return n(t,Map)?(o=(e,[t,n])=>(e[t]=n,e),r={},[...t].reduce(o,r)):t;var o,r})))});var e})))}catch(e){}var t;A=0}))))),C})),startAutoSave:()=>d(void 0,null,(function*(){return yield C.stopAutoSave().save(),p=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();u(n)&&u(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>{var t,n;return t=p,n=e.delListener,!!o(t)||n(t),C},schedule:(...e)=>d(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(T,...e),yield d(void 0,null,(function*(){if(!S){for(S=1;!o((e=T,g=e.shift()));)try{yield g()}catch(e){}S=0}var e})),C})),getStore:()=>e,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l(C)})(e,(()=>s(void 0,null,(function*(){const e=yield fetch(r);return v=a(e),t(yield e.text())}))))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e instanceof t,n=e=>null==e,o=Object,i=o.keys,r=o.freeze,l=e=>(e=>t(e,o)&&e.constructor==o)(e)&&0==(e=>i(e).length)(e),u=JSON.parse;var s=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{u(n.next(e))}catch(e){i(e)}},l=e=>{try{u(n.throw(e))}catch(e){i(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);u((n=n.apply(e,t)).next())})),d=(e,t,n)=>new Promise(((o,i)=>{var r=e=>{try{u(n.next(e))}catch(e){i(e)}},l=e=>{try{u(n.throw(e))}catch(e){i(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);u((n=n.apply(e,t)).next())}));const a=e=>e.headers.get("ETag");e.createRemotePersister=(e,i,c,v)=>{let f;return((e,u,y,h,p)=>{let m,g,A,S=0,x=0,T=0;const P=[],C=e=>s(void 0,null,(function*(){return 2!=S&&(S=1,yield L.schedule((()=>s(void 0,null,(function*(){yield e(),S=0}))))),L})),L={load:(t,n)=>s(void 0,null,(function*(){return yield C((()=>s(void 0,null,(function*(){try{e.setContent(yield u())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>s(void 0,[...t],(function*(t={},o={}){return L.stopAutoLoad(),yield L.load(t,o),T=1,r=(t,n)=>s(void 0,null,(function*(){return yield C((()=>s(void 0,null,(function*(){var o;if(n)e.setTransactionChanges(n());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield u())}catch(e){}}))))})),A=setInterval((()=>d(void 0,null,(function*(){const e=yield fetch(i,{method:"HEAD"}),t=a(e);n(f)||n(t)||t==f||(f=t,r())}))),1e3*v),L;var r})),stopAutoLoad:()=>(T&&(clearInterval(A),A=void 0,T=0),L),save:n=>s(void 0,null,(function*(){return 1!=S&&(S=2,yield L.schedule((()=>s(void 0,null,(function*(){try{yield(n=e.getContent,d(void 0,null,(function*(){return yield fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=n(),JSON.stringify(e,((e,n)=>t(n,Map)?o.fromEntries([...n]):n)))});var e})))}catch(e){}var n;S=0}))))),L})),startAutoSave:()=>s(void 0,null,(function*(){return yield L.stopAutoSave().save(),m=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();l(n)&&l(o)||L.save((()=>[n,o]))})),L})),stopAutoSave:()=>{var t,o;return t=m,o=e.delListener,!!n(t)||o(t),L},schedule:(...e)=>s(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(P,...e),yield s(void 0,null,(function*(){if(!x){for(x=1;!n((e=P,g=e.shift()));)try{yield g()}catch(e){}x=0}var e})),L})),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(L)})(e,(()=>d(void 0,null,(function*(){const e=yield fetch(i);return f=a(e),u(yield e.text())}))))}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="tinybase",l=",",r=t(""),o=(e,t="")=>e.join(t),i=(e,t)=>e.map(t),u=e=>e.length,a=e=>0==u(e),d=(e,t)=>e.filter(t),s=(e,t,n)=>e.slice(t,n),c=(e,...t)=>e.push(...t),v=Promise,y=JSON.parse,f=(e,t)=>e instanceof t,p=e=>null==e,h=(e,t,n)=>p(e)?null==n?void 0:n():t(e),m=e=>t(e)==r,E=e=>{return t=function*(){return v.all(e)},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t},b=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},O=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},P=(e,t)=>null==e?void 0:e.delete(t),T=Object,w=T.keys,A=T.freeze,L=(e=[])=>T.fromEntries(e),S=(...e)=>T.assign({},...e),x=(e,t)=>(delete e[t],e),g=(e,t)=>i(T.entries(e),(([e,n])=>t(n,e))),N=e=>T.values(e),C=e=>u(w(e)),R=e=>(e=>f(e,T)&&e.constructor==T)(e)&&0==C(e),I=e=>new Map(e),j=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},_=(e,t)=>null==e?void 0:e.get(t),D=(e,t)=>{var n;return i([...null!=(n=null==e?void 0:e.entries())?n:[]],(([e,n])=>t(n,e)))},$=(e,t,n)=>p(n)?(P(e,t),e):null==e?void 0:e.set(t,n),M=(e,t,n,l=$)=>(g(t,((t,l)=>n(e,l,t))),((e,t)=>{((e,t)=>{null==e||e.forEach(t)})(e,((e,n)=>t(n)))})(e,(n=>((e,t)=>!p(((e,t)=>h(e,(e=>e[t])))(e,t)))(t,n)?0:l(e,n))),e),F="_id",B=e=>`"${e.replace(/"/g,'""')}"`,k=e=>new Set(Array.isArray(e)||p(e)?e:[e]),q=(e,t)=>null==e?void 0:e.add(t);var W=Object.defineProperty,H=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,t,n)=>t in e?W(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Y=(e,t)=>{for(var n in t||(t={}))J.call(t,n)&&V(e,n,t[n]);if(H)for(var n of H(t))U.call(t,n)&&V(e,n,t[n]);return e},z=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const K="SELECT*FROM",G="FROM pragma_table_",Q="WHERE",X=(e,t)=>{const n=I(),r=(e,t)=>!p(_(_(n,e),t)),s=(t,r,s,v,y)=>z(void 0,null,(function*(){const f=k();g(null!=y?y:{},(e=>i(w(e),(e=>q(f,e)))));const p=O(f);if(a(p)&&b(n,t)&&v)return yield e("DROP TABLE"+B(t)),void $(n,t);if(a(p)||b(n,t)){const l=_(n,t),o=k(j(l));yield E([...i(p,(n=>z(void 0,null,(function*(){P(o,n)||(yield e(`ALTER TABLE${B(t)}ADD${B(n)}`),$(l,n,""))})))),...s?i(O(o),(n=>z(void 0,null,(function*(){n!=r&&(yield e(`ALTER TABLE${B(t)}DROP${B(n)}`),$(l,n))})))):[]])}else yield e(`CREATE TABLE${B(t)}(${B(r)} PRIMARY KEY ON CONFLICT REPLACE${o(i(p,(e=>l+B(e))))});`),$(n,t,I([[r,""],...i(p,(e=>[e,""]))]));if(a(p))b(n,t)&&(yield e("DELETE FROM"+B(t)));else{const a=[],s=[],v=[],f=d(j(_(n,t)),(e=>e!=r));g(y,((e,t)=>{var n;c(a,`(?${n=u(f),",?".repeat(n)})`),c(s,t,...i(f,(t=>e[t]))),c(v,t)})),yield e("INSERT INTO"+B(t)+"("+B(r)+o(i(f,(e=>l+B(e))))+")VALUES"+o(a,l)+"ON CONFLICT("+B(r)+")DO UPDATE SET"+o(i(f,(e=>B(e)+"=excluded."+B(e))),l),s),yield e("DELETE FROM"+B(t)+Q+B(r)+"NOT IN("+Z(v)+")",v)}}));return[()=>z(void 0,null,(function*(){return M(n,L(yield E(i(yield e("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+Z(t)+")",t),(t=>z(void 0,[t],(function*({name:t}){return[t,L(i(yield e("SELECT name,type "+G+"info(?)",[t]),(({name:e,type:t})=>[e,t])))]})))))),((e,t,l)=>{return $(n,t,M((i=I,b(r=n,o=t)||$(r,o,i()),_(r,o)),l,((e,t,n)=>{n!=_(e,t)&&$(e,t,n)}),((e,t)=>$(e,t))));var r,o,i}),((e,t)=>$(n,t)))})),(t,n)=>z(void 0,null,(function*(){const l=r(t,n)?yield e(K+B(t)+Q+B(n)+"=?",["_"]):[];return a(l)?null:x(l[0],n)})),(e,t,n,l)=>z(void 0,null,(function*(){return yield s(e,t,!0,!0,{[n]:l})})),(t,n)=>z(void 0,null,(function*(){return r(t,n)?L(d(i(yield e(K+B(t)),(e=>[e[n],x(Y({},e),n)])),(([e,t])=>!p(e)&&!R(t)))):{}})),s]},Z=e=>o(i(e,(()=>"?")),l);var ee=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const te=(e,t,n,l,r)=>{let o,i,u,a=0,d=0,s=0;const v=[],y=e=>ee(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ee(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(n,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>ee(void 0,[...n],(function*(n={},r={}){return f.stopAutoLoad(),yield f.load(n,r),s=1,u=l(((n,l)=>ee(void 0,null,(function*(){return yield y((()=>ee(void 0,null,(function*(){var r;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(r=null==n?void 0:n())?r:yield t())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(r(u),u=void 0,s=0),f),save:t=>ee(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ee(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),f})),startAutoSave:()=>ee(void 0,null,(function*(){return yield f.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();R(n)&&R(l)||f.save((()=>[n,l]))})),f})),stopAutoSave:()=>(h(o,e.delListener),f),schedule:(...e)=>ee(void 0,null,(function*(){return c(v,...e),yield ee(void 0,null,(function*(){if(!d){for(d=1;!p((e=v,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return A(f)};var ne=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const le="store",re=(e,t,n,l,[r],o)=>{const[i,u,a]=X(t,o),d=te(e,(()=>ne(void 0,null,(function*(){var e;return yield i(),y((null!=(e=yield u(r,F))?e:{})[le])}))),(e=>ne(void 0,null,(function*(){return d.schedule(i,(()=>ne(void 0,null,(function*(){var t;yield a(r,F,"_",{[le]:(t=e(),JSON.stringify(t,((e,t)=>{return f(t,Map)?(n=(e,[t,n])=>(e[t]=n,e),l={},[...t].reduce(n,l)):t;var n,l})))})}))))}))),n,l);return d};var oe=(e,t,n)=>new Promise(((l,r)=>{var o=e=>{try{u(n.next(e))}catch(e){r(e)}},i=e=>{try{u(n.throw(e))}catch(e){r(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,i);u((n=n.apply(e,t)).next())}));const ie=(e,t,n,l,[r,o,[i,u,a]],s)=>{const[c,v,y,f,h]=X(t,s);return te(e,(()=>oe(void 0,null,(function*(){yield c();const e=yield oe(void 0,null,(function*(){return L(d(yield E(D(r,((e,t)=>oe(void 0,[e,t],(function*([e,t],n){return[e,yield f(n,t)]}))))),(e=>!R(e[1]))))})),t=yield oe(void 0,null,(function*(){return i?yield v(a,F):{}}));return R(e)&&p(t)?void 0:[e,t]}))),(e=>oe(void 0,null,(function*(){const[t,n]=e();yield c(),yield(e=>oe(void 0,null,(function*(){return yield E(D(o,((t,n)=>oe(void 0,[t,n],(function*([t,n,l,r],o){return yield h(t,n,l,r,e[o])})))))})))(t),yield(e=>oe(void 0,null,(function*(){return u?yield y(a,F,"_",e):null})))(n)}))),n,l)},ue="json",ae="autoLoadIntervalSeconds",de="rowIdColumnName",se="tableId",ce="tableName",ve={mode:ue,[ae]:1},ye={load:0,save:0,[ce]:n+"_values"},fe=(e,t,n,l)=>{const r=I();return g(e,((e,o)=>{const i=s(N(S(t,m(e)?{[n]:e}:e)),0,C(t));p(i[0])||l(o,i[0])||$(r,o,i)})),r},pe="pragma ",he="data_version",me="schema_version",Ee=(e,t,l,r,o)=>{let i,u;const[a,d,c,v]=(e=>{const t=(e=>S(ve,m(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[ae];if(t.mode==ue){const{storeTableName:e=n}=t;return[1,l,[e],k(e)]}const{tables:{load:r={},save:o={}}={},values:i={}}=t,u=s(N(S(ye,i)),0,C(ye)),a=u[2],d=k(a);return[0,l,[fe(r,{[se]:null,[de]:F},se,(e=>q(d,e)&&e==a)),fe(o,{[ce]:null,[de]:F,deleteEmptyColumns:0,deleteEmptyTable:0},ce,((e,t)=>q(d,t)&&t==a)),u],d]})(t);return(a?re:ie)(e,l,(e=>[setInterval((()=>{return t=function*(){try{const t=(yield l(pe+he))[0][he],n=(yield l(pe+me))[0][me];t==(null!=i?i:i=t)&&n==(null!=u?u:u=n)||(e(),i=t,u=n)}catch(e){}},new Promise(((e,n)=>{var l=e=>{try{o(t.next(e))}catch(e){n(e)}},r=e=>{try{o(t.throw(e))}catch(e){n(e)}},o=t=>t.done?e(t.value):Promise.resolve(t.value).then(l,r);o((t=t.apply(void 0,null)).next())}));var t}),1e3*d),r((t=>v.has(t)?e():0))]),(([e,t])=>{clearInterval(e),i=u=null,o(t)}),c,O(v))};var be=Object.defineProperty,Oe=Object.getOwnPropertySymbols,Pe=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable,we=(e,t,n)=>t in e?be(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;e.createSqliteWasmPersister=(e,t,n,l)=>Ee(e,l,((e,...t)=>{return l=[e,...t],r=function*(e,t=[]){return n.exec(e,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,t)=>{for(var n in t||(t={}))Pe.call(t,n)&&we(e,n,t[n]);if(Oe)for(var n of Oe(t))Te.call(t,n)&&we(e,n,t[n]);return e})({},e)))},new Promise(((e,t)=>{var n=e=>{try{i(r.next(e))}catch(e){t(e)}},o=e=>{try{i(r.throw(e))}catch(e){t(e)}},i=t=>t.done?e(t.value):Promise.resolve(t.value).then(n,o);i((r=r.apply(void 0,l)).next())}));var l,r}),(e=>t.capi.sqlite3_update_hook(n,((t,n,l,r)=>e(r)),0)),(()=>t.capi.sqlite3_update_hook(n,(()=>0),0)))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=(e,n="")=>e.join(n),u=(e,n)=>e.map(n),a=e=>e.length,d=e=>0==a(e),s=(e,n)=>e.filter(n),c=(e,n,t)=>e.slice(n,t),v=(e,...n)=>e.push(...n),y=Promise,f=(e,n)=>e instanceof n,p=e=>null==e,h=(e,n,t)=>p(e)?null==t?void 0:t():n(e),m=e=>n(e)==o,E=e=>{return n=function*(){return y.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},O=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),P=Object,w=P.keys,A=P.freeze,L=(e=[])=>P.fromEntries(e),R=(...e)=>P.assign({},...e),S=(e,n)=>u(P.entries(e),(([e,t])=>n(t,e))),x=e=>P.values(e),g=e=>a(w(e)),N=e=>(e=>f(e,P)&&e.constructor==P)(e)&&0==g(e),C=e=>new Map(e),I=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),D=(e,n)=>{var t;return u([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},_=(e,n,t)=>p(t)?(T(e,n),e):null==e?void 0:e.set(n,t),M=(e,n,t,l=_)=>(S(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!p(((e,n)=>h(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),F=e=>new Set(Array.isArray(e)||p(e)?e:[e]),$=(e,n)=>null==e?void 0:e.add(n),W="_",B="_id",k=e=>`"${e.replace(/"/g,'""')}"`;var q=Object.defineProperty,H=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,n,t)=>n in e?q(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Y=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&V(e,t,n[t]);if(H)for(var t of H(n))U.call(n,t)&&V(e,t,n[t]);return e},z=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const K="FROM pragma_table_",G="WHERE",Q=(e,n)=>{const t=C();return[()=>z(void 0,null,(function*(){return M(t,L(yield E(u(yield e("SELECT name "+K+"list WHERE schema='main'AND type='table'AND name IN("+Z(n)+")",n),(n=>z(void 0,[n],(function*({name:n}){return[n,L(u(yield e("SELECT name,type "+K+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>{return _(t,n,M((i=C,b(o=t,r=n)||_(o,r,i()),j(o,r)),l,((e,n,t)=>{t!=j(e,n)&&_(e,n,t)}),((e,n)=>_(e,n))));var o,r,i}),((e,n)=>_(t,n)))})),(n,l)=>z(void 0,null,(function*(){return((e,n)=>!p(j(j(t,e),n)))(n,l)?L(s(u(yield e("SELECT*FROM"+k(n)),(e=>{return[e[l],(n=Y({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!p(e)&&!N(n)))):{}})),(n,o,r,a,c,y=!1)=>z(void 0,null,(function*(){const f=F();S(null!=r?r:{},(e=>u(w(null!=e?e:{}),(e=>$(f,e)))));const h=O(f);if(!y&&c&&d(h)&&b(t,n))return yield e("DROP TABLE"+k(n)),void _(t,n);if(d(h)||b(t,n)){const l=j(t,n),r=F(I(l));yield E([...u(h,(t=>z(void 0,null,(function*(){T(r,t)||(yield e(`ALTER TABLE${k(n)}ADD${k(t)}`),_(l,t,""))})))),...!y&&a?u(O(r),(t=>z(void 0,null,(function*(){t!=o&&(yield e(`ALTER TABLE${k(n)}DROP${k(t)}`),_(l,t))})))):[]])}else yield e(`CREATE TABLE${k(n)}(${k(o)} PRIMARY KEY ON CONFLICT REPLACE${i(u(h,(e=>l+k(e))))});`),_(t,n,C([[o,""],...u(h,(e=>[e,""]))]));if(y)p(r)?yield e("DELETE FROM"+k(n)+"WHERE 1"):yield E(S(r,((t,l)=>z(void 0,null,(function*(){p(t)?yield e("DELETE FROM"+k(n)+G+k(o)+"=?",[l]):d(h)||(yield X(e,n,o,w(t),[l,...x(t)]))})))));else if(d(h))b(t,n)&&(yield e("DELETE FROM"+k(n)+"WHERE 1"));else{const l=s(I(j(t,n)),(e=>e!=o)),i=[],a=[];S(null!=r?r:{},((e,n)=>{v(i,n,...u(l,(n=>null==e?void 0:e[n]))),v(a,n)})),yield X(e,n,o,l,i),yield e("DELETE FROM"+k(n)+G+k(o)+"NOT IN("+Z(a)+")",a)}}))]},X=(e,n,t,o,d)=>z(void 0,null,(function*(){return yield e("INSERT INTO"+k(n)+"("+k(t)+i(u(o,(e=>l+k(e))))+")VALUES"+r(`,(?${r(",?",a(o))})`,a(d)/(a(o)+1)).substring(1)+"ON CONFLICT("+k(t)+")DO UPDATE SET"+i(u(o,(e=>k(e)+"=excluded."+k(e))),l),d)})),Z=e=>i(u(e,(()=>"?")),l),ee=JSON.parse;var ne=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const te=(e,n,t,l,o)=>{let r,i,u,a=0,d=0,s=0;const c=[],y=e=>ne(void 0,null,(function*(){return 2!=a&&(a=1,yield f.schedule((()=>ne(void 0,null,(function*(){yield e(),a=0}))))),f})),f={load:(t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ne(void 0,[...t],(function*(t={},o={}){return f.stopAutoLoad(),yield f.load(t,o),s=1,u=l(((t,l)=>ne(void 0,null,(function*(){return yield y((()=>ne(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==t?void 0:t())?o:yield n())}catch(e){}}))))})))),f})),stopAutoLoad:()=>(s&&(o(u),u=void 0,s=0),f),save:n=>ne(void 0,null,(function*(){return 1!=a&&(a=2,yield f.schedule((()=>ne(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){}a=0}))))),f})),startAutoSave:()=>ne(void 0,null,(function*(){return yield f.stopAutoSave().save(),r=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();N(t)&&N(l)||f.save((()=>[t,l]))})),f})),stopAutoSave:()=>(h(r,e.delListener),f),schedule:(...e)=>ne(void 0,null,(function*(){return v(c,...e),yield ne(void 0,null,(function*(){if(!d){for(d=1;!p((e=c,i=e.shift()));)try{yield i()}catch(e){}d=0}var e})),f})),getStore:()=>e,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return A(f)};var le=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const oe="store",re=(e,n,t,l,[o],r)=>{const[i,u,a]=Q(n,r),d=te(e,(()=>le(void 0,null,(function*(){var e;return yield i(),ee(null==(e=(yield u(o,B))[W])?void 0:e[oe])}))),(e=>le(void 0,null,(function*(){return d.schedule(i,(()=>le(void 0,null,(function*(){var n;yield a(o,B,{[W]:{[oe]:(n=e(),JSON.stringify(n,((e,n)=>f(n,Map)?P.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l);return d};var ie=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ue=(e,n,t,l,[o,r,[i,u,a]],d)=>{const[c,v,y]=Q(n,d),f=(e,n)=>ie(void 0,null,(function*(){return yield E(D(r,((t,l)=>ie(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield y(t,l,u,o,r,n))})))))})),h=(e,n)=>ie(void 0,null,(function*(){return u?yield y(a,B,{[W]:e},!0,!0,n):null}));return te(e,(()=>ie(void 0,null,(function*(){yield c();const e=yield ie(void 0,null,(function*(){return L(s(yield E(D(o,((e,n)=>ie(void 0,[e,n],(function*([e,n],t){return[e,yield v(t,n)]}))))),(e=>!N(e[1]))))})),n=yield ie(void 0,null,(function*(){return i?(yield v(a,B))[W]:{}}));return N(e)&&p(n)?void 0:[e,n]}))),((e,n)=>ie(void 0,null,(function*(){if(yield c(),p(n)){const[n,t]=e();yield f(n),yield h(t)}else{const[e,t]=n();yield f(e,!0),yield h(t,!0)}}))),t,l)},ae="json",de="autoLoadIntervalSeconds",se="rowIdColumnName",ce="tableId",ve="tableName",ye={mode:ae,[de]:1},fe={load:0,save:0,[ve]:t+"_values"},pe=(e,n,t,l)=>{const o=C();return S(e,((e,r)=>{const i=c(x(R(n,m(e)?{[t]:e}:e)),0,g(n));p(i[0])||l(r,i[0])||_(o,r,i)})),o};var he=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const me="pragma ",Ee="data_version",be="schema_version",Oe=(e,n,l,o,r,i)=>{let u,a;const[d,s,v,y]=(e=>{const n=(e=>R(ye,m(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[de];if(n.mode==ae){const{storeTableName:e=t}=n;return[1,l,[e],F(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=c(x(R(fe,i)),0,g(fe)),a=u[2],d=F(a);return[0,l,[pe(o,{[ce]:null,[se]:B},ce,(e=>$(d,e)&&e==a)),pe(r,{[ve]:null,[se]:B,deleteEmptyColumns:0,deleteEmptyTable:0},ve,((e,n)=>$(d,n)&&n==a)),u],d]})(n);return(d?re:ue)(e,i?(e,n)=>he(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>[setInterval((()=>he(void 0,null,(function*(){try{const n=(yield l(me+Ee))[0][Ee],t=(yield l(me+be))[0][be];n==(null!=u?u:u=n)&&t==(null!=a?a:a=t)||(e(),u=n,a=t)}catch(e){}}))),1e3*s),o((n=>y.has(n)?e():0))]),(([e,n])=>{clearInterval(e),u=a=null,r(n)}),v,O(y))};var Te=Object.defineProperty,Pe=Object.getOwnPropertySymbols,we=Object.prototype.hasOwnProperty,Ae=Object.prototype.propertyIsEnumerable,Le=(e,n,t)=>n in e?Te(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;e.createSqliteWasmPersister=(e,n,t,l,o)=>Oe(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))we.call(n,t)&&Le(e,t,n[t]);if(Pe)for(var t of Pe(n))Ae.call(n,t)&&Le(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});