tinybase 4.3.22 → 4.3.24

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 (221) hide show
  1. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  2. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  4. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  6. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  8. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-file.cjs +1 -1
  10. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  12. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  14. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  16. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  18. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  20. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  22. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  23. package/lib/cjs/persisters.cjs +1 -1
  24. package/lib/cjs/persisters.cjs.gz +0 -0
  25. package/lib/cjs/store.cjs +1 -1
  26. package/lib/cjs/store.cjs.gz +0 -0
  27. package/lib/cjs/tinybase.cjs +1 -1
  28. package/lib/cjs/tinybase.cjs.gz +0 -0
  29. package/lib/cjs/tools.cjs +1 -1
  30. package/lib/cjs/tools.cjs.gz +0 -0
  31. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  32. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  33. package/lib/cjs/ui-react.cjs +1 -1
  34. package/lib/cjs/ui-react.cjs.gz +0 -0
  35. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  36. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  37. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  38. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  39. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  40. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  41. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  42. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  43. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  44. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  45. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  46. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  47. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  48. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters.cjs +1 -1
  58. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  59. package/lib/cjs-es6/store.cjs +1 -1
  60. package/lib/cjs-es6/store.cjs.gz +0 -0
  61. package/lib/cjs-es6/tinybase.cjs +1 -1
  62. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  63. package/lib/cjs-es6/tools.cjs +1 -1
  64. package/lib/cjs-es6/tools.cjs.gz +0 -0
  65. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  66. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  67. package/lib/cjs-es6/ui-react.cjs +1 -1
  68. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  69. package/lib/debug/persisters/persister-automerge.js +9 -2
  70. package/lib/debug/persisters/persister-browser.js +9 -1
  71. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +9 -1
  72. package/lib/debug/persisters/persister-expo-sqlite.js +9 -1
  73. package/lib/debug/persisters/persister-file.js +9 -1
  74. package/lib/debug/persisters/persister-indexed-db.js +9 -2
  75. package/lib/debug/persisters/persister-partykit-client.js +9 -1
  76. package/lib/debug/persisters/persister-remote.js +9 -1
  77. package/lib/debug/persisters/persister-sqlite-wasm.js +9 -1
  78. package/lib/debug/persisters/persister-sqlite3.js +10 -2
  79. package/lib/debug/persisters/persister-yjs.js +9 -2
  80. package/lib/debug/persisters.js +9 -2
  81. package/lib/debug/store.js +9 -1
  82. package/lib/debug/tinybase.js +9 -1
  83. package/lib/debug/tools.js +11 -2
  84. package/lib/debug/ui-react-dom.js +9 -1
  85. package/lib/debug/ui-react.js +90 -72
  86. package/lib/es6/persisters/persister-automerge.js +1 -1
  87. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  88. package/lib/es6/persisters/persister-browser.js +1 -1
  89. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  90. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  91. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  92. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  93. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  94. package/lib/es6/persisters/persister-file.js +1 -1
  95. package/lib/es6/persisters/persister-file.js.gz +0 -0
  96. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  97. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  98. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  99. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  100. package/lib/es6/persisters/persister-remote.js +1 -1
  101. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  102. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  103. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  104. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  105. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  106. package/lib/es6/persisters/persister-yjs.js +1 -1
  107. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  108. package/lib/es6/persisters.js +1 -1
  109. package/lib/es6/persisters.js.gz +0 -0
  110. package/lib/es6/store.js +1 -1
  111. package/lib/es6/store.js.gz +0 -0
  112. package/lib/es6/tinybase.js +1 -1
  113. package/lib/es6/tinybase.js.gz +0 -0
  114. package/lib/es6/tools.js +1 -1
  115. package/lib/es6/tools.js.gz +0 -0
  116. package/lib/es6/ui-react-dom-debug.js +1 -1
  117. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  118. package/lib/es6/ui-react.js +1 -1
  119. package/lib/es6/ui-react.js.gz +0 -0
  120. package/lib/persisters/persister-automerge.js +1 -1
  121. package/lib/persisters/persister-automerge.js.gz +0 -0
  122. package/lib/persisters/persister-browser.js +1 -1
  123. package/lib/persisters/persister-browser.js.gz +0 -0
  124. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  125. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  126. package/lib/persisters/persister-expo-sqlite.js +1 -1
  127. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  128. package/lib/persisters/persister-file.js +1 -1
  129. package/lib/persisters/persister-file.js.gz +0 -0
  130. package/lib/persisters/persister-indexed-db.js +1 -1
  131. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  132. package/lib/persisters/persister-partykit-client.js +1 -1
  133. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  134. package/lib/persisters/persister-remote.js +1 -1
  135. package/lib/persisters/persister-remote.js.gz +0 -0
  136. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  137. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  138. package/lib/persisters/persister-sqlite3.js +1 -1
  139. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  140. package/lib/persisters/persister-yjs.js +1 -1
  141. package/lib/persisters/persister-yjs.js.gz +0 -0
  142. package/lib/persisters.js +1 -1
  143. package/lib/persisters.js.gz +0 -0
  144. package/lib/store.js +1 -1
  145. package/lib/store.js.gz +0 -0
  146. package/lib/tinybase.js +1 -1
  147. package/lib/tinybase.js.gz +0 -0
  148. package/lib/tools.js +1 -1
  149. package/lib/tools.js.gz +0 -0
  150. package/lib/ui-react.js +1 -1
  151. package/lib/ui-react.js.gz +0 -0
  152. package/lib/umd/persisters/persister-automerge.js +1 -1
  153. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  154. package/lib/umd/persisters/persister-browser.js +1 -1
  155. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  156. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  157. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  158. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  159. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  160. package/lib/umd/persisters/persister-file.js +1 -1
  161. package/lib/umd/persisters/persister-file.js.gz +0 -0
  162. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  163. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  164. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  165. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  166. package/lib/umd/persisters/persister-remote.js +1 -1
  167. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  168. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  169. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  170. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  171. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  172. package/lib/umd/persisters/persister-yjs.js +1 -1
  173. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  174. package/lib/umd/persisters.js +1 -1
  175. package/lib/umd/persisters.js.gz +0 -0
  176. package/lib/umd/store.js +1 -1
  177. package/lib/umd/store.js.gz +0 -0
  178. package/lib/umd/tinybase.js +1 -1
  179. package/lib/umd/tinybase.js.gz +0 -0
  180. package/lib/umd/tools.js +1 -1
  181. package/lib/umd/tools.js.gz +0 -0
  182. package/lib/umd/ui-react-dom-debug.js +1 -1
  183. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  184. package/lib/umd/ui-react.js +1 -1
  185. package/lib/umd/ui-react.js.gz +0 -0
  186. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  187. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  188. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  189. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  190. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  191. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  192. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  193. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  194. package/lib/umd-es6/persisters/persister-file.js +1 -1
  195. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  196. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  197. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  198. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  199. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  200. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  201. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  202. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  203. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  204. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  205. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  206. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  207. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  208. package/lib/umd-es6/persisters.js +1 -1
  209. package/lib/umd-es6/persisters.js.gz +0 -0
  210. package/lib/umd-es6/store.js +1 -1
  211. package/lib/umd-es6/store.js.gz +0 -0
  212. package/lib/umd-es6/tinybase.js +1 -1
  213. package/lib/umd-es6/tinybase.js.gz +0 -0
  214. package/lib/umd-es6/tools.js +1 -1
  215. package/lib/umd-es6/tools.js.gz +0 -0
  216. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  217. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  218. package/lib/umd-es6/ui-react.js +1 -1
  219. package/lib/umd-es6/ui-react.js.gz +0 -0
  220. package/package.json +25 -25
  221. package/readme.md +2 -2
