tinybase 4.3.21 → 4.3.23

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 +15 -11
  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 +14 -14
  221. package/readme.md +2 -2
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),s=t(0),r="type",I="default",c="Listener",$="get",i="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",m=h+u,g="Sorted"+h+u,f="Cell",w=f+u,y="Value",T=y+"s",v=y+u,V=Promise,x=isFinite,R=(e,t)=>e instanceof t,k=e=>null==e,S=e=>e==o||e==d,P=e=>t(e)==o,A=e=>Array.isArray(e),E=(e,t,l)=>e.slice(t,l),D=e=>e.length,O=async e=>V.all(e),N=e=>{const l=t(e);return S(l)||l==s&&x(e)?l:void 0},G=(e,t)=>e.every(t),L=(e,t)=>e.sort(t),j=(e,t)=>e.forEach(t),M=(e,t=a)=>e.join(t),J=(e,t)=>e.map(t),z=(e,t)=>e.filter(t),W=(e,...t)=>e.push(...t),B=e=>e.pop(),F=(e,...t)=>e.unshift(...t),U=e=>e.shift(),_=Object,Z=_.keys,H=_.freeze,Q=e=>R(e,_)&&e.constructor==_,q=(e,t)=>J(_.entries(e),(([e,l])=>t(l,e))),K=e=>D(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)=>J([...e?.entries()??[]],(([e,l])=>t(l,e))),se=(e,t,l)=>k(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 ",ie="A function for",ue=", 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(c),Ve="?: ",xe=" | undefined",Re="NonNullable",ke="Partial",Se="Props",Pe="Provider",Ae=`Registers a ${ve} that will be called`,Ee="Represents",De="rowId: "+we,Oe="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:a),lt=(e=0,t,l=0)=>Ct[t]+Ke+tt(e,1)+(l?" when setting it":a),at=(e,t=0)=>Ee+` a Row when ${t?"s":"g"}etting ${tt()} the '${e}' `+p,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)=>ie+" listening to changes to "+mt[e]+" in "+mt[t],It=(e,t,l=0)=>Ae+" whenever "+mt[e]+" in "+mt[t]+" change"+(l?a:"s"),ct=e=>`the '${e}' `+p,$t=e=>"the specified Row in "+ct(e),it=(e,t=0)=>Ct[t]+` ${tt()} `+ct(e),ut=(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=[$,"has","set","del","set","forEach",i,a],mt=[je,b,Ye+p+Ke+u,$e+p,Ye+h+Ke+u,$e+h,Ye+f+Ke+u,$e+f,"invalid Cell changes",T,Ye+y+Ke+u,$e+y,"invalid Value changes",Ye+"sorted "+h+Ke+u,Ye+f+Ke+u+" anywhere",Ye+"number of Rows"],gt=[a,"tabular ","keyed value "],ft=e=>new Set(A(e)||k(e)?e:[e]),wt=(e,t)=>e?.add(t),yt=/[^A-Za-z]+/,Tt=/[^A-Za-z0-9]+/,vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Vt=e=>e.includes(n),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-D(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),kt=e=>e.flat(1e3),St=(e,t=0)=>M(J(e.split(Tt),((e,l)=>(l>0||t?Ie:ce)(E(e,0,1))+E(e,1)))),Pt=e=>Ie(M((e&&!yt.test(e[0])?e:" "+e).split(Tt),"_")),At=e=>`/** ${e}. */`,Et=(...e)=>M(z(e,(e=>e)),", "),Dt=(...e)=>"{"+M(e,"; ")+"}",Ot=(...e)=>Dt(...J(e,(e=>"readonly "+e))),Nt=()=>{const e=[ae(),ae(),ae(),ae()],t=ae(),l=ae(),n=e=>{const t=e.indexOf(" as ");return-1!=t?E(e,t+4):e};return[(...e)=>M(kt(e),"\n"),(t,l,...a)=>j(a,(a=>j([0,1],(n=>(t??n)==n?wt(re(e[n],l,ft),a):0)))),(e,l,n,o=a,d=1)=>xt(t,e,[l,n,o,d]),(e,t,a)=>xt(l,e,A(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>ne(l,e)===t?e:xt(l,e,t),(t=0)=>J([...L(de(e[t],((e,t)=>`import {${M(L(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)),a],(e=>e.replace("{React}","React"))),()=>de(t,(([e,t,l,n],o)=>[At(t),`${n?fe+" ":a}type ${o}${l} = ${e};`,a])),()=>de(l,((e,t)=>(e=A(e)?e:[e],W(e,B(e)+";"),[`const ${t} = ${U(e)}`,e,a])))]},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[r],e[I],l(Pt(t),`'${t}'`),St(t,1)))),e=>q(t,((t,a)=>e(a,t[r],t[I],l(Pt(a),`'${a}'`),St(a,1))))],jt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,s=e(b,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t,l)=>`'${e}'${k(l)?"?":a}: ${t}`)))+"}"))),lt(1,5)),r=e(b+He,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),lt(1,5,1)),I=e(p+we,"keyof "+s,"A "+p+" Id in "+je),$=`<TId extends ${I}>`,i=e(p,Re+`<${s}[TId]>`,"A "+p+" in "+je,$),u=e(p+He,Re+`<${r}[TId]>`,"A "+p+" in "+je+Qe,$),y=e(h,i+"<TId>[Id]","A "+h+" in a "+p,$),T=e(h+He,u+"<TId>[Id]","A "+h+" in a "+p+Qe,$),v=e(f+we,`Extract<keyof ${y}<TId>, Id>`,"A "+f+" Id in a "+h,$),V=e(f,Re+`<${s}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${I}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${I}, CId = ${v}<TId>>`,0),R=e(f+pe,`(...[cellId, cell]: ${x}<TId>)`+Ze,st($e+f+" Id, and "+f),$),S=e(h+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ze+") "+Ze,st($e+h+" Id, and a "+f+" iterator"),$),P=e(p+f+pe,`(cellId: ${v}<TId>, count: number) `+Ze,st($e+f+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ze}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+pe,`(...[tableId, forEachRow]: ${A})`+Ze,st($e+p+" Id, and a "+h+" iterator"),a),D=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${D}) => CellChange`,ie+" returning information about any Cell's changes during a "+ze),N=e(b+c,`(${d}, getCellChange: ${O}${xe})`+Ze,rt(1)),G=e(C+c,`(${d})`+Ze,rt(2)),L=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${O}${xe})`+Ze,rt(3)),j=e(p+w+c,`(${d}, tableId: ${I})`+Ze,rt(14,3)),M=e(h+"Count"+c,`(${d}, tableId: ${I})`+Ze,rt(15,3)),J=e(m+c,`(${d}, tableId: ${I})`+Ze,rt(4,3)),z=e(g+c,"("+Et(d,"tableId: "+I,"cellId: Id"+xe,"descending: boolean","offset: number","limit: number"+xe,"sortedRowIds: Ids")+")"+Ze,rt(13,3)),W=e(h+c,"("+Et(""+d,"tableId: "+I,De,`getCellChange: ${O}${xe}`)+")"+Ze,rt(5,3)),B=e(w+c,"("+Et(""+d,"tableId: "+I,De)+")"+Ze,rt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${De}, cellId: CId, newCell: ${V}<TId, CId> ${xe}, oldCell: ${V}<TId, CId> ${xe}, getCellChange: ${O} ${xe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,i,u,y,T,v,V,R,S,P,E,N,G,L,j,M,J,z,W,B,e(f+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Ze,rt(7,5)),e(ye+f+c,`(${d}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+Ze,rt(8))]},(t,l)=>{const o=t+": "+l,d=e(T,Dt(...n(((e,t,l)=>`'${e}'${k(l)?"?":a}: ${t}`))),lt(2,5)),s=e(T+He,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),lt(2,5,1)),r=e(y+we,"keyof "+d,"A "+y+" Id in "+je),I=e(y,Re+`<${d}[VId]>`,"A "+y+" Id in "+je,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+je,`<VId = ${r}>`,0),i=e(y+pe,`(...[valueId, value]: ${$})`+Ze,st($e+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ie+" returning information about any Value's changes during a "+ze),p=e(T+c,`(${o}, getValueChange: ${u}${xe})`+Ze,rt(9)),b=e(v+c,`(${o})`+Ze,rt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${I}<VId> ${xe}, oldValue: ${I}<VId> ${xe}, getValueChange: ${u} ${xe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,I,i,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ze,rt(11)),e(ye+y+c,`(${o}, valueId: Id, invalidValues: any[])`+Ze,rt(12))]},(t,l)=>e(Me+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ze,ie+" listening to the completion of a "+ze)],Mt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),Jt=(e,t=a)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,Wt=(e,t,n)=>{const[o,s,$,V,x,R,S,A]=Nt(),[E,D,O]=Lt(e,t,x),[N,G,L]=jt($,E,D,O),J=ae(),z=(e=0)=>de(J,(([t,l,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${l} => ${n},`]:[s+d+`(${t}): ${l};`];return e||F(r,At(o)),W(r,a),r})),B=(e,t,l,n,o,d=a)=>xt(J,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,s=a,r=a)=>B(ht[e]+t+(4==e?ke:a)+l,d,n,(n==H?Jt:Mt)(ht[e]+(4==e?ke:a)+l,s,e?void 0:n),o,r),_=(e,t,l,n=a,o=a,d=1,s=a)=>B(i+e+c,(n?n+", ":a)+ve+": "+t+(d?", mutator?: boolean":a),we,zt(i+e+c,o,d?"mutator":a),l,s),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),q=[],K=ae();let Y=[],te=[];if(s(1,Z,H,`create${H} as create${H}Decl`),X(e))s(null,l,b);else{s(0,l,"CellChange"),s(null,l,u);const[e,t,n,o,c,i,y,T,v,V,R,S,A,O,G,L,J,z,B,F,X,te,le,oe]=N(Q,H),de=ae();E(((e,t)=>{const l=`<'${e}'>`,a=[$(t+p,o+l,Ee+` the '${e}' `+p),$(t+p+He,c+l,Ee+` the '${e}' `+p+Qe),$(t+h,i+l,at(e)),$(t+h+He,y+l,at(e,1)),$(t+f+we,T+l,`A Cell Id for the '${e}' `+p),$(t+f+pe,V+l,st(`a Cell Id and value from a Row in the '${e}' `+p)),$(t+h+pe,R+l,st(`a Row Id from the '${e}' Table, and a Cell iterator`)),$(t+p+f+pe,S+l,st(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];se(de,e,a),s(1,Z,...a)})),s(1,Z,e,t,n,T,A,O,G,L,J,z,B,F,X,te,le,oe),Y=[e,t,n,T,O,G,L,J,z,B,F,X,te,le,de],j([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,lt(1,n),t,l))),U(0,a,C,n+Le,nt(p,je)),U(5,a,p,_e,ot(p,je),"tableCallback: "+A,"tableCallback as any"),E(((e,t,l)=>{const[n,o,s,r,I,c,$,i]=ne(de,e);j([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],s)=>U(s,t,p,n,it(e,s),o,l+d))),U(0,t,p+w,u,nt(f,"the whole of "+ct(e)),a,l),U(5,t,p+f,_e,ot(p+f,"the whole of "+ct(e)),"tableCellCallback: "+i,l+", tableCellCallback as any"),U(0,t,h+"Count","number","Gets the number of Rows in the "+ct(e),a,l),U(0,t,m,u,nt(h,ct(e)),a,l),U(0,t,g,u,nt(h,ct(e),1),"cellId?: "+I+Ge,l+", cellId, descending, offset, limit"),U(5,t,h,_e,ot(h,ct(e)),"rowCallback: "+$,l+", rowCallback as any"),j([[s],[d],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=a,d=a],s)=>U(s,t,h,n,ut(e,s),De+o,l+", rowId"+d))),U(6,t,h,we+xe,"Add a new Row to "+ct(e),"row: "+r+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+Le,nt(f,$t(e)),De,l+", rowId"),U(5,t,f,_e,ot(f,$t(e)),De+", cellCallback: "+c,l+", rowId, cellCallback as any"),D(e,((n,o,s,r,I)=>{const c="Map"+St(o,1);se(K,o,c);const $=o+(k(s)?xe:a);j([[$],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,s=a],c)=>U(c,t+I,f,o,pt(e,n,c),De+d,l+", rowId, "+r+s))),U(1,t+I,p+f,d,Ct[1]+` the '${n}' Cell anywhere in `+ct(e),a,l+", "+r)}))})),U(0,a,b+Te,Te,lt(1,6)),U(2,a,b+Te,H,lt(1,7),"tablesJson: "+Te,"tables"+Te),_(b,O,lt(1,8)+" changes"),_(C,G,It(2,0,1)),_(p,L,It(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,J,It(14,3,1),`tableId: ${n} | null`,"tableId"),_(h+"Count",z,It(15,3),`tableId: ${n} | null`,"tableId"),_(m,B,It(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,F,It(13,3,1),Et("tableId: TId",`cellId: ${T}<TId>`+xe,"descending: boolean","offset: number","limit: number"+xe),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,X,It(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,te,It(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,le,It(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>ne(de,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(ye+f,oe,Ae+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ee(K)),W(q,".set"+b+Oe+"({",kt(E(((e,t,l)=>[`[${l}]: {`,...D(e,((e,t,l,n)=>`[${n}]: {[${x(Pt(r),`'${r}'`)}]: ${x(Pt(t),`'${t}'`)}${k(l)?a:`, [${x(Pt(I),`'${I}'`)}]: `+(P(l)?x(Pt(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(X(t))s(null,l,T);else{const[e,t,n,o,c,$,i,u,p]=G(Q,H);s(1,Z,e,t,n,c,$,i,u,p),te=[e,t,n,$,i,u],j([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,T,e,lt(2,n),t,l))),U(0,a,v,n+Le,nt(y,je)),U(5,a,y,"void",ot(y,je),"valueCallback: "+c,"valueCallback as any"),O(((e,t,l,n,o)=>{const s="Map"+St(t,1);se(K,t,s),j([[t],[d],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,l,d=a],s)=>U(s,o,y,t,bt(e,s),l,n+d)))})),U(0,a,T+Te,Te,lt(2,6)),U(2,a,T+Te,H,lt(2,7),"valuesJson: "+Te,"values"+Te),_(T,$,lt(2,8)+" changes"),_(v,i,It(10,0,1)),_(y,u,It(11,0),`valueId: ${n} | null`,"valueId"),_(ye+y,p,Ae+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ee(K)),s(0,l,"ValueChange"),W(q,".set"+T+Oe+"({",O(((e,t,l,n)=>[`[${n}]: {[${x(Pt(r),`'${r}'`)}]: ${x(Pt(t),`'${t}'`)}${k(l)?a:`, [${x(Pt(I),`'${I}'`)}]: `+(P(l)?x(Pt(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${T}]`,lt(0,0)),U(2,a,"Content",H,lt(0,2),`[tables, values]: [${b}, ${T}]`,"[tables, values]"),U(2,a,Je,H,`Applies a set of ${Je} to the Store`,"transactionChanges: "+Je,"transactionChanges"),oe(K,((e,t)=>$(t,`(cell: ${e}${xe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,l,"DoRollback",we,"IdOrNull",Te,"Store",Je),s(0,l,"Get"+Je,"GetTransactionLog"),U(0,a,Te,Te,lt(0,6)),U(2,a,Te,H,lt(0,7),"tablesAndValuesJson: "+Te,"tablesAndValuesJson"),U(7,a,ze,"Return",We,ge,"actions, doRollback","<Return>"),U(7,a,"start"+Me,H,Be),U(7,a,"finish"+Me,H,Fe,me,"doRollback");const le=L(Q,H);return _("Start"+Me,le,Ae+" just before the start of the "+ze,a,a,0),_("WillFinish"+Me,le,Ae+" just before "+Ue,a,a,0),_("DidFinish"+Me,le,Ae+" just after "+Ue,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",Ct[0]+" the underlying Store object"),s(1,l,"createStore"),s(1,Z,H,`create${H} as create${H}Decl`,le),x("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...z(1),"}"]),[o(...R(0),...S(),fe+" interface "+H+" {",...z(0),"}",a,At(`Creates a ${H} object`),fe+" function create"+H+"(): "+H+";"),o(...R(1),fe+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),Y,te]},Bt=e=>$+e,Ft=e=>Et(Bt(e),Bt(e)+Ce),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+he,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+pe+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ze,Zt),sl="then, then"+Ce,rl=tl+Xt+we,Il="View",cl=(e,...t)=>Et(...t,ve+": "+e,ve+he,"mutator?: boolean"),$l=(...e)=>Et(...e,ve,ve+Ce,"mutator"),il=(e,t,n,o,d)=>{const[s,r,I,$,i,V,x,R]=Nt(),[S,P,A]=Lt(e,t,i),E=`./${St(n)}.d`,D=`./${St(n)}-ui-react.d`,O="tinybase/ui-react",N=St(n,1),G=St(N),L=N+"Or"+N+we,j=G+"Or"+N+we,J=G+`={${G}}`,z=ae(),B=(e,t,l,n,o,d=a)=>(r(1,D,e+" as "+e+"Decl"),xt(z,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>B("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,s=a,I=a,c=a)=>(r(1,O,`use${t} as use${t}Core`),U(e,Et(o,K,I),l,ee+`(${j}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,s)),Z=(e,t,l,a)=>B(e,t,1,l,a),H=(e=0)=>de(z,(([t,l,n,o,d],s)=>{const r=e?[fe+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[fe+` function ${s}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||F(r,At(o)),W(r,a),r}));r(null,l,we,"Store",pe,Ht+"ized"+pe),r(0,O,"ComponentReturnType"),r(1,O,"useCellIds"),r(null,O,"ExtraProps"),r(0,E,N);const Q=I(L,N+" | "+we,`Used when you need to refer to a ${N} in a React hook or component`),q=I(Pe+Se,Ot(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,D,Q,q);const K=j+Ve+Q;i("{createContext, useContext, useMemo}","React"),i("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",j+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${Y}(${j} as Id);`,`return hook(...preParams, ((${j} == null || typeof ${j} == 'string')`,`? ${G} : ${j})?.getStore(), ...postParams)`]),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",`${j}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${j}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=i("NullComponent","() => null");if(!X(e)){const[e,t,n,d,s,i,y,T,v,V,x,R,A,O,L]=o;r(null,E,e,t,n,s,i,y,T,v,V,x,R,A,O),r(0,E,d),r(1,E,N),r(null,l,u,"IdOrNull");const j=$("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",M(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",M(S(((e,t,l)=>`tableId == ${l} ? ${M(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(b,b,e,lt(1,0)+ue);const B=_(C,C,n+Le,nt(p,je)+ue);_(Ne+b+pe,Ne+b+pe,el,lt(1,9)+Kt,Et(Bt(b)+Qt+t,Bt(b)+he),Ft(b),Yt,Et(ol,`tables: ${t})`+Ze,Zt),sl),_(be+b+pe,be+b+pe,pe,lt(1,12),a,a,a,dl,sl);const F=I(f+Se,Ot("tableId?: TId","rowId: Id","cellId?: CId",G+Ve+N,Ut),dt($e+f),`<TId extends ${n}, CId extends ${d}<TId>>`),U=I(h+Se,Ot("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+h),`<TId extends ${n}>`),H=I(p+Se,Ot("tableId?: TId",G+Ve+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),dt($e+p),`<TId extends ${n}>`),Q=I("Sorted"+p+Se,Ot("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 "+p),`<TId extends ${n}>`),q=I(b+Se,Ot(G+Ve+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),dt(tt(1,1)));r(1,D,q,H,Q,U,F),Z(b+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)+ue),S(((e,t,l)=>{const[n,o,d,s,I]=ne(L,e);r(null,E,n,o,d,s,I),_(t+p,p,n,it(e)+ue,a,l),_(t+p+w,p+w,u,nt(f,"the whole of "+ct(e))+ue,a,l);const c=_(t+m,m,u,nt(h,ct(e))+ue,a,l),$=_(t+g,g,u,nt(h,ct(e),1)+ue,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,ut(e)+ue,rl,Et(l,tl)),_(t+w,w,I+Le,nt(f,$t(e))+ue,rl,Et(l,tl)),_(Ne+t+p+pe,Ne+p+pe,el,it(e,9)+Kt,Et(Bt(p)+Qt+o,Bt(p)+he),Et(l,Ft(p)),Yt,Et(ol,`table: ${o})`+Ze,Zt),sl),_(be+t+p+pe,be+p+pe,pe,it(e,12),a,l,a,dl,sl),_(Ne+t+h+pe,Ne+h+pe,el,ut(e,9)+Kt,Et(rl,Bt(h)+Qt+s,Bt(h)+he),Et(l,tl,Ft(h)),Yt,Et(ol,`row: ${s})`+Ze,Zt),sl),_("Add"+t+h+pe,"Add"+h+pe,el,ut(e,10)+Kt,Et(Bt(h)+Qt+s,Bt(h)+he),Et(l,Ft(h)),Yt,"then?: ("+Et(rl+xe,"store: Store","row: "+s+")"+Ze,"then"+he)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(Ne+t+ke+h+pe,Ne+ke+h+pe,el,ut(e,11)+Kt,Et(rl,Bt(ke+h)+Qt+s,Bt(ke+h)+he),Et(l,tl,Ft(ke+h)),Yt,Et(ol,`partialRow: ${s})`+Ze,Zt),sl),_(be+t+h+pe,be+h+pe,pe,ut(e,12),rl,Et(l,tl),a,dl,sl);const i=Z(t+h+Il,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+al+`}: ${U}<'${e}'>`,[le+`(${oe}(customCellIds, `+l+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,ll,"cellId={cellId}",J,_t,"/>;","})"+al+", rowId)"],ut(e,13)+ue);Z(t+"Sorted"+p+Il,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,j+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${l}, ${i});`,it(e,13)+", sorted"+ue),Z(t+p+Il,`props: ${H}<'${e}'>`,j+"(props, "+c+`(props.${G}), ${l}, ${i});`,it(e,13)+ue),P(e,((n,o,d,s,I)=>{const c="Map"+St(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+f,f,o+(k(d)?xe:a),pt(e,n)+ue,rl,Et(l,tl,s));_(Ne+t+I+f+pe,Ne+f+pe,el,pt(e,n,9)+Kt,Et(rl,Bt(f)+Qt+o+" | "+c,Bt(f)+he),Et(l,tl,s,Ft(f)),Yt,Et(ol,`cell: ${o} | ${c})`+Ze,Zt),sl),_(be+t+I+f+pe,be+f+pe,pe,pt(e,n,12),Et(rl,"forceDel?: boolean"),Et(l,tl,s,"forceDel"),a,dl,sl),Z(t+I+f+Il,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],pt(e,n,13)+ue)}))}));const K=M(S((e=>ne(L,e)?.[4]??a))," | ");_(b+c,b+c,_e,lt(1,8)+" changes",cl(s),$l()),_(C+c,C+c,_e,It(2,0,1),cl(i),$l()),_(p+c,p+c,_e,It(3,0),cl(y,`tableId: ${n} | null`),$l("tableId")),_(p+w+c,p+w+c,_e,It(14,3,1),cl(T,`tableId: ${n} | null`),$l("tableId")),_(m+c,m+c,_e,It(4,3,1),cl(V,`tableId: ${n} | null`),$l("tableId")),_(g+c,g+c,_e,It(13,3,1),cl(x,`tableId: ${n} | null`,"cellId: "+K+xe,"descending: boolean","offset: number","limit: number"+xe),$l("tableId","cellId","descending","offset","limit")),_(h+c,h+c,_e,It(5,3),cl(R,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(w+c,w+c,_e,It(6,5,1),cl(A,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(f+c,f+c,_e,It(7,5),cl(O,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${K} | null`),$l("tableId",tl,"cellId"))}if(!X(t)){const[e,t,l,n,o,s]=d;r(null,E,...d),r(1,E,N);const i=$("getDefaultValueComponent","valueId: Id",M(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(T,T,e,lt(2,0)+ue);const u=_(v,v,l+Le,nt(y,je)+ue);_(Ne+T+pe,Ne+T+pe,el,lt(2,9)+Kt,Et(Bt(T)+Qt+t,Bt(T)+he),Ft(T),Yt,Et(ol,`values: ${t})`+Ze,Zt),sl),_(Ne+ke+T+pe,Ne+ke+T+pe,el,lt(2,11)+Kt,Et(Bt(ke+T)+Qt+t,Bt(ke+T)+he),Ft(ke+T),Yt,Et(ol,`partialValues: ${t})`+Ze,Zt),sl),_(be+T+pe,be+T+pe,pe,lt(2,12),a,a,a,dl,sl);const p=I(y+Se,Ot("valueId?: VId",G+Ve+N,Ut),dt("a Value"),`<VId extends ${l}>`),b=I(T+Se,Ot(G+Ve+N,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,nl,Ut),dt(tt(2,1)));r(1,D,b,p),Z(T+Il,"{"+G+", valueComponents, getValueComponentProps"+al+"}: "+b,[le+`(${u}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,_t,"/>;","}), separator)"],lt(2,13)+ue),A(((e,t,l,n,o)=>{const d="Map"+St(t,1);r(0,E,d),r(1,E,d);const s=_(o+y,y,t,bt(e)+ue,a,n);_(Ne+o+y+pe,Ne+y+pe,el,bt(e,9)+Kt,Et(Bt(y)+Qt+t+" | "+d,Bt(y)+he),Et(n,Ft(y)),Yt,Et(ol,`value: ${t} | ${d})`+Ze,Zt),sl),_(be+o+y+pe,be+y+pe,pe,bt(e,12),a,n,a,dl,sl),Z(o+y+Il,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],bt(e,13)+ue)})),_(T+c,T+c,_e,lt(2,8)+" changes",cl(n),$l()),_(v+c,v+c,_e,It(10,0,1),cl(o),$l()),_(y+c,y+c,_e,It(11,0),cl(s,`valueId: ${l} | 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),...x(),...H(0)),s(...V(1),...R(),...H(1))]},ul=(e,t,l)=>{if(X(e)&&X(t))return[a,a,a,a];const[n,o,d,s]=Wt(e,t,l);return[n,o,...il(e,t,l,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)||G(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ae();if(G(a,(t=>G(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=re(n,a,(()=>[N(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==N(o)})))))return t[l]={},te(n,(([e,,[,n],o],d)=>{t[l][d]={[r]:e,...o==D(a)?{[I]:n}:{}}})),1}))?t:{}},l=()=>{const t=pl(e.getValuesSchemaJson());return X(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:N(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(bl+"standalone")).format,W(l,await import(Cl+"estree"),await import(Cl+"typescript"))}catch(e){n=async e=>e}return await O(J(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:D(e.getValueIds()),jsonLength:D(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=ml},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="tinybase",a="",n=",",o=t(a),d=t(!0),s=t(0),r="type",I="default",c="Listener",$="get",i="add",u="Ids",p="Table",b=p+"s",C=p+u,h="Row",m=h+u,g="Sorted"+h+u,f="Cell",w=f+u,y="Value",T=y+"s",v=y+u,V=Promise,x=isFinite,R=e=>null==e,k=(e,t,l)=>R(e)?l?.():t(e),S=e=>e==o||e==d,P=e=>t(e)==o,A=e=>Array.isArray(e),E=(e,t,l)=>e.slice(t,l),O=e=>e.length,D=async e=>V.all(e),N=e=>{const l=t(e);return S(l)||l==s&&x(e)?l:void 0},G=(e,t)=>e.every(t),L=(e,t)=>e.sort(t),j=(e,t)=>e.forEach(t),M=(e,t=a)=>e.join(t),J=(e,t)=>e.map(t),z=(e,t)=>e.filter(t),W=(e,...t)=>e.push(...t),B=e=>e.pop(),F=(e,...t)=>e.unshift(...t),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),H=_.keys,Q=_.freeze,q=e=>!R(e)&&k(Z(e),(e=>e==_.prototype||R(Z(e))),(()=>!0)),K=(e,t)=>J(_.entries(e),(([e,l])=>t(l,e))),X=e=>O(H(e)),Y=e=>q(e)&&0==X(e),ee=(e,t)=>e?.has(t)??!1,te=e=>[...e?.values()??[]],le=(e,t)=>e?.forEach(t),ae=(e,t)=>e?.delete(t),ne=e=>new Map(e),oe=(e,t)=>e?.get(t),de=(e,t)=>le(e,((e,l)=>t(l,e))),se=(e,t)=>J([...e?.entries()??[]],(([e,l])=>t(l,e))),re=(e,t,l)=>R(l)?(ae(e,t),e):e?.set(t,l),Ie=(e,t,l)=>(ee(e,t)||re(e,t,l()),oe(e,t)),ce=e=>e.toUpperCase(),$e=e=>e.toLowerCase(),ie="a ",ue="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",be="Callback",Ce="Del",he="Deps",me=he+"?: React.DependencyList",ge="doRollback?: DoRollback",fe="actions: () => Return, "+ge,we="export",ye="Id",Te="Invalid",ve="Json",Ve=$e(c),xe="?: ",Re=" | undefined",ke="NonNullable",Se="Partial",Pe="Props",Ae="Provider",Ee=`Registers a ${Ve} that will be called`,Oe="Represents",De="rowId: "+ye,Ne="Schema",Ge="Set",Le=", descending?: boolean, offset?: number, limit?: number",je="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=$e(Je),Be="Execute a "+We+" to make multiple mutations",Fe="Explicitly starts a "+We,Ue="Explicitly finishes a "+We,_e="the end of the "+We,Ze="void",He=" => "+Ze,Qe="WhenSet",qe=" when setting it",Ke=ie+"string serialization of",Xe=" ",Ye="Gets a callback that can ",et="the ",tt=" the schema for",lt=(e=0,t=0)=>`the ${ft[e]}content of`+(t?Xe+Me:a),at=(e=0,t,l=0)=>ht[t]+Xe+lt(e,1)+(l?" when setting it":a),nt=(e,t=0)=>Oe+` a Row when ${t?"s":"g"}etting ${lt()} the '${e}' `+p,ot=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,dt=(e,t)=>`Calls a function for each ${e} in `+t,st=e=>"The props passed to a component that renders "+e,rt=e=>"A function that takes "+e,It=(e,t=0)=>ue+" listening to changes to "+gt[e]+" in "+gt[t],ct=(e,t,l=0)=>Ee+" whenever "+gt[e]+" in "+gt[t]+" change"+(l?a:"s"),$t=e=>`the '${e}' `+p,it=e=>"the specified Row in "+$t(e),ut=(e,t=0)=>ht[t]+` ${lt()} `+$t(e),pt=(e,t=0)=>ht[t]+` ${lt()} `+it(e),bt=(e,t,l=0)=>ht[l]+` the '${t}' Cell for `+it(e),Ct=(e,t=0)=>ht[t]+` the '${e}' Value`,ht=["Gets","Checks existence of","Sets","Deletes","Sets part of",Oe,"Gets "+Ke,"Sets "+Ke,Ee+" whenever",Ye+"set",Ye+"add",Ye+"set part of",Ye+"delete","Renders","Gets "+Ke+tt,"Sets"+tt,"Deletes"+tt],mt=[$,"has","set","del","set","forEach",i,a],gt=[Me,b,et+p+Xe+u,ie+p,et+h+Xe+u,ie+h,et+f+Xe+u,ie+f,"invalid Cell changes",T,et+y+Xe+u,ie+y,"invalid Value changes",et+"sorted "+h+Xe+u,et+f+Xe+u+" anywhere",et+"number of Rows"],ft=[a,"tabular ","keyed value "],wt=e=>new Set(A(e)||R(e)?e:[e]),yt=(e,t)=>e?.add(t),Tt=/[^A-Za-z]+/,vt=/[^A-Za-z0-9]+/,Vt=/^( *)\/\*\* *(.*?) *\*\/$/gm,xt=e=>e.includes(n),Rt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return ee(e,n)?Rt(e,t,l,a+1):(re(e,n,l),n)},kt=e=>e.replace(Vt,((e,t,l)=>{const a=77-O(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),St=e=>e.flat(1e3),Pt=(e,t=0)=>M(J(e.split(vt),((e,l)=>(l>0||t?ce:$e)(E(e,0,1))+E(e,1)))),At=e=>ce(M((e&&!Tt.test(e[0])?e:" "+e).split(vt),"_")),Et=e=>`/** ${e}. */`,Ot=(...e)=>M(z(e,(e=>e)),", "),Dt=(...e)=>"{"+M(e,"; ")+"}",Nt=(...e)=>Dt(...J(e,(e=>"readonly "+e))),Gt=()=>{const e=[ne(),ne(),ne(),ne()],t=ne(),l=ne(),n=e=>{const t=e.indexOf(" as ");return-1!=t?E(e,t+4):e};return[(...e)=>M(St(e),"\n"),(t,l,...a)=>j(a,(a=>j([0,1],(n=>(t??n)==n?yt(Ie(e[n],l,wt),a):0)))),(e,l,n,o=a,d=1)=>Rt(t,e,[l,n,o,d]),(e,t,a)=>Rt(l,e,A(a)?[`(${t}) => {`,a,"}"]:[`(${t}) => ${a}`]),(e,t)=>oe(l,e)===t?e:Rt(l,e,t),(t=0)=>J([...L(se(e[t],((e,t)=>`import {${M(L(te(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>xt(e)!=xt(t)?xt(e)?-1:1:e>t?1:-1)),a],(e=>e.replace("{React}","React"))),()=>se(t,(([e,t,l,n],o)=>[Et(t),`${n?we+" ":a}type ${o}${l} = ${e};`,a])),()=>se(l,((e,t)=>(e=A(e)?e:[e],W(e,B(e)+";"),[`const ${t} = ${U(e)}`,e,a])))]},Lt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},jt=(e,t,l)=>[t=>K(e,((e,a)=>t(a,Pt(a,1),l(At(a),`'${a}'`)))),(t,a)=>K(e[t],((e,t)=>a(t,e[r],e[I],l(At(t),`'${t}'`),Pt(t,1)))),e=>K(t,((t,a)=>e(a,t[r],t[I],l(At(a),`'${a}'`),Pt(a,1))))],Mt=(e,t,l,n)=>[(n,o)=>{const d=n+": "+o,s=e(b,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`)))+"}"))),at(1,5)),r=e(b+Qe,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...l(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),at(1,5,1)),I=e(p+ye,"keyof "+s,"A "+p+" Id in "+Me),$=`<TId extends ${I}>`,i=e(p,ke+`<${s}[TId]>`,"A "+p+" in "+Me,$),u=e(p+Qe,ke+`<${r}[TId]>`,"A "+p+" in "+Me+qe,$),y=e(h,i+"<TId>[Id]","A "+h+" in a "+p,$),T=e(h+Qe,u+"<TId>[Id]","A "+h+" in a "+p+qe,$),v=e(f+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+f+" Id in a "+h,$),V=e(f,ke+`<${s}[TId]>[Id][CId]`,"A "+f+" in a "+h,`<TId extends ${I}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,f+" Ids and types in a "+h,`<TId extends ${I}, CId = ${v}<TId>>`,0),k=e(f+be,`(...[cellId, cell]: ${x}<TId>)`+He,rt(ie+f+" Id, and "+f),$),S=e(h+be,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+He+") "+He,rt(ie+h+" Id, and a "+f+" iterator"),$),P=e(p+f+be,`(cellId: ${v}<TId>, count: number) `+He,rt(ie+f+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${He}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+be,`(...[tableId, forEachRow]: ${A})`+He,rt(ie+p+" Id, and a "+h+" iterator"),a),O=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ue+" returning information about any Cell's changes during a "+We),N=e(b+c,`(${d}, getCellChange: ${D}${Re})`+He,It(1)),G=e(C+c,`(${d})`+He,It(2)),L=e(p+c,`(${d}, tableId: ${I}, getCellChange: ${D}${Re})`+He,It(3)),j=e(p+w+c,`(${d}, tableId: ${I})`+He,It(14,3)),M=e(h+"Count"+c,`(${d}, tableId: ${I})`+He,It(15,3)),J=e(m+c,`(${d}, tableId: ${I})`+He,It(4,3)),z=e(g+c,"("+Ot(d,"tableId: "+I,"cellId: Id"+Re,"descending: boolean","offset: number","limit: number"+Re,"sortedRowIds: Ids")+")"+He,It(13,3)),W=e(h+c,"("+Ot(""+d,"tableId: "+I,De,`getCellChange: ${D}${Re}`)+")"+He,It(5,3)),B=e(w+c,"("+Ot(""+d,"tableId: "+I,De)+")"+He,It(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${De}, cellId: CId, newCell: ${V}<TId, CId> ${Re}, oldCell: ${V}<TId, CId> ${Re}, getCellChange: ${D} ${Re}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,i,u,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(f+c,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+He,It(7,5)),e(Te+f+c,`(${d}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+He,It(8))]},(t,l)=>{const o=t+": "+l,d=e(T,Dt(...n(((e,t,l)=>`'${e}'${R(l)?"?":a}: ${t}`))),at(2,5)),s=e(T+Qe,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),at(2,5,1)),r=e(y+ye,"keyof "+d,"A "+y+" Id in "+Me),I=e(y,ke+`<${d}[VId]>`,"A "+y+" Id in "+Me,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+Me,`<VId = ${r}>`,0),i=e(y+be,`(...[valueId, value]: ${$})`+He,rt(ie+y+" Id, and "+y)),u=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ue+" returning information about any Value's changes during a "+We),p=e(T+c,`(${o}, getValueChange: ${u}${Re})`+He,It(9)),b=e(v+c,`(${o})`+He,It(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${I}<VId> ${Re}, oldValue: ${I}<VId> ${Re}, getValueChange: ${u} ${Re}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,I,i,p,b,e(y+c,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+He,It(11)),e(Te+y+c,`(${o}, valueId: Id, invalidValues: any[])`+He,It(12))]},(t,l)=>e(Je+c,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+He,ue+" listening to the completion of a "+We)],Jt=(e,t=a,l=a)=>`store.${e}(${t})`+(l?" as "+l:a),zt=(e,t=a)=>`fluent(() => ${Jt(e,t)})`,Wt=(e,t=a,l=a)=>`store.${e}(${t?t+", ":a}proxy(listener)${l?", "+l:a})`,Bt=(e,t,n)=>{const[o,s,$,V,x,k,S,A]=Gt(),[E,O,D]=jt(e,t,x),[N,G,L]=Mt($,E,O,D),J=ne(),z=(e=0)=>se(J,(([t,l,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${l} => ${n},`]:[s+d+`(${t}): ${l};`];return e||F(r,Et(o)),W(r,a),r})),B=(e,t,l,n,o,d=a)=>Rt(J,e,[t,l,n,o,d]),U=(e,t,l,n,o,d=a,s=a,r=a)=>B(mt[e]+t+(4==e?Se:a)+l,d,n,(n==H?zt:Jt)(mt[e]+(4==e?Se:a)+l,s,e?void 0:n),o,r),_=(e,t,l,n=a,o=a,d=1,s=a)=>B(i+e+c,(n?n+", ":a)+Ve+": "+t+(d?", mutator?: boolean":a),ye,Wt(i+e+c,o,d?"mutator":a),l,s),Z=`./${Pt(n)}.d`,H=Pt(n,1),Q=Pt(H),q=[],K=ne();let X=[],ee=[];if(s(1,Z,H,`create${H} as create${H}Decl`),Y(e))s(null,l,b);else{s(0,l,"CellChange"),s(null,l,u);const[e,t,n,o,c,i,y,T,v,V,k,S,A,D,G,L,J,z,B,F,Y,ee,le,ae]=N(Q,H),de=ne();E(((e,t)=>{const l=`<'${e}'>`,a=[$(t+p,o+l,Oe+` the '${e}' `+p),$(t+p+Qe,c+l,Oe+` the '${e}' `+p+qe),$(t+h,i+l,nt(e)),$(t+h+Qe,y+l,nt(e,1)),$(t+f+ye,T+l,`A Cell Id for the '${e}' `+p),$(t+f+be,V+l,rt(`a Cell Id and value from a Row in the '${e}' `+p)),$(t+h+be,k+l,rt(`a Row Id from the '${e}' Table, and a Cell iterator`)),$(t+p+f+be,S+l,rt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];re(de,e,a),s(1,Z,...a)})),s(1,Z,e,t,n,T,A,D,G,L,J,z,B,F,Y,ee,le,ae),X=[e,t,n,T,D,G,L,J,z,B,F,Y,ee,le,de],j([[e],[d],[H,"tables: "+t,"tables"],[H]],(([e,t,l],n)=>U(n,a,b,e,at(1,n),t,l))),U(0,a,C,n+je,ot(p,Me)),U(5,a,p,Ze,dt(p,Me),"tableCallback: "+A,"tableCallback as any"),E(((e,t,l)=>{const[n,o,s,r,I,c,$,i]=oe(de,e);j([[n],[d],[H,"table: "+o,", table"],[H]],(([n,o,d=a],s)=>U(s,t,p,n,ut(e,s),o,l+d))),U(0,t,p+w,u,ot(f,"the whole of "+$t(e)),a,l),U(5,t,p+f,Ze,dt(p+f,"the whole of "+$t(e)),"tableCellCallback: "+i,l+", tableCellCallback as any"),U(0,t,h+"Count","number","Gets the number of Rows in the "+$t(e),a,l),U(0,t,m,u,ot(h,$t(e)),a,l),U(0,t,g,u,ot(h,$t(e),1),"cellId?: "+I+Le,l+", cellId, descending, offset, limit"),U(5,t,h,Ze,dt(h,$t(e)),"rowCallback: "+$,l+", rowCallback as any"),j([[s],[d],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=a,d=a],s)=>U(s,t,h,n,pt(e,s),De+o,l+", rowId"+d))),U(6,t,h,ye+Re,"Add a new Row to "+$t(e),"row: "+r+", reuseIds?: boolean",l+", row, reuseIds"),U(0,t,w,I+je,ot(f,it(e)),De,l+", rowId"),U(5,t,f,Ze,dt(f,it(e)),De+", cellCallback: "+c,l+", rowId, cellCallback as any"),O(e,((n,o,s,r,I)=>{const c="Map"+Pt(o,1);re(K,o,c);const $=o+(R(s)?Re:a);j([[$],[d],[H,`, cell: ${o} | `+c,", cell as any"],[H]],(([o,d=a,s=a],c)=>U(c,t+I,f,o,bt(e,n,c),De+d,l+", rowId, "+r+s))),U(1,t+I,p+f,d,ht[1]+` the '${n}' Cell anywhere in `+$t(e),a,l+", "+r)}))})),U(0,a,b+ve,ve,at(1,6)),U(2,a,b+ve,H,at(1,7),"tablesJson: "+ve,"tables"+ve),_(b,D,at(1,8)+" changes"),_(C,G,ct(2,0,1)),_(p,L,ct(3,0),`tableId: ${n} | null`,"tableId"),_(p+w,J,ct(14,3,1),`tableId: ${n} | null`,"tableId"),_(h+"Count",z,ct(15,3),`tableId: ${n} | null`,"tableId"),_(m,B,ct(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,F,ct(13,3,1),Ot("tableId: TId",`cellId: ${T}<TId>`+Re,"descending: boolean","offset: number","limit: number"+Re),Ot("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(h,Y,ct(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(w,ee,ct(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,le,ct(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>oe(de,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Te+f,ae,Ee+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...te(K)),W(q,".set"+b+Ne+"({",St(E(((e,t,l)=>[`[${l}]: {`,...O(e,((e,t,l,n)=>`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(P(l)?x(At(l),`'${l}'`):l)}},`)),"},"]))),"})")}if(Y(t))s(null,l,T);else{const[e,t,n,o,c,$,i,u,p]=G(Q,H);s(1,Z,e,t,n,c,$,i,u,p),ee=[e,t,n,$,i,u],j([[e],[d],[H,"values: "+t,"values"],[H],[H,"partialValues: "+t,"partialValues"]],(([e,t,l],n)=>U(n,a,T,e,at(2,n),t,l))),U(0,a,v,n+je,ot(y,Me)),U(5,a,y,"void",dt(y,Me),"valueCallback: "+c,"valueCallback as any"),D(((e,t,l,n,o)=>{const s="Map"+Pt(t,1);re(K,t,s),j([[t],[d],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,l,d=a],s)=>U(s,o,y,t,Ct(e,s),l,n+d)))})),U(0,a,T+ve,ve,at(2,6)),U(2,a,T+ve,H,at(2,7),"valuesJson: "+ve,"values"+ve),_(T,$,at(2,8)+" changes"),_(v,i,ct(10,0,1)),_(y,u,ct(11,0),`valueId: ${n} | null`,"valueId"),_(Te+y,p,Ee+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...te(K)),s(0,l,"ValueChange"),W(q,".set"+T+Ne+"({",D(((e,t,l,n)=>[`[${n}]: {[${x(At(r),`'${r}'`)}]: ${x(At(t),`'${t}'`)}${R(l)?a:`, [${x(At(I),`'${I}'`)}]: `+(P(l)?x(At(l),`'${l}'`):l)}},`])),"})")}U(0,a,"Content",`[${b}, ${T}]`,at(0,0)),U(2,a,"Content",H,at(0,2),`[tables, values]: [${b}, ${T}]`,"[tables, values]"),U(2,a,ze,H,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),de(K,((e,t)=>$(t,`(cell: ${e}${Re}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,l,"DoRollback",ye,"IdOrNull",ve,"Store",ze),s(0,l,"Get"+ze,"GetTransactionLog"),U(0,a,ve,ve,at(0,6)),U(2,a,ve,H,at(0,7),"tablesAndValuesJson: "+ve,"tablesAndValuesJson"),U(7,a,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,a,"start"+Je,H,Fe),U(7,a,"finish"+Je,H,Ue,ge,"doRollback");const le=L(Q,H);return _("Start"+Je,le,Ee+" just before the start of the "+We,a,a,0),_("WillFinish"+Je,le,Ee+" just before "+_e,a,a,0),_("DidFinish"+Je,le,Ee+" just after "+_e,a,a,0),U(7,a,"call"+c,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,c,H,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",ht[0]+" the underlying Store object"),s(1,l,"createStore"),s(1,Z,H,`create${H} as create${H}Decl`,le),x("store",["createStore()",...q]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...z(1),"}"]),[o(...k(0),...S(),we+" interface "+H+" {",...z(0),"}",a,Et(`Creates a ${H} object`),we+" function create"+H+"(): "+H+";"),o(...k(1),we+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),X,ee]},Ft=e=>$+e,Ut=e=>Ot(Ft(e),Ft(e)+he),_t="debugIds?: boolean",Zt="debugIds={debugIds}",Ht="then"+me,Qt="Parameter",qt=": (parameter: "+Qt+", store: Store) => ",Kt="const contextValue = useContext(Context);",Xt=", based on a parameter",Yt=": ",el="<"+Qt+",>",tl=Qt+"ized"+be+"<"+Qt+">",ll="rowId",al="rowId={rowId}",nl=", separator, debugIds",ol="separator?: ReactElement | string",dl="then?: (store: Store",sl=Ot(dl+")"+He,Ht),rl="then, then"+he,Il=ll+Yt+ye,cl="View",$l=(e,...t)=>Ot(...t,Ve+": "+e,Ve+me,"mutator?: boolean"),il=(...e)=>Ot(...e,Ve,Ve+he,"mutator"),ul=(e,t,n,o,d)=>{const[s,r,I,$,i,V,x,k]=Gt(),[S,P,A]=jt(e,t,i),E=`./${Pt(n)}.d`,O=`./${Pt(n)}-ui-react.d`,D="tinybase/ui-react",N=Pt(n,1),G=Pt(N),L=N+"Or"+N+ye,j=G+"Or"+N+ye,J=G+`={${G}}`,z=ne(),B=(e,t,l,n,o,d=a)=>(r(1,O,e+" as "+e+"Decl"),Rt(z,e,[t,l,n,o,d])),U=(e,t,l,n,o,d=a)=>B("use"+e,t,l,n,o,d),_=(e,t,l,n,o=a,d=a,s=a,I=a,c=a)=>(r(1,D,`use${t} as use${t}Core`),U(e,Ot(o,K,I),l,ee+`(${j}, use${t}Core, [`+(d||a)+(c?"], ["+c:a)+"]);",n,s)),Z=(e,t,l,a)=>B(e,t,1,l,a),H=(e=0)=>se(z,(([t,l,n,o,d],s)=>{const r=e?[we+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==l?"any":l} =>`,n]:[we+` function ${s}${d}(${t}): ${1==l?"ComponentReturnType":l};`];return e||F(r,Et(o)),W(r,a),r}));r(null,l,ye,"Store",be,Qt+"ized"+be),r(0,D,"ComponentReturnType"),r(1,D,"useCellIds"),r(null,D,"ExtraProps"),r(0,E,N);const Q=I(L,N+" | "+ye,`Used when you need to refer to a ${N} in a React hook or component`),q=I(Ae+Pe,Nt(G+xe+N,G+`ById?: {[${G}Id: Id]: ${N}}`),`Used with the ${Ae} 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=j+xe+Q;i("{createContext, useContext, useMemo}","React"),i("Context",`createContext<[${N}?, {[${G}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+me,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const X=U(N,"id?: Id",N+Re,["{",Kt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${Ae} component context`),ee=$("useHook",j+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${G} = ${X}(${j} as Id);`,`return hook(...preParams, ((${j} == null || typeof ${j} == 'string')`,`? ${G} : ${j})?.getStore(), ...postParams)`]),te=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),le=$("wrap",Ot("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),ae=$("useCustomOrDefaultCellIds",Ot("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${j}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${j}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),de=i("NullComponent","() => null");if(!Y(e)){const[e,t,n,d,s,i,y,T,v,V,x,k,A,D,L]=o;r(null,E,e,t,n,s,i,y,T,v,V,x,k,A,D),r(0,E,d),r(1,E,N),r(null,l,u,"IdOrNull");const j=$("tableView",`{${G}, rowComponent, getRowComponentProps, customCellIds`+nl+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${le}(rowIds.map((rowId) => (`,"<Row","{..."+te+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",al,"customCellIds={customCellIds}",J,Zt,"/>","))",nl,", tableId,",");"]),z=$("getDefaultTableComponent","tableId: Id",M(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",M(S(((e,t,l)=>`tableId == ${l} ? ${M(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(b,b,e,at(1,0)+pe);const B=_(C,C,n+je,ot(p,Me)+pe);_(Ge+b+be,Ge+b+be,tl,at(1,9)+Xt,Ot(Ft(b)+qt+t,Ft(b)+me),Ut(b),el,Ot(dl,`tables: ${t})`+He,Ht),rl),_(Ce+b+be,Ce+b+be,be,at(1,12),a,a,a,sl,rl);const F=I(f+Pe,Nt("tableId?: TId","rowId: Id","cellId?: CId",G+xe+N,_t),st(ie+f),`<TId extends ${n}, CId extends ${d}<TId>>`),U=I(h+Pe,Nt("tableId?: TId","rowId: Id",G+xe+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,ol,_t),st(ie+h),`<TId extends ${n}>`),H=I(p+Pe,Nt("tableId?: TId",G+xe+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),st(ie+p),`<TId extends ${n}>`),Q=I("Sorted"+p+Pe,Nt("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",G+xe+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ol,_t),st(ie+"sorted "+p),`<TId extends ${n}>`),q=I(b+Pe,Nt(G+xe+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,ol,_t),st(lt(1,1)));r(1,O,q,H,Q,U,F),Z(b+cl,"{"+G+", tableComponents, getTableComponentProps"+nl+"}: "+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,Zt,"/>;","}), separator)"],at(1,13)+pe),S(((e,t,l)=>{const[n,o,d,s,I]=oe(L,e);r(null,E,n,o,d,s,I),_(t+p,p,n,ut(e)+pe,a,l),_(t+p+w,p+w,u,ot(f,"the whole of "+$t(e))+pe,a,l);const c=_(t+m,m,u,ot(h,$t(e))+pe,a,l),$=_(t+g,g,u,ot(h,$t(e),1)+pe,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",l+", cellId, descending, offset, limit");_(t+h,h,d,pt(e)+pe,Il,Ot(l,ll)),_(t+w,w,I+je,ot(f,it(e))+pe,Il,Ot(l,ll)),_(Ge+t+p+be,Ge+p+be,tl,ut(e,9)+Xt,Ot(Ft(p)+qt+o,Ft(p)+me),Ot(l,Ut(p)),el,Ot(dl,`table: ${o})`+He,Ht),rl),_(Ce+t+p+be,Ce+p+be,be,ut(e,12),a,l,a,sl,rl),_(Ge+t+h+be,Ge+h+be,tl,pt(e,9)+Xt,Ot(Il,Ft(h)+qt+s,Ft(h)+me),Ot(l,ll,Ut(h)),el,Ot(dl,`row: ${s})`+He,Ht),rl),_("Add"+t+h+be,"Add"+h+be,tl,pt(e,10)+Xt,Ot(Ft(h)+qt+s,Ft(h)+me),Ot(l,Ut(h)),el,"then?: ("+Ot(Il+Re,"store: Store","row: "+s+")"+He,"then"+me)+", reuseRowIds?: boolean",rl+", reuseRowIds"),_(Ge+t+Se+h+be,Ge+Se+h+be,tl,pt(e,11)+Xt,Ot(Il,Ft(Se+h)+qt+s,Ft(Se+h)+me),Ot(l,ll,Ut(Se+h)),el,Ot(dl,`partialRow: ${s})`+He,Ht),rl),_(Ce+t+h+be,Ce+h+be,be,pt(e,12),Il,Ot(l,ll),a,sl,rl);const i=Z(t+h+cl,"{rowId, "+G+", cellComponents, getCellComponentProps, customCellIds"+nl+`}: ${U}<'${e}'>`,[le+`(${ae}(customCellIds, `+l+`, rowId, ${G}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${l}, cellId)) as React.ComponentType<CellProps<typeof `+l+", typeof cellId>>;","return <Cell",`{...${te}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${l}}`,al,"cellId={cellId}",J,Zt,"/>;","})"+nl+", rowId)"],pt(e,13)+pe);Z(t+"Sorted"+p+cl,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,j+"(props, "+$+`(cellId, descending, offset, limit, props.${G}), ${l}, ${i});`,ut(e,13)+", sorted"+pe),Z(t+p+cl,`props: ${H}<'${e}'>`,j+"(props, "+c+`(props.${G}), ${l}, ${i});`,ut(e,13)+pe),P(e,((n,o,d,s,I)=>{const c="Map"+Pt(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+f,f,o+(R(d)?Re:a),bt(e,n)+pe,Il,Ot(l,ll,s));_(Ge+t+I+f+be,Ge+f+be,tl,bt(e,n,9)+Xt,Ot(Il,Ft(f)+qt+o+" | "+c,Ft(f)+me),Ot(l,ll,s,Ut(f)),el,Ot(dl,`cell: ${o} | ${c})`+He,Ht),rl),_(Ce+t+I+f+be,Ce+f+be,be,bt(e,n,12),Ot(Il,"forceDel?: boolean"),Ot(l,ll,s,"forceDel"),a,sl,rl),Z(t+I+f+cl,`{rowId, ${G}, debugIds}: `+F+`<'${e}', '${n}'>`,[le+`('' + ${$}(rowId, `+G+`) ?? '', undefined, debugIds, ${s})`],bt(e,n,13)+pe)}))}));const K=M(S((e=>oe(L,e)?.[4]??a))," | ");_(b+c,b+c,Ze,at(1,8)+" changes",$l(s),il()),_(C+c,C+c,Ze,ct(2,0,1),$l(i),il()),_(p+c,p+c,Ze,ct(3,0),$l(y,`tableId: ${n} | null`),il("tableId")),_(p+w+c,p+w+c,Ze,ct(14,3,1),$l(T,`tableId: ${n} | null`),il("tableId")),_(m+c,m+c,Ze,ct(4,3,1),$l(V,`tableId: ${n} | null`),il("tableId")),_(g+c,g+c,Ze,ct(13,3,1),$l(x,`tableId: ${n} | null`,"cellId: "+K+Re,"descending: boolean","offset: number","limit: number"+Re),il("tableId","cellId","descending","offset","limit")),_(h+c,h+c,Ze,ct(5,3),$l(k,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(w+c,w+c,Ze,ct(6,5,1),$l(A,`tableId: ${n} | null`,ll+": IdOrNull"),il("tableId",ll)),_(f+c,f+c,Ze,ct(7,5),$l(D,`tableId: ${n} | null`,ll+": IdOrNull",`cellId: ${K} | null`),il("tableId",ll,"cellId"))}if(!Y(t)){const[e,t,l,n,o,s]=d;r(null,E,...d),r(1,E,N);const i=$("getDefaultValueComponent","valueId: Id",M(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(T,T,e,at(2,0)+pe);const u=_(v,v,l+je,ot(y,Me)+pe);_(Ge+T+be,Ge+T+be,tl,at(2,9)+Xt,Ot(Ft(T)+qt+t,Ft(T)+me),Ut(T),el,Ot(dl,`values: ${t})`+He,Ht),rl),_(Ge+Se+T+be,Ge+Se+T+be,tl,at(2,11)+Xt,Ot(Ft(Se+T)+qt+t,Ft(Se+T)+me),Ut(Se+T),el,Ot(dl,`partialValues: ${t})`+He,Ht),rl),_(Ce+T+be,Ce+T+be,be,at(2,12),a,a,a,sl,rl);const p=I(y+Pe,Nt("valueId?: VId",G+xe+N,_t),st("a Value"),`<VId extends ${l}>`),b=I(T+Pe,Nt(G+xe+N,"valueComponents?: {readonly [VId in "+l+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${l}) => ExtraProps`,ol,_t),st(lt(2,1)));r(1,O,b,p),Z(T+cl,"{"+G+", valueComponents, getValueComponentProps"+nl+"}: "+b,[le+`(${u}(${G}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${te}(getValueComponentProps, valueId)}`,"key={valueId}",J,Zt,"/>;","}), separator)"],at(2,13)+pe),A(((e,t,l,n,o)=>{const d="Map"+Pt(t,1);r(0,E,d),r(1,E,d);const s=_(o+y,y,t,Ct(e)+pe,a,n);_(Ge+o+y+be,Ge+y+be,tl,Ct(e,9)+Xt,Ot(Ft(y)+qt+t+" | "+d,Ft(y)+me),Ot(n,Ut(y)),el,Ot(dl,`value: ${t} | ${d})`+He,Ht),rl),_(Ce+o+y+be,Ce+y+be,be,Ct(e,12),a,n,a,sl,rl),Z(o+y+cl,`{${G}, debugIds}: ${p}<'${e}'>`,[le+`('' + ${s}(`+G+`) ?? '', undefined, debugIds, ${n})`],Ct(e,13)+pe)})),_(T+c,T+c,Ze,at(2,8)+" changes",$l(n),il()),_(v+c,v+c,Ze,ct(10,0,1),$l(o),il()),_(y+c,y+c,Ze,ct(11,0),$l(s,`valueId: ${l} | null`),il("valueId"))}return Z(Ae,`{${G}, ${G}ById, children}: `+q+" & {children: React.ReactNode}",["{",Kt,"return (","<Context."+Ae,"value={useMemo(",`() => [${G} ?? contextValue[0], {...contextValue[1], ...${G}ById}],`,`[${G}, ${G}ById, contextValue],`,")}>","{children}",`</Context.${Ae}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...x(),...H(0)),s(...V(1),...k(),...H(1))]},pl=(e,t,l)=>{if(Y(e)&&Y(t))return[a,a,a,a];const[n,o,d,s]=Bt(e,t,l);return[n,o,...ul(e,t,l,d,s)]},bl=JSON.parse,Cl="prettier/",hl=Cl+"plugins/",ml={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},gl=Lt((e=>{const t=()=>{const t=bl(e.getTablesSchemaJson());return!Y(t)||G(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ne();if(G(a,(t=>G(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=Ie(n,a,(()=>[N(o),ne(),[0],0])),[s,r,[I]]=d,c=Ie(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),re(r,o,c),d[3]++,s==N(o)})))))return t[l]={},le(n,(([e,,[,n],o],d)=>{t[l][d]={[r]:e,...o==O(a)?{[I]:n}:{}}})),1}))?t:{}},l=()=>{const t=bl(e.getValuesSchemaJson());return Y(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:N(l)}})),t},a=e=>pl(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(Cl+"standalone")).format,W(l,await import(hl+"estree"),await import(hl+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>kt(await n(e,{...ml,plugins:l,filepath:"_."+t[a]})))))};return Q({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let 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:O(e.getValueIds()),jsonLength:O(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=gl},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,f="Cell",w=f+c,y="Value",C=y+"s",v=y+c,k="currentTarget",T="value",S=e=>a+e,x=Math.floor,V=isFinite,R=(e,t)=>e instanceof t,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==i,E=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),$=e=>e.length,{PureComponent:O,Fragment:A,createElement:F,useCallback:J,useLayoutEffect:P,useRef:B,useState:H}=t,D=(e,...t)=>q(e)?{}:e(...t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==$(e),U=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,X=K.keys,Y=K.isFrozen,Z=K.freeze,_=e=>R(e,K)&&e.constructor==K,ee=(e=[])=>K.fromEntries(e),te=(e,t)=>!q(((e,t)=>N(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),le=(e,t)=>j(K.entries(e),(([e,s])=>t(s,e))),ae=e=>_(e)&&0==(e=>$(X(e)))(e),ne=e=>JSON.stringify(e,((e,t)=>R(t,Map)?K.fromEntries([...t]):t)),oe=JSON.parse,re="tinybaseStoreInspector",ie="TinyBase Store Inspector",de=["left","top","bottom","right","full"],ue="state",ce="sort",he="open",me="position",be=he,ge="editable",pe=(...e)=>ne(e),Ie=(e,t)=>j(e.sort(),t),fe=(e,t)=>[!!s.useCell(ue,e,ge,t),J((s=>{t.setCell(ue,e,ge,(e=>!e)),s.preventDefault()}),[t,e])],we="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ye='content:url("',Ce=ye+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ve='</svg>")',ke=ye+"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\")",Te=j([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Ce+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ve)),Se=Ce+"<path d='M20 20l60 60M20 80l60-60' />"+ve,xe=Ce+`<path d='${we}' />`+ve,Ve=Ce+`<path d='${we}M20 20l60 60' />`+ve,Re="*::-webkit-scrollbar",qe=((e,t="")=>e.join(t))(le({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Re]:"width:0.5rem;height:0.5rem;",[Re+"-track"]:"background:#111",[Re+"-thumb"]:"background:#999;border:1px solid #111",[Re+"-thumb:hover"]:"background:#fff",[Re+"-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;"+ke,...ee(j(["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;",...ee(j(["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)":ke,"header>img:nth-of-type(6)":Se,...ee(j(Te,((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":Ve,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}}`:""))),Ne=({s:e})=>{const t=s.useValue(me,e)??1,l=s.useSetValueCallback(be,(()=>!0),[],e);return s.useValue(be,e)?null:F("img",{onClick:l,title:ie,"data-position":t})},Le=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(ue,e,he,o),i=s.useSetCellCallback(ue,e,he,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},Me=e=>{const t=l(e);return L(t)||t==r&&V(e)?t:void 0},Ee=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),ze=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),$e=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Oe,useMemo:Ae,useState:Fe}=t,Je="editable",Pe=(e,t)=>j(s.useTableCellIds(e,t),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Oe(e,t);return s?l:void 0},He=(...e)=>Ae((()=>e),e),De=(e,t)=>Ae((()=>({store:e,tableId:t})),[e,t]),Qe=(e,t)=>Ae((()=>({queries:e,queryId:t})),[e,t]),je=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Fe([e,t,l]),h=Oe((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Oe((e=>h([i,d,e])),[h,i,d]),g=!0===o?at:o;return[[i,d,u],m,Ae((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},We=(e,t,s)=>Ae((()=>{const a=t??e;return ee(le(E(a)?ee(j(a,(e=>[e,e]))):a,((e,t)=>{return[t,{label:t,component:s,...(a=e,l(a)==n?{label:e}:e)}];var a})))}),[t,s,e]),Ue=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ge,{sort:o??[],label:"Id",onClick:r}),le(l,(({label:e},t)=>F(Ge,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,j(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),le(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...D(s,e,l),...a,rowId:e,cellId:l}))))))))),Ge=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:Be((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),Ke=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),le(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...D(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Xe=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Fe(),[u,c]=Fe(),[h,m]=Fe(),[b,g]=Fe(),[p,I]=Fe();u!==e&&(d(Me(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Oe(((e,s)=>{s(e),c(e),t(e)}),[t]),w=Oe((()=>{if(!l?.()){const e=$e(i,r,o,n),s=$e(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:w},i):null,$e(i,F("input",{key:i,value:h,onChange:Oe((e=>f(e[k][T]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Oe((e=>f(Number(e[k][T]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Oe((e=>f(!!e[k].checked,I)),[f])})))},Ye=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=je(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Ue,{...h,params:He(We(s.useTableCellIds(e,o),c,r?st:s.CellView),De(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},Ze=({store:e,editable:t=!1,valueComponent:l=(t?lt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,y))),F("tbody",null,j(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...D(a,t),valueId:t,store:e}))))))),_e=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Ue,{...o,params:He(We(s.useTableCellIds(d,i),n,a?st:s.CellView),De(i,d),s.useSliceRowIds(e,t,r))})},et=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=We([...Pe(c,u),...Pe(h,u)],n,a?st:s.CellView),b=He(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),le(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,j(s.useRowIds(c,u),(e=>F(Ke,{key:e,localRowId:e,params:b})))))},tt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=je(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Ue,{...c,params:He(We(s.useResultTableCellIds(e,o),d,s.ResultCellView),Qe(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},st=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(Xe,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Je+f,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),lt=({valueId:e,store:t,className:l,showType:a})=>F(Xe,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Je+y,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),at=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=Be((()=>e(l-a)),[e,l,a],l>0),i=Be((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},nt=({indexes:e,indexesId:t,indexId:l,s:a})=>F(Le,{uniqueId:pe("i",t,l),summary:"Index: "+l,s:a},j(s.useSliceIds(l,e),(s=>F(ot,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ot=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=pe("i",t,s,l),[o,r]=fe(n,a);return F(Le,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(_e,{sliceId:l,indexId:s,indexes:e,editable:o}))},rt=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F(Le,{uniqueId:pe("i",e),summary:"Indexes: "+(e??u),s:t},W(a)?"No indexes defined":Ie(a,(s=>F(nt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},it=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),dt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F(Le,{uniqueId:pe("m",e),summary:"Metrics: "+(e??u),s:t},W(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,j(a,(e=>F(it,{metrics:l,metricId:e,key:e}))))))},ut=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=pe("q",t,l),[o,r,i]=oe(s.useCell(ue,n,ce,a)??"[]"),d=s.useSetCellCallback(ue,n,ce,ne,[],a);return F(Le,{uniqueId:n,summary:"Query: "+l,s:a},F(tt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ct=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F(Le,{uniqueId:pe("q",e),summary:"Queries: "+(e??u),s:t},W(a)?"No queries defined":Ie(a,(s=>F(ut,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},ht=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=pe("r",t,s),[n,o]=fe(a,l);return F(Le,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(et,{relationshipId:s,relationships:e,editable:n}))},mt=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F(Le,{uniqueId:pe("r",e),summary:"Relationships: "+(e??u),s:t},W(a)?"No relationships defined":Ie(a,(s=>F(ht,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},bt=({tableId:e,store:t,storeId:l,s:a})=>{const n=pe("t",l,e),[o,r,i]=oe(s.useCell(ue,n,ce,a)??"[]"),d=s.useSetCellCallback(ue,n,ce,ne,[],a),[u,c]=fe(n,a);return F(Le,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},F(Ye,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},gt=({store:e,storeId:t,s:l})=>{const a=pe("v",t),[n,o]=fe(a,l);return W(s.useValueIds(e))?null:F(Le,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},F(Ze,{store:e,editable:n}))},pt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F(Le,{uniqueId:pe("s",e),summary:"Store: "+(e??u),s:t},F(gt,{storeId:e,store:l,s:t}),Ie(a,(s=>F(bt,{store:l,storeId:e,tableId:s,s:t,key:s}))))},It=({s:e})=>{const t=B(null),l=B(0),[a,n]=H(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);P((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=x(o)+e.clientWidth&&e.scrollHeight>=x(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&W(u)&&q(c)&&W(h)&&q(m)&&W(b)&&q(g)&&W(p)&&q(I)&&W(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(pt,{s:e}),j(u,(t=>F(pt,{storeId:t,s:e,key:t}))),F(dt,{s:e}),j(h,(t=>F(dt,{metricsId:t,s:e,key:t}))),F(rt,{s:e}),j(b,(t=>F(rt,{indexesId:t,s:e,key:t}))),F(mt,{s:e}),j(p,(t=>F(mt,{relationshipsId:t,s:e,key:t}))),F(ct,{s:e}),j(f,(t=>F(ct,{queriesId:t,s:e,key:t}))))};class ft extends O{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?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const wt=({s:e})=>{const t=s.useValue(me,e)??1,l=s.useSetValueCallback(be,(()=>!1),[],e),a=s.useSetValueCallback(me,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:ie}),F("span",null,ie),j(de,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},yt=({s:e})=>{const t=s.useValue(me,e)??1;return s.useValue(be,e)?F("main",{"data-position":t},F(wt,{s:e}),F(ft,null,F(It,{s:e}))):null},Ct=e=>t=>{return s=(t,s)=>t+e(s),Rt(t).reduce(s,0);var s},vt=e=>e?.size??0,kt=Ct(vt),Tt=Ct(kt),St=Ct(Tt),xt=(e,t)=>e?.has(t)??!1,Vt=e=>q(e)||0==vt(e),Rt=e=>[...e?.values()??[]],qt=e=>e.clear(),Nt=(e,t)=>e?.forEach(t),Lt=(e,t)=>e?.delete(t),Mt=e=>new Map(e),Et=e=>[...e?.keys()??[]],zt=(e,t)=>e?.get(t),$t=(e,t)=>Nt(e,((e,s)=>t(s,e))),Ot=(e,t,s)=>q(s)?(Lt(e,t),e):e?.set(t,s),At=(e,t,s)=>(xt(e,t)||Ot(e,t,s()),zt(e,t)),Ft=(e,t,s,l=Ot)=>(le(t,((t,l)=>s(e,l,t))),$t(e,(s=>te(t,s)?0:l(e,s))),e),Jt=(e,t,s)=>{const l={};return Nt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Pt=(e,t,s)=>Jt(e,(e=>Jt(e,t,s)),ae),Bt=(e,t,s)=>Jt(e,(e=>Pt(e,t,s)),ae),Ht=(e,t)=>{const s=Mt();return Nt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Dt=e=>Ht(e,Ht),Qt=e=>Ht(e,Dt),jt=(e,t,s,l,a=0)=>N((s?At:zt)(e,t[a],a>$(t)-2?s:Mt),(n=>{if(a>$(t)-2)return l?.(n)&&Ot(e,t[a]),n;const o=jt(n,t,s,l,a+1);return Vt(n)&&Ot(e,t[a]),o})),Wt=Mt(),Ut=Mt(),Gt="storage",Kt=globalThis.window,Xt=e=>new Set(E(e)||q(e)?e:[e]),Yt=(e,t)=>e?.add(t),Zt=/^\d+$/,_t=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??a+t++,t=>{Zt.test(t)&&$(e)<1e3&&U(e,t)}]},es=e=>[e,e],ts=(e,t=kt)=>t(e[0])+t(e[1]),ss=()=>[Mt(),Mt()],ls=e=>[...e],as=([e,t])=>e===t,ns=(e,t,s)=>q(e)||!_(e)||ae(e)||Y(e)?(s?.(),!1):(le(e,((s,l)=>{t(s,l)||se(e,l)})),!ae(e)),os=(e,t,s)=>Ot(e,t,zt(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,l=!1,n=0;const o=Mt(),i=Mt(),c=Mt(),k=Mt(),T=Mt(),x=Mt(),V=Mt(),R=Mt(),E=Mt(),O=Mt(),A=Mt(),F=Mt(),J=Mt(),P=Mt(),B=Xt(),H=Mt(),D=Mt(),W=Mt(),G=Mt(),K=ss(),X=ss(),Y=ss(),_=ss(),ee=ss(),re=ss(),ie=ss(),de=ss(),ue=ss(),ce=ss(),he=ss(),me=ss(),be=ss(),ge=ss(),pe=ss(),Ie=Mt(),fe=ss(),[we,ye,Ce,ve]=(e=>{let t;const[s,l]=_t(),n=Mt();return[(e,l,o,r=[],i=(()=>[]))=>{t??=ws;const d=s(1);return Ot(n,d,[e,l,o,r,i]),Yt(jt(l,o??[a],Xt),d),d},(e,s,...l)=>Q(((e,t=[a])=>{const s=[],l=(e,a)=>a==$(t)?U(s,e):null===t[a]?Nt(e,(e=>l(e,a+1))):Q([t[a],null],(t=>l(zt(e,t),a+1)));return l(e,0),s})(e,s),(e=>Nt(e,(e=>zt(n,e)[0](t,...s??[],...l))))),e=>N(zt(n,e),(([,t,s])=>(jt(t,s??[a],void 0,(t=>(Lt(t,e),Vt(t)?1:0))),Ot(n,e),l(e),s))),e=>N(zt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=$(o);r==$(s)?e(t,...o,...a(o)):q(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),ke=e=>{if(!ns(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||(Me(e[u])!=t&&se(e,u),0))},Te=(t,s)=>(!e||xt(A,s)||lt(s))&&ns(t,((e,t)=>Se(s,t,e)),(()=>lt(s))),Se=(e,t,s,l)=>ns(l?s:qe(s,e,t),((l,a)=>N(xe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>lt(e,t))),xe=(t,s,l,a)=>e?N(zt(zt(A,t),l),(e=>Me(a)!=e[d]?lt(t,s,l,a,e[u]):a),(()=>lt(t,s,l,a))):q(Me(a))?lt(t,s,l,a):a,Ve=(e,t)=>ns(t?e:Ne(e),((t,s)=>N(Re(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>at())),Re=(e,s)=>t?N(zt(J,e),(t=>Me(s)!=t[d]?at(e,s,t[u]):s),(()=>at(e,s))):q(Me(s))?at(e,s):s,qe=(e,t,s)=>(N(zt(F,t),(([l,a])=>{Nt(l,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(a,(l=>{te(e,l)||lt(t,s,l)}))})),e),Ne=e=>(t&&(Nt(P,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(B,(t=>{te(e,t)||at(t)}))),e),Le=e=>Ft(A,e,((e,t,s)=>{const l=Mt(),a=Xt();Ft(At(A,t,Mt),s,((e,t,s)=>{Ot(e,t,s),N(s[u],(e=>Ot(l,t,e)),(()=>Yt(a,t)))})),Ot(F,t,[l,a])}),((e,t)=>{Ot(A,t),Ot(F,t)})),$e=e=>Ft(J,e,((e,t,s)=>{Ot(J,t,s),N(s[u],(e=>Ot(P,t,e)),(()=>Yt(B,t)))}),((e,t)=>{Ot(J,t),Ot(P,t),Lt(B,t)})),Oe=e=>ae(e)?us():Gt(e),Ae=e=>Ft(W,e,((e,t,s)=>Fe(t,s)),((e,t)=>Ue(t))),Fe=(e,t)=>Ft(At(W,e,(()=>(Ye(e,1),Ot(H,e,_t()),Ot(D,e,Mt()),Mt()))),t,((t,s,l)=>Je(e,t,s,l)),((t,s)=>Ge(e,t,s))),Je=(e,t,s,l,a)=>Ft(At(t,s,(()=>(Ze(e,s,1),Mt()))),l,((t,l,a)=>Pe(e,s,t,l,a)),((l,n)=>Ke(e,t,s,l,n,a))),Pe=(e,t,s,l,a)=>{xt(s,l)||_e(e,t,l,1);const n=zt(s,l);a!==n&&(et(e,t,l,n,a),Ot(s,l,a))},Be=(e,t,s,l,a)=>N(zt(t,s),(t=>Pe(e,s,t,l,a)),(()=>Je(e,t,s,qe({[l]:a},e,s)))),He=e=>ae(e)?ms():Kt(e),De=e=>Ft(G,e,((e,t,s)=>Qe(t,s)),((e,t)=>Xe(t))),Qe=(e,t)=>{xt(G,e)||tt(e,1);const s=zt(G,e);t!==s&&(st(e,s,t),Ot(G,e,t))},je=(e,t)=>{const[s]=zt(H,e),l=s(t);return xt(zt(W,e),l)?je(e,t):l},We=e=>zt(W,e)??Fe(e,{}),Ue=e=>Fe(e,{}),Ge=(e,t,s)=>{const[,l]=zt(H,e);l(s),Je(e,t,s,{},!0)},Ke=(e,t,s,l,a,n)=>{const o=zt(zt(F,e)?.[0],a);if(!q(o)&&!n)return Pe(e,s,l,a,o);const r=t=>{et(e,s,t,zt(l,t)),_e(e,s,t,-1),Ot(l,t)};q(o)?r(a):$t(l,r),Vt(l)&&(Ze(e,s,-1),Vt(Ot(t,s))&&(Ye(e,-1),Ot(W,e),Ot(H,e),Ot(D,e)))},Xe=e=>{const t=zt(P,e);if(!q(t))return Qe(e,t);st(e,zt(G,e)),tt(e,-1),Ot(G,e)},Ye=(e,t)=>os(o,e,t),Ze=(e,t,s)=>os(At(k,e,Mt),t,s)&&Ot(c,e,At(c,e,(()=>0))+s),_e=(e,t,s,l)=>{const a=zt(D,e),n=zt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&os(At(i,e,Mt),s,l),Ot(a,s,n!=-l?n+l:null),os(At(At(T,e,Mt),t,Mt),s,l)},et=(e,t,s,l,a)=>At(At(At(x,e,Mt),t,Mt),s,(()=>[l,0]))[1]=a,tt=(e,t)=>os(V,e,t),st=(e,t,s)=>At(R,e,(()=>[t,0]))[1]=s,lt=(e,t,s,l,a)=>(U(At(At(At(E,e,Mt),t,Mt),s,(()=>[])),l),a),at=(e,t,s)=>(U(At(O,e,(()=>[])),t),s),nt=(e,t,s)=>N(zt(zt(zt(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...es(Ct(e,t,s))])),ot=e=>N(zt(R,e),(([e,t])=>[!0,e,t]),(()=>[!1,...es(Ut(e))])),rt=e=>Vt(E)||Vt(he[e])?0:Nt(e?Qt(E):E,((t,s)=>Nt(t,((t,l)=>Nt(t,((t,a)=>ye(he[e],[s,l,a],t))))))),it=e=>Vt(O)||Vt(me[e])?0:Nt(e?Ht(O):O,((t,s)=>ye(me[e],[s],t))),dt=(e,t,s)=>{if(!Vt(t))return ye(e,s,(()=>Jt(t))),1},ut=e=>{const t=Vt(ie[e]),s=Vt(ue[e])&&Vt(_[e])&&Vt(ee[e])&&Vt(re[e])&&t&&Vt(X[e]),l=Vt(ce[e])&&Vt(de[e])&&Vt(Y[e])&&Vt(K[e]);if(!s||!l){const a=e?[Ht(o),Dt(i),Ht(c),Dt(k),Qt(T),Qt(x)]:[o,i,c,k,T,x];if(!s){dt(X[e],a[0]),Nt(a[1],((t,s)=>dt(_[e],t,[s]))),Nt(a[2],((t,s)=>{0!=t&&ye(ee[e],[s],It(s))}));const s=Xt();Nt(a[3],((l,a)=>{dt(re[e],l,[a])&&!t&&(ye(ie[e],[a,null]),Yt(s,a))})),t||Nt(a[5],((t,l)=>{if(!xt(s,l)){const s=Xt();Nt(t,(e=>Nt(e,(([t,l],a)=>l!==t?Yt(s,a):Lt(e,a))))),Nt(s,(t=>ye(ie[e],[l,t])))}})),Nt(a[4],((t,s)=>Nt(t,((t,l)=>dt(ue[e],t,[s,l])))))}if(!l){let t;Nt(a[5],((s,l)=>{let a;Nt(s,((s,n)=>{let o;Nt(s,(([s,r],i)=>{r!==s&&(ye(ce[e],[l,n,i],r,s,nt),t=a=o=1)})),o&&ye(de[e],[l,n],nt)})),a&&ye(Y[e],[l],nt)})),t&&ye(K[e],void 0,nt)}}},ct=e=>{const t=Vt(ge[e]),s=Vt(pe[e])&&Vt(be[e]);if(!t||!s){const l=e?[Ht(V),Ht(R)]:[V,R];if(t||dt(ge[e],l[0]),!s){let t;Nt(l[1],(([s,l],a)=>{l!==s&&(ye(pe[e],[a],l,s,ot),t=1)})),t&&ye(be[e],void 0,ot)}}},ht=(e,...t)=>(ps((()=>e(...j(t,S)))),ws),mt=()=>[Jt(x,((e,t)=>-1===zt(o,t)?null:Jt(e,((e,s)=>-1===zt(zt(k,t),s)?null:Jt(e,(([,e])=>e??null),((e,t)=>as(t)))),ae)),ae),Jt(R,(([,e])=>e??null),((e,t)=>as(t)))],bt=()=>({cellsTouched:s,valuesTouched:l,changedCells:Bt(x,ls,as),invalidCells:Bt(E),changedValues:Jt(R,ls,as),invalidValues:Jt(O),changedTableIds:Jt(o),changedRowIds:Pt(k),changedCellIds:Bt(T),changedValueIds:Jt(V)}),gt=()=>Bt(W),pt=()=>Et(W),It=e=>vt(zt(W,S(e))),ft=e=>Et(zt(W,S(e))),wt=(e,t,s,l=0,a)=>{return j(z((o=zt(W,S(e)),r=(e,s)=>[q(t)?s:zt(e,S(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),j([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,q(a)?a:l+a),(([,e])=>e));var n,o,r},yt=(e,t)=>Et(zt(zt(W,S(e)),S(t))),Ct=(e,t,s)=>zt(zt(zt(W,S(e)),S(t)),S(s)),Rt=()=>Jt(G),Wt=()=>Et(G),Ut=e=>zt(G,S(e)),Gt=e=>ht((()=>(e=>ns(e,Te,lt))(e)?Ae(e):0)),Kt=e=>ht((()=>Ve(e)?De(e):0)),Zt=e=>{try{Oe(oe(e))}catch{}return ws},is=t=>ht((()=>{if((e=ns(t,(e=>ns(e,ke))))&&(Le(t),!Vt(W))){const e=gt();us(),Gt(e)}})),ds=e=>ht((()=>{if(t=(e=>ns(e,ke))(e)){const s=Rt();gs(),ms(),t=!0,$e(e),Kt(s)}})),us=()=>ht((()=>Ae({}))),cs=e=>ht((e=>xt(W,e)?Ue(e):0),e),hs=(e,t)=>ht(((e,t)=>N(zt(W,e),(s=>xt(s,t)?Ge(e,s,t):0))),e,t),ms=()=>ht((()=>De({}))),bs=()=>ht((()=>{Le({}),e=!1})),gs=()=>ht((()=>{$e({}),t=!1})),ps=(e,t)=>{if(-1!=n){Is();const s=e();return fs(t),s}},Is=()=>(-1!=n&&n++,1==n&&ye(Ie,void 0,mt,bt),ws),fs=e=>(n>0&&(n--,0==n&&(s=!Vt(x),l=!Vt(R),n=1,rt(1),s&&ut(1),it(1),l&&ct(1),e?.(mt,bt)&&(Nt(x,((e,t)=>Nt(e,((e,s)=>Nt(e,(([e],l)=>Ee(ws,t,s,l,e))))))),Nt(R,(([e],t)=>ze(ws,t,e))),s=l=!1),ye(fe[0],void 0,mt,bt),n=-1,rt(0),s&&ut(0),it(0),l&&ct(0),ye(fe[1],void 0,mt,bt),n=0,s=l=!1,Q([o,i,c,k,T,x,E,V,R,O],qt))),ws),ws={getContent:()=>[gt(),Rt()],getTables:gt,getTableIds:pt,getTable:e=>Pt(zt(W,S(e))),getTableCellIds:e=>Et(zt(D,S(e))),getRowCount:It,getRowIds:ft,getSortedRowIds:wt,getRow:(e,t)=>Jt(zt(zt(W,S(e)),S(t))),getCellIds:yt,getCell:Ct,getValues:Rt,getValueIds:Wt,getValue:Ut,hasTables:()=>!Vt(W),hasTable:e=>xt(W,S(e)),hasTableCell:(e,t)=>xt(zt(D,S(e)),S(t)),hasRow:(e,t)=>xt(zt(W,S(e)),S(t)),hasCell:(e,t,s)=>xt(zt(zt(W,S(e)),S(t)),S(s)),hasValues:()=>!Vt(G),hasValue:e=>xt(G,S(e)),getTablesJson:()=>ne(W),getValuesJson:()=>ne(G),getJson:()=>ne([W,G]),getTablesSchemaJson:()=>ne(A),getValuesSchemaJson:()=>ne(J),getSchemaJson:()=>ne([A,J]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(ae(e)?us:Gt)(e),(ae(t)?ms:Kt)(t)})),setTables:Gt,setTable:(e,t)=>ht((e=>Te(t,e)?Fe(e,t):0),e),setRow:(e,t,s)=>ht(((e,t)=>Se(e,t,s)?Je(e,We(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ps((()=>{let l;return Se(e,l,t)&&(e=S(e),Je(e,We(e),l=je(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>ht(((e,t)=>{if(Se(e,t,s,1)){const l=We(e);le(s,((s,a)=>Be(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>ht(((e,t,s)=>N(xe(e,t,s,M(l)?l(Ct(e,t,s)):l),(l=>Be(e,We(e),t,s,l)))),e,t,s),setValues:Kt,setPartialValues:e=>ht((()=>Ve(e,1)?le(e,((e,t)=>Qe(t,e))):0)),setValue:(e,t)=>ht((e=>N(Re(e,M(t)?t(Ut(e)):t),(t=>Qe(e,t)))),e),setTransactionChanges:e=>ht((()=>{le(e[0],((e,t)=>q(e)?cs(t):le(e,((e,s)=>q(e)?hs(t,s):le(e,((e,l)=>Ee(ws,t,s,l,e))))))),le(e[1],((e,t)=>ze(ws,t,e)))})),setTablesJson:Zt,setValuesJson:e=>{try{He(oe(e))}catch{}return ws},setJson:e=>ht((()=>{try{const[t,s]=oe(e);Oe(t),He(s)}catch{Zt(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)=>N(zt(W,e),(a=>N(zt(a,t),(n=>xt(n,s)?Ke(e,a,t,n,s,l):0))))),e,t,s),delValues:ms,delValue:e=>ht((e=>xt(G,e)?Xe(e):0),e),delTablesSchema:bs,delValuesSchema:gs,delSchema:()=>ht((()=>{bs(),gs()})),transaction:ps,startTransaction:Is,finishTransaction:fs,forEachTable:e=>Nt(W,((t,s)=>e(s,(e=>Nt(t,((t,s)=>e(s,(e=>$t(t,e))))))))),forEachTableCell:(e,t)=>$t(zt(D,S(e)),t),forEachRow:(e,t)=>Nt(zt(W,S(e)),((e,s)=>t(s,(t=>$t(e,t))))),forEachCell:(e,t,s)=>$t(zt(zt(W,S(e)),S(t)),s),forEachValue:e=>$t(G,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=wt(e,t,s,l,a);return we((()=>{const o=wt(e,t,s,l,a);var i,d,u;d=r,$(i=o)===$(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(ws,e,t,s,l,a,r))}),ie[o?1:0],[e,t],[pt])},addStartTransactionListener:e=>we(e,Ie),addWillFinishTransactionListener:e=>we(e,fe[0]),addDidFinishTransactionListener:e=>we(e,fe[1]),callListener:e=>(ve(e),ws),delListener:e=>(Ce(e),ws),getListenerStats:()=>({tables:ts(K),tableIds:ts(X),tableCellIds:ts(_),table:ts(Y),rowCount:ts(ee),rowIds:ts(re),sortedRowIds:ts(ie),row:ts(de,Tt),cellIds:ts(ue,Tt),cell:ts(ce,St),invalidCell:ts(he,St),values:ts(be),valueIds:ts(ge),value:ts(pe),invalidValue:ts(me),transaction:kt(Ie)+ts(fe)}),createStore:rs,addListener:we,callListeners:ye};return le({[m]:[0,K],[b]:[0,X],[h]:[1,Y,[pt]],[h+w]:[1,_,[pt]],[p]:[1,ee,[pt]],[I]:[1,re,[pt]],[g]:[2,de,[pt,ft]],[w]:[2,ue,[pt,ft]],[f]:[3,ce,[pt,ft,yt],e=>es(Ct(...e))],InvalidCell:[3,he],[C]:[0,be],[v]:[0,ge],[y]:[1,pe,[Wt],e=>es(Ut(e[0]))],InvalidValue:[1,me]},(([e,t,s,l],a)=>{ws["add"+a+"Listener"]=(...a)=>we(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,l)})),Z(ws)},is=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(rs),a=de.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;At(Wt,i,(()=>0)),At(Ut,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();ae(s)&&ae(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(N(d,e.delListener),d=void 0,I),schedule:async(...e)=>(U(zt(Ut,i),...e),await(async()=>{if(!zt(Wt,i)){for(Ot(Wt,i,1);!q(u=G(zt(Ut,i)));)try{await u()}catch(e){n?.(e)}Ot(Wt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),Z(I)})(e,(async()=>oe(s.getItem(t))),(async e=>s.setItem(t,ne(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>oe(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:!!t}),await e.startAutoSave()})),F(A,null,F("aside",{id:re},F(Ne,{s:l}),F(yt,{s:l})),F("style",null,qe))};e.EditableCellView=st,e.EditableValueView=lt,e.RelationshipInHtmlTable=et,e.ResultSortedTableInHtmlTable=tt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Ue,{...a,params:He(We(s.useResultTableCellIds(e,t),l,s.ResultCellView),Qe(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=_e,e.SortedTableInHtmlTable=Ye,e.SortedTablePaginator=at,e.StoreInspector=e=>F(is,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Ue,{...n,params:He(We(s.useTableCellIds(e,t),a,l?st:s.CellView),De(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=Ze},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,f="Cell",y=f+c,w="Value",C=w+"s",v=w+c,k="currentTarget",T="value",S=e=>a+e,x=Math.floor,V=isFinite,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==n||e==o,L=e=>l(e)==i,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:B}=t,H=(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),U=e=>e.shift(),G=Object,K=e=>G.getPrototypeOf(e),X=G.keys,Y=G.isFrozen,Z=G.freeze,_=e=>!R(e)&&q(K(e),(e=>e==G.prototype||R(K(e))),(()=>!0)),ee=(e=[])=>G.fromEntries(e),te=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),le=(e,t)=>Q(G.entries(e),(([e,s])=>t(s,e))),ae=e=>_(e)&&0==(e=>z(X(e)))(e),ne=e=>JSON.stringify(e,((e,t)=>t instanceof Map?G.fromEntries([...t]):t)),oe=JSON.parse,re="tinybaseStoreInspector",ie="TinyBase Store Inspector",de=["left","top","bottom","right","full"],ue="state",ce="sort",he="open",me="position",be=he,ge="editable",pe=(...e)=>ne(e),Ie=(e,t)=>Q(e.sort(),t),fe=(e,t)=>[!!s.useCell(ue,e,ge,t),F((s=>{t.setCell(ue,e,ge,(e=>!e)),s.preventDefault()}),[t,e])],ye="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",we='content:url("',Ce=we+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ve='</svg>")',ke=we+"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\")",Te=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])=>Ce+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ve)),Se=Ce+"<path d='M20 20l60 60M20 80l60-60' />"+ve,xe=Ce+`<path d='${ye}' />`+ve,Ve=Ce+`<path d='${ye}M20 20l60 60' />`+ve,Re="*::-webkit-scrollbar",qe=((e,t="")=>e.join(t))(le({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Re]:"width:0.5rem;height:0.5rem;",[Re+"-track"]:"background:#111",[Re+"-thumb"]:"background:#999;border:1px solid #111",[Re+"-thumb:hover"]:"background:#fff",[Re+"-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;"+ke,...ee(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;",...ee(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)":ke,"header>img:nth-of-type(6)":Se,...ee(Q(Te,((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":Ve,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}}`:""))),Ne=({s:e})=>{const t=s.useValue(me,e)??1,l=s.useSetValueCallback(be,(()=>!0),[],e);return s.useValue(be,e)?null:A("img",{onClick:l,title:ie,"data-position":t})},Le=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(ue,e,he,o),i=s.useSetCellCallback(ue,e,he,(e=>e[k].open),[],o);return A("details",{open:r,onToggle:i},A("summary",null,t,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},Me=e=>{const t=l(e);return N(t)||t==r&&V(e)?t:void 0},Ee=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),ze=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),$e=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Oe,useMemo:Ae,useState:Fe}=t,Je="editable",Pe=(e,t)=>Q(s.useTableCellIds(e,t),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Oe(e,t);return s?l:void 0},He=(...e)=>Ae((()=>e),e),De=(e,t)=>Ae((()=>({store:e,tableId:t})),[e,t]),Qe=(e,t)=>Ae((()=>({queries:e,queryId:t})),[e,t]),je=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Fe([e,t,l]),h=Oe((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Oe((e=>h([i,d,e])),[h,i,d]),g=!0===o?at:o;return[[i,d,u],m,Ae((()=>!1===o?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},We=(e,t,s)=>Ae((()=>{const a=t??e;return ee(le(M(a)?ee(Q(a,(e=>[e,e]))):a,((e,t)=>{return[t,{label:t,component:s,...(a=e,l(a)==n?{label:e}:e)}];var a})))}),[t,s,e]),Ue=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,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:o??[],label:"Id",onClick:r}),le(l,(({label:e},t)=>A(Ge,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),A("tbody",null,Q(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),le(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...H(s,e,l),...a,rowId:e,cellId:l}))))))))),Ge=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>A("th",{onClick:Be((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",l),Ke=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return A("tr",null,!1===l?null:A(t.Fragment,null,A("th",null,e),A("th",null,u)),le(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return R(i)?null:A("td",{key:l},A(t,{...H(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Xe=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Fe(),[u,c]=Fe(),[h,m]=Fe(),[b,g]=Fe(),[p,I]=Fe();u!==e&&(d(Me(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Oe(((e,s)=>{s(e),c(e),t(e)}),[t]),y=Oe((()=>{if(!l?.()){const e=$e(i,r,o,n),s=$e(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},a?A("button",{className:i,onClick:y},i):null,$e(i,A("input",{key:i,value:h,onChange:Oe((e=>f(e[k][T]+"",m)),[f])}),A("input",{key:i,type:"number",value:b,onChange:Oe((e=>f(Number(e[k][T]||0),g)),[f])}),A("input",{key:i,type:"checkbox",checked:p,onChange:Oe((e=>f(!!e[k].checked,I)),[f])})))},Ye=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=je(t,l,i,a,n,s.useRowCount(e,o),d,u);return A(Ue,{...h,params:He(We(s.useTableCellIds(e,o),c,r?st:s.CellView),De(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},Ze=({store:e,editable:t=!1,valueComponent:l=(t?lt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>A("table",{className:n},!1===o?null:A("thead",null,A("tr",null,!1===r?null:A("th",null,"Id"),A("th",null,w))),A("tbody",null,Q(s.useValueIds(e),(t=>A("tr",{key:t},!1===r?null:A("th",null,t),A("td",null,A(l,{...H(a,t),valueId:t,store:e}))))))),_e=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return A(Ue,{...o,params:He(We(s.useTableCellIds(d,i),n,a?st:s.CellView),De(i,d),s.useSliceRowIds(e,t,r))})},et=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=We([...Pe(c,u),...Pe(h,u)],n,a?st:s.CellView),b=He(i,m,c,h,e,d,u);return A("table",{className:o},!1===r?null:A("thead",null,A("tr",null,!1===i?null:A(t.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),le(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,Q(s.useRowIds(c,u),(e=>A(Ke,{key:e,localRowId:e,params:b})))))},tt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=je(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return A(Ue,{...c,params:He(We(s.useResultTableCellIds(e,o),d,s.ResultCellView),Qe(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},st=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>A(Xe,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Je+f,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),lt=({valueId:e,store:t,className:l,showType:a})=>A(Xe,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Je+w,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),at=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=Be((()=>e(l-a)),[e,l,a],l>0),i=Be((()=>e(l+a)),[e,l,a],l+a<s);return A(t.Fragment,null,s>a&&A(t.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick:r},"←"),A("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},nt=({indexes:e,indexesId:t,indexId:l,s:a})=>A(Le,{uniqueId:pe("i",t,l),summary:"Index: "+l,s:a},Q(s.useSliceIds(l,e),(s=>A(ot,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ot=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=pe("i",t,s,l),[o,r]=fe(n,a);return A(Le,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},A(_e,{sliceId:l,indexId:s,indexes:e,editable:o}))},rt=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return R(l)?null:A(Le,{uniqueId:pe("i",e),summary:"Indexes: "+(e??u),s:t},j(a)?"No indexes defined":Ie(a,(s=>A(nt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},it=({metrics:e,metricId:t})=>A("tr",null,A("th",null,t),A("td",null,e?.getTableId(t)),A("td",null,s.useMetric(t,e))),dt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return R(l)?null:A(Le,{uniqueId:pe("m",e),summary:"Metrics: "+(e??u),s:t},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(it,{metrics:l,metricId:e,key:e}))))))},ut=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=pe("q",t,l),[o,r,i]=oe(s.useCell(ue,n,ce,a)??"[]"),d=s.useSetCellCallback(ue,n,ce,ne,[],a);return A(Le,{uniqueId:n,summary:"Query: "+l,s:a},A(tt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ct=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return R(l)?null:A(Le,{uniqueId:pe("q",e),summary:"Queries: "+(e??u),s:t},j(a)?"No queries defined":Ie(a,(s=>A(ut,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},ht=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=pe("r",t,s),[n,o]=fe(a,l);return A(Le,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},A(et,{relationshipId:s,relationships:e,editable:n}))},mt=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return R(l)?null:A(Le,{uniqueId:pe("r",e),summary:"Relationships: "+(e??u),s:t},j(a)?"No relationships defined":Ie(a,(s=>A(ht,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},bt=({tableId:e,store:t,storeId:l,s:a})=>{const n=pe("t",l,e),[o,r,i]=oe(s.useCell(ue,n,ce,a)??"[]"),d=s.useSetCellCallback(ue,n,ce,ne,[],a),[u,c]=fe(n,a);return A(Le,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},A(Ye,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},gt=({store:e,storeId:t,s:l})=>{const a=pe("v",t),[n,o]=fe(a,l);return j(s.useValueIds(e))?null:A(Le,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},A(Ze,{store:e,editable:n}))},pt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return R(l)?null:A(Le,{uniqueId:pe("s",e),summary:"Store: "+(e??u),s:t},A(gt,{storeId:e,store:l,s:t}),Ie(a,(s=>A(bt,{store:l,storeId:e,tableId:s,s:t,key:s}))))},It=({s:e})=>{const t=P(null),l=P(0),[a,n]=B(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);J((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=x(o)+e.clientWidth&&e.scrollHeight>=x(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=F((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return R(d)&&j(u)&&R(c)&&j(h)&&R(m)&&j(b)&&R(g)&&j(p)&&R(I)&&j(f)?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:t,onScroll:i},A(pt,{s:e}),Q(u,(t=>A(pt,{storeId:t,s:e,key:t}))),A(dt,{s:e}),Q(h,(t=>A(dt,{metricsId:t,s:e,key:t}))),A(rt,{s:e}),Q(b,(t=>A(rt,{indexesId:t,s:e,key:t}))),A(mt,{s:e}),Q(p,(t=>A(mt,{relationshipsId:t,s:e,key:t}))),A(ct,{s:e}),Q(f,(t=>A(ct,{queriesId:t,s:e,key:t}))))};class ft 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 yt=({s:e})=>{const t=s.useValue(me,e)??1,l=s.useSetValueCallback(be,(()=>!1),[],e),a=s.useSetValueCallback(me,(e=>Number(e[k].dataset.id)),[],e);return A("header",null,A("img",{title:ie}),A("span",null,ie),Q(de,((e,s)=>s==t?null:A("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),A("img",{onClick:l,title:"Close"}))},wt=({s:e})=>{const t=s.useValue(me,e)??1;return s.useValue(be,e)?A("main",{"data-position":t},A(yt,{s:e}),A(ft,null,A(It,{s:e}))):null},Ct=e=>t=>{return s=(t,s)=>t+e(s),Rt(t).reduce(s,0);var s},vt=e=>e?.size??0,kt=Ct(vt),Tt=Ct(kt),St=Ct(Tt),xt=(e,t)=>e?.has(t)??!1,Vt=e=>R(e)||0==vt(e),Rt=e=>[...e?.values()??[]],qt=e=>e.clear(),Nt=(e,t)=>e?.forEach(t),Lt=(e,t)=>e?.delete(t),Mt=e=>new Map(e),Et=e=>[...e?.keys()??[]],zt=(e,t)=>e?.get(t),$t=(e,t)=>Nt(e,((e,s)=>t(s,e))),Ot=(e,t,s)=>R(s)?(Lt(e,t),e):e?.set(t,s),At=(e,t,s)=>(xt(e,t)||Ot(e,t,s()),zt(e,t)),Ft=(e,t,s,l=Ot)=>(le(t,((t,l)=>s(e,l,t))),$t(e,(s=>te(t,s)?0:l(e,s))),e),Jt=(e,t,s)=>{const l={};return Nt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Pt=(e,t,s)=>Jt(e,(e=>Jt(e,t,s)),ae),Bt=(e,t,s)=>Jt(e,(e=>Pt(e,t,s)),ae),Ht=(e,t)=>{const s=Mt();return Nt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Dt=e=>Ht(e,Ht),Qt=e=>Ht(e,Dt),jt=(e,t,s,l,a=0)=>q((s?At:zt)(e,t[a],a>z(t)-2?s:Mt),(n=>{if(a>z(t)-2)return l?.(n)&&Ot(e,t[a]),n;const o=jt(n,t,s,l,a+1);return Vt(n)&&Ot(e,t[a]),o})),Wt=Mt(),Ut=Mt(),Gt="storage",Kt=globalThis.window,Xt=e=>new Set(M(e)||R(e)?e:[e]),Yt=(e,t)=>e?.add(t),Zt=/^\d+$/,_t=()=>{const e=[];let t=0;return[s=>(s?U(e):null)??a+t++,t=>{Zt.test(t)&&z(e)<1e3&&W(e,t)}]},es=e=>[e,e],ts=(e,t=kt)=>t(e[0])+t(e[1]),ss=()=>[Mt(),Mt()],ls=e=>[...e],as=([e,t])=>e===t,ns=(e,t,s)=>R(e)||!_(e)||ae(e)||Y(e)?(s?.(),!1):(le(e,((s,l)=>{t(s,l)||se(e,l)})),!ae(e)),os=(e,t,s)=>Ot(e,t,zt(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,l=!1,n=0;const o=Mt(),i=Mt(),c=Mt(),k=Mt(),T=Mt(),x=Mt(),V=Mt(),M=Mt(),$=Mt(),O=Mt(),A=Mt(),F=Mt(),J=Mt(),P=Mt(),B=Xt(),H=Mt(),j=Mt(),U=Mt(),G=Mt(),K=ss(),X=ss(),Y=ss(),_=ss(),ee=ss(),re=ss(),ie=ss(),de=ss(),ue=ss(),ce=ss(),he=ss(),me=ss(),be=ss(),ge=ss(),pe=ss(),Ie=Mt(),fe=ss(),[ye,we,Ce,ve]=(e=>{let t;const[s,l]=_t(),n=Mt();return[(e,l,o,r=[],i=(()=>[]))=>{t??=ys;const d=s(1);return Ot(n,d,[e,l,o,r,i]),Yt(jt(l,o??[a],Xt),d),d},(e,s,...l)=>D(((e,t=[a])=>{const s=[],l=(e,a)=>a==z(t)?W(s,e):null===t[a]?Nt(e,(e=>l(e,a+1))):D([t[a],null],(t=>l(zt(e,t),a+1)));return l(e,0),s})(e,s),(e=>Nt(e,(e=>zt(n,e)[0](t,...s??[],...l))))),e=>q(zt(n,e),(([,t,s])=>(jt(t,s??[a],void 0,(t=>(Lt(t,e),Vt(t)?1:0))),Ot(n,e),l(e),s))),e=>q(zt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=z(o);r==z(s)?e(t,...o,...a(o)):R(s[r])?D(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),ke=e=>{if(!ns(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!N(t)&&t!=r||(Me(e[u])!=t&&se(e,u),0))},Te=(t,s)=>(!e||xt(A,s)||lt(s))&&ns(t,((e,t)=>Se(s,t,e)),(()=>lt(s))),Se=(e,t,s,l)=>ns(l?s:qe(s,e,t),((l,a)=>q(xe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>lt(e,t))),xe=(t,s,l,a)=>e?q(zt(zt(A,t),l),(e=>Me(a)!=e[d]?lt(t,s,l,a,e[u]):a),(()=>lt(t,s,l,a))):R(Me(a))?lt(t,s,l,a):a,Ve=(e,t)=>ns(t?e:Ne(e),((t,s)=>q(Re(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>at())),Re=(e,s)=>t?q(zt(J,e),(t=>Me(s)!=t[d]?at(e,s,t[u]):s),(()=>at(e,s))):R(Me(s))?at(e,s):s,qe=(e,t,s)=>(q(zt(F,t),(([l,a])=>{Nt(l,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(a,(l=>{te(e,l)||lt(t,s,l)}))})),e),Ne=e=>(t&&(Nt(P,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(B,(t=>{te(e,t)||at(t)}))),e),Le=e=>Ft(A,e,((e,t,s)=>{const l=Mt(),a=Xt();Ft(At(A,t,Mt),s,((e,t,s)=>{Ot(e,t,s),q(s[u],(e=>Ot(l,t,e)),(()=>Yt(a,t)))})),Ot(F,t,[l,a])}),((e,t)=>{Ot(A,t),Ot(F,t)})),$e=e=>Ft(J,e,((e,t,s)=>{Ot(J,t,s),q(s[u],(e=>Ot(P,t,e)),(()=>Yt(B,t)))}),((e,t)=>{Ot(J,t),Ot(P,t),Lt(B,t)})),Oe=e=>ae(e)?us():Gt(e),Ae=e=>Ft(U,e,((e,t,s)=>Fe(t,s)),((e,t)=>Ue(t))),Fe=(e,t)=>Ft(At(U,e,(()=>(Ye(e,1),Ot(H,e,_t()),Ot(j,e,Mt()),Mt()))),t,((t,s,l)=>Je(e,t,s,l)),((t,s)=>Ge(e,t,s))),Je=(e,t,s,l,a)=>Ft(At(t,s,(()=>(Ze(e,s,1),Mt()))),l,((t,l,a)=>Pe(e,s,t,l,a)),((l,n)=>Ke(e,t,s,l,n,a))),Pe=(e,t,s,l,a)=>{xt(s,l)||_e(e,t,l,1);const n=zt(s,l);a!==n&&(et(e,t,l,n,a),Ot(s,l,a))},Be=(e,t,s,l,a)=>q(zt(t,s),(t=>Pe(e,s,t,l,a)),(()=>Je(e,t,s,qe({[l]:a},e,s)))),He=e=>ae(e)?ms():Kt(e),De=e=>Ft(G,e,((e,t,s)=>Qe(t,s)),((e,t)=>Xe(t))),Qe=(e,t)=>{xt(G,e)||tt(e,1);const s=zt(G,e);t!==s&&(st(e,s,t),Ot(G,e,t))},je=(e,t)=>{const[s]=zt(H,e),l=s(t);return xt(zt(U,e),l)?je(e,t):l},We=e=>zt(U,e)??Fe(e,{}),Ue=e=>Fe(e,{}),Ge=(e,t,s)=>{const[,l]=zt(H,e);l(s),Je(e,t,s,{},!0)},Ke=(e,t,s,l,a,n)=>{const o=zt(zt(F,e)?.[0],a);if(!R(o)&&!n)return Pe(e,s,l,a,o);const r=t=>{et(e,s,t,zt(l,t)),_e(e,s,t,-1),Ot(l,t)};R(o)?r(a):$t(l,r),Vt(l)&&(Ze(e,s,-1),Vt(Ot(t,s))&&(Ye(e,-1),Ot(U,e),Ot(H,e),Ot(j,e)))},Xe=e=>{const t=zt(P,e);if(!R(t))return Qe(e,t);st(e,zt(G,e)),tt(e,-1),Ot(G,e)},Ye=(e,t)=>os(o,e,t),Ze=(e,t,s)=>os(At(k,e,Mt),t,s)&&Ot(c,e,At(c,e,(()=>0))+s),_e=(e,t,s,l)=>{const a=zt(j,e),n=zt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&os(At(i,e,Mt),s,l),Ot(a,s,n!=-l?n+l:null),os(At(At(T,e,Mt),t,Mt),s,l)},et=(e,t,s,l,a)=>At(At(At(x,e,Mt),t,Mt),s,(()=>[l,0]))[1]=a,tt=(e,t)=>os(V,e,t),st=(e,t,s)=>At(M,e,(()=>[t,0]))[1]=s,lt=(e,t,s,l,a)=>(W(At(At(At($,e,Mt),t,Mt),s,(()=>[])),l),a),at=(e,t,s)=>(W(At(O,e,(()=>[])),t),s),nt=(e,t,s)=>q(zt(zt(zt(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...es(Ct(e,t,s))])),ot=e=>q(zt(M,e),(([e,t])=>[!0,e,t]),(()=>[!1,...es(Ut(e))])),rt=e=>Vt($)||Vt(he[e])?0:Nt(e?Qt($):$,((t,s)=>Nt(t,((t,l)=>Nt(t,((t,a)=>we(he[e],[s,l,a],t))))))),it=e=>Vt(O)||Vt(me[e])?0:Nt(e?Ht(O):O,((t,s)=>we(me[e],[s],t))),dt=(e,t,s)=>{if(!Vt(t))return we(e,s,(()=>Jt(t))),1},ut=e=>{const t=Vt(ie[e]),s=Vt(ue[e])&&Vt(_[e])&&Vt(ee[e])&&Vt(re[e])&&t&&Vt(X[e]),l=Vt(ce[e])&&Vt(de[e])&&Vt(Y[e])&&Vt(K[e]);if(!s||!l){const a=e?[Ht(o),Dt(i),Ht(c),Dt(k),Qt(T),Qt(x)]:[o,i,c,k,T,x];if(!s){dt(X[e],a[0]),Nt(a[1],((t,s)=>dt(_[e],t,[s]))),Nt(a[2],((t,s)=>{0!=t&&we(ee[e],[s],It(s))}));const s=Xt();Nt(a[3],((l,a)=>{dt(re[e],l,[a])&&!t&&(we(ie[e],[a,null]),Yt(s,a))})),t||Nt(a[5],((t,l)=>{if(!xt(s,l)){const s=Xt();Nt(t,(e=>Nt(e,(([t,l],a)=>l!==t?Yt(s,a):Lt(e,a))))),Nt(s,(t=>we(ie[e],[l,t])))}})),Nt(a[4],((t,s)=>Nt(t,((t,l)=>dt(ue[e],t,[s,l])))))}if(!l){let t;Nt(a[5],((s,l)=>{let a;Nt(s,((s,n)=>{let o;Nt(s,(([s,r],i)=>{r!==s&&(we(ce[e],[l,n,i],r,s,nt),t=a=o=1)})),o&&we(de[e],[l,n],nt)})),a&&we(Y[e],[l],nt)})),t&&we(K[e],void 0,nt)}}},ct=e=>{const t=Vt(ge[e]),s=Vt(pe[e])&&Vt(be[e]);if(!t||!s){const l=e?[Ht(V),Ht(M)]:[V,M];if(t||dt(ge[e],l[0]),!s){let t;Nt(l[1],(([s,l],a)=>{l!==s&&(we(pe[e],[a],l,s,ot),t=1)})),t&&we(be[e],void 0,ot)}}},ht=(e,...t)=>(ps((()=>e(...Q(t,S)))),ys),mt=()=>[Jt(x,((e,t)=>-1===zt(o,t)?null:Jt(e,((e,s)=>-1===zt(zt(k,t),s)?null:Jt(e,(([,e])=>e??null),((e,t)=>as(t)))),ae)),ae),Jt(M,(([,e])=>e??null),((e,t)=>as(t)))],bt=()=>({cellsTouched:s,valuesTouched:l,changedCells:Bt(x,ls,as),invalidCells:Bt($),changedValues:Jt(M,ls,as),invalidValues:Jt(O),changedTableIds:Jt(o),changedRowIds:Pt(k),changedCellIds:Bt(T),changedValueIds:Jt(V)}),gt=()=>Bt(U),pt=()=>Et(U),It=e=>vt(zt(U,S(e))),ft=e=>Et(zt(U,S(e))),yt=(e,t,s,l=0,a)=>{return Q(E((o=zt(U,S(e)),r=(e,s)=>[R(t)?s:zt(e,S(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),Q([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,R(a)?a:l+a),(([,e])=>e));var n,o,r},wt=(e,t)=>Et(zt(zt(U,S(e)),S(t))),Ct=(e,t,s)=>zt(zt(zt(U,S(e)),S(t)),S(s)),Rt=()=>Jt(G),Wt=()=>Et(G),Ut=e=>zt(G,S(e)),Gt=e=>ht((()=>(e=>ns(e,Te,lt))(e)?Ae(e):0)),Kt=e=>ht((()=>Ve(e)?De(e):0)),Zt=e=>{try{Oe(oe(e))}catch{}return ys},is=t=>ht((()=>{if((e=ns(t,(e=>ns(e,ke))))&&(Le(t),!Vt(U))){const e=gt();us(),Gt(e)}})),ds=e=>ht((()=>{if(t=(e=>ns(e,ke))(e)){const s=Rt();gs(),ms(),t=!0,$e(e),Kt(s)}})),us=()=>ht((()=>Ae({}))),cs=e=>ht((e=>xt(U,e)?Ue(e):0),e),hs=(e,t)=>ht(((e,t)=>q(zt(U,e),(s=>xt(s,t)?Ge(e,s,t):0))),e,t),ms=()=>ht((()=>De({}))),bs=()=>ht((()=>{Le({}),e=!1})),gs=()=>ht((()=>{$e({}),t=!1})),ps=(e,t)=>{if(-1!=n){Is();const s=e();return fs(t),s}},Is=()=>(-1!=n&&n++,1==n&&we(Ie,void 0,mt,bt),ys),fs=e=>(n>0&&(n--,0==n&&(s=!Vt(x),l=!Vt(M),n=1,rt(1),s&&ut(1),it(1),l&&ct(1),e?.(mt,bt)&&(Nt(x,((e,t)=>Nt(e,((e,s)=>Nt(e,(([e],l)=>Ee(ys,t,s,l,e))))))),Nt(M,(([e],t)=>ze(ys,t,e))),s=l=!1),we(fe[0],void 0,mt,bt),n=-1,rt(0),s&&ut(0),it(0),l&&ct(0),we(fe[1],void 0,mt,bt),n=0,s=l=!1,D([o,i,c,k,T,x,$,V,M,O],qt))),ys),ys={getContent:()=>[gt(),Rt()],getTables:gt,getTableIds:pt,getTable:e=>Pt(zt(U,S(e))),getTableCellIds:e=>Et(zt(j,S(e))),getRowCount:It,getRowIds:ft,getSortedRowIds:yt,getRow:(e,t)=>Jt(zt(zt(U,S(e)),S(t))),getCellIds:wt,getCell:Ct,getValues:Rt,getValueIds:Wt,getValue:Ut,hasTables:()=>!Vt(U),hasTable:e=>xt(U,S(e)),hasTableCell:(e,t)=>xt(zt(j,S(e)),S(t)),hasRow:(e,t)=>xt(zt(U,S(e)),S(t)),hasCell:(e,t,s)=>xt(zt(zt(U,S(e)),S(t)),S(s)),hasValues:()=>!Vt(G),hasValue:e=>xt(G,S(e)),getTablesJson:()=>ne(U),getValuesJson:()=>ne(G),getJson:()=>ne([U,G]),getTablesSchemaJson:()=>ne(A),getValuesSchemaJson:()=>ne(J),getSchemaJson:()=>ne([A,J]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(ae(e)?us:Gt)(e),(ae(t)?ms:Kt)(t)})),setTables:Gt,setTable:(e,t)=>ht((e=>Te(t,e)?Fe(e,t):0),e),setRow:(e,t,s)=>ht(((e,t)=>Se(e,t,s)?Je(e,We(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ps((()=>{let l;return Se(e,l,t)&&(e=S(e),Je(e,We(e),l=je(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>ht(((e,t)=>{if(Se(e,t,s,1)){const l=We(e);le(s,((s,a)=>Be(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>ht(((e,t,s)=>q(xe(e,t,s,L(l)?l(Ct(e,t,s)):l),(l=>Be(e,We(e),t,s,l)))),e,t,s),setValues:Kt,setPartialValues:e=>ht((()=>Ve(e,1)?le(e,((e,t)=>Qe(t,e))):0)),setValue:(e,t)=>ht((e=>q(Re(e,L(t)?t(Ut(e)):t),(t=>Qe(e,t)))),e),setTransactionChanges:e=>ht((()=>{le(e[0],((e,t)=>R(e)?cs(t):le(e,((e,s)=>R(e)?hs(t,s):le(e,((e,l)=>Ee(ys,t,s,l,e))))))),le(e[1],((e,t)=>ze(ys,t,e)))})),setTablesJson:Zt,setValuesJson:e=>{try{He(oe(e))}catch{}return ys},setJson:e=>ht((()=>{try{const[t,s]=oe(e);Oe(t),He(s)}catch{Zt(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(zt(U,e),(a=>q(zt(a,t),(n=>xt(n,s)?Ke(e,a,t,n,s,l):0))))),e,t,s),delValues:ms,delValue:e=>ht((e=>xt(G,e)?Xe(e):0),e),delTablesSchema:bs,delValuesSchema:gs,delSchema:()=>ht((()=>{bs(),gs()})),transaction:ps,startTransaction:Is,finishTransaction:fs,forEachTable:e=>Nt(U,((t,s)=>e(s,(e=>Nt(t,((t,s)=>e(s,(e=>$t(t,e))))))))),forEachTableCell:(e,t)=>$t(zt(j,S(e)),t),forEachRow:(e,t)=>Nt(zt(U,S(e)),((e,s)=>t(s,(t=>$t(e,t))))),forEachCell:(e,t,s)=>$t(zt(zt(U,S(e)),S(t)),s),forEachValue:e=>$t(G,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=yt(e,t,s,l,a);return ye((()=>{const o=yt(e,t,s,l,a);var i,d,u;d=r,z(i=o)===z(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(ys,e,t,s,l,a,r))}),ie[o?1:0],[e,t],[pt])},addStartTransactionListener:e=>ye(e,Ie),addWillFinishTransactionListener:e=>ye(e,fe[0]),addDidFinishTransactionListener:e=>ye(e,fe[1]),callListener:e=>(ve(e),ys),delListener:e=>(Ce(e),ys),getListenerStats:()=>({tables:ts(K),tableIds:ts(X),tableCellIds:ts(_),table:ts(Y),rowCount:ts(ee),rowIds:ts(re),sortedRowIds:ts(ie),row:ts(de,Tt),cellIds:ts(ue,Tt),cell:ts(ce,St),invalidCell:ts(he,St),values:ts(be),valueIds:ts(ge),value:ts(pe),invalidValue:ts(me),transaction:kt(Ie)+ts(fe)}),createStore:rs,addListener:ye,callListeners:we};return le({[m]:[0,K],[b]:[0,X],[h]:[1,Y,[pt]],[h+y]:[1,_,[pt]],[p]:[1,ee,[pt]],[I]:[1,re,[pt]],[g]:[2,de,[pt,ft]],[y]:[2,ue,[pt,ft]],[f]:[3,ce,[pt,ft,wt],e=>es(Ct(...e))],InvalidCell:[3,he],[C]:[0,be],[v]:[0,ge],[w]:[1,pe,[Wt],e=>es(Ut(e[0]))],InvalidValue:[1,me]},(([e,t,s,l],a)=>{ys["add"+a+"Listener"]=(...a)=>ye(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),Z(ys)},is=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(rs),a=de.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;At(Wt,i,(()=>0)),At(Ut,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();ae(s)&&ae(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(W(zt(Ut,i),...e),await(async()=>{if(!zt(Wt,i)){for(Ot(Wt,i,1);!R(u=U(zt(Ut,i)));)try{await u()}catch(e){n?.(e)}Ot(Wt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),Z(I)})(e,(async()=>oe(s.getItem(t))),(async e=>s.setItem(t,ne(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>oe(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:!!t}),await e.startAutoSave()})),A(O,null,A("aside",{id:re},A(Ne,{s:l}),A(wt,{s:l})),A("style",null,qe))};e.EditableCellView=st,e.EditableValueView=lt,e.RelationshipInHtmlTable=et,e.ResultSortedTableInHtmlTable=tt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>A(Ue,{...a,params:He(We(s.useResultTableCellIds(e,t),l,s.ResultCellView),Qe(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=_e,e.SortedTableInHtmlTable=Ye,e.SortedTablePaginator=at,e.StoreInspector=e=>A(is,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>A(Ue,{...n,params:He(We(s.useTableCellIds(e,t),a,l?st:s.CellView),De(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=Ze},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),u="Listener",d="Result",l="Ids",n="Table",i=n+"s",a=n+l,I="Row",c=I+"Count",C=I+l,p="Sorted"+I+l,w="Cell",b=w+l,R="Value",k=R+"s",g=R+l,h=e=>null==e,m=(e,s,t)=>h(e)?t?.():s(e),L=e=>t(e)==r,y=()=>{},S=(e,s)=>e.map(s),V=Object.keys,{createContext:T,useContext:f}=s,x=T([]),v=(e,s)=>{const t=f(x);return h(e)?t[s]:L(e)?((e,s)=>m(e,(e=>e[s])))(t[s+1]??{},e):e},P=(e,s)=>{const t=v(e,s);return h(e)||L(e)?t:e},q=e=>V(f(x)[e]??{}),B=e=>P(e,0),M=e=>P(e,2),D=e=>P(e,4),F=e=>P(e,6),O=e=>P(e,8),Q=e=>P(e,10),A=e=>e.toLowerCase();A(u);const E="Transaction";A(E);const{useCallback:G,useEffect:j,useMemo:U,useRef:W,useState:z}=s,H=(e,s,t=[])=>{const o=U((()=>s(e)),[e,...t]);return j((()=>()=>o.destroy()),[o]),o},J=(e,s,t,o=[],r)=>{const[,u]=z(),d=G((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[l]=z(d),n=W(l);return U((()=>n.current=d()),[d]),K(e,s,((...e)=>{n.current=h(r)?d():e[r],u([])}),[],o),n.current},K=(e,s,t,o=[],r=[],...d)=>j((()=>{const o=s?.["add"+e+u]?.(...r,t,...d);return()=>s?.delListener(o)}),[s,...r,...o,...d]),N=(e,s,t,o=[],r=y,u=[],...d)=>{const l=B(e);return G((e=>m(l,(o=>m(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},X=(e,s,t=y,o=[],...r)=>{const u=B(e);return G((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},Y=(e,s,t)=>{const o=Q(e);return G((()=>o?.[s](t)),[o,s,t])},Z=e=>J(a,B(e),[],[]),$=(e,s)=>J(C,B(s),[],[e]),_=(e,s,t,o=0,r,u)=>J(p,B(u),[],[e,s,t,o,r],6),ee=(e,s,t)=>J(b,B(t),[],[e,s]),se=(e,s,t,o)=>J(w,B(o),void 0,[e,s,t],4),te=e=>J(g,B(e),[],[]),oe=(e,s)=>J(R,B(s),void 0,[e]),re=(e,s)=>J("Metric",M(s),void 0,[e]),ue=(e,s)=>J("SliceIds",D(s),[],[e]),de=(e,s,t)=>J("Slice"+C,D(t),[],[e,s]),le=(e,s,t)=>J("RemoteRowId",F(t),void 0,[e,s]),ne=(e,s,t)=>J("Local"+C,F(t),[],[e,s]),ie=(e,s,t)=>J("Linked"+C,F(t),[],[e,s]),ae=(e,s)=>J(d+C,O(s),[],[e]),Ie=(e,s,t,o=0,r,u)=>J(d+p,O(u),[],[e,s,t,o,r],6),ce=(e,s,t)=>J(d+b,O(t),[],[e,s]),Ce=(e,s,t,o)=>J(d+w,O(o),void 0,[e,s,t]),pe=e=>J("CheckpointIds",Q(e),[[],void 0,[]]),we=(e,s)=>J("Checkpoint",Q(s),void 0,[e]),be=e=>Y(e,"goBackward"),Re=e=>Y(e,"goForward"),{PureComponent:ke,Fragment:ge,createElement:he,useCallback:me,useLayoutEffect:Le,useRef:ye,useState:Se}=s,Ve=(e,...s)=>h(e)?{}:e(...s),Te=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:fe}=s,xe=({tableId:e,store:s,rowComponent:t=De,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Be(S(l,(u=>he(t,{...Ve(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),ve=({queryId:e,queries:s,resultRowComponent:t=Ee,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Be(S(d,(r=>he(t,{...Ve(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Pe=({relationshipId:e,relationships:s,rowComponent:t=De,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[n,i,a]=Te(F(s),e),I=d(e,l,n);return Be(S(I,(e=>he(t,{...Ve(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:u}))),r,u,l)},qe=e=>({checkpoints:s,checkpointComponent:t=Ge,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=Q(s);return Be(S(e(pe(d)),(e=>he(t,{...Ve(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Be=(e,s,t,o)=>{const r=h(s)||!Array.isArray(e)?e:S(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Me=({tableId:e,rowId:s,cellId:t,store:r,debugIds:u})=>Be(o+(se(e,s,t,r)??o),void 0,u,t),De=({tableId:e,rowId:s,store:t,cellComponent:o=Me,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Be(S(((e,s,t,o)=>{const r=ee(s,t,o);return e??r})(u,e,s,t),(u=>he(o,{...Ve(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),Fe=e=>xe(e,$(e.tableId,e.store)),Oe=({valueId:e,store:s,debugIds:t})=>Be(o+(oe(e,s)??o),void 0,t,e),Qe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=De,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,n,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(D(t),e),a=de(e,s,l);return Be(S(a,(e=>he(o,{...Ve(r,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),u,d,s)},Ae=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:u})=>Be(o+(Ce(e,s,t,r)??o),void 0,u,t),Ee=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Ae,getResultCellComponentProps:r,separator:u,debugIds:d})=>Be(S(ce(e,s,t),(u=>he(o,{...Ve(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Ge=({checkpoints:e,checkpointId:s,debugIds:t})=>Be(we(s,e)??o,void 0,t,s),je=qe((e=>e[0])),Ue=qe((e=>h(e[1])?[]:[e[1]])),We=qe((e=>e[2]));e.BackwardCheckpointsView=je,e.CellView=Me,e.CheckpointView=Ge,e.CurrentCheckpointView=Ue,e.ForwardCheckpointsView=We,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Qe,getSliceComponentProps:o,separator:r,debugIds:u})=>Be(S(ue(e,s),(r=>he(t,{...Ve(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),e.LinkedRowsView=e=>Pe(e,ie,e.firstRowId),e.LocalRowsView=e=>Pe(e,ne,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>Be(re(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:C})=>{const p=s.useContext(x);return he(x.Provider,{value:fe((()=>[e??p[0],{...p[1],...t},o??p[2],{...p[3],...r},u??p[4],{...p[5],...d},l??p[6],{...p[7],...n},i??p[8],{...p[9],...a},I??p[10],{...p[11],...c}]),[e,t,o,r,u,d,l,n,i,a,I,c,p])},C)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=De,getRowComponentProps:r,debugIds:u})=>{const[d,l,,n]=Te(F(t),e),i=le(e,s,d);return Be(h(n)||h(i)?null:he(o,{...Ve(r,i),key:i,tableId:n,rowId:i,store:l,debugIds:u}),void 0,u,s)},e.ResultCellView=Ae,e.ResultRowView=Ee,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ve(r,Ie(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>ve(e,ae(e.queryId,e.queries)),e.RowView=De,e.SliceView=Qe,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>xe(r,_(r.tableId,e,s,t,o,r.store)),e.TableView=Fe,e.TablesView=({store:e,tableComponent:s=Fe,getTableComponentProps:t,separator:o,debugIds:r})=>Be(S(Z(e),(o=>he(s,{...Ve(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.ValueView=Oe,e.ValuesView=({store:e,valueComponent:s=Oe,getValueComponentProps:t,separator:o,debugIds:r})=>Be(S(te(e),(o=>he(s,{...Ve(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),e.useAddRowCallback=(e,s,t=[],o,r=y,u=[],d=!0)=>{const l=B(o);return G((t=>m(l,(o=>m(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},e.useCell=se,e.useCellIds=ee,e.useCellIdsListener=(e,s,t,o,r,u)=>K(b,B(u),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,u,d)=>K(w,B(d),o,r,[e,s,t],u),e.useCheckpoint=we,e.useCheckpointIds=pe,e.useCheckpointIdsListener=(e,s,t)=>K("CheckpointIds",Q(t),e,s),e.useCheckpointListener=(e,s,t,o)=>K("Checkpoint",Q(o),s,t,[e]),e.useCheckpoints=e=>v(e,10),e.useCheckpointsIds=()=>q(11),e.useCheckpointsOrCheckpointsById=Q,e.useCreateCheckpoints=(e,s,t)=>H(e,s,t),e.useCreateIndexes=(e,s,t)=>H(e,s,t),e.useCreateMetrics=(e,s,t)=>H(e,s,t),e.useCreatePersister=(e,s,t=[],o,r=[],u,d=[])=>{const[,l]=z(),n=U((()=>s(e)),[e,...t]);return j((()=>((async()=>{o&&(await o(n),l([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...d]),n},e.useCreateQueries=(e,s,t)=>H(e,s,t),e.useCreateRelationships=(e,s,t)=>H(e,s,t),e.useCreateStore=(e,s=[])=>U(e,s),e.useDelCellCallback=(e,s,t,o,r,u,d)=>X(r,w,u,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>X(t,I,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>X(s,n,t,o,e),e.useDelTablesCallback=(e,s,t)=>X(e,i,s,t),e.useDelValueCallback=(e,s,t,o)=>X(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>X(e,k,s,t),e.useDidFinishTransactionListener=(e,s,t)=>K("DidFinish"+E,B(t),e,s),e.useGoBackwardCallback=be,e.useGoForwardCallback=Re,e.useGoToCallback=(e,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>m(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},e.useIndexIds=e=>J("IndexIds",D(e),[]),e.useIndexes=e=>v(e,4),e.useIndexesIds=()=>q(5),e.useIndexesOrIndexesById=D,e.useLinkedRowIds=ie,e.useLinkedRowIdsListener=(e,s,t,o,r)=>K("Linked"+C,F(r),t,o,[e,s]),e.useLocalRowIds=ne,e.useLocalRowIdsListener=(e,s,t,o,r)=>K("Local"+C,F(r),t,o,[e,s]),e.useMetric=re,e.useMetricIds=e=>J("MetricIds",M(e),[]),e.useMetricListener=(e,s,t,o)=>K("Metric",M(o),s,t,[e]),e.useMetrics=e=>v(e,2),e.useMetricsIds=()=>q(3),e.useMetricsOrMetricsById=M,e.useQueries=e=>v(e,8),e.useQueriesIds=()=>q(9),e.useQueriesOrQueriesById=O,e.useQueryIds=e=>J("QueryIds",O(e),[]),e.useRedoInformation=e=>{const s=Q(e),[,,[t]]=pe(s);return[!h(t),Re(s),t,m(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>J("RelationshipIds",F(e),[]),e.useRelationships=e=>v(e,6),e.useRelationshipsIds=()=>q(7),e.useRelationshipsOrRelationshipsById=F,e.useRemoteRowId=le,e.useRemoteRowIdListener=(e,s,t,o,r)=>K("RemoteRowId",F(r),t,o,[e,s]),e.useResultCell=Ce,e.useResultCellIds=ce,e.useResultCellIdsListener=(e,s,t,o,r)=>K(d+b,O(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,u)=>K(d+w,O(u),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>J(d+I,O(t),{},[e,s]),e.useResultRowCount=(e,s)=>J(d+c,O(s),[],[e]),e.useResultRowCountListener=(e,s,t,o)=>K(d+c,O(o),s,t,[e]),e.useResultRowIds=ae,e.useResultRowIdsListener=(e,s,t,o)=>K(d+C,O(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>K(d+I,O(r),t,o,[e,s]),e.useResultSortedRowIds=Ie,e.useResultSortedRowIdsListener=(e,s,t,o,r,u,l,n)=>K(d+p,O(n),u,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>J(d+n,O(s),{},[e]),e.useResultTableCellIds=(e,s)=>J(d+n+b,O(s),[],[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>K(d+n+b,O(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>K(d+n,O(o),s,t,[e]),e.useRow=(e,s,t)=>J(I,B(t),{},[e,s]),e.useRowCount=(e,s)=>J(c,B(s),[],[e]),e.useRowCountListener=(e,s,t,o,r)=>K(c,B(r),s,t,[e],o),e.useRowIds=$,e.useRowIdsListener=(e,s,t,o,r)=>K(C,B(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,u)=>K(I,B(u),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,u,d,l)=>N(u,w,o,r,d,l,e,s,t),e.useSetCheckpointCallback=(e=y,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>N(r,"PartialRow",t,o,u,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,r)=>N(t,"PartialValues",e,s,o,r),e.useSetRowCallback=(e,s,t,o,r,u,d)=>N(r,I,t,o,u,d,e,s),e.useSetTableCallback=(e,s,t,o,r,u)=>N(o,n,s,t,r,u,e),e.useSetTablesCallback=(e,s,t,o,r)=>N(t,i,e,s,o,r),e.useSetValueCallback=(e,s,t,o,r,u)=>N(o,R,s,t,r,u,e),e.useSetValuesCallback=(e,s,t,o,r)=>N(t,k,e,s,o,r),e.useSliceIds=ue,e.useSliceIdsListener=(e,s,t,o)=>K("SliceIds",D(o),s,t,[e]),e.useSliceRowIds=de,e.useSliceRowIdsListener=(e,s,t,o,r)=>K("Slice"+C,D(r),t,o,[e,s]),e.useSortedRowIds=_,e.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,n)=>K(p,B(n),u,d,[e,s,t,o,r],l),e.useStartTransactionListener=(e,s,t)=>K("Start"+E,B(t),e,s),e.useStore=e=>v(e,0),e.useStoreIds=()=>q(1),e.useStoreOrStoreById=B,e.useTable=(e,s)=>J(n,B(s),{},[e]),e.useTableCellIds=(e,s)=>J(n+b,B(s),[],[e]),e.useTableCellIdsListener=(e,s,t,o,r)=>K(n+b,B(r),s,t,[e],o),e.useTableIds=Z,e.useTableIdsListener=(e,s,t,o)=>K(a,B(o),e,s,[],t),e.useTableListener=(e,s,t,o,r)=>K(n,B(r),s,t,[e],o),e.useTables=e=>J(i,B(e),{}),e.useTablesListener=(e,s,t,o)=>K(i,B(o),e,s,[],t),e.useUndoInformation=e=>{const s=Q(e),[t,r]=pe(s);return[(u=t,!(0==u.length)),be(s),r,m(r,(e=>s?.getCheckpoint(e)))??o];var u},e.useValue=oe,e.useValueIds=te,e.useValueIdsListener=(e,s,t,o)=>K(g,B(o),e,s,[],t),e.useValueListener=(e,s,t,o,r)=>K(R,B(r),s,t,[e],o),e.useValues=e=>J(k,B(e),{}),e.useValuesListener=(e,s,t,o)=>K(k,B(o),e,s,[],t),e.useWillFinishTransactionListener=(e,s,t)=>K("WillFinish"+E,B(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),u="Listener",d="Result",l="Ids",n="Table",i=n+"s",a=n+l,I="Row",c=I+"Count",C=I+l,p="Sorted"+I+l,w="Cell",b=w+l,R="Value",k=R+"s",g=R+l,h=e=>null==e,m=(e,s,t)=>h(e)?t?.():s(e),L=e=>t(e)==r,y=()=>{},S=(e,s)=>e.map(s),V=Object.keys,{createContext:T,useContext:f}=s,x=T([]),v=(e,s)=>{const t=f(x);return h(e)?t[s]:L(e)?((e,s)=>m(e,(e=>e[s])))(t[s+1]??{},e):e},P=(e,s)=>{const t=v(e,s);return h(e)||L(e)?t:e},q=e=>V(f(x)[e]??{}),B=e=>P(e,0),M=e=>P(e,2),D=e=>P(e,4),F=e=>P(e,6),O=e=>P(e,8),Q=e=>P(e,10),A=e=>e.toLowerCase();A(u);const E="Transaction";A(E);const{useCallback:G,useEffect:j,useMemo:U,useRef:W,useState:z}=s,H=(e,s,t=[])=>{const o=U((()=>s(e)),[e,...t]);return j((()=>()=>o.destroy()),[o]),o},J=(e,s,t,o=[],r)=>{const[,u]=z(),d=G((()=>s?.["get"+e]?.(...o)??t),[s,...o]),l=W();return U((()=>l.current=d()),[d]),K(e,s,((...e)=>{l.current=h(r)?d():e[r],u([])}),[],o),l.current},K=(e,s,t,o=[],r=[],...d)=>{const l=[s,...r,...o,...d],n=U((()=>s?.["add"+e+u]?.(...r,t,...d)),l);j((()=>()=>s?.delListener(n)),l)},N=(e,s,t,o=[],r=y,u=[],...d)=>{const l=B(e);return G((e=>m(l,(o=>m(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},X=(e,s,t=y,o=[],...r)=>{const u=B(e);return G((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},Y=(e,s,t)=>{const o=Q(e);return G((()=>o?.[s](t)),[o,s,t])},Z=e=>J(a,B(e),[],[]),$=(e,s)=>J(C,B(s),[],[e]),_=(e,s,t,o=0,r,u)=>J(p,B(u),[],[e,s,t,o,r],6),ee=(e,s,t)=>J(b,B(t),[],[e,s]),se=(e,s,t,o)=>J(w,B(o),void 0,[e,s,t],4),te=e=>J(g,B(e),[],[]),oe=(e,s)=>J(R,B(s),void 0,[e]),re=(e,s)=>J("Metric",M(s),void 0,[e]),ue=(e,s)=>J("SliceIds",D(s),[],[e]),de=(e,s,t)=>J("Slice"+C,D(t),[],[e,s]),le=(e,s,t)=>J("RemoteRowId",F(t),void 0,[e,s]),ne=(e,s,t)=>J("Local"+C,F(t),[],[e,s]),ie=(e,s,t)=>J("Linked"+C,F(t),[],[e,s]),ae=(e,s)=>J(d+C,O(s),[],[e]),Ie=(e,s,t,o=0,r,u)=>J(d+p,O(u),[],[e,s,t,o,r],6),ce=(e,s,t)=>J(d+b,O(t),[],[e,s]),Ce=(e,s,t,o)=>J(d+w,O(o),void 0,[e,s,t]),pe=e=>J("CheckpointIds",Q(e),[[],void 0,[]]),we=(e,s)=>J("Checkpoint",Q(s),void 0,[e]),be=e=>Y(e,"goBackward"),Re=e=>Y(e,"goForward"),{PureComponent:ke,Fragment:ge,createElement:he,useCallback:me,useLayoutEffect:Le,useRef:ye,useState:Se}=s,Ve=(e,...s)=>h(e)?{}:e(...s),Te=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:fe}=s,xe=({tableId:e,store:s,rowComponent:t=De,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Be(S(l,(u=>he(t,{...Ve(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),ve=({queryId:e,queries:s,resultRowComponent:t=Ee,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Be(S(d,(r=>he(t,{...Ve(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Pe=({relationshipId:e,relationships:s,rowComponent:t=De,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[n,i,a]=Te(F(s),e),I=d(e,l,n);return Be(S(I,(e=>he(t,{...Ve(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:u}))),r,u,l)},qe=e=>({checkpoints:s,checkpointComponent:t=Ge,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=Q(s);return Be(S(e(pe(d)),(e=>he(t,{...Ve(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Be=(e,s,t,o)=>{const r=h(s)||!Array.isArray(e)?e:S(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Me=({tableId:e,rowId:s,cellId:t,store:r,debugIds:u})=>Be(o+(se(e,s,t,r)??o),void 0,u,t),De=({tableId:e,rowId:s,store:t,cellComponent:o=Me,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Be(S(((e,s,t,o)=>{const r=ee(s,t,o);return e??r})(u,e,s,t),(u=>he(o,{...Ve(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),Fe=e=>xe(e,$(e.tableId,e.store)),Oe=({valueId:e,store:s,debugIds:t})=>Be(o+(oe(e,s)??o),void 0,t,e),Qe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=De,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,n,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(D(t),e),a=de(e,s,l);return Be(S(a,(e=>he(o,{...Ve(r,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),u,d,s)},Ae=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:u})=>Be(o+(Ce(e,s,t,r)??o),void 0,u,t),Ee=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Ae,getResultCellComponentProps:r,separator:u,debugIds:d})=>Be(S(ce(e,s,t),(u=>he(o,{...Ve(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Ge=({checkpoints:e,checkpointId:s,debugIds:t})=>Be(we(s,e)??o,void 0,t,s),je=qe((e=>e[0])),Ue=qe((e=>h(e[1])?[]:[e[1]])),We=qe((e=>e[2]));e.BackwardCheckpointsView=je,e.CellView=Me,e.CheckpointView=Ge,e.CurrentCheckpointView=Ue,e.ForwardCheckpointsView=We,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Qe,getSliceComponentProps:o,separator:r,debugIds:u})=>Be(S(ue(e,s),(r=>he(t,{...Ve(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),e.LinkedRowsView=e=>Pe(e,ie,e.firstRowId),e.LocalRowsView=e=>Pe(e,ne,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>Be(re(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:C})=>{const p=s.useContext(x);return he(x.Provider,{value:fe((()=>[e??p[0],{...p[1],...t},o??p[2],{...p[3],...r},u??p[4],{...p[5],...d},l??p[6],{...p[7],...n},i??p[8],{...p[9],...a},I??p[10],{...p[11],...c}]),[e,t,o,r,u,d,l,n,i,a,I,c,p])},C)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=De,getRowComponentProps:r,debugIds:u})=>{const[d,l,,n]=Te(F(t),e),i=le(e,s,d);return Be(h(n)||h(i)?null:he(o,{...Ve(r,i),key:i,tableId:n,rowId:i,store:l,debugIds:u}),void 0,u,s)},e.ResultCellView=Ae,e.ResultRowView=Ee,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ve(r,Ie(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>ve(e,ae(e.queryId,e.queries)),e.RowView=De,e.SliceView=Qe,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>xe(r,_(r.tableId,e,s,t,o,r.store)),e.TableView=Fe,e.TablesView=({store:e,tableComponent:s=Fe,getTableComponentProps:t,separator:o,debugIds:r})=>Be(S(Z(e),(o=>he(s,{...Ve(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.ValueView=Oe,e.ValuesView=({store:e,valueComponent:s=Oe,getValueComponentProps:t,separator:o,debugIds:r})=>Be(S(te(e),(o=>he(s,{...Ve(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),e.useAddRowCallback=(e,s,t=[],o,r=y,u=[],d=!0)=>{const l=B(o);return G((t=>m(l,(o=>m(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},e.useCell=se,e.useCellIds=ee,e.useCellIdsListener=(e,s,t,o,r,u)=>K(b,B(u),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,u,d)=>K(w,B(d),o,r,[e,s,t],u),e.useCheckpoint=we,e.useCheckpointIds=pe,e.useCheckpointIdsListener=(e,s,t)=>K("CheckpointIds",Q(t),e,s),e.useCheckpointListener=(e,s,t,o)=>K("Checkpoint",Q(o),s,t,[e]),e.useCheckpoints=e=>v(e,10),e.useCheckpointsIds=()=>q(11),e.useCheckpointsOrCheckpointsById=Q,e.useCreateCheckpoints=(e,s,t)=>H(e,s,t),e.useCreateIndexes=(e,s,t)=>H(e,s,t),e.useCreateMetrics=(e,s,t)=>H(e,s,t),e.useCreatePersister=(e,s,t=[],o,r=[],u,d=[])=>{const[,l]=z(),n=U((()=>s(e)),[e,...t]);return j((()=>((async()=>{o&&(await o(n),l([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...d]),n},e.useCreateQueries=(e,s,t)=>H(e,s,t),e.useCreateRelationships=(e,s,t)=>H(e,s,t),e.useCreateStore=(e,s=[])=>U(e,s),e.useDelCellCallback=(e,s,t,o,r,u,d)=>X(r,w,u,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>X(t,I,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>X(s,n,t,o,e),e.useDelTablesCallback=(e,s,t)=>X(e,i,s,t),e.useDelValueCallback=(e,s,t,o)=>X(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>X(e,k,s,t),e.useDidFinishTransactionListener=(e,s,t)=>K("DidFinish"+E,B(t),e,s),e.useGoBackwardCallback=be,e.useGoForwardCallback=Re,e.useGoToCallback=(e,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>m(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},e.useIndexIds=e=>J("IndexIds",D(e),[]),e.useIndexes=e=>v(e,4),e.useIndexesIds=()=>q(5),e.useIndexesOrIndexesById=D,e.useLinkedRowIds=ie,e.useLinkedRowIdsListener=(e,s,t,o,r)=>K("Linked"+C,F(r),t,o,[e,s]),e.useLocalRowIds=ne,e.useLocalRowIdsListener=(e,s,t,o,r)=>K("Local"+C,F(r),t,o,[e,s]),e.useMetric=re,e.useMetricIds=e=>J("MetricIds",M(e),[]),e.useMetricListener=(e,s,t,o)=>K("Metric",M(o),s,t,[e]),e.useMetrics=e=>v(e,2),e.useMetricsIds=()=>q(3),e.useMetricsOrMetricsById=M,e.useQueries=e=>v(e,8),e.useQueriesIds=()=>q(9),e.useQueriesOrQueriesById=O,e.useQueryIds=e=>J("QueryIds",O(e),[]),e.useRedoInformation=e=>{const s=Q(e),[,,[t]]=pe(s);return[!h(t),Re(s),t,m(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>J("RelationshipIds",F(e),[]),e.useRelationships=e=>v(e,6),e.useRelationshipsIds=()=>q(7),e.useRelationshipsOrRelationshipsById=F,e.useRemoteRowId=le,e.useRemoteRowIdListener=(e,s,t,o,r)=>K("RemoteRowId",F(r),t,o,[e,s]),e.useResultCell=Ce,e.useResultCellIds=ce,e.useResultCellIdsListener=(e,s,t,o,r)=>K(d+b,O(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,u)=>K(d+w,O(u),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>J(d+I,O(t),{},[e,s]),e.useResultRowCount=(e,s)=>J(d+c,O(s),[],[e]),e.useResultRowCountListener=(e,s,t,o)=>K(d+c,O(o),s,t,[e]),e.useResultRowIds=ae,e.useResultRowIdsListener=(e,s,t,o)=>K(d+C,O(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>K(d+I,O(r),t,o,[e,s]),e.useResultSortedRowIds=Ie,e.useResultSortedRowIdsListener=(e,s,t,o,r,u,l,n)=>K(d+p,O(n),u,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>J(d+n,O(s),{},[e]),e.useResultTableCellIds=(e,s)=>J(d+n+b,O(s),[],[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>K(d+n+b,O(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>K(d+n,O(o),s,t,[e]),e.useRow=(e,s,t)=>J(I,B(t),{},[e,s]),e.useRowCount=(e,s)=>J(c,B(s),[],[e]),e.useRowCountListener=(e,s,t,o,r)=>K(c,B(r),s,t,[e],o),e.useRowIds=$,e.useRowIdsListener=(e,s,t,o,r)=>K(C,B(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,u)=>K(I,B(u),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,u,d,l)=>N(u,w,o,r,d,l,e,s,t),e.useSetCheckpointCallback=(e=y,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>N(r,"PartialRow",t,o,u,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,r)=>N(t,"PartialValues",e,s,o,r),e.useSetRowCallback=(e,s,t,o,r,u,d)=>N(r,I,t,o,u,d,e,s),e.useSetTableCallback=(e,s,t,o,r,u)=>N(o,n,s,t,r,u,e),e.useSetTablesCallback=(e,s,t,o,r)=>N(t,i,e,s,o,r),e.useSetValueCallback=(e,s,t,o,r,u)=>N(o,R,s,t,r,u,e),e.useSetValuesCallback=(e,s,t,o,r)=>N(t,k,e,s,o,r),e.useSliceIds=ue,e.useSliceIdsListener=(e,s,t,o)=>K("SliceIds",D(o),s,t,[e]),e.useSliceRowIds=de,e.useSliceRowIdsListener=(e,s,t,o,r)=>K("Slice"+C,D(r),t,o,[e,s]),e.useSortedRowIds=_,e.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,n)=>K(p,B(n),u,d,[e,s,t,o,r],l),e.useStartTransactionListener=(e,s,t)=>K("Start"+E,B(t),e,s),e.useStore=e=>v(e,0),e.useStoreIds=()=>q(1),e.useStoreOrStoreById=B,e.useTable=(e,s)=>J(n,B(s),{},[e]),e.useTableCellIds=(e,s)=>J(n+b,B(s),[],[e]),e.useTableCellIdsListener=(e,s,t,o,r)=>K(n+b,B(r),s,t,[e],o),e.useTableIds=Z,e.useTableIdsListener=(e,s,t,o)=>K(a,B(o),e,s,[],t),e.useTableListener=(e,s,t,o,r)=>K(n,B(r),s,t,[e],o),e.useTables=e=>J(i,B(e),{}),e.useTablesListener=(e,s,t,o)=>K(i,B(o),e,s,[],t),e.useUndoInformation=e=>{const s=Q(e),[t,r]=pe(s);return[(u=t,!(0==u.length)),be(s),r,m(r,(e=>s?.getCheckpoint(e)))??o];var u},e.useValue=oe,e.useValueIds=te,e.useValueIdsListener=(e,s,t,o)=>K(g,B(o),e,s,[],t),e.useValueListener=(e,s,t,o,r)=>K(R,B(r),s,t,[e],o),e.useValues=e=>J(k,B(e),{}),e.useValuesListener=(e,s,t,o)=>K(k,B(o),e,s,[],t),e.useWillFinishTransactionListener=(e,s,t)=>K("WillFinish"+E,B(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,o)=>t(e)?null==o?void 0:o():n(e),o=Object,l=o.keys,i=o.freeze,u=(e,t)=>n(e,(e=>e[t])),r=(e,n)=>!t(u(e,n)),d=(e,t)=>(delete e[t],e),s=(e,t)=>((e,t)=>e.map(t))(o.entries(e),(([e,n])=>t(n,e))),c=e=>l(e).length,a=e=>(e=>e instanceof o&&e.constructor==o)(e)&&0==c(e),v=e=>new Map(e),f=(e,t)=>null==e?void 0:e.get(t),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=(e,t,n)=>{var o,l,i;return l=t,null!=(i=null==(o=e)?void 0:o.has(l))&&i||y(e,t,n()),f(e,t)};var p=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{r(n.next(e))}catch(e){l(e)}},u=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,u);r((n=n.apply(e,t)).next())}));const g=v(),m=v();var A=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{r(n.next(e))}catch(e){l(e)}},u=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,u);r((n=n.apply(e,t)).next())}));const x=(e,t)=>[e[t].t,e[t].v],L=(e,n,o,l)=>{const i=t(n)?e:((e,t,n)=>(r(e,t)||(e[t]={}),e[t]))(e,n);let u;return s(o,((e,t)=>{l(i,t,e)&&(u=1)})),s(i,((e,t)=>{r(o,t)||(d(i,t),u=1)})),!t(n)&&a(i)&&d(e,n),u};e.createAutomergePersister=(e,o,l="tinybase",r)=>(o.change((e=>e[l]={})),((e,o,l,u,r,d,[s,c]=[],v=[])=>{let A,x,L,P=0,S=0;h(g,v,(()=>0)),h(m,v,(()=>[]));const b=e=>p(void 0,null,(function*(){return 2!=P&&(P=1,yield w.schedule((()=>p(void 0,null,(function*(){yield e(),P=0}))))),w})),w={load:(t,n)=>p(void 0,null,(function*(){return yield b((()=>p(void 0,null,(function*(){try{e.setContent(yield o())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>p(void 0,[...t],(function*(t={},n={}){return w.stopAutoLoad(),yield w.load(t,n),S=1,L=u(((t,n)=>p(void 0,null,(function*(){if(n){const t=n();yield b((()=>p(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield b((()=>p(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield o())}catch(e){null==d||d(e)}}))))})))),w})),stopAutoLoad:()=>(S&&(r(L),L=void 0,S=0),w),save:t=>p(void 0,null,(function*(){return 1!=P&&(P=2,yield w.schedule((()=>p(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==d||d(e)}P=0}))))),w})),startAutoSave:()=>p(void 0,null,(function*(){return yield w.stopAutoSave().save(),A=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();a(n)&&a(o)||w.save((()=>[n,o]))})),w})),stopAutoSave:()=>(n(A,e.delListener),A=void 0,w),schedule:(...e)=>p(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(f(m,v),...e),yield p(void 0,null,(function*(){if(!f(g,v)){for(y(g,v,1);!t((e=f(m,v),x=e.shift()));)try{yield x()}catch(e){null==d||d(e)}y(g,v,0)}var e})),w})),getStore:()=>e,destroy:()=>w.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return s&&(w[s]=()=>c),i(w)})(e,(()=>A(void 0,null,(function*(){return 2==c(o.doc[l])?x(o.doc,l):void 0}))),((e,i)=>A(void 0,null,(function*(){return o.change((o=>((e,o,l,i)=>{((e,t)=>{a(e[t])&&(e[t]={t:{},v:{}})})(e,o);const[r,c]=x(e,o),v=()=>{f=1};let f=1;if(n(null==i?void 0:i(),(([e,o])=>{f=0,s(e,((e,o)=>f?0:t(e)?d(r,o):n(r[o],(o=>s(e,((e,l)=>f?0:t(e)?d(o,l):n(u(o,l),(n=>s(e,((e,o)=>t(e)?d(n,o):n[o]=e))),v)))),v))),s(o,((e,n)=>f?0:t(e)?d(c,n):c[n]=e))})),f){const[e,t]=l();L(r,void 0,e,((e,t,n)=>L(r,t,n,((e,t,n)=>L(e,t,n,((e,t,n)=>{if(u(e,t)!==n)return e[t]=n,1})))))),L(c,void 0,t,((e,t,n)=>{u(c,t)!==n&&(c[t]=n)}))}})(o,l,e,i)))}))),(e=>{const t=({doc:t})=>e((()=>x(t,l)));return o.on("change",t),t}),(e=>{o.removeListener("change",e)}),r,["getDocHandle",o]))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterAutomerge={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,o)=>t(e)?null==o?void 0:o():n(e),o=Object,l=e=>o.getPrototypeOf(e),i=o.keys,r=o.freeze,u=(e,t)=>n(e,(e=>e[t])),d=(e,n)=>!t(u(e,n)),s=(e,t)=>(delete e[t],e),c=(e,t)=>((e,t)=>e.map(t))(o.entries(e),(([e,n])=>t(n,e))),a=e=>i(e).length,v=e=>(e=>!t(e)&&n(l(e),(e=>e==o.prototype||t(l(e))),(()=>!0)))(e)&&0==a(e),f=e=>new Map(e),y=(e,t)=>null==e?void 0:e.get(t),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},p=(e,t,n)=>{var o,l,i;return l=t,null!=(i=null==(o=e)?void 0:o.has(l))&&i||h(e,t,n()),y(e,t)};var g=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const m=f(),A=f();var x=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const L=(e,t)=>[e[t].t,e[t].v],P=(e,n,o,l)=>{const i=t(n)?e:((e,t,n)=>(d(e,t)||(e[t]={}),e[t]))(e,n);let r;return c(o,((e,t)=>{l(i,t,e)&&(r=1)})),c(i,((e,t)=>{d(o,t)||(s(i,t),r=1)})),!t(n)&&v(i)&&s(e,n),r};e.createAutomergePersister=(e,o,l="tinybase",i)=>(o.change((e=>e[l]={})),((e,o,l,i,u,d,[s,c]=[],a=[])=>{let f,x,L,P=0,S=0;p(m,a,(()=>0)),p(A,a,(()=>[]));const b=e=>g(void 0,null,(function*(){return 2!=P&&(P=1,yield w.schedule((()=>g(void 0,null,(function*(){yield e(),P=0}))))),w})),w={load:(t,n)=>g(void 0,null,(function*(){return yield b((()=>g(void 0,null,(function*(){try{e.setContent(yield o())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>g(void 0,[...t],(function*(t={},n={}){return w.stopAutoLoad(),yield w.load(t,n),S=1,L=i(((t,n)=>g(void 0,null,(function*(){if(n){const t=n();yield b((()=>g(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield b((()=>g(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield o())}catch(e){null==d||d(e)}}))))})))),w})),stopAutoLoad:()=>(S&&(u(L),L=void 0,S=0),w),save:t=>g(void 0,null,(function*(){return 1!=P&&(P=2,yield w.schedule((()=>g(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==d||d(e)}P=0}))))),w})),startAutoSave:()=>g(void 0,null,(function*(){return yield w.stopAutoSave().save(),f=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();v(n)&&v(o)||w.save((()=>[n,o]))})),w})),stopAutoSave:()=>(n(f,e.delListener),f=void 0,w),schedule:(...e)=>g(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(y(A,a),...e),yield g(void 0,null,(function*(){if(!y(m,a)){for(h(m,a,1);!t((e=y(A,a),x=e.shift()));)try{yield x()}catch(e){null==d||d(e)}h(m,a,0)}var e})),w})),getStore:()=>e,destroy:()=>w.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return s&&(w[s]=()=>c),r(w)})(e,(()=>x(void 0,null,(function*(){return 2==a(o.doc[l])?L(o.doc,l):void 0}))),((e,i)=>x(void 0,null,(function*(){return o.change((o=>((e,o,l,i)=>{((e,t)=>{v(e[t])&&(e[t]={t:{},v:{}})})(e,o);const[r,d]=L(e,o),a=()=>{f=1};let f=1;if(n(null==i?void 0:i(),(([e,o])=>{f=0,c(e,((e,o)=>f?0:t(e)?s(r,o):n(r[o],(o=>c(e,((e,l)=>f?0:t(e)?s(o,l):n(u(o,l),(n=>c(e,((e,o)=>t(e)?s(n,o):n[o]=e))),a)))),a))),c(o,((e,n)=>f?0:t(e)?s(d,n):d[n]=e))})),f){const[e,t]=l();P(r,void 0,e,((e,t,n)=>P(r,t,n,((e,t,n)=>P(e,t,n,((e,t,n)=>{if(u(e,t)!==n)return e[t]=n,1})))))),P(d,void 0,t,((e,t,n)=>{u(d,t)!==n&&(d[t]=n)}))}})(o,l,e,i)))}))),(e=>{const t=({doc:t})=>e((()=>L(t,l)));return o.on("change",t),t}),(e=>{o.removeListener("change",e)}),i,["getDocHandle",o]))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterAutomerge={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e instanceof t,n=e=>null==e,o=Object,r=o.keys,l=o.freeze,i=e=>(e=>t(e,o)&&e.constructor==o)(e)&&0==(e=>r(e).length)(e),s=JSON.parse,u=e=>new Map(e),a=(e,t)=>null==e?void 0:e.get(t),d=(e,t,o)=>{return n(o)?(l=t,null==(r=e)||r.delete(l),e):null==e?void 0:e.set(t,o);var r,l},c=(e,t,n)=>{var o,r,l;return r=t,null!=(l=null==(o=e)?void 0:o.has(r))&&l||d(e,t,n()),a(e,t)};var v=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{s(n.next(e))}catch(e){r(e)}},i=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,i);s((n=n.apply(e,t)).next())}));const f=u(),y=u();var h=(e,t,n)=>new Promise(((o,r)=>{var l=e=>{try{s(n.next(e))}catch(e){r(e)}},i=e=>{try{s(n.throw(e))}catch(e){r(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(l,i);s((n=n.apply(e,t)).next())}));const p="storage",g=globalThis.window,S=(e,r,u,S)=>((e,t,o,r,s,u,[h,p]=[],g=[])=>{let S,m,w,A=0,L=0;c(f,g,(()=>0)),c(y,g,(()=>[]));const x=e=>v(void 0,null,(function*(){return 2!=A&&(A=1,yield P.schedule((()=>v(void 0,null,(function*(){yield e(),A=0}))))),P})),P={load:(n,o)=>v(void 0,null,(function*(){return yield x((()=>v(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,o])}}))))})),startAutoLoad:(...n)=>v(void 0,[...n],(function*(n={},o={}){return P.stopAutoLoad(),yield P.load(n,o),L=1,w=r(((n,o)=>v(void 0,null,(function*(){if(o){const t=o();yield x((()=>v(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield x((()=>v(void 0,null,(function*(){var o;try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){null==u||u(e)}}))))})))),P})),stopAutoLoad:()=>(L&&(s(w),w=void 0,L=0),P),save:t=>v(void 0,null,(function*(){return 1!=A&&(A=2,yield P.schedule((()=>v(void 0,null,(function*(){try{yield o(e.getContent,t)}catch(e){null==u||u(e)}A=0}))))),P})),startAutoSave:()=>v(void 0,null,(function*(){return yield P.stopAutoSave().save(),S=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();i(n)&&i(o)||P.save((()=>[n,o]))})),P})),stopAutoSave:()=>{var t,o;return t=S,o=e.delListener,!!n(t)||o(t),S=void 0,P},schedule:(...e)=>v(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(a(y,g),...e),yield v(void 0,null,(function*(){if(!a(f,g)){for(d(f,g,1);!n((e=a(y,g),m=e.shift()));)try{yield m()}catch(e){null==u||u(e)}d(f,g,0)}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return h&&(P[h]=()=>p),l(P)})(e,(()=>h(void 0,null,(function*(){return s(u.getItem(r))}))),(e=>h(void 0,null,(function*(){return u.setItem(r,(n=e(),JSON.stringify(n,((e,n)=>t(n,Map)?o.fromEntries([...n]):n))));var n}))),(e=>{const t=t=>{t.storageArea===u&&t.key===r&&e((()=>s(t.newValue)))};return g.addEventListener(p,t),t}),(e=>g.removeEventListener(p,e)),S,["getStorageName",r]);e.createLocalPersister=(e,t,n)=>S(e,t,localStorage,n),e.createSessionPersister=(e,t,n)=>S(e,t,sessionStorage,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,o)=>t(e)?null==o?void 0:o():n(e),o=Object,l=e=>o.getPrototypeOf(e),r=o.keys,i=o.freeze,s=e=>(e=>!t(e)&&n(l(e),(e=>e==o.prototype||t(l(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),u=JSON.parse,a=e=>new Map(e),d=(e,t)=>null==e?void 0:e.get(t),c=(e,n,o)=>{return t(o)?(r=n,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(n,o);var l,r},v=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||c(e,t,n()),d(e,t)};var f=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const y=a(),h=a();var p=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const g="storage",S=globalThis.window,m=(e,l,r,a)=>((e,o,l,r,u,a,[p,g]=[],S=[])=>{let m,w,A,L=0,P=0;v(y,S,(()=>0)),v(h,S,(()=>[]));const x=e=>f(void 0,null,(function*(){return 2!=L&&(L=1,yield T.schedule((()=>f(void 0,null,(function*(){yield e(),L=0}))))),T})),T={load:(t,n)=>f(void 0,null,(function*(){return yield x((()=>f(void 0,null,(function*(){try{e.setContent(yield o())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>f(void 0,[...t],(function*(t={},n={}){return T.stopAutoLoad(),yield T.load(t,n),P=1,A=r(((t,n)=>f(void 0,null,(function*(){if(n){const t=n();yield x((()=>f(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield x((()=>f(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield o())}catch(e){null==a||a(e)}}))))})))),T})),stopAutoLoad:()=>(P&&(u(A),A=void 0,P=0),T),save:t=>f(void 0,null,(function*(){return 1!=L&&(L=2,yield T.schedule((()=>f(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==a||a(e)}L=0}))))),T})),startAutoSave:()=>f(void 0,null,(function*(){return yield T.stopAutoSave().save(),m=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||T.save((()=>[n,o]))})),T})),stopAutoSave:()=>(n(m,e.delListener),m=void 0,T),schedule:(...e)=>f(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(d(h,S),...e),yield f(void 0,null,(function*(){if(!d(y,S)){for(c(y,S,1);!t((e=d(h,S),w=e.shift()));)try{yield w()}catch(e){null==a||a(e)}c(y,S,0)}var e})),T})),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(T[p]=()=>g),i(T)})(e,(()=>p(void 0,null,(function*(){return u(r.getItem(l))}))),(e=>p(void 0,null,(function*(){return r.setItem(l,(t=e(),JSON.stringify(t,((e,t)=>t instanceof Map?o.fromEntries([...t]):t))));var t}))),(e=>{const t=t=>{t.storageArea===r&&t.key===l&&e((()=>u(t.newValue)))};return S.addEventListener(g,t),t}),(e=>S.removeEventListener(g,e)),a,["getStorageName",l]);e.createLocalPersister=(e,t,n)=>m(e,t,localStorage,n),e.createSessionPersister=(e,t,n)=>m(e,t,sessionStorage,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=(e,n)=>e.repeat(n),r=Promise,u=setInterval,d=clearInterval,a=(e,n)=>e instanceof n,s=e=>null==e,c=(e,n,t)=>s(e)?null==t?void 0:t():n(e),v=e=>n(e)==o,y=(e,n,t)=>e.slice(n,t),f=e=>e.length,p=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},h=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),m=e=>0==f(e),T=(e,n)=>e.filter(n),O=(e,...n)=>e.push(...n),P=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},A=(e,n)=>null==e?void 0:e.delete(n),L=Object,w=L.keys,x=L.freeze,N=(e=[])=>L.fromEntries(e),R=(...e)=>L.assign({},...e),S=(e,n)=>E(L.entries(e),(([e,t])=>n(t,e))),C=e=>L.values(e),g=e=>f(w(e)),D=e=>(e=>a(e,L)&&e.constructor==L)(e)&&0==g(e),I=e=>new Map(e),F=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},M=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return E([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},j=(e,n,t)=>s(t)?(A(e,n),e):null==e?void 0:e.set(n,t),_=(e,n,t)=>(P(e,n)||j(e,n,t()),M(e,n)),B=(e,n,t,l=j)=>(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)=>!s(((e,n)=>c(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),W=e=>new Set(Array.isArray(e)||s(e)?e:[e]),H=(e,n)=>null==e?void 0:e.add(n),U="_",k="_id",q=e=>`"${e.replace(/"/g,'""')}"`;var J=Object.defineProperty,Y=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,K=(e,n,t)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,V=(e,n)=>{for(var t in n||(n={}))z.call(n,t)&&K(e,t,n[t]);if(Y)for(var t of Y(n))G.call(n,t)&&K(e,t,n[t]);return e},Q=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=I();return[()=>Q(void 0,null,(function*(){return B(o,N(yield p(E(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,N(E(yield e("SELECT name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>j(o,n,B(_(o,n,I),t,((e,n,t)=>{t!=M(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))))),((e,n)=>j(o,n)))})),(n,t)=>Q(void 0,null,(function*(){return((e,n)=>!s(M(M(o,e),n)))(n,t)?N(T(E(yield e("SELECT*FROM"+q(n)),(e=>{return[e[t],(n=V({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!s(e)&&!D(n)))):{}})),(n,t,i,r,u,d=!1)=>Q(void 0,null,(function*(){const a=W();S(null!=i?i:{},(e=>E(w(null!=e?e:{}),(e=>H(a,e)))));const c=b(a);if(!d&&u&&m(c)&&P(o,n))return yield e("DROP TABLE"+q(n)),void j(o,n);if(m(c)||P(o,n)){const l=M(o,n),i=W(F(l));yield p([...E(c,(t=>Q(void 0,null,(function*(){A(i,t)||(yield e(`ALTER TABLE${q(n)}ADD${q(t)}`),j(l,t,""))})))),...!d&&r?E(b(i),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${q(n)}DROP${q(o)}`),j(l,o))})))):[]])}else yield e(`CREATE TABLE${q(n)}(${q(t)} PRIMARY KEY ON CONFLICT REPLACE${h(E(c,(e=>l+q(e))))});`),j(o,n,I([[t,""],...E(c,(e=>[e,""]))]));if(d)s(i)?yield e("DELETE FROM"+q(n)+"WHERE 1"):yield p(S(i,((l,o)=>Q(void 0,null,(function*(){s(l)?yield e("DELETE FROM"+q(n)+Z+q(t)+"=?",[o]):m(c)||(yield ne(e,n,t,w(l),[o,...C(l)]))})))));else if(m(c))P(o,n)&&(yield e("DELETE FROM"+q(n)+"WHERE 1"));else{const l=T(F(M(o,n)),(e=>e!=t)),r=[],u=[];S(null!=i?i:{},((e,n)=>{O(r,n,...E(l,(n=>null==e?void 0:e[n]))),O(u,n)})),yield ne(e,n,t,l,r),yield e("DELETE FROM"+q(n)+Z+q(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,o,r)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+q(n)+"("+q(t)+h(E(o,(e=>l+q(e))))+")VALUES"+y(i(`,(?${i(",?",f(o))})`,f(r)/(f(o)+1)),1)+"ON CONFLICT("+q(t)+")DO UPDATE SET"+h(E(o,(e=>q(e)+"=excluded."+q(e))),l),r)})),te=e=>h(E(e,(()=>"?")),l),le=JSON.parse;var oe=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ie=I(),re=I(),ue=(e,n,t,l,o,i,[r,u]=[],d=[])=>{let a,v,y,f=0,p=0;_(ie,d,(()=>0)),_(re,d,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==i||i(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==i||i(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),a=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();D(t)&&D(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(c(a,e.delListener),a=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return O(M(re,d),...e),yield oe(void 0,null,(function*(){if(!M(ie,d)){for(j(ie,d,1);!s((e=M(re,d),v=e.shift()));)try{yield v()}catch(e){null==i||i(e)}j(ie,d,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(E[r]=()=>u),x(E)};var de=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ae="store",se=(e,n,t,l,o,[i],r,u)=>{const[d,s,c,v]=ee(n,r,o);return ue(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield d(),le(null!=(n=null==(e=(yield s(i,k))[U])?void 0:e[ae])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,t;yield d(),yield c(i,k,{[U]:{[ae]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>a(n,Map)?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,["getDb",u],u)};var ce=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ve=(e,n,t,l,o,[i,r,[u,d,a]],c,v)=>{const[y,f,h,E]=ee(n,c,o),m=(e,n)=>ce(void 0,null,(function*(){return yield p($(r,((t,l)=>ce(void 0,[t,l],(function*([t,l,o,i],r){const u=e[r];n&&void 0===u||(yield h(t,l,u,o,i,n))})))))})),O=(e,n)=>ce(void 0,null,(function*(){return d?yield h(a,k,{[U]:e},!0,!0,n):null}));return ue(e,(()=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){yield y();const e=yield ce(void 0,null,(function*(){return N(T(yield p($(i,((e,n)=>ce(void 0,[e,n],(function*([e,n],t){return[e,yield f(t,n)]}))))),(e=>!D(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield f(a,k))[U]:{}}));return D(e)&&s(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){if(yield y(),s(n)){const[n,t]=e();yield m(n),yield O(t)}else{const[e,t]=n();yield m(e,!0),yield O(t,!0)}}))))}))),t,l,o,["getDb",v],v)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[Ee]:t+"_values"},Oe=(e,n,t,l)=>{const o=I();return S(e,((e,i)=>{const r=y(C(R(n,v(e)?{[t]:e}:e)),0,g(n));s(r[0])||l(i,r[0])||j(o,i,r)})),o};var Pe=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const be="pragma ",Ae="data_version",Le="schema_version",we=(e,n,l,o,i,r,a,s)=>{let c,f;const[p,h,E,m]=(e=>{const n=(e=>R(me,v(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[fe];if(n.mode==ye){const{storeTableName:e=t}=n;return[1,l,[e],W(e)]}const{tables:{load:o={},save:i={}}={},values:r={}}=n,u=y(C(R(Te,r)),0,g(Te)),d=u[2],a=W(d);return[0,l,[Oe(o,{[he]:null,[pe]:k},he,(e=>H(a,e)&&e==d)),Oe(i,{[Ee]:null,[pe]:k,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>H(a,n)&&n==d)),u],a]})(n);return(p?se:ve)(e,r?(e,n)=>Pe(void 0,null,(function*(){return r(e,n),yield l(e,n)})):l,(e=>[u((()=>Pe(void 0,null,(function*(){try{const n=(yield l(be+Ae))[0][Ae],t=(yield l(be+Le))[0][Le];n==(null!=c?c:c=n)&&t==(null!=f?f:f=t)||(e(),c=n,f=t)}catch(e){}}))),1e3*h),o((n=>m.has(n)?e():0))]),(([e,n])=>{d(e),c=f=null,i(n)}),a,E,b(m),s)};e.createCrSqliteWasmPersister=(e,n,t,l,o)=>we(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{r(o.next(e))}catch(e){n(e)}},i=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,i);r((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>e()),l,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=(e,n)=>e.repeat(n),r=Promise,u=setInterval,d=clearInterval,a=e=>null==e,s=(e,n,t)=>a(e)?null==t?void 0:t():n(e),c=e=>n(e)==o,v=(e,n,t)=>e.slice(n,t),y=e=>e.length,f=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},p=(e,n="")=>e.join(n),h=(e,n)=>e.map(n),E=e=>0==y(e),m=(e,n)=>e.filter(n),T=(e,...n)=>e.push(...n),O=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},b=(e,n)=>null==e?void 0:e.delete(n),A=Object,L=e=>A.getPrototypeOf(e),w=A.keys,x=A.freeze,N=(e=[])=>A.fromEntries(e),R=(...e)=>A.assign({},...e),S=(e,n)=>h(A.entries(e),(([e,t])=>n(t,e))),g=e=>A.values(e),C=e=>y(w(e)),D=e=>(e=>!a(e)&&s(L(e),(e=>e==A.prototype||a(L(e))),(()=>!0)))(e)&&0==C(e),I=e=>new Map(e),F=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},M=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return h([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},j=(e,n,t)=>a(t)?(b(e,n),e):null==e?void 0:e.set(n,t),_=(e,n,t)=>(O(e,n)||j(e,n,t()),M(e,n)),B=(e,n,t,l=j)=>(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)=>!a(((e,n)=>s(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),W=e=>new Set(Array.isArray(e)||a(e)?e:[e]),H=(e,n)=>null==e?void 0:e.add(n),U="_",k="_id",q=e=>`"${e.replace(/"/g,'""')}"`;var J=Object.defineProperty,Y=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,K=(e,n,t)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,V=(e,n)=>{for(var t in n||(n={}))z.call(n,t)&&K(e,t,n[t]);if(Y)for(var t of Y(n))G.call(n,t)&&K(e,t,n[t]);return e},Q=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=I();return[()=>Q(void 0,null,(function*(){return B(o,N(yield f(h(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,N(h(yield e("SELECT name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>j(o,n,B(_(o,n,I),t,((e,n,t)=>{t!=M(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))))),((e,n)=>j(o,n)))})),(n,t)=>Q(void 0,null,(function*(){return((e,n)=>!a(M(M(o,e),n)))(n,t)?N(m(h(yield e("SELECT*FROM"+q(n)),(e=>{return[e[t],(n=V({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,t,i,r,u,d=!1)=>Q(void 0,null,(function*(){const s=W();S(null!=i?i:{},(e=>h(w(null!=e?e:{}),(e=>H(s,e)))));const c=P(s);if(!d&&u&&E(c)&&O(o,n))return yield e("DROP TABLE"+q(n)),void j(o,n);if(E(c)||O(o,n)){const l=M(o,n),i=W(F(l));yield f([...h(c,(t=>Q(void 0,null,(function*(){b(i,t)||(yield e(`ALTER TABLE${q(n)}ADD${q(t)}`),j(l,t,""))})))),...!d&&r?h(P(i),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${q(n)}DROP${q(o)}`),j(l,o))})))):[]])}else yield e(`CREATE TABLE${q(n)}(${q(t)} PRIMARY KEY ON CONFLICT REPLACE${p(h(c,(e=>l+q(e))))});`),j(o,n,I([[t,""],...h(c,(e=>[e,""]))]));if(d)a(i)?yield e("DELETE FROM"+q(n)+"WHERE 1"):yield f(S(i,((l,o)=>Q(void 0,null,(function*(){a(l)?yield e("DELETE FROM"+q(n)+Z+q(t)+"=?",[o]):E(c)||(yield ne(e,n,t,w(l),[o,...g(l)]))})))));else if(E(c))O(o,n)&&(yield e("DELETE FROM"+q(n)+"WHERE 1"));else{const l=m(F(M(o,n)),(e=>e!=t)),r=[],u=[];S(null!=i?i:{},((e,n)=>{T(r,n,...h(l,(n=>null==e?void 0:e[n]))),T(u,n)})),yield ne(e,n,t,l,r),yield e("DELETE FROM"+q(n)+Z+q(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,o,r)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+q(n)+"("+q(t)+p(h(o,(e=>l+q(e))))+")VALUES"+v(i(`,(?${i(",?",y(o))})`,y(r)/(y(o)+1)),1)+"ON CONFLICT("+q(t)+")DO UPDATE SET"+p(h(o,(e=>q(e)+"=excluded."+q(e))),l),r)})),te=e=>p(h(e,(()=>"?")),l),le=JSON.parse;var oe=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ie=I(),re=I(),ue=(e,n,t,l,o,i,[r,u]=[],d=[])=>{let c,v,y,f=0,p=0;_(ie,d,(()=>0)),_(re,d,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==i||i(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==i||i(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();D(t)&&D(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(s(c,e.delListener),c=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return T(M(re,d),...e),yield oe(void 0,null,(function*(){if(!M(ie,d)){for(j(ie,d,1);!a((e=M(re,d),v=e.shift()));)try{yield v()}catch(e){null==i||i(e)}j(ie,d,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(E[r]=()=>u),x(E)};var de=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ae="store",se=(e,n,t,l,o,[i],r,u)=>{const[d,a,s,c]=ee(n,r,o);return ue(e,(()=>de(void 0,null,(function*(){return yield c((()=>de(void 0,null,(function*(){var e,n;return yield d(),le(null!=(n=null==(e=(yield a(i,k))[U])?void 0:e[ae])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield c((()=>de(void 0,null,(function*(){var n,t;yield d(),yield s(i,k,{[U]:{[ae]:(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 i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const ve=(e,n,t,l,o,[i,r,[u,d,s]],c,v)=>{const[y,p,h,E]=ee(n,c,o),T=(e,n)=>ce(void 0,null,(function*(){return yield f($(r,((t,l)=>ce(void 0,[t,l],(function*([t,l,o,i],r){const u=e[r];n&&void 0===u||(yield h(t,l,u,o,i,n))})))))})),O=(e,n)=>ce(void 0,null,(function*(){return d?yield h(s,k,{[U]:e},!0,!0,n):null}));return ue(e,(()=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){yield y();const e=yield ce(void 0,null,(function*(){return N(m(yield f($(i,((e,n)=>ce(void 0,[e,n],(function*([e,n],t){return[e,yield p(t,n)]}))))),(e=>!D(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield p(s,k))[U]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){if(yield y(),a(n)){const[n,t]=e();yield T(n),yield O(t)}else{const[e,t]=n();yield T(e,!0),yield O(t,!0)}}))))}))),t,l,o,["getDb",v],v)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[Ee]:t+"_values"},Oe=(e,n,t,l)=>{const o=I();return S(e,((e,i)=>{const r=v(g(R(n,c(e)?{[t]:e}:e)),0,C(n));a(r[0])||l(i,r[0])||j(o,i,r)})),o};var Pe=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const be="pragma ",Ae="data_version",Le="schema_version",we=(e,n,l,o,i,r,a,s)=>{let y,f;const[p,h,E,m]=(e=>{const n=(e=>R(me,c(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[fe];if(n.mode==ye){const{storeTableName:e=t}=n;return[1,l,[e],W(e)]}const{tables:{load:o={},save:i={}}={},values:r={}}=n,u=v(g(R(Te,r)),0,C(Te)),d=u[2],a=W(d);return[0,l,[Oe(o,{[he]:null,[pe]:k},he,(e=>H(a,e)&&e==d)),Oe(i,{[Ee]:null,[pe]:k,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>H(a,n)&&n==d)),u],a]})(n);return(p?se:ve)(e,r?(e,n)=>Pe(void 0,null,(function*(){return r(e,n),yield l(e,n)})):l,(e=>[u((()=>Pe(void 0,null,(function*(){try{const n=(yield l(be+Ae))[0][Ae],t=(yield l(be+Le))[0][Le];n==(null!=y?y:y=n)&&t==(null!=f?f:f=t)||(e(),y=n,f=t)}catch(e){}}))),1e3*h),o((n=>m.has(n)?e():0))]),(([e,n])=>{d(e),y=f=null,i(n)}),a,E,P(m),s)};e.createCrSqliteWasmPersister=(e,n,t,l,o)=>we(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{r(o.next(e))}catch(e){n(e)}},i=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,i);r((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>e()),l,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=setInterval,a=clearInterval,d=(e,n)=>e instanceof n,s=e=>null==e,c=(e,n,t)=>s(e)?null==t?void 0:t():n(e),v=e=>n(e)==o,y=(e,n,t)=>e.slice(n,t),f=e=>e.length,p=e=>{return n=function*(){return i.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},h=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),m=e=>0==f(e),T=(e,n)=>e.filter(n),b=(e,...n)=>e.push(...n),A=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},L=(e,n)=>null==e?void 0:e.delete(n),O=Object,w=O.keys,x=O.freeze,N=(e=[])=>O.fromEntries(e),g=(...e)=>O.assign({},...e),R=(e,n)=>E(O.entries(e),(([e,t])=>n(t,e))),S=e=>O.values(e),C=e=>f(w(e)),D=e=>(e=>d(e,O)&&e.constructor==O)(e)&&0==C(e),I=e=>new Map(e),F=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},M=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return E([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},j=(e,n,t)=>s(t)?(L(e,n),e):null==e?void 0:e.set(n,t),_=(e,n,t)=>(A(e,n)||j(e,n,t()),M(e,n)),B=(e,n,t,l=j)=>(R(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!s(((e,n)=>c(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),H=e=>new Set(Array.isArray(e)||s(e)?e:[e]),W=(e,n)=>null==e?void 0:e.add(n),q="_",k="_id",J=e=>`"${e.replace(/"/g,'""')}"`;var U=Object.defineProperty,Y=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,K=(e,n,t)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,V=(e,n)=>{for(var t in n||(n={}))z.call(n,t)&&K(e,t,n[t]);if(Y)for(var t of Y(n))G.call(n,t)&&K(e,t,n[t]);return e},Q=(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 X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=I();return[()=>Q(void 0,null,(function*(){return B(o,N(yield p(E(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,N(E(yield e("SELECT name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>j(o,n,B(_(o,n,I),t,((e,n,t)=>{t!=M(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))))),((e,n)=>j(o,n)))})),(n,t)=>Q(void 0,null,(function*(){return((e,n)=>!s(M(M(o,e),n)))(n,t)?N(T(E(yield e("SELECT*FROM"+J(n)),(e=>{return[e[t],(n=V({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!s(e)&&!D(n)))):{}})),(n,t,r,i,u,a=!1)=>Q(void 0,null,(function*(){const d=H();R(null!=r?r:{},(e=>E(w(null!=e?e:{}),(e=>W(d,e)))));const c=P(d);if(!a&&u&&m(c)&&A(o,n))return yield e("DROP TABLE"+J(n)),void j(o,n);if(m(c)||A(o,n)){const l=M(o,n),r=H(F(l));yield p([...E(c,(t=>Q(void 0,null,(function*(){L(r,t)||(yield e(`ALTER TABLE${J(n)}ADD${J(t)}`),j(l,t,""))})))),...!a&&i?E(P(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${J(n)}DROP${J(o)}`),j(l,o))})))):[]])}else yield e(`CREATE TABLE${J(n)}(${J(t)} PRIMARY KEY ON CONFLICT REPLACE${h(E(c,(e=>l+J(e))))});`),j(o,n,I([[t,""],...E(c,(e=>[e,""]))]));if(a)s(r)?yield e("DELETE FROM"+J(n)+"WHERE 1"):yield p(R(r,((l,o)=>Q(void 0,null,(function*(){s(l)?yield e("DELETE FROM"+J(n)+Z+J(t)+"=?",[o]):m(c)||(yield ne(e,n,t,w(l),[o,...S(l)]))})))));else if(m(c))A(o,n)&&(yield e("DELETE FROM"+J(n)+"WHERE 1"));else{const l=T(F(M(o,n)),(e=>e!=t)),i=[],u=[];R(null!=r?r:{},((e,n)=>{b(i,n,...E(l,(n=>null==e?void 0:e[n]))),b(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+J(n)+Z+J(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,o,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+J(n)+"("+J(t)+h(E(o,(e=>l+J(e))))+")VALUES"+y(r(`,(?${r(",?",f(o))})`,f(i)/(f(o)+1)),1)+"ON CONFLICT("+J(t)+")DO UPDATE SET"+h(E(o,(e=>J(e)+"=excluded."+J(e))),l),i)})),te=e=>h(E(e,(()=>"?")),l),le=JSON.parse;var oe=(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 re=I(),ie=I(),ue=(e,n,t,l,o,r,[i,u]=[],a=[])=>{let d,v,y,f=0,p=0;_(re,a,(()=>0)),_(ie,a,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(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)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();D(t)&&D(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(c(d,e.delListener),d=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return b(M(ie,a),...e),yield oe(void 0,null,(function*(){if(!M(re,a)){for(j(re,a,1);!s((e=M(ie,a),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}j(re,a,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>u),x(E)};var ae=(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",se=(e,n,t,l,o,[r],i,u)=>{const[a,s,c,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield a(),le(null!=(n=null==(e=(yield s(r,k))[q])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,t;yield a(),yield c(r,k,{[q]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>d(n,Map)?O.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 ve=(e,n,t,l,o,[r,i,[u,a,d]],c,v)=>{const[y,f,h,E]=ee(n,c,o),m=(e,n)=>ce(void 0,null,(function*(){return yield p($(i,((t,l)=>ce(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield h(t,l,u,o,r,n))})))))})),b=(e,n)=>ce(void 0,null,(function*(){return a?yield h(d,k,{[q]:e},!0,!0,n):null}));return ue(e,(()=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){yield y();const e=yield ce(void 0,null,(function*(){return N(T(yield p($(r,((e,n)=>ce(void 0,[e,n],(function*([e,n],t){return[e,yield f(t,n)]}))))),(e=>!D(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield f(d,k))[q]:{}}));return D(e)&&s(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){if(yield y(),s(n)){const[n,t]=e();yield m(n),yield b(t)}else{const[e,t]=n();yield m(e,!0),yield b(t,!0)}}))))}))),t,l,o,["getDb",v],v)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[Ee]:t+"_values"},be=(e,n,t,l)=>{const o=I();return R(e,((e,r)=>{const i=y(S(g(n,v(e)?{[t]:e}:e)),0,C(n));s(i[0])||l(r,i[0])||j(o,r,i)})),o};var Ae=(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 ",Le="data_version",Oe="schema_version",we=(e,n,l,o,r,i,d,s)=>{let c,f;const[p,h,E,m]=(e=>{const n=(e=>g(me,v(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[fe];if(n.mode==ye){const{storeTableName:e=t}=n;return[1,l,[e],H(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=y(S(g(Te,i)),0,C(Te)),a=u[2],d=H(a);return[0,l,[be(o,{[he]:null,[pe]:k},he,(e=>W(d,e)&&e==a)),be(r,{[Ee]:null,[pe]:k,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>W(d,n)&&n==a)),u],d]})(n);return(p?se:ve)(e,i?(e,n)=>Ae(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>[u((()=>Ae(void 0,null,(function*(){try{const n=(yield l(Pe+Le))[0][Le],t=(yield l(Pe+Oe))[0][Oe];n==(null!=c?c:c=n)&&t==(null!=f?f:f=t)||(e(),c=n,f=t)}catch(e){}}))),1e3*h),o((n=>m.has(n)?e():0))]),(([e,n])=>{a(e),c=f=null,r(n)}),d,E,P(m),s)};e.createExpoSqlitePersister=(e,n,t,l,o)=>we(e,t,((e,...t)=>{return l=[e,...t],o=function*(e,t=[]){return(yield n.execAsync([{sql:e,args:t}],!1))[0].rows},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.onDatabaseChange((({tableName:n})=>e(n)))),(e=>e.remove()),l,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterExpoSqlite={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=setInterval,a=clearInterval,d=e=>null==e,s=(e,n,t)=>d(e)?null==t?void 0:t():n(e),c=e=>n(e)==o,v=(e,n,t)=>e.slice(n,t),y=e=>e.length,f=e=>{return n=function*(){return i.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},p=(e,n="")=>e.join(n),h=(e,n)=>e.map(n),E=e=>0==y(e),m=(e,n)=>e.filter(n),T=(e,...n)=>e.push(...n),b=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},A=(e,n)=>null==e?void 0:e.delete(n),O=Object,L=e=>O.getPrototypeOf(e),w=O.keys,x=O.freeze,g=(e=[])=>O.fromEntries(e),N=(...e)=>O.assign({},...e),R=(e,n)=>h(O.entries(e),(([e,t])=>n(t,e))),S=e=>O.values(e),C=e=>y(w(e)),D=e=>(e=>!d(e)&&s(L(e),(e=>e==O.prototype||d(L(e))),(()=>!0)))(e)&&0==C(e),I=e=>new Map(e),F=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},M=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return h([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},j=(e,n,t)=>d(t)?(A(e,n),e):null==e?void 0:e.set(n,t),_=(e,n,t)=>(b(e,n)||j(e,n,t()),M(e,n)),B=(e,n,t,l=j)=>(R(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!d(((e,n)=>s(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),H=e=>new Set(Array.isArray(e)||d(e)?e:[e]),W=(e,n)=>null==e?void 0:e.add(n),q="_",k="_id",J=e=>`"${e.replace(/"/g,'""')}"`;var U=Object.defineProperty,Y=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,K=(e,n,t)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,V=(e,n)=>{for(var t in n||(n={}))z.call(n,t)&&K(e,t,n[t]);if(Y)for(var t of Y(n))G.call(n,t)&&K(e,t,n[t]);return e},Q=(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 X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=I();return[()=>Q(void 0,null,(function*(){return B(o,g(yield f(h(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,g(h(yield e("SELECT name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>j(o,n,B(_(o,n,I),t,((e,n,t)=>{t!=M(e,n)&&j(e,n,t)}),((e,n)=>j(e,n))))),((e,n)=>j(o,n)))})),(n,t)=>Q(void 0,null,(function*(){return((e,n)=>!d(M(M(o,e),n)))(n,t)?g(m(h(yield e("SELECT*FROM"+J(n)),(e=>{return[e[t],(n=V({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!d(e)&&!D(n)))):{}})),(n,t,r,i,u,a=!1)=>Q(void 0,null,(function*(){const s=H();R(null!=r?r:{},(e=>h(w(null!=e?e:{}),(e=>W(s,e)))));const c=P(s);if(!a&&u&&E(c)&&b(o,n))return yield e("DROP TABLE"+J(n)),void j(o,n);if(E(c)||b(o,n)){const l=M(o,n),r=H(F(l));yield f([...h(c,(t=>Q(void 0,null,(function*(){A(r,t)||(yield e(`ALTER TABLE${J(n)}ADD${J(t)}`),j(l,t,""))})))),...!a&&i?h(P(r),(o=>Q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${J(n)}DROP${J(o)}`),j(l,o))})))):[]])}else yield e(`CREATE TABLE${J(n)}(${J(t)} PRIMARY KEY ON CONFLICT REPLACE${p(h(c,(e=>l+J(e))))});`),j(o,n,I([[t,""],...h(c,(e=>[e,""]))]));if(a)d(r)?yield e("DELETE FROM"+J(n)+"WHERE 1"):yield f(R(r,((l,o)=>Q(void 0,null,(function*(){d(l)?yield e("DELETE FROM"+J(n)+Z+J(t)+"=?",[o]):E(c)||(yield ne(e,n,t,w(l),[o,...S(l)]))})))));else if(E(c))b(o,n)&&(yield e("DELETE FROM"+J(n)+"WHERE 1"));else{const l=m(F(M(o,n)),(e=>e!=t)),i=[],u=[];R(null!=r?r:{},((e,n)=>{T(i,n,...h(l,(n=>null==e?void 0:e[n]))),T(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+J(n)+Z+J(t)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,o,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+J(n)+"("+J(t)+p(h(o,(e=>l+J(e))))+")VALUES"+v(r(`,(?${r(",?",y(o))})`,y(i)/(y(o)+1)),1)+"ON CONFLICT("+J(t)+")DO UPDATE SET"+p(h(o,(e=>J(e)+"=excluded."+J(e))),l),i)})),te=e=>p(h(e,(()=>"?")),l),le=JSON.parse;var oe=(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 re=I(),ie=I(),ue=(e,n,t,l,o,r,[i,u]=[],a=[])=>{let c,v,y,f=0,p=0;_(re,a,(()=>0)),_(ie,a,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(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)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();D(t)&&D(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(s(c,e.delListener),c=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return T(M(ie,a),...e),yield oe(void 0,null,(function*(){if(!M(re,a)){for(j(re,a,1);!d((e=M(ie,a),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}j(re,a,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>u),x(E)};var ae=(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",se=(e,n,t,l,o,[r],i,u)=>{const[a,d,s,c]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield c((()=>ae(void 0,null,(function*(){var e,n;return yield a(),le(null!=(n=null==(e=(yield d(r,k))[q])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield c((()=>ae(void 0,null,(function*(){var n,t;yield a(),yield s(r,k,{[q]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?O.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 ve=(e,n,t,l,o,[r,i,[u,a,s]],c,v)=>{const[y,p,h,E]=ee(n,c,o),T=(e,n)=>ce(void 0,null,(function*(){return yield f($(i,((t,l)=>ce(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield h(t,l,u,o,r,n))})))))})),b=(e,n)=>ce(void 0,null,(function*(){return a?yield h(s,k,{[q]:e},!0,!0,n):null}));return ue(e,(()=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){yield y();const e=yield ce(void 0,null,(function*(){return g(m(yield f($(r,((e,n)=>ce(void 0,[e,n],(function*([e,n],t){return[e,yield p(t,n)]}))))),(e=>!D(e[1]))))})),n=yield ce(void 0,null,(function*(){return u?(yield p(s,k))[q]:{}}));return D(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>ce(void 0,null,(function*(){return yield E((()=>ce(void 0,null,(function*(){if(yield y(),d(n)){const[n,t]=e();yield T(n),yield b(t)}else{const[e,t]=n();yield T(e,!0),yield b(t,!0)}}))))}))),t,l,o,["getDb",v],v)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[Ee]:t+"_values"},be=(e,n,t,l)=>{const o=I();return R(e,((e,r)=>{const i=v(S(N(n,c(e)?{[t]:e}:e)),0,C(n));d(i[0])||l(r,i[0])||j(o,r,i)})),o};var Pe=(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 Ae="pragma ",Oe="data_version",Le="schema_version",we=(e,n,l,o,r,i,d,s)=>{let y,f;const[p,h,E,m]=(e=>{const n=(e=>N(me,c(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[fe];if(n.mode==ye){const{storeTableName:e=t}=n;return[1,l,[e],H(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v(S(N(Te,i)),0,C(Te)),a=u[2],d=H(a);return[0,l,[be(o,{[he]:null,[pe]:k},he,(e=>W(d,e)&&e==a)),be(r,{[Ee]:null,[pe]:k,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>W(d,n)&&n==a)),u],d]})(n);return(p?se:ve)(e,i?(e,n)=>Pe(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>[u((()=>Pe(void 0,null,(function*(){try{const n=(yield l(Ae+Oe))[0][Oe],t=(yield l(Ae+Le))[0][Le];n==(null!=y?y:y=n)&&t==(null!=f?f:f=t)||(e(),y=n,f=t)}catch(e){}}))),1e3*h),o((n=>m.has(n)?e():0))]),(([e,n])=>{a(e),y=f=null,r(n)}),d,E,P(m),s)};e.createExpoSqlitePersister=(e,n,t,l,o)=>we(e,t,((e,...t)=>{return l=[e,...t],o=function*(e,t=[]){return(yield n.execAsync([{sql:e,args:t}],!1))[0].rows},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.onDatabaseChange((({tableName:n})=>e(n)))),(e=>e.remove()),l,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterExpoSqlite={});