tinybase 5.0.0-beta.3 → 5.0.0-beta.5

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 (336) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/cjs/checkpoints.cjs +1 -1
  4. package/lib/cjs/checkpoints.cjs.gz +0 -0
  5. package/lib/cjs/indexes.cjs +1 -1
  6. package/lib/cjs/indexes.cjs.gz +0 -0
  7. package/lib/cjs/mergeable-store.cjs +1 -1
  8. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  9. package/lib/cjs/metrics.cjs +1 -1
  10. package/lib/cjs/metrics.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  12. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  14. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  16. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  18. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  20. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  22. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-file.cjs +1 -1
  24. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  26. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-libsql.cjs +1 -0
  28. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  30. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  32. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  33. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  34. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  35. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  36. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  37. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  38. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  39. package/lib/cjs/persisters.cjs +1 -1
  40. package/lib/cjs/persisters.cjs.gz +0 -0
  41. package/lib/cjs/queries.cjs +1 -1
  42. package/lib/cjs/queries.cjs.gz +0 -0
  43. package/lib/cjs/relationships.cjs +1 -1
  44. package/lib/cjs/relationships.cjs.gz +0 -0
  45. package/lib/cjs/store.cjs +1 -1
  46. package/lib/cjs/store.cjs.gz +0 -0
  47. package/lib/cjs/tinybase.cjs +1 -1
  48. package/lib/cjs/tinybase.cjs.gz +0 -0
  49. package/lib/cjs/tools.cjs +1 -1
  50. package/lib/cjs/tools.cjs.gz +0 -0
  51. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  52. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  53. package/lib/cjs-es6/checkpoints.cjs +1 -1
  54. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  55. package/lib/cjs-es6/indexes.cjs +1 -1
  56. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  57. package/lib/cjs-es6/mergeable-store.cjs +1 -1
  58. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  59. package/lib/cjs-es6/metrics.cjs +1 -1
  60. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -0
  78. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  82. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  83. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  84. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  85. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  86. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  87. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  88. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  89. package/lib/cjs-es6/persisters.cjs +1 -1
  90. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  91. package/lib/cjs-es6/queries.cjs +1 -1
  92. package/lib/cjs-es6/queries.cjs.gz +0 -0
  93. package/lib/cjs-es6/relationships.cjs +1 -1
  94. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  95. package/lib/cjs-es6/store.cjs +1 -1
  96. package/lib/cjs-es6/store.cjs.gz +0 -0
  97. package/lib/cjs-es6/tinybase.cjs +1 -1
  98. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  99. package/lib/cjs-es6/tools.cjs +1 -1
  100. package/lib/cjs-es6/tools.cjs.gz +0 -0
  101. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  102. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  103. package/lib/debug/checkpoints.js +3 -1
  104. package/lib/debug/indexes.js +3 -1
  105. package/lib/debug/mergeable-store.js +247 -139
  106. package/lib/debug/metrics.js +3 -1
  107. package/lib/debug/persisters/persister-automerge.js +36 -12
  108. package/lib/debug/persisters/persister-browser.js +37 -13
  109. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +36 -12
  110. package/lib/debug/persisters/persister-electric-sql.js +36 -12
  111. package/lib/debug/persisters/persister-expo-sqlite-next.js +36 -12
  112. package/lib/debug/persisters/persister-expo-sqlite.js +36 -12
  113. package/lib/debug/persisters/persister-file.js +37 -13
  114. package/lib/debug/persisters/persister-indexed-db.js +36 -12
  115. package/lib/debug/persisters/persister-libsql.js +898 -0
  116. package/lib/debug/persisters/persister-partykit-client.js +36 -12
  117. package/lib/debug/persisters/persister-remote.js +36 -12
  118. package/lib/debug/persisters/persister-sqlite-wasm.js +36 -12
  119. package/lib/debug/persisters/persister-sqlite3.js +36 -12
  120. package/lib/debug/persisters/persister-yjs.js +36 -12
  121. package/lib/debug/persisters.js +36 -12
  122. package/lib/debug/queries.js +7 -4
  123. package/lib/debug/relationships.js +3 -1
  124. package/lib/debug/store.js +21 -22
  125. package/lib/debug/tinybase.js +279 -150
  126. package/lib/debug/tools.js +7 -4
  127. package/lib/debug/ui-react-dom.js +55 -34
  128. package/lib/es6/checkpoints.js +1 -1
  129. package/lib/es6/checkpoints.js.gz +0 -0
  130. package/lib/es6/indexes.js +1 -1
  131. package/lib/es6/indexes.js.gz +0 -0
  132. package/lib/es6/mergeable-store.js +1 -1
  133. package/lib/es6/mergeable-store.js.gz +0 -0
  134. package/lib/es6/metrics.js +1 -1
  135. package/lib/es6/metrics.js.gz +0 -0
  136. package/lib/es6/persisters/persister-automerge.js +1 -1
  137. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  138. package/lib/es6/persisters/persister-browser.js +1 -1
  139. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  140. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  141. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  142. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  143. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  144. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  145. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  146. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  147. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  148. package/lib/es6/persisters/persister-file.js +1 -1
  149. package/lib/es6/persisters/persister-file.js.gz +0 -0
  150. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  151. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  152. package/lib/es6/persisters/persister-libsql.js +1 -0
  153. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  154. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  155. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  156. package/lib/es6/persisters/persister-remote.js +1 -1
  157. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  158. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  159. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  160. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  161. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  162. package/lib/es6/persisters/persister-yjs.js +1 -1
  163. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  164. package/lib/es6/persisters.js +1 -1
  165. package/lib/es6/persisters.js.gz +0 -0
  166. package/lib/es6/queries.js +1 -1
  167. package/lib/es6/queries.js.gz +0 -0
  168. package/lib/es6/relationships.js +1 -1
  169. package/lib/es6/relationships.js.gz +0 -0
  170. package/lib/es6/store.js +1 -1
  171. package/lib/es6/store.js.gz +0 -0
  172. package/lib/es6/tinybase.js +1 -1
  173. package/lib/es6/tinybase.js.gz +0 -0
  174. package/lib/es6/tools.js +1 -1
  175. package/lib/es6/tools.js.gz +0 -0
  176. package/lib/es6/ui-react-dom-debug.js +1 -1
  177. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  178. package/lib/indexes.js +1 -1
  179. package/lib/indexes.js.gz +0 -0
  180. package/lib/mergeable-store.js +1 -1
  181. package/lib/mergeable-store.js.gz +0 -0
  182. package/lib/metrics.js +1 -1
  183. package/lib/metrics.js.gz +0 -0
  184. package/lib/persisters/persister-automerge.js +1 -1
  185. package/lib/persisters/persister-automerge.js.gz +0 -0
  186. package/lib/persisters/persister-browser.js +1 -1
  187. package/lib/persisters/persister-browser.js.gz +0 -0
  188. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  189. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  190. package/lib/persisters/persister-electric-sql.js +1 -1
  191. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  192. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  193. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  194. package/lib/persisters/persister-expo-sqlite.js +1 -1
  195. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  196. package/lib/persisters/persister-file.js +1 -1
  197. package/lib/persisters/persister-file.js.gz +0 -0
  198. package/lib/persisters/persister-indexed-db.js +1 -1
  199. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  200. package/lib/persisters/persister-libsql.js +1 -0
  201. package/lib/persisters/persister-libsql.js.gz +0 -0
  202. package/lib/persisters/persister-partykit-client.js +1 -1
  203. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  204. package/lib/persisters/persister-remote.js +1 -1
  205. package/lib/persisters/persister-remote.js.gz +0 -0
  206. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  207. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  208. package/lib/persisters/persister-sqlite3.js +1 -1
  209. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  210. package/lib/persisters/persister-yjs.js +1 -1
  211. package/lib/persisters/persister-yjs.js.gz +0 -0
  212. package/lib/persisters.js +1 -1
  213. package/lib/persisters.js.gz +0 -0
  214. package/lib/queries.js +1 -1
  215. package/lib/queries.js.gz +0 -0
  216. package/lib/relationships.js +1 -1
  217. package/lib/relationships.js.gz +0 -0
  218. package/lib/store.js +1 -1
  219. package/lib/store.js.gz +0 -0
  220. package/lib/tinybase.js +1 -1
  221. package/lib/tinybase.js.gz +0 -0
  222. package/lib/tools.js +1 -1
  223. package/lib/tools.js.gz +0 -0
  224. package/lib/types/mergeable-store.d.ts +78 -11
  225. package/lib/types/persisters/persister-browser.d.ts +2 -2
  226. package/lib/types/persisters/persister-file.d.ts +1 -1
  227. package/lib/types/persisters/persister-libsql.d.ts +139 -0
  228. package/lib/types/persisters.d.ts +19 -7
  229. package/lib/types/with-schemas/mergeable-store.d.ts +314 -31
  230. package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -2
  231. package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -1
  232. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +152 -0
  233. package/lib/types/with-schemas/persisters.d.ts +14 -6
  234. package/lib/types/with-schemas/store.d.ts +37 -87
  235. package/lib/umd/checkpoints.js +1 -1
  236. package/lib/umd/checkpoints.js.gz +0 -0
  237. package/lib/umd/indexes.js +1 -1
  238. package/lib/umd/indexes.js.gz +0 -0
  239. package/lib/umd/mergeable-store.js +1 -1
  240. package/lib/umd/mergeable-store.js.gz +0 -0
  241. package/lib/umd/metrics.js +1 -1
  242. package/lib/umd/metrics.js.gz +0 -0
  243. package/lib/umd/persisters/persister-automerge.js +1 -1
  244. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  245. package/lib/umd/persisters/persister-browser.js +1 -1
  246. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  247. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  248. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  249. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  250. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  251. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  252. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  253. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  254. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  255. package/lib/umd/persisters/persister-file.js +1 -1
  256. package/lib/umd/persisters/persister-file.js.gz +0 -0
  257. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  258. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  259. package/lib/umd/persisters/persister-libsql.js +1 -0
  260. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  261. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  262. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  263. package/lib/umd/persisters/persister-remote.js +1 -1
  264. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  265. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  266. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  267. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  268. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  269. package/lib/umd/persisters/persister-yjs.js +1 -1
  270. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  271. package/lib/umd/persisters.js +1 -1
  272. package/lib/umd/persisters.js.gz +0 -0
  273. package/lib/umd/queries.js +1 -1
  274. package/lib/umd/queries.js.gz +0 -0
  275. package/lib/umd/relationships.js +1 -1
  276. package/lib/umd/relationships.js.gz +0 -0
  277. package/lib/umd/store.js +1 -1
  278. package/lib/umd/store.js.gz +0 -0
  279. package/lib/umd/tinybase.js +1 -1
  280. package/lib/umd/tinybase.js.gz +0 -0
  281. package/lib/umd/tools.js +1 -1
  282. package/lib/umd/tools.js.gz +0 -0
  283. package/lib/umd/ui-react-dom-debug.js +1 -1
  284. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  285. package/lib/umd-es6/checkpoints.js +1 -1
  286. package/lib/umd-es6/checkpoints.js.gz +0 -0
  287. package/lib/umd-es6/indexes.js +1 -1
  288. package/lib/umd-es6/indexes.js.gz +0 -0
  289. package/lib/umd-es6/mergeable-store.js +1 -1
  290. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  291. package/lib/umd-es6/metrics.js +1 -1
  292. package/lib/umd-es6/metrics.js.gz +0 -0
  293. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  294. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  295. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  296. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  297. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  298. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  299. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  300. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  301. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  302. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  303. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  304. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  305. package/lib/umd-es6/persisters/persister-file.js +1 -1
  306. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  307. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  308. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  309. package/lib/umd-es6/persisters/persister-libsql.js +1 -0
  310. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  311. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  312. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  313. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  314. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  315. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  316. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  317. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  318. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  319. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  320. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  321. package/lib/umd-es6/persisters.js +1 -1
  322. package/lib/umd-es6/persisters.js.gz +0 -0
  323. package/lib/umd-es6/queries.js +1 -1
  324. package/lib/umd-es6/queries.js.gz +0 -0
  325. package/lib/umd-es6/relationships.js +1 -1
  326. package/lib/umd-es6/relationships.js.gz +0 -0
  327. package/lib/umd-es6/store.js +1 -1
  328. package/lib/umd-es6/store.js.gz +0 -0
  329. package/lib/umd-es6/tinybase.js +1 -1
  330. package/lib/umd-es6/tinybase.js.gz +0 -0
  331. package/lib/umd-es6/tools.js +1 -1
  332. package/lib/umd-es6/tools.js.gz +0 -0
  333. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  334. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  335. package/package.json +35 -30
  336. package/readme.md +2 -2
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,J=e=>t(e)==o,I=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),P=(e,...t)=>e.push(...t),x=Object,z=e=>x.getPrototypeOf(e),j=x.entries,k=x.keys,A=x.isFrozen,M=x.freeze,N=e=>!w(e)&&L(z(e),(e=>e==x.prototype||w(z(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)=>(q(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&&P(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?x.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,a=!1,o=!1,d=!1,m=!1,x=0;const z=X(),j=X(),k=X(),A=X(),N=X(),fe=X(),Re=X(),Je=X(),Ie=X(),Ee=X(),Fe=X(),Oe=X(),Pe=X(),xe=X(),ze=de(),je=X(),ke=X(),Ae=X(),Me=X(),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=Te(),ot=Te(),rt=X(),it=Te(),[ct,dt,ut,ft]=(e=>{let t;const[n,a]=he(),l=X();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Ps;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)?P(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()}))]})(),ht=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))},gt=(t,s)=>(!e||q(Fe,s)||$t(s))&&me(t,((e,t)=>Tt(s,t,e)),(()=>$t(s))),Tt=(e,t,s,n)=>me(n?s:pt(s,e,t),((n,a)=>L(bt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>$t(e,t))),bt=(t,s,n,a)=>e?L(Z(Z(Fe,t),n),(e=>Ve(a)!=e[r]?$t(t,s,n,a,e[i]):a),(()=>$t(t,s,n,a))):w(Ve(a))?$t(t,s,n,a):a,St=(e,t)=>me(t?e:vt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),Vt=(e,s)=>t?L(Z(Pe,e),(t=>Ve(s)!=t[r]?qt(e,s,t[i]):s),(()=>qt(e,s))):w(Ve(s))?qt(e,s):s,pt=(e,t,s)=>(L(Z(Oe,t),(([n,a])=>{Q(n,((t,s)=>{B(e,s)||(e[s]=t)})),Q(a,(n=>{B(e,n)||$t(t,s,n)}))})),e),vt=e=>(t&&(Q(xe,((t,s)=>{B(e,s)||(e[s]=t)})),Q(ze,(t=>{B(e,t)||qt(t)}))),e),yt=e=>se(Fe,e,((e,t,s)=>{const n=X(),a=de();se(te(Fe,t,X),s,((e,t,s)=>{ee(e,t,s),L(s[i],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Oe,t,[n,a])}),((e,t)=>{ee(Fe,t),ee(Oe,t)})),Ct=e=>se(Pe,e,((e,t,s)=>{ee(Pe,t,s),L(s[i],(e=>ee(xe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Pe,t),ee(xe,t),U(ze,t)})),mt=e=>W(e)?ms():Vs(e),wt=e=>se(Ae,e,((e,t,s)=>Lt(t,s)),((e,t)=>zt(t))),Lt=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(je,e,he()),ee(ke,e,X()),X()))),t,((t,s,n)=>Rt(e,t,s,n)),((t,s)=>jt(e,t,s))),Rt=(e,t,s,n,a)=>se(te(t,s,(()=>(Nt(e,s,1),X()))),n,((t,n,a)=>Jt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Jt=(e,t,s,n,a)=>{q(s,n)||Bt(e,t,n,1);const l=Z(s,n);a!==l&&(Dt(e,t,n,l,a),ee(s,n,a))},It=(e,t,s,n,a)=>L(Z(t,s),(t=>Jt(e,s,t,n,a)),(()=>Rt(e,t,s,pt({[n]:a},e,s)))),Et=e=>W(e)?Rs():ps(e),Ft=e=>se(Me,e,((e,t,s)=>Ot(t,s)),((e,t)=>At(t))),Ot=(e,t)=>{q(Me,e)||Ht(e,1);const s=Z(Me,e);t!==s&&(Wt(e,s,t),ee(Me,e,t))},Pt=(e,t)=>{const[s]=Z(je,e),n=s(t);return q(Z(Ae,e),n)?Pt(e,t):n},xt=e=>Z(Ae,e)??Lt(e,{}),zt=e=>Lt(e,{}),jt=(e,t,s)=>{const[,n]=Z(je,e);n(s),Rt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Z(Z(Oe,e)?.[0],a);if(!w(o)&&!l)return Jt(e,s,n,a,o);const r=t=>{Dt(e,s,t,Z(n,t)),Bt(e,s,t,-1),ee(n,t)};w(o)?r(a):_(n,r),G(n)&&(Nt(e,s,-1),G(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(je,e),ee(ke,e)))},At=e=>{const t=Z(xe,e);if(!w(t))return Ot(e,t);Wt(e,Z(Me,e)),Ht(e,-1),ee(Me,e)},Mt=(e,t)=>we(z,e,t),Nt=(e,t,s)=>we(te(A,e,X),t,s)&&ee(k,e,te(k,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=Z(ke,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&we(te(j,e,X),s,n),ee(a,s,l!=-n?l+n:null),we(te(te(N,e,X),t,X),s,n)},Dt=(e,t,s,n,a)=>te(te(te(fe,e,X),t,X),s,(()=>[n,0]))[1]=a,Ht=(e,t)=>we(Re,e,t),Wt=(e,t,s)=>te(Je,e,(()=>[t,0]))[1]=s,$t=(e,t,s,n,a)=>(P(te(te(te(Ie,e,X),t,X),s,(()=>[])),n),a),qt=(e,t,s)=>(P(te(Ee,e,(()=>[])),t),s),Gt=(e,t,s)=>L(Z(Z(Z(fe,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(rs(e,t,s))])),Kt=e=>L(Z(Je,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ds(e))])),Qt=e=>G(Ie)||G(et[e])?0:Q(e?ie(Ie):Ie,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>dt(et[e],[s,n,a],t))))))),Ut=e=>G(Ee)||G(tt[e])?0:Q(e?oe(Ee):Ee,((t,s)=>dt(tt[e],[s],t))),Xt=(e,t,s,n)=>{if(!G(e))return dt(t,n,(()=>ne(e))),_(e,((e,t)=>dt(s,[...n??[],e],1==t))),1},Yt=e=>{const t=us();t!=d&&dt(Ne[e],void 0,t);const s=G(Qe[e]),n=G(Ye[e])&&G(Ze[e])&&G(Ke[e])&&G(Ue[e])&&G($e[e])&&G(qe[e])&&G(Ge[e])&&s&&G(De[e])&&G(He[e]),a=G(_e[e])&&G(Xe[e])&&G(We[e])&&G(Be[e]);if(!n||!a){const t=e?[oe(z),re(j),oe(k),re(A),ie(N),ie(fe)]:[z,j,k,A,N,fe];if(!n){Xt(t[0],De[e],He[e]),Q(t[1],((t,s)=>Xt(t,$e[e],qe[e],[s]))),Q(t[2],((t,s)=>{0!=t&&dt(Ge[e],[s],ns(s))}));const n=de();Q(t[3],((t,a)=>{Xt(t,Ke[e],Ue[e],[a])&&!s&&(dt(Qe[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=>dt(Qe[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Xt(t,Ye[e],Ze[e],[s,n])))))}if(!a){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],i)=>{r!==t&&(dt(_e[e],[n,l,i],r,t,Gt),s=a=o=1)})),o&&dt(Xe[e],[n,l],Gt)})),a&&dt(We[e],[n],Gt)})),s&&dt(Be[e],void 0,Gt)}}},Zt=e=>{const t=bs();t!=m&&dt(st[e],void 0,t);const s=G(at[e])&&G(lt[e]),n=G(ot[e])&&G(nt[e]);if(!s||!n){const t=e?[oe(Re),oe(Je)]:[Re,Je];if(s||Xt(t[0],at[e],lt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(dt(ot[e],[a],n,t,Kt),s=1)})),s&&dt(nt[e],void 0,Kt)}}},_t=(e,...t)=>(Es((()=>e(...O(t,C)))),Ps),es=()=>le(Ae),ts=()=>Y(Ae),ss=e=>Y(Z(ke,C(e))),ns=e=>$(Z(Ae,C(e))),as=e=>Y(Z(Ae,C(e))),ls=(e,t,s,n=0,a)=>{return O(I((o=Z(Ae,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},os=(e,t)=>Y(Z(Z(Ae,C(e)),C(t))),rs=(e,t,s)=>Z(Z(Z(Ae,C(e)),C(t)),C(s)),is=()=>ne(Me),cs=()=>Y(Me),ds=e=>Z(Me,C(e)),us=()=>!G(Ae),fs=e=>q(Ae,C(e)),hs=(e,t)=>q(Z(ke,C(e)),C(t)),gs=(e,t)=>q(Z(Ae,C(e)),C(t)),Ts=(e,t,s)=>q(Z(Z(Ae,C(e)),C(t)),C(s)),bs=()=>!G(Me),Ss=e=>q(Me,C(e)),Vs=e=>_t((()=>(e=>me(e,gt,$t))(e)?wt(e):0)),ps=e=>_t((()=>St(e)?Ft(e):0)),vs=e=>{try{mt(Ce(e))}catch{}return Ps},ys=t=>_t((()=>{if((e=me(t,(e=>me(e,ht))))&&(yt(t),!G(Ae))){const e=es();ms(),Vs(e)}})),Cs=e=>_t((()=>{if(t=(e=>me(e,ht))(e)){const s=is();Is(),Rs(),t=!0,Ct(e),ps(s)}})),ms=()=>_t((()=>wt({}))),ws=e=>_t((e=>q(Ae,e)?zt(e):0),e),Ls=(e,t)=>_t(((e,t)=>L(Z(Ae,e),(s=>q(s,t)?jt(e,s,t):0))),e,t),Rs=()=>_t((()=>Ft({}))),Js=()=>_t((()=>{yt({}),e=!1})),Is=()=>_t((()=>{Ct({}),t=!1})),Es=(e,t)=>{if(-1!=x){Fs();const s=e();return Os(t),s}},Fs=()=>(-1!=x&&x++,1==x&&dt(rt,void 0),Ps),Os=e=>(x>0&&(x--,0==x&&(a=!G(fe),o=!G(Je),x=1,Qt(1),a&&Yt(1),Ut(1),o&&Zt(1),e?.(Ps)&&(Q(fe,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>pe(Ps,t,s,n,e))))))),Q(Je,(([e],t)=>ve(Ps,t,e))),a=o=!1),dt(it[0],void 0),x=-1,Qt(0),a&&Yt(0),Ut(0),o&&Zt(0),n?.(Ps),dt(it[1],void 0),x=0,a=o=!1,d=us(),m=bs(),F([z,j,k,A,N,fe,Ie,Re,Je,Ee],K))),Ps),Ps={getContent:()=>[es(),is()],getTables:es,getTableIds:ts,getTable:e=>ae(Z(Ae,C(e))),getTableCellIds:ss,getRowCount:ns,getRowIds:as,getSortedRowIds:ls,getRow:(e,t)=>ne(Z(Z(Ae,C(e)),C(t))),getCellIds:os,getCell:rs,getValues:is,getValueIds:cs,getValue:ds,hasTables:us,hasTable:fs,hasTableCell:hs,hasRow:gs,hasCell:Ts,hasValues:bs,hasValue:Ss,getTablesJson:()=>ye(Ae),getValuesJson:()=>ye(Me),getJson:()=>ye([Ae,Me]),getTablesSchemaJson:()=>ye(Fe),getValuesSchemaJson:()=>ye(Pe),getSchemaJson:()=>ye([Fe,Pe]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>_t((()=>{(W(e)?ms:Vs)(e),(W(t)?Rs:ps)(t)})),setTables:Vs,setTable:(e,t)=>_t((e=>gt(t,e)?Lt(e,t):0),e),setRow:(e,t,s)=>_t(((e,t)=>Tt(e,t,s)?Rt(e,xt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Es((()=>{let n;return Tt(e,n,t)&&(e=C(e),Rt(e,xt(e),n=Pt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>_t(((e,t)=>{if(Tt(e,t,s,1)){const n=xt(e);H(s,((s,a)=>It(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>_t(((e,t,s)=>L(bt(e,t,s,J(n)?n(rs(e,t,s)):n),(n=>It(e,xt(e),t,s,n)))),e,t,s),setValues:ps,setPartialValues:e=>_t((()=>St(e,1)?H(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>_t((e=>L(Vt(e,J(t)?t(ds(e)):t),(t=>Ot(e,t)))),e),applyChanges:e=>_t((()=>{H(e[0],((e,t)=>w(e)?ws(t):H(e,((e,s)=>w(e)?Ls(t,s):H(e,((e,n)=>pe(Ps,t,s,n,e))))))),H(e[1],((e,t)=>ve(Ps,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{Et(Ce(e))}catch{}return Ps},setJson:e=>_t((()=>{try{const[t,s]=Ce(e);mt(t),Et(s)}catch{vs(e)}})),setTablesSchema:ys,setValuesSchema:Cs,setSchema:(e,t)=>_t((()=>{ys(e),Cs(t)})),delTables:ms,delTable:ws,delRow:Ls,delCell:(e,t,s,n)=>_t(((e,t,s)=>L(Z(Ae,e),(a=>L(Z(a,t),(l=>q(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:Rs,delValue:e=>_t((e=>q(Me,e)?At(e):0),e),delTablesSchema:Js,delValuesSchema:Is,delSchema:()=>_t((()=>{Js(),Is()})),transaction:Es,startTransaction:Fs,getTransactionChanges:()=>[ne(fe,((e,t)=>-1===Z(z,t)?void 0:ne(e,((e,s)=>-1===Z(Z(A,t),s)?void 0:ne(e,(([,e])=>e),((e,t)=>Se(t)))),W)),W),ne(Je,(([,e])=>e),((e,t)=>Se(t)))],getTransactionLog:()=>[a,o,le(fe,be,Se),le(Ie),ne(Je,be,Se),ne(Ee),ne(z),ae(A),le(N),ne(Re)],finishTransaction:Os,forEachTable:e=>Q(Ae,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(ke,C(e)),t),forEachRow:(e,t)=>Q(Z(Ae,C(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(Ae,C(e)),C(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ls(e,t,s,n,a);return ct((()=>{const o=ls(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(Ps,e,t,s,n,a,r))}),Qe[o?1:0],[e,t],[ts])},addStartTransactionListener:e=>ct(e,rt),addWillFinishTransactionListener:e=>ct(e,it[0]),addDidFinishTransactionListener:e=>ct(e,it[1]),callListener:e=>(ft(e),Ps),delListener:e=>(ut(e),Ps),getListenerStats:()=>({}),createStore:Le,addListener:ct,callListeners:dt,addPostTransactionListener:e=>{n=e}};return H({[c+f]:[0,Ne,[],()=>[us()]],[f]:[0,Be],[h]:[0,De],[c+u]:[1,He,[ts],e=>[fs(...e)]],[u]:[1,We,[ts]],[u+V]:[1,$e,[ts]],[c+u+S]:[2,qe,[ts,ss],e=>[hs(...e)]],[T]:[1,Ge,[ts]],[b]:[1,Ke,[ts]],[c+g]:[2,Ue,[ts,as],e=>[gs(...e)]],[g]:[2,Xe,[ts,as]],[V]:[2,Ye,[ts,as]],[c+S]:[3,Ze,[ts,as,os],e=>[Ts(...e)]],[S]:[3,_e,[ts,as,os],e=>ge(rs(...e))],InvalidCell:[3,et],[c+v]:[0,st,[],()=>[bs()]],[v]:[0,nt],[y]:[0,at],[c+p]:[1,lt,[cs],e=>[Ss(...e)]],[p]:[1,ot,[cs],e=>ge(ds(e[0]))],InvalidValue:[1,tt]},(([e,t,s,n],a)=>{Ps["add"+a+"Listener"]=(...a)=>ct(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),M(Ps)};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.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={});
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",h="Has",g="Ids",f="Table",L=f+"s",w=f+g,C="Row",p=C+"Count",y=C+g,T="Sorted"+C+g,v="Cell",S=v+g,I="Value",R=I+"s",b=I+g,m=e=>s+e,V=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),E=(e,t=0)=>e.charCodeAt(t),k=Math.max,x=Math.min,D=isFinite,A=e=>null==e,J=(e,t,s)=>A(e)?s?.():t(e),F=e=>e==n||e==a,Q=e=>t(e)==n,H=e=>t(e)==r,P=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),B=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),_=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),$=(e,t)=>e.sort(t),q=(e,t)=>e.forEach(t),G=(e,t)=>e.map(t),K=e=>X(e,((e,t)=>e+t),0),U=e=>0==N(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.keys,oe=te.isFrozen,re=te.freeze,le=e=>!A(e)&&J(se(e),(e=>e==te.prototype||A(se(e))),(()=>!0)),ie=(e,t)=>t in e,ce=(e,t)=>(delete e[t],e),de=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),ue=(e,t)=>G(ne(e),(([e,s])=>t(s,e))),he=e=>le(e)&&0==(e=>N(ae(e)))(e),ge=e=>e?.size??0,fe=(e,t)=>e?.has(t)??!1,Le=e=>A(e)||0==ge(e),we=e=>[...e?.values()??[]],Ce=e=>e.clear(),pe=(e,t)=>e?.forEach(t),ye=(e,t)=>e?.delete(t),Te=e=>new Map(e),ve=e=>[...e?.keys()??[]],Se=(e,t)=>e?.get(t),Ie=(e,t)=>pe(e,((e,s)=>t(s,e))),Re=(e,t,s)=>A(s)?(ye(e,t),e):e?.set(t,s),be=(e,t,s)=>(fe(e,t)||Re(e,t,s()),Se(e,t)),me=(e,t,s,n=Re)=>(ue(t,((t,n)=>s(e,n,t))),Ie(e,(s=>ie(t,s)?0:n(e,s))),e),Ve=(e,t,s)=>{const n={};return pe(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Me=(e,t,s)=>Ve(e,(e=>Ve(e,t,s)),he),Ee=(e,t,s)=>Ve(e,(e=>Me(e,t,s)),he),ke=(e,t)=>{const s=Te();return pe(e,((e,n)=>s.set(n,t?.(e)??e))),s},xe=e=>ke(e,ke),De=e=>ke(e,xe),Ae=(e,t,s,n,a=0)=>J((s?be:Se)(e,t[a],a>N(t)-2?s:Te),(o=>{if(a>N(t)-2)return n?.(o)&&Re(e,t[a]),o;const r=Ae(o,t,s,n,a+1);return Le(o)&&Re(e,t[a]),r})),Je=e=>{const s=t(e);return F(s)||s==o&&D(e)?s:void 0},Fe=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Qe=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),He=e=>new Set(P(e)||A(e)?e:[e]),Pe=(e,t)=>e?.add(t),ze=(e,t,s,n,a)=>{const o=e.hasRow,r=Te(),l=Te(),i=Te(),c=Te(),d=Te(),u=Te(),h=(t,s,...n)=>{const a=be(u,t,He);return q(n,(t=>Pe(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>J(Se(u,t),(n=>{q(U(s)?we(n):s,(t=>{e.delListener(t),ye(n,t)})),Le(n)&&Re(u,t)})),f=(e,s)=>{Re(r,e,s),fe(l,e)||(Re(l,e,t()),Re(c,e,Te()),Re(d,e,Te()),a(i))},L=e=>{Re(r,e),Re(l,e),Re(c,e),Re(d,e),g(e),a(i)};return[()=>e,()=>ve(r),e=>Ie(l,e),e=>fe(l,e),e=>Se(r,e),e=>Se(l,e),(e,t)=>Re(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=Te(),u=Te(),L=Se(c,t),w=Se(d,t),C=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||P(c)&&P(d)&&B(c,d)||Re(i,t,[c,d]),!A(l)){const e=Se(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&Re(u,t,s)}},p=e=>{a((()=>{pe(i,(([,e],t)=>Re(L,t,e))),pe(u,((e,t)=>Re(w,t,e)))}),i,u,L,w,e),Ce(i),Ce(u)};Ie(L,C),e.hasTable(n)&&q(e.getRowIds(n),(e=>{fe(L,e)||C(e)})),p(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>p())))},L,e=>n(e,i),()=>Ie(u,L),h,g]},Ne=(e,t)=>Q(e)?t=>t(e):e??(()=>t??s),Oe=(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}},We=/^\d+$/,je=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{We.test(t)&&N(e)<1e3&&Y(e,t)}]},Be=e=>{let t;const[n,a]=je(),o=Te();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return Re(o,d,[a,r,l,i,c]),Pe(Ae(r,l??[s],He),d),d},(e,n,...a)=>q(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?Y(n,e):null===t[s]?pe(e,(e=>a(e,s+1))):q([t[s],null],(t=>a(Se(e,t),s+1)));return a(e,0),n})(e,n),(e=>pe(e,(e=>Se(o,e)[0](t,...n??[],...a))))),e=>J(Se(o,e),(([,t,n])=>(Ae(t,n??[s],void 0,(t=>(ye(t,e),Le(t)?1:0))),Re(o,e),a(e),n))),e=>J(Se(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):A(s[l])?q(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},_e=Oe((e=>{let t,n,a,o=100,r=Te(),l=Te(),i=1;const c=Te(),d=Te(),[u,h,g]=Be((()=>F)),f=Te(),L=Te(),w=[],C=[],p=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Se(f,s);pe(n,((s,n)=>pe(s,((s,a)=>pe(s,((s,o)=>Fe(e,n,a,o,s[t]))))))),pe(a,((s,n)=>Qe(e,n,s[t])))})),i=1},y=e=>{Re(f,e),Re(L,e),h(d,[e])},T=(e,t)=>q(((e,t)=>e.splice(0,t))(e,t??N(e)),y),v=()=>T(w,N(w)-o),S=()=>J(t,(()=>{Y(w,t),v(),T(C),t=void 0,a=1})),I=()=>{t=Z(w),a=1};let R,b;const m=(e="")=>(A(t)&&(t=s+n++,Re(f,t,[r,l]),x(t,e),r=Te(),l=Te(),a=1),t),V=()=>{U(w)||(((e,...t)=>{e.unshift(...t)})(C,m()),p(0,t),t=Z(w),a=1)},M=()=>{U(C)||(Y(w,t),t=ee(C),p(1,t),a=1)},E=()=>{a&&(h(c),a=0)},k=e=>{const t=m(e);return E(),t},x=(e,t)=>(D(e)&&Se(L,e)!==t&&(Re(L,e,t),h(d,[e])),F),D=e=>fe(f,e),F={setSize:e=>(o=e,v(),F),addCheckpoint:k,setCheckpoint:x,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Ie(L,e),hasCheckpoint:D,getCheckpoint:e=>Se(L,e),goBackward:()=>(V(),E(),F),goForward:()=>(M(),E(),F),goTo:e=>{const s=W(w,e)?V:W(C,e)?M:null;for(;!A(s)&&e!=t;)s();return E(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),F),clear:()=>(T(w),T(C),A(t)||y(t),t=void 0,n=0,k(),F),clearForward:()=>(U(C)||(T(C),h(c)),F),destroy:()=>{e.delListener(R),e.delListener(b)},getListenerStats:()=>({}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){S();const e=be(r,t,Te),l=be(e,s,Te),i=be(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Le(Re(l,n))&&Le(Re(e,s))&&Le(Re(r,t))&&I(),E()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){S();const e=be(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Le(Re(l,t))&&I(),E()}}))}};return re(F.clear())}),(e=>e._registerListeners())),$e=(e,t)=>(e??0)<(t??0)?-1:1,qe=Oe((e=>{const t=Te(),n=Te(),[a,o,r]=Be((()=>y)),[l,i,c,d,u,h,g,,f,L,w,C]=ze(e,Te,(e=>A(e)?s:P(e)?G(e,m):m(e)),a,o),p=(t,s,n)=>{const a=u(t);pe(n,((t,n)=>s(n,(s=>pe(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},y={setIndexDefinition:(e,s,a,r,l,i=$e)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let L=0;const w=He(),C=He(),p=h(e);if(pe(a,(([e,t],s)=>{const n=He(e),a=He(t);pe(n,(e=>ye(a,e)?ye(n,e):0)),pe(n,(e=>{Pe(w,e),J(Se(p,e),(t=>{ye(t,s),Le(t)&&(Re(p,e),L=1)}))})),pe(a,(e=>{Pe(w,e),fe(p,e)||(Re(p,e,He()),L=1),Pe(Se(p,e),s),A(r)||Pe(C,e)}))})),s(),Le(u)||(f?Ie(p,(e=>Pe(C,e))):Ie(l,(e=>J(Se(d,e),(e=>Pe(C,e))))),pe(C,(e=>{const t=(t,s)=>i(Se(u,t),Se(u,s),e),s=[...Se(p,e)];_(s,t)||(Re(p,e,He($(s,t))),Pe(w,e))}))),(L||f)&&!A(c)){const t=[...p];_(t,c)||(g(e,Te($(t,c))),L=1)}L&&o(t,[e]),pe(w,(t=>o(n,[e,t])))}),Ne(a),J(r,Ne)),y},delIndexDefinition:e=>(L(e),y),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>fe(h(e),t),getTableId:u,getSliceIds:e=>ve(h(e)),getSliceRowIds:(e,t)=>we(Se(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),y),destroy:C,getListenerStats:()=>({})};return re(y)})),Ge=Te([["avg",[(e,t)=>K(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>k(...e),(e,t)=>k(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:k(t,e)]],["min",[e=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["sum",[e=>K(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ke=(e,t,s,n,a,o=!1)=>{if(Le(s))return;const[r,l,i,c]=a;return o||=A(e),pe(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(we(s),ge(s)):e},Ue=Oe((e=>{const t=Te(),[n,a,o]=Be((()=>C)),[r,l,i,c,d,u,h,,g,f,L,w]=ze(e,O,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=H(n)?[n,r,l,i]:Se(Ge,n)??Se(Ge,"sum");return g(e,s,((s,n,o,r,l,i)=>{const d=u(e),g=ge(r);i||=A(d),s();let f=Ke(d,g,r,n,c,i);D(f)||(f=void 0),f!=d&&(h(e,f),a(t,[e],f,d))}),Ne(o,1)),C},delMetricDefinition:e=>(f(e),C),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),C),destroy:w,getListenerStats:()=>({})};return re(C)})),Xe=Te(),Ye=Te(),Ze=Oe((e=>{const t=e.createStore,n=t(),a=t(),o=Te(),{addListener:r,callListeners:l,delListener:i}=a,[h,g,L,w,I,,,R,,b,m,V,M,E]=ze(e,(()=>!0),O,r,l),k=(e,t,...s)=>q(s,(s=>Pe(be(be(o,t,Te),e,He),s))),x=e=>{J(Se(o,e),(e=>{Ie(e,((e,t)=>pe(t,(t=>e.delListener(t))))),Ce(e)})),q([a,n],(t=>t.delTable(e)))},D=(e,t,s)=>k(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(t,o,r)=>{R(t,o),x(t);const l=[],i=[[null,[o,null,null,[],Te()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=H(e)?[N(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||H(t)?null:t,a=A(n)?t:s,o=[e,[e,n,H(a)?a:e=>e(a),[],Te()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,H(e)?e:A(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,H(t)?[t,s,n,a]:Se(Ge,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,H(e)?e:s=>s(e)===t)});const h=Te(l);if(Le(h))return F;const g=Te(i);Ie(g,((e,[,t])=>J(Se(g,t),(({3:t})=>A(e)?0:Y(t,e)))));const f=Te(d);let L=n;if(Le(f)&&U(u))L=a;else{D(t,L,a);const e=Te();Ie(f,((t,[s,n])=>Pe(be(e,s,He),[t,n])));const s=He();Ie(h,(t=>fe(e,t)?0:Pe(s,t)));const n=Te(),o=(s,n,o,r)=>J(s,(([l,i,c,d])=>{Ie(n,((t,[s])=>{const n=be(l,t,Te),a=Se(n,o),i=r?void 0:s;if(a!==i){const s=He([[a,i]]),r=ge(n);Re(n,o,i),pe(Se(e,t),(([e,t])=>{const a=Ke(d[e],r,n,s,t);d[e]=A(Je(a))?null:a}))}})),Le(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));k(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=Te(),h=L.hasRow(t,l);let g=!h;pe(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),g||=s})),Ie(e,(e=>{const[s,,n]=i(t,l,e);(g||s)&&Re(u,e,[n])})),g&&o(Ae(n,c,void 0,(([,e])=>(ye(e,l),Le(e)))),u,l,1),h&&o(Ae(n,d,(()=>{const e={};return pe(s,(s=>e[s]=L.getCell(t,l,s))),[Te(),He(),void 0,e]}),(([,e])=>{Pe(e,l)})),u,l)})))}D(t,e,L);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);q(r,(n=>{const[a,,o,r,i]=Se(g,n),c=o?.(l,s),[d,u]=Se(i,s)??[];c!=d&&(A(u)||E(t,u),Re(i,s,A(c)?null:[c,...M(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[Se(g,t)?.[0],Se(Se(g,t)?.[4],s)?.[0],n]);L.transaction((()=>j(c,(e=>e(n)))?Ie(h,((e,a)=>Fe(L,t,s,e,a(n,s)))):L.delRow(t,s)))})(s)},{3:C}=Se(g,null);return L.transaction((()=>M(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(L.delRow(t,a),pe(g,(({4:e})=>J(Se(e,a),(([,s])=>{E(t,s),Re(e,a)})))))}))))),F},delQueryDefinition:e=>(x(e),b(e),F),getStore:h,getQueryIds:g,forEachQuery:L,hasQuery:w,getTableId:I,addQueryIdsListener:e=>m((()=>e(F))),delListener:e=>(i(e),F),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ue({[f]:[1,1],[f+S]:[0,1],[p]:[0,1],[y]:[0,1],[T]:[0,5],[C]:[1,2],[S]:[0,2],[v]:[1,3]},(([e,t],s)=>{q(e?["get","has","forEach"]:["get"],(e=>F[e+d+s]=(...t)=>a[e+s](...t))),F[u+d+s+c]=(...e)=>a[u+s+c](...z(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),re(F)})),et=Oe((e=>{const t=Te(),n=Te(),a=Te(),o=Te(),[r,l,i]=Be((()=>S)),[c,d,u,h,g,f,,,L,w,C,p]=ze(e,(()=>[Te(),Te(),Te(),Te()]),(e=>A(e)?void 0:e+s),r,l),y=(e,t,s)=>J(f(e),(([n,,a])=>{if(!fe(a,t)){const o=He();if(g(e)!=v(e))Pe(o,t);else{let e=t;for(;!A(e)&&!fe(o,e);)Pe(o,e),e=Se(n,e)}if(s)return o;Re(a,t,o)}return Se(a,t)})),T=(e,t)=>J(f(e),(([,,e])=>Re(e,t))),v=e=>Se(t,e),S={setRelationshipDefinition:(e,s,r,i)=>(Re(t,e,r),L(e,s,((t,s)=>{const r=He(),i=He(),c=He(),[d,u]=f(e);pe(s,(([t,s],n)=>{A(t)||(Pe(i,t),J(Se(u,t),(e=>{ye(e,n),Le(e)&&Re(u,t)}))),A(s)||(Pe(i,s),fe(u,s)||Re(u,s,He()),Pe(Se(u,s),n)),Pe(r,n),Re(d,n,s),Ie(Se(o,e),(t=>{fe(y(e,t),n)&&Pe(c,t)}))})),t(),pe(r,(t=>l(n,[e,t]))),pe(i,(t=>l(a,[e,t]))),pe(c,(t=>{T(e,t),l(o,[e,t])}))}),Ne(i)),S),delRelationshipDefinition:e=>(Re(t,e),w(e),S),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:v,getRemoteRowId:(e,t)=>Se(f(e)?.[0],t),getLocalRowIds:(e,t)=>we(Se(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:we(y(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(y(e,t),r(s,o,[e,t])),delListener:e=>(T(...i(e)??[]),S),destroy:p,getListenerStats:()=>({})};return re(S)})),tt=()=>[s,void 0],st=()=>[s,Te()],nt=([e,t],s)=>[e,s(t,e)],at=(e,t)=>nt(e,(e=>Ve(e,t))),ot=(e,t,s,n)=>de(e,((e,a)=>rt(e,be(t,a,st),s[a]=((e=[])=>te.fromEntries(e))(),n))),rt=([e,t],s,n,a)=>{e>s[0]&&(s[0]=e),a(t,s[1],n)},lt=(e,t,s)=>de(e,(([e,n],a)=>{const o=be(t,a,tt);e>o[0]&&(o[0]=e,o[1]=s[a]=n)})),it=e=>[e,e],ct=()=>[Te(),Te()],dt=e=>[...e],ut=([e,t])=>e===t,ht=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),gt=JSON.parse,ft=(e,t,s)=>A(e)||!le(e)||he(e)||oe(e)?(s?.(),!1):(ue(e,((s,n)=>{t(s,n)||ce(e,n)})),!he(e)),Lt=(e,t,s)=>Re(e,t,Se(e,t)==-s?void 0:s),wt=()=>{let e,t,s,n=!1,a=!1,r=!1,d=!1,g=0;const T=Te(),V=Te(),M=Te(),E=Te(),k=Te(),x=Te(),D=Te(),Q=Te(),P=Te(),N=Te(),O=Te(),j=Te(),_=Te(),K=Te(),U=He(),X=Te(),Z=Te(),ee=Te(),te=Te(),se=ct(),ne=ct(),ae=ct(),oe=ct(),le=ct(),de=ct(),we=ct(),Ae=ct(),ze=ct(),Ne=ct(),Oe=ct(),We=ct(),_e=ct(),qe=ct(),Ge=ct(),Ke=ct(),Ue=ct(),Xe=ct(),Ye=ct(),Ze=ct(),et=ct(),tt=ct(),st=Te(),nt=ct(),[at,ot,rt,lt]=Be((()=>Qs)),Ct=e=>{if(!ft(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!F(t)&&t!=o||(Je(e[i])!=t&&ce(e,i),0))},pt=(t,s)=>(!e||fe(O,s)||Gt(s))&&ft(t,((e,t)=>yt(s,t,e)),(()=>Gt(s))),yt=(e,t,s,n)=>ft(n?s:It(s,e,t),((n,a)=>J(Tt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),Tt=(t,s,n,a)=>e?J(Se(Se(O,t),n),(e=>Je(a)!=e[l]?Gt(t,s,n,a,e[i]):a),(()=>Gt(t,s,n,a))):A(Je(a))?Gt(t,s,n,a):a,vt=(e,t)=>ft(t?e:Rt(e),((t,s)=>J(St(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),St=(e,s)=>t?J(Se(_,e),(t=>Je(s)!=t[l]?Kt(e,s,t[i]):s),(()=>Kt(e,s))):A(Je(s))?Kt(e,s):s,It=(e,t,s)=>(J(Se(j,t),(([n,a])=>{pe(n,((t,s)=>{ie(e,s)||(e[s]=t)})),pe(a,(n=>{ie(e,n)||Gt(t,s,n)}))})),e),Rt=e=>(t&&(pe(K,((t,s)=>{ie(e,s)||(e[s]=t)})),pe(U,(t=>{ie(e,t)||Kt(t)}))),e),bt=e=>me(O,e,((e,t,s)=>{const n=Te(),a=He();me(be(O,t,Te),s,((e,t,s)=>{Re(e,t,s),J(s[i],(e=>Re(n,t,e)),(()=>Pe(a,t)))})),Re(j,t,[n,a])}),((e,t)=>{Re(O,t),Re(j,t)})),mt=e=>me(_,e,((e,t,s)=>{Re(_,t,s),J(s[i],(e=>Re(K,t,e)),(()=>Pe(U,t)))}),((e,t)=>{Re(_,t),Re(K,t),ye(U,t)})),Vt=e=>he(e)?Vs():Ss(e),Mt=e=>me(ee,e,((e,t,s)=>Et(t,s)),((e,t)=>Pt(t))),Et=(e,t)=>me(be(ee,e,(()=>(Wt(e,1),Re(X,e,je()),Re(Z,e,Te()),Te()))),t,((t,s,n)=>kt(e,t,s,n)),((t,s)=>zt(e,t,s))),kt=(e,t,s,n,a)=>me(be(t,s,(()=>(jt(e,s,1),Te()))),n,((t,n,a)=>xt(e,s,t,n,a)),((n,o)=>Nt(e,t,s,n,o,a))),xt=(e,t,s,n,a)=>{fe(s,n)||Bt(e,t,n,1);const o=Se(s,n);a!==o&&(_t(e,t,n,o,a),Re(s,n,a))},Dt=(e,t,s,n,a)=>J(Se(t,s),(t=>xt(e,s,t,n,a)),(()=>kt(e,t,s,It({[n]:a},e,s)))),At=e=>he(e)?ks():Is(e),Jt=e=>me(te,e,((e,t,s)=>Ft(t,s)),((e,t)=>Ot(t))),Ft=(e,t)=>{fe(te,e)||$t(e,1);const s=Se(te,e);t!==s&&(qt(e,s,t),Re(te,e,t))},Qt=(e,t)=>{const[s]=Se(X,e),n=s(t);return fe(Se(ee,e),n)?Qt(e,t):n},Ht=e=>Se(ee,e)??Et(e,{}),Pt=e=>Et(e,{}),zt=(e,t,s)=>{const[,n]=Se(X,e);n(s),kt(e,t,s,{},!0)},Nt=(e,t,s,n,a,o)=>{const r=Se(Se(j,e)?.[0],a);if(!A(r)&&!o)return xt(e,s,n,a,r);const l=t=>{_t(e,s,t,Se(n,t)),Bt(e,s,t,-1),Re(n,t)};A(r)?l(a):Ie(n,l),Le(n)&&(jt(e,s,-1),Le(Re(t,s))&&(Wt(e,-1),Re(ee,e),Re(X,e),Re(Z,e)))},Ot=e=>{const t=Se(K,e);if(!A(t))return Ft(e,t);qt(e,Se(te,e)),$t(e,-1),Re(te,e)},Wt=(e,t)=>Lt(T,e,t),jt=(e,t,s)=>Lt(be(E,e,Te),t,s)&&Re(M,e,be(M,e,(()=>0))+s),Bt=(e,t,s,n)=>{const a=Se(Z,e),o=Se(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Lt(be(V,e,Te),s,n),Re(a,s,o!=-n?o+n:null),Lt(be(be(k,e,Te),t,Te),s,n)},_t=(e,t,s,n,a)=>be(be(be(x,e,Te),t,Te),s,(()=>[n,0]))[1]=a,$t=(e,t)=>Lt(D,e,t),qt=(e,t,s)=>be(Q,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(Y(be(be(be(P,e,Te),t,Te),s,(()=>[])),n),a),Kt=(e,t,s)=>(Y(be(N,e,(()=>[])),t),s),Ut=(e,t,s)=>J(Se(Se(Se(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...it(us(e,t,s))])),Xt=e=>J(Se(Q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...it(fs(e))])),Yt=e=>Le(P)||Le(Ke[e])?0:pe(e?De(P):P,((t,s)=>pe(t,((t,n)=>pe(t,((t,a)=>ot(Ke[e],[s,n,a],t))))))),Zt=e=>Le(N)||Le(Ue[e])?0:pe(e?ke(N):N,((t,s)=>ot(Ue[e],[s],t))),es=(e,t,s,n)=>{if(!Le(e))return ot(t,n,(()=>Ve(e))),Ie(e,((e,t)=>ot(s,[...n??[],e],1==t))),1},ts=e=>{const t=Ls();t!=r&&ot(se[e],void 0,t);const s=Le(Ne[e]),n=Le(_e[e])&&Le(qe[e])&&Le(ze[e])&&Le(Oe[e])&&Le(de[e])&&Le(we[e])&&Le(Ae[e])&&s&&Le(ae[e])&&Le(oe[e]),a=Le(Ge[e])&&Le(We[e])&&Le(le[e])&&Le(ne[e]);if(!n||!a){const t=e?[ke(T),xe(V),ke(M),xe(E),De(k),De(x)]:[T,V,M,E,k,x];if(!n){es(t[0],ae[e],oe[e]),pe(t[1],((t,s)=>es(t,de[e],we[e],[s]))),pe(t[2],((t,s)=>{0!=t&&ot(Ae[e],[s],ls(s))}));const n=He();pe(t[3],((t,a)=>{es(t,ze[e],Oe[e],[a])&&!s&&(ot(Ne[e],[a,null]),Pe(n,a))})),s||pe(t[5],((t,s)=>{if(!fe(n,s)){const n=He();pe(t,(e=>pe(e,(([t,s],a)=>s!==t?Pe(n,a):ye(e,a))))),pe(n,(t=>ot(Ne[e],[s,t])))}})),pe(t[4],((t,s)=>pe(t,((t,n)=>es(t,_e[e],qe[e],[s,n])))))}if(!a){let s;pe(t[5],((t,n)=>{let a;pe(t,((t,o)=>{let r;pe(t,(([t,l],i)=>{l!==t&&(ot(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&ot(We[e],[n,o],Ut)})),a&&ot(le[e],[n],Ut)})),s&&ot(ne[e],void 0,Ut)}}},ss=e=>{const t=Ts();t!=d&&ot(Xe[e],void 0,t);const s=Le(Ze[e])&&Le(et[e]),n=Le(tt[e])&&Le(Ye[e]);if(!s||!n){const t=e?[ke(D),ke(Q)]:[D,Q];if(s||es(t[0],Ze[e],et[e]),!n){let s;pe(t[1],(([t,n],a)=>{n!==t&&(ot(tt[e],[a],n,t,Xt),s=1)})),s&&ot(Ye[e],void 0,Xt)}}},ns=(e,...t)=>(As((()=>e(...G(t,m)))),Qs),as=()=>Ee(ee),os=()=>ve(ee),rs=e=>ve(Se(Z,m(e))),ls=e=>ge(Se(ee,m(e))),is=e=>ve(Se(ee,m(e))),cs=(e,t,s,n=0,a)=>{return G(z($((o=Se(ee,m(e)),r=(e,s)=>[A(t)?s:Se(e,m(t)),s],G([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>$e(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},ds=(e,t)=>ve(Se(Se(ee,m(e)),m(t))),us=(e,t,s)=>Se(Se(Se(ee,m(e)),m(t)),m(s)),hs=()=>Ve(te),gs=()=>ve(te),fs=e=>Se(te,m(e)),Ls=()=>!Le(ee),ws=e=>fe(ee,m(e)),Cs=(e,t)=>fe(Se(Z,m(e)),m(t)),ps=(e,t)=>fe(Se(ee,m(e)),m(t)),ys=(e,t,s)=>fe(Se(Se(ee,m(e)),m(t)),m(s)),Ts=()=>!Le(te),vs=e=>fe(te,m(e)),Ss=e=>ns((()=>(e=>ft(e,pt,Gt))(e)?Mt(e):0)),Is=e=>ns((()=>vt(e)?Jt(e):0)),Rs=e=>{try{Vt(gt(e))}catch{}return Qs},bs=t=>ns((()=>{if((e=ft(t,(e=>ft(e,Ct))))&&(bt(t),!Le(ee))){const e=as();Vs(),Ss(e)}})),ms=e=>ns((()=>{if(t=(e=>ft(e,Ct))(e)){const s=hs();Ds(),ks(),t=!0,mt(e),Is(s)}})),Vs=()=>ns((()=>Mt({}))),Ms=e=>ns((e=>fe(ee,e)?Pt(e):0),e),Es=(e,t)=>ns(((e,t)=>J(Se(ee,e),(s=>fe(s,t)?zt(e,s,t):0))),e,t),ks=()=>ns((()=>Jt({}))),xs=()=>ns((()=>{bt({}),e=!1})),Ds=()=>ns((()=>{mt({}),t=!1})),As=(e,t)=>{if(-1!=g){Js();const s=e();return Fs(t),s}},Js=()=>(-1!=g&&g++,1==g&&ot(st,void 0),Qs),Fs=e=>(g>0&&(g--,0==g&&(n=!Le(x),a=!Le(Q),g=1,Yt(1),n&&ts(1),Zt(1),a&&ss(1),e?.(Qs)&&(pe(x,((e,t)=>pe(e,((e,s)=>pe(e,(([e],n)=>Fe(Qs,t,s,n,e))))))),pe(Q,(([e],t)=>Qe(Qs,t,e))),n=a=!1),ot(nt[0],void 0),g=-1,Yt(0),n&&ts(0),Zt(0),a&&ss(0),s?.(Qs),ot(nt[1],void 0),g=0,n=a=!1,r=Ls(),d=Ts(),q([T,V,M,E,k,x,P,D,Q,N],Ce))),Qs),Qs={getContent:()=>[as(),hs()],getTables:as,getTableIds:os,getTable:e=>Me(Se(ee,m(e))),getTableCellIds:rs,getRowCount:ls,getRowIds:is,getSortedRowIds:cs,getRow:(e,t)=>Ve(Se(Se(ee,m(e)),m(t))),getCellIds:ds,getCell:us,getValues:hs,getValueIds:gs,getValue:fs,hasTables:Ls,hasTable:ws,hasTableCell:Cs,hasRow:ps,hasCell:ys,hasValues:Ts,hasValue:vs,getTablesJson:()=>ht(ee),getValuesJson:()=>ht(te),getJson:()=>ht([ee,te]),getTablesSchemaJson:()=>ht(O),getValuesSchemaJson:()=>ht(_),getSchemaJson:()=>ht([O,_]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ns((()=>{(he(e)?Vs:Ss)(e),(he(t)?ks:Is)(t)})),setTables:Ss,setTable:(e,t)=>ns((e=>pt(t,e)?Et(e,t):0),e),setRow:(e,t,s)=>ns(((e,t)=>yt(e,t,s)?kt(e,Ht(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return yt(e,n,t)&&(e=m(e),kt(e,Ht(e),n=Qt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ns(((e,t)=>{if(yt(e,t,s,1)){const n=Ht(e);ue(s,((s,a)=>Dt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ns(((e,t,s)=>J(Tt(e,t,s,H(n)?n(us(e,t,s)):n),(n=>Dt(e,Ht(e),t,s,n)))),e,t,s),setValues:Is,setPartialValues:e=>ns((()=>vt(e,1)?ue(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>ns((e=>J(St(e,H(t)?t(fs(e)):t),(t=>Ft(e,t)))),e),applyChanges:e=>ns((()=>{ue(e[0],((e,t)=>A(e)?Ms(t):ue(e,((e,s)=>A(e)?Es(t,s):ue(e,((e,n)=>Fe(Qs,t,s,n,e))))))),ue(e[1],((e,t)=>Qe(Qs,t,e)))})),setTablesJson:Rs,setValuesJson:e=>{try{At(gt(e))}catch{}return Qs},setJson:e=>ns((()=>{try{const[t,s]=gt(e);Vt(t),At(s)}catch{Rs(e)}})),setTablesSchema:bs,setValuesSchema:ms,setSchema:(e,t)=>ns((()=>{bs(e),ms(t)})),delTables:Vs,delTable:Ms,delRow:Es,delCell:(e,t,s,n)=>ns(((e,t,s)=>J(Se(ee,e),(a=>J(Se(a,t),(o=>fe(o,s)?Nt(e,a,t,o,s,n):0))))),e,t,s),delValues:ks,delValue:e=>ns((e=>fe(te,e)?Ot(e):0),e),delTablesSchema:xs,delValuesSchema:Ds,delSchema:()=>ns((()=>{xs(),Ds()})),transaction:As,startTransaction:Js,getTransactionChanges:()=>[Ve(x,((e,t)=>-1===Se(T,t)?void 0:Ve(e,((e,s)=>-1===Se(Se(E,t),s)?void 0:Ve(e,(([,e])=>e),((e,t)=>ut(t)))),he)),he),Ve(Q,(([,e])=>e),((e,t)=>ut(t)))],getTransactionLog:()=>[n,a,Ee(x,dt,ut),Ee(P),Ve(Q,dt,ut),Ve(N),Ve(T),Me(E),Ee(k),Ve(D)],finishTransaction:Fs,forEachTable:e=>pe(ee,((t,s)=>e(s,(e=>pe(t,((t,s)=>e(s,(e=>Ie(t,e))))))))),forEachTableCell:(e,t)=>Ie(Se(Z,m(e)),t),forEachRow:(e,t)=>pe(Se(ee,m(e)),((e,s)=>t(s,(t=>Ie(e,t))))),forEachCell:(e,t,s)=>Ie(Se(Se(ee,m(e)),m(t)),s),forEachValue:e=>Ie(te,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=cs(e,t,s,n,a);return at((()=>{const r=cs(e,t,s,n,a);B(r,l)||(l=r,o(Qs,e,t,s,n,a,l))}),Ne[r?1:0],[e,t],[os])},addStartTransactionListener:e=>at(e,st),addWillFinishTransactionListener:e=>at(e,nt[0]),addDidFinishTransactionListener:e=>at(e,nt[1]),callListener:e=>(lt(e),Qs),delListener:e=>(rt(e),Qs),getListenerStats:()=>({}),createStore:wt,addListener:at,callListeners:ot,addPostTransactionListener:e=>{s=e}};return ue({[h+L]:[0,se,[],()=>[Ls()]],[L]:[0,ne],[w]:[0,ae],[h+f]:[1,oe,[os],e=>[ws(...e)]],[f]:[1,le,[os]],[f+S]:[1,de,[os]],[h+f+v]:[2,we,[os,rs],e=>[Cs(...e)]],[p]:[1,Ae,[os]],[y]:[1,ze,[os]],[h+C]:[2,Oe,[os,is],e=>[ps(...e)]],[C]:[2,We,[os,is]],[S]:[2,_e,[os,is]],[h+v]:[3,qe,[os,is,ds],e=>[ys(...e)]],[v]:[3,Ge,[os,is,ds],e=>it(us(...e))],InvalidCell:[3,Ke],[h+R]:[0,Xe,[],()=>[Ts()]],[R]:[0,Ye],[b]:[0,Ze],[h+I]:[1,et,[gs],e=>[vs(...e)]],[I]:[1,tt,[gs],e=>it(fs(e[0]))],InvalidValue:[1,Ue]},(([e,t,s,n],a)=>{Qs[u+a+c]=(...a)=>at(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,n)})),re(Qs)},Ct=2**36,pt=2**30,yt=2**24,Tt=2**18,vt=4096,St=64,It=e=>String.fromCharCode(48+(63&e)),Rt=(e,t)=>E(e,t)-48,bt={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},mt=()=>[s,[st(),st()]];e.createCheckpoints=_e,e.createCustomPersister=(e,t,s,n,a,o,r,[l,i]=[],c=[])=>{let d,u,h,g=0,f=0;be(Xe,c,(()=>0)),be(Ye,c,(()=>[]));const L=(r?e.getMergeableContent:null)??e.getContent,w=e.getTransactionChanges,C=async e=>(2!=g&&(g=1,await p.schedule((async()=>{await e(),g=0}))),p),p={load:async(s,n)=>await C((async()=>{try{const s=await t();(r&&Q(s[0])?e.applyMergeableChanges:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(p.stopAutoLoad(),await p.load(s,a),f=1,h=n((async(s,n)=>{if(n){const t=n();await C((async()=>e.applyChanges(t)))}else await C((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),p),stopAutoLoad:()=>(f&&(a(h),h=void 0,f=0),p),save:async e=>(1!=g&&(g=2,await p.schedule((async()=>{try{await s(L,e)}catch(e){o?.(e)}g=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const[e,t]=w();he(e)&&he(t)||p.save((()=>[e,t]))})),p),stopAutoSave:()=>(J(d,e.delListener),d=void 0,p),schedule:async(...e)=>(Y(Se(Ye,c),...e),await(async()=>{if(!Se(Xe,c)){for(Re(Xe,c,1);!A(u=ee(Se(Ye,c)));)try{await u()}catch(e){o?.(e)}Re(Xe,c,0)}})(),p),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(p[l]=()=>i),re(p)},e.createIndexes=qe,e.createMergeableStore=e=>{let t=1,s=mt();const[n,a]=(e=>{let t=0,s=0;const n=X(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^E(t)),5381)>>>0,a=e=>{const n=t,[a,o]=A(e)?[0,0]:[Rt(r=e,0)*Ct+Rt(r,1)*pt+Rt(r,2)*yt+Rt(r,3)*Tt+Rt(r,4)*vt+Rt(r,5)*St+Rt(r,6),Rt(r,7)*Tt+Rt(r,8)*vt+Rt(r,9)*St+Rt(r,10),Rt(r,11)*yt+Rt(r,12)*Tt+Rt(r,13)*vt+Rt(r,14)*St+Rt(r,15)];var r;t=Math.max(n,a,Date.now()),s=t==n?t==a?Math.max(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,r=n,It((e=t)/Ct)+It(e/pt)+It(e/yt)+It(e/Tt)+It(e/vt)+It(e/St)+It(e)+It(o/Tt)+It(o/vt)+It(o/St)+It(o)+It(r/yt)+It(r/Tt)+It(r/vt)+It(r/St)+It(r);var e,o,r},a]})(e),o=wt(),r=e=>{const s=t;t=0,e(),t=s},l=e=>{const t=[{},{}];return a(e[0]),rt(e,s,t,(([e,t],[s,n],[a,o])=>{rt(e,s,a,((e,t,s)=>ot(e,t,s,((e,t,s)=>ot(e,t,s,lt))))),rt(t,n,o,lt)})),r((()=>o.applyChanges(t))),i},i={getMergeableContent:()=>nt(s,(([e,t])=>[at(e,(e=>at(e,(e=>at(e,dt))))),at(t,dt)])),setMergeableContent:e=>(r((()=>o.transaction((()=>{o.delTables().delValues(),s=mt()})))),l(e),i),applyMergeableChanges:l,merge:e=>{const t=i.getMergeableContent(),s=e.getMergeableContent();return e.applyMergeableChanges(t),l(s)}};return o.addPostTransactionListener((()=>{if(t){const e=n(),[t,a,r,,l]=o.getTransactionLog(),[i,c]=s[1];s[0]=e,t&&(i[0]=e,ue(r,((t,s)=>{const n=be(i[1],s,tt),a=n[1]??=Te();n[0]=e,ue(t,((t,s)=>{const n=be(a,s,tt),o=n[1]??=Te();n[0]=e,ue(t,(([,t],s)=>Re(o,s,[e,t])))}))}))),a&&(c[0]=e,ue(l,(([,t],s)=>{Re(c[1],s,[e,t])})))}})),ue(o,((e,t)=>i[t]=V(t,"set")||V(t,"del")||V(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),i):V(t,"add")&&M(t,"Listener")?(...s)=>{const n=bt[z(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(i,...t),e(...s)}:e)),re(i)},e.createMetrics=Ue,e.createQueries=Ze,e.createRelationships=et,e.createStore=wt,e.defaultSorter=$e},"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,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={});
Binary file
package/lib/umd/tools.js CHANGED
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(q(e)),le=e=>X(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return K({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=_.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={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,y="Cell",w=y+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==n,E=e=>l(e)==i,z=e=>Array.isArray(e),$=(e,t,s)=>e.slice(t,s),O=e=>e.length,{PureComponent:A,Fragment:P,createElement:F,useCallback:J,useLayoutEffect:H,useRef:B,useState:D}=t,Q=(e,...t)=>q(e)?{}:e(...t),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),G=e=>0==O(e),K=(e,...t)=>e.push(...t),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.entries,ee=Y.keys,te=Y.isFrozen,se=Y.freeze,le=e=>!q(e)&&N(Z(e),(e=>e==Y.prototype||q(Z(e))),(()=>!0)),ae=(e=[])=>Y.fromEntries(e),ne=(e,t)=>t in e,oe=(e,t)=>(delete e[t],e),re=(e,t)=>U(_(e),(([e,s])=>t(s,e))),ie=e=>le(e)&&0==(e=>O(ee(e)))(e),de=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),ue=JSON.parse,ce="tinybaseStoreInspector",he="TinyBase Store Inspector",me=["left","top","bottom","right","full"],be="state",ge="sort",pe="open",Ie="position",fe=pe,ye="editable",we=(...e)=>de(e),Ce=(e,t)=>U(j(e),t),ve=(e,t)=>[!!s.useCell(be,e,ye,t),J((s=>{t.setCell(be,e,ye,(e=>!e)),s.preventDefault()}),[t,e])],Te="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ke='content:url("',Se=ke+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",xe='</svg>")',Ve=ke+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Re=U([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Se+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+xe)),qe=Se+"<path d='M20 20l60 60M20 80l60-60' />"+xe,Ne=Se+`<path d='${Te}' />`+xe,Le=Se+`<path d='${Te}M20 20l60 60' />`+xe,Me="*::-webkit-scrollbar",Ee=((e,t="")=>e.join(t))(re({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Me]:"width:0.5rem;height:0.5rem;",[Me+"-track"]:"background:#111",[Me+"-thumb"]:"background:#999;border:1px solid #111",[Me+"-thumb:hover"]:"background:#fff",[Me+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+Ve,...ae(U(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...ae(U(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":Ve,"header>img:nth-of-type(6)":qe,...ae(U(Re,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Ne,"details[open]>summary img.done":Le,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ce} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ce} ${t}{${e}}`:""))),ze=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!0),[],e);return s.useValue(fe,e)?null:F("img",{onClick:l,title:he,"data-position":t})},$e=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(be,e,pe,o),i=s.useSetCellCallback(be,e,pe,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},Oe=e=>{const t=l(e);return L(t)||t==r&&R(e)?t:void 0},Ae=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Pe=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Fe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Je,useMemo:He,useState:Be}=t,De="editable",Qe=(e,t)=>U(s.useTableCellIds(e,t),(t=>e+"."+t)),je=(e,t,s)=>{const l=Je(e,t);return s?l:void 0},We=(...e)=>He((()=>e),e),Ue=(e,t)=>He((()=>({store:e,tableId:t})),[e,t]),Ge=(e,t)=>He((()=>({queries:e,queryId:t})),[e,t]),Ke=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Be([e,t,l]),h=Je((e=>{c(e),r?.(e)}),[r]),m=je((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Je((e=>h([i,d,e])),[h,i,d]),g=!0===o?it:o;return[[i,d,u],m,He((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Xe=(e,t,s)=>He((()=>{const l=t??e;return a=z(l)?ae(U(l,(e=>[e,e]))):l,n=(e,t)=>({label:t,component:s,...M(e)?{label:e}:e}),ae(re(a,((e,t)=>[t,n(e,t)])));var a,n}),[t,s,e]),Ye=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ze,{sort:o??[],label:"Id",onClick:r}),re(l,(({label:e},t)=>F(Ze,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,U(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),re(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...Q(s,e,l),...a,rowId:e,cellId:l}))))))))),Ze=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:je((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),_e=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),re(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...Q(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},et=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Be(),[u,c]=Be(),[h,m]=Be(),[b,g]=Be(),[p,I]=Be();u!==e&&(d(Oe(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Je(((e,s)=>{s(e),c(e),t(e)}),[t]),y=Je((()=>{if(!l?.()){const e=Fe(i,r,o,n),s=Fe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:y},i):null,Fe(i,F("input",{key:i,value:h,onChange:Je((e=>f(e[k][S]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Je((e=>f(Number(e[k][S]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Je((e=>f(!!e[k].checked,I)),[f])})))},tt=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ke(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Ye,{...h,params:We(Xe(s.useTableCellIds(e,o),c,r?ot:s.CellView),Ue(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},st=({store:e,editable:t=!1,valueComponent:l=(t?rt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,C))),F("tbody",null,U(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...Q(a,t),valueId:t,store:e}))))))),lt=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Ye,{...o,params:We(Xe(s.useTableCellIds(d,i),n,a?ot:s.CellView),Ue(i,d),s.useSliceRowIds(e,t,r))})},at=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Xe([...Qe(c,u),...Qe(h,u)],n,a?ot:s.CellView),b=We(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),re(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,U(s.useRowIds(c,u),(e=>F(_e,{key:e,localRowId:e,params:b})))))},nt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ke(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Ye,{...c,params:We(Xe(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ge(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},ot=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(et,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??De+y,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),rt=({valueId:e,store:t,className:l,showType:a})=>F(et,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??De+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),it=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=je((()=>e(l-a)),[e,l,a],l>0),i=je((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},dt=({indexes:e,indexesId:t,indexId:l,s:a})=>F($e,{uniqueId:we("i",t,l),summary:"Index: "+l,s:a},U(s.useSliceIds(l,e),(s=>F(ut,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ut=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=ve(n,a);return F($e,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(lt,{sliceId:l,indexId:s,indexes:e,editable:o}))},ct=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F($e,{uniqueId:we("i",e),summary:"Indexes: "+(e??u),s:t},G(a)?"No indexes defined":Ce(a,(s=>F(dt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},ht=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),mt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F($e,{uniqueId:we("m",e),summary:"Metrics: "+(e??u),s:t},G(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,U(a,(e=>F(ht,{metrics:l,metricId:e,key:e}))))))},bt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=we("q",t,l),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a);return F($e,{uniqueId:n,summary:"Query: "+l,s:a},F(nt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},gt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F($e,{uniqueId:we("q",e),summary:"Queries: "+(e??u),s:t},G(a)?"No queries defined":Ce(a,(s=>F(bt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},pt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=ve(a,l);return F($e,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(at,{relationshipId:s,relationships:e,editable:n}))},It=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F($e,{uniqueId:we("r",e),summary:"Relationships: "+(e??u),s:t},G(a)?"No relationships defined":Ce(a,(s=>F(pt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},ft=({tableId:e,store:t,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a),[u,c]=ve(n,a);return F($e,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},F(tt,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},yt=({store:e,storeId:t,s:l})=>{const a=we("v",t),[n,o]=ve(a,l);return G(s.useValueIds(e))?null:F($e,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},F(st,{store:e,editable:n}))},wt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F($e,{uniqueId:we("s",e),summary:"Store: "+(e??u),s:t},F(yt,{storeId:e,store:l,s:t}),Ce(a,(s=>F(ft,{store:l,storeId:e,tableId:s,s:t,key:s}))))},Ct=({s:e})=>{const t=B(null),l=B(0),[a,n]=D(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);H((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&G(u)&&q(c)&&G(h)&&q(m)&&G(b)&&q(g)&&G(p)&&q(I)&&G(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(wt,{s:e}),U(u,(t=>F(wt,{storeId:t,s:e,key:t}))),F(mt,{s:e}),U(h,(t=>F(mt,{metricsId:t,s:e,key:t}))),F(ct,{s:e}),U(b,(t=>F(ct,{indexesId:t,s:e,key:t}))),F(It,{s:e}),U(p,(t=>F(It,{relationshipsId:t,s:e,key:t}))),F(gt,{s:e}),U(f,(t=>F(gt,{queriesId:t,s:e,key:t}))))};class vt extends A{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const Tt=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!1),[],e),a=s.useSetValueCallback(Ie,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:he}),F("span",null,he),U(me,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},kt=({s:e})=>{const t=s.useValue(Ie,e)??1;return s.useValue(fe,e)?F("main",{"data-position":t},F(Tt,{s:e}),F(vt,null,F(Ct,{s:e}))):null},St=e=>t=>{return s=(t,s)=>t+e(s),Mt(t).reduce(s,0);var s},xt=e=>e?.size??0,Vt=St(xt),Rt=St(Vt),qt=St(Rt),Nt=(e,t)=>e?.has(t)??!1,Lt=e=>q(e)||0==xt(e),Mt=e=>[...e?.values()??[]],Et=e=>e.clear(),zt=(e,t)=>e?.forEach(t),$t=(e,t)=>e?.delete(t),Ot=e=>new Map(e),At=e=>[...e?.keys()??[]],Pt=(e,t)=>e?.get(t),Ft=(e,t)=>zt(e,((e,s)=>t(s,e))),Jt=(e,t,s)=>q(s)?($t(e,t),e):e?.set(t,s),Ht=(e,t,s)=>(Nt(e,t)||Jt(e,t,s()),Pt(e,t)),Bt=(e,t,s,l=Jt)=>(re(t,((t,l)=>s(e,l,t))),Ft(e,(s=>ne(t,s)?0:l(e,s))),e),Dt=(e,t,s)=>{const l={};return zt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Qt=(e,t,s)=>Dt(e,(e=>Dt(e,t,s)),ie),jt=(e,t,s)=>Dt(e,(e=>Qt(e,t,s)),ie),Wt=(e,t)=>{const s=Ot();return zt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Ut=e=>Wt(e,Wt),Gt=e=>Wt(e,Ut),Kt=(e,t,s,l,a=0)=>N((s?Ht:Pt)(e,t[a],a>O(t)-2?s:Ot),(n=>{if(a>O(t)-2)return l?.(n)&&Jt(e,t[a]),n;const o=Kt(n,t,s,l,a+1);return Lt(n)&&Jt(e,t[a]),o})),Xt=Ot(),Yt=Ot(),Zt="storage",_t=globalThis.window,es=e=>new Set(z(e)||q(e)?e:[e]),ts=(e,t)=>e?.add(t),ss=/^\d+$/,ls=()=>{const e=[];let t=0;return[s=>(s?X(e):null)??a+t++,t=>{ss.test(t)&&O(e)<1e3&&K(e,t)}]},as=e=>[e,e],ns=(e,t=Vt)=>t(e[0])+t(e[1]),os=()=>[Ot(),Ot()],rs=e=>[...e],is=([e,t])=>e===t,ds=(e,t,s)=>q(e)||!le(e)||ie(e)||te(e)?(s?.(),!1):(re(e,((s,l)=>{t(s,l)||oe(e,l)})),!ie(e)),us=(e,t,s)=>Jt(e,t,Pt(e,t)==-s?void 0:s),cs=()=>{let e,t,s,l=!1,n=!1,o=!1,i=!1,h=0;const k=Ot(),S=Ot(),V=Ot(),R=Ot(),M=Ot(),z=Ot(),A=Ot(),P=Ot(),F=Ot(),J=Ot(),H=Ot(),B=Ot(),D=Ot(),Q=Ot(),G=es(),X=Ot(),Y=Ot(),Z=Ot(),_=Ot(),ee=os(),te=os(),le=os(),ae=os(),ce=os(),he=os(),me=os(),be=os(),ge=os(),pe=os(),Ie=os(),fe=os(),ye=os(),we=os(),Ce=os(),ve=os(),Te=os(),ke=os(),Se=os(),xe=os(),Ve=os(),Re=os(),qe=Ot(),Ne=os(),[Le,Me,Ee,ze]=(e=>{let t;const[s,l]=ls(),n=Ot();return[(e,l,o,r=[],i=(()=>[]))=>{t??=As;const d=s(1);return Jt(n,d,[e,l,o,r,i]),ts(Kt(l,o??[a],es),d),d},(e,s,...l)=>W(((e,t=[a])=>{const s=[],l=(e,a)=>a==O(t)?K(s,e):null===t[a]?zt(e,(e=>l(e,a+1))):W([t[a],null],(t=>l(Pt(e,t),a+1)));return l(e,0),s})(e,s),(e=>zt(e,(e=>Pt(n,e)[0](t,...s??[],...l))))),e=>N(Pt(n,e),(([,t,s])=>(Kt(t,s??[a],void 0,(t=>($t(t,e),Lt(t)?1:0))),Jt(n,e),l(e),s))),e=>N(Pt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=O(o);r==O(s)?e(t,...o,...a(o)):q(s[r])?W(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),$e=e=>{if(!ds(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||(Oe(e[u])!=t&&oe(e,u),0))},Fe=(t,s)=>(!e||Nt(H,s)||gt(s))&&ds(t,((e,t)=>Je(s,t,e)),(()=>gt(s))),Je=(e,t,s,l)=>ds(l?s:Qe(s,e,t),((l,a)=>N(He(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>gt(e,t))),He=(t,s,l,a)=>e?N(Pt(Pt(H,t),l),(e=>Oe(a)!=e[d]?gt(t,s,l,a,e[u]):a),(()=>gt(t,s,l,a))):q(Oe(a))?gt(t,s,l,a):a,Be=(e,t)=>ds(t?e:je(e),((t,s)=>N(De(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>pt())),De=(e,s)=>t?N(Pt(D,e),(t=>Oe(s)!=t[d]?pt(e,s,t[u]):s),(()=>pt(e,s))):q(Oe(s))?pt(e,s):s,Qe=(e,t,s)=>(N(Pt(B,t),(([l,a])=>{zt(l,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(a,(l=>{ne(e,l)||gt(t,s,l)}))})),e),je=e=>(t&&(zt(Q,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(G,(t=>{ne(e,t)||pt(t)}))),e),We=e=>Bt(H,e,((e,t,s)=>{const l=Ot(),a=es();Bt(Ht(H,t,Ot),s,((e,t,s)=>{Jt(e,t,s),N(s[u],(e=>Jt(l,t,e)),(()=>ts(a,t)))})),Jt(B,t,[l,a])}),((e,t)=>{Jt(H,t),Jt(B,t)})),Ue=e=>Bt(D,e,((e,t,s)=>{Jt(D,t,s),N(s[u],(e=>Jt(Q,t,e)),(()=>ts(G,t)))}),((e,t)=>{Jt(D,t),Jt(Q,t),$t(G,t)})),Ge=e=>ie(e)?Rs():Ts(e),Ke=e=>Bt(Z,e,((e,t,s)=>Xe(t,s)),((e,t)=>nt(t))),Xe=(e,t)=>Bt(Ht(Z,e,(()=>(dt(e,1),Jt(X,e,ls()),Jt(Y,e,Ot()),Ot()))),t,((t,s,l)=>Ye(e,t,s,l)),((t,s)=>ot(e,t,s))),Ye=(e,t,s,l,a)=>Bt(Ht(t,s,(()=>(ut(e,s,1),Ot()))),l,((t,l,a)=>Ze(e,s,t,l,a)),((l,n)=>rt(e,t,s,l,n,a))),Ze=(e,t,s,l,a)=>{Nt(s,l)||ct(e,t,l,1);const n=Pt(s,l);a!==n&&(ht(e,t,l,n,a),Jt(s,l,a))},_e=(e,t,s,l,a)=>N(Pt(t,s),(t=>Ze(e,s,t,l,a)),(()=>Ye(e,t,s,Qe({[l]:a},e,s)))),et=e=>ie(e)?Ls():ks(e),tt=e=>Bt(_,e,((e,t,s)=>st(t,s)),((e,t)=>it(t))),st=(e,t)=>{Nt(_,e)||mt(e,1);const s=Pt(_,e);t!==s&&(bt(e,s,t),Jt(_,e,t))},lt=(e,t)=>{const[s]=Pt(X,e),l=s(t);return Nt(Pt(Z,e),l)?lt(e,t):l},at=e=>Pt(Z,e)??Xe(e,{}),nt=e=>Xe(e,{}),ot=(e,t,s)=>{const[,l]=Pt(X,e);l(s),Ye(e,t,s,{},!0)},rt=(e,t,s,l,a,n)=>{const o=Pt(Pt(B,e)?.[0],a);if(!q(o)&&!n)return Ze(e,s,l,a,o);const r=t=>{ht(e,s,t,Pt(l,t)),ct(e,s,t,-1),Jt(l,t)};q(o)?r(a):Ft(l,r),Lt(l)&&(ut(e,s,-1),Lt(Jt(t,s))&&(dt(e,-1),Jt(Z,e),Jt(X,e),Jt(Y,e)))},it=e=>{const t=Pt(Q,e);if(!q(t))return st(e,t);bt(e,Pt(_,e)),mt(e,-1),Jt(_,e)},dt=(e,t)=>us(k,e,t),ut=(e,t,s)=>us(Ht(R,e,Ot),t,s)&&Jt(V,e,Ht(V,e,(()=>0))+s),ct=(e,t,s,l)=>{const a=Pt(Y,e),n=Pt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&us(Ht(S,e,Ot),s,l),Jt(a,s,n!=-l?n+l:null),us(Ht(Ht(M,e,Ot),t,Ot),s,l)},ht=(e,t,s,l,a)=>Ht(Ht(Ht(z,e,Ot),t,Ot),s,(()=>[l,0]))[1]=a,mt=(e,t)=>us(A,e,t),bt=(e,t,s)=>Ht(P,e,(()=>[t,0]))[1]=s,gt=(e,t,s,l,a)=>(K(Ht(Ht(Ht(F,e,Ot),t,Ot),s,(()=>[])),l),a),pt=(e,t,s)=>(K(Ht(J,e,(()=>[])),t),s),It=(e,t,s)=>N(Pt(Pt(Pt(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...as(hs(e,t,s))])),ft=e=>N(Pt(P,e),(([e,t])=>[!0,e,t]),(()=>[!1,...as(gs(e))])),yt=e=>Lt(F)||Lt(ve[e])?0:zt(e?Gt(F):F,((t,s)=>zt(t,((t,l)=>zt(t,((t,a)=>Me(ve[e],[s,l,a],t))))))),wt=e=>Lt(J)||Lt(Te[e])?0:zt(e?Wt(J):J,((t,s)=>Me(Te[e],[s],t))),Ct=(e,t,s,l)=>{if(!Lt(e))return Me(t,l,(()=>Dt(e))),Ft(e,((e,t)=>Me(s,[...l??[],e],1==t))),1},vt=e=>{const t=ps();t!=o&&Me(ee[e],void 0,t);const s=Lt(pe[e]),l=Lt(ye[e])&&Lt(we[e])&&Lt(ge[e])&&Lt(Ie[e])&&Lt(he[e])&&Lt(me[e])&&Lt(be[e])&&s&&Lt(le[e])&&Lt(ae[e]),a=Lt(Ce[e])&&Lt(fe[e])&&Lt(ce[e])&&Lt(te[e]);if(!l||!a){const t=e?[Wt(k),Ut(S),Wt(V),Ut(R),Gt(M),Gt(z)]:[k,S,V,R,M,z];if(!l){Ct(t[0],le[e],ae[e]),zt(t[1],((t,s)=>Ct(t,he[e],me[e],[s]))),zt(t[2],((t,s)=>{0!=t&&Me(be[e],[s],Yt(s))}));const l=es();zt(t[3],((t,a)=>{Ct(t,ge[e],Ie[e],[a])&&!s&&(Me(pe[e],[a,null]),ts(l,a))})),s||zt(t[5],((t,s)=>{if(!Nt(l,s)){const l=es();zt(t,(e=>zt(e,(([t,s],a)=>s!==t?ts(l,a):$t(e,a))))),zt(l,(t=>Me(pe[e],[s,t])))}})),zt(t[4],((t,s)=>zt(t,((t,l)=>Ct(t,ye[e],we[e],[s,l])))))}if(!a){let s;zt(t[5],((t,l)=>{let a;zt(t,((t,n)=>{let o;zt(t,(([t,r],i)=>{r!==t&&(Me(Ce[e],[l,n,i],r,t,It),s=a=o=1)})),o&&Me(fe[e],[l,n],It)})),a&&Me(ce[e],[l],It)})),s&&Me(te[e],void 0,It)}}},Tt=e=>{const t=Cs();t!=i&&Me(ke[e],void 0,t);const s=Lt(xe[e])&&Lt(Ve[e]),l=Lt(Re[e])&&Lt(Se[e]);if(!s||!l){const t=e?[Wt(A),Wt(P)]:[A,P];if(s||Ct(t[0],xe[e],Ve[e]),!l){let s;zt(t[1],(([t,l],a)=>{l!==t&&(Me(Re[e],[a],l,t,ft),s=1)})),s&&Me(Se[e],void 0,ft)}}},kt=(e,...t)=>(zs((()=>e(...U(t,x)))),As),St=()=>jt(Z),Mt=()=>At(Z),Xt=e=>At(Pt(Y,x(e))),Yt=e=>xt(Pt(Z,x(e))),Zt=e=>At(Pt(Z,x(e))),_t=(e,t,s,l=0,a)=>{return U($(j((n=Pt(Z,x(e)),o=(e,s)=>[q(t)?s:Pt(e,x(t)),s],U([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},ss=(e,t)=>At(Pt(Pt(Z,x(e)),x(t))),hs=(e,t,s)=>Pt(Pt(Pt(Z,x(e)),x(t)),x(s)),ms=()=>Dt(_),bs=()=>At(_),gs=e=>Pt(_,x(e)),ps=()=>!Lt(Z),Is=e=>Nt(Z,x(e)),fs=(e,t)=>Nt(Pt(Y,x(e)),x(t)),ys=(e,t)=>Nt(Pt(Z,x(e)),x(t)),ws=(e,t,s)=>Nt(Pt(Pt(Z,x(e)),x(t)),x(s)),Cs=()=>!Lt(_),vs=e=>Nt(_,x(e)),Ts=e=>kt((()=>(e=>ds(e,Fe,gt))(e)?Ke(e):0)),ks=e=>kt((()=>Be(e)?tt(e):0)),Ss=e=>{try{Ge(ue(e))}catch{}return As},xs=t=>kt((()=>{if((e=ds(t,(e=>ds(e,$e))))&&(We(t),!Lt(Z))){const e=St();Rs(),Ts(e)}})),Vs=e=>kt((()=>{if(t=(e=>ds(e,$e))(e)){const s=ms();Es(),Ls(),t=!0,Ue(e),ks(s)}})),Rs=()=>kt((()=>Ke({}))),qs=e=>kt((e=>Nt(Z,e)?nt(e):0),e),Ns=(e,t)=>kt(((e,t)=>N(Pt(Z,e),(s=>Nt(s,t)?ot(e,s,t):0))),e,t),Ls=()=>kt((()=>tt({}))),Ms=()=>kt((()=>{We({}),e=!1})),Es=()=>kt((()=>{Ue({}),t=!1})),zs=(e,t)=>{if(-1!=h){$s();const s=e();return Os(t),s}},$s=()=>(-1!=h&&h++,1==h&&Me(qe,void 0),As),Os=e=>(h>0&&(h--,0==h&&(l=!Lt(z),n=!Lt(P),h=1,yt(1),l&&vt(1),wt(1),n&&Tt(1),e?.(As)&&(zt(z,((e,t)=>zt(e,((e,s)=>zt(e,(([e],l)=>Ae(As,t,s,l,e))))))),zt(P,(([e],t)=>Pe(As,t,e))),l=n=!1),Me(Ne[0],void 0),h=-1,yt(0),l&&vt(0),wt(0),n&&Tt(0),s?.(As),Me(Ne[1],void 0),h=0,l=n=!1,o=ps(),i=Cs(),W([k,S,V,R,M,z,F,A,P,J],Et))),As),As={getContent:()=>[St(),ms()],getTables:St,getTableIds:Mt,getTable:e=>Qt(Pt(Z,x(e))),getTableCellIds:Xt,getRowCount:Yt,getRowIds:Zt,getSortedRowIds:_t,getRow:(e,t)=>Dt(Pt(Pt(Z,x(e)),x(t))),getCellIds:ss,getCell:hs,getValues:ms,getValueIds:bs,getValue:gs,hasTables:ps,hasTable:Is,hasTableCell:fs,hasRow:ys,hasCell:ws,hasValues:Cs,hasValue:vs,getTablesJson:()=>de(Z),getValuesJson:()=>de(_),getJson:()=>de([Z,_]),getTablesSchemaJson:()=>de(H),getValuesSchemaJson:()=>de(D),getSchemaJson:()=>de([H,D]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>kt((()=>{(ie(e)?Rs:Ts)(e),(ie(t)?Ls:ks)(t)})),setTables:Ts,setTable:(e,t)=>kt((e=>Fe(t,e)?Xe(e,t):0),e),setRow:(e,t,s)=>kt(((e,t)=>Je(e,t,s)?Ye(e,at(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let l;return Je(e,l,t)&&(e=x(e),Ye(e,at(e),l=lt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>kt(((e,t)=>{if(Je(e,t,s,1)){const l=at(e);re(s,((s,a)=>_e(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>kt(((e,t,s)=>N(He(e,t,s,E(l)?l(hs(e,t,s)):l),(l=>_e(e,at(e),t,s,l)))),e,t,s),setValues:ks,setPartialValues:e=>kt((()=>Be(e,1)?re(e,((e,t)=>st(t,e))):0)),setValue:(e,t)=>kt((e=>N(De(e,E(t)?t(gs(e)):t),(t=>st(e,t)))),e),applyChanges:e=>kt((()=>{re(e[0],((e,t)=>q(e)?qs(t):re(e,((e,s)=>q(e)?Ns(t,s):re(e,((e,l)=>Ae(As,t,s,l,e))))))),re(e[1],((e,t)=>Pe(As,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{et(ue(e))}catch{}return As},setJson:e=>kt((()=>{try{const[t,s]=ue(e);Ge(t),et(s)}catch{Ss(e)}})),setTablesSchema:xs,setValuesSchema:Vs,setSchema:(e,t)=>kt((()=>{xs(e),Vs(t)})),delTables:Rs,delTable:qs,delRow:Ns,delCell:(e,t,s,l)=>kt(((e,t,s)=>N(Pt(Z,e),(a=>N(Pt(a,t),(n=>Nt(n,s)?rt(e,a,t,n,s,l):0))))),e,t,s),delValues:Ls,delValue:e=>kt((e=>Nt(_,e)?it(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>kt((()=>{Ms(),Es()})),transaction:zs,startTransaction:$s,getTransactionChanges:()=>[Dt(z,((e,t)=>-1===Pt(k,t)?void 0:Dt(e,((e,s)=>-1===Pt(Pt(R,t),s)?void 0:Dt(e,(([,e])=>e),((e,t)=>is(t)))),ie)),ie),Dt(P,(([,e])=>e),((e,t)=>is(t)))],getTransactionLog:()=>[l,n,jt(z,rs,is),jt(F),Dt(P,rs,is),Dt(J),Dt(k),Qt(R),jt(M),Dt(A)],finishTransaction:Os,forEachTable:e=>zt(Z,((t,s)=>e(s,(e=>zt(t,((t,s)=>e(s,(e=>Ft(t,e))))))))),forEachTableCell:(e,t)=>Ft(Pt(Y,x(e)),t),forEachRow:(e,t)=>zt(Pt(Z,x(e)),((e,s)=>t(s,(t=>Ft(e,t))))),forEachCell:(e,t,s)=>Ft(Pt(Pt(Z,x(e)),x(t)),s),forEachValue:e=>Ft(_,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=_t(e,t,s,l,a);return Le((()=>{const o=_t(e,t,s,l,a);var i,d,u;d=r,O(i=o)===O(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(As,e,t,s,l,a,r))}),pe[o?1:0],[e,t],[Mt])},addStartTransactionListener:e=>Le(e,qe),addWillFinishTransactionListener:e=>Le(e,Ne[0]),addDidFinishTransactionListener:e=>Le(e,Ne[1]),callListener:e=>(ze(e),As),delListener:e=>(Ee(e),As),getListenerStats:()=>({hasTables:ns(ee),tables:ns(te),tableIds:ns(le),hasTable:ns(ae),table:ns(ce),tableCellIds:ns(he),hasTableCell:ns(me,Rt),rowCount:ns(be),rowIds:ns(ge),sortedRowIds:ns(pe),hasRow:ns(Ie,Rt),row:ns(fe,Rt),cellIds:ns(ye,Rt),hasCell:ns(we,qt),cell:ns(Ce,qt),invalidCell:ns(ve,qt),hasValues:ns(ke),values:ns(Se),valueIds:ns(xe),hasValue:ns(Ve),value:ns(Re),invalidValue:ns(Te),transaction:Vt(qe)+ns(Ne)}),createStore:cs,addListener:Le,callListeners:Me,addPostTransactionListener:e=>{s=e}};return re({[c+b]:[0,ee,[],()=>[ps()]],[b]:[0,te],[g]:[0,le],[c+m]:[1,ae,[Mt],e=>[Is(...e)]],[m]:[1,ce,[Mt]],[m+w]:[1,he,[Mt]],[c+m+y]:[2,me,[Mt,Xt],e=>[fs(...e)]],[I]:[1,be,[Mt]],[f]:[1,ge,[Mt]],[c+p]:[2,Ie,[Mt,Zt],e=>[ys(...e)]],[p]:[2,fe,[Mt,Zt]],[w]:[2,ye,[Mt,Zt]],[c+y]:[3,we,[Mt,Zt,ss],e=>[ws(...e)]],[y]:[3,Ce,[Mt,Zt,ss],e=>as(hs(...e))],InvalidCell:[3,ve],[c+v]:[0,ke,[],()=>[Cs()]],[v]:[0,Se],[T]:[0,xe],[c+C]:[1,Ve,[bs],e=>[vs(...e)]],[C]:[1,Re,[bs],e=>as(gs(e[0]))],InvalidValue:[1,Te]},(([e,t,s,l],a)=>{As["add"+a+"Listener"]=(...a)=>Le(a[e],t[a[e+1]?1:0],e>0?$(a,0,e):void 0,s,l)})),se(As)},hs=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(cs),a=me.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,o,[r,i]=[],d=[])=>{let u,c,h,m=0,b=0,g=0,p=0;Ht(Xt,d,(()=>0)),Ht(Yt,d,(()=>[]));const I=(o?e.getMergeableContent:null)??e.getContent,f=e.getTransactionChanges,y=async e=>(2!=m&&(m=1,b++,await w.schedule((async()=>{await e(),m=0}))),w),w={load:async(s,l)=>await y((async()=>{try{const s=await t();(o&&M(s[0])?e.applyMergeableChanges:e.setContent)(s)}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(w.stopAutoLoad(),await w.load(s,a),p=1,h=l((async(s,l)=>{if(l){const t=l();await y((async()=>e.applyChanges(t)))}else await y((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),w),stopAutoLoad:()=>(p&&(a(h),h=void 0,p=0),w),save:async e=>(1!=m&&(m=2,g++,await w.schedule((async()=>{try{await s(I,e)}catch(e){n?.(e)}m=0}))),w),startAutoSave:async()=>(await w.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const[e,t]=f();ie(e)&&ie(t)||w.save((()=>[e,t]))})),w),stopAutoSave:()=>(N(u,e.delListener),u=void 0,w),schedule:async(...e)=>(K(Pt(Yt,d),...e),await(async()=>{if(!Pt(Xt,d)){for(Jt(Xt,d,1);!q(c=X(Pt(Yt,d)));)try{await c()}catch(e){n?.(e)}Jt(Xt,d,0)}})(),w),getStore:()=>e,destroy:()=>w.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:b,saves:g})};return r&&(w[r]=()=>i),se(w)})(e,(async()=>ue(s.getItem(t))),(async e=>s.setItem(t,de(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ue(l.newValue)))};return _t.addEventListener(Zt,l),l}),(e=>_t.removeEventListener(Zt,e)),l,!1,["getStorageName",t]))(e,ce,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),F(P,null,F("aside",{id:ce},F(ze,{s:l}),F(kt,{s:l})),F("style",null,Ee))};e.EditableCellView=ot,e.EditableValueView=rt,e.RelationshipInHtmlTable=at,e.ResultSortedTableInHtmlTable=nt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Ye,{...a,params:We(Xe(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ge(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=lt,e.SortedTableInHtmlTable=tt,e.SortedTablePaginator=it,e.StoreInspector=e=>F(hs,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Ye,{...n,params:We(Xe(s.useTableCellIds(e,t),a,l?ot:s.CellView),Ue(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=st},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,y="Cell",w=y+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,M=(e,t,s)=>q(e)?s?.():t(e),N=e=>e==n||e==o,L=e=>l(e)==n,E=e=>l(e)==i,z=e=>Array.isArray(e),$=(e,t,s)=>e.slice(t,s),O=e=>e.length,{PureComponent:A,Fragment:F,createElement:J,useCallback:P,useLayoutEffect:H,useRef:B,useState:D}=t,Q=(e,...t)=>q(e)?{}:e(...t),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),G=e=>0==O(e),K=(e,...t)=>e.push(...t),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.entries,ee=Y.keys,te=Y.isFrozen,se=Y.freeze,le=e=>!q(e)&&M(Z(e),(e=>e==Y.prototype||q(Z(e))),(()=>!0)),ae=(e=[])=>Y.fromEntries(e),ne=(e,t)=>t in e,oe=(e,t)=>(delete e[t],e),re=(e,t)=>U(_(e),(([e,s])=>t(s,e))),ie=e=>le(e)&&0==(e=>O(ee(e)))(e),de=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),ue=JSON.parse,ce="tinybaseStoreInspector",he="TinyBase Store Inspector",me=["left","top","bottom","right","full"],be="state",ge="sort",pe="open",Ie="position",fe=pe,ye="editable",we=(...e)=>de(e),Ce=(e,t)=>U(j(e),t),ve=(e,t)=>[!!s.useCell(be,e,ye,t),P((s=>{t.setCell(be,e,ye,(e=>!e)),s.preventDefault()}),[t,e])],Te="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ke='content:url("',Se=ke+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",xe='</svg>")',Ve=ke+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Re=U([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Se+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+xe)),qe=Se+"<path d='M20 20l60 60M20 80l60-60' />"+xe,Me=Se+`<path d='${Te}' />`+xe,Ne=Se+`<path d='${Te}M20 20l60 60' />`+xe,Le="*::-webkit-scrollbar",Ee=((e,t="")=>e.join(t))(re({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Le]:"width:0.5rem;height:0.5rem;",[Le+"-track"]:"background:#111",[Le+"-thumb"]:"background:#999;border:1px solid #111",[Le+"-thumb:hover"]:"background:#fff",[Le+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+Ve,...ae(U(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...ae(U(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":Ve,"header>img:nth-of-type(6)":qe,...ae(U(Re,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Me,"details[open]>summary img.done":Ne,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ce} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ce} ${t}{${e}}`:""))),ze=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!0),[],e);return s.useValue(fe,e)?null:J("img",{onClick:l,title:he,"data-position":t})},$e=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(be,e,pe,o),i=s.useSetCellCallback(be,e,pe,(e=>e[k].open),[],o);return J("details",{open:r,onToggle:i},J("summary",null,t,a?J("img",{onClick:a,className:l?"done":"edit"}):null),n)},Oe=e=>{const t=l(e);return N(t)||t==r&&R(e)?t:void 0},Ae=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Fe=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Je=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Pe,useMemo:He,useState:Be}=t,De="editable",Qe=(e,t)=>U(s.useTableCellIds(e,t),(t=>e+"."+t)),je=(e,t,s)=>{const l=Pe(e,t);return s?l:void 0},We=(...e)=>He((()=>e),e),Ue=(e,t)=>He((()=>({store:e,tableId:t})),[e,t]),Ge=(e,t)=>He((()=>({queries:e,queryId:t})),[e,t]),Ke=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Be([e,t,l]),h=Pe((e=>{c(e),r?.(e)}),[r]),m=je((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Pe((e=>h([i,d,e])),[h,i,d]),g=!0===o?it:o;return[[i,d,u],m,He((()=>!1===o?null:J(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Xe=(e,t,s)=>He((()=>{const l=t??e;return a=z(l)?ae(U(l,(e=>[e,e]))):l,n=(e,t)=>({label:t,component:s,...L(e)?{label:e}:e}),ae(re(a,((e,t)=>[t,n(e,t)])));var a,n}),[t,s,e]),Ye=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>J("table",{className:e},i?J("caption",null,i):null,!1===t?null:J("thead",null,J("tr",null,!1===s?null:J(Ze,{sort:o??[],label:"Id",onClick:r}),re(l,(({label:e},t)=>J(Ze,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),J("tbody",null,U(n,(e=>J("tr",{key:e},!1===s?null:J("th",null,e),re(l,(({component:t,getComponentProps:s},l)=>J("td",{key:l},J(t,{...Q(s,e,l),...a,rowId:e,cellId:l}))))))))),Ze=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>J("th",{onClick:je((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),_e=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return J("tr",null,!1===l?null:J(t.Fragment,null,J("th",null,e),J("th",null,u)),re(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:J("td",{key:l},J(t,{...Q(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},et=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Be(),[u,c]=Be(),[h,m]=Be(),[b,g]=Be(),[p,I]=Be();u!==e&&(d(Oe(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Pe(((e,s)=>{s(e),c(e),t(e)}),[t]),y=Pe((()=>{if(!l?.()){const e=Je(i,r,o,n),s=Je(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return J("div",{className:s},a?J("button",{className:i,onClick:y},i):null,Je(i,J("input",{key:i,value:h,onChange:Pe((e=>f(e[k][S]+"",m)),[f])}),J("input",{key:i,type:"number",value:b,onChange:Pe((e=>f(Number(e[k][S]||0),g)),[f])}),J("input",{key:i,type:"checkbox",checked:p,onChange:Pe((e=>f(!!e[k].checked,I)),[f])})))},tt=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ke(t,l,i,a,n,s.useRowCount(e,o),d,u);return J(Ye,{...h,params:We(Xe(s.useTableCellIds(e,o),c,r?ot:s.CellView),Ue(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},st=({store:e,editable:t=!1,valueComponent:l=(t?rt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>J("table",{className:n},!1===o?null:J("thead",null,J("tr",null,!1===r?null:J("th",null,"Id"),J("th",null,C))),J("tbody",null,U(s.useValueIds(e),(t=>J("tr",{key:t},!1===r?null:J("th",null,t),J("td",null,J(l,{...Q(a,t),valueId:t,store:e}))))))),lt=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return J(Ye,{...o,params:We(Xe(s.useTableCellIds(d,i),n,a?ot:s.CellView),Ue(i,d),s.useSliceRowIds(e,t,r))})},at=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Xe([...Qe(c,u),...Qe(h,u)],n,a?ot:s.CellView),b=We(i,m,c,h,e,d,u);return J("table",{className:o},!1===r?null:J("thead",null,J("tr",null,!1===i?null:J(t.Fragment,null,J("th",null,c,".Id"),J("th",null,h,".Id")),re(m,(({label:e},t)=>J("th",{key:t},e))))),J("tbody",null,U(s.useRowIds(c,u),(e=>J(_e,{key:e,localRowId:e,params:b})))))},nt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ke(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return J(Ye,{...c,params:We(Xe(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ge(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},ot=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>J(et,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??De+y,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),rt=({valueId:e,store:t,className:l,showType:a})=>J(et,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??De+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),it=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=je((()=>e(l-a)),[e,l,a],l>0),i=je((()=>e(l+a)),[e,l,a],l+a<s);return J(t.Fragment,null,s>a&&J(t.Fragment,null,J("button",{className:"previous",disabled:0==l,onClick:r},"←"),J("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},dt=({indexes:e,indexesId:t,indexId:l,s:a})=>J($e,{uniqueId:we("i",t,l),summary:"Index: "+l,s:a},U(s.useSliceIds(l,e),(s=>J(ut,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ut=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=ve(n,a);return J($e,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},J(lt,{sliceId:l,indexId:s,indexes:e,editable:o}))},ct=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:J($e,{uniqueId:we("i",e),summary:"Indexes: "+(e??u),s:t},G(a)?"No indexes defined":Ce(a,(s=>J(dt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},ht=({metrics:e,metricId:t})=>J("tr",null,J("th",null,t),J("td",null,e?.getTableId(t)),J("td",null,s.useMetric(t,e))),mt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:J($e,{uniqueId:we("m",e),summary:"Metrics: "+(e??u),s:t},G(a)?"No metrics defined":J("table",null,J("thead",null,J("th",null,"Metric Id"),J("th",null,"Table Id"),J("th",null,"Metric")),J("tbody",null,U(a,(e=>J(ht,{metrics:l,metricId:e,key:e}))))))},bt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=we("q",t,l),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a);return J($e,{uniqueId:n,summary:"Query: "+l,s:a},J(nt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},gt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:J($e,{uniqueId:we("q",e),summary:"Queries: "+(e??u),s:t},G(a)?"No queries defined":Ce(a,(s=>J(bt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},pt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=ve(a,l);return J($e,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},J(at,{relationshipId:s,relationships:e,editable:n}))},It=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:J($e,{uniqueId:we("r",e),summary:"Relationships: "+(e??u),s:t},G(a)?"No relationships defined":Ce(a,(s=>J(pt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},ft=({tableId:e,store:t,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a),[u,c]=ve(n,a);return J($e,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},J(tt,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},yt=({store:e,storeId:t,s:l})=>{const a=we("v",t),[n,o]=ve(a,l);return G(s.useValueIds(e))?null:J($e,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},J(st,{store:e,editable:n}))},wt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:J($e,{uniqueId:we("s",e),summary:"Store: "+(e??u),s:t},J(yt,{storeId:e,store:l,s:t}),Ce(a,(s=>J(ft,{store:l,storeId:e,tableId:s,s:t,key:s}))))},Ct=({s:e})=>{const t=B(null),l=B(0),[a,n]=D(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);H((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=P((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&G(u)&&q(c)&&G(h)&&q(m)&&G(b)&&q(g)&&G(p)&&q(I)&&G(f)?J("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):J("article",{ref:t,onScroll:i},J(wt,{s:e}),U(u,(t=>J(wt,{storeId:t,s:e,key:t}))),J(mt,{s:e}),U(h,(t=>J(mt,{metricsId:t,s:e,key:t}))),J(ct,{s:e}),U(b,(t=>J(ct,{indexesId:t,s:e,key:t}))),J(It,{s:e}),U(p,(t=>J(It,{relationshipsId:t,s:e,key:t}))),J(gt,{s:e}),U(f,(t=>J(gt,{queriesId:t,s:e,key:t}))))};class vt extends A{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?J("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const Tt=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!1),[],e),a=s.useSetValueCallback(Ie,(e=>Number(e[k].dataset.id)),[],e);return J("header",null,J("img",{title:he}),J("span",null,he),U(me,((e,s)=>s==t?null:J("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),J("img",{onClick:l,title:"Close"}))},kt=({s:e})=>{const t=s.useValue(Ie,e)??1;return s.useValue(fe,e)?J("main",{"data-position":t},J(Tt,{s:e}),J(vt,null,J(Ct,{s:e}))):null},St=e=>t=>{return s=(t,s)=>t+e(s),Lt(t).reduce(s,0);var s},xt=e=>e?.size??0,Vt=St(xt),Rt=St(Vt),qt=St(Rt),Mt=(e,t)=>e?.has(t)??!1,Nt=e=>q(e)||0==xt(e),Lt=e=>[...e?.values()??[]],Et=e=>e.clear(),zt=(e,t)=>e?.forEach(t),$t=(e,t)=>e?.delete(t),Ot=e=>new Map(e),At=e=>[...e?.keys()??[]],Ft=(e,t)=>e?.get(t),Jt=(e,t)=>zt(e,((e,s)=>t(s,e))),Pt=(e,t,s)=>q(s)?($t(e,t),e):e?.set(t,s),Ht=(e,t,s,l)=>(Mt(e,t)?l?.(Ft(e,t)):Pt(e,t,s()),Ft(e,t)),Bt=(e,t,s,l=Pt)=>(re(t,((t,l)=>s(e,l,t))),Jt(e,(s=>ne(t,s)?0:l(e,s))),e),Dt=(e,t,s)=>{const l={};return zt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Qt=(e,t,s)=>Dt(e,(e=>Dt(e,t,s)),ie),jt=(e,t,s)=>Dt(e,(e=>Qt(e,t,s)),ie),Wt=(e,t)=>{const s=Ot();return zt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Ut=e=>Wt(e,Wt),Gt=e=>Wt(e,Ut),Kt=(e,t,s,l,a=0)=>M((s?Ht:Ft)(e,t[a],a>O(t)-2?s:Ot),(n=>{if(a>O(t)-2)return l?.(n)&&Pt(e,t[a]),n;const o=Kt(n,t,s,l,a+1);return Nt(n)&&Pt(e,t[a]),o})),Xt=Ot(),Yt=Ot(),Zt=e=>L(e?.[0]),_t="storage",es=globalThis.window,ts=e=>new Set(z(e)||q(e)?e:[e]),ss=(e,t)=>e?.add(t),ls=/^\d+$/,as=()=>{const e=[];let t=0;return[s=>(s?X(e):null)??a+t++,t=>{ls.test(t)&&O(e)<1e3&&K(e,t)}]},ns=e=>[e,e],os=(e,t=Vt)=>t(e[0])+t(e[1]),rs=()=>[Ot(),Ot()],is=e=>[...e],ds=([e,t])=>e===t,us=(e,t,s)=>q(e)||!le(e)||ie(e)||te(e)?(s?.(),!1):(re(e,((s,l)=>{t(s,l)||oe(e,l)})),!ie(e)),cs=(e,t,s)=>Pt(e,t,Ft(e,t)==-s?void 0:s),hs=()=>{let e,t,s=!1,l=!1,n=0,o=[];const i=Ot(),h=Ot(),k=Ot(),S=Ot(),V=Ot(),R=Ot(),L=Ot(),z=Ot(),A=Ot(),F=Ot(),J=Ot(),P=Ot(),H=Ot(),B=Ot(),D=ts(),Q=Ot(),G=Ot(),X=Ot(),Y=Ot(),Z=rs(),_=rs(),ee=rs(),te=rs(),le=rs(),ae=rs(),ce=rs(),he=rs(),me=rs(),be=rs(),ge=rs(),pe=rs(),Ie=rs(),fe=rs(),ye=rs(),we=rs(),Ce=rs(),ve=rs(),Te=rs(),ke=rs(),Se=rs(),xe=rs(),Ve=Ot(),Re=rs(),[qe,Me,Ne,Le]=(e=>{let t;const[s,l]=as(),n=Ot();return[(e,l,o,r=[],i=(()=>[]))=>{t??=$s;const d=s(1);return Pt(n,d,[e,l,o,r,i]),ss(Kt(l,o??[a],ts),d),d},(e,s,...l)=>W(((e,t=[a])=>{const s=[],l=(e,a)=>a==O(t)?K(s,e):null===t[a]?zt(e,(e=>l(e,a+1))):W([t[a],null],(t=>l(Ft(e,t),a+1)));return l(e,0),s})(e,s),(e=>zt(e,(e=>Ft(n,e)[0](t,...s??[],...l))))),e=>M(Ft(n,e),(([,t,s])=>(Kt(t,s??[a],void 0,(t=>($t(t,e),Nt(t)?1:0))),Pt(n,e),l(e),s))),e=>M(Ft(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=O(o);r==O(s)?e(t,...o,...a(o)):q(s[r])?W(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ee=e=>{if(!us(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!N(t)&&t!=r||(Oe(e[u])!=t&&oe(e,u),0))},ze=(t,s)=>(!e||Mt(J,s)||mt(s))&&us(t,((e,t)=>$e(s,t,e)),(()=>mt(s))),$e=(e,t,s,l)=>us(l?s:Be(s,e,t),((l,a)=>M(Je(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>mt(e,t))),Je=(t,s,l,a)=>e?M(Ft(Ft(J,t),l),(e=>Oe(a)!=e[d]?mt(t,s,l,a,e[u]):a),(()=>mt(t,s,l,a))):q(Oe(a))?mt(t,s,l,a):a,Pe=(e,t)=>us(t?e:De(e),((t,s)=>M(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>bt())),He=(e,s)=>t?M(Ft(H,e),(t=>Oe(s)!=t[d]?bt(e,s,t[u]):s),(()=>bt(e,s))):q(Oe(s))?bt(e,s):s,Be=(e,t,s)=>(M(Ft(P,t),(([l,a])=>{zt(l,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(a,(l=>{ne(e,l)||mt(t,s,l)}))})),e),De=e=>(t&&(zt(B,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(D,(t=>{ne(e,t)||bt(t)}))),e),Qe=e=>Bt(J,e,((e,t,s)=>{const l=Ot(),a=ts();Bt(Ht(J,t,Ot),s,((e,t,s)=>{Pt(e,t,s),M(s[u],(e=>Pt(l,t,e)),(()=>ss(a,t)))})),Pt(P,t,[l,a])}),((e,t)=>{Pt(J,t),Pt(P,t)})),je=e=>Bt(H,e,((e,t,s)=>{Pt(H,t,s),M(s[u],(e=>Pt(B,t,e)),(()=>ss(D,t)))}),((e,t)=>{Pt(H,t),Pt(B,t),$t(D,t)})),We=e=>ie(e)?xs():Cs(e),Ue=e=>Bt(X,e,((e,t,s)=>Ge(t,s)),((e,t)=>lt(t))),Ge=(e,t)=>Bt(Ht(X,e,(()=>(rt(e,1),Pt(Q,e,as()),Pt(G,e,Ot()),Ot()))),t,((t,s,l)=>Ke(e,t,s,l)),((t,s)=>at(e,t,s))),Ke=(e,t,s,l,a)=>Bt(Ht(t,s,(()=>(it(e,s,1),Ot()))),l,((t,l,a)=>Xe(e,s,t,l,a)),((l,n)=>nt(e,t,s,l,n,a))),Xe=(e,t,s,l,a)=>{Mt(s,l)||dt(e,t,l,1);const n=Ft(s,l);a!==n&&(ut(e,t,l,n,a),Pt(s,l,a))},Ye=(e,t,s,l,a)=>M(Ft(t,s),(t=>Xe(e,s,t,l,a)),(()=>Ke(e,t,s,Be({[l]:a},e,s)))),Ze=e=>ie(e)?qs():vs(e),_e=e=>Bt(Y,e,((e,t,s)=>et(t,s)),((e,t)=>ot(t))),et=(e,t)=>{Mt(Y,e)||ct(e,1);const s=Ft(Y,e);t!==s&&(ht(e,s,t),Pt(Y,e,t))},tt=(e,t)=>{const[s]=Ft(Q,e),l=s(t);return Mt(Ft(X,e),l)?tt(e,t):l},st=e=>Ft(X,e)??Ge(e,{}),lt=e=>Ge(e,{}),at=(e,t,s)=>{const[,l]=Ft(Q,e);l(s),Ke(e,t,s,{},!0)},nt=(e,t,s,l,a,n)=>{const o=Ft(Ft(P,e)?.[0],a);if(!q(o)&&!n)return Xe(e,s,l,a,o);const r=t=>{ut(e,s,t,Ft(l,t)),dt(e,s,t,-1),Pt(l,t)};q(o)?r(a):Jt(l,r),Nt(l)&&(it(e,s,-1),Nt(Pt(t,s))&&(rt(e,-1),Pt(X,e),Pt(Q,e),Pt(G,e)))},ot=e=>{const t=Ft(B,e);if(!q(t))return et(e,t);ht(e,Ft(Y,e)),ct(e,-1),Pt(Y,e)},rt=(e,t)=>cs(i,e,t),it=(e,t,s)=>cs(Ht(S,e,Ot),t,s)&&Pt(k,e,Ht(k,e,(()=>0))+s),dt=(e,t,s,l)=>{const a=Ft(G,e),n=Ft(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&cs(Ht(h,e,Ot),s,l),Pt(a,s,n!=-l?n+l:null),cs(Ht(Ht(V,e,Ot),t,Ot),s,l)},ut=(e,t,s,l,a)=>Ht(Ht(Ht(R,e,Ot),t,Ot),s,(()=>[l,0]))[1]=a,ct=(e,t)=>cs(L,e,t),ht=(e,t,s)=>Ht(z,e,(()=>[t,0]))[1]=s,mt=(e,t,s,l,a)=>(K(Ht(Ht(Ht(A,e,Ot),t,Ot),s,(()=>[])),l),a),bt=(e,t,s)=>(K(Ht(F,e,(()=>[])),t),s),gt=(e,t,s)=>M(Ft(Ft(Ft(R,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(_t(e,t,s))])),pt=e=>M(Ft(z,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ns(ms(e))])),It=e=>Nt(A)||Nt(we[e])?0:zt(e?Gt(A):A,((t,s)=>zt(t,((t,l)=>zt(t,((t,a)=>Me(we[e],[s,l,a],t))))))),ft=e=>Nt(F)||Nt(Ce[e])?0:zt(e?Wt(F):F,((t,s)=>Me(Ce[e],[s],t))),yt=(e,t,s,l)=>{if(!Nt(e))return Me(t,l,(()=>Dt(e))),Jt(e,((e,t)=>Me(s,[...l??[],e],1==t))),1},wt=e=>{const t=bs();t!=s&&Me(Z[e],void 0,t);const l=Nt(be[e]),a=Nt(Ie[e])&&Nt(fe[e])&&Nt(me[e])&&Nt(ge[e])&&Nt(ae[e])&&Nt(ce[e])&&Nt(he[e])&&l&&Nt(ee[e])&&Nt(te[e]),n=Nt(ye[e])&&Nt(pe[e])&&Nt(le[e])&&Nt(_[e]);if(!a||!n){const t=e?[Wt(i),Ut(h),Wt(k),Ut(S),Gt(V),Gt(R)]:[i,h,k,S,V,R];if(!a){yt(t[0],ee[e],te[e]),zt(t[1],((t,s)=>yt(t,ae[e],ce[e],[s]))),zt(t[2],((t,s)=>{0!=t&&Me(he[e],[s],Lt(s))}));const s=ts();zt(t[3],((t,a)=>{yt(t,me[e],ge[e],[a])&&!l&&(Me(be[e],[a,null]),ss(s,a))})),l||zt(t[5],((t,l)=>{if(!Mt(s,l)){const s=ts();zt(t,(e=>zt(e,(([t,l],a)=>l!==t?ss(s,a):$t(e,a))))),zt(s,(t=>Me(be[e],[l,t])))}})),zt(t[4],((t,s)=>zt(t,((t,l)=>yt(t,Ie[e],fe[e],[s,l])))))}if(!n){let s;zt(t[5],((t,l)=>{let a;zt(t,((t,n)=>{let o;zt(t,(([t,r],i)=>{r!==t&&(Me(ye[e],[l,n,i],r,t,gt),s=a=o=1)})),o&&Me(pe[e],[l,n],gt)})),a&&Me(le[e],[l],gt)})),s&&Me(_[e],void 0,gt)}}},Ct=e=>{const t=ys();t!=l&&Me(ve[e],void 0,t);const s=Nt(ke[e])&&Nt(Se[e]),a=Nt(xe[e])&&Nt(Te[e]);if(!s||!a){const t=e?[Wt(L),Wt(z)]:[L,z];if(s||yt(t[0],ke[e],Se[e]),!a){let s;zt(t[1],(([t,l],a)=>{l!==t&&(Me(xe[e],[a],l,t,pt),s=1)})),s&&Me(Te[e],void 0,pt)}}},vt=(e,...t)=>(Ls((()=>e(...U(t,x)))),$s),Tt=()=>jt(X),kt=()=>At(X),St=e=>At(Ft(G,x(e))),Lt=e=>xt(Ft(X,x(e))),Xt=e=>At(Ft(X,x(e))),Yt=(e,t,s,l=0,a)=>{return U($(j((n=Ft(X,x(e)),o=(e,s)=>[q(t)?s:Ft(e,x(t)),s],U([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},Zt=(e,t)=>At(Ft(Ft(X,x(e)),x(t))),_t=(e,t,s)=>Ft(Ft(Ft(X,x(e)),x(t)),x(s)),es=()=>Dt(Y),ls=()=>At(Y),ms=e=>Ft(Y,x(e)),bs=()=>!Nt(X),gs=e=>Mt(X,x(e)),ps=(e,t)=>Mt(Ft(G,x(e)),x(t)),Is=(e,t)=>Mt(Ft(X,x(e)),x(t)),fs=(e,t,s)=>Mt(Ft(Ft(X,x(e)),x(t)),x(s)),ys=()=>!Nt(Y),ws=e=>Mt(Y,x(e)),Cs=e=>vt((()=>(e=>us(e,ze,mt))(e)?Ue(e):0)),vs=e=>vt((()=>Pe(e)?_e(e):0)),Ts=e=>{try{We(ue(e))}catch{}return $s},ks=t=>vt((()=>{if((e=us(t,(e=>us(e,Ee))))&&(Qe(t),!Nt(X))){const e=Tt();xs(),Cs(e)}})),Ss=e=>vt((()=>{if(t=(e=>us(e,Ee))(e)){const s=es();Ns(),qs(),t=!0,je(e),vs(s)}})),xs=()=>vt((()=>Ue({}))),Vs=e=>vt((e=>Mt(X,e)?lt(e):0),e),Rs=(e,t)=>vt(((e,t)=>M(Ft(X,e),(s=>Mt(s,t)?at(e,s,t):0))),e,t),qs=()=>vt((()=>_e({}))),Ms=()=>vt((()=>{Qe({}),e=!1})),Ns=()=>vt((()=>{je({}),t=!1})),Ls=(e,t)=>{if(-1!=n){Es();const s=e();return zs(t),s}},Es=()=>(-1!=n&&n++,1==n&&Me(Ve,void 0),$s),zs=e=>(n>0&&(n--,0==n&&(n=1,It(1),Nt(R)||wt(1),ft(1),Nt(z)||Ct(1),e?.($s)&&(zt(R,((e,t)=>zt(e,((e,s)=>zt(e,(([e],l)=>Ae($s,t,s,l,e))))))),Et(R),zt(z,(([e],t)=>Fe($s,t,e))),Et(z)),Me(Re[0],void 0),n=-1,It(0),Nt(R)||wt(0),ft(0),Nt(z)||Ct(0),o[0]?.($s),Me(Re[1],void 0),o[1]?.($s),n=0,s=bs(),l=ys(),W([i,h,k,S,V,R,A,L,z,F],Et))),$s),$s={getContent:()=>[Tt(),es()],getTables:Tt,getTableIds:kt,getTable:e=>Qt(Ft(X,x(e))),getTableCellIds:St,getRowCount:Lt,getRowIds:Xt,getSortedRowIds:Yt,getRow:(e,t)=>Dt(Ft(Ft(X,x(e)),x(t))),getCellIds:Zt,getCell:_t,getValues:es,getValueIds:ls,getValue:ms,hasTables:bs,hasTable:gs,hasTableCell:ps,hasRow:Is,hasCell:fs,hasValues:ys,hasValue:ws,getTablesJson:()=>de(X),getValuesJson:()=>de(Y),getJson:()=>de([X,Y]),getTablesSchemaJson:()=>de(J),getValuesSchemaJson:()=>de(H),getSchemaJson:()=>de([J,H]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>vt((()=>{(ie(e)?xs:Cs)(e),(ie(t)?qs:vs)(t)})),setTables:Cs,setTable:(e,t)=>vt((e=>ze(t,e)?Ge(e,t):0),e),setRow:(e,t,s)=>vt(((e,t)=>$e(e,t,s)?Ke(e,st(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ls((()=>{let l;return $e(e,l,t)&&(e=x(e),Ke(e,st(e),l=tt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>vt(((e,t)=>{if($e(e,t,s,1)){const l=st(e);re(s,((s,a)=>Ye(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>vt(((e,t,s)=>M(Je(e,t,s,E(l)?l(_t(e,t,s)):l),(l=>Ye(e,st(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>vt((()=>Pe(e,1)?re(e,((e,t)=>et(t,e))):0)),setValue:(e,t)=>vt((e=>M(He(e,E(t)?t(ms(e)):t),(t=>et(e,t)))),e),applyChanges:e=>vt((()=>{re(e[0],((e,t)=>q(e)?Vs(t):re(e,((e,s)=>q(e)?Rs(t,s):re(e,((e,l)=>Ae($s,t,s,l,e))))))),re(e[1],((e,t)=>Fe($s,t,e)))})),setTablesJson:Ts,setValuesJson:e=>{try{Ze(ue(e))}catch{}return $s},setJson:e=>vt((()=>{try{const[t,s]=ue(e);We(t),Ze(s)}catch{Ts(e)}})),setTablesSchema:ks,setValuesSchema:Ss,setSchema:(e,t)=>vt((()=>{ks(e),Ss(t)})),delTables:xs,delTable:Vs,delRow:Rs,delCell:(e,t,s,l)=>vt(((e,t,s)=>M(Ft(X,e),(a=>M(Ft(a,t),(n=>Mt(n,s)?nt(e,a,t,n,s,l):0))))),e,t,s),delValues:qs,delValue:e=>vt((e=>Mt(Y,e)?ot(e):0),e),delTablesSchema:Ms,delValuesSchema:Ns,delSchema:()=>vt((()=>{Ms(),Ns()})),transaction:Ls,startTransaction:Es,getTransactionChanges:()=>[Dt(R,((e,t)=>-1===Ft(i,t)?void 0:Dt(e,((e,s)=>-1===Ft(Ft(S,t),s)?void 0:Dt(e,(([,e])=>e),((e,t)=>ds(t)))),ie)),ie),Dt(z,(([,e])=>e),((e,t)=>ds(t)))],getTransactionLog:()=>[!Nt(R),!Nt(z),jt(R,is,ds),jt(A),Dt(z,is,ds),Dt(F),Dt(i),Qt(S),jt(V),Dt(L)],finishTransaction:zs,forEachTable:e=>zt(X,((t,s)=>e(s,(e=>zt(t,((t,s)=>e(s,(e=>Jt(t,e))))))))),forEachTableCell:(e,t)=>Jt(Ft(G,x(e)),t),forEachRow:(e,t)=>zt(Ft(X,x(e)),((e,s)=>t(s,(t=>Jt(e,t))))),forEachCell:(e,t,s)=>Jt(Ft(Ft(X,x(e)),x(t)),s),forEachValue:e=>Jt(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=Yt(e,t,s,l,a);return qe((()=>{const o=Yt(e,t,s,l,a);var i,d,u;d=r,O(i=o)===O(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n($s,e,t,s,l,a,r))}),be[o?1:0],[e,t],[kt])},addStartTransactionListener:e=>qe(e,Ve),addWillFinishTransactionListener:e=>qe(e,Re[0]),addDidFinishTransactionListener:e=>qe(e,Re[1]),callListener:e=>(Le(e),$s),delListener:e=>(Ne(e),$s),getListenerStats:()=>({hasTables:os(Z),tables:os(_),tableIds:os(ee),hasTable:os(te),table:os(le),tableCellIds:os(ae),hasTableCell:os(ce,Rt),rowCount:os(he),rowIds:os(me),sortedRowIds:os(be),hasRow:os(ge,Rt),row:os(pe,Rt),cellIds:os(Ie,Rt),hasCell:os(fe,qt),cell:os(ye,qt),invalidCell:os(we,qt),hasValues:os(ve),values:os(Te),valueIds:os(ke),hasValue:os(Se),value:os(xe),invalidValue:os(Ce),transaction:Vt(Ve)+os(Re)}),createStore:hs,addListener:qe,callListeners:Me,setInternalListeners:(e,t)=>o=[e,t]};return re({[c+b]:[0,Z,[],()=>[bs()]],[b]:[0,_],[g]:[0,ee],[c+m]:[1,te,[kt],e=>[gs(...e)]],[m]:[1,le,[kt]],[m+w]:[1,ae,[kt]],[c+m+y]:[2,ce,[kt,St],e=>[ps(...e)]],[I]:[1,he,[kt]],[f]:[1,me,[kt]],[c+p]:[2,ge,[kt,Xt],e=>[Is(...e)]],[p]:[2,pe,[kt,Xt]],[w]:[2,Ie,[kt,Xt]],[c+y]:[3,fe,[kt,Xt,Zt],e=>[fs(...e)]],[y]:[3,ye,[kt,Xt,Zt],e=>ns(_t(...e))],InvalidCell:[3,we],[c+v]:[0,ve,[],()=>[ys()]],[v]:[0,Te],[T]:[0,ke],[c+C]:[1,Se,[ls],e=>[ws(...e)]],[C]:[1,xe,[ls],e=>ns(ms(e[0]))],InvalidValue:[1,Ce]},(([e,t,s,l],a)=>{$s["add"+a+"Listener"]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?$(a,0,e):void 0,s,l)})),se($s)},ms=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(hs),a=me.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,o,[r,i]=[],d=[])=>{let u,c,h,m=0,b=0,g=0,p=0;Ht(Xt,d,(()=>0)),Ht(Yt,d,(()=>[]));const[I,f,y,w]=((e,t)=>!e||q(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!ie(e)||!ie(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!ie(e)||!ie(t)])(o,e),C=async e=>(2!=m&&(m=1,b++,await v.schedule((async()=>{await e(),m=0}))),v),v={load:async(s,l)=>await C((async()=>{try{const s=await t();(I&&Zt(s)?e.setMergeableContent:e.setContent)(s)}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(v.stopAutoLoad(),await v.load(s,a),p=1,h=l((async(s,l)=>{if(l){const t=l();await C((async()=>(I&&Zt(t)?e.applyMergeableChanges:e.applyChanges)(t)))}else await C((async()=>{try{const l=s?.()??await t();(I&&Zt(l)?e.setMergeableContent:e.setContent)(l)}catch(e){n?.(e)}}))})),v),stopAutoLoad:()=>(p&&(a(h),h=void 0,p=0),v),save:async e=>(1!=m&&(m=2,g++,await v.schedule((async()=>{try{await s(f,e)}catch(e){n?.(e)}m=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const e=y();w(e)&&v.save((()=>e))})),v),stopAutoSave:()=>(M(u,e.delListener),u=void 0,v),schedule:async(...e)=>(K(Ft(Yt,d),...e),await(async()=>{if(!Ft(Xt,d)){for(Pt(Xt,d,1);!q(c=X(Ft(Yt,d)));)try{await c()}catch(e){n?.(e)}Pt(Xt,d,0)}})(),v),getStore:()=>e,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:b,saves:g})};return r&&(v[r]=()=>i),se(v)})(e,(async()=>ue(s.getItem(t))),(async e=>s.setItem(t,de(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ue(l.newValue)))};return es.addEventListener(_t,l),l}),(e=>es.removeEventListener(_t,e)),l,!0,["getStorageName",t]))(e,ce,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),J(F,null,J("aside",{id:ce},J(ze,{s:l}),J(kt,{s:l})),J("style",null,Ee))};e.EditableCellView=ot,e.EditableValueView=rt,e.RelationshipInHtmlTable=at,e.ResultSortedTableInHtmlTable=nt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>J(Ye,{...a,params:We(Xe(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ge(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=lt,e.SortedTableInHtmlTable=tt,e.SortedTablePaginator=it,e.StoreInspector=e=>J(ms,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>J(Ye,{...n,params:We(Xe(s.useTableCellIds(e,t),a,l?ot:s.CellView),Ue(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=st},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
Binary file
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>null==e,t=(e,t,l)=>n(e)?null==l?void 0:l():t(e),l=e=>e.length,r=(e,n)=>e.includes(n),o=(e,n)=>e.forEach(n),s=e=>0==l(e),i=(e,...n)=>e.push(...n),u=e=>e.pop(),d=e=>e.shift(),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>n(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),C=(e,t,l)=>n(l)?(f(e,t),e):null==e?void 0:e.set(t,l),k=(e,n,t)=>(a(e,n)||C(e,n,t()),g(e,n)),L=(e,n,r,o,s=0)=>t((r?k:g)(e,n[s],s>l(n)-2?r:v),(t=>{if(s>l(n)-2)return(null==o?void 0:o(t))&&C(e,n[s]),t;const i=L(t,n,r,o,s+1);return h(t)&&C(e,n[s]),i})),y=e=>new Set(Array.isArray(e)||n(e)?e:[e]),w=/^\d+$/,b=((e,b)=>{const S=new WeakMap;return e=>{S.has(e)||S.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,F]=(e=>{let r;const[s,u]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?d(e):null)?l:""+n++},n=>{w.test(n)&&l(e)<1e3&&i(e,n)}]})(),c=v();return[(e,n,t,l=[],o=(()=>[]))=>{null!=r||(r=Z);const i=s(1);var u,d;return C(c,i,[e,n,t,l,o]),d=i,null==(u=L(n,null!=t?t:[""],y))||u.add(d),i},(e,n,...t)=>o(((e,n=[""])=>{const t=[],r=(e,s)=>s==l(n)?i(t,e):null===n[s]?p(e,(e=>r(e,s+1))):o([n[s],null],(n=>r(g(e,n),s+1)));return r(e,0),t})(e,n),(e=>p(e,(e=>g(c,e)[0](r,...null!=n?n:[],...t))))),e=>t(g(c,e),(([,n,t])=>(L(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),C(c,e),u(e),t))),e=>t(g(c,e),(([e,,t=[],s,i])=>{const u=(...d)=>{var c,a;const h=l(d);h==l(t)?e(r,...d,...i(d)):n(t[h])?o(null!=(a=null==(c=s[h])?void 0:c.call(s,...d))?a:[],(e=>u(...d,e))):u(...d,t[h])};u()}))]})(),I=v(),M=v(),_=[],O=[],W=(t,l)=>{V=0,e.transaction((()=>{const[r,o]=g(I,l);p(r,((l,r)=>p(l,((l,o)=>p(l,((l,s)=>((e,t,l,r,o)=>n(o)?e.delCell(t,l,r,!0):e.setCell(t,l,r,o))(e,r,o,s,l[t]))))))),p(o,((l,r)=>((e,t,l)=>n(l)?e.delValue(t):e.setValue(t,l))(e,r,l[t])))})),V=1},$=e=>{C(I,e),C(M,e),B(m,[e])},q=(e,n)=>o(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),$),D=()=>q(_,l(_)-x),G=()=>t(b,(()=>{i(_,b),D(),q(O),b=void 0,T=1})),H=()=>{b=u(_),T=1};let J,K;const N=(e="")=>(n(b)&&(b=""+S++,C(I,b,[z,E]),X(b,e),z=v(),E=v(),T=1),b),P=()=>{s(_)||(((e,...n)=>{e.unshift(...n)})(O,N()),W(0,b),b=u(_),T=1)},Q=()=>{s(O)||(i(_,b),b=d(O),W(1,b),T=1)},R=()=>{T&&(B(j),T=0)},U=e=>{const n=N(e);return R(),n},X=(e,n)=>(Y(e)&&g(M,e)!==n&&(C(M,e,n),B(m,[e])),Z),Y=e=>a(I,e),Z={setSize:e=>(x=e,D(),Z),addCheckpoint:U,setCheckpoint:X,getStore:()=>e,getCheckpointIds:()=>[[..._],b,[...O]],forEachCheckpoint:e=>{return n=e,p(M,((e,t)=>n(t,e)));var n},hasCheckpoint:Y,getCheckpoint:e=>g(M,e),goBackward:()=>(P(),R(),Z),goForward:()=>(Q(),R(),Z),goTo:e=>{const t=r(_,e)?P:r(O,e)?Q:null;for(;!n(t)&&e!=b;)t();return R(),Z},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(F(e),Z),clear:()=>(q(_),q(O),n(b)||$(b),b=void 0,S=0,U(),Z),clearForward:()=>(s(O)||(q(O),B(j)),Z),destroy:()=>{e.delListener(J),e.delListener(K)},getListenerStats:()=>({}),_registerListeners:()=>{J=e.addCellListener(null,null,null,((e,n,t,l,r,o)=>{if(V){G();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[o,void 0]));i[1]=r,i[0]===r&&h(C(s,l))&&h(C(e,t))&&h(C(z,n))&&H(),R()}})),K=e.addValueListener(null,((e,n,t,l)=>{if(V){G();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(C(E,n))&&H(),R()}}))}};return c(Z.clear())})(e));const T=S.get(e);return null==b||b(T),T}})(0,(e=>e._registerListeners()));e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>null==e,t=(e,t,l)=>n(e)?null==l?void 0:l():t(e),l=e=>e.length,r=(e,n)=>e.includes(n),o=(e,n)=>e.forEach(n),s=e=>0==l(e),i=(e,...n)=>e.push(...n),u=e=>e.pop(),d=e=>e.shift(),c=Object.freeze,a=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>n(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),p=(e,n)=>null==e?void 0:e.forEach(n),f=(e,n)=>null==e?void 0:e.delete(n),v=e=>new Map(e),g=(e,n)=>null==e?void 0:e.get(n),C=(e,t,l)=>n(l)?(f(e,t),e):null==e?void 0:e.set(t,l),k=(e,n,t,l)=>(a(e,n)?null==l||l(g(e,n)):C(e,n,t()),g(e,n)),L=(e,n,r,o,s=0)=>t((r?k:g)(e,n[s],s>l(n)-2?r:v),(t=>{if(s>l(n)-2)return(null==o?void 0:o(t))&&C(e,n[s]),t;const i=L(t,n,r,o,s+1);return h(t)&&C(e,n[s]),i})),y=e=>new Set(Array.isArray(e)||n(e)?e:[e]),w=/^\d+$/,b=((e,b)=>{const S=new WeakMap;return e=>{S.has(e)||S.set(e,(e=>{let b,S,T,x=100,z=v(),E=v(),V=1;const j=v(),m=v(),[A,B,F]=(e=>{let r;const[s,u]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?d(e):null)?l:""+n++},n=>{w.test(n)&&l(e)<1e3&&i(e,n)}]})(),c=v();return[(e,n,t,l=[],o=(()=>[]))=>{null!=r||(r=Z);const i=s(1);var u,d;return C(c,i,[e,n,t,l,o]),d=i,null==(u=L(n,null!=t?t:[""],y))||u.add(d),i},(e,n,...t)=>o(((e,n=[""])=>{const t=[],r=(e,s)=>s==l(n)?i(t,e):null===n[s]?p(e,(e=>r(e,s+1))):o([n[s],null],(n=>r(g(e,n),s+1)));return r(e,0),t})(e,n),(e=>p(e,(e=>g(c,e)[0](r,...null!=n?n:[],...t))))),e=>t(g(c,e),(([,n,t])=>(L(n,null!=t?t:[""],void 0,(n=>(f(n,e),h(n)?1:0))),C(c,e),u(e),t))),e=>t(g(c,e),(([e,,t=[],s,i])=>{const u=(...d)=>{var c,a;const h=l(d);h==l(t)?e(r,...d,...i(d)):n(t[h])?o(null!=(a=null==(c=s[h])?void 0:c.call(s,...d))?a:[],(e=>u(...d,e))):u(...d,t[h])};u()}))]})(),I=v(),M=v(),_=[],O=[],W=(t,l)=>{V=0,e.transaction((()=>{const[r,o]=g(I,l);p(r,((l,r)=>p(l,((l,o)=>p(l,((l,s)=>((e,t,l,r,o)=>n(o)?e.delCell(t,l,r,!0):e.setCell(t,l,r,o))(e,r,o,s,l[t]))))))),p(o,((l,r)=>((e,t,l)=>n(l)?e.delValue(t):e.setValue(t,l))(e,r,l[t])))})),V=1},$=e=>{C(I,e),C(M,e),B(m,[e])},q=(e,n)=>o(((e,n)=>e.splice(0,n))(e,null!=n?n:l(e)),$),D=()=>q(_,l(_)-x),G=()=>t(b,(()=>{i(_,b),D(),q(O),b=void 0,T=1})),H=()=>{b=u(_),T=1};let J,K;const N=(e="")=>(n(b)&&(b=""+S++,C(I,b,[z,E]),X(b,e),z=v(),E=v(),T=1),b),P=()=>{s(_)||(((e,...n)=>{e.unshift(...n)})(O,N()),W(0,b),b=u(_),T=1)},Q=()=>{s(O)||(i(_,b),b=d(O),W(1,b),T=1)},R=()=>{T&&(B(j),T=0)},U=e=>{const n=N(e);return R(),n},X=(e,n)=>(Y(e)&&g(M,e)!==n&&(C(M,e,n),B(m,[e])),Z),Y=e=>a(I,e),Z={setSize:e=>(x=e,D(),Z),addCheckpoint:U,setCheckpoint:X,getStore:()=>e,getCheckpointIds:()=>[[..._],b,[...O]],forEachCheckpoint:e=>{return n=e,p(M,((e,t)=>n(t,e)));var n},hasCheckpoint:Y,getCheckpoint:e=>g(M,e),goBackward:()=>(P(),R(),Z),goForward:()=>(Q(),R(),Z),goTo:e=>{const t=r(_,e)?P:r(O,e)?Q:null;for(;!n(t)&&e!=b;)t();return R(),Z},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,n)=>A(n,m,[e]),delListener:e=>(F(e),Z),clear:()=>(q(_),q(O),n(b)||$(b),b=void 0,S=0,U(),Z),clearForward:()=>(s(O)||(q(O),B(j)),Z),destroy:()=>{e.delListener(J),e.delListener(K)},getListenerStats:()=>({}),_registerListeners:()=>{J=e.addCellListener(null,null,null,((e,n,t,l,r,o)=>{if(V){G();const e=k(z,n,v),s=k(e,t,v),i=k(s,l,(()=>[o,void 0]));i[1]=r,i[0]===r&&h(C(s,l))&&h(C(e,t))&&h(C(z,n))&&H(),R()}})),K=e.addValueListener(null,((e,n,t,l)=>{if(V){G();const e=k(E,n,(()=>[l,void 0]));e[1]=t,e[0]===t&&h(C(E,n))&&H(),R()}}))}};return c(Z.clear())})(e));const T=S.get(e);return null==b||b(T),T}})(0,(e=>e._registerListeners()));e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
Binary file