tinybase 4.6.2 → 5.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (280) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  11. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  12. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  13. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  14. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  15. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  16. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  17. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  18. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  19. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  20. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  21. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  22. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  23. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  24. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  25. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  26. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  27. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  28. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  29. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  30. package/lib/cjs/queries.cjs +1 -1
  31. package/lib/cjs/queries.cjs.gz +0 -0
  32. package/lib/cjs/relationships.cjs +1 -1
  33. package/lib/cjs/relationships.cjs.gz +0 -0
  34. package/lib/cjs/store.cjs +1 -1
  35. package/lib/cjs/store.cjs.gz +0 -0
  36. package/lib/cjs/tinybase.cjs +1 -1
  37. package/lib/cjs/tinybase.cjs.gz +0 -0
  38. package/lib/cjs/tools.cjs +1 -1
  39. package/lib/cjs/tools.cjs.gz +0 -0
  40. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  41. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  42. package/lib/cjs/ui-react-dom.cjs +1 -1
  43. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  44. package/lib/cjs/ui-react.cjs +1 -1
  45. package/lib/cjs/ui-react.cjs.gz +0 -0
  46. package/lib/cjs-es6/checkpoints.cjs +1 -1
  47. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  48. package/lib/cjs-es6/indexes.cjs +1 -1
  49. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  50. package/lib/cjs-es6/metrics.cjs +1 -1
  51. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  52. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  53. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  54. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  55. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  56. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  57. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  58. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  61. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  62. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  63. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  64. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  65. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  66. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  67. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  68. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  69. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  70. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  71. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  72. package/lib/cjs-es6/queries.cjs +1 -1
  73. package/lib/cjs-es6/queries.cjs.gz +0 -0
  74. package/lib/cjs-es6/relationships.cjs +1 -1
  75. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  76. package/lib/cjs-es6/store.cjs +1 -1
  77. package/lib/cjs-es6/store.cjs.gz +0 -0
  78. package/lib/cjs-es6/tinybase.cjs +1 -1
  79. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  80. package/lib/cjs-es6/tools.cjs +1 -1
  81. package/lib/cjs-es6/tools.cjs.gz +0 -0
  82. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  83. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  84. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  85. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  86. package/lib/cjs-es6/ui-react.cjs +1 -1
  87. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  88. package/lib/debug/checkpoints.js +251 -234
  89. package/lib/debug/indexes.js +7 -5
  90. package/lib/debug/metrics.js +7 -5
  91. package/lib/debug/persisters/persister-automerge.js +3 -1
  92. package/lib/debug/persisters/persister-browser.js +1 -0
  93. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +3 -1
  94. package/lib/debug/persisters/persister-electric-sql.js +3 -1
  95. package/lib/debug/persisters/persister-expo-sqlite-next.js +3 -1
  96. package/lib/debug/persisters/persister-expo-sqlite.js +3 -1
  97. package/lib/debug/persisters/persister-file.js +1 -0
  98. package/lib/debug/persisters/persister-indexed-db.js +3 -1
  99. package/lib/debug/persisters/persister-partykit-client.js +1 -0
  100. package/lib/debug/persisters/persister-partykit-server.js +2 -1
  101. package/lib/debug/persisters/persister-remote.js +1 -0
  102. package/lib/debug/persisters/persister-sqlite-wasm.js +3 -1
  103. package/lib/debug/persisters/persister-sqlite3.js +3 -1
  104. package/lib/debug/persisters/persister-yjs.js +3 -1
  105. package/lib/debug/persisters.js +1 -0
  106. package/lib/debug/queries.js +9 -6
  107. package/lib/debug/relationships.js +7 -5
  108. package/lib/debug/store.js +3 -1
  109. package/lib/debug/tinybase.js +254 -235
  110. package/lib/debug/tools.js +10 -6
  111. package/lib/debug/ui-react-dom.js +3 -1
  112. package/lib/debug/ui-react.js +166 -200
  113. package/lib/es6/checkpoints.js +1 -1
  114. package/lib/es6/checkpoints.js.gz +0 -0
  115. package/lib/es6/indexes.js +1 -1
  116. package/lib/es6/indexes.js.gz +0 -0
  117. package/lib/es6/metrics.js +1 -1
  118. package/lib/es6/metrics.js.gz +0 -0
  119. package/lib/es6/persisters/persister-automerge.js +1 -1
  120. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  121. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  122. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  123. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  124. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  125. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  126. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  127. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  128. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  129. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  130. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  131. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  132. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  133. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  134. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  135. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  136. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  137. package/lib/es6/persisters/persister-yjs.js +1 -1
  138. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  139. package/lib/es6/queries.js +1 -1
  140. package/lib/es6/queries.js.gz +0 -0
  141. package/lib/es6/relationships.js +1 -1
  142. package/lib/es6/relationships.js.gz +0 -0
  143. package/lib/es6/store.js +1 -1
  144. package/lib/es6/store.js.gz +0 -0
  145. package/lib/es6/tinybase.js +1 -1
  146. package/lib/es6/tinybase.js.gz +0 -0
  147. package/lib/es6/tools.js +1 -1
  148. package/lib/es6/tools.js.gz +0 -0
  149. package/lib/es6/ui-react-dom-debug.js +1 -1
  150. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  151. package/lib/es6/ui-react-dom.js +1 -1
  152. package/lib/es6/ui-react-dom.js.gz +0 -0
  153. package/lib/es6/ui-react.js +1 -1
  154. package/lib/es6/ui-react.js.gz +0 -0
  155. package/lib/indexes.js +1 -1
  156. package/lib/indexes.js.gz +0 -0
  157. package/lib/metrics.js +1 -1
  158. package/lib/metrics.js.gz +0 -0
  159. package/lib/persisters/persister-automerge.js +1 -1
  160. package/lib/persisters/persister-automerge.js.gz +0 -0
  161. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  162. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  163. package/lib/persisters/persister-electric-sql.js +1 -1
  164. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  165. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  166. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  167. package/lib/persisters/persister-expo-sqlite.js +1 -1
  168. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  169. package/lib/persisters/persister-indexed-db.js +1 -1
  170. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  171. package/lib/persisters/persister-partykit-server.js +1 -1
  172. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  173. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  174. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  175. package/lib/persisters/persister-sqlite3.js +1 -1
  176. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  177. package/lib/persisters/persister-yjs.js +1 -1
  178. package/lib/persisters/persister-yjs.js.gz +0 -0
  179. package/lib/queries.js +1 -1
  180. package/lib/queries.js.gz +0 -0
  181. package/lib/relationships.js +1 -1
  182. package/lib/relationships.js.gz +0 -0
  183. package/lib/store.js +1 -1
  184. package/lib/store.js.gz +0 -0
  185. package/lib/tinybase.js +1 -1
  186. package/lib/tinybase.js.gz +0 -0
  187. package/lib/tools.js +1 -1
  188. package/lib/tools.js.gz +0 -0
  189. package/lib/types/ui-react.d.ts +77 -88
  190. package/lib/types/with-schemas/ui-react.d.ts +84 -95
  191. package/lib/ui-react-dom.js +1 -1
  192. package/lib/ui-react-dom.js.gz +0 -0
  193. package/lib/ui-react.js +1 -1
  194. package/lib/ui-react.js.gz +0 -0
  195. package/lib/umd/checkpoints.js +1 -1
  196. package/lib/umd/checkpoints.js.gz +0 -0
  197. package/lib/umd/indexes.js +1 -1
  198. package/lib/umd/indexes.js.gz +0 -0
  199. package/lib/umd/metrics.js +1 -1
  200. package/lib/umd/metrics.js.gz +0 -0
  201. package/lib/umd/persisters/persister-automerge.js +1 -1
  202. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  203. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  204. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  205. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  206. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  207. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  208. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  209. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  210. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  211. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  212. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  213. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  214. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  215. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  216. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  217. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  218. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  219. package/lib/umd/persisters/persister-yjs.js +1 -1
  220. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  221. package/lib/umd/queries.js +1 -1
  222. package/lib/umd/queries.js.gz +0 -0
  223. package/lib/umd/relationships.js +1 -1
  224. package/lib/umd/relationships.js.gz +0 -0
  225. package/lib/umd/store.js +1 -1
  226. package/lib/umd/store.js.gz +0 -0
  227. package/lib/umd/tinybase.js +1 -1
  228. package/lib/umd/tinybase.js.gz +0 -0
  229. package/lib/umd/tools.js +1 -1
  230. package/lib/umd/tools.js.gz +0 -0
  231. package/lib/umd/ui-react-dom-debug.js +1 -1
  232. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  233. package/lib/umd/ui-react-dom.js +1 -1
  234. package/lib/umd/ui-react-dom.js.gz +0 -0
  235. package/lib/umd/ui-react.js +1 -1
  236. package/lib/umd/ui-react.js.gz +0 -0
  237. package/lib/umd-es6/checkpoints.js +1 -1
  238. package/lib/umd-es6/checkpoints.js.gz +0 -0
  239. package/lib/umd-es6/indexes.js +1 -1
  240. package/lib/umd-es6/indexes.js.gz +0 -0
  241. package/lib/umd-es6/metrics.js +1 -1
  242. package/lib/umd-es6/metrics.js.gz +0 -0
  243. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  244. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  245. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  246. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  247. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  248. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  249. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  250. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  251. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  252. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  253. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  254. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  255. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  256. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  257. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  258. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  259. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  260. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  261. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  262. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  263. package/lib/umd-es6/queries.js +1 -1
  264. package/lib/umd-es6/queries.js.gz +0 -0
  265. package/lib/umd-es6/relationships.js +1 -1
  266. package/lib/umd-es6/relationships.js.gz +0 -0
  267. package/lib/umd-es6/store.js +1 -1
  268. package/lib/umd-es6/store.js.gz +0 -0
  269. package/lib/umd-es6/tinybase.js +1 -1
  270. package/lib/umd-es6/tinybase.js.gz +0 -0
  271. package/lib/umd-es6/tools.js +1 -1
  272. package/lib/umd-es6/tools.js.gz +0 -0
  273. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  274. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  275. package/lib/umd-es6/ui-react-dom.js +1 -1
  276. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  277. package/lib/umd-es6/ui-react.js +1 -1
  278. package/lib/umd-es6/ui-react.js.gz +0 -0
  279. package/package.json +4 -4
  280. package/readme.md +13 -13