package/lib/cjs/tools.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",c="get",$="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=Promise,V=isFinite,x=(e,t)=>e instanceof t,R=e=>null==e,k=e=>e==n||e==o,S=t=>e(t)==n,P=e=>Array.isArray(e),A=(e,t,l)=>e.slice(t,l),E=e=>e.length,D=async e=>v.all(e),O=t=>{const l=e(t);return k(l)||l==d&&V(t)?l:void 0},N=(e,t)=>e.every(t),G=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),j=(e,t=l)=>e.join(t),M=(e,t)=>e.map(t),J=(e,t)=>e.filter(t),z=(e,...t)=>e.push(...t),W=e=>e.pop(),B=(e,...t)=>e.unshift(...t),F=e=>e.shift(),U=Object,_=U.keys,Z=U.freeze,H=e=>x(e,U)&&e.constructor==U,Q=(e,t)=>M(U.entries(e),(([e,l])=>t(l,e))),q=e=>E(_(e)),K=e=>H(e)&&0==q(e),X=(e,t)=>e?.has(t)??!1,Y=e=>[...e?.values()??[]],ee=(e,t)=>e?.forEach(t),te=(e,t)=>e?.delete(t),le=e=>new Map(e),ae=(e,t)=>e?.get(t),ne=(e,t)=>ee(e,((e,l)=>t(l,e))),oe=(e,t)=>M([...e?.entries()??[]],(([e,l])=>t(l,e))),de=(e,t,l)=>R(l)?(te(e,t),e):e?.set(t,l),se=(e,t,l)=>(X(e,t)||de(e,t,l()),ae(e,t)),re=e=>e.toUpperCase(),Ie=e=>e.toLowerCase(),ce="a ",$e="A function for",ue=", and registers a listener so that any changes to that result will cause a re-render",ie="Callback",pe="Del",be="Deps",Ce=be+"?: React.DependencyList",he="doRollback?: DoRollback",me="actions: () => Return, "+he,ge="export",fe="Id",we="Invalid",ye="Json",Te=Ie(I),ve="?: ",Ve=" | undefined",xe="NonNullable",Re="Partial",ke="Props",Se="Provider",Pe=`Registers a ${Te} that will be called`,Ae="Represents",Ee="rowId: "+fe,De="Schema",Oe="Set",Ne=", descending?: boolean, offset?: number, limit?: number",Ge="[]",Le="the Store",je="Transaction",Me=je+"Changes",Je=Ie(je),ze="Execute a "+Je+" to make multiple mutations",We="Explicitly starts a "+Je,Be="Explicitly finishes a "+Je,Fe="the end of the "+Je,Ue="void",_e=" => "+Ue,Ze="WhenSet",He=" when setting it",Qe=ce+"string serialization of",qe=" ",Ke="Gets a callback that can ",Xe="the ",Ye=" the schema for",et=(e=0,t=0)=>`the ${mt[e]}content of`+(t?qe+Le:l),tt=(e=0,t,a=0)=>bt[t]+qe+et(e,1)+(a?" when setting it":l),lt=(e,t=0)=>Ae+` a Row when ${t?"s":"g"}etting ${et()} the '${e}' `+i,at=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,nt=(e,t)=>`Calls a function for each ${e} in `+t,ot=e=>"The props passed to a component that renders "+e,dt=e=>"A function that takes "+e,st=(e,t=0)=>$e+" listening to changes to "+ht[e]+" in "+ht[t],rt=(e,t,a=0)=>Pe+" whenever "+ht[e]+" in "+ht[t]+" change"+(a?l:"s"),It=e=>`the '${e}' `+i,ct=e=>"the specified Row in "+It(e),$t=(e,t=0)=>bt[t]+` ${et()} `+It(e),ut=(e,t=0)=>bt[t]+` ${et()} `+ct(e),it=(e,t,l=0)=>bt[l]+` the '${t}' Cell for `+ct(e),pt=(e,t=0)=>bt[t]+` the '${e}' Value`,bt=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ae,"Gets "+Qe,"Sets "+Qe,Pe+" whenever",Ke+"set",Ke+"add",Ke+"set part of",Ke+"delete","Renders","Gets "+Qe+Ye,"Sets"+Ye,"Deletes"+Ye],Ct=[c,"has","set","del","set","forEach",$,l],ht=[Le,p,Xe+i+qe+u,ce+i,Xe+C+qe+u,ce+C,Xe+g+qe+u,ce+g,"invalid Cell changes",y,Xe+w+qe+u,ce+w,"invalid Value changes",Xe+"sorted "+C+qe+u,Xe+g+qe+u+" anywhere",Xe+"number of Rows"],mt=[l,"tabular ","keyed value "],gt=e=>new Set(P(e)||R(e)?e:[e]),ft=(e,t)=>e?.add(t),wt=/[^A-Za-z]+/,yt=/[^A-Za-z0-9]+/,Tt=/^( *)\/\*\* *(.*?) *\*\/$/gm,vt=e=>e.includes(a),Vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return X(e,n)?Vt(e,t,l,a+1):(de(e,n,l),n)},xt=e=>e.replace(Tt,((e,t,l)=>{const a=77-E(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Rt=e=>e.flat(1e3),kt=(e,t=0)=>j(M(e.split(yt),((e,l)=>(l>0||t?re:Ie)(A(e,0,1))+A(e,1)))),St=e=>re(j((e&&!wt.test(e[0])?e:" "+e).split(yt),"_")),Pt=e=>`/** ${e}. */`,At=(...e)=>j(J(e,(e=>e)),", "),Et=(...e)=>"{"+j(e,"; ")+"}",Dt=(...e)=>Et(...M(e,(e=>"readonly "+e))),Ot=()=>{const e=[le(),le(),le(),le()],t=le(),a=le(),n=e=>{const t=e.indexOf(" as ");return-1!=t?A(e,t+4):e};return[(...e)=>j(Rt(e),"\n"),(t,l,...a)=>L(a,(a=>L([0,1],(n=>(t??n)==n?ft(se(e[n],l,gt),a):0)))),(e,a,n,o=l,d=1)=>Vt(t,e,[a,n,o,d]),(e,t,l)=>Vt(a,e,P(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>ae(a,e)===t?e:Vt(a,e,t),(t=0)=>M([...G(oe(e[t],((e,t)=>`import {${j(G(Y(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>vt(e)!=vt(t)?vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>oe(t,(([e,t,a,n],o)=>[Pt(t),`${n?ge+" ":l}type ${o}${a} = ${e};`,l])),()=>oe(a,((e,t)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${t} = ${F(e)}`,e,l])))]},Nt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Gt=(e,t,l)=>[t=>Q(e,((e,a)=>t(a,kt(a,1),l(St(a),`'${a}'`)))),(t,a)=>Q(e[t],((e,t)=>a(t,e[s],e[r],l(St(t),`'${t}'`),kt(t,1)))),e=>Q(t,((t,a)=>e(a,t[s],t[r],l(St(a),`'${a}'`),kt(a,1))))],Lt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`)))+"}"))),tt(1,5)),r=e(p+Ze,Et(...t((e=>`'${e}'?: {[rowId: Id]: `+Et(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),tt(1,5,1)),c=e(i+fe,"keyof "+s,"A "+i+" Id in "+Le),$=`<TId extends ${c}>`,u=e(i,xe+`<${s}[TId]>`,"A "+i+" in "+Le,$),w=e(i+Ze,xe+`<${r}[TId]>`,"A "+i+" in "+Le+He,$),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,$),T=e(C+Ze,w+"<TId>[Id]","A "+C+" in a "+i+He,$),v=e(g+fe,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,$),V=e(g,xe+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${c}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${c}, CId = ${v}<TId>>`,0),k=e(g+ie,`(...[cellId, cell]: ${x}<TId>)`+_e,dt(ce+g+" Id, and "+g),$),S=e(C+ie,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+_e+") "+_e,dt(ce+C+" Id, and a "+g+" iterator"),$),P=e(i+g+ie,`(cellId: ${v}<TId>, count: number) `+_e,dt(ce+g+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${_e}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),E=e(i+ie,`(...[tableId, forEachRow]: ${A})`+_e,dt(ce+i+" Id, and a "+C+" iterator"),l),D=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${D}) => CellChange`,$e+" returning information about any Cell's changes during a "+Je),N=e(p+I,`(${d}, getCellChange: ${O}${Ve})`+_e,st(1)),G=e(b+I,`(${d})`+_e,st(2)),L=e(i+I,`(${d}, tableId: ${c}, getCellChange: ${O}${Ve})`+_e,st(3)),j=e(i+f+I,`(${d}, tableId: ${c})`+_e,st(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${c})`+_e,st(15,3)),J=e(h+I,`(${d}, tableId: ${c})`+_e,st(4,3)),z=e(m+I,"("+At(d,"tableId: "+c,"cellId: Id"+Ve,"descending: boolean","offset: number","limit: number"+Ve,"sortedRowIds: Ids")+")"+_e,st(13,3)),W=e(C+I,"("+At(""+d,"tableId: "+c,Ee,`getCellChange: ${O}${Ve}`)+")"+_e,st(5,3)),B=e(f+I,"("+At(""+d,"tableId: "+c,Ee)+")"+_e,st(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Ee}, cellId: CId, newCell: ${V}<TId, CId> ${Ve}, oldCell: ${V}<TId, CId> ${Ve}, getCellChange: ${O} ${Ve}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,r,c,u,w,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+_e,st(7,5)),e(we+g+I,`(${d}, tableId: Id, ${Ee}, cellId: Id, invalidCells: any[])`+_e,st(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Et(...n(((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`))),tt(2,5)),s=e(y+Ze,Et(...n(((e,t)=>`'${e}'?: ${t}`))),tt(2,5,1)),r=e(w+fe,"keyof "+d,"A "+w+" Id in "+Le),c=e(w,xe+`<${d}[VId]>`,"A "+w+" Id in "+Le,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+Le,`<VId = ${r}>`,0),u=e(w+ie,`(...[valueId, value]: ${$})`+_e,dt(ce+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,$e+" returning information about any Value's changes during a "+Je),p=e(y+I,`(${o}, getValueChange: ${i}${Ve})`+_e,st(9)),b=e(T+I,`(${o})`+_e,st(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${c}<VId> ${Ve}, oldValue: ${c}<VId> ${Ve}, getValueChange: ${i} ${Ve}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,c,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+_e,st(11)),e(we+w+I,`(${o}, valueId: Id, invalidValues: any[])`+_e,st(12))]},(t,l)=>e(je+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+_e,$e+" listening to the completion of a "+Je)],jt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Mt=(e,t=l)=>`fluent(() => ${jt(e,t)})`,Jt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,zt=(e,a,n)=>{const[d,c,v,V,x,k,P,A]=Ot(),[E,D,O]=Gt(e,a,x),[N,G,M]=Lt(v,E,D,O),J=le(),W=(e=0)=>oe(J,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||B(r,Pt(o)),z(r,l),r})),F=(e,t,a,n,o,d=l)=>Vt(J,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(Ct[e]+t+(4==e?Re:l)+a,d,n,(n==H?Mt:jt)(Ct[e]+(4==e?Re:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F($+e+I,(n?n+", ":l)+Te+": "+t+(d?", mutator?: boolean":l),fe,Jt($+e+I,o,d?"mutator":l),a,s),Z=`./${kt(n)}.d`,H=kt(n,1),Q=kt(H),q=[],X=le();let ee=[],te=[];if(c(1,Z,H,`create${H} as create${H}Decl`),K(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,u);const[e,a,n,d,I,$,w,y,T,V,k,P,A,O,G,M,J,W,B,F,K,te,ne,oe]=N(Q,H),se=le();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Ae+` the '${e}' `+i),v(t+i+Ze,I+l,Ae+` the '${e}' `+i+He),v(t+C,$+l,lt(e)),v(t+C+Ze,w+l,lt(e,1)),v(t+g+fe,y+l,`A Cell Id for the '${e}' `+i),v(t+g+ie,V+l,dt(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+ie,k+l,dt(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+ie,P+l,dt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];de(se,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,A,O,G,M,J,W,B,F,K,te,ne,oe),ee=[e,a,n,y,O,G,M,J,W,B,F,K,te,ne,se],L([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,tt(1,n),t,a))),U(0,l,b,n+Ge,at(i,Le)),U(5,l,i,Ue,nt(i,Le),"tableCallback: "+A,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,c,$,p]=ae(se,e);L([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,$t(e,s),o,a+d))),U(0,t,i+f,u,at(g,"the whole of "+It(e)),l,a),U(5,t,i+g,Ue,nt(i+g,"the whole of "+It(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+It(e),l,a),U(0,t,h,u,at(C,It(e)),l,a),U(0,t,m,u,at(C,It(e),1),"cellId?: "+I+Ne,a+", cellId, descending, offset, limit"),U(5,t,C,Ue,nt(C,It(e)),"rowCallback: "+$,a+", rowCallback as any"),L([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,ut(e,s),Ee+o,a+", rowId"+d))),U(6,t,C,fe+Ve,"Add a new Row to "+It(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Ge,at(g,ct(e)),Ee,a+", rowId"),U(5,t,g,Ue,nt(g,ct(e)),Ee+", cellCallback: "+c,a+", rowId, cellCallback as any"),D(e,((n,d,s,r,I)=>{const c="Map"+kt(d,1);de(X,d,c);const $=d+(R(s)?Ve:l);L([[$],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,s=l],c)=>U(c,t+I,g,o,it(e,n,c),Ee+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,bt[1]+` the '${n}' Cell anywhere in `+It(e),l,a+", "+r)}))})),U(0,l,p+ye,ye,tt(1,6)),U(2,l,p+ye,H,tt(1,7),"tablesJson: "+ye,"tables"+ye),_(p,O,tt(1,8)+" changes"),_(b,G,rt(2,0,1)),_(i,M,rt(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,J,rt(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,rt(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,rt(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,rt(13,3,1),At("tableId: TId",`cellId: ${y}<TId>`+Ve,"descending: boolean","offset: number","limit: number"+Ve),At("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,K,rt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,te,rt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,ne,rt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${j(E((e=>ae(se,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(we+g,oe,Pe+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...Y(X)),z(q,".set"+p+De+"({",Rt(E(((e,t,a)=>[`[${a}]: {`,...D(e,((e,t,a,n)=>`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${R(a)?l:`, [${x(St(r),`'${r}'`)}]: `+(S(a)?x(St(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(K(a))c(null,t,y);else{const[e,a,n,d,I,$,u,i,p]=G(Q,H);c(1,Z,e,a,n,I,$,u,i,p),te=[e,a,n,$,u,i],L([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,tt(2,n),t,a))),U(0,l,T,n+Ge,at(w,Le)),U(5,l,w,"void",nt(w,Le),"valueCallback: "+I,"valueCallback as any"),O(((e,t,a,n,d)=>{const s="Map"+kt(t,1);de(X,t,s),L([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,pt(e,s),a,n+o)))})),U(0,l,y+ye,ye,tt(2,6)),U(2,l,y+ye,H,tt(2,7),"valuesJson: "+ye,"values"+ye),_(y,$,tt(2,8)+" changes"),_(T,u,rt(10,0,1)),_(w,i,rt(11,0),`valueId: ${n} | null`,"valueId"),_(we+w,p,Pe+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...Y(X)),c(0,t,"ValueChange"),z(q,".set"+y+De+"({",O(((e,t,a,n)=>[`[${n}]: {[${x(St(s),`'${s}'`)}]: ${x(St(t),`'${t}'`)}${R(a)?l:`, [${x(St(r),`'${r}'`)}]: `+(S(a)?x(St(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,tt(0,0)),U(2,l,"Content",H,tt(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Me,H,`Applies a set of ${Me} to the Store`,"transactionChanges: "+Me,"transactionChanges"),ne(X,((e,t)=>v(t,`(cell: ${e}${Ve}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",fe,"IdOrNull",ye,"Store",Me),c(0,t,"Get"+Me,"GetTransactionLog"),U(0,l,ye,ye,tt(0,6)),U(2,l,ye,H,tt(0,7),"tablesAndValuesJson: "+ye,"tablesAndValuesJson"),U(7,l,Je,"Return",ze,me,"actions, doRollback","<Return>"),U(7,l,"start"+je,H,We),U(7,l,"finish"+je,H,Be,he,"doRollback");const se=M(Q,H);return _("Start"+je,se,Pe+" just before the start of the "+Je,l,l,0),_("WillFinish"+je,se,Pe+" just before "+Fe,l,l,0),_("DidFinish"+je,se,Pe+" just after "+Fe,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+Le,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",bt[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,se),x("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...W(1),"}"]),[d(...k(0),...P(),ge+" interface "+H+" {",...W(0),"}",l,Pt(`Creates a ${H} object`),ge+" function create"+H+"(): "+H+";"),d(...k(1),ge+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),ee,te]},Wt=e=>c+e,Bt=e=>At(Wt(e),Wt(e)+be),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+Ce,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+ie+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=At(nl+")"+_e,_t),dl="then, then"+be,sl=el+Kt+fe,rl="View",Il=(e,...t)=>At(...t,Te+": "+e,Te+Ce,"mutator?: boolean"),cl=(...e)=>At(...e,Te,Te+be,"mutator"),$l=(e,a,n,o,d)=>{const[s,r,c,$,v,V,x,k]=Ot(),[S,P,A]=Gt(e,a,v),E=`./${kt(n)}.d`,D=`./${kt(n)}-ui-react.d`,O="tinybase/ui-react",N=kt(n,1),G=kt(N),L=N+"Or"+N+fe,M=G+"Or"+N+fe,J=G+`={${G}}`,W=le(),F=(e,t,a,n,o,d=l)=>(r(1,D,e+" as "+e+"Decl"),Vt(W,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,O,`use${t} as use${t}Core`),U(e,At(o,X,I),a,ee+`(${M}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>oe(W,(([t,a,n,o,d],s)=>{const r=e?[ge+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[ge+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Pt(o)),z(r,l),r}));r(null,t,fe,"Store",ie,Zt+"ized"+ie),r(0,O,"ComponentReturnType"),r(1,O,"useCellIds"),r(null,O,"ExtraProps"),r(0,E,N);const Q=c(L,N+" | "+fe,`Used when you need to refer to a ${N} in a React hook or component`),q=c(Se+ke,Dt(G+ve+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Se} component, so that a `+N+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,D,Q,q);const X=M+ve+Q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+Ce,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+Ve,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Se} component context`),ee=$("useHook",M+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${M} as Id);`,`return hook(...preParams, ((${M} == null || typeof ${M} == 'string')`,`? ${G} : ${M})?.getStore(), ...postParams)`]),te=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),ne=$("wrap",At("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=$("useCustomOrDefaultCellIds",At("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${M}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${M}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!K(e)){const[e,a,n,d,s,w,y,T,v,V,x,k,A,O,L]=o;r(null,E,e,a,n,s,w,y,T,v,V,x,k,A,O),r(0,E,d),r(1,E,N),r(null,t,u,"IdOrNull");const M=$("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${ne}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,"customCellIds={customCellIds}",J,Ut,"/>","))",ll,", tableId,",");"]),z=$("getDefaultTableComponent","tableId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${j(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,tt(1,0)+ue);const B=_(b,b,n+Ge,at(i,Le)+ue);_(Oe+p+ie,Oe+p+ie,Yt,tt(1,9)+qt,At(Wt(p)+Ht+a,Wt(p)+Ce),Bt(p),Xt,At(nl,`tables: ${a})`+_e,_t),dl),_(pe+p+ie,pe+p+ie,ie,tt(1,12),l,l,l,ol,dl);const F=c(g+ke,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+ve+N,Ft),ot(ce+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=c(C+ke,Dt("tableId?: TId","rowId: Id",G+ve+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,al,Ft),ot(ce+C),`<TId extends ${n}>`),H=c(i+ke,Dt("tableId?: TId",G+ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),ot(ce+i),`<TId extends ${n}>`),Q=c("Sorted"+i+ke,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),ot(ce+"sorted "+i),`<TId extends ${n}>`),q=c(p+ke,Dt(G+ve+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),ot(et(1,1)));r(1,D,q,H,Q,U,F),Z(p+rl,"{"+G+", tableComponents, getTableComponentProps"+ll+"}: "+q,[ne+`(${B}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+z+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${te}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Ut,"/>;","}), separator)"],tt(1,13)+ue),S(((e,t,a)=>{const[n,o,d,s,I]=ae(L,e);r(null,E,n,o,d,s,I),_(t+i,i,n,$t(e)+ue,l,a),_(t+i+f,i+f,u,at(g,"the whole of "+It(e))+ue,l,a);const c=_(t+h,h,u,at(C,It(e))+ue,l,a),$=_(t+m,m,u,at(C,It(e),1)+ue,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,ut(e)+ue,sl,At(a,el)),_(t+f,f,I+Ge,at(g,ct(e))+ue,sl,At(a,el)),_(Oe+t+i+ie,Oe+i+ie,Yt,$t(e,9)+qt,At(Wt(i)+Ht+o,Wt(i)+Ce),At(a,Bt(i)),Xt,At(nl,`table: ${o})`+_e,_t),dl),_(pe+t+i+ie,pe+i+ie,ie,$t(e,12),l,a,l,ol,dl),_(Oe+t+C+ie,Oe+C+ie,Yt,ut(e,9)+qt,At(sl,Wt(C)+Ht+s,Wt(C)+Ce),At(a,el,Bt(C)),Xt,At(nl,`row: ${s})`+_e,_t),dl),_("Add"+t+C+ie,"Add"+C+ie,Yt,ut(e,10)+qt,At(Wt(C)+Ht+s,Wt(C)+Ce),At(a,Bt(C)),Xt,"then?: ("+At(sl+Ve,"store: Store","row: "+s+")"+_e,"then"+Ce)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Oe+t+Re+C+ie,Oe+Re+C+ie,Yt,ut(e,11)+qt,At(sl,Wt(Re+C)+Ht+s,Wt(Re+C)+Ce),At(a,el,Bt(Re+C)),Xt,At(nl,`partialRow: ${s})`+_e,_t),dl),_(pe+t+C+ie,pe+C+ie,ie,ut(e,12),sl,At(a,el),l,ol,dl);const p=Z(t+C+rl,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+ll+`}: ${U}<'${e}'>`,[ne+`(${de}(customCellIds, `+a+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,tl,"cellId={cellId}",J,Ut,"/>;","})"+ll+", rowId)"],ut(e,13)+ue);Z(t+"Sorted"+i+rl,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${a}, ${p});`,$t(e,13)+", sorted"+ue),Z(t+i+rl,`props: ${H}<'${e}'>`,M+"(props, "+c+`(props.${G}), ${a}, ${p});`,$t(e,13)+ue),P(e,((n,o,d,s,I)=>{const c="Map"+kt(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+g,g,o+(R(d)?Ve:l),it(e,n)+ue,sl,At(a,el,s));_(Oe+t+I+g+ie,Oe+g+ie,Yt,it(e,n,9)+qt,At(sl,Wt(g)+Ht+o+" | "+c,Wt(g)+Ce),At(a,el,s,Bt(g)),Xt,At(nl,`cell: ${o} | ${c})`+_e,_t),dl),_(pe+t+I+g+ie,pe+g+ie,ie,it(e,n,12),At(sl,"forceDel?: boolean"),At(a,el,s,"forceDel"),l,ol,dl),Z(t+I+g+rl,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[ne+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],it(e,n,13)+ue)}))}));const K=j(S((e=>ae(L,e)?.[4]??l))," | ");_(p+I,p+I,Ue,tt(1,8)+" changes",Il(s),cl()),_(b+I,b+I,Ue,rt(2,0,1),Il(w),cl()),_(i+I,i+I,Ue,rt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(i+f+I,i+f+I,Ue,rt(14,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,Ue,rt(4,3,1),Il(V,`tableId: ${n} | null`),cl("tableId")),_(m+I,m+I,Ue,rt(13,3,1),Il(x,`tableId: ${n} | null`,"cellId: "+K+Ve,"descending: boolean","offset: number","limit: number"+Ve),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Ue,rt(5,3),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(f+I,f+I,Ue,rt(6,5,1),Il(A,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(g+I,g+I,Ue,rt(7,5),Il(O,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${K} | null`),cl("tableId",el,"cellId"))}if(!K(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,N);const u=$("getDefaultValueComponent","valueId: Id",j(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,tt(2,0)+ue);const i=_(T,T,a+Ge,at(w,Le)+ue);_(Oe+y+ie,Oe+y+ie,Yt,tt(2,9)+qt,At(Wt(y)+Ht+t,Wt(y)+Ce),Bt(y),Xt,At(nl,`values: ${t})`+_e,_t),dl),_(Oe+Re+y+ie,Oe+Re+y+ie,Yt,tt(2,11)+qt,At(Wt(Re+y)+Ht+t,Wt(Re+y)+Ce),Bt(Re+y),Xt,At(nl,`partialValues: ${t})`+_e,_t),dl),_(pe+y+ie,pe+y+ie,ie,tt(2,12),l,l,l,ol,dl);const p=c(w+ke,Dt("valueId?: VId",G+ve+N,Ft),ot("a Value"),`<VId extends ${a}>`),b=c(y+ke,Dt(G+ve+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,al,Ft),ot(et(2,1)));r(1,D,b,p),Z(y+rl,"{"+G+", valueComponents, getValueComponentProps"+ll+"}: "+b,[ne+`(${i}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,Ut,"/>;","}), separator)"],tt(2,13)+ue),A(((e,t,a,n,o)=>{const d="Map"+kt(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,pt(e)+ue,l,n);_(Oe+o+w+ie,Oe+w+ie,Yt,pt(e,9)+qt,At(Wt(w)+Ht+t+" | "+d,Wt(w)+Ce),At(n,Bt(w)),Xt,At(nl,`value: ${t} | ${d})`+_e,_t),dl),_(pe+o+w+ie,pe+w+ie,ie,pt(e,12),l,n,l,ol,dl),Z(o+w+rl,`{${G}, debugIds}: ${p}<'${e}'>`,[ne+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],pt(e,13)+ue)})),_(y+I,y+I,Ue,tt(2,8)+" changes",Il(n),cl()),_(T+I,T+I,Ue,rt(10,0,1),Il(o),cl()),_(w+I,w+I,Ue,rt(11,0),Il(s,`valueId: ${a} | null`),cl("valueId"))}return Z(Se,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Se,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Se}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...x(),...H(0)),s(...V(1),...k(),...H(1))]},ul=(e,t,a)=>{if(K(e)&&K(t))return[l,l,l,l];const[n,o,d,s]=zt(e,t,a);return[n,o,...$l(e,t,a,d,s)]},il=JSON.parse,pl="prettier/",bl=pl+"plugins/",Cl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},hl=Nt((e=>{const t=()=>{const t=il(e.getTablesSchemaJson());return!K(t)||N(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=le();if(N(a,(t=>N(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=se(n,a,(()=>[O(o),le(),[0],0])),[s,r,[I]]=d,c=se(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),de(r,o,c),d[3]++,s==O(o)})))))return t[l]={},ee(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==E(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=il(e.getValuesSchemaJson());return K(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:O(l)}})),t},a=e=>ul(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(pl+"standalone")).format,z(l,await import(bl+"estree"),await import(bl+"typescript"))}catch(e){n=async e=>e}return await D(M(a(e),(async(e,a)=>xt(await n(e,{...Cl,plugins:l,filepath:"_."+t[a]})))))};return Z({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=hl;
1
+ "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",c="get",$="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=Promise,V=isFinite,x=e=>null==e,R=(e,t,l)=>x(e)?l?.():t(e),k=e=>e==n||e==o,S=t=>e(t)==n,P=e=>Array.isArray(e),A=(e,t,l)=>e.slice(t,l),E=e=>e.length,O=async e=>v.all(e),D=t=>{const l=e(t);return k(l)||l==d&&V(t)?l:void 0},N=(e,t)=>e.every(t),G=(e,t)=>e.sort(t),L=(e,t)=>e.forEach(t),j=(e,t=l)=>e.join(t),M=(e,t)=>e.map(t),J=(e,t)=>e.filter(t),z=(e,...t)=>e.push(...t),W=e=>e.pop(),B=(e,...t)=>e.unshift(...t),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,H=U.freeze,Q=e=>!x(e)&&R(_(e),(e=>e==U.prototype||x(_(e))),(()=>!0)),q=(e,t)=>M(U.entries(e),(([e,l])=>t(l,e))),K=e=>E(Z(e)),X=e=>Q(e)&&0==K(e),Y=(e,t)=>e?.has(t)??!1,ee=e=>[...e?.values()??[]],te=(e,t)=>e?.forEach(t),le=(e,t)=>e?.delete(t),ae=e=>new Map(e),ne=(e,t)=>e?.get(t),oe=(e,t)=>te(e,((e,l)=>t(l,e))),de=(e,t)=>M([...e?.entries()??[]],(([e,l])=>t(l,e))),se=(e,t,l)=>x(l)?(le(e,t),e):e?.set(t,l),re=(e,t,l)=>(Y(e,t)||se(e,t,l()),ne(e,t)),Ie=e=>e.toUpperCase(),ce=e=>e.toLowerCase(),$e="a ",ue="A function for",ie=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",be="Del",Ce="Deps",he=Ce+"?: React.DependencyList",me="doRollback?: DoRollback",ge="actions: () => Return, "+me,fe="export",we="Id",ye="Invalid",Te="Json",ve=ce(I),Ve="?: ",xe=" | undefined",Re="NonNullable",ke="Partial",Se="Props",Pe="Provider",Ae=`Registers a ${ve} that will be called`,Ee="Represents",Oe="rowId: "+we,De="Schema",Ne="Set",Ge=", descending?: boolean, offset?: number, limit?: number",Le="[]",je="the Store",Me="Transaction",Je=Me+"Changes",ze=ce(Me),We="Execute a "+ze+" to make multiple mutations",Be="Explicitly starts a "+ze,Fe="Explicitly finishes a "+ze,Ue="the end of the "+ze,_e="void",Ze=" => "+_e,He="WhenSet",Qe=" when setting it",qe=$e+"string serialization of",Ke=" ",Xe="Gets a callback that can ",Ye="the ",et=" the schema for",tt=(e=0,t=0)=>`the ${gt[e]}content of`+(t?Ke+je:l),lt=(e=0,t,a=0)=>Ct[t]+Ke+tt(e,1)+(a?" when setting it":l),at=(e,t=0)=>Ee+` a Row when ${t?"s":"g"}etting ${tt()} the '${e}' `+i,nt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,ot=(e,t)=>`Calls a function for each ${e} in `+t,dt=e=>"The props passed to a component that renders "+e,st=e=>"A function that takes "+e,rt=(e,t=0)=>ue+" listening to changes to "+mt[e]+" in "+mt[t],It=(e,t,a=0)=>Ae+" whenever "+mt[e]+" in "+mt[t]+" change"+(a?l:"s"),ct=e=>`the '${e}' `+i,$t=e=>"the specified Row in "+ct(e),ut=(e,t=0)=>Ct[t]+` ${tt()} `+ct(e),it=(e,t=0)=>Ct[t]+` ${tt()} `+$t(e),pt=(e,t,l=0)=>Ct[l]+` the '${t}' Cell for `+$t(e),bt=(e,t=0)=>Ct[t]+` the '${e}' Value`,Ct=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ee,"Gets "+qe,"Sets "+qe,Ae+" whenever",Xe+"set",Xe+"add",Xe+"set part of",Xe+"delete","Renders","Gets "+qe+et,"Sets"+et,"Deletes"+et],ht=[c,"has","set","del","set","forEach",$,l],mt=[je,p,Ye+i+Ke+u,$e+i,Ye+C+Ke+u,$e+C,Ye+g+Ke+u,$e+g,"invalid Cell changes",y,Ye+w+Ke+u,$e+w,"invalid Value changes",Ye+"sorted "+C+Ke+u,Ye+g+Ke+u+" anywhere",Ye+"number of Rows"],gt=[l,"tabular ","keyed value "],ft=e=>new Set(P(e)||x(e)?e:[e]),wt=(e,t)=>e?.add(t),yt=/[^A-Za-z]+/,Tt=/[^A-Za-z0-9]+/,vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Vt=e=>e.includes(a),xt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return Y(e,n)?xt(e,t,l,a+1):(se(e,n,l),n)},Rt=e=>e.replace(vt,((e,t,l)=>{const a=77-E(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),kt=e=>e.flat(1e3),St=(e,t=0)=>j(M(e.split(Tt),((e,l)=>(l>0||t?Ie:ce)(A(e,0,1))+A(e,1)))),Pt=e=>Ie(j((e&&!yt.test(e[0])?e:" "+e).split(Tt),"_")),At=e=>`/** ${e}. */`,Et=(...e)=>j(J(e,(e=>e)),", "),Ot=(...e)=>"{"+j(e,"; ")+"}",Dt=(...e)=>Ot(...M(e,(e=>"readonly "+e))),Nt=()=>{const e=[ae(),ae(),ae(),ae()],t=ae(),a=ae(),n=e=>{const t=e.indexOf(" as ");return-1!=t?A(e,t+4):e};return[(...e)=>j(kt(e),"\n"),(t,l,...a)=>L(a,(a=>L([0,1],(n=>(t??n)==n?wt(re(e[n],l,ft),a):0)))),(e,a,n,o=l,d=1)=>xt(t,e,[a,n,o,d]),(e,t,l)=>xt(a,e,P(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>ne(a,e)===t?e:xt(a,e,t),(t=0)=>M([...G(de(e[t],((e,t)=>`import {${j(G(ee(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>Vt(e)!=Vt(t)?Vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>de(t,(([e,t,a,n],o)=>[At(t),`${n?fe+" ":l}type ${o}${a} = ${e};`,l])),()=>de(a,((e,t)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${t} = ${F(e)}`,e,l])))]},Gt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>q(e,((e,a)=>t(a,St(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>q(e[t],((e,t)=>a(t,e[s],e[r],l(Pt(t),`'${t}'`),St(t,1)))),e=>q(t,((t,a)=>e(a,t[s],t[r],l(Pt(a),`'${a}'`),St(a,1))))],jt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`)))+"}"))),lt(1,5)),r=e(p+He,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),lt(1,5,1)),c=e(i+we,"keyof "+s,"A "+i+" Id in "+je),$=`<TId extends ${c}>`,u=e(i,Re+`<${s}[TId]>`,"A "+i+" in "+je,$),w=e(i+He,Re+`<${r}[TId]>`,"A "+i+" in "+je+Qe,$),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,$),T=e(C+He,w+"<TId>[Id]","A "+C+" in a "+i+Qe,$),v=e(g+we,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,$),V=e(g,Re+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${c}, CId extends ${v}<TId>>`),R=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${c}, CId = ${v}<TId>>`,0),k=e(g+pe,`(...[cellId, cell]: ${R}<TId>)`+Ze,st($e+g+" Id, and "+g),$),S=e(C+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ze+") "+Ze,st($e+C+" Id, and a "+g+" iterator"),$),P=e(i+g+pe,`(cellId: ${v}<TId>, count: number) `+Ze,st($e+g+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ze}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),E=e(i+pe,`(...[tableId, forEachRow]: ${A})`+Ze,st($e+i+" Id, and a "+C+" iterator"),l),O=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ue+" returning information about any Cell's changes during a "+ze),N=e(p+I,`(${d}, getCellChange: ${D}${xe})`+Ze,rt(1)),G=e(b+I,`(${d})`+Ze,rt(2)),L=e(i+I,`(${d}, tableId: ${c}, getCellChange: ${D}${xe})`+Ze,rt(3)),j=e(i+f+I,`(${d}, tableId: ${c})`+Ze,rt(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${c})`+Ze,rt(15,3)),J=e(h+I,`(${d}, tableId: ${c})`+Ze,rt(4,3)),z=e(m+I,"("+Et(d,"tableId: "+c,"cellId: Id"+xe,"descending: boolean","offset: number","limit: number"+xe,"sortedRowIds: Ids")+")"+Ze,rt(13,3)),W=e(C+I,"("+Et(""+d,"tableId: "+c,Oe,`getCellChange: ${D}${xe}`)+")"+Ze,rt(5,3)),B=e(f+I,"("+Et(""+d,"tableId: "+c,Oe)+")"+Ze,rt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Oe}, cellId: CId, newCell: ${V}<TId, CId> ${xe}, oldCell: ${V}<TId, CId> ${xe}, getCellChange: ${D} ${xe}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,r,c,u,w,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Ze,rt(7,5)),e(ye+g+I,`(${d}, tableId: Id, ${Oe}, cellId: Id, invalidCells: any[])`+Ze,rt(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Ot(...n(((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`))),lt(2,5)),s=e(y+He,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),lt(2,5,1)),r=e(w+we,"keyof "+d,"A "+w+" Id in "+je),c=e(w,Re+`<${d}[VId]>`,"A "+w+" Id in "+je,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+je,`<VId = ${r}>`,0),u=e(w+pe,`(...[valueId, value]: ${$})`+Ze,st($e+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ue+" returning information about any Value's changes during a "+ze),p=e(y+I,`(${o}, getValueChange: ${i}${xe})`+Ze,rt(9)),b=e(T+I,`(${o})`+Ze,rt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${c}<VId> ${xe}, oldValue: ${c}<VId> ${xe}, getValueChange: ${i} ${xe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,c,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ze,rt(11)),e(ye+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Ze,rt(12))]},(t,l)=>e(Me+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ze,ue+" listening to the completion of a "+ze)],Mt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Jt=(e,t=l)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Wt=(e,a,n)=>{const[d,c,v,V,R,k,P,A]=Nt(),[E,O,D]=Lt(e,a,R),[N,G,M]=jt(v,E,O,D),J=ae(),W=(e=0)=>de(J,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||B(r,At(o)),z(r,l),r})),F=(e,t,a,n,o,d=l)=>xt(J,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(ht[e]+t+(4==e?ke:l)+a,d,n,(n==H?Jt:Mt)(ht[e]+(4==e?ke:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F($+e+I,(n?n+", ":l)+ve+": "+t+(d?", mutator?: boolean":l),we,zt($+e+I,o,d?"mutator":l),a,s),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),q=[],K=ae();let Y=[],te=[];if(c(1,Z,H,`create${H} as create${H}Decl`),X(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,u);const[e,a,n,d,I,$,w,y,T,V,k,P,A,D,G,M,J,W,B,F,X,te,le,oe]=N(Q,H),de=ae();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Ee+` the '${e}' `+i),v(t+i+He,I+l,Ee+` the '${e}' `+i+Qe),v(t+C,$+l,at(e)),v(t+C+He,w+l,at(e,1)),v(t+g+we,y+l,`A Cell Id for the '${e}' `+i),v(t+g+pe,V+l,st(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+pe,k+l,st(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+pe,P+l,st(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];se(de,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,A,D,G,M,J,W,B,F,X,te,le,oe),Y=[e,a,n,y,D,G,M,J,W,B,F,X,te,le,de],L([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,lt(1,n),t,a))),U(0,l,b,n+Le,nt(i,je)),U(5,l,i,_e,ot(i,je),"tableCallback: "+A,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,c,$,p]=ne(de,e);L([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,ut(e,s),o,a+d))),U(0,t,i+f,u,nt(g,"the whole of "+ct(e)),l,a),U(5,t,i+g,_e,ot(i+g,"the whole of "+ct(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+ct(e),l,a),U(0,t,h,u,nt(C,ct(e)),l,a),U(0,t,m,u,nt(C,ct(e),1),"cellId?: "+I+Ge,a+", cellId, descending, offset, limit"),U(5,t,C,_e,ot(C,ct(e)),"rowCallback: "+$,a+", rowCallback as any"),L([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,it(e,s),Oe+o,a+", rowId"+d))),U(6,t,C,we+xe,"Add a new Row to "+ct(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Le,nt(g,$t(e)),Oe,a+", rowId"),U(5,t,g,_e,ot(g,$t(e)),Oe+", cellCallback: "+c,a+", rowId, cellCallback as any"),O(e,((n,d,s,r,I)=>{const c="Map"+St(d,1);se(K,d,c);const $=d+(x(s)?xe:l);L([[$],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,s=l],c)=>U(c,t+I,g,o,pt(e,n,c),Oe+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,Ct[1]+` the '${n}' Cell anywhere in `+ct(e),l,a+", "+r)}))})),U(0,l,p+Te,Te,lt(1,6)),U(2,l,p+Te,H,lt(1,7),"tablesJson: "+Te,"tables"+Te),_(p,D,lt(1,8)+" changes"),_(b,G,It(2,0,1)),_(i,M,It(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,J,It(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,It(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,It(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,It(13,3,1),Et("tableId: TId",`cellId: ${y}<TId>`+xe,"descending: boolean","offset: number","limit: number"+xe),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,X,It(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,te,It(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,It(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${j(E((e=>ne(de,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(ye+g,oe,Ae+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...ee(K)),z(q,".set"+p+De+"({",kt(E(((e,t,a)=>[`[${a}]: {`,...O(e,((e,t,a,n)=>`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(X(a))c(null,t,y);else{const[e,a,n,d,I,$,u,i,p]=G(Q,H);c(1,Z,e,a,n,I,$,u,i,p),te=[e,a,n,$,u,i],L([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,lt(2,n),t,a))),U(0,l,T,n+Le,nt(w,je)),U(5,l,w,"void",ot(w,je),"valueCallback: "+I,"valueCallback as any"),D(((e,t,a,n,d)=>{const s="Map"+St(t,1);se(K,t,s),L([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,bt(e,s),a,n+o)))})),U(0,l,y+Te,Te,lt(2,6)),U(2,l,y+Te,H,lt(2,7),"valuesJson: "+Te,"values"+Te),_(y,$,lt(2,8)+" changes"),_(T,u,It(10,0,1)),_(w,i,It(11,0),`valueId: ${n} | null`,"valueId"),_(ye+w,p,Ae+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...ee(K)),c(0,t,"ValueChange"),z(q,".set"+y+De+"({",D(((e,t,a,n)=>[`[${n}]: {[${R(Pt(s),`'${s}'`)}]: ${R(Pt(t),`'${t}'`)}${x(a)?l:`, [${R(Pt(r),`'${r}'`)}]: `+(S(a)?R(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,lt(0,0)),U(2,l,"Content",H,lt(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Je,H,`Applies a set of ${Je} to the Store`,"transactionChanges: "+Je,"transactionChanges"),oe(K,((e,t)=>v(t,`(cell: ${e}${xe}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",we,"IdOrNull",Te,"Store",Je),c(0,t,"Get"+Je,"GetTransactionLog"),U(0,l,Te,Te,lt(0,6)),U(2,l,Te,H,lt(0,7),"tablesAndValuesJson: "+Te,"tablesAndValuesJson"),U(7,l,ze,"Return",We,ge,"actions, doRollback","<Return>"),U(7,l,"start"+Me,H,Be),U(7,l,"finish"+Me,H,Fe,me,"doRollback");const le=M(Q,H);return _("Start"+Me,le,Ae+" just before the start of the "+ze,l,l,0),_("WillFinish"+Me,le,Ae+" just before "+Ue,l,l,0),_("DidFinish"+Me,le,Ae+" just after "+Ue,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",Ct[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,le),R("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),R(Q,["{",...W(1),"}"]),[d(...k(0),...P(),fe+" interface "+H+" {",...W(0),"}",l,At(`Creates a ${H} object`),fe+" function create"+H+"(): "+H+";"),d(...k(1),fe+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),Y,te]},Bt=e=>c+e,Ft=e=>Et(Bt(e),Bt(e)+Ce),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+he,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+pe+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ze,Zt),sl="then, then"+Ce,rl=tl+Xt+we,Il="View",cl=(e,...t)=>Et(...t,ve+": "+e,ve+he,"mutator?: boolean"),$l=(...e)=>Et(...e,ve,ve+Ce,"mutator"),ul=(e,a,n,o,d)=>{const[s,r,c,$,v,V,R,k]=Nt(),[S,P,A]=Lt(e,a,v),E=`./${St(n)}.d`,O=`./${St(n)}-ui-react.d`,D="tinybase/ui-react",N=St(n,1),G=St(N),L=N+"Or"+N+we,M=G+"Or"+N+we,J=G+`={${G}}`,W=ae(),F=(e,t,a,n,o,d=l)=>(r(1,O,e+" as "+e+"Decl"),xt(W,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,D,`use${t} as use${t}Core`),U(e,Et(o,K,I),a,ee+`(${M}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>de(W,(([t,a,n,o,d],s)=>{const r=e?[fe+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[fe+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||B(r,At(o)),z(r,l),r}));r(null,t,we,"Store",pe,Ht+"ized"+pe),r(0,D,"ComponentReturnType"),r(1,D,"useCellIds"),r(null,D,"ExtraProps"),r(0,E,N);const Q=c(L,N+" | "+we,`Used when you need to refer to a ${N} in a React hook or component`),q=c(Pe+Se,Dt(G+Ve+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Pe} component, so that a `+N+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,O,Q,q);const K=M+Ve+Q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+he,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+xe,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Pe} component context`),ee=$("useHook",M+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${M} as Id);`,`return hook(...preParams, ((${M} == null || typeof ${M} == 'string')`,`? ${G} : ${M})?.getStore(), ...postParams)`]),te=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=$("wrap",Et("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),oe=$("useCustomOrDefaultCellIds",Et("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${M}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${M}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!X(e)){const[e,a,n,d,s,w,y,T,v,V,R,k,A,D,L]=o;r(null,E,e,a,n,s,w,y,T,v,V,R,k,A,D),r(0,E,d),r(1,E,N),r(null,t,u,"IdOrNull");const M=$("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+al+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${le}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ll,"customCellIds={customCellIds}",J,_t,"/>","))",al,", tableId,",");"]),z=$("getDefaultTableComponent","tableId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",j(S(((e,t,l)=>`tableId == ${l} ? ${j(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,lt(1,0)+ie);const B=_(b,b,n+Le,nt(i,je)+ie);_(Ne+p+pe,Ne+p+pe,el,lt(1,9)+Kt,Et(Bt(p)+Qt+a,Bt(p)+he),Ft(p),Yt,Et(ol,`tables: ${a})`+Ze,Zt),sl),_(be+p+pe,be+p+pe,pe,lt(1,12),l,l,l,dl,sl);const F=c(g+Se,Dt("tableId?: TId","rowId: Id","cellId?: CId",G+Ve+N,Ut),dt($e+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=c(C+Se,Dt("tableId?: TId","rowId: Id",G+Ve+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,nl,Ut),dt($e+C),`<TId extends ${n}>`),H=c(i+Se,Dt("tableId?: TId",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt($e+i),`<TId extends ${n}>`),Q=c("Sorted"+i+Se,Dt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt($e+"sorted "+i),`<TId extends ${n}>`),q=c(p+Se,Dt(G+Ve+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),dt(tt(1,1)));r(1,O,q,H,Q,U,F),Z(p+Il,"{"+G+", tableComponents, getTableComponentProps"+al+"}: "+q,[le+`(${B}(${G}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+z+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${te}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,_t,"/>;","}), separator)"],lt(1,13)+ie),S(((e,t,a)=>{const[n,o,d,s,I]=ne(L,e);r(null,E,n,o,d,s,I),_(t+i,i,n,ut(e)+ie,l,a),_(t+i+f,i+f,u,nt(g,"the whole of "+ct(e))+ie,l,a);const c=_(t+h,h,u,nt(C,ct(e))+ie,l,a),$=_(t+m,m,u,nt(C,ct(e),1)+ie,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,it(e)+ie,rl,Et(a,tl)),_(t+f,f,I+Le,nt(g,$t(e))+ie,rl,Et(a,tl)),_(Ne+t+i+pe,Ne+i+pe,el,ut(e,9)+Kt,Et(Bt(i)+Qt+o,Bt(i)+he),Et(a,Ft(i)),Yt,Et(ol,`table: ${o})`+Ze,Zt),sl),_(be+t+i+pe,be+i+pe,pe,ut(e,12),l,a,l,dl,sl),_(Ne+t+C+pe,Ne+C+pe,el,it(e,9)+Kt,Et(rl,Bt(C)+Qt+s,Bt(C)+he),Et(a,tl,Ft(C)),Yt,Et(ol,`row: ${s})`+Ze,Zt),sl),_("Add"+t+C+pe,"Add"+C+pe,el,it(e,10)+Kt,Et(Bt(C)+Qt+s,Bt(C)+he),Et(a,Ft(C)),Yt,"then?: ("+Et(rl+xe,"store: Store","row: "+s+")"+Ze,"then"+he)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(Ne+t+ke+C+pe,Ne+ke+C+pe,el,it(e,11)+Kt,Et(rl,Bt(ke+C)+Qt+s,Bt(ke+C)+he),Et(a,tl,Ft(ke+C)),Yt,Et(ol,`partialRow: ${s})`+Ze,Zt),sl),_(be+t+C+pe,be+C+pe,pe,it(e,12),rl,Et(a,tl),l,dl,sl);const p=Z(t+C+Il,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+al+`}: ${U}<'${e}'>`,[le+`(${oe}(customCellIds, `+a+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ll,"cellId={cellId}",J,_t,"/>;","})"+al+", rowId)"],it(e,13)+ie);Z(t+"Sorted"+i+Il,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${a}, ${p});`,ut(e,13)+", sorted"+ie),Z(t+i+Il,`props: ${H}<'${e}'>`,M+"(props, "+c+`(props.${G}), ${a}, ${p});`,ut(e,13)+ie),P(e,((n,o,d,s,I)=>{const c="Map"+St(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+g,g,o+(x(d)?xe:l),pt(e,n)+ie,rl,Et(a,tl,s));_(Ne+t+I+g+pe,Ne+g+pe,el,pt(e,n,9)+Kt,Et(rl,Bt(g)+Qt+o+" | "+c,Bt(g)+he),Et(a,tl,s,Ft(g)),Yt,Et(ol,`cell: ${o} | ${c})`+Ze,Zt),sl),_(be+t+I+g+pe,be+g+pe,pe,pt(e,n,12),Et(rl,"forceDel?: boolean"),Et(a,tl,s,"forceDel"),l,dl,sl),Z(t+I+g+Il,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],pt(e,n,13)+ie)}))}));const K=j(S((e=>ne(L,e)?.[4]??l))," | ");_(p+I,p+I,_e,lt(1,8)+" changes",cl(s),$l()),_(b+I,b+I,_e,It(2,0,1),cl(w),$l()),_(i+I,i+I,_e,It(3,0),cl(y,`tableId: ${n} | null`),$l("tableId")),_(i+f+I,i+f+I,_e,It(14,3,1),cl(T,`tableId: ${n} | null`),$l("tableId")),_(h+I,h+I,_e,It(4,3,1),cl(V,`tableId: ${n} | null`),$l("tableId")),_(m+I,m+I,_e,It(13,3,1),cl(R,`tableId: ${n} | null`,"cellId: "+K+xe,"descending: boolean","offset: number","limit: number"+xe),$l("tableId","cellId","descending","offset","limit")),_(C+I,C+I,_e,It(5,3),cl(k,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(f+I,f+I,_e,It(6,5,1),cl(A,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(g+I,g+I,_e,It(7,5),cl(D,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${K} | null`),$l("tableId",tl,"cellId"))}if(!X(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,N);const u=$("getDefaultValueComponent","valueId: Id",j(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,lt(2,0)+ie);const i=_(T,T,a+Le,nt(w,je)+ie);_(Ne+y+pe,Ne+y+pe,el,lt(2,9)+Kt,Et(Bt(y)+Qt+t,Bt(y)+he),Ft(y),Yt,Et(ol,`values: ${t})`+Ze,Zt),sl),_(Ne+ke+y+pe,Ne+ke+y+pe,el,lt(2,11)+Kt,Et(Bt(ke+y)+Qt+t,Bt(ke+y)+he),Ft(ke+y),Yt,Et(ol,`partialValues: ${t})`+Ze,Zt),sl),_(be+y+pe,be+y+pe,pe,lt(2,12),l,l,l,dl,sl);const p=c(w+Se,Dt("valueId?: VId",G+Ve+N,Ut),dt("a Value"),`<VId extends ${a}>`),b=c(y+Se,Dt(G+Ve+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,nl,Ut),dt(tt(2,1)));r(1,O,b,p),Z(y+Il,"{"+G+", valueComponents, getValueComponentProps"+al+"}: "+b,[le+`(${i}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,_t,"/>;","}), separator)"],lt(2,13)+ie),A(((e,t,a,n,o)=>{const d="Map"+St(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,bt(e)+ie,l,n);_(Ne+o+w+pe,Ne+w+pe,el,bt(e,9)+Kt,Et(Bt(w)+Qt+t+" | "+d,Bt(w)+he),Et(n,Ft(w)),Yt,Et(ol,`value: ${t} | ${d})`+Ze,Zt),sl),_(be+o+w+pe,be+w+pe,pe,bt(e,12),l,n,l,dl,sl),Z(o+w+Il,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],bt(e,13)+ie)})),_(y+I,y+I,_e,lt(2,8)+" changes",cl(n),$l()),_(T+I,T+I,_e,It(10,0,1),cl(o),$l()),_(w+I,w+I,_e,It(11,0),cl(s,`valueId: ${a} | null`),$l("valueId"))}return Z(Pe,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+Pe,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Pe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...R(),...H(0)),s(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(X(e)&&X(t))return[l,l,l,l];const[n,o,d,s]=Wt(e,t,a);return[n,o,...ul(e,t,a,d,s)]},pl=JSON.parse,bl="prettier/",Cl=bl+"plugins/",hl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ml=Gt((e=>{const t=()=>{const t=pl(e.getTablesSchemaJson());return!X(t)||N(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ae();if(N(a,(t=>N(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=re(n,a,(()=>[D(o),ae(),[0],0])),[s,r,[I]]=d,c=re(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),se(r,o,c),d[3]++,s==D(o)})))))return t[l]={},te(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==E(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=pl(e.getValuesSchemaJson());return X(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:D(l)}})),t},a=e=>il(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(bl+"standalone")).format,z(l,await import(Cl+"estree"),await import(Cl+"typescript"))}catch(e){n=async e=>e}return await O(M(a(e),(async(e,a)=>Rt(await n(e,{...hl,plugins:l,filepath:"_."+t[a]})))))};return H({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=ml;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),r=s(0),o=s(s),i="type",d="default",u="Ids",c="Table",h=c+"s",m=c+u,b="Row",g=b+"Count",p=b+u,I="Cell",w=I+u,f="Value",y=f+"s",C=f+u,v="currentTarget",k="value",T=e=>l+e,x=Math.floor,S=isFinite,V=(e,t)=>e instanceof t,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==o,M=e=>Array.isArray(e),E=(e,t,s)=>e.slice(t,s),z=e=>e.length,{PureComponent:$,Fragment:O,createElement:A,useCallback:F,useLayoutEffect:J,useRef:P,useState:H}=e,B=(e,...t)=>R(e)?{}:e(...t),D=(e,t)=>e.forEach(t),Q=(e,t)=>e.map(t),j=e=>0==z(e),W=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,U=K.keys,X=K.isFrozen,Y=K.freeze,Z=e=>V(e,K)&&e.constructor==K,_=(e=[])=>K.fromEntries(e),ee=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),te=(e,t)=>(delete e[t],e),se=(e,t)=>Q(K.entries(e),(([e,s])=>t(s,e))),le=e=>Z(e)&&0==(e=>z(U(e)))(e),ae=e=>JSON.stringify(e,((e,t)=>V(t,Map)?K.fromEntries([...t]):t)),ne=JSON.parse,re="tinybaseStoreInspector",oe="TinyBase Store Inspector",ie=["left","top","bottom","right","full"],de="state",ue="sort",ce="open",he="position",me=ce,be="editable",ge=(...e)=>ae(e),pe=(e,t)=>Q(e.sort(),t),Ie=(e,s)=>[!!t.useCell(de,e,be,s),F((t=>{s.setCell(de,e,be,(e=>!e)),t.preventDefault()}),[s,e])],we="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",fe='content:url("',ye=fe+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Ce='</svg>")',ve=fe+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",ke=Q([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ye+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Ce)),Te=ye+"<path d='M20 20l60 60M20 80l60-60' />"+Ce,xe=ye+`<path d='${we}' />`+Ce,Se=ye+`<path d='${we}M20 20l60 60' />`+Ce,Ve="*::-webkit-scrollbar",Re=((e,t="")=>e.join(t))(se({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Ve]:"width:0.5rem;height:0.5rem;",[Ve+"-track"]:"background:#111",[Ve+"-thumb"]:"background:#999;border:1px solid #111",[Ve+"-thumb:hover"]:"background:#fff",[Ve+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ve,..._(Q(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",..._(Q(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ve,"header>img:nth-of-type(6)":Te,..._(Q(ke,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":xe,"details[open]>summary img.done":Se,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${re} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${re} ${t}{${e}}`:""))),qe=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!0),[],e);return t.useValue(me,e)?null:A("img",{onClick:l,title:oe,"data-position":s})},Ne=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:r})=>{const o=!!t.useCell(de,e,ce,r),i=t.useSetCellCallback(de,e,ce,(e=>e[v].open),[],r);return A("details",{open:o,onToggle:i},A("summary",null,s,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},Le=e=>{const t=s(e);return N(t)||t==r&&S(e)?t:void 0},Me=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Ee=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),ze=(e,t,s,l)=>e==a?t:e==r?s:l,{useCallback:$e,useMemo:Oe,useState:Ae}=e,Fe="editable",Je=(e,s)=>Q(t.useTableCellIds(e,s),(t=>e+"."+t)),Pe=(e,t,s)=>{const l=$e(e,t);return s?l:void 0},He=(...e)=>Oe((()=>e),e),Be=(e,t)=>Oe((()=>({store:e,tableId:t})),[e,t]),De=(e,t)=>Oe((()=>({queries:e,queryId:t})),[e,t]),Qe=(e,t=!1,s,l=0,a,n,r,o)=>{const[[i,d,u],c]=Ae([e,t,l]),h=$e((e=>{c(e),o?.(e)}),[o]),m=Pe((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=$e((e=>h([i,d,e])),[h,i,d]),g=!0===r?lt:r;return[[i,d,u],m,Oe((()=>!1===r?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[r,g,u,a,n,b])]},je=(e,t,l)=>Oe((()=>{const n=t??e;return _(se(M(n)?_(Q(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),We=({className:e,headerRow:t,idColumn:s,params:[l,a,n,r,o,i]})=>A("table",{className:e},i?A("caption",null,i):null,!1===t?null:A("thead",null,A("tr",null,!1===s?null:A(Ge,{sort:r??[],label:"Id",onClick:o}),se(l,(({label:e},t)=>A(Ge,{key:t,cellId:t,label:e,sort:r??[],onClick:o}))))),A("tbody",null,Q(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),se(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...B(s,e,l),...a,rowId:e,cellId:l}))))))))),Ge=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>A("th",{onClick:Pe((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",a),Ke=({localRowId:s,params:[l,a,n,r,o,i,d]})=>{const u=t.useRemoteRowId(o,s,i);return A("tr",null,!1===l?null:A(e.Fragment,null,A("th",null,s),A("th",null,u)),se(a,(({component:e,getComponentProps:t},l)=>{const[a,o]=l.split(".",2),i=a===n?s:a===r?u:null;return R(i)?null:A("td",{key:l},A(e,{...B(t,i,o),store:d,tableId:a,rowId:i,cellId:o}))})))},Ue=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:o=!0})=>{const[i,d]=Ae(),[u,c]=Ae(),[h,m]=Ae(),[b,g]=Ae(),[p,I]=Ae();u!==e&&(d(Le(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=$e(((e,s)=>{s(e),c(e),t(e)}),[t]),f=$e((()=>{if(!l?.()){const e=ze(i,r,n,a),s=ze(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},o?A("button",{className:i,onClick:f},i):null,ze(i,A("input",{key:i,value:h,onChange:$e((e=>w(e[v][k]+"",m)),[w])}),A("input",{key:i,type:"number",value:b,onChange:$e((e=>w(Number(e[v][k]||0),g)),[w])}),A("input",{key:i,type:"checkbox",checked:p,onChange:$e((e=>w(!!e[v].checked,I)),[w])})))},Xe=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:r,editable:o,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Qe(s,l,i,a,n,t.useRowCount(e,r),d,u);return A(We,{...h,params:He(je(t.useTableCellIds(e,r),c,o?tt:t.CellView),Be(r,e),t.useSortedRowIds(e,...m,n,r),m,b,g)})},Ye=({store:e,editable:s=!1,valueComponent:l=(s?st:t.ValueView),getValueComponentProps:a,className:n,headerRow:r,idColumn:o})=>A("table",{className:n},!1===r?null:A("thead",null,A("tr",null,!1===o?null:A("th",null,"Id"),A("th",null,f))),A("tbody",null,Q(t.useValueIds(e),(t=>A("tr",{key:t},!1===o?null:A("th",null,t),A("td",null,A(l,{...B(a,t),valueId:t,store:e}))))))),Ze=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...r})=>{const[o,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return A(We,{...r,params:He(je(t.useTableCellIds(d,i),n,a?tt:t.CellView),Be(i,d),t.useSliceRowIds(e,s,o))})},_e=({relationshipId:s,relationships:l,editable:a,customCells:n,className:r,headerRow:o,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(l),s),m=je([...Je(c,u),...Je(h,u)],n,a?tt:t.CellView),b=He(i,m,c,h,s,d,u);return A("table",{className:r},!1===o?null:A("thead",null,A("tr",null,!1===i?null:A(e.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),se(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,Q(t.useRowIds(c,u),(e=>A(Ke,{key:e,localRowId:e,params:b})))))},et=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:r,sortOnClick:o,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Qe(s,l,o,a,n,t.useResultRowCount(e,r),i,u);return A(We,{...c,params:He(je(t.useResultTableCellIds(e,r),d,t.ResultCellView),De(r,e),t.useResultSortedRowIds(e,...h,n,r),h,m,b)})},tt=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:r})=>A(Ue,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Fe+I,showType:r,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),st=({valueId:e,store:s,className:l,showType:a})=>A(Ue,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Fe+f,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),lt=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:r=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const o=Pe((()=>t(l-a)),[t,l,a],l>0),i=Pe((()=>t(l+a)),[t,l,a],l+a<s);return A(e.Fragment,null,s>a&&A(e.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick:o},"←"),A("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?r:n)},at=({indexes:e,indexesId:s,indexId:l,s:a})=>A(Ne,{uniqueId:ge("i",s,l),summary:"Index: "+l,s:a},Q(t.useSliceIds(l,e),(t=>A(nt,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),nt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=ge("i",t,s,l),[r,o]=Ie(n,a);return A(Ne,{uniqueId:n,summary:"Slice: "+l,editable:r,handleEditable:o,s:a},A(Ze,{sliceId:l,indexId:s,indexes:e,editable:r}))},rt=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:A(Ne,{uniqueId:ge("i",e),summary:"Indexes: "+(e??d),s:s},j(a)?"No indexes defined":pe(a,(t=>A(at,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},ot=({metrics:e,metricId:s})=>A("tr",null,A("th",null,s),A("td",null,e?.getTableId(s)),A("td",null,t.useMetric(s,e))),it=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:A(Ne,{uniqueId:ge("m",e),summary:"Metrics: "+(e??d),s:s},j(a)?"No metrics defined":A("table",null,A("thead",null,A("th",null,"Metric Id"),A("th",null,"Table Id"),A("th",null,"Metric")),A("tbody",null,Q(a,(e=>A(ot,{metrics:l,metricId:e,key:e}))))))},dt=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=ge("q",s,l),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a);return A(Ne,{uniqueId:n,summary:"Query: "+l,s:a},A(et,{queryId:l,queries:e,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ut=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:A(Ne,{uniqueId:ge("q",e),summary:"Queries: "+(e??d),s:s},j(a)?"No queries defined":pe(a,(t=>A(dt,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},ct=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=ge("r",t,s),[n,r]=Ie(a,l);return A(Ne,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:r,s:l},A(_e,{relationshipId:s,relationships:e,editable:n}))},ht=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:A(Ne,{uniqueId:ge("r",e),summary:"Relationships: "+(e??d),s:s},j(a)?"No relationships defined":pe(a,(t=>A(ct,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},mt=({tableId:e,store:s,storeId:l,s:a})=>{const n=ge("t",l,e),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a),[u,h]=Ie(n,a);return A(Ne,{uniqueId:n,summary:c+": "+e,editable:u,handleEditable:h,s:a},A(Xe,{tableId:e,store:s,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},bt=({store:e,storeId:s,s:l})=>{const a=ge("v",s),[n,r]=Ie(a,l);return j(t.useValueIds(e))?null:A(Ne,{uniqueId:a,summary:y,editable:n,handleEditable:r,s:l},A(Ye,{store:e,editable:n}))},gt=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:A(Ne,{uniqueId:ge("s",e),summary:"Store: "+(e??d),s:s},A(bt,{storeId:e,store:l,s:s}),pe(a,(t=>A(mt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},pt=({s:e})=>{const s=P(null),l=P(0),[a,n]=H(!1),{scrollLeft:r,scrollTop:o}=t.useValues(e);J((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=x(r)+e.clientWidth&&e.scrollHeight>=x(o)+e.clientHeight&&e.scrollTo(r,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,r,o]);const i=F((t=>{const{scrollLeft:s,scrollTop:a}=t[v];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return R(d)&&j(u)&&R(c)&&j(h)&&R(m)&&j(b)&&R(g)&&j(p)&&R(I)&&j(w)?A("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):A("article",{ref:s,onScroll:i},A(gt,{s:e}),Q(u,(t=>A(gt,{storeId:t,s:e,key:t}))),A(it,{s:e}),Q(h,(t=>A(it,{metricsId:t,s:e,key:t}))),A(rt,{s:e}),Q(b,(t=>A(rt,{indexesId:t,s:e,key:t}))),A(ht,{s:e}),Q(p,(t=>A(ht,{relationshipsId:t,s:e,key:t}))),A(ut,{s:e}),Q(w,(t=>A(ut,{queriesId:t,s:e,key:t}))))};class It extends ${constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?A("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const wt=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!1),[],e),a=t.useSetValueCallback(he,(e=>Number(e[v].dataset.id)),[],e);return A("header",null,A("img",{title:oe}),A("span",null,oe),Q(ie,((e,t)=>t==s?null:A("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),A("img",{onClick:l,title:"Close"}))},ft=({s:e})=>{const s=t.useValue(he,e)??1;return t.useValue(me,e)?A("main",{"data-position":s},A(wt,{s:e}),A(It,null,A(pt,{s:e}))):null},yt=e=>t=>{return s=(t,s)=>t+e(s),Vt(t).reduce(s,0);var s},Ct=e=>e?.size??0,vt=yt(Ct),kt=yt(vt),Tt=yt(kt),xt=(e,t)=>e?.has(t)??!1,St=e=>R(e)||0==Ct(e),Vt=e=>[...e?.values()??[]],Rt=e=>e.clear(),qt=(e,t)=>e?.forEach(t),Nt=(e,t)=>e?.delete(t),Lt=e=>new Map(e),Mt=e=>[...e?.keys()??[]],Et=(e,t)=>e?.get(t),zt=(e,t)=>qt(e,((e,s)=>t(s,e))),$t=(e,t,s)=>R(s)?(Nt(e,t),e):e?.set(t,s),Ot=(e,t,s)=>(xt(e,t)||$t(e,t,s()),Et(e,t)),At=(e,t,s,l=$t)=>(se(t,((t,l)=>s(e,l,t))),zt(e,(s=>ee(t,s)?0:l(e,s))),e),Ft=(e,t,s)=>{const l={};return qt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Jt=(e,t,s)=>Ft(e,(e=>Ft(e,t,s)),le),Pt=(e,t,s)=>Ft(e,(e=>Jt(e,t,s)),le),Ht=(e,t)=>{const s=Lt();return qt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Bt=e=>Ht(e,Ht),Dt=e=>Ht(e,Bt),Qt=(e,t,s,l,a=0)=>q((s?Ot:Et)(e,t[a],a>z(t)-2?s:Lt),(n=>{if(a>z(t)-2)return l?.(n)&&$t(e,t[a]),n;const r=Qt(n,t,s,l,a+1);return St(n)&&$t(e,t[a]),r})),jt=Lt(),Wt=Lt(),Gt="storage",Kt=globalThis.window,Ut=e=>new Set(M(e)||R(e)?e:[e]),Xt=(e,t)=>e?.add(t),Yt=/^\d+$/,Zt=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??l+t++,t=>{Yt.test(t)&&z(e)<1e3&&W(e,t)}]},_t=e=>[e,e],es=(e,t=vt)=>t(e[0])+t(e[1]),ts=()=>[Lt(),Lt()],ss=e=>[...e],ls=([e,t])=>e===t,as=(e,t,s)=>R(e)||!Z(e)||le(e)||X(e)?(s?.(),!1):(se(e,((s,l)=>{t(s,l)||te(e,l)})),!le(e)),ns=(e,t,s)=>$t(e,t,Et(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,a=!1,n=0;const o=Lt(),u=Lt(),v=Lt(),k=Lt(),x=Lt(),S=Lt(),V=Lt(),M=Lt(),$=Lt(),O=Lt(),A=Lt(),F=Lt(),J=Lt(),P=Lt(),H=Ut(),B=Lt(),j=Lt(),G=Lt(),K=Lt(),U=ts(),X=ts(),Z=ts(),_=ts(),re=ts(),oe=ts(),ie=ts(),de=ts(),ue=ts(),ce=ts(),he=ts(),me=ts(),be=ts(),ge=ts(),pe=ts(),Ie=Lt(),we=ts(),[fe,ye,Ce,ve]=(e=>{let t;const[s,a]=Zt(),n=Lt();return[(e,a,r,o=[],i=(()=>[]))=>{t??=fs;const d=s(1);return $t(n,d,[e,a,r,o,i]),Xt(Qt(a,r??[l],Ut),d),d},(e,s,...a)=>D(((e,t=[l])=>{const s=[],a=(e,l)=>l==z(t)?W(s,e):null===t[l]?qt(e,(e=>a(e,l+1))):D([t[l],null],(t=>a(Et(e,t),l+1)));return a(e,0),s})(e,s),(e=>qt(e,(e=>Et(n,e)[0](t,...s??[],...a))))),e=>q(Et(n,e),(([,t,s])=>(Qt(t,s??[l],void 0,(t=>(Nt(t,e),St(t)?1:0))),$t(n,e),a(e),s))),e=>q(Et(n,e),(([e,,s=[],l,a])=>{const n=(...r)=>{const o=z(r);o==z(s)?e(t,...r,...a(r)):R(s[o])?D(l[o]?.(...r)??[],(e=>n(...r,e))):n(...r,s[o])};n()}))]})(),ke=e=>{if(!as(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=r||(Le(e[d])!=t&&te(e,d),0))},Te=(t,s)=>(!e||xt(A,s)||lt(s))&&as(t,((e,t)=>xe(s,t,e)),(()=>lt(s))),xe=(e,t,s,l)=>as(l?s:qe(s,e,t),((l,a)=>q(Se(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>lt(e,t))),Se=(t,s,l,a)=>e?q(Et(Et(A,t),l),(e=>Le(a)!=e[i]?lt(t,s,l,a,e[d]):a),(()=>lt(t,s,l,a))):R(Le(a))?lt(t,s,l,a):a,Ve=(e,t)=>as(t?e:Ne(e),((t,s)=>q(Re(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>at())),Re=(e,s)=>t?q(Et(J,e),(t=>Le(s)!=t[i]?at(e,s,t[d]):s),(()=>at(e,s))):R(Le(s))?at(e,s):s,qe=(e,t,s)=>(q(Et(F,t),(([l,a])=>{qt(l,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(a,(l=>{ee(e,l)||lt(t,s,l)}))})),e),Ne=e=>(t&&(qt(P,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(H,(t=>{ee(e,t)||at(t)}))),e),ze=e=>At(A,e,((e,t,s)=>{const l=Lt(),a=Ut();At(Ot(A,t,Lt),s,((e,t,s)=>{$t(e,t,s),q(s[d],(e=>$t(l,t,e)),(()=>Xt(a,t)))})),$t(F,t,[l,a])}),((e,t)=>{$t(A,t),$t(F,t)})),$e=e=>At(J,e,((e,t,s)=>{$t(J,t,s),q(s[d],(e=>$t(P,t,e)),(()=>Xt(H,t)))}),((e,t)=>{$t(J,t),$t(P,t),Nt(H,t)})),Oe=e=>le(e)?us():Kt(e),Ae=e=>At(G,e,((e,t,s)=>Fe(t,s)),((e,t)=>Ge(t))),Fe=(e,t)=>At(Ot(G,e,(()=>(Ye(e,1),$t(B,e,Zt()),$t(j,e,Lt()),Lt()))),t,((t,s,l)=>Je(e,t,s,l)),((t,s)=>Ke(e,t,s))),Je=(e,t,s,l,a)=>At(Ot(t,s,(()=>(Ze(e,s,1),Lt()))),l,((t,l,a)=>Pe(e,s,t,l,a)),((l,n)=>Ue(e,t,s,l,n,a))),Pe=(e,t,s,l,a)=>{xt(s,l)||_e(e,t,l,1);const n=Et(s,l);a!==n&&(et(e,t,l,n,a),$t(s,l,a))},He=(e,t,s,l,a)=>q(Et(t,s),(t=>Pe(e,s,t,l,a)),(()=>Je(e,t,s,qe({[l]:a},e,s)))),Be=e=>le(e)?ms():Yt(e),De=e=>At(K,e,((e,t,s)=>Qe(t,s)),((e,t)=>Xe(t))),Qe=(e,t)=>{xt(K,e)||tt(e,1);const s=Et(K,e);t!==s&&(st(e,s,t),$t(K,e,t))},je=(e,t)=>{const[s]=Et(B,e),l=s(t);return xt(Et(G,e),l)?je(e,t):l},We=e=>Et(G,e)??Fe(e,{}),Ge=e=>Fe(e,{}),Ke=(e,t,s)=>{const[,l]=Et(B,e);l(s),Je(e,t,s,{},!0)},Ue=(e,t,s,l,a,n)=>{const r=Et(Et(F,e)?.[0],a);if(!R(r)&&!n)return Pe(e,s,l,a,r);const o=t=>{et(e,s,t,Et(l,t)),_e(e,s,t,-1),$t(l,t)};R(r)?o(a):zt(l,o),St(l)&&(Ze(e,s,-1),St($t(t,s))&&(Ye(e,-1),$t(G,e),$t(B,e),$t(j,e)))},Xe=e=>{const t=Et(P,e);if(!R(t))return Qe(e,t);st(e,Et(K,e)),tt(e,-1),$t(K,e)},Ye=(e,t)=>ns(o,e,t),Ze=(e,t,s)=>ns(Ot(k,e,Lt),t,s)&&$t(v,e,Ot(v,e,(()=>0))+s),_e=(e,t,s,l)=>{const a=Et(j,e),n=Et(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ns(Ot(u,e,Lt),s,l),$t(a,s,n!=-l?n+l:null),ns(Ot(Ot(x,e,Lt),t,Lt),s,l)},et=(e,t,s,l,a)=>Ot(Ot(Ot(S,e,Lt),t,Lt),s,(()=>[l,0]))[1]=a,tt=(e,t)=>ns(V,e,t),st=(e,t,s)=>Ot(M,e,(()=>[t,0]))[1]=s,lt=(e,t,s,l,a)=>(W(Ot(Ot(Ot($,e,Lt),t,Lt),s,(()=>[])),l),a),at=(e,t,s)=>(W(Ot(O,e,(()=>[])),t),s),nt=(e,t,s)=>q(Et(Et(Et(S,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Vt(e,t,s))])),rt=e=>q(Et(M,e),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Gt(e))])),ot=e=>St($)||St(he[e])?0:qt(e?Dt($):$,((t,s)=>qt(t,((t,l)=>qt(t,((t,a)=>ye(he[e],[s,l,a],t))))))),it=e=>St(O)||St(me[e])?0:qt(e?Ht(O):O,((t,s)=>ye(me[e],[s],t))),dt=(e,t,s)=>{if(!St(t))return ye(e,s,(()=>Ft(t))),1},ut=e=>{const t=St(ie[e]),s=St(ue[e])&&St(_[e])&&St(re[e])&&St(oe[e])&&t&&St(X[e]),l=St(ce[e])&&St(de[e])&&St(Z[e])&&St(U[e]);if(!s||!l){const a=e?[Ht(o),Bt(u),Ht(v),Bt(k),Dt(x),Dt(S)]:[o,u,v,k,x,S];if(!s){dt(X[e],a[0]),qt(a[1],((t,s)=>dt(_[e],t,[s]))),qt(a[2],((t,s)=>{0!=t&&ye(re[e],[s],It(s))}));const s=Ut();qt(a[3],((l,a)=>{dt(oe[e],l,[a])&&!t&&(ye(ie[e],[a,null]),Xt(s,a))})),t||qt(a[5],((t,l)=>{if(!xt(s,l)){const s=Ut();qt(t,(e=>qt(e,(([t,l],a)=>l!==t?Xt(s,a):Nt(e,a))))),qt(s,(t=>ye(ie[e],[l,t])))}})),qt(a[4],((t,s)=>qt(t,((t,l)=>dt(ue[e],t,[s,l])))))}if(!l){let t;qt(a[5],((s,l)=>{let a;qt(s,((s,n)=>{let r;qt(s,(([s,o],i)=>{o!==s&&(ye(ce[e],[l,n,i],o,s,nt),t=a=r=1)})),r&&ye(de[e],[l,n],nt)})),a&&ye(Z[e],[l],nt)})),t&&ye(U[e],void 0,nt)}}},ct=e=>{const t=St(ge[e]),s=St(pe[e])&&St(be[e]);if(!t||!s){const l=e?[Ht(V),Ht(M)]:[V,M];if(t||dt(ge[e],l[0]),!s){let t;qt(l[1],(([s,l],a)=>{l!==s&&(ye(pe[e],[a],l,s,rt),t=1)})),t&&ye(be[e],void 0,rt)}}},ht=(e,...t)=>(ps((()=>e(...Q(t,T)))),fs),mt=()=>[Ft(S,((e,t)=>-1===Et(o,t)?null:Ft(e,((e,s)=>-1===Et(Et(k,t),s)?null:Ft(e,(([,e])=>e??null),((e,t)=>ls(t)))),le)),le),Ft(M,(([,e])=>e??null),((e,t)=>ls(t)))],bt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Pt(S,ss,ls),invalidCells:Pt($),changedValues:Ft(M,ss,ls),invalidValues:Ft(O),changedTableIds:Ft(o),changedRowIds:Jt(k),changedCellIds:Pt(x),changedValueIds:Ft(V)}),gt=()=>Pt(G),pt=()=>Mt(G),It=e=>Ct(Et(G,T(e))),wt=e=>Mt(Et(G,T(e))),ft=(e,t,s,l=0,a)=>{return Q(E((r=Et(G,T(e)),o=(e,s)=>[R(t)?s:Et(e,T(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),Q([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(n)),l,R(a)?a:l+a),(([,e])=>e));var n,r,o},yt=(e,t)=>Mt(Et(Et(G,T(e)),T(t))),Vt=(e,t,s)=>Et(Et(Et(G,T(e)),T(t)),T(s)),jt=()=>Ft(K),Wt=()=>Mt(K),Gt=e=>Et(K,T(e)),Kt=e=>ht((()=>(e=>as(e,Te,lt))(e)?Ae(e):0)),Yt=e=>ht((()=>Ve(e)?De(e):0)),os=e=>{try{Oe(ne(e))}catch{}return fs},is=t=>ht((()=>{if((e=as(t,(e=>as(e,ke))))&&(ze(t),!St(G))){const e=gt();us(),Kt(e)}})),ds=e=>ht((()=>{if(t=(e=>as(e,ke))(e)){const s=jt();gs(),ms(),t=!0,$e(e),Yt(s)}})),us=()=>ht((()=>Ae({}))),cs=e=>ht((e=>xt(G,e)?Ge(e):0),e),hs=(e,t)=>ht(((e,t)=>q(Et(G,e),(s=>xt(s,t)?Ke(e,s,t):0))),e,t),ms=()=>ht((()=>De({}))),bs=()=>ht((()=>{ze({}),e=!1})),gs=()=>ht((()=>{$e({}),t=!1})),ps=(e,t)=>{if(-1!=n){Is();const s=e();return ws(t),s}},Is=()=>(-1!=n&&n++,1==n&&ye(Ie,void 0,mt,bt),fs),ws=e=>(n>0&&(n--,0==n&&(s=!St(S),a=!St(M),n=1,ot(1),s&&ut(1),it(1),a&&ct(1),e?.(mt,bt)&&(qt(S,((e,t)=>qt(e,((e,s)=>qt(e,(([e],l)=>Me(fs,t,s,l,e))))))),qt(M,(([e],t)=>Ee(fs,t,e))),s=a=!1),ye(we[0],void 0,mt,bt),n=-1,ot(0),s&&ut(0),it(0),a&&ct(0),ye(we[1],void 0,mt,bt),n=0,s=a=!1,D([o,u,v,k,x,S,$,V,M,O],Rt))),fs),fs={getContent:()=>[gt(),jt()],getTables:gt,getTableIds:pt,getTable:e=>Jt(Et(G,T(e))),getTableCellIds:e=>Mt(Et(j,T(e))),getRowCount:It,getRowIds:wt,getSortedRowIds:ft,getRow:(e,t)=>Ft(Et(Et(G,T(e)),T(t))),getCellIds:yt,getCell:Vt,getValues:jt,getValueIds:Wt,getValue:Gt,hasTables:()=>!St(G),hasTable:e=>xt(G,T(e)),hasTableCell:(e,t)=>xt(Et(j,T(e)),T(t)),hasRow:(e,t)=>xt(Et(G,T(e)),T(t)),hasCell:(e,t,s)=>xt(Et(Et(G,T(e)),T(t)),T(s)),hasValues:()=>!St(K),hasValue:e=>xt(K,T(e)),getTablesJson:()=>ae(G),getValuesJson:()=>ae(K),getJson:()=>ae([G,K]),getTablesSchemaJson:()=>ae(A),getValuesSchemaJson:()=>ae(J),getSchemaJson:()=>ae([A,J]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(le(e)?us:Kt)(e),(le(t)?ms:Yt)(t)})),setTables:Kt,setTable:(e,t)=>ht((e=>Te(t,e)?Fe(e,t):0),e),setRow:(e,t,s)=>ht(((e,t)=>xe(e,t,s)?Je(e,We(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ps((()=>{let l;return xe(e,l,t)&&(e=T(e),Je(e,We(e),l=je(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>ht(((e,t)=>{if(xe(e,t,s,1)){const l=We(e);se(s,((s,a)=>He(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>ht(((e,t,s)=>q(Se(e,t,s,L(l)?l(Vt(e,t,s)):l),(l=>He(e,We(e),t,s,l)))),e,t,s),setValues:Yt,setPartialValues:e=>ht((()=>Ve(e,1)?se(e,((e,t)=>Qe(t,e))):0)),setValue:(e,t)=>ht((e=>q(Re(e,L(t)?t(Gt(e)):t),(t=>Qe(e,t)))),e),setTransactionChanges:e=>ht((()=>{se(e[0],((e,t)=>R(e)?cs(t):se(e,((e,s)=>R(e)?hs(t,s):se(e,((e,l)=>Me(fs,t,s,l,e))))))),se(e[1],((e,t)=>Ee(fs,t,e)))})),setTablesJson:os,setValuesJson:e=>{try{Be(ne(e))}catch{}return fs},setJson:e=>ht((()=>{try{const[t,s]=ne(e);Oe(t),Be(s)}catch{os(e)}})),setTablesSchema:is,setValuesSchema:ds,setSchema:(e,t)=>ht((()=>{is(e),ds(t)})),delTables:us,delTable:cs,delRow:hs,delCell:(e,t,s,l)=>ht(((e,t,s)=>q(Et(G,e),(a=>q(Et(a,t),(n=>xt(n,s)?Ue(e,a,t,n,s,l):0))))),e,t,s),delValues:ms,delValue:e=>ht((e=>xt(K,e)?Xe(e):0),e),delTablesSchema:bs,delValuesSchema:gs,delSchema:()=>ht((()=>{bs(),gs()})),transaction:ps,startTransaction:Is,finishTransaction:ws,forEachTable:e=>qt(G,((t,s)=>e(s,(e=>qt(t,((t,s)=>e(s,(e=>zt(t,e))))))))),forEachTableCell:(e,t)=>zt(Et(j,T(e)),t),forEachRow:(e,t)=>qt(Et(G,T(e)),((e,s)=>t(s,(t=>zt(e,t))))),forEachCell:(e,t,s)=>zt(Et(Et(G,T(e)),T(t)),s),forEachValue:e=>zt(K,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=ft(e,t,s,l,a);return fe((()=>{const r=ft(e,t,s,l,a);var i,d,u;d=o,z(i=r)===z(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(o=r,n(fs,e,t,s,l,a,o))}),ie[r?1:0],[e,t],[pt])},addStartTransactionListener:e=>fe(e,Ie),addWillFinishTransactionListener:e=>fe(e,we[0]),addDidFinishTransactionListener:e=>fe(e,we[1]),callListener:e=>(ve(e),fs),delListener:e=>(Ce(e),fs),getListenerStats:()=>({tables:es(U),tableIds:es(X),tableCellIds:es(_),table:es(Z),rowCount:es(re),rowIds:es(oe),sortedRowIds:es(ie),row:es(de,kt),cellIds:es(ue,kt),cell:es(ce,Tt),invalidCell:es(he,Tt),values:es(be),valueIds:es(ge),value:es(pe),invalidValue:es(me),transaction:vt(Ie)+es(we)}),createStore:rs,addListener:fe,callListeners:ye};return se({[h]:[0,U],[m]:[0,X],[c]:[1,Z,[pt]],[c+w]:[1,_,[pt]],[g]:[1,re,[pt]],[p]:[1,oe,[pt]],[b]:[2,de,[pt,wt]],[w]:[2,ue,[pt,wt]],[I]:[3,ce,[pt,wt,yt],e=>_t(Vt(...e))],InvalidCell:[3,he],[y]:[0,be],[C]:[0,ge],[f]:[1,pe,[Wt],e=>_t(Gt(e[0]))],InvalidValue:[1,me]},(([e,t,s,l],a)=>{fs["add"+a+"Listener"]=(...a)=>fe(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),Y(fs)},os=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(rs),a=ie.indexOf(e);return t.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[r,o]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Ot(jt,i,(()=>0)),Ot(Wt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();le(s)&&le(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(W(Et(Wt,i),...e),await(async()=>{if(!Et(jt,i)){for($t(jt,i,1);!R(u=G(Et(Wt,i)));)try{await u()}catch(e){n?.(e)}$t(jt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return r&&(I[r]=()=>o),Y(I)})(e,(async()=>ne(s.getItem(t))),(async e=>s.setItem(t,ae(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ne(l.newValue)))};return Kt.addEventListener(Gt,l),l}),(e=>Kt.removeEventListener(Gt,e)),l,["getStorageName",t]))(e,re,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),A(O,null,A("aside",{id:re},A(qe,{s:l}),A(ft,{s:l})),A("style",null,Re))};exports.EditableCellView=tt,exports.EditableValueView=st,exports.RelationshipInHtmlTable=_e,exports.ResultSortedTableInHtmlTable=et,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>A(We,{...a,params:He(je(t.useResultTableCellIds(e,s),l,t.ResultCellView),De(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=Ze,exports.SortedTableInHtmlTable=Xe,exports.SortedTablePaginator=lt,exports.StoreInspector=e=>A(os,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>A(We,{...n,params:He(je(t.useTableCellIds(e,s),a,l?tt:t.CellView),Be(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=Ye;
1
+ "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),r=s(0),o=s(s),i="type",d="default",u="Ids",c="Table",h=c+"s",m=c+u,b="Row",g=b+"Count",p=b+u,I="Cell",w=I+u,f="Value",y=f+"s",C=f+u,v="currentTarget",k="value",T=e=>l+e,x=Math.floor,S=isFinite,V=e=>null==e,R=(e,t,s)=>V(e)?s?.():t(e),q=e=>e==a||e==n,N=e=>s(e)==o,L=e=>Array.isArray(e),M=(e,t,s)=>e.slice(t,s),E=e=>e.length,{PureComponent:z,Fragment:$,createElement:O,useCallback:A,useLayoutEffect:F,useRef:J,useState:P}=e,H=(e,...t)=>V(e)?{}:e(...t),B=(e,t)=>e.forEach(t),D=(e,t)=>e.map(t),Q=e=>0==E(e),j=(e,...t)=>e.push(...t),W=e=>e.shift(),G=Object,K=e=>G.getPrototypeOf(e),U=G.keys,X=G.isFrozen,Y=G.freeze,Z=e=>!V(e)&&R(K(e),(e=>e==G.prototype||V(K(e))),(()=>!0)),_=(e=[])=>G.fromEntries(e),ee=(e,t)=>!V(((e,t)=>R(e,(e=>e[t])))(e,t)),te=(e,t)=>(delete e[t],e),se=(e,t)=>D(G.entries(e),(([e,s])=>t(s,e))),le=e=>Z(e)&&0==(e=>E(U(e)))(e),ae=e=>JSON.stringify(e,((e,t)=>t instanceof Map?G.fromEntries([...t]):t)),ne=JSON.parse,re="tinybaseStoreInspector",oe="TinyBase Store Inspector",ie=["left","top","bottom","right","full"],de="state",ue="sort",ce="open",he="position",me=ce,be="editable",ge=(...e)=>ae(e),pe=(e,t)=>D(e.sort(),t),Ie=(e,s)=>[!!t.useCell(de,e,be,s),A((t=>{s.setCell(de,e,be,(e=>!e)),t.preventDefault()}),[s,e])],we="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",fe='content:url("',ye=fe+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Ce='</svg>")',ve=fe+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",ke=D([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ye+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Ce)),Te=ye+"<path d='M20 20l60 60M20 80l60-60' />"+Ce,xe=ye+`<path d='${we}' />`+Ce,Se=ye+`<path d='${we}M20 20l60 60' />`+Ce,Ve="*::-webkit-scrollbar",Re=((e,t="")=>e.join(t))(se({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Ve]:"width:0.5rem;height:0.5rem;",[Ve+"-track"]:"background:#111",[Ve+"-thumb"]:"background:#999;border:1px solid #111",[Ve+"-thumb:hover"]:"background:#fff",[Ve+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ve,..._(D(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",..._(D(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ve,"header>img:nth-of-type(6)":Te,..._(D(ke,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":xe,"details[open]>summary img.done":Se,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${re} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${re} ${t}{${e}}`:""))),qe=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!0),[],e);return t.useValue(me,e)?null:O("img",{onClick:l,title:oe,"data-position":s})},Ne=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:r})=>{const o=!!t.useCell(de,e,ce,r),i=t.useSetCellCallback(de,e,ce,(e=>e[v].open),[],r);return O("details",{open:o,onToggle:i},O("summary",null,s,a?O("img",{onClick:a,className:l?"done":"edit"}):null),n)},Le=e=>{const t=s(e);return q(t)||t==r&&S(e)?t:void 0},Me=(e,t,s,l,a)=>V(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Ee=(e,t,s)=>V(s)?e.delValue(t):e.setValue(t,s),ze=(e,t,s,l)=>e==a?t:e==r?s:l,{useCallback:$e,useMemo:Oe,useState:Ae}=e,Fe="editable",Je=(e,s)=>D(t.useTableCellIds(e,s),(t=>e+"."+t)),Pe=(e,t,s)=>{const l=$e(e,t);return s?l:void 0},He=(...e)=>Oe((()=>e),e),Be=(e,t)=>Oe((()=>({store:e,tableId:t})),[e,t]),De=(e,t)=>Oe((()=>({queries:e,queryId:t})),[e,t]),Qe=(e,t=!1,s,l=0,a,n,r,o)=>{const[[i,d,u],c]=Ae([e,t,l]),h=$e((e=>{c(e),o?.(e)}),[o]),m=Pe((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=$e((e=>h([i,d,e])),[h,i,d]),g=!0===r?lt:r;return[[i,d,u],m,Oe((()=>!1===r?null:O(g,{offset:u,limit:a,total:n,onChange:b})),[r,g,u,a,n,b])]},je=(e,t,l)=>Oe((()=>{const n=t??e;return _(se(L(n)?_(D(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),We=({className:e,headerRow:t,idColumn:s,params:[l,a,n,r,o,i]})=>O("table",{className:e},i?O("caption",null,i):null,!1===t?null:O("thead",null,O("tr",null,!1===s?null:O(Ge,{sort:r??[],label:"Id",onClick:o}),se(l,(({label:e},t)=>O(Ge,{key:t,cellId:t,label:e,sort:r??[],onClick:o}))))),O("tbody",null,D(n,(e=>O("tr",{key:e},!1===s?null:O("th",null,e),se(l,(({component:t,getComponentProps:s},l)=>O("td",{key:l},O(t,{...H(s,e,l),...a,rowId:e,cellId:l}))))))))),Ge=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>O("th",{onClick:Pe((()=>n?.(e)),[n,e],n),className:V(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},V(s)||t!=e?null:(s?"↓":"↑")+" ",a),Ke=({localRowId:s,params:[l,a,n,r,o,i,d]})=>{const u=t.useRemoteRowId(o,s,i);return O("tr",null,!1===l?null:O(e.Fragment,null,O("th",null,s),O("th",null,u)),se(a,(({component:e,getComponentProps:t},l)=>{const[a,o]=l.split(".",2),i=a===n?s:a===r?u:null;return V(i)?null:O("td",{key:l},O(e,{...H(t,i,o),store:d,tableId:a,rowId:i,cellId:o}))})))},Ue=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:o=!0})=>{const[i,d]=Ae(),[u,c]=Ae(),[h,m]=Ae(),[b,g]=Ae(),[p,I]=Ae();u!==e&&(d(Le(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=$e(((e,s)=>{s(e),c(e),t(e)}),[t]),f=$e((()=>{if(!l?.()){const e=ze(i,r,n,a),s=ze(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return O("div",{className:s},o?O("button",{className:i,onClick:f},i):null,ze(i,O("input",{key:i,value:h,onChange:$e((e=>w(e[v][k]+"",m)),[w])}),O("input",{key:i,type:"number",value:b,onChange:$e((e=>w(Number(e[v][k]||0),g)),[w])}),O("input",{key:i,type:"checkbox",checked:p,onChange:$e((e=>w(!!e[v].checked,I)),[w])})))},Xe=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:r,editable:o,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Qe(s,l,i,a,n,t.useRowCount(e,r),d,u);return O(We,{...h,params:He(je(t.useTableCellIds(e,r),c,o?tt:t.CellView),Be(r,e),t.useSortedRowIds(e,...m,n,r),m,b,g)})},Ye=({store:e,editable:s=!1,valueComponent:l=(s?st:t.ValueView),getValueComponentProps:a,className:n,headerRow:r,idColumn:o})=>O("table",{className:n},!1===r?null:O("thead",null,O("tr",null,!1===o?null:O("th",null,"Id"),O("th",null,f))),O("tbody",null,D(t.useValueIds(e),(t=>O("tr",{key:t},!1===o?null:O("th",null,t),O("td",null,O(l,{...H(a,t),valueId:t,store:e}))))))),Ze=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...r})=>{const[o,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return O(We,{...r,params:He(je(t.useTableCellIds(d,i),n,a?tt:t.CellView),Be(i,d),t.useSliceRowIds(e,s,o))})},_e=({relationshipId:s,relationships:l,editable:a,customCells:n,className:r,headerRow:o,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(l),s),m=je([...Je(c,u),...Je(h,u)],n,a?tt:t.CellView),b=He(i,m,c,h,s,d,u);return O("table",{className:r},!1===o?null:O("thead",null,O("tr",null,!1===i?null:O(e.Fragment,null,O("th",null,c,".Id"),O("th",null,h,".Id")),se(m,(({label:e},t)=>O("th",{key:t},e))))),O("tbody",null,D(t.useRowIds(c,u),(e=>O(Ke,{key:e,localRowId:e,params:b})))))},et=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:r,sortOnClick:o,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Qe(s,l,o,a,n,t.useResultRowCount(e,r),i,u);return O(We,{...c,params:He(je(t.useResultTableCellIds(e,r),d,t.ResultCellView),De(r,e),t.useResultSortedRowIds(e,...h,n,r),h,m,b)})},tt=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:r})=>O(Ue,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Fe+I,showType:r,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),st=({valueId:e,store:s,className:l,showType:a})=>O(Ue,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Fe+f,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),lt=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:r=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const o=Pe((()=>t(l-a)),[t,l,a],l>0),i=Pe((()=>t(l+a)),[t,l,a],l+a<s);return O(e.Fragment,null,s>a&&O(e.Fragment,null,O("button",{className:"previous",disabled:0==l,onClick:o},"←"),O("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?r:n)},at=({indexes:e,indexesId:s,indexId:l,s:a})=>O(Ne,{uniqueId:ge("i",s,l),summary:"Index: "+l,s:a},D(t.useSliceIds(l,e),(t=>O(nt,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),nt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=ge("i",t,s,l),[r,o]=Ie(n,a);return O(Ne,{uniqueId:n,summary:"Slice: "+l,editable:r,handleEditable:o,s:a},O(Ze,{sliceId:l,indexId:s,indexes:e,editable:r}))},rt=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return V(l)?null:O(Ne,{uniqueId:ge("i",e),summary:"Indexes: "+(e??d),s:s},Q(a)?"No indexes defined":pe(a,(t=>O(at,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},ot=({metrics:e,metricId:s})=>O("tr",null,O("th",null,s),O("td",null,e?.getTableId(s)),O("td",null,t.useMetric(s,e))),it=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return V(l)?null:O(Ne,{uniqueId:ge("m",e),summary:"Metrics: "+(e??d),s:s},Q(a)?"No metrics defined":O("table",null,O("thead",null,O("th",null,"Metric Id"),O("th",null,"Table Id"),O("th",null,"Metric")),O("tbody",null,D(a,(e=>O(ot,{metrics:l,metricId:e,key:e}))))))},dt=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=ge("q",s,l),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a);return O(Ne,{uniqueId:n,summary:"Query: "+l,s:a},O(et,{queryId:l,queries:e,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ut=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return V(l)?null:O(Ne,{uniqueId:ge("q",e),summary:"Queries: "+(e??d),s:s},Q(a)?"No queries defined":pe(a,(t=>O(dt,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},ct=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=ge("r",t,s),[n,r]=Ie(a,l);return O(Ne,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:r,s:l},O(_e,{relationshipId:s,relationships:e,editable:n}))},ht=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return V(l)?null:O(Ne,{uniqueId:ge("r",e),summary:"Relationships: "+(e??d),s:s},Q(a)?"No relationships defined":pe(a,(t=>O(ct,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},mt=({tableId:e,store:s,storeId:l,s:a})=>{const n=ge("t",l,e),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a),[u,h]=Ie(n,a);return O(Ne,{uniqueId:n,summary:c+": "+e,editable:u,handleEditable:h,s:a},O(Xe,{tableId:e,store:s,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},bt=({store:e,storeId:s,s:l})=>{const a=ge("v",s),[n,r]=Ie(a,l);return Q(t.useValueIds(e))?null:O(Ne,{uniqueId:a,summary:y,editable:n,handleEditable:r,s:l},O(Ye,{store:e,editable:n}))},gt=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return V(l)?null:O(Ne,{uniqueId:ge("s",e),summary:"Store: "+(e??d),s:s},O(bt,{storeId:e,store:l,s:s}),pe(a,(t=>O(mt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},pt=({s:e})=>{const s=J(null),l=J(0),[a,n]=P(!1),{scrollLeft:r,scrollTop:o}=t.useValues(e);F((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=x(r)+e.clientWidth&&e.scrollHeight>=x(o)+e.clientHeight&&e.scrollTo(r,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,r,o]);const i=A((t=>{const{scrollLeft:s,scrollTop:a}=t[v];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return V(d)&&Q(u)&&V(c)&&Q(h)&&V(m)&&Q(b)&&V(g)&&Q(p)&&V(I)&&Q(w)?O("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):O("article",{ref:s,onScroll:i},O(gt,{s:e}),D(u,(t=>O(gt,{storeId:t,s:e,key:t}))),O(it,{s:e}),D(h,(t=>O(it,{metricsId:t,s:e,key:t}))),O(rt,{s:e}),D(b,(t=>O(rt,{indexesId:t,s:e,key:t}))),O(ht,{s:e}),D(p,(t=>O(ht,{relationshipsId:t,s:e,key:t}))),O(ut,{s:e}),D(w,(t=>O(ut,{queriesId:t,s:e,key:t}))))};class It extends z{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?O("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const wt=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!1),[],e),a=t.useSetValueCallback(he,(e=>Number(e[v].dataset.id)),[],e);return O("header",null,O("img",{title:oe}),O("span",null,oe),D(ie,((e,t)=>t==s?null:O("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),O("img",{onClick:l,title:"Close"}))},ft=({s:e})=>{const s=t.useValue(he,e)??1;return t.useValue(me,e)?O("main",{"data-position":s},O(wt,{s:e}),O(It,null,O(pt,{s:e}))):null},yt=e=>t=>{return s=(t,s)=>t+e(s),Vt(t).reduce(s,0);var s},Ct=e=>e?.size??0,vt=yt(Ct),kt=yt(vt),Tt=yt(kt),xt=(e,t)=>e?.has(t)??!1,St=e=>V(e)||0==Ct(e),Vt=e=>[...e?.values()??[]],Rt=e=>e.clear(),qt=(e,t)=>e?.forEach(t),Nt=(e,t)=>e?.delete(t),Lt=e=>new Map(e),Mt=e=>[...e?.keys()??[]],Et=(e,t)=>e?.get(t),zt=(e,t)=>qt(e,((e,s)=>t(s,e))),$t=(e,t,s)=>V(s)?(Nt(e,t),e):e?.set(t,s),Ot=(e,t,s)=>(xt(e,t)||$t(e,t,s()),Et(e,t)),At=(e,t,s,l=$t)=>(se(t,((t,l)=>s(e,l,t))),zt(e,(s=>ee(t,s)?0:l(e,s))),e),Ft=(e,t,s)=>{const l={};return qt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Jt=(e,t,s)=>Ft(e,(e=>Ft(e,t,s)),le),Pt=(e,t,s)=>Ft(e,(e=>Jt(e,t,s)),le),Ht=(e,t)=>{const s=Lt();return qt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Bt=e=>Ht(e,Ht),Dt=e=>Ht(e,Bt),Qt=(e,t,s,l,a=0)=>R((s?Ot:Et)(e,t[a],a>E(t)-2?s:Lt),(n=>{if(a>E(t)-2)return l?.(n)&&$t(e,t[a]),n;const r=Qt(n,t,s,l,a+1);return St(n)&&$t(e,t[a]),r})),jt=Lt(),Wt=Lt(),Gt="storage",Kt=globalThis.window,Ut=e=>new Set(L(e)||V(e)?e:[e]),Xt=(e,t)=>e?.add(t),Yt=/^\d+$/,Zt=()=>{const e=[];let t=0;return[s=>(s?W(e):null)??l+t++,t=>{Yt.test(t)&&E(e)<1e3&&j(e,t)}]},_t=e=>[e,e],es=(e,t=vt)=>t(e[0])+t(e[1]),ts=()=>[Lt(),Lt()],ss=e=>[...e],ls=([e,t])=>e===t,as=(e,t,s)=>V(e)||!Z(e)||le(e)||X(e)?(s?.(),!1):(se(e,((s,l)=>{t(s,l)||te(e,l)})),!le(e)),ns=(e,t,s)=>$t(e,t,Et(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,a=!1,n=0;const o=Lt(),u=Lt(),v=Lt(),k=Lt(),x=Lt(),S=Lt(),L=Lt(),z=Lt(),$=Lt(),O=Lt(),A=Lt(),F=Lt(),J=Lt(),P=Lt(),H=Ut(),Q=Lt(),W=Lt(),G=Lt(),K=Lt(),U=ts(),X=ts(),Z=ts(),_=ts(),re=ts(),oe=ts(),ie=ts(),de=ts(),ue=ts(),ce=ts(),he=ts(),me=ts(),be=ts(),ge=ts(),pe=ts(),Ie=Lt(),we=ts(),[fe,ye,Ce,ve]=(e=>{let t;const[s,a]=Zt(),n=Lt();return[(e,a,r,o=[],i=(()=>[]))=>{t??=fs;const d=s(1);return $t(n,d,[e,a,r,o,i]),Xt(Qt(a,r??[l],Ut),d),d},(e,s,...a)=>B(((e,t=[l])=>{const s=[],a=(e,l)=>l==E(t)?j(s,e):null===t[l]?qt(e,(e=>a(e,l+1))):B([t[l],null],(t=>a(Et(e,t),l+1)));return a(e,0),s})(e,s),(e=>qt(e,(e=>Et(n,e)[0](t,...s??[],...a))))),e=>R(Et(n,e),(([,t,s])=>(Qt(t,s??[l],void 0,(t=>(Nt(t,e),St(t)?1:0))),$t(n,e),a(e),s))),e=>R(Et(n,e),(([e,,s=[],l,a])=>{const n=(...r)=>{const o=E(r);o==E(s)?e(t,...r,...a(r)):V(s[o])?B(l[o]?.(...r)??[],(e=>n(...r,e))):n(...r,s[o])};n()}))]})(),ke=e=>{if(!as(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!q(t)&&t!=r||(Le(e[d])!=t&&te(e,d),0))},Te=(t,s)=>(!e||xt(A,s)||lt(s))&&as(t,((e,t)=>xe(s,t,e)),(()=>lt(s))),xe=(e,t,s,l)=>as(l?s:qe(s,e,t),((l,a)=>R(Se(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>lt(e,t))),Se=(t,s,l,a)=>e?R(Et(Et(A,t),l),(e=>Le(a)!=e[i]?lt(t,s,l,a,e[d]):a),(()=>lt(t,s,l,a))):V(Le(a))?lt(t,s,l,a):a,Ve=(e,t)=>as(t?e:Ne(e),((t,s)=>R(Re(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>at())),Re=(e,s)=>t?R(Et(J,e),(t=>Le(s)!=t[i]?at(e,s,t[d]):s),(()=>at(e,s))):V(Le(s))?at(e,s):s,qe=(e,t,s)=>(R(Et(F,t),(([l,a])=>{qt(l,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(a,(l=>{ee(e,l)||lt(t,s,l)}))})),e),Ne=e=>(t&&(qt(P,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(H,(t=>{ee(e,t)||at(t)}))),e),ze=e=>At(A,e,((e,t,s)=>{const l=Lt(),a=Ut();At(Ot(A,t,Lt),s,((e,t,s)=>{$t(e,t,s),R(s[d],(e=>$t(l,t,e)),(()=>Xt(a,t)))})),$t(F,t,[l,a])}),((e,t)=>{$t(A,t),$t(F,t)})),$e=e=>At(J,e,((e,t,s)=>{$t(J,t,s),R(s[d],(e=>$t(P,t,e)),(()=>Xt(H,t)))}),((e,t)=>{$t(J,t),$t(P,t),Nt(H,t)})),Oe=e=>le(e)?us():Kt(e),Ae=e=>At(G,e,((e,t,s)=>Fe(t,s)),((e,t)=>Ge(t))),Fe=(e,t)=>At(Ot(G,e,(()=>(Ye(e,1),$t(Q,e,Zt()),$t(W,e,Lt()),Lt()))),t,((t,s,l)=>Je(e,t,s,l)),((t,s)=>Ke(e,t,s))),Je=(e,t,s,l,a)=>At(Ot(t,s,(()=>(Ze(e,s,1),Lt()))),l,((t,l,a)=>Pe(e,s,t,l,a)),((l,n)=>Ue(e,t,s,l,n,a))),Pe=(e,t,s,l,a)=>{xt(s,l)||_e(e,t,l,1);const n=Et(s,l);a!==n&&(et(e,t,l,n,a),$t(s,l,a))},He=(e,t,s,l,a)=>R(Et(t,s),(t=>Pe(e,s,t,l,a)),(()=>Je(e,t,s,qe({[l]:a},e,s)))),Be=e=>le(e)?ms():Yt(e),De=e=>At(K,e,((e,t,s)=>Qe(t,s)),((e,t)=>Xe(t))),Qe=(e,t)=>{xt(K,e)||tt(e,1);const s=Et(K,e);t!==s&&(st(e,s,t),$t(K,e,t))},je=(e,t)=>{const[s]=Et(Q,e),l=s(t);return xt(Et(G,e),l)?je(e,t):l},We=e=>Et(G,e)??Fe(e,{}),Ge=e=>Fe(e,{}),Ke=(e,t,s)=>{const[,l]=Et(Q,e);l(s),Je(e,t,s,{},!0)},Ue=(e,t,s,l,a,n)=>{const r=Et(Et(F,e)?.[0],a);if(!V(r)&&!n)return Pe(e,s,l,a,r);const o=t=>{et(e,s,t,Et(l,t)),_e(e,s,t,-1),$t(l,t)};V(r)?o(a):zt(l,o),St(l)&&(Ze(e,s,-1),St($t(t,s))&&(Ye(e,-1),$t(G,e),$t(Q,e),$t(W,e)))},Xe=e=>{const t=Et(P,e);if(!V(t))return Qe(e,t);st(e,Et(K,e)),tt(e,-1),$t(K,e)},Ye=(e,t)=>ns(o,e,t),Ze=(e,t,s)=>ns(Ot(k,e,Lt),t,s)&&$t(v,e,Ot(v,e,(()=>0))+s),_e=(e,t,s,l)=>{const a=Et(W,e),n=Et(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ns(Ot(u,e,Lt),s,l),$t(a,s,n!=-l?n+l:null),ns(Ot(Ot(x,e,Lt),t,Lt),s,l)},et=(e,t,s,l,a)=>Ot(Ot(Ot(S,e,Lt),t,Lt),s,(()=>[l,0]))[1]=a,tt=(e,t)=>ns(L,e,t),st=(e,t,s)=>Ot(z,e,(()=>[t,0]))[1]=s,lt=(e,t,s,l,a)=>(j(Ot(Ot(Ot($,e,Lt),t,Lt),s,(()=>[])),l),a),at=(e,t,s)=>(j(Ot(O,e,(()=>[])),t),s),nt=(e,t,s)=>R(Et(Et(Et(S,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Vt(e,t,s))])),rt=e=>R(Et(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Gt(e))])),ot=e=>St($)||St(he[e])?0:qt(e?Dt($):$,((t,s)=>qt(t,((t,l)=>qt(t,((t,a)=>ye(he[e],[s,l,a],t))))))),it=e=>St(O)||St(me[e])?0:qt(e?Ht(O):O,((t,s)=>ye(me[e],[s],t))),dt=(e,t,s)=>{if(!St(t))return ye(e,s,(()=>Ft(t))),1},ut=e=>{const t=St(ie[e]),s=St(ue[e])&&St(_[e])&&St(re[e])&&St(oe[e])&&t&&St(X[e]),l=St(ce[e])&&St(de[e])&&St(Z[e])&&St(U[e]);if(!s||!l){const a=e?[Ht(o),Bt(u),Ht(v),Bt(k),Dt(x),Dt(S)]:[o,u,v,k,x,S];if(!s){dt(X[e],a[0]),qt(a[1],((t,s)=>dt(_[e],t,[s]))),qt(a[2],((t,s)=>{0!=t&&ye(re[e],[s],It(s))}));const s=Ut();qt(a[3],((l,a)=>{dt(oe[e],l,[a])&&!t&&(ye(ie[e],[a,null]),Xt(s,a))})),t||qt(a[5],((t,l)=>{if(!xt(s,l)){const s=Ut();qt(t,(e=>qt(e,(([t,l],a)=>l!==t?Xt(s,a):Nt(e,a))))),qt(s,(t=>ye(ie[e],[l,t])))}})),qt(a[4],((t,s)=>qt(t,((t,l)=>dt(ue[e],t,[s,l])))))}if(!l){let t;qt(a[5],((s,l)=>{let a;qt(s,((s,n)=>{let r;qt(s,(([s,o],i)=>{o!==s&&(ye(ce[e],[l,n,i],o,s,nt),t=a=r=1)})),r&&ye(de[e],[l,n],nt)})),a&&ye(Z[e],[l],nt)})),t&&ye(U[e],void 0,nt)}}},ct=e=>{const t=St(ge[e]),s=St(pe[e])&&St(be[e]);if(!t||!s){const l=e?[Ht(L),Ht(z)]:[L,z];if(t||dt(ge[e],l[0]),!s){let t;qt(l[1],(([s,l],a)=>{l!==s&&(ye(pe[e],[a],l,s,rt),t=1)})),t&&ye(be[e],void 0,rt)}}},ht=(e,...t)=>(ps((()=>e(...D(t,T)))),fs),mt=()=>[Ft(S,((e,t)=>-1===Et(o,t)?null:Ft(e,((e,s)=>-1===Et(Et(k,t),s)?null:Ft(e,(([,e])=>e??null),((e,t)=>ls(t)))),le)),le),Ft(z,(([,e])=>e??null),((e,t)=>ls(t)))],bt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Pt(S,ss,ls),invalidCells:Pt($),changedValues:Ft(z,ss,ls),invalidValues:Ft(O),changedTableIds:Ft(o),changedRowIds:Jt(k),changedCellIds:Pt(x),changedValueIds:Ft(L)}),gt=()=>Pt(G),pt=()=>Mt(G),It=e=>Ct(Et(G,T(e))),wt=e=>Mt(Et(G,T(e))),ft=(e,t,s,l=0,a)=>{return D(M((r=Et(G,T(e)),o=(e,s)=>[V(t)?s:Et(e,T(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),D([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(n)),l,V(a)?a:l+a),(([,e])=>e));var n,r,o},yt=(e,t)=>Mt(Et(Et(G,T(e)),T(t))),Vt=(e,t,s)=>Et(Et(Et(G,T(e)),T(t)),T(s)),jt=()=>Ft(K),Wt=()=>Mt(K),Gt=e=>Et(K,T(e)),Kt=e=>ht((()=>(e=>as(e,Te,lt))(e)?Ae(e):0)),Yt=e=>ht((()=>Ve(e)?De(e):0)),os=e=>{try{Oe(ne(e))}catch{}return fs},is=t=>ht((()=>{if((e=as(t,(e=>as(e,ke))))&&(ze(t),!St(G))){const e=gt();us(),Kt(e)}})),ds=e=>ht((()=>{if(t=(e=>as(e,ke))(e)){const s=jt();gs(),ms(),t=!0,$e(e),Yt(s)}})),us=()=>ht((()=>Ae({}))),cs=e=>ht((e=>xt(G,e)?Ge(e):0),e),hs=(e,t)=>ht(((e,t)=>R(Et(G,e),(s=>xt(s,t)?Ke(e,s,t):0))),e,t),ms=()=>ht((()=>De({}))),bs=()=>ht((()=>{ze({}),e=!1})),gs=()=>ht((()=>{$e({}),t=!1})),ps=(e,t)=>{if(-1!=n){Is();const s=e();return ws(t),s}},Is=()=>(-1!=n&&n++,1==n&&ye(Ie,void 0,mt,bt),fs),ws=e=>(n>0&&(n--,0==n&&(s=!St(S),a=!St(z),n=1,ot(1),s&&ut(1),it(1),a&&ct(1),e?.(mt,bt)&&(qt(S,((e,t)=>qt(e,((e,s)=>qt(e,(([e],l)=>Me(fs,t,s,l,e))))))),qt(z,(([e],t)=>Ee(fs,t,e))),s=a=!1),ye(we[0],void 0,mt,bt),n=-1,ot(0),s&&ut(0),it(0),a&&ct(0),ye(we[1],void 0,mt,bt),n=0,s=a=!1,B([o,u,v,k,x,S,$,L,z,O],Rt))),fs),fs={getContent:()=>[gt(),jt()],getTables:gt,getTableIds:pt,getTable:e=>Jt(Et(G,T(e))),getTableCellIds:e=>Mt(Et(W,T(e))),getRowCount:It,getRowIds:wt,getSortedRowIds:ft,getRow:(e,t)=>Ft(Et(Et(G,T(e)),T(t))),getCellIds:yt,getCell:Vt,getValues:jt,getValueIds:Wt,getValue:Gt,hasTables:()=>!St(G),hasTable:e=>xt(G,T(e)),hasTableCell:(e,t)=>xt(Et(W,T(e)),T(t)),hasRow:(e,t)=>xt(Et(G,T(e)),T(t)),hasCell:(e,t,s)=>xt(Et(Et(G,T(e)),T(t)),T(s)),hasValues:()=>!St(K),hasValue:e=>xt(K,T(e)),getTablesJson:()=>ae(G),getValuesJson:()=>ae(K),getJson:()=>ae([G,K]),getTablesSchemaJson:()=>ae(A),getValuesSchemaJson:()=>ae(J),getSchemaJson:()=>ae([A,J]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(le(e)?us:Kt)(e),(le(t)?ms:Yt)(t)})),setTables:Kt,setTable:(e,t)=>ht((e=>Te(t,e)?Fe(e,t):0),e),setRow:(e,t,s)=>ht(((e,t)=>xe(e,t,s)?Je(e,We(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ps((()=>{let l;return xe(e,l,t)&&(e=T(e),Je(e,We(e),l=je(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>ht(((e,t)=>{if(xe(e,t,s,1)){const l=We(e);se(s,((s,a)=>He(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>ht(((e,t,s)=>R(Se(e,t,s,N(l)?l(Vt(e,t,s)):l),(l=>He(e,We(e),t,s,l)))),e,t,s),setValues:Yt,setPartialValues:e=>ht((()=>Ve(e,1)?se(e,((e,t)=>Qe(t,e))):0)),setValue:(e,t)=>ht((e=>R(Re(e,N(t)?t(Gt(e)):t),(t=>Qe(e,t)))),e),setTransactionChanges:e=>ht((()=>{se(e[0],((e,t)=>V(e)?cs(t):se(e,((e,s)=>V(e)?hs(t,s):se(e,((e,l)=>Me(fs,t,s,l,e))))))),se(e[1],((e,t)=>Ee(fs,t,e)))})),setTablesJson:os,setValuesJson:e=>{try{Be(ne(e))}catch{}return fs},setJson:e=>ht((()=>{try{const[t,s]=ne(e);Oe(t),Be(s)}catch{os(e)}})),setTablesSchema:is,setValuesSchema:ds,setSchema:(e,t)=>ht((()=>{is(e),ds(t)})),delTables:us,delTable:cs,delRow:hs,delCell:(e,t,s,l)=>ht(((e,t,s)=>R(Et(G,e),(a=>R(Et(a,t),(n=>xt(n,s)?Ue(e,a,t,n,s,l):0))))),e,t,s),delValues:ms,delValue:e=>ht((e=>xt(K,e)?Xe(e):0),e),delTablesSchema:bs,delValuesSchema:gs,delSchema:()=>ht((()=>{bs(),gs()})),transaction:ps,startTransaction:Is,finishTransaction:ws,forEachTable:e=>qt(G,((t,s)=>e(s,(e=>qt(t,((t,s)=>e(s,(e=>zt(t,e))))))))),forEachTableCell:(e,t)=>zt(Et(W,T(e)),t),forEachRow:(e,t)=>qt(Et(G,T(e)),((e,s)=>t(s,(t=>zt(e,t))))),forEachCell:(e,t,s)=>zt(Et(Et(G,T(e)),T(t)),s),forEachValue:e=>zt(K,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=ft(e,t,s,l,a);return fe((()=>{const r=ft(e,t,s,l,a);var i,d,u;d=o,E(i=r)===E(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(o=r,n(fs,e,t,s,l,a,o))}),ie[r?1:0],[e,t],[pt])},addStartTransactionListener:e=>fe(e,Ie),addWillFinishTransactionListener:e=>fe(e,we[0]),addDidFinishTransactionListener:e=>fe(e,we[1]),callListener:e=>(ve(e),fs),delListener:e=>(Ce(e),fs),getListenerStats:()=>({tables:es(U),tableIds:es(X),tableCellIds:es(_),table:es(Z),rowCount:es(re),rowIds:es(oe),sortedRowIds:es(ie),row:es(de,kt),cellIds:es(ue,kt),cell:es(ce,Tt),invalidCell:es(he,Tt),values:es(be),valueIds:es(ge),value:es(pe),invalidValue:es(me),transaction:vt(Ie)+es(we)}),createStore:rs,addListener:fe,callListeners:ye};return se({[h]:[0,U],[m]:[0,X],[c]:[1,Z,[pt]],[c+w]:[1,_,[pt]],[g]:[1,re,[pt]],[p]:[1,oe,[pt]],[b]:[2,de,[pt,wt]],[w]:[2,ue,[pt,wt]],[I]:[3,ce,[pt,wt,yt],e=>_t(Vt(...e))],InvalidCell:[3,he],[y]:[0,be],[C]:[0,ge],[f]:[1,pe,[Wt],e=>_t(Gt(e[0]))],InvalidValue:[1,me]},(([e,t,s,l],a)=>{fs["add"+a+"Listener"]=(...a)=>fe(a[e],t[a[e+1]?1:0],e>0?M(a,0,e):void 0,s,l)})),Y(fs)},os=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(rs),a=ie.indexOf(e);return t.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[r,o]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Ot(jt,i,(()=>0)),Ot(Wt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();le(s)&&le(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(R(d,e.delListener),d=void 0,I),schedule:async(...e)=>(j(Et(Wt,i),...e),await(async()=>{if(!Et(jt,i)){for($t(jt,i,1);!V(u=W(Et(Wt,i)));)try{await u()}catch(e){n?.(e)}$t(jt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return r&&(I[r]=()=>o),Y(I)})(e,(async()=>ne(s.getItem(t))),(async e=>s.setItem(t,ae(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ne(l.newValue)))};return Kt.addEventListener(Gt,l),l}),(e=>Kt.removeEventListener(Gt,e)),l,["getStorageName",t]))(e,re,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),O($,null,O("aside",{id:re},O(qe,{s:l}),O(ft,{s:l})),O("style",null,Re))};exports.EditableCellView=tt,exports.EditableValueView=st,exports.RelationshipInHtmlTable=_e,exports.ResultSortedTableInHtmlTable=et,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>O(We,{...a,params:He(je(t.useResultTableCellIds(e,s),l,t.ResultCellView),De(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=Ze,exports.SortedTableInHtmlTable=Xe,exports.SortedTablePaginator=lt,exports.StoreInspector=e=>O(os,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>O(We,{...n,params:He(je(t.useTableCellIds(e,s),a,l?tt:t.CellView),Be(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=Ye;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Listener",u="Result",d="Ids",l="Table",n=l+"s",p=l+d,i="Row",a=i+"Count",I=i+d,x="Sorted"+i+d,c="Cell",C=c+d,w="Value",b=w+"s",R=w+d,k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),h=e=>s(e)==o,L=()=>{},m=(e,s)=>e.map(s),y=Object.keys,{createContext:S,useContext:V}=e,T=S([]),v=(e,s)=>{const t=V(T);return k(e)?t[s]:h(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1]??{},e):e},P=(e,s)=>{const t=v(e,s);return k(e)||h(e)?t:e},q=e=>y(V(T)[e]??{}),B=e=>P(e,0),f=e=>P(e,2),M=e=>P(e,4),D=e=>P(e,6),F=e=>P(e,8),O=e=>P(e,10),Q=e=>e.toLowerCase();Q(r);const A="Transaction";Q(A);const{useCallback:E,useEffect:G,useMemo:W,useRef:j,useState:U}=e,z=(e,s,t=[])=>{const o=W((()=>s(e)),[e,...t]);return G((()=>()=>o.destroy()),[o]),o},H=(e,s,t,o=[],r)=>{const[,u]=U(),d=E((()=>s?.["get"+e]?.(...o)??t),[s,...o]),l=j();return W((()=>l.current=d()),[d]),J(e,s,((...e)=>{l.current=k(r)?d():e[r],u([])}),[],o),l.current},J=(e,s,t,o=[],u=[],...d)=>{const l=[s,...u,...o,...d],n=W((()=>s?.["add"+e+r]?.(...u,t,...d)),l);G((()=>()=>s?.delListener(n)),l)},K=(e,s,t,o=[],r=L,u=[],...d)=>{const l=B(e);return E((e=>g(l,(o=>g(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},N=(e,s,t=L,o=[],...r)=>{const u=B(e);return E((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},X=(e,s,t)=>{const o=O(e);return E((()=>o?.[s](t)),[o,s,t])},Y=e=>H(p,B(e),[],[]),Z=(e,s)=>H(I,B(s),[],[e]),$=(e,s,t,o=0,r,u)=>H(x,B(u),[],[e,s,t,o,r],6),_=(e,s,t)=>H(C,B(t),[],[e,s]),ee=(e,s,t,o)=>H(c,B(o),void 0,[e,s,t],4),se=e=>H(R,B(e),[],[]),te=(e,s)=>H(w,B(s),void 0,[e]),oe=(e,s)=>H("Metric",f(s),void 0,[e]),re=(e,s)=>H("SliceIds",M(s),[],[e]),ue=(e,s,t)=>H("Slice"+I,M(t),[],[e,s]),de=(e,s,t)=>H("RemoteRowId",D(t),void 0,[e,s]),le=(e,s,t)=>H("Local"+I,D(t),[],[e,s]),ne=(e,s,t)=>H("Linked"+I,D(t),[],[e,s]),pe=(e,s)=>H(u+I,F(s),[],[e]),ie=(e,s,t,o=0,r,d)=>H(u+x,F(d),[],[e,s,t,o,r],6),ae=(e,s,t)=>H(u+C,F(t),[],[e,s]),Ie=(e,s,t,o)=>H(u+c,F(o),void 0,[e,s,t]),xe=e=>H("CheckpointIds",O(e),[[],void 0,[]]),ce=(e,s)=>H("Checkpoint",O(s),void 0,[e]),Ce=e=>X(e,"goBackward"),we=e=>X(e,"goForward"),{PureComponent:be,Fragment:Re,createElement:ke,useCallback:ge,useLayoutEffect:he,useRef:Le,useState:me}=e,ye=(e,...s)=>k(e)?{}:e(...s),Se=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:Ve}=e,Te=({tableId:e,store:s,rowComponent:t=Me,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Be(m(l,(u=>ke(t,{...ye(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),ve=({queryId:e,queries:s,resultRowComponent:t=Ae,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Be(m(d,(r=>ke(t,{...ye(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Pe=({relationshipId:e,relationships:s,rowComponent:t=Me,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[n,p,i]=Se(D(s),e),a=d(e,l,n);return Be(m(a,(e=>ke(t,{...ye(o,e),key:e,tableId:i,rowId:e,store:p,debugIds:u}))),r,u,l)},qe=e=>({checkpoints:s,checkpointComponent:t=Ee,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=O(s);return Be(m(e(xe(d)),(e=>ke(t,{...ye(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Be=(e,s,t,o)=>{const r=k(s)||!Array.isArray(e)?e:m(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},fe=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>Be(t+(ee(e,s,o,r)??t),void 0,u,o),Me=({tableId:e,rowId:s,store:t,cellComponent:o=fe,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Be(m(((e,s,t,o)=>{const r=_(s,t,o);return e??r})(u,e,s,t),(u=>ke(o,{...ye(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),De=e=>Te(e,Z(e.tableId,e.store)),Fe=({valueId:e,store:s,debugIds:o})=>Be(t+(te(e,s)??t),void 0,o,e),Oe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Me,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,n,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(M(t),e),i=ue(e,s,l);return Be(m(i,(e=>ke(o,{...ye(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:d}))),u,d,s)},Qe=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>Be(t+(Ie(e,s,o,r)??t),void 0,u,o),Ae=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Qe,getResultCellComponentProps:r,separator:u,debugIds:d})=>Be(m(ae(e,s,t),(u=>ke(o,{...ye(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Ee=({checkpoints:e,checkpointId:s,debugIds:o})=>Be(ce(s,e)??t,void 0,o,s),Ge=qe((e=>e[0])),We=qe((e=>k(e[1])?[]:[e[1]])),je=qe((e=>e[2]));exports.BackwardCheckpointsView=Ge,exports.CellView=fe,exports.CheckpointView=Ee,exports.CurrentCheckpointView=We,exports.ForwardCheckpointsView=je,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=Oe,getSliceComponentProps:o,separator:r,debugIds:u})=>Be(m(re(e,s),(r=>ke(t,{...ye(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>Pe(e,ne,e.firstRowId),exports.LocalRowsView=e=>Pe(e,le,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>Be(oe(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:n,queries:p,queriesById:i,checkpoints:a,checkpointsById:I,children:x})=>{const c=e.useContext(T);return ke(T.Provider,{value:Ve((()=>[s??c[0],{...c[1],...t},o??c[2],{...c[3],...r},u??c[4],{...c[5],...d},l??c[6],{...c[7],...n},p??c[8],{...c[9],...i},a??c[10],{...c[11],...I}]),[s,t,o,r,u,d,l,n,p,i,a,I,c])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Me,getRowComponentProps:r,debugIds:u})=>{const[d,l,,n]=Se(D(t),e),p=de(e,s,d);return Be(k(n)||k(p)?null:ke(o,{...ye(r,p),key:p,tableId:n,rowId:p,store:l,debugIds:u}),void 0,u,s)},exports.ResultCellView=Qe,exports.ResultRowView=Ae,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ve(r,ie(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>ve(e,pe(e.queryId,e.queries)),exports.RowView=Me,exports.SliceView=Oe,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Te(r,$(r.tableId,e,s,t,o,r.store)),exports.TableView=De,exports.TablesView=({store:e,tableComponent:s=De,getTableComponentProps:t,separator:o,debugIds:r})=>Be(m(Y(e),(o=>ke(s,{...ye(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Fe,exports.ValuesView=({store:e,valueComponent:s=Fe,getValueComponentProps:t,separator:o,debugIds:r})=>Be(m(se(e),(o=>ke(s,{...ye(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=[],o,r=L,u=[],d=!0)=>{const l=B(o);return E((t=>g(l,(o=>g(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},exports.useCell=ee,exports.useCellIds=_,exports.useCellIdsListener=(e,s,t,o,r,u)=>J(C,B(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,d)=>J(c,B(d),o,r,[e,s,t],u),exports.useCheckpoint=ce,exports.useCheckpointIds=xe,exports.useCheckpointIdsListener=(e,s,t)=>J("CheckpointIds",O(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>J("Checkpoint",O(o),s,t,[e]),exports.useCheckpoints=e=>v(e,10),exports.useCheckpointsIds=()=>q(11),exports.useCheckpointsOrCheckpointsById=O,exports.useCreateCheckpoints=(e,s,t)=>z(e,s,t),exports.useCreateIndexes=(e,s,t)=>z(e,s,t),exports.useCreateMetrics=(e,s,t)=>z(e,s,t),exports.useCreatePersister=(e,s,t=[],o,r=[],u,d=[])=>{const[,l]=U(),n=W((()=>s(e)),[e,...t]);return G((()=>((async()=>{o&&(await o(n),l([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...d]),n},exports.useCreateQueries=(e,s,t)=>z(e,s,t),exports.useCreateRelationships=(e,s,t)=>z(e,s,t),exports.useCreateStore=(e,s=[])=>W(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,d)=>N(r,c,u,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>N(t,i,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>N(s,l,t,o,e),exports.useDelTablesCallback=(e,s,t)=>N(e,n,s,t),exports.useDelValueCallback=(e,s,t,o)=>N(s,w,t,o,e),exports.useDelValuesCallback=(e,s,t)=>N(e,b,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>J("DidFinish"+A,B(t),e,s),exports.useGoBackwardCallback=Ce,exports.useGoForwardCallback=we,exports.useGoToCallback=(e,s=[],t,o=L,r=[])=>{const u=O(t);return E((s=>g(u,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useIndexIds=e=>H("IndexIds",M(e),[]),exports.useIndexes=e=>v(e,4),exports.useIndexesIds=()=>q(5),exports.useIndexesOrIndexesById=M,exports.useLinkedRowIds=ne,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>J("Linked"+I,D(r),t,o,[e,s]),exports.useLocalRowIds=le,exports.useLocalRowIdsListener=(e,s,t,o,r)=>J("Local"+I,D(r),t,o,[e,s]),exports.useMetric=oe,exports.useMetricIds=e=>H("MetricIds",f(e),[]),exports.useMetricListener=(e,s,t,o)=>J("Metric",f(o),s,t,[e]),exports.useMetrics=e=>v(e,2),exports.useMetricsIds=()=>q(3),exports.useMetricsOrMetricsById=f,exports.useQueries=e=>v(e,8),exports.useQueriesIds=()=>q(9),exports.useQueriesOrQueriesById=F,exports.useQueryIds=e=>H("QueryIds",F(e),[]),exports.useRedoInformation=e=>{const s=O(e),[,,[o]]=xe(s);return[!k(o),we(s),o,g(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>H("RelationshipIds",D(e),[]),exports.useRelationships=e=>v(e,6),exports.useRelationshipsIds=()=>q(7),exports.useRelationshipsOrRelationshipsById=D,exports.useRemoteRowId=de,exports.useRemoteRowIdListener=(e,s,t,o,r)=>J("RemoteRowId",D(r),t,o,[e,s]),exports.useResultCell=Ie,exports.useResultCellIds=ae,exports.useResultCellIdsListener=(e,s,t,o,r)=>J(u+C,F(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,d)=>J(u+c,F(d),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>H(u+i,F(t),{},[e,s]),exports.useResultRowCount=(e,s)=>H(u+a,F(s),[],[e]),exports.useResultRowCountListener=(e,s,t,o)=>J(u+a,F(o),s,t,[e]),exports.useResultRowIds=pe,exports.useResultRowIdsListener=(e,s,t,o)=>J(u+I,F(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>J(u+i,F(r),t,o,[e,s]),exports.useResultSortedRowIds=ie,exports.useResultSortedRowIdsListener=(e,s,t,o,r,d,l,n)=>J(u+x,F(n),d,l,[e,s,t,o,r]),exports.useResultTable=(e,s)=>H(u+l,F(s),{},[e]),exports.useResultTableCellIds=(e,s)=>H(u+l+C,F(s),[],[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>J(u+l+C,F(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>J(u+l,F(o),s,t,[e]),exports.useRow=(e,s,t)=>H(i,B(t),{},[e,s]),exports.useRowCount=(e,s)=>H(a,B(s),[],[e]),exports.useRowCountListener=(e,s,t,o,r)=>J(a,B(r),s,t,[e],o),exports.useRowIds=Z,exports.useRowIdsListener=(e,s,t,o,r)=>J(I,B(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>J(i,B(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,d,l)=>K(u,c,o,r,d,l,e,s,t),exports.useSetCheckpointCallback=(e=L,s=[],t,o=L,r=[])=>{const u=O(t);return E((s=>g(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>K(r,"PartialRow",t,o,u,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>K(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,d)=>K(r,i,t,o,u,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>K(o,l,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>K(t,n,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>K(o,w,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>K(t,b,e,s,o,r),exports.useSliceIds=re,exports.useSliceIdsListener=(e,s,t,o)=>J("SliceIds",M(o),s,t,[e]),exports.useSliceRowIds=ue,exports.useSliceRowIdsListener=(e,s,t,o,r)=>J("Slice"+I,M(r),t,o,[e,s]),exports.useSortedRowIds=$,exports.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,n)=>J(x,B(n),u,d,[e,s,t,o,r],l),exports.useStartTransactionListener=(e,s,t)=>J("Start"+A,B(t),e,s),exports.useStore=e=>v(e,0),exports.useStoreIds=()=>q(1),exports.useStoreOrStoreById=B,exports.useTable=(e,s)=>H(l,B(s),{},[e]),exports.useTableCellIds=(e,s)=>H(l+C,B(s),[],[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>J(l+C,B(r),s,t,[e],o),exports.useTableIds=Y,exports.useTableIdsListener=(e,s,t,o)=>J(p,B(o),e,s,[],t),exports.useTableListener=(e,s,t,o,r)=>J(l,B(r),s,t,[e],o),exports.useTables=e=>H(n,B(e),{}),exports.useTablesListener=(e,s,t,o)=>J(n,B(o),e,s,[],t),exports.useUndoInformation=e=>{const s=O(e),[o,r]=xe(s);return[(u=o,!(0==u.length)),Ce(s),r,g(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=te,exports.useValueIds=se,exports.useValueIdsListener=(e,s,t,o)=>J(R,B(o),e,s,[],t),exports.useValueListener=(e,s,t,o,r)=>J(w,B(r),s,t,[e],o),exports.useValues=e=>H(b,B(e),{}),exports.useValuesListener=(e,s,t,o)=>J(b,B(o),e,s,[],t),exports.useWillFinishTransactionListener=(e,s,t)=>J("WillFinish"+A,B(t),e,s);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Listener",u="Result",d="Ids",l="Table",n=l+"s",p=l+d,i="Row",a=i+"Count",I=i+d,c="Sorted"+i+d,x="Cell",C=x+d,w="Value",b=w+"s",R=w+d,k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),h=e=>s(e)==o,L=()=>{},m=(e,s)=>e.map(s),y=Object.keys,{createContext:S,useContext:V}=e,T=S([]),v=(e,s)=>{const t=V(T);return k(e)?t[s]:h(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1]??{},e):e},P=(e,s)=>{const t=v(e,s);return k(e)||h(e)?t:e},q=e=>y(V(T)[e]??{}),f=e=>P(e,0),B=e=>P(e,2),M=e=>P(e,4),D=e=>P(e,6),F=e=>P(e,8),O=e=>P(e,10),Q=e=>e.toLowerCase();Q(r);const E="Transaction";Q(E);const{useCallback:A,useEffect:G,useMemo:W,useLayoutEffect:j,useRef:U,useState:z}=e,H=[],J={},K=[[],void 0,[]],N=(e,s,t=H)=>{const o=W((()=>s(e)),[e,...t]);return G((()=>()=>o.destroy()),[o]),o},X=(e,s,t,o=H,r)=>{const[,u]=z(),d=A((()=>s?.["get"+e]?.(...o)??t),[s,e,...o,t]),l=U();return W((()=>l.current=d()),[d]),Y(e,s,((...e)=>{l.current=k(r)?d():e[r],u([])}),[d,r],o),l.current},Y=(e,s,t,o=H,u=H,...d)=>j((()=>{const o=s?.["add"+e+r]?.(...u,t,...d);return()=>s?.delListener(o)}),[s,e,...u,...o,...d]),Z=(e,s,t,o=H,r=L,u=H,...d)=>{const l=f(e);return A((e=>g(l,(o=>g(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},$=(e,s,t=L,o=H,...r)=>{const u=f(e);return A((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},_=(e,s,t)=>{const o=O(e);return A((()=>o?.[s](t)),[o,s,t])},ee=e=>X(p,f(e),H),se=(e,s)=>X(I,f(s),H,[e]),te=(e,s,t,o=0,r,u)=>X(c,f(u),H,[e,s,t,o,r],6),oe=(e,s,t)=>X(C,f(t),H,[e,s]),re=(e,s,t,o)=>X(x,f(o),void 0,[e,s,t],4),ue=e=>X(R,f(e),H),de=(e,s)=>X(w,f(s),void 0,[e]),le=(e,s)=>X("Metric",B(s),void 0,[e]),ne=(e,s)=>X("SliceIds",M(s),H,[e]),pe=(e,s,t)=>X("Slice"+I,M(t),H,[e,s]),ie=(e,s,t)=>X("RemoteRowId",D(t),void 0,[e,s]),ae=(e,s,t)=>X("Local"+I,D(t),H,[e,s]),Ie=(e,s,t)=>X("Linked"+I,D(t),H,[e,s]),ce=(e,s)=>X(u+I,F(s),H,[e]),xe=(e,s,t,o=0,r,d)=>X(u+c,F(d),H,[e,s,t,o,r],6),Ce=(e,s,t)=>X(u+C,F(t),H,[e,s]),we=(e,s,t,o)=>X(u+x,F(o),void 0,[e,s,t]),be=e=>X("CheckpointIds",O(e),K),Re=(e,s)=>X("Checkpoint",O(s),void 0,[e]),ke=e=>_(e,"goBackward"),ge=e=>_(e,"goForward"),{PureComponent:he,Fragment:Le,createElement:me,useCallback:ye,useLayoutEffect:Se,useRef:Ve,useState:Te}=e,ve=(e,...s)=>k(e)?{}:e(...s),Pe=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:qe}=e,fe=({tableId:e,store:s,rowComponent:t=Qe,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Fe(m(l,(u=>me(t,{...ve(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),Be=({queryId:e,queries:s,resultRowComponent:t=je,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Fe(m(d,(r=>me(t,{...ve(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Me=({relationshipId:e,relationships:s,rowComponent:t=Qe,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[n,p,i]=Pe(D(s),e),a=d(e,l,n);return Fe(m(a,(e=>me(t,{...ve(o,e),key:e,tableId:i,rowId:e,store:p,debugIds:u}))),r,u,l)},De=e=>({checkpoints:s,checkpointComponent:t=Ue,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=O(s);return Fe(m(e(be(d)),(e=>me(t,{...ve(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Fe=(e,s,t,o)=>{const r=k(s)||!Array.isArray(e)?e:m(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Oe=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>Fe(t+(re(e,s,o,r)??t),void 0,u,o),Qe=({tableId:e,rowId:s,store:t,cellComponent:o=Oe,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Fe(m(((e,s,t,o)=>{const r=oe(s,t,o);return e??r})(u,e,s,t),(u=>me(o,{...ve(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),Ee=e=>fe(e,se(e.tableId,e.store)),Ae=({valueId:e,store:s,debugIds:o})=>Fe(t+(de(e,s)??t),void 0,o,e),Ge=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Qe,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,n,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(M(t),e),i=pe(e,s,l);return Fe(m(i,(e=>me(o,{...ve(r,e),key:e,tableId:p,rowId:e,store:n,debugIds:d}))),u,d,s)},We=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>Fe(t+(we(e,s,o,r)??t),void 0,u,o),je=({queryId:e,rowId:s,queries:t,resultCellComponent:o=We,getResultCellComponentProps:r,separator:u,debugIds:d})=>Fe(m(Ce(e,s,t),(u=>me(o,{...ve(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Ue=({checkpoints:e,checkpointId:s,debugIds:o})=>Fe(Re(s,e)??t,void 0,o,s),ze=De((e=>e[0])),He=De((e=>k(e[1])?[]:[e[1]])),Je=De((e=>e[2]));exports.BackwardCheckpointsView=ze,exports.CellView=Oe,exports.CheckpointView=Ue,exports.CurrentCheckpointView=He,exports.ForwardCheckpointsView=Je,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=Ge,getSliceComponentProps:o,separator:r,debugIds:u})=>Fe(m(ne(e,s),(r=>me(t,{...ve(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>Me(e,Ie,e.firstRowId),exports.LocalRowsView=e=>Me(e,ae,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>Fe(le(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:n,queries:p,queriesById:i,checkpoints:a,checkpointsById:I,children:c})=>{const x=e.useContext(T);return me(T.Provider,{value:qe((()=>[s??x[0],{...x[1],...t},o??x[2],{...x[3],...r},u??x[4],{...x[5],...d},l??x[6],{...x[7],...n},p??x[8],{...x[9],...i},a??x[10],{...x[11],...I}]),[s,t,o,r,u,d,l,n,p,i,a,I,x])},c)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Qe,getRowComponentProps:r,debugIds:u})=>{const[d,l,,n]=Pe(D(t),e),p=ie(e,s,d);return Fe(k(n)||k(p)?null:me(o,{...ve(r,p),key:p,tableId:n,rowId:p,store:l,debugIds:u}),void 0,u,s)},exports.ResultCellView=We,exports.ResultRowView=je,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Be(r,xe(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>Be(e,ce(e.queryId,e.queries)),exports.RowView=Qe,exports.SliceView=Ge,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>fe(r,te(r.tableId,e,s,t,o,r.store)),exports.TableView=Ee,exports.TablesView=({store:e,tableComponent:s=Ee,getTableComponentProps:t,separator:o,debugIds:r})=>Fe(m(ee(e),(o=>me(s,{...ve(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Ae,exports.ValuesView=({store:e,valueComponent:s=Ae,getValueComponentProps:t,separator:o,debugIds:r})=>Fe(m(ue(e),(o=>me(s,{...ve(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=H,o,r=L,u=H,d=!0)=>{const l=f(o);return A((t=>g(l,(o=>g(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},exports.useCell=re,exports.useCellIds=oe,exports.useCellIdsListener=(e,s,t,o,r,u)=>Y(C,f(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,d)=>Y(x,f(d),o,r,[e,s,t],u),exports.useCheckpoint=Re,exports.useCheckpointIds=be,exports.useCheckpointIdsListener=(e,s,t)=>Y("CheckpointIds",O(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>Y("Checkpoint",O(o),s,t,[e]),exports.useCheckpoints=e=>v(e,10),exports.useCheckpointsIds=()=>q(11),exports.useCheckpointsOrCheckpointsById=O,exports.useCreateCheckpoints=(e,s,t)=>N(e,s,t),exports.useCreateIndexes=(e,s,t)=>N(e,s,t),exports.useCreateMetrics=(e,s,t)=>N(e,s,t),exports.useCreatePersister=(e,s,t=H,o,r=H,u,d=H)=>{const[,l]=z(),n=W((()=>s(e)),[e,...t]);return G((()=>((async()=>{o&&(await o(n),l([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...d]),n},exports.useCreateQueries=(e,s,t)=>N(e,s,t),exports.useCreateRelationships=(e,s,t)=>N(e,s,t),exports.useCreateStore=(e,s=H)=>W(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,d)=>$(r,x,u,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>$(t,i,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>$(s,l,t,o,e),exports.useDelTablesCallback=(e,s,t)=>$(e,n,s,t),exports.useDelValueCallback=(e,s,t,o)=>$(s,w,t,o,e),exports.useDelValuesCallback=(e,s,t)=>$(e,b,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>Y("DidFinish"+E,f(t),e,s),exports.useGoBackwardCallback=ke,exports.useGoForwardCallback=ge,exports.useGoToCallback=(e,s=H,t,o=L,r=H)=>{const u=O(t);return A((s=>g(u,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useIndexIds=e=>X("IndexIds",M(e),H),exports.useIndexes=e=>v(e,4),exports.useIndexesIds=()=>q(5),exports.useIndexesOrIndexesById=M,exports.useLinkedRowIds=Ie,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>Y("Linked"+I,D(r),t,o,[e,s]),exports.useLocalRowIds=ae,exports.useLocalRowIdsListener=(e,s,t,o,r)=>Y("Local"+I,D(r),t,o,[e,s]),exports.useMetric=le,exports.useMetricIds=e=>X("MetricIds",B(e),H),exports.useMetricListener=(e,s,t,o)=>Y("Metric",B(o),s,t,[e]),exports.useMetrics=e=>v(e,2),exports.useMetricsIds=()=>q(3),exports.useMetricsOrMetricsById=B,exports.useQueries=e=>v(e,8),exports.useQueriesIds=()=>q(9),exports.useQueriesOrQueriesById=F,exports.useQueryIds=e=>X("QueryIds",F(e),H),exports.useRedoInformation=e=>{const s=O(e),[,,[o]]=be(s);return[!k(o),ge(s),o,g(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>X("RelationshipIds",D(e),H),exports.useRelationships=e=>v(e,6),exports.useRelationshipsIds=()=>q(7),exports.useRelationshipsOrRelationshipsById=D,exports.useRemoteRowId=ie,exports.useRemoteRowIdListener=(e,s,t,o,r)=>Y("RemoteRowId",D(r),t,o,[e,s]),exports.useResultCell=we,exports.useResultCellIds=Ce,exports.useResultCellIdsListener=(e,s,t,o,r)=>Y(u+C,F(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,d)=>Y(u+x,F(d),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>X(u+i,F(t),J,[e,s]),exports.useResultRowCount=(e,s)=>X(u+a,F(s),0,[e]),exports.useResultRowCountListener=(e,s,t,o)=>Y(u+a,F(o),s,t,[e]),exports.useResultRowIds=ce,exports.useResultRowIdsListener=(e,s,t,o)=>Y(u+I,F(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>Y(u+i,F(r),t,o,[e,s]),exports.useResultSortedRowIds=xe,exports.useResultSortedRowIdsListener=(e,s,t,o,r,d,l,n)=>Y(u+c,F(n),d,l,[e,s,t,o,r]),exports.useResultTable=(e,s)=>X(u+l,F(s),J,[e]),exports.useResultTableCellIds=(e,s)=>X(u+l+C,F(s),H,[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>Y(u+l+C,F(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>Y(u+l,F(o),s,t,[e]),exports.useRow=(e,s,t)=>X(i,f(t),J,[e,s]),exports.useRowCount=(e,s)=>X(a,f(s),0,[e]),exports.useRowCountListener=(e,s,t,o,r)=>Y(a,f(r),s,t,[e],o),exports.useRowIds=se,exports.useRowIdsListener=(e,s,t,o,r)=>Y(I,f(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>Y(i,f(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,d,l)=>Z(u,x,o,r,d,l,e,s,t),exports.useSetCheckpointCallback=(e=L,s=H,t,o=L,r=H)=>{const u=O(t);return A((s=>g(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>Z(r,"PartialRow",t,o,u,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>Z(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,d)=>Z(r,i,t,o,u,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>Z(o,l,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>Z(t,n,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>Z(o,w,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>Z(t,b,e,s,o,r),exports.useSliceIds=ne,exports.useSliceIdsListener=(e,s,t,o)=>Y("SliceIds",M(o),s,t,[e]),exports.useSliceRowIds=pe,exports.useSliceRowIdsListener=(e,s,t,o,r)=>Y("Slice"+I,M(r),t,o,[e,s]),exports.useSortedRowIds=te,exports.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,n)=>Y(c,f(n),u,d,[e,s,t,o,r],l),exports.useStartTransactionListener=(e,s,t)=>Y("Start"+E,f(t),e,s),exports.useStore=e=>v(e,0),exports.useStoreIds=()=>q(1),exports.useStoreOrStoreById=f,exports.useTable=(e,s)=>X(l,f(s),J,[e]),exports.useTableCellIds=(e,s)=>X(l+C,f(s),H,[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>Y(l+C,f(r),s,t,[e],o),exports.useTableIds=ee,exports.useTableIdsListener=(e,s,t,o)=>Y(p,f(o),e,s,H,t),exports.useTableListener=(e,s,t,o,r)=>Y(l,f(r),s,t,[e],o),exports.useTables=e=>X(n,f(e),J),exports.useTablesListener=(e,s,t,o)=>Y(n,f(o),e,s,H,t),exports.useUndoInformation=e=>{const s=O(e),[o,r]=be(s);return[(u=o,!(0==u.length)),ke(s),r,g(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=de,exports.useValueIds=ue,exports.useValueIdsListener=(e,s,t,o)=>Y(R,f(o),e,s,H,t),exports.useValueListener=(e,s,t,o,r)=>Y(w,f(r),s,t,[e],o),exports.useValues=e=>X(b,f(e),J),exports.useValuesListener=(e,s,t,o)=>Y(b,f(o),e,s,H,t),exports.useWillFinishTransactionListener=(e,s,t)=>Y("WillFinish"+E,f(t),e,s);
Binary file
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=n.keys,l=n.freeze,i=(t,n)=>e(t,(t=>t[n])),u=(e,n)=>!t(i(e,n)),r=(t,e)=>(delete t[e],t),d=(t,e)=>((t,e)=>t.map(e))(n.entries(t),(([t,n])=>e(n,t))),c=t=>o(t).length,s=t=>(t=>t instanceof n&&t.constructor==n)(t)&&0==c(t),a=t=>new Map(t),v=(t,e)=>null==t?void 0:t.get(e),y=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},h=(t,e,n)=>{var o,l,i;return l=e,null!=(i=null==(o=t)?void 0:o.has(l))&&i||y(t,e,n()),v(t,e)};var f=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const p=a(),g=a();var A=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{r(n.next(t))}catch(t){l(t)}},u=t=>{try{r(n.throw(t))}catch(t){l(t)}},r=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,u);r((n=n.apply(t,e)).next())}));const m=(t,e)=>[t[e].t,t[e].v],L=(e,n,o,l)=>{const i=t(n)?e:((t,e,n)=>(u(t,e)||(t[e]={}),t[e]))(e,n);let c;return d(o,((t,e)=>{l(i,e,t)&&(c=1)})),d(i,((t,e)=>{u(o,e)||(r(i,e),c=1)})),!t(n)&&s(i)&&r(e,n),c};exports.createAutomergePersister=(n,o,u="tinybase",a)=>(o.change((t=>t[u]={})),((n,o,i,u,r,d,[c,a]=[],A=[])=>{let m,L,S,w=0,x=0;h(p,A,(()=>0)),h(g,A,(()=>[]));const C=t=>f(void 0,null,(function*(){return 2!=w&&(w=1,yield P.schedule((()=>f(void 0,null,(function*(){yield t(),w=0}))))),P})),P={load:(t,e)=>f(void 0,null,(function*(){return yield C((()=>f(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>f(void 0,[...t],(function*(t={},e={}){return P.stopAutoLoad(),yield P.load(t,e),x=1,S=u(((t,e)=>f(void 0,null,(function*(){if(e){const t=e();yield C((()=>f(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield C((()=>f(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==d||d(t)}}))))})))),P})),stopAutoLoad:()=>(x&&(r(S),S=void 0,x=0),P),save:t=>f(void 0,null,(function*(){return 1!=w&&(w=2,yield P.schedule((()=>f(void 0,null,(function*(){try{yield i(n.getContent,t)}catch(t){null==d||d(t)}w=0}))))),P})),startAutoSave:()=>f(void 0,null,(function*(){return yield P.stopAutoSave().save(),m=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();s(n)&&s(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>(e(m,n.delListener),m=void 0,P),schedule:(...e)=>f(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(v(g,A),...e),yield f(void 0,null,(function*(){if(!v(p,A)){for(y(p,A,1);!t((e=v(g,A),L=e.shift()));)try{yield L()}catch(t){null==d||d(t)}y(p,A,0)}var e})),P})),getStore:()=>n,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(P[c]=()=>a),l(P)})(n,(()=>A(void 0,null,(function*(){return 2==c(o.doc[u])?m(o.doc,u):void 0}))),((n,l)=>A(void 0,null,(function*(){return o.change((o=>((n,o,l,u)=>{((t,e)=>{s(t[e])&&(t[e]={t:{},v:{}})})(n,o);const[c,a]=m(n,o),v=()=>{y=1};let y=1;if(e(null==u?void 0:u(),(([n,o])=>{y=0,d(n,((n,o)=>y?0:t(n)?r(c,o):e(c[o],(o=>d(n,((n,l)=>y?0:t(n)?r(o,l):e(i(o,l),(e=>d(n,((n,o)=>t(n)?r(e,o):e[o]=n))),v)))),v))),d(o,((e,n)=>y?0:t(e)?r(a,n):a[n]=e))})),y){const[t,e]=l();L(c,void 0,t,((t,e,n)=>L(c,e,n,((t,e,n)=>L(t,e,n,((t,e,n)=>{if(i(t,e)!==n)return t[e]=n,1})))))),L(a,void 0,e,((t,e,n)=>{i(a,e)!==n&&(a[e]=n)}))}})(o,u,n,l)))}))),(t=>{const e=({doc:e})=>t((()=>m(e,u)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),a,["getDocHandle",o]));
1
+ "use strict";const t=t=>null==t,e=(e,n,o)=>t(e)?null==o?void 0:o():n(e),n=Object,o=t=>n.getPrototypeOf(t),l=n.keys,i=n.freeze,r=(t,n)=>e(t,(t=>t[n])),u=(e,n)=>!t(r(e,n)),d=(t,e)=>(delete t[e],t),c=(t,e)=>((t,e)=>t.map(e))(n.entries(t),(([t,n])=>e(n,t))),s=t=>l(t).length,a=l=>(l=>!t(l)&&e(o(l),(e=>e==n.prototype||t(o(e))),(()=>!0)))(l)&&0==s(l),v=t=>new Map(t),y=(t,e)=>null==t?void 0:t.get(e),h=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},f=(t,e,n)=>{var o,l,i;return l=e,null!=(i=null==(o=t)?void 0:o.has(l))&&i||h(t,e,n()),y(t,e)};var p=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{u(n.next(t))}catch(t){l(t)}},r=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,r);u((n=n.apply(t,e)).next())}));const g=v(),A=v();var m=(t,e,n)=>new Promise(((o,l)=>{var i=t=>{try{u(n.next(t))}catch(t){l(t)}},r=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(i,r);u((n=n.apply(t,e)).next())}));const L=(t,e)=>[t[e].t,t[e].v],P=(e,n,o,l)=>{const i=t(n)?e:((t,e,n)=>(u(t,e)||(t[e]={}),t[e]))(e,n);let r;return c(o,((t,e)=>{l(i,e,t)&&(r=1)})),c(i,((t,e)=>{u(o,e)||(d(i,e),r=1)})),!t(n)&&a(i)&&d(e,n),r};exports.createAutomergePersister=(n,o,l="tinybase",u)=>(o.change((t=>t[l]={})),((n,o,l,r,u,d,[c,s]=[],v=[])=>{let m,L,P,S=0,w=0;f(g,v,(()=>0)),f(A,v,(()=>[]));const x=t=>p(void 0,null,(function*(){return 2!=S&&(S=1,yield C.schedule((()=>p(void 0,null,(function*(){yield t(),S=0}))))),C})),C={load:(t,e)=>p(void 0,null,(function*(){return yield x((()=>p(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([t,e])}}))))})),startAutoLoad:(...t)=>p(void 0,[...t],(function*(t={},e={}){return C.stopAutoLoad(),yield C.load(t,e),w=1,P=r(((t,e)=>p(void 0,null,(function*(){if(e){const t=e();yield x((()=>p(void 0,null,(function*(){return n.setTransactionChanges(t)}))))}else yield x((()=>p(void 0,null,(function*(){var e;try{n.setContent(null!=(e=null==t?void 0:t())?e:yield o())}catch(t){null==d||d(t)}}))))})))),C})),stopAutoLoad:()=>(w&&(u(P),P=void 0,w=0),C),save:t=>p(void 0,null,(function*(){return 1!=S&&(S=2,yield C.schedule((()=>p(void 0,null,(function*(){try{yield l(n.getContent,t)}catch(t){null==d||d(t)}S=0}))))),C})),startAutoSave:()=>p(void 0,null,(function*(){return yield C.stopAutoSave().save(),m=n.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();a(n)&&a(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>(e(m,n.delListener),m=void 0,C),schedule:(...e)=>p(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(y(A,v),...e),yield p(void 0,null,(function*(){if(!y(g,v)){for(h(g,v,1);!t((e=y(A,v),L=e.shift()));)try{yield L()}catch(t){null==d||d(t)}h(g,v,0)}var e})),C})),getStore:()=>n,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(C[c]=()=>s),i(C)})(n,(()=>m(void 0,null,(function*(){return 2==s(o.doc[l])?L(o.doc,l):void 0}))),((n,i)=>m(void 0,null,(function*(){return o.change((o=>((n,o,l,i)=>{((t,e)=>{a(t[e])&&(t[e]={t:{},v:{}})})(n,o);const[u,s]=L(n,o),v=()=>{y=1};let y=1;if(e(null==i?void 0:i(),(([n,o])=>{y=0,c(n,((n,o)=>y?0:t(n)?d(u,o):e(u[o],(o=>c(n,((n,l)=>y?0:t(n)?d(o,l):e(r(o,l),(e=>c(n,((n,o)=>t(n)?d(e,o):e[o]=n))),v)))),v))),c(o,((e,n)=>y?0:t(e)?d(s,n):s[n]=e))})),y){const[t,e]=l();P(u,void 0,t,((t,e,n)=>P(u,e,n,((t,e,n)=>P(t,e,n,((t,e,n)=>{if(r(t,e)!==n)return t[e]=n,1})))))),P(s,void 0,e,((t,e,n)=>{r(s,e)!==n&&(s[e]=n)}))}})(o,l,n,i)))}))),(t=>{const e=({doc:e})=>t((()=>L(e,l)));return o.on("change",e),e}),(t=>{o.removeListener("change",t)}),u,["getDocHandle",o]));
@@ -1 +1 @@
1
- "use strict";const e=(e,t)=>e instanceof t,t=e=>null==e,n=Object,o=n.keys,r=n.freeze,l=t=>(t=>e(t,n)&&t.constructor==n)(t)&&0==(e=>o(e).length)(t),i=JSON.parse,u=e=>new Map(e),s=(e,t)=>null==e?void 0:e.get(t),a=(e,n,o)=>{return t(o)?(l=n,null==(r=e)||r.delete(l),e):null==e?void 0:e.set(n,o);var r,l},d=(e,t,n)=>{var o,r,l;return r=t,null!=(l=null==(o=e)?void 0:o.has(r))&&l||a(e,t,n()),s(e,t)};var c=(e,t,n)=>new Promise(((o,r)=>{var l=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?o(e.value):Promise.resolve(e.value).then(l,i);u((n=n.apply(e,t)).next())}));const v=u(),y=u();var f=(e,t,n)=>new Promise(((o,r)=>{var l=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?o(e.value):Promise.resolve(e.value).then(l,i);u((n=n.apply(e,t)).next())}));const h="storage",p=globalThis.window,g=(o,u,g,S)=>((e,n,o,i,u,f,[h,p]=[],g=[])=>{let S,m,A,L=0,w=0;d(v,g,(()=>0)),d(y,g,(()=>[]));const x=e=>c(void 0,null,(function*(){return 2!=L&&(L=1,yield P.schedule((()=>c(void 0,null,(function*(){yield e(),L=0}))))),P})),P={load:(t,o)=>c(void 0,null,(function*(){return yield x((()=>c(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,o])}}))))})),startAutoLoad:(...t)=>c(void 0,[...t],(function*(t={},o={}){return P.stopAutoLoad(),yield P.load(t,o),w=1,A=i(((t,o)=>c(void 0,null,(function*(){if(o){const t=o();yield x((()=>c(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield x((()=>c(void 0,null,(function*(){var o;try{e.setContent(null!=(o=null==t?void 0:t())?o:yield n())}catch(e){null==f||f(e)}}))))})))),P})),stopAutoLoad:()=>(w&&(u(A),A=void 0,w=0),P),save:t=>c(void 0,null,(function*(){return 1!=L&&(L=2,yield P.schedule((()=>c(void 0,null,(function*(){try{yield o(e.getContent,t)}catch(e){null==f||f(e)}L=0}))))),P})),startAutoSave:()=>c(void 0,null,(function*(){return yield P.stopAutoSave().save(),S=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();l(n)&&l(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var n,o;return n=S,o=e.delListener,!!t(n)||o(n),S=void 0,P},schedule:(...e)=>c(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(s(y,g),...e),yield c(void 0,null,(function*(){if(!s(v,g)){for(a(v,g,1);!t((e=s(y,g),m=e.shift()));)try{yield m()}catch(e){null==f||f(e)}a(v,g,0)}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return h&&(P[h]=()=>p),r(P)})(o,(()=>f(void 0,null,(function*(){return i(g.getItem(u))}))),(t=>f(void 0,null,(function*(){return g.setItem(u,(o=t(),JSON.stringify(o,((t,o)=>e(o,Map)?n.fromEntries([...o]):o))));var o}))),(e=>{const t=t=>{t.storageArea===g&&t.key===u&&e((()=>i(t.newValue)))};return p.addEventListener(h,t),t}),(e=>p.removeEventListener(h,e)),S,["getStorageName",u]);exports.createLocalPersister=(e,t,n)=>g(e,t,localStorage,n),exports.createSessionPersister=(e,t,n)=>g(e,t,sessionStorage,n);
1
+ "use strict";const e=e=>null==e,t=(t,n,o)=>e(t)?null==o?void 0:o():n(t),n=Object,o=e=>n.getPrototypeOf(e),l=n.keys,r=n.freeze,i=r=>(l=>!e(l)&&t(o(l),(t=>t==n.prototype||e(o(t))),(()=>!0)))(r)&&0==(e=>l(e).length)(r),u=JSON.parse,s=e=>new Map(e),a=(e,t)=>null==e?void 0:e.get(t),d=(t,n,o)=>{return e(o)?(r=n,null==(l=t)||l.delete(r),t):null==t?void 0:t.set(n,o);var l,r},c=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||d(e,t,n()),a(e,t)};var v=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{u(n.next(e))}catch(e){l(e)}},i=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const y=s(),f=s();var h=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{u(n.next(e))}catch(e){l(e)}},i=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const p="storage",g=globalThis.window,S=(o,l,s,S)=>((n,o,l,u,s,h,[p,g]=[],S=[])=>{let m,A,L,w=0,P=0;c(y,S,(()=>0)),c(f,S,(()=>[]));const x=e=>v(void 0,null,(function*(){return 2!=w&&(w=1,yield C.schedule((()=>v(void 0,null,(function*(){yield e(),w=0}))))),C})),C={load:(e,t)=>v(void 0,null,(function*(){return yield x((()=>v(void 0,null,(function*(){try{n.setContent(yield o())}catch(o){n.setContent([e,t])}}))))})),startAutoLoad:(...e)=>v(void 0,[...e],(function*(e={},t={}){return C.stopAutoLoad(),yield C.load(e,t),P=1,L=u(((e,t)=>v(void 0,null,(function*(){if(t){const e=t();yield x((()=>v(void 0,null,(function*(){return n.setTransactionChanges(e)}))))}else yield x((()=>v(void 0,null,(function*(){var t;try{n.setContent(null!=(t=null==e?void 0:e())?t:yield o())}catch(e){null==h||h(e)}}))))})))),C})),stopAutoLoad:()=>(P&&(s(L),L=void 0,P=0),C),save:e=>v(void 0,null,(function*(){return 1!=w&&(w=2,yield C.schedule((()=>v(void 0,null,(function*(){try{yield l(n.getContent,e)}catch(e){null==h||h(e)}w=0}))))),C})),startAutoSave:()=>v(void 0,null,(function*(){return yield C.stopAutoSave().save(),m=n.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();i(n)&&i(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>(t(m,n.delListener),m=void 0,C),schedule:(...t)=>v(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(a(f,S),...t),yield v(void 0,null,(function*(){if(!a(y,S)){for(d(y,S,1);!e((t=a(f,S),A=t.shift()));)try{yield A()}catch(e){null==h||h(e)}d(y,S,0)}var t})),C})),getStore:()=>n,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(C[p]=()=>g),r(C)})(o,(()=>h(void 0,null,(function*(){return u(s.getItem(l))}))),(e=>h(void 0,null,(function*(){return s.setItem(l,(t=e(),JSON.stringify(t,((e,t)=>t instanceof Map?n.fromEntries([...t]):t))));var t}))),(e=>{const t=t=>{t.storageArea===s&&t.key===l&&e((()=>u(t.newValue)))};return g.addEventListener(p,t),t}),(e=>g.removeEventListener(p,e)),S,["getStorageName",l]);exports.createLocalPersister=(e,t,n)=>S(e,t,localStorage,n),exports.createSessionPersister=(e,t,n)=>S(e,t,sessionStorage,n);
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=setInterval,u=clearInterval,d=(e,n)=>e instanceof n,a=e=>null==e,c=(e,n,l)=>a(e)?null==l?void 0:l():n(e),s=n=>e(n)==t,v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},E=(e,n="")=>e.join(n),h=(e,n)=>e.map(n),p=e=>0==y(e),m=(e,n)=>e.filter(n),T=(e,...n)=>e.push(...n),O=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},L=(e,n)=>null==e?void 0:e.delete(n),P=Object,b=P.keys,w=P.freeze,N=(e=[])=>P.fromEntries(e),R=(...e)=>P.assign({},...e),S=(e,n)=>h(P.entries(e),(([e,l])=>n(l,e))),x=e=>P.values(e),C=e=>y(b(e)),D=e=>(e=>d(e,P)&&e.constructor==P)(e)&&0==C(e),g=e=>new Map(e),I=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},F=(e,n)=>null==e?void 0:e.get(n),M=(e,n)=>{var l;return h([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},$=(e,n,l)=>a(l)?(L(e,n),e):null==e?void 0:e.set(n,l),j=(e,n,l)=>(O(e,n)||$(e,n,l()),F(e,n)),_=(e,n,l,t=$)=>(S(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>c(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),B=e=>new Set(Array.isArray(e)||a(e)?e:[e]),W=(e,n)=>null==e?void 0:e.add(n),H="_",U="_id",k=e=>`"${e.replace(/"/g,'""')}"`;var J=Object.defineProperty,Y=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,G=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&G(e,l,n[l]);if(Y)for(var l of Y(n))z.call(n,l)&&G(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q="FROM pragma_table_",X="WHERE",Z=(e,n,t)=>{const o=g();return[()=>V(void 0,null,(function*(){return _(o,N(yield f(h(yield e("SELECT name "+Q+"list WHERE schema='main'AND type='table'AND name IN("+ne(n)+")",n),(n=>V(void 0,[n],(function*({name:n}){return[n,N(h(yield e("SELECT name,type "+Q+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>$(o,n,_(j(o,n,g),l,((e,n,l)=>{l!=F(e,n)&&$(e,n,l)}),((e,n)=>$(e,n))))),((e,n)=>$(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!a(F(F(o,e),n)))(n,l)?N(m(h(yield e("SELECT*FROM"+k(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,t,r,i,u,d=!1)=>V(void 0,null,(function*(){const c=B();S(null!=r?r:{},(e=>h(b(null!=e?e:{}),(e=>W(c,e)))));const s=A(c);if(!d&&u&&p(s)&&O(o,n))return yield e("DROP TABLE"+k(n)),void $(o,n);if(p(s)||O(o,n)){const l=F(o,n),r=B(I(l));yield f([...h(s,(t=>V(void 0,null,(function*(){L(r,t)||(yield e(`ALTER TABLE${k(n)}ADD${k(t)}`),$(l,t,""))})))),...!d&&i?h(A(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${k(n)}DROP${k(o)}`),$(l,o))})))):[]])}else yield e(`CREATE TABLE${k(n)}(${k(t)} PRIMARY KEY ON CONFLICT REPLACE${E(h(s,(e=>l+k(e))))});`),$(o,n,g([[t,""],...h(s,(e=>[e,""]))]));if(d)a(r)?yield e("DELETE FROM"+k(n)+"WHERE 1"):yield f(S(r,((l,o)=>V(void 0,null,(function*(){a(l)?yield e("DELETE FROM"+k(n)+X+k(t)+"=?",[o]):p(s)||(yield ee(e,n,t,b(l),[o,...x(l)]))})))));else if(p(s))O(o,n)&&(yield e("DELETE FROM"+k(n)+"WHERE 1"));else{const l=m(I(F(o,n)),(e=>e!=t)),i=[],u=[];S(null!=r?r:{},((e,n)=>{T(i,n,...h(l,(n=>null==e?void 0:e[n]))),T(u,n)})),yield ee(e,n,t,l,i),yield e("DELETE FROM"+k(n)+X+k(t)+"NOT IN("+ne(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ee=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+k(n)+"("+k(t)+E(h(r,(e=>l+k(e))))+")VALUES"+v(o(`,(?${o(",?",y(r))})`,y(i)/(y(r)+1)),1)+"ON CONFLICT("+k(t)+")DO UPDATE SET"+E(h(r,(e=>k(e)+"=excluded."+k(e))),l),i)})),ne=e=>E(h(e,(()=>"?")),l),le=JSON.parse;var te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const oe=g(),re=g(),ie=(e,n,l,t,o,r,[i,u]=[],d=[])=>{let s,v,y,f=0,E=0;j(oe,d,(()=>0)),j(re,d,(()=>[]));const h=e=>te(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>te(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>te(void 0,null,(function*(){return yield h((()=>te(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>te(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),E=1,y=t(((l,t)=>te(void 0,null,(function*(){if(t){const n=t();yield h((()=>te(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>te(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(E&&(o(y),y=void 0,E=0),p),save:n=>te(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>te(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>te(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();D(l)&&D(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(c(s,e.delListener),s=void 0,p),schedule:(...e)=>te(void 0,null,(function*(){return T(F(re,d),...e),yield te(void 0,null,(function*(){if(!F(oe,d)){for($(oe,d,1);!a((e=F(re,d),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}$(oe,d,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>u),w(p)};var ue=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ae=(e,n,l,t,o,[r],i,u)=>{const[a,c,s,v]=Z(n,i,o);return ie(e,(()=>ue(void 0,null,(function*(){return yield v((()=>ue(void 0,null,(function*(){var e,n;return yield a(),le(null!=(n=null==(e=(yield c(r,U))[H])?void 0:e[de])?n:"null")}))))}))),(e=>ue(void 0,null,(function*(){return yield v((()=>ue(void 0,null,(function*(){var n,l;yield a(),yield s(r,U,{[H]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>d(n,Map)?P.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,["getDb",u],u)};var ce=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const se=(e,n,l,t,o,[r,i,[u,d,c]],s,v)=>{const[y,E,h,p]=Z(n,s,o),T=(e,n)=>ce(void 0,null,(function*(){return yield f(M(i,((l,t)=>ce(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield h(l,t,u,o,r,n))})))))})),O=(e,n)=>ce(void 0,null,(function*(){return d?yield h(c,U,{[H]:e},!0,!0,n):null}));return ie(e,(()=>ce(void 0,null,(function*(){return yield p((()=>ce(void 0,null,(function*(){yield y();const e=yield ce(void 0,null,(function*(){return N(m(yield f(M(r,((e,n)=>ce(void 0,[e,n],(function*([e,n],l){return[e,yield E(l,n)]}))))),(e=>!D(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield E(c,U))[H]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield p((()=>ce(void 0,null,(function*(){if(yield y(),a(n)){const[n,l]=e();yield T(n),yield O(l)}else{const[e,l]=n();yield T(e,!0),yield O(l,!0)}}))))}))),l,t,o,["getDb",v],v)},ve="json",ye="autoLoadIntervalSeconds",fe="rowIdColumnName",Ee="tableId",he="tableName",pe={mode:ve,[ye]:1},me={load:0,save:0,[he]:n+"_values"},Te=(e,n,l,t)=>{const o=g();return S(e,((e,r)=>{const i=v(x(R(n,s(e)?{[l]:e}:e)),0,C(n));a(i[0])||t(r,i[0])||$(o,r,i)})),o};var Oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ae="pragma ",Le="data_version",Pe="schema_version",be=(e,l,t,o,r,d,a,c)=>{let y,f;const[E,h,p,m]=(e=>{const l=(e=>R(pe,s(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[ye];if(l.mode==ve){const{storeTableName:e=n}=l;return[1,t,[e],B(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=v(x(R(me,i)),0,C(me)),d=u[2],a=B(d);return[0,t,[Te(o,{[Ee]:null,[fe]:U},Ee,(e=>W(a,e)&&e==d)),Te(r,{[he]:null,[fe]:U,deleteEmptyColumns:0,deleteEmptyTable:0},he,((e,n)=>W(a,n)&&n==d)),u],a]})(l);return(E?ae:se)(e,d?(e,n)=>Oe(void 0,null,(function*(){return d(e,n),yield t(e,n)})):t,(e=>[i((()=>Oe(void 0,null,(function*(){try{const n=(yield t(Ae+Le))[0][Le],l=(yield t(Ae+Pe))[0][Pe];n==(null!=y?y:y=n)&&l==(null!=f?f:f=l)||(e(),y=n,f=l)}catch(e){}}))),1e3*h),o((n=>m.has(n)?e():0))]),(([e,n])=>{u(e),y=f=null,r(n)}),a,p,A(m),c)};exports.createCrSqliteWasmPersister=(e,n,l,t,o)=>be(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=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(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);
1
+ "use strict";const e=e=>typeof e,n="tinybase",t=",",l=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=setInterval,u=clearInterval,d=e=>null==e,a=(e,n,t)=>d(e)?null==t?void 0:t():n(e),c=n=>e(n)==l,s=(e,n,t)=>e.slice(n,t),v=e=>e.length,y=e=>{return n=function*(){return r.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},f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),E=e=>0==v(e),h=(e,n)=>e.filter(n),m=(e,...n)=>e.push(...n),O=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},T=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=e=>A.getPrototypeOf(e),b=A.keys,w=A.freeze,N=(e=[])=>A.fromEntries(e),R=(...e)=>A.assign({},...e),S=(e,n)=>p(A.entries(e),(([e,t])=>n(t,e))),x=e=>A.values(e),C=e=>v(b(e)),g=e=>(e=>!d(e)&&a(L(e),(e=>e==A.prototype||d(L(e))),(()=>!0)))(e)&&0==C(e),D=e=>new Map(e),I=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},F=(e,n)=>null==e?void 0:e.get(n),M=(e,n)=>{var t;return p([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},$=(e,n,t)=>d(t)?(P(e,n),e):null==e?void 0:e.set(n,t),j=(e,n,t)=>(O(e,n)||$(e,n,t()),F(e,n)),_=(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)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),B=e=>new Set(Array.isArray(e)||d(e)?e:[e]),W=(e,n)=>null==e?void 0:e.add(n),H="_",U="_id",k=e=>`"${e.replace(/"/g,'""')}"`;var J=Object.defineProperty,Y=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,G=(e,n,t)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,K=(e,n)=>{for(var t in n||(n={}))q.call(n,t)&&G(e,t,n[t]);if(Y)for(var t of Y(n))z.call(n,t)&&G(e,t,n[t]);return e},V=(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 Q="FROM pragma_table_",X="WHERE",Z=(e,n,l)=>{const o=D();return[()=>V(void 0,null,(function*(){return _(o,N(yield y(p(yield e("SELECT name "+Q+"list WHERE schema='main'AND type='table'AND name IN("+ne(n)+")",n),(n=>V(void 0,[n],(function*({name:n}){return[n,N(p(yield e("SELECT name,type "+Q+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>$(o,n,_(j(o,n,D),t,((e,n,t)=>{t!=F(e,n)&&$(e,n,t)}),((e,n)=>$(e,n))))),((e,n)=>$(o,n)))})),(n,t)=>V(void 0,null,(function*(){return((e,n)=>!d(F(F(o,e),n)))(n,t)?N(h(p(yield e("SELECT*FROM"+k(n)),(e=>{return[e[t],(n=K({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!d(e)&&!g(n)))):{}})),(n,l,r,i,u,a=!1)=>V(void 0,null,(function*(){const c=B();S(null!=r?r:{},(e=>p(b(null!=e?e:{}),(e=>W(c,e)))));const s=T(c);if(!a&&u&&E(s)&&O(o,n))return yield e("DROP TABLE"+k(n)),void $(o,n);if(E(s)||O(o,n)){const t=F(o,n),r=B(I(t));yield y([...p(s,(l=>V(void 0,null,(function*(){P(r,l)||(yield e(`ALTER TABLE${k(n)}ADD${k(l)}`),$(t,l,""))})))),...!a&&i?p(T(r),(o=>V(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${k(n)}DROP${k(o)}`),$(t,o))})))):[]])}else yield e(`CREATE TABLE${k(n)}(${k(l)} PRIMARY KEY ON CONFLICT REPLACE${f(p(s,(e=>t+k(e))))});`),$(o,n,D([[l,""],...p(s,(e=>[e,""]))]));if(a)d(r)?yield e("DELETE FROM"+k(n)+"WHERE 1"):yield y(S(r,((t,o)=>V(void 0,null,(function*(){d(t)?yield e("DELETE FROM"+k(n)+X+k(l)+"=?",[o]):E(s)||(yield ee(e,n,l,b(t),[o,...x(t)]))})))));else if(E(s))O(o,n)&&(yield e("DELETE FROM"+k(n)+"WHERE 1"));else{const t=h(I(F(o,n)),(e=>e!=l)),i=[],u=[];S(null!=r?r:{},((e,n)=>{m(i,n,...p(t,(n=>null==e?void 0:e[n]))),m(u,n)})),yield ee(e,n,l,t,i),yield e("DELETE FROM"+k(n)+X+k(l)+"NOT IN("+ne(u)+")",u)}})),n=>V(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},ee=(e,n,l,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+k(n)+"("+k(l)+f(p(r,(e=>t+k(e))))+")VALUES"+s(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+k(l)+")DO UPDATE SET"+f(p(r,(e=>k(e)+"=excluded."+k(e))),t),i)})),ne=e=>f(p(e,(()=>"?")),t),te=JSON.parse;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=D(),re=D(),ie=(e,n,t,l,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,p=0;j(oe,c,(()=>0)),j(re,c,(()=>[]));const E=e=>le(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>le(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(t,l)=>le(void 0,null,(function*(){return yield E((()=>le(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>le(void 0,[...t],(function*(t={},o={}){return h.stopAutoLoad(),yield h.load(t,o),p=1,y=l(((t,l)=>le(void 0,null,(function*(){if(l){const n=l();yield E((()=>le(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>le(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>le(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>le(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>le(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();g(t)&&g(l)||h.save((()=>[t,l]))})),h})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,h),schedule:(...e)=>le(void 0,null,(function*(){return m(F(re,c),...e),yield le(void 0,null,(function*(){if(!F(oe,c)){for($(oe,c,1);!d((e=F(re,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}$(oe,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>u),w(h)};var ue=(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 de="store",ae=(e,n,t,l,o,[r],i,u)=>{const[d,a,c,s]=Z(n,i,o);return ie(e,(()=>ue(void 0,null,(function*(){return yield s((()=>ue(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield a(r,U))[H])?void 0:e[de])?n:"null")}))))}))),(e=>ue(void 0,null,(function*(){return yield s((()=>ue(void 0,null,(function*(){var n,t;yield d(),yield c(r,U,{[H]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?A.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,["getDb",u],u)};var ce=(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 se=(e,n,t,l,o,[r,i,[u,a,c]],s,v)=>{const[f,p,E,m]=Z(n,s,o),O=(e,n)=>ce(void 0,null,(function*(){return yield y(M(i,((t,l)=>ce(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield E(t,l,u,o,r,n))})))))})),T=(e,n)=>ce(void 0,null,(function*(){return a?yield E(c,U,{[H]:e},!0,!0,n):null}));return ie(e,(()=>ce(void 0,null,(function*(){return yield m((()=>ce(void 0,null,(function*(){yield f();const e=yield ce(void 0,null,(function*(){return N(h(yield y(M(r,((e,n)=>ce(void 0,[e,n],(function*([e,n],t){return[e,yield p(t,n)]}))))),(e=>!g(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield p(c,U))[H]:{}}));return g(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield m((()=>ce(void 0,null,(function*(){if(yield f(),d(n)){const[n,t]=e();yield O(n),yield T(t)}else{const[e,t]=n();yield O(e,!0),yield T(t,!0)}}))))}))),t,l,o,["getDb",v],v)},ve="json",ye="autoLoadIntervalSeconds",fe="rowIdColumnName",pe="tableId",Ee="tableName",he={mode:ve,[ye]:1},me={load:0,save:0,[Ee]:n+"_values"},Oe=(e,n,t,l)=>{const o=D();return S(e,((e,r)=>{const i=s(x(R(n,c(e)?{[t]:e}:e)),0,C(n));d(i[0])||l(r,i[0])||$(o,r,i)})),o};var Te=(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 Pe="pragma ",Ae="data_version",Le="schema_version",be=(e,t,l,o,r,d,a,v)=>{let y,f;const[p,E,h,m]=(e=>{const t=(e=>R(he,c(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[ye];if(t.mode==ve){const{storeTableName:e=n}=t;return[1,l,[e],B(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=t,u=s(x(R(me,i)),0,C(me)),d=u[2],a=B(d);return[0,l,[Oe(o,{[pe]:null,[fe]:U},pe,(e=>W(a,e)&&e==d)),Oe(r,{[Ee]:null,[fe]:U,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>W(a,n)&&n==d)),u],a]})(t);return(p?ae:se)(e,d?(e,n)=>Te(void 0,null,(function*(){return d(e,n),yield l(e,n)})):l,(e=>[i((()=>Te(void 0,null,(function*(){try{const n=(yield l(Pe+Ae))[0][Ae],t=(yield l(Pe+Le))[0][Le];n==(null!=y?y:y=n)&&t==(null!=f?f:f=t)||(e(),y=n,f=t)}catch(e){}}))),1e3*E),o((n=>m.has(n)?e():0))]),(([e,n])=>{u(e),y=f=null,r(n)}),a,h,T(m),v)};exports.createCrSqliteWasmPersister=(e,n,t,l,o)=>be(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,o,n);