tinybase 5.0.0-beta.4 → 5.0.0-beta.6

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 (418) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/cjs/checkpoints.cjs +1 -1
  4. package/lib/cjs/checkpoints.cjs.gz +0 -0
  5. package/lib/cjs/indexes.cjs +1 -1
  6. package/lib/cjs/indexes.cjs.gz +0 -0
  7. package/lib/cjs/mergeable-store.cjs +1 -1
  8. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  9. package/lib/cjs/metrics.cjs +1 -1
  10. package/lib/cjs/metrics.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  12. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  14. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  16. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  18. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  20. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  22. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-file.cjs +1 -1
  24. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  26. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-libsql.cjs +1 -0
  28. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  30. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-powersync.cjs +1 -0
  32. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  33. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  34. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  35. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  36. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  37. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  38. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  39. package/lib/cjs/persisters/persister-sync.cjs +1 -0
  40. package/lib/cjs/persisters/persister-sync.cjs.gz +0 -0
  41. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  42. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  43. package/lib/cjs/persisters.cjs +1 -1
  44. package/lib/cjs/persisters.cjs.gz +0 -0
  45. package/lib/cjs/queries.cjs +1 -1
  46. package/lib/cjs/queries.cjs.gz +0 -0
  47. package/lib/cjs/relationships.cjs +1 -1
  48. package/lib/cjs/relationships.cjs.gz +0 -0
  49. package/lib/cjs/store.cjs +1 -1
  50. package/lib/cjs/store.cjs.gz +0 -0
  51. package/lib/cjs/tinybase.cjs +1 -1
  52. package/lib/cjs/tinybase.cjs.gz +0 -0
  53. package/lib/cjs/tools.cjs +1 -1
  54. package/lib/cjs/tools.cjs.gz +0 -0
  55. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  56. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  57. package/lib/cjs/ui-react.cjs +1 -1
  58. package/lib/cjs/ui-react.cjs.gz +0 -0
  59. package/lib/cjs-es6/checkpoints.cjs +1 -1
  60. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  61. package/lib/cjs-es6/indexes.cjs +1 -1
  62. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  63. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  64. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  65. package/lib/cjs-es6/metrics.cjs +1 -1
  66. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  78. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  82. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  83. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -0
  84. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  85. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  86. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  87. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
  88. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  89. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  90. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  91. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  92. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  93. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  94. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  95. package/lib/cjs-es6/persisters/persister-sync.cjs +1 -0
  96. package/lib/cjs-es6/persisters/persister-sync.cjs.gz +0 -0
  97. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  98. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  99. package/lib/cjs-es6/persisters.cjs +1 -1
  100. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  101. package/lib/cjs-es6/queries.cjs +1 -1
  102. package/lib/cjs-es6/queries.cjs.gz +0 -0
  103. package/lib/cjs-es6/relationships.cjs +1 -1
  104. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  105. package/lib/cjs-es6/store.cjs +1 -1
  106. package/lib/cjs-es6/store.cjs.gz +0 -0
  107. package/lib/cjs-es6/tinybase.cjs +1 -1
  108. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  109. package/lib/cjs-es6/tools.cjs +1 -1
  110. package/lib/cjs-es6/tools.cjs.gz +0 -0
  111. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  112. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  113. package/lib/cjs-es6/ui-react.cjs +1 -1
  114. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  115. package/lib/debug/checkpoints.js +3 -1
  116. package/lib/debug/indexes.js +3 -1
  117. package/lib/debug/mergeable-store.js +403 -179
  118. package/lib/debug/metrics.js +3 -1
  119. package/lib/debug/persisters/persister-automerge.js +42 -47
  120. package/lib/debug/persisters/persister-browser.js +42 -47
  121. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +67 -61
  122. package/lib/debug/persisters/persister-electric-sql.js +67 -61
  123. package/lib/debug/persisters/persister-expo-sqlite-next.js +67 -61
  124. package/lib/debug/persisters/persister-expo-sqlite.js +67 -61
  125. package/lib/debug/persisters/persister-file.js +42 -47
  126. package/lib/debug/persisters/persister-indexed-db.js +42 -47
  127. package/lib/debug/persisters/persister-libsql.js +902 -0
  128. package/lib/debug/persisters/persister-partykit-client.js +42 -47
  129. package/lib/debug/persisters/persister-powersync.js +917 -0
  130. package/lib/debug/persisters/persister-remote.js +42 -47
  131. package/lib/debug/persisters/persister-sqlite-wasm.js +67 -61
  132. package/lib/debug/persisters/persister-sqlite3.js +67 -61
  133. package/lib/debug/persisters/persister-sync.js +594 -0
  134. package/lib/debug/persisters/persister-yjs.js +44 -49
  135. package/lib/debug/persisters.js +41 -46
  136. package/lib/debug/queries.js +7 -4
  137. package/lib/debug/relationships.js +3 -1
  138. package/lib/debug/store.js +51 -36
  139. package/lib/debug/tinybase.js +439 -223
  140. package/lib/debug/tools.js +9 -6
  141. package/lib/debug/ui-react-dom.js +88 -80
  142. package/lib/debug/ui-react.js +1 -1
  143. package/lib/es6/checkpoints.js +1 -1
  144. package/lib/es6/checkpoints.js.gz +0 -0
  145. package/lib/es6/indexes.js +1 -1
  146. package/lib/es6/indexes.js.gz +0 -0
  147. package/lib/es6/mergeable-store.js +1 -1
  148. package/lib/es6/mergeable-store.js.gz +0 -0
  149. package/lib/es6/metrics.js +1 -1
  150. package/lib/es6/metrics.js.gz +0 -0
  151. package/lib/es6/persisters/persister-automerge.js +1 -1
  152. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  153. package/lib/es6/persisters/persister-browser.js +1 -1
  154. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  155. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  156. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  157. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  158. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  159. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  160. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  161. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  162. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  163. package/lib/es6/persisters/persister-file.js +1 -1
  164. package/lib/es6/persisters/persister-file.js.gz +0 -0
  165. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  166. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  167. package/lib/es6/persisters/persister-libsql.js +1 -0
  168. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  169. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  170. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  171. package/lib/es6/persisters/persister-powersync.js +1 -0
  172. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  173. package/lib/es6/persisters/persister-remote.js +1 -1
  174. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  175. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  176. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  177. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  178. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  179. package/lib/es6/persisters/persister-sync.js +1 -0
  180. package/lib/es6/persisters/persister-sync.js.gz +0 -0
  181. package/lib/es6/persisters/persister-yjs.js +1 -1
  182. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  183. package/lib/es6/persisters.js +1 -1
  184. package/lib/es6/persisters.js.gz +0 -0
  185. package/lib/es6/queries.js +1 -1
  186. package/lib/es6/queries.js.gz +0 -0
  187. package/lib/es6/relationships.js +1 -1
  188. package/lib/es6/relationships.js.gz +0 -0
  189. package/lib/es6/store.js +1 -1
  190. package/lib/es6/store.js.gz +0 -0
  191. package/lib/es6/tinybase.js +1 -1
  192. package/lib/es6/tinybase.js.gz +0 -0
  193. package/lib/es6/tools.js +1 -1
  194. package/lib/es6/tools.js.gz +0 -0
  195. package/lib/es6/ui-react-dom-debug.js +1 -1
  196. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  197. package/lib/es6/ui-react.js +1 -1
  198. package/lib/es6/ui-react.js.gz +0 -0
  199. package/lib/indexes.js +1 -1
  200. package/lib/indexes.js.gz +0 -0
  201. package/lib/mergeable-store.js +1 -1
  202. package/lib/mergeable-store.js.gz +0 -0
  203. package/lib/metrics.js +1 -1
  204. package/lib/metrics.js.gz +0 -0
  205. package/lib/persisters/persister-automerge.js +1 -1
  206. package/lib/persisters/persister-automerge.js.gz +0 -0
  207. package/lib/persisters/persister-browser.js +1 -1
  208. package/lib/persisters/persister-browser.js.gz +0 -0
  209. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  210. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  211. package/lib/persisters/persister-electric-sql.js +1 -1
  212. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  213. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  214. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  215. package/lib/persisters/persister-expo-sqlite.js +1 -1
  216. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  217. package/lib/persisters/persister-file.js +1 -1
  218. package/lib/persisters/persister-file.js.gz +0 -0
  219. package/lib/persisters/persister-indexed-db.js +1 -1
  220. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  221. package/lib/persisters/persister-libsql.js +1 -0
  222. package/lib/persisters/persister-libsql.js.gz +0 -0
  223. package/lib/persisters/persister-partykit-client.js +1 -1
  224. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  225. package/lib/persisters/persister-powersync.js +1 -0
  226. package/lib/persisters/persister-powersync.js.gz +0 -0
  227. package/lib/persisters/persister-remote.js +1 -1
  228. package/lib/persisters/persister-remote.js.gz +0 -0
  229. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  230. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  231. package/lib/persisters/persister-sqlite3.js +1 -1
  232. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  233. package/lib/persisters/persister-sync.js +1 -0
  234. package/lib/persisters/persister-sync.js.gz +0 -0
  235. package/lib/persisters/persister-yjs.js +1 -1
  236. package/lib/persisters/persister-yjs.js.gz +0 -0
  237. package/lib/persisters.js +1 -1
  238. package/lib/persisters.js.gz +0 -0
  239. package/lib/queries.js +1 -1
  240. package/lib/queries.js.gz +0 -0
  241. package/lib/relationships.js +1 -1
  242. package/lib/relationships.js.gz +0 -0
  243. package/lib/store.js +1 -1
  244. package/lib/store.js.gz +0 -0
  245. package/lib/tinybase.js +1 -1
  246. package/lib/tinybase.js.gz +0 -0
  247. package/lib/tools.js +1 -1
  248. package/lib/tools.js.gz +0 -0
  249. package/lib/types/checkpoints.d.ts +2 -2
  250. package/lib/types/indexes.d.ts +2 -2
  251. package/lib/types/mergeable-store.d.ts +143 -20
  252. package/lib/types/metrics.d.ts +2 -2
  253. package/lib/types/persisters/persister-automerge.d.ts +3 -0
  254. package/lib/types/persisters/persister-browser.d.ts +9 -2
  255. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
  256. package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
  257. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
  258. package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
  259. package/lib/types/persisters/persister-file.d.ts +5 -1
  260. package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
  261. package/lib/types/persisters/persister-libsql.d.ts +142 -0
  262. package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
  263. package/lib/types/persisters/persister-powersync.d.ts +157 -0
  264. package/lib/types/persisters/persister-remote.d.ts +3 -0
  265. package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
  266. package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
  267. package/lib/types/persisters/persister-sync.d.ts +182 -0
  268. package/lib/types/persisters/persister-yjs.d.ts +5 -2
  269. package/lib/types/persisters.d.ts +61 -3
  270. package/lib/types/queries.d.ts +2 -2
  271. package/lib/types/relationships.d.ts +2 -2
  272. package/lib/types/store.d.ts +36 -3
  273. package/lib/types/tinybase.d.ts +9 -9
  274. package/lib/types/tools.d.ts +2 -2
  275. package/lib/types/ui-react.d.ts +8 -8
  276. package/lib/types/with-schemas/checkpoints.d.ts +2 -2
  277. package/lib/types/with-schemas/indexes.d.ts +2 -2
  278. package/lib/types/with-schemas/mergeable-store.d.ts +415 -40
  279. package/lib/types/with-schemas/metrics.d.ts +2 -2
  280. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
  281. package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
  282. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
  283. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
  284. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
  285. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
  286. package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
  287. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
  288. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +155 -0
  289. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
  290. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
  291. package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
  292. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
  293. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
  294. package/lib/types/with-schemas/persisters/persister-sync.d.ts +195 -0
  295. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
  296. package/lib/types/with-schemas/persisters.d.ts +80 -7
  297. package/lib/types/with-schemas/queries.d.ts +3 -3
  298. package/lib/types/with-schemas/relationships.d.ts +2 -2
  299. package/lib/types/with-schemas/store.d.ts +136 -89
  300. package/lib/types/with-schemas/tinybase.d.ts +9 -9
  301. package/lib/types/with-schemas/tools.d.ts +2 -2
  302. package/lib/types/with-schemas/ui-react.d.ts +8 -8
  303. package/lib/ui-react.js +1 -1
  304. package/lib/ui-react.js.gz +0 -0
  305. package/lib/umd/checkpoints.js +1 -1
  306. package/lib/umd/checkpoints.js.gz +0 -0
  307. package/lib/umd/indexes.js +1 -1
  308. package/lib/umd/indexes.js.gz +0 -0
  309. package/lib/umd/mergeable-store.js +1 -1
  310. package/lib/umd/mergeable-store.js.gz +0 -0
  311. package/lib/umd/metrics.js +1 -1
  312. package/lib/umd/metrics.js.gz +0 -0
  313. package/lib/umd/persisters/persister-automerge.js +1 -1
  314. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  315. package/lib/umd/persisters/persister-browser.js +1 -1
  316. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  317. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  318. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  319. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  320. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  321. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  322. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  323. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  324. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  325. package/lib/umd/persisters/persister-file.js +1 -1
  326. package/lib/umd/persisters/persister-file.js.gz +0 -0
  327. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  328. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  329. package/lib/umd/persisters/persister-libsql.js +1 -0
  330. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  331. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  332. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  333. package/lib/umd/persisters/persister-powersync.js +1 -0
  334. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  335. package/lib/umd/persisters/persister-remote.js +1 -1
  336. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  337. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  338. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  339. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  340. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  341. package/lib/umd/persisters/persister-sync.js +1 -0
  342. package/lib/umd/persisters/persister-sync.js.gz +0 -0
  343. package/lib/umd/persisters/persister-yjs.js +1 -1
  344. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  345. package/lib/umd/persisters.js +1 -1
  346. package/lib/umd/persisters.js.gz +0 -0
  347. package/lib/umd/queries.js +1 -1
  348. package/lib/umd/queries.js.gz +0 -0
  349. package/lib/umd/relationships.js +1 -1
  350. package/lib/umd/relationships.js.gz +0 -0
  351. package/lib/umd/store.js +1 -1
  352. package/lib/umd/store.js.gz +0 -0
  353. package/lib/umd/tinybase.js +1 -1
  354. package/lib/umd/tinybase.js.gz +0 -0
  355. package/lib/umd/tools.js +1 -1
  356. package/lib/umd/tools.js.gz +0 -0
  357. package/lib/umd/ui-react-dom-debug.js +1 -1
  358. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  359. package/lib/umd/ui-react.js +1 -1
  360. package/lib/umd/ui-react.js.gz +0 -0
  361. package/lib/umd-es6/checkpoints.js +1 -1
  362. package/lib/umd-es6/checkpoints.js.gz +0 -0
  363. package/lib/umd-es6/indexes.js +1 -1
  364. package/lib/umd-es6/indexes.js.gz +0 -0
  365. package/lib/umd-es6/mergeable-store.js +1 -1
  366. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  367. package/lib/umd-es6/metrics.js +1 -1
  368. package/lib/umd-es6/metrics.js.gz +0 -0
  369. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  370. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  371. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  372. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  373. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  374. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  375. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  376. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  377. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  378. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  379. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  380. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  381. package/lib/umd-es6/persisters/persister-file.js +1 -1
  382. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  383. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  384. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  385. package/lib/umd-es6/persisters/persister-libsql.js +1 -0
  386. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  387. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  388. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  389. package/lib/umd-es6/persisters/persister-powersync.js +1 -0
  390. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  391. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  392. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  393. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  394. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  395. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  396. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  397. package/lib/umd-es6/persisters/persister-sync.js +1 -0
  398. package/lib/umd-es6/persisters/persister-sync.js.gz +0 -0
  399. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  400. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  401. package/lib/umd-es6/persisters.js +1 -1
  402. package/lib/umd-es6/persisters.js.gz +0 -0
  403. package/lib/umd-es6/queries.js +1 -1
  404. package/lib/umd-es6/queries.js.gz +0 -0
  405. package/lib/umd-es6/relationships.js +1 -1
  406. package/lib/umd-es6/relationships.js.gz +0 -0
  407. package/lib/umd-es6/store.js +1 -1
  408. package/lib/umd-es6/store.js.gz +0 -0
  409. package/lib/umd-es6/tinybase.js +1 -1
  410. package/lib/umd-es6/tinybase.js.gz +0 -0
  411. package/lib/umd-es6/tools.js +1 -1
  412. package/lib/umd-es6/tools.js.gz +0 -0
  413. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  414. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  415. package/lib/umd-es6/ui-react.js +1 -1
  416. package/lib/umd-es6/ui-react.js.gz +0 -0
  417. package/package.json +51 -35
  418. package/readme.md +2 -2
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",L=f+"s",C=f+h,w="Row",p=w+"Count",y=w+h,T="Sorted"+w+h,b="Cell",v=b+h,I="Value",S=I+"s",R=I+h,m=e=>s+e,M=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),E=(e,t=0)=>e.charCodeAt(t),k=Math.max,x=Math.min,D=isFinite,A=e=>null==e,J=(e,t,s)=>A(e)?s?.():t(e),F=e=>e==n||e==a,Q=e=>t(e)==n,H=e=>t(e)==r,z=e=>Array.isArray(e),N=(e,t,s)=>e.slice(t,s),O=e=>e.length,P=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>O(e)===O(t)&&j(e,((e,s)=>t[s]===e)),_=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),$=(e,t)=>e.sort(t),q=(e,t)=>e.forEach(t),G=(e,t)=>e.map(t),K=e=>X(e,((e,t)=>e+t),0),U=e=>0==O(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.keys,oe=te.isFrozen,re=te.freeze,le=e=>!A(e)&&J(se(e),(e=>e==te.prototype||A(se(e))),(()=>!0)),ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>G(ne(e),(([e,s])=>t(s,e))),he=e=>le(e)&&0==(e=>O(ae(e)))(e),fe=e=>e?.size??0,Le=(e,t)=>e?.has(t)??!1,Ce=e=>A(e)||0==fe(e),we=e=>[...e?.values()??[]],pe=e=>e.clear(),ye=(e,t)=>e?.forEach(t),Te=(e,t)=>e?.delete(t),be=e=>new Map(e),ve=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Se=(e,t)=>ye(e,((e,s)=>t(s,e))),Re=(e,t,s)=>A(s)?(Te(e,t),e):e?.set(t,s),me=(e,t,s)=>(Le(e,t)||Re(e,t,s()),Ie(e,t)),Me=(e,t,s,n=Re)=>(ge(t,((t,n)=>s(e,n,t))),Se(e,(s=>ce(t,s)?0:n(e,s))),e),Ve=(e,t,s)=>{const n={};return ye(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Ee=(e,t,s)=>Ve(e,(e=>Ve(e,t,s)),he),ke=(e,t,s)=>Ve(e,(e=>Ee(e,t,s)),he),xe=(e,t)=>{const s=be();return ye(e,((e,n)=>s.set(n,t?.(e)??e))),s},De=e=>xe(e,xe),Ae=e=>xe(e,De),Je=(e,t,s,n,a=0)=>J((s?me:Ie)(e,t[a],a>O(t)-2?s:be),(o=>{if(a>O(t)-2)return n?.(o)&&Re(e,t[a]),o;const r=Je(o,t,s,n,a+1);return Ce(o)&&Re(e,t[a]),r})),Fe=e=>{const s=t(e);return F(s)||s==o&&D(e)?s:void 0},Qe=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),He=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),ze=e=>new Set(z(e)||A(e)?e:[e]),Ne=(e,t)=>e?.add(t),Oe=(e,t,s,n,a)=>{const o=e.hasRow,r=be(),l=be(),i=be(),c=be(),d=be(),u=be(),g=(t,s,...n)=>{const a=me(u,t,ze);return q(n,(t=>Ne(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>J(Ie(u,t),(n=>{q(U(s)?we(n):s,(t=>{e.delListener(t),Te(n,t)})),Ce(n)&&Re(u,t)})),f=(e,s)=>{Re(r,e,s),Le(l,e)||(Re(l,e,t()),Re(c,e,be()),Re(d,e,be()),a(i))},L=e=>{Re(r,e),Re(l,e),Re(c,e),Re(d,e),h(e),a(i)};return[()=>e,()=>ve(r),e=>Se(l,e),e=>Le(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>Re(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=be(),u=be(),L=Ie(c,t),C=Ie(d,t),w=t=>{const a=s=>e.getCell(n,t,s),c=Ie(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&B(c,d)||Re(i,t,[c,d]),!A(l)){const e=Ie(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&Re(u,t,s)}},p=e=>{a((()=>{ye(i,(([,e],t)=>Re(L,t,e))),ye(u,((e,t)=>Re(C,t,e)))}),i,u,L,C,e),pe(i),pe(u)};Se(L,w),e.hasTable(n)&&q(e.getRowIds(n),(e=>{Le(L,e)||w(e)})),p(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>p())))},L,e=>n(e,i),()=>Se(u,L),g,h]},Pe=(e,t)=>Q(e)?t=>t(e):e??(()=>t??s),We=(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}},je=/^\d+$/,Be=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{je.test(t)&&O(e)<1e3&&Y(e,t)}]},_e=e=>{let t;const[n,a]=Be(),o=be();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return Re(o,d,[a,r,l,i,c]),Ne(Je(r,l??[s],ze),d),d},(e,n,...a)=>q(((e,t=[s])=>{const n=[],a=(e,s)=>s==O(t)?Y(n,e):null===t[s]?ye(e,(e=>a(e,s+1))):q([t[s],null],(t=>a(Ie(e,t),s+1)));return a(e,0),n})(e,n),(e=>ye(e,(e=>Ie(o,e)[0](t,...n??[],...a))))),e=>J(Ie(o,e),(([,t,n])=>(Je(t,n??[s],void 0,(t=>(Te(t,e),Ce(t)?1:0))),Re(o,e),a(e),n))),e=>J(Ie(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=O(r);l==O(s)?e(t,...r,...a(r)):A(s[l])?q(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},$e=We((e=>{let t,n,a,o=100,r=be(),l=be(),i=1;const c=be(),d=be(),[u,g,h]=_e((()=>F)),f=be(),L=be(),C=[],w=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Ie(f,s);ye(n,((s,n)=>ye(s,((s,a)=>ye(s,((s,o)=>Qe(e,n,a,o,s[t]))))))),ye(a,((s,n)=>He(e,n,s[t])))})),i=1},y=e=>{Re(f,e),Re(L,e),g(d,[e])},T=(e,t)=>q(((e,t)=>e.splice(0,t))(e,t??O(e)),y),b=()=>T(C,O(C)-o),v=()=>J(t,(()=>{Y(C,t),b(),T(w),t=void 0,a=1})),I=()=>{t=Z(C),a=1};let S,R;const m=(e="")=>(A(t)&&(t=s+n++,Re(f,t,[r,l]),x(t,e),r=be(),l=be(),a=1),t),M=()=>{U(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),p(0,t),t=Z(C),a=1)},V=()=>{U(w)||(Y(C,t),t=ee(w),p(1,t),a=1)},E=()=>{a&&(g(c),a=0)},k=e=>{const t=m(e);return E(),t},x=(e,t)=>(D(e)&&Ie(L,e)!==t&&(Re(L,e,t),g(d,[e])),F),D=e=>Le(f,e),F={setSize:e=>(o=e,b(),F),addCheckpoint:k,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...C],t,[...w]],forEachCheckpoint:e=>Se(L,e),hasCheckpoint:D,getCheckpoint:e=>Ie(L,e),goBackward:()=>(M(),E(),F),goForward:()=>(V(),E(),F),goTo:e=>{const s=W(C,e)?M:W(w,e)?V:null;for(;!A(s)&&e!=t;)s();return E(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),F),clear:()=>(T(C),T(w),A(t)||y(t),t=void 0,n=0,k(),F),clearForward:()=>(U(w)||(T(w),g(c)),F),destroy:()=>{e.delListener(S),e.delListener(R)},getListenerStats:()=>({}),_registerListeners:()=>{S=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){v();const e=me(r,t,be),l=me(e,s,be),i=me(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ce(Re(l,n))&&Ce(Re(e,s))&&Ce(Re(r,t))&&I(),E()}})),R=e.addValueListener(null,((e,t,s,n)=>{if(i){v();const e=me(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Ce(Re(l,t))&&I(),E()}}))}};return re(F.clear())}),(e=>e._registerListeners())),qe=(e,t)=>(e??0)<(t??0)?-1:1,Ge=We((e=>{const t=be(),n=be(),[a,o,r]=_e((()=>y)),[l,i,c,d,u,g,h,,f,L,C,w]=Oe(e,be,(e=>A(e)?s:z(e)?G(e,m):m(e)),a,o),p=(t,s,n)=>{const a=u(t);ye(n,((t,n)=>s(n,(s=>ye(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},y={setIndexDefinition:(e,s,a,r,l,i=qe)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let L=0;const C=ze(),w=ze(),p=g(e);if(ye(a,(([e,t],s)=>{const n=ze(e),a=ze(t);ye(n,(e=>Te(a,e)?Te(n,e):0)),ye(n,(e=>{Ne(C,e),J(Ie(p,e),(t=>{Te(t,s),Ce(t)&&(Re(p,e),L=1)}))})),ye(a,(e=>{Ne(C,e),Le(p,e)||(Re(p,e,ze()),L=1),Ne(Ie(p,e),s),A(r)||Ne(w,e)}))})),s(),Ce(u)||(f?Se(p,(e=>Ne(w,e))):Se(l,(e=>J(Ie(d,e),(e=>Ne(w,e))))),ye(w,(e=>{const t=(t,s)=>i(Ie(u,t),Ie(u,s),e),s=[...Ie(p,e)];_(s,t)||(Re(p,e,ze($(s,t))),Ne(C,e))}))),(L||f)&&!A(c)){const t=[...p];_(t,c)||(h(e,be($(t,c))),L=1)}L&&o(t,[e]),ye(C,(t=>o(n,[e,t])))}),Pe(a),J(r,Pe)),y},delIndexDefinition:e=>(L(e),y),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>Le(g(e),t),getTableId:u,getSliceIds:e=>ve(g(e)),getSliceRowIds:(e,t)=>we(Ie(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),y),destroy:w,getListenerStats:()=>({})};return re(y)})),Ke=be([["avg",[(e,t)=>K(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=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>K(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ue=(e,t,s,n,a,o=!1)=>{if(Ce(s))return;const[r,l,i,c]=a;return o||=A(e),ye(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(we(s),fe(s)):e},Xe=We((e=>{const t=be(),[n,a,o]=_e((()=>w)),[r,l,i,c,d,u,g,,h,f,L,C]=Oe(e,P,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),w={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=H(n)?[n,r,l,i]:Ie(Ke,n)??Ie(Ke,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=fe(r);i||=A(d),s();let f=Ue(d,h,r,n,c,i);D(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),Pe(o,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),w),destroy:C,getListenerStats:()=>({})};return re(w)})),Ye=be(),Ze=be(),et=e=>Q(e?.[0]),tt=We((e=>{const t=e.createStore,n=t(),a=t(),o=be(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,L,C,I,,,S,,R,m,M,V,E]=Oe(e,(()=>!0),P,r,l),k=(e,t,...s)=>q(s,(s=>Ne(me(me(o,t,be),e,ze),s))),x=e=>{J(Ie(o,e),(e=>{Se(e,((e,t)=>ye(t,(t=>e.delListener(t))))),pe(e)})),q([a,n],(t=>t.delTable(e)))},D=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(t,o,r)=>{S(t,o),x(t);const l=[],i=[[null,[o,null,null,[],be()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=H(e)?[O(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||H(t)?null:t,a=A(n)?t:s,o=[e,[e,n,H(a)?a:e=>e(a),[],be()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,H(e)?e:A(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,H(t)?[t,s,n,a]:Ie(Ke,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,H(e)?e:s=>s(e)===t)});const g=be(l);if(Ce(g))return F;const h=be(i);Se(h,((e,[,t])=>J(Ie(h,t),(({3:t})=>A(e)?0:Y(t,e)))));const f=be(d);let L=n;if(Ce(f)&&U(u))L=a;else{D(t,L,a);const e=be();Se(f,((t,[s,n])=>Ne(me(e,s,ze),[t,n])));const s=ze();Se(g,(t=>Le(e,t)?0:Ne(s,t)));const n=be(),o=(s,n,o,r)=>J(s,(([l,i,c,d])=>{Se(n,((t,[s])=>{const n=me(l,t,be),a=Ie(n,o),i=r?void 0:s;if(a!==i){const s=ze([[a,i]]),r=fe(n);Re(n,o,i),ye(Ie(e,t),(([e,t])=>{const a=Ue(d[e],r,n,s,t);d[e]=A(Fe(a))?null:a}))}})),Ce(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));k(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=be(),g=L.hasRow(t,l);let h=!g;ye(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Se(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&Re(u,e,[n])})),h&&o(Je(n,c,void 0,(([,e])=>(Te(e,l),Ce(e)))),u,l,1),g&&o(Je(n,d,(()=>{const e={};return ye(s,(s=>e[s]=L.getCell(t,l,s))),[be(),ze(),void 0,e]}),(([,e])=>{Ne(e,l)})),u,l)})))}D(t,e,L);const C=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);q(r,(n=>{const[a,,o,r,i]=Ie(h,n),c=o?.(l,s),[d,u]=Ie(i,s)??[];c!=d&&(A(u)||E(t,u),Re(i,s,A(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>C(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[Ie(h,t)?.[0],Ie(Ie(h,t)?.[4],s)?.[0],n]);L.transaction((()=>j(c,(e=>e(n)))?Se(g,((e,a)=>Qe(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:w}=Ie(h,null);return L.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?C(a,o,a,w):(L.delRow(t,a),ye(h,(({4:e})=>J(Ie(e,a),(([,s])=>{E(t,s),Re(e,a)})))))}))))),F},delQueryDefinition:e=>(x(e),R(e),F),getStore:g,getQueryIds:h,forEachQuery:L,hasQuery:C,getTableId:I,addQueryIdsListener:e=>m((()=>e(F))),delListener:e=>(i(e),F),destroy:M,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+v]:[0,1],[p]:[0,1],[y]:[0,1],[T]:[0,5],[w]:[1,2],[v]:[0,2],[b]:[1,3]},(([e,t],s)=>{q(e?["get","has","forEach"]:["get"],(e=>F[e+d+s]=(...t)=>a[e+s](...t))),F[u+d+s+c]=(...e)=>a[u+s+c](...N(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),re(F)})),st=We((e=>{const t=be(),n=be(),a=be(),o=be(),[r,l,i]=_e((()=>v)),[c,d,u,g,h,f,,,L,C,w,p]=Oe(e,(()=>[be(),be(),be(),be()]),(e=>A(e)?void 0:e+s),r,l),y=(e,t,s)=>J(f(e),(([n,,a])=>{if(!Le(a,t)){const o=ze();if(h(e)!=b(e))Ne(o,t);else{let e=t;for(;!A(e)&&!Le(o,e);)Ne(o,e),e=Ie(n,e)}if(s)return o;Re(a,t,o)}return Ie(a,t)})),T=(e,t)=>J(f(e),(([,,e])=>Re(e,t))),b=e=>Ie(t,e),v={setRelationshipDefinition:(e,s,r,i)=>(Re(t,e,r),L(e,s,((t,s)=>{const r=ze(),i=ze(),c=ze(),[d,u]=f(e);ye(s,(([t,s],n)=>{A(t)||(Ne(i,t),J(Ie(u,t),(e=>{Te(e,n),Ce(e)&&Re(u,t)}))),A(s)||(Ne(i,s),Le(u,s)||Re(u,s,ze()),Ne(Ie(u,s),n)),Ne(r,n),Re(d,n,s),Se(Ie(o,e),(t=>{Le(y(e,t),n)&&Ne(c,t)}))})),t(),ye(r,(t=>l(n,[e,t]))),ye(i,(t=>l(a,[e,t]))),ye(c,(t=>{T(e,t),l(o,[e,t])}))}),Pe(i)),v),delRelationshipDefinition:e=>(Re(t,e),C(e),v),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:b,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:we(y(e,t,!0)),addRelationshipIdsListener:w,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(y(e,t),r(s,o,[e,t])),delListener:e=>(T(...i(e)??[]),v),destroy:p,getListenerStats:()=>({})};return re(v)})),nt=(e="",t)=>[e,t],at=(e="")=>nt(e,be()),ot=e=>nt(e,ie()),rt=([e,t],s)=>[e,s(t,e)],lt=([e,t])=>[e,t],it=(e,t)=>rt(e,(e=>Ve(e,t))),ct=(e,t,s,n)=>ue(e,((e,a)=>dt(e,me(t,a,at),s[a]=ie(),n))),dt=([e,t],s,n,a)=>{e>s[0]&&(s[0]=e),a(t,s[1],n)},ut=(e,t,s)=>ue(e,(([e,n],a)=>{const o=me(t,a,nt);e>o[0]&&(o[0]=e,o[1]=s[a]=n)})),gt=e=>[e,e],ht=()=>[be(),be()],ft=e=>[...e],Lt=([e,t])=>e===t,Ct=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),wt=JSON.parse,pt=(e,t,s)=>A(e)||!le(e)||he(e)||oe(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!he(e)),yt=(e,t,s)=>Re(e,t,Ie(e,t)==-s?void 0:s),Tt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=be(),h=be(),T=be(),M=be(),V=be(),E=be(),k=be(),x=be(),D=be(),Q=be(),z=be(),O=be(),P=be(),j=be(),_=ze(),K=be(),U=be(),X=be(),Z=be(),ee=ht(),te=ht(),se=ht(),ne=ht(),ae=ht(),oe=ht(),le=ht(),ie=ht(),ue=ht(),we=ht(),Je=ht(),Oe=ht(),Pe=ht(),We=ht(),je=ht(),$e=ht(),Ge=ht(),Ke=ht(),Ue=ht(),Xe=ht(),Ye=ht(),Ze=ht(),et=be(),tt=ht(),[st,nt,at,ot]=_e((()=>Js)),rt=e=>{if(!pt(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!F(t)&&t!=o||(Fe(e[i])!=t&&de(e,i),0))},lt=(t,s)=>(!e||Le(z,s)||$t(s))&&pt(t,((e,t)=>it(s,t,e)),(()=>$t(s))),it=(e,t,s,n)=>pt(n?s:bt(s,e,t),((n,a)=>J(ct(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),ct=(t,s,n,a)=>e?J(Ie(Ie(z,t),n),(e=>Fe(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):A(Fe(a))?$t(t,s,n,a):a,dt=(e,t)=>pt(t?e:vt(e),((t,s)=>J(ut(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),ut=(e,s)=>t?J(Ie(P,e),(t=>Fe(s)!=t[l]?qt(e,s,t[i]):s),(()=>qt(e,s))):A(Fe(s))?qt(e,s):s,bt=(e,t,s)=>(J(Ie(O,t),(([n,a])=>{ye(n,((t,s)=>{ce(e,s)||(e[s]=t)})),ye(a,(n=>{ce(e,n)||$t(t,s,n)}))})),e),vt=e=>(t&&(ye(j,((t,s)=>{ce(e,s)||(e[s]=t)})),ye(_,(t=>{ce(e,t)||qt(t)}))),e),It=e=>Me(z,e,((e,t,s)=>{const n=be(),a=ze();Me(me(z,t,be),s,((e,t,s)=>{Re(e,t,s),J(s[i],(e=>Re(n,t,e)),(()=>Ne(a,t)))})),Re(O,t,[n,a])}),((e,t)=>{Re(z,t),Re(O,t)})),St=e=>Me(P,e,((e,t,s)=>{Re(P,t,s),J(s[i],(e=>Re(j,t,e)),(()=>Ne(_,t)))}),((e,t)=>{Re(P,t),Re(j,t),Te(_,t)})),Rt=e=>he(e)?Rs():Ts(e),mt=e=>Me(X,e,((e,t,s)=>Mt(t,s)),((e,t)=>Qt(t))),Mt=(e,t)=>Me(me(X,e,(()=>(Ot(e,1),Re(K,e,Be()),Re(U,e,be()),be()))),t,((t,s,n)=>Vt(e,t,s,n)),((t,s)=>Ht(e,t,s))),Vt=(e,t,s,n,a)=>Me(me(t,s,(()=>(Pt(e,s,1),be()))),n,((t,n,a)=>Et(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),Et=(e,t,s,n,a)=>{Le(s,n)||Wt(e,t,n,1);const o=Ie(s,n);a!==o&&(jt(e,t,n,o,a),Re(s,n,a))},kt=(e,t,s,n,a)=>J(Ie(t,s),(t=>Et(e,s,t,n,a)),(()=>Vt(e,t,s,bt({[n]:a},e,s)))),xt=e=>he(e)?Vs():bs(e),Dt=e=>Me(Z,e,((e,t,s)=>At(t,s)),((e,t)=>Nt(t))),At=(e,t)=>{Le(Z,e)||Bt(e,1);const s=Ie(Z,e);t!==s&&(_t(e,s,t),Re(Z,e,t))},Jt=(e,t)=>{const[s]=Ie(K,e),n=s(t);return Le(Ie(X,e),n)?Jt(e,t):n},Ft=e=>Ie(X,e)??Mt(e,{}),Qt=e=>Mt(e,{}),Ht=(e,t,s)=>{const[,n]=Ie(K,e);n(s),Vt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Ie(Ie(O,e)?.[0],a);if(!A(r)&&!o)return Et(e,s,n,a,r);const l=t=>{jt(e,s,t,Ie(n,t)),Wt(e,s,t,-1),Re(n,t)};A(r)?l(a):Se(n,l),Ce(n)&&(Pt(e,s,-1),Ce(Re(t,s))&&(Ot(e,-1),Re(X,e),Re(K,e),Re(U,e)))},Nt=e=>{const t=Ie(j,e);if(!A(t))return At(e,t);_t(e,Ie(Z,e)),Bt(e,-1),Re(Z,e)},Ot=(e,t)=>yt(d,e,t),Pt=(e,t,s)=>yt(me(M,e,be),t,s)&&Re(T,e,me(T,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Ie(U,e),o=Ie(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&yt(me(h,e,be),s,n),Re(a,s,o!=-n?o+n:null),yt(me(me(V,e,be),t,be),s,n)},jt=(e,t,s,n,a)=>me(me(me(E,e,be),t,be),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>yt(k,e,t),_t=(e,t,s)=>me(x,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(Y(me(me(me(D,e,be),t,be),s,(()=>[])),n),a),qt=(e,t,s)=>(Y(me(Q,e,(()=>[])),t),s),Gt=(e,t,s)=>J(Ie(Ie(Ie(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...gt(cs(e,t,s))])),Kt=e=>J(Ie(x,e),(([e,t])=>[!0,e,t]),(()=>[!1,...gt(gs(e))])),Ut=e=>Ce(D)||Ce($e[e])?0:ye(e?Ae(D):D,((t,s)=>ye(t,((t,n)=>ye(t,((t,a)=>nt($e[e],[s,n,a],t))))))),Xt=e=>Ce(Q)||Ce(Ge[e])?0:ye(e?xe(Q):Q,((t,s)=>nt(Ge[e],[s],t))),Yt=(e,t,s,n)=>{if(!Ce(e))return nt(t,n,(()=>Ve(e))),Se(e,((e,t)=>nt(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&nt(ee[e],void 0,t);const n=Ce(we[e]),a=Ce(Pe[e])&&Ce(We[e])&&Ce(ue[e])&&Ce(Je[e])&&Ce(oe[e])&&Ce(le[e])&&Ce(ie[e])&&n&&Ce(se[e])&&Ce(ne[e]),o=Ce(je[e])&&Ce(Oe[e])&&Ce(ae[e])&&Ce(te[e]);if(!a||!o){const t=e?[xe(d),De(h),xe(T),De(M),Ae(V),Ae(E)]:[d,h,T,M,V,E];if(!a){Yt(t[0],se[e],ne[e]),ye(t[1],((t,s)=>Yt(t,oe[e],le[e],[s]))),ye(t[2],((t,s)=>{0!=t&&nt(ie[e],[s],os(s))}));const s=ze();ye(t[3],((t,a)=>{Yt(t,ue[e],Je[e],[a])&&!n&&(nt(we[e],[a,null]),Ne(s,a))})),n||ye(t[5],((t,n)=>{if(!Le(s,n)){const s=ze();ye(t,(e=>ye(e,(([t,n],a)=>n!==t?Ne(s,a):Te(e,a))))),ye(s,(t=>nt(we[e],[n,t])))}})),ye(t[4],((t,s)=>ye(t,((t,n)=>Yt(t,Pe[e],We[e],[s,n])))))}if(!o){let s;ye(t[5],((t,n)=>{let a;ye(t,((t,o)=>{let r;ye(t,(([t,l],i)=>{l!==t&&(nt(je[e],[n,o,i],l,t,Gt),s=a=r=1)})),r&&nt(Oe[e],[n,o],Gt)})),a&&nt(ae[e],[n],Gt)})),s&&nt(te[e],void 0,Gt)}}},es=e=>{const t=ps();t!=n&&nt(Ke[e],void 0,t);const s=Ce(Xe[e])&&Ce(Ye[e]),a=Ce(Ze[e])&&Ce(Ue[e]);if(!s||!a){const t=e?[xe(k),xe(x)]:[k,x];if(s||Yt(t[0],Xe[e],Ye[e]),!a){let s;ye(t[1],(([t,n],a)=>{n!==t&&(nt(Ze[e],[a],n,t,Kt),s=1)})),s&&nt(Ue[e],void 0,Kt)}}},ts=(e,...t)=>(xs((()=>e(...G(t,m)))),Js),ss=()=>ke(X),ns=()=>ve(X),as=e=>ve(Ie(U,m(e))),os=e=>fe(Ie(X,m(e))),rs=e=>ve(Ie(X,m(e))),ls=(e,t,s,n=0,a)=>{return G(N($((o=Ie(X,m(e)),r=(e,s)=>[A(t)?s:Ie(e,m(t)),s],G([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>qe(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>ve(Ie(Ie(X,m(e)),m(t))),cs=(e,t,s)=>Ie(Ie(Ie(X,m(e)),m(t)),m(s)),ds=()=>Ve(Z),us=()=>ve(Z),gs=e=>Ie(Z,m(e)),hs=()=>!Ce(X),fs=e=>Le(X,m(e)),Ls=(e,t)=>Le(Ie(U,m(e)),m(t)),Cs=(e,t)=>Le(Ie(X,m(e)),m(t)),ws=(e,t,s)=>Le(Ie(Ie(X,m(e)),m(t)),m(s)),ps=()=>!Ce(Z),ys=e=>Le(Z,m(e)),Ts=e=>ts((()=>(e=>pt(e,lt,$t))(e)?mt(e):0)),bs=e=>ts((()=>dt(e)?Dt(e):0)),vs=e=>{try{Rt(wt(e))}catch{}return Js},Is=t=>ts((()=>{if((e=pt(t,(e=>pt(e,rt))))&&(It(t),!Ce(X))){const e=ss();Rs(),Ts(e)}})),Ss=e=>ts((()=>{if(t=(e=>pt(e,rt))(e)){const s=ds();ks(),Vs(),t=!0,St(e),bs(s)}})),Rs=()=>ts((()=>mt({}))),ms=e=>ts((e=>Le(X,e)?Qt(e):0),e),Ms=(e,t)=>ts(((e,t)=>J(Ie(X,e),(s=>Le(s,t)?Ht(e,s,t):0))),e,t),Vs=()=>ts((()=>Dt({}))),Es=()=>ts((()=>{It({}),e=!1})),ks=()=>ts((()=>{St({}),t=!1})),xs=(e,t)=>{if(-1!=a){Ds();const s=e();return As(t),s}},Ds=()=>(-1!=a&&a++,1==a&&nt(et,void 0),Js),As=e=>(a>0&&(a--,0==a&&(a=1,Ut(1),Ce(E)||Zt(1),Xt(1),Ce(x)||es(1),e?.(Js)&&(ye(E,((e,t)=>ye(e,((e,s)=>ye(e,(([e],n)=>Qe(Js,t,s,n,e))))))),pe(E),ye(x,(([e],t)=>He(Js,t,e))),pe(x)),nt(tt[0],void 0),a=-1,Ut(0),Ce(E)||Zt(0),Xt(0),Ce(x)||es(0),r[0]?.(Js),nt(tt[1],void 0),r[1]?.(Js),a=0,s=hs(),n=ps(),q([d,h,T,M,V,E,D,k,x,Q],pe))),Js),Js={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>Ee(Ie(X,m(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>Ve(Ie(Ie(X,m(e)),m(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:Ls,hasRow:Cs,hasCell:ws,hasValues:ps,hasValue:ys,getTablesJson:()=>Ct(X),getValuesJson:()=>Ct(Z),getJson:()=>Ct([X,Z]),getTablesSchemaJson:()=>Ct(z),getValuesSchemaJson:()=>Ct(P),getSchemaJson:()=>Ct([z,P]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(he(e)?Rs:Ts)(e),(he(t)?Vs:bs)(t)})),setTables:Ts,setTable:(e,t)=>ts((e=>lt(t,e)?Mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>it(e,t,s)?Vt(e,Ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>xs((()=>{let n;return it(e,n,t)&&(e=m(e),Vt(e,Ft(e),n=Jt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(it(e,t,s,1)){const n=Ft(e);ge(s,((s,a)=>kt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>J(ct(e,t,s,H(n)?n(cs(e,t,s)):n),(n=>kt(e,Ft(e),t,s,n)))),e,t,s),setValues:bs,setPartialValues:e=>ts((()=>dt(e,1)?ge(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ts((e=>J(ut(e,H(t)?t(gs(e)):t),(t=>At(e,t)))),e),applyChanges:e=>ts((()=>{ge(e[0],((e,t)=>A(e)?ms(t):ge(e,((e,s)=>A(e)?Ms(t,s):ge(e,((e,n)=>Qe(Js,t,s,n,e))))))),ge(e[1],((e,t)=>He(Js,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{xt(wt(e))}catch{}return Js},setJson:e=>ts((()=>{try{const[t,s]=wt(e);Rt(t),xt(s)}catch{vs(e)}})),setTablesSchema:Is,setValuesSchema:Ss,setSchema:(e,t)=>ts((()=>{Is(e),Ss(t)})),delTables:Rs,delTable:ms,delRow:Ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>J(Ie(X,e),(a=>J(Ie(a,t),(o=>Le(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>Le(Z,e)?Nt(e):0),e),delTablesSchema:Es,delValuesSchema:ks,delSchema:()=>ts((()=>{Es(),ks()})),transaction:xs,startTransaction:Ds,getTransactionChanges:()=>[Ve(E,((e,t)=>-1===Ie(d,t)?void 0:Ve(e,((e,s)=>-1===Ie(Ie(M,t),s)?void 0:Ve(e,(([,e])=>e),((e,t)=>Lt(t)))),he)),he),Ve(x,(([,e])=>e),((e,t)=>Lt(t)))],getTransactionLog:()=>[!Ce(E),!Ce(x),ke(E,ft,Lt),ke(D),Ve(x,ft,Lt),Ve(Q),Ve(d),Ee(M),ke(V),Ve(k)],finishTransaction:As,forEachTable:e=>ye(X,((t,s)=>e(s,(e=>ye(t,((t,s)=>e(s,(e=>Se(t,e))))))))),forEachTableCell:(e,t)=>Se(Ie(U,m(e)),t),forEachRow:(e,t)=>ye(Ie(X,m(e)),((e,s)=>t(s,(t=>Se(e,t))))),forEachCell:(e,t,s)=>Se(Ie(Ie(X,m(e)),m(t)),s),forEachValue:e=>Se(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return st((()=>{const r=ls(e,t,s,n,a);B(r,l)||(l=r,o(Js,e,t,s,n,a,l))}),we[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>st(e,et),addWillFinishTransactionListener:e=>st(e,tt[0]),addDidFinishTransactionListener:e=>st(e,tt[1]),callListener:e=>(ot(e),Js),delListener:e=>(at(e),Js),getListenerStats:()=>({}),createStore:Tt,addListener:st,callListeners:nt,setInternalListeners:(e,t)=>r=[e,t]};return ge({[g+L]:[0,ee,[],()=>[hs()]],[L]:[0,te],[C]:[0,se],[g+f]:[1,ne,[ns],e=>[fs(...e)]],[f]:[1,ae,[ns]],[f+v]:[1,oe,[ns]],[g+f+b]:[2,le,[ns,as],e=>[Ls(...e)]],[p]:[1,ie,[ns]],[y]:[1,ue,[ns]],[g+w]:[2,Je,[ns,rs],e=>[Cs(...e)]],[w]:[2,Oe,[ns,rs]],[v]:[2,Pe,[ns,rs]],[g+b]:[3,We,[ns,rs,is],e=>[ws(...e)]],[b]:[3,je,[ns,rs,is],e=>gt(cs(...e))],InvalidCell:[3,$e],[g+S]:[0,Ke,[],()=>[ps()]],[S]:[0,Ue],[R]:[0,Xe],[g+I]:[1,Ye,[us],e=>[ys(...e)]],[I]:[1,Ze,[us],e=>gt(gs(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{Js[u+a+c]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?N(a,0,e):void 0,s,n)})),re(Js)},bt=2**36,vt=2**30,It=2**24,St=2**18,Rt=4096,mt=64,Mt=e=>String.fromCharCode(48+(63&e)),Vt=(e,t)=>E(e,t)-48,Et={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},kt=(e="")=>[e,[at(e),at(e)]];e.createCheckpoints=$e,e.createCustomPersister=(e,t,s,n,a,o,r,[l,i]=[],c=[])=>{let d,u,g,h=0,f=0;me(Ye,c,(()=>0)),me(Ze,c,(()=>[]));const[L,C,w,p]=((e,t)=>!e||A(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!he(e)||!he(t)])(r,e),y=async e=>(2!=h&&(h=1,await T.schedule((async()=>{await e(),h=0}))),T),T={load:async(s,n)=>await y((async()=>{try{const s=await t();(L&&et(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(T.stopAutoLoad(),await T.load(s,a),f=1,g=n((async(s,n)=>{if(n){const t=n();await y((async()=>(L&&et(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await y((async()=>{try{const n=s?.()??await t();(L&&et(n)?e.setMergeableContent:e.setContent)(n)}catch(e){o?.(e)}}))})),T),stopAutoLoad:()=>(f&&(a(g),g=void 0,f=0),T),save:async e=>(1!=h&&(h=2,await T.schedule((async()=>{try{await s(C,e)}catch(e){o?.(e)}h=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const e=w();p(e)&&T.save((()=>e))})),T),stopAutoSave:()=>(J(d,e.delListener),d=void 0,T),schedule:async(...e)=>(Y(Ie(Ze,c),...e),await(async()=>{if(!Ie(Ye,c)){for(Re(Ye,c,1);!A(u=ee(Ie(Ze,c)));)try{await u()}catch(e){o?.(e)}Re(Ye,c,0)}})(),T),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(T[l]=()=>i),re(T)},e.createIndexes=Ge,e.createMergeableStore=e=>{let t,n,a=1,o=kt();const[r,l]=(e=>{let t=0,s=-1;const n=X(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^E(t)),5381)>>>0,a=e=>{const n=t,[a,o]=A(e)?[0,0]:[Vt(r=e,0)*bt+Vt(r,1)*vt+Vt(r,2)*It+Vt(r,3)*St+Vt(r,4)*Rt+Vt(r,5)*mt+Vt(r,6),Vt(r,7)*St+Vt(r,8)*Rt+Vt(r,9)*mt+Vt(r,10),Vt(r,11)*It+Vt(r,12)*St+Vt(r,13)*Rt+Vt(r,14)*mt+Vt(r,15)];var r;t=k(n,a,Date.now()),s=t==n?t==a?k(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,Mt((e=t)/bt)+Mt(e/vt)+Mt(e/It)+Mt(e/St)+Mt(e/Rt)+Mt(e/mt)+Mt(e)+Mt(o/St)+Mt(o/Rt)+Mt(o/mt)+Mt(o)+Mt(r/It)+Mt(r/St)+Mt(r/Rt)+Mt(r/mt)+Mt(r);var e,o,r},a]})(e),i=Tt(),c=e=>{const t=a;a=0,e(),a=t},d=()=>{if(A(n)){const[,,e,,n]=i.getTransactionLog(),a=he(e)&&he(n)?s:t??(t=r()),o=nt(a,[ot(he(e)?s:a),ot(he(n)?s:a)]),[[,l],[,c]]=o[1];return ge(e,((e,t)=>{const[,s]=l[t]=ot(a);ge(e,((e,t)=>{const[,n]=s[t]=ot(a);ge(e,(([,e],t)=>n[t]=nt(a,e)))}))})),ge(n,(([,e],t)=>c[t]=nt(a,e))),o}return n},u=e=>{const t=[{},{}];return l(e[0]),dt(e,o,t,(([e,t],[s,n],[a,o])=>{dt(e,s,a,((e,t,s)=>ct(e,t,s,((e,t,s)=>ct(e,t,s,ut))))),dt(t,n,o,ut)})),c((()=>i.applyChanges(t))),g},g={getMergeableContent:()=>rt(o,(([e,t])=>[it(e,(e=>it(e,(e=>it(e,lt))))),it(t,lt)])),setMergeableContent:e=>(c((()=>i.transaction((()=>{i.delTables().delValues(),o=kt()})))),u(e),g),getTransactionMergeableChanges:d,applyMergeableChanges:u,merge:e=>{const t=g.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableChanges(t),u(s)}};return i.setInternalListeners((()=>{if(a){n=d();const[e,[t,s]]=n,a=!he(t[1]),r=!he(s[1]),[,[l,i]]=o;(a||r)&&(o[0]=e),a&&(l[0]=e,ge(t[1],(([,t],s)=>{const n=me(l[1],s,at);n[0]=e,ge(t,(([,t],s)=>{const a=me(n[1],s,at);a[0]=e,ge(t,(([,t],s)=>Re(a[1],s,nt(e,t))))}))}))),r&&(i[0]=e,ge(s[1],(([,t],s)=>Re(i[1],s,nt(e,t)))))}}),(()=>t=n=void 0)),ge(i,((e,t)=>g[t]=M(t,"set")||M(t,"del")||M(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),g):M(t,"add")&&V(t,"Listener")?(...s)=>{const n=Et[N(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(g,...t),e(...s)}:e)),re(g)},e.createMetrics=Xe,e.createQueries=tt,e.createRelationships=st,e.createStore=Tt,e.defaultSorter=qe},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",L=f+"s",C=f+h,b="Row",w=b+"Count",p=b+h,T="Sorted"+b+h,v="Cell",I=v+h,y="Value",R=y+"s",S=y+h,M=e=>s+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),E=Math.max,k=Math.min,D=isFinite,x=e=>null==e,A=(e,t,s)=>x(e)?s?.():t(e),H=e=>e==n||e==a,J=e=>t(e)==n,F=e=>t(e)==r,Q=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},P=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),j=(e,t)=>N(e)===N(t)&&W(e,((e,s)=>t[s]===e)),B=(e,t)=>W(e,((s,n)=>0==n||t(e[n-1],s)<=0)),_=(e,t)=>e.sort(t),$=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>U(e,((e,t)=>e+t),0),K=e=>0==N(e),U=(e,t,s)=>e.reduce(t,s),X=(e,...t)=>e.push(...t),Y=e=>e.pop(),Z=e=>e.shift(),ee=Object,te=e=>ee.getPrototypeOf(e),se=ee.entries,ne=ee.isFrozen,ae=e=>!x(e)&&A(te(e),(e=>e==ee.prototype||x(te(e))),(()=>!0)),oe=ee.keys,re=ee.freeze,le=(e=[])=>ee.fromEntries(e),ie=(e,t)=>t in e,ce=(e,t)=>(delete e[t],e),de=(e,t)=>$(se(e),(([e,s])=>t(s,e))),ue=(e,t)=>q(se(e),(([e,s])=>t(s,e))),ge=(e,t)=>le(ue(e,((e,s)=>[s,t(e,s)]))),he=e=>ae(e)&&0==(e=>N(oe(e)))(e),fe=(e,t,s)=>(ie(e,t)||(e[t]=s()),e[t]),Le=(e,t,s,n=0)=>x(e)||!ae(e)||!n&&he(e)||ne(e)?(s?.(),!1):(ue(e,((s,n)=>{t(s,n)||ce(e,n)})),!!n||!he(e)),Ce=e=>e?.size??0,be=(e,t)=>e?.has(t)??!1,we=e=>x(e)||0==Ce(e),pe=e=>[...e?.values()??[]],Te=e=>e.clear(),ve=(e,t)=>e?.forEach(t),Ie=(e,t)=>e?.delete(t),ye=e=>new Map(e),Re=e=>[...e?.keys()??[]],Se=(e,t)=>e?.get(t),Me=(e,t)=>ve(e,((e,s)=>t(s,e))),me=(e,t,s)=>x(s)?(Ie(e,t),e):e?.set(t,s),Ve=(e,t,s,n)=>(be(e,t)?n?.(Se(e,t)):me(e,t,s()),Se(e,t)),Ee=(e,t,s,n=me)=>(ue(t,((t,n)=>s(e,n,t))),Me(e,(s=>ie(t,s)?0:n(e,s))),e),ke=(e,t,s,n)=>{const a={};return ve(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},De=(e,t,s)=>ke(e,(e=>ke(e,t,s)),we,he),xe=(e,t,s)=>ke(e,(e=>De(e,t,s)),we,he),Ae=(e,t)=>{const s=ye();return ve(e,((e,n)=>s.set(n,t?.(e)??e))),s},He=e=>Ae(e,Ae),Je=e=>Ae(e,He),Fe=(e,t,s,n,a=0)=>A((s?Ve:Se)(e,t[a],a>N(t)-2?s:ye),(o=>{if(a>N(t)-2)return n?.(o)&&me(e,t[a]),o;const r=Fe(o,t,s,n,a+1);return we(o)&&me(e,t[a]),r})),Qe=e=>{const s=t(e);return H(s)||s==o&&D(e)?s:void 0},ze=e=>null===e||!x(Qe(e)),Ne=(e,t,s,n,a)=>x(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Oe=(e,t,s)=>x(s)?e.delValue(t):e.setValue(t,s),Pe=e=>new Set(Q(e)||x(e)?e:[e]),We=(e,t)=>e?.add(t),je=(e,t,s,n,a)=>{const o=e.hasRow,r=ye(),l=ye(),i=ye(),c=ye(),d=ye(),u=ye(),g=(t,s,...n)=>{const a=Ve(u,t,Pe);return $(n,(t=>We(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>A(Se(u,t),(n=>{$(K(s)?pe(n):s,(t=>{e.delListener(t),Ie(n,t)})),we(n)&&me(u,t)})),f=(e,s)=>{me(r,e,s),be(l,e)||(me(l,e,t()),me(c,e,ye()),me(d,e,ye()),a(i))},L=e=>{me(r,e),me(l,e),me(c,e),me(d,e),h(e),a(i)};return[()=>e,()=>Re(r),e=>Me(l,e),e=>be(l,e),e=>Se(r,e),e=>Se(l,e),(e,t)=>me(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ye(),u=ye(),L=Se(c,t),C=Se(d,t),b=t=>{const a=s=>e.getCell(n,t,s),c=Se(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||Q(c)&&Q(d)&&j(c,d)||me(i,t,[c,d]),!x(l)){const e=Se(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&me(u,t,s)}},w=e=>{a((()=>{ve(i,(([,e],t)=>me(L,t,e))),ve(u,((e,t)=>me(C,t,e)))}),i,u,L,C,e),Te(i),Te(u)};Me(L,b),e.hasTable(n)&&$(e.getRowIds(n),(e=>{be(L,e)||b(e)})),w(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>b(s))),e.addTableListener(n,(()=>w())))},L,e=>n(e,i),()=>Me(u,L),g,h]},Be=(e,t)=>J(e)?t=>t(e):e??(()=>t??s),_e=(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}},$e=/^\d+$/,qe=()=>{const e=[];let t=0;return[n=>(n?Z(e):null)??s+t++,t=>{$e.test(t)&&N(e)<1e3&&X(e,t)}]},Ge=e=>{let t;const[n,a]=qe(),o=ye();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return me(o,d,[a,r,l,i,c]),We(Fe(r,l??[s],Pe),d),d},(e,n,...a)=>$(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?X(n,e):null===t[s]?ve(e,(e=>a(e,s+1))):$([t[s],null],(t=>a(Se(e,t),s+1)));return a(e,0),n})(e,n),(e=>ve(e,(e=>Se(o,e)[0](t,...n??[],...a))))),e=>A(Se(o,e),(([,t,n])=>(Fe(t,n??[s],void 0,(t=>(Ie(t,e),we(t)?1:0))),me(o,e),a(e),n))),e=>A(Se(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):x(s[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},Ke=_e((e=>{let t,n,a,o=100,r=ye(),l=ye(),i=1;const c=ye(),d=ye(),[u,g,h]=Ge((()=>J)),f=ye(),L=ye(),C=[],b=[],w=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Se(f,s);ve(n,((s,n)=>ve(s,((s,a)=>ve(s,((s,o)=>Ne(e,n,a,o,s[t]))))))),ve(a,((s,n)=>Oe(e,n,s[t])))})),i=1},p=e=>{me(f,e),me(L,e),g(d,[e])},T=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??N(e)),p),v=()=>T(C,N(C)-o),I=()=>A(t,(()=>{X(C,t),v(),T(b),t=void 0,a=1})),y=()=>{t=Y(C),a=1};let R,S;const M=(e="")=>(x(t)&&(t=s+n++,me(f,t,[r,l]),D(t,e),r=ye(),l=ye(),a=1),t),m=()=>{K(C)||(((e,...t)=>{e.unshift(...t)})(b,M()),w(0,t),t=Y(C),a=1)},V=()=>{K(b)||(X(C,t),t=Z(b),w(1,t),a=1)},E=()=>{a&&(g(c),a=0)},k=e=>{const t=M(e);return E(),t},D=(e,t)=>(H(e)&&Se(L,e)!==t&&(me(L,e,t),g(d,[e])),J),H=e=>be(f,e),J={setSize:e=>(o=e,v(),J),addCheckpoint:k,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...C],t,[...b]],forEachCheckpoint:e=>Me(L,e),hasCheckpoint:H,getCheckpoint:e=>Se(L,e),goBackward:()=>(m(),E(),J),goForward:()=>(V(),E(),J),goTo:e=>{const s=P(C,e)?m:P(b,e)?V:null;for(;!x(s)&&e!=t;)s();return E(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(T(C),T(b),x(t)||p(t),t=void 0,n=0,k(),J),clearForward:()=>(K(b)||(T(b),g(c)),J),destroy:()=>{e.delListener(R),e.delListener(S)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){I();const e=Ve(r,t,ye),l=Ve(e,s,ye),i=Ve(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&we(me(l,n))&&we(me(e,s))&&we(me(r,t))&&y(),E()}})),S=e.addValueListener(null,((e,t,s,n)=>{if(i){I();const e=Ve(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&we(me(l,t))&&y(),E()}}))}};return re(J.clear())}),(e=>e._registerListeners())),Ue=(e,t)=>(e??0)<(t??0)?-1:1,Xe=_e((e=>{const t=ye(),n=ye(),[a,o,r]=Ge((()=>p)),[l,i,c,d,u,g,h,,f,L,C,b]=je(e,ye,(e=>x(e)?s:Q(e)?q(e,M):M(e)),a,o),w=(t,s,n)=>{const a=u(t);ve(n,((t,n)=>s(n,(s=>ve(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},p={setIndexDefinition:(e,s,a,r,l,i=Ue)=>{const c=x(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let L=0;const C=Pe(),b=Pe(),w=g(e);if(ve(a,(([e,t],s)=>{const n=Pe(e),a=Pe(t);ve(n,(e=>Ie(a,e)?Ie(n,e):0)),ve(n,(e=>{We(C,e),A(Se(w,e),(t=>{Ie(t,s),we(t)&&(me(w,e),L=1)}))})),ve(a,(e=>{We(C,e),be(w,e)||(me(w,e,Pe()),L=1),We(Se(w,e),s),x(r)||We(b,e)}))})),s(),we(u)||(f?Me(w,(e=>We(b,e))):Me(l,(e=>A(Se(d,e),(e=>We(b,e))))),ve(b,(e=>{const t=(t,s)=>i(Se(u,t),Se(u,s),e),s=[...Se(w,e)];B(s,t)||(me(w,e,Pe(_(s,t))),We(C,e))}))),(L||f)&&!x(c)){const t=[...w];B(t,c)||(h(e,ye(_(t,c))),L=1)}L&&o(t,[e]),ve(C,(t=>o(n,[e,t])))}),Be(a),A(r,Be)),p},delIndexDefinition:e=>(L(e),p),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>w(t,e,s))))),forEachSlice:(e,t)=>w(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>be(g(e),t),getTableId:u,getSliceIds:e=>Re(g(e)),getSliceRowIds:(e,t)=>pe(Se(g(e),t)),addIndexIdsListener:C,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),p),destroy:b,getListenerStats:()=>({})};return re(p)})),Ye=ye([["avg",[(e,t)=>G(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=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ze=(e,t,s,n,a,o=!1)=>{if(we(s))return;const[r,l,i,c]=a;return o||=x(e),ve(n,(([s,n])=>{o||(e=x(s)?l?.(e,n,t++):x(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=x(e))})),o?r(pe(s),Ce(s)):e},et=_e((e=>{const t=ye(),[n,a,o]=Ge((()=>b)),[r,l,i,c,d,u,g,,h,f,L,C]=je(e,O,(e=>isNaN(e)||x(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),b={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=F(n)?[n,r,l,i]:Se(Ye,n)??Se(Ye,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=Ce(r);i||=x(d),s();let f=Ze(d,h,r,n,c,i);D(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),Be(o,1)),b},delMetricDefinition:e=>(f(e),b),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),b),destroy:C,getListenerStats:()=>({})};return re(b)})),tt=ye(),st=ye(),nt=_e((e=>{const t=e.createStore,n=t(),a=t(),o=ye(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,L,C,y,,,R,,S,M,m,V,E]=je(e,(()=>!0),O,r,l),k=(e,t,...s)=>$(s,(s=>We(Ve(Ve(o,t,ye),e,Pe),s))),D=e=>{A(Se(o,e),(e=>{Me(e,((e,t)=>ve(t,(t=>e.delListener(t))))),Te(e)})),$([a,n],(t=>t.delTable(e)))},H=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),D(t);const l=[],i=[[null,[o,null,null,[],ye()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=F(e)?[N(l)+s,e]:[x(t)?e:t,s=>s(e,t)];return X(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=x(s)||F(t)?null:t,a=x(n)?t:s,o=[e,[e,n,F(a)?a:e=>e(a),[],ye()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>X(c,F(e)?e:x(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,F(t)?[t,s,n,a]:Se(Ye,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,F(e)?e:s=>s(e)===t)});const g=ye(l);if(we(g))return J;const h=ye(i);Me(h,((e,[,t])=>A(Se(h,t),(({3:t})=>x(e)?0:X(t,e)))));const f=ye(d);let L=n;if(we(f)&&K(u))L=a;else{H(t,L,a);const e=ye();Me(f,((t,[s,n])=>We(Ve(e,s,Pe),[t,n])));const s=Pe();Me(g,(t=>be(e,t)?0:We(s,t)));const n=ye(),o=(s,n,o,r)=>A(s,(([l,i,c,d])=>{Me(n,((t,[s])=>{const n=Ve(l,t,ye),a=Se(n,o),i=r?void 0:s;if(a!==i){const s=Pe([[a,i]]),r=Ce(n);me(n,o,i),ve(Se(e,t),(([e,t])=>{const a=Ze(d[e],r,n,s,t);d[e]=x(Qe(a))?null:a}))}})),we(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(t,c):x(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));k(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=ye(),g=L.hasRow(t,l);let h=!g;ve(s,(e=>{const[s,n,a]=i(t,l,e);X(c,n),X(d,a),h||=s})),Me(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&me(u,e,[n])})),h&&o(Fe(n,c,void 0,(([,e])=>(Ie(e,l),we(e)))),u,l,1),g&&o(Fe(n,d,(()=>{const e={};return ve(s,(s=>e[s]=L.getCell(t,l,s))),[ye(),Pe(),void 0,e]}),(([,e])=>{We(e,l)})),u,l)})))}H(t,e,L);const C=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=Se(h,n),c=o?.(l,s),[d,u]=Se(i,s)??[];c!=d&&(x(u)||E(t,u),me(i,s,x(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>C(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...x(n)?[o,s,t]:t===o?[o,s,n]:[Se(h,t)?.[0],Se(Se(h,t)?.[4],s)?.[0],n]);L.transaction((()=>W(c,(e=>e(n)))?Me(g,((e,a)=>Ne(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:b}=Se(h,null);return L.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?C(a,o,a,b):(L.delRow(t,a),ve(h,(({4:e})=>A(Se(e,a),(([,s])=>{E(t,s),me(e,a)})))))}))))),J},delQueryDefinition:e=>(D(e),S(e),J),getStore:g,getQueryIds:h,forEachQuery:L,hasQuery:C,getTableId:y,addQueryIdsListener:e=>M((()=>e(J))),delListener:e=>(i(e),J),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ue({[f]:[1,1],[f+I]:[0,1],[w]:[0,1],[p]:[0,1],[T]:[0,5],[b]:[1,2],[I]:[0,2],[v]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>a[e+s](...t))),J[u+d+s+c]=(...e)=>a[u+s+c](...z(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),re(J)})),at=_e((e=>{const t=ye(),n=ye(),a=ye(),o=ye(),[r,l,i]=Ge((()=>I)),[c,d,u,g,h,f,,,L,C,b,w]=je(e,(()=>[ye(),ye(),ye(),ye()]),(e=>x(e)?void 0:e+s),r,l),p=(e,t,s)=>A(f(e),(([n,,a])=>{if(!be(a,t)){const o=Pe();if(h(e)!=v(e))We(o,t);else{let e=t;for(;!x(e)&&!be(o,e);)We(o,e),e=Se(n,e)}if(s)return o;me(a,t,o)}return Se(a,t)})),T=(e,t)=>A(f(e),(([,,e])=>me(e,t))),v=e=>Se(t,e),I={setRelationshipDefinition:(e,s,r,i)=>(me(t,e,r),L(e,s,((t,s)=>{const r=Pe(),i=Pe(),c=Pe(),[d,u]=f(e);ve(s,(([t,s],n)=>{x(t)||(We(i,t),A(Se(u,t),(e=>{Ie(e,n),we(e)&&me(u,t)}))),x(s)||(We(i,s),be(u,s)||me(u,s,Pe()),We(Se(u,s),n)),We(r,n),me(d,n,s),Me(Se(o,e),(t=>{be(p(e,t),n)&&We(c,t)}))})),t(),ve(r,(t=>l(n,[e,t]))),ve(i,(t=>l(a,[e,t]))),ve(c,(t=>{T(e,t),l(o,[e,t])}))}),Be(i)),I),delRelationshipDefinition:e=>(me(t,e),C(e),I),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:v,getRemoteRowId:(e,t)=>Se(f(e)?.[0],t),getLocalRowIds:(e,t)=>pe(Se(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(f(e))?[t]:pe(p(e,t,!0)),addRelationshipIdsListener:b,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),r(s,o,[e,t])),delListener:e=>(T(...i(e)??[]),I),destroy:w,getListenerStats:()=>({})};return re(I)})),ot=new globalThis.TextEncoder,rt=e=>{let t=2166136261;return $(ot.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},lt=([e,t,s])=>[e,t,s],it=([e,t])=>[e,t],ct=e=>e[2],dt=(e,t)=>rt(e+":"+t),ut=(e,t,s)=>{e[2]=t>>>0,s>e[0]&&(e[0]=s)},gt=e=>[e,le()],ht=(e="")=>[e,ye(),0],ft=([e,t,s],n=lt)=>[e,ke(t,n),s],Lt=(e,s)=>Q(e)&&3==N(e)&&J(e[0])&&s(e[1])&&t(e[2])==o&&D(e[2]),Ct=e=>[e,e],bt=()=>[ye(),ye()],wt=e=>[...e],pt=([e,t])=>e===t,Tt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),vt=JSON.parse,It=(e,t,s)=>me(e,t,Se(e,t)==-s?void 0:s),yt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=ye(),h=ye(),T=ye(),m=ye(),V=ye(),E=ye(),k=ye(),D=ye(),J=ye(),Q=ye(),N=ye(),O=ye(),W=ye(),B=ye(),G=Pe(),K=ye(),U=ye(),Y=ye(),Z=ye(),ee=bt(),te=bt(),se=bt(),ne=bt(),ae=bt(),oe=bt(),le=bt(),de=bt(),ge=bt(),fe=bt(),pe=bt(),Fe=bt(),ze=bt(),je=bt(),Be=bt(),_e=bt(),$e=bt(),Ke=bt(),Xe=bt(),Ye=bt(),Ze=bt(),et=bt(),tt=ye(),st=bt(),[nt,at,ot,rt]=Ge((()=>Hs)),lt=e=>{if(!Le(e,((e,t)=>P([l,i],t))))return!1;const t=e[l];return!(!H(t)&&t!=o||(Qe(e[i])!=t&&ce(e,i),0))},it=(t,s)=>(!e||be(N,s)||$t(s))&&Le(t,((e,t)=>ct(s,t,e)),(()=>$t(s))),ct=(e,t,s,n)=>Le(n?s:ht(s,e,t),((n,a)=>A(dt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),dt=(t,s,n,a)=>e?A(Se(Se(N,t),n),(e=>Qe(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):x(Qe(a))?$t(t,s,n,a):a,ut=(e,t)=>Le(t?e:ft(e),((t,s)=>A(gt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),gt=(e,s)=>t?A(Se(W,e),(t=>Qe(s)!=t[l]?qt(e,s,t[i]):s),(()=>qt(e,s))):x(Qe(s))?qt(e,s):s,ht=(e,t,s)=>(A(Se(O,t),(([n,a])=>{ve(n,((t,s)=>{ie(e,s)||(e[s]=t)})),ve(a,(n=>{ie(e,n)||$t(t,s,n)}))})),e),ft=e=>(t&&(ve(B,((t,s)=>{ie(e,s)||(e[s]=t)})),ve(G,(t=>{ie(e,t)||qt(t)}))),e),Lt=e=>Ee(N,e,((e,t,s)=>{const n=ye(),a=Pe();Ee(Ve(N,t,ye),s,((e,t,s)=>{me(e,t,s),A(s[i],(e=>me(n,t,e)),(()=>We(a,t)))})),me(O,t,[n,a])}),((e,t)=>{me(N,t),me(O,t)})),Rt=e=>Ee(W,e,((e,t,s)=>{me(W,t,s),A(s[i],(e=>me(B,t,e)),(()=>We(G,t)))}),((e,t)=>{me(W,t),me(B,t),Ie(G,t)})),St=e=>he(e)?Ss():Ts(e),Mt=e=>Ee(Y,e,((e,t,s)=>mt(t,s)),((e,t)=>Ft(t))),mt=(e,t)=>Ee(Ve(Y,e,(()=>(Ot(e,1),me(K,e,qe()),me(U,e,ye()),ye()))),t,((t,s,n)=>Vt(e,t,s,n)),((t,s)=>Qt(e,t,s))),Vt=(e,t,s,n,a)=>Ee(Ve(t,s,(()=>(Pt(e,s,1),ye()))),n,((t,n,a)=>Et(e,s,t,n,a)),((n,o)=>zt(e,t,s,n,o,a))),Et=(e,t,s,n,a)=>{be(s,n)||Wt(e,t,n,1);const o=Se(s,n);a!==o&&(jt(e,t,n,o,a),me(s,n,a))},kt=(e,t,s,n,a)=>A(Se(t,s),(t=>Et(e,s,t,n,a)),(()=>Vt(e,t,s,ht({[n]:a},e,s)))),Dt=e=>he(e)?Vs():vs(e),xt=e=>Ee(Z,e,((e,t,s)=>At(t,s)),((e,t)=>Nt(t))),At=(e,t)=>{be(Z,e)||Bt(e,1);const s=Se(Z,e);t!==s&&(_t(e,s,t),me(Z,e,t))},Ht=(e,t)=>{const[s]=Se(K,e),n=s(t);return be(Se(Y,e),n)?Ht(e,t):n},Jt=e=>Se(Y,e)??mt(e,{}),Ft=e=>mt(e,{}),Qt=(e,t,s)=>{const[,n]=Se(K,e);n(s),Vt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Se(Se(O,e)?.[0],a);if(!x(r)&&!o)return Et(e,s,n,a,r);const l=t=>{jt(e,s,t,Se(n,t)),Wt(e,s,t,-1),me(n,t)};x(r)?l(a):Me(n,l),we(n)&&(Pt(e,s,-1),we(me(t,s))&&(Ot(e,-1),me(Y,e),me(K,e),me(U,e)))},Nt=e=>{const t=Se(B,e);if(!x(t))return At(e,t);_t(e,Se(Z,e)),Bt(e,-1),me(Z,e)},Ot=(e,t)=>It(d,e,t),Pt=(e,t,s)=>It(Ve(m,e,ye),t,s)&&me(T,e,Ve(T,e,(()=>0))+s),Wt=(e,t,s,n)=>{const a=Se(U,e),o=Se(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&It(Ve(h,e,ye),s,n),me(a,s,o!=-n?o+n:null),It(Ve(Ve(V,e,ye),t,ye),s,n)},jt=(e,t,s,n,a)=>Ve(Ve(Ve(E,e,ye),t,ye),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>It(k,e,t),_t=(e,t,s)=>Ve(D,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(X(Ve(Ve(Ve(J,e,ye),t,ye),s,(()=>[])),n),a),qt=(e,t,s)=>(X(Ve(Q,e,(()=>[])),t),s),Gt=(e,t,s)=>A(Se(Se(Se(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ct(cs(e,t,s))])),Kt=e=>A(Se(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ct(gs(e))])),Ut=e=>we(J)||we(_e[e])?0:ve(e?Je(J):J,((t,s)=>ve(t,((t,n)=>ve(t,((t,a)=>at(_e[e],[s,n,a],t))))))),Xt=e=>we(Q)||we($e[e])?0:ve(e?Ae(Q):Q,((t,s)=>at($e[e],[s],t))),Yt=(e,t,s,n)=>{if(!we(e))return at(t,n,(()=>ke(e))),Me(e,((e,t)=>at(s,[...n??[],e],1==t))),1},Zt=e=>{const t=hs();t!=s&&at(ee[e],void 0,t);const n=we(fe[e]),a=we(ze[e])&&we(je[e])&&we(ge[e])&&we(pe[e])&&we(oe[e])&&we(le[e])&&we(de[e])&&n&&we(se[e])&&we(ne[e]),o=we(Be[e])&&we(Fe[e])&&we(ae[e])&&we(te[e]);if(!a||!o){const t=e?[Ae(d),He(h),Ae(T),He(m),Je(V),Je(E)]:[d,h,T,m,V,E];if(!a){Yt(t[0],se[e],ne[e]),ve(t[1],((t,s)=>Yt(t,oe[e],le[e],[s]))),ve(t[2],((t,s)=>{0!=t&&at(de[e],[s],os(s))}));const s=Pe();ve(t[3],((t,a)=>{Yt(t,ge[e],pe[e],[a])&&!n&&(at(fe[e],[a,null]),We(s,a))})),n||ve(t[5],((t,n)=>{if(!be(s,n)){const s=Pe();ve(t,(e=>ve(e,(([t,n],a)=>n!==t?We(s,a):Ie(e,a))))),ve(s,(t=>at(fe[e],[n,t])))}})),ve(t[4],((t,s)=>ve(t,((t,n)=>Yt(t,ze[e],je[e],[s,n])))))}if(!o){let s;ve(t[5],((t,n)=>{let a;ve(t,((t,o)=>{let r;ve(t,(([t,l],i)=>{l!==t&&(at(Be[e],[n,o,i],l,t,Gt),s=a=r=1)})),r&&at(Fe[e],[n,o],Gt)})),a&&at(ae[e],[n],Gt)})),s&&at(te[e],void 0,Gt)}}},es=e=>{const t=ws();t!=n&&at(Ke[e],void 0,t);const s=we(Ye[e])&&we(Ze[e]),a=we(et[e])&&we(Xe[e]);if(!s||!a){const t=e?[Ae(k),Ae(D)]:[k,D];if(s||Yt(t[0],Ye[e],Ze[e]),!a){let s;ve(t[1],(([t,n],a)=>{n!==t&&(at(et[e],[a],n,t,Kt),s=1)})),s&&at(Xe[e],void 0,Kt)}}},ts=(e,...t)=>(Ds((()=>e(...q(t,M)))),Hs),ss=()=>xe(Y),ns=()=>Re(Y),as=e=>Re(Se(U,M(e))),os=e=>Ce(Se(Y,M(e))),rs=e=>Re(Se(Y,M(e))),ls=(e,t,s,n=0,a)=>{return q(z(_((o=Se(Y,M(e)),r=(e,s)=>[x(t)?s:Se(e,M(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ue(e,t)*(s?-1:1))),n,x(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>Re(Se(Se(Y,M(e)),M(t))),cs=(e,t,s)=>Se(Se(Se(Y,M(e)),M(t)),M(s)),ds=()=>ke(Z),us=()=>Re(Z),gs=e=>Se(Z,M(e)),hs=()=>!we(Y),fs=e=>be(Y,M(e)),Ls=(e,t)=>be(Se(U,M(e)),M(t)),Cs=(e,t)=>be(Se(Y,M(e)),M(t)),bs=(e,t,s)=>be(Se(Se(Y,M(e)),M(t)),M(s)),ws=()=>!we(Z),ps=e=>be(Z,M(e)),Ts=e=>ts((()=>(e=>Le(e,it,$t))(e)?Mt(e):0)),vs=e=>ts((()=>ut(e)?xt(e):0)),Is=e=>{try{St(vt(e))}catch{}return Hs},ys=t=>ts((()=>{if((e=Le(t,(e=>Le(e,lt))))&&(Lt(t),!we(Y))){const e=ss();Ss(),Ts(e)}})),Rs=e=>ts((()=>{if(t=(e=>Le(e,lt))(e)){const s=ds();ks(),Vs(),t=!0,Rt(e),vs(s)}})),Ss=()=>ts((()=>Mt({}))),Ms=e=>ts((e=>be(Y,e)?Ft(e):0),e),ms=(e,t)=>ts(((e,t)=>A(Se(Y,e),(s=>be(s,t)?Qt(e,s,t):0))),e,t),Vs=()=>ts((()=>xt({}))),Es=()=>ts((()=>{Lt({}),e=!1})),ks=()=>ts((()=>{Rt({}),t=!1})),Ds=(e,t)=>{if(-1!=a){xs();const s=e();return As(t),s}},xs=()=>(-1!=a&&a++,1==a&&at(tt,void 0),Hs),As=e=>(a>0&&(a--,0==a&&(a=1,Ut(1),we(E)||Zt(1),Xt(1),we(D)||es(1),e?.(Hs)&&(ve(E,((e,t)=>ve(e,((e,s)=>ve(e,(([e],n)=>Ne(Hs,t,s,n,e))))))),Te(E),ve(D,(([e],t)=>Oe(Hs,t,e))),Te(D)),at(st[0],void 0),a=-1,Ut(0),we(E)||Zt(0),Xt(0),we(D)||es(0),r[0]?.(Hs),at(st[1],void 0),r[1]?.(Hs),a=0,s=hs(),n=ws(),$([d,h,T,m,V,E,J,k,D,Q],Te))),Hs),Hs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>De(Se(Y,M(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>ke(Se(Se(Y,M(e)),M(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:fs,hasTableCell:Ls,hasRow:Cs,hasCell:bs,hasValues:ws,hasValue:ps,getTablesJson:()=>Tt(Y),getValuesJson:()=>Tt(Z),getJson:()=>Tt([Y,Z]),getTablesSchemaJson:()=>Tt(N),getValuesSchemaJson:()=>Tt(W),getSchemaJson:()=>Tt([N,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(he(e)?Ss:Ts)(e),(he(t)?Vs:vs)(t)})),setTables:Ts,setTable:(e,t)=>ts((e=>it(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>ct(e,t,s)?Vt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ds((()=>{let n;return ct(e,n,t)&&(e=M(e),Vt(e,Jt(e),n=Ht(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(ct(e,t,s,1)){const n=Jt(e);ue(s,((s,a)=>kt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ts(((e,t,s)=>A(dt(e,t,s,F(n)?n(cs(e,t,s)):n),(n=>kt(e,Jt(e),t,s,n)))),e,t,s),setValues:vs,setPartialValues:e=>ts((()=>ut(e,1)?ue(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ts((e=>A(gt(e,F(t)?t(gs(e)):t),(t=>At(e,t)))),e),applyChanges:e=>ts((()=>{ue(e[0],((e,t)=>x(e)?Ms(t):ue(e,((e,s)=>x(e)?ms(t,s):ue(e,((e,n)=>Ne(Hs,t,s,n,e))))))),ue(e[1],((e,t)=>Oe(Hs,t,e)))})),setTablesJson:Is,setValuesJson:e=>{try{Dt(vt(e))}catch{}return Hs},setJson:e=>ts((()=>{try{const[t,s]=vt(e);St(t),Dt(s)}catch{Is(e)}})),setTablesSchema:ys,setValuesSchema:Rs,setSchema:(e,t)=>ts((()=>{ys(e),Rs(t)})),delTables:Ss,delTable:Ms,delRow:ms,delCell:(e,t,s,n)=>ts(((e,t,s)=>A(Se(Y,e),(a=>A(Se(a,t),(o=>be(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Vs,delValue:e=>ts((e=>be(Z,e)?Nt(e):0),e),delTablesSchema:Es,delValuesSchema:ks,delSchema:()=>ts((()=>{Es(),ks()})),transaction:Ds,startTransaction:xs,getTransactionChanges:()=>[ke(E,((e,t)=>-1===Se(d,t)?void 0:ke(e,((e,s)=>-1===Se(Se(m,t),s)?void 0:ke(e,(([,e])=>e),(e=>pt(e)))),we,he)),we,he),ke(D,(([,e])=>e),(e=>pt(e))),1],getTransactionLog:()=>[!we(E),!we(D),xe(E,wt,pt),xe(J),ke(D,wt,pt),ke(Q),ke(d),De(m),xe(V),ke(k)],finishTransaction:As,forEachTable:e=>ve(Y,((t,s)=>e(s,(e=>ve(t,((t,s)=>e(s,(e=>Me(t,e))))))))),forEachTableCell:(e,t)=>Me(Se(U,M(e)),t),forEachRow:(e,t)=>ve(Se(Y,M(e)),((e,s)=>t(s,(t=>Me(e,t))))),forEachCell:(e,t,s)=>Me(Se(Se(Y,M(e)),M(t)),s),forEachValue:e=>Me(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=ls(e,t,s,n,a);return nt((()=>{const r=ls(e,t,s,n,a);j(r,l)||(l=r,o(Hs,e,t,s,n,a,l))}),fe[r?1:0],[e,t],[ns])},addStartTransactionListener:e=>nt(e,tt),addWillFinishTransactionListener:e=>nt(e,st[0]),addDidFinishTransactionListener:e=>nt(e,st[1]),callListener:e=>(rt(e),Hs),delListener:e=>(ot(e),Hs),getListenerStats:()=>({}),createStore:yt,addListener:nt,callListeners:at,setInternalListeners:(e,t)=>r=[e,t]};return ue({[g+L]:[0,ee,[],()=>[hs()]],[L]:[0,te],[C]:[0,se],[g+f]:[1,ne,[ns],e=>[fs(...e)]],[f]:[1,ae,[ns]],[f+I]:[1,oe,[ns]],[g+f+v]:[2,le,[ns,as],e=>[Ls(...e)]],[w]:[1,de,[ns]],[p]:[1,ge,[ns]],[g+b]:[2,pe,[ns,rs],e=>[Cs(...e)]],[b]:[2,Fe,[ns,rs]],[I]:[2,ze,[ns,rs]],[g+v]:[3,je,[ns,rs,is],e=>[bs(...e)]],[v]:[3,Be,[ns,rs,is],e=>Ct(cs(...e))],InvalidCell:[3,_e],[g+R]:[0,Ke,[],()=>[ws()]],[R]:[0,Xe],[S]:[0,Ye],[g+y]:[1,Ze,[us],e=>[ps(...e)]],[y]:[1,et,[us],e=>Ct(gs(e[0]))],InvalidValue:[1,$e]},(([e,t,s,n],a)=>{Hs[u+a+c]=(...a)=>nt(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,n)})),re(Hs)},Rt=2**36,St=2**30,Mt=2**24,mt=2**18,Vt=4096,Et=64,kt=e=>String.fromCharCode(48+(63&e)),Dt=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,xt={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},At=(e="")=>[e,[ht(e),ht(e)],0];e.createCheckpoints=Ke,e.createCustomPersister=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0;Ve(tt,i,(()=>0)),Ve(st,i,(()=>[]));const[h,f,L,C]=((e,t)=>!e||x(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!he(e)||!he(t)])(r,e),b=async e=>(2!=g&&(g=1,await p.schedule((async()=>{await e(),g=0}))),p),w=t=>{(h&&J(t?.[0])?1===t?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},p={load:async(s,n)=>await b((async()=>{try{w(await t())}catch(t){o?.(t),e.setContent([s,n])}})),startAutoLoad:async(e={},s={})=>(await p.stopAutoLoad().load(e,s),d=n((async(e,s)=>{const n=s?.();await b((async()=>{try{w(n??e?.()??await t())}catch(e){o?.(e)}}))})),p),stopAutoLoad:()=>(d&&(a(d),d=void 0),p),isAutoLoading:()=>!x(d),save:async e=>(1!=g&&(g=2,await p.schedule((async()=>{try{await s(f,e)}catch(e){o?.(e)}g=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=L();C(e)&&p.save((()=>e))})),p),stopAutoSave:()=>(A(u,e.delListener),u=void 0,p),isAutoSaving:()=>!x(u),schedule:async(...e)=>(X(Se(st,i),...e),await(async()=>{if(!Se(tt,i)){for(me(tt,i,1);!x(c=Z(Se(st,i)));)try{await c()}catch(e){o?.(e)}me(tt,i,0)}})(),p),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...l};return re(p)},e.createIndexes=Xe,e.createMergeableStore=e=>{let t,n,a=1,o=At();const[r,l]=(e=>{let t=0,s=-1;const n=rt(e),a=e=>{const n=t,[a,o]=x(e)||""==e?[0,0]:[Dt(r=e,0)*Rt+Dt(r,1)*St+Dt(r,2)*Mt+Dt(r,3)*mt+Dt(r,4)*Vt+Dt(r,5)*Et+Dt(r,6),Dt(r,7)*mt+Dt(r,8)*Vt+Dt(r,9)*Et+Dt(r,10),Dt(r,11)*Mt+Dt(r,12)*mt+Dt(r,13)*Vt+Dt(r,14)*Et+Dt(r,15)];var r;t=E(n,a,Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,kt((e=t)/Rt)+kt(e/St)+kt(e/Mt)+kt(e/mt)+kt(e/Vt)+kt(e/Et)+kt(e)+kt(o/mt)+kt(o/Vt)+kt(o/Et)+kt(o)+kt(r/Mt)+kt(r/mt)+kt(r/Vt)+kt(r/Et)+kt(r);var e,o,r},a]})(e),i=yt(),c=e=>{const t=a;return a=0,e(),a=t,L},d=(e,t=0)=>{const s={},n={},[a,[[r,l,i],c],d]=e,[,[g,h]]=o,[f,L,C]=g;if(r){let e=t?i:C^(r>f?(f?rt(f):0)^rt(r):0);de(l,(([n,a,o],r)=>{const l=Ve(L,r,ht),[i,c,d]=l;let g=t?o:d^(n>i?(i?rt(i):0)^rt(n):0);de(a,((e,n)=>{const[a,o]=u(e,Ve(c,n,ht),fe(fe(s,r,le),n,le),t);g^=t?0:(a?dt(n,a):0)^dt(n,o)})),ut(l,g,n),e^=t?0:(d?dt(r,d):0)^dt(r,l[2])})),ut(g,e,r)}return u(c,h,n,t),ut(o,t?d:g[2]^h[2],a),[s,n,1]},u=(e,t,n,a)=>{const[o,r,l]=e,[i,c,d]=t;if(o){let e=a?l:d^(o>i?(i?rt(i):0)^rt(o):0);de(r,(([t,o,r],l)=>{const i=Ve(c,l,(()=>[s,void 0,0])),[d,,u]=i;t>d&&(ut(i,a?r:rt(Tt(o??null)+":"+t),t),i[1]=o,n[l]=o,e^=a?0:dt(l,u)^dt(l,i[2]))})),ut(t,e,o)}return[d,t[2]]},g=()=>[o[0],[ft(o[1][0],(e=>ft(e,(e=>ft(e))))),ft(o[1][1])],o[2]],h=()=>{if(x(n)){const[,,e,,n]=i.getTransactionLog(),a=he(e)&&he(n)?s:t??(t=r()),o=[a,[gt(he(e)?s:a),gt(he(n)?s:a),1]],[[,l],[,c]]=o[1];return ue(e,((e,t)=>{const[,s]=l[t]=gt(a);ue(e,((e,t)=>{const[,n]=s[t]=gt(a);ue(e,(([,e],t)=>n[t]=[a,e]))}))})),ue(n,(([,e],t)=>c[t]=[a,e])),o}return n},f=e=>c((()=>{l(e[0]),i.applyChanges(d(e))})),L={getId:()=>e,getMergeableContent:g,getMergeableContentHashes:()=>[o[0],[o[1][0][2],o[1][1][2]]],getMergeableTableHashes:()=>ke(o[1][0][1],ct),getMergeableTableIdsDiff:e=>{const t=[];return Me(o[1][0][1],((s,[,,n])=>{n!==e?.[s]&&X(t,s)})),t},getMergeableRowHashes:e=>le(q(e,(e=>[e,ke(Se(o[1][0][1],e)?.[1],ct)]))),getMergeableRowIdsDiff:e=>ge(e,((e,t)=>{const s=[];return Me(Se(o[1][0][1],t)?.[1],((t,[,,n])=>{n!==e?.[t]&&X(s,t)})),s})),getMergeableCellHashes:e=>ge(e,((e,t)=>le(q(e,(e=>[e,ke(Se(Se(o[1][0][1],t)?.[1],e)?.[1],ct)]))))),getMergeableTablesChanges:e=>{const[,[[t,s]]]=o,n={};return de(e,((e,t)=>A(Se(s,t),(([s,a])=>{const o={};de(e,((e,t)=>A(Se(a,t),(([s,n])=>{const a=ke(n,it,(([,,t],s)=>t==e?.[s]));he(a)||(o[t]=[s,a])})))),he(o)||(n[t]=[s,o])})))),[t,n]},getMergeableValuesHashes:()=>ke(o[1][1][1],ct),getMergeableValuesChanges:e=>[o[1][1][0],ke(o[1][1][1],it,(([,,t],s)=>t==e?.[s]))],setMergeableContent:e=>c((()=>(e=>Lt(e,(e=>Q(e)&&2==N(e)&&Lt(e[0],(e=>Le(e,(e=>Lt(e,(e=>Le(e,(e=>Lt(e,(e=>Le(e,(e=>Lt(e,ze)),void 0,1)))),void 0,1)))),void 0,1)))&&Lt(e[1],(e=>Le(e,(e=>Lt(e,ze)),void 0,1))))))(e)?i.transaction((()=>{i.delTables().delValues(),o=At(),l(e[0]),i.applyChanges(d(e,1))})):0)),getTransactionMergeableChanges:h,applyMergeableChanges:f,merge:e=>{const t=g(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return i.setInternalListeners((()=>{a&&(n=h(),d(n))}),(()=>t=n=void 0)),ue(i,((e,t)=>L[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),L):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=xt[z(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(L,...t),e(...s)}:e)),re(L)},e.createMetrics=et,e.createQueries=nt,e.createRelationships=at,e.createStore=yt,e.defaultSorter=Ue},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(q(e)),le=e=>X(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(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}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("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;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return K({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:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),K=_.keys,X=_.freeze,Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(K(e)),le=e=>q(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t,a)=>(te(e,l)?a?.(se(e,l)):$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(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}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("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;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return X({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:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,y="Cell",w=y+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,M=(e,t,s)=>q(e)?s?.():t(e),N=e=>e==n||e==o,L=e=>l(e)==n,E=e=>l(e)==i,z=e=>Array.isArray(e),$=(e,t,s)=>e.slice(t,s),O=e=>e.length,{PureComponent:A,Fragment:F,createElement:J,useCallback:P,useLayoutEffect:H,useRef:B,useState:D}=t,Q=(e,...t)=>q(e)?{}:e(...t),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),G=e=>0==O(e),K=(e,...t)=>e.push(...t),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.entries,ee=Y.keys,te=Y.isFrozen,se=Y.freeze,le=e=>!q(e)&&M(Z(e),(e=>e==Y.prototype||q(Z(e))),(()=>!0)),ae=(e=[])=>Y.fromEntries(e),ne=(e,t)=>t in e,oe=(e,t)=>(delete e[t],e),re=(e,t)=>U(_(e),(([e,s])=>t(s,e))),ie=e=>le(e)&&0==(e=>O(ee(e)))(e),de=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),ue=JSON.parse,ce="tinybaseStoreInspector",he="TinyBase Store Inspector",me=["left","top","bottom","right","full"],be="state",ge="sort",pe="open",Ie="position",fe=pe,ye="editable",we=(...e)=>de(e),Ce=(e,t)=>U(j(e),t),ve=(e,t)=>[!!s.useCell(be,e,ye,t),P((s=>{t.setCell(be,e,ye,(e=>!e)),s.preventDefault()}),[t,e])],Te="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ke='content:url("',Se=ke+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",xe='</svg>")',Ve=ke+"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\")",Re=U([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Se+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+xe)),qe=Se+"<path d='M20 20l60 60M20 80l60-60' />"+xe,Me=Se+`<path d='${Te}' />`+xe,Ne=Se+`<path d='${Te}M20 20l60 60' />`+xe,Le="*::-webkit-scrollbar",Ee=((e,t="")=>e.join(t))(re({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Le]:"width:0.5rem;height:0.5rem;",[Le+"-track"]:"background:#111",[Le+"-thumb"]:"background:#999;border:1px solid #111",[Le+"-thumb:hover"]:"background:#fff",[Le+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+Ve,...ae(U(["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;",...ae(U(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":Ve,"header>img:nth-of-type(6)":qe,...ae(U(Re,((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":Me,"details[open]>summary img.done":Ne,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,#${ce} 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?`#${ce} ${t}{${e}}`:""))),ze=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!0),[],e);return s.useValue(fe,e)?null:J("img",{onClick:l,title:he,"data-position":t})},$e=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(be,e,pe,o),i=s.useSetCellCallback(be,e,pe,(e=>e[k].open),[],o);return J("details",{open:r,onToggle:i},J("summary",null,t,a?J("img",{onClick:a,className:l?"done":"edit"}):null),n)},Oe=e=>{const t=l(e);return N(t)||t==r&&R(e)?t:void 0},Ae=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Fe=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Je=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Pe,useMemo:He,useState:Be}=t,De="editable",Qe=(e,t)=>U(s.useTableCellIds(e,t),(t=>e+"."+t)),je=(e,t,s)=>{const l=Pe(e,t);return s?l:void 0},We=(...e)=>He((()=>e),e),Ue=(e,t)=>He((()=>({store:e,tableId:t})),[e,t]),Ge=(e,t)=>He((()=>({queries:e,queryId:t})),[e,t]),Ke=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Be([e,t,l]),h=Pe((e=>{c(e),r?.(e)}),[r]),m=je((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Pe((e=>h([i,d,e])),[h,i,d]),g=!0===o?it:o;return[[i,d,u],m,He((()=>!1===o?null:J(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Xe=(e,t,s)=>He((()=>{const l=t??e;return a=z(l)?ae(U(l,(e=>[e,e]))):l,n=(e,t)=>({label:t,component:s,...L(e)?{label:e}:e}),ae(re(a,((e,t)=>[t,n(e,t)])));var a,n}),[t,s,e]),Ye=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>J("table",{className:e},i?J("caption",null,i):null,!1===t?null:J("thead",null,J("tr",null,!1===s?null:J(Ze,{sort:o??[],label:"Id",onClick:r}),re(l,(({label:e},t)=>J(Ze,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),J("tbody",null,U(n,(e=>J("tr",{key:e},!1===s?null:J("th",null,e),re(l,(({component:t,getComponentProps:s},l)=>J("td",{key:l},J(t,{...Q(s,e,l),...a,rowId:e,cellId:l}))))))))),Ze=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>J("th",{onClick:je((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),_e=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return J("tr",null,!1===l?null:J(t.Fragment,null,J("th",null,e),J("th",null,u)),re(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:J("td",{key:l},J(t,{...Q(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},et=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Be(),[u,c]=Be(),[h,m]=Be(),[b,g]=Be(),[p,I]=Be();u!==e&&(d(Oe(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Pe(((e,s)=>{s(e),c(e),t(e)}),[t]),y=Pe((()=>{if(!l?.()){const e=Je(i,r,o,n),s=Je(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return J("div",{className:s},a?J("button",{className:i,onClick:y},i):null,Je(i,J("input",{key:i,value:h,onChange:Pe((e=>f(e[k][S]+"",m)),[f])}),J("input",{key:i,type:"number",value:b,onChange:Pe((e=>f(Number(e[k][S]||0),g)),[f])}),J("input",{key:i,type:"checkbox",checked:p,onChange:Pe((e=>f(!!e[k].checked,I)),[f])})))},tt=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ke(t,l,i,a,n,s.useRowCount(e,o),d,u);return J(Ye,{...h,params:We(Xe(s.useTableCellIds(e,o),c,r?ot:s.CellView),Ue(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},st=({store:e,editable:t=!1,valueComponent:l=(t?rt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>J("table",{className:n},!1===o?null:J("thead",null,J("tr",null,!1===r?null:J("th",null,"Id"),J("th",null,C))),J("tbody",null,U(s.useValueIds(e),(t=>J("tr",{key:t},!1===r?null:J("th",null,t),J("td",null,J(l,{...Q(a,t),valueId:t,store:e}))))))),lt=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return J(Ye,{...o,params:We(Xe(s.useTableCellIds(d,i),n,a?ot:s.CellView),Ue(i,d),s.useSliceRowIds(e,t,r))})},at=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Xe([...Qe(c,u),...Qe(h,u)],n,a?ot:s.CellView),b=We(i,m,c,h,e,d,u);return J("table",{className:o},!1===r?null:J("thead",null,J("tr",null,!1===i?null:J(t.Fragment,null,J("th",null,c,".Id"),J("th",null,h,".Id")),re(m,(({label:e},t)=>J("th",{key:t},e))))),J("tbody",null,U(s.useRowIds(c,u),(e=>J(_e,{key:e,localRowId:e,params:b})))))},nt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ke(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return J(Ye,{...c,params:We(Xe(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ge(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},ot=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>J(et,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??De+y,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),rt=({valueId:e,store:t,className:l,showType:a})=>J(et,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??De+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),it=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=je((()=>e(l-a)),[e,l,a],l>0),i=je((()=>e(l+a)),[e,l,a],l+a<s);return J(t.Fragment,null,s>a&&J(t.Fragment,null,J("button",{className:"previous",disabled:0==l,onClick:r},"←"),J("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},dt=({indexes:e,indexesId:t,indexId:l,s:a})=>J($e,{uniqueId:we("i",t,l),summary:"Index: "+l,s:a},U(s.useSliceIds(l,e),(s=>J(ut,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ut=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=ve(n,a);return J($e,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},J(lt,{sliceId:l,indexId:s,indexes:e,editable:o}))},ct=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:J($e,{uniqueId:we("i",e),summary:"Indexes: "+(e??u),s:t},G(a)?"No indexes defined":Ce(a,(s=>J(dt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},ht=({metrics:e,metricId:t})=>J("tr",null,J("th",null,t),J("td",null,e?.getTableId(t)),J("td",null,s.useMetric(t,e))),mt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:J($e,{uniqueId:we("m",e),summary:"Metrics: "+(e??u),s:t},G(a)?"No metrics defined":J("table",null,J("thead",null,J("th",null,"Metric Id"),J("th",null,"Table Id"),J("th",null,"Metric")),J("tbody",null,U(a,(e=>J(ht,{metrics:l,metricId:e,key:e}))))))},bt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=we("q",t,l),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a);return J($e,{uniqueId:n,summary:"Query: "+l,s:a},J(nt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},gt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:J($e,{uniqueId:we("q",e),summary:"Queries: "+(e??u),s:t},G(a)?"No queries defined":Ce(a,(s=>J(bt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},pt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=ve(a,l);return J($e,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},J(at,{relationshipId:s,relationships:e,editable:n}))},It=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:J($e,{uniqueId:we("r",e),summary:"Relationships: "+(e??u),s:t},G(a)?"No relationships defined":Ce(a,(s=>J(pt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},ft=({tableId:e,store:t,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a),[u,c]=ve(n,a);return J($e,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},J(tt,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},yt=({store:e,storeId:t,s:l})=>{const a=we("v",t),[n,o]=ve(a,l);return G(s.useValueIds(e))?null:J($e,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},J(st,{store:e,editable:n}))},wt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:J($e,{uniqueId:we("s",e),summary:"Store: "+(e??u),s:t},J(yt,{storeId:e,store:l,s:t}),Ce(a,(s=>J(ft,{store:l,storeId:e,tableId:s,s:t,key:s}))))},Ct=({s:e})=>{const t=B(null),l=B(0),[a,n]=D(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);H((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=P((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&G(u)&&q(c)&&G(h)&&q(m)&&G(b)&&q(g)&&G(p)&&q(I)&&G(f)?J("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):J("article",{ref:t,onScroll:i},J(wt,{s:e}),U(u,(t=>J(wt,{storeId:t,s:e,key:t}))),J(mt,{s:e}),U(h,(t=>J(mt,{metricsId:t,s:e,key:t}))),J(ct,{s:e}),U(b,(t=>J(ct,{indexesId:t,s:e,key:t}))),J(It,{s:e}),U(p,(t=>J(It,{relationshipsId:t,s:e,key:t}))),J(gt,{s:e}),U(f,(t=>J(gt,{queriesId:t,s:e,key:t}))))};class vt extends A{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?J("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const Tt=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!1),[],e),a=s.useSetValueCallback(Ie,(e=>Number(e[k].dataset.id)),[],e);return J("header",null,J("img",{title:he}),J("span",null,he),U(me,((e,s)=>s==t?null:J("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),J("img",{onClick:l,title:"Close"}))},kt=({s:e})=>{const t=s.useValue(Ie,e)??1;return s.useValue(fe,e)?J("main",{"data-position":t},J(Tt,{s:e}),J(vt,null,J(Ct,{s:e}))):null},St=e=>t=>{return s=(t,s)=>t+e(s),Lt(t).reduce(s,0);var s},xt=e=>e?.size??0,Vt=St(xt),Rt=St(Vt),qt=St(Rt),Mt=(e,t)=>e?.has(t)??!1,Nt=e=>q(e)||0==xt(e),Lt=e=>[...e?.values()??[]],Et=e=>e.clear(),zt=(e,t)=>e?.forEach(t),$t=(e,t)=>e?.delete(t),Ot=e=>new Map(e),At=e=>[...e?.keys()??[]],Ft=(e,t)=>e?.get(t),Jt=(e,t)=>zt(e,((e,s)=>t(s,e))),Pt=(e,t,s)=>q(s)?($t(e,t),e):e?.set(t,s),Ht=(e,t,s)=>(Mt(e,t)||Pt(e,t,s()),Ft(e,t)),Bt=(e,t,s,l=Pt)=>(re(t,((t,l)=>s(e,l,t))),Jt(e,(s=>ne(t,s)?0:l(e,s))),e),Dt=(e,t,s)=>{const l={};return zt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Qt=(e,t,s)=>Dt(e,(e=>Dt(e,t,s)),ie),jt=(e,t,s)=>Dt(e,(e=>Qt(e,t,s)),ie),Wt=(e,t)=>{const s=Ot();return zt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Ut=e=>Wt(e,Wt),Gt=e=>Wt(e,Ut),Kt=(e,t,s,l,a=0)=>M((s?Ht:Ft)(e,t[a],a>O(t)-2?s:Ot),(n=>{if(a>O(t)-2)return l?.(n)&&Pt(e,t[a]),n;const o=Kt(n,t,s,l,a+1);return Nt(n)&&Pt(e,t[a]),o})),Xt=Ot(),Yt=Ot(),Zt=e=>L(e?.[0]),_t="storage",es=globalThis.window,ts=e=>new Set(z(e)||q(e)?e:[e]),ss=(e,t)=>e?.add(t),ls=/^\d+$/,as=()=>{const e=[];let t=0;return[s=>(s?X(e):null)??a+t++,t=>{ls.test(t)&&O(e)<1e3&&K(e,t)}]},ns=e=>[e,e],os=(e,t=Vt)=>t(e[0])+t(e[1]),rs=()=>[Ot(),Ot()],is=e=>[...e],ds=([e,t])=>e===t,us=(e,t,s)=>q(e)||!le(e)||ie(e)||te(e)?(s?.(),!1):(re(e,((s,l)=>{t(s,l)||oe(e,l)})),!ie(e)),cs=(e,t,s)=>Pt(e,t,Ft(e,t)==-s?void 0:s),hs=()=>{let e,t,s=!1,l=!1,n=0,o=[];const i=Ot(),h=Ot(),k=Ot(),S=Ot(),V=Ot(),R=Ot(),L=Ot(),z=Ot(),A=Ot(),F=Ot(),J=Ot(),P=Ot(),H=Ot(),B=Ot(),D=ts(),Q=Ot(),G=Ot(),X=Ot(),Y=Ot(),Z=rs(),_=rs(),ee=rs(),te=rs(),le=rs(),ae=rs(),ce=rs(),he=rs(),me=rs(),be=rs(),ge=rs(),pe=rs(),Ie=rs(),fe=rs(),ye=rs(),we=rs(),Ce=rs(),ve=rs(),Te=rs(),ke=rs(),Se=rs(),xe=rs(),Ve=Ot(),Re=rs(),[qe,Me,Ne,Le]=(e=>{let t;const[s,l]=as(),n=Ot();return[(e,l,o,r=[],i=(()=>[]))=>{t??=$s;const d=s(1);return Pt(n,d,[e,l,o,r,i]),ss(Kt(l,o??[a],ts),d),d},(e,s,...l)=>W(((e,t=[a])=>{const s=[],l=(e,a)=>a==O(t)?K(s,e):null===t[a]?zt(e,(e=>l(e,a+1))):W([t[a],null],(t=>l(Ft(e,t),a+1)));return l(e,0),s})(e,s),(e=>zt(e,(e=>Ft(n,e)[0](t,...s??[],...l))))),e=>M(Ft(n,e),(([,t,s])=>(Kt(t,s??[a],void 0,(t=>($t(t,e),Nt(t)?1:0))),Pt(n,e),l(e),s))),e=>M(Ft(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=O(o);r==O(s)?e(t,...o,...a(o)):q(s[r])?W(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ee=e=>{if(!us(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!N(t)&&t!=r||(Oe(e[u])!=t&&oe(e,u),0))},ze=(t,s)=>(!e||Mt(J,s)||mt(s))&&us(t,((e,t)=>$e(s,t,e)),(()=>mt(s))),$e=(e,t,s,l)=>us(l?s:Be(s,e,t),((l,a)=>M(Je(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>mt(e,t))),Je=(t,s,l,a)=>e?M(Ft(Ft(J,t),l),(e=>Oe(a)!=e[d]?mt(t,s,l,a,e[u]):a),(()=>mt(t,s,l,a))):q(Oe(a))?mt(t,s,l,a):a,Pe=(e,t)=>us(t?e:De(e),((t,s)=>M(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>bt())),He=(e,s)=>t?M(Ft(H,e),(t=>Oe(s)!=t[d]?bt(e,s,t[u]):s),(()=>bt(e,s))):q(Oe(s))?bt(e,s):s,Be=(e,t,s)=>(M(Ft(P,t),(([l,a])=>{zt(l,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(a,(l=>{ne(e,l)||mt(t,s,l)}))})),e),De=e=>(t&&(zt(B,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(D,(t=>{ne(e,t)||bt(t)}))),e),Qe=e=>Bt(J,e,((e,t,s)=>{const l=Ot(),a=ts();Bt(Ht(J,t,Ot),s,((e,t,s)=>{Pt(e,t,s),M(s[u],(e=>Pt(l,t,e)),(()=>ss(a,t)))})),Pt(P,t,[l,a])}),((e,t)=>{Pt(J,t),Pt(P,t)})),je=e=>Bt(H,e,((e,t,s)=>{Pt(H,t,s),M(s[u],(e=>Pt(B,t,e)),(()=>ss(D,t)))}),((e,t)=>{Pt(H,t),Pt(B,t),$t(D,t)})),We=e=>ie(e)?xs():Cs(e),Ue=e=>Bt(X,e,((e,t,s)=>Ge(t,s)),((e,t)=>lt(t))),Ge=(e,t)=>Bt(Ht(X,e,(()=>(rt(e,1),Pt(Q,e,as()),Pt(G,e,Ot()),Ot()))),t,((t,s,l)=>Ke(e,t,s,l)),((t,s)=>at(e,t,s))),Ke=(e,t,s,l,a)=>Bt(Ht(t,s,(()=>(it(e,s,1),Ot()))),l,((t,l,a)=>Xe(e,s,t,l,a)),((l,n)=>nt(e,t,s,l,n,a))),Xe=(e,t,s,l,a)=>{Mt(s,l)||dt(e,t,l,1);const n=Ft(s,l);a!==n&&(ut(e,t,l,n,a),Pt(s,l,a))},Ye=(e,t,s,l,a)=>M(Ft(t,s),(t=>Xe(e,s,t,l,a)),(()=>Ke(e,t,s,Be({[l]:a},e,s)))),Ze=e=>ie(e)?qs():vs(e),_e=e=>Bt(Y,e,((e,t,s)=>et(t,s)),((e,t)=>ot(t))),et=(e,t)=>{Mt(Y,e)||ct(e,1);const s=Ft(Y,e);t!==s&&(ht(e,s,t),Pt(Y,e,t))},tt=(e,t)=>{const[s]=Ft(Q,e),l=s(t);return Mt(Ft(X,e),l)?tt(e,t):l},st=e=>Ft(X,e)??Ge(e,{}),lt=e=>Ge(e,{}),at=(e,t,s)=>{const[,l]=Ft(Q,e);l(s),Ke(e,t,s,{},!0)},nt=(e,t,s,l,a,n)=>{const o=Ft(Ft(P,e)?.[0],a);if(!q(o)&&!n)return Xe(e,s,l,a,o);const r=t=>{ut(e,s,t,Ft(l,t)),dt(e,s,t,-1),Pt(l,t)};q(o)?r(a):Jt(l,r),Nt(l)&&(it(e,s,-1),Nt(Pt(t,s))&&(rt(e,-1),Pt(X,e),Pt(Q,e),Pt(G,e)))},ot=e=>{const t=Ft(B,e);if(!q(t))return et(e,t);ht(e,Ft(Y,e)),ct(e,-1),Pt(Y,e)},rt=(e,t)=>cs(i,e,t),it=(e,t,s)=>cs(Ht(S,e,Ot),t,s)&&Pt(k,e,Ht(k,e,(()=>0))+s),dt=(e,t,s,l)=>{const a=Ft(G,e),n=Ft(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&cs(Ht(h,e,Ot),s,l),Pt(a,s,n!=-l?n+l:null),cs(Ht(Ht(V,e,Ot),t,Ot),s,l)},ut=(e,t,s,l,a)=>Ht(Ht(Ht(R,e,Ot),t,Ot),s,(()=>[l,0]))[1]=a,ct=(e,t)=>cs(L,e,t),ht=(e,t,s)=>Ht(z,e,(()=>[t,0]))[1]=s,mt=(e,t,s,l,a)=>(K(Ht(Ht(Ht(A,e,Ot),t,Ot),s,(()=>[])),l),a),bt=(e,t,s)=>(K(Ht(F,e,(()=>[])),t),s),gt=(e,t,s)=>M(Ft(Ft(Ft(R,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(_t(e,t,s))])),pt=e=>M(Ft(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(ms(e))])),It=e=>Nt(A)||Nt(we[e])?0:zt(e?Gt(A):A,((t,s)=>zt(t,((t,l)=>zt(t,((t,a)=>Me(we[e],[s,l,a],t))))))),ft=e=>Nt(F)||Nt(Ce[e])?0:zt(e?Wt(F):F,((t,s)=>Me(Ce[e],[s],t))),yt=(e,t,s,l)=>{if(!Nt(e))return Me(t,l,(()=>Dt(e))),Jt(e,((e,t)=>Me(s,[...l??[],e],1==t))),1},wt=e=>{const t=bs();t!=s&&Me(Z[e],void 0,t);const l=Nt(be[e]),a=Nt(Ie[e])&&Nt(fe[e])&&Nt(me[e])&&Nt(ge[e])&&Nt(ae[e])&&Nt(ce[e])&&Nt(he[e])&&l&&Nt(ee[e])&&Nt(te[e]),n=Nt(ye[e])&&Nt(pe[e])&&Nt(le[e])&&Nt(_[e]);if(!a||!n){const t=e?[Wt(i),Ut(h),Wt(k),Ut(S),Gt(V),Gt(R)]:[i,h,k,S,V,R];if(!a){yt(t[0],ee[e],te[e]),zt(t[1],((t,s)=>yt(t,ae[e],ce[e],[s]))),zt(t[2],((t,s)=>{0!=t&&Me(he[e],[s],Lt(s))}));const s=ts();zt(t[3],((t,a)=>{yt(t,me[e],ge[e],[a])&&!l&&(Me(be[e],[a,null]),ss(s,a))})),l||zt(t[5],((t,l)=>{if(!Mt(s,l)){const s=ts();zt(t,(e=>zt(e,(([t,l],a)=>l!==t?ss(s,a):$t(e,a))))),zt(s,(t=>Me(be[e],[l,t])))}})),zt(t[4],((t,s)=>zt(t,((t,l)=>yt(t,Ie[e],fe[e],[s,l])))))}if(!n){let s;zt(t[5],((t,l)=>{let a;zt(t,((t,n)=>{let o;zt(t,(([t,r],i)=>{r!==t&&(Me(ye[e],[l,n,i],r,t,gt),s=a=o=1)})),o&&Me(pe[e],[l,n],gt)})),a&&Me(le[e],[l],gt)})),s&&Me(_[e],void 0,gt)}}},Ct=e=>{const t=ys();t!=l&&Me(ve[e],void 0,t);const s=Nt(ke[e])&&Nt(Se[e]),a=Nt(xe[e])&&Nt(Te[e]);if(!s||!a){const t=e?[Wt(L),Wt(z)]:[L,z];if(s||yt(t[0],ke[e],Se[e]),!a){let s;zt(t[1],(([t,l],a)=>{l!==t&&(Me(xe[e],[a],l,t,pt),s=1)})),s&&Me(Te[e],void 0,pt)}}},vt=(e,...t)=>(Ls((()=>e(...U(t,x)))),$s),Tt=()=>jt(X),kt=()=>At(X),St=e=>At(Ft(G,x(e))),Lt=e=>xt(Ft(X,x(e))),Xt=e=>At(Ft(X,x(e))),Yt=(e,t,s,l=0,a)=>{return U($(j((n=Ft(X,x(e)),o=(e,s)=>[q(t)?s:Ft(e,x(t)),s],U([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},Zt=(e,t)=>At(Ft(Ft(X,x(e)),x(t))),_t=(e,t,s)=>Ft(Ft(Ft(X,x(e)),x(t)),x(s)),es=()=>Dt(Y),ls=()=>At(Y),ms=e=>Ft(Y,x(e)),bs=()=>!Nt(X),gs=e=>Mt(X,x(e)),ps=(e,t)=>Mt(Ft(G,x(e)),x(t)),Is=(e,t)=>Mt(Ft(X,x(e)),x(t)),fs=(e,t,s)=>Mt(Ft(Ft(X,x(e)),x(t)),x(s)),ys=()=>!Nt(Y),ws=e=>Mt(Y,x(e)),Cs=e=>vt((()=>(e=>us(e,ze,mt))(e)?Ue(e):0)),vs=e=>vt((()=>Pe(e)?_e(e):0)),Ts=e=>{try{We(ue(e))}catch{}return $s},ks=t=>vt((()=>{if((e=us(t,(e=>us(e,Ee))))&&(Qe(t),!Nt(X))){const e=Tt();xs(),Cs(e)}})),Ss=e=>vt((()=>{if(t=(e=>us(e,Ee))(e)){const s=es();Ns(),qs(),t=!0,je(e),vs(s)}})),xs=()=>vt((()=>Ue({}))),Vs=e=>vt((e=>Mt(X,e)?lt(e):0),e),Rs=(e,t)=>vt(((e,t)=>M(Ft(X,e),(s=>Mt(s,t)?at(e,s,t):0))),e,t),qs=()=>vt((()=>_e({}))),Ms=()=>vt((()=>{Qe({}),e=!1})),Ns=()=>vt((()=>{je({}),t=!1})),Ls=(e,t)=>{if(-1!=n){Es();const s=e();return zs(t),s}},Es=()=>(-1!=n&&n++,1==n&&Me(Ve,void 0),$s),zs=e=>(n>0&&(n--,0==n&&(n=1,It(1),Nt(R)||wt(1),ft(1),Nt(z)||Ct(1),e?.($s)&&(zt(R,((e,t)=>zt(e,((e,s)=>zt(e,(([e],l)=>Ae($s,t,s,l,e))))))),Et(R),zt(z,(([e],t)=>Fe($s,t,e))),Et(z)),Me(Re[0],void 0),n=-1,It(0),Nt(R)||wt(0),ft(0),Nt(z)||Ct(0),o[0]?.($s),Me(Re[1],void 0),o[1]?.($s),n=0,s=bs(),l=ys(),W([i,h,k,S,V,R,A,L,z,F],Et))),$s),$s={getContent:()=>[Tt(),es()],getTables:Tt,getTableIds:kt,getTable:e=>Qt(Ft(X,x(e))),getTableCellIds:St,getRowCount:Lt,getRowIds:Xt,getSortedRowIds:Yt,getRow:(e,t)=>Dt(Ft(Ft(X,x(e)),x(t))),getCellIds:Zt,getCell:_t,getValues:es,getValueIds:ls,getValue:ms,hasTables:bs,hasTable:gs,hasTableCell:ps,hasRow:Is,hasCell:fs,hasValues:ys,hasValue:ws,getTablesJson:()=>de(X),getValuesJson:()=>de(Y),getJson:()=>de([X,Y]),getTablesSchemaJson:()=>de(J),getValuesSchemaJson:()=>de(H),getSchemaJson:()=>de([J,H]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>vt((()=>{(ie(e)?xs:Cs)(e),(ie(t)?qs:vs)(t)})),setTables:Cs,setTable:(e,t)=>vt((e=>ze(t,e)?Ge(e,t):0),e),setRow:(e,t,s)=>vt(((e,t)=>$e(e,t,s)?Ke(e,st(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ls((()=>{let l;return $e(e,l,t)&&(e=x(e),Ke(e,st(e),l=tt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>vt(((e,t)=>{if($e(e,t,s,1)){const l=st(e);re(s,((s,a)=>Ye(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>vt(((e,t,s)=>M(Je(e,t,s,E(l)?l(_t(e,t,s)):l),(l=>Ye(e,st(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>vt((()=>Pe(e,1)?re(e,((e,t)=>et(t,e))):0)),setValue:(e,t)=>vt((e=>M(He(e,E(t)?t(ms(e)):t),(t=>et(e,t)))),e),applyChanges:e=>vt((()=>{re(e[0],((e,t)=>q(e)?Vs(t):re(e,((e,s)=>q(e)?Rs(t,s):re(e,((e,l)=>Ae($s,t,s,l,e))))))),re(e[1],((e,t)=>Fe($s,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{Ze(ue(e))}catch{}return $s},setJson:e=>vt((()=>{try{const[t,s]=ue(e);We(t),Ze(s)}catch{Ts(e)}})),setTablesSchema:ks,setValuesSchema:Ss,setSchema:(e,t)=>vt((()=>{ks(e),Ss(t)})),delTables:xs,delTable:Vs,delRow:Rs,delCell:(e,t,s,l)=>vt(((e,t,s)=>M(Ft(X,e),(a=>M(Ft(a,t),(n=>Mt(n,s)?nt(e,a,t,n,s,l):0))))),e,t,s),delValues:qs,delValue:e=>vt((e=>Mt(Y,e)?ot(e):0),e),delTablesSchema:Ms,delValuesSchema:Ns,delSchema:()=>vt((()=>{Ms(),Ns()})),transaction:Ls,startTransaction:Es,getTransactionChanges:()=>[Dt(R,((e,t)=>-1===Ft(i,t)?void 0:Dt(e,((e,s)=>-1===Ft(Ft(S,t),s)?void 0:Dt(e,(([,e])=>e),((e,t)=>ds(t)))),ie)),ie),Dt(z,(([,e])=>e),((e,t)=>ds(t)))],getTransactionLog:()=>[!Nt(R),!Nt(z),jt(R,is,ds),jt(A),Dt(z,is,ds),Dt(F),Dt(i),Qt(S),jt(V),Dt(L)],finishTransaction:zs,forEachTable:e=>zt(X,((t,s)=>e(s,(e=>zt(t,((t,s)=>e(s,(e=>Jt(t,e))))))))),forEachTableCell:(e,t)=>Jt(Ft(G,x(e)),t),forEachRow:(e,t)=>zt(Ft(X,x(e)),((e,s)=>t(s,(t=>Jt(e,t))))),forEachCell:(e,t,s)=>Jt(Ft(Ft(X,x(e)),x(t)),s),forEachValue:e=>Jt(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=Yt(e,t,s,l,a);return qe((()=>{const o=Yt(e,t,s,l,a);var i,d,u;d=r,O(i=o)===O(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n($s,e,t,s,l,a,r))}),be[o?1:0],[e,t],[kt])},addStartTransactionListener:e=>qe(e,Ve),addWillFinishTransactionListener:e=>qe(e,Re[0]),addDidFinishTransactionListener:e=>qe(e,Re[1]),callListener:e=>(Le(e),$s),delListener:e=>(Ne(e),$s),getListenerStats:()=>({hasTables:os(Z),tables:os(_),tableIds:os(ee),hasTable:os(te),table:os(le),tableCellIds:os(ae),hasTableCell:os(ce,Rt),rowCount:os(he),rowIds:os(me),sortedRowIds:os(be),hasRow:os(ge,Rt),row:os(pe,Rt),cellIds:os(Ie,Rt),hasCell:os(fe,qt),cell:os(ye,qt),invalidCell:os(we,qt),hasValues:os(ve),values:os(Te),valueIds:os(ke),hasValue:os(Se),value:os(xe),invalidValue:os(Ce),transaction:Vt(Ve)+os(Re)}),createStore:hs,addListener:qe,callListeners:Me,setInternalListeners:(e,t)=>o=[e,t]};return re({[c+b]:[0,Z,[],()=>[bs()]],[b]:[0,_],[g]:[0,ee],[c+m]:[1,te,[kt],e=>[gs(...e)]],[m]:[1,le,[kt]],[m+w]:[1,ae,[kt]],[c+m+y]:[2,ce,[kt,St],e=>[ps(...e)]],[I]:[1,he,[kt]],[f]:[1,me,[kt]],[c+p]:[2,ge,[kt,Xt],e=>[Is(...e)]],[p]:[2,pe,[kt,Xt]],[w]:[2,Ie,[kt,Xt]],[c+y]:[3,fe,[kt,Xt,Zt],e=>[fs(...e)]],[y]:[3,ye,[kt,Xt,Zt],e=>ns(_t(...e))],InvalidCell:[3,we],[c+v]:[0,ve,[],()=>[ys()]],[v]:[0,Te],[T]:[0,ke],[c+C]:[1,Se,[ls],e=>[ws(...e)]],[C]:[1,xe,[ls],e=>ns(ms(e[0]))],InvalidValue:[1,Ce]},(([e,t,s,l],a)=>{$s["add"+a+"Listener"]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?$(a,0,e):void 0,s,l)})),se($s)},ms=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(hs),a=me.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,o,[r,i]=[],d=[])=>{let u,c,h,m=0,b=0,g=0,p=0;Ht(Xt,d,(()=>0)),Ht(Yt,d,(()=>[]));const[I,f,y,w]=((e,t)=>!e||q(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ie(e)||!ie(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ie(e)||!ie(t)])(o,e),C=async e=>(2!=m&&(m=1,b++,await v.schedule((async()=>{await e(),m=0}))),v),v={load:async(s,l)=>await C((async()=>{try{const s=await t();(I&&Zt(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(v.stopAutoLoad(),await v.load(s,a),p=1,h=l((async(s,l)=>{if(l){const t=l();await C((async()=>(I&&Zt(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await C((async()=>{try{const l=s?.()??await t();(I&&Zt(l)?e.setMergeableContent:e.setContent)(l)}catch(e){n?.(e)}}))})),v),stopAutoLoad:()=>(p&&(a(h),h=void 0,p=0),v),save:async e=>(1!=m&&(m=2,g++,await v.schedule((async()=>{try{await s(f,e)}catch(e){n?.(e)}m=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=y();w(e)&&v.save((()=>e))})),v),stopAutoSave:()=>(M(u,e.delListener),u=void 0,v),schedule:async(...e)=>(K(Ft(Yt,d),...e),await(async()=>{if(!Ft(Xt,d)){for(Pt(Xt,d,1);!q(c=X(Ft(Yt,d)));)try{await c()}catch(e){n?.(e)}Pt(Xt,d,0)}})(),v),getStore:()=>e,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:b,saves:g})};return r&&(v[r]=()=>i),se(v)})(e,(async()=>ue(s.getItem(t))),(async e=>s.setItem(t,de(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ue(l.newValue)))};return es.addEventListener(_t,l),l}),(e=>es.removeEventListener(_t,e)),l,!0,["getStorageName",t]))(e,ce,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),J(F,null,J("aside",{id:ce},J(ze,{s:l}),J(kt,{s:l})),J("style",null,Ee))};e.EditableCellView=ot,e.EditableValueView=rt,e.RelationshipInHtmlTable=at,e.ResultSortedTableInHtmlTable=nt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>J(Ye,{...a,params:We(Xe(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ge(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=lt,e.SortedTableInHtmlTable=tt,e.SortedTablePaginator=it,e.StoreInspector=e=>J(ms,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>J(Ye,{...n,params:We(Xe(s.useTableCellIds(e,t),a,l?ot:s.CellView),Ue(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=st},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,y="Cell",w=y+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,M=(e,t,s)=>q(e)?s?.():t(e),N=e=>e==n||e==o,L=e=>l(e)==n,E=e=>l(e)==i,z=e=>Array.isArray(e),$=(e,t,s)=>e.slice(t,s),A=e=>e.length,{PureComponent:O,Fragment:F,createElement:J,useCallback:P,useLayoutEffect:H,useRef:B,useState:D}=t,Q=(e,...t)=>q(e)?{}:e(...t),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),G=e=>0==A(e),K=(e,...t)=>e.push(...t),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.entries,ee=Y.isFrozen,te=e=>!q(e)&&M(Z(e),(e=>e==Y.prototype||q(Z(e))),(()=>!0)),se=Y.keys,le=Y.freeze,ae=(e=[])=>Y.fromEntries(e),ne=(e,t)=>t in e,oe=(e,t)=>(delete e[t],e),re=(e,t)=>U(_(e),(([e,s])=>t(s,e))),ie=e=>te(e)&&0==(e=>A(se(e)))(e),de=(e,t,s,l=0)=>q(e)||!te(e)||!l&&ie(e)||ee(e)?(s?.(),!1):(re(e,((s,l)=>{t(s,l)||oe(e,l)})),!!l||!ie(e)),ue=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),ce=JSON.parse,he="tinybaseStoreInspector",me="TinyBase Store Inspector",be=["left","top","bottom","right","full"],ge="state",pe="sort",Ie="open",fe="position",ye=Ie,we="editable",Ce=(...e)=>ue(e),ve=(e,t)=>U(j(e),t),Te=(e,t)=>[!!s.useCell(ge,e,we,t),P((s=>{t.setCell(ge,e,we,(e=>!e)),s.preventDefault()}),[t,e])],ke="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Se='content:url("',xe=Se+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Ve='</svg>")',Re=Se+"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\")",qe=U([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>xe+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Ve)),Me=xe+"<path d='M20 20l60 60M20 80l60-60' />"+Ve,Ne=xe+`<path d='${ke}' />`+Ve,Le=xe+`<path d='${ke}M20 20l60 60' />`+Ve,Ee="*::-webkit-scrollbar",ze=((e,t="")=>e.join(t))(re({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Ee]:"width:0.5rem;height:0.5rem;",[Ee+"-track"]:"background:#111",[Ee+"-thumb"]:"background:#999;border:1px solid #111",[Ee+"-thumb:hover"]:"background:#fff",[Ee+"-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;"+Re,...ae(U(["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;",...ae(U(["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)":Re,"header>img:nth-of-type(6)":Me,...ae(U(qe,((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":Ne,"details[open]>summary img.done":Le,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,#${he} 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?`#${he} ${t}{${e}}`:""))),$e=({s:e})=>{const t=s.useValue(fe,e)??1,l=s.useSetValueCallback(ye,(()=>!0),[],e);return s.useValue(ye,e)?null:J("img",{onClick:l,title:me,"data-position":t})},Ae=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(ge,e,Ie,o),i=s.useSetCellCallback(ge,e,Ie,(e=>e[k].open),[],o);return J("details",{open:r,onToggle:i},J("summary",null,t,a?J("img",{onClick:a,className:l?"done":"edit"}):null),n)},Oe=e=>{const t=l(e);return N(t)||t==r&&R(e)?t:void 0},Fe=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Je=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Pe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:He,useMemo:Be,useState:De}=t,Qe="editable",je=(e,t)=>U(s.useTableCellIds(e,t),(t=>e+"."+t)),We=(e,t,s)=>{const l=He(e,t);return s?l:void 0},Ue=(...e)=>Be((()=>e),e),Ge=(e,t)=>Be((()=>({store:e,tableId:t})),[e,t]),Ke=(e,t)=>Be((()=>({queries:e,queryId:t})),[e,t]),Xe=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=De([e,t,l]),h=He((e=>{c(e),r?.(e)}),[r]),m=We((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=He((e=>h([i,d,e])),[h,i,d]),g=!0===o?dt:o;return[[i,d,u],m,Be((()=>!1===o?null:J(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ye=(e,t,s)=>Be((()=>{const l=t??e;return a=z(l)?ae(U(l,(e=>[e,e]))):l,n=(e,t)=>({label:t,component:s,...L(e)?{label:e}:e}),ae(re(a,((e,t)=>[t,n(e,t)])));var a,n}),[t,s,e]),Ze=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>J("table",{className:e},i?J("caption",null,i):null,!1===t?null:J("thead",null,J("tr",null,!1===s?null:J(_e,{sort:o??[],label:"Id",onClick:r}),re(l,(({label:e},t)=>J(_e,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),J("tbody",null,U(n,(e=>J("tr",{key:e},!1===s?null:J("th",null,e),re(l,(({component:t,getComponentProps:s},l)=>J("td",{key:l},J(t,{...Q(s,e,l),...a,rowId:e,cellId:l}))))))))),_e=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>J("th",{onClick:We((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),et=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return J("tr",null,!1===l?null:J(t.Fragment,null,J("th",null,e),J("th",null,u)),re(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:J("td",{key:l},J(t,{...Q(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},tt=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=De(),[u,c]=De(),[h,m]=De(),[b,g]=De(),[p,I]=De();u!==e&&(d(Oe(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=He(((e,s)=>{s(e),c(e),t(e)}),[t]),y=He((()=>{if(!l?.()){const e=Pe(i,r,o,n),s=Pe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return J("div",{className:s},a?J("button",{className:i,onClick:y},i):null,Pe(i,J("input",{key:i,value:h,onChange:He((e=>f(e[k][S]+"",m)),[f])}),J("input",{key:i,type:"number",value:b,onChange:He((e=>f(Number(e[k][S]||0),g)),[f])}),J("input",{key:i,type:"checkbox",checked:p,onChange:He((e=>f(!!e[k].checked,I)),[f])})))},st=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Xe(t,l,i,a,n,s.useRowCount(e,o),d,u);return J(Ze,{...h,params:Ue(Ye(s.useTableCellIds(e,o),c,r?rt:s.CellView),Ge(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},lt=({store:e,editable:t=!1,valueComponent:l=(t?it:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>J("table",{className:n},!1===o?null:J("thead",null,J("tr",null,!1===r?null:J("th",null,"Id"),J("th",null,C))),J("tbody",null,U(s.useValueIds(e),(t=>J("tr",{key:t},!1===r?null:J("th",null,t),J("td",null,J(l,{...Q(a,t),valueId:t,store:e}))))))),at=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return J(Ze,{...o,params:Ue(Ye(s.useTableCellIds(d,i),n,a?rt:s.CellView),Ge(i,d),s.useSliceRowIds(e,t,r))})},nt=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Ye([...je(c,u),...je(h,u)],n,a?rt:s.CellView),b=Ue(i,m,c,h,e,d,u);return J("table",{className:o},!1===r?null:J("thead",null,J("tr",null,!1===i?null:J(t.Fragment,null,J("th",null,c,".Id"),J("th",null,h,".Id")),re(m,(({label:e},t)=>J("th",{key:t},e))))),J("tbody",null,U(s.useRowIds(c,u),(e=>J(et,{key:e,localRowId:e,params:b})))))},ot=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Xe(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return J(Ze,{...c,params:Ue(Ye(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ke(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},rt=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>J(tt,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Qe+y,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),it=({valueId:e,store:t,className:l,showType:a})=>J(tt,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Qe+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),dt=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=We((()=>e(l-a)),[e,l,a],l>0),i=We((()=>e(l+a)),[e,l,a],l+a<s);return J(t.Fragment,null,s>a&&J(t.Fragment,null,J("button",{className:"previous",disabled:0==l,onClick:r},"←"),J("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},ut=({indexes:e,indexesId:t,indexId:l,s:a})=>J(Ae,{uniqueId:Ce("i",t,l),summary:"Index: "+l,s:a},U(s.useSliceIds(l,e),(s=>J(ct,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ct=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=Ce("i",t,s,l),[o,r]=Te(n,a);return J(Ae,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},J(at,{sliceId:l,indexId:s,indexes:e,editable:o}))},ht=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:J(Ae,{uniqueId:Ce("i",e),summary:"Indexes: "+(e??u),s:t},G(a)?"No indexes defined":ve(a,(s=>J(ut,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},mt=({metrics:e,metricId:t})=>J("tr",null,J("th",null,t),J("td",null,e?.getTableId(t)),J("td",null,s.useMetric(t,e))),bt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:J(Ae,{uniqueId:Ce("m",e),summary:"Metrics: "+(e??u),s:t},G(a)?"No metrics defined":J("table",null,J("thead",null,J("th",null,"Metric Id"),J("th",null,"Table Id"),J("th",null,"Metric")),J("tbody",null,U(a,(e=>J(mt,{metrics:l,metricId:e,key:e}))))))},gt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=Ce("q",t,l),[o,r,i]=ce(s.useCell(ge,n,pe,a)??"[]"),d=s.useSetCellCallback(ge,n,pe,ue,[],a);return J(Ae,{uniqueId:n,summary:"Query: "+l,s:a},J(ot,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},pt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:J(Ae,{uniqueId:Ce("q",e),summary:"Queries: "+(e??u),s:t},G(a)?"No queries defined":ve(a,(s=>J(gt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},It=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=Ce("r",t,s),[n,o]=Te(a,l);return J(Ae,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},J(nt,{relationshipId:s,relationships:e,editable:n}))},ft=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:J(Ae,{uniqueId:Ce("r",e),summary:"Relationships: "+(e??u),s:t},G(a)?"No relationships defined":ve(a,(s=>J(It,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},yt=({tableId:e,store:t,storeId:l,s:a})=>{const n=Ce("t",l,e),[o,r,i]=ce(s.useCell(ge,n,pe,a)??"[]"),d=s.useSetCellCallback(ge,n,pe,ue,[],a),[u,c]=Te(n,a);return J(Ae,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},J(st,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},wt=({store:e,storeId:t,s:l})=>{const a=Ce("v",t),[n,o]=Te(a,l);return G(s.useValueIds(e))?null:J(Ae,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},J(lt,{store:e,editable:n}))},Ct=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:J(Ae,{uniqueId:Ce("s",e),summary:"Store: "+(e??u),s:t},J(wt,{storeId:e,store:l,s:t}),ve(a,(s=>J(yt,{store:l,storeId:e,tableId:s,s:t,key:s}))))},vt=({s:e})=>{const t=B(null),l=B(0),[a,n]=D(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);H((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=P((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&G(u)&&q(c)&&G(h)&&q(m)&&G(b)&&q(g)&&G(p)&&q(I)&&G(f)?J("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):J("article",{ref:t,onScroll:i},J(Ct,{s:e}),U(u,(t=>J(Ct,{storeId:t,s:e,key:t}))),J(bt,{s:e}),U(h,(t=>J(bt,{metricsId:t,s:e,key:t}))),J(ht,{s:e}),U(b,(t=>J(ht,{indexesId:t,s:e,key:t}))),J(ft,{s:e}),U(p,(t=>J(ft,{relationshipsId:t,s:e,key:t}))),J(pt,{s:e}),U(f,(t=>J(pt,{queriesId:t,s:e,key:t}))))};class Tt extends O{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?J("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const kt=({s:e})=>{const t=s.useValue(fe,e)??1,l=s.useSetValueCallback(ye,(()=>!1),[],e),a=s.useSetValueCallback(fe,(e=>Number(e[k].dataset.id)),[],e);return J("header",null,J("img",{title:me}),J("span",null,me),U(be,((e,s)=>s==t?null:J("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),J("img",{onClick:l,title:"Close"}))},St=({s:e})=>{const t=s.useValue(fe,e)??1;return s.useValue(ye,e)?J("main",{"data-position":t},J(kt,{s:e}),J(Tt,null,J(vt,{s:e}))):null},xt=e=>t=>{return s=(t,s)=>t+e(s),Et(t).reduce(s,0);var s},Vt=e=>e?.size??0,Rt=xt(Vt),qt=xt(Rt),Mt=xt(qt),Nt=(e,t)=>e?.has(t)??!1,Lt=e=>q(e)||0==Vt(e),Et=e=>[...e?.values()??[]],zt=e=>e.clear(),$t=(e,t)=>e?.forEach(t),At=(e,t)=>e?.delete(t),Ot=e=>new Map(e),Ft=e=>[...e?.keys()??[]],Jt=(e,t)=>e?.get(t),Pt=(e,t)=>$t(e,((e,s)=>t(s,e))),Ht=(e,t,s)=>q(s)?(At(e,t),e):e?.set(t,s),Bt=(e,t,s,l)=>(Nt(e,t)?l?.(Jt(e,t)):Ht(e,t,s()),Jt(e,t)),Dt=(e,t,s,l=Ht)=>(re(t,((t,l)=>s(e,l,t))),Pt(e,(s=>ne(t,s)?0:l(e,s))),e),Qt=(e,t,s,l)=>{const a={};return $t(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;!l?.(s)&&(a[n]=s)}})),a},jt=(e,t,s)=>Qt(e,(e=>Qt(e,t,s)),Lt,ie),Wt=(e,t,s)=>Qt(e,(e=>jt(e,t,s)),Lt,ie),Ut=(e,t)=>{const s=Ot();return $t(e,((e,l)=>s.set(l,t?.(e)??e))),s},Gt=e=>Ut(e,Ut),Kt=e=>Ut(e,Gt),Xt=(e,t,s,l,a=0)=>M((s?Bt:Jt)(e,t[a],a>A(t)-2?s:Ot),(n=>{if(a>A(t)-2)return l?.(n)&&Ht(e,t[a]),n;const o=Xt(n,t,s,l,a+1);return Lt(n)&&Ht(e,t[a]),o})),Yt=Ot(),Zt=Ot(),_t="storage",es=globalThis.window,ts=e=>new Set(z(e)||q(e)?e:[e]),ss=(e,t)=>e?.add(t),ls=/^\d+$/,as=()=>{const e=[];let t=0;return[s=>(s?X(e):null)??a+t++,t=>{ls.test(t)&&A(e)<1e3&&K(e,t)}]},ns=e=>[e,e],os=(e,t=Rt)=>t(e[0])+t(e[1]),rs=()=>[Ot(),Ot()],is=e=>[...e],ds=([e,t])=>e===t,us=(e,t,s)=>Ht(e,t,Jt(e,t)==-s?void 0:s),cs=()=>{let e,t,s=!1,l=!1,n=0,o=[];const i=Ot(),h=Ot(),k=Ot(),S=Ot(),V=Ot(),R=Ot(),L=Ot(),z=Ot(),O=Ot(),F=Ot(),J=Ot(),P=Ot(),H=Ot(),B=Ot(),D=ts(),Q=Ot(),G=Ot(),X=Ot(),Y=Ot(),Z=rs(),_=rs(),ee=rs(),te=rs(),se=rs(),ae=rs(),he=rs(),me=rs(),be=rs(),ge=rs(),pe=rs(),Ie=rs(),fe=rs(),ye=rs(),we=rs(),Ce=rs(),ve=rs(),Te=rs(),ke=rs(),Se=rs(),xe=rs(),Ve=rs(),Re=Ot(),qe=rs(),[Me,Ne,Le,Ee]=(e=>{let t;const[s,l]=as(),n=Ot();return[(e,l,o,r=[],i=(()=>[]))=>{t??=$s;const d=s(1);return Ht(n,d,[e,l,o,r,i]),ss(Xt(l,o??[a],ts),d),d},(e,s,...l)=>W(((e,t=[a])=>{const s=[],l=(e,a)=>a==A(t)?K(s,e):null===t[a]?$t(e,(e=>l(e,a+1))):W([t[a],null],(t=>l(Jt(e,t),a+1)));return l(e,0),s})(e,s),(e=>$t(e,(e=>Jt(n,e)[0](t,...s??[],...l))))),e=>M(Jt(n,e),(([,t,s])=>(Xt(t,s??[a],void 0,(t=>(At(t,e),Lt(t)?1:0))),Ht(n,e),l(e),s))),e=>M(Jt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=A(o);r==A(s)?e(t,...o,...a(o)):q(s[r])?W(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),ze=e=>{if(!de(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!N(t)&&t!=r||(Oe(e[u])!=t&&oe(e,u),0))},$e=(t,s)=>(!e||Nt(J,s)||bt(s))&&de(t,((e,t)=>Ae(s,t,e)),(()=>bt(s))),Ae=(e,t,s,l)=>de(l?s:De(s,e,t),((l,a)=>M(Pe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Pe=(t,s,l,a)=>e?M(Jt(Jt(J,t),l),(e=>Oe(a)!=e[d]?bt(t,s,l,a,e[u]):a),(()=>bt(t,s,l,a))):q(Oe(a))?bt(t,s,l,a):a,He=(e,t)=>de(t?e:Qe(e),((t,s)=>M(Be(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>gt())),Be=(e,s)=>t?M(Jt(H,e),(t=>Oe(s)!=t[d]?gt(e,s,t[u]):s),(()=>gt(e,s))):q(Oe(s))?gt(e,s):s,De=(e,t,s)=>(M(Jt(P,t),(([l,a])=>{$t(l,((t,s)=>{ne(e,s)||(e[s]=t)})),$t(a,(l=>{ne(e,l)||bt(t,s,l)}))})),e),Qe=e=>(t&&($t(B,((t,s)=>{ne(e,s)||(e[s]=t)})),$t(D,(t=>{ne(e,t)||gt(t)}))),e),je=e=>Dt(J,e,((e,t,s)=>{const l=Ot(),a=ts();Dt(Bt(J,t,Ot),s,((e,t,s)=>{Ht(e,t,s),M(s[u],(e=>Ht(l,t,e)),(()=>ss(a,t)))})),Ht(P,t,[l,a])}),((e,t)=>{Ht(J,t),Ht(P,t)})),We=e=>Dt(H,e,((e,t,s)=>{Ht(H,t,s),M(s[u],(e=>Ht(B,t,e)),(()=>ss(D,t)))}),((e,t)=>{Ht(H,t),Ht(B,t),At(D,t)})),Ue=e=>ie(e)?xs():Cs(e),Ge=e=>Dt(X,e,((e,t,s)=>Ke(t,s)),((e,t)=>at(t))),Ke=(e,t)=>Dt(Bt(X,e,(()=>(it(e,1),Ht(Q,e,as()),Ht(G,e,Ot()),Ot()))),t,((t,s,l)=>Xe(e,t,s,l)),((t,s)=>nt(e,t,s))),Xe=(e,t,s,l,a)=>Dt(Bt(t,s,(()=>(dt(e,s,1),Ot()))),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)=>{Nt(s,l)||ut(e,t,l,1);const n=Jt(s,l);a!==n&&(ct(e,t,l,n,a),Ht(s,l,a))},Ze=(e,t,s,l,a)=>M(Jt(t,s),(t=>Ye(e,s,t,l,a)),(()=>Xe(e,t,s,De({[l]:a},e,s)))),_e=e=>ie(e)?qs():vs(e),et=e=>Dt(Y,e,((e,t,s)=>tt(t,s)),((e,t)=>rt(t))),tt=(e,t)=>{Nt(Y,e)||ht(e,1);const s=Jt(Y,e);t!==s&&(mt(e,s,t),Ht(Y,e,t))},st=(e,t)=>{const[s]=Jt(Q,e),l=s(t);return Nt(Jt(X,e),l)?st(e,t):l},lt=e=>Jt(X,e)??Ke(e,{}),at=e=>Ke(e,{}),nt=(e,t,s)=>{const[,l]=Jt(Q,e);l(s),Xe(e,t,s,{},!0)},ot=(e,t,s,l,a,n)=>{const o=Jt(Jt(P,e)?.[0],a);if(!q(o)&&!n)return Ye(e,s,l,a,o);const r=t=>{ct(e,s,t,Jt(l,t)),ut(e,s,t,-1),Ht(l,t)};q(o)?r(a):Pt(l,r),Lt(l)&&(dt(e,s,-1),Lt(Ht(t,s))&&(it(e,-1),Ht(X,e),Ht(Q,e),Ht(G,e)))},rt=e=>{const t=Jt(B,e);if(!q(t))return tt(e,t);mt(e,Jt(Y,e)),ht(e,-1),Ht(Y,e)},it=(e,t)=>us(i,e,t),dt=(e,t,s)=>us(Bt(S,e,Ot),t,s)&&Ht(k,e,Bt(k,e,(()=>0))+s),ut=(e,t,s,l)=>{const a=Jt(G,e),n=Jt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&us(Bt(h,e,Ot),s,l),Ht(a,s,n!=-l?n+l:null),us(Bt(Bt(V,e,Ot),t,Ot),s,l)},ct=(e,t,s,l,a)=>Bt(Bt(Bt(R,e,Ot),t,Ot),s,(()=>[l,0]))[1]=a,ht=(e,t)=>us(L,e,t),mt=(e,t,s)=>Bt(z,e,(()=>[t,0]))[1]=s,bt=(e,t,s,l,a)=>(K(Bt(Bt(Bt(O,e,Ot),t,Ot),s,(()=>[])),l),a),gt=(e,t,s)=>(K(Bt(F,e,(()=>[])),t),s),pt=(e,t,s)=>M(Jt(Jt(Jt(R,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(es(e,t,s))])),It=e=>M(Jt(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(ms(e))])),ft=e=>Lt(O)||Lt(Ce[e])?0:$t(e?Kt(O):O,((t,s)=>$t(t,((t,l)=>$t(t,((t,a)=>Ne(Ce[e],[s,l,a],t))))))),yt=e=>Lt(F)||Lt(ve[e])?0:$t(e?Ut(F):F,((t,s)=>Ne(ve[e],[s],t))),wt=(e,t,s,l)=>{if(!Lt(e))return Ne(t,l,(()=>Qt(e))),Pt(e,((e,t)=>Ne(s,[...l??[],e],1==t))),1},Ct=e=>{const t=bs();t!=s&&Ne(Z[e],void 0,t);const l=Lt(ge[e]),a=Lt(fe[e])&&Lt(ye[e])&&Lt(be[e])&&Lt(pe[e])&&Lt(ae[e])&&Lt(he[e])&&Lt(me[e])&&l&&Lt(ee[e])&&Lt(te[e]),n=Lt(we[e])&&Lt(Ie[e])&&Lt(se[e])&&Lt(_[e]);if(!a||!n){const t=e?[Ut(i),Gt(h),Ut(k),Gt(S),Kt(V),Kt(R)]:[i,h,k,S,V,R];if(!a){wt(t[0],ee[e],te[e]),$t(t[1],((t,s)=>wt(t,ae[e],he[e],[s]))),$t(t[2],((t,s)=>{0!=t&&Ne(me[e],[s],Et(s))}));const s=ts();$t(t[3],((t,a)=>{wt(t,be[e],pe[e],[a])&&!l&&(Ne(ge[e],[a,null]),ss(s,a))})),l||$t(t[5],((t,l)=>{if(!Nt(s,l)){const s=ts();$t(t,(e=>$t(e,(([t,l],a)=>l!==t?ss(s,a):At(e,a))))),$t(s,(t=>Ne(ge[e],[l,t])))}})),$t(t[4],((t,s)=>$t(t,((t,l)=>wt(t,fe[e],ye[e],[s,l])))))}if(!n){let s;$t(t[5],((t,l)=>{let a;$t(t,((t,n)=>{let o;$t(t,(([t,r],i)=>{r!==t&&(Ne(we[e],[l,n,i],r,t,pt),s=a=o=1)})),o&&Ne(Ie[e],[l,n],pt)})),a&&Ne(se[e],[l],pt)})),s&&Ne(_[e],void 0,pt)}}},vt=e=>{const t=ys();t!=l&&Ne(Te[e],void 0,t);const s=Lt(Se[e])&&Lt(xe[e]),a=Lt(Ve[e])&&Lt(ke[e]);if(!s||!a){const t=e?[Ut(L),Ut(z)]:[L,z];if(s||wt(t[0],Se[e],xe[e]),!a){let s;$t(t[1],(([t,l],a)=>{l!==t&&(Ne(Ve[e],[a],l,t,It),s=1)})),s&&Ne(ke[e],void 0,It)}}},Tt=(e,...t)=>(Ls((()=>e(...U(t,x)))),$s),kt=()=>Wt(X),St=()=>Ft(X),xt=e=>Ft(Jt(G,x(e))),Et=e=>Vt(Jt(X,x(e))),Yt=e=>Ft(Jt(X,x(e))),Zt=(e,t,s,l=0,a)=>{return U($(j((n=Jt(X,x(e)),o=(e,s)=>[q(t)?s:Jt(e,x(t)),s],U([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},_t=(e,t)=>Ft(Jt(Jt(X,x(e)),x(t))),es=(e,t,s)=>Jt(Jt(Jt(X,x(e)),x(t)),x(s)),ls=()=>Qt(Y),hs=()=>Ft(Y),ms=e=>Jt(Y,x(e)),bs=()=>!Lt(X),gs=e=>Nt(X,x(e)),ps=(e,t)=>Nt(Jt(G,x(e)),x(t)),Is=(e,t)=>Nt(Jt(X,x(e)),x(t)),fs=(e,t,s)=>Nt(Jt(Jt(X,x(e)),x(t)),x(s)),ys=()=>!Lt(Y),ws=e=>Nt(Y,x(e)),Cs=e=>Tt((()=>(e=>de(e,$e,bt))(e)?Ge(e):0)),vs=e=>Tt((()=>He(e)?et(e):0)),Ts=e=>{try{Ue(ce(e))}catch{}return $s},ks=t=>Tt((()=>{if((e=de(t,(e=>de(e,ze))))&&(je(t),!Lt(X))){const e=kt();xs(),Cs(e)}})),Ss=e=>Tt((()=>{if(t=(e=>de(e,ze))(e)){const s=ls();Ns(),qs(),t=!0,We(e),vs(s)}})),xs=()=>Tt((()=>Ge({}))),Vs=e=>Tt((e=>Nt(X,e)?at(e):0),e),Rs=(e,t)=>Tt(((e,t)=>M(Jt(X,e),(s=>Nt(s,t)?nt(e,s,t):0))),e,t),qs=()=>Tt((()=>et({}))),Ms=()=>Tt((()=>{je({}),e=!1})),Ns=()=>Tt((()=>{We({}),t=!1})),Ls=(e,t)=>{if(-1!=n){Es();const s=e();return zs(t),s}},Es=()=>(-1!=n&&n++,1==n&&Ne(Re,void 0),$s),zs=e=>(n>0&&(n--,0==n&&(n=1,ft(1),Lt(R)||Ct(1),yt(1),Lt(z)||vt(1),e?.($s)&&($t(R,((e,t)=>$t(e,((e,s)=>$t(e,(([e],l)=>Fe($s,t,s,l,e))))))),zt(R),$t(z,(([e],t)=>Je($s,t,e))),zt(z)),Ne(qe[0],void 0),n=-1,ft(0),Lt(R)||Ct(0),yt(0),Lt(z)||vt(0),o[0]?.($s),Ne(qe[1],void 0),o[1]?.($s),n=0,s=bs(),l=ys(),W([i,h,k,S,V,R,O,L,z,F],zt))),$s),$s={getContent:()=>[kt(),ls()],getTables:kt,getTableIds:St,getTable:e=>jt(Jt(X,x(e))),getTableCellIds:xt,getRowCount:Et,getRowIds:Yt,getSortedRowIds:Zt,getRow:(e,t)=>Qt(Jt(Jt(X,x(e)),x(t))),getCellIds:_t,getCell:es,getValues:ls,getValueIds:hs,getValue:ms,hasTables:bs,hasTable:gs,hasTableCell:ps,hasRow:Is,hasCell:fs,hasValues:ys,hasValue:ws,getTablesJson:()=>ue(X),getValuesJson:()=>ue(Y),getJson:()=>ue([X,Y]),getTablesSchemaJson:()=>ue(J),getValuesSchemaJson:()=>ue(H),getSchemaJson:()=>ue([J,H]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Tt((()=>{(ie(e)?xs:Cs)(e),(ie(t)?qs:vs)(t)})),setTables:Cs,setTable:(e,t)=>Tt((e=>$e(t,e)?Ke(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Ae(e,t,s)?Xe(e,lt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ls((()=>{let l;return Ae(e,l,t)&&(e=x(e),Xe(e,lt(e),l=st(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Ae(e,t,s,1)){const l=lt(e);re(s,((s,a)=>Ze(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>M(Pe(e,t,s,E(l)?l(es(e,t,s)):l),(l=>Ze(e,lt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Tt((()=>He(e,1)?re(e,((e,t)=>tt(t,e))):0)),setValue:(e,t)=>Tt((e=>M(Be(e,E(t)?t(ms(e)):t),(t=>tt(e,t)))),e),applyChanges:e=>Tt((()=>{re(e[0],((e,t)=>q(e)?Vs(t):re(e,((e,s)=>q(e)?Rs(t,s):re(e,((e,l)=>Fe($s,t,s,l,e))))))),re(e[1],((e,t)=>Je($s,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{_e(ce(e))}catch{}return $s},setJson:e=>Tt((()=>{try{const[t,s]=ce(e);Ue(t),_e(s)}catch{Ts(e)}})),setTablesSchema:ks,setValuesSchema:Ss,setSchema:(e,t)=>Tt((()=>{ks(e),Ss(t)})),delTables:xs,delTable:Vs,delRow:Rs,delCell:(e,t,s,l)=>Tt(((e,t,s)=>M(Jt(X,e),(a=>M(Jt(a,t),(n=>Nt(n,s)?ot(e,a,t,n,s,l):0))))),e,t,s),delValues:qs,delValue:e=>Tt((e=>Nt(Y,e)?rt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ns,delSchema:()=>Tt((()=>{Ms(),Ns()})),transaction:Ls,startTransaction:Es,getTransactionChanges:()=>[Qt(R,((e,t)=>-1===Jt(i,t)?void 0:Qt(e,((e,s)=>-1===Jt(Jt(S,t),s)?void 0:Qt(e,(([,e])=>e),(e=>ds(e)))),Lt,ie)),Lt,ie),Qt(z,(([,e])=>e),(e=>ds(e))),1],getTransactionLog:()=>[!Lt(R),!Lt(z),Wt(R,is,ds),Wt(O),Qt(z,is,ds),Qt(F),Qt(i),jt(S),Wt(V),Qt(L)],finishTransaction:zs,forEachTable:e=>$t(X,((t,s)=>e(s,(e=>$t(t,((t,s)=>e(s,(e=>Pt(t,e))))))))),forEachTableCell:(e,t)=>Pt(Jt(G,x(e)),t),forEachRow:(e,t)=>$t(Jt(X,x(e)),((e,s)=>t(s,(t=>Pt(e,t))))),forEachCell:(e,t,s)=>Pt(Jt(Jt(X,x(e)),x(t)),s),forEachValue:e=>Pt(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=Zt(e,t,s,l,a);return Me((()=>{const o=Zt(e,t,s,l,a);var i,d,u;d=r,A(i=o)===A(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n($s,e,t,s,l,a,r))}),ge[o?1:0],[e,t],[St])},addStartTransactionListener:e=>Me(e,Re),addWillFinishTransactionListener:e=>Me(e,qe[0]),addDidFinishTransactionListener:e=>Me(e,qe[1]),callListener:e=>(Ee(e),$s),delListener:e=>(Le(e),$s),getListenerStats:()=>({hasTables:os(Z),tables:os(_),tableIds:os(ee),hasTable:os(te),table:os(se),tableCellIds:os(ae),hasTableCell:os(he,qt),rowCount:os(me),rowIds:os(be),sortedRowIds:os(ge),hasRow:os(pe,qt),row:os(Ie,qt),cellIds:os(fe,qt),hasCell:os(ye,Mt),cell:os(we,Mt),invalidCell:os(Ce,Mt),hasValues:os(Te),values:os(ke),valueIds:os(Se),hasValue:os(xe),value:os(Ve),invalidValue:os(ve),transaction:Rt(Re)+os(qe)}),createStore:cs,addListener:Me,callListeners:Ne,setInternalListeners:(e,t)=>o=[e,t]};return re({[c+b]:[0,Z,[],()=>[bs()]],[b]:[0,_],[g]:[0,ee],[c+m]:[1,te,[St],e=>[gs(...e)]],[m]:[1,se,[St]],[m+w]:[1,ae,[St]],[c+m+y]:[2,he,[St,xt],e=>[ps(...e)]],[I]:[1,me,[St]],[f]:[1,be,[St]],[c+p]:[2,pe,[St,Yt],e=>[Is(...e)]],[p]:[2,Ie,[St,Yt]],[w]:[2,fe,[St,Yt]],[c+y]:[3,ye,[St,Yt,_t],e=>[fs(...e)]],[y]:[3,we,[St,Yt,_t],e=>ns(es(...e))],InvalidCell:[3,Ce],[c+v]:[0,Te,[],()=>[ys()]],[v]:[0,ke],[T]:[0,Se],[c+C]:[1,xe,[hs],e=>[ws(...e)]],[C]:[1,Ve,[hs],e=>ns(ms(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{$s["add"+a+"Listener"]=(...a)=>Me(a[e],t[a[e+1]?1:0],e>0?$(a,0,e):void 0,s,l)})),le($s)},hs=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(cs),a=be.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,o,r={},i=[])=>{let d,u,c,h=0,m=0,b=0;Bt(Yt,i,(()=>0)),Bt(Zt,i,(()=>[]));const[g,p,I,f]=((e,t)=>!e||q(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ie(e)||!ie(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ie(e)||!ie(t)])(o,e),y=async e=>(2!=h&&(h=1,m++,await C.schedule((async()=>{await e(),h=0}))),C),w=t=>{(g&&L(t?.[0])?1===t?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},C={load:async(s,l)=>await y((async()=>{try{w(await t())}catch(t){n?.(t),e.setContent([s,l])}})),startAutoLoad:async(e={},s={})=>(await C.stopAutoLoad().load(e,s),u=l((async(e,s)=>{const l=s?.();await y((async()=>{try{w(l??e?.()??await t())}catch(e){n?.(e)}}))})),C),stopAutoLoad:()=>(u&&(a(u),u=void 0),C),isAutoLoading:()=>!q(u),save:async e=>(1!=h&&(h=2,b++,await C.schedule((async()=>{try{await s(p,e)}catch(e){n?.(e)}h=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),c=e.addDidFinishTransactionListener((()=>{const e=I();f(e)&&C.save((()=>e))})),C),stopAutoSave:()=>(M(c,e.delListener),c=void 0,C),isAutoSaving:()=>!q(c),schedule:async(...e)=>(K(Jt(Zt,i),...e),await(async()=>{if(!Jt(Yt,i)){for(Ht(Yt,i,1);!q(d=X(Jt(Zt,i)));)try{await d()}catch(e){n?.(e)}Ht(Yt,i,0)}})(),C),getStore:()=>e,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b}),...r};return le(C)})(e,(async()=>ce(s.getItem(t))),(async e=>s.setItem(t,ue(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ce(l.newValue)))};return es.addEventListener(_t,l),l}),(e=>es.removeEventListener(_t,e)),l,!0,{getStorageName:()=>t}))(e,he,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),J(F,null,J("aside",{id:he},J($e,{s:l}),J(St,{s:l})),J("style",null,ze))};e.EditableCellView=rt,e.EditableValueView=it,e.RelationshipInHtmlTable=nt,e.ResultSortedTableInHtmlTable=ot,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>J(Ze,{...a,params:Ue(Ye(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ke(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=at,e.SortedTableInHtmlTable=st,e.SortedTablePaginator=dt,e.StoreInspector=e=>J(hs,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>J(Ze,{...n,params:Ue(Ye(s.useTableCellIds(e,t),a,l?rt:s.CellView),Ge(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=lt},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),u=t(t),l="Listener",n="Result",d="Has",i="Ids",a="Table",c=a+"s",I=a+i,C="Row",p=C+"Count",b=C+i,w="Sorted"+C+i,R="Cell",k=R+i,g="Value",L=g+"s",h=g+i,y=e=>null==e,m=(e,s,t)=>y(e)?t?.():s(e),S=e=>t(e)==r,T=e=>t(e)==u,V=e=>e.length,f=()=>{},x=(e,s)=>e.every(s),P=(e,s)=>V(e)===V(s)&&x(e,((e,t)=>s[t]===e)),v=(e,s)=>e.map(s),q=Object,B=e=>q.getPrototypeOf(e),H=q.entries,M=q.keys,D=e=>!y(e)&&m(B(e),(e=>e==q.prototype||y(B(e))),(()=>!0)),F=(e,s)=>m(e,(e=>e[s])),O=(e,s)=>(delete e[s],e),Q=(e,s)=>{const t=H(e);return V(t)===V(M(s))&&x(t,(([e,t])=>D(t)?!!D(s[e])&&Q(s[e],t):s[e]===t))},{createContext:E,useContext:A,useEffect:G}=s,j=E([]),U=(e,s)=>{const t=A(j);return y(e)?t[s]:S(e)?F(t[s+1]??{},e):e},W=(e,s)=>{const t=U(e,s);return y(e)||S(e)?t:e},z=e=>M(A(j)[e]??{}),J=e=>W(e,0),K=e=>W(e,2),N=e=>W(e,4),X=e=>W(e,6),Y=e=>W(e,8),Z=e=>W(e,10),$=e=>e.toLowerCase();$(l);const _="Transaction";$(_);const{useCallback:ee,useEffect:se,useMemo:te,useLayoutEffect:oe,useRef:re,useState:ue,useSyncExternalStore:le}=s,ne=[],de=[{},[],[ne,void 0,ne],void 0,!1,0],ie=(e,s)=>e===s,ae=[Q,P,([e,s,t],[o,r,u])=>s===r&&P(e,o)&&P(t,u)],ce=(e,s,t=ne)=>{const[,o]=ue(),[r,u]=ue();return se((()=>{const t=s(e);return u(t),o([]),t.destroy}),[e,...t]),r},Ie=(e,s,...t)=>{const o=e?.["add"+s+l]?.(...t);return()=>e?.delListener(o)},Ce=(e,s,t,r=ne)=>{const u=re(de[t]),l=ee((()=>{const o=s?.[(4==t?"has":"get")+e]?.(...r)??de[t];return(ae[t]??ie)(o,u.current)?u.current:u.current=o}),[s,t,e,...r]),n=ee((u=>Ie(s,(4==t?d:o)+e,...r,u)),[s,t,e,...r]);return le(n,l)},pe=(e,s,t,o=ne,r=ne,...u)=>oe((()=>Ie(s,e,...r,t,...u)),[s,e,...r,...o,...u]),be=(e,s,t,o=ne,r=f,u=ne,...l)=>{const n=J(e);return ee((e=>m(n,(o=>m(t(e,o),(t=>r(o["set"+s](...v(l,(s=>T(s)?s(e,o):s)),t),t)))))),[n,s,...o,...u,...l])},we=(e,s,t=f,o=ne,...r)=>{const u=J(e);return ee((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},Re=(e,s,t)=>{const o=Z(e);return ee((()=>o?.[s](t)),[o,s,t])},ke=e=>Ce(I,J(e),1),ge=(e,s)=>Ce(b,J(s),1,[e]),Le=(e,s,t,o=0,r,u)=>Ce(w,J(u),1,[e,s,t,o,r]),he=(e,s,t)=>Ce(k,J(t),1,[e,s]),ye=(e,s,t,o)=>Ce(R,J(o),3,[e,s,t]),me=e=>Ce(h,J(e),1),Se=(e,s)=>Ce(g,J(s),3,[e]),Te=(e,s)=>Ce("Metric",K(s),3,[e]),Ve=(e,s)=>Ce("SliceIds",N(s),1,[e]),fe=(e,s,t)=>Ce("Slice"+b,N(t),1,[e,s]),xe=(e,s,t)=>Ce("RemoteRowId",X(t),3,[e,s]),Pe=(e,s,t)=>Ce("Local"+b,X(t),1,[e,s]),ve=(e,s,t)=>Ce("Linked"+b,X(t),1,[e,s]),qe=(e,s)=>Ce(n+b,Y(s),1,[e]),Be=(e,s,t,o=0,r,u)=>Ce(n+w,Y(u),1,[e,s,t,o,r]),He=(e,s,t)=>Ce(n+k,Y(t),1,[e,s]),Me=(e,s,t,o)=>Ce(n+R,Y(o),3,[e,s,t]),De=e=>Ce("CheckpointIds",Z(e),2),Fe=(e,s)=>Ce("Checkpoint",Z(s),3,[e]),Oe=e=>Re(e,"goBackward"),Qe=e=>Re(e,"goForward"),{PureComponent:Ee,Fragment:Ae,createElement:Ge,useCallback:je,useLayoutEffect:Ue,useRef:We,useState:ze}=s,Je=(e,...s)=>y(e)?{}:e(...s),Ke=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useCallback:Ne,useContext:Xe,useMemo:Ye,useState:Ze}=s,$e=({tableId:e,store:s,rowComponent:t=rs,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},n)=>ts(v(n,(u=>Ge(t,{...Je(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),_e=({queryId:e,queries:s,resultRowComponent:t=is,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>ts(v(l,(r=>Ge(t,{...Je(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),es=({relationshipId:e,relationships:s,rowComponent:t=rs,getRowComponentProps:o,separator:r,debugIds:u},l,n)=>{const[d,i,a]=Ke(X(s),e),c=l(e,n,d);return ts(v(c,(e=>Ge(t,{...Je(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:u}))),r,u,n)},ss=e=>({checkpoints:s,checkpointComponent:t=as,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=Z(s);return ts(v(e(De(l)),(e=>Ge(t,{...Je(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},ts=(e,s,t,o)=>{const r=y(s)||!Array.isArray(e)?e:v(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},os=({tableId:e,rowId:s,cellId:t,store:r,debugIds:u})=>ts(o+(ye(e,s,t,r)??o),void 0,u,t),rs=({tableId:e,rowId:s,store:t,cellComponent:o=os,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:n})=>ts(v(((e,s,t,o)=>{const r=he(s,t,o);return e??r})(u,e,s,t),(u=>Ge(o,{...Je(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:n}))),l,n,s),us=e=>$e(e,ge(e.tableId,e.store)),ls=({valueId:e,store:s,debugIds:t})=>ts(o+(Se(e,s)??o),void 0,t,e),ns=({indexId:e,sliceId:s,indexes:t,rowComponent:o=rs,getRowComponentProps:r,separator:u,debugIds:l})=>{const[n,d,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(N(t),e),a=fe(e,s,n);return ts(v(a,(e=>Ge(o,{...Je(r,e),key:e,tableId:i,rowId:e,store:d,debugIds:l}))),u,l,s)},ds=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:u})=>ts(o+(Me(e,s,t,r)??o),void 0,u,t),is=({queryId:e,rowId:s,queries:t,resultCellComponent:o=ds,getResultCellComponentProps:r,separator:u,debugIds:l})=>ts(v(He(e,s,t),(u=>Ge(o,{...Je(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),as=({checkpoints:e,checkpointId:s,debugIds:t})=>ts(Fe(s,e)??o,void 0,t,s),cs=ss((e=>e[0])),Is=ss((e=>y(e[1])?[]:[e[1]])),Cs=ss((e=>e[2]));e.BackwardCheckpointsView=cs,e.CellView=os,e.CheckpointView=as,e.CurrentCheckpointView=Is,e.ForwardCheckpointsView=Cs,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ns,getSliceComponentProps:o,separator:r,debugIds:u})=>ts(v(Ve(e,s),(r=>Ge(t,{...Je(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),e.LinkedRowsView=e=>es(e,ve,e.firstRowId),e.LocalRowsView=e=>es(e,Pe,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ts(Te(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:s,metrics:t,metricsById:o,indexes:r,indexesById:u,relationships:l,relationshipsById:n,queries:d,queriesById:i,checkpoints:a,checkpointsById:c,children:I})=>{const C=Xe(j),[p,b]=Ze({}),w=Ne(((e,s)=>b((t=>F(t,e)==s?t:{...t,[e]:s}))),[]),R=Ne((e=>b((s=>({...O(s,e)})))),[]);return Ge(j.Provider,{value:Ye((()=>[e??C[0],{...C[1],...s,...p},t??C[2],{...C[3],...o},r??C[4],{...C[5],...u},l??C[6],{...C[7],...n},d??C[8],{...C[9],...i},a??C[10],{...C[11],...c},w,R]),[e,s,p,t,o,r,u,l,n,d,i,a,c,C,w,R])},I)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=rs,getRowComponentProps:r,debugIds:u})=>{const[l,n,,d]=Ke(X(t),e),i=xe(e,s,l);return ts(y(d)||y(i)?null:Ge(o,{...Je(r,i),key:i,tableId:d,rowId:i,store:n,debugIds:u}),void 0,u,s)},e.ResultCellView=ds,e.ResultRowView=is,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>_e(r,Be(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>_e(e,qe(e.queryId,e.queries)),e.RowView=rs,e.SliceView=ns,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>$e(r,Le(r.tableId,e,s,t,o,r.store)),e.TableView=us,e.TablesView=({store:e,tableComponent:s=us,getTableComponentProps:t,separator:o,debugIds:r})=>ts(v(ke(e),(o=>Ge(s,{...Je(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.ValueView=ls,e.ValuesView=({store:e,valueComponent:s=ls,getValueComponentProps:t,separator:o,debugIds:r})=>ts(v(me(e),(o=>Ge(s,{...Je(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),e.useAddRowCallback=(e,s,t=ne,o,r=f,u=ne,l=!0)=>{const n=J(o);return ee((t=>m(n,(o=>m(s(t,o),(s=>r(o.addRow(T(e)?e(t,o):e,s,l),o,s)))))),[n,e,...t,...u,l])},e.useCell=ye,e.useCellIds=he,e.useCellIdsListener=(e,s,t,o,r,u)=>pe(k,J(u),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,u,l)=>pe(R,J(l),o,r,[e,s,t],u),e.useCheckpoint=Fe,e.useCheckpointIds=De,e.useCheckpointIdsListener=(e,s,t)=>pe("CheckpointIds",Z(t),e,s),e.useCheckpointListener=(e,s,t,o)=>pe("Checkpoint",Z(o),s,t,[e]),e.useCheckpoints=e=>U(e,10),e.useCheckpointsIds=()=>z(11),e.useCheckpointsOrCheckpointsById=Z,e.useCreateCheckpoints=(e,s,t)=>ce(e,s,t),e.useCreateIndexes=(e,s,t)=>ce(e,s,t),e.useCreateMetrics=(e,s,t)=>ce(e,s,t),e.useCreatePersister=(e,s,t=ne,o,r=ne,u,l=ne)=>{const[,n]=ue(),[d,i]=ue();return se((()=>{const t=s(e);if(i(t),t)return o&&(async()=>{await o(t),n([])})(),()=>{t.destroy(),u?.(t)}}),[e,...t,...r,...l]),d},e.useCreateQueries=(e,s,t)=>ce(e,s,t),e.useCreateRelationships=(e,s,t)=>ce(e,s,t),e.useCreateStore=(e,s=ne)=>te(e,s),e.useDelCellCallback=(e,s,t,o,r,u,l)=>we(r,R,u,l,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>we(t,C,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>we(s,a,t,o,e),e.useDelTablesCallback=(e,s,t)=>we(e,c,s,t),e.useDelValueCallback=(e,s,t,o)=>we(s,g,t,o,e),e.useDelValuesCallback=(e,s,t)=>we(e,L,s,t),e.useDidFinishTransactionListener=(e,s,t)=>pe("DidFinish"+_,J(t),e,s),e.useGoBackwardCallback=Oe,e.useGoForwardCallback=Qe,e.useGoToCallback=(e,s=ne,t,o=f,r=ne)=>{const u=Z(t);return ee((s=>m(u,(t=>m(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},e.useHasCell=(e,s,t,o)=>Ce(R,J(o),4,[e,s,t]),e.useHasCellListener=(e,s,t,o,r,u,l)=>pe(d+R,J(l),o,r,[e,s,t],u),e.useHasRow=(e,s,t)=>Ce(C,J(t),4,[e,s]),e.useHasRowListener=(e,s,t,o,r,u)=>pe(d+C,J(u),t,o,[e,s],r),e.useHasTable=(e,s)=>Ce(a,J(s),4,[e]),e.useHasTableCell=(e,s,t)=>Ce(a+R,J(t),4,[e,s]),e.useHasTableCellListener=(e,s,t,o,r,u)=>pe(d+a+R,J(u),t,o,[e,s],r),e.useHasTableListener=(e,s,t,o,r)=>pe(d+a,J(r),s,t,[e],o),e.useHasTables=e=>Ce(c,J(e),4,[]),e.useHasTablesListener=(e,s,t,o)=>pe(d+c,J(o),e,s,[],t),e.useHasValue=(e,s)=>Ce(g,J(s),4,[e]),e.useHasValueListener=(e,s,t,o,r)=>pe(d+g,J(r),s,t,[e],o),e.useHasValues=e=>Ce(L,J(e),4,[]),e.useHasValuesListener=(e,s,t,o)=>pe(d+L,J(o),e,s,[],t),e.useIndexIds=e=>Ce("IndexIds",N(e),1),e.useIndexes=e=>U(e,4),e.useIndexesIds=()=>z(5),e.useIndexesOrIndexesById=N,e.useLinkedRowIds=ve,e.useLinkedRowIdsListener=(e,s,t,o,r)=>pe("Linked"+b,X(r),t,o,[e,s]),e.useLocalRowIds=Pe,e.useLocalRowIdsListener=(e,s,t,o,r)=>pe("Local"+b,X(r),t,o,[e,s]),e.useMetric=Te,e.useMetricIds=e=>Ce("MetricIds",K(e),1),e.useMetricListener=(e,s,t,o)=>pe("Metric",K(o),s,t,[e]),e.useMetrics=e=>U(e,2),e.useMetricsIds=()=>z(3),e.useMetricsOrMetricsById=K,e.useProvideStore=(e,s)=>{const{12:t,13:o}=A(j);G((()=>(t?.(e,s),()=>o?.(e))),[t,e,s,o])},e.useQueries=e=>U(e,8),e.useQueriesIds=()=>z(9),e.useQueriesOrQueriesById=Y,e.useQueryIds=e=>Ce("QueryIds",Y(e),1),e.useRedoInformation=e=>{const s=Z(e),[,,[t]]=De(s);return[!y(t),Qe(s),t,m(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>Ce("RelationshipIds",X(e),1),e.useRelationships=e=>U(e,6),e.useRelationshipsIds=()=>z(7),e.useRelationshipsOrRelationshipsById=X,e.useRemoteRowId=xe,e.useRemoteRowIdListener=(e,s,t,o,r)=>pe("RemoteRowId",X(r),t,o,[e,s]),e.useResultCell=Me,e.useResultCellIds=He,e.useResultCellIdsListener=(e,s,t,o,r)=>pe(n+k,Y(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,u)=>pe(n+R,Y(u),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>Ce(n+C,Y(t),0,[e,s]),e.useResultRowCount=(e,s)=>Ce(n+p,Y(s),5,[e]),e.useResultRowCountListener=(e,s,t,o)=>pe(n+p,Y(o),s,t,[e]),e.useResultRowIds=qe,e.useResultRowIdsListener=(e,s,t,o)=>pe(n+b,Y(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>pe(n+C,Y(r),t,o,[e,s]),e.useResultSortedRowIds=Be,e.useResultSortedRowIdsListener=(e,s,t,o,r,u,l,d)=>pe(n+w,Y(d),u,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>Ce(n+a,Y(s),0,[e]),e.useResultTableCellIds=(e,s)=>Ce(n+a+k,Y(s),1,[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>pe(n+a+k,Y(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>pe(n+a,Y(o),s,t,[e]),e.useRow=(e,s,t)=>Ce(C,J(t),0,[e,s]),e.useRowCount=(e,s)=>Ce(p,J(s),5,[e]),e.useRowCountListener=(e,s,t,o,r)=>pe(p,J(r),s,t,[e],o),e.useRowIds=ge,e.useRowIdsListener=(e,s,t,o,r)=>pe(b,J(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,u)=>pe(C,J(u),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,u,l,n)=>be(u,R,o,r,l,n,e,s,t),e.useSetCheckpointCallback=(e=f,s=ne,t,o=f,r=ne)=>{const u=Z(t);return ee((s=>m(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>be(r,"PartialRow",t,o,u,l,e,s),e.useSetPartialValuesCallback=(e,s,t,o,r)=>be(t,"PartialValues",e,s,o,r),e.useSetRowCallback=(e,s,t,o,r,u,l)=>be(r,C,t,o,u,l,e,s),e.useSetTableCallback=(e,s,t,o,r,u)=>be(o,a,s,t,r,u,e),e.useSetTablesCallback=(e,s,t,o,r)=>be(t,c,e,s,o,r),e.useSetValueCallback=(e,s,t,o,r,u)=>be(o,g,s,t,r,u,e),e.useSetValuesCallback=(e,s,t,o,r)=>be(t,L,e,s,o,r),e.useSliceIds=Ve,e.useSliceIdsListener=(e,s,t,o)=>pe("SliceIds",N(o),s,t,[e]),e.useSliceRowIds=fe,e.useSliceRowIdsListener=(e,s,t,o,r)=>pe("Slice"+b,N(r),t,o,[e,s]),e.useSortedRowIds=Le,e.useSortedRowIdsListener=(e,s,t,o,r,u,l,n,d)=>pe(w,J(d),u,l,[e,s,t,o,r],n),e.useStartTransactionListener=(e,s,t)=>pe("Start"+_,J(t),e,s),e.useStore=e=>U(e,0),e.useStoreIds=()=>z(1),e.useStoreOrStoreById=J,e.useTable=(e,s)=>Ce(a,J(s),0,[e]),e.useTableCellIds=(e,s)=>Ce(a+k,J(s),1,[e]),e.useTableCellIdsListener=(e,s,t,o,r)=>pe(a+k,J(r),s,t,[e],o),e.useTableIds=ke,e.useTableIdsListener=(e,s,t,o)=>pe(I,J(o),e,s,ne,t),e.useTableListener=(e,s,t,o,r)=>pe(a,J(r),s,t,[e],o),e.useTables=e=>Ce(c,J(e),0),e.useTablesListener=(e,s,t,o)=>pe(c,J(o),e,s,ne,t),e.useUndoInformation=e=>{const s=Z(e),[t,r]=De(s);return[(u=t,!(0==V(u))),Oe(s),r,m(r,(e=>s?.getCheckpoint(e)))??o];var u},e.useValue=Se,e.useValueIds=me,e.useValueIdsListener=(e,s,t,o)=>pe(h,J(o),e,s,ne,t),e.useValueListener=(e,s,t,o,r)=>pe(g,J(r),s,t,[e],o),e.useValues=e=>Ce(L,J(e),0),e.useValuesListener=(e,s,t,o)=>pe(L,J(o),e,s,ne,t),e.useWillFinishTransactionListener=(e,s,t)=>pe("WillFinish"+_,J(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),u=t(t),l="Listener",n="Result",d="Has",i="Ids",a="Table",c=a+"s",I=a+i,C="Row",p=C+"Count",b=C+i,w="Sorted"+C+i,R="Cell",k=R+i,g="Value",L=g+"s",h=g+i,y=e=>null==e,m=(e,s,t)=>y(e)?t?.():s(e),S=e=>t(e)==r,T=e=>t(e)==u,V=e=>e.length,f=()=>{},x=(e,s)=>e.every(s),P=(e,s)=>V(e)===V(s)&&x(e,((e,t)=>s[t]===e)),v=(e,s)=>e.map(s),q=Object,B=e=>q.getPrototypeOf(e),H=q.entries,M=e=>!y(e)&&m(B(e),(e=>e==q.prototype||y(B(e))),(()=>!0)),D=q.keys,F=(e,s)=>m(e,(e=>e[s])),O=(e,s)=>(delete e[s],e),Q=(e,s)=>{const t=H(e);return V(t)===V(D(s))&&x(t,(([e,t])=>M(t)?!!M(s[e])&&Q(s[e],t):s[e]===t))},{createContext:E,useContext:A,useEffect:G}=s,j=E([]),U=(e,s)=>{const t=A(j);return y(e)?t[s]:S(e)?F(t[s+1]??{},e):e},W=(e,s)=>{const t=U(e,s);return y(e)||S(e)?t:e},z=e=>D(A(j)[e]??{}),J=e=>W(e,0),K=e=>W(e,2),N=e=>W(e,4),X=e=>W(e,6),Y=e=>W(e,8),Z=e=>W(e,10),$=e=>e.toLowerCase();$(l);const _="Transaction";$(_);const{useCallback:ee,useEffect:se,useMemo:te,useLayoutEffect:oe,useRef:re,useState:ue,useSyncExternalStore:le}=s,ne=[],de=[{},[],[ne,void 0,ne],void 0,!1,0],ie=(e,s)=>e===s,ae=[Q,P,([e,s,t],[o,r,u])=>s===r&&P(e,o)&&P(t,u)],ce=(e,s,t=ne)=>{const[,o]=ue(),[r,u]=ue();return se((()=>{const t=s(e);return u(t),o([]),t.destroy}),[e,...t]),r},Ie=(e,s,...t)=>{const o=e?.["add"+s+l]?.(...t);return()=>e?.delListener(o)},Ce=(e,s,t,r=ne)=>{const u=re(de[t]),l=ee((()=>{const o=s?.[(4==t?"has":"get")+e]?.(...r)??de[t];return(ae[t]??ie)(o,u.current)?u.current:u.current=o}),[s,t,e,...r]),n=ee((u=>Ie(s,(4==t?d:o)+e,...r,u)),[s,t,e,...r]);return le(n,l)},pe=(e,s,t,o=ne,r=ne,...u)=>oe((()=>Ie(s,e,...r,t,...u)),[s,e,...r,...o,...u]),be=(e,s,t,o=ne,r=f,u=ne,...l)=>{const n=J(e);return ee((e=>m(n,(o=>m(t(e,o),(t=>r(o["set"+s](...v(l,(s=>T(s)?s(e,o):s)),t),t)))))),[n,s,...o,...u,...l])},we=(e,s,t=f,o=ne,...r)=>{const u=J(e);return ee((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},Re=(e,s,t)=>{const o=Z(e);return ee((()=>o?.[s](t)),[o,s,t])},ke=e=>Ce(I,J(e),1),ge=(e,s)=>Ce(b,J(s),1,[e]),Le=(e,s,t,o=0,r,u)=>Ce(w,J(u),1,[e,s,t,o,r]),he=(e,s,t)=>Ce(k,J(t),1,[e,s]),ye=(e,s,t,o)=>Ce(R,J(o),3,[e,s,t]),me=e=>Ce(h,J(e),1),Se=(e,s)=>Ce(g,J(s),3,[e]),Te=(e,s)=>Ce("Metric",K(s),3,[e]),Ve=(e,s)=>Ce("SliceIds",N(s),1,[e]),fe=(e,s,t)=>Ce("Slice"+b,N(t),1,[e,s]),xe=(e,s,t)=>Ce("RemoteRowId",X(t),3,[e,s]),Pe=(e,s,t)=>Ce("Local"+b,X(t),1,[e,s]),ve=(e,s,t)=>Ce("Linked"+b,X(t),1,[e,s]),qe=(e,s)=>Ce(n+b,Y(s),1,[e]),Be=(e,s,t,o=0,r,u)=>Ce(n+w,Y(u),1,[e,s,t,o,r]),He=(e,s,t)=>Ce(n+k,Y(t),1,[e,s]),Me=(e,s,t,o)=>Ce(n+R,Y(o),3,[e,s,t]),De=e=>Ce("CheckpointIds",Z(e),2),Fe=(e,s)=>Ce("Checkpoint",Z(s),3,[e]),Oe=e=>Re(e,"goBackward"),Qe=e=>Re(e,"goForward"),{PureComponent:Ee,Fragment:Ae,createElement:Ge,useCallback:je,useLayoutEffect:Ue,useRef:We,useState:ze}=s,Je=(e,...s)=>y(e)?{}:e(...s),Ke=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useCallback:Ne,useContext:Xe,useMemo:Ye,useState:Ze}=s,$e=({tableId:e,store:s,rowComponent:t=rs,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},n)=>ts(v(n,(u=>Ge(t,{...Je(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),_e=({queryId:e,queries:s,resultRowComponent:t=is,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>ts(v(l,(r=>Ge(t,{...Je(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),es=({relationshipId:e,relationships:s,rowComponent:t=rs,getRowComponentProps:o,separator:r,debugIds:u},l,n)=>{const[d,i,a]=Ke(X(s),e),c=l(e,n,d);return ts(v(c,(e=>Ge(t,{...Je(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:u}))),r,u,n)},ss=e=>({checkpoints:s,checkpointComponent:t=as,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=Z(s);return ts(v(e(De(l)),(e=>Ge(t,{...Je(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},ts=(e,s,t,o)=>{const r=y(s)||!Array.isArray(e)?e:v(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},os=({tableId:e,rowId:s,cellId:t,store:r,debugIds:u})=>ts(o+(ye(e,s,t,r)??o),void 0,u,t),rs=({tableId:e,rowId:s,store:t,cellComponent:o=os,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:n})=>ts(v(((e,s,t,o)=>{const r=he(s,t,o);return e??r})(u,e,s,t),(u=>Ge(o,{...Je(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:n}))),l,n,s),us=e=>$e(e,ge(e.tableId,e.store)),ls=({valueId:e,store:s,debugIds:t})=>ts(o+(Se(e,s)??o),void 0,t,e),ns=({indexId:e,sliceId:s,indexes:t,rowComponent:o=rs,getRowComponentProps:r,separator:u,debugIds:l})=>{const[n,d,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(N(t),e),a=fe(e,s,n);return ts(v(a,(e=>Ge(o,{...Je(r,e),key:e,tableId:i,rowId:e,store:d,debugIds:l}))),u,l,s)},ds=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:u})=>ts(o+(Me(e,s,t,r)??o),void 0,u,t),is=({queryId:e,rowId:s,queries:t,resultCellComponent:o=ds,getResultCellComponentProps:r,separator:u,debugIds:l})=>ts(v(He(e,s,t),(u=>Ge(o,{...Je(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),as=({checkpoints:e,checkpointId:s,debugIds:t})=>ts(Fe(s,e)??o,void 0,t,s),cs=ss((e=>e[0])),Is=ss((e=>y(e[1])?[]:[e[1]])),Cs=ss((e=>e[2]));e.BackwardCheckpointsView=cs,e.CellView=os,e.CheckpointView=as,e.CurrentCheckpointView=Is,e.ForwardCheckpointsView=Cs,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ns,getSliceComponentProps:o,separator:r,debugIds:u})=>ts(v(Ve(e,s),(r=>Ge(t,{...Je(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),e.LinkedRowsView=e=>es(e,ve,e.firstRowId),e.LocalRowsView=e=>es(e,Pe,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ts(Te(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:s,metrics:t,metricsById:o,indexes:r,indexesById:u,relationships:l,relationshipsById:n,queries:d,queriesById:i,checkpoints:a,checkpointsById:c,children:I})=>{const C=Xe(j),[p,b]=Ze({}),w=Ne(((e,s)=>b((t=>F(t,e)==s?t:{...t,[e]:s}))),[]),R=Ne((e=>b((s=>({...O(s,e)})))),[]);return Ge(j.Provider,{value:Ye((()=>[e??C[0],{...C[1],...s,...p},t??C[2],{...C[3],...o},r??C[4],{...C[5],...u},l??C[6],{...C[7],...n},d??C[8],{...C[9],...i},a??C[10],{...C[11],...c},w,R]),[e,s,p,t,o,r,u,l,n,d,i,a,c,C,w,R])},I)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=rs,getRowComponentProps:r,debugIds:u})=>{const[l,n,,d]=Ke(X(t),e),i=xe(e,s,l);return ts(y(d)||y(i)?null:Ge(o,{...Je(r,i),key:i,tableId:d,rowId:i,store:n,debugIds:u}),void 0,u,s)},e.ResultCellView=ds,e.ResultRowView=is,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>_e(r,Be(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>_e(e,qe(e.queryId,e.queries)),e.RowView=rs,e.SliceView=ns,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>$e(r,Le(r.tableId,e,s,t,o,r.store)),e.TableView=us,e.TablesView=({store:e,tableComponent:s=us,getTableComponentProps:t,separator:o,debugIds:r})=>ts(v(ke(e),(o=>Ge(s,{...Je(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.ValueView=ls,e.ValuesView=({store:e,valueComponent:s=ls,getValueComponentProps:t,separator:o,debugIds:r})=>ts(v(me(e),(o=>Ge(s,{...Je(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),e.useAddRowCallback=(e,s,t=ne,o,r=f,u=ne,l=!0)=>{const n=J(o);return ee((t=>m(n,(o=>m(s(t,o),(s=>r(o.addRow(T(e)?e(t,o):e,s,l),o,s)))))),[n,e,...t,...u,l])},e.useCell=ye,e.useCellIds=he,e.useCellIdsListener=(e,s,t,o,r,u)=>pe(k,J(u),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,u,l)=>pe(R,J(l),o,r,[e,s,t],u),e.useCheckpoint=Fe,e.useCheckpointIds=De,e.useCheckpointIdsListener=(e,s,t)=>pe("CheckpointIds",Z(t),e,s),e.useCheckpointListener=(e,s,t,o)=>pe("Checkpoint",Z(o),s,t,[e]),e.useCheckpoints=e=>U(e,10),e.useCheckpointsIds=()=>z(11),e.useCheckpointsOrCheckpointsById=Z,e.useCreateCheckpoints=(e,s,t)=>ce(e,s,t),e.useCreateIndexes=(e,s,t)=>ce(e,s,t),e.useCreateMetrics=(e,s,t)=>ce(e,s,t),e.useCreatePersister=(e,s,t=ne,o,r=ne,u,l=ne)=>{const[,n]=ue(),[d,i]=ue();return se((()=>{const t=s(e);if(i(t),t)return o&&(async()=>{await o(t),n([])})(),()=>{t.destroy(),u?.(t)}}),[e,...t,...r,...l]),d},e.useCreateQueries=(e,s,t)=>ce(e,s,t),e.useCreateRelationships=(e,s,t)=>ce(e,s,t),e.useCreateStore=(e,s=ne)=>te(e,s),e.useDelCellCallback=(e,s,t,o,r,u,l)=>we(r,R,u,l,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>we(t,C,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>we(s,a,t,o,e),e.useDelTablesCallback=(e,s,t)=>we(e,c,s,t),e.useDelValueCallback=(e,s,t,o)=>we(s,g,t,o,e),e.useDelValuesCallback=(e,s,t)=>we(e,L,s,t),e.useDidFinishTransactionListener=(e,s,t)=>pe("DidFinish"+_,J(t),e,s),e.useGoBackwardCallback=Oe,e.useGoForwardCallback=Qe,e.useGoToCallback=(e,s=ne,t,o=f,r=ne)=>{const u=Z(t);return ee((s=>m(u,(t=>m(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},e.useHasCell=(e,s,t,o)=>Ce(R,J(o),4,[e,s,t]),e.useHasCellListener=(e,s,t,o,r,u,l)=>pe(d+R,J(l),o,r,[e,s,t],u),e.useHasRow=(e,s,t)=>Ce(C,J(t),4,[e,s]),e.useHasRowListener=(e,s,t,o,r,u)=>pe(d+C,J(u),t,o,[e,s],r),e.useHasTable=(e,s)=>Ce(a,J(s),4,[e]),e.useHasTableCell=(e,s,t)=>Ce(a+R,J(t),4,[e,s]),e.useHasTableCellListener=(e,s,t,o,r,u)=>pe(d+a+R,J(u),t,o,[e,s],r),e.useHasTableListener=(e,s,t,o,r)=>pe(d+a,J(r),s,t,[e],o),e.useHasTables=e=>Ce(c,J(e),4,[]),e.useHasTablesListener=(e,s,t,o)=>pe(d+c,J(o),e,s,[],t),e.useHasValue=(e,s)=>Ce(g,J(s),4,[e]),e.useHasValueListener=(e,s,t,o,r)=>pe(d+g,J(r),s,t,[e],o),e.useHasValues=e=>Ce(L,J(e),4,[]),e.useHasValuesListener=(e,s,t,o)=>pe(d+L,J(o),e,s,[],t),e.useIndexIds=e=>Ce("IndexIds",N(e),1),e.useIndexes=e=>U(e,4),e.useIndexesIds=()=>z(5),e.useIndexesOrIndexesById=N,e.useLinkedRowIds=ve,e.useLinkedRowIdsListener=(e,s,t,o,r)=>pe("Linked"+b,X(r),t,o,[e,s]),e.useLocalRowIds=Pe,e.useLocalRowIdsListener=(e,s,t,o,r)=>pe("Local"+b,X(r),t,o,[e,s]),e.useMetric=Te,e.useMetricIds=e=>Ce("MetricIds",K(e),1),e.useMetricListener=(e,s,t,o)=>pe("Metric",K(o),s,t,[e]),e.useMetrics=e=>U(e,2),e.useMetricsIds=()=>z(3),e.useMetricsOrMetricsById=K,e.useProvideStore=(e,s)=>{const{12:t,13:o}=A(j);G((()=>(t?.(e,s),()=>o?.(e))),[t,e,s,o])},e.useQueries=e=>U(e,8),e.useQueriesIds=()=>z(9),e.useQueriesOrQueriesById=Y,e.useQueryIds=e=>Ce("QueryIds",Y(e),1),e.useRedoInformation=e=>{const s=Z(e),[,,[t]]=De(s);return[!y(t),Qe(s),t,m(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>Ce("RelationshipIds",X(e),1),e.useRelationships=e=>U(e,6),e.useRelationshipsIds=()=>z(7),e.useRelationshipsOrRelationshipsById=X,e.useRemoteRowId=xe,e.useRemoteRowIdListener=(e,s,t,o,r)=>pe("RemoteRowId",X(r),t,o,[e,s]),e.useResultCell=Me,e.useResultCellIds=He,e.useResultCellIdsListener=(e,s,t,o,r)=>pe(n+k,Y(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,u)=>pe(n+R,Y(u),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>Ce(n+C,Y(t),0,[e,s]),e.useResultRowCount=(e,s)=>Ce(n+p,Y(s),5,[e]),e.useResultRowCountListener=(e,s,t,o)=>pe(n+p,Y(o),s,t,[e]),e.useResultRowIds=qe,e.useResultRowIdsListener=(e,s,t,o)=>pe(n+b,Y(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>pe(n+C,Y(r),t,o,[e,s]),e.useResultSortedRowIds=Be,e.useResultSortedRowIdsListener=(e,s,t,o,r,u,l,d)=>pe(n+w,Y(d),u,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>Ce(n+a,Y(s),0,[e]),e.useResultTableCellIds=(e,s)=>Ce(n+a+k,Y(s),1,[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>pe(n+a+k,Y(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>pe(n+a,Y(o),s,t,[e]),e.useRow=(e,s,t)=>Ce(C,J(t),0,[e,s]),e.useRowCount=(e,s)=>Ce(p,J(s),5,[e]),e.useRowCountListener=(e,s,t,o,r)=>pe(p,J(r),s,t,[e],o),e.useRowIds=ge,e.useRowIdsListener=(e,s,t,o,r)=>pe(b,J(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,u)=>pe(C,J(u),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,u,l,n)=>be(u,R,o,r,l,n,e,s,t),e.useSetCheckpointCallback=(e=f,s=ne,t,o=f,r=ne)=>{const u=Z(t);return ee((s=>m(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>be(r,"PartialRow",t,o,u,l,e,s),e.useSetPartialValuesCallback=(e,s,t,o,r)=>be(t,"PartialValues",e,s,o,r),e.useSetRowCallback=(e,s,t,o,r,u,l)=>be(r,C,t,o,u,l,e,s),e.useSetTableCallback=(e,s,t,o,r,u)=>be(o,a,s,t,r,u,e),e.useSetTablesCallback=(e,s,t,o,r)=>be(t,c,e,s,o,r),e.useSetValueCallback=(e,s,t,o,r,u)=>be(o,g,s,t,r,u,e),e.useSetValuesCallback=(e,s,t,o,r)=>be(t,L,e,s,o,r),e.useSliceIds=Ve,e.useSliceIdsListener=(e,s,t,o)=>pe("SliceIds",N(o),s,t,[e]),e.useSliceRowIds=fe,e.useSliceRowIdsListener=(e,s,t,o,r)=>pe("Slice"+b,N(r),t,o,[e,s]),e.useSortedRowIds=Le,e.useSortedRowIdsListener=(e,s,t,o,r,u,l,n,d)=>pe(w,J(d),u,l,[e,s,t,o,r],n),e.useStartTransactionListener=(e,s,t)=>pe("Start"+_,J(t),e,s),e.useStore=e=>U(e,0),e.useStoreIds=()=>z(1),e.useStoreOrStoreById=J,e.useTable=(e,s)=>Ce(a,J(s),0,[e]),e.useTableCellIds=(e,s)=>Ce(a+k,J(s),1,[e]),e.useTableCellIdsListener=(e,s,t,o,r)=>pe(a+k,J(r),s,t,[e],o),e.useTableIds=ke,e.useTableIdsListener=(e,s,t,o)=>pe(I,J(o),e,s,ne,t),e.useTableListener=(e,s,t,o,r)=>pe(a,J(r),s,t,[e],o),e.useTables=e=>Ce(c,J(e),0),e.useTablesListener=(e,s,t,o)=>pe(c,J(o),e,s,ne,t),e.useUndoInformation=e=>{const s=Z(e),[t,r]=De(s);return[(u=t,!(0==V(u))),Oe(s),r,m(r,(e=>s?.getCheckpoint(e)))??o];var u},e.useValue=Se,e.useValueIds=me,e.useValueIdsListener=(e,s,t,o)=>pe(h,J(o),e,s,ne,t),e.useValueListener=(e,s,t,o,r)=>pe(g,J(r),s,t,[e],o),e.useValues=e=>Ce(L,J(e),0),e.useValuesListener=(e,s,t,o)=>pe(L,J(o),e,s,ne,t),e.useWillFinishTransactionListener=(e,s,t)=>pe("WillFinish"+_,J(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>null==e,t=(e,t,l)=>n(e)?null==l?void 0:l():t(e),l=e=>e.length,r=(e,n)=>e.includes(n),o=(e,n)=>e.forEach(n),s=e=>0==l(e),i=(e,...n)=>e.push(...n),u=e=>e.pop(),d=e=>e.shift(),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>n(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),C=(e,t,l)=>n(l)?(f(e,t),e):null==e?void 0:e.set(t,l),k=(e,n,t)=>(a(e,n)||C(e,n,t()),g(e,n)),L=(e,n,r,o,s=0)=>t((r?k:g)(e,n[s],s>l(n)-2?r:v),(t=>{if(s>l(n)-2)return(null==o?void 0:o(t))&&C(e,n[s]),t;const i=L(t,n,r,o,s+1);return h(t)&&C(e,n[s]),i})),y=e=>new Set(Array.isArray(e)||n(e)?e:[e]),w=/^\d+$/,b=((e,b)=>{const S=new WeakMap;return e=>{S.has(e)||S.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,F]=(e=>{let r;const[s,u]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?d(e):null)?l:""+n++},n=>{w.test(n)&&l(e)<1e3&&i(e,n)}]})(),c=v();return[(e,n,t,l=[],o=(()=>[]))=>{null!=r||(r=Z);const i=s(1);var u,d;return C(c,i,[e,n,t,l,o]),d=i,null==(u=L(n,null!=t?t:[""],y))||u.add(d),i},(e,n,...t)=>o(((e,n=[""])=>{const t=[],r=(e,s)=>s==l(n)?i(t,e):null===n[s]?p(e,(e=>r(e,s+1))):o([n[s],null],(n=>r(g(e,n),s+1)));return r(e,0),t})(e,n),(e=>p(e,(e=>g(c,e)[0](r,...null!=n?n:[],...t))))),e=>t(g(c,e),(([,n,t])=>(L(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),C(c,e),u(e),t))),e=>t(g(c,e),(([e,,t=[],s,i])=>{const u=(...d)=>{var c,a;const h=l(d);h==l(t)?e(r,...d,...i(d)):n(t[h])?o(null!=(a=null==(c=s[h])?void 0:c.call(s,...d))?a:[],(e=>u(...d,e))):u(...d,t[h])};u()}))]})(),I=v(),M=v(),_=[],O=[],W=(t,l)=>{V=0,e.transaction((()=>{const[r,o]=g(I,l);p(r,((l,r)=>p(l,((l,o)=>p(l,((l,s)=>((e,t,l,r,o)=>n(o)?e.delCell(t,l,r,!0):e.setCell(t,l,r,o))(e,r,o,s,l[t]))))))),p(o,((l,r)=>((e,t,l)=>n(l)?e.delValue(t):e.setValue(t,l))(e,r,l[t])))})),V=1},$=e=>{C(I,e),C(M,e),B(m,[e])},q=(e,n)=>o(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),$),D=()=>q(_,l(_)-x),G=()=>t(b,(()=>{i(_,b),D(),q(O),b=void 0,T=1})),H=()=>{b=u(_),T=1};let J,K;const N=(e="")=>(n(b)&&(b=""+S++,C(I,b,[z,E]),X(b,e),z=v(),E=v(),T=1),b),P=()=>{s(_)||(((e,...n)=>{e.unshift(...n)})(O,N()),W(0,b),b=u(_),T=1)},Q=()=>{s(O)||(i(_,b),b=d(O),W(1,b),T=1)},R=()=>{T&&(B(j),T=0)},U=e=>{const n=N(e);return R(),n},X=(e,n)=>(Y(e)&&g(M,e)!==n&&(C(M,e,n),B(m,[e])),Z),Y=e=>a(I,e),Z={setSize:e=>(x=e,D(),Z),addCheckpoint:U,setCheckpoint:X,getStore:()=>e,getCheckpointIds:()=>[[..._],b,[...O]],forEachCheckpoint:e=>{return n=e,p(M,((e,t)=>n(t,e)));var n},hasCheckpoint:Y,getCheckpoint:e=>g(M,e),goBackward:()=>(P(),R(),Z),goForward:()=>(Q(),R(),Z),goTo:e=>{const t=r(_,e)?P:r(O,e)?Q:null;for(;!n(t)&&e!=b;)t();return R(),Z},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(F(e),Z),clear:()=>(q(_),q(O),n(b)||$(b),b=void 0,S=0,U(),Z),clearForward:()=>(s(O)||(q(O),B(j)),Z),destroy:()=>{e.delListener(J),e.delListener(K)},getListenerStats:()=>({}),_registerListeners:()=>{J=e.addCellListener(null,null,null,((e,n,t,l,r,o)=>{if(V){G();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[o,void 0]));i[1]=r,i[0]===r&&h(C(s,l))&&h(C(e,t))&&h(C(z,n))&&H(),R()}})),K=e.addValueListener(null,((e,n,t,l)=>{if(V){G();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(C(E,n))&&H(),R()}}))}};return c(Z.clear())})(e));const T=S.get(e);return null==b||b(T),T}})(0,(e=>e._registerListeners()));e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>null==e,t=(e,t,l)=>n(e)?null==l?void 0:l():t(e),l=e=>e.length,r=(e,n)=>e.includes(n),o=(e,n)=>e.forEach(n),s=e=>0==l(e),i=(e,...n)=>e.push(...n),u=e=>e.pop(),d=e=>e.shift(),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>n(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),C=(e,t,l)=>n(l)?(f(e,t),e):null==e?void 0:e.set(t,l),k=(e,n,t,l)=>(a(e,n)?null==l||l(g(e,n)):C(e,n,t()),g(e,n)),L=(e,n,r,o,s=0)=>t((r?k:g)(e,n[s],s>l(n)-2?r:v),(t=>{if(s>l(n)-2)return(null==o?void 0:o(t))&&C(e,n[s]),t;const i=L(t,n,r,o,s+1);return h(t)&&C(e,n[s]),i})),y=e=>new Set(Array.isArray(e)||n(e)?e:[e]),w=/^\d+$/,b=((e,b)=>{const S=new WeakMap;return e=>{S.has(e)||S.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,F]=(e=>{let r;const[s,u]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?d(e):null)?l:""+n++},n=>{w.test(n)&&l(e)<1e3&&i(e,n)}]})(),c=v();return[(e,n,t,l=[],o=(()=>[]))=>{null!=r||(r=Z);const i=s(1);var u,d;return C(c,i,[e,n,t,l,o]),d=i,null==(u=L(n,null!=t?t:[""],y))||u.add(d),i},(e,n,...t)=>o(((e,n=[""])=>{const t=[],r=(e,s)=>s==l(n)?i(t,e):null===n[s]?p(e,(e=>r(e,s+1))):o([n[s],null],(n=>r(g(e,n),s+1)));return r(e,0),t})(e,n),(e=>p(e,(e=>g(c,e)[0](r,...null!=n?n:[],...t))))),e=>t(g(c,e),(([,n,t])=>(L(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),C(c,e),u(e),t))),e=>t(g(c,e),(([e,,t=[],s,i])=>{const u=(...d)=>{var c,a;const h=l(d);h==l(t)?e(r,...d,...i(d)):n(t[h])?o(null!=(a=null==(c=s[h])?void 0:c.call(s,...d))?a:[],(e=>u(...d,e))):u(...d,t[h])};u()}))]})(),I=v(),M=v(),_=[],O=[],W=(t,l)=>{V=0,e.transaction((()=>{const[r,o]=g(I,l);p(r,((l,r)=>p(l,((l,o)=>p(l,((l,s)=>((e,t,l,r,o)=>n(o)?e.delCell(t,l,r,!0):e.setCell(t,l,r,o))(e,r,o,s,l[t]))))))),p(o,((l,r)=>((e,t,l)=>n(l)?e.delValue(t):e.setValue(t,l))(e,r,l[t])))})),V=1},$=e=>{C(I,e),C(M,e),B(m,[e])},q=(e,n)=>o(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),$),D=()=>q(_,l(_)-x),G=()=>t(b,(()=>{i(_,b),D(),q(O),b=void 0,T=1})),H=()=>{b=u(_),T=1};let J,K;const N=(e="")=>(n(b)&&(b=""+S++,C(I,b,[z,E]),X(b,e),z=v(),E=v(),T=1),b),P=()=>{s(_)||(((e,...n)=>{e.unshift(...n)})(O,N()),W(0,b),b=u(_),T=1)},Q=()=>{s(O)||(i(_,b),b=d(O),W(1,b),T=1)},R=()=>{T&&(B(j),T=0)},U=e=>{const n=N(e);return R(),n},X=(e,n)=>(Y(e)&&g(M,e)!==n&&(C(M,e,n),B(m,[e])),Z),Y=e=>a(I,e),Z={setSize:e=>(x=e,D(),Z),addCheckpoint:U,setCheckpoint:X,getStore:()=>e,getCheckpointIds:()=>[[..._],b,[...O]],forEachCheckpoint:e=>{return n=e,p(M,((e,t)=>n(t,e)));var n},hasCheckpoint:Y,getCheckpoint:e=>g(M,e),goBackward:()=>(P(),R(),Z),goForward:()=>(Q(),R(),Z),goTo:e=>{const t=r(_,e)?P:r(O,e)?Q:null;for(;!n(t)&&e!=b;)t();return R(),Z},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(F(e),Z),clear:()=>(q(_),q(O),n(b)||$(b),b=void 0,S=0,U(),Z),clearForward:()=>(s(O)||(q(O),B(j)),Z),destroy:()=>{e.delListener(J),e.delListener(K)},getListenerStats:()=>({}),_registerListeners:()=>{J=e.addCellListener(null,null,null,((e,n,t,l,r,o)=>{if(V){G();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[o,void 0]));i[1]=r,i[0]===r&&h(C(s,l))&&h(C(e,t))&&h(C(z,n))&&H(),R()}})),K=e.addValueListener(null,((e,n,t,l)=>{if(V){G();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(C(E,n))&&H(),R()}}))}};return c(Z.clear())})(e));const T=S.get(e);return null==b||b(T),T}})(0,(e=>e._registerListeners()));e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});