tinybase 5.0.0-beta.5 → 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 (353) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -1
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  20. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-powersync.cjs +1 -0
  24. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  26. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  30. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-sync.cjs +1 -0
  32. package/lib/cjs/persisters/persister-sync.cjs.gz +0 -0
  33. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  34. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  35. package/lib/cjs/persisters.cjs +1 -1
  36. package/lib/cjs/persisters.cjs.gz +0 -0
  37. package/lib/cjs/store.cjs +1 -1
  38. package/lib/cjs/store.cjs.gz +0 -0
  39. package/lib/cjs/tinybase.cjs +1 -1
  40. package/lib/cjs/tinybase.cjs.gz +0 -0
  41. package/lib/cjs/tools.cjs +1 -1
  42. package/lib/cjs/tools.cjs.gz +0 -0
  43. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  44. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  45. package/lib/cjs/ui-react.cjs +1 -1
  46. package/lib/cjs/ui-react.cjs.gz +0 -0
  47. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  48. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
  70. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-sync.cjs +1 -0
  78. package/lib/cjs-es6/persisters/persister-sync.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters.cjs +1 -1
  82. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  83. package/lib/cjs-es6/store.cjs +1 -1
  84. package/lib/cjs-es6/store.cjs.gz +0 -0
  85. package/lib/cjs-es6/tinybase.cjs +1 -1
  86. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  87. package/lib/cjs-es6/tools.cjs +1 -1
  88. package/lib/cjs-es6/tools.cjs.gz +0 -0
  89. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  90. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  91. package/lib/cjs-es6/ui-react.cjs +1 -1
  92. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  93. package/lib/debug/mergeable-store.js +287 -130
  94. package/lib/debug/persisters/persister-automerge.js +39 -46
  95. package/lib/debug/persisters/persister-browser.js +39 -46
  96. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +64 -60
  97. package/lib/debug/persisters/persister-electric-sql.js +64 -60
  98. package/lib/debug/persisters/persister-expo-sqlite-next.js +64 -60
  99. package/lib/debug/persisters/persister-expo-sqlite.js +64 -60
  100. package/lib/debug/persisters/persister-file.js +39 -46
  101. package/lib/debug/persisters/persister-indexed-db.js +39 -46
  102. package/lib/debug/persisters/persister-libsql.js +64 -60
  103. package/lib/debug/persisters/persister-partykit-client.js +39 -46
  104. package/lib/debug/persisters/persister-powersync.js +917 -0
  105. package/lib/debug/persisters/persister-remote.js +39 -46
  106. package/lib/debug/persisters/persister-sqlite-wasm.js +64 -60
  107. package/lib/debug/persisters/persister-sqlite3.js +64 -60
  108. package/lib/debug/persisters/persister-sync.js +594 -0
  109. package/lib/debug/persisters/persister-yjs.js +41 -48
  110. package/lib/debug/persisters.js +38 -45
  111. package/lib/debug/store.js +44 -32
  112. package/lib/debug/tinybase.js +322 -173
  113. package/lib/debug/tools.js +2 -2
  114. package/lib/debug/ui-react-dom.js +81 -76
  115. package/lib/debug/ui-react.js +1 -1
  116. package/lib/es6/mergeable-store.js +1 -1
  117. package/lib/es6/mergeable-store.js.gz +0 -0
  118. package/lib/es6/persisters/persister-automerge.js +1 -1
  119. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  120. package/lib/es6/persisters/persister-browser.js +1 -1
  121. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  122. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  123. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  124. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  125. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  126. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  127. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  128. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  129. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  130. package/lib/es6/persisters/persister-file.js +1 -1
  131. package/lib/es6/persisters/persister-file.js.gz +0 -0
  132. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  133. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  134. package/lib/es6/persisters/persister-libsql.js +1 -1
  135. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  136. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  137. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  138. package/lib/es6/persisters/persister-powersync.js +1 -0
  139. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  140. package/lib/es6/persisters/persister-remote.js +1 -1
  141. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  142. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  143. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  144. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  145. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  146. package/lib/es6/persisters/persister-sync.js +1 -0
  147. package/lib/es6/persisters/persister-sync.js.gz +0 -0
  148. package/lib/es6/persisters/persister-yjs.js +1 -1
  149. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  150. package/lib/es6/persisters.js +1 -1
  151. package/lib/es6/persisters.js.gz +0 -0
  152. package/lib/es6/store.js +1 -1
  153. package/lib/es6/store.js.gz +0 -0
  154. package/lib/es6/tinybase.js +1 -1
  155. package/lib/es6/tinybase.js.gz +0 -0
  156. package/lib/es6/tools.js +1 -1
  157. package/lib/es6/tools.js.gz +0 -0
  158. package/lib/es6/ui-react-dom-debug.js +1 -1
  159. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  160. package/lib/es6/ui-react.js +1 -1
  161. package/lib/es6/ui-react.js.gz +0 -0
  162. package/lib/mergeable-store.js +1 -1
  163. package/lib/mergeable-store.js.gz +0 -0
  164. package/lib/persisters/persister-automerge.js +1 -1
  165. package/lib/persisters/persister-automerge.js.gz +0 -0
  166. package/lib/persisters/persister-browser.js +1 -1
  167. package/lib/persisters/persister-browser.js.gz +0 -0
  168. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  169. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  170. package/lib/persisters/persister-electric-sql.js +1 -1
  171. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  172. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  173. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  174. package/lib/persisters/persister-expo-sqlite.js +1 -1
  175. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  176. package/lib/persisters/persister-file.js +1 -1
  177. package/lib/persisters/persister-file.js.gz +0 -0
  178. package/lib/persisters/persister-indexed-db.js +1 -1
  179. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  180. package/lib/persisters/persister-libsql.js +1 -1
  181. package/lib/persisters/persister-libsql.js.gz +0 -0
  182. package/lib/persisters/persister-partykit-client.js +1 -1
  183. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  184. package/lib/persisters/persister-powersync.js +1 -0
  185. package/lib/persisters/persister-powersync.js.gz +0 -0
  186. package/lib/persisters/persister-remote.js +1 -1
  187. package/lib/persisters/persister-remote.js.gz +0 -0
  188. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  189. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  190. package/lib/persisters/persister-sqlite3.js +1 -1
  191. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  192. package/lib/persisters/persister-sync.js +1 -0
  193. package/lib/persisters/persister-sync.js.gz +0 -0
  194. package/lib/persisters/persister-yjs.js +1 -1
  195. package/lib/persisters/persister-yjs.js.gz +0 -0
  196. package/lib/persisters.js +1 -1
  197. package/lib/persisters.js.gz +0 -0
  198. package/lib/store.js +1 -1
  199. package/lib/store.js.gz +0 -0
  200. package/lib/tinybase.js +1 -1
  201. package/lib/tinybase.js.gz +0 -0
  202. package/lib/tools.js +1 -1
  203. package/lib/tools.js.gz +0 -0
  204. package/lib/types/checkpoints.d.ts +2 -2
  205. package/lib/types/indexes.d.ts +2 -2
  206. package/lib/types/mergeable-store.d.ts +121 -59
  207. package/lib/types/metrics.d.ts +2 -2
  208. package/lib/types/persisters/persister-automerge.d.ts +3 -0
  209. package/lib/types/persisters/persister-browser.d.ts +9 -2
  210. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
  211. package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
  212. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
  213. package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
  214. package/lib/types/persisters/persister-file.d.ts +5 -1
  215. package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
  216. package/lib/types/persisters/persister-libsql.d.ts +3 -0
  217. package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
  218. package/lib/types/persisters/persister-powersync.d.ts +157 -0
  219. package/lib/types/persisters/persister-remote.d.ts +3 -0
  220. package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
  221. package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
  222. package/lib/types/persisters/persister-sync.d.ts +182 -0
  223. package/lib/types/persisters/persister-yjs.d.ts +5 -2
  224. package/lib/types/persisters.d.ts +60 -3
  225. package/lib/types/queries.d.ts +2 -2
  226. package/lib/types/relationships.d.ts +2 -2
  227. package/lib/types/store.d.ts +36 -3
  228. package/lib/types/tinybase.d.ts +9 -9
  229. package/lib/types/tools.d.ts +2 -2
  230. package/lib/types/ui-react.d.ts +8 -8
  231. package/lib/types/with-schemas/checkpoints.d.ts +2 -2
  232. package/lib/types/with-schemas/indexes.d.ts +2 -2
  233. package/lib/types/with-schemas/mergeable-store.d.ts +185 -87
  234. package/lib/types/with-schemas/metrics.d.ts +2 -2
  235. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
  236. package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
  237. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
  238. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
  239. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
  240. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
  241. package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
  242. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
  243. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +4 -1
  244. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
  245. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
  246. package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
  247. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
  248. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
  249. package/lib/types/with-schemas/persisters/persister-sync.d.ts +195 -0
  250. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
  251. package/lib/types/with-schemas/persisters.d.ts +79 -7
  252. package/lib/types/with-schemas/queries.d.ts +3 -3
  253. package/lib/types/with-schemas/relationships.d.ts +2 -2
  254. package/lib/types/with-schemas/store.d.ts +100 -3
  255. package/lib/types/with-schemas/tinybase.d.ts +9 -9
  256. package/lib/types/with-schemas/tools.d.ts +2 -2
  257. package/lib/types/with-schemas/ui-react.d.ts +8 -8
  258. package/lib/ui-react.js +1 -1
  259. package/lib/ui-react.js.gz +0 -0
  260. package/lib/umd/mergeable-store.js +1 -1
  261. package/lib/umd/mergeable-store.js.gz +0 -0
  262. package/lib/umd/persisters/persister-automerge.js +1 -1
  263. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  264. package/lib/umd/persisters/persister-browser.js +1 -1
  265. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  266. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  267. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  268. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  269. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  270. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  271. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  272. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  273. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  274. package/lib/umd/persisters/persister-file.js +1 -1
  275. package/lib/umd/persisters/persister-file.js.gz +0 -0
  276. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  277. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  278. package/lib/umd/persisters/persister-libsql.js +1 -1
  279. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  280. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  281. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  282. package/lib/umd/persisters/persister-powersync.js +1 -0
  283. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  284. package/lib/umd/persisters/persister-remote.js +1 -1
  285. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  286. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  287. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  288. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  289. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  290. package/lib/umd/persisters/persister-sync.js +1 -0
  291. package/lib/umd/persisters/persister-sync.js.gz +0 -0
  292. package/lib/umd/persisters/persister-yjs.js +1 -1
  293. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  294. package/lib/umd/persisters.js +1 -1
  295. package/lib/umd/persisters.js.gz +0 -0
  296. package/lib/umd/store.js +1 -1
  297. package/lib/umd/store.js.gz +0 -0
  298. package/lib/umd/tinybase.js +1 -1
  299. package/lib/umd/tinybase.js.gz +0 -0
  300. package/lib/umd/tools.js +1 -1
  301. package/lib/umd/tools.js.gz +0 -0
  302. package/lib/umd/ui-react-dom-debug.js +1 -1
  303. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  304. package/lib/umd/ui-react.js +1 -1
  305. package/lib/umd/ui-react.js.gz +0 -0
  306. package/lib/umd-es6/mergeable-store.js +1 -1
  307. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  308. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  309. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  310. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  311. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  312. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  313. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  314. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  315. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  316. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  317. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  318. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  319. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  320. package/lib/umd-es6/persisters/persister-file.js +1 -1
  321. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  322. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  323. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  324. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  325. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  326. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  327. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  328. package/lib/umd-es6/persisters/persister-powersync.js +1 -0
  329. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  330. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  331. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  332. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  333. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  334. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  335. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  336. package/lib/umd-es6/persisters/persister-sync.js +1 -0
  337. package/lib/umd-es6/persisters/persister-sync.js.gz +0 -0
  338. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  339. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  340. package/lib/umd-es6/persisters.js +1 -1
  341. package/lib/umd-es6/persisters.js.gz +0 -0
  342. package/lib/umd-es6/store.js +1 -1
  343. package/lib/umd-es6/store.js.gz +0 -0
  344. package/lib/umd-es6/tinybase.js +1 -1
  345. package/lib/umd-es6/tinybase.js.gz +0 -0
  346. package/lib/umd-es6/tools.js +1 -1
  347. package/lib/umd-es6/tools.js.gz +0 -0
  348. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  349. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  350. package/lib/umd-es6/ui-react.js +1 -1
  351. package/lib/umd-es6/ui-react.js.gz +0 -0
  352. package/package.json +37 -26
  353. package/readme.md +2 -2
@@ -0,0 +1 @@
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,a="",s=t(a),n="utf8",o=Promise,r=Math.max,c=e=>null==e,i=(e,t,a)=>c(e)?a?.():t(e),l=(e,t,a)=>e.slice(t,a),g=e=>new o(e),d=Object,y=e=>d.getPrototypeOf(e),u=d.keys,f=d.freeze,h=(e=[])=>d.fromEntries(e),p=e=>(e=>!c(e)&&i(y(e),(e=>e==d.prototype||c(y(e))),(()=>!0)))(e)&&0==(e=>u(e).length)(e),v=(e,t)=>e?.delete(t),w=e=>new Map(e),S=(e,t)=>e?.get(t),b=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),C=(e,t,a)=>c(a)?(v(e,t),e):e?.set(t,a),M=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(S(e,t)):C(e,t,a()),S(e,t)},A=w(),m=w(),T=new globalThis.TextEncoder,L=2**36,x=2**30,H=2**24,O=2**18,E=4096,P=64,R=e=>String.fromCharCode(48+(63&e)),k=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,D=w();h(),h();const N=JSON.parse,I="\n";e.createLocalClient=()=>{const e=""+Math.random();return{send:(t,a,s,n)=>{c(t)?b(D,((t,o)=>t!=e?o(e,a,s,n):0)):S(D,t)?.(e,a,s,n)},onReceive:t=>{C(D,e,t)},destroy:()=>{v(D,e)},getStats:()=>({})}},e.createSyncPersister=(e,n,o=1,l)=>{let d;const{send:y,onReceive:u,destroy:h}=n,[b]=(e=>{let t=0,a=-1;const s=(e=>{let t=2166136261;var a;return a=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},T.encode(e).forEach(a),t>>>0})(e),n=e=>{const s=t,[n,o]=c(e)||""==e?[0,0]:[k(i=e,0)*L+k(i,1)*x+k(i,2)*H+k(i,3)*O+k(i,4)*E+k(i,5)*P+k(i,6),k(i,7)*O+k(i,8)*E+k(i,9)*P+k(i,10),k(i,11)*H+k(i,12)*O+k(i,13)*E+k(i,14)*P+k(i,15)];var i;t=r(s,n,Date.now()),a=t==s?t==n?r(a,o):a:t==n?o:-1};return[()=>{return n(),o=++a,r=s,R((e=t)/L)+R(e/x)+R(e/H)+R(e/O)+R(e/E)+R(e/P)+R(e)+R(o/O)+R(o/E)+R(o/P)+R(o)+R(r/H)+R(r/O)+R(r/E)+R(r/P)+R(r);var e,o,r},n]})(e.getId()),D=w();u(((t,a,s,n)=>{if(0==s)i(S(D,a),(([e,a])=>c(e)||e==t?a(n,t):0));else if(1==s&&W.isAutoLoading())I(t,n).then((e=>d?.(void 0,(()=>e))));else{const o=2==s&&W.isAutoSaving()?e.getMergeableContentHashes():3==s?e.getMergeableTableIdsDiff(n):4==s?e.getMergeableRowIdsDiff(n):5==s?e.getMergeableTablesChanges(n):6==s?e.getMergeableValuesChanges(n):0;0!==o&&y(t,a,0,o)}}));const N=async(e,t,a="")=>g(((s,n)=>{const r=b(),c=setTimeout((()=>{v(D,r),n(`No response from ${e??"anyone"} to '${t}'`)}),1e3*o);C(D,r,[e,(e,t)=>{clearTimeout(c),v(D,r),s([e,t])}]),y(e,r,t,a)})),I=async(t=null,s)=>{c(s)&&([s,t]=await N(t,2));const[n,[o,r]]=s,[,[i,l]]=e.getMergeableContentHashes(),g=[a,[[a,{}],[a,{}],1]];return i!=o&&(g[0]=n,g[1][0]=(await N(t,5,e.getMergeableCellHashes((await N(t,4,e.getMergeableRowHashes((await N(t,3,e.getMergeableTableHashes()))[0])))[0])))[0]),l!=r&&(g[0]=n,g[1][1]=(await N(t,6,e.getMergeableValuesHashes()))[0]),g},W=((e,a,n,o,r,l,g,d={},y=[])=>{let u,h,v,w=0;M(A,y,(()=>0)),M(m,y,(()=>[]));const[b,T,L,x]=((e,t)=>!e||c(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!p(e)||!p(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!p(e)||!p(t)])(g,e),H=async e=>(2!=w&&(w=1,await E.schedule((async()=>{await e(),w=0}))),E),O=a=>{var n;(b&&(n=a?.[0],t(n)==s)?1===a?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===a?.[2]?e.applyChanges:e.setContent)(a)},E={load:async(t,s)=>await H((async()=>{try{O(await a())}catch(a){l?.(a),e.setContent([t,s])}})),startAutoLoad:async(e={},t={})=>(await E.stopAutoLoad().load(e,t),h=o((async(e,t)=>{const s=t?.();await H((async()=>{try{O(s??e?.()??await a())}catch(e){l?.(e)}}))})),E),stopAutoLoad:()=>(h&&(r(h),h=void 0),E),isAutoLoading:()=>!c(h),save:async e=>(1!=w&&(w=2,await E.schedule((async()=>{try{await n(T,e)}catch(e){l?.(e)}w=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),v=e.addDidFinishTransactionListener((()=>{const e=L();x(e)&&E.save((()=>e))})),E),stopAutoSave:()=>(i(v,e.delListener),v=void 0,E),isAutoSaving:()=>!c(v),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(S(m,y),...e),await(async()=>{if(!S(A,y)){for(C(A,y,1);!c((e=S(m,y),u=e.shift()));)try{await u()}catch(e){l?.(e)}C(A,y,0)}var e})(),E),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...d};return f(E)})(e,(async()=>{const e=await I();return e[0]!=a?e:void 0}),(async()=>{y(null,null,1,e.getMergeableContentHashes())}),(e=>d=e),(()=>d=void 0),l,!0,{getClient:()=>n,startSync:async()=>await(await W.startAutoLoad()).startAutoSave(),stopSync:()=>W.stopAutoLoad().stopAutoSave(),destroy:()=>(h(),W.stopSync())});return W},e.createWsClient=async e=>{let t;e.on("message",(e=>{if(!c(t)){const a=e.toString(n),s=a.indexOf(I);-1!==s&&t(l(a,0,s),...N(l(a,s+1)))}}));const s={send:(t,...s)=>{e.send((t??a)+I+JSON.stringify(s,((e,t)=>t instanceof Map?d.fromEntries([...t]):t)))},onReceive:e=>{t=e},destroy:()=>{e.close()},getStats:()=>({})};return g(((t,a)=>{e.readyState!=e.OPEN?(e.on("error",a),e.on("open",(()=>t(s)))):t(s)}))},e.createWsSimpleServer=e=>{const t=w();return e.on("connection",((e,s)=>{const o=s.headers["sec-websocket-key"];C(t,o,e),e.on("message",(e=>{const s=e.toString(n),r=s.indexOf(I);if(-1!==r){const e=l(s,0,r),n=l(s,r+1);e===a?b(t,((e,t)=>e!=o?t.send(o+I+n):0)):S(t,e)?.send(o+I+n)}})),e.on("close",(()=>v(t,o)))})),{getWebSocketServer:()=>e,destroy:()=>{e.close(),t.clear()}}}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSync={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t){"use strict";const a=e=>typeof e,s=a(""),n="t",o="v",r=e=>null==e,c=(e,t,a)=>r(e)?a?.():t(e),i=e=>e.length,l=e=>e.shift(),g=Object,d=e=>g.getPrototypeOf(e),y=g.entries,u=g.keys,p=g.freeze,f=(e=[])=>g.fromEntries(e),h=(e,t)=>t in e,v=(e,t)=>((e,t)=>e.map(t))(y(e),(([e,a])=>t(a,e))),w=e=>(e=>!r(e)&&c(d(e),(e=>e==g.prototype||r(d(e))),(()=>!0)))(e)&&0==(e=>i(u(e)))(e),b=(e,t,a)=>(h(e,t)||(e[t]=a()),e[t]),C=e=>new Map(e),S=(e,t)=>e?.get(t),M=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),A=(e,t,a)=>{return r(a)?(s=e,n=t,s?.delete(n),e):e?.set(t,a);var s,n},O=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(S(e,t)):A(e,t,a()),S(e,t)},j=C(),J=C(),L=e=>{return t=e?.[0],a(t)==s;var t},N="delete",T=e=>[e.get(n),e.get(o)],m=(e,a,s,n)=>{const o=r(a)?e:e.get(a)??e.set(a,new t.Map);let c;return v(s,((e,t)=>{n(o,t,e)&&(c=1)})),o.forEach(((e,t)=>{h(s,t)||(o.delete(t),c=1)})),r(a)||o.size||e.delete(a),c};e.createYjsPersister=(e,a,s="tinybase",g)=>{const d=a.getMap(s);return((e,t,a,s,n,o,i,[g,d]=[],y=[])=>{let u,f,h,v=0,b=0;O(j,y,(()=>0)),O(J,y,(()=>[]));const[C,M,N,T]=((e,t)=>!e||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!w(e)||!w(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!w(e)||!w(t)])(i,e),m=async e=>(2!=v&&(v=1,await z.schedule((async()=>{await e(),v=0}))),z),z={load:async(a,s)=>await m((async()=>{try{const a=await t();(C&&L(a)?e.setMergeableContent:e.setContent)(a)}catch{e.setContent([a,s])}})),startAutoLoad:async(a={},n={})=>(z.stopAutoLoad(),await z.load(a,n),b=1,h=s((async(a,s)=>{if(s){const t=s();await m((async()=>(C&&L(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await m((async()=>{try{const s=a?.()??await t();(C&&L(s)?e.setMergeableContent:e.setContent)(s)}catch(e){o?.(e)}}))})),z),stopAutoLoad:()=>(b&&(n(h),h=void 0,b=0),z),save:async e=>(1!=v&&(v=2,await z.schedule((async()=>{try{await a(M,e)}catch(e){o?.(e)}v=0}))),z),startAutoSave:async()=>(await z.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=N();T(e)&&z.save((()=>e))})),z),stopAutoSave:()=>(c(u,e.delListener),u=void 0,z),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(S(J,y),...e),await(async()=>{if(!S(j,y)){for(A(j,y,1);!r(f=l(S(J,y)));)try{await f()}catch(e){o?.(e)}A(j,y,0)}})(),z),getStore:()=>e,destroy:()=>z.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return g&&(z[g]=()=>d),p(z)})(e,(async()=>d.size?[d.get(n).toJSON(),d.get(o).toJSON()]:void 0),(async(e,s)=>a.transact((()=>((e,a,s)=>{e.size||(e.set(n,new t.Map),e.set(o,new t.Map));const[i,l]=T(e),g=()=>{d=1};let d=1;if(c(s?.(),(([e,t])=>{d=0,v(e,((e,t)=>d?0:r(e)?i.delete(t):c(i.get(t),(t=>v(e,((e,a)=>d?0:r(e)?t.delete(a):c(t.get(a),(t=>v(e,((e,a)=>r(e)?t.delete(a):t.set(a,e)))),g)))),g))),v(t,((e,t)=>d?0:r(e)?l.delete(t):l.set(t,e)))})),d){const[e,t]=a();m(i,void 0,e,((e,t,a)=>m(i,t,a,((e,t,a)=>m(e,t,a,((e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1})))))),m(l,void 0,t,((e,t,a)=>{l.get(t)!==a&&l.set(t,a)}))}})(d,e,s)))),(e=>{const t=t=>e(void 0,(()=>((e,t)=>{if(1==i(t)&&(a=t[0].path,0==i(a)))return[e.get(n).toJSON(),e.get(o).toJSON()];var a;const[s,r]=T(e),g={},d={};return((e,t)=>{e.forEach((({path:e,changes:{keys:t}})=>l(e)==n?c(l(e),(a=>{const n=b(g,a,f),o=s.get(a);c(l(e),(e=>{const a=b(n,e,f),s=o.get(e);M(t,((e,{action:t})=>a[e]=t==N?null:s.get(e)))}),(()=>M(t,((e,{action:t})=>n[e]=t==N?null:o.get(e)?.toJSON()))))}),(()=>M(t,((e,{action:t})=>g[e]=t==N?null:s.get(e)?.toJSON())))):M(t,((e,{action:t})=>d[e]=t==N?null:r.get(e)))))})(t),[g,d]})(d,t)));return d.observeDeep(t),t}),(e=>{d.unobserveDeep(e)}),g,!1,["getYDoc",a])}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterYjs={},e.yjs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const a=e=>typeof e,s=a(""),n="t",o="v",r=e=>null==e,i=(e,t,a)=>r(e)?a?.():t(e),c=e=>e.length,g=e=>e.shift(),l=Object,d=e=>l.getPrototypeOf(e),u=l.entries,y=l.keys,p=l.freeze,f=(e=[])=>l.fromEntries(e),h=(e,t)=>t in e,v=(e,t)=>((e,t)=>e.map(t))(u(e),(([e,a])=>t(a,e))),w=e=>(e=>!r(e)&&i(d(e),(e=>e==l.prototype||r(d(e))),(()=>!0)))(e)&&0==(e=>c(y(e)))(e),S=(e,t,a)=>(h(e,t)||(e[t]=a()),e[t]),b=e=>new Map(e),A=(e,t)=>e?.get(t),C=(e,t)=>((e,t)=>e?.forEach(t))(e,((e,a)=>t(a,e))),M=(e,t,a)=>{return r(a)?(s=e,n=t,s?.delete(n),e):e?.set(t,a);var s,n},O=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(A(e,t)):M(e,t,a()),A(e,t)},j=b(),L=b(),J="delete",N=e=>[e.get(n),e.get(o)],T=(e,a,s,n)=>{const o=r(a)?e:e.get(a)??e.set(a,new t.Map);let i;return v(s,((e,t)=>{n(o,t,e)&&(i=1)})),o.forEach(((e,t)=>{h(s,t)||(o.delete(t),i=1)})),r(a)||o.size||e.delete(a),i};e.createYjsPersister=(e,l,d="tinybase",u)=>{const y=l.getMap(d);return((e,t,n,o,c,l,d,u={},y=[])=>{let f,h,v,S=0;O(j,y,(()=>0)),O(L,y,(()=>[]));const[b,C,J,N]=((e,t)=>!e||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!w(e)||!w(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!w(e)||!w(t)])(d,e),T=async e=>(2!=S&&(S=1,await z.schedule((async()=>{await e(),S=0}))),z),m=t=>{var n;(b&&(n=t?.[0],a(n)==s)?1===t?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},z={load:async(a,s)=>await T((async()=>{try{m(await t())}catch(t){l?.(t),e.setContent([a,s])}})),startAutoLoad:async(e={},a={})=>(await z.stopAutoLoad().load(e,a),h=o((async(e,a)=>{const s=a?.();await T((async()=>{try{m(s??e?.()??await t())}catch(e){l?.(e)}}))})),z),stopAutoLoad:()=>(h&&(c(h),h=void 0),z),isAutoLoading:()=>!r(h),save:async e=>(1!=S&&(S=2,await z.schedule((async()=>{try{await n(C,e)}catch(e){l?.(e)}S=0}))),z),startAutoSave:async()=>(await z.stopAutoSave().save(),v=e.addDidFinishTransactionListener((()=>{const e=J();N(e)&&z.save((()=>e))})),z),stopAutoSave:()=>(i(v,e.delListener),v=void 0,z),isAutoSaving:()=>!r(v),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(A(L,y),...e),await(async()=>{if(!A(j,y)){for(M(j,y,1);!r(f=g(A(L,y)));)try{await f()}catch(e){l?.(e)}M(j,y,0)}})(),z),getStore:()=>e,destroy:()=>z.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return p(z)})(e,(async()=>y.size?[y.get(n).toJSON(),y.get(o).toJSON()]:void 0),(async(e,a)=>l.transact((()=>((e,a,s)=>{e.size||(e.set(n,new t.Map),e.set(o,new t.Map));const[c,g]=N(e),l=()=>{d=1};let d=1;if(i(s?.(),(([e,t])=>{d=0,v(e,((e,t)=>d?0:r(e)?c.delete(t):i(c.get(t),(t=>v(e,((e,a)=>d?0:r(e)?t.delete(a):i(t.get(a),(t=>v(e,((e,a)=>r(e)?t.delete(a):t.set(a,e)))),l)))),l))),v(t,((e,t)=>d?0:r(e)?g.delete(t):g.set(t,e)))})),d){const[e,t]=a();T(c,void 0,e,((e,t,a)=>T(c,t,a,((e,t,a)=>T(e,t,a,((e,t,a)=>{if(e.get(t)!==a)return e.set(t,a),1})))))),T(g,void 0,t,((e,t,a)=>{g.get(t)!==a&&g.set(t,a)}))}})(y,e,a)))),(e=>{const t=t=>e(void 0,(()=>((e,t)=>{if(1==c(t)&&(a=t[0].path,0==c(a)))return[e.get(n).toJSON(),e.get(o).toJSON(),1];var a;const[s,r]=N(e),l={},d={};return((e,t)=>{e.forEach((({path:e,changes:{keys:t}})=>g(e)==n?i(g(e),(a=>{const n=S(l,a,f),o=s.get(a);i(g(e),(e=>{const a=S(n,e,f),s=o.get(e);C(t,((e,{action:t})=>a[e]=t==J?null:s.get(e)))}),(()=>C(t,((e,{action:t})=>n[e]=t==J?null:o.get(e)?.toJSON()))))}),(()=>C(t,((e,{action:t})=>l[e]=t==J?null:s.get(e)?.toJSON())))):C(t,((e,{action:t})=>d[e]=t==J?null:r.get(e)))))})(t),[l,d,1]})(y,t)));return y.observeDeep(t),t}),(e=>{y.unobserveDeep(e)}),u,!1,{getYDoc:()=>l})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("yjs")):"function"==typeof define&&define.amd?define(["exports","yjs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterYjs={},e.yjs);
@@ -1 +1 @@
1
- var t,e;t=this,e=function(t){"use strict";const e=t=>typeof t,a=e(""),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,r=t=>o.getPrototypeOf(t),i=o.keys,c=o.freeze,y=t=>(t=>!s(t)&&n(r(t),(t=>t==o.prototype||s(r(t))),(()=>!0)))(t)&&0==(t=>i(t).length)(t),d=t=>new Map(t),l=(t,e)=>t?.get(e),u=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},p=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(l(t,e)):u(t,e,a()),l(t,e)},g=d(),f=d(),h=t=>{return s=t?.[0],e(s)==a;var s};t.createCustomPersister=(t,e,a,o,r,i,d,[v,w]=[],C=[])=>{let b,A,M,L=0,S=0;p(g,C,(()=>0)),p(f,C,(()=>[]));const[T,m,x,P]=((t,e)=>!t||s(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!y(t)||!y(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!y(t)||!y(e)])(d,t),j=async t=>(2!=L&&(L=1,await O.schedule((async()=>{await t(),L=0}))),O),O={load:async(a,s)=>await j((async()=>{try{const a=await e();(T&&h(a)?t.setMergeableContent:t.setContent)(a)}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(O.stopAutoLoad(),await O.load(a,s),S=1,M=o((async(a,s)=>{if(s){const e=s();await j((async()=>(T&&h(e)?t.applyMergeableChanges:t.applyChanges)(e)))}else await j((async()=>{try{const s=a?.()??await e();(T&&h(s)?t.setMergeableContent:t.setContent)(s)}catch(t){i?.(t)}}))})),O),stopAutoLoad:()=>(S&&(r(M),M=void 0,S=0),O),save:async t=>(1!=L&&(L=2,await O.schedule((async()=>{try{await a(m,t)}catch(t){i?.(t)}L=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),b=t.addDidFinishTransactionListener((()=>{const t=x();P(t)&&O.save((()=>t))})),O),stopAutoSave:()=>(n(b,t.delListener),b=void 0,O),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(l(f,C),...t),await(async()=>{if(!l(g,C)){for(u(g,C,1);!s((t=l(f,C),A=t.shift()));)try{await A()}catch(t){i?.(t)}u(g,C,0)}var t})(),O),getStore:()=>t,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return v&&(O[v]=()=>w),c(O)}},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisters={});
1
+ var t,e;t=this,e=function(t){"use strict";const e=t=>typeof t,a=e(""),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,i=t=>o.getPrototypeOf(t),r=o.keys,c=o.freeze,y=t=>(t=>!s(t)&&n(i(t),(t=>t==o.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),d=t=>new Map(t),u=(t,e)=>t?.get(e),l=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},g=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(u(t,e)):l(t,e,a()),u(t,e)},p=d(),h=d();t.createCustomPersister=(t,o,i,r,d,f,v,w={},C=[])=>{let A,b,L,S=0;g(p,C,(()=>0)),g(h,C,(()=>[]));const[M,T,m,x]=((t,e)=>!t||s(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!y(t)||!y(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!y(t)||!y(e)])(v,t),P=async t=>(2!=S&&(S=1,await O.schedule((async()=>{await t(),S=0}))),O),j=s=>{var n;(M&&(n=s?.[0],e(n)==a)?1===s?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===s?.[2]?t.applyChanges:t.setContent)(s)},O={load:async(e,a)=>await P((async()=>{try{j(await o())}catch(s){f?.(s),t.setContent([e,a])}})),startAutoLoad:async(t={},e={})=>(await O.stopAutoLoad().load(t,e),b=r((async(t,e)=>{const a=e?.();await P((async()=>{try{j(a??t?.()??await o())}catch(t){f?.(t)}}))})),O),stopAutoLoad:()=>(b&&(d(b),b=void 0),O),isAutoLoading:()=>!s(b),save:async t=>(1!=S&&(S=2,await O.schedule((async()=>{try{await i(T,t)}catch(t){f?.(t)}S=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),L=t.addDidFinishTransactionListener((()=>{const t=m();x(t)&&O.save((()=>t))})),O),stopAutoSave:()=>(n(L,t.delListener),L=void 0,O),isAutoSaving:()=>!s(L),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(u(h,C),...t),await(async()=>{if(!u(p,C)){for(l(p,C,1);!s((t=u(h,C),A=t.shift()));)try{await A()}catch(t){f?.(t)}l(p,C,0)}var t})(),O),getStore:()=>t,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...w};return c(O)}},"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).TinyBasePersisters={});
Binary file
package/lib/umd/store.js CHANGED
@@ -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),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",f=u+"s",h=u+d,g="Row",T=g+"Count",b=g+d,S="Cell",V=S+d,p="Value",v=p+"s",y=p+d,C=e=>s+e,m=isFinite,w=e=>null==e,L=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==a,I=e=>t(e)==o,J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.entries,k=z.keys,A=z.isFrozen,M=z.freeze,N=e=>!w(e)&&L(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),B=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>O(j(e),(([e,s])=>t(s,e))),W=e=>N(e)&&0==(e=>E(k(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,G=e=>w(e)||0==$(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>w(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s,n)=>(q(e,t)?n?.(Z(e,t)):ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>B(t,s)?0:n(e,s))),e),ne=(e,t,s)=>{const n={};return Q(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ie=e=>oe(e,re),ce=(e,t,s,n,a=0)=>L((s?te:Z)(e,t[a],a>E(t)-2?s:X),(l=>{if(a>E(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ce(l,t,s,n,a+1);return G(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||w(e)?e:[e]),ue=(e,t)=>e?.add(t),fe=/^\d+$/,he=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{fe.test(t)&&E(e)<1e3&&x(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Se=([e,t])=>e===t,Ve=e=>{const s=t(e);return R(s)||s==l&&m(e)?s:void 0},pe=(e,t,s,n,a)=>w(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),ye=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),Ce=JSON.parse,me=(e,t,s)=>w(e)||!N(e)||W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),we=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),Le=()=>{let e,t,n=!1,a=!1,o=0,d=[];const m=X(),z=X(),P=X(),j=X(),k=X(),A=X(),N=X(),fe=X(),Re=X(),Ie=X(),Je=X(),Ee=X(),Fe=X(),Oe=X(),xe=de(),ze=X(),Pe=X(),je=X(),ke=X(),Ae=Te(),Me=Te(),Ne=Te(),Be=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=X(),ot=Te(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=he(),l=X();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const c=n(1);return ee(l,c,[e,a,o,r,i]),ue(ce(a,o??[s],de),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==E(t)?x(n,e):null===t[s]?Q(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(Z(e,t),s+1)));return a(e,0),n})(e,n),(e=>Q(e,(e=>Z(l,e)[0](t,...n??[],...a))))),e=>L(Z(l,e),(([,t,n])=>(ce(t,n??[s],void 0,(t=>(U(t,e),G(t)?1:0))),ee(l,e),a(e),n))),e=>L(Z(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...a(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!me(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=l||(Ve(e[i])!=t&&D(e,i),0))},ft=(t,s)=>(!e||q(Je,s)||Ht(s))&&me(t,((e,t)=>ht(s,t,e)),(()=>Ht(s))),ht=(e,t,s,n)=>me(n?s:St(s,e,t),((n,a)=>L(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ht(e,t))),gt=(t,s,n,a)=>e?L(Z(Z(Je,t),n),(e=>Ve(a)!=e[r]?Ht(t,s,n,a,e[i]):a),(()=>Ht(t,s,n,a))):w(Ve(a))?Ht(t,s,n,a):a,Tt=(e,t)=>me(t?e:Vt(e),((t,s)=>L(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Wt())),bt=(e,s)=>t?L(Z(Fe,e),(t=>Ve(s)!=t[r]?Wt(e,s,t[i]):s),(()=>Wt(e,s))):w(Ve(s))?Wt(e,s):s,St=(e,t,s)=>(L(Z(Ee,t),(([n,a])=>{Q(n,((t,s)=>{B(e,s)||(e[s]=t)})),Q(a,(n=>{B(e,n)||Ht(t,s,n)}))})),e),Vt=e=>(t&&(Q(Oe,((t,s)=>{B(e,s)||(e[s]=t)})),Q(xe,(t=>{B(e,t)||Wt(t)}))),e),pt=e=>se(Je,e,((e,t,s)=>{const n=X(),a=de();se(te(Je,t,X),s,((e,t,s)=>{ee(e,t,s),L(s[i],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),L(s[i],(e=>ee(Oe,t,e)),(()=>ue(xe,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),U(xe,t)})),yt=e=>W(e)?ys():bs(e),Ct=e=>se(je,e,((e,t,s)=>mt(t,s)),((e,t)=>xt(t))),mt=(e,t)=>se(te(je,e,(()=>(kt(e,1),ee(ze,e,he()),ee(Pe,e,X()),X()))),t,((t,s,n)=>wt(e,t,s,n)),((t,s)=>zt(e,t,s))),wt=(e,t,s,n,a)=>se(te(t,s,(()=>(At(e,s,1),X()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>Pt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{q(s,n)||Mt(e,t,n,1);const l=Z(s,n);a!==l&&(Nt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>L(Z(t,s),(t=>Lt(e,s,t,n,a)),(()=>wt(e,t,s,St({[n]:a},e,s)))),It=e=>W(e)?ws():Ss(e),Jt=e=>se(ke,e,((e,t,s)=>Et(t,s)),((e,t)=>jt(t))),Et=(e,t)=>{q(ke,e)||Bt(e,1);const s=Z(ke,e);t!==s&&(Dt(e,s,t),ee(ke,e,t))},Ft=(e,t)=>{const[s]=Z(ze,e),n=s(t);return q(Z(je,e),n)?Ft(e,t):n},Ot=e=>Z(je,e)??mt(e,{}),xt=e=>mt(e,{}),zt=(e,t,s)=>{const[,n]=Z(ze,e);n(s),wt(e,t,s,{},!0)},Pt=(e,t,s,n,a,l)=>{const o=Z(Z(Ee,e)?.[0],a);if(!w(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{Nt(e,s,t,Z(n,t)),Mt(e,s,t,-1),ee(n,t)};w(o)?r(a):_(n,r),G(n)&&(At(e,s,-1),G(ee(t,s))&&(kt(e,-1),ee(je,e),ee(ze,e),ee(Pe,e)))},jt=e=>{const t=Z(Oe,e);if(!w(t))return Et(e,t);Dt(e,Z(ke,e)),Bt(e,-1),ee(ke,e)},kt=(e,t)=>we(m,e,t),At=(e,t,s)=>we(te(j,e,X),t,s)&&ee(P,e,te(P,e,(()=>0))+s),Mt=(e,t,s,n)=>{const a=Z(Pe,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(te(z,e,X),s,n),ee(a,s,l!=-n?l+n:null),we(te(te(k,e,X),t,X),s,n)},Nt=(e,t,s,n,a)=>te(te(te(A,e,X),t,X),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>we(N,e,t),Dt=(e,t,s)=>te(fe,e,(()=>[t,0]))[1]=s,Ht=(e,t,s,n,a)=>(x(te(te(te(Re,e,X),t,X),s,(()=>[])),n),a),Wt=(e,t,s)=>(x(te(Ie,e,(()=>[])),t),s),$t=(e,t,s)=>L(Z(Z(Z(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),qt=e=>L(Z(fe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(is(e))])),Gt=e=>G(Re)||G(Ze[e])?0:Q(e?ie(Re):Re,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>it(Ze[e],[s,n,a],t))))))),Kt=e=>G(Ie)||G(_e[e])?0:Q(e?oe(Ie):Ie,((t,s)=>it(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!G(e))return it(t,n,(()=>ne(e))),_(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Ut=e=>{const t=cs();t!=n&&it(Ae[e],void 0,t);const s=G(Ge[e]),a=G(Ue[e])&&G(Xe[e])&&G(qe[e])&&G(Ke[e])&&G(He[e])&&G(We[e])&&G($e[e])&&s&&G(Ne[e])&&G(Be[e]),l=G(Ye[e])&&G(Qe[e])&&G(De[e])&&G(Me[e]);if(!a||!l){const t=e?[oe(m),re(z),oe(P),re(j),ie(k),ie(A)]:[m,z,P,j,k,A];if(!a){Qt(t[0],Ne[e],Be[e]),Q(t[1],((t,s)=>Qt(t,He[e],We[e],[s]))),Q(t[2],((t,s)=>{0!=t&&it($e[e],[s],ts(s))}));const n=de();Q(t[3],((t,a)=>{Qt(t,qe[e],Ke[e],[a])&&!s&&(it(Ge[e],[a,null]),ue(n,a))})),s||Q(t[5],((t,s)=>{if(!q(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],a)=>s!==t?ue(n,a):U(e,a))))),Q(n,(t=>it(Ge[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],i)=>{r!==t&&(it(Ye[e],[n,l,i],r,t,$t),s=a=o=1)})),o&&it(Qe[e],[n,l],$t)})),a&&it(De[e],[n],$t)})),s&&it(Me[e],void 0,$t)}}},Xt=e=>{const t=gs();t!=a&&it(et[e],void 0,t);const s=G(st[e])&&G(nt[e]),n=G(at[e])&&G(tt[e]);if(!s||!n){const t=e?[oe(N),oe(fe)]:[N,fe];if(s||Qt(t[0],st[e],nt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,qt),s=1)})),s&&it(tt[e],void 0,qt)}}},Yt=(e,...t)=>(Is((()=>e(...O(t,C)))),Fs),Zt=()=>le(je),_t=()=>Y(je),es=e=>Y(Z(Pe,C(e))),ts=e=>$(Z(je,C(e))),ss=e=>Y(Z(je,C(e))),ns=(e,t,s,n=0,a)=>{return O(J((o=Z(je,C(e)),r=(e,s)=>[w(t)?s:Z(e,C(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,w(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Y(Z(Z(je,C(e)),C(t))),ls=(e,t,s)=>Z(Z(Z(je,C(e)),C(t)),C(s)),os=()=>ne(ke),rs=()=>Y(ke),is=e=>Z(ke,C(e)),cs=()=>!G(je),ds=e=>q(je,C(e)),us=(e,t)=>q(Z(Pe,C(e)),C(t)),fs=(e,t)=>q(Z(je,C(e)),C(t)),hs=(e,t,s)=>q(Z(Z(je,C(e)),C(t)),C(s)),gs=()=>!G(ke),Ts=e=>q(ke,C(e)),bs=e=>Yt((()=>(e=>me(e,ft,Ht))(e)?Ct(e):0)),Ss=e=>Yt((()=>Tt(e)?Jt(e):0)),Vs=e=>{try{yt(Ce(e))}catch{}return Fs},ps=t=>Yt((()=>{if((e=me(t,(e=>me(e,ut))))&&(pt(t),!G(je))){const e=Zt();ys(),bs(e)}})),vs=e=>Yt((()=>{if(t=(e=>me(e,ut))(e)){const s=os();Rs(),ws(),t=!0,vt(e),Ss(s)}})),ys=()=>Yt((()=>Ct({}))),Cs=e=>Yt((e=>q(je,e)?xt(e):0),e),ms=(e,t)=>Yt(((e,t)=>L(Z(je,e),(s=>q(s,t)?zt(e,s,t):0))),e,t),ws=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{pt({}),e=!1})),Rs=()=>Yt((()=>{vt({}),t=!1})),Is=(e,t)=>{if(-1!=o){Js();const s=e();return Es(t),s}},Js=()=>(-1!=o&&o++,1==o&&it(lt,void 0),Fs),Es=e=>(o>0&&(o--,0==o&&(o=1,Gt(1),G(A)||Ut(1),Kt(1),G(fe)||Xt(1),e?.(Fs)&&(Q(A,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>pe(Fs,t,s,n,e))))))),K(A),Q(fe,(([e],t)=>ve(Fs,t,e))),K(fe)),it(ot[0],void 0),o=-1,Gt(0),G(A)||Ut(0),Kt(0),G(fe)||Xt(0),d[0]?.(Fs),it(ot[1],void 0),d[1]?.(Fs),o=0,n=cs(),a=gs(),F([m,z,P,j,k,A,Re,N,fe,Ie],K))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ae(Z(je,C(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne(Z(Z(je,C(e)),C(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:fs,hasCell:hs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ye(je),getValuesJson:()=>ye(ke),getJson:()=>ye([je,ke]),getTablesSchemaJson:()=>ye(Je),getValuesSchemaJson:()=>ye(Fe),getSchemaJson:()=>ye([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Yt((()=>{(W(e)?ys:bs)(e),(W(t)?ws:Ss)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ft(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ht(e,t,s)?wt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ht(e,n,t)&&(e=C(e),wt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ht(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>L(gt(e,t,s,I(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>L(bt(e,I(t)?t(is(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>w(e)?Cs(t):H(e,((e,s)=>w(e)?ms(t,s):H(e,((e,n)=>pe(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Vs,setValuesJson:e=>{try{It(Ce(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=Ce(e);yt(t),It(s)}catch{Vs(e)}})),setTablesSchema:ps,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{ps(e),vs(t)})),delTables:ys,delTable:Cs,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>L(Z(je,e),(a=>L(Z(a,t),(l=>q(l,s)?Pt(e,a,t,l,s,n):0))))),e,t,s),delValues:ws,delValue:e=>Yt((e=>q(ke,e)?jt(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(A,((e,t)=>-1===Z(m,t)?void 0:ne(e,((e,s)=>-1===Z(Z(j,t),s)?void 0:ne(e,(([,e])=>e),((e,t)=>Se(t)))),W)),W),ne(fe,(([,e])=>e),((e,t)=>Se(t)))],getTransactionLog:()=>[!G(A),!G(fe),le(A,be,Se),le(Re),ne(fe,be,Se),ne(Ie),ne(m),ae(j),le(k),ne(N)],finishTransaction:Es,forEachTable:e=>Q(je,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(Pe,C(e)),t),forEachRow:(e,t)=>Q(Z(je,C(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(je,C(e)),C(t)),s),forEachValue:e=>_(ke,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(ct(e),Fs),getListenerStats:()=>({}),createStore:Le,addListener:rt,callListeners:it,setInternalListeners:(e,t)=>d=[e,t]};return H({[c+f]:[0,Ae,[],()=>[cs()]],[f]:[0,Me],[h]:[0,Ne],[c+u]:[1,Be,[_t],e=>[ds(...e)]],[u]:[1,De,[_t]],[u+V]:[1,He,[_t]],[c+u+S]:[2,We,[_t,es],e=>[us(...e)]],[T]:[1,$e,[_t]],[b]:[1,qe,[_t]],[c+g]:[2,Ke,[_t,ss],e=>[fs(...e)]],[g]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+S]:[3,Xe,[_t,ss,as],e=>[hs(...e)]],[S]:[3,Ye,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,Ze],[c+v]:[0,et,[],()=>[gs()]],[v]:[0,tt],[y]:[0,st],[c+p]:[1,nt,[rs],e=>[Ts(...e)]],[p]:[1,at,[rs],e=>ge(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),M(Fs)};e.createStore=Le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),l=t(0),o=t(t),r="type",i="default",c="Has",d="Ids",u="Table",f=u+"s",h=u+d,g="Row",T=g+"Count",b=g+d,S="Cell",V=S+d,p="Value",v=p+"s",y=p+d,C=e=>s+e,m=isFinite,w=e=>null==e,L=(e,t,s)=>w(e)?s?.():t(e),R=e=>e==n||e==a,I=e=>t(e)==o,J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),x=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),j=z.entries,k=z.isFrozen,A=e=>!w(e)&&L(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),M=z.keys,N=z.freeze,B=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>O(j(e),(([e,s])=>t(s,e))),W=e=>A(e)&&0==(e=>E(M(e)))(e),$=(e,t,s,n=0)=>w(e)||!A(e)||!n&&W(e)||k(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),q=e=>e?.size??0,G=(e,t)=>e?.has(t)??!1,K=e=>w(e)||0==q(e),Q=e=>e.clear(),U=(e,t)=>e?.forEach(t),X=(e,t)=>e?.delete(t),Y=e=>new Map(e),Z=e=>[...e?.keys()??[]],_=(e,t)=>e?.get(t),ee=(e,t)=>U(e,((e,s)=>t(s,e))),te=(e,t,s)=>w(s)?(X(e,t),e):e?.set(t,s),se=(e,t,s,n)=>(G(e,t)?n?.(_(e,t)):te(e,t,s()),_(e,t)),ne=(e,t,s,n=te)=>(H(t,((t,n)=>s(e,n,t))),ee(e,(s=>B(t,s)?0:n(e,s))),e),ae=(e,t,s,n)=>{const a={};return U(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},le=(e,t,s)=>ae(e,(e=>ae(e,t,s)),K,W),oe=(e,t,s)=>ae(e,(e=>le(e,t,s)),K,W),re=(e,t)=>{const s=Y();return U(e,((e,n)=>s.set(n,t?.(e)??e))),s},ie=e=>re(e,re),ce=e=>re(e,ie),de=(e,t,s,n,a=0)=>L((s?se:_)(e,t[a],a>E(t)-2?s:Y),(l=>{if(a>E(t)-2)return n?.(l)&&te(e,t[a]),l;const o=de(l,t,s,n,a+1);return K(l)&&te(e,t[a]),o})),ue=e=>new Set(Array.isArray(e)||w(e)?e:[e]),fe=(e,t)=>e?.add(t),he=/^\d+$/,ge=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{he.test(t)&&E(e)<1e3&&x(e,t)}]},Te=e=>[e,e],be=()=>[Y(),Y()],Se=e=>[...e],Ve=([e,t])=>e===t,pe=e=>{const s=t(e);return R(s)||s==l&&m(e)?s:void 0},ve=(e,t,s,n,a)=>w(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ye=(e,t,s)=>w(s)?e.delValue(t):e.setValue(t,s),Ce=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),me=JSON.parse,we=(e,t,s)=>te(e,t,_(e,t)==-s?void 0:s),Le=()=>{let e,t,n=!1,a=!1,o=0,d=[];const m=Y(),z=Y(),P=Y(),j=Y(),k=Y(),A=Y(),M=Y(),he=Y(),Re=Y(),Ie=Y(),Je=Y(),Ee=Y(),Fe=Y(),Oe=Y(),xe=ue(),ze=Y(),Pe=Y(),je=Y(),ke=Y(),Ae=be(),Me=be(),Ne=be(),Be=be(),De=be(),He=be(),We=be(),$e=be(),qe=be(),Ge=be(),Ke=be(),Qe=be(),Ue=be(),Xe=be(),Ye=be(),Ze=be(),_e=be(),et=be(),tt=be(),st=be(),nt=be(),at=be(),lt=Y(),ot=be(),[rt,it,ct,dt]=(e=>{let t;const[n,a]=ge(),l=Y();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const c=n(1);return te(l,c,[e,a,o,r,i]),fe(de(a,o??[s],ue),c),c},(e,n,...a)=>F(((e,t=[s])=>{const n=[],a=(e,s)=>s==E(t)?x(n,e):null===t[s]?U(e,(e=>a(e,s+1))):F([t[s],null],(t=>a(_(e,t),s+1)));return a(e,0),n})(e,n),(e=>U(e,(e=>_(l,e)[0](t,...n??[],...a))))),e=>L(_(l,e),(([,t,n])=>(de(t,n??[s],void 0,(t=>(X(t,e),K(t)?1:0))),te(l,e),a(e),n))),e=>L(_(l,e),(([e,,s=[],n,a])=>{const l=(...o)=>{const r=E(o);r==E(s)?e(t,...o,...a(o)):w(s[r])?F(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,s[r])};l()}))]})(),ut=e=>{if(!$(e,((e,t)=>[r,i].includes(t))))return!1;const t=e[r];return!(!R(t)&&t!=l||(pe(e[i])!=t&&D(e,i),0))},ft=(t,s)=>(!e||G(Je,s)||Ht(s))&&$(t,((e,t)=>ht(s,t,e)),(()=>Ht(s))),ht=(e,t,s,n)=>$(n?s:St(s,e,t),((n,a)=>L(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ht(e,t))),gt=(t,s,n,a)=>e?L(_(_(Je,t),n),(e=>pe(a)!=e[r]?Ht(t,s,n,a,e[i]):a),(()=>Ht(t,s,n,a))):w(pe(a))?Ht(t,s,n,a):a,Tt=(e,t)=>$(t?e:Vt(e),((t,s)=>L(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Wt())),bt=(e,s)=>t?L(_(Fe,e),(t=>pe(s)!=t[r]?Wt(e,s,t[i]):s),(()=>Wt(e,s))):w(pe(s))?Wt(e,s):s,St=(e,t,s)=>(L(_(Ee,t),(([n,a])=>{U(n,((t,s)=>{B(e,s)||(e[s]=t)})),U(a,(n=>{B(e,n)||Ht(t,s,n)}))})),e),Vt=e=>(t&&(U(Oe,((t,s)=>{B(e,s)||(e[s]=t)})),U(xe,(t=>{B(e,t)||Wt(t)}))),e),pt=e=>ne(Je,e,((e,t,s)=>{const n=Y(),a=ue();ne(se(Je,t,Y),s,((e,t,s)=>{te(e,t,s),L(s[i],(e=>te(n,t,e)),(()=>fe(a,t)))})),te(Ee,t,[n,a])}),((e,t)=>{te(Je,t),te(Ee,t)})),vt=e=>ne(Fe,e,((e,t,s)=>{te(Fe,t,s),L(s[i],(e=>te(Oe,t,e)),(()=>fe(xe,t)))}),((e,t)=>{te(Fe,t),te(Oe,t),X(xe,t)})),yt=e=>W(e)?ys():bs(e),Ct=e=>ne(je,e,((e,t,s)=>mt(t,s)),((e,t)=>xt(t))),mt=(e,t)=>ne(se(je,e,(()=>(kt(e,1),te(ze,e,ge()),te(Pe,e,Y()),Y()))),t,((t,s,n)=>wt(e,t,s,n)),((t,s)=>zt(e,t,s))),wt=(e,t,s,n,a)=>ne(se(t,s,(()=>(At(e,s,1),Y()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>Pt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{G(s,n)||Mt(e,t,n,1);const l=_(s,n);a!==l&&(Nt(e,t,n,l,a),te(s,n,a))},Rt=(e,t,s,n,a)=>L(_(t,s),(t=>Lt(e,s,t,n,a)),(()=>wt(e,t,s,St({[n]:a},e,s)))),It=e=>W(e)?ws():Ss(e),Jt=e=>ne(ke,e,((e,t,s)=>Et(t,s)),((e,t)=>jt(t))),Et=(e,t)=>{G(ke,e)||Bt(e,1);const s=_(ke,e);t!==s&&(Dt(e,s,t),te(ke,e,t))},Ft=(e,t)=>{const[s]=_(ze,e),n=s(t);return G(_(je,e),n)?Ft(e,t):n},Ot=e=>_(je,e)??mt(e,{}),xt=e=>mt(e,{}),zt=(e,t,s)=>{const[,n]=_(ze,e);n(s),wt(e,t,s,{},!0)},Pt=(e,t,s,n,a,l)=>{const o=_(_(Ee,e)?.[0],a);if(!w(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{Nt(e,s,t,_(n,t)),Mt(e,s,t,-1),te(n,t)};w(o)?r(a):ee(n,r),K(n)&&(At(e,s,-1),K(te(t,s))&&(kt(e,-1),te(je,e),te(ze,e),te(Pe,e)))},jt=e=>{const t=_(Oe,e);if(!w(t))return Et(e,t);Dt(e,_(ke,e)),Bt(e,-1),te(ke,e)},kt=(e,t)=>we(m,e,t),At=(e,t,s)=>we(se(j,e,Y),t,s)&&te(P,e,se(P,e,(()=>0))+s),Mt=(e,t,s,n)=>{const a=_(Pe,e),l=_(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(se(z,e,Y),s,n),te(a,s,l!=-n?l+n:null),we(se(se(k,e,Y),t,Y),s,n)},Nt=(e,t,s,n,a)=>se(se(se(A,e,Y),t,Y),s,(()=>[n,0]))[1]=a,Bt=(e,t)=>we(M,e,t),Dt=(e,t,s)=>se(he,e,(()=>[t,0]))[1]=s,Ht=(e,t,s,n,a)=>(x(se(se(se(Re,e,Y),t,Y),s,(()=>[])),n),a),Wt=(e,t,s)=>(x(se(Ie,e,(()=>[])),t),s),$t=(e,t,s)=>L(_(_(_(A,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(ls(e,t,s))])),qt=e=>L(_(he,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Te(is(e))])),Gt=e=>K(Re)||K(Ze[e])?0:U(e?ce(Re):Re,((t,s)=>U(t,((t,n)=>U(t,((t,a)=>it(Ze[e],[s,n,a],t))))))),Kt=e=>K(Ie)||K(_e[e])?0:U(e?re(Ie):Ie,((t,s)=>it(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!K(e))return it(t,n,(()=>ae(e))),ee(e,((e,t)=>it(s,[...n??[],e],1==t))),1},Ut=e=>{const t=cs();t!=n&&it(Ae[e],void 0,t);const s=K(Ge[e]),a=K(Ue[e])&&K(Xe[e])&&K(qe[e])&&K(Ke[e])&&K(He[e])&&K(We[e])&&K($e[e])&&s&&K(Ne[e])&&K(Be[e]),l=K(Ye[e])&&K(Qe[e])&&K(De[e])&&K(Me[e]);if(!a||!l){const t=e?[re(m),ie(z),re(P),ie(j),ce(k),ce(A)]:[m,z,P,j,k,A];if(!a){Qt(t[0],Ne[e],Be[e]),U(t[1],((t,s)=>Qt(t,He[e],We[e],[s]))),U(t[2],((t,s)=>{0!=t&&it($e[e],[s],ts(s))}));const n=ue();U(t[3],((t,a)=>{Qt(t,qe[e],Ke[e],[a])&&!s&&(it(Ge[e],[a,null]),fe(n,a))})),s||U(t[5],((t,s)=>{if(!G(n,s)){const n=ue();U(t,(e=>U(e,(([t,s],a)=>s!==t?fe(n,a):X(e,a))))),U(n,(t=>it(Ge[e],[s,t])))}})),U(t[4],((t,s)=>U(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;U(t[5],((t,n)=>{let a;U(t,((t,l)=>{let o;U(t,(([t,r],i)=>{r!==t&&(it(Ye[e],[n,l,i],r,t,$t),s=a=o=1)})),o&&it(Qe[e],[n,l],$t)})),a&&it(De[e],[n],$t)})),s&&it(Me[e],void 0,$t)}}},Xt=e=>{const t=gs();t!=a&&it(et[e],void 0,t);const s=K(st[e])&&K(nt[e]),n=K(at[e])&&K(tt[e]);if(!s||!n){const t=e?[re(M),re(he)]:[M,he];if(s||Qt(t[0],st[e],nt[e]),!n){let s;U(t[1],(([t,n],a)=>{n!==t&&(it(at[e],[a],n,t,qt),s=1)})),s&&it(tt[e],void 0,qt)}}},Yt=(e,...t)=>(Is((()=>e(...O(t,C)))),Fs),Zt=()=>oe(je),_t=()=>Z(je),es=e=>Z(_(Pe,C(e))),ts=e=>q(_(je,C(e))),ss=e=>Z(_(je,C(e))),ns=(e,t,s,n=0,a)=>{return O(J((o=_(je,C(e)),r=(e,s)=>[w(t)?s:_(e,C(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,w(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Z(_(_(je,C(e)),C(t))),ls=(e,t,s)=>_(_(_(je,C(e)),C(t)),C(s)),os=()=>ae(ke),rs=()=>Z(ke),is=e=>_(ke,C(e)),cs=()=>!K(je),ds=e=>G(je,C(e)),us=(e,t)=>G(_(Pe,C(e)),C(t)),fs=(e,t)=>G(_(je,C(e)),C(t)),hs=(e,t,s)=>G(_(_(je,C(e)),C(t)),C(s)),gs=()=>!K(ke),Ts=e=>G(ke,C(e)),bs=e=>Yt((()=>(e=>$(e,ft,Ht))(e)?Ct(e):0)),Ss=e=>Yt((()=>Tt(e)?Jt(e):0)),Vs=e=>{try{yt(me(e))}catch{}return Fs},ps=t=>Yt((()=>{if((e=$(t,(e=>$(e,ut))))&&(pt(t),!K(je))){const e=Zt();ys(),bs(e)}})),vs=e=>Yt((()=>{if(t=(e=>$(e,ut))(e)){const s=os();Rs(),ws(),t=!0,vt(e),Ss(s)}})),ys=()=>Yt((()=>Ct({}))),Cs=e=>Yt((e=>G(je,e)?xt(e):0),e),ms=(e,t)=>Yt(((e,t)=>L(_(je,e),(s=>G(s,t)?zt(e,s,t):0))),e,t),ws=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{pt({}),e=!1})),Rs=()=>Yt((()=>{vt({}),t=!1})),Is=(e,t)=>{if(-1!=o){Js();const s=e();return Es(t),s}},Js=()=>(-1!=o&&o++,1==o&&it(lt,void 0),Fs),Es=e=>(o>0&&(o--,0==o&&(o=1,Gt(1),K(A)||Ut(1),Kt(1),K(he)||Xt(1),e?.(Fs)&&(U(A,((e,t)=>U(e,((e,s)=>U(e,(([e],n)=>ve(Fs,t,s,n,e))))))),Q(A),U(he,(([e],t)=>ye(Fs,t,e))),Q(he)),it(ot[0],void 0),o=-1,Gt(0),K(A)||Ut(0),Kt(0),K(he)||Xt(0),d[0]?.(Fs),it(ot[1],void 0),d[1]?.(Fs),o=0,n=cs(),a=gs(),F([m,z,P,j,k,A,Re,M,he,Ie],Q))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>le(_(je,C(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ae(_(_(je,C(e)),C(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:is,hasTables:cs,hasTable:ds,hasTableCell:us,hasRow:fs,hasCell:hs,hasValues:gs,hasValue:Ts,getTablesJson:()=>Ce(je),getValuesJson:()=>Ce(ke),getJson:()=>Ce([je,ke]),getTablesSchemaJson:()=>Ce(Je),getValuesSchemaJson:()=>Ce(Fe),getSchemaJson:()=>Ce([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Yt((()=>{(W(e)?ys:bs)(e),(W(t)?ws:Ss)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ft(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ht(e,t,s)?wt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ht(e,n,t)&&(e=C(e),wt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ht(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>L(gt(e,t,s,I(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>L(bt(e,I(t)?t(is(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>w(e)?Cs(t):H(e,((e,s)=>w(e)?ms(t,s):H(e,((e,n)=>ve(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ye(Fs,t,e)))})),setTablesJson:Vs,setValuesJson:e=>{try{It(me(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=me(e);yt(t),It(s)}catch{Vs(e)}})),setTablesSchema:ps,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{ps(e),vs(t)})),delTables:ys,delTable:Cs,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>L(_(je,e),(a=>L(_(a,t),(l=>G(l,s)?Pt(e,a,t,l,s,n):0))))),e,t,s),delValues:ws,delValue:e=>Yt((e=>G(ke,e)?jt(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ae(A,((e,t)=>-1===_(m,t)?void 0:ae(e,((e,s)=>-1===_(_(j,t),s)?void 0:ae(e,(([,e])=>e),(e=>Ve(e)))),K,W)),K,W),ae(he,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!K(A),!K(he),oe(A,Se,Ve),oe(Re),ae(he,Se,Ve),ae(Ie),ae(m),le(j),oe(k),ae(M)],finishTransaction:Es,forEachTable:e=>U(je,((t,s)=>e(s,(e=>U(t,((t,s)=>e(s,(e=>ee(t,e))))))))),forEachTableCell:(e,t)=>ee(_(Pe,C(e)),t),forEachRow:(e,t)=>U(_(je,C(e)),((e,s)=>t(s,(t=>ee(e,t))))),forEachCell:(e,t,s)=>ee(_(_(je,C(e)),C(t)),s),forEachValue:e=>ee(ke,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var i,c,d;c=r,E(i=o)===E(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(ct(e),Fs),getListenerStats:()=>({}),createStore:Le,addListener:rt,callListeners:it,setInternalListeners:(e,t)=>d=[e,t]};return H({[c+f]:[0,Ae,[],()=>[cs()]],[f]:[0,Me],[h]:[0,Ne],[c+u]:[1,Be,[_t],e=>[ds(...e)]],[u]:[1,De,[_t]],[u+V]:[1,He,[_t]],[c+u+S]:[2,We,[_t,es],e=>[us(...e)]],[T]:[1,$e,[_t]],[b]:[1,qe,[_t]],[c+g]:[2,Ke,[_t,ss],e=>[fs(...e)]],[g]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+S]:[3,Xe,[_t,ss,as],e=>[hs(...e)]],[S]:[3,Ye,[_t,ss,as],e=>Te(ls(...e))],InvalidCell:[3,Ze],[c+v]:[0,et,[],()=>[gs()]],[v]:[0,tt],[y]:[0,st],[c+p]:[1,nt,[rs],e=>[Ts(...e)]],[p]:[1,at,[rs],e=>Te(is(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),N(Fs)};e.createStore=Le},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -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",T=w+h,b="Sorted"+w+h,y="Cell",v=y+h,I="Value",R=I+"s",S=I+h,m=e=>s+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),E=Math.max,k=Math.min,x=isFinite,H=e=>null==e,D=(e,t,s)=>H(e)?s?.():t(e),A=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.keys,ae=ee.isFrozen,oe=ee.freeze,re=e=>!H(e)&&D(te(e),(e=>e==ee.prototype||H(te(e))),(()=>!0)),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=>re(e)&&0==(e=>N(ne(e)))(e),he=(e,t,s)=>(ie(e,t)||(e[t]=s()),e[t]),fe=e=>e?.size??0,Le=(e,t)=>e?.has(t)??!1,Ce=e=>H(e)||0==fe(e),we=e=>[...e?.values()??[]],pe=e=>e.clear(),Te=(e,t)=>e?.forEach(t),be=(e,t)=>e?.delete(t),ye=e=>new Map(e),ve=e=>[...e?.keys()??[]],Ie=(e,t)=>e?.get(t),Re=(e,t)=>Te(e,((e,s)=>t(s,e))),Se=(e,t,s)=>H(s)?(be(e,t),e):e?.set(t,s),me=(e,t,s,n)=>(Le(e,t)?n?.(Ie(e,t)):Se(e,t,s()),Ie(e,t)),Ve=(e,t,s,n=Se)=>(ue(t,((t,n)=>s(e,n,t))),Re(e,(s=>ie(t,s)?0:n(e,s))),e),Me=(e,t,s)=>{const n={};return Te(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Ee=(e,t,s)=>Me(e,(e=>Me(e,t,s)),ge),ke=(e,t,s)=>Me(e,(e=>Ee(e,t,s)),ge),xe=(e,t)=>{const s=ye();return Te(e,((e,n)=>s.set(n,t?.(e)??e))),s},He=e=>xe(e,xe),De=e=>xe(e,He),Ae=(e,t,s,n,a=0)=>D((s?me:Ie)(e,t[a],a>N(t)-2?s:ye),(o=>{if(a>N(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=Ae(o,t,s,n,a+1);return Ce(o)&&Se(e,t[a]),r})),Je=e=>{const s=t(e);return A(s)||s==o&&x(e)?s:void 0},Fe=(e,t,s,n,a)=>H(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Qe=(e,t,s)=>H(s)?e.delValue(t):e.setValue(t,s),ze=e=>new Set(Q(e)||H(e)?e:[e]),Ne=(e,t)=>e?.add(t),Oe=(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=me(u,t,ze);return $(n,(t=>Ne(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>D(Ie(u,t),(n=>{$(K(s)?we(n):s,(t=>{e.delListener(t),be(n,t)})),Ce(n)&&Se(u,t)})),f=(e,s)=>{Se(r,e,s),Le(l,e)||(Se(l,e,t()),Se(c,e,ye()),Se(d,e,ye()),a(i))},L=e=>{Se(r,e),Se(l,e),Se(c,e),Se(d,e),h(e),a(i)};return[()=>e,()=>ve(r),e=>Re(l,e),e=>Le(l,e),e=>Ie(r,e),e=>Ie(l,e),(e,t)=>Se(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ye(),u=ye(),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||Q(c)&&Q(d)&&j(c,d)||Se(i,t,[c,d]),!H(l)){const e=Ie(C,t),s=o(n,t)?l(a,t):void 0;e!=s&&Se(u,t,s)}},p=e=>{a((()=>{Te(i,(([,e],t)=>Se(L,t,e))),Te(u,((e,t)=>Se(C,t,e)))}),i,u,L,C,e),pe(i),pe(u)};Re(L,w),e.hasTable(n)&&$(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),()=>Re(u,L),g,h]},Pe=(e,t)=>J(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?Z(e):null)??s+t++,t=>{je.test(t)&&N(e)<1e3&&X(e,t)}]},_e=e=>{let t;const[n,a]=Be(),o=ye();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return Se(o,d,[a,r,l,i,c]),Ne(Ae(r,l??[s],ze),d),d},(e,n,...a)=>$(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?X(n,e):null===t[s]?Te(e,(e=>a(e,s+1))):$([t[s],null],(t=>a(Ie(e,t),s+1)));return a(e,0),n})(e,n),(e=>Te(e,(e=>Ie(o,e)[0](t,...n??[],...a))))),e=>D(Ie(o,e),(([,t,n])=>(Ae(t,n??[s],void 0,(t=>(be(t,e),Ce(t)?1:0))),Se(o,e),a(e),n))),e=>D(Ie(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):H(s[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},$e=We((e=>{let t,n,a,o=100,r=ye(),l=ye(),i=1;const c=ye(),d=ye(),[u,g,h]=_e((()=>J)),f=ye(),L=ye(),C=[],w=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Ie(f,s);Te(n,((s,n)=>Te(s,((s,a)=>Te(s,((s,o)=>Fe(e,n,a,o,s[t]))))))),Te(a,((s,n)=>Qe(e,n,s[t])))})),i=1},T=e=>{Se(f,e),Se(L,e),g(d,[e])},b=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??N(e)),T),y=()=>b(C,N(C)-o),v=()=>D(t,(()=>{X(C,t),y(),b(w),t=void 0,a=1})),I=()=>{t=Y(C),a=1};let R,S;const m=(e="")=>(H(t)&&(t=s+n++,Se(f,t,[r,l]),x(t,e),r=ye(),l=ye(),a=1),t),V=()=>{K(C)||(((e,...t)=>{e.unshift(...t)})(w,m()),p(0,t),t=Y(C),a=1)},M=()=>{K(w)||(X(C,t),t=Z(w),p(1,t),a=1)},E=()=>{a&&(g(c),a=0)},k=e=>{const t=m(e);return E(),t},x=(e,t)=>(A(e)&&Ie(L,e)!==t&&(Se(L,e,t),g(d,[e])),J),A=e=>Le(f,e),J={setSize:e=>(o=e,y(),J),addCheckpoint:k,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...C],t,[...w]],forEachCheckpoint:e=>Re(L,e),hasCheckpoint:A,getCheckpoint:e=>Ie(L,e),goBackward:()=>(V(),E(),J),goForward:()=>(M(),E(),J),goTo:e=>{const s=P(C,e)?V:P(w,e)?M:null;for(;!H(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:()=>(b(C),b(w),H(t)||T(t),t=void 0,n=0,k(),J),clearForward:()=>(K(w)||(b(w),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){v();const e=me(r,t,ye),l=me(e,s,ye),i=me(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ce(Se(l,n))&&Ce(Se(e,s))&&Ce(Se(r,t))&&I(),E()}})),S=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(Se(l,t))&&I(),E()}}))}};return oe(J.clear())}),(e=>e._registerListeners())),qe=(e,t)=>(e??0)<(t??0)?-1:1,Ge=We((e=>{const t=ye(),n=ye(),[a,o,r]=_e((()=>T)),[l,i,c,d,u,g,h,,f,L,C,w]=Oe(e,ye,(e=>H(e)?s:Q(e)?q(e,m):m(e)),a,o),p=(t,s,n)=>{const a=u(t);Te(n,((t,n)=>s(n,(s=>Te(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},T={setIndexDefinition:(e,s,a,r,l,i=qe)=>{const c=H(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(Te(a,(([e,t],s)=>{const n=ze(e),a=ze(t);Te(n,(e=>be(a,e)?be(n,e):0)),Te(n,(e=>{Ne(C,e),D(Ie(p,e),(t=>{be(t,s),Ce(t)&&(Se(p,e),L=1)}))})),Te(a,(e=>{Ne(C,e),Le(p,e)||(Se(p,e,ze()),L=1),Ne(Ie(p,e),s),H(r)||Ne(w,e)}))})),s(),Ce(u)||(f?Re(p,(e=>Ne(w,e))):Re(l,(e=>D(Ie(d,e),(e=>Ne(w,e))))),Te(w,(e=>{const t=(t,s)=>i(Ie(u,t),Ie(u,s),e),s=[...Ie(p,e)];B(s,t)||(Se(p,e,ze(_(s,t))),Ne(C,e))}))),(L||f)&&!H(c)){const t=[...p];B(t,c)||(h(e,ye(_(t,c))),L=1)}L&&o(t,[e]),Te(C,(t=>o(n,[e,t])))}),Pe(a),D(r,Pe)),T},delIndexDefinition:e=>(L(e),T),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),T),destroy:w,getListenerStats:()=>({})};return oe(T)})),Ke=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]]]),Ue=(e,t,s,n,a,o=!1)=>{if(Ce(s))return;const[r,l,i,c]=a;return o||=H(e),Te(n,(([s,n])=>{o||(e=H(s)?l?.(e,n,t++):H(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=H(e))})),o?r(we(s),fe(s)):e},Xe=We((e=>{const t=ye(),[n,a,o]=_e((()=>w)),[r,l,i,c,d,u,g,,h,f,L,C]=Oe(e,O,(e=>isNaN(e)||H(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),w={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=F(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||=H(d),s();let f=Ue(d,h,r,n,c,i);x(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 oe(w)})),Ye=ye(),Ze=ye(),et=e=>J(e?.[0]),tt=We((e=>{const t=e.createStore,n=t(),a=t(),o=ye(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,L,C,I,,,R,,S,m,V,M,E]=Oe(e,(()=>!0),O,r,l),k=(e,t,...s)=>$(s,(s=>Ne(me(me(o,t,ye),e,ze),s))),x=e=>{D(Ie(o,e),(e=>{Re(e,((e,t)=>Te(t,(t=>e.delListener(t))))),pe(e)})),$([a,n],(t=>t.delTable(e)))},A=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),x(t);const l=[],i=[[null,[o,null,null,[],ye()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=F(e)?[N(l)+s,e]:[H(t)?e:t,s=>s(e,t)];return X(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=H(s)||F(t)?null:t,a=H(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:H(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]:Ie(Ke,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(Ce(g))return J;const h=ye(i);Re(h,((e,[,t])=>D(Ie(h,t),(({3:t})=>H(e)?0:X(t,e)))));const f=ye(d);let L=n;if(Ce(f)&&K(u))L=a;else{A(t,L,a);const e=ye();Re(f,((t,[s,n])=>Ne(me(e,s,ze),[t,n])));const s=ze();Re(g,(t=>Le(e,t)?0:Ne(s,t)));const n=ye(),o=(s,n,o,r)=>D(s,(([l,i,c,d])=>{Re(n,((t,[s])=>{const n=me(l,t,ye),a=Ie(n,o),i=r?void 0:s;if(a!==i){const s=ze([[a,i]]),r=fe(n);Se(n,o,i),Te(Ie(e,t),(([e,t])=>{const a=Ue(d[e],r,n,s,t);d[e]=H(Je(a))?null:a}))}})),Ce(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(t,c):H(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;Te(s,(e=>{const[s,n,a]=i(t,l,e);X(c,n),X(d,a),h||=s})),Re(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&Se(u,e,[n])})),h&&o(Ae(n,c,void 0,(([,e])=>(be(e,l),Ce(e)))),u,l,1),g&&o(Ae(n,d,(()=>{const e={};return Te(s,(s=>e[s]=L.getCell(t,l,s))),[ye(),ze(),void 0,e]}),(([,e])=>{Ne(e,l)})),u,l)})))}A(t,e,L);const C=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=Ie(h,n),c=o?.(l,s),[d,u]=Ie(i,s)??[];c!=d&&(H(u)||E(t,u),Se(i,s,H(c)?null:[c,...M(t,1,e.addRowListener(a,c,(()=>C(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...H(n)?[o,s,t]:t===o?[o,s,n]:[Ie(h,t)?.[0],Ie(Ie(h,t)?.[4],s)?.[0],n]);L.transaction((()=>W(c,(e=>e(n)))?Re(g,((e,a)=>Fe(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:w}=Ie(h,null);return L.transaction((()=>M(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?C(a,o,a,w):(L.delRow(t,a),Te(h,(({4:e})=>D(Ie(e,a),(([,s])=>{E(t,s),Se(e,a)})))))}))))),J},delQueryDefinition:e=>(x(e),S(e),J),getStore:g,getQueryIds:h,forEachQuery:L,hasQuery:C,getTableId:I,addQueryIdsListener:e=>m((()=>e(J))),delListener:e=>(i(e),J),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ue({[f]:[1,1],[f+v]:[0,1],[p]:[0,1],[T]:[0,1],[b]:[0,5],[w]:[1,2],[v]:[0,2],[y]:[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)})),oe(J)})),st=We((e=>{const t=ye(),n=ye(),a=ye(),o=ye(),[r,l,i]=_e((()=>v)),[c,d,u,g,h,f,,,L,C,w,p]=Oe(e,(()=>[ye(),ye(),ye(),ye()]),(e=>H(e)?void 0:e+s),r,l),T=(e,t,s)=>D(f(e),(([n,,a])=>{if(!Le(a,t)){const o=ze();if(h(e)!=y(e))Ne(o,t);else{let e=t;for(;!H(e)&&!Le(o,e);)Ne(o,e),e=Ie(n,e)}if(s)return o;Se(a,t,o)}return Ie(a,t)})),b=(e,t)=>D(f(e),(([,,e])=>Se(e,t))),y=e=>Ie(t,e),v={setRelationshipDefinition:(e,s,r,i)=>(Se(t,e,r),L(e,s,((t,s)=>{const r=ze(),i=ze(),c=ze(),[d,u]=f(e);Te(s,(([t,s],n)=>{H(t)||(Ne(i,t),D(Ie(u,t),(e=>{be(e,n),Ce(e)&&Se(u,t)}))),H(s)||(Ne(i,s),Le(u,s)||Se(u,s,ze()),Ne(Ie(u,s),n)),Ne(r,n),Se(d,n,s),Re(Ie(o,e),(t=>{Le(T(e,t),n)&&Ne(c,t)}))})),t(),Te(r,(t=>l(n,[e,t]))),Te(i,(t=>l(a,[e,t]))),Te(c,(t=>{b(e,t),l(o,[e,t])}))}),Pe(i)),v),delRelationshipDefinition:e=>(Se(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:y,getRemoteRowId:(e,t)=>Ie(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Ie(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>H(f(e))?[t]:we(T(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)=>(T(e,t),r(s,o,[e,t])),delListener:e=>(b(...i(e)??[]),v),destroy:p,getListenerStats:()=>({})};return oe(v)})),nt=new globalThis.TextEncoder,at=e=>{let t=2166136261;return $(nt.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},ot=([e,t,s])=>[e,t,s],rt=(e,t)=>[e,t],lt=(e,t)=>at(e+":"+t),it=(e,t,s)=>{e[2]=t>>>0,s>e[0]&&(e[0]=s)},ct=e=>rt(e,le()),dt=(e="")=>[e,ye(),0],ut=()=>[s,void 0,0],gt=([e,t,s],n)=>[e,n(t,e),s],ht=(e,t=ot)=>gt(e,(e=>Me(e,t))),ft=e=>[e,e],Lt=()=>[ye(),ye()],Ct=e=>[...e],wt=([e,t])=>e===t,pt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),Tt=JSON.parse,bt=(e,t,s)=>H(e)||!re(e)||ge(e)||ae(e)?(s?.(),!1):(ue(e,((s,n)=>{t(s,n)||ce(e,n)})),!ge(e)),yt=(e,t,s)=>Se(e,t,Ie(e,t)==-s?void 0:s),vt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=ye(),h=ye(),b=ye(),V=ye(),M=ye(),E=ye(),k=ye(),x=ye(),J=ye(),Q=ye(),N=ye(),O=ye(),W=ye(),B=ye(),G=ze(),K=ye(),U=ye(),Y=ye(),Z=ye(),ee=Lt(),te=Lt(),se=Lt(),ne=Lt(),ae=Lt(),re=Lt(),le=Lt(),de=Lt(),he=Lt(),we=Lt(),Ae=Lt(),Oe=Lt(),Pe=Lt(),We=Lt(),je=Lt(),$e=Lt(),Ge=Lt(),Ke=Lt(),Ue=Lt(),Xe=Lt(),Ye=Lt(),Ze=Lt(),et=ye(),tt=Lt(),[st,nt,at,ot]=_e((()=>As)),rt=e=>{if(!bt(e,((e,t)=>P([l,i],t))))return!1;const t=e[l];return!(!A(t)&&t!=o||(Je(e[i])!=t&&ce(e,i),0))},lt=(t,s)=>(!e||Le(N,s)||$t(s))&&bt(t,((e,t)=>it(s,t,e)),(()=>$t(s))),it=(e,t,s,n)=>bt(n?s:gt(s,e,t),((n,a)=>D(ct(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),ct=(t,s,n,a)=>e?D(Ie(Ie(N,t),n),(e=>Je(a)!=e[l]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):H(Je(a))?$t(t,s,n,a):a,dt=(e,t)=>bt(t?e:ht(e),((t,s)=>D(ut(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),ut=(e,s)=>t?D(Ie(W,e),(t=>Je(s)!=t[l]?qt(e,s,t[i]):s),(()=>qt(e,s))):H(Je(s))?qt(e,s):s,gt=(e,t,s)=>(D(Ie(O,t),(([n,a])=>{Te(n,((t,s)=>{ie(e,s)||(e[s]=t)})),Te(a,(n=>{ie(e,n)||$t(t,s,n)}))})),e),ht=e=>(t&&(Te(B,((t,s)=>{ie(e,s)||(e[s]=t)})),Te(G,(t=>{ie(e,t)||qt(t)}))),e),It=e=>Ve(N,e,((e,t,s)=>{const n=ye(),a=ze();Ve(me(N,t,ye),s,((e,t,s)=>{Se(e,t,s),D(s[i],(e=>Se(n,t,e)),(()=>Ne(a,t)))})),Se(O,t,[n,a])}),((e,t)=>{Se(N,t),Se(O,t)})),Rt=e=>Ve(W,e,((e,t,s)=>{Se(W,t,s),D(s[i],(e=>Se(B,t,e)),(()=>Ne(G,t)))}),((e,t)=>{Se(W,t),Se(B,t),be(G,t)})),St=e=>ge(e)?Ss():bs(e),mt=e=>Ve(Y,e,((e,t,s)=>Vt(t,s)),((e,t)=>Ft(t))),Vt=(e,t)=>Ve(me(Y,e,(()=>(Ot(e,1),Se(K,e,Be()),Se(U,e,ye()),ye()))),t,((t,s,n)=>Mt(e,t,s,n)),((t,s)=>Qt(e,t,s))),Mt=(e,t,s,n,a)=>Ve(me(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)=>{Le(s,n)||Wt(e,t,n,1);const o=Ie(s,n);a!==o&&(jt(e,t,n,o,a),Se(s,n,a))},kt=(e,t,s,n,a)=>D(Ie(t,s),(t=>Et(e,s,t,n,a)),(()=>Mt(e,t,s,gt({[n]:a},e,s)))),xt=e=>ge(e)?Ms():ys(e),Ht=e=>Ve(Z,e,((e,t,s)=>Dt(t,s)),((e,t)=>Nt(t))),Dt=(e,t)=>{Le(Z,e)||Bt(e,1);const s=Ie(Z,e);t!==s&&(_t(e,s,t),Se(Z,e,t))},At=(e,t)=>{const[s]=Ie(K,e),n=s(t);return Le(Ie(Y,e),n)?At(e,t):n},Jt=e=>Ie(Y,e)??Vt(e,{}),Ft=e=>Vt(e,{}),Qt=(e,t,s)=>{const[,n]=Ie(K,e);n(s),Mt(e,t,s,{},!0)},zt=(e,t,s,n,a,o)=>{const r=Ie(Ie(O,e)?.[0],a);if(!H(r)&&!o)return Et(e,s,n,a,r);const l=t=>{jt(e,s,t,Ie(n,t)),Wt(e,s,t,-1),Se(n,t)};H(r)?l(a):Re(n,l),Ce(n)&&(Pt(e,s,-1),Ce(Se(t,s))&&(Ot(e,-1),Se(Y,e),Se(K,e),Se(U,e)))},Nt=e=>{const t=Ie(B,e);if(!H(t))return Dt(e,t);_t(e,Ie(Z,e)),Bt(e,-1),Se(Z,e)},Ot=(e,t)=>yt(d,e,t),Pt=(e,t,s)=>yt(me(V,e,ye),t,s)&&Se(b,e,me(b,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,ye),s,n),Se(a,s,o!=-n?o+n:null),yt(me(me(M,e,ye),t,ye),s,n)},jt=(e,t,s,n,a)=>me(me(me(E,e,ye),t,ye),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)=>(X(me(me(me(J,e,ye),t,ye),s,(()=>[])),n),a),qt=(e,t,s)=>(X(me(Q,e,(()=>[])),t),s),Gt=(e,t,s)=>D(Ie(Ie(Ie(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ft(cs(e,t,s))])),Kt=e=>D(Ie(x,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ft(gs(e))])),Ut=e=>Ce(J)||Ce($e[e])?0:Te(e?De(J):J,((t,s)=>Te(t,((t,n)=>Te(t,((t,a)=>nt($e[e],[s,n,a],t))))))),Xt=e=>Ce(Q)||Ce(Ge[e])?0:Te(e?xe(Q):Q,((t,s)=>nt(Ge[e],[s],t))),Yt=(e,t,s,n)=>{if(!Ce(e))return nt(t,n,(()=>Me(e))),Re(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(he[e])&&Ce(Ae[e])&&Ce(re[e])&&Ce(le[e])&&Ce(de[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),He(h),xe(b),He(V),De(M),De(E)]:[d,h,b,V,M,E];if(!a){Yt(t[0],se[e],ne[e]),Te(t[1],((t,s)=>Yt(t,re[e],le[e],[s]))),Te(t[2],((t,s)=>{0!=t&&nt(de[e],[s],os(s))}));const s=ze();Te(t[3],((t,a)=>{Yt(t,he[e],Ae[e],[a])&&!n&&(nt(we[e],[a,null]),Ne(s,a))})),n||Te(t[5],((t,n)=>{if(!Le(s,n)){const s=ze();Te(t,(e=>Te(e,(([t,n],a)=>n!==t?Ne(s,a):be(e,a))))),Te(s,(t=>nt(we[e],[n,t])))}})),Te(t[4],((t,s)=>Te(t,((t,n)=>Yt(t,Pe[e],We[e],[s,n])))))}if(!o){let s;Te(t[5],((t,n)=>{let a;Te(t,((t,o)=>{let r;Te(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;Te(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(...q(t,m)))),As),ss=()=>ke(Y),ns=()=>ve(Y),as=e=>ve(Ie(U,m(e))),os=e=>fe(Ie(Y,m(e))),rs=e=>ve(Ie(Y,m(e))),ls=(e,t,s,n=0,a)=>{return q(z(_((o=Ie(Y,m(e)),r=(e,s)=>[H(t)?s:Ie(e,m(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>qe(e,t)*(s?-1:1))),n,H(a)?a:n+a),(([,e])=>e));var o,r},is=(e,t)=>ve(Ie(Ie(Y,m(e)),m(t))),cs=(e,t,s)=>Ie(Ie(Ie(Y,m(e)),m(t)),m(s)),ds=()=>Me(Z),us=()=>ve(Z),gs=e=>Ie(Z,m(e)),hs=()=>!Ce(Y),fs=e=>Le(Y,m(e)),Ls=(e,t)=>Le(Ie(U,m(e)),m(t)),Cs=(e,t)=>Le(Ie(Y,m(e)),m(t)),ws=(e,t,s)=>Le(Ie(Ie(Y,m(e)),m(t)),m(s)),ps=()=>!Ce(Z),Ts=e=>Le(Z,m(e)),bs=e=>ts((()=>(e=>bt(e,lt,$t))(e)?mt(e):0)),ys=e=>ts((()=>dt(e)?Ht(e):0)),vs=e=>{try{St(Tt(e))}catch{}return As},Is=t=>ts((()=>{if((e=bt(t,(e=>bt(e,rt))))&&(It(t),!Ce(Y))){const e=ss();Ss(),bs(e)}})),Rs=e=>ts((()=>{if(t=(e=>bt(e,rt))(e)){const s=ds();ks(),Ms(),t=!0,Rt(e),ys(s)}})),Ss=()=>ts((()=>mt({}))),ms=e=>ts((e=>Le(Y,e)?Ft(e):0),e),Vs=(e,t)=>ts(((e,t)=>D(Ie(Y,e),(s=>Le(s,t)?Qt(e,s,t):0))),e,t),Ms=()=>ts((()=>Ht({}))),Es=()=>ts((()=>{It({}),e=!1})),ks=()=>ts((()=>{Rt({}),t=!1})),xs=(e,t)=>{if(-1!=a){Hs();const s=e();return Ds(t),s}},Hs=()=>(-1!=a&&a++,1==a&&nt(et,void 0),As),Ds=e=>(a>0&&(a--,0==a&&(a=1,Ut(1),Ce(E)||Zt(1),Xt(1),Ce(x)||es(1),e?.(As)&&(Te(E,((e,t)=>Te(e,((e,s)=>Te(e,(([e],n)=>Fe(As,t,s,n,e))))))),pe(E),Te(x,(([e],t)=>Qe(As,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]?.(As),nt(tt[1],void 0),r[1]?.(As),a=0,s=hs(),n=ps(),$([d,h,b,V,M,E,J,k,x,Q],pe))),As),As={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:ns,getTable:e=>Ee(Ie(Y,m(e))),getTableCellIds:as,getRowCount:os,getRowIds:rs,getSortedRowIds:ls,getRow:(e,t)=>Me(Ie(Ie(Y,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:Ts,getTablesJson:()=>pt(Y),getValuesJson:()=>pt(Z),getJson:()=>pt([Y,Z]),getTablesSchemaJson:()=>pt(N),getValuesSchemaJson:()=>pt(W),getSchemaJson:()=>pt([N,W]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(ge(e)?Ss:bs)(e),(ge(t)?Ms:ys)(t)})),setTables:bs,setTable:(e,t)=>ts((e=>lt(t,e)?Vt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>it(e,t,s)?Mt(e,Jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>xs((()=>{let n;return it(e,n,t)&&(e=m(e),Mt(e,Jt(e),n=At(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(it(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)=>D(ct(e,t,s,F(n)?n(cs(e,t,s)):n),(n=>kt(e,Jt(e),t,s,n)))),e,t,s),setValues:ys,setPartialValues:e=>ts((()=>dt(e,1)?ue(e,((e,t)=>Dt(t,e))):0)),setValue:(e,t)=>ts((e=>D(ut(e,F(t)?t(gs(e)):t),(t=>Dt(e,t)))),e),applyChanges:e=>ts((()=>{ue(e[0],((e,t)=>H(e)?ms(t):ue(e,((e,s)=>H(e)?Vs(t,s):ue(e,((e,n)=>Fe(As,t,s,n,e))))))),ue(e[1],((e,t)=>Qe(As,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{xt(Tt(e))}catch{}return As},setJson:e=>ts((()=>{try{const[t,s]=Tt(e);St(t),xt(s)}catch{vs(e)}})),setTablesSchema:Is,setValuesSchema:Rs,setSchema:(e,t)=>ts((()=>{Is(e),Rs(t)})),delTables:Ss,delTable:ms,delRow:Vs,delCell:(e,t,s,n)=>ts(((e,t,s)=>D(Ie(Y,e),(a=>D(Ie(a,t),(o=>Le(o,s)?zt(e,a,t,o,s,n):0))))),e,t,s),delValues:Ms,delValue:e=>ts((e=>Le(Z,e)?Nt(e):0),e),delTablesSchema:Es,delValuesSchema:ks,delSchema:()=>ts((()=>{Es(),ks()})),transaction:xs,startTransaction:Hs,getTransactionChanges:()=>[Me(E,((e,t)=>-1===Ie(d,t)?void 0:Me(e,((e,s)=>-1===Ie(Ie(V,t),s)?void 0:Me(e,(([,e])=>e),((e,t)=>wt(t)))),ge)),ge),Me(x,(([,e])=>e),((e,t)=>wt(t)))],getTransactionLog:()=>[!Ce(E),!Ce(x),ke(E,Ct,wt),ke(J),Me(x,Ct,wt),Me(Q),Me(d),Ee(V),ke(M),Me(k)],finishTransaction:Ds,forEachTable:e=>Te(Y,((t,s)=>e(s,(e=>Te(t,((t,s)=>e(s,(e=>Re(t,e))))))))),forEachTableCell:(e,t)=>Re(Ie(U,m(e)),t),forEachRow:(e,t)=>Te(Ie(Y,m(e)),((e,s)=>t(s,(t=>Re(e,t))))),forEachCell:(e,t,s)=>Re(Ie(Ie(Y,m(e)),m(t)),s),forEachValue:e=>Re(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);j(r,l)||(l=r,o(As,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),As),delListener:e=>(at(e),As),getListenerStats:()=>({}),createStore:vt,addListener:st,callListeners:nt,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+v]:[1,re,[ns]],[g+f+y]:[2,le,[ns,as],e=>[Ls(...e)]],[p]:[1,de,[ns]],[T]:[1,he,[ns]],[g+w]:[2,Ae,[ns,rs],e=>[Cs(...e)]],[w]:[2,Oe,[ns,rs]],[v]:[2,Pe,[ns,rs]],[g+y]:[3,We,[ns,rs,is],e=>[ws(...e)]],[y]:[3,je,[ns,rs,is],e=>ft(cs(...e))],InvalidCell:[3,$e],[g+R]:[0,Ke,[],()=>[ps()]],[R]:[0,Ue],[S]:[0,Xe],[g+I]:[1,Ye,[us],e=>[Ts(...e)]],[I]:[1,Ze,[us],e=>ft(gs(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{As[u+a+c]=(...a)=>st(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,n)})),oe(As)},It=2**36,Rt=2**30,St=2**24,mt=2**18,Vt=4096,Mt=64,Et=e=>String.fromCharCode(48+(63&e)),kt=(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},Ht=(e="")=>[e,[dt(e),dt(e)],0];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||H(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ge(e)||!ge(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ge(e)||!ge(t)])(r,e),T=async e=>(2!=h&&(h=1,await b.schedule((async()=>{await e(),h=0}))),b),b={load:async(s,n)=>await T((async()=>{try{const s=await t();(L&&et(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(b.stopAutoLoad(),await b.load(s,a),f=1,g=n((async(s,n)=>{if(n){const t=n();await T((async()=>(L&&et(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await T((async()=>{try{const n=s?.()??await t();(L&&et(n)?e.setMergeableContent:e.setContent)(n)}catch(e){o?.(e)}}))})),b),stopAutoLoad:()=>(f&&(a(g),g=void 0,f=0),b),save:async e=>(1!=h&&(h=2,await b.schedule((async()=>{try{await s(C,e)}catch(e){o?.(e)}h=0}))),b),startAutoSave:async()=>(await b.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const e=w();p(e)&&b.save((()=>e))})),b),stopAutoSave:()=>(D(d,e.delListener),d=void 0,b),schedule:async(...e)=>(X(Ie(Ze,c),...e),await(async()=>{if(!Ie(Ye,c)){for(Se(Ye,c,1);!H(u=Z(Ie(Ze,c)));)try{await u()}catch(e){o?.(e)}Se(Ye,c,0)}})(),b),getStore:()=>e,destroy:()=>b.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(b[l]=()=>i),oe(b)},e.createIndexes=Ge,e.createMergeableStore=e=>{let t,n,a=1,o=Ht();const[r,l]=(e=>{let t=0,s=-1;const n=at(e),a=e=>{const n=t,[a,o]=H(e)?[0,0]:[kt(r=e,0)*It+kt(r,1)*Rt+kt(r,2)*St+kt(r,3)*mt+kt(r,4)*Vt+kt(r,5)*Mt+kt(r,6),kt(r,7)*mt+kt(r,8)*Vt+kt(r,9)*Mt+kt(r,10),kt(r,11)*St+kt(r,12)*mt+kt(r,13)*Vt+kt(r,14)*Mt+kt(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,Et((e=t)/It)+Et(e/Rt)+Et(e/St)+Et(e/mt)+Et(e/Vt)+Et(e/Mt)+Et(e)+Et(o/mt)+Et(o/Vt)+Et(o/Mt)+Et(o)+Et(r/St)+Et(r/mt)+Et(r/Vt)+Et(r/Mt)+Et(r);var e,o,r},a]})(e),i=vt(),c=e=>{const t=a;a=0,e(),a=t},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?at(f):0)^at(r):0);de(l,(([n,a,o],r)=>{const l=me(L,r,dt),[i,c,d]=l;let g=t?o:d^(n>i?(i?at(i):0)^at(n):0);de(a,((e,n)=>{const[a,o]=u(e,me(c,n,dt),he(he(s,r,le),n,le),t);g^=t?0:(a?lt(n,a):0)^lt(n,o)})),it(l,g,n),e^=t?0:(d?lt(r,d):0)^lt(r,l[2])})),it(g,e,r)}return u(c,h,n,t),it(o,t?d:g[2]^h[2],a),[s,n]},u=(e,t,s,n)=>{const[a,o,r]=e,[l,i,c]=t;if(a){let e=n?r:c^(a>l?(l?at(l):0)^at(a):0);de(o,(([t,a,o],r)=>{const l=me(i,r,ut),[c,,d]=l;t>c&&(it(l,n?o:at(pt(a??null)+":"+t),t),l[1]=a,s[r]=a,e^=n?0:lt(r,d)^lt(r,l[2]))})),it(t,e,a)}return[c,t[2]]},g=()=>gt(o,(([e,t])=>[ht(e,(e=>ht(e,(e=>ht(e))))),ht(t)])),h=()=>{if(H(n)){const[,,e,,n]=i.getTransactionLog(),a=ge(e)&&ge(n)?s:t??(t=r()),o=rt(a,[ct(ge(e)?s:a),ct(ge(n)?s:a)]),[[,l],[,c]]=o[1];return ue(e,((e,t)=>{const[,s]=l[t]=ct(a);ue(e,((e,t)=>{const[,n]=s[t]=ct(a);ue(e,(([,e],t)=>n[t]=rt(a,e)))}))})),ue(n,(([,e],t)=>c[t]=rt(a,e))),o}return n},f=e=>(l(e[0]),c((()=>i.applyChanges(d(e)))),L),L={getMergeableContent:g,setMergeableContent:e=>(c((()=>i.transaction((()=>{i.delTables().delValues(),o=Ht()})))),l(e[0]),c((()=>i.applyChanges(d(e,1)))),L),getTransactionMergeableChanges:h,applyMergeableChanges:f,merge:e=>{const t=g(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)},getContentHash:()=>o[2],getTablesHash:()=>o[1][0][2],getTableHash:e=>Ie(o[1][0][1],e)?.[2]??0,getRowHash:(e,t)=>Ie(Ie(o[1][0][1],e)?.[1],t)?.[2]??0,getCellHash:(e,t,s)=>Ie(Ie(Ie(o[1][0][1],e)?.[1],t)?.[1],s)?.[2]??0,getValuesHash:()=>o[1][1][2],getValueHash:e=>Ie(o[1][1][1],e)?.[2]??0};return i.setInternalListeners((()=>{a&&(n=h(),d(n))}),(()=>t=n=void 0)),ue(i,((e,t)=>L[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),L):V(t,"add")&&M(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)),oe(L)},e.createMetrics=Xe,e.createQueries=tt,e.createRelationships=st,e.createStore=vt,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,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 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