package/lib/cjs/store.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",f=g+"Count",T=g+i,V="Cell",b=V+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==l,p=t=>e(t)==a,J=(e,t,s)=>e.slice(t,s),L=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.keys,A=z.isFrozen,M=z.freeze,N=e=>!m(e)&&y(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),j=(e,t)=>!m(((e,t)=>y(e,(e=>e[t])))(e,t)),x=(e,t)=>(delete e[t],e),D=(e,t)=>F(z.entries(e),(([e,s])=>t(s,e))),H=e=>N(e)&&0==(e=>L(k(e)))(e),W=e=>e?.size??0,$=(e,t)=>e?.has(t)??!1,q=e=>m(e)||0==W(e),B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=e=>new Map(e),U=e=>[...e?.keys()??[]],X=(e,t)=>e?.get(t),Y=(e,t)=>G(e,((e,s)=>t(s,e))),Z=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),_=(e,t,s)=>($(e,t)||Z(e,t,s()),X(e,t)),ee=(e,t,s,l=Z)=>(D(t,((t,l)=>s(e,l,t))),Y(e,(s=>j(t,s)?0:l(e,s))),e),te=(e,t,s)=>{const l={};return G(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},se=(e,t,s)=>te(e,(e=>te(e,t,s)),H),le=(e,t,s)=>te(e,(e=>se(e,t,s)),H),ne=(e,t)=>{const s=Q();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ae=e=>ne(e,ne),oe=e=>ne(e,ae),re=(e,t,s,l,n=0)=>y((s?_:X)(e,t[n],n>L(t)-2?s:Q),(a=>{if(n>L(t)-2)return l?.(a)&&Z(e,t[n]),a;const o=re(a,t,s,l,n+1);return q(a)&&Z(e,t[n]),o})),ce=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ie=(e,t)=>e?.add(t),de=/^\d+$/,ue=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{de.test(t)&&L(e)<1e3&&O(e,t)}]},he=e=>[e,e],ge=()=>[Q(),Q()],fe=e=>[...e],Te=([e,t])=>e===t,Ve=t=>{const s=e(t);return R(s)||s==n&&I(t)?s:void 0},be=(e,t,s,l,n)=>m(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Ce=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),Se=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ve=JSON.parse,we=(e,t,s)=>m(e)||!N(e)||H(e)||A(e)?(s?.(),!1):(D(e,((s,l)=>{t(s,l)||x(e,l)})),!H(e)),Ie=(e,t,s)=>Z(e,t,X(e,t)==-s?void 0:s),me=()=>{let e,s,l=!1,a=!1,i=!1,I=!1,z=0;const P=Q(),k=Q(),A=Q(),N=Q(),de=Q(),ye=Q(),Re=Q(),pe=Q(),Je=Q(),Le=Q(),Ee=Q(),Fe=Q(),Oe=Q(),ze=Q(),Pe=ce(),ke=Q(),Ae=Q(),Me=Q(),Ne=Q(),je=ge(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),lt=ge(),nt=ge(),at=ge(),ot=Q(),rt=ge(),[ct,it,dt,ut]=(e=>{let s;const[l,n]=ue(),a=Q();return[(e,n,o,r=[],c=(()=>[]))=>{s??=Ps;const i=l(1);return Z(a,i,[e,n,o,r,c]),ie(re(n,o??[t],ce),i),i},(e,l,...n)=>E(((e,s=[t])=>{const l=[],n=(e,t)=>t==L(s)?O(l,e):null===s[t]?G(e,(e=>n(e,t+1))):E([s[t],null],(s=>n(X(e,s),t+1)));return n(e,0),l})(e,l),(e=>G(e,(e=>X(a,e)[0](s,...l??[],...n))))),e=>y(X(a,e),(([,s,l])=>(re(s,l??[t],void 0,(t=>(K(t,e),q(t)?1:0))),Z(a,e),n(e),l))),e=>y(X(a,e),(([e,,t=[],l,n])=>{const a=(...o)=>{const r=L(o);r==L(t)?e(s,...o,...n(o)):m(t[r])?E(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,t[r])};a()}))]})(),ht=e=>{if(!we(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=n||(Ve(e[r])!=t&&x(e,r),0))},gt=(t,s)=>(!e||$(Ee,s)||$t(s))&&we(t,((e,t)=>ft(s,t,e)),(()=>$t(s))),ft=(e,t,s,l)=>we(l?s:Ct(s,e,t),((l,n)=>y(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,s,l,n)=>e?y(X(X(Ee,t),l),(e=>Ve(n)!=e[o]?$t(t,s,l,n,e[r]):n),(()=>$t(t,s,l,n))):m(Ve(n))?$t(t,s,l,n):n,Vt=(e,t)=>we(t?e:St(e),((t,s)=>y(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?y(X(Oe,e),(s=>Ve(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):m(Ve(t))?qt(e,t):t,Ct=(e,t,s)=>(y(X(Fe,t),(([l,n])=>{G(l,((t,s)=>{j(e,s)||(e[s]=t)})),G(n,(l=>{j(e,l)||$t(t,s,l)}))})),e),St=e=>(s&&(G(ze,((t,s)=>{j(e,s)||(e[s]=t)})),G(Pe,(t=>{j(e,t)||qt(t)}))),e),vt=e=>ee(Ee,e,((e,t,s)=>{const l=Q(),n=ce();ee(_(Ee,t,Q),s,((e,t,s)=>{Z(e,t,s),y(s[r],(e=>Z(l,t,e)),(()=>ie(n,t)))})),Z(Fe,t,[l,n])}),((e,t)=>{Z(Ee,t),Z(Fe,t)})),wt=e=>ee(Oe,e,((e,t,s)=>{Z(Oe,t,s),y(s[r],(e=>Z(ze,t,e)),(()=>ie(Pe,t)))}),((e,t)=>{Z(Oe,t),Z(ze,t),K(Pe,t)})),It=e=>H(e)?ys():Ss(e),mt=e=>ee(Me,e,((e,t,s)=>yt(t,s)),((e,t)=>Pt(t))),yt=(e,t)=>ee(_(Me,e,(()=>(Nt(e,1),Z(ke,e,ue()),Z(Ae,e,Q()),Q()))),t,((t,s,l)=>Rt(e,t,s,l)),((t,s)=>kt(e,t,s))),Rt=(e,t,s,l,n)=>ee(_(t,s,(()=>(jt(e,s,1),Q()))),l,((t,l,n)=>pt(e,s,t,l,n)),((l,a)=>At(e,t,s,l,a,n))),pt=(e,t,s,l,n)=>{$(s,l)||xt(e,t,l,1);const a=X(s,l);n!==a&&(Dt(e,t,l,a,n),Z(s,l,n))},Jt=(e,t,s,l,n)=>y(X(t,s),(t=>pt(e,s,t,l,n)),(()=>Rt(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>H(e)?Js():vs(e),Et=e=>ee(Ne,e,((e,t,s)=>Ft(t,s)),((e,t)=>Mt(t))),Ft=(e,t)=>{$(Ne,e)||Ht(e,1);const s=X(Ne,e);t!==s&&(Wt(e,s,t),Z(Ne,e,t))},Ot=(e,t)=>{const[s]=X(ke,e),l=s(t);return $(X(Me,e),l)?Ot(e,t):l},zt=e=>X(Me,e)??yt(e,{}),Pt=e=>yt(e,{}),kt=(e,t,s)=>{const[,l]=X(ke,e);l(s),Rt(e,t,s,{},!0)},At=(e,t,s,l,n,a)=>{const o=X(X(Fe,e)?.[0],n);if(!m(o)&&!a)return pt(e,s,l,n,o);const r=t=>{Dt(e,s,t,X(l,t)),xt(e,s,t,-1),Z(l,t)};m(o)?r(n):Y(l,r),q(l)&&(jt(e,s,-1),q(Z(t,s))&&(Nt(e,-1),Z(Me,e),Z(ke,e),Z(Ae,e)))},Mt=e=>{const t=X(ze,e);if(!m(t))return Ft(e,t);Wt(e,X(Ne,e)),Ht(e,-1),Z(Ne,e)},Nt=(e,t)=>Ie(P,e,t),jt=(e,t,s)=>Ie(_(N,e,Q),t,s)&&Z(A,e,_(A,e,(()=>0))+s),xt=(e,t,s,l)=>{const n=X(Ae,e),a=X(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&Ie(_(k,e,Q),s,l),Z(n,s,a!=-l?a+l:null),Ie(_(_(de,e,Q),t,Q),s,l)},Dt=(e,t,s,l,n)=>_(_(_(ye,e,Q),t,Q),s,(()=>[l,0]))[1]=n,Ht=(e,t)=>Ie(Re,e,t),Wt=(e,t,s)=>_(pe,e,(()=>[t,0]))[1]=s,$t=(e,t,s,l,n)=>(O(_(_(_(Je,e,Q),t,Q),s,(()=>[])),l),n),qt=(e,t,s)=>(O(_(Le,e,(()=>[])),t),s),Bt=(e,t,s)=>y(X(X(X(ye,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...he(cs(e,t,s))])),Gt=e=>y(X(pe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...he(us(e))])),Kt=e=>q(Je)||q(_e[e])?0:G(e?oe(Je):Je,((t,s)=>G(t,((t,l)=>G(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>q(Le)||q(et[e])?0:G(e?ne(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!q(e))return it(t,l,(()=>te(e))),Y(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=i&&it(je[e],void 0,t);const s=q(Ke[e]),l=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q($e[e])&&q(qe[e])&&q(Be[e])&&s&&q(De[e])&&q(He[e]),n=q(Ze[e])&&q(Ue[e])&&q(We[e])&&q(xe[e]);if(!l||!n){const t=e?[ne(P),ae(k),ne(A),ae(N),oe(de),oe(ye)]:[P,k,A,N,de,ye];if(!l){Ut(t[0],De[e],He[e]),G(t[1],((t,s)=>Ut(t,$e[e],qe[e],[s]))),G(t[2],((t,s)=>{0!=t&&it(Be[e],[s],ns(s))}));const l=ce();G(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),ie(l,n))})),s||G(t[5],((t,s)=>{if(!$(l,s)){const l=ce();G(t,(e=>G(e,(([t,s],n)=>s!==t?ie(l,n):K(e,n))))),G(l,(t=>it(Ke[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let n;G(t,((t,a)=>{let o;G(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,Bt),s=n=o=1)})),o&&it(Ue[e],[l,a],Bt)})),n&&it(We[e],[l],Bt)})),s&&it(xe[e],void 0,Bt)}}},Yt=e=>{const t=bs();t!=I&&it(tt[e],void 0,t);const s=q(lt[e])&&q(nt[e]),l=q(at[e])&&q(st[e]);if(!s||!l){const t=e?[ne(Re),ne(pe)]:[Re,pe];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;G(t[1],(([t,l],n)=>{l!==t&&(it(at[e],[n],l,t,Gt),s=1)})),s&&it(st[e],void 0,Gt)}}},Zt=(e,...t)=>(Fs((()=>e(...F(t,w)))),Ps),_t=()=>[te(ye,((e,t)=>-1===X(P,t)?null:te(e,((e,s)=>-1===X(X(N,t),s)?null:te(e,(([,e])=>e??null),((e,t)=>Te(t)))),H)),H),te(pe,(([,e])=>e??null),((e,t)=>Te(t)))],es=()=>({cellsTouched:l,valuesTouched:a,changedCells:le(ye,fe,Te),invalidCells:le(Je),changedValues:te(pe,fe,Te),invalidValues:te(Le),changedTableIds:te(P),changedRowIds:se(N),changedCellIds:le(de),changedValueIds:te(Re)}),ts=()=>le(Me),ss=()=>U(Me),ls=e=>U(X(Ae,w(e))),ns=e=>W(X(Me,w(e))),as=e=>U(X(Me,w(e))),os=(e,t,s,l=0,n)=>{return F(J((o=X(Me,w(e)),r=(e,s)=>[m(t)?s:X(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,m(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>U(X(X(Me,w(e)),w(t))),cs=(e,t,s)=>X(X(X(Me,w(e)),w(t)),w(s)),is=()=>te(Ne),ds=()=>U(Ne),us=e=>X(Ne,w(e)),hs=()=>!q(Me),gs=e=>$(Me,w(e)),fs=(e,t)=>$(X(Ae,w(e)),w(t)),Ts=(e,t)=>$(X(Me,w(e)),w(t)),Vs=(e,t,s)=>$(X(X(Me,w(e)),w(t)),w(s)),bs=()=>!q(Ne),Cs=e=>$(Ne,w(e)),Ss=e=>Zt((()=>(e=>we(e,gt,$t))(e)?mt(e):0)),vs=e=>Zt((()=>Vt(e)?Et(e):0)),ws=e=>{try{It(ve(e))}catch{}return Ps},Is=t=>Zt((()=>{if((e=we(t,(e=>we(e,ht))))&&(vt(t),!q(Me))){const e=ts();ys(),Ss(e)}})),ms=e=>Zt((()=>{if(s=(e=>we(e,ht))(e)){const t=is();Es(),Js(),s=!0,wt(e),vs(t)}})),ys=()=>Zt((()=>mt({}))),Rs=e=>Zt((e=>$(Me,e)?Pt(e):0),e),ps=(e,t)=>Zt(((e,t)=>y(X(Me,e),(s=>$(s,t)?kt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{vt({}),e=!1})),Es=()=>Zt((()=>{wt({}),s=!1})),Fs=(e,t)=>{if(-1!=z){Os();const s=e();return zs(t),s}},Os=()=>(-1!=z&&z++,1==z&&it(ot,void 0,_t,es),Ps),zs=e=>(z>0&&(z--,0==z&&(l=!q(ye),a=!q(pe),z=1,Kt(1),l&&Xt(1),Qt(1),a&&Yt(1),e?.(_t,es)&&(G(ye,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>be(Ps,t,s,l,e))))))),G(pe,(([e],t)=>Ce(Ps,t,e))),l=a=!1),it(rt[0],void 0,_t,es),z=-1,Kt(0),l&&Xt(0),Qt(0),a&&Yt(0),it(rt[1],void 0,_t,es),z=0,l=a=!1,i=hs(),I=bs(),E([P,k,A,N,de,ye,Je,Re,pe,Le],B))),Ps),Ps={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>se(X(Me,w(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>te(X(X(Me,w(e)),w(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:gs,hasTableCell:fs,hasRow:Ts,hasCell:Vs,hasValues:bs,hasValue:Cs,getTablesJson:()=>Se(Me),getValuesJson:()=>Se(Ne),getJson:()=>Se([Me,Ne]),getTablesSchemaJson:()=>Se(Ee),getValuesSchemaJson:()=>Se(Oe),getSchemaJson:()=>Se([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(H(e)?ys:Ss)(e),(H(t)?Js:vs)(t)})),setTables:Ss,setTable:(e,t)=>Zt((e=>gt(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?Rt(e,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return ft(e,l,t)&&(e=w(e),Rt(e,zt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const l=zt(e);D(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Tt(e,t,s,p(l)?l(cs(e,t,s)):l),(l=>Jt(e,zt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Zt((()=>Vt(e,1)?D(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>y(bt(e,p(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{D(e[0],((e,t)=>m(e)?Rs(t):D(e,((e,s)=>m(e)?ps(t,s):D(e,((e,l)=>be(Ps,t,s,l,e))))))),D(e[1],((e,t)=>Ce(Ps,t,e)))})),setTablesJson:ws,setValuesJson:e=>{try{Lt(ve(e))}catch{}return Ps},setJson:e=>Zt((()=>{try{const[t,s]=ve(e);It(t),Lt(s)}catch{ws(e)}})),setTablesSchema:Is,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{Is(e),ms(t)})),delTables:ys,delTable:Rs,delRow:ps,delCell:(e,t,s,l)=>Zt(((e,t,s)=>y(X(Me,e),(n=>y(X(n,t),(a=>$(a,s)?At(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>$(Ne,e)?Mt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:zs,forEachTable:e=>G(Me,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>Y(t,e))))))))),forEachTableCell:(e,t)=>Y(X(Ae,w(e)),t),forEachRow:(e,t)=>G(X(Me,w(e)),((e,s)=>t(s,(t=>Y(e,t))))),forEachCell:(e,t,s)=>Y(X(X(Me,w(e)),w(t)),s),forEachValue:e=>Y(Ne,e),addSortedRowIdsListener:(e,t,s,l,n,a,o)=>{let r=os(e,t,s,l,n);return ct((()=>{const o=os(e,t,s,l,n);var c,i,d;i=r,L(c=o)===L(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(Ps,e,t,s,l,n,r))}),Ke[o?1:0],[e,t],[ss])},addStartTransactionListener:e=>ct(e,ot),addWillFinishTransactionListener:e=>ct(e,rt[0]),addDidFinishTransactionListener:e=>ct(e,rt[1]),callListener:e=>(ut(e),Ps),delListener:e=>(dt(e),Ps),getListenerStats:()=>({}),createStore:me,addListener:ct,callListeners:it};return D({[c+u]:[0,je,[],()=>[hs()]],[u]:[0,xe],[h]:[0,De],[c+d]:[1,He,[ss],e=>[gs(...e)]],[d]:[1,We,[ss]],[d+b]:[1,$e,[ss]],[c+d+V]:[2,qe,[ss,ls],e=>[fs(...e)]],[f]:[1,Be,[ss]],[T]:[1,Ge,[ss]],[c+g]:[2,Qe,[ss,as],e=>[Ts(...e)]],[g]:[2,Ue,[ss,as]],[b]:[2,Xe,[ss,as]],[c+V]:[3,Ye,[ss,as,rs],e=>[Vs(...e)]],[V]:[3,Ze,[ss,as,rs],e=>he(cs(...e))],InvalidCell:[3,_e],[c+S]:[0,tt,[],()=>[bs()]],[S]:[0,st],[v]:[0,lt],[c+C]:[1,nt,[ds],e=>[Cs(...e)]],[C]:[1,at,[ds],e=>he(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{Ps["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?J(n,0,e):void 0,s,l)})),M(Ps)};exports.createStore=me;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",f=g+"Count",T=g+i,V="Cell",b=V+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==l,p=t=>e(t)==a,J=(e,t,s)=>e.slice(t,s),L=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.keys,M=z.isFrozen,N=z.freeze,j=e=>!m(e)&&y(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),x=(e,t)=>!m(((e,t)=>y(e,(e=>e[t])))(e,t)),D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>j(e)&&0==(e=>L(A(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,B=e=>m(e)||0==$(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>m(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>(q(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,l=_)=>(H(t,((t,l)=>s(e,l,t))),Z(e,(s=>x(t,s)?0:l(e,s))),e),se=(e,t,s)=>{const l={};return K(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},le=(e,t,s)=>se(e,(e=>se(e,t,s)),W),ne=(e,t,s)=>se(e,(e=>le(e,t,s)),W),ae=(e,t)=>{const s=U();return K(e,((e,l)=>s.set(l,t?.(e)??e))),s},oe=e=>ae(e,ae),re=e=>ae(e,oe),ce=(e,t,s,l,n=0)=>y((s?ee:Y)(e,t[n],n>L(t)-2?s:U),(a=>{if(n>L(t)-2)return l?.(a)&&_(e,t[n]),a;const o=ce(a,t,s,l,n+1);return B(a)&&_(e,t[n]),o})),ie=e=>new Set(Array.isArray(e)||m(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{ue.test(t)&&L(e)<1e3&&O(e,t)}]},ge=e=>[e,e],fe=()=>[U(),U()],Te=e=>[...e],Ve=([e,t])=>e===t,be=t=>{const s=e(t);return R(s)||s==n&&I(t)?s:void 0},Ce=(e,t,s,l,n)=>m(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Se=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),we=JSON.parse,Ie=(e,t,s)=>m(e)||!j(e)||W(e)||M(e)?(s?.(),!1):(H(e,((s,l)=>{t(s,l)||D(e,l)})),!W(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),ye=()=>{let e,s,l=!1,a=!1,i=!1,I=!1,z=0;const P=U(),k=U(),A=U(),M=U(),j=U(),ue=U(),Re=U(),pe=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),ze=U(),Pe=ie(),ke=U(),Ae=U(),Me=U(),Ne=U(),je=fe(),xe=fe(),De=fe(),He=fe(),We=fe(),$e=fe(),qe=fe(),Be=fe(),Ge=fe(),Ke=fe(),Qe=fe(),Ue=fe(),Xe=fe(),Ye=fe(),Ze=fe(),_e=fe(),et=fe(),tt=fe(),st=fe(),lt=fe(),nt=fe(),at=fe(),ot=U(),rt=fe(),[ct,it,dt,ut]=(e=>{let s;const[l,n]=he(),a=U();return[(e,n,o,r=[],c=(()=>[]))=>{s??=Ps;const i=l(1);return _(a,i,[e,n,o,r,c]),de(ce(n,o??[t],ie),i),i},(e,l,...n)=>E(((e,s=[t])=>{const l=[],n=(e,t)=>t==L(s)?O(l,e):null===s[t]?K(e,(e=>n(e,t+1))):E([s[t],null],(s=>n(Y(e,s),t+1)));return n(e,0),l})(e,l),(e=>K(e,(e=>Y(a,e)[0](s,...l??[],...n))))),e=>y(Y(a,e),(([,s,l])=>(ce(s,l??[t],void 0,(t=>(Q(t,e),B(t)?1:0))),_(a,e),n(e),l))),e=>y(Y(a,e),(([e,,t=[],l,n])=>{const a=(...o)=>{const r=L(o);r==L(t)?e(s,...o,...n(o)):m(t[r])?E(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,t[r])};a()}))]})(),ht=e=>{if(!Ie(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=n||(be(e[r])!=t&&D(e,r),0))},gt=(t,s)=>(!e||q(Ee,s)||$t(s))&&Ie(t,((e,t)=>ft(s,t,e)),(()=>$t(s))),ft=(e,t,s,l)=>Ie(l?s:Ct(s,e,t),((l,n)=>y(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,s,l,n)=>e?y(Y(Y(Ee,t),l),(e=>be(n)!=e[o]?$t(t,s,l,n,e[r]):n),(()=>$t(t,s,l,n))):m(be(n))?$t(t,s,l,n):n,Vt=(e,t)=>Ie(t?e:St(e),((t,s)=>y(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?y(Y(Oe,e),(s=>be(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):m(be(t))?qt(e,t):t,Ct=(e,t,s)=>(y(Y(Fe,t),(([l,n])=>{K(l,((t,s)=>{x(e,s)||(e[s]=t)})),K(n,(l=>{x(e,l)||$t(t,s,l)}))})),e),St=e=>(s&&(K(ze,((t,s)=>{x(e,s)||(e[s]=t)})),K(Pe,(t=>{x(e,t)||qt(t)}))),e),vt=e=>te(Ee,e,((e,t,s)=>{const l=U(),n=ie();te(ee(Ee,t,U),s,((e,t,s)=>{_(e,t,s),y(s[r],(e=>_(l,t,e)),(()=>de(n,t)))})),_(Fe,t,[l,n])}),((e,t)=>{_(Ee,t),_(Fe,t)})),wt=e=>te(Oe,e,((e,t,s)=>{_(Oe,t,s),y(s[r],(e=>_(ze,t,e)),(()=>de(Pe,t)))}),((e,t)=>{_(Oe,t),_(ze,t),Q(Pe,t)})),It=e=>W(e)?ys():Ss(e),mt=e=>te(Me,e,((e,t,s)=>yt(t,s)),((e,t)=>Pt(t))),yt=(e,t)=>te(ee(Me,e,(()=>(Nt(e,1),_(ke,e,he()),_(Ae,e,U()),U()))),t,((t,s,l)=>Rt(e,t,s,l)),((t,s)=>kt(e,t,s))),Rt=(e,t,s,l,n)=>te(ee(t,s,(()=>(jt(e,s,1),U()))),l,((t,l,n)=>pt(e,s,t,l,n)),((l,a)=>At(e,t,s,l,a,n))),pt=(e,t,s,l,n)=>{q(s,l)||xt(e,t,l,1);const a=Y(s,l);n!==a&&(Dt(e,t,l,a,n),_(s,l,n))},Jt=(e,t,s,l,n)=>y(Y(t,s),(t=>pt(e,s,t,l,n)),(()=>Rt(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>W(e)?Js():vs(e),Et=e=>te(Ne,e,((e,t,s)=>Ft(t,s)),((e,t)=>Mt(t))),Ft=(e,t)=>{q(Ne,e)||Ht(e,1);const s=Y(Ne,e);t!==s&&(Wt(e,s,t),_(Ne,e,t))},Ot=(e,t)=>{const[s]=Y(ke,e),l=s(t);return q(Y(Me,e),l)?Ot(e,t):l},zt=e=>Y(Me,e)??yt(e,{}),Pt=e=>yt(e,{}),kt=(e,t,s)=>{const[,l]=Y(ke,e);l(s),Rt(e,t,s,{},!0)},At=(e,t,s,l,n,a)=>{const o=Y(Y(Fe,e)?.[0],n);if(!m(o)&&!a)return pt(e,s,l,n,o);const r=t=>{Dt(e,s,t,Y(l,t)),xt(e,s,t,-1),_(l,t)};m(o)?r(n):Z(l,r),B(l)&&(jt(e,s,-1),B(_(t,s))&&(Nt(e,-1),_(Me,e),_(ke,e),_(Ae,e)))},Mt=e=>{const t=Y(ze,e);if(!m(t))return Ft(e,t);Wt(e,Y(Ne,e)),Ht(e,-1),_(Ne,e)},Nt=(e,t)=>me(P,e,t),jt=(e,t,s)=>me(ee(M,e,U),t,s)&&_(A,e,ee(A,e,(()=>0))+s),xt=(e,t,s,l)=>{const n=Y(Ae,e),a=Y(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&me(ee(k,e,U),s,l),_(n,s,a!=-l?a+l:null),me(ee(ee(j,e,U),t,U),s,l)},Dt=(e,t,s,l,n)=>ee(ee(ee(ue,e,U),t,U),s,(()=>[l,0]))[1]=n,Ht=(e,t)=>me(Re,e,t),Wt=(e,t,s)=>ee(pe,e,(()=>[t,0]))[1]=s,$t=(e,t,s,l,n)=>(O(ee(ee(ee(Je,e,U),t,U),s,(()=>[])),l),n),qt=(e,t,s)=>(O(ee(Le,e,(()=>[])),t),s),Bt=(e,t,s)=>y(Y(Y(Y(ue,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e,t,s))])),Gt=e=>y(Y(pe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(us(e))])),Kt=e=>B(Je)||B(_e[e])?0:K(e?re(Je):Je,((t,s)=>K(t,((t,l)=>K(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>B(Le)||B(et[e])?0:K(e?ae(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!B(e))return it(t,l,(()=>se(e))),Z(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=i&&it(je[e],void 0,t);const s=B(Ke[e]),l=B(Xe[e])&&B(Ye[e])&&B(Ge[e])&&B(Qe[e])&&B($e[e])&&B(qe[e])&&B(Be[e])&&s&&B(De[e])&&B(He[e]),n=B(Ze[e])&&B(Ue[e])&&B(We[e])&&B(xe[e]);if(!l||!n){const t=e?[ae(P),oe(k),ae(A),oe(M),re(j),re(ue)]:[P,k,A,M,j,ue];if(!l){Ut(t[0],De[e],He[e]),K(t[1],((t,s)=>Ut(t,$e[e],qe[e],[s]))),K(t[2],((t,s)=>{0!=t&&it(Be[e],[s],ns(s))}));const l=ie();K(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),de(l,n))})),s||K(t[5],((t,s)=>{if(!q(l,s)){const l=ie();K(t,(e=>K(e,(([t,s],n)=>s!==t?de(l,n):Q(e,n))))),K(l,(t=>it(Ke[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;K(t[5],((t,l)=>{let n;K(t,((t,a)=>{let o;K(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,Bt),s=n=o=1)})),o&&it(Ue[e],[l,a],Bt)})),n&&it(We[e],[l],Bt)})),s&&it(xe[e],void 0,Bt)}}},Yt=e=>{const t=bs();t!=I&&it(tt[e],void 0,t);const s=B(lt[e])&&B(nt[e]),l=B(at[e])&&B(st[e]);if(!s||!l){const t=e?[ae(Re),ae(pe)]:[Re,pe];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;K(t[1],(([t,l],n)=>{l!==t&&(it(at[e],[n],l,t,Gt),s=1)})),s&&it(st[e],void 0,Gt)}}},Zt=(e,...t)=>(Fs((()=>e(...F(t,w)))),Ps),_t=()=>[se(ue,((e,t)=>-1===Y(P,t)?null:se(e,((e,s)=>-1===Y(Y(M,t),s)?null:se(e,(([,e])=>e??null),((e,t)=>Ve(t)))),W)),W),se(pe,(([,e])=>e??null),((e,t)=>Ve(t)))],es=()=>({cellsTouched:l,valuesTouched:a,changedCells:ne(ue,Te,Ve),invalidCells:ne(Je),changedValues:se(pe,Te,Ve),invalidValues:se(Le),changedTableIds:se(P),changedRowIds:le(M),changedCellIds:ne(j),changedValueIds:se(Re)}),ts=()=>ne(Me),ss=()=>X(Me),ls=e=>X(Y(Ae,w(e))),ns=e=>$(Y(Me,w(e))),as=e=>X(Y(Me,w(e))),os=(e,t,s,l=0,n)=>{return F(J((o=Y(Me,w(e)),r=(e,s)=>[m(t)?s:Y(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,m(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>X(Y(Y(Me,w(e)),w(t))),cs=(e,t,s)=>Y(Y(Y(Me,w(e)),w(t)),w(s)),is=()=>se(Ne),ds=()=>X(Ne),us=e=>Y(Ne,w(e)),hs=()=>!B(Me),gs=e=>q(Me,w(e)),fs=(e,t)=>q(Y(Ae,w(e)),w(t)),Ts=(e,t)=>q(Y(Me,w(e)),w(t)),Vs=(e,t,s)=>q(Y(Y(Me,w(e)),w(t)),w(s)),bs=()=>!B(Ne),Cs=e=>q(Ne,w(e)),Ss=e=>Zt((()=>(e=>Ie(e,gt,$t))(e)?mt(e):0)),vs=e=>Zt((()=>Vt(e)?Et(e):0)),ws=e=>{try{It(we(e))}catch{}return Ps},Is=t=>Zt((()=>{if((e=Ie(t,(e=>Ie(e,ht))))&&(vt(t),!B(Me))){const e=ts();ys(),Ss(e)}})),ms=e=>Zt((()=>{if(s=(e=>Ie(e,ht))(e)){const t=is();Es(),Js(),s=!0,wt(e),vs(t)}})),ys=()=>Zt((()=>mt({}))),Rs=e=>Zt((e=>q(Me,e)?Pt(e):0),e),ps=(e,t)=>Zt(((e,t)=>y(Y(Me,e),(s=>q(s,t)?kt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{vt({}),e=!1})),Es=()=>Zt((()=>{wt({}),s=!1})),Fs=(e,t)=>{if(-1!=z){Os();const s=e();return zs(t),s}},Os=()=>(-1!=z&&z++,1==z&&it(ot,void 0,_t,es),Ps),zs=e=>(z>0&&(z--,0==z&&(l=!B(ue),a=!B(pe),z=1,Kt(1),l&&Xt(1),Qt(1),a&&Yt(1),e?.(_t,es)&&(K(ue,((e,t)=>K(e,((e,s)=>K(e,(([e],l)=>Ce(Ps,t,s,l,e))))))),K(pe,(([e],t)=>Se(Ps,t,e))),l=a=!1),it(rt[0],void 0,_t,es),z=-1,Kt(0),l&&Xt(0),Qt(0),a&&Yt(0),it(rt[1],void 0,_t,es),z=0,l=a=!1,i=hs(),I=bs(),E([P,k,A,M,j,ue,Je,Re,pe,Le],G))),Ps),Ps={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>le(Y(Me,w(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>se(Y(Y(Me,w(e)),w(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:gs,hasTableCell:fs,hasRow:Ts,hasCell:Vs,hasValues:bs,hasValue:Cs,getTablesJson:()=>ve(Me),getValuesJson:()=>ve(Ne),getJson:()=>ve([Me,Ne]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(W(e)?ys:Ss)(e),(W(t)?Js:vs)(t)})),setTables:Ss,setTable:(e,t)=>Zt((e=>gt(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?Rt(e,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return ft(e,l,t)&&(e=w(e),Rt(e,zt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const l=zt(e);H(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Tt(e,t,s,p(l)?l(cs(e,t,s)):l),(l=>Jt(e,zt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Zt((()=>Vt(e,1)?H(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>y(bt(e,p(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{H(e[0],((e,t)=>m(e)?Rs(t):H(e,((e,s)=>m(e)?ps(t,s):H(e,((e,l)=>Ce(Ps,t,s,l,e))))))),H(e[1],((e,t)=>Se(Ps,t,e)))})),setTablesJson:ws,setValuesJson:e=>{try{Lt(we(e))}catch{}return Ps},setJson:e=>Zt((()=>{try{const[t,s]=we(e);It(t),Lt(s)}catch{ws(e)}})),setTablesSchema:Is,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{Is(e),ms(t)})),delTables:ys,delTable:Rs,delRow:ps,delCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Y(Me,e),(n=>y(Y(n,t),(a=>q(a,s)?At(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>q(Ne,e)?Mt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:zs,forEachTable:e=>K(Me,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(Ae,w(e)),t),forEachRow:(e,t)=>K(Y(Me,w(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(Me,w(e)),w(t)),s),forEachValue:e=>Z(Ne,e),addSortedRowIdsListener:(e,t,s,l,n,a,o)=>{let r=os(e,t,s,l,n);return ct((()=>{const o=os(e,t,s,l,n);var c,i,d;i=r,L(c=o)===L(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(Ps,e,t,s,l,n,r))}),Ke[o?1:0],[e,t],[ss])},addStartTransactionListener:e=>ct(e,ot),addWillFinishTransactionListener:e=>ct(e,rt[0]),addDidFinishTransactionListener:e=>ct(e,rt[1]),callListener:e=>(ut(e),Ps),delListener:e=>(dt(e),Ps),getListenerStats:()=>({}),createStore:ye,addListener:ct,callListeners:it};return H({[c+u]:[0,je,[],()=>[hs()]],[u]:[0,xe],[h]:[0,De],[c+d]:[1,He,[ss],e=>[gs(...e)]],[d]:[1,We,[ss]],[d+b]:[1,$e,[ss]],[c+d+V]:[2,qe,[ss,ls],e=>[fs(...e)]],[f]:[1,Be,[ss]],[T]:[1,Ge,[ss]],[c+g]:[2,Qe,[ss,as],e=>[Ts(...e)]],[g]:[2,Ue,[ss,as]],[b]:[2,Xe,[ss,as]],[c+V]:[3,Ye,[ss,as,rs],e=>[Vs(...e)]],[V]:[3,Ze,[ss,as,rs],e=>ge(cs(...e))],InvalidCell:[3,_e],[c+S]:[0,tt,[],()=>[bs()]],[S]:[0,st],[v]:[0,lt],[c+C]:[1,nt,[ds],e=>[Cs(...e)]],[C]:[1,at,[ds],e=>ge(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{Ps["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?J(n,0,e):void 0,s,l)})),N(Ps)};exports.createStore=ye;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",h="Ids",g="Table",f=g+"s",L=g+h,w="Row",I=w+"Count",S=w+h,v="Sorted"+w+h,R="Cell",p=R+h,T="Value",y=T+"s",C=T+h,b=e=>t+e,V=Math.max,m=Math.min,x=isFinite,E=e=>null==e,k=(e,t,s)=>E(e)?s?.():t(e),M=e=>e==s||e==n,D=t=>e(t)==o,J=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),F=e=>e.length,Q=()=>{},z=(e,t)=>e.includes(t),N=(e,t)=>e.every(t),O=(e,t)=>F(e)===F(t)&&N(e,((e,s)=>t[s]===e)),P=(e,t)=>N(e,((s,n)=>0==n||t(e[n-1],s)<=0)),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),B=(e,t)=>e.map(t),H=e=>q(e,((e,t)=>e+t),0),$=e=>0==F(e),q=(e,t,s)=>e.reduce(t,s),G=(e,...t)=>e.push(...t),K=e=>e.pop(),U=e=>e.shift(),X=Object,Y=e=>X.getPrototypeOf(e),Z=X.keys,_=X.isFrozen,ee=X.freeze,te=e=>!E(e)&&k(Y(e),(e=>e==X.prototype||E(Y(e))),(()=>!0)),se=(e,t)=>!E(((e,t)=>k(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),ae=(e,t)=>B(X.entries(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>F(Z(e)))(e),re=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ie=e=>E(e)||0==re(e),ce=e=>[...e?.values()??[]],de=e=>e.clear(),ue=(e,t)=>e?.forEach(t),he=(e,t)=>e?.delete(t),ge=e=>new Map(e),fe=e=>[...e?.keys()??[]],Le=(e,t)=>e?.get(t),we=(e,t)=>ue(e,((e,s)=>t(s,e))),Ie=(e,t,s)=>E(s)?(he(e,t),e):e?.set(t,s),Se=(e,t,s)=>(le(e,t)||Ie(e,t,s()),Le(e,t)),ve=(e,t,s,n=Ie)=>(ae(t,((t,n)=>s(e,n,t))),we(e,(s=>se(t,s)?0:n(e,s))),e),Re=(e,t,s)=>{const n={};return ue(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},pe=(e,t,s)=>Re(e,(e=>Re(e,t,s)),oe),Te=(e,t,s)=>Re(e,(e=>pe(e,t,s)),oe),ye=(e,t)=>{const s=ge();return ue(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ce=e=>ye(e,ye),be=e=>ye(e,Ce),Ve=(e,t,s,n,a=0)=>k((s?Se:Le)(e,t[a],a>F(t)-2?s:ge),(o=>{if(a>F(t)-2)return n?.(o)&&Ie(e,t[a]),o;const r=Ve(o,t,s,n,a+1);return ie(o)&&Ie(e,t[a]),r})),me=t=>{const s=e(t);return M(s)||s==a&&x(t)?s:void 0},xe=(e,t,s,n,a)=>E(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ee=(e,t,s)=>E(s)?e.delValue(t):e.setValue(t,s),ke=e=>new Set(J(e)||E(e)?e:[e]),Me=(e,t)=>e?.add(t),De=(e,t,s,n,a)=>{const o=e.hasRow,r=ge(),l=ge(),i=ge(),c=ge(),d=ge(),u=ge(),h=(t,s,...n)=>{const a=Se(u,t,ke);return W(n,(t=>Me(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>k(Le(u,t),(n=>{W($(s)?ce(n):s,(t=>{e.delListener(t),he(n,t)})),ie(n)&&Ie(u,t)})),f=(e,s)=>{Ie(r,e,s),le(l,e)||(Ie(l,e,t()),Ie(c,e,ge()),Ie(d,e,ge()),a(i))},L=e=>{Ie(r,e),Ie(l,e),Ie(c,e),Ie(d,e),g(e),a(i)};return[()=>e,()=>fe(r),e=>we(l,e),e=>le(l,e),e=>Le(r,e),e=>Le(l,e),(e,t)=>Ie(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ge(),u=ge(),L=Le(c,t),w=Le(d,t),I=t=>{const a=s=>e.getCell(n,t,s),c=Le(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||J(c)&&J(d)&&O(c,d)||Ie(i,t,[c,d]),!E(l)){const e=Le(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&Ie(u,t,s)}},S=e=>{a((()=>{ue(i,(([,e],t)=>Ie(L,t,e))),ue(u,((e,t)=>Ie(w,t,e)))}),i,u,L,w,e),de(i),de(u)};we(L,I),e.hasTable(n)&&W(e.getRowIds(n),(e=>{le(L,e)||I(e)})),S(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>I(s))),e.addTableListener(n,(()=>S())))},L,e=>n(e,i),()=>we(u,L),h,g]},Je=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),Ae=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Fe=/^\d+$/,Qe=()=>{const e=[];let s=0;return[n=>(n?U(e):null)??t+s++,t=>{Fe.test(t)&&F(e)<1e3&&G(e,t)}]},ze=e=>{let s;const[n,a]=Qe(),o=ge();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Ie(o,d,[a,r,l,i,c]),Me(Ve(r,l??[t],ke),d),d},(e,n,...a)=>W(((e,s=[t])=>{const n=[],a=(e,t)=>t==F(s)?G(n,e):null===s[t]?ue(e,(e=>a(e,t+1))):W([s[t],null],(s=>a(Le(e,s),t+1)));return a(e,0),n})(e,n),(e=>ue(e,(e=>Le(o,e)[0](s,...n??[],...a))))),e=>k(Le(o,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(he(t,e),ie(t)?1:0))),Ie(o,e),a(e),n))),e=>k(Le(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=F(r);l==F(t)?e(s,...r,...a(r)):E(t[l])?W(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},Ne=Ae((e=>{let s,n,a,o=100,r=ge(),l=ge(),i=1;const c=ge(),d=ge(),[u,h,g]=ze((()=>Q)),f=ge(),L=ge(),w=[],I=[],S=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Le(f,s);ue(n,((s,n)=>ue(s,((s,a)=>ue(s,((s,o)=>xe(e,n,a,o,s[t]))))))),ue(a,((s,n)=>Ee(e,n,s[t])))})),i=1},v=e=>{Ie(f,e),Ie(L,e),h(d,[e])},R=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??F(e)),v),p=()=>R(w,F(w)-o),T=()=>k(s,(()=>{G(w,s),p(),R(I),s=void 0,a=1})),y=()=>{s=K(w),a=1},C=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){T();const e=Se(r,t,ge),l=Se(e,s,ge),i=Se(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&ie(Ie(l,n))&&ie(Ie(e,s))&&ie(Ie(r,t))&&y(),M()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){T();const e=Se(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ie(Ie(l,t))&&y(),M()}})),V=(e="")=>(E(s)&&(s=t+n++,Ie(f,s,[r,l]),J(s,e),r=ge(),l=ge(),a=1),s),m=()=>{$(w)||(((e,...t)=>{e.unshift(...t)})(I,V()),S(0,s),s=K(w),a=1)},x=()=>{$(I)||(G(w,s),s=U(I),S(1,s),a=1)},M=()=>{a&&(h(c),a=0)},D=e=>{const t=V(e);return M(),t},J=(e,t)=>(A(e)&&Le(L,e)!==t&&(Ie(L,e,t),h(d,[e])),Q),A=e=>le(f,e),Q={setSize:e=>(o=e,p(),Q),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...I]],forEachCheckpoint:e=>we(L,e),hasCheckpoint:A,getCheckpoint:e=>Le(L,e),goBackward:()=>(m(),M(),Q),goForward:()=>(x(),M(),Q),goTo:e=>{const t=z(w,e)?m:z(I,e)?x:null;for(;!E(t)&&e!=s;)t();return M(),Q},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(I),E(s)||v(s),s=void 0,n=0,D(),Q),clearForward:()=>($(I)||(R(I),h(c)),Q),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return ee(Q.clear())})),Oe=(e,t)=>(e??0)<(t??0)?-1:1,Pe=Ae((e=>{const s=ge(),n=ge(),[a,o,r]=ze((()=>v)),[l,i,c,d,u,h,g,,f,L,w,I]=De(e,ge,(e=>E(e)?t:J(e)?B(e,b):b(e)),a,o),S=(t,s,n)=>{const a=u(t);ue(n,((t,n)=>s(n,(s=>ue(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,r,l,i=Oe)=>{const c=E(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let L=0;const w=ke(),I=ke(),S=h(e);if(ue(a,(([e,t],s)=>{const n=ke(e),a=ke(t);ue(n,(e=>he(a,e)?he(n,e):0)),ue(n,(e=>{Me(w,e),k(Le(S,e),(t=>{he(t,s),ie(t)&&(Ie(S,e),L=1)}))})),ue(a,(e=>{Me(w,e),le(S,e)||(Ie(S,e,ke()),L=1),Me(Le(S,e),s),E(r)||Me(I,e)}))})),t(),ie(u)||(f?we(S,(e=>Me(I,e))):we(l,(e=>k(Le(d,e),(e=>Me(I,e))))),ue(I,(e=>{const t=(t,s)=>i(Le(u,t),Le(u,s),e),s=[...Le(S,e)];P(s,t)||(Ie(S,e,ke(j(s,t))),Me(w,e))}))),(L||f)&&!E(c)){const t=[...S];P(t,c)||(g(e,ge(j(t,c))),L=1)}L&&o(s,[e]),ue(w,(t=>o(n,[e,t])))}),Je(a),k(r,Je)),v},delIndexDefinition:e=>(L(e),v),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>fe(h(e)),getSliceRowIds:(e,t)=>ce(Le(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),v),destroy:I,getListenerStats:()=>({})};return ee(v)})),je=ge([["avg",[(e,t)=>H(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:V(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>H(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),We=(e,t,s,n,a,o=!1)=>{if(ie(s))return;const[r,l,i,c]=a;return o||=E(e),ue(n,(([s,n])=>{o||(e=E(s)?l?.(e,n,t++):E(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=E(e))})),o?r(ce(s),re(s)):e},Be=Ae((e=>{const s=ge(),[n,a,o]=ze((()=>I)),[r,l,i,c,d,u,h,,g,f,L,w]=De(e,Q,(e=>isNaN(e)||E(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),I={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=D(n)?[n,r,l,i]:Le(je,n)??Le(je,"sum");return g(e,t,((t,n,o,r,l,i)=>{const d=u(e),g=re(r);i||=E(d),t();let f=We(d,g,r,n,c,i);x(f)||(f=void 0),f!=d&&(h(e,f),a(s,[e],f,d))}),Je(o,1)),I},delMetricDefinition:e=>(f(e),I),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),I),destroy:w,getListenerStats:()=>({})};return ee(I)})),He=ge(),$e=ge(),qe=Ae((e=>{const s=e.createStore,n=s(),a=s(),o=ge(),{addListener:r,callListeners:l,delListener:u}=a,[h,f,L,T,y,,,C,,b,V,m,x,M]=De(e,(()=>!0),Q,r,l),J=(e,t,...s)=>W(s,(s=>Me(Se(Se(o,t,ge),e,ke),s))),z=e=>{k(Le(o,e),(e=>{we(e,((e,t)=>ue(t,(t=>e.delListener(t))))),de(e)})),W([a,n],(t=>t.delTable(e)))},O=(e,t,s)=>J(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(s,o,r)=>{C(s,o),z(s);const l=[],i=[[null,[o,null,null,[],ge()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=D(e)?[F(l)+t,e]:[E(s)?e:s,t=>t(e,s)];return G(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=E(s)||D(t)?null:t,a=E(n)?t:s,o=[e,[e,n,D(a)?a:e=>e(a),[],ge()]];return G(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>G(c,D(e)?e:E(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,D(t)?[t,s,n,a]:Le(je,t)??[(e,t)=>t]]];return G(d,o),{as:e=>o[0]=e}},having:(e,t)=>G(u,D(e)?e:s=>s(e)===t)});const h=ge(l);if(ie(h))return P;const g=ge(i);we(g,((e,[,t])=>k(Le(g,t),(({3:t})=>E(e)?0:G(t,e)))));const f=ge(d);let L=n;if(ie(f)&&$(u))L=a;else{O(s,L,a);const e=ge();we(f,((t,[s,n])=>Me(Se(e,s,ke),[t,n])));const t=ke();we(h,(s=>le(e,s)?0:Me(t,s)));const n=ge(),o=(t,n,o,r)=>k(t,(([l,i,c,d])=>{we(n,((t,[s])=>{const n=Se(l,t,ge),a=Le(n,o),i=r?void 0:s;if(a!==i){const s=ke([[a,i]]),r=re(n);Ie(n,o,i),ue(Le(e,t),(([e,t])=>{const a=We(d[e],r,n,s,t);d[e]=E(me(a))?null:a}))}})),ie(i)||!N(u,(e=>e((e=>d[e]))))?a.delRow(s,c):E(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));J(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=ge(),h=L.hasRow(s,l);let g=!h;ue(t,(e=>{const[t,n,a]=i(s,l,e);G(c,n),G(d,a),g||=t})),we(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&Ie(u,e,[n])})),g&&o(Ve(n,c,void 0,(([,e])=>(he(e,l),ie(e)))),u,l,1),h&&o(Ve(n,d,(()=>{const e={};return ue(t,(t=>e[t]=L.getCell(s,l,t))),[ge(),ke(),void 0,e]}),(([,e])=>{Me(e,l)})),u,l)})))}O(s,e,L);const w=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,i]=Le(g,n),c=o?.(l,t),[d,u]=Le(i,t)??[];c!=d&&(E(u)||M(s,u),Ie(i,t,E(c)?null:[c,...x(s,1,e.addRowListener(a,c,(()=>w(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...E(n)?[o,t,s]:s===o?[o,t,n]:[Le(g,s)?.[0],Le(Le(g,s)?.[4],t)?.[0],n]);L.transaction((()=>N(c,(e=>e(n)))?we(h,((e,a)=>xe(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:I}=Le(g,null);return L.transaction((()=>x(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,I):(L.delRow(s,a),ue(g,(({4:e})=>k(Le(e,a),(([,t])=>{M(s,t),Ie(e,a)})))))}))))),P},delQueryDefinition:e=>(z(e),b(e),P),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:T,getTableId:y,addQueryIdsListener:e=>V((()=>e(P))),delListener:e=>(u(e),P),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ae({[g]:[1,1],[g+p]:[0,1],[I]:[0,1],[S]:[0,1],[v]:[0,5],[w]:[1,2],[p]:[0,2],[R]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+c+s]=(...t)=>a[e+s](...t))),P[d+c+s+i]=(...e)=>a[d+s+i](...A(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),ee(P)})),Ge=Ae((e=>{const s=ge(),n=ge(),a=ge(),o=ge(),[r,l,i]=ze((()=>T)),[c,d,u,h,g,f,,,L,w,I,S]=De(e,(()=>[ge(),ge(),ge(),ge()]),(e=>E(e)?void 0:e+t),r,l),v=(e,t,s)=>k(f(e),(([n,,a])=>{if(!le(a,t)){const o=ke();if(g(e)!=p(e))Me(o,t);else{let e=t;for(;!E(e)&&!le(o,e);)Me(o,e),e=Le(n,e)}if(s)return o;Ie(a,t,o)}return Le(a,t)})),R=(e,t)=>k(f(e),(([,,e])=>Ie(e,t))),p=e=>Le(s,e),T={setRelationshipDefinition:(e,t,r,i)=>(Ie(s,e,r),L(e,t,((t,s)=>{const r=ke(),i=ke(),c=ke(),[d,u]=f(e);ue(s,(([t,s],n)=>{E(t)||(Me(i,t),k(Le(u,t),(e=>{he(e,n),ie(e)&&Ie(u,t)}))),E(s)||(Me(i,s),le(u,s)||Ie(u,s,ke()),Me(Le(u,s),n)),Me(r,n),Ie(d,n,s),we(Le(o,e),(t=>{le(v(e,t),n)&&Me(c,t)}))})),t(),ue(r,(t=>l(n,[e,t]))),ue(i,(t=>l(a,[e,t]))),ue(c,(t=>{R(e,t),l(o,[e,t])}))}),Je(i)),T),delRelationshipDefinition:e=>(Ie(s,e),w(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:p,getRemoteRowId:(e,t)=>Le(f(e)?.[0],t),getLocalRowIds:(e,t)=>ce(Le(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>E(f(e))?[t]:ce(v(e,t,!0)),addRelationshipIdsListener:I,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),r(s,o,[e,t])),delListener:e=>(R(...i(e)??[]),T),destroy:S,getListenerStats:()=>({})};return ee(T)})),Ke=e=>[e,e],Ue=()=>[ge(),ge()],Xe=e=>[...e],Ye=([e,t])=>e===t,Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?X.fromEntries([...t]):t)),_e=JSON.parse,et=(e,t,s)=>E(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!oe(e)),tt=(e,t,s)=>Ie(e,t,Le(e,t)==-s?void 0:s),st=()=>{let e,t,s=!1,n=!1,o=!1,c=!1,h=0;const v=ge(),V=ge(),m=ge(),x=ge(),J=ge(),F=ge(),Q=ge(),N=ge(),P=ge(),H=ge(),$=ge(),q=ge(),K=ge(),U=ge(),X=ke(),Y=ge(),Z=ge(),_=ge(),te=ge(),ce=Ue(),Ve=Ue(),De=Ue(),Je=Ue(),Ae=Ue(),Fe=Ue(),Ne=Ue(),Pe=Ue(),je=Ue(),We=Ue(),Be=Ue(),He=Ue(),$e=Ue(),qe=Ue(),Ge=Ue(),nt=Ue(),at=Ue(),ot=Ue(),rt=Ue(),lt=Ue(),it=Ue(),ct=Ue(),dt=ge(),ut=Ue(),[ht,gt,ft,Lt]=ze((()=>zs)),wt=e=>{if(!et(e,((e,t)=>z([r,l],t))))return!1;const t=e[r];return!(!M(t)&&t!=a||(me(e[l])!=t&&ne(e,l),0))},It=(t,s)=>(!e||le($,s)||Gt(s))&&et(t,((e,t)=>St(s,t,e)),(()=>Gt(s))),St=(e,t,s,n)=>et(n?s:Tt(s,e,t),((n,a)=>k(vt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),vt=(t,s,n,a)=>e?k(Le(Le($,t),n),(e=>me(a)!=e[r]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):E(me(a))?Gt(t,s,n,a):a,Rt=(e,t)=>et(t?e:yt(e),((t,s)=>k(pt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),pt=(e,s)=>t?k(Le(K,e),(t=>me(s)!=t[r]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):E(me(s))?Kt(e,s):s,Tt=(e,t,s)=>(k(Le(q,t),(([n,a])=>{ue(n,((t,s)=>{se(e,s)||(e[s]=t)})),ue(a,(n=>{se(e,n)||Gt(t,s,n)}))})),e),yt=e=>(t&&(ue(U,((t,s)=>{se(e,s)||(e[s]=t)})),ue(X,(t=>{se(e,t)||Kt(t)}))),e),Ct=e=>ve($,e,((e,t,s)=>{const n=ge(),a=ke();ve(Se($,t,ge),s,((e,t,s)=>{Ie(e,t,s),k(s[l],(e=>Ie(n,t,e)),(()=>Me(a,t)))})),Ie(q,t,[n,a])}),((e,t)=>{Ie($,t),Ie(q,t)})),bt=e=>ve(K,e,((e,t,s)=>{Ie(K,t,s),k(s[l],(e=>Ie(U,t,e)),(()=>Me(X,t)))}),((e,t)=>{Ie(K,t),Ie(U,t),he(X,t)})),Vt=e=>oe(e)?xs():ys(e),mt=e=>ve(_,e,((e,t,s)=>xt(t,s)),((e,t)=>zt(t))),xt=(e,t)=>ve(Se(_,e,(()=>(jt(e,1),Ie(Y,e,Qe()),Ie(Z,e,ge()),ge()))),t,((t,s,n)=>Et(e,t,s,n)),((t,s)=>Nt(e,t,s))),Et=(e,t,s,n,a)=>ve(Se(t,s,(()=>(Wt(e,s,1),ge()))),n,((t,n,a)=>kt(e,s,t,n,a)),((n,o)=>Ot(e,t,s,n,o,a))),kt=(e,t,s,n,a)=>{le(s,n)||Bt(e,t,n,1);const o=Le(s,n);a!==o&&(Ht(e,t,n,o,a),Ie(s,n,a))},Mt=(e,t,s,n,a)=>k(Le(t,s),(t=>kt(e,s,t,n,a)),(()=>Et(e,t,s,Tt({[n]:a},e,s)))),Dt=e=>oe(e)?Ms():Cs(e),Jt=e=>ve(te,e,((e,t,s)=>At(t,s)),((e,t)=>Pt(t))),At=(e,t)=>{le(te,e)||$t(e,1);const s=Le(te,e);t!==s&&(qt(e,s,t),Ie(te,e,t))},Ft=(e,t)=>{const[s]=Le(Y,e),n=s(t);return le(Le(_,e),n)?Ft(e,t):n},Qt=e=>Le(_,e)??xt(e,{}),zt=e=>xt(e,{}),Nt=(e,t,s)=>{const[,n]=Le(Y,e);n(s),Et(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=Le(Le(q,e)?.[0],a);if(!E(r)&&!o)return kt(e,s,n,a,r);const l=t=>{Ht(e,s,t,Le(n,t)),Bt(e,s,t,-1),Ie(n,t)};E(r)?l(a):we(n,l),ie(n)&&(Wt(e,s,-1),ie(Ie(t,s))&&(jt(e,-1),Ie(_,e),Ie(Y,e),Ie(Z,e)))},Pt=e=>{const t=Le(U,e);if(!E(t))return At(e,t);qt(e,Le(te,e)),$t(e,-1),Ie(te,e)},jt=(e,t)=>tt(v,e,t),Wt=(e,t,s)=>tt(Se(x,e,ge),t,s)&&Ie(m,e,Se(m,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=Le(Z,e),o=Le(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&tt(Se(V,e,ge),s,n),Ie(a,s,o!=-n?o+n:null),tt(Se(Se(J,e,ge),t,ge),s,n)},Ht=(e,t,s,n,a)=>Se(Se(Se(F,e,ge),t,ge),s,(()=>[n,0]))[1]=a,$t=(e,t)=>tt(Q,e,t),qt=(e,t,s)=>Se(N,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(G(Se(Se(Se(P,e,ge),t,ge),s,(()=>[])),n),a),Kt=(e,t,s)=>(G(Se(H,e,(()=>[])),t),s),Ut=(e,t,s)=>k(Le(Le(Le(F,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(hs(e,t,s))])),Xt=e=>k(Le(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(Ls(e))])),Yt=e=>ie(P)||ie(nt[e])?0:ue(e?be(P):P,((t,s)=>ue(t,((t,n)=>ue(t,((t,a)=>gt(nt[e],[s,n,a],t))))))),Zt=e=>ie(H)||ie(at[e])?0:ue(e?ye(H):H,((t,s)=>gt(at[e],[s],t))),_t=(e,t,s,n)=>{if(!ie(e))return gt(t,n,(()=>Re(e))),we(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=o&&gt(ce[e],void 0,t);const s=ie(We[e]),n=ie($e[e])&&ie(qe[e])&&ie(je[e])&&ie(Be[e])&&ie(Fe[e])&&ie(Ne[e])&&ie(Pe[e])&&s&&ie(De[e])&&ie(Je[e]),a=ie(Ge[e])&&ie(He[e])&&ie(Ae[e])&&ie(Ve[e]);if(!n||!a){const t=e?[ye(v),Ce(V),ye(m),Ce(x),be(J),be(F)]:[v,V,m,x,J,F];if(!n){_t(t[0],De[e],Je[e]),ue(t[1],((t,s)=>_t(t,Fe[e],Ne[e],[s]))),ue(t[2],((t,s)=>{0!=t&&gt(Pe[e],[s],is(s))}));const n=ke();ue(t[3],((t,a)=>{_t(t,je[e],Be[e],[a])&&!s&&(gt(We[e],[a,null]),Me(n,a))})),s||ue(t[5],((t,s)=>{if(!le(n,s)){const n=ke();ue(t,(e=>ue(e,(([t,s],a)=>s!==t?Me(n,a):he(e,a))))),ue(n,(t=>gt(We[e],[s,t])))}})),ue(t[4],((t,s)=>ue(t,((t,n)=>_t(t,$e[e],qe[e],[s,n])))))}if(!a){let s;ue(t[5],((t,n)=>{let a;ue(t,((t,o)=>{let r;ue(t,(([t,l],i)=>{l!==t&&(gt(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&gt(He[e],[n,o],Ut)})),a&&gt(Ae[e],[n],Ut)})),s&&gt(Ve[e],void 0,Ut)}}},ts=e=>{const t=ps();t!=c&&gt(ot[e],void 0,t);const s=ie(lt[e])&&ie(it[e]),n=ie(ct[e])&&ie(rt[e]);if(!s||!n){const t=e?[ye(Q),ye(N)]:[Q,N];if(s||_t(t[0],lt[e],it[e]),!n){let s;ue(t[1],(([t,n],a)=>{n!==t&&(gt(ct[e],[a],n,t,Xt),s=1)})),s&&gt(rt[e],void 0,Xt)}}},ss=(e,...t)=>(As((()=>e(...B(t,b)))),zs),ns=()=>[Re(F,((e,t)=>-1===Le(v,t)?null:Re(e,((e,s)=>-1===Le(Le(x,t),s)?null:Re(e,(([,e])=>e??null),((e,t)=>Ye(t)))),oe)),oe),Re(N,(([,e])=>e??null),((e,t)=>Ye(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:Te(F,Xe,Ye),invalidCells:Te(P),changedValues:Re(N,Xe,Ye),invalidValues:Re(H),changedTableIds:Re(v),changedRowIds:pe(x),changedCellIds:Te(J),changedValueIds:Re(Q)}),os=()=>Te(_),rs=()=>fe(_),ls=e=>fe(Le(Z,b(e))),is=e=>re(Le(_,b(e))),cs=e=>fe(Le(_,b(e))),ds=(e,t,s,n=0,a)=>{return B(A(j((o=Le(_,b(e)),r=(e,s)=>[E(t)?s:Le(e,b(t)),s],B([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Oe(e,t)*(s?-1:1))),n,E(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>fe(Le(Le(_,b(e)),b(t))),hs=(e,t,s)=>Le(Le(Le(_,b(e)),b(t)),b(s)),gs=()=>Re(te),fs=()=>fe(te),Ls=e=>Le(te,b(e)),ws=()=>!ie(_),Is=e=>le(_,b(e)),Ss=(e,t)=>le(Le(Z,b(e)),b(t)),vs=(e,t)=>le(Le(_,b(e)),b(t)),Rs=(e,t,s)=>le(Le(Le(_,b(e)),b(t)),b(s)),ps=()=>!ie(te),Ts=e=>le(te,b(e)),ys=e=>ss((()=>(e=>et(e,It,Gt))(e)?mt(e):0)),Cs=e=>ss((()=>Rt(e)?Jt(e):0)),bs=e=>{try{Vt(_e(e))}catch{}return zs},Vs=t=>ss((()=>{if((e=et(t,(e=>et(e,wt))))&&(Ct(t),!ie(_))){const e=os();xs(),ys(e)}})),ms=e=>ss((()=>{if(t=(e=>et(e,wt))(e)){const s=gs();Js(),Ms(),t=!0,bt(e),Cs(s)}})),xs=()=>ss((()=>mt({}))),Es=e=>ss((e=>le(_,e)?zt(e):0),e),ks=(e,t)=>ss(((e,t)=>k(Le(_,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),Ms=()=>ss((()=>Jt({}))),Ds=()=>ss((()=>{Ct({}),e=!1})),Js=()=>ss((()=>{bt({}),t=!1})),As=(e,t)=>{if(-1!=h){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=h&&h++,1==h&&gt(dt,void 0,ns,as),zs),Qs=e=>(h>0&&(h--,0==h&&(s=!ie(F),n=!ie(N),h=1,Yt(1),s&&es(1),Zt(1),n&&ts(1),e?.(ns,as)&&(ue(F,((e,t)=>ue(e,((e,s)=>ue(e,(([e],n)=>xe(zs,t,s,n,e))))))),ue(N,(([e],t)=>Ee(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),h=-1,Yt(0),s&&es(0),Zt(0),n&&ts(0),gt(ut[1],void 0,ns,as),h=0,s=n=!1,o=ws(),c=ps(),W([v,V,m,x,J,F,P,Q,N,H],de))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>pe(Le(_,b(e))),getTableCellIds:ls,getRowCount:is,getRowIds:cs,getSortedRowIds:ds,getRow:(e,t)=>Re(Le(Le(_,b(e)),b(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:Is,hasTableCell:Ss,hasRow:vs,hasCell:Rs,hasValues:ps,hasValue:Ts,getTablesJson:()=>Ze(_),getValuesJson:()=>Ze(te),getJson:()=>Ze([_,te]),getTablesSchemaJson:()=>Ze($),getValuesSchemaJson:()=>Ze(K),getSchemaJson:()=>Ze([$,K]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(oe(e)?xs:ys)(e),(oe(t)?Ms:Cs)(t)})),setTables:ys,setTable:(e,t)=>ss((e=>It(t,e)?xt(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>St(e,t,s)?Et(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return St(e,n,t)&&(e=b(e),Et(e,Qt(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(St(e,t,s,1)){const n=Qt(e);ae(s,((s,a)=>Mt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>k(vt(e,t,s,D(n)?n(hs(e,t,s)):n),(n=>Mt(e,Qt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>ss((()=>Rt(e,1)?ae(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ss((e=>k(pt(e,D(t)?t(Ls(e)):t),(t=>At(e,t)))),e),setTransactionChanges:e=>ss((()=>{ae(e[0],((e,t)=>E(e)?Es(t):ae(e,((e,s)=>E(e)?ks(t,s):ae(e,((e,n)=>xe(zs,t,s,n,e))))))),ae(e[1],((e,t)=>Ee(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Dt(_e(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=_e(e);Vt(t),Dt(s)}catch{bs(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>ss((()=>{Vs(e),ms(t)})),delTables:xs,delTable:Es,delRow:ks,delCell:(e,t,s,n)=>ss(((e,t,s)=>k(Le(_,e),(a=>k(Le(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:Ms,delValue:e=>ss((e=>le(te,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Js,delSchema:()=>ss((()=>{Ds(),Js()})),transaction:As,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>ue(_,((t,s)=>e(s,(e=>ue(t,((t,s)=>e(s,(e=>we(t,e))))))))),forEachTableCell:(e,t)=>we(Le(Z,b(e)),t),forEachRow:(e,t)=>ue(Le(_,b(e)),((e,s)=>t(s,(t=>we(e,t))))),forEachCell:(e,t,s)=>we(Le(Le(_,b(e)),b(t)),s),forEachValue:e=>we(te,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ds(e,t,s,n,a);return ht((()=>{const r=ds(e,t,s,n,a);O(r,l)||(l=r,o(zs,e,t,s,n,a,l))}),We[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Lt(e),zs),delListener:e=>(ft(e),zs),getListenerStats:()=>({}),createStore:st,addListener:ht,callListeners:gt};return ae({[u+f]:[0,ce,[],()=>[ws()]],[f]:[0,Ve],[L]:[0,De],[u+g]:[1,Je,[rs],e=>[Is(...e)]],[g]:[1,Ae,[rs]],[g+p]:[1,Fe,[rs]],[u+g+R]:[2,Ne,[rs,ls],e=>[Ss(...e)]],[I]:[1,Pe,[rs]],[S]:[1,je,[rs]],[u+w]:[2,Be,[rs,cs],e=>[vs(...e)]],[w]:[2,He,[rs,cs]],[p]:[2,$e,[rs,cs]],[u+R]:[3,qe,[rs,cs,us],e=>[Rs(...e)]],[R]:[3,Ge,[rs,cs,us],e=>Ke(hs(...e))],InvalidCell:[3,nt],[u+y]:[0,ot,[],()=>[ps()]],[y]:[0,rt],[C]:[0,lt],[u+T]:[1,it,[fs],e=>[Ts(...e)]],[T]:[1,ct,[fs],e=>Ke(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[d+a+i]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?A(a,0,e):void 0,s,n)})),ee(zs)};exports.createCheckpoints=Ne,exports.createCustomPersister=(e,t,s,n,a,o,[r,l]=[],i=[])=>{let c,d,u,h=0,g=0;Se(He,i,(()=>0)),Se($e,i,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();oe(s)&&oe(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(k(c,e.delListener),c=void 0,L),schedule:async(...e)=>(G(Le($e,i),...e),await(async()=>{if(!Le(He,i)){for(Ie(He,i,1);!E(d=U(Le($e,i)));)try{await d()}catch(e){o?.(e)}Ie(He,i,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>l),ee(L)},exports.createIndexes=Pe,exports.createMetrics=Be,exports.createQueries=qe,exports.createRelationships=Ge,exports.createStore=st,exports.defaultSorter=Oe;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",i="default",l="Listener",c="Result",d="add",u="Has",h="Ids",g="Table",f=g+"s",L=g+h,w="Row",I=w+"Count",S=w+h,v="Sorted"+w+h,R="Cell",p=R+h,T="Value",y=T+"s",C=T+h,b=e=>t+e,V=Math.max,m=Math.min,x=isFinite,E=e=>null==e,k=(e,t,s)=>E(e)?s?.():t(e),M=e=>e==s||e==n,D=t=>e(t)==o,J=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),F=e=>e.length,Q=()=>{},z=(e,t)=>e.includes(t),N=(e,t)=>e.every(t),O=(e,t)=>F(e)===F(t)&&N(e,((e,s)=>t[s]===e)),P=(e,t)=>N(e,((s,n)=>0==n||t(e[n-1],s)<=0)),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),_=(e,t)=>e.map(t),B=e=>$(e,((e,t)=>e+t),0),H=e=>0==F(e),$=(e,t,s)=>e.reduce(t,s),q=(e,...t)=>e.push(...t),G=e=>e.pop(),K=e=>e.shift(),U=Object,X=e=>U.getPrototypeOf(e),Y=U.entries,Z=U.keys,ee=U.isFrozen,te=U.freeze,se=e=>!E(e)&&k(X(e),(e=>e==U.prototype||E(X(e))),(()=>!0)),ne=(e,t)=>!E(((e,t)=>k(e,(e=>e[t])))(e,t)),ae=(e,t)=>(delete e[t],e),oe=(e,t)=>_(Y(e),(([e,s])=>t(s,e))),re=e=>se(e)&&0==(e=>F(Z(e)))(e),ie=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ce=e=>E(e)||0==ie(e),de=e=>[...e?.values()??[]],ue=e=>e.clear(),he=(e,t)=>e?.forEach(t),ge=(e,t)=>e?.delete(t),fe=e=>new Map(e),Le=e=>[...e?.keys()??[]],we=(e,t)=>e?.get(t),Ie=(e,t)=>he(e,((e,s)=>t(s,e))),Se=(e,t,s)=>E(s)?(ge(e,t),e):e?.set(t,s),ve=(e,t,s)=>(le(e,t)||Se(e,t,s()),we(e,t)),Re=(e,t,s,n=Se)=>(oe(t,((t,n)=>s(e,n,t))),Ie(e,(s=>ne(t,s)?0:n(e,s))),e),pe=(e,t,s)=>{const n={};return he(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>pe(e,(e=>pe(e,t,s)),re),ye=(e,t,s)=>pe(e,(e=>Te(e,t,s)),re),Ce=(e,t)=>{const s=fe();return he(e,((e,n)=>s.set(n,t?.(e)??e))),s},be=e=>Ce(e,Ce),Ve=e=>Ce(e,be),me=(e,t,s,n,a=0)=>k((s?ve:we)(e,t[a],a>F(t)-2?s:fe),(o=>{if(a>F(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=me(o,t,s,n,a+1);return ce(o)&&Se(e,t[a]),r})),xe=t=>{const s=e(t);return M(s)||s==a&&x(t)?s:void 0},Ee=(e,t,s,n,a)=>E(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ke=(e,t,s)=>E(s)?e.delValue(t):e.setValue(t,s),Me=e=>new Set(J(e)||E(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=fe(),i=fe(),l=fe(),c=fe(),d=fe(),u=fe(),h=(t,s,...n)=>{const a=ve(u,t,Me);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>k(we(u,t),(n=>{W(H(s)?de(n):s,(t=>{e.delListener(t),ge(n,t)})),ce(n)&&Se(u,t)})),f=(e,s)=>{Se(r,e,s),le(i,e)||(Se(i,e,t()),Se(c,e,fe()),Se(d,e,fe()),a(l))},L=e=>{Se(r,e),Se(i,e),Se(c,e),Se(d,e),g(e),a(l)};return[()=>e,()=>Le(r),e=>Ie(i,e),e=>le(i,e),e=>we(r,e),e=>we(i,e),(e,t)=>Se(i,e,t),f,(t,n,a,r,i)=>{f(t,n);const l=fe(),u=fe(),L=we(c,t),w=we(d,t),I=t=>{const a=s=>e.getCell(n,t,s),c=we(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||J(c)&&J(d)&&O(c,d)||Se(l,t,[c,d]),!E(i)){const e=we(w,t),s=o(n,t)?i(a,t):void 0;e!=s&&Se(u,t,s)}},S=e=>{a((()=>{he(l,(([,e],t)=>Se(L,t,e))),he(u,((e,t)=>Se(w,t,e)))}),l,u,L,w,e),ue(l),ue(u)};Ie(L,I),e.hasTable(n)&&W(e.getRowIds(n),(e=>{le(L,e)||I(e)})),S(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>I(s))),e.addTableListener(n,(()=>S())))},L,e=>n(e,l),()=>Ie(u,L),h,g]},Ae=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),Fe=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},Qe=/^\d+$/,ze=()=>{const e=[];let s=0;return[n=>(n?K(e):null)??t+s++,t=>{Qe.test(t)&&F(e)<1e3&&q(e,t)}]},Ne=e=>{let s;const[n,a]=ze(),o=fe();return[(a,r,i,l=[],c=(()=>[]))=>{s??=e();const d=n(1);return Se(o,d,[a,r,i,l,c]),De(me(r,i??[t],Me),d),d},(e,n,...a)=>W(((e,s=[t])=>{const n=[],a=(e,t)=>t==F(s)?q(n,e):null===s[t]?he(e,(e=>a(e,t+1))):W([s[t],null],(s=>a(we(e,s),t+1)));return a(e,0),n})(e,n),(e=>he(e,(e=>we(o,e)[0](s,...n??[],...a))))),e=>k(we(o,e),(([,s,n])=>(me(s,n??[t],void 0,(t=>(ge(t,e),ce(t)?1:0))),Se(o,e),a(e),n))),e=>k(we(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const i=F(r);i==F(t)?e(s,...r,...a(r)):E(t[i])?W(n[i]?.(...r)??[],(e=>o(...r,e))):o(...r,t[i])};o()}))]},Oe=Fe((e=>{let s,n,a,o=100,r=fe(),i=fe(),l=1;const c=fe(),d=fe(),[u,h,g]=Ne((()=>Q)),f=fe(),L=fe(),w=[],I=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,a]=we(f,s);he(n,((s,n)=>he(s,((s,a)=>he(s,((s,o)=>Ee(e,n,a,o,s[t]))))))),he(a,((s,n)=>ke(e,n,s[t])))})),l=1},v=e=>{Se(f,e),Se(L,e),h(d,[e])},R=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??F(e)),v),p=()=>R(w,F(w)-o),T=()=>k(s,(()=>{q(w,s),p(),R(I),s=void 0,a=1})),y=()=>{s=G(w),a=1};let C,b;const V=(e="")=>(E(s)&&(s=t+n++,Se(f,s,[r,i]),J(s,e),r=fe(),i=fe(),a=1),s),m=()=>{H(w)||(((e,...t)=>{e.unshift(...t)})(I,V()),S(0,s),s=G(w),a=1)},x=()=>{H(I)||(q(w,s),s=K(I),S(1,s),a=1)},M=()=>{a&&(h(c),a=0)},D=e=>{const t=V(e);return M(),t},J=(e,t)=>(A(e)&&we(L,e)!==t&&(Se(L,e,t),h(d,[e])),Q),A=e=>le(f,e),Q={setSize:e=>(o=e,p(),Q),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...I]],forEachCheckpoint:e=>Ie(L,e),hasCheckpoint:A,getCheckpoint:e=>we(L,e),goBackward:()=>(m(),M(),Q),goForward:()=>(x(),M(),Q),goTo:e=>{const t=z(w,e)?m:z(I,e)?x:null;for(;!E(t)&&e!=s;)t();return M(),Q},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(I),E(s)||v(s),s=void 0,n=0,D(),Q),clearForward:()=>(H(I)||(R(I),h(c)),Q),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({}),_registerListeners:()=>{C=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(l){T();const e=ve(r,t,fe),i=ve(e,s,fe),l=ve(i,n,(()=>[o,void 0]));l[1]=a,l[0]===a&&ce(Se(i,n))&&ce(Se(e,s))&&ce(Se(r,t))&&y(),M()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(l){T();const e=ve(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ce(Se(i,t))&&y(),M()}}))}};return te(Q.clear())}),(e=>e._registerListeners())),Pe=(e,t)=>(e??0)<(t??0)?-1:1,je=Fe((e=>{const s=fe(),n=fe(),[a,o,r]=Ne((()=>v)),[i,l,c,d,u,h,g,,f,L,w,I]=Je(e,fe,(e=>E(e)?t:J(e)?_(e,b):b(e)),a,o),S=(t,s,n)=>{const a=u(t);he(n,((t,n)=>s(n,(s=>he(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,r,i,l=Pe)=>{const c=E(i)?void 0:([e],[t])=>i(e,t);return f(e,t,((t,a,i,d,u,f)=>{let L=0;const w=Me(),I=Me(),S=h(e);if(he(a,(([e,t],s)=>{const n=Me(e),a=Me(t);he(n,(e=>ge(a,e)?ge(n,e):0)),he(n,(e=>{De(w,e),k(we(S,e),(t=>{ge(t,s),ce(t)&&(Se(S,e),L=1)}))})),he(a,(e=>{De(w,e),le(S,e)||(Se(S,e,Me()),L=1),De(we(S,e),s),E(r)||De(I,e)}))})),t(),ce(u)||(f?Ie(S,(e=>De(I,e))):Ie(i,(e=>k(we(d,e),(e=>De(I,e))))),he(I,(e=>{const t=(t,s)=>l(we(u,t),we(u,s),e),s=[...we(S,e)];P(s,t)||(Se(S,e,Me(j(s,t))),De(w,e))}))),(L||f)&&!E(c)){const t=[...S];P(t,c)||(g(e,fe(j(t,c))),L=1)}L&&o(s,[e]),he(w,(t=>o(n,[e,t])))}),Ae(a),k(r,Ae)),v},delIndexDefinition:e=>(L(e),v),getStore:i,getIndexIds:l,forEachIndex:e=>c(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>Le(h(e)),getSliceRowIds:(e,t)=>de(we(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),v),destroy:I,getListenerStats:()=>({})};return te(v)})),We=fe([["avg",[(e,t)=>B(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:V(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>B(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),_e=(e,t,s,n,a,o=!1)=>{if(ce(s))return;const[r,i,l,c]=a;return o||=E(e),he(n,(([s,n])=>{o||(e=E(s)?i?.(e,n,t++):E(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=E(e))})),o?r(de(s),ie(s)):e},Be=Fe((e=>{const s=fe(),[n,a,o]=Ne((()=>I)),[r,i,l,c,d,u,h,,g,f,L,w]=Je(e,Q,(e=>isNaN(e)||E(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),I={setMetricDefinition:(e,t,n,o,r,i,l)=>{const c=D(n)?[n,r,i,l]:we(We,n)??we(We,"sum");return g(e,t,((t,n,o,r,i,l)=>{const d=u(e),g=ie(r);l||=E(d),t();let f=_e(d,g,r,n,c,l);x(f)||(f=void 0),f!=d&&(h(e,f),a(s,[e],f,d))}),Ae(o,1)),I},delMetricDefinition:e=>(f(e),I),getStore:r,getMetricIds:i,forEachMetric:l,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),I),destroy:w,getListenerStats:()=>({})};return te(I)})),He=fe(),$e=fe(),qe=Fe((e=>{const s=e.createStore,n=s(),a=s(),o=fe(),{addListener:r,callListeners:i,delListener:u}=a,[h,f,L,T,y,,,C,,b,V,m,x,M]=Je(e,(()=>!0),Q,r,i),J=(e,t,...s)=>W(s,(s=>De(ve(ve(o,t,fe),e,Me),s))),z=e=>{k(we(o,e),(e=>{Ie(e,((e,t)=>he(t,(t=>e.delListener(t))))),ue(e)})),W([a,n],(t=>t.delTable(e)))},O=(e,t,s)=>J(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(s,o,r)=>{C(s,o),z(s);const i=[],l=[[null,[o,null,null,[],fe()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=D(e)?[F(i)+t,e]:[E(s)?e:s,t=>t(e,s)];return q(i,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=E(s)||D(t)?null:t,a=E(n)?t:s,o=[e,[e,n,D(a)?a:e=>e(a),[],fe()]];return q(l,o),{as:e=>o[0]=e}},where:(e,t,s)=>q(c,D(e)?e:E(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,D(t)?[t,s,n,a]:we(We,t)??[(e,t)=>t]]];return q(d,o),{as:e=>o[0]=e}},having:(e,t)=>q(u,D(e)?e:s=>s(e)===t)});const h=fe(i);if(ce(h))return P;const g=fe(l);Ie(g,((e,[,t])=>k(we(g,t),(({3:t})=>E(e)?0:q(t,e)))));const f=fe(d);let L=n;if(ce(f)&&H(u))L=a;else{O(s,L,a);const e=fe();Ie(f,((t,[s,n])=>De(ve(e,s,Me),[t,n])));const t=Me();Ie(h,(s=>le(e,s)?0:De(t,s)));const n=fe(),o=(t,n,o,r)=>k(t,(([i,l,c,d])=>{Ie(n,((t,[s])=>{const n=ve(i,t,fe),a=we(n,o),l=r?void 0:s;if(a!==l){const s=Me([[a,l]]),r=ie(n);Se(n,o,l),he(we(e,t),(([e,t])=>{const a=_e(d[e],r,n,s,t);d[e]=E(xe(a))?null:a}))}})),ce(l)||!N(u,(e=>e((e=>d[e]))))?a.delRow(s,c):E(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));J(L,s,L.addRowListener(s,null,((a,r,i,l)=>{const c=[],d=[],u=fe(),h=L.hasRow(s,i);let g=!h;he(t,(e=>{const[t,n,a]=l(s,i,e);q(c,n),q(d,a),g||=t})),Ie(e,(e=>{const[t,,n]=l(s,i,e);(g||t)&&Se(u,e,[n])})),g&&o(me(n,c,void 0,(([,e])=>(ge(e,i),ce(e)))),u,i,1),h&&o(me(n,d,(()=>{const e={};return he(t,(t=>e[t]=L.getCell(s,i,t))),[fe(),Me(),void 0,e]}),(([,e])=>{De(e,i)})),u,i)})))}O(s,e,L);const w=(t,n,a,r)=>{const i=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,l]=we(g,n),c=o?.(i,t),[d,u]=we(l,t)??[];c!=d&&(E(u)||M(s,u),Se(l,t,E(c)?null:[c,...x(s,1,e.addRowListener(a,c,(()=>w(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...E(n)?[o,t,s]:s===o?[o,t,n]:[we(g,s)?.[0],we(we(g,s)?.[4],t)?.[0],n]);L.transaction((()=>N(c,(e=>e(n)))?Ie(h,((e,a)=>Ee(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:I}=we(g,null);return L.transaction((()=>x(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,I):(L.delRow(s,a),he(g,(({4:e})=>k(we(e,a),(([,t])=>{M(s,t),Se(e,a)})))))}))))),P},delQueryDefinition:e=>(z(e),b(e),P),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:T,getTableId:y,addQueryIdsListener:e=>V((()=>e(P))),delListener:e=>(u(e),P),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return oe({[g]:[1,1],[g+p]:[0,1],[I]:[0,1],[S]:[0,1],[v]:[0,5],[w]:[1,2],[p]:[0,2],[R]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+c+s]=(...t)=>a[e+s](...t))),P[d+c+s+l]=(...e)=>a[d+s+l](...A(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),te(P)})),Ge=Fe((e=>{const s=fe(),n=fe(),a=fe(),o=fe(),[r,i,l]=Ne((()=>T)),[c,d,u,h,g,f,,,L,w,I,S]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>E(e)?void 0:e+t),r,i),v=(e,t,s)=>k(f(e),(([n,,a])=>{if(!le(a,t)){const o=Me();if(g(e)!=p(e))De(o,t);else{let e=t;for(;!E(e)&&!le(o,e);)De(o,e),e=we(n,e)}if(s)return o;Se(a,t,o)}return we(a,t)})),R=(e,t)=>k(f(e),(([,,e])=>Se(e,t))),p=e=>we(s,e),T={setRelationshipDefinition:(e,t,r,l)=>(Se(s,e,r),L(e,t,((t,s)=>{const r=Me(),l=Me(),c=Me(),[d,u]=f(e);he(s,(([t,s],n)=>{E(t)||(De(l,t),k(we(u,t),(e=>{ge(e,n),ce(e)&&Se(u,t)}))),E(s)||(De(l,s),le(u,s)||Se(u,s,Me()),De(we(u,s),n)),De(r,n),Se(d,n,s),Ie(we(o,e),(t=>{le(v(e,t),n)&&De(c,t)}))})),t(),he(r,(t=>i(n,[e,t]))),he(l,(t=>i(a,[e,t]))),he(c,(t=>{R(e,t),i(o,[e,t])}))}),Ae(l)),T),delRelationshipDefinition:e=>(Se(s,e),w(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:p,getRemoteRowId:(e,t)=>we(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(we(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>E(f(e))?[t]:de(v(e,t,!0)),addRelationshipIdsListener:I,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),r(s,o,[e,t])),delListener:e=>(R(...l(e)??[]),T),destroy:S,getListenerStats:()=>({})};return te(T)})),Ke=e=>[e,e],Ue=()=>[fe(),fe()],Xe=e=>[...e],Ye=([e,t])=>e===t,Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?U.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>E(e)||!se(e)||re(e)||ee(e)?(s?.(),!1):(oe(e,((s,n)=>{t(s,n)||ae(e,n)})),!re(e)),st=(e,t,s)=>Se(e,t,we(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,o=!1,c=!1,h=0;const v=fe(),V=fe(),m=fe(),x=fe(),J=fe(),F=fe(),Q=fe(),N=fe(),P=fe(),B=fe(),H=fe(),$=fe(),G=fe(),K=fe(),U=Me(),X=fe(),Y=fe(),Z=fe(),ee=fe(),se=Ue(),de=Ue(),me=Ue(),Je=Ue(),Ae=Ue(),Fe=Ue(),Qe=Ue(),Oe=Ue(),je=Ue(),We=Ue(),_e=Ue(),Be=Ue(),He=Ue(),$e=Ue(),qe=Ue(),Ge=Ue(),at=Ue(),ot=Ue(),rt=Ue(),it=Ue(),lt=Ue(),ct=Ue(),dt=fe(),ut=Ue(),[ht,gt,ft,Lt]=Ne((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>z([r,i],t))))return!1;const t=e[r];return!(!M(t)&&t!=a||(xe(e[i])!=t&&ae(e,i),0))},It=(t,s)=>(!e||le(H,s)||qt(s))&&tt(t,((e,t)=>St(s,t,e)),(()=>qt(s))),St=(e,t,s,n)=>tt(n?s:Tt(s,e,t),((n,a)=>k(vt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,n,a)=>e?k(we(we(H,t),n),(e=>xe(a)!=e[r]?qt(t,s,n,a,e[i]):a),(()=>qt(t,s,n,a))):E(xe(a))?qt(t,s,n,a):a,Rt=(e,t)=>tt(t?e:yt(e),((t,s)=>k(pt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),pt=(e,s)=>t?k(we(G,e),(t=>xe(s)!=t[r]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):E(xe(s))?Gt(e,s):s,Tt=(e,t,s)=>(k(we($,t),(([n,a])=>{he(n,((t,s)=>{ne(e,s)||(e[s]=t)})),he(a,(n=>{ne(e,n)||qt(t,s,n)}))})),e),yt=e=>(t&&(he(K,((t,s)=>{ne(e,s)||(e[s]=t)})),he(U,(t=>{ne(e,t)||Gt(t)}))),e),Ct=e=>Re(H,e,((e,t,s)=>{const n=fe(),a=Me();Re(ve(H,t,fe),s,((e,t,s)=>{Se(e,t,s),k(s[i],(e=>Se(n,t,e)),(()=>De(a,t)))})),Se($,t,[n,a])}),((e,t)=>{Se(H,t),Se($,t)})),bt=e=>Re(G,e,((e,t,s)=>{Se(G,t,s),k(s[i],(e=>Se(K,t,e)),(()=>De(U,t)))}),((e,t)=>{Se(G,t),Se(K,t),ge(U,t)})),Vt=e=>re(e)?xs():ys(e),mt=e=>Re(Z,e,((e,t,s)=>xt(t,s)),((e,t)=>zt(t))),xt=(e,t)=>Re(ve(Z,e,(()=>(jt(e,1),Se(X,e,ze()),Se(Y,e,fe()),fe()))),t,((t,s,n)=>Et(e,t,s,n)),((t,s)=>Nt(e,t,s))),Et=(e,t,s,n,a)=>Re(ve(t,s,(()=>(Wt(e,s,1),fe()))),n,((t,n,a)=>kt(e,s,t,n,a)),((n,o)=>Ot(e,t,s,n,o,a))),kt=(e,t,s,n,a)=>{le(s,n)||_t(e,t,n,1);const o=we(s,n);a!==o&&(Bt(e,t,n,o,a),Se(s,n,a))},Mt=(e,t,s,n,a)=>k(we(t,s),(t=>kt(e,s,t,n,a)),(()=>Et(e,t,s,Tt({[n]:a},e,s)))),Dt=e=>re(e)?Ms():Cs(e),Jt=e=>Re(ee,e,((e,t,s)=>At(t,s)),((e,t)=>Pt(t))),At=(e,t)=>{le(ee,e)||Ht(e,1);const s=we(ee,e);t!==s&&($t(e,s,t),Se(ee,e,t))},Ft=(e,t)=>{const[s]=we(X,e),n=s(t);return le(we(Z,e),n)?Ft(e,t):n},Qt=e=>we(Z,e)??xt(e,{}),zt=e=>xt(e,{}),Nt=(e,t,s)=>{const[,n]=we(X,e);n(s),Et(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=we(we($,e)?.[0],a);if(!E(r)&&!o)return kt(e,s,n,a,r);const i=t=>{Bt(e,s,t,we(n,t)),_t(e,s,t,-1),Se(n,t)};E(r)?i(a):Ie(n,i),ce(n)&&(Wt(e,s,-1),ce(Se(t,s))&&(jt(e,-1),Se(Z,e),Se(X,e),Se(Y,e)))},Pt=e=>{const t=we(K,e);if(!E(t))return At(e,t);$t(e,we(ee,e)),Ht(e,-1),Se(ee,e)},jt=(e,t)=>st(v,e,t),Wt=(e,t,s)=>st(ve(x,e,fe),t,s)&&Se(m,e,ve(m,e,(()=>0))+s),_t=(e,t,s,n)=>{const a=we(Y,e),o=we(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(ve(V,e,fe),s,n),Se(a,s,o!=-n?o+n:null),st(ve(ve(J,e,fe),t,fe),s,n)},Bt=(e,t,s,n,a)=>ve(ve(ve(F,e,fe),t,fe),s,(()=>[n,0]))[1]=a,Ht=(e,t)=>st(Q,e,t),$t=(e,t,s)=>ve(N,e,(()=>[t,0]))[1]=s,qt=(e,t,s,n,a)=>(q(ve(ve(ve(P,e,fe),t,fe),s,(()=>[])),n),a),Gt=(e,t,s)=>(q(ve(B,e,(()=>[])),t),s),Kt=(e,t,s)=>k(we(we(we(F,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(hs(e,t,s))])),Ut=e=>k(we(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(Ls(e))])),Xt=e=>ce(P)||ce(Ge[e])?0:he(e?Ve(P):P,((t,s)=>he(t,((t,n)=>he(t,((t,a)=>gt(Ge[e],[s,n,a],t))))))),Yt=e=>ce(B)||ce(at[e])?0:he(e?Ce(B):B,((t,s)=>gt(at[e],[s],t))),Zt=(e,t,s,n)=>{if(!ce(e))return gt(t,n,(()=>pe(e))),Ie(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=o&&gt(se[e],void 0,t);const s=ce(We[e]),n=ce(He[e])&&ce($e[e])&&ce(je[e])&&ce(_e[e])&&ce(Fe[e])&&ce(Qe[e])&&ce(Oe[e])&&s&&ce(me[e])&&ce(Je[e]),a=ce(qe[e])&&ce(Be[e])&&ce(Ae[e])&&ce(de[e]);if(!n||!a){const t=e?[Ce(v),be(V),Ce(m),be(x),Ve(J),Ve(F)]:[v,V,m,x,J,F];if(!n){Zt(t[0],me[e],Je[e]),he(t[1],((t,s)=>Zt(t,Fe[e],Qe[e],[s]))),he(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const n=Me();he(t[3],((t,a)=>{Zt(t,je[e],_e[e],[a])&&!s&&(gt(We[e],[a,null]),De(n,a))})),s||he(t[5],((t,s)=>{if(!le(n,s)){const n=Me();he(t,(e=>he(e,(([t,s],a)=>s!==t?De(n,a):ge(e,a))))),he(n,(t=>gt(We[e],[s,t])))}})),he(t[4],((t,s)=>he(t,((t,n)=>Zt(t,He[e],$e[e],[s,n])))))}if(!a){let s;he(t[5],((t,n)=>{let a;he(t,((t,o)=>{let r;he(t,(([t,i],l)=>{i!==t&&(gt(qe[e],[n,o,l],i,t,Kt),s=a=r=1)})),r&&gt(Be[e],[n,o],Kt)})),a&&gt(Ae[e],[n],Kt)})),s&&gt(de[e],void 0,Kt)}}},ts=e=>{const t=ps();t!=c&&gt(ot[e],void 0,t);const s=ce(it[e])&&ce(lt[e]),n=ce(ct[e])&&ce(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(N)]:[Q,N];if(s||Zt(t[0],it[e],lt[e]),!n){let s;he(t[1],(([t,n],a)=>{n!==t&&(gt(ct[e],[a],n,t,Ut),s=1)})),s&&gt(rt[e],void 0,Ut)}}},ss=(e,...t)=>(As((()=>e(..._(t,b)))),zs),ns=()=>[pe(F,((e,t)=>-1===we(v,t)?null:pe(e,((e,s)=>-1===we(we(x,t),s)?null:pe(e,(([,e])=>e??null),((e,t)=>Ye(t)))),re)),re),pe(N,(([,e])=>e??null),((e,t)=>Ye(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:ye(F,Xe,Ye),invalidCells:ye(P),changedValues:pe(N,Xe,Ye),invalidValues:pe(B),changedTableIds:pe(v),changedRowIds:Te(x),changedCellIds:ye(J),changedValueIds:pe(Q)}),os=()=>ye(Z),rs=()=>Le(Z),is=e=>Le(we(Y,b(e))),ls=e=>ie(we(Z,b(e))),cs=e=>Le(we(Z,b(e))),ds=(e,t,s,n=0,a)=>{return _(A(j((o=we(Z,b(e)),r=(e,s)=>[E(t)?s:we(e,b(t)),s],_([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Pe(e,t)*(s?-1:1))),n,E(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>Le(we(we(Z,b(e)),b(t))),hs=(e,t,s)=>we(we(we(Z,b(e)),b(t)),b(s)),gs=()=>pe(ee),fs=()=>Le(ee),Ls=e=>we(ee,b(e)),ws=()=>!ce(Z),Is=e=>le(Z,b(e)),Ss=(e,t)=>le(we(Y,b(e)),b(t)),vs=(e,t)=>le(we(Z,b(e)),b(t)),Rs=(e,t,s)=>le(we(we(Z,b(e)),b(t)),b(s)),ps=()=>!ce(ee),Ts=e=>le(ee,b(e)),ys=e=>ss((()=>(e=>tt(e,It,qt))(e)?mt(e):0)),Cs=e=>ss((()=>Rt(e)?Jt(e):0)),bs=e=>{try{Vt(et(e))}catch{}return zs},Vs=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(Ct(t),!ce(Z))){const e=os();xs(),ys(e)}})),ms=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();Js(),Ms(),t=!0,bt(e),Cs(s)}})),xs=()=>ss((()=>mt({}))),Es=e=>ss((e=>le(Z,e)?zt(e):0),e),ks=(e,t)=>ss(((e,t)=>k(we(Z,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),Ms=()=>ss((()=>Jt({}))),Ds=()=>ss((()=>{Ct({}),e=!1})),Js=()=>ss((()=>{bt({}),t=!1})),As=(e,t)=>{if(-1!=h){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=h&&h++,1==h&&gt(dt,void 0,ns,as),zs),Qs=e=>(h>0&&(h--,0==h&&(s=!ce(F),n=!ce(N),h=1,Xt(1),s&&es(1),Yt(1),n&&ts(1),e?.(ns,as)&&(he(F,((e,t)=>he(e,((e,s)=>he(e,(([e],n)=>Ee(zs,t,s,n,e))))))),he(N,(([e],t)=>ke(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),h=-1,Xt(0),s&&es(0),Yt(0),n&&ts(0),gt(ut[1],void 0,ns,as),h=0,s=n=!1,o=ws(),c=ps(),W([v,V,m,x,J,F,P,Q,N,B],ue))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Te(we(Z,b(e))),getTableCellIds:is,getRowCount:ls,getRowIds:cs,getSortedRowIds:ds,getRow:(e,t)=>pe(we(we(Z,b(e)),b(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:Is,hasTableCell:Ss,hasRow:vs,hasCell:Rs,hasValues:ps,hasValue:Ts,getTablesJson:()=>Ze(Z),getValuesJson:()=>Ze(ee),getJson:()=>Ze([Z,ee]),getTablesSchemaJson:()=>Ze(H),getValuesSchemaJson:()=>Ze(G),getSchemaJson:()=>Ze([H,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(re(e)?xs:ys)(e),(re(t)?Ms:Cs)(t)})),setTables:ys,setTable:(e,t)=>ss((e=>It(t,e)?xt(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>St(e,t,s)?Et(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return St(e,n,t)&&(e=b(e),Et(e,Qt(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(St(e,t,s,1)){const n=Qt(e);oe(s,((s,a)=>Mt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>k(vt(e,t,s,D(n)?n(hs(e,t,s)):n),(n=>Mt(e,Qt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>ss((()=>Rt(e,1)?oe(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ss((e=>k(pt(e,D(t)?t(Ls(e)):t),(t=>At(e,t)))),e),setTransactionChanges:e=>ss((()=>{oe(e[0],((e,t)=>E(e)?Es(t):oe(e,((e,s)=>E(e)?ks(t,s):oe(e,((e,n)=>Ee(zs,t,s,n,e))))))),oe(e[1],((e,t)=>ke(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Dt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);Vt(t),Dt(s)}catch{bs(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>ss((()=>{Vs(e),ms(t)})),delTables:xs,delTable:Es,delRow:ks,delCell:(e,t,s,n)=>ss(((e,t,s)=>k(we(Z,e),(a=>k(we(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:Ms,delValue:e=>ss((e=>le(ee,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Js,delSchema:()=>ss((()=>{Ds(),Js()})),transaction:As,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>he(Z,((t,s)=>e(s,(e=>he(t,((t,s)=>e(s,(e=>Ie(t,e))))))))),forEachTableCell:(e,t)=>Ie(we(Y,b(e)),t),forEachRow:(e,t)=>he(we(Z,b(e)),((e,s)=>t(s,(t=>Ie(e,t))))),forEachCell:(e,t,s)=>Ie(we(we(Z,b(e)),b(t)),s),forEachValue:e=>Ie(ee,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let i=ds(e,t,s,n,a);return ht((()=>{const r=ds(e,t,s,n,a);O(r,i)||(i=r,o(zs,e,t,s,n,a,i))}),We[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Lt(e),zs),delListener:e=>(ft(e),zs),getListenerStats:()=>({}),createStore:nt,addListener:ht,callListeners:gt};return oe({[u+f]:[0,se,[],()=>[ws()]],[f]:[0,de],[L]:[0,me],[u+g]:[1,Je,[rs],e=>[Is(...e)]],[g]:[1,Ae,[rs]],[g+p]:[1,Fe,[rs]],[u+g+R]:[2,Qe,[rs,is],e=>[Ss(...e)]],[I]:[1,Oe,[rs]],[S]:[1,je,[rs]],[u+w]:[2,_e,[rs,cs],e=>[vs(...e)]],[w]:[2,Be,[rs,cs]],[p]:[2,He,[rs,cs]],[u+R]:[3,$e,[rs,cs,us],e=>[Rs(...e)]],[R]:[3,qe,[rs,cs,us],e=>Ke(hs(...e))],InvalidCell:[3,Ge],[u+y]:[0,ot,[],()=>[ps()]],[y]:[0,rt],[C]:[0,it],[u+T]:[1,lt,[fs],e=>[Ts(...e)]],[T]:[1,ct,[fs],e=>Ke(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[d+a+l]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?A(a,0,e):void 0,s,n)})),te(zs)};exports.createCheckpoints=Oe,exports.createCustomPersister=(e,t,s,n,a,o,[r,i]=[],l=[])=>{let c,d,u,h=0,g=0;ve(He,l,(()=>0)),ve($e,l,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();re(s)&&re(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(k(c,e.delListener),c=void 0,L),schedule:async(...e)=>(q(we($e,l),...e),await(async()=>{if(!we(He,l)){for(Se(He,l,1);!E(d=K(we($e,l)));)try{await d()}catch(e){o?.(e)}Se(He,l,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>i),te(L)},exports.createIndexes=je,exports.createMetrics=Be,exports.createQueries=qe,exports.createRelationships=Ge,exports.createStore=nt,exports.defaultSorter=Pe;
Binary file
package/lib/cjs/tools.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",g=h+i,m="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,L=async e=>V.all(e),N=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},D=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.keys,Q=U.freeze,q=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),K=(e,l)=>M(U.entries(e),(([e,t])=>l(t,e))),X=e=>E(Z(e)),Y=e=>q(e)&&0==X(e),ee=(e,l)=>e?.has(l)??!1,le=e=>[...e?.values()??[]],te=(e,l)=>e?.forEach(l),ae=(e,l)=>e?.delete(l),ne=e=>new Map(e),de=(e,l)=>e?.get(l),oe=(e,l)=>te(e,((e,t)=>l(t,e))),se=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),re=(e,l,t)=>R(t)?(ae(e,l),e):e?.set(l,t),Ie=(e,l,t)=>(ee(e,l)||re(e,l,t()),de(e,l)),$e=e=>e.toUpperCase(),ce=e=>e.toLowerCase(),ue="a ",ie="A function for",be=", and registers a listener so that any changes to that result will cause a re-render",pe="Callback",Ce="Count",he="Del",ge="Deps",me=ge+"?: React.DependencyList",we="doRollback?: DoRollback",fe="actions: () => Return, "+we,Te="export",ye="Id",ve="Invalid",Ve="Json",xe=ce(I),Re="?: ",Ae=" | undefined",ke="NonNullable",Se="Partial",Pe="Props",Oe="Provider",Ee=`Registers a ${xe} that will be called`,Le="Represents",Ne="rowId: "+ye,De="Schema",Ge="Set",je=", descending?: boolean, offset?: number, limit?: number",He="[]",Me="the Store",Je="Transaction",ze=Je+"Changes",We=ce(Je),Be="Execute a "+We+" to make multiple mutations",Fe="Explicitly starts a "+We,Ue="Explicitly finishes a "+We,_e="the end of the "+We,Ze="void",Qe=" => "+Ze,qe="WhenSet",Ke=" when setting it",Xe=ue+"string serialization of",Ye=" ",el="Gets a callback that can ",ll="the ",tl=" the schema for",al=(e=0)=>e?"the existence of ":"",nl=(e=0,l=0,a=0)=>al(a)+`the ${Tl[e]}content of`+(l?Ye+Me:t),dl=(e=0,l,a=0,n=0)=>ml[l]+Ye+al(n)+nl(e,1)+(a?" when setting it":t),ol=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${nl()} the '${e}' `+b,sl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,rl=(e,l)=>`Calls a function for each ${e} in `+l,Il=e=>"The props passed to a component that renders "+e,$l=e=>"A function that takes "+e,cl=(e,l=0,t=0)=>ie+" listening to changes to "+al(t)+fl[e]+" in "+fl[l],ul=(e,l,a=0,n=0)=>Ee+" whenever "+al(n)+fl[e]+" in "+fl[l]+" change"+(a?t:"s"),il=e=>`the '${e}' `+b,bl=e=>"the specified Row in "+il(e),pl=(e,l=0,t=0)=>ml[l]+Ye+nl(0,0,t)+Ye+il(e),Cl=(e,l=0,t=0)=>ml[l]+` ${nl(0,0,t)} `+bl(e),hl=(e,l,t=0,a=0)=>ml[t]+Ye+al(a)+`the '${l}' Cell for `+bl(e),gl=(e,l=0,t=0)=>ml[l]+Ye+al(t)+`the '${e}' Value`,ml=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Xe,"Sets "+Xe,Ee+" whenever",el+"set",el+"add",el+"set part of",el+"delete","Renders","Gets "+Xe+tl,"Sets"+tl,"Deletes"+tl],wl=[$,"has","set","del","set","forEach",c,t],fl=[Me,p,ll+b+Ye+i,ue+b,ll+h+Ye+i,ue+h,ll+w+Ye+i,ue+w,"invalid Cell changes",y,ll+T+Ye+i,ue+T,"invalid Value changes",ll+"sorted "+h+Ye+i,ll+w+Ye+i+" anywhere",ll+"number of Rows",ue+w+" anywhere"],Tl=[t,"tabular ","keyed value "],yl=e=>new Set(P(e)||R(e)?e:[e]),vl=(e,l)=>e?.add(l),Vl=/[^A-Za-z]+/,xl=/[^A-Za-z0-9]+/,Rl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Al=e=>e.includes(a),kl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return ee(e,n)?kl(e,l,t,a+1):(re(e,n,t),n)},Sl=e=>e.replace(Rl,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Pl=e=>e.flat(1e3),Ol=(e,l=0)=>H(M(e.split(xl),((e,t)=>(t>0||l?$e:ce)(O(e,0,1))+O(e,1)))),El=e=>$e(H((e&&!Vl.test(e[0])?e:" "+e).split(xl),"_")),Ll=e=>`/** ${e}. */`,Nl=(...e)=>H(J(e,(e=>e)),", "),Dl=(...e)=>"{"+H(e,"; ")+"}",Gl=(...e)=>Dl(...M(e,(e=>"readonly "+e))),jl=()=>{const e=[ne(),ne(),ne(),ne()],l=ne(),a=ne(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Pl(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?vl(Ie(e[n],t,yl),a):0)))),(e,a,n,d=t,o=1)=>kl(l,e,[a,n,d,o]),(e,l,t)=>kl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>de(a,e)===l?e:kl(a,e,l),(l=0)=>M([...G(se(e[l],((e,l)=>`import {${H(G(le(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Al(e)!=Al(l)?Al(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>se(l,(([e,l,a,n],d)=>[Ll(l),`${n?Te+" ":t}type ${d}${a} = ${e};`,t])),()=>se(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Hl=e=>{const l=new WeakMap;return t=>(l.has(t)||l.set(t,e(t)),l.get(t))},Ml=(e,l,t)=>[l=>K(e,((e,a)=>l(a,Ol(a,1),t(El(a),`'${a}'`)))),(l,a)=>K(e[l],((e,l)=>a(l,e[s],e[r],t(El(l),`'${l}'`),Ol(l,1)))),e=>K(l,((l,a)=>e(a,l[s],l[r],t(El(a),`'${a}'`),Ol(a,1))))],Jl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),dl(1,5)),r=e(p+qe,Dl(...l((e=>`'${e}'?: {[rowId: Id]: `+Dl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),dl(1,5,1)),$=e(b+ye,"keyof "+s,"A "+b+" Id in "+Me),c=`<TId extends ${$}>`,i=e(b,ke+`<${s}[TId]>`,"A "+b+" in "+Me,c),T=e(b+qe,ke+`<${r}[TId]>`,"A "+b+" in "+Me+Ke,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+qe,T+"<TId>[Id]","A "+h+" in a "+b+Ke,c),V=e(w+ye,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,ke+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+pe,`(...[cellId, cell]: ${A}<TId>)`+Qe,$l(ue+w+" Id, and "+w),c),S=e(h+pe,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Qe+") "+Qe,$l(ue+h+" Id, and a "+w+" iterator"),c),P=e(b+w+pe,`(cellId: ${V}<TId>, count: number) `+Qe,$l(ue+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+pe,`(...[tableId, forEachRow]: ${O})`+Qe,$l(ue+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,ie+" returning information about any Cell's changes during a "+We),D=e(u+p+I,`(${o}, hasTables: boolean)`+Qe,cl(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${N}${Ae})`+Qe,cl(1)),j=e(C+I,`(${o})`+Qe,cl(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+Qe,cl(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${N}${Ae})`+Qe,cl(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+Qe,cl(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Qe,cl(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+Qe,cl(15,3)),U=e(g+I,`(${o}, tableId: ${$})`+Qe,cl(4,3)),_=e(m+I,"("+Nl(o,"tableId: "+$,"cellId: Id"+Ae,"descending: boolean","offset: number","limit: number"+Ae,"sortedRowIds: Ids")+")"+Qe,cl(13,3)),Z=e(u+h+I,"("+Nl(""+o,"tableId: "+$,Ne,"hasRow: boolean")+")"+Qe,cl(5,3,1)),Q=e(h+I,"("+Nl(""+o,"tableId: "+$,Ne,`getCellChange: ${N}${Ae}`)+")"+Qe,cl(5,3)),q=e(f+I,"("+Nl(""+o,"tableId: "+$,Ne)+")"+Qe,cl(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Qe,cl(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ne}, cellId: CId, newCell: ${x}<TId, CId> ${Ae}, oldCell: ${x}<TId, CId> ${Ae}, getCellChange: ${N} ${Ae}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Qe,cl(7,5)),e(ve+w+I,`(${o}, tableId: Id, ${Ne}, cellId: Id, invalidCells: any[])`+Qe,cl(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Dl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),dl(2,5)),s=e(y+qe,Dl(...n(((e,l)=>`'${e}'?: ${l}`))),dl(2,5,1)),r=e(T+ye,"keyof "+o,"A "+T+" Id in "+Me),$=e(T,ke+`<${o}[VId]>`,"A "+T+" Id in "+Me,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+Me,`<VId = ${r}>`,0),i=e(T+pe,`(...[valueId, value]: ${c})`+Qe,$l(ue+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ie+" returning information about any Value's changes during a "+We),p=e(u+y+I,`(${d}, hasValues: boolean)`+Qe,cl(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Ae})`+Qe,cl(9)),h=e(v+I,`(${d})`+Qe,cl(10)),g=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+Qe,cl(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Ae}, oldValue: ${$}<VId> ${Ae}, getValueChange: ${b} ${Ae}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,g,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+Qe,cl(11)),e(ve+T+I,`(${d}, valueId: Id, invalidValues: any[])`+Qe,cl(12))]},(l,t)=>e(Je+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Qe,ie+" listening to the completion of a "+We)],zl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Wl=(e,l=t)=>`fluent(() => ${zl(e,l)})`,Bl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Fl=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=jl(),[E,L,N]=Ml(e,a,A),[D,G,M]=Jl(V,E,L,N),J=ne(),W=(e=0)=>se(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Ll(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>kl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(wl[e]+l+(4==e?Se:t)+a,o,n,(n==Q?Wl:zl)(wl[e]+(4==e?Se:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+xe+": "+l+(o?", mutator?: boolean":t),ye,Bl(c+e+I,d,o?"mutator":t),a,s),Z=`./${Ol(n)}.d`,Q=Ol(n,1),q=Ol(Q),K=[],X=ne();let ee=[],te=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),Y(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue]=D(q,Q),ie=ne();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+qe,I+t,Le+` the '${e}' `+b+Ke),V(l+h,c+t,ol(e)),V(l+h+qe,T+t,ol(e,1)),V(l+w+ye,y+t,`A Cell Id for the '${e}' `+b),V(l+w+pe,x+t,$l(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+pe,k+t,$l(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+pe,P+t,$l(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];re(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ue),ee=[e,a,n,y,N,G,M,J,W,B,F,Y,te,ae,oe,se,Ie,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,dl(1,n),l,a))),U(0,t,C,n+He,sl(b,Me)),U(5,t,b,Ze,rl(b,Me),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=de(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,pl(e,s),d,a+o))),U(0,l,b+f,i,sl(w,"the whole of "+il(e)),t,a),U(5,l,b+w,Ze,rl(b+w,"the whole of "+il(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+Ce,"number","Gets the number of Rows in the "+il(e),t,a),U(0,l,g,i,sl(h,il(e)),t,a),U(0,l,m,i,sl(h,il(e),1),"cellId?: "+I+je,a+", cellId, descending, offset, limit"),U(5,l,h,Ze,rl(h,il(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,Cl(e,s),Ne+d,a+", rowId"+o))),U(6,l,h,ye+Ae,"Add a new Row to "+il(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+He,sl(w,bl(e)),Ne,a+", rowId"),U(5,l,w,Ze,rl(w,bl(e)),Ne+", cellCallback: "+$,a+", rowId, cellCallback as any"),L(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);re(X,o,$);const c=o+(R(s)?Ae:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,hl(e,n,$),Ne+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,ml[1]+` the '${n}' Cell anywhere in `+il(e),t,a+", "+r)}))})),U(0,t,p+Ve,Ve,dl(1,6)),U(2,t,p+Ve,Q,dl(1,7),"tablesJson: "+Ve,"tables"+Ve),_(u+p,N,dl(1,8,0,1)+" changes"),_(p,G,dl(1,8)+" changes"),_(C,M,ul(2,0,1)),_(u+b,J,ul(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,ul(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,ul(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,ul(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+Ce,Y,ul(15,3),`tableId: ${n} | null`,"tableId"),_(g,te,ul(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,ae,ul(13,3,1),Nl("tableId: TId",`cellId: ${y}<TId>`+Ae,"descending: boolean","offset: number","limit: number"+Ae),Nl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,oe,ul(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,ul(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Ie,ul(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,ul(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,ul(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>de(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(ve+w,ue,Ee+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...le(X)),z(K,".set"+p+De+"({",Pl(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Y(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),te=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,dl(2,n),l,a))),U(0,t,v,n+He,sl(T,Me)),U(5,t,T,"void",rl(T,Me),"valueCallback: "+I,"valueCallback as any"),N(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);re(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Ve,Ve,dl(2,6)),U(2,t,y+Ve,Q,dl(2,7),"valuesJson: "+Ve,"values"+Ve),_(u+y,c,dl(2,8,0,1)+" changes"),_(y,i,dl(2,8)+" changes"),_(v,b,ul(10,0,1)),_(u+T,p,ul(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,ul(11,0),`valueId: ${n} | null`,"valueId"),_(ve+T,h,Ee+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...le(X)),$(0,l,"ValueChange"),z(K,".set"+y+De+"({",N(((e,l,a,n)=>[`[${n}]: {[${A(El(s),`'${s}'`)}]: ${A(El(l),`'${l}'`)}${R(a)?t:`, [${A(El(r),`'${r}'`)}]: `+(S(a)?A(El(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,dl(0,0)),U(2,t,"Content",Q,dl(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,t,ze,Q,`Applies a set of ${ze} to the Store`,"transactionChanges: "+ze,"transactionChanges"),oe(X,((e,l)=>V(l,`(cell: ${e}${Ae}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",ye,"IdOrNull",Ve,"Store",ze),$(0,l,"Get"+ze,"GetTransactionLog"),U(0,t,Ve,Ve,dl(0,6)),U(2,t,Ve,Q,dl(0,7),"tablesAndValuesJson: "+Ve,"tablesAndValuesJson"),U(7,t,We,"Return",Be,fe,"actions, doRollback","<Return>"),U(7,t,"start"+Je,Q,Fe),U(7,t,"finish"+Je,Q,Ue,we,"doRollback");const ae=M(q,Q);return _("Start"+Je,ae,Ee+" just before the start of the "+We,t,t,0),_("WillFinish"+Je,ae,Ee+" just before "+_e,t,t,0),_("DidFinish"+Je,ae,Ee+" just after "+_e,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Me,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",ml[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),Te+" interface "+Q+" {",...W(0),"}",t,Ll(`Creates a ${Q} object`),Te+" function create"+Q+"(): "+Q+";"),o(...k(1),Te+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),ee,te]},Ul=e=>$+e,_l=e=>Nl(Ul(e),Ul(e)+ge),Zl="debugIds?: boolean",Ql="debugIds={debugIds}",ql="then"+me,Kl="Parameter",Xl=": (parameter: "+Kl+", store: Store) => ",Yl="const contextValue = useContext(Context);",et=", based on a parameter",lt=": ",tt="<"+Kl+",>",at=Kl+"ized"+pe+"<"+Kl+">",nt="rowId",dt="rowId={rowId}",ot=", separator, debugIds",st="separator?: ReactElement | string",rt="then?: (store: Store",It=Nl(rt+")"+Qe,ql),$t="then, then"+ge,ct=nt+lt+ye,ut="View",it=(e,...l)=>Nl(...l,xe+": "+e,xe+me,"mutator?: boolean"),bt=(...e)=>Nl(...e,xe,xe+ge,"mutator"),pt=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=jl(),[O,E,L]=Ml(e,a,A),N=`./${Ol(n)}.d`,D=`./${Ol(n)}-ui-react.d`,G="tinybase/ui-react",j=Ol(n,1),M=Ol(j),J=j+"Or"+j+ye,W=M+"Or"+j+ye,F=M+`={${M}}`,U=ne(),_=(e,l,a,n,d,o=t)=>(c(1,D,e+" as "+e+"Decl"),kl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Nl(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>se(U,(([l,a,n,d,o],s)=>{const r=e?[Te+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[Te+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Ll(d)),z(r,t),r}));c(null,l,ye,"Store",pe,Kl+"ized"+pe),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=V(J,j+" | "+ye,`Used when you need to refer to a ${j} in a React hook or component`),ee=V(Oe+Pe,Gl(M+Re+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Oe} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,ee);const le=W+Re+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+me,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Ae,["{",Yl,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Oe} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),oe=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=x("wrap",Nl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Nl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!Y(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,L,G,J,z,W,B,U,_]=s;c(null,N,e,a,n,$,T,y,v,A,k,S,P,L,G,J,z,W,U,B),c(0,N,r),c(1,N,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+ot+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+oe+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",dt,"customCellIds={customCellIds}",F,Ql,"/>","))",ot,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,dl(1,0,0,1)+be),Q(p,p,e,dl(1,0)+be);const Y=Q(C,C,n+He,sl(b,Me)+be);Q(Ge+p+pe,Ge+p+pe,at,dl(1,9)+et,Nl(Ul(p)+Xl+a,Ul(p)+me),_l(p),tt,Nl(rt,`tables: ${a})`+Qe,ql),$t),Q(he+p+pe,he+p+pe,pe,dl(1,12),t,t,t,It,$t);const ee=V(w+Pe,Gl("tableId?: TId","rowId: Id","cellId?: CId",M+Re+j,Zl),Il(ue+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Pe,Gl("tableId?: TId","rowId: Id",M+Re+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,st,Zl),Il(ue+h),`<TId extends ${n}>`),te=V(b+Pe,Gl("tableId?: TId",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Pe,Gl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+Re+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",st,Zl),Il(ue+"sorted "+b),`<TId extends ${n}>`),ne=V(p+Pe,Gl(M+Re+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,st,Zl),Il(nl(1,1)));c(1,D,ne,te,ae,le,ee),q(p+ut,"{"+M+", tableComponents, getTableComponentProps"+ot+"}: "+ne,[re+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${oe}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,Ql,"/>;","}), separator)"],dl(1,13)+be),O(((e,l,a)=>{const[n,s,r,I,$]=de(_,e);c(null,N,n,s,r,I,$),Q(u+l+b,u+b,d,pl(e,0,1)+be,t,a),Q(l+b,b,n,pl(e)+be,t,a),Q(l+b+f,b+f,i,sl(w,"the whole of "+il(e))+be,t,a),Q(l+h+Ce,h+Ce,o,"Gets the number of Rows in "+il(e)+be,t,a);const p=Q(l+g,g,i,sl(h,il(e))+be,t,a),C=Q(l+m,m,i,sl(h,il(e),1)+be,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,Cl(e,0,1)+be,ct,Nl(a,nt)),Q(l+h,h,r,Cl(e)+be,ct,Nl(a,nt)),Q(l+f,f,$+He,sl(w,bl(e))+be,ct,Nl(a,nt)),Q(Ge+l+b+pe,Ge+b+pe,at,pl(e,9)+et,Nl(Ul(b)+Xl+s,Ul(b)+me),Nl(a,_l(b)),tt,Nl(rt,`table: ${s})`+Qe,ql),$t),Q(he+l+b+pe,he+b+pe,pe,pl(e,12),t,a,t,It,$t),Q(Ge+l+h+pe,Ge+h+pe,at,Cl(e,9)+et,Nl(ct,Ul(h)+Xl+I,Ul(h)+me),Nl(a,nt,_l(h)),tt,Nl(rt,`row: ${I})`+Qe,ql),$t),Q("Add"+l+h+pe,"Add"+h+pe,at,Cl(e,10)+et,Nl(Ul(h)+Xl+I,Ul(h)+me),Nl(a,_l(h)),tt,"then?: ("+Nl(ct+Ae,"store: Store","row: "+I+")"+Qe,"then"+me)+", reuseRowIds?: boolean",$t+", reuseRowIds"),Q(Ge+l+Se+h+pe,Ge+Se+h+pe,at,Cl(e,11)+et,Nl(ct,Ul(Se+h)+Xl+I,Ul(Se+h)+me),Nl(a,nt,_l(Se+h)),tt,Nl(rt,`partialRow: ${I})`+Qe,ql),$t),Q(he+l+h+pe,he+h+pe,pe,Cl(e,12),ct,Nl(a,nt),t,It,$t);const T=q(l+h+ut,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+ot+`}: ${le}<'${e}'>`,[re+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${oe}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,dt,"cellId={cellId}",F,Ql,"/>;","})"+ot+", rowId)"],Cl(e,13)+be);q(l+"Sorted"+b+ut,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,pl(e,13)+", sorted"+be),q(l+b+ut,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,pl(e,13)+be),E(e,((n,o,s,r,I)=>{const $="Map"+Ol(o,1);c(0,N,$),c(1,N,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${al(1)}the '${n}' Cell anywhere in `+il(e)+be,t,Nl(a,r)),Q(u+l+I+w,u+w,d,hl(e,n,0,1)+be,ct,Nl(a,nt,r));const i=Q(l+I+w,w,o+(R(s)?Ae:t),hl(e,n)+be,ct,Nl(a,nt,r));Q(Ge+l+I+w+pe,Ge+w+pe,at,hl(e,n,9)+et,Nl(ct,Ul(w)+Xl+o+" | "+$,Ul(w)+me),Nl(a,nt,r,_l(w)),tt,Nl(rt,`cell: ${o} | ${$})`+Qe,ql),$t),Q(he+l+I+w+pe,he+w+pe,pe,hl(e,n,12),Nl(ct,"forceDel?: boolean"),Nl(a,nt,r,"forceDel"),t,It,$t),q(l+I+w+ut,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[re+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],hl(e,n,13)+be)}))}));const se=H(O((e=>de(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Ze,dl(1,8,0,1)+" changes",it($),bt()),Q(p+I,p+I,Ze,dl(1,8)+" changes",it(T),bt()),Q(C+I,C+I,Ze,ul(2,0,1),it(y),bt()),Q(u+b+I,u+b+I,Ze,ul(3,0,0,1),it(v,`tableId: ${n} | null`),bt("tableId")),Q(b+I,b+I,Ze,ul(3,0),it(A,`tableId: ${n} | null`),bt("tableId")),Q(b+f+I,b+f+I,Ze,ul(14,3,1),it(k,`tableId: ${n} | null`),bt("tableId")),Q(u+b+w+I,u+b+w+I,Ze,ul(16,3,0,1),it(S,`tableId: ${n} | null`,`cellId: ${se} | null`),bt("tableId","cellId")),Q(h+Ce+I,h+Ce+I,Ze,ul(15,3),it(P,`tableId: ${n} | null`),bt("tableId")),Q(g+I,g+I,Ze,ul(4,3,1),it(L,`tableId: ${n} | null`),bt("tableId")),Q(m+I,m+I,Ze,ul(13,3,1),it(G,`tableId: ${n} | null`,"cellId: "+se+Ae,"descending: boolean","offset: number","limit: number"+Ae),bt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Ze,ul(5,3,0,1),it(J,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(h+I,h+I,Ze,ul(5,3),it(z,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(f+I,f+I,Ze,ul(6,5,1),it(W,`tableId: ${n} | null`,nt+": IdOrNull"),bt("tableId",nt)),Q(u+w+I,u+w+I,Ze,ul(7,5,0,1),it(B,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId")),Q(w+I,w+I,Ze,ul(7,5),it(U,`tableId: ${n} | null`,nt+": IdOrNull",`cellId: ${se} | null`),bt("tableId",nt,"cellId"))}if(!Y(a)){const[e,l,a,n,o,s,$,i]=r;c(null,N,...r),c(1,N,j);const b=x("getDefaultValueComponent","valueId: Id",H(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,dl(2,0,0,1)+be),Q(y,y,e,dl(2,0)+be);const p=Q(v,v,a+He,sl(T,Me)+be);Q(Ge+y+pe,Ge+y+pe,at,dl(2,9)+et,Nl(Ul(y)+Xl+l,Ul(y)+me),_l(y),tt,Nl(rt,`values: ${l})`+Qe,ql),$t),Q(Ge+Se+y+pe,Ge+Se+y+pe,at,dl(2,11)+et,Nl(Ul(Se+y)+Xl+l,Ul(Se+y)+me),_l(Se+y),tt,Nl(rt,`partialValues: ${l})`+Qe,ql),$t),Q(he+y+pe,he+y+pe,pe,dl(2,12),t,t,t,It,$t);const C=V(T+Pe,Gl("valueId?: VId",M+Re+j,Zl),Il("a Value"),`<VId extends ${a}>`),h=V(y+Pe,Gl(M+Re+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,st,Zl),Il(nl(2,1)));c(1,D,h,C),q(y+ut,"{"+M+", valueComponents, getValueComponentProps"+ot+"}: "+h,[re+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${oe}(getValueComponentProps, valueId)}`,"key={valueId}",F,Ql,"/>;","}), separator)"],dl(2,13)+be),L(((e,l,a,n,o)=>{const s="Map"+Ol(l,1);c(0,N,s),c(1,N,s),Q(u+o+T,u+T,d,gl(e,0,1)+be,t,n);const r=Q(o+T,T,l,gl(e)+be,t,n);Q(Ge+o+T+pe,Ge+T+pe,at,gl(e,9)+et,Nl(Ul(T)+Xl+l+" | "+s,Ul(T)+me),Nl(n,_l(T)),tt,Nl(rt,`value: ${l} | ${s})`+Qe,ql),$t),Q(he+o+T+pe,he+T+pe,pe,gl(e,12),t,n,t,It,$t),q(o+T+ut,`{${M}, debugIds}: ${C}<'${e}'>`,[re+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+be)})),Q(u+y+I,u+y+I,Ze,dl(2,8,0,1)+" changes",it(n),bt()),Q(y+I,y+I,Ze,dl(2,8)+" changes",it(o),bt()),Q(v+I,v+I,Ze,ul(10,0,1),it(s),bt()),Q(u+T+I,u+T+I,Ze,ul(11,0,0,1),it($,`valueId: ${a} | null`),bt("valueId")),Q(T+I,T+I,Ze,ul(11,0),it(i,`valueId: ${a} | null`),bt("valueId"))}return q(Oe,`{${M}, ${M}ById, children}: `+ee+" & {children: React.ReactNode}",["{",Yl,"return (","<Context."+Oe,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Oe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},Ct=(e,l,a)=>{if(Y(e)&&Y(l))return[t,t,t,t];const[n,d,o,s]=Fl(e,l,a);return[n,d,...pt(e,l,a,o,s)]},ht=JSON.parse,gt="prettier/",mt=gt+"plugins/",wt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ft=Hl((e=>{const l=()=>{const l=ht(e.getTablesSchemaJson());return!Y(l)||D(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=ne();if(D(a,(l=>D(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=Ie(n,a,(()=>[N(d),ne(),[0],0])),[s,r,[I]]=o,$=Ie(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),re(r,d,$),o[3]++,s==N(d)})))))return l[t]={},te(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=ht(e.getValuesSchemaJson());return Y(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:N(t)}})),l},a=e=>Ct(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(mt+"estree"),await import(mt+"typescript"))}catch(e){n=async e=>e}return await L(M(a(e),(async(e,a)=>Sl(await n(e,{...wt,plugins:t,filepath:"_."+l[a]})))))};return Q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=ft;
1
+ "use strict";const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",g=h+i,m="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,L=async e=>V.all(e),N=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},D=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.entries,Q=U.keys,q=U.freeze,K=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),X=(e,l)=>M(Z(e),(([e,t])=>l(t,e))),Y=e=>E(Q(e)),ee=e=>K(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>R(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t)=>(le(e,l)||Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Count",ge="Del",me="Deps",we=me+"?: React.DependencyList",fe="doRollback?: DoRollback",Te="actions: () => Return, "+fe,ye="export",ve="Id",Ve="Invalid",xe="Json",Re=ue(I),Ae="?: ",ke=" | undefined",Se="NonNullable",Pe="Partial",Oe="Props",Ee="Provider",Le=`Registers a ${Re} that will be called`,Ne="Represents",De="rowId: "+ve,Ge="Schema",je="Set",He=", descending?: boolean, offset?: number, limit?: number",Me="[]",Je="the Store",ze="Transaction",We=ze+"Changes",Be=ue(ze),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,a=0)=>nl(a)+`the ${yl[e]}content of`+(l?el+Je:t),ol=(e=0,l,a=0,n=0)=>wl[l]+el+nl(n)+dl(e,1)+(a?" when setting it":t),sl=(e,l=0)=>Ne+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+b,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,a=0,n=0)=>Le+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>wl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>wl[l]+` ${dl(0,0,t)} `+pl(e),gl=(e,l,t=0,a=0)=>wl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),ml=(e,l=0,t=0)=>wl[l]+el+nl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ne,"Gets "+Ye,"Sets "+Ye,Le+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],fl=[$,"has","set","del","set","forEach",c,t],Tl=[Je,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+w+el+i,ie+w,"invalid Cell changes",y,tl+T+el+i,ie+T,"invalid Value changes",tl+"sorted "+h+el+i,tl+w+el+i+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[t,"tabular ","keyed value "],vl=e=>new Set(P(e)||R(e)?e:[e]),Vl=(e,l)=>e?.add(l),xl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(a),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>H(M(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(O(e,0,1))+O(e,1)))),Ll=e=>ce(H((e&&!xl.test(e[0])?e:" "+e).split(Rl),"_")),Nl=e=>`/** ${e}. */`,Dl=(...e)=>H(J(e,(e=>e)),", "),Gl=(...e)=>"{"+H(e,"; ")+"}",jl=(...e)=>Gl(...M(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),a=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Ol(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?Vl($e(e[n],t,vl),a):0)))),(e,a,n,d=t,o=1)=>Sl(l,e,[a,n,d,o]),(e,l,t)=>Sl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>oe(a,e)===l?e:Sl(a,e,l),(l=0)=>M([...G(re(e[l],((e,l)=>`import {${H(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,a,n],d)=>[Nl(l),`${n?ye+" ":t}type ${d}${a} = ${e};`,t])),()=>re(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Ml=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Ll(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[s],e[r],t(Ll(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[s],l[r],t(Ll(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),ol(1,5)),r=e(p+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),$=e(b+ve,"keyof "+s,"A "+b+" Id in "+Je),c=`<TId extends ${$}>`,i=e(b,Se+`<${s}[TId]>`,"A "+b+" in "+Je,c),T=e(b+Ke,Se+`<${r}[TId]>`,"A "+b+" in "+Je+Xe,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+Ke,T+"<TId>[Id]","A "+h+" in a "+b+Xe,c),V=e(w+ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,Se+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${A}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+w+" iterator"),c),P=e(b+w+Ce,`(cellId: ${V}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),D=e(u+p+I,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${N}${ke})`+qe,ul(1)),j=e(C+I,`(${o})`+qe,ul(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${N}${ke})`+qe,ul(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+qe,ul(15,3)),U=e(g+I,`(${o}, tableId: ${$})`+qe,ul(4,3)),_=e(m+I,"("+Dl(o,"tableId: "+$,"cellId: Id"+ke,"descending: boolean","offset: number","limit: number"+ke,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(u+h+I,"("+Dl(""+o,"tableId: "+$,De,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(h+I,"("+Dl(""+o,"tableId: "+$,De,`getCellChange: ${N}${ke}`)+")"+qe,ul(5,3)),q=e(f+I,"("+Dl(""+o,"tableId: "+$,De)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, newCell: ${x}<TId, CId> ${ke}, oldCell: ${x}<TId, CId> ${ke}, getCellChange: ${N} ${ke}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(Ve+w+I,`(${o}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Gl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),ol(2,5)),s=e(y+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(T+ve,"keyof "+o,"A "+T+" Id in "+Je),$=e(T,Se+`<${o}[VId]>`,"A "+T+" Id in "+Je,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+Je,`<VId = ${r}>`,0),i=e(T+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(u+y+I,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${ke})`+qe,ul(9)),h=e(v+I,`(${d})`+qe,ul(10)),g=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${ke}, oldValue: ${$}<VId> ${ke}, getValueChange: ${b} ${ke}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,g,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+qe,ul(11)),e(Ve+T+I,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(ze+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=Hl(),[E,L,N]=Jl(e,a,A),[D,G,M]=zl(V,E,L,N),J=de(),W=(e=0)=>re(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Nl(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>Sl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(fl[e]+l+(4==e?Pe:t)+a,o,n,(n==Q?Bl:Wl)(fl[e]+(4==e?Pe:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+Re+": "+l+(o?", mutator?: boolean":t),ve,Fl(c+e+I,d,o?"mutator":t),a,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=D(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Ne+` the '${e}' `+b),V(l+b+Ke,I+t,Ne+` the '${e}' `+b+Xe),V(l+h,c+t,sl(e)),V(l+h+Ke,T+t,sl(e,1)),V(l+w+ve,y+t,`A Cell Id for the '${e}' `+b),V(l+w+Ce,x+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+Ce,P+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,a,n,y,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,ol(1,n),l,a))),U(0,t,C,n+Me,rl(b,Je)),U(5,t,b,Qe,Il(b,Je),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=oe(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,Cl(e,s),d,a+o))),U(0,l,b+f,i,rl(w,"the whole of "+bl(e)),t,a),U(5,l,b+w,Qe,Il(b+w,"the whole of "+bl(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+he,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,g,i,rl(h,bl(e)),t,a),U(0,l,m,i,rl(h,bl(e),1),"cellId?: "+I+He,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,hl(e,s),De+d,a+", rowId"+o))),U(6,l,h,ve+ke,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+Me,rl(w,pl(e)),De,a+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),De+", cellCallback: "+$,a+", rowId, cellCallback as any"),L(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);Ie(X,o,$);const c=o+(R(s)?ke:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,gl(e,n,$),De+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,wl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+r)}))})),U(0,t,p+xe,xe,ol(1,6)),U(2,t,p+xe,Q,ol(1,7),"tablesJson: "+xe,"tables"+xe),_(u+p,N,ol(1,8,0,1)+" changes"),_(p,G,ol(1,8)+" changes"),_(C,M,il(2,0,1)),_(u+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+he,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,ae,il(13,3,1),Dl("tableId: TId",`cellId: ${y}<TId>`+ke,"descending: boolean","offset: number","limit: number"+ke),Dl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(Ve+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...te(X)),z(K,".set"+p+Ge+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${A(Ll(s),`'${s}'`)}]: ${A(Ll(l),`'${l}'`)}${R(a)?t:`, [${A(Ll(r),`'${r}'`)}]: `+(S(a)?A(Ll(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,ol(2,n),l,a))),U(0,t,v,n+Me,rl(T,Je)),U(5,t,T,"void",Il(T,Je),"valueCallback: "+I,"valueCallback as any"),N(((e,l,a,n,o)=>{const s="Map"+El(l,1);Ie(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,ml(e,s),a,n+d)))})),U(0,t,y+xe,xe,ol(2,6)),U(2,t,y+xe,Q,ol(2,7),"valuesJson: "+xe,"values"+xe),_(u+y,c,ol(2,8,0,1)+" changes"),_(y,i,ol(2,8)+" changes"),_(v,b,il(10,0,1)),_(u+T,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(Ve+T,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...te(X)),$(0,l,"ValueChange"),z(K,".set"+y+Ge+"({",N(((e,l,a,n)=>[`[${n}]: {[${A(Ll(s),`'${s}'`)}]: ${A(Ll(l),`'${l}'`)}${R(a)?t:`, [${A(Ll(r),`'${r}'`)}]: `+(S(a)?A(Ll(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,ol(0,0)),U(2,t,"Content",Q,ol(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,t,We,Q,`Applies a set of ${We} to the Store`,"transactionChanges: "+We,"transactionChanges"),se(X,((e,l)=>V(l,`(cell: ${e}${ke}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",ve,"IdOrNull",xe,"Store",We),$(0,l,"Get"+We,"GetTransactionLog"),U(0,t,xe,xe,ol(0,6)),U(2,t,xe,Q,ol(0,7),"tablesAndValuesJson: "+xe,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,Te,"actions, doRollback","<Return>"),U(7,t,"start"+ze,Q,Ue),U(7,t,"finish"+ze,Q,_e,fe,"doRollback");const ae=M(q,Q);return _("Start"+ze,ae,Le+" just before the start of the "+Be,t,t,0),_("WillFinish"+ze,ae,Le+" just before "+Ze,t,t,0),_("DidFinish"+ze,ae,Le+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Je,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",wl[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),ye+" interface "+Q+" {",...W(0),"}",t,Nl(`Creates a ${Q} object`),ye+" function create"+Q+"(): "+Q+";"),o(...k(1),ye+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>$+e,Zl=e=>Dl(_l(e),_l(e)+me),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+we,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Dl(It+")"+qe,Kl),ct="then, then"+me,ut=dt+tt+ve,it="View",bt=(e,...l)=>Dl(...l,Re+": "+e,Re+we,"mutator?: boolean"),pt=(...e)=>Dl(...e,Re,Re+me,"mutator"),Ct=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=Hl(),[O,E,L]=Jl(e,a,A),N=`./${El(n)}.d`,D=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),M=El(j),J=j+"Or"+j+ve,W=M+"Or"+j+ve,F=M+`={${M}}`,U=de(),_=(e,l,a,n,d,o=t)=>(c(1,D,e+" as "+e+"Decl"),Sl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Dl(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,a,n,d,o],s)=>{const r=e?[ye+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[ye+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Nl(d)),z(r,t),r}));c(null,l,ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=V(J,j+" | "+ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=V(Ee+Oe,jl(M+Ae+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Ee} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,Y);const le=W+Ae+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+we,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+ke,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ee} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),ne=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=x("wrap",Dl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Dl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!ee(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,L,G,J,z,W,B,U,_]=s;c(null,N,e,a,n,$,T,y,v,A,k,S,P,L,G,J,z,W,U,B),c(0,N,r),c(1,N,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",F,ql,"/>","))",st,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,ol(1,0,0,1)+pe),Q(p,p,e,ol(1,0)+pe);const Y=Q(C,C,n+Me,rl(b,Je)+pe);Q(je+p+Ce,je+p+Ce,nt,ol(1,9)+lt,Dl(_l(p)+Yl+a,_l(p)+we),Zl(p),at,Dl(It,`tables: ${a})`+qe,Kl),ct),Q(ge+p+Ce,ge+p+Ce,Ce,ol(1,12),t,t,t,$t,ct);const ee=V(w+Oe,jl("tableId?: TId","rowId: Id","cellId?: CId",M+Ae+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Oe,jl("tableId?: TId","rowId: Id",M+Ae+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+h),`<TId extends ${n}>`),te=V(b+Oe,jl("tableId?: TId",M+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Oe,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+b),`<TId extends ${n}>`),de=V(p+Oe,jl(M+Ae+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,D,de,te,ae,le,ee),q(p+it,"{"+M+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,a)=>{const[n,s,r,I,$]=oe(_,e);c(null,N,n,s,r,I,$),Q(u+l+b,u+b,d,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+f,b+f,i,rl(w,"the whole of "+bl(e))+pe,t,a),Q(l+h+he,h+he,o,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+g,g,i,rl(h,bl(e))+pe,t,a),C=Q(l+m,m,i,rl(h,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,hl(e,0,1)+pe,ut,Dl(a,dt)),Q(l+h,h,r,hl(e)+pe,ut,Dl(a,dt)),Q(l+f,f,$+Me,rl(w,pl(e))+pe,ut,Dl(a,dt)),Q(je+l+b+Ce,je+b+Ce,nt,Cl(e,9)+lt,Dl(_l(b)+Yl+s,_l(b)+we),Dl(a,Zl(b)),at,Dl(It,`table: ${s})`+qe,Kl),ct),Q(ge+l+b+Ce,ge+b+Ce,Ce,Cl(e,12),t,a,t,$t,ct),Q(je+l+h+Ce,je+h+Ce,nt,hl(e,9)+lt,Dl(ut,_l(h)+Yl+I,_l(h)+we),Dl(a,dt,Zl(h)),at,Dl(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Dl(_l(h)+Yl+I,_l(h)+we),Dl(a,Zl(h)),at,"then?: ("+Dl(ut+ke,"store: Store","row: "+I+")"+qe,"then"+we)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(je+l+Pe+h+Ce,je+Pe+h+Ce,nt,hl(e,11)+lt,Dl(ut,_l(Pe+h)+Yl+I,_l(Pe+h)+we),Dl(a,dt,Zl(Pe+h)),at,Dl(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+h+Ce,ge+h+Ce,Ce,hl(e,12),ut,Dl(a,dt),t,$t,ct);const T=q(l+h+it,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ot,"cellId={cellId}",F,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,Cl(e,13)+pe),E(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);c(0,N,$),c(1,N,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Dl(a,r)),Q(u+l+I+w,u+w,d,gl(e,n,0,1)+pe,ut,Dl(a,dt,r));const i=Q(l+I+w,w,o+(R(s)?ke:t),gl(e,n)+pe,ut,Dl(a,dt,r));Q(je+l+I+w+Ce,je+w+Ce,nt,gl(e,n,9)+lt,Dl(ut,_l(w)+Yl+o+" | "+$,_l(w)+we),Dl(a,dt,r,Zl(w)),at,Dl(It,`cell: ${o} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,gl(e,n,12),Dl(ut,"forceDel?: boolean"),Dl(a,dt,r,"forceDel"),t,$t,ct),q(l+I+w+it,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+pe)}))}));const re=H(O((e=>oe(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Qe,ol(1,8,0,1)+" changes",bt($),pt()),Q(p+I,p+I,Qe,ol(1,8)+" changes",bt(T),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(y),pt()),Q(u+b+I,u+b+I,Qe,il(3,0,0,1),bt(v,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(A,`tableId: ${n} | null`),pt("tableId")),Q(b+f+I,b+f+I,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(u+b+w+I,u+b+w+I,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(h+he+I,h+he+I,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(4,3,1),bt(L,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+ke,"descending: boolean","offset: number","limit: number"+ke),pt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(f+I,f+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(u+w+I,u+w+I,Qe,il(7,5,0,1),bt(B,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+I,w+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(a)){const[e,l,a,n,o,s,$,i]=r;c(null,N,...r),c(1,N,j);const b=x("getDefaultValueComponent","valueId: Id",H(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,ol(2,0,0,1)+pe),Q(y,y,e,ol(2,0)+pe);const p=Q(v,v,a+Me,rl(T,Je)+pe);Q(je+y+Ce,je+y+Ce,nt,ol(2,9)+lt,Dl(_l(y)+Yl+l,_l(y)+we),Zl(y),at,Dl(It,`values: ${l})`+qe,Kl),ct),Q(je+Pe+y+Ce,je+Pe+y+Ce,nt,ol(2,11)+lt,Dl(_l(Pe+y)+Yl+l,_l(Pe+y)+we),Zl(Pe+y),at,Dl(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+y+Ce,ge+y+Ce,Ce,ol(2,12),t,t,t,$t,ct);const C=V(T+Oe,jl("valueId?: VId",M+Ae+j,Ql),$l("a Value"),`<VId extends ${a}>`),h=V(y+Oe,jl(M+Ae+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,D,h,C),q(y+it,"{"+M+", valueComponents, getValueComponentProps"+st+"}: "+h,[se+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",F,ql,"/>;","}), separator)"],ol(2,13)+pe),L(((e,l,a,n,o)=>{const s="Map"+El(l,1);c(0,N,s),c(1,N,s),Q(u+o+T,u+T,d,ml(e,0,1)+pe,t,n);const r=Q(o+T,T,l,ml(e)+pe,t,n);Q(je+o+T+Ce,je+T+Ce,nt,ml(e,9)+lt,Dl(_l(T)+Yl+l+" | "+s,_l(T)+we),Dl(n,Zl(T)),at,Dl(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+o+T+Ce,ge+T+Ce,Ce,ml(e,12),t,n,t,$t,ct),q(o+T+it,`{${M}, debugIds}: ${C}<'${e}'>`,[se+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],ml(e,13)+pe)})),Q(u+y+I,u+y+I,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(y+I,y+I,Qe,ol(2,8)+" changes",bt(o),pt()),Q(v+I,v+I,Qe,il(10,0,1),bt(s),pt()),Q(u+T+I,u+T+I,Qe,il(11,0,0,1),bt($,`valueId: ${a} | null`),pt("valueId")),Q(T+I,T+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ee,`{${M}, ${M}ById, children}: `+Y+" & {children: React.ReactNode}",["{",et,"return (","<Context."+Ee,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Ee}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,d,o,s]=Ul(e,l,a);return[n,d,...Ct(e,l,a,o,s)]},gt=JSON.parse,mt="prettier/",wt=mt+"plugins/",ft={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!ee(l)||D(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(D(a,(l=>D(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[N(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==N(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:N(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(mt+"standalone")).format,z(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await L(M(a(e),(async(e,a)=>Pl(await n(e,{...ft,plugins:t,filepath:"_."+l[a]})))))};return q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=Tt;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),o=s(0),r=s(s),i="type",d="default",u="Has",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,w="Cell",f=w+c,y="Value",C=y+"s",v=y+c,k="currentTarget",T="value",x=e=>l+e,S=Math.floor,V=isFinite,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==r,M=e=>Array.isArray(e),E=(e,t,s)=>e.slice(t,s),z=e=>e.length,{PureComponent:$,Fragment:O,createElement:A,useCallback:F,useLayoutEffect:J,useRef:P,useState:H}=e,B=(e,...t)=>R(e)?{}:e(...t),D=(e,t)=>e.sort(t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==z(e),G=(e,...t)=>e.push(...t),K=e=>e.shift(),U=Object,X=e=>U.getPrototypeOf(e),Y=U.keys,Z=U.isFrozen,_=U.freeze,ee=e=>!R(e)&&q(X(e),(e=>e==U.prototype||R(X(e))),(()=>!0)),te=(e=[])=>U.fromEntries(e),se=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),ae=(e,t)=>j(U.entries(e),(([e,s])=>t(s,e))),ne=e=>ee(e)&&0==(e=>z(Y(e)))(e),oe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?U.fromEntries([...t]):t)),re=JSON.parse,ie="tinybaseStoreInspector",de="TinyBase Store Inspector",ue=["left","top","bottom","right","full"],ce="state",he="sort",me="open",be="position",ge=me,pe="editable",Ie=(...e)=>oe(e),we=(e,t)=>j(D(e),t),fe=(e,s)=>[!!t.useCell(ce,e,pe,s),F((t=>{s.setCell(ce,e,pe,(e=>!e)),t.preventDefault()}),[s,e])],ye="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Ce='content:url("',ve=Ce+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ke='</svg>")',Te=Ce+"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\")",xe=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])=>ve+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ke)),Se=ve+"<path d='M20 20l60 60M20 80l60-60' />"+ke,Ve=ve+`<path d='${ye}' />`+ke,Re=ve+`<path d='${ye}M20 20l60 60' />`+ke,qe="*::-webkit-scrollbar",Ne=((e,t="")=>e.join(t))(ae({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[qe]:"width:0.5rem;height:0.5rem;",[qe+"-track"]:"background:#111",[qe+"-thumb"]:"background:#999;border:1px solid #111",[qe+"-thumb:hover"]:"background:#fff",[qe+"-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;"+Te,...te(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;",...te(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)":Te,"header>img:nth-of-type(6)":Se,...te(j(xe,((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":Ve,"details[open]>summary img.done":Re,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,#${ie} 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?`#${ie} ${t}{${e}}`:""))),Le=({s:e})=>{const s=t.useValue(be,e)??1,l=t.useSetValueCallback(ge,(()=>!0),[],e);return t.useValue(ge,e)?null:A("img",{onClick:l,title:de,"data-position":s})},Me=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!t.useCell(ce,e,me,o),i=t.useSetCellCallback(ce,e,me,(e=>e[k].open),[],o);return A("details",{open:r,onToggle:i},A("summary",null,s,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},Ee=e=>{const t=s(e);return N(t)||t==o&&V(e)?t:void 0},ze=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),$e=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),Oe=(e,t,s,l)=>e==a?t:e==o?s:l,{useCallback:Ae,useMemo:Fe,useState:Je}=e,Pe="editable",He=(e,s)=>j(t.useTableCellIds(e,s),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Ae(e,t);return s?l:void 0},De=(...e)=>Fe((()=>e),e),Qe=(e,t)=>Fe((()=>({store:e,tableId:t})),[e,t]),je=(e,t)=>Fe((()=>({queries:e,queryId:t})),[e,t]),We=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Je([e,t,l]),h=Ae((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Ae((e=>h([i,d,e])),[h,i,d]),g=!0===o?nt:o;return[[i,d,u],m,Fe((()=>!1===o?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ge=(e,t,l)=>Fe((()=>{const n=t??e;return te(ae(M(n)?te(j(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),Ke=({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(Ue,{sort:o??[],label:"Id",onClick:r}),ae(l,(({label:e},t)=>A(Ue,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),A("tbody",null,j(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),ae(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...B(s,e,l),...a,rowId:e,cellId:l}))))))))),Ue=({cellId:e,sort:[t,s],label:a=e??l,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?"↓":"↑")+" ",a),Xe=({localRowId:s,params:[l,a,n,o,r,i,d]})=>{const u=t.useRemoteRowId(r,s,i);return A("tr",null,!1===l?null:A(e.Fragment,null,A("th",null,s),A("th",null,u)),ae(a,(({component:e,getComponentProps:t},l)=>{const[a,r]=l.split(".",2),i=a===n?s:a===o?u:null;return R(i)?null:A("td",{key:l},A(e,{...B(t,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Ye=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:r=!0})=>{const[i,d]=Je(),[u,c]=Je(),[h,m]=Je(),[b,g]=Je(),[p,I]=Je();u!==e&&(d(Ee(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=Ae(((e,s)=>{s(e),c(e),t(e)}),[t]),f=Ae((()=>{if(!l?.()){const e=Oe(i,o,n,a),s=Oe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},r?A("button",{className:i,onClick:f},i):null,Oe(i,A("input",{key:i,value:h,onChange:Ae((e=>w(e[k][T]+"",m)),[w])}),A("input",{key:i,type:"number",value:b,onChange:Ae((e=>w(Number(e[k][T]||0),g)),[w])}),A("input",{key:i,type:"checkbox",checked:p,onChange:Ae((e=>w(!!e[k].checked,I)),[w])})))},Ze=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=We(s,l,i,a,n,t.useRowCount(e,o),d,u);return A(Ke,{...h,params:De(Ge(t.useTableCellIds(e,o),c,r?lt:t.CellView),Qe(o,e),t.useSortedRowIds(e,...m,n,o),m,b,g)})},_e=({store:e,editable:s=!1,valueComponent:l=(s?at:t.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,y))),A("tbody",null,j(t.useValueIds(e),(t=>A("tr",{key:t},!1===r?null:A("th",null,t),A("td",null,A(l,{...B(a,t),valueId:t,store:e}))))))),et=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return A(Ke,{...o,params:De(Ge(t.useTableCellIds(d,i),n,a?lt:t.CellView),Qe(i,d),t.useSliceRowIds(e,s,r))})},tt=({relationshipId:s,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)])(t.useRelationshipsOrRelationshipsById(l),s),m=Ge([...He(c,u),...He(h,u)],n,a?lt:t.CellView),b=De(i,m,c,h,s,d,u);return A("table",{className:o},!1===r?null:A("thead",null,A("tr",null,!1===i?null:A(e.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),ae(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,j(t.useRowIds(c,u),(e=>A(Xe,{key:e,localRowId:e,params:b})))))},st=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=We(s,l,r,a,n,t.useResultRowCount(e,o),i,u);return A(Ke,{...c,params:De(Ge(t.useResultTableCellIds(e,o),d,t.ResultCellView),je(o,e),t.useResultSortedRowIds(e,...h,n,o),h,m,b)})},lt=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:o})=>A(Ye,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Pe+w,showType:o,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),at=({valueId:e,store:s,className:l,showType:a})=>A(Ye,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Pe+y,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),nt=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const r=Be((()=>t(l-a)),[t,l,a],l>0),i=Be((()=>t(l+a)),[t,l,a],l+a<s);return A(e.Fragment,null,s>a&&A(e.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick: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)},ot=({indexes:e,indexesId:s,indexId:l,s:a})=>A(Me,{uniqueId:Ie("i",s,l),summary:"Index: "+l,s:a},j(t.useSliceIds(l,e),(t=>A(rt,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),rt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=Ie("i",t,s,l),[o,r]=fe(n,a);return A(Me,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},A(et,{sliceId:l,indexId:s,indexes:e,editable:o}))},it=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:A(Me,{uniqueId:Ie("i",e),summary:"Indexes: "+(e??d),s:s},W(a)?"No indexes defined":we(a,(t=>A(ot,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},dt=({metrics:e,metricId:s})=>A("tr",null,A("th",null,s),A("td",null,e?.getTableId(s)),A("td",null,t.useMetric(s,e))),ut=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:A(Me,{uniqueId:Ie("m",e),summary:"Metrics: "+(e??d),s:s},W(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,j(a,(e=>A(dt,{metrics:l,metricId:e,key:e}))))))},ct=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=Ie("q",s,l),[o,r,i]=re(t.useCell(ce,n,he,a)??"[]"),d=t.useSetCellCallback(ce,n,he,oe,[],a);return A(Me,{uniqueId:n,summary:"Query: "+l,s:a},A(st,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ht=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:A(Me,{uniqueId:Ie("q",e),summary:"Queries: "+(e??d),s:s},W(a)?"No queries defined":we(a,(t=>A(ct,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},mt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=Ie("r",t,s),[n,o]=fe(a,l);return A(Me,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},A(tt,{relationshipId:s,relationships:e,editable:n}))},bt=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:A(Me,{uniqueId:Ie("r",e),summary:"Relationships: "+(e??d),s:s},W(a)?"No relationships defined":we(a,(t=>A(mt,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},gt=({tableId:e,store:s,storeId:l,s:a})=>{const n=Ie("t",l,e),[o,r,i]=re(t.useCell(ce,n,he,a)??"[]"),d=t.useSetCellCallback(ce,n,he,oe,[],a),[u,c]=fe(n,a);return A(Me,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},A(Ze,{tableId:e,store:s,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},pt=({store:e,storeId:s,s:l})=>{const a=Ie("v",s),[n,o]=fe(a,l);return W(t.useValueIds(e))?null:A(Me,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},A(_e,{store:e,editable:n}))},It=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:A(Me,{uniqueId:Ie("s",e),summary:"Store: "+(e??d),s:s},A(pt,{storeId:e,store:l,s:s}),we(a,(t=>A(gt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},wt=({s:e})=>{const s=P(null),l=P(0),[a,n]=H(!1),{scrollLeft:o,scrollTop:r}=t.useValues(e);J((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=S(o)+e.clientWidth&&e.scrollHeight>=S(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=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return R(d)&&W(u)&&R(c)&&W(h)&&R(m)&&W(b)&&R(g)&&W(p)&&R(I)&&W(w)?A("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):A("article",{ref:s,onScroll:i},A(It,{s:e}),j(u,(t=>A(It,{storeId:t,s:e,key:t}))),A(ut,{s:e}),j(h,(t=>A(ut,{metricsId:t,s:e,key:t}))),A(it,{s:e}),j(b,(t=>A(it,{indexesId:t,s:e,key:t}))),A(bt,{s:e}),j(p,(t=>A(bt,{relationshipsId:t,s:e,key:t}))),A(ht,{s:e}),j(w,(t=>A(ht,{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 s=t.useValue(be,e)??1,l=t.useSetValueCallback(ge,(()=>!1),[],e),a=t.useSetValueCallback(be,(e=>Number(e[k].dataset.id)),[],e);return A("header",null,A("img",{title:de}),A("span",null,de),j(ue,((e,t)=>t==s?null:A("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),A("img",{onClick:l,title:"Close"}))},Ct=({s:e})=>{const s=t.useValue(be,e)??1;return t.useValue(ge,e)?A("main",{"data-position":s},A(yt,{s:e}),A(ft,null,A(wt,{s:e}))):null},vt=e=>t=>{return s=(t,s)=>t+e(s),qt(t).reduce(s,0);var s},kt=e=>e?.size??0,Tt=vt(kt),xt=vt(Tt),St=vt(xt),Vt=(e,t)=>e?.has(t)??!1,Rt=e=>R(e)||0==kt(e),qt=e=>[...e?.values()??[]],Nt=e=>e.clear(),Lt=(e,t)=>e?.forEach(t),Mt=(e,t)=>e?.delete(t),Et=e=>new Map(e),zt=e=>[...e?.keys()??[]],$t=(e,t)=>e?.get(t),Ot=(e,t)=>Lt(e,((e,s)=>t(s,e))),At=(e,t,s)=>R(s)?(Mt(e,t),e):e?.set(t,s),Ft=(e,t,s)=>(Vt(e,t)||At(e,t,s()),$t(e,t)),Jt=(e,t,s,l=At)=>(ae(t,((t,l)=>s(e,l,t))),Ot(e,(s=>se(t,s)?0:l(e,s))),e),Pt=(e,t,s)=>{const l={};return Lt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Ht=(e,t,s)=>Pt(e,(e=>Pt(e,t,s)),ne),Bt=(e,t,s)=>Pt(e,(e=>Ht(e,t,s)),ne),Dt=(e,t)=>{const s=Et();return Lt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Qt=e=>Dt(e,Dt),jt=e=>Dt(e,Qt),Wt=(e,t,s,l,a=0)=>q((s?Ft:$t)(e,t[a],a>z(t)-2?s:Et),(n=>{if(a>z(t)-2)return l?.(n)&&At(e,t[a]),n;const o=Wt(n,t,s,l,a+1);return Rt(n)&&At(e,t[a]),o})),Gt=Et(),Kt=Et(),Ut="storage",Xt=globalThis.window,Yt=e=>new Set(M(e)||R(e)?e:[e]),Zt=(e,t)=>e?.add(t),_t=/^\d+$/,es=()=>{const e=[];let t=0;return[s=>(s?K(e):null)??l+t++,t=>{_t.test(t)&&z(e)<1e3&&G(e,t)}]},ts=e=>[e,e],ss=(e,t=Tt)=>t(e[0])+t(e[1]),ls=()=>[Et(),Et()],as=e=>[...e],ns=([e,t])=>e===t,os=(e,t,s)=>R(e)||!ee(e)||ne(e)||Z(e)?(s?.(),!1):(ae(e,((s,l)=>{t(s,l)||le(e,l)})),!ne(e)),rs=(e,t,s)=>At(e,t,$t(e,t)==-s?void 0:s),is=()=>{let e,t,s=!1,a=!1,n=!1,r=!1,c=0;const k=Et(),T=Et(),S=Et(),V=Et(),M=Et(),$=Et(),O=Et(),A=Et(),F=Et(),J=Et(),P=Et(),H=Et(),B=Et(),W=Et(),K=Yt(),U=Et(),X=Et(),Y=Et(),Z=Et(),ee=ls(),te=ls(),ie=ls(),de=ls(),ue=ls(),ce=ls(),he=ls(),me=ls(),be=ls(),ge=ls(),pe=ls(),Ie=ls(),we=ls(),fe=ls(),ye=ls(),Ce=ls(),ve=ls(),ke=ls(),Te=ls(),xe=ls(),Se=ls(),Ve=ls(),Re=Et(),qe=ls(),[Ne,Le,Me,Oe]=(e=>{let t;const[s,a]=es(),n=Et();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const d=s(1);return At(n,d,[e,a,o,r,i]),Zt(Wt(a,o??[l],Yt),d),d},(e,s,...a)=>Q(((e,t=[l])=>{const s=[],a=(e,l)=>l==z(t)?G(s,e):null===t[l]?Lt(e,(e=>a(e,l+1))):Q([t[l],null],(t=>a($t(e,t),l+1)));return a(e,0),s})(e,s),(e=>Lt(e,(e=>$t(n,e)[0](t,...s??[],...a))))),e=>q($t(n,e),(([,t,s])=>(Wt(t,s??[l],void 0,(t=>(Mt(t,e),Rt(t)?1:0))),At(n,e),a(e),s))),e=>q($t(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=z(o);r==z(s)?e(t,...o,...a(o)):R(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ae=e=>{if(!os(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=o||(Ee(e[d])!=t&&le(e,d),0))},Fe=(t,s)=>(!e||Vt(P,s)||bt(s))&&os(t,((e,t)=>Je(s,t,e)),(()=>bt(s))),Je=(e,t,s,l)=>os(l?s:De(s,e,t),((l,a)=>q(Pe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Pe=(t,s,l,a)=>e?q($t($t(P,t),l),(e=>Ee(a)!=e[i]?bt(t,s,l,a,e[d]):a),(()=>bt(t,s,l,a))):R(Ee(a))?bt(t,s,l,a):a,He=(e,t)=>os(t?e:Qe(e),((t,s)=>q(Be(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>gt())),Be=(e,s)=>t?q($t(B,e),(t=>Ee(s)!=t[i]?gt(e,s,t[d]):s),(()=>gt(e,s))):R(Ee(s))?gt(e,s):s,De=(e,t,s)=>(q($t(H,t),(([l,a])=>{Lt(l,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(a,(l=>{se(e,l)||bt(t,s,l)}))})),e),Qe=e=>(t&&(Lt(W,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(K,(t=>{se(e,t)||gt(t)}))),e),je=e=>Jt(P,e,((e,t,s)=>{const l=Et(),a=Yt();Jt(Ft(P,t,Et),s,((e,t,s)=>{At(e,t,s),q(s[d],(e=>At(l,t,e)),(()=>Zt(a,t)))})),At(H,t,[l,a])}),((e,t)=>{At(P,t),At(H,t)})),We=e=>Jt(B,e,((e,t,s)=>{At(B,t,s),q(s[d],(e=>At(W,t,e)),(()=>Zt(K,t)))}),((e,t)=>{At(B,t),At(W,t),Mt(K,t)})),Ge=e=>ne(e)?qs():Ts(e),Ke=e=>Jt(Y,e,((e,t,s)=>Ue(t,s)),((e,t)=>at(t))),Ue=(e,t)=>Jt(Ft(Y,e,(()=>(it(e,1),At(U,e,es()),At(X,e,Et()),Et()))),t,((t,s,l)=>Xe(e,t,s,l)),((t,s)=>nt(e,t,s))),Xe=(e,t,s,l,a)=>Jt(Ft(t,s,(()=>(dt(e,s,1),Et()))),l,((t,l,a)=>Ye(e,s,t,l,a)),((l,n)=>ot(e,t,s,l,n,a))),Ye=(e,t,s,l,a)=>{Vt(s,l)||ut(e,t,l,1);const n=$t(s,l);a!==n&&(ct(e,t,l,n,a),At(s,l,a))},Ze=(e,t,s,l,a)=>q($t(t,s),(t=>Ye(e,s,t,l,a)),(()=>Xe(e,t,s,De({[l]:a},e,s)))),_e=e=>ne(e)?Ms():xs(e),et=e=>Jt(Z,e,((e,t,s)=>tt(t,s)),((e,t)=>rt(t))),tt=(e,t)=>{Vt(Z,e)||ht(e,1);const s=$t(Z,e);t!==s&&(mt(e,s,t),At(Z,e,t))},st=(e,t)=>{const[s]=$t(U,e),l=s(t);return Vt($t(Y,e),l)?st(e,t):l},lt=e=>$t(Y,e)??Ue(e,{}),at=e=>Ue(e,{}),nt=(e,t,s)=>{const[,l]=$t(U,e);l(s),Xe(e,t,s,{},!0)},ot=(e,t,s,l,a,n)=>{const o=$t($t(H,e)?.[0],a);if(!R(o)&&!n)return Ye(e,s,l,a,o);const r=t=>{ct(e,s,t,$t(l,t)),ut(e,s,t,-1),At(l,t)};R(o)?r(a):Ot(l,r),Rt(l)&&(dt(e,s,-1),Rt(At(t,s))&&(it(e,-1),At(Y,e),At(U,e),At(X,e)))},rt=e=>{const t=$t(W,e);if(!R(t))return tt(e,t);mt(e,$t(Z,e)),ht(e,-1),At(Z,e)},it=(e,t)=>rs(k,e,t),dt=(e,t,s)=>rs(Ft(V,e,Et),t,s)&&At(S,e,Ft(S,e,(()=>0))+s),ut=(e,t,s,l)=>{const a=$t(X,e),n=$t(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&rs(Ft(T,e,Et),s,l),At(a,s,n!=-l?n+l:null),rs(Ft(Ft(M,e,Et),t,Et),s,l)},ct=(e,t,s,l,a)=>Ft(Ft(Ft($,e,Et),t,Et),s,(()=>[l,0]))[1]=a,ht=(e,t)=>rs(O,e,t),mt=(e,t,s)=>Ft(A,e,(()=>[t,0]))[1]=s,bt=(e,t,s,l,a)=>(G(Ft(Ft(Ft(F,e,Et),t,Et),s,(()=>[])),l),a),gt=(e,t,s)=>(G(Ft(J,e,(()=>[])),t),s),pt=(e,t,s)=>q($t($t($t($,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(ms(e,t,s))])),It=e=>q($t(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(ps(e))])),wt=e=>Rt(F)||Rt(Ce[e])?0:Lt(e?jt(F):F,((t,s)=>Lt(t,((t,l)=>Lt(t,((t,a)=>Le(Ce[e],[s,l,a],t))))))),ft=e=>Rt(J)||Rt(ve[e])?0:Lt(e?Dt(J):J,((t,s)=>Le(ve[e],[s],t))),yt=(e,t,s,l)=>{if(!Rt(e))return Le(t,l,(()=>Pt(e))),Ot(e,((e,t)=>Le(s,[...l??[],e],1==t))),1},Ct=e=>{const t=Is();t!=n&&Le(ee[e],void 0,t);const s=Rt(ge[e]),l=Rt(we[e])&&Rt(fe[e])&&Rt(be[e])&&Rt(pe[e])&&Rt(ce[e])&&Rt(he[e])&&Rt(me[e])&&s&&Rt(ie[e])&&Rt(de[e]),a=Rt(ye[e])&&Rt(Ie[e])&&Rt(ue[e])&&Rt(te[e]);if(!l||!a){const t=e?[Dt(k),Qt(T),Dt(S),Qt(V),jt(M),jt($)]:[k,T,S,V,M,$];if(!l){yt(t[0],ie[e],de[e]),Lt(t[1],((t,s)=>yt(t,ce[e],he[e],[s]))),Lt(t[2],((t,s)=>{0!=t&&Le(me[e],[s],ds(s))}));const l=Yt();Lt(t[3],((t,a)=>{yt(t,be[e],pe[e],[a])&&!s&&(Le(ge[e],[a,null]),Zt(l,a))})),s||Lt(t[5],((t,s)=>{if(!Vt(l,s)){const l=Yt();Lt(t,(e=>Lt(e,(([t,s],a)=>s!==t?Zt(l,a):Mt(e,a))))),Lt(l,(t=>Le(ge[e],[s,t])))}})),Lt(t[4],((t,s)=>Lt(t,((t,l)=>yt(t,we[e],fe[e],[s,l])))))}if(!a){let s;Lt(t[5],((t,l)=>{let a;Lt(t,((t,n)=>{let o;Lt(t,(([t,r],i)=>{r!==t&&(Le(ye[e],[l,n,i],r,t,pt),s=a=o=1)})),o&&Le(Ie[e],[l,n],pt)})),a&&Le(ue[e],[l],pt)})),s&&Le(te[e],void 0,pt)}}},vt=e=>{const t=vs();t!=r&&Le(ke[e],void 0,t);const s=Rt(xe[e])&&Rt(Se[e]),l=Rt(Ve[e])&&Rt(Te[e]);if(!s||!l){const t=e?[Dt(O),Dt(A)]:[O,A];if(s||yt(t[0],xe[e],Se[e]),!l){let s;Lt(t[1],(([t,l],a)=>{l!==t&&(Le(Ve[e],[a],l,t,It),s=1)})),s&&Le(Te[e],void 0,It)}}},qt=(e,...t)=>($s((()=>e(...j(t,x)))),Fs),Gt=()=>[Pt($,((e,t)=>-1===$t(k,t)?null:Pt(e,((e,s)=>-1===$t($t(V,t),s)?null:Pt(e,(([,e])=>e??null),((e,t)=>ns(t)))),ne)),ne),Pt(A,(([,e])=>e??null),((e,t)=>ns(t)))],Kt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Bt($,as,ns),invalidCells:Bt(F),changedValues:Pt(A,as,ns),invalidValues:Pt(J),changedTableIds:Pt(k),changedRowIds:Ht(V),changedCellIds:Bt(M),changedValueIds:Pt(O)}),Ut=()=>Bt(Y),Xt=()=>zt(Y),_t=e=>zt($t(X,x(e))),ds=e=>kt($t(Y,x(e))),us=e=>zt($t(Y,x(e))),cs=(e,t,s,l=0,a)=>{return j(E(D((n=$t(Y,x(e)),o=(e,s)=>[R(t)?s:$t(e,x(t)),s],j([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,R(a)?a:l+a),(([,e])=>e));var n,o},hs=(e,t)=>zt($t($t(Y,x(e)),x(t))),ms=(e,t,s)=>$t($t($t(Y,x(e)),x(t)),x(s)),bs=()=>Pt(Z),gs=()=>zt(Z),ps=e=>$t(Z,x(e)),Is=()=>!Rt(Y),ws=e=>Vt(Y,x(e)),fs=(e,t)=>Vt($t(X,x(e)),x(t)),ys=(e,t)=>Vt($t(Y,x(e)),x(t)),Cs=(e,t,s)=>Vt($t($t(Y,x(e)),x(t)),x(s)),vs=()=>!Rt(Z),ks=e=>Vt(Z,x(e)),Ts=e=>qt((()=>(e=>os(e,Fe,bt))(e)?Ke(e):0)),xs=e=>qt((()=>He(e)?et(e):0)),Ss=e=>{try{Ge(re(e))}catch{}return Fs},Vs=t=>qt((()=>{if((e=os(t,(e=>os(e,Ae))))&&(je(t),!Rt(Y))){const e=Ut();qs(),Ts(e)}})),Rs=e=>qt((()=>{if(t=(e=>os(e,Ae))(e)){const s=bs();zs(),Ms(),t=!0,We(e),xs(s)}})),qs=()=>qt((()=>Ke({}))),Ns=e=>qt((e=>Vt(Y,e)?at(e):0),e),Ls=(e,t)=>qt(((e,t)=>q($t(Y,e),(s=>Vt(s,t)?nt(e,s,t):0))),e,t),Ms=()=>qt((()=>et({}))),Es=()=>qt((()=>{je({}),e=!1})),zs=()=>qt((()=>{We({}),t=!1})),$s=(e,t)=>{if(-1!=c){Os();const s=e();return As(t),s}},Os=()=>(-1!=c&&c++,1==c&&Le(Re,void 0,Gt,Kt),Fs),As=e=>(c>0&&(c--,0==c&&(s=!Rt($),a=!Rt(A),c=1,wt(1),s&&Ct(1),ft(1),a&&vt(1),e?.(Gt,Kt)&&(Lt($,((e,t)=>Lt(e,((e,s)=>Lt(e,(([e],l)=>ze(Fs,t,s,l,e))))))),Lt(A,(([e],t)=>$e(Fs,t,e))),s=a=!1),Le(qe[0],void 0,Gt,Kt),c=-1,wt(0),s&&Ct(0),ft(0),a&&vt(0),Le(qe[1],void 0,Gt,Kt),c=0,s=a=!1,n=Is(),r=vs(),Q([k,T,S,V,M,$,F,O,A,J],Nt))),Fs),Fs={getContent:()=>[Ut(),bs()],getTables:Ut,getTableIds:Xt,getTable:e=>Ht($t(Y,x(e))),getTableCellIds:_t,getRowCount:ds,getRowIds:us,getSortedRowIds:cs,getRow:(e,t)=>Pt($t($t(Y,x(e)),x(t))),getCellIds:hs,getCell:ms,getValues:bs,getValueIds:gs,getValue:ps,hasTables:Is,hasTable:ws,hasTableCell:fs,hasRow:ys,hasCell:Cs,hasValues:vs,hasValue:ks,getTablesJson:()=>oe(Y),getValuesJson:()=>oe(Z),getJson:()=>oe([Y,Z]),getTablesSchemaJson:()=>oe(P),getValuesSchemaJson:()=>oe(B),getSchemaJson:()=>oe([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>qt((()=>{(ne(e)?qs:Ts)(e),(ne(t)?Ms:xs)(t)})),setTables:Ts,setTable:(e,t)=>qt((e=>Fe(t,e)?Ue(e,t):0),e),setRow:(e,t,s)=>qt(((e,t)=>Je(e,t,s)?Xe(e,lt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>$s((()=>{let l;return Je(e,l,t)&&(e=x(e),Xe(e,lt(e),l=st(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>qt(((e,t)=>{if(Je(e,t,s,1)){const l=lt(e);ae(s,((s,a)=>Ze(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>qt(((e,t,s)=>q(Pe(e,t,s,L(l)?l(ms(e,t,s)):l),(l=>Ze(e,lt(e),t,s,l)))),e,t,s),setValues:xs,setPartialValues:e=>qt((()=>He(e,1)?ae(e,((e,t)=>tt(t,e))):0)),setValue:(e,t)=>qt((e=>q(Be(e,L(t)?t(ps(e)):t),(t=>tt(e,t)))),e),setTransactionChanges:e=>qt((()=>{ae(e[0],((e,t)=>R(e)?Ns(t):ae(e,((e,s)=>R(e)?Ls(t,s):ae(e,((e,l)=>ze(Fs,t,s,l,e))))))),ae(e[1],((e,t)=>$e(Fs,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{_e(re(e))}catch{}return Fs},setJson:e=>qt((()=>{try{const[t,s]=re(e);Ge(t),_e(s)}catch{Ss(e)}})),setTablesSchema:Vs,setValuesSchema:Rs,setSchema:(e,t)=>qt((()=>{Vs(e),Rs(t)})),delTables:qs,delTable:Ns,delRow:Ls,delCell:(e,t,s,l)=>qt(((e,t,s)=>q($t(Y,e),(a=>q($t(a,t),(n=>Vt(n,s)?ot(e,a,t,n,s,l):0))))),e,t,s),delValues:Ms,delValue:e=>qt((e=>Vt(Z,e)?rt(e):0),e),delTablesSchema:Es,delValuesSchema:zs,delSchema:()=>qt((()=>{Es(),zs()})),transaction:$s,startTransaction:Os,finishTransaction:As,forEachTable:e=>Lt(Y,((t,s)=>e(s,(e=>Lt(t,((t,s)=>e(s,(e=>Ot(t,e))))))))),forEachTableCell:(e,t)=>Ot($t(X,x(e)),t),forEachRow:(e,t)=>Lt($t(Y,x(e)),((e,s)=>t(s,(t=>Ot(e,t))))),forEachCell:(e,t,s)=>Ot($t($t(Y,x(e)),x(t)),s),forEachValue:e=>Ot(Z,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=cs(e,t,s,l,a);return Ne((()=>{const o=cs(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(Fs,e,t,s,l,a,r))}),ge[o?1:0],[e,t],[Xt])},addStartTransactionListener:e=>Ne(e,Re),addWillFinishTransactionListener:e=>Ne(e,qe[0]),addDidFinishTransactionListener:e=>Ne(e,qe[1]),callListener:e=>(Oe(e),Fs),delListener:e=>(Me(e),Fs),getListenerStats:()=>({hasTables:ss(ee),tables:ss(te),tableIds:ss(ie),hasTable:ss(de),table:ss(ue),tableCellIds:ss(ce),hasTableCell:ss(he,xt),rowCount:ss(me),rowIds:ss(be),sortedRowIds:ss(ge),hasRow:ss(pe,xt),row:ss(Ie,xt),cellIds:ss(we,xt),hasCell:ss(fe,St),cell:ss(ye,St),invalidCell:ss(Ce,St),hasValues:ss(ke),values:ss(Te),valueIds:ss(xe),hasValue:ss(Se),value:ss(Ve),invalidValue:ss(ve),transaction:Tt(Re)+ss(qe)}),createStore:is,addListener:Ne,callListeners:Le};return ae({[u+m]:[0,ee,[],()=>[Is()]],[m]:[0,te],[b]:[0,ie],[u+h]:[1,de,[Xt],e=>[ws(...e)]],[h]:[1,ue,[Xt]],[h+f]:[1,ce,[Xt]],[u+h+w]:[2,he,[Xt,_t],e=>[fs(...e)]],[p]:[1,me,[Xt]],[I]:[1,be,[Xt]],[u+g]:[2,pe,[Xt,us],e=>[ys(...e)]],[g]:[2,Ie,[Xt,us]],[f]:[2,we,[Xt,us]],[u+w]:[3,fe,[Xt,us,hs],e=>[Cs(...e)]],[w]:[3,ye,[Xt,us,hs],e=>ts(ms(...e))],InvalidCell:[3,Ce],[u+C]:[0,ke,[],()=>[vs()]],[C]:[0,Te],[v]:[0,xe],[u+y]:[1,Se,[gs],e=>[ks(...e)]],[y]:[1,Ve,[gs],e=>ts(ps(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Fs["add"+a+"Listener"]=(...a)=>Ne(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),_(Fs)},ds=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(is),a=ue.indexOf(e);return t.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;Ft(Gt,i,(()=>0)),Ft(Kt,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();ne(s)&&ne(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(G($t(Kt,i),...e),await(async()=>{if(!$t(Gt,i)){for(At(Gt,i,1);!R(u=K($t(Kt,i)));)try{await u()}catch(e){n?.(e)}At(Gt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),_(I)})(e,(async()=>re(s.getItem(t))),(async e=>s.setItem(t,oe(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>re(l.newValue)))};return Xt.addEventListener(Ut,l),l}),(e=>Xt.removeEventListener(Ut,e)),l,["getStorageName",t]))(e,ie,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),A(O,null,A("aside",{id:ie},A(Le,{s:l}),A(Ct,{s:l})),A("style",null,Ne))};exports.EditableCellView=lt,exports.EditableValueView=at,exports.RelationshipInHtmlTable=tt,exports.ResultSortedTableInHtmlTable=st,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>A(Ke,{...a,params:De(Ge(t.useResultTableCellIds(e,s),l,t.ResultCellView),je(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=et,exports.SortedTableInHtmlTable=Ze,exports.SortedTablePaginator=nt,exports.StoreInspector=e=>A(ds,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>A(Ke,{...n,params:De(Ge(t.useTableCellIds(e,s),a,l?lt:t.CellView),Qe(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=_e;
1
+ "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),o=s(0),r=s(s),i="type",d="default",u="Has",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,w="Cell",f=w+c,y="Value",C=y+"s",v=y+c,k="currentTarget",T="value",x=e=>l+e,S=Math.floor,V=isFinite,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==r,M=e=>Array.isArray(e),E=(e,t,s)=>e.slice(t,s),z=e=>e.length,{PureComponent:$,Fragment:O,createElement:A,useCallback:F,useLayoutEffect:J,useRef:P,useState:H}=e,B=(e,...t)=>R(e)?{}:e(...t),D=(e,t)=>e.sort(t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==z(e),G=(e,...t)=>e.push(...t),K=e=>e.shift(),U=Object,X=e=>U.getPrototypeOf(e),Y=U.entries,Z=U.keys,_=U.isFrozen,ee=U.freeze,te=e=>!R(e)&&q(X(e),(e=>e==U.prototype||R(X(e))),(()=>!0)),se=(e=[])=>U.fromEntries(e),le=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),ae=(e,t)=>(delete e[t],e),ne=(e,t)=>j(Y(e),(([e,s])=>t(s,e))),oe=e=>te(e)&&0==(e=>z(Z(e)))(e),re=e=>JSON.stringify(e,((e,t)=>t instanceof Map?U.fromEntries([...t]):t)),ie=JSON.parse,de="tinybaseStoreInspector",ue="TinyBase Store Inspector",ce=["left","top","bottom","right","full"],he="state",me="sort",be="open",ge="position",pe=be,Ie="editable",we=(...e)=>re(e),fe=(e,t)=>j(D(e),t),ye=(e,s)=>[!!t.useCell(he,e,Ie,s),F((t=>{s.setCell(he,e,Ie,(e=>!e)),t.preventDefault()}),[s,e])],Ce="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ve='content:url("',ke=ve+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Te='</svg>")',xe=ve+"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\")",Se=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])=>ke+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Te)),Ve=ke+"<path d='M20 20l60 60M20 80l60-60' />"+Te,Re=ke+`<path d='${Ce}' />`+Te,qe=ke+`<path d='${Ce}M20 20l60 60' />`+Te,Ne="*::-webkit-scrollbar",Le=((e,t="")=>e.join(t))(ne({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Ne]:"width:0.5rem;height:0.5rem;",[Ne+"-track"]:"background:#111",[Ne+"-thumb"]:"background:#999;border:1px solid #111",[Ne+"-thumb:hover"]:"background:#fff",[Ne+"-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;"+xe,...se(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;",...se(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)":xe,"header>img:nth-of-type(6)":Ve,...se(j(Se,((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":Re,"details[open]>summary img.done":qe,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,#${de} 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?`#${de} ${t}{${e}}`:""))),Me=({s:e})=>{const s=t.useValue(ge,e)??1,l=t.useSetValueCallback(pe,(()=>!0),[],e);return t.useValue(pe,e)?null:A("img",{onClick:l,title:ue,"data-position":s})},Ee=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!t.useCell(he,e,be,o),i=t.useSetCellCallback(he,e,be,(e=>e[k].open),[],o);return A("details",{open:r,onToggle:i},A("summary",null,s,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},ze=e=>{const t=s(e);return N(t)||t==o&&V(e)?t:void 0},$e=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Oe=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),Ae=(e,t,s,l)=>e==a?t:e==o?s:l,{useCallback:Fe,useMemo:Je,useState:Pe}=e,He="editable",Be=(e,s)=>j(t.useTableCellIds(e,s),(t=>e+"."+t)),De=(e,t,s)=>{const l=Fe(e,t);return s?l:void 0},Qe=(...e)=>Je((()=>e),e),je=(e,t)=>Je((()=>({store:e,tableId:t})),[e,t]),We=(e,t)=>Je((()=>({queries:e,queryId:t})),[e,t]),Ge=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Pe([e,t,l]),h=Fe((e=>{c(e),r?.(e)}),[r]),m=De((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Fe((e=>h([i,d,e])),[h,i,d]),g=!0===o?ot:o;return[[i,d,u],m,Je((()=>!1===o?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ke=(e,t,l)=>Je((()=>{const n=t??e;return se(ne(M(n)?se(j(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),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(Xe,{sort:o??[],label:"Id",onClick:r}),ne(l,(({label:e},t)=>A(Xe,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),A("tbody",null,j(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),ne(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...B(s,e,l),...a,rowId:e,cellId:l}))))))))),Xe=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>A("th",{onClick:De((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",a),Ye=({localRowId:s,params:[l,a,n,o,r,i,d]})=>{const u=t.useRemoteRowId(r,s,i);return A("tr",null,!1===l?null:A(e.Fragment,null,A("th",null,s),A("th",null,u)),ne(a,(({component:e,getComponentProps:t},l)=>{const[a,r]=l.split(".",2),i=a===n?s:a===o?u:null;return R(i)?null:A("td",{key:l},A(e,{...B(t,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Ze=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:r=!0})=>{const[i,d]=Pe(),[u,c]=Pe(),[h,m]=Pe(),[b,g]=Pe(),[p,I]=Pe();u!==e&&(d(ze(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=Fe(((e,s)=>{s(e),c(e),t(e)}),[t]),f=Fe((()=>{if(!l?.()){const e=Ae(i,o,n,a),s=Ae(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},r?A("button",{className:i,onClick:f},i):null,Ae(i,A("input",{key:i,value:h,onChange:Fe((e=>w(e[k][T]+"",m)),[w])}),A("input",{key:i,type:"number",value:b,onChange:Fe((e=>w(Number(e[k][T]||0),g)),[w])}),A("input",{key:i,type:"checkbox",checked:p,onChange:Fe((e=>w(!!e[k].checked,I)),[w])})))},_e=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ge(s,l,i,a,n,t.useRowCount(e,o),d,u);return A(Ue,{...h,params:Qe(Ke(t.useTableCellIds(e,o),c,r?at:t.CellView),je(o,e),t.useSortedRowIds(e,...m,n,o),m,b,g)})},et=({store:e,editable:s=!1,valueComponent:l=(s?nt:t.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,y))),A("tbody",null,j(t.useValueIds(e),(t=>A("tr",{key:t},!1===r?null:A("th",null,t),A("td",null,A(l,{...B(a,t),valueId:t,store:e}))))))),tt=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return A(Ue,{...o,params:Qe(Ke(t.useTableCellIds(d,i),n,a?at:t.CellView),je(i,d),t.useSliceRowIds(e,s,r))})},st=({relationshipId:s,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)])(t.useRelationshipsOrRelationshipsById(l),s),m=Ke([...Be(c,u),...Be(h,u)],n,a?at:t.CellView),b=Qe(i,m,c,h,s,d,u);return A("table",{className:o},!1===r?null:A("thead",null,A("tr",null,!1===i?null:A(e.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),ne(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,j(t.useRowIds(c,u),(e=>A(Ye,{key:e,localRowId:e,params:b})))))},lt=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ge(s,l,r,a,n,t.useResultRowCount(e,o),i,u);return A(Ue,{...c,params:Qe(Ke(t.useResultTableCellIds(e,o),d,t.ResultCellView),We(o,e),t.useResultSortedRowIds(e,...h,n,o),h,m,b)})},at=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:o})=>A(Ze,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??He+w,showType:o,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),nt=({valueId:e,store:s,className:l,showType:a})=>A(Ze,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??He+y,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),ot=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const r=De((()=>t(l-a)),[t,l,a],l>0),i=De((()=>t(l+a)),[t,l,a],l+a<s);return A(e.Fragment,null,s>a&&A(e.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick: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)},rt=({indexes:e,indexesId:s,indexId:l,s:a})=>A(Ee,{uniqueId:we("i",s,l),summary:"Index: "+l,s:a},j(t.useSliceIds(l,e),(t=>A(it,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),it=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=ye(n,a);return A(Ee,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},A(tt,{sliceId:l,indexId:s,indexes:e,editable:o}))},dt=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:A(Ee,{uniqueId:we("i",e),summary:"Indexes: "+(e??d),s:s},W(a)?"No indexes defined":fe(a,(t=>A(rt,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},ut=({metrics:e,metricId:s})=>A("tr",null,A("th",null,s),A("td",null,e?.getTableId(s)),A("td",null,t.useMetric(s,e))),ct=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:A(Ee,{uniqueId:we("m",e),summary:"Metrics: "+(e??d),s:s},W(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,j(a,(e=>A(ut,{metrics:l,metricId:e,key:e}))))))},ht=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=we("q",s,l),[o,r,i]=ie(t.useCell(he,n,me,a)??"[]"),d=t.useSetCellCallback(he,n,me,re,[],a);return A(Ee,{uniqueId:n,summary:"Query: "+l,s:a},A(lt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},mt=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:A(Ee,{uniqueId:we("q",e),summary:"Queries: "+(e??d),s:s},W(a)?"No queries defined":fe(a,(t=>A(ht,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},bt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=ye(a,l);return A(Ee,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},A(st,{relationshipId:s,relationships:e,editable:n}))},gt=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:A(Ee,{uniqueId:we("r",e),summary:"Relationships: "+(e??d),s:s},W(a)?"No relationships defined":fe(a,(t=>A(bt,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},pt=({tableId:e,store:s,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=ie(t.useCell(he,n,me,a)??"[]"),d=t.useSetCellCallback(he,n,me,re,[],a),[u,c]=ye(n,a);return A(Ee,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},A(_e,{tableId:e,store:s,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},It=({store:e,storeId:s,s:l})=>{const a=we("v",s),[n,o]=ye(a,l);return W(t.useValueIds(e))?null:A(Ee,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},A(et,{store:e,editable:n}))},wt=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:A(Ee,{uniqueId:we("s",e),summary:"Store: "+(e??d),s:s},A(It,{storeId:e,store:l,s:s}),fe(a,(t=>A(pt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},ft=({s:e})=>{const s=P(null),l=P(0),[a,n]=H(!1),{scrollLeft:o,scrollTop:r}=t.useValues(e);J((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=S(o)+e.clientWidth&&e.scrollHeight>=S(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=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return R(d)&&W(u)&&R(c)&&W(h)&&R(m)&&W(b)&&R(g)&&W(p)&&R(I)&&W(w)?A("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):A("article",{ref:s,onScroll:i},A(wt,{s:e}),j(u,(t=>A(wt,{storeId:t,s:e,key:t}))),A(ct,{s:e}),j(h,(t=>A(ct,{metricsId:t,s:e,key:t}))),A(dt,{s:e}),j(b,(t=>A(dt,{indexesId:t,s:e,key:t}))),A(gt,{s:e}),j(p,(t=>A(gt,{relationshipsId:t,s:e,key:t}))),A(mt,{s:e}),j(w,(t=>A(mt,{queriesId:t,s:e,key:t}))))};class yt 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 Ct=({s:e})=>{const s=t.useValue(ge,e)??1,l=t.useSetValueCallback(pe,(()=>!1),[],e),a=t.useSetValueCallback(ge,(e=>Number(e[k].dataset.id)),[],e);return A("header",null,A("img",{title:ue}),A("span",null,ue),j(ce,((e,t)=>t==s?null:A("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),A("img",{onClick:l,title:"Close"}))},vt=({s:e})=>{const s=t.useValue(ge,e)??1;return t.useValue(pe,e)?A("main",{"data-position":s},A(Ct,{s:e}),A(yt,null,A(ft,{s:e}))):null},kt=e=>t=>{return s=(t,s)=>t+e(s),Nt(t).reduce(s,0);var s},Tt=e=>e?.size??0,xt=kt(Tt),St=kt(xt),Vt=kt(St),Rt=(e,t)=>e?.has(t)??!1,qt=e=>R(e)||0==Tt(e),Nt=e=>[...e?.values()??[]],Lt=e=>e.clear(),Mt=(e,t)=>e?.forEach(t),Et=(e,t)=>e?.delete(t),zt=e=>new Map(e),$t=e=>[...e?.keys()??[]],Ot=(e,t)=>e?.get(t),At=(e,t)=>Mt(e,((e,s)=>t(s,e))),Ft=(e,t,s)=>R(s)?(Et(e,t),e):e?.set(t,s),Jt=(e,t,s)=>(Rt(e,t)||Ft(e,t,s()),Ot(e,t)),Pt=(e,t,s,l=Ft)=>(ne(t,((t,l)=>s(e,l,t))),At(e,(s=>le(t,s)?0:l(e,s))),e),Ht=(e,t,s)=>{const l={};return Mt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Bt=(e,t,s)=>Ht(e,(e=>Ht(e,t,s)),oe),Dt=(e,t,s)=>Ht(e,(e=>Bt(e,t,s)),oe),Qt=(e,t)=>{const s=zt();return Mt(e,((e,l)=>s.set(l,t?.(e)??e))),s},jt=e=>Qt(e,Qt),Wt=e=>Qt(e,jt),Gt=(e,t,s,l,a=0)=>q((s?Jt:Ot)(e,t[a],a>z(t)-2?s:zt),(n=>{if(a>z(t)-2)return l?.(n)&&Ft(e,t[a]),n;const o=Gt(n,t,s,l,a+1);return qt(n)&&Ft(e,t[a]),o})),Kt=zt(),Ut=zt(),Xt="storage",Yt=globalThis.window,Zt=e=>new Set(M(e)||R(e)?e:[e]),_t=(e,t)=>e?.add(t),es=/^\d+$/,ts=()=>{const e=[];let t=0;return[s=>(s?K(e):null)??l+t++,t=>{es.test(t)&&z(e)<1e3&&G(e,t)}]},ss=e=>[e,e],ls=(e,t=xt)=>t(e[0])+t(e[1]),as=()=>[zt(),zt()],ns=e=>[...e],os=([e,t])=>e===t,rs=(e,t,s)=>R(e)||!te(e)||oe(e)||_(e)?(s?.(),!1):(ne(e,((s,l)=>{t(s,l)||ae(e,l)})),!oe(e)),is=(e,t,s)=>Ft(e,t,Ot(e,t)==-s?void 0:s),ds=()=>{let e,t,s=!1,a=!1,n=!1,r=!1,c=0;const k=zt(),T=zt(),S=zt(),V=zt(),M=zt(),$=zt(),O=zt(),A=zt(),F=zt(),J=zt(),P=zt(),H=zt(),B=zt(),W=zt(),K=Zt(),U=zt(),X=zt(),Y=zt(),Z=zt(),_=as(),te=as(),se=as(),de=as(),ue=as(),ce=as(),he=as(),me=as(),be=as(),ge=as(),pe=as(),Ie=as(),we=as(),fe=as(),ye=as(),Ce=as(),ve=as(),ke=as(),Te=as(),xe=as(),Se=as(),Ve=as(),Re=zt(),qe=as(),[Ne,Le,Me,Ee]=(e=>{let t;const[s,a]=ts(),n=zt();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const d=s(1);return Ft(n,d,[e,a,o,r,i]),_t(Gt(a,o??[l],Zt),d),d},(e,s,...a)=>Q(((e,t=[l])=>{const s=[],a=(e,l)=>l==z(t)?G(s,e):null===t[l]?Mt(e,(e=>a(e,l+1))):Q([t[l],null],(t=>a(Ot(e,t),l+1)));return a(e,0),s})(e,s),(e=>Mt(e,(e=>Ot(n,e)[0](t,...s??[],...a))))),e=>q(Ot(n,e),(([,t,s])=>(Gt(t,s??[l],void 0,(t=>(Et(t,e),qt(t)?1:0))),Ft(n,e),a(e),s))),e=>q(Ot(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=z(o);r==z(s)?e(t,...o,...a(o)):R(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ae=e=>{if(!rs(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=o||(ze(e[d])!=t&&ae(e,d),0))},Fe=(t,s)=>(!e||Rt(P,s)||bt(s))&&rs(t,((e,t)=>Je(s,t,e)),(()=>bt(s))),Je=(e,t,s,l)=>rs(l?s:De(s,e,t),((l,a)=>q(Pe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Pe=(t,s,l,a)=>e?q(Ot(Ot(P,t),l),(e=>ze(a)!=e[i]?bt(t,s,l,a,e[d]):a),(()=>bt(t,s,l,a))):R(ze(a))?bt(t,s,l,a):a,He=(e,t)=>rs(t?e:Qe(e),((t,s)=>q(Be(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>gt())),Be=(e,s)=>t?q(Ot(B,e),(t=>ze(s)!=t[i]?gt(e,s,t[d]):s),(()=>gt(e,s))):R(ze(s))?gt(e,s):s,De=(e,t,s)=>(q(Ot(H,t),(([l,a])=>{Mt(l,((t,s)=>{le(e,s)||(e[s]=t)})),Mt(a,(l=>{le(e,l)||bt(t,s,l)}))})),e),Qe=e=>(t&&(Mt(W,((t,s)=>{le(e,s)||(e[s]=t)})),Mt(K,(t=>{le(e,t)||gt(t)}))),e),je=e=>Pt(P,e,((e,t,s)=>{const l=zt(),a=Zt();Pt(Jt(P,t,zt),s,((e,t,s)=>{Ft(e,t,s),q(s[d],(e=>Ft(l,t,e)),(()=>_t(a,t)))})),Ft(H,t,[l,a])}),((e,t)=>{Ft(P,t),Ft(H,t)})),We=e=>Pt(B,e,((e,t,s)=>{Ft(B,t,s),q(s[d],(e=>Ft(W,t,e)),(()=>_t(K,t)))}),((e,t)=>{Ft(B,t),Ft(W,t),Et(K,t)})),Ge=e=>oe(e)?qs():Ts(e),Ke=e=>Pt(Y,e,((e,t,s)=>Ue(t,s)),((e,t)=>at(t))),Ue=(e,t)=>Pt(Jt(Y,e,(()=>(it(e,1),Ft(U,e,ts()),Ft(X,e,zt()),zt()))),t,((t,s,l)=>Xe(e,t,s,l)),((t,s)=>nt(e,t,s))),Xe=(e,t,s,l,a)=>Pt(Jt(t,s,(()=>(dt(e,s,1),zt()))),l,((t,l,a)=>Ye(e,s,t,l,a)),((l,n)=>ot(e,t,s,l,n,a))),Ye=(e,t,s,l,a)=>{Rt(s,l)||ut(e,t,l,1);const n=Ot(s,l);a!==n&&(ct(e,t,l,n,a),Ft(s,l,a))},Ze=(e,t,s,l,a)=>q(Ot(t,s),(t=>Ye(e,s,t,l,a)),(()=>Xe(e,t,s,De({[l]:a},e,s)))),_e=e=>oe(e)?Ms():xs(e),et=e=>Pt(Z,e,((e,t,s)=>tt(t,s)),((e,t)=>rt(t))),tt=(e,t)=>{Rt(Z,e)||ht(e,1);const s=Ot(Z,e);t!==s&&(mt(e,s,t),Ft(Z,e,t))},st=(e,t)=>{const[s]=Ot(U,e),l=s(t);return Rt(Ot(Y,e),l)?st(e,t):l},lt=e=>Ot(Y,e)??Ue(e,{}),at=e=>Ue(e,{}),nt=(e,t,s)=>{const[,l]=Ot(U,e);l(s),Xe(e,t,s,{},!0)},ot=(e,t,s,l,a,n)=>{const o=Ot(Ot(H,e)?.[0],a);if(!R(o)&&!n)return Ye(e,s,l,a,o);const r=t=>{ct(e,s,t,Ot(l,t)),ut(e,s,t,-1),Ft(l,t)};R(o)?r(a):At(l,r),qt(l)&&(dt(e,s,-1),qt(Ft(t,s))&&(it(e,-1),Ft(Y,e),Ft(U,e),Ft(X,e)))},rt=e=>{const t=Ot(W,e);if(!R(t))return tt(e,t);mt(e,Ot(Z,e)),ht(e,-1),Ft(Z,e)},it=(e,t)=>is(k,e,t),dt=(e,t,s)=>is(Jt(V,e,zt),t,s)&&Ft(S,e,Jt(S,e,(()=>0))+s),ut=(e,t,s,l)=>{const a=Ot(X,e),n=Ot(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&is(Jt(T,e,zt),s,l),Ft(a,s,n!=-l?n+l:null),is(Jt(Jt(M,e,zt),t,zt),s,l)},ct=(e,t,s,l,a)=>Jt(Jt(Jt($,e,zt),t,zt),s,(()=>[l,0]))[1]=a,ht=(e,t)=>is(O,e,t),mt=(e,t,s)=>Jt(A,e,(()=>[t,0]))[1]=s,bt=(e,t,s,l,a)=>(G(Jt(Jt(Jt(F,e,zt),t,zt),s,(()=>[])),l),a),gt=(e,t,s)=>(G(Jt(J,e,(()=>[])),t),s),pt=(e,t,s)=>q(Ot(Ot(Ot($,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ss(ms(e,t,s))])),It=e=>q(Ot(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ss(ps(e))])),wt=e=>qt(F)||qt(Ce[e])?0:Mt(e?Wt(F):F,((t,s)=>Mt(t,((t,l)=>Mt(t,((t,a)=>Le(Ce[e],[s,l,a],t))))))),ft=e=>qt(J)||qt(ve[e])?0:Mt(e?Qt(J):J,((t,s)=>Le(ve[e],[s],t))),yt=(e,t,s,l)=>{if(!qt(e))return Le(t,l,(()=>Ht(e))),At(e,((e,t)=>Le(s,[...l??[],e],1==t))),1},Ct=e=>{const t=Is();t!=n&&Le(_[e],void 0,t);const s=qt(ge[e]),l=qt(we[e])&&qt(fe[e])&&qt(be[e])&&qt(pe[e])&&qt(ce[e])&&qt(he[e])&&qt(me[e])&&s&&qt(se[e])&&qt(de[e]),a=qt(ye[e])&&qt(Ie[e])&&qt(ue[e])&&qt(te[e]);if(!l||!a){const t=e?[Qt(k),jt(T),Qt(S),jt(V),Wt(M),Wt($)]:[k,T,S,V,M,$];if(!l){yt(t[0],se[e],de[e]),Mt(t[1],((t,s)=>yt(t,ce[e],he[e],[s]))),Mt(t[2],((t,s)=>{0!=t&&Le(me[e],[s],es(s))}));const l=Zt();Mt(t[3],((t,a)=>{yt(t,be[e],pe[e],[a])&&!s&&(Le(ge[e],[a,null]),_t(l,a))})),s||Mt(t[5],((t,s)=>{if(!Rt(l,s)){const l=Zt();Mt(t,(e=>Mt(e,(([t,s],a)=>s!==t?_t(l,a):Et(e,a))))),Mt(l,(t=>Le(ge[e],[s,t])))}})),Mt(t[4],((t,s)=>Mt(t,((t,l)=>yt(t,we[e],fe[e],[s,l])))))}if(!a){let s;Mt(t[5],((t,l)=>{let a;Mt(t,((t,n)=>{let o;Mt(t,(([t,r],i)=>{r!==t&&(Le(ye[e],[l,n,i],r,t,pt),s=a=o=1)})),o&&Le(Ie[e],[l,n],pt)})),a&&Le(ue[e],[l],pt)})),s&&Le(te[e],void 0,pt)}}},vt=e=>{const t=vs();t!=r&&Le(ke[e],void 0,t);const s=qt(xe[e])&&qt(Se[e]),l=qt(Ve[e])&&qt(Te[e]);if(!s||!l){const t=e?[Qt(O),Qt(A)]:[O,A];if(s||yt(t[0],xe[e],Se[e]),!l){let s;Mt(t[1],(([t,l],a)=>{l!==t&&(Le(Ve[e],[a],l,t,It),s=1)})),s&&Le(Te[e],void 0,It)}}},kt=(e,...t)=>($s((()=>e(...j(t,x)))),Fs),Nt=()=>[Ht($,((e,t)=>-1===Ot(k,t)?null:Ht(e,((e,s)=>-1===Ot(Ot(V,t),s)?null:Ht(e,(([,e])=>e??null),((e,t)=>os(t)))),oe)),oe),Ht(A,(([,e])=>e??null),((e,t)=>os(t)))],Kt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Dt($,ns,os),invalidCells:Dt(F),changedValues:Ht(A,ns,os),invalidValues:Ht(J),changedTableIds:Ht(k),changedRowIds:Bt(V),changedCellIds:Dt(M),changedValueIds:Ht(O)}),Ut=()=>Dt(Y),Xt=()=>$t(Y),Yt=e=>$t(Ot(X,x(e))),es=e=>Tt(Ot(Y,x(e))),us=e=>$t(Ot(Y,x(e))),cs=(e,t,s,l=0,a)=>{return j(E(D((n=Ot(Y,x(e)),o=(e,s)=>[R(t)?s:Ot(e,x(t)),s],j([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,R(a)?a:l+a),(([,e])=>e));var n,o},hs=(e,t)=>$t(Ot(Ot(Y,x(e)),x(t))),ms=(e,t,s)=>Ot(Ot(Ot(Y,x(e)),x(t)),x(s)),bs=()=>Ht(Z),gs=()=>$t(Z),ps=e=>Ot(Z,x(e)),Is=()=>!qt(Y),ws=e=>Rt(Y,x(e)),fs=(e,t)=>Rt(Ot(X,x(e)),x(t)),ys=(e,t)=>Rt(Ot(Y,x(e)),x(t)),Cs=(e,t,s)=>Rt(Ot(Ot(Y,x(e)),x(t)),x(s)),vs=()=>!qt(Z),ks=e=>Rt(Z,x(e)),Ts=e=>kt((()=>(e=>rs(e,Fe,bt))(e)?Ke(e):0)),xs=e=>kt((()=>He(e)?et(e):0)),Ss=e=>{try{Ge(ie(e))}catch{}return Fs},Vs=t=>kt((()=>{if((e=rs(t,(e=>rs(e,Ae))))&&(je(t),!qt(Y))){const e=Ut();qs(),Ts(e)}})),Rs=e=>kt((()=>{if(t=(e=>rs(e,Ae))(e)){const s=bs();zs(),Ms(),t=!0,We(e),xs(s)}})),qs=()=>kt((()=>Ke({}))),Ns=e=>kt((e=>Rt(Y,e)?at(e):0),e),Ls=(e,t)=>kt(((e,t)=>q(Ot(Y,e),(s=>Rt(s,t)?nt(e,s,t):0))),e,t),Ms=()=>kt((()=>et({}))),Es=()=>kt((()=>{je({}),e=!1})),zs=()=>kt((()=>{We({}),t=!1})),$s=(e,t)=>{if(-1!=c){Os();const s=e();return As(t),s}},Os=()=>(-1!=c&&c++,1==c&&Le(Re,void 0,Nt,Kt),Fs),As=e=>(c>0&&(c--,0==c&&(s=!qt($),a=!qt(A),c=1,wt(1),s&&Ct(1),ft(1),a&&vt(1),e?.(Nt,Kt)&&(Mt($,((e,t)=>Mt(e,((e,s)=>Mt(e,(([e],l)=>$e(Fs,t,s,l,e))))))),Mt(A,(([e],t)=>Oe(Fs,t,e))),s=a=!1),Le(qe[0],void 0,Nt,Kt),c=-1,wt(0),s&&Ct(0),ft(0),a&&vt(0),Le(qe[1],void 0,Nt,Kt),c=0,s=a=!1,n=Is(),r=vs(),Q([k,T,S,V,M,$,F,O,A,J],Lt))),Fs),Fs={getContent:()=>[Ut(),bs()],getTables:Ut,getTableIds:Xt,getTable:e=>Bt(Ot(Y,x(e))),getTableCellIds:Yt,getRowCount:es,getRowIds:us,getSortedRowIds:cs,getRow:(e,t)=>Ht(Ot(Ot(Y,x(e)),x(t))),getCellIds:hs,getCell:ms,getValues:bs,getValueIds:gs,getValue:ps,hasTables:Is,hasTable:ws,hasTableCell:fs,hasRow:ys,hasCell:Cs,hasValues:vs,hasValue:ks,getTablesJson:()=>re(Y),getValuesJson:()=>re(Z),getJson:()=>re([Y,Z]),getTablesSchemaJson:()=>re(P),getValuesSchemaJson:()=>re(B),getSchemaJson:()=>re([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>kt((()=>{(oe(e)?qs:Ts)(e),(oe(t)?Ms:xs)(t)})),setTables:Ts,setTable:(e,t)=>kt((e=>Fe(t,e)?Ue(e,t):0),e),setRow:(e,t,s)=>kt(((e,t)=>Je(e,t,s)?Xe(e,lt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>$s((()=>{let l;return Je(e,l,t)&&(e=x(e),Xe(e,lt(e),l=st(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>kt(((e,t)=>{if(Je(e,t,s,1)){const l=lt(e);ne(s,((s,a)=>Ze(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>kt(((e,t,s)=>q(Pe(e,t,s,L(l)?l(ms(e,t,s)):l),(l=>Ze(e,lt(e),t,s,l)))),e,t,s),setValues:xs,setPartialValues:e=>kt((()=>He(e,1)?ne(e,((e,t)=>tt(t,e))):0)),setValue:(e,t)=>kt((e=>q(Be(e,L(t)?t(ps(e)):t),(t=>tt(e,t)))),e),setTransactionChanges:e=>kt((()=>{ne(e[0],((e,t)=>R(e)?Ns(t):ne(e,((e,s)=>R(e)?Ls(t,s):ne(e,((e,l)=>$e(Fs,t,s,l,e))))))),ne(e[1],((e,t)=>Oe(Fs,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{_e(ie(e))}catch{}return Fs},setJson:e=>kt((()=>{try{const[t,s]=ie(e);Ge(t),_e(s)}catch{Ss(e)}})),setTablesSchema:Vs,setValuesSchema:Rs,setSchema:(e,t)=>kt((()=>{Vs(e),Rs(t)})),delTables:qs,delTable:Ns,delRow:Ls,delCell:(e,t,s,l)=>kt(((e,t,s)=>q(Ot(Y,e),(a=>q(Ot(a,t),(n=>Rt(n,s)?ot(e,a,t,n,s,l):0))))),e,t,s),delValues:Ms,delValue:e=>kt((e=>Rt(Z,e)?rt(e):0),e),delTablesSchema:Es,delValuesSchema:zs,delSchema:()=>kt((()=>{Es(),zs()})),transaction:$s,startTransaction:Os,finishTransaction:As,forEachTable:e=>Mt(Y,((t,s)=>e(s,(e=>Mt(t,((t,s)=>e(s,(e=>At(t,e))))))))),forEachTableCell:(e,t)=>At(Ot(X,x(e)),t),forEachRow:(e,t)=>Mt(Ot(Y,x(e)),((e,s)=>t(s,(t=>At(e,t))))),forEachCell:(e,t,s)=>At(Ot(Ot(Y,x(e)),x(t)),s),forEachValue:e=>At(Z,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=cs(e,t,s,l,a);return Ne((()=>{const o=cs(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(Fs,e,t,s,l,a,r))}),ge[o?1:0],[e,t],[Xt])},addStartTransactionListener:e=>Ne(e,Re),addWillFinishTransactionListener:e=>Ne(e,qe[0]),addDidFinishTransactionListener:e=>Ne(e,qe[1]),callListener:e=>(Ee(e),Fs),delListener:e=>(Me(e),Fs),getListenerStats:()=>({hasTables:ls(_),tables:ls(te),tableIds:ls(se),hasTable:ls(de),table:ls(ue),tableCellIds:ls(ce),hasTableCell:ls(he,St),rowCount:ls(me),rowIds:ls(be),sortedRowIds:ls(ge),hasRow:ls(pe,St),row:ls(Ie,St),cellIds:ls(we,St),hasCell:ls(fe,Vt),cell:ls(ye,Vt),invalidCell:ls(Ce,Vt),hasValues:ls(ke),values:ls(Te),valueIds:ls(xe),hasValue:ls(Se),value:ls(Ve),invalidValue:ls(ve),transaction:xt(Re)+ls(qe)}),createStore:ds,addListener:Ne,callListeners:Le};return ne({[u+m]:[0,_,[],()=>[Is()]],[m]:[0,te],[b]:[0,se],[u+h]:[1,de,[Xt],e=>[ws(...e)]],[h]:[1,ue,[Xt]],[h+f]:[1,ce,[Xt]],[u+h+w]:[2,he,[Xt,Yt],e=>[fs(...e)]],[p]:[1,me,[Xt]],[I]:[1,be,[Xt]],[u+g]:[2,pe,[Xt,us],e=>[ys(...e)]],[g]:[2,Ie,[Xt,us]],[f]:[2,we,[Xt,us]],[u+w]:[3,fe,[Xt,us,hs],e=>[Cs(...e)]],[w]:[3,ye,[Xt,us,hs],e=>ss(ms(...e))],InvalidCell:[3,Ce],[u+C]:[0,ke,[],()=>[vs()]],[C]:[0,Te],[v]:[0,xe],[u+y]:[1,Se,[gs],e=>[ks(...e)]],[y]:[1,Ve,[gs],e=>ss(ps(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Fs["add"+a+"Listener"]=(...a)=>Ne(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),ee(Fs)},us=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(ds),a=ce.indexOf(e);return t.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;Jt(Kt,i,(()=>0)),Jt(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();oe(s)&&oe(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(G(Ot(Ut,i),...e),await(async()=>{if(!Ot(Kt,i)){for(Ft(Kt,i,1);!R(u=K(Ot(Ut,i)));)try{await u()}catch(e){n?.(e)}Ft(Kt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),ee(I)})(e,(async()=>ie(s.getItem(t))),(async e=>s.setItem(t,re(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ie(l.newValue)))};return Yt.addEventListener(Xt,l),l}),(e=>Yt.removeEventListener(Xt,e)),l,["getStorageName",t]))(e,de,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),A(O,null,A("aside",{id:de},A(Me,{s:l}),A(vt,{s:l})),A("style",null,Le))};exports.EditableCellView=at,exports.EditableValueView=nt,exports.RelationshipInHtmlTable=st,exports.ResultSortedTableInHtmlTable=lt,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>A(Ue,{...a,params:Qe(Ke(t.useResultTableCellIds(e,s),l,t.ResultCellView),We(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=tt,exports.SortedTableInHtmlTable=_e,exports.SortedTablePaginator=ot,exports.StoreInspector=e=>A(us,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>A(Ue,{...n,params:Qe(Ke(t.useTableCellIds(e,s),a,l?at:t.CellView),je(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=et;
Binary file