tinybase 5.0.0-beta.1 → 5.0.0-beta.3

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 (313) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -0
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  20. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  24. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  26. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  30. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  31. package/lib/cjs/persisters.cjs +1 -1
  32. package/lib/cjs/persisters.cjs.gz +0 -0
  33. package/lib/cjs/store.cjs +1 -1
  34. package/lib/cjs/store.cjs.gz +0 -0
  35. package/lib/cjs/tinybase.cjs +1 -1
  36. package/lib/cjs/tinybase.cjs.gz +0 -0
  37. package/lib/cjs/tools.cjs +1 -1
  38. package/lib/cjs/tools.cjs.gz +0 -0
  39. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  40. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  41. package/lib/cjs/ui-react-dom.cjs +1 -1
  42. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  43. package/lib/cjs-es6/mergeable-store.cjs +1 -0
  44. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  45. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  46. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  47. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  48. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters.cjs +1 -1
  74. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  75. package/lib/cjs-es6/store.cjs +1 -1
  76. package/lib/cjs-es6/store.cjs.gz +0 -0
  77. package/lib/cjs-es6/tinybase.cjs +1 -1
  78. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  79. package/lib/cjs-es6/tools.cjs +1 -1
  80. package/lib/cjs-es6/tools.cjs.gz +0 -0
  81. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  82. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  83. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  84. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  85. package/lib/debug/mergeable-store.js +1863 -0
  86. package/lib/debug/persisters/persister-automerge.js +54 -53
  87. package/lib/debug/persisters/persister-browser.js +28 -18
  88. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +80 -57
  89. package/lib/debug/persisters/persister-electric-sql.js +80 -57
  90. package/lib/debug/persisters/persister-expo-sqlite-next.js +80 -57
  91. package/lib/debug/persisters/persister-expo-sqlite.js +80 -57
  92. package/lib/debug/persisters/persister-file.js +27 -18
  93. package/lib/debug/persisters/persister-indexed-db.js +34 -23
  94. package/lib/debug/persisters/persister-partykit-client.js +26 -23
  95. package/lib/debug/persisters/persister-partykit-server.js +11 -21
  96. package/lib/debug/persisters/persister-remote.js +28 -18
  97. package/lib/debug/persisters/persister-sqlite-wasm.js +80 -57
  98. package/lib/debug/persisters/persister-sqlite3.js +80 -57
  99. package/lib/debug/persisters/persister-yjs.js +50 -48
  100. package/lib/debug/persisters.js +27 -18
  101. package/lib/debug/queries.js +2 -2
  102. package/lib/debug/store.js +63 -71
  103. package/lib/debug/tinybase.js +354 -90
  104. package/lib/debug/tools.js +13 -15
  105. package/lib/debug/ui-react-dom.js +115 -119
  106. package/lib/es6/mergeable-store.js +1 -0
  107. package/lib/es6/mergeable-store.js.gz +0 -0
  108. package/lib/es6/persisters/persister-automerge.js +1 -1
  109. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  110. package/lib/es6/persisters/persister-browser.js +1 -1
  111. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  112. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  113. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  114. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  115. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  116. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  117. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  118. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  119. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  120. package/lib/es6/persisters/persister-file.js +1 -1
  121. package/lib/es6/persisters/persister-file.js.gz +0 -0
  122. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  123. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  124. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  125. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  126. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  127. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  128. package/lib/es6/persisters/persister-remote.js +1 -1
  129. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  130. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  131. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  132. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  133. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  134. package/lib/es6/persisters/persister-yjs.js +1 -1
  135. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  136. package/lib/es6/persisters.js +1 -1
  137. package/lib/es6/persisters.js.gz +0 -0
  138. package/lib/es6/store.js +1 -1
  139. package/lib/es6/store.js.gz +0 -0
  140. package/lib/es6/tinybase.js +1 -1
  141. package/lib/es6/tinybase.js.gz +0 -0
  142. package/lib/es6/tools.js +1 -1
  143. package/lib/es6/tools.js.gz +0 -0
  144. package/lib/es6/ui-react-dom-debug.js +1 -1
  145. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  146. package/lib/es6/ui-react-dom.js +1 -1
  147. package/lib/es6/ui-react-dom.js.gz +0 -0
  148. package/lib/mergeable-store.js +1 -0
  149. package/lib/mergeable-store.js.gz +0 -0
  150. package/lib/persisters/persister-automerge.js +1 -1
  151. package/lib/persisters/persister-automerge.js.gz +0 -0
  152. package/lib/persisters/persister-browser.js +1 -1
  153. package/lib/persisters/persister-browser.js.gz +0 -0
  154. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  155. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  156. package/lib/persisters/persister-electric-sql.js +1 -1
  157. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  158. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  159. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  160. package/lib/persisters/persister-expo-sqlite.js +1 -1
  161. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  162. package/lib/persisters/persister-file.js +1 -1
  163. package/lib/persisters/persister-file.js.gz +0 -0
  164. package/lib/persisters/persister-indexed-db.js +1 -1
  165. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  166. package/lib/persisters/persister-partykit-client.js +1 -1
  167. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  168. package/lib/persisters/persister-partykit-server.js +1 -1
  169. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  170. package/lib/persisters/persister-remote.js +1 -1
  171. package/lib/persisters/persister-remote.js.gz +0 -0
  172. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  173. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  174. package/lib/persisters/persister-sqlite3.js +1 -1
  175. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  176. package/lib/persisters/persister-yjs.js +1 -1
  177. package/lib/persisters/persister-yjs.js.gz +0 -0
  178. package/lib/persisters.js +1 -1
  179. package/lib/persisters.js.gz +0 -0
  180. package/lib/store.js +1 -1
  181. package/lib/store.js.gz +0 -0
  182. package/lib/tinybase.js +1 -1
  183. package/lib/tinybase.js.gz +0 -0
  184. package/lib/tools.js +1 -1
  185. package/lib/tools.js.gz +0 -0
  186. package/lib/types/mergeable-store.d.ts +79 -0
  187. package/lib/types/persisters/persister-automerge.d.ts +8 -7
  188. package/lib/types/persisters/persister-browser.d.ts +2 -0
  189. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
  190. package/lib/types/persisters/persister-electric-sql.d.ts +1 -0
  191. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +1 -0
  192. package/lib/types/persisters/persister-expo-sqlite.d.ts +1 -0
  193. package/lib/types/persisters/persister-file.d.ts +1 -0
  194. package/lib/types/persisters/persister-indexed-db.d.ts +1 -0
  195. package/lib/types/persisters/persister-partykit-client.d.ts +1 -0
  196. package/lib/types/persisters/persister-partykit-server.d.ts +12 -8
  197. package/lib/types/persisters/persister-remote.d.ts +1 -0
  198. package/lib/types/persisters/persister-sqlite-wasm.d.ts +1 -0
  199. package/lib/types/persisters/persister-sqlite3.d.ts +1 -0
  200. package/lib/types/persisters/persister-yjs.d.ts +1 -0
  201. package/lib/types/persisters.d.ts +50 -30
  202. package/lib/types/store.d.ts +241 -186
  203. package/lib/types/tinybase.d.ts +1 -0
  204. package/lib/types/tools.d.ts +2 -2
  205. package/lib/types/ui-react.d.ts +1 -0
  206. package/lib/types/with-schemas/internal/store.d.ts +4 -0
  207. package/lib/types/with-schemas/mergeable-store.d.ts +112 -0
  208. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +8 -7
  209. package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -0
  210. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
  211. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +1 -0
  212. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +1 -0
  213. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -0
  214. package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -0
  215. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +1 -0
  216. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +1 -0
  217. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +15 -11
  218. package/lib/types/with-schemas/persisters/persister-remote.d.ts +1 -0
  219. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -0
  220. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -0
  221. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +1 -0
  222. package/lib/types/with-schemas/persisters.d.ts +81 -45
  223. package/lib/types/with-schemas/store.d.ts +364 -273
  224. package/lib/types/with-schemas/tinybase.d.ts +1 -0
  225. package/lib/types/with-schemas/tools.d.ts +2 -2
  226. package/lib/ui-react-dom.js +1 -1
  227. package/lib/ui-react-dom.js.gz +0 -0
  228. package/lib/umd/mergeable-store.js +1 -0
  229. package/lib/umd/mergeable-store.js.gz +0 -0
  230. package/lib/umd/persisters/persister-automerge.js +1 -1
  231. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  232. package/lib/umd/persisters/persister-browser.js +1 -1
  233. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  234. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  235. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  236. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  237. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  238. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  239. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  240. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  241. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  242. package/lib/umd/persisters/persister-file.js +1 -1
  243. package/lib/umd/persisters/persister-file.js.gz +0 -0
  244. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  245. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  246. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  247. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  248. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  249. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  250. package/lib/umd/persisters/persister-remote.js +1 -1
  251. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  252. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  253. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  254. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  255. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  256. package/lib/umd/persisters/persister-yjs.js +1 -1
  257. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  258. package/lib/umd/persisters.js +1 -1
  259. package/lib/umd/persisters.js.gz +0 -0
  260. package/lib/umd/store.js +1 -1
  261. package/lib/umd/store.js.gz +0 -0
  262. package/lib/umd/tinybase.js +1 -1
  263. package/lib/umd/tinybase.js.gz +0 -0
  264. package/lib/umd/tools.js +1 -1
  265. package/lib/umd/tools.js.gz +0 -0
  266. package/lib/umd/ui-react-dom-debug.js +1 -1
  267. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  268. package/lib/umd/ui-react-dom.js +1 -1
  269. package/lib/umd/ui-react-dom.js.gz +0 -0
  270. package/lib/umd-es6/mergeable-store.js +1 -0
  271. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  272. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  273. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  274. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  275. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  276. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  277. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  278. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  279. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  280. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  281. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  282. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  283. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  284. package/lib/umd-es6/persisters/persister-file.js +1 -1
  285. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  286. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  287. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  288. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  289. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  290. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  291. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  292. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  293. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  294. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  295. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  296. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  297. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  298. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  299. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  300. package/lib/umd-es6/persisters.js +1 -1
  301. package/lib/umd-es6/persisters.js.gz +0 -0
  302. package/lib/umd-es6/store.js +1 -1
  303. package/lib/umd-es6/store.js.gz +0 -0
  304. package/lib/umd-es6/tinybase.js +1 -1
  305. package/lib/umd-es6/tinybase.js.gz +0 -0
  306. package/lib/umd-es6/tools.js +1 -1
  307. package/lib/umd-es6/tools.js.gz +0 -0
  308. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  309. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  310. package/lib/umd-es6/ui-react-dom.js +1 -1
  311. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  312. package/package.json +39 -35
  313. package/readme.md +2 -2
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,o=a=>null==a,r=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,l=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",v=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",A=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),p=a=>0==y(a),L=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),N=Object,S=a=>N.getPrototypeOf(a),C=N.entries,D=N.keys,g=N.freeze,I=(a=[])=>N.fromEntries(a),b=(...a)=>N.assign({},...a),F=(a,t)=>m(C(a),(([a,e])=>t(e,a))),M=a=>N.values(a),$=a=>y(D(a)),P=a=>(a=>!o(a)&&r(S(a),(a=>a==N.prototype||o(S(a))),(()=>!0)))(a)&&0==$(a),_=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),W=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),j=(a,t,e)=>o(e)?(h(a,t),a):a?.set(t,e),Y=(a,t,e)=>(O(a,t)||j(a,t,e()),H(a,t)),k=(a,t,e,s=j)=>(F(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!o(((a,t)=>r(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),x=a=>new Set(Array.isArray(a)||o(a)?a:[a]),G=(a,t)=>a?.add(t),J=T+"*FROM",U="FROM pragma_table_",q="WHERE",z=(a,t,s)=>{const n=_();return[async()=>k(n,I(await E(m(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+V(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(T+" name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>j(n,t,k(Y(n,t,_),e,((a,t,e)=>{e!=H(a,t)&&j(a,t,e)}),((a,t)=>j(a,t))))),((a,t)=>j(n,t))),async(t,e)=>((a,t)=>!o(H(H(n,a),t)))(t,e)?I(L(m(await a(J+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!P(t)))):{},async(t,s,i,c,r,w=!1)=>{const l=x();F(i??{},(a=>m(D(a??{}),(a=>G(l,a)))));const y=R(l);if(!w&&r&&p(y)&&O(n,t))return await a("DROP TABLE"+v(t)),void j(n,t);if(p(y)||O(n,t)){const e=H(n,t),i=x(B(e));await E([...m(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),j(e,s,""))})),...!w&&c?m(R(i),(async n=>{n!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(n)}`),j(e,n))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${A(m(y,(a=>e+v(a))))});`),j(n,t,_([[s,""],...m(y,(a=>[a,""]))]));if(w)o(i)?await a("DELETE FROM"+v(t)+"WHERE 1"):await E(F(i,(async(e,n)=>{o(e)?await a("DELETE FROM"+v(t)+q+v(s)+"=?",[n]):p(y)||await K(a,t,s,D(e),[n,...M(e)])})));else if(p(y))O(n,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=L(B(H(n,t)),(a=>a!=s)),c=[],o=[];F(i??{},((a,t)=>{f(c,t,...m(e,(t=>a?.[t]))),f(o,t)})),await K(a,t,s,e,c),await a("DELETE FROM"+v(t)+q+v(s)+"NOT IN("+V(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},K=async(a,t,s,i,c)=>await a("INSERT INTO"+v(t)+"("+v(s)+A(m(i,(a=>e+v(a))))+")VALUES"+l(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+v(s)+")DO UPDATE SET"+A(m(i,(a=>v(a)+"=excluded."+v(a))),e),c),V=a=>A(m(a,(()=>"?")),e),Q=JSON.parse,X=_(),Z=_(),aa=(a,t,e,s,n,i,[c,w]=[],l=[])=>{let y,E,u,d=0,v=0;Y(X,l,(()=>0)),Y(Z,l,(()=>[]));const T=async a=>(2!=d&&(d=1,await A.schedule((async()=>{await a(),d=0}))),A),A={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(A.stopAutoLoad(),await A.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),A),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),A),save:async t=>(1!=d&&(d=2,await A.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),A),startAutoSave:async()=>(await A.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();P(e)&&P(s)||A.save((()=>[e,s]))})),A),stopAutoSave:()=>(r(y,a.delListener),y=void 0,A),schedule:async(...a)=>(f(H(Z,l),...a),await(async()=>{if(!H(X,l)){for(j(X,l,1);!o((a=H(Z,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}j(X,l,0)}var a})(),A),getStore:()=>a,destroy:()=>A.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(A[c]=()=>w),g(A)},ta="store",ea=(a,t,e,s,n,[i],c,o,r)=>{const[w,l,y,E]=z(t,c,n);return aa(a,(async()=>await E((async()=>(await w(),Q((await l(i,d))[u]?.[ta]??"null"))))),(async a=>await E((async()=>{var t;await w(),await y(i,d,{[u]:{[ta]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,[r,o],o)},sa=(a,t,e,s,n,[i,c,[r,w,l]],y,v,T)=>{const[A,m,p,f]=z(t,y,n),O=async(a,t)=>await E(W(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await p(e,s,o,n,i,t)}))),R=async(a,t)=>w?await p(l,d,{[u]:a},!0,!0,t):null;return aa(a,(async()=>await f((async()=>{await A();const a=await(async()=>I(L(await E(W(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!P(a[1])))))(),t=await(async()=>r?(await m(l,d))[u]:{})();return P(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await f((async()=>{if(await A(),o(t)){const[t,e]=a();await O(t),await R(e)}else{const[a,e]=t();await O(a,!0),await R(e,!0)}}))),e,s,n,[T,v],v)},na="json",ia="autoLoadIntervalSeconds",ca="rowIdColumnName",oa="tableId",ra="tableName",wa={mode:na,[ia]:1},la={load:0,save:0,[ra]:t+"_values"},ya=(a,t,e,s)=>{const n=_();return F(a,((a,i)=>{const c=l(M(b(t,w(a)?{[e]:a}:a)),0,$(t));o(c[0])||s(i,c[0])||j(n,i,c)})),n},Ea="pragma ",ua="data_version",da="schema_version",va=(a,e,s,n,i,o,r,y,E="getDb")=>{let u,v,A;const[m,p,L,f]=(a=>{const e=(a=>b(wa,w(a)?{storeTableName:a}:a??{}))(a),s=e[ia];if(e.mode==na){const{storeTableName:a=t}=e;return[1,s,[a],x(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=l(M(b(la,c)),0,$(la)),r=o[2],y=x(r);return[0,s,[ya(n,{[oa]:null,[ca]:d},oa,(a=>G(y,a)&&a==r)),ya(i,{[ra]:null,[ca]:d,deleteEmptyColumns:0,deleteEmptyTable:0},ra,((a,t)=>G(y,t)&&t==r)),o],y]})(e);return(m?ea:sa)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(Ea+ua))[0][ua],e=(await s(Ea+da))[0][da],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(u??=t)&&e==(v??=e)&&n==(A??=n)||(a(),u=t,v=e)}catch{}},e=p,t(),setInterval(t,1e3*e)),n((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),u=v=null,i(t)}),r,L,R(f),y,E)},Ta="change";exports.createSqlite3Persister=(a,t,e,s,n)=>va(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t))),new i(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",T=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),L=a=>0==E(a),R=(a,t)=>a.filter(t),O=(a,...t)=>a.push(...t),f=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],g=(a,t)=>a?.delete(t),C=Object,N=a=>C.getPrototypeOf(a),S=C.entries,D=C.keys,b=C.freeze,I=(a=[])=>C.fromEntries(a),M=(...a)=>C.assign({},...a),F=(a,t)=>t in a,P=(a,t)=>m(S(a),(([a,e])=>t(e,a))),$=a=>C.values(a),_=a=>E(D(a)),B=a=>(a=>!o(a)&&l(N(a),(a=>a==C.prototype||o(N(a))),(()=>!0)))(a)&&0==_(a),H=a=>new Map(a),W=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),Y=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>o(e)?(g(a,t),a):a?.set(t,e),x=(a,t,e)=>(f(a,t)||k(a,t,e()),j(a,t)),G=(a,t,e,n=k)=>(P(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>F(t,e)?0:n(a,e))),a),J=a=>new Set(Array.isArray(a)||o(a)?a:[a]),U=(a,t)=>a?.add(t),q=A+"*FROM",z="FROM pragma_table_",K="WHERE",V=(a,t,s,i)=>{const c=H();return[async()=>G(c,I(await u(m(await a("SELECT name "+z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+X(t)+")ORDER BY name",t),(async({name:t})=>[t,I(m(await a(A+" name,type "+z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(c,t,G(x(c,t,H),e,((a,t,e)=>{e!=j(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(c,t))),async(t,e)=>((a,t)=>!o(j(j(c,a),t)))(t,e)?I(R(m(await a(q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,r,l,w,y=!1)=>{const E=J();P(r??{},(a=>m(D(a??{}),(a=>U(E,a)))));const d=h(E);if(!y&&w&&L(d)&&f(c,t))return await a("DROP TABLE"+v(t)),void k(c,t);if(L(d)||f(c,t)){const n=j(c,t),i=J(W(n));await u([...m(d,(async s=>{g(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),k(n,s,e))})),...!y&&l?m(h(i),(async e=>{e!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(e)}`),k(n,e))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${T(m(d,(a=>n+v(a))))});`),k(c,t,H([[s,e],...m(d,(a=>[a,e]))]));if(y)o(r)?await a("DELETE FROM"+v(t)+"WHERE 1"):await u(P(r,(async(e,n)=>{o(e)?await a("DELETE FROM"+v(t)+K+v(s)+"=?",[n]):L(d)||await Q(a,t,s,D(e),[n,...$(e)],i)})));else if(L(d))f(c,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=R(W(j(c,t)),(a=>a!=s)),n=[],i=[];P(r??{},((a,t)=>{O(n,t,...m(e,(t=>a?.[t]))),O(i,t)})),await Q(a,t,s,e,n),await a("DELETE FROM"+v(t)+K+v(s)+"NOT IN("+X(i)+")",i)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},Q=async(a,t,s,c,r,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+T(m(c,(a=>n+v(a))))+")VALUES"+y(i(`,(?${i(",?",E(c))})`,E(r)/(E(c)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+T(m(c,(a=>v(a)+"=excluded."+v(a))),n):e),m(r,(a=>a??null))),X=a=>T(m(a,(()=>"?")),n),Z=JSON.parse,aa=H(),ta=H(),ea=(a,t,e,n,s,i,c,[r,y]=[],E=[])=>{let u,d,p,v=0,A=0;x(aa,E,(()=>0)),x(ta,E,(()=>[]));const T=(c?a.getMergeableContent:null)??a.getContent,m=a.getTransactionChanges,L=async a=>(2!=v&&(v=1,await R.schedule((async()=>{await a(),v=0}))),R),R={load:async(e,n)=>await L((async()=>{try{const e=await t();(c&&w(e[0])?a.applyMergeableChanges:a.setContent)(e)}catch{a.setContent([e,n])}})),startAutoLoad:async(e={},s={})=>(R.stopAutoLoad(),await R.load(e,s),A=1,p=n((async(e,n)=>{if(n){const t=n();await L((async()=>a.applyChanges(t)))}else await L((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),R),stopAutoLoad:()=>(A&&(s(p),p=void 0,A=0),R),save:async a=>(1!=v&&(v=2,await R.schedule((async()=>{try{await e(T,a)}catch(a){i?.(a)}v=0}))),R),startAutoSave:async()=>(await R.stopAutoSave().save(),u=a.addDidFinishTransactionListener((()=>{const[a,t]=m();B(a)&&B(t)||R.save((()=>[a,t]))})),R),stopAutoSave:()=>(l(u,a.delListener),u=void 0,R),schedule:async(...a)=>(O(j(ta,E),...a),await(async()=>{if(!j(aa,E)){for(k(aa,E,1);!o((a=j(ta,E),d=a.shift()));)try{await d()}catch(a){i?.(a)}k(aa,E,0)}var a})(),R),getStore:()=>a,destroy:()=>R.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(R[r]=()=>y),b(R)},na="store",sa=(a,t,e,n,s,[i],c,r,o)=>{const[l,w,y,E]=V(t,c,s);return ea(a,(async()=>await E((async()=>(await l(),Z((await w(i,p))[d]?.[na]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,p,{[d]:{[na]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?C.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,[o,r],r)},ia=(a,t,e,n,s,[i,c,[r,l,w]],y,E,v,A)=>{const[T,m,L,O]=V(t,y,s,A),f=async(a,t)=>await u(Y(c,(async([e,n,s,i],c)=>{t&&!F(a,c)||await L(e,n,a[c],s,i,t)}))),h=async(a,t)=>l?await L(w,p,{[d]:a},!0,!0,t):null;return ea(a,(async()=>await O((async()=>{await T();const a=await(async()=>I(R(await u(Y(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>r?(await m(w,p))[d]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await T(),o(t)){const[t,e]=a();await f(t),await h(e)}else{const[a,e]=t();await f(a,!0),await h(e,!0)}}))),e,n,s,!1,[v,E],E)},ca="json",ra="autoLoadIntervalSeconds",oa="rowIdColumnName",la="tableId",wa="tableName",ya={mode:ca,[ra]:1},Ea={load:0,save:0,[wa]:t+"_values"},ua=(a,t,e,n)=>{const s=H();return P(a,((a,i)=>{const c=y($(M(t,w(a)?{[e]:a}:a)),0,_(t));o(c[0])||n(i,c[0])||k(s,i,c)})),s},da="pragma ",pa="data_version",va="schema_version",Aa=(a,e,n,s,i,c,o,l,E="getDb",u)=>{let d,v,T;const[m,L,R,O]=(a=>{const e=(a=>M(ya,w(a)?{storeTableName:a}:a??{}))(a),n=e[ra];if(e.mode==ca){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:c={}}=e,r=y($(M(Ea,c)),0,_(Ea)),o=r[2],l=J(o);return[0,n,[ua(s,{[la]:null,[oa]:p},la,(a=>U(l,a)&&a==o)),ua(i,{[wa]:null,[oa]:p,deleteEmptyColumns:0,deleteEmptyTable:0},wa,((a,t)=>U(l,t)&&t==o)),r],l]})(e);return(m?sa:ia)(a,c?async(a,t)=>(c(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(da+pa))[0][pa],e=(await n(da+va))[0][va],s=(await n(A+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(v??=e)&&s==(T??=s)||(a(),d=t,v=e)}catch{}},e=L,t(),setInterval(t,1e3*e)),s((t=>O.has(t)?a():0))];var t,e}),(([a,t])=>{r(a),d=v=null,i(t)}),o,R,h(O),l,E,u)},Ta="change";exports.createSqlite3Persister=(a,t,e,n,s)=>Aa(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new c(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),n,s,t);
@@ -1 +1 @@
1
- "use strict";var t=require("yjs");const e="t",a="v",s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=t=>t.length,r=t=>t.shift(),c=Object,i=t=>c.getPrototypeOf(t),l=c.entries,u=c.keys,d=c.freeze,g=(t=[])=>c.fromEntries(t),y=(t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)),p=(t,e)=>((t,e)=>t.map(e))(l(t),(([t,a])=>e(a,t))),v=t=>(t=>!s(t)&&n(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>o(u(t)))(t),h=(t,e,a)=>(y(t,e)||(t[e]=a()),t[e]),w=t=>new Map(t),f=(t,e)=>t?.get(e),S=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),A=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},O=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||A(t,e,a()),f(t,e)},J=w(),L=w(),N="delete",C=t=>[t.get(e),t.get(a)],M=(e,a,n,o)=>{const r=s(a)?e:e.get(a)??e.set(a,new t.Map);let c;return p(n,((t,e)=>{o(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{y(n,e)||(r.delete(e),c=1)})),s(a)||r.size||e.delete(a),c};exports.createYjsPersister=(c,i,l="tinybase",u)=>{const y=i.getMap(l);return((t,e,a,o,c,i,[l,u]=[],g=[])=>{let y,p,h,w=0,S=0;O(J,g,(()=>0)),O(L,g,(()=>[]));const N=async t=>(2!=w&&(w=1,await C.schedule((async()=>{await t(),w=0}))),C),C={load:async(a,s)=>await N((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(C.stopAutoLoad(),await C.load(a,s),S=1,h=o((async(a,s)=>{if(s){const e=s();await N((async()=>t.setTransactionChanges(e)))}else await N((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(S&&(c(h),h=void 0,S=0),C),save:async e=>(1!=w&&(w=2,await C.schedule((async()=>{try{await a(t.getContent,e)}catch(t){i?.(t)}w=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),y=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();v(a)&&v(s)||C.save((()=>[a,s]))})),C),stopAutoSave:()=>(n(y,t.delListener),y=void 0,C),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(f(L,g),...t),await(async()=>{if(!f(J,g)){for(A(J,g,1);!s(p=r(f(L,g)));)try{await p()}catch(t){i?.(t)}A(J,g,0)}})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(C[l]=()=>u),d(C)})(c,(async()=>y.size?[y.get(e).toJSON(),y.get(a).toJSON()]:void 0),(async(o,r)=>i.transact((()=>((o,r,c)=>{o.size||(o.set(e,new t.Map),o.set(a,new t.Map));const[i,l]=C(o),u=()=>{d=1};let d=1;if(n(c?.(),(([t,e])=>{d=0,p(t,((t,e)=>d?0:s(t)?i.delete(e):n(i.get(e),(e=>p(t,((t,a)=>d?0:s(t)?e.delete(a):n(e.get(a),(e=>p(t,((t,a)=>s(t)?e.delete(a):e.set(a,t)))),u)))),u))),p(e,((t,e)=>d?0:s(t)?l.delete(e):l.set(e,t)))})),d){const[t,e]=r();M(i,void 0,t,((t,e,a)=>M(i,e,a,((t,e,a)=>M(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),M(l,void 0,e,((t,e,a)=>{l.get(e)!==a&&l.set(e,a)}))}})(y,o,r)))),(t=>{const s=s=>t(void 0,(()=>((t,s)=>{if(1==o(s)&&(c=s[0].path,0==o(c)))return[t.get(e).toJSON(),t.get(a).toJSON()];var c;const[i,l]=C(t),u={},d={};return((t,a)=>{t.forEach((({path:t,changes:{keys:a}})=>r(t)==e?n(r(t),(e=>{const s=h(u,e,g),o=i.get(e);n(r(t),(t=>{const e=h(s,t,g),n=o.get(t);S(a,((t,{action:a})=>e[t]=a==N?null:n.get(t)))}),(()=>S(a,((t,{action:e})=>s[t]=e==N?null:o.get(t)?.toJSON()))))}),(()=>S(a,((t,{action:e})=>u[t]=e==N?null:i.get(t)?.toJSON())))):S(a,((t,{action:e})=>d[t]=e==N?null:l.get(t)))))})(s),[u,d]})(y,s)));return y.observeDeep(s),s}),(t=>{y.unobserveDeep(t)}),u,["getYDoc",i])};
1
+ "use strict";var t=require("yjs");const e=t=>typeof t,a=e(""),s="t",n="v",o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),c=t=>t.length,i=t=>t.shift(),l=Object,g=t=>l.getPrototypeOf(t),u=l.entries,y=l.keys,d=l.freeze,p=(t=[])=>l.fromEntries(t),h=(t,e)=>e in t,v=(t,e)=>((t,e)=>t.map(e))(u(t),(([t,a])=>e(a,t))),w=t=>(t=>!o(t)&&r(g(t),(t=>t==l.prototype||o(g(t))),(()=>!0)))(t)&&0==(t=>c(y(t)))(t),f=(t,e,a)=>(h(t,e)||(t[e]=a()),t[e]),S=t=>new Map(t),A=(t,e)=>t?.get(e),C=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),O=(t,e,a)=>{return o(a)?(s=t,n=e,s?.delete(n),t):t?.set(e,a);var s,n},M=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||O(t,e,a()),A(t,e)},b=S(),J=S(),L="delete",N=t=>[t.get(s),t.get(n)],z=(e,a,s,n)=>{const r=o(a)?e:e.get(a)??e.set(a,new t.Map);let c;return v(s,((t,e)=>{n(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{h(s,e)||(r.delete(e),c=1)})),o(a)||r.size||e.delete(a),c};exports.createYjsPersister=(l,g,u="tinybase",y)=>{const h=g.getMap(u);return((t,s,n,c,l,g,u,[y,p]=[],h=[])=>{let v,f,S,C=0,L=0;M(b,h,(()=>0)),M(J,h,(()=>[]));const N=(u?t.getMergeableContent:null)??t.getContent,z=t.getTransactionChanges,D=async t=>(2!=C&&(C=1,await E.schedule((async()=>{await t(),C=0}))),E),E={load:async(n,o)=>await D((async()=>{try{const n=await s();(u&&(t=>e(t)==a)(n[0])?t.applyMergeableChanges:t.setContent)(n)}catch{t.setContent([n,o])}})),startAutoLoad:async(e={},a={})=>(E.stopAutoLoad(),await E.load(e,a),L=1,S=c((async(e,a)=>{if(a){const e=a();await D((async()=>t.applyChanges(e)))}else await D((async()=>{try{t.setContent(e?.()??await s())}catch(t){g?.(t)}}))})),E),stopAutoLoad:()=>(L&&(l(S),S=void 0,L=0),E),save:async t=>(1!=C&&(C=2,await E.schedule((async()=>{try{await n(N,t)}catch(t){g?.(t)}C=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),v=t.addDidFinishTransactionListener((()=>{const[t,e]=z();w(t)&&w(e)||E.save((()=>[t,e]))})),E),stopAutoSave:()=>(r(v,t.delListener),v=void 0,E),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(A(J,h),...t),await(async()=>{if(!A(b,h)){for(O(b,h,1);!o(f=i(A(J,h)));)try{await f()}catch(t){g?.(t)}O(b,h,0)}})(),E),getStore:()=>t,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return y&&(E[y]=()=>p),d(E)})(l,(async()=>h.size?[h.get(s).toJSON(),h.get(n).toJSON()]:void 0),(async(e,a)=>g.transact((()=>((e,a,c)=>{e.size||(e.set(s,new t.Map),e.set(n,new t.Map));const[i,l]=N(e),g=()=>{u=1};let u=1;if(r(c?.(),(([t,e])=>{u=0,v(t,((t,e)=>u?0:o(t)?i.delete(e):r(i.get(e),(e=>v(t,((t,a)=>u?0:o(t)?e.delete(a):r(e.get(a),(e=>v(t,((t,a)=>o(t)?e.delete(a):e.set(a,t)))),g)))),g))),v(e,((t,e)=>u?0:o(t)?l.delete(e):l.set(e,t)))})),u){const[t,e]=a();z(i,void 0,t,((t,e,a)=>z(i,e,a,((t,e,a)=>z(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),z(l,void 0,e,((t,e,a)=>{l.get(e)!==a&&l.set(e,a)}))}})(h,e,a)))),(t=>{const e=e=>t(void 0,(()=>((t,e)=>{if(1==c(e)&&(a=e[0].path,0==c(a)))return[t.get(s).toJSON(),t.get(n).toJSON()];var a;const[o,l]=N(t),g={},u={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>i(t)==s?r(i(t),(a=>{const s=f(g,a,p),n=o.get(a);r(i(t),(t=>{const a=f(s,t,p),o=n.get(t);C(e,((t,{action:e})=>a[t]=e==L?null:o.get(t)))}),(()=>C(e,((t,{action:e})=>s[t]=e==L?null:n.get(t)?.toJSON()))))}),(()=>C(e,((t,{action:e})=>g[t]=e==L?null:o.get(t)?.toJSON())))):C(e,((t,{action:e})=>u[t]=e==L?null:l.get(t)))))})(e),[g,u]})(h,e)));return h.observeDeep(e),e}),(t=>{h.unobserveDeep(t)}),y,!1,["getYDoc",g])};
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,a=(a,e,s)=>t(a)?s?.():e(a),e=Object,s=t=>e.getPrototypeOf(t),o=e.keys,n=e.freeze,c=n=>(o=>!t(o)&&a(s(o),(a=>a==e.prototype||t(s(a))),(()=>!0)))(n)&&0==(t=>o(t).length)(n),r=t=>new Map(t),i=(t,a)=>t?.get(a),y=(a,e,s)=>{return t(s)?(o=a,n=e,o?.delete(n),a):a?.set(e,s);var o,n},u=(t,a,e)=>{var s,o;return s=t,o=a,s?.has(o)||y(t,a,e()),i(t,a)},d=r(),w=r();exports.createCustomPersister=(e,s,o,r,h,l,[p,v]=[],A=[])=>{let g,f,C,L=0,S=0;u(d,A,(()=>0)),u(w,A,(()=>[]));const O=async t=>(2!=L&&(L=1,await P.schedule((async()=>{await t(),L=0}))),P),P={load:async(t,a)=>await O((async()=>{try{e.setContent(await s())}catch{e.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(P.stopAutoLoad(),await P.load(t,a),S=1,C=r((async(t,a)=>{if(a){const t=a();await O((async()=>e.setTransactionChanges(t)))}else await O((async()=>{try{e.setContent(t?.()??await s())}catch(t){l?.(t)}}))})),P),stopAutoLoad:()=>(S&&(h(C),C=void 0,S=0),P),save:async t=>(1!=L&&(L=2,await P.schedule((async()=>{try{await o(e.getContent,t)}catch(t){l?.(t)}L=0}))),P),startAutoSave:async()=>(await P.stopAutoSave().save(),g=e.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||P.save((()=>[e,s]))})),P),stopAutoSave:()=>(a(g,e.delListener),g=void 0,P),schedule:async(...a)=>(((t,...a)=>{t.push(...a)})(i(w,A),...a),await(async()=>{if(!i(d,A)){for(y(d,A,1);!t((a=i(w,A),f=a.shift()));)try{await f()}catch(t){l?.(t)}y(d,A,0)}var a})(),P),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(P[p]=()=>v),n(P)};
1
+ "use strict";const t=t=>typeof t,a=t(""),e=t=>null==t,s=(t,a,s)=>e(t)?s?.():a(t),n=Object,o=t=>n.getPrototypeOf(t),c=n.keys,r=n.freeze,i=t=>(t=>!e(t)&&s(o(t),(t=>t==n.prototype||e(o(t))),(()=>!0)))(t)&&0==(t=>c(t).length)(t),y=t=>new Map(t),u=(t,a)=>t?.get(a),l=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},d=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||l(t,a,e()),u(t,a)},p=y(),h=y();exports.createCustomPersister=(n,o,c,y,w,g,v,[C,A]=[],f=[])=>{let L,S,b,M=0,O=0;d(p,f,(()=>0)),d(h,f,(()=>[]));const P=(v?n.getMergeableContent:null)??n.getContent,T=n.getTransactionChanges,j=async t=>(2!=M&&(M=1,await k.schedule((async()=>{await t(),M=0}))),k),k={load:async(e,s)=>await j((async()=>{try{const e=await o();(v&&(e=>t(e)==a)(e[0])?n.applyMergeableChanges:n.setContent)(e)}catch{n.setContent([e,s])}})),startAutoLoad:async(t={},a={})=>(k.stopAutoLoad(),await k.load(t,a),O=1,b=y((async(t,a)=>{if(a){const t=a();await j((async()=>n.applyChanges(t)))}else await j((async()=>{try{n.setContent(t?.()??await o())}catch(t){g?.(t)}}))})),k),stopAutoLoad:()=>(O&&(w(b),b=void 0,O=0),k),save:async t=>(1!=M&&(M=2,await k.schedule((async()=>{try{await c(P,t)}catch(t){g?.(t)}M=0}))),k),startAutoSave:async()=>(await k.stopAutoSave().save(),L=n.addDidFinishTransactionListener((()=>{const[t,a]=T();i(t)&&i(a)||k.save((()=>[t,a]))})),k),stopAutoSave:()=>(s(L,n.delListener),L=void 0,k),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(u(h,f),...t),await(async()=>{if(!u(p,f)){for(l(p,f,1);!e((t=u(h,f),S=t.shift()));)try{await S()}catch(t){g?.(t)}l(p,f,0)}var t})(),k),getStore:()=>n,destroy:()=>k.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return C&&(k[C]=()=>A),r(k)};
Binary file
package/lib/cjs/store.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,g="Row",f=g+"Count",T=g+i,V="Cell",b=V+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,I=isFinite,m=e=>null==e,y=(e,t,s)=>m(e)?s?.():t(e),R=e=>e==s||e==l,p=t=>e(t)==a,J=(e,t,s)=>e.slice(t,s),L=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.keys,M=z.isFrozen,N=z.freeze,j=e=>!m(e)&&y(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),x=(e,t)=>!m(((e,t)=>y(e,(e=>e[t])))(e,t)),D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>j(e)&&0==(e=>L(A(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,B=e=>m(e)||0==$(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>m(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>(q(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,l=_)=>(H(t,((t,l)=>s(e,l,t))),Z(e,(s=>x(t,s)?0:l(e,s))),e),se=(e,t,s)=>{const l={};return K(e,((e,n)=>{const a=t?t(e,n):e;!s?.(a,e)&&(l[n]=a)})),l},le=(e,t,s)=>se(e,(e=>se(e,t,s)),W),ne=(e,t,s)=>se(e,(e=>le(e,t,s)),W),ae=(e,t)=>{const s=U();return K(e,((e,l)=>s.set(l,t?.(e)??e))),s},oe=e=>ae(e,ae),re=e=>ae(e,oe),ce=(e,t,s,l,n=0)=>y((s?ee:Y)(e,t[n],n>L(t)-2?s:U),(a=>{if(n>L(t)-2)return l?.(a)&&_(e,t[n]),a;const o=ce(a,t,s,l,n+1);return B(a)&&_(e,t[n]),o})),ie=e=>new Set(Array.isArray(e)||m(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{ue.test(t)&&L(e)<1e3&&O(e,t)}]},ge=e=>[e,e],fe=()=>[U(),U()],Te=e=>[...e],Ve=([e,t])=>e===t,be=t=>{const s=e(t);return R(s)||s==n&&I(t)?s:void 0},Ce=(e,t,s,l,n)=>m(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n),Se=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),we=JSON.parse,Ie=(e,t,s)=>m(e)||!j(e)||W(e)||M(e)?(s?.(),!1):(H(e,((s,l)=>{t(s,l)||D(e,l)})),!W(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),ye=()=>{let e,s,l=!1,a=!1,i=!1,I=!1,z=0;const P=U(),k=U(),A=U(),M=U(),j=U(),ue=U(),Re=U(),pe=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),ze=U(),Pe=ie(),ke=U(),Ae=U(),Me=U(),Ne=U(),je=fe(),xe=fe(),De=fe(),He=fe(),We=fe(),$e=fe(),qe=fe(),Be=fe(),Ge=fe(),Ke=fe(),Qe=fe(),Ue=fe(),Xe=fe(),Ye=fe(),Ze=fe(),_e=fe(),et=fe(),tt=fe(),st=fe(),lt=fe(),nt=fe(),at=fe(),ot=U(),rt=fe(),[ct,it,dt,ut]=(e=>{let s;const[l,n]=he(),a=U();return[(e,n,o,r=[],c=(()=>[]))=>{s??=Ps;const i=l(1);return _(a,i,[e,n,o,r,c]),de(ce(n,o??[t],ie),i),i},(e,l,...n)=>E(((e,s=[t])=>{const l=[],n=(e,t)=>t==L(s)?O(l,e):null===s[t]?K(e,(e=>n(e,t+1))):E([s[t],null],(s=>n(Y(e,s),t+1)));return n(e,0),l})(e,l),(e=>K(e,(e=>Y(a,e)[0](s,...l??[],...n))))),e=>y(Y(a,e),(([,s,l])=>(ce(s,l??[t],void 0,(t=>(Q(t,e),B(t)?1:0))),_(a,e),n(e),l))),e=>y(Y(a,e),(([e,,t=[],l,n])=>{const a=(...o)=>{const r=L(o);r==L(t)?e(s,...o,...n(o)):m(t[r])?E(l[r]?.(...o)??[],(e=>a(...o,e))):a(...o,t[r])};a()}))]})(),ht=e=>{if(!Ie(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!R(t)&&t!=n||(be(e[r])!=t&&D(e,r),0))},gt=(t,s)=>(!e||q(Ee,s)||$t(s))&&Ie(t,((e,t)=>ft(s,t,e)),(()=>$t(s))),ft=(e,t,s,l)=>Ie(l?s:Ct(s,e,t),((l,n)=>y(Tt(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,s,l,n)=>e?y(Y(Y(Ee,t),l),(e=>be(n)!=e[o]?$t(t,s,l,n,e[r]):n),(()=>$t(t,s,l,n))):m(be(n))?$t(t,s,l,n):n,Vt=(e,t)=>Ie(t?e:St(e),((t,s)=>y(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>qt())),bt=(e,t)=>s?y(Y(Oe,e),(s=>be(t)!=s[o]?qt(e,t,s[r]):t),(()=>qt(e,t))):m(be(t))?qt(e,t):t,Ct=(e,t,s)=>(y(Y(Fe,t),(([l,n])=>{K(l,((t,s)=>{x(e,s)||(e[s]=t)})),K(n,(l=>{x(e,l)||$t(t,s,l)}))})),e),St=e=>(s&&(K(ze,((t,s)=>{x(e,s)||(e[s]=t)})),K(Pe,(t=>{x(e,t)||qt(t)}))),e),vt=e=>te(Ee,e,((e,t,s)=>{const l=U(),n=ie();te(ee(Ee,t,U),s,((e,t,s)=>{_(e,t,s),y(s[r],(e=>_(l,t,e)),(()=>de(n,t)))})),_(Fe,t,[l,n])}),((e,t)=>{_(Ee,t),_(Fe,t)})),wt=e=>te(Oe,e,((e,t,s)=>{_(Oe,t,s),y(s[r],(e=>_(ze,t,e)),(()=>de(Pe,t)))}),((e,t)=>{_(Oe,t),_(ze,t),Q(Pe,t)})),It=e=>W(e)?ys():Ss(e),mt=e=>te(Me,e,((e,t,s)=>yt(t,s)),((e,t)=>Pt(t))),yt=(e,t)=>te(ee(Me,e,(()=>(Nt(e,1),_(ke,e,he()),_(Ae,e,U()),U()))),t,((t,s,l)=>Rt(e,t,s,l)),((t,s)=>kt(e,t,s))),Rt=(e,t,s,l,n)=>te(ee(t,s,(()=>(jt(e,s,1),U()))),l,((t,l,n)=>pt(e,s,t,l,n)),((l,a)=>At(e,t,s,l,a,n))),pt=(e,t,s,l,n)=>{q(s,l)||xt(e,t,l,1);const a=Y(s,l);n!==a&&(Dt(e,t,l,a,n),_(s,l,n))},Jt=(e,t,s,l,n)=>y(Y(t,s),(t=>pt(e,s,t,l,n)),(()=>Rt(e,t,s,Ct({[l]:n},e,s)))),Lt=e=>W(e)?Js():vs(e),Et=e=>te(Ne,e,((e,t,s)=>Ft(t,s)),((e,t)=>Mt(t))),Ft=(e,t)=>{q(Ne,e)||Ht(e,1);const s=Y(Ne,e);t!==s&&(Wt(e,s,t),_(Ne,e,t))},Ot=(e,t)=>{const[s]=Y(ke,e),l=s(t);return q(Y(Me,e),l)?Ot(e,t):l},zt=e=>Y(Me,e)??yt(e,{}),Pt=e=>yt(e,{}),kt=(e,t,s)=>{const[,l]=Y(ke,e);l(s),Rt(e,t,s,{},!0)},At=(e,t,s,l,n,a)=>{const o=Y(Y(Fe,e)?.[0],n);if(!m(o)&&!a)return pt(e,s,l,n,o);const r=t=>{Dt(e,s,t,Y(l,t)),xt(e,s,t,-1),_(l,t)};m(o)?r(n):Z(l,r),B(l)&&(jt(e,s,-1),B(_(t,s))&&(Nt(e,-1),_(Me,e),_(ke,e),_(Ae,e)))},Mt=e=>{const t=Y(ze,e);if(!m(t))return Ft(e,t);Wt(e,Y(Ne,e)),Ht(e,-1),_(Ne,e)},Nt=(e,t)=>me(P,e,t),jt=(e,t,s)=>me(ee(M,e,U),t,s)&&_(A,e,ee(A,e,(()=>0))+s),xt=(e,t,s,l)=>{const n=Y(Ae,e),a=Y(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&me(ee(k,e,U),s,l),_(n,s,a!=-l?a+l:null),me(ee(ee(j,e,U),t,U),s,l)},Dt=(e,t,s,l,n)=>ee(ee(ee(ue,e,U),t,U),s,(()=>[l,0]))[1]=n,Ht=(e,t)=>me(Re,e,t),Wt=(e,t,s)=>ee(pe,e,(()=>[t,0]))[1]=s,$t=(e,t,s,l,n)=>(O(ee(ee(ee(Je,e,U),t,U),s,(()=>[])),l),n),qt=(e,t,s)=>(O(ee(Le,e,(()=>[])),t),s),Bt=(e,t,s)=>y(Y(Y(Y(ue,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e,t,s))])),Gt=e=>y(Y(pe,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(us(e))])),Kt=e=>B(Je)||B(_e[e])?0:K(e?re(Je):Je,((t,s)=>K(t,((t,l)=>K(t,((t,n)=>it(_e[e],[s,l,n],t))))))),Qt=e=>B(Le)||B(et[e])?0:K(e?ae(Le):Le,((t,s)=>it(et[e],[s],t))),Ut=(e,t,s,l)=>{if(!B(e))return it(t,l,(()=>se(e))),Z(e,((e,t)=>it(s,[...l??[],e],1==t))),1},Xt=e=>{const t=hs();t!=i&&it(je[e],void 0,t);const s=B(Ke[e]),l=B(Xe[e])&&B(Ye[e])&&B(Ge[e])&&B(Qe[e])&&B($e[e])&&B(qe[e])&&B(Be[e])&&s&&B(De[e])&&B(He[e]),n=B(Ze[e])&&B(Ue[e])&&B(We[e])&&B(xe[e]);if(!l||!n){const t=e?[ae(P),oe(k),ae(A),oe(M),re(j),re(ue)]:[P,k,A,M,j,ue];if(!l){Ut(t[0],De[e],He[e]),K(t[1],((t,s)=>Ut(t,$e[e],qe[e],[s]))),K(t[2],((t,s)=>{0!=t&&it(Be[e],[s],ns(s))}));const l=ie();K(t[3],((t,n)=>{Ut(t,Ge[e],Qe[e],[n])&&!s&&(it(Ke[e],[n,null]),de(l,n))})),s||K(t[5],((t,s)=>{if(!q(l,s)){const l=ie();K(t,(e=>K(e,(([t,s],n)=>s!==t?de(l,n):Q(e,n))))),K(l,(t=>it(Ke[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,l)=>Ut(t,Xe[e],Ye[e],[s,l])))))}if(!n){let s;K(t[5],((t,l)=>{let n;K(t,((t,a)=>{let o;K(t,(([t,r],c)=>{r!==t&&(it(Ze[e],[l,a,c],r,t,Bt),s=n=o=1)})),o&&it(Ue[e],[l,a],Bt)})),n&&it(We[e],[l],Bt)})),s&&it(xe[e],void 0,Bt)}}},Yt=e=>{const t=bs();t!=I&&it(tt[e],void 0,t);const s=B(lt[e])&&B(nt[e]),l=B(at[e])&&B(st[e]);if(!s||!l){const t=e?[ae(Re),ae(pe)]:[Re,pe];if(s||Ut(t[0],lt[e],nt[e]),!l){let s;K(t[1],(([t,l],n)=>{l!==t&&(it(at[e],[n],l,t,Gt),s=1)})),s&&it(st[e],void 0,Gt)}}},Zt=(e,...t)=>(Fs((()=>e(...F(t,w)))),Ps),_t=()=>[se(ue,((e,t)=>-1===Y(P,t)?null:se(e,((e,s)=>-1===Y(Y(M,t),s)?null:se(e,(([,e])=>e??null),((e,t)=>Ve(t)))),W)),W),se(pe,(([,e])=>e??null),((e,t)=>Ve(t)))],es=()=>({cellsTouched:l,valuesTouched:a,changedCells:ne(ue,Te,Ve),invalidCells:ne(Je),changedValues:se(pe,Te,Ve),invalidValues:se(Le),changedTableIds:se(P),changedRowIds:le(M),changedCellIds:ne(j),changedValueIds:se(Re)}),ts=()=>ne(Me),ss=()=>X(Me),ls=e=>X(Y(Ae,w(e))),ns=e=>$(Y(Me,w(e))),as=e=>X(Y(Me,w(e))),os=(e,t,s,l=0,n)=>{return F(J((o=Y(Me,w(e)),r=(e,s)=>[m(t)?s:Y(e,w(t)),s],a=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(a)),l,m(n)?n:l+n),(([,e])=>e));var a,o,r},rs=(e,t)=>X(Y(Y(Me,w(e)),w(t))),cs=(e,t,s)=>Y(Y(Y(Me,w(e)),w(t)),w(s)),is=()=>se(Ne),ds=()=>X(Ne),us=e=>Y(Ne,w(e)),hs=()=>!B(Me),gs=e=>q(Me,w(e)),fs=(e,t)=>q(Y(Ae,w(e)),w(t)),Ts=(e,t)=>q(Y(Me,w(e)),w(t)),Vs=(e,t,s)=>q(Y(Y(Me,w(e)),w(t)),w(s)),bs=()=>!B(Ne),Cs=e=>q(Ne,w(e)),Ss=e=>Zt((()=>(e=>Ie(e,gt,$t))(e)?mt(e):0)),vs=e=>Zt((()=>Vt(e)?Et(e):0)),ws=e=>{try{It(we(e))}catch{}return Ps},Is=t=>Zt((()=>{if((e=Ie(t,(e=>Ie(e,ht))))&&(vt(t),!B(Me))){const e=ts();ys(),Ss(e)}})),ms=e=>Zt((()=>{if(s=(e=>Ie(e,ht))(e)){const t=is();Es(),Js(),s=!0,wt(e),vs(t)}})),ys=()=>Zt((()=>mt({}))),Rs=e=>Zt((e=>q(Me,e)?Pt(e):0),e),ps=(e,t)=>Zt(((e,t)=>y(Y(Me,e),(s=>q(s,t)?kt(e,s,t):0))),e,t),Js=()=>Zt((()=>Et({}))),Ls=()=>Zt((()=>{vt({}),e=!1})),Es=()=>Zt((()=>{wt({}),s=!1})),Fs=(e,t)=>{if(-1!=z){Os();const s=e();return zs(t),s}},Os=()=>(-1!=z&&z++,1==z&&it(ot,void 0,_t,es),Ps),zs=e=>(z>0&&(z--,0==z&&(l=!B(ue),a=!B(pe),z=1,Kt(1),l&&Xt(1),Qt(1),a&&Yt(1),e?.(_t,es)&&(K(ue,((e,t)=>K(e,((e,s)=>K(e,(([e],l)=>Ce(Ps,t,s,l,e))))))),K(pe,(([e],t)=>Se(Ps,t,e))),l=a=!1),it(rt[0],void 0,_t,es),z=-1,Kt(0),l&&Xt(0),Qt(0),a&&Yt(0),it(rt[1],void 0,_t,es),z=0,l=a=!1,i=hs(),I=bs(),E([P,k,A,M,j,ue,Je,Re,pe,Le],G))),Ps),Ps={getContent:()=>[ts(),is()],getTables:ts,getTableIds:ss,getTable:e=>le(Y(Me,w(e))),getTableCellIds:ls,getRowCount:ns,getRowIds:as,getSortedRowIds:os,getRow:(e,t)=>se(Y(Y(Me,w(e)),w(t))),getCellIds:rs,getCell:cs,getValues:is,getValueIds:ds,getValue:us,hasTables:hs,hasTable:gs,hasTableCell:fs,hasRow:Ts,hasCell:Vs,hasValues:bs,hasValue:Cs,getTablesJson:()=>ve(Me),getValuesJson:()=>ve(Ne),getJson:()=>ve([Me,Ne]),getTablesSchemaJson:()=>ve(Ee),getValuesSchemaJson:()=>ve(Oe),getSchemaJson:()=>ve([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Zt((()=>{(W(e)?ys:Ss)(e),(W(t)?Js:vs)(t)})),setTables:Ss,setTable:(e,t)=>Zt((e=>gt(t,e)?yt(e,t):0),e),setRow:(e,t,s)=>Zt(((e,t)=>ft(e,t,s)?Rt(e,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Fs((()=>{let l;return ft(e,l,t)&&(e=w(e),Rt(e,zt(e),l=Ot(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Zt(((e,t)=>{if(ft(e,t,s,1)){const l=zt(e);H(s,((s,n)=>Jt(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Tt(e,t,s,p(l)?l(cs(e,t,s)):l),(l=>Jt(e,zt(e),t,s,l)))),e,t,s),setValues:vs,setPartialValues:e=>Zt((()=>Vt(e,1)?H(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>Zt((e=>y(bt(e,p(t)?t(us(e)):t),(t=>Ft(e,t)))),e),setTransactionChanges:e=>Zt((()=>{H(e[0],((e,t)=>m(e)?Rs(t):H(e,((e,s)=>m(e)?ps(t,s):H(e,((e,l)=>Ce(Ps,t,s,l,e))))))),H(e[1],((e,t)=>Se(Ps,t,e)))})),setTablesJson:ws,setValuesJson:e=>{try{Lt(we(e))}catch{}return Ps},setJson:e=>Zt((()=>{try{const[t,s]=we(e);It(t),Lt(s)}catch{ws(e)}})),setTablesSchema:Is,setValuesSchema:ms,setSchema:(e,t)=>Zt((()=>{Is(e),ms(t)})),delTables:ys,delTable:Rs,delRow:ps,delCell:(e,t,s,l)=>Zt(((e,t,s)=>y(Y(Me,e),(n=>y(Y(n,t),(a=>q(a,s)?At(e,n,t,a,s,l):0))))),e,t,s),delValues:Js,delValue:e=>Zt((e=>q(Ne,e)?Mt(e):0),e),delTablesSchema:Ls,delValuesSchema:Es,delSchema:()=>Zt((()=>{Ls(),Es()})),transaction:Fs,startTransaction:Os,finishTransaction:zs,forEachTable:e=>K(Me,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(Ae,w(e)),t),forEachRow:(e,t)=>K(Y(Me,w(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(Me,w(e)),w(t)),s),forEachValue:e=>Z(Ne,e),addSortedRowIdsListener:(e,t,s,l,n,a,o)=>{let r=os(e,t,s,l,n);return ct((()=>{const o=os(e,t,s,l,n);var c,i,d;i=r,L(c=o)===L(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,a(Ps,e,t,s,l,n,r))}),Ke[o?1:0],[e,t],[ss])},addStartTransactionListener:e=>ct(e,ot),addWillFinishTransactionListener:e=>ct(e,rt[0]),addDidFinishTransactionListener:e=>ct(e,rt[1]),callListener:e=>(ut(e),Ps),delListener:e=>(dt(e),Ps),getListenerStats:()=>({}),createStore:ye,addListener:ct,callListeners:it};return H({[c+u]:[0,je,[],()=>[hs()]],[u]:[0,xe],[h]:[0,De],[c+d]:[1,He,[ss],e=>[gs(...e)]],[d]:[1,We,[ss]],[d+b]:[1,$e,[ss]],[c+d+V]:[2,qe,[ss,ls],e=>[fs(...e)]],[f]:[1,Be,[ss]],[T]:[1,Ge,[ss]],[c+g]:[2,Qe,[ss,as],e=>[Ts(...e)]],[g]:[2,Ue,[ss,as]],[b]:[2,Xe,[ss,as]],[c+V]:[3,Ye,[ss,as,rs],e=>[Vs(...e)]],[V]:[3,Ze,[ss,as,rs],e=>ge(cs(...e))],InvalidCell:[3,_e],[c+S]:[0,tt,[],()=>[bs()]],[S]:[0,st],[v]:[0,lt],[c+C]:[1,nt,[ds],e=>[Cs(...e)]],[C]:[1,at,[ds],e=>ge(us(e[0]))],InvalidValue:[1,et]},(([e,t,s,l],n)=>{Ps["add"+n+"Listener"]=(...n)=>ct(n[e],t[n[e+1]?1:0],e>0?J(n,0,e):void 0,s,l)})),N(Ps)};exports.createStore=ye;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,S="Value",C=S+"s",v=S+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,J=(e,t,s)=>e.slice(t,s),I=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),P=Object,z=e=>P.getPrototypeOf(e),k=P.entries,A=P.keys,M=P.isFrozen,N=P.freeze,j=e=>!m(e)&&p(z(e),(e=>e==P.prototype||m(z(e))),(()=>!0)),x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>j(e)&&0==(e=>I(A(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,B=e=>m(e)||0==$(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>m(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s)=>(q(e,t)||_(e,t,s()),Y(e,t)),te=(e,t,s,n=_)=>(H(t,((t,n)=>s(e,n,t))),Z(e,(s=>x(t,s)?0:n(e,s))),e),se=(e,t,s)=>{const n={};return K(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},ne=(e,t,s)=>se(e,(e=>se(e,t,s)),W),ae=(e,t,s)=>se(e,(e=>ne(e,t,s)),W),le=(e,t)=>{const s=U();return K(e,((e,n)=>s.set(n,t?.(e)??e))),s},oe=e=>le(e,le),re=e=>le(e,oe),ce=(e,t,s,n,a=0)=>p((s?ee:Y)(e,t[a],a>I(t)-2?s:U),(l=>{if(a>I(t)-2)return n?.(l)&&_(e,t[a]),l;const o=ce(l,t,s,n,a+1);return B(l)&&_(e,t[a]),o})),ie=e=>new Set(Array.isArray(e)||m(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{ue.test(t)&&I(e)<1e3&&O(e,t)}]},fe=e=>[e,e],ge=()=>[U(),U()],Te=e=>[...e],be=([e,t])=>e===t,Ve=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Se=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Ce=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?P.fromEntries([...t]):t)),we=JSON.parse,ye=(e,t,s)=>m(e)||!j(e)||W(e)||M(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),pe=()=>{let e,s,n,l=!1,i=!1,y=!1,P=!1,z=0;const k=U(),A=U(),M=U(),j=U(),ue=U(),Le=U(),Re=U(),Je=U(),Ie=U(),Ee=U(),Fe=U(),Oe=U(),Pe=U(),ze=U(),ke=ie(),Ae=U(),Me=U(),Ne=U(),je=U(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),nt=ge(),at=ge(),lt=ge(),ot=ge(),rt=U(),ct=ge(),[it,dt,ut,ht]=(e=>{let s;const[n,a]=he(),l=U();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Ps;const i=n(1);return _(l,i,[e,a,o,r,c]),de(ce(a,o??[t],ie),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==I(s)?O(n,e):null===s[t]?K(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Y(e,s),t+1)));return a(e,0),n})(e,n),(e=>K(e,(e=>Y(l,e)[0](s,...n??[],...a))))),e=>p(Y(l,e),(([,s,n])=>(ce(s,n??[t],void 0,(t=>(Q(t,e),B(t)?1:0))),_(l,e),a(e),n))),e=>p(Y(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=I(o);r==I(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ft=e=>{if(!ye(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ve(e[r])!=t&&D(e,r),0))},gt=(t,s)=>(!e||q(Fe,s)||qt(s))&&ye(t,((e,t)=>Tt(s,t,e)),(()=>qt(s))),Tt=(e,t,s,n)=>ye(n?s:Ct(s,e,t),((n,a)=>p(bt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>qt(e,t))),bt=(t,s,n,a)=>e?p(Y(Y(Fe,t),n),(e=>Ve(a)!=e[o]?qt(t,s,n,a,e[r]):a),(()=>qt(t,s,n,a))):m(Ve(a))?qt(t,s,n,a):a,Vt=(e,t)=>ye(t?e:vt(e),((t,s)=>p(St(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Bt())),St=(e,t)=>s?p(Y(Pe,e),(s=>Ve(t)!=s[o]?Bt(e,t,s[r]):t),(()=>Bt(e,t))):m(Ve(t))?Bt(e,t):t,Ct=(e,t,s)=>(p(Y(Oe,t),(([n,a])=>{K(n,((t,s)=>{x(e,s)||(e[s]=t)})),K(a,(n=>{x(e,n)||qt(t,s,n)}))})),e),vt=e=>(s&&(K(ze,((t,s)=>{x(e,s)||(e[s]=t)})),K(ke,(t=>{x(e,t)||Bt(t)}))),e),wt=e=>te(Fe,e,((e,t,s)=>{const n=U(),a=ie();te(ee(Fe,t,U),s,((e,t,s)=>{_(e,t,s),p(s[r],(e=>_(n,t,e)),(()=>de(a,t)))})),_(Oe,t,[n,a])}),((e,t)=>{_(Fe,t),_(Oe,t)})),yt=e=>te(Pe,e,((e,t,s)=>{_(Pe,t,s),p(s[r],(e=>_(ze,t,e)),(()=>de(ke,t)))}),((e,t)=>{_(Pe,t),_(ze,t),Q(ke,t)})),mt=e=>W(e)?ms():Ss(e),pt=e=>te(Ne,e,((e,t,s)=>Lt(t,s)),((e,t)=>kt(t))),Lt=(e,t)=>te(ee(Ne,e,(()=>(jt(e,1),_(Ae,e,he()),_(Me,e,U()),U()))),t,((t,s,n)=>Rt(e,t,s,n)),((t,s)=>At(e,t,s))),Rt=(e,t,s,n,a)=>te(ee(t,s,(()=>(xt(e,s,1),U()))),n,((t,n,a)=>Jt(e,s,t,n,a)),((n,l)=>Mt(e,t,s,n,l,a))),Jt=(e,t,s,n,a)=>{q(s,n)||Dt(e,t,n,1);const l=Y(s,n);a!==l&&(Ht(e,t,n,l,a),_(s,n,a))},It=(e,t,s,n,a)=>p(Y(t,s),(t=>Jt(e,s,t,n,a)),(()=>Rt(e,t,s,Ct({[n]:a},e,s)))),Et=e=>W(e)?Rs():Cs(e),Ft=e=>te(je,e,((e,t,s)=>Ot(t,s)),((e,t)=>Nt(t))),Ot=(e,t)=>{q(je,e)||Wt(e,1);const s=Y(je,e);t!==s&&($t(e,s,t),_(je,e,t))},Pt=(e,t)=>{const[s]=Y(Ae,e),n=s(t);return q(Y(Ne,e),n)?Pt(e,t):n},zt=e=>Y(Ne,e)??Lt(e,{}),kt=e=>Lt(e,{}),At=(e,t,s)=>{const[,n]=Y(Ae,e);n(s),Rt(e,t,s,{},!0)},Mt=(e,t,s,n,a,l)=>{const o=Y(Y(Oe,e)?.[0],a);if(!m(o)&&!l)return Jt(e,s,n,a,o);const r=t=>{Ht(e,s,t,Y(n,t)),Dt(e,s,t,-1),_(n,t)};m(o)?r(a):Z(n,r),B(n)&&(xt(e,s,-1),B(_(t,s))&&(jt(e,-1),_(Ne,e),_(Ae,e),_(Me,e)))},Nt=e=>{const t=Y(ze,e);if(!m(t))return Ot(e,t);$t(e,Y(je,e)),Wt(e,-1),_(je,e)},jt=(e,t)=>me(k,e,t),xt=(e,t,s)=>me(ee(j,e,U),t,s)&&_(M,e,ee(M,e,(()=>0))+s),Dt=(e,t,s,n)=>{const a=Y(Me,e),l=Y(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(ee(A,e,U),s,n),_(a,s,l!=-n?l+n:null),me(ee(ee(ue,e,U),t,U),s,n)},Ht=(e,t,s,n,a)=>ee(ee(ee(Le,e,U),t,U),s,(()=>[n,0]))[1]=a,Wt=(e,t)=>me(Re,e,t),$t=(e,t,s)=>ee(Je,e,(()=>[t,0]))[1]=s,qt=(e,t,s,n,a)=>(O(ee(ee(ee(Ie,e,U),t,U),s,(()=>[])),n),a),Bt=(e,t,s)=>(O(ee(Ee,e,(()=>[])),t),s),Gt=(e,t,s)=>p(Y(Y(Y(Le,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(rs(e,t,s))])),Kt=e=>p(Y(Je,e),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(ds(e))])),Qt=e=>B(Ie)||B(et[e])?0:K(e?re(Ie):Ie,((t,s)=>K(t,((t,n)=>K(t,((t,a)=>dt(et[e],[s,n,a],t))))))),Ut=e=>B(Ee)||B(tt[e])?0:K(e?le(Ee):Ee,((t,s)=>dt(tt[e],[s],t))),Xt=(e,t,s,n)=>{if(!B(e))return dt(t,n,(()=>se(e))),Z(e,((e,t)=>dt(s,[...n??[],e],1==t))),1},Yt=e=>{const t=us();t!=y&&dt(xe[e],void 0,t);const s=B(Qe[e]),n=B(Ye[e])&&B(Ze[e])&&B(Ke[e])&&B(Ue[e])&&B(qe[e])&&B(Be[e])&&B(Ge[e])&&s&&B(He[e])&&B(We[e]),a=B(_e[e])&&B(Xe[e])&&B($e[e])&&B(De[e]);if(!n||!a){const t=e?[le(k),oe(A),le(M),oe(j),re(ue),re(Le)]:[k,A,M,j,ue,Le];if(!n){Xt(t[0],He[e],We[e]),K(t[1],((t,s)=>Xt(t,qe[e],Be[e],[s]))),K(t[2],((t,s)=>{0!=t&&dt(Ge[e],[s],ns(s))}));const n=ie();K(t[3],((t,a)=>{Xt(t,Ke[e],Ue[e],[a])&&!s&&(dt(Qe[e],[a,null]),de(n,a))})),s||K(t[5],((t,s)=>{if(!q(n,s)){const n=ie();K(t,(e=>K(e,(([t,s],a)=>s!==t?de(n,a):Q(e,a))))),K(n,(t=>dt(Qe[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,n)=>Xt(t,Ye[e],Ze[e],[s,n])))))}if(!a){let s;K(t[5],((t,n)=>{let a;K(t,((t,l)=>{let o;K(t,(([t,r],c)=>{r!==t&&(dt(_e[e],[n,l,c],r,t,Gt),s=a=o=1)})),o&&dt(Xe[e],[n,l],Gt)})),a&&dt($e[e],[n],Gt)})),s&&dt(De[e],void 0,Gt)}}},Zt=e=>{const t=bs();t!=P&&dt(st[e],void 0,t);const s=B(at[e])&&B(lt[e]),n=B(ot[e])&&B(nt[e]);if(!s||!n){const t=e?[le(Re),le(Je)]:[Re,Je];if(s||Xt(t[0],at[e],lt[e]),!n){let s;K(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(...F(t,w)))),Ps),es=()=>ae(Ne),ts=()=>X(Ne),ss=e=>X(Y(Me,w(e))),ns=e=>$(Y(Ne,w(e))),as=e=>X(Y(Ne,w(e))),ls=(e,t,s,n=0,a)=>{return F(J((o=Y(Ne,w(e)),r=(e,s)=>[m(t)?s:Y(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},os=(e,t)=>X(Y(Y(Ne,w(e)),w(t))),rs=(e,t,s)=>Y(Y(Y(Ne,w(e)),w(t)),w(s)),cs=()=>se(je),is=()=>X(je),ds=e=>Y(je,w(e)),us=()=>!B(Ne),hs=e=>q(Ne,w(e)),fs=(e,t)=>q(Y(Me,w(e)),w(t)),gs=(e,t)=>q(Y(Ne,w(e)),w(t)),Ts=(e,t,s)=>q(Y(Y(Ne,w(e)),w(t)),w(s)),bs=()=>!B(je),Vs=e=>q(je,w(e)),Ss=e=>_t((()=>(e=>ye(e,gt,qt))(e)?pt(e):0)),Cs=e=>_t((()=>Vt(e)?Ft(e):0)),vs=e=>{try{mt(we(e))}catch{}return Ps},ws=t=>_t((()=>{if((e=ye(t,(e=>ye(e,ft))))&&(wt(t),!B(Ne))){const e=es();ms(),Ss(e)}})),ys=e=>_t((()=>{if(s=(e=>ye(e,ft))(e)){const t=cs();Is(),Rs(),s=!0,yt(e),Cs(t)}})),ms=()=>_t((()=>pt({}))),ps=e=>_t((e=>q(Ne,e)?kt(e):0),e),Ls=(e,t)=>_t(((e,t)=>p(Y(Ne,e),(s=>q(s,t)?At(e,s,t):0))),e,t),Rs=()=>_t((()=>Ft({}))),Js=()=>_t((()=>{wt({}),e=!1})),Is=()=>_t((()=>{yt({}),s=!1})),Es=(e,t)=>{if(-1!=z){Fs();const s=e();return Os(t),s}},Fs=()=>(-1!=z&&z++,1==z&&dt(rt,void 0),Ps),Os=e=>(z>0&&(z--,0==z&&(l=!B(Le),i=!B(Je),z=1,Qt(1),l&&Yt(1),Ut(1),i&&Zt(1),e?.(Ps)&&(K(Le,((e,t)=>K(e,((e,s)=>K(e,(([e],n)=>Se(Ps,t,s,n,e))))))),K(Je,(([e],t)=>Ce(Ps,t,e))),l=i=!1),dt(ct[0],void 0),z=-1,Qt(0),l&&Yt(0),Ut(0),i&&Zt(0),n?.(Ps),dt(ct[1],void 0),z=0,l=i=!1,y=us(),P=bs(),E([k,A,M,j,ue,Le,Ie,Re,Je,Ee],G))),Ps),Ps={getContent:()=>[es(),cs()],getTables:es,getTableIds:ts,getTable:e=>ne(Y(Ne,w(e))),getTableCellIds:ss,getRowCount:ns,getRowIds:as,getSortedRowIds:ls,getRow:(e,t)=>se(Y(Y(Ne,w(e)),w(t))),getCellIds:os,getCell:rs,getValues:cs,getValueIds:is,getValue:ds,hasTables:us,hasTable:hs,hasTableCell:fs,hasRow:gs,hasCell:Ts,hasValues:bs,hasValue:Vs,getTablesJson:()=>ve(Ne),getValuesJson:()=>ve(je),getJson:()=>ve([Ne,je]),getTablesSchemaJson:()=>ve(Fe),getValuesSchemaJson:()=>ve(Pe),getSchemaJson:()=>ve([Fe,Pe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>_t((()=>{(W(e)?ms:Ss)(e),(W(t)?Rs:Cs)(t)})),setTables:Ss,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,zt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Es((()=>{let n;return Tt(e,n,t)&&(e=w(e),Rt(e,zt(e),n=Pt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>_t(((e,t)=>{if(Tt(e,t,s,1)){const n=zt(e);H(s,((s,a)=>It(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>_t(((e,t,s)=>p(bt(e,t,s,R(n)?n(rs(e,t,s)):n),(n=>It(e,zt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>_t((()=>Vt(e,1)?H(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>_t((e=>p(St(e,R(t)?t(ds(e)):t),(t=>Ot(e,t)))),e),applyChanges:e=>_t((()=>{H(e[0],((e,t)=>m(e)?ps(t):H(e,((e,s)=>m(e)?Ls(t,s):H(e,((e,n)=>Se(Ps,t,s,n,e))))))),H(e[1],((e,t)=>Ce(Ps,t,e)))})),setTablesJson:vs,setValuesJson:e=>{try{Et(we(e))}catch{}return Ps},setJson:e=>_t((()=>{try{const[t,s]=we(e);mt(t),Et(s)}catch{vs(e)}})),setTablesSchema:ws,setValuesSchema:ys,setSchema:(e,t)=>_t((()=>{ws(e),ys(t)})),delTables:ms,delTable:ps,delRow:Ls,delCell:(e,t,s,n)=>_t(((e,t,s)=>p(Y(Ne,e),(a=>p(Y(a,t),(l=>q(l,s)?Mt(e,a,t,l,s,n):0))))),e,t,s),delValues:Rs,delValue:e=>_t((e=>q(je,e)?Nt(e):0),e),delTablesSchema:Js,delValuesSchema:Is,delSchema:()=>_t((()=>{Js(),Is()})),transaction:Es,startTransaction:Fs,getTransactionChanges:()=>[se(Le,((e,t)=>-1===Y(k,t)?void 0:se(e,((e,s)=>-1===Y(Y(j,t),s)?void 0:se(e,(([,e])=>e),((e,t)=>be(t)))),W)),W),se(Je,(([,e])=>e),((e,t)=>be(t)))],getTransactionLog:()=>[l,i,ae(Le,Te,be),ae(Ie),se(Je,Te,be),se(Ee),se(k),ne(j),ae(ue),se(Re)],finishTransaction:Os,forEachTable:e=>K(Ne,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(Me,w(e)),t),forEachRow:(e,t)=>K(Y(Ne,w(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(Ne,w(e)),w(t)),s),forEachValue:e=>Z(je,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ls(e,t,s,n,a);return it((()=>{const o=ls(e,t,s,n,a);var c,i,d;i=r,I(c=o)===I(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Ps,e,t,s,n,a,r))}),Qe[o?1:0],[e,t],[ts])},addStartTransactionListener:e=>it(e,rt),addWillFinishTransactionListener:e=>it(e,ct[0]),addDidFinishTransactionListener:e=>it(e,ct[1]),callListener:e=>(ht(e),Ps),delListener:e=>(ut(e),Ps),getListenerStats:()=>({}),createStore:pe,addListener:it,callListeners:dt,addPostTransactionListener:e=>{n=e}};return H({[c+u]:[0,xe,[],()=>[us()]],[u]:[0,De],[h]:[0,He],[c+d]:[1,We,[ts],e=>[hs(...e)]],[d]:[1,$e,[ts]],[d+V]:[1,qe,[ts]],[c+d+b]:[2,Be,[ts,ss],e=>[fs(...e)]],[g]:[1,Ge,[ts]],[T]:[1,Ke,[ts]],[c+f]:[2,Ue,[ts,as],e=>[gs(...e)]],[f]:[2,Xe,[ts,as]],[V]:[2,Ye,[ts,as]],[c+b]:[3,Ze,[ts,as,os],e=>[Ts(...e)]],[b]:[3,_e,[ts,as,os],e=>fe(rs(...e))],InvalidCell:[3,et],[c+C]:[0,st,[],()=>[bs()]],[C]:[0,nt],[v]:[0,at],[c+S]:[1,lt,[is],e=>[Vs(...e)]],[S]:[1,ot,[is],e=>fe(ds(e[0]))],InvalidValue:[1,tt]},(([e,t,s,n],a)=>{Ps["add"+a+"Listener"]=(...a)=>it(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,n)})),N(Ps)};exports.createStore=pe;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",i="default",l="Listener",c="Result",d="add",u="Has",h="Ids",g="Table",f=g+"s",L=g+h,w="Row",I=w+"Count",S=w+h,v="Sorted"+w+h,R="Cell",p=R+h,T="Value",y=T+"s",C=T+h,b=e=>t+e,V=Math.max,m=Math.min,x=isFinite,E=e=>null==e,k=(e,t,s)=>E(e)?s?.():t(e),M=e=>e==s||e==n,D=t=>e(t)==o,J=e=>Array.isArray(e),A=(e,t,s)=>e.slice(t,s),F=e=>e.length,Q=()=>{},z=(e,t)=>e.includes(t),N=(e,t)=>e.every(t),O=(e,t)=>F(e)===F(t)&&N(e,((e,s)=>t[s]===e)),P=(e,t)=>N(e,((s,n)=>0==n||t(e[n-1],s)<=0)),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),_=(e,t)=>e.map(t),B=e=>$(e,((e,t)=>e+t),0),H=e=>0==F(e),$=(e,t,s)=>e.reduce(t,s),q=(e,...t)=>e.push(...t),G=e=>e.pop(),K=e=>e.shift(),U=Object,X=e=>U.getPrototypeOf(e),Y=U.entries,Z=U.keys,ee=U.isFrozen,te=U.freeze,se=e=>!E(e)&&k(X(e),(e=>e==U.prototype||E(X(e))),(()=>!0)),ne=(e,t)=>!E(((e,t)=>k(e,(e=>e[t])))(e,t)),ae=(e,t)=>(delete e[t],e),oe=(e,t)=>_(Y(e),(([e,s])=>t(s,e))),re=e=>se(e)&&0==(e=>F(Z(e)))(e),ie=e=>e?.size??0,le=(e,t)=>e?.has(t)??!1,ce=e=>E(e)||0==ie(e),de=e=>[...e?.values()??[]],ue=e=>e.clear(),he=(e,t)=>e?.forEach(t),ge=(e,t)=>e?.delete(t),fe=e=>new Map(e),Le=e=>[...e?.keys()??[]],we=(e,t)=>e?.get(t),Ie=(e,t)=>he(e,((e,s)=>t(s,e))),Se=(e,t,s)=>E(s)?(ge(e,t),e):e?.set(t,s),ve=(e,t,s)=>(le(e,t)||Se(e,t,s()),we(e,t)),Re=(e,t,s,n=Se)=>(oe(t,((t,n)=>s(e,n,t))),Ie(e,(s=>ne(t,s)?0:n(e,s))),e),pe=(e,t,s)=>{const n={};return he(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Te=(e,t,s)=>pe(e,(e=>pe(e,t,s)),re),ye=(e,t,s)=>pe(e,(e=>Te(e,t,s)),re),Ce=(e,t)=>{const s=fe();return he(e,((e,n)=>s.set(n,t?.(e)??e))),s},be=e=>Ce(e,Ce),Ve=e=>Ce(e,be),me=(e,t,s,n,a=0)=>k((s?ve:we)(e,t[a],a>F(t)-2?s:fe),(o=>{if(a>F(t)-2)return n?.(o)&&Se(e,t[a]),o;const r=me(o,t,s,n,a+1);return ce(o)&&Se(e,t[a]),r})),xe=t=>{const s=e(t);return M(s)||s==a&&x(t)?s:void 0},Ee=(e,t,s,n,a)=>E(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ke=(e,t,s)=>E(s)?e.delValue(t):e.setValue(t,s),Me=e=>new Set(J(e)||E(e)?e:[e]),De=(e,t)=>e?.add(t),Je=(e,t,s,n,a)=>{const o=e.hasRow,r=fe(),i=fe(),l=fe(),c=fe(),d=fe(),u=fe(),h=(t,s,...n)=>{const a=ve(u,t,Me);return W(n,(t=>De(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>k(we(u,t),(n=>{W(H(s)?de(n):s,(t=>{e.delListener(t),ge(n,t)})),ce(n)&&Se(u,t)})),f=(e,s)=>{Se(r,e,s),le(i,e)||(Se(i,e,t()),Se(c,e,fe()),Se(d,e,fe()),a(l))},L=e=>{Se(r,e),Se(i,e),Se(c,e),Se(d,e),g(e),a(l)};return[()=>e,()=>Le(r),e=>Ie(i,e),e=>le(i,e),e=>we(r,e),e=>we(i,e),(e,t)=>Se(i,e,t),f,(t,n,a,r,i)=>{f(t,n);const l=fe(),u=fe(),L=we(c,t),w=we(d,t),I=t=>{const a=s=>e.getCell(n,t,s),c=we(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||J(c)&&J(d)&&O(c,d)||Se(l,t,[c,d]),!E(i)){const e=we(w,t),s=o(n,t)?i(a,t):void 0;e!=s&&Se(u,t,s)}},S=e=>{a((()=>{he(l,(([,e],t)=>Se(L,t,e))),he(u,((e,t)=>Se(w,t,e)))}),l,u,L,w,e),ue(l),ue(u)};Ie(L,I),e.hasTable(n)&&W(e.getRowIds(n),(e=>{le(L,e)||I(e)})),S(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>I(s))),e.addTableListener(n,(()=>S())))},L,e=>n(e,l),()=>Ie(u,L),h,g]},Ae=(n,a)=>e(n)==s?e=>e(n):n??(()=>a??t),Fe=(e,t)=>{const s=new WeakMap;return n=>{s.has(n)||s.set(n,e(n));const a=s.get(n);return t?.(a),a}},Qe=/^\d+$/,ze=()=>{const e=[];let s=0;return[n=>(n?K(e):null)??t+s++,t=>{Qe.test(t)&&F(e)<1e3&&q(e,t)}]},Ne=e=>{let s;const[n,a]=ze(),o=fe();return[(a,r,i,l=[],c=(()=>[]))=>{s??=e();const d=n(1);return Se(o,d,[a,r,i,l,c]),De(me(r,i??[t],Me),d),d},(e,n,...a)=>W(((e,s=[t])=>{const n=[],a=(e,t)=>t==F(s)?q(n,e):null===s[t]?he(e,(e=>a(e,t+1))):W([s[t],null],(s=>a(we(e,s),t+1)));return a(e,0),n})(e,n),(e=>he(e,(e=>we(o,e)[0](s,...n??[],...a))))),e=>k(we(o,e),(([,s,n])=>(me(s,n??[t],void 0,(t=>(ge(t,e),ce(t)?1:0))),Se(o,e),a(e),n))),e=>k(we(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const i=F(r);i==F(t)?e(s,...r,...a(r)):E(t[i])?W(n[i]?.(...r)??[],(e=>o(...r,e))):o(...r,t[i])};o()}))]},Oe=Fe((e=>{let s,n,a,o=100,r=fe(),i=fe(),l=1;const c=fe(),d=fe(),[u,h,g]=Ne((()=>Q)),f=fe(),L=fe(),w=[],I=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,a]=we(f,s);he(n,((s,n)=>he(s,((s,a)=>he(s,((s,o)=>Ee(e,n,a,o,s[t]))))))),he(a,((s,n)=>ke(e,n,s[t])))})),l=1},v=e=>{Se(f,e),Se(L,e),h(d,[e])},R=(e,t)=>W(((e,t)=>e.splice(0,t))(e,t??F(e)),v),p=()=>R(w,F(w)-o),T=()=>k(s,(()=>{q(w,s),p(),R(I),s=void 0,a=1})),y=()=>{s=G(w),a=1};let C,b;const V=(e="")=>(E(s)&&(s=t+n++,Se(f,s,[r,i]),J(s,e),r=fe(),i=fe(),a=1),s),m=()=>{H(w)||(((e,...t)=>{e.unshift(...t)})(I,V()),S(0,s),s=G(w),a=1)},x=()=>{H(I)||(q(w,s),s=K(I),S(1,s),a=1)},M=()=>{a&&(h(c),a=0)},D=e=>{const t=V(e);return M(),t},J=(e,t)=>(A(e)&&we(L,e)!==t&&(Se(L,e,t),h(d,[e])),Q),A=e=>le(f,e),Q={setSize:e=>(o=e,p(),Q),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...w],s,[...I]],forEachCheckpoint:e=>Ie(L,e),hasCheckpoint:A,getCheckpoint:e=>we(L,e),goBackward:()=>(m(),M(),Q),goForward:()=>(x(),M(),Q),goTo:e=>{const t=z(w,e)?m:z(I,e)?x:null;for(;!E(t)&&e!=s;)t();return M(),Q},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(I),E(s)||v(s),s=void 0,n=0,D(),Q),clearForward:()=>(H(I)||(R(I),h(c)),Q),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({}),_registerListeners:()=>{C=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(l){T();const e=ve(r,t,fe),i=ve(e,s,fe),l=ve(i,n,(()=>[o,void 0]));l[1]=a,l[0]===a&&ce(Se(i,n))&&ce(Se(e,s))&&ce(Se(r,t))&&y(),M()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(l){T();const e=ve(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&ce(Se(i,t))&&y(),M()}}))}};return te(Q.clear())}),(e=>e._registerListeners())),Pe=(e,t)=>(e??0)<(t??0)?-1:1,je=Fe((e=>{const s=fe(),n=fe(),[a,o,r]=Ne((()=>v)),[i,l,c,d,u,h,g,,f,L,w,I]=Je(e,fe,(e=>E(e)?t:J(e)?_(e,b):b(e)),a,o),S=(t,s,n)=>{const a=u(t);he(n,((t,n)=>s(n,(s=>he(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,r,i,l=Pe)=>{const c=E(i)?void 0:([e],[t])=>i(e,t);return f(e,t,((t,a,i,d,u,f)=>{let L=0;const w=Me(),I=Me(),S=h(e);if(he(a,(([e,t],s)=>{const n=Me(e),a=Me(t);he(n,(e=>ge(a,e)?ge(n,e):0)),he(n,(e=>{De(w,e),k(we(S,e),(t=>{ge(t,s),ce(t)&&(Se(S,e),L=1)}))})),he(a,(e=>{De(w,e),le(S,e)||(Se(S,e,Me()),L=1),De(we(S,e),s),E(r)||De(I,e)}))})),t(),ce(u)||(f?Ie(S,(e=>De(I,e))):Ie(i,(e=>k(we(d,e),(e=>De(I,e))))),he(I,(e=>{const t=(t,s)=>l(we(u,t),we(u,s),e),s=[...we(S,e)];P(s,t)||(Se(S,e,Me(j(s,t))),De(w,e))}))),(L||f)&&!E(c)){const t=[...S];P(t,c)||(g(e,fe(j(t,c))),L=1)}L&&o(s,[e]),he(w,(t=>o(n,[e,t])))}),Ae(a),k(r,Ae)),v},delIndexDefinition:e=>(L(e),v),getStore:i,getIndexIds:l,forEachIndex:e=>c(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>le(h(e),t),getTableId:u,getSliceIds:e=>Le(h(e)),getSliceRowIds:(e,t)=>de(we(h(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),v),destroy:I,getListenerStats:()=>({})};return te(v)})),We=fe([["avg",[(e,t)=>B(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:V(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>B(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),_e=(e,t,s,n,a,o=!1)=>{if(ce(s))return;const[r,i,l,c]=a;return o||=E(e),he(n,(([s,n])=>{o||(e=E(s)?i?.(e,n,t++):E(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=E(e))})),o?r(de(s),ie(s)):e},Be=Fe((e=>{const s=fe(),[n,a,o]=Ne((()=>I)),[r,i,l,c,d,u,h,,g,f,L,w]=Je(e,Q,(e=>isNaN(e)||E(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),I={setMetricDefinition:(e,t,n,o,r,i,l)=>{const c=D(n)?[n,r,i,l]:we(We,n)??we(We,"sum");return g(e,t,((t,n,o,r,i,l)=>{const d=u(e),g=ie(r);l||=E(d),t();let f=_e(d,g,r,n,c,l);x(f)||(f=void 0),f!=d&&(h(e,f),a(s,[e],f,d))}),Ae(o,1)),I},delMetricDefinition:e=>(f(e),I),getStore:r,getMetricIds:i,forEachMetric:l,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),I),destroy:w,getListenerStats:()=>({})};return te(I)})),He=fe(),$e=fe(),qe=Fe((e=>{const s=e.createStore,n=s(),a=s(),o=fe(),{addListener:r,callListeners:i,delListener:u}=a,[h,f,L,T,y,,,C,,b,V,m,x,M]=Je(e,(()=>!0),Q,r,i),J=(e,t,...s)=>W(s,(s=>De(ve(ve(o,t,fe),e,Me),s))),z=e=>{k(we(o,e),(e=>{Ie(e,((e,t)=>he(t,(t=>e.delListener(t))))),ue(e)})),W([a,n],(t=>t.delTable(e)))},O=(e,t,s)=>J(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),P={setQueryDefinition:(s,o,r)=>{C(s,o),z(s);const i=[],l=[[null,[o,null,null,[],fe()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=D(e)?[F(i)+t,e]:[E(s)?e:s,t=>t(e,s)];return q(i,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=E(s)||D(t)?null:t,a=E(n)?t:s,o=[e,[e,n,D(a)?a:e=>e(a),[],fe()]];return q(l,o),{as:e=>o[0]=e}},where:(e,t,s)=>q(c,D(e)?e:E(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,D(t)?[t,s,n,a]:we(We,t)??[(e,t)=>t]]];return q(d,o),{as:e=>o[0]=e}},having:(e,t)=>q(u,D(e)?e:s=>s(e)===t)});const h=fe(i);if(ce(h))return P;const g=fe(l);Ie(g,((e,[,t])=>k(we(g,t),(({3:t})=>E(e)?0:q(t,e)))));const f=fe(d);let L=n;if(ce(f)&&H(u))L=a;else{O(s,L,a);const e=fe();Ie(f,((t,[s,n])=>De(ve(e,s,Me),[t,n])));const t=Me();Ie(h,(s=>le(e,s)?0:De(t,s)));const n=fe(),o=(t,n,o,r)=>k(t,(([i,l,c,d])=>{Ie(n,((t,[s])=>{const n=ve(i,t,fe),a=we(n,o),l=r?void 0:s;if(a!==l){const s=Me([[a,l]]),r=ie(n);Se(n,o,l),he(we(e,t),(([e,t])=>{const a=_e(d[e],r,n,s,t);d[e]=E(xe(a))?null:a}))}})),ce(l)||!N(u,(e=>e((e=>d[e]))))?a.delRow(s,c):E(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));J(L,s,L.addRowListener(s,null,((a,r,i,l)=>{const c=[],d=[],u=fe(),h=L.hasRow(s,i);let g=!h;he(t,(e=>{const[t,n,a]=l(s,i,e);q(c,n),q(d,a),g||=t})),Ie(e,(e=>{const[t,,n]=l(s,i,e);(g||t)&&Se(u,e,[n])})),g&&o(me(n,c,void 0,(([,e])=>(ge(e,i),ce(e)))),u,i,1),h&&o(me(n,d,(()=>{const e={};return he(t,(t=>e[t]=L.getCell(s,i,t))),[fe(),Me(),void 0,e]}),(([,e])=>{De(e,i)})),u,i)})))}O(s,e,L);const w=(t,n,a,r)=>{const i=t=>e.getCell(n,a,t);W(r,(n=>{const[a,,o,r,l]=we(g,n),c=o?.(i,t),[d,u]=we(l,t)??[];c!=d&&(E(u)||M(s,u),Se(l,t,E(c)?null:[c,...x(s,1,e.addRowListener(a,c,(()=>w(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...E(n)?[o,t,s]:s===o?[o,t,n]:[we(g,s)?.[0],we(we(g,s)?.[4],t)?.[0],n]);L.transaction((()=>N(c,(e=>e(n)))?Ie(h,((e,a)=>Ee(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:I}=we(g,null);return L.transaction((()=>x(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?w(a,o,a,I):(L.delRow(s,a),he(g,(({4:e})=>k(we(e,a),(([,t])=>{M(s,t),Se(e,a)})))))}))))),P},delQueryDefinition:e=>(z(e),b(e),P),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:T,getTableId:y,addQueryIdsListener:e=>V((()=>e(P))),delListener:e=>(u(e),P),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return oe({[g]:[1,1],[g+p]:[0,1],[I]:[0,1],[S]:[0,1],[v]:[0,5],[w]:[1,2],[p]:[0,2],[R]:[1,3]},(([e,t],s)=>{W(e?["get","has","forEach"]:["get"],(e=>P[e+c+s]=(...t)=>a[e+s](...t))),P[d+c+s+l]=(...e)=>a[d+s+l](...A(e,0,t),((s,...n)=>e[t](P,...n)),!0)})),te(P)})),Ge=Fe((e=>{const s=fe(),n=fe(),a=fe(),o=fe(),[r,i,l]=Ne((()=>T)),[c,d,u,h,g,f,,,L,w,I,S]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>E(e)?void 0:e+t),r,i),v=(e,t,s)=>k(f(e),(([n,,a])=>{if(!le(a,t)){const o=Me();if(g(e)!=p(e))De(o,t);else{let e=t;for(;!E(e)&&!le(o,e);)De(o,e),e=we(n,e)}if(s)return o;Se(a,t,o)}return we(a,t)})),R=(e,t)=>k(f(e),(([,,e])=>Se(e,t))),p=e=>we(s,e),T={setRelationshipDefinition:(e,t,r,l)=>(Se(s,e,r),L(e,t,((t,s)=>{const r=Me(),l=Me(),c=Me(),[d,u]=f(e);he(s,(([t,s],n)=>{E(t)||(De(l,t),k(we(u,t),(e=>{ge(e,n),ce(e)&&Se(u,t)}))),E(s)||(De(l,s),le(u,s)||Se(u,s,Me()),De(we(u,s),n)),De(r,n),Se(d,n,s),Ie(we(o,e),(t=>{le(v(e,t),n)&&De(c,t)}))})),t(),he(r,(t=>i(n,[e,t]))),he(l,(t=>i(a,[e,t]))),he(c,(t=>{R(e,t),i(o,[e,t])}))}),Ae(l)),T),delRelationshipDefinition:e=>(Se(s,e),w(e),T),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:p,getRemoteRowId:(e,t)=>we(f(e)?.[0],t),getLocalRowIds:(e,t)=>de(we(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>E(f(e))?[t]:de(v(e,t,!0)),addRelationshipIdsListener:I,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),r(s,o,[e,t])),delListener:e=>(R(...l(e)??[]),T),destroy:S,getListenerStats:()=>({})};return te(T)})),Ke=e=>[e,e],Ue=()=>[fe(),fe()],Xe=e=>[...e],Ye=([e,t])=>e===t,Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?U.fromEntries([...t]):t)),et=JSON.parse,tt=(e,t,s)=>E(e)||!se(e)||re(e)||ee(e)?(s?.(),!1):(oe(e,((s,n)=>{t(s,n)||ae(e,n)})),!re(e)),st=(e,t,s)=>Se(e,t,we(e,t)==-s?void 0:s),nt=()=>{let e,t,s=!1,n=!1,o=!1,c=!1,h=0;const v=fe(),V=fe(),m=fe(),x=fe(),J=fe(),F=fe(),Q=fe(),N=fe(),P=fe(),B=fe(),H=fe(),$=fe(),G=fe(),K=fe(),U=Me(),X=fe(),Y=fe(),Z=fe(),ee=fe(),se=Ue(),de=Ue(),me=Ue(),Je=Ue(),Ae=Ue(),Fe=Ue(),Qe=Ue(),Oe=Ue(),je=Ue(),We=Ue(),_e=Ue(),Be=Ue(),He=Ue(),$e=Ue(),qe=Ue(),Ge=Ue(),at=Ue(),ot=Ue(),rt=Ue(),it=Ue(),lt=Ue(),ct=Ue(),dt=fe(),ut=Ue(),[ht,gt,ft,Lt]=Ne((()=>zs)),wt=e=>{if(!tt(e,((e,t)=>z([r,i],t))))return!1;const t=e[r];return!(!M(t)&&t!=a||(xe(e[i])!=t&&ae(e,i),0))},It=(t,s)=>(!e||le(H,s)||qt(s))&&tt(t,((e,t)=>St(s,t,e)),(()=>qt(s))),St=(e,t,s,n)=>tt(n?s:Tt(s,e,t),((n,a)=>k(vt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,n,a)=>e?k(we(we(H,t),n),(e=>xe(a)!=e[r]?qt(t,s,n,a,e[i]):a),(()=>qt(t,s,n,a))):E(xe(a))?qt(t,s,n,a):a,Rt=(e,t)=>tt(t?e:yt(e),((t,s)=>k(pt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),pt=(e,s)=>t?k(we(G,e),(t=>xe(s)!=t[r]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):E(xe(s))?Gt(e,s):s,Tt=(e,t,s)=>(k(we($,t),(([n,a])=>{he(n,((t,s)=>{ne(e,s)||(e[s]=t)})),he(a,(n=>{ne(e,n)||qt(t,s,n)}))})),e),yt=e=>(t&&(he(K,((t,s)=>{ne(e,s)||(e[s]=t)})),he(U,(t=>{ne(e,t)||Gt(t)}))),e),Ct=e=>Re(H,e,((e,t,s)=>{const n=fe(),a=Me();Re(ve(H,t,fe),s,((e,t,s)=>{Se(e,t,s),k(s[i],(e=>Se(n,t,e)),(()=>De(a,t)))})),Se($,t,[n,a])}),((e,t)=>{Se(H,t),Se($,t)})),bt=e=>Re(G,e,((e,t,s)=>{Se(G,t,s),k(s[i],(e=>Se(K,t,e)),(()=>De(U,t)))}),((e,t)=>{Se(G,t),Se(K,t),ge(U,t)})),Vt=e=>re(e)?xs():ys(e),mt=e=>Re(Z,e,((e,t,s)=>xt(t,s)),((e,t)=>zt(t))),xt=(e,t)=>Re(ve(Z,e,(()=>(jt(e,1),Se(X,e,ze()),Se(Y,e,fe()),fe()))),t,((t,s,n)=>Et(e,t,s,n)),((t,s)=>Nt(e,t,s))),Et=(e,t,s,n,a)=>Re(ve(t,s,(()=>(Wt(e,s,1),fe()))),n,((t,n,a)=>kt(e,s,t,n,a)),((n,o)=>Ot(e,t,s,n,o,a))),kt=(e,t,s,n,a)=>{le(s,n)||_t(e,t,n,1);const o=we(s,n);a!==o&&(Bt(e,t,n,o,a),Se(s,n,a))},Mt=(e,t,s,n,a)=>k(we(t,s),(t=>kt(e,s,t,n,a)),(()=>Et(e,t,s,Tt({[n]:a},e,s)))),Dt=e=>re(e)?Ms():Cs(e),Jt=e=>Re(ee,e,((e,t,s)=>At(t,s)),((e,t)=>Pt(t))),At=(e,t)=>{le(ee,e)||Ht(e,1);const s=we(ee,e);t!==s&&($t(e,s,t),Se(ee,e,t))},Ft=(e,t)=>{const[s]=we(X,e),n=s(t);return le(we(Z,e),n)?Ft(e,t):n},Qt=e=>we(Z,e)??xt(e,{}),zt=e=>xt(e,{}),Nt=(e,t,s)=>{const[,n]=we(X,e);n(s),Et(e,t,s,{},!0)},Ot=(e,t,s,n,a,o)=>{const r=we(we($,e)?.[0],a);if(!E(r)&&!o)return kt(e,s,n,a,r);const i=t=>{Bt(e,s,t,we(n,t)),_t(e,s,t,-1),Se(n,t)};E(r)?i(a):Ie(n,i),ce(n)&&(Wt(e,s,-1),ce(Se(t,s))&&(jt(e,-1),Se(Z,e),Se(X,e),Se(Y,e)))},Pt=e=>{const t=we(K,e);if(!E(t))return At(e,t);$t(e,we(ee,e)),Ht(e,-1),Se(ee,e)},jt=(e,t)=>st(v,e,t),Wt=(e,t,s)=>st(ve(x,e,fe),t,s)&&Se(m,e,ve(m,e,(()=>0))+s),_t=(e,t,s,n)=>{const a=we(Y,e),o=we(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&st(ve(V,e,fe),s,n),Se(a,s,o!=-n?o+n:null),st(ve(ve(J,e,fe),t,fe),s,n)},Bt=(e,t,s,n,a)=>ve(ve(ve(F,e,fe),t,fe),s,(()=>[n,0]))[1]=a,Ht=(e,t)=>st(Q,e,t),$t=(e,t,s)=>ve(N,e,(()=>[t,0]))[1]=s,qt=(e,t,s,n,a)=>(q(ve(ve(ve(P,e,fe),t,fe),s,(()=>[])),n),a),Gt=(e,t,s)=>(q(ve(B,e,(()=>[])),t),s),Kt=(e,t,s)=>k(we(we(we(F,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(hs(e,t,s))])),Ut=e=>k(we(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ke(Ls(e))])),Xt=e=>ce(P)||ce(Ge[e])?0:he(e?Ve(P):P,((t,s)=>he(t,((t,n)=>he(t,((t,a)=>gt(Ge[e],[s,n,a],t))))))),Yt=e=>ce(B)||ce(at[e])?0:he(e?Ce(B):B,((t,s)=>gt(at[e],[s],t))),Zt=(e,t,s,n)=>{if(!ce(e))return gt(t,n,(()=>pe(e))),Ie(e,((e,t)=>gt(s,[...n??[],e],1==t))),1},es=e=>{const t=ws();t!=o&&gt(se[e],void 0,t);const s=ce(We[e]),n=ce(He[e])&&ce($e[e])&&ce(je[e])&&ce(_e[e])&&ce(Fe[e])&&ce(Qe[e])&&ce(Oe[e])&&s&&ce(me[e])&&ce(Je[e]),a=ce(qe[e])&&ce(Be[e])&&ce(Ae[e])&&ce(de[e]);if(!n||!a){const t=e?[Ce(v),be(V),Ce(m),be(x),Ve(J),Ve(F)]:[v,V,m,x,J,F];if(!n){Zt(t[0],me[e],Je[e]),he(t[1],((t,s)=>Zt(t,Fe[e],Qe[e],[s]))),he(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const n=Me();he(t[3],((t,a)=>{Zt(t,je[e],_e[e],[a])&&!s&&(gt(We[e],[a,null]),De(n,a))})),s||he(t[5],((t,s)=>{if(!le(n,s)){const n=Me();he(t,(e=>he(e,(([t,s],a)=>s!==t?De(n,a):ge(e,a))))),he(n,(t=>gt(We[e],[s,t])))}})),he(t[4],((t,s)=>he(t,((t,n)=>Zt(t,He[e],$e[e],[s,n])))))}if(!a){let s;he(t[5],((t,n)=>{let a;he(t,((t,o)=>{let r;he(t,(([t,i],l)=>{i!==t&&(gt(qe[e],[n,o,l],i,t,Kt),s=a=r=1)})),r&&gt(Be[e],[n,o],Kt)})),a&&gt(Ae[e],[n],Kt)})),s&&gt(de[e],void 0,Kt)}}},ts=e=>{const t=ps();t!=c&&gt(ot[e],void 0,t);const s=ce(it[e])&&ce(lt[e]),n=ce(ct[e])&&ce(rt[e]);if(!s||!n){const t=e?[Ce(Q),Ce(N)]:[Q,N];if(s||Zt(t[0],it[e],lt[e]),!n){let s;he(t[1],(([t,n],a)=>{n!==t&&(gt(ct[e],[a],n,t,Ut),s=1)})),s&&gt(rt[e],void 0,Ut)}}},ss=(e,...t)=>(As((()=>e(..._(t,b)))),zs),ns=()=>[pe(F,((e,t)=>-1===we(v,t)?null:pe(e,((e,s)=>-1===we(we(x,t),s)?null:pe(e,(([,e])=>e??null),((e,t)=>Ye(t)))),re)),re),pe(N,(([,e])=>e??null),((e,t)=>Ye(t)))],as=()=>({cellsTouched:s,valuesTouched:n,changedCells:ye(F,Xe,Ye),invalidCells:ye(P),changedValues:pe(N,Xe,Ye),invalidValues:pe(B),changedTableIds:pe(v),changedRowIds:Te(x),changedCellIds:ye(J),changedValueIds:pe(Q)}),os=()=>ye(Z),rs=()=>Le(Z),is=e=>Le(we(Y,b(e))),ls=e=>ie(we(Z,b(e))),cs=e=>Le(we(Z,b(e))),ds=(e,t,s,n=0,a)=>{return _(A(j((o=we(Z,b(e)),r=(e,s)=>[E(t)?s:we(e,b(t)),s],_([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Pe(e,t)*(s?-1:1))),n,E(a)?a:n+a),(([,e])=>e));var o,r},us=(e,t)=>Le(we(we(Z,b(e)),b(t))),hs=(e,t,s)=>we(we(we(Z,b(e)),b(t)),b(s)),gs=()=>pe(ee),fs=()=>Le(ee),Ls=e=>we(ee,b(e)),ws=()=>!ce(Z),Is=e=>le(Z,b(e)),Ss=(e,t)=>le(we(Y,b(e)),b(t)),vs=(e,t)=>le(we(Z,b(e)),b(t)),Rs=(e,t,s)=>le(we(we(Z,b(e)),b(t)),b(s)),ps=()=>!ce(ee),Ts=e=>le(ee,b(e)),ys=e=>ss((()=>(e=>tt(e,It,qt))(e)?mt(e):0)),Cs=e=>ss((()=>Rt(e)?Jt(e):0)),bs=e=>{try{Vt(et(e))}catch{}return zs},Vs=t=>ss((()=>{if((e=tt(t,(e=>tt(e,wt))))&&(Ct(t),!ce(Z))){const e=os();xs(),ys(e)}})),ms=e=>ss((()=>{if(t=(e=>tt(e,wt))(e)){const s=gs();Js(),Ms(),t=!0,bt(e),Cs(s)}})),xs=()=>ss((()=>mt({}))),Es=e=>ss((e=>le(Z,e)?zt(e):0),e),ks=(e,t)=>ss(((e,t)=>k(we(Z,e),(s=>le(s,t)?Nt(e,s,t):0))),e,t),Ms=()=>ss((()=>Jt({}))),Ds=()=>ss((()=>{Ct({}),e=!1})),Js=()=>ss((()=>{bt({}),t=!1})),As=(e,t)=>{if(-1!=h){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=h&&h++,1==h&&gt(dt,void 0,ns,as),zs),Qs=e=>(h>0&&(h--,0==h&&(s=!ce(F),n=!ce(N),h=1,Xt(1),s&&es(1),Yt(1),n&&ts(1),e?.(ns,as)&&(he(F,((e,t)=>he(e,((e,s)=>he(e,(([e],n)=>Ee(zs,t,s,n,e))))))),he(N,(([e],t)=>ke(zs,t,e))),s=n=!1),gt(ut[0],void 0,ns,as),h=-1,Xt(0),s&&es(0),Yt(0),n&&ts(0),gt(ut[1],void 0,ns,as),h=0,s=n=!1,o=ws(),c=ps(),W([v,V,m,x,J,F,P,Q,N,B],ue))),zs),zs={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>Te(we(Z,b(e))),getTableCellIds:is,getRowCount:ls,getRowIds:cs,getSortedRowIds:ds,getRow:(e,t)=>pe(we(we(Z,b(e)),b(t))),getCellIds:us,getCell:hs,getValues:gs,getValueIds:fs,getValue:Ls,hasTables:ws,hasTable:Is,hasTableCell:Ss,hasRow:vs,hasCell:Rs,hasValues:ps,hasValue:Ts,getTablesJson:()=>Ze(Z),getValuesJson:()=>Ze(ee),getJson:()=>Ze([Z,ee]),getTablesSchemaJson:()=>Ze(H),getValuesSchemaJson:()=>Ze(G),getSchemaJson:()=>Ze([H,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ss((()=>{(re(e)?xs:ys)(e),(re(t)?Ms:Cs)(t)})),setTables:ys,setTable:(e,t)=>ss((e=>It(t,e)?xt(e,t):0),e),setRow:(e,t,s)=>ss(((e,t)=>St(e,t,s)?Et(e,Qt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return St(e,n,t)&&(e=b(e),Et(e,Qt(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ss(((e,t)=>{if(St(e,t,s,1)){const n=Qt(e);oe(s,((s,a)=>Mt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ss(((e,t,s)=>k(vt(e,t,s,D(n)?n(hs(e,t,s)):n),(n=>Mt(e,Qt(e),t,s,n)))),e,t,s),setValues:Cs,setPartialValues:e=>ss((()=>Rt(e,1)?oe(e,((e,t)=>At(t,e))):0)),setValue:(e,t)=>ss((e=>k(pt(e,D(t)?t(Ls(e)):t),(t=>At(e,t)))),e),setTransactionChanges:e=>ss((()=>{oe(e[0],((e,t)=>E(e)?Es(t):oe(e,((e,s)=>E(e)?ks(t,s):oe(e,((e,n)=>Ee(zs,t,s,n,e))))))),oe(e[1],((e,t)=>ke(zs,t,e)))})),setTablesJson:bs,setValuesJson:e=>{try{Dt(et(e))}catch{}return zs},setJson:e=>ss((()=>{try{const[t,s]=et(e);Vt(t),Dt(s)}catch{bs(e)}})),setTablesSchema:Vs,setValuesSchema:ms,setSchema:(e,t)=>ss((()=>{Vs(e),ms(t)})),delTables:xs,delTable:Es,delRow:ks,delCell:(e,t,s,n)=>ss(((e,t,s)=>k(we(Z,e),(a=>k(we(a,t),(o=>le(o,s)?Ot(e,a,t,o,s,n):0))))),e,t,s),delValues:Ms,delValue:e=>ss((e=>le(ee,e)?Pt(e):0),e),delTablesSchema:Ds,delValuesSchema:Js,delSchema:()=>ss((()=>{Ds(),Js()})),transaction:As,startTransaction:Fs,finishTransaction:Qs,forEachTable:e=>he(Z,((t,s)=>e(s,(e=>he(t,((t,s)=>e(s,(e=>Ie(t,e))))))))),forEachTableCell:(e,t)=>Ie(we(Y,b(e)),t),forEachRow:(e,t)=>he(we(Z,b(e)),((e,s)=>t(s,(t=>Ie(e,t))))),forEachCell:(e,t,s)=>Ie(we(we(Z,b(e)),b(t)),s),forEachValue:e=>Ie(ee,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let i=ds(e,t,s,n,a);return ht((()=>{const r=ds(e,t,s,n,a);O(r,i)||(i=r,o(zs,e,t,s,n,a,i))}),We[r?1:0],[e,t],[rs])},addStartTransactionListener:e=>ht(e,dt),addWillFinishTransactionListener:e=>ht(e,ut[0]),addDidFinishTransactionListener:e=>ht(e,ut[1]),callListener:e=>(Lt(e),zs),delListener:e=>(ft(e),zs),getListenerStats:()=>({}),createStore:nt,addListener:ht,callListeners:gt};return oe({[u+f]:[0,se,[],()=>[ws()]],[f]:[0,de],[L]:[0,me],[u+g]:[1,Je,[rs],e=>[Is(...e)]],[g]:[1,Ae,[rs]],[g+p]:[1,Fe,[rs]],[u+g+R]:[2,Qe,[rs,is],e=>[Ss(...e)]],[I]:[1,Oe,[rs]],[S]:[1,je,[rs]],[u+w]:[2,_e,[rs,cs],e=>[vs(...e)]],[w]:[2,Be,[rs,cs]],[p]:[2,He,[rs,cs]],[u+R]:[3,$e,[rs,cs,us],e=>[Rs(...e)]],[R]:[3,qe,[rs,cs,us],e=>Ke(hs(...e))],InvalidCell:[3,Ge],[u+y]:[0,ot,[],()=>[ps()]],[y]:[0,rt],[C]:[0,it],[u+T]:[1,lt,[fs],e=>[Ts(...e)]],[T]:[1,ct,[fs],e=>Ke(Ls(e[0]))],InvalidValue:[1,at]},(([e,t,s,n],a)=>{zs[d+a+l]=(...a)=>ht(a[e],t[a[e+1]?1:0],e>0?A(a,0,e):void 0,s,n)})),te(zs)};exports.createCheckpoints=Oe,exports.createCustomPersister=(e,t,s,n,a,o,[r,i]=[],l=[])=>{let c,d,u,h=0,g=0;ve(He,l,(()=>0)),ve($e,l,(()=>[]));const f=async e=>(2!=h&&(h=1,await L.schedule((async()=>{await e(),h=0}))),L),L={load:async(s,n)=>await f((async()=>{try{e.setContent(await t())}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(L.stopAutoLoad(),await L.load(s,a),g=1,u=n((async(s,n)=>{if(n){const t=n();await f((async()=>e.setTransactionChanges(t)))}else await f((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),L),stopAutoLoad:()=>(g&&(a(u),u=void 0,g=0),L),save:async t=>(1!=h&&(h=2,await L.schedule((async()=>{try{await s(e.getContent,t)}catch(e){o?.(e)}h=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),c=e.addDidFinishTransactionListener(((e,t)=>{const[s,n]=t();re(s)&&re(n)||L.save((()=>[s,n]))})),L),stopAutoSave:()=>(k(c,e.delListener),c=void 0,L),schedule:async(...e)=>(q(we($e,l),...e),await(async()=>{if(!we(He,l)){for(Se(He,l,1);!E(d=K(we($e,l)));)try{await d()}catch(e){o?.(e)}Se(He,l,0)}})(),L),getStore:()=>e,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(L[r]=()=>i),te(L)},exports.createIndexes=je,exports.createMetrics=Be,exports.createQueries=qe,exports.createRelationships=Ge,exports.createStore=nt,exports.defaultSorter=Pe;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),o=e(e),r="type",l="default",i="Listener",c="Result",d="add",u="Has",h="Ids",g="Table",f=g+"s",L=g+h,p="Row",w=p+"Count",C=p+h,v="Sorted"+p+h,S="Cell",T=S+h,I="Value",R=I+"s",y=I+h,b=e=>t+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),M=(e,t=0)=>e.charCodeAt(t),x=Math.max,E=Math.min,k=isFinite,D=e=>null==e,A=(e,t,s)=>D(e)?s?.():t(e),J=e=>e==s||e==n,F=t=>e(t)==s,Q=t=>e(t)==o,H=e=>Array.isArray(e),P=(e,t,s)=>e.slice(t,s),z=e=>e.length,N=()=>{},O=(e,t)=>e.includes(t),W=(e,t)=>e.every(t),j=(e,t)=>z(e)===z(t)&&W(e,((e,s)=>t[s]===e)),_=(e,t)=>W(e,((s,n)=>0==n||t(e[n-1],s)<=0)),B=(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==z(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=>!D(e)&&A(te(e),(e=>e==ee.prototype||D(te(e))),(()=>!0)),le=(e,t)=>t in e,ie=(e,t)=>(delete e[t],e),ce=(e,t)=>$(se(e),(([e,s])=>t(s,e))),de=(e,t)=>q(se(e),(([e,s])=>t(s,e))),ue=e=>re(e)&&0==(e=>z(ne(e)))(e),he=e=>e?.size??0,ge=(e,t)=>e?.has(t)??!1,fe=e=>D(e)||0==he(e),Le=e=>[...e?.values()??[]],pe=e=>e.clear(),we=(e,t)=>e?.forEach(t),Ce=(e,t)=>e?.delete(t),ve=e=>new Map(e),Se=e=>[...e?.keys()??[]],Te=(e,t)=>e?.get(t),Ie=(e,t)=>we(e,((e,s)=>t(s,e))),Re=(e,t,s)=>D(s)?(Ce(e,t),e):e?.set(t,s),ye=(e,t,s)=>(ge(e,t)||Re(e,t,s()),Te(e,t)),be=(e,t,s,n=Re)=>(de(t,((t,n)=>s(e,n,t))),Ie(e,(s=>le(t,s)?0:n(e,s))),e),me=(e,t,s)=>{const n={};return we(e,((e,a)=>{const o=t?t(e,a):e;!s?.(o,e)&&(n[a]=o)})),n},Ve=(e,t,s)=>me(e,(e=>me(e,t,s)),ue),Me=(e,t,s)=>me(e,(e=>Ve(e,t,s)),ue),xe=(e,t)=>{const s=ve();return we(e,((e,n)=>s.set(n,t?.(e)??e))),s},Ee=e=>xe(e,xe),ke=e=>xe(e,Ee),De=(e,t,s,n,a=0)=>A((s?ye:Te)(e,t[a],a>z(t)-2?s:ve),(o=>{if(a>z(t)-2)return n?.(o)&&Re(e,t[a]),o;const r=De(o,t,s,n,a+1);return fe(o)&&Re(e,t[a]),r})),Ae=t=>{const s=e(t);return J(s)||s==a&&k(t)?s:void 0},Je=(e,t,s,n,a)=>D(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Fe=(e,t,s)=>D(s)?e.delValue(t):e.setValue(t,s),Qe=e=>new Set(H(e)||D(e)?e:[e]),He=(e,t)=>e?.add(t),Pe=(e,t,s,n,a)=>{const o=e.hasRow,r=ve(),l=ve(),i=ve(),c=ve(),d=ve(),u=ve(),h=(t,s,...n)=>{const a=ye(u,t,Qe);return $(n,(t=>He(a,t)&&s&&e.callListener(t))),n},g=(t,...s)=>A(Te(u,t),(n=>{$(K(s)?Le(n):s,(t=>{e.delListener(t),Ce(n,t)})),fe(n)&&Re(u,t)})),f=(e,s)=>{Re(r,e,s),ge(l,e)||(Re(l,e,t()),Re(c,e,ve()),Re(d,e,ve()),a(i))},L=e=>{Re(r,e),Re(l,e),Re(c,e),Re(d,e),g(e),a(i)};return[()=>e,()=>Se(r),e=>Ie(l,e),e=>ge(l,e),e=>Te(r,e),e=>Te(l,e),(e,t)=>Re(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=ve(),u=ve(),L=Te(c,t),p=Te(d,t),w=t=>{const a=s=>e.getCell(n,t,s),c=Te(L,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||H(c)&&H(d)&&j(c,d)||Re(i,t,[c,d]),!D(l)){const e=Te(p,t),s=o(n,t)?l(a,t):void 0;e!=s&&Re(u,t,s)}},C=e=>{a((()=>{we(i,(([,e],t)=>Re(L,t,e))),we(u,((e,t)=>Re(p,t,e)))}),i,u,L,p,e),pe(i),pe(u)};Ie(L,w),e.hasTable(n)&&$(e.getRowIds(n),(e=>{ge(L,e)||w(e)})),C(!0),g(t),h(t,0,e.addRowListener(n,null,((e,t,s)=>w(s))),e.addTableListener(n,(()=>C())))},L,e=>n(e,i),()=>Ie(u,L),h,g]},ze=(e,s)=>F(e)?t=>t(e):e??(()=>s??t),Ne=(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}},Oe=/^\d+$/,We=()=>{const e=[];let s=0;return[n=>(n?Z(e):null)??t+s++,t=>{Oe.test(t)&&z(e)<1e3&&X(e,t)}]},je=e=>{let s;const[n,a]=We(),o=ve();return[(a,r,l,i=[],c=(()=>[]))=>{s??=e();const d=n(1);return Re(o,d,[a,r,l,i,c]),He(De(r,l??[t],Qe),d),d},(e,n,...a)=>$(((e,s=[t])=>{const n=[],a=(e,t)=>t==z(s)?X(n,e):null===s[t]?we(e,(e=>a(e,t+1))):$([s[t],null],(s=>a(Te(e,s),t+1)));return a(e,0),n})(e,n),(e=>we(e,(e=>Te(o,e)[0](s,...n??[],...a))))),e=>A(Te(o,e),(([,s,n])=>(De(s,n??[t],void 0,(t=>(Ce(t,e),fe(t)?1:0))),Re(o,e),a(e),n))),e=>A(Te(o,e),(([e,,t=[],n,a])=>{const o=(...r)=>{const l=z(r);l==z(t)?e(s,...r,...a(r)):D(t[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,t[l])};o()}))]},_e=Ne((e=>{let s,n,a,o=100,r=ve(),l=ve(),i=1;const c=ve(),d=ve(),[u,h,g]=je((()=>F)),f=ve(),L=ve(),p=[],w=[],C=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=Te(f,s);we(n,((s,n)=>we(s,((s,a)=>we(s,((s,o)=>Je(e,n,a,o,s[t]))))))),we(a,((s,n)=>Fe(e,n,s[t])))})),i=1},v=e=>{Re(f,e),Re(L,e),h(d,[e])},S=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??z(e)),v),T=()=>S(p,z(p)-o),I=()=>A(s,(()=>{X(p,s),T(),S(w),s=void 0,a=1})),R=()=>{s=Y(p),a=1};let y,b;const m=(e="")=>(D(s)&&(s=t+n++,Re(f,s,[r,l]),k(s,e),r=ve(),l=ve(),a=1),s),V=()=>{K(p)||(((e,...t)=>{e.unshift(...t)})(w,m()),C(0,s),s=Y(p),a=1)},M=()=>{K(w)||(X(p,s),s=Z(w),C(1,s),a=1)},x=()=>{a&&(h(c),a=0)},E=e=>{const t=m(e);return x(),t},k=(e,t)=>(J(e)&&Te(L,e)!==t&&(Re(L,e,t),h(d,[e])),F),J=e=>ge(f,e),F={setSize:e=>(o=e,T(),F),addCheckpoint:E,setCheckpoint:k,getStore:()=>e,getCheckpointIds:()=>[[...p],s,[...w]],forEachCheckpoint:e=>Ie(L,e),hasCheckpoint:J,getCheckpoint:e=>Te(L,e),goBackward:()=>(V(),x(),F),goForward:()=>(M(),x(),F),goTo:e=>{const t=O(p,e)?V:O(w,e)?M:null;for(;!D(t)&&e!=s;)t();return x(),F},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),F),clear:()=>(S(p),S(w),D(s)||v(s),s=void 0,n=0,E(),F),clearForward:()=>(K(w)||(S(w),h(c)),F),destroy:()=>{e.delListener(y),e.delListener(b)},getListenerStats:()=>({}),_registerListeners:()=>{y=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){I();const e=ye(r,t,ve),l=ye(e,s,ve),i=ye(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&fe(Re(l,n))&&fe(Re(e,s))&&fe(Re(r,t))&&R(),x()}})),b=e.addValueListener(null,((e,t,s,n)=>{if(i){I();const e=ye(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&fe(Re(l,t))&&R(),x()}}))}};return oe(F.clear())}),(e=>e._registerListeners())),Be=(e,t)=>(e??0)<(t??0)?-1:1,$e=Ne((e=>{const s=ve(),n=ve(),[a,o,r]=je((()=>v)),[l,i,c,d,u,h,g,,f,L,p,w]=Pe(e,ve,(e=>D(e)?t:H(e)?q(e,b):b(e)),a,o),C=(t,s,n)=>{const a=u(t);we(n,((t,n)=>s(n,(s=>we(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},v={setIndexDefinition:(e,t,a,r,l,i=Be)=>{const c=D(l)?void 0:([e],[t])=>l(e,t);return f(e,t,((t,a,l,d,u,f)=>{let L=0;const p=Qe(),w=Qe(),C=h(e);if(we(a,(([e,t],s)=>{const n=Qe(e),a=Qe(t);we(n,(e=>Ce(a,e)?Ce(n,e):0)),we(n,(e=>{He(p,e),A(Te(C,e),(t=>{Ce(t,s),fe(t)&&(Re(C,e),L=1)}))})),we(a,(e=>{He(p,e),ge(C,e)||(Re(C,e,Qe()),L=1),He(Te(C,e),s),D(r)||He(w,e)}))})),t(),fe(u)||(f?Ie(C,(e=>He(w,e))):Ie(l,(e=>A(Te(d,e),(e=>He(w,e))))),we(w,(e=>{const t=(t,s)=>i(Te(u,t),Te(u,s),e),s=[...Te(C,e)];_(s,t)||(Re(C,e,Qe(B(s,t))),He(p,e))}))),(L||f)&&!D(c)){const t=[...C];_(t,c)||(g(e,ve(B(t,c))),L=1)}L&&o(s,[e]),we(p,(t=>o(n,[e,t])))}),ze(a),A(r,ze)),v},delIndexDefinition:e=>(L(e),v),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>C(t,e,s))))),forEachSlice:(e,t)=>C(e,t,h(e)),hasIndex:d,hasSlice:(e,t)=>ge(h(e),t),getTableId:u,getSliceIds:e=>Se(h(e)),getSliceRowIds:(e,t)=>Le(Te(h(e),t)),addIndexIdsListener:p,addSliceIdsListener:(e,t)=>a(t,s,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),v),destroy:w,getListenerStats:()=>({})};return oe(v)})),qe=ve([["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=>x(...e),(e,t)=>x(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:x(t,e)]],["min",[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)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Ge=(e,t,s,n,a,o=!1)=>{if(fe(s))return;const[r,l,i,c]=a;return o||=D(e),we(n,(([s,n])=>{o||(e=D(s)?l?.(e,n,t++):D(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=D(e))})),o?r(Le(s),he(s)):e},Ke=Ne((e=>{const s=ve(),[n,a,o]=je((()=>w)),[r,l,i,c,d,u,h,,g,f,L,p]=Pe(e,N,(e=>isNaN(e)||D(e)||!0===e||!1===e||e===t?void 0:1*e),n,a),w={setMetricDefinition:(e,t,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:Te(qe,n)??Te(qe,"sum");return g(e,t,((t,n,o,r,l,i)=>{const d=u(e),g=he(r);i||=D(d),t();let f=Ge(d,g,r,n,c,i);k(f)||(f=void 0),f!=d&&(h(e,f),a(s,[e],f,d))}),ze(o,1)),w},delMetricDefinition:e=>(f(e),w),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:L,addMetricListener:(e,t)=>n(t,s,[e]),delListener:e=>(o(e),w),destroy:p,getListenerStats:()=>({})};return oe(w)})),Ue=ve(),Xe=ve(),Ye=Ne((e=>{const s=e.createStore,n=s(),a=s(),o=ve(),{addListener:r,callListeners:l,delListener:u}=a,[h,f,L,I,R,,,y,,b,m,V,M,x]=Pe(e,(()=>!0),N,r,l),E=(e,t,...s)=>$(s,(s=>He(ye(ye(o,t,ve),e,Qe),s))),k=e=>{A(Te(o,e),(e=>{Ie(e,((e,t)=>we(t,(t=>e.delListener(t))))),pe(e)})),$([a,n],(t=>t.delTable(e)))},J=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),F={setQueryDefinition:(s,o,r)=>{y(s,o),k(s);const l=[],i=[[null,[o,null,null,[],ve()]]],c=[],d=[],u=[];r({select:(e,s)=>{const n=Q(e)?[z(l)+t,e]:[D(s)?e:s,t=>t(e,s)];return X(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=D(s)||Q(t)?null:t,a=D(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],ve()]];return X(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>X(c,Q(e)?e:D(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,a)=>{const o=[e,[e,Q(t)?[t,s,n,a]:Te(qe,t)??[(e,t)=>t]]];return X(d,o),{as:e=>o[0]=e}},having:(e,t)=>X(u,Q(e)?e:s=>s(e)===t)});const h=ve(l);if(fe(h))return F;const g=ve(i);Ie(g,((e,[,t])=>A(Te(g,t),(({3:t})=>D(e)?0:X(t,e)))));const f=ve(d);let L=n;if(fe(f)&&K(u))L=a;else{J(s,L,a);const e=ve();Ie(f,((t,[s,n])=>He(ye(e,s,Qe),[t,n])));const t=Qe();Ie(h,(s=>ge(e,s)?0:He(t,s)));const n=ve(),o=(t,n,o,r)=>A(t,(([l,i,c,d])=>{Ie(n,((t,[s])=>{const n=ye(l,t,ve),a=Te(n,o),i=r?void 0:s;if(a!==i){const s=Qe([[a,i]]),r=he(n);Re(n,o,i),we(Te(e,t),(([e,t])=>{const a=Ge(d[e],r,n,s,t);d[e]=D(Ae(a))?null:a}))}})),fe(i)||!W(u,(e=>e((e=>d[e]))))?a.delRow(s,c):D(c)?t[2]=a.addRow(s,d):a.setRow(s,c,d)}));E(L,s,L.addRowListener(s,null,((a,r,l,i)=>{const c=[],d=[],u=ve(),h=L.hasRow(s,l);let g=!h;we(t,(e=>{const[t,n,a]=i(s,l,e);X(c,n),X(d,a),g||=t})),Ie(e,(e=>{const[t,,n]=i(s,l,e);(g||t)&&Re(u,e,[n])})),g&&o(De(n,c,void 0,(([,e])=>(Ce(e,l),fe(e)))),u,l,1),h&&o(De(n,d,(()=>{const e={};return we(t,(t=>e[t]=L.getCell(s,l,t))),[ve(),Qe(),void 0,e]}),(([,e])=>{He(e,l)})),u,l)})))}J(s,e,L);const p=(t,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=Te(g,n),c=o?.(l,t),[d,u]=Te(i,t)??[];c!=d&&(D(u)||x(s,u),Re(i,t,D(c)?null:[c,...M(s,1,e.addRowListener(a,c,(()=>p(t,a,c,r))))]))})),(t=>{const n=(s,n)=>e.getCell(...D(n)?[o,t,s]:s===o?[o,t,n]:[Te(g,s)?.[0],Te(Te(g,s)?.[4],t)?.[0],n]);L.transaction((()=>W(c,(e=>e(n)))?Ie(h,((e,a)=>Je(L,s,t,e,a(n,t)))):L.delRow(s,t)))})(t)},{3:w}=Te(g,null);return L.transaction((()=>M(s,1,e.addRowListener(o,null,((t,n,a)=>{e.hasRow(o,a)?p(a,o,a,w):(L.delRow(s,a),we(g,(({4:e})=>A(Te(e,a),(([,t])=>{x(s,t),Re(e,a)})))))}))))),F},delQueryDefinition:e=>(k(e),b(e),F),getStore:h,getQueryIds:f,forEachQuery:L,hasQuery:I,getTableId:R,addQueryIdsListener:e=>m((()=>e(F))),delListener:e=>(u(e),F),destroy:V,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return de({[g]:[1,1],[g+T]:[0,1],[w]:[0,1],[C]:[0,1],[v]:[0,5],[p]:[1,2],[T]:[0,2],[S]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>F[e+c+s]=(...t)=>a[e+s](...t))),F[d+c+s+i]=(...e)=>a[d+s+i](...P(e,0,t),((s,...n)=>e[t](F,...n)),!0)})),oe(F)})),Ze=Ne((e=>{const s=ve(),n=ve(),a=ve(),o=ve(),[r,l,i]=je((()=>I)),[c,d,u,h,g,f,,,L,p,w,C]=Pe(e,(()=>[ve(),ve(),ve(),ve()]),(e=>D(e)?void 0:e+t),r,l),v=(e,t,s)=>A(f(e),(([n,,a])=>{if(!ge(a,t)){const o=Qe();if(g(e)!=T(e))He(o,t);else{let e=t;for(;!D(e)&&!ge(o,e);)He(o,e),e=Te(n,e)}if(s)return o;Re(a,t,o)}return Te(a,t)})),S=(e,t)=>A(f(e),(([,,e])=>Re(e,t))),T=e=>Te(s,e),I={setRelationshipDefinition:(e,t,r,i)=>(Re(s,e,r),L(e,t,((t,s)=>{const r=Qe(),i=Qe(),c=Qe(),[d,u]=f(e);we(s,(([t,s],n)=>{D(t)||(He(i,t),A(Te(u,t),(e=>{Ce(e,n),fe(e)&&Re(u,t)}))),D(s)||(He(i,s),ge(u,s)||Re(u,s,Qe()),He(Te(u,s),n)),He(r,n),Re(d,n,s),Ie(Te(o,e),(t=>{ge(v(e,t),n)&&He(c,t)}))})),t(),we(r,(t=>l(n,[e,t]))),we(i,(t=>l(a,[e,t]))),we(c,(t=>{S(e,t),l(o,[e,t])}))}),ze(i)),I),delRelationshipDefinition:e=>(Re(s,e),p(e),I),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(g(s),t))))),hasRelationship:h,getLocalTableId:g,getRemoteTableId:T,getRemoteRowId:(e,t)=>Te(f(e)?.[0],t),getLocalRowIds:(e,t)=>Le(Te(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>D(f(e))?[t]:Le(v(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)=>(v(e,t),r(s,o,[e,t])),delListener:e=>(S(...i(e)??[]),I),destroy:C,getListenerStats:()=>({})};return oe(I)})),et=()=>[t,void 0],tt=()=>[t,ve()],st=([e,t],s)=>[e,s(t,e)],nt=(e,t)=>st(e,(e=>me(e,t))),at=(e,t,s,n)=>ce(e,((e,a)=>ot(e,ye(t,a,tt),s[a]=((e=[])=>ee.fromEntries(e))(),n))),ot=([e,t],s,n,a)=>{e>s[0]&&(s[0]=e),a(t,s[1],n)},rt=(e,t,s)=>ce(e,(([e,n],a)=>{const o=ye(t,a,et);e>o[0]&&(o[0]=e,o[1]=s[a]=n)})),lt=e=>[e,e],it=()=>[ve(),ve()],ct=e=>[...e],dt=([e,t])=>e===t,ut=e=>JSON.stringify(e,((e,t)=>t instanceof Map?ee.fromEntries([...t]):t)),ht=JSON.parse,gt=(e,t,s)=>D(e)||!re(e)||ue(e)||ae(e)?(s?.(),!1):(de(e,((s,n)=>{t(s,n)||ie(e,n)})),!ue(e)),ft=(e,t,s)=>Re(e,t,Te(e,t)==-s?void 0:s),Lt=()=>{let e,t,s,n=!1,o=!1,c=!1,h=!1,v=0;const m=ve(),V=ve(),M=ve(),x=ve(),E=ve(),k=ve(),F=ve(),H=ve(),z=ve(),N=ve(),W=ve(),_=ve(),G=ve(),K=ve(),U=Qe(),Y=ve(),Z=ve(),ee=ve(),te=ve(),se=it(),ne=it(),ae=it(),re=it(),ce=it(),Le=it(),De=it(),Pe=it(),ze=it(),Ne=it(),Oe=it(),_e=it(),$e=it(),qe=it(),Ge=it(),Ke=it(),Ue=it(),Xe=it(),Ye=it(),Ze=it(),et=it(),tt=it(),st=ve(),nt=it(),[at,ot,rt,pt]=je((()=>Qs)),wt=e=>{if(!gt(e,((e,t)=>O([r,l],t))))return!1;const t=e[r];return!(!J(t)&&t!=a||(Ae(e[l])!=t&&ie(e,l),0))},Ct=(t,s)=>(!e||ge(W,s)||Gt(s))&&gt(t,((e,t)=>vt(s,t,e)),(()=>Gt(s))),vt=(e,t,s,n)=>gt(n?s:Rt(s,e,t),((n,a)=>A(St(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Gt(e,t))),St=(t,s,n,a)=>e?A(Te(Te(W,t),n),(e=>Ae(a)!=e[r]?Gt(t,s,n,a,e[l]):a),(()=>Gt(t,s,n,a))):D(Ae(a))?Gt(t,s,n,a):a,Tt=(e,t)=>gt(t?e:yt(e),((t,s)=>A(It(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Kt())),It=(e,s)=>t?A(Te(G,e),(t=>Ae(s)!=t[r]?Kt(e,s,t[l]):s),(()=>Kt(e,s))):D(Ae(s))?Kt(e,s):s,Rt=(e,t,s)=>(A(Te(_,t),(([n,a])=>{we(n,((t,s)=>{le(e,s)||(e[s]=t)})),we(a,(n=>{le(e,n)||Gt(t,s,n)}))})),e),yt=e=>(t&&(we(K,((t,s)=>{le(e,s)||(e[s]=t)})),we(U,(t=>{le(e,t)||Kt(t)}))),e),bt=e=>be(W,e,((e,t,s)=>{const n=ve(),a=Qe();be(ye(W,t,ve),s,((e,t,s)=>{Re(e,t,s),A(s[l],(e=>Re(n,t,e)),(()=>He(a,t)))})),Re(_,t,[n,a])}),((e,t)=>{Re(W,t),Re(_,t)})),mt=e=>be(G,e,((e,t,s)=>{Re(G,t,s),A(s[l],(e=>Re(K,t,e)),(()=>He(U,t)))}),((e,t)=>{Re(G,t),Re(K,t),Ce(U,t)})),Vt=e=>ue(e)?Vs():Is(e),Mt=e=>be(ee,e,((e,t,s)=>xt(t,s)),((e,t)=>Pt(t))),xt=(e,t)=>be(ye(ee,e,(()=>(Wt(e,1),Re(Y,e,We()),Re(Z,e,ve()),ve()))),t,((t,s,n)=>Et(e,t,s,n)),((t,s)=>zt(e,t,s))),Et=(e,t,s,n,a)=>be(ye(t,s,(()=>(jt(e,s,1),ve()))),n,((t,n,a)=>kt(e,s,t,n,a)),((n,o)=>Nt(e,t,s,n,o,a))),kt=(e,t,s,n,a)=>{ge(s,n)||_t(e,t,n,1);const o=Te(s,n);a!==o&&(Bt(e,t,n,o,a),Re(s,n,a))},Dt=(e,t,s,n,a)=>A(Te(t,s),(t=>kt(e,s,t,n,a)),(()=>Et(e,t,s,Rt({[n]:a},e,s)))),At=e=>ue(e)?Es():Rs(e),Jt=e=>be(te,e,((e,t,s)=>Ft(t,s)),((e,t)=>Ot(t))),Ft=(e,t)=>{ge(te,e)||$t(e,1);const s=Te(te,e);t!==s&&(qt(e,s,t),Re(te,e,t))},Qt=(e,t)=>{const[s]=Te(Y,e),n=s(t);return ge(Te(ee,e),n)?Qt(e,t):n},Ht=e=>Te(ee,e)??xt(e,{}),Pt=e=>xt(e,{}),zt=(e,t,s)=>{const[,n]=Te(Y,e);n(s),Et(e,t,s,{},!0)},Nt=(e,t,s,n,a,o)=>{const r=Te(Te(_,e)?.[0],a);if(!D(r)&&!o)return kt(e,s,n,a,r);const l=t=>{Bt(e,s,t,Te(n,t)),_t(e,s,t,-1),Re(n,t)};D(r)?l(a):Ie(n,l),fe(n)&&(jt(e,s,-1),fe(Re(t,s))&&(Wt(e,-1),Re(ee,e),Re(Y,e),Re(Z,e)))},Ot=e=>{const t=Te(K,e);if(!D(t))return Ft(e,t);qt(e,Te(te,e)),$t(e,-1),Re(te,e)},Wt=(e,t)=>ft(m,e,t),jt=(e,t,s)=>ft(ye(x,e,ve),t,s)&&Re(M,e,ye(M,e,(()=>0))+s),_t=(e,t,s,n)=>{const a=Te(Z,e),o=Te(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&ft(ye(V,e,ve),s,n),Re(a,s,o!=-n?o+n:null),ft(ye(ye(E,e,ve),t,ve),s,n)},Bt=(e,t,s,n,a)=>ye(ye(ye(k,e,ve),t,ve),s,(()=>[n,0]))[1]=a,$t=(e,t)=>ft(F,e,t),qt=(e,t,s)=>ye(H,e,(()=>[t,0]))[1]=s,Gt=(e,t,s,n,a)=>(X(ye(ye(ye(z,e,ve),t,ve),s,(()=>[])),n),a),Kt=(e,t,s)=>(X(ye(N,e,(()=>[])),t),s),Ut=(e,t,s)=>A(Te(Te(Te(k,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...lt(us(e,t,s))])),Xt=e=>A(Te(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...lt(fs(e))])),Yt=e=>fe(z)||fe(Ke[e])?0:we(e?ke(z):z,((t,s)=>we(t,((t,n)=>we(t,((t,a)=>ot(Ke[e],[s,n,a],t))))))),Zt=e=>fe(N)||fe(Ue[e])?0:we(e?xe(N):N,((t,s)=>ot(Ue[e],[s],t))),es=(e,t,s,n)=>{if(!fe(e))return ot(t,n,(()=>me(e))),Ie(e,((e,t)=>ot(s,[...n??[],e],1==t))),1},ts=e=>{const t=Ls();t!=c&&ot(se[e],void 0,t);const s=fe(Ne[e]),n=fe($e[e])&&fe(qe[e])&&fe(ze[e])&&fe(Oe[e])&&fe(Le[e])&&fe(De[e])&&fe(Pe[e])&&s&&fe(ae[e])&&fe(re[e]),a=fe(Ge[e])&&fe(_e[e])&&fe(ce[e])&&fe(ne[e]);if(!n||!a){const t=e?[xe(m),Ee(V),xe(M),Ee(x),ke(E),ke(k)]:[m,V,M,x,E,k];if(!n){es(t[0],ae[e],re[e]),we(t[1],((t,s)=>es(t,Le[e],De[e],[s]))),we(t[2],((t,s)=>{0!=t&&ot(Pe[e],[s],ls(s))}));const n=Qe();we(t[3],((t,a)=>{es(t,ze[e],Oe[e],[a])&&!s&&(ot(Ne[e],[a,null]),He(n,a))})),s||we(t[5],((t,s)=>{if(!ge(n,s)){const n=Qe();we(t,(e=>we(e,(([t,s],a)=>s!==t?He(n,a):Ce(e,a))))),we(n,(t=>ot(Ne[e],[s,t])))}})),we(t[4],((t,s)=>we(t,((t,n)=>es(t,$e[e],qe[e],[s,n])))))}if(!a){let s;we(t[5],((t,n)=>{let a;we(t,((t,o)=>{let r;we(t,(([t,l],i)=>{l!==t&&(ot(Ge[e],[n,o,i],l,t,Ut),s=a=r=1)})),r&&ot(_e[e],[n,o],Ut)})),a&&ot(ce[e],[n],Ut)})),s&&ot(ne[e],void 0,Ut)}}},ss=e=>{const t=Ss();t!=h&&ot(Xe[e],void 0,t);const s=fe(Ze[e])&&fe(et[e]),n=fe(tt[e])&&fe(Ye[e]);if(!s||!n){const t=e?[xe(F),xe(H)]:[F,H];if(s||es(t[0],Ze[e],et[e]),!n){let s;we(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(...q(t,b)))),Qs),as=()=>Me(ee),os=()=>Se(ee),rs=e=>Se(Te(Z,b(e))),ls=e=>he(Te(ee,b(e))),is=e=>Se(Te(ee,b(e))),cs=(e,t,s,n=0,a)=>{return q(P(B((o=Te(ee,b(e)),r=(e,s)=>[D(t)?s:Te(e,b(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Be(e,t)*(s?-1:1))),n,D(a)?a:n+a),(([,e])=>e));var o,r},ds=(e,t)=>Se(Te(Te(ee,b(e)),b(t))),us=(e,t,s)=>Te(Te(Te(ee,b(e)),b(t)),b(s)),hs=()=>me(te),gs=()=>Se(te),fs=e=>Te(te,b(e)),Ls=()=>!fe(ee),ps=e=>ge(ee,b(e)),ws=(e,t)=>ge(Te(Z,b(e)),b(t)),Cs=(e,t)=>ge(Te(ee,b(e)),b(t)),vs=(e,t,s)=>ge(Te(Te(ee,b(e)),b(t)),b(s)),Ss=()=>!fe(te),Ts=e=>ge(te,b(e)),Is=e=>ns((()=>(e=>gt(e,Ct,Gt))(e)?Mt(e):0)),Rs=e=>ns((()=>Tt(e)?Jt(e):0)),ys=e=>{try{Vt(ht(e))}catch{}return Qs},bs=t=>ns((()=>{if((e=gt(t,(e=>gt(e,wt))))&&(bt(t),!fe(ee))){const e=as();Vs(),Is(e)}})),ms=e=>ns((()=>{if(t=(e=>gt(e,wt))(e)){const s=hs();Ds(),Es(),t=!0,mt(e),Rs(s)}})),Vs=()=>ns((()=>Mt({}))),Ms=e=>ns((e=>ge(ee,e)?Pt(e):0),e),xs=(e,t)=>ns(((e,t)=>A(Te(ee,e),(s=>ge(s,t)?zt(e,s,t):0))),e,t),Es=()=>ns((()=>Jt({}))),ks=()=>ns((()=>{bt({}),e=!1})),Ds=()=>ns((()=>{mt({}),t=!1})),As=(e,t)=>{if(-1!=v){Js();const s=e();return Fs(t),s}},Js=()=>(-1!=v&&v++,1==v&&ot(st,void 0),Qs),Fs=e=>(v>0&&(v--,0==v&&(n=!fe(k),o=!fe(H),v=1,Yt(1),n&&ts(1),Zt(1),o&&ss(1),e?.(Qs)&&(we(k,((e,t)=>we(e,((e,s)=>we(e,(([e],n)=>Je(Qs,t,s,n,e))))))),we(H,(([e],t)=>Fe(Qs,t,e))),n=o=!1),ot(nt[0],void 0),v=-1,Yt(0),n&&ts(0),Zt(0),o&&ss(0),s?.(Qs),ot(nt[1],void 0),v=0,n=o=!1,c=Ls(),h=Ss(),$([m,V,M,x,E,k,z,F,H,N],pe))),Qs),Qs={getContent:()=>[as(),hs()],getTables:as,getTableIds:os,getTable:e=>Ve(Te(ee,b(e))),getTableCellIds:rs,getRowCount:ls,getRowIds:is,getSortedRowIds:cs,getRow:(e,t)=>me(Te(Te(ee,b(e)),b(t))),getCellIds:ds,getCell:us,getValues:hs,getValueIds:gs,getValue:fs,hasTables:Ls,hasTable:ps,hasTableCell:ws,hasRow:Cs,hasCell:vs,hasValues:Ss,hasValue:Ts,getTablesJson:()=>ut(ee),getValuesJson:()=>ut(te),getJson:()=>ut([ee,te]),getTablesSchemaJson:()=>ut(W),getValuesSchemaJson:()=>ut(G),getSchemaJson:()=>ut([W,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ns((()=>{(ue(e)?Vs:Is)(e),(ue(t)?Es:Rs)(t)})),setTables:Is,setTable:(e,t)=>ns((e=>Ct(t,e)?xt(e,t):0),e),setRow:(e,t,s)=>ns(((e,t)=>vt(e,t,s)?Et(e,Ht(e),t,s):0),e,t),addRow:(e,t,s=!0)=>As((()=>{let n;return vt(e,n,t)&&(e=b(e),Et(e,Ht(e),n=Qt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>ns(((e,t)=>{if(vt(e,t,s,1)){const n=Ht(e);de(s,((s,a)=>Dt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>ns(((e,t,s)=>A(St(e,t,s,Q(n)?n(us(e,t,s)):n),(n=>Dt(e,Ht(e),t,s,n)))),e,t,s),setValues:Rs,setPartialValues:e=>ns((()=>Tt(e,1)?de(e,((e,t)=>Ft(t,e))):0)),setValue:(e,t)=>ns((e=>A(It(e,Q(t)?t(fs(e)):t),(t=>Ft(e,t)))),e),applyChanges:e=>ns((()=>{de(e[0],((e,t)=>D(e)?Ms(t):de(e,((e,s)=>D(e)?xs(t,s):de(e,((e,n)=>Je(Qs,t,s,n,e))))))),de(e[1],((e,t)=>Fe(Qs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{At(ht(e))}catch{}return Qs},setJson:e=>ns((()=>{try{const[t,s]=ht(e);Vt(t),At(s)}catch{ys(e)}})),setTablesSchema:bs,setValuesSchema:ms,setSchema:(e,t)=>ns((()=>{bs(e),ms(t)})),delTables:Vs,delTable:Ms,delRow:xs,delCell:(e,t,s,n)=>ns(((e,t,s)=>A(Te(ee,e),(a=>A(Te(a,t),(o=>ge(o,s)?Nt(e,a,t,o,s,n):0))))),e,t,s),delValues:Es,delValue:e=>ns((e=>ge(te,e)?Ot(e):0),e),delTablesSchema:ks,delValuesSchema:Ds,delSchema:()=>ns((()=>{ks(),Ds()})),transaction:As,startTransaction:Js,getTransactionChanges:()=>[me(k,((e,t)=>-1===Te(m,t)?void 0:me(e,((e,s)=>-1===Te(Te(x,t),s)?void 0:me(e,(([,e])=>e),((e,t)=>dt(t)))),ue)),ue),me(H,(([,e])=>e),((e,t)=>dt(t)))],getTransactionLog:()=>[n,o,Me(k,ct,dt),Me(z),me(H,ct,dt),me(N),me(m),Ve(x),Me(E),me(F)],finishTransaction:Fs,forEachTable:e=>we(ee,((t,s)=>e(s,(e=>we(t,((t,s)=>e(s,(e=>Ie(t,e))))))))),forEachTableCell:(e,t)=>Ie(Te(Z,b(e)),t),forEachRow:(e,t)=>we(Te(ee,b(e)),((e,s)=>t(s,(t=>Ie(e,t))))),forEachCell:(e,t,s)=>Ie(Te(Te(ee,b(e)),b(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);j(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=>(pt(e),Qs),delListener:e=>(rt(e),Qs),getListenerStats:()=>({}),createStore:Lt,addListener:at,callListeners:ot,addPostTransactionListener:e=>{s=e}};return de({[u+f]:[0,se,[],()=>[Ls()]],[f]:[0,ne],[L]:[0,ae],[u+g]:[1,re,[os],e=>[ps(...e)]],[g]:[1,ce,[os]],[g+T]:[1,Le,[os]],[u+g+S]:[2,De,[os,rs],e=>[ws(...e)]],[w]:[1,Pe,[os]],[C]:[1,ze,[os]],[u+p]:[2,Oe,[os,is],e=>[Cs(...e)]],[p]:[2,_e,[os,is]],[T]:[2,$e,[os,is]],[u+S]:[3,qe,[os,is,ds],e=>[vs(...e)]],[S]:[3,Ge,[os,is,ds],e=>lt(us(...e))],InvalidCell:[3,Ke],[u+R]:[0,Xe,[],()=>[Ss()]],[R]:[0,Ye],[y]:[0,Ze],[u+I]:[1,et,[gs],e=>[Ts(...e)]],[I]:[1,tt,[gs],e=>lt(fs(e[0]))],InvalidValue:[1,Ue]},(([e,t,s,n],a)=>{Qs[d+a+i]=(...a)=>at(a[e],t[a[e+1]?1:0],e>0?P(a,0,e):void 0,s,n)})),oe(Qs)},pt=2**36,wt=2**30,Ct=2**24,vt=2**18,St=4096,Tt=64,It=e=>String.fromCharCode(48+(63&e)),Rt=(e,t)=>M(e,t)-48,yt={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},bt=()=>[t,[tt(),tt()]];exports.createCheckpoints=_e,exports.createCustomPersister=(e,t,s,n,a,o,r,[l,i]=[],c=[])=>{let d,u,h,g=0,f=0;ye(Ue,c,(()=>0)),ye(Xe,c,(()=>[]));const L=(r?e.getMergeableContent:null)??e.getContent,p=e.getTransactionChanges,w=async e=>(2!=g&&(g=1,await C.schedule((async()=>{await e(),g=0}))),C),C={load:async(s,n)=>await w((async()=>{try{const s=await t();(r&&F(s[0])?e.applyMergeableChanges:e.setContent)(s)}catch{e.setContent([s,n])}})),startAutoLoad:async(s={},a={})=>(C.stopAutoLoad(),await C.load(s,a),f=1,h=n((async(s,n)=>{if(n){const t=n();await w((async()=>e.applyChanges(t)))}else await w((async()=>{try{e.setContent(s?.()??await t())}catch(e){o?.(e)}}))})),C),stopAutoLoad:()=>(f&&(a(h),h=void 0,f=0),C),save:async e=>(1!=g&&(g=2,await C.schedule((async()=>{try{await s(L,e)}catch(e){o?.(e)}g=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),d=e.addDidFinishTransactionListener((()=>{const[e,t]=p();ue(e)&&ue(t)||C.save((()=>[e,t]))})),C),stopAutoSave:()=>(A(d,e.delListener),d=void 0,C),schedule:async(...e)=>(X(Te(Xe,c),...e),await(async()=>{if(!Te(Ue,c)){for(Re(Ue,c,1);!D(u=Z(Te(Xe,c)));)try{await u()}catch(e){o?.(e)}Re(Ue,c,0)}})(),C),getStore:()=>e,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(C[l]=()=>i),oe(C)},exports.createIndexes=$e,exports.createMergeableStore=e=>{let t=1,s=bt();const[n,a]=(e=>{let t=0,s=0;const n=U(((e,t="",s)=>e.split(t,s))(e),((e,t)=>(e<<5)+e^M(t)),5381)>>>0,a=e=>{const n=t,[a,o]=D(e)?[0,0]:[Rt(r=e,0)*pt+Rt(r,1)*wt+Rt(r,2)*Ct+Rt(r,3)*vt+Rt(r,4)*St+Rt(r,5)*Tt+Rt(r,6),Rt(r,7)*vt+Rt(r,8)*St+Rt(r,9)*Tt+Rt(r,10),Rt(r,11)*Ct+Rt(r,12)*vt+Rt(r,13)*St+Rt(r,14)*Tt+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)/pt)+It(e/wt)+It(e/Ct)+It(e/vt)+It(e/St)+It(e/Tt)+It(e)+It(o/vt)+It(o/St)+It(o/Tt)+It(o)+It(r/Ct)+It(r/vt)+It(r/St)+It(r/Tt)+It(r);var e,o,r},a]})(e),o=Lt(),r=e=>{const s=t;t=0,e(),t=s},l=e=>{const t=[{},{}];return a(e[0]),ot(e,s,t,(([e,t],[s,n],[a,o])=>{ot(e,s,a,((e,t,s)=>at(e,t,s,((e,t,s)=>at(e,t,s,rt))))),ot(t,n,o,rt)})),r((()=>o.applyChanges(t))),i},i={getMergeableContent:()=>st(s,(([e,t])=>[nt(e,(e=>nt(e,(e=>nt(e,ct))))),nt(t,ct)])),setMergeableContent:e=>(r((()=>o.transaction((()=>{o.delTables().delValues(),s=bt()})))),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,de(r,((t,s)=>{const n=ye(i[1],s,et),a=n[1]??=ve();n[0]=e,de(t,((t,s)=>{const n=ye(a,s,et),o=n[1]??=ve();n[0]=e,de(t,(([,t],s)=>Re(o,s,[e,t])))}))}))),a&&(c[0]=e,de(l,(([,t],s)=>{Re(c[1],s,[e,t])})))}})),de(o,((e,t)=>i[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),i):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=yt[P(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(i,...t),e(...s)}:e)),oe(i)},exports.createMetrics=Ke,exports.createQueries=Ye,exports.createRelationships=Ze,exports.createStore=Lt,exports.defaultSorter=Be;
Binary file
package/lib/cjs/tools.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",g=h+i,m="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,L=async e=>V.all(e),N=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},D=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.entries,Q=U.keys,q=U.freeze,K=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),X=(e,l)=>M(Z(e),(([e,t])=>l(t,e))),Y=e=>E(Q(e)),ee=e=>K(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>R(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t)=>(le(e,l)||Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Count",ge="Del",me="Deps",we=me+"?: React.DependencyList",fe="doRollback?: DoRollback",Te="actions: () => Return, "+fe,ye="export",ve="Id",Ve="Invalid",xe="Json",Re=ue(I),Ae="?: ",ke=" | undefined",Se="NonNullable",Pe="Partial",Oe="Props",Ee="Provider",Le=`Registers a ${Re} that will be called`,Ne="Represents",De="rowId: "+ve,Ge="Schema",je="Set",He=", descending?: boolean, offset?: number, limit?: number",Me="[]",Je="the Store",ze="Transaction",We=ze+"Changes",Be=ue(ze),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,a=0)=>nl(a)+`the ${yl[e]}content of`+(l?el+Je:t),ol=(e=0,l,a=0,n=0)=>wl[l]+el+nl(n)+dl(e,1)+(a?" when setting it":t),sl=(e,l=0)=>Ne+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+b,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,a=0,n=0)=>Le+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>wl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>wl[l]+` ${dl(0,0,t)} `+pl(e),gl=(e,l,t=0,a=0)=>wl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),ml=(e,l=0,t=0)=>wl[l]+el+nl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Ne,"Gets "+Ye,"Sets "+Ye,Le+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],fl=[$,"has","set","del","set","forEach",c,t],Tl=[Je,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+w+el+i,ie+w,"invalid Cell changes",y,tl+T+el+i,ie+T,"invalid Value changes",tl+"sorted "+h+el+i,tl+w+el+i+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[t,"tabular ","keyed value "],vl=e=>new Set(P(e)||R(e)?e:[e]),Vl=(e,l)=>e?.add(l),xl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(a),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>H(M(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(O(e,0,1))+O(e,1)))),Ll=e=>ce(H((e&&!xl.test(e[0])?e:" "+e).split(Rl),"_")),Nl=e=>`/** ${e}. */`,Dl=(...e)=>H(J(e,(e=>e)),", "),Gl=(...e)=>"{"+H(e,"; ")+"}",jl=(...e)=>Gl(...M(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),a=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Ol(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?Vl($e(e[n],t,vl),a):0)))),(e,a,n,d=t,o=1)=>Sl(l,e,[a,n,d,o]),(e,l,t)=>Sl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>oe(a,e)===l?e:Sl(a,e,l),(l=0)=>M([...G(re(e[l],((e,l)=>`import {${H(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,a,n],d)=>[Nl(l),`${n?ye+" ":t}type ${d}${a} = ${e};`,t])),()=>re(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Ml=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Ll(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[s],e[r],t(Ll(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[s],l[r],t(Ll(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),ol(1,5)),r=e(p+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),$=e(b+ve,"keyof "+s,"A "+b+" Id in "+Je),c=`<TId extends ${$}>`,i=e(b,Se+`<${s}[TId]>`,"A "+b+" in "+Je,c),T=e(b+Ke,Se+`<${r}[TId]>`,"A "+b+" in "+Je+Xe,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+Ke,T+"<TId>[Id]","A "+h+" in a "+b+Xe,c),V=e(w+ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,Se+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${A}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+w+" iterator"),c),P=e(b+w+Ce,`(cellId: ${V}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),L=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),D=e(u+p+I,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${N}${ke})`+qe,ul(1)),j=e(C+I,`(${o})`+qe,ul(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${N}${ke})`+qe,ul(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+qe,ul(15,3)),U=e(g+I,`(${o}, tableId: ${$})`+qe,ul(4,3)),_=e(m+I,"("+Dl(o,"tableId: "+$,"cellId: Id"+ke,"descending: boolean","offset: number","limit: number"+ke,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(u+h+I,"("+Dl(""+o,"tableId: "+$,De,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(h+I,"("+Dl(""+o,"tableId: "+$,De,`getCellChange: ${N}${ke}`)+")"+qe,ul(5,3)),q=e(f+I,"("+Dl(""+o,"tableId: "+$,De)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${De}, cellId: CId, newCell: ${x}<TId, CId> ${ke}, oldCell: ${x}<TId, CId> ${ke}, getCellChange: ${N} ${ke}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,D,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(Ve+w+I,`(${o}, tableId: Id, ${De}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Gl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),ol(2,5)),s=e(y+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(T+ve,"keyof "+o,"A "+T+" Id in "+Je),$=e(T,Se+`<${o}[VId]>`,"A "+T+" Id in "+Je,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+Je,`<VId = ${r}>`,0),i=e(T+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(u+y+I,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${ke})`+qe,ul(9)),h=e(v+I,`(${d})`+qe,ul(10)),g=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${ke}, oldValue: ${$}<VId> ${ke}, getValueChange: ${b} ${ke}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,g,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+qe,ul(11)),e(Ve+T+I,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(ze+I,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=Hl(),[E,L,N]=Jl(e,a,A),[D,G,M]=zl(V,E,L,N),J=de(),W=(e=0)=>re(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Nl(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>Sl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(fl[e]+l+(4==e?Pe:t)+a,o,n,(n==Q?Bl:Wl)(fl[e]+(4==e?Pe:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+Re+": "+l+(o?", mutator?: boolean":t),ve,Fl(c+e+I,d,o?"mutator":t),a,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=D(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Ne+` the '${e}' `+b),V(l+b+Ke,I+t,Ne+` the '${e}' `+b+Xe),V(l+h,c+t,sl(e)),V(l+h+Ke,T+t,sl(e,1)),V(l+w+ve,y+t,`A Cell Id for the '${e}' `+b),V(l+w+Ce,x+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+Ce,P+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,a,n,y,N,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,ol(1,n),l,a))),U(0,t,C,n+Me,rl(b,Je)),U(5,t,b,Qe,Il(b,Je),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=oe(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,Cl(e,s),d,a+o))),U(0,l,b+f,i,rl(w,"the whole of "+bl(e)),t,a),U(5,l,b+w,Qe,Il(b+w,"the whole of "+bl(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+he,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,g,i,rl(h,bl(e)),t,a),U(0,l,m,i,rl(h,bl(e),1),"cellId?: "+I+He,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,hl(e,s),De+d,a+", rowId"+o))),U(6,l,h,ve+ke,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+Me,rl(w,pl(e)),De,a+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),De+", cellCallback: "+$,a+", rowId, cellCallback as any"),L(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);Ie(X,o,$);const c=o+(R(s)?ke:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,gl(e,n,$),De+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,wl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+r)}))})),U(0,t,p+xe,xe,ol(1,6)),U(2,t,p+xe,Q,ol(1,7),"tablesJson: "+xe,"tables"+xe),_(u+p,N,ol(1,8,0,1)+" changes"),_(p,G,ol(1,8)+" changes"),_(C,M,il(2,0,1)),_(u+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+he,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,ae,il(13,3,1),Dl("tableId: TId",`cellId: ${y}<TId>`+ke,"descending: boolean","offset: number","limit: number"+ke),Dl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(Ve+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...te(X)),z(K,".set"+p+Ge+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...L(e,((e,l,a,n)=>`[${n}]: {[${A(Ll(s),`'${s}'`)}]: ${A(Ll(l),`'${l}'`)}${R(a)?t:`, [${A(Ll(r),`'${r}'`)}]: `+(S(a)?A(Ll(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,ol(2,n),l,a))),U(0,t,v,n+Me,rl(T,Je)),U(5,t,T,"void",Il(T,Je),"valueCallback: "+I,"valueCallback as any"),N(((e,l,a,n,o)=>{const s="Map"+El(l,1);Ie(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,ml(e,s),a,n+d)))})),U(0,t,y+xe,xe,ol(2,6)),U(2,t,y+xe,Q,ol(2,7),"valuesJson: "+xe,"values"+xe),_(u+y,c,ol(2,8,0,1)+" changes"),_(y,i,ol(2,8)+" changes"),_(v,b,il(10,0,1)),_(u+T,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(Ve+T,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...te(X)),$(0,l,"ValueChange"),z(K,".set"+y+Ge+"({",N(((e,l,a,n)=>[`[${n}]: {[${A(Ll(s),`'${s}'`)}]: ${A(Ll(l),`'${l}'`)}${R(a)?t:`, [${A(Ll(r),`'${r}'`)}]: `+(S(a)?A(Ll(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,ol(0,0)),U(2,t,"Content",Q,ol(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,t,We,Q,`Applies a set of ${We} to the Store`,"transactionChanges: "+We,"transactionChanges"),se(X,((e,l)=>V(l,`(cell: ${e}${ke}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",ve,"IdOrNull",xe,"Store",We),$(0,l,"Get"+We,"GetTransactionLog"),U(0,t,xe,xe,ol(0,6)),U(2,t,xe,Q,ol(0,7),"tablesAndValuesJson: "+xe,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,Te,"actions, doRollback","<Return>"),U(7,t,"start"+ze,Q,Ue),U(7,t,"finish"+ze,Q,_e,fe,"doRollback");const ae=M(q,Q);return _("Start"+ze,ae,Le+" just before the start of the "+Be,t,t,0),_("WillFinish"+ze,ae,Le+" just before "+Ze,t,t,0),_("DidFinish"+ze,ae,Le+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+Je,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",wl[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),ye+" interface "+Q+" {",...W(0),"}",t,Nl(`Creates a ${Q} object`),ye+" function create"+Q+"(): "+Q+";"),o(...k(1),ye+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>$+e,Zl=e=>Dl(_l(e),_l(e)+me),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+we,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Dl(It+")"+qe,Kl),ct="then, then"+me,ut=dt+tt+ve,it="View",bt=(e,...l)=>Dl(...l,Re+": "+e,Re+we,"mutator?: boolean"),pt=(...e)=>Dl(...e,Re,Re+me,"mutator"),Ct=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=Hl(),[O,E,L]=Jl(e,a,A),N=`./${El(n)}.d`,D=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),M=El(j),J=j+"Or"+j+ve,W=M+"Or"+j+ve,F=M+`={${M}}`,U=de(),_=(e,l,a,n,d,o=t)=>(c(1,D,e+" as "+e+"Decl"),Sl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Dl(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,a,n,d,o],s)=>{const r=e?[ye+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[ye+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Nl(d)),z(r,t),r}));c(null,l,ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=V(J,j+" | "+ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=V(Ee+Oe,jl(M+Ae+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Ee} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,Y);const le=W+Ae+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+we,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+ke,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ee} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),ne=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=x("wrap",Dl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Dl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!ee(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,L,G,J,z,W,B,U,_]=s;c(null,N,e,a,n,$,T,y,v,A,k,S,P,L,G,J,z,W,U,B),c(0,N,r),c(1,N,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",F,ql,"/>","))",st,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,ol(1,0,0,1)+pe),Q(p,p,e,ol(1,0)+pe);const Y=Q(C,C,n+Me,rl(b,Je)+pe);Q(je+p+Ce,je+p+Ce,nt,ol(1,9)+lt,Dl(_l(p)+Yl+a,_l(p)+we),Zl(p),at,Dl(It,`tables: ${a})`+qe,Kl),ct),Q(ge+p+Ce,ge+p+Ce,Ce,ol(1,12),t,t,t,$t,ct);const ee=V(w+Oe,jl("tableId?: TId","rowId: Id","cellId?: CId",M+Ae+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Oe,jl("tableId?: TId","rowId: Id",M+Ae+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+h),`<TId extends ${n}>`),te=V(b+Oe,jl("tableId?: TId",M+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Oe,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+Ae+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+b),`<TId extends ${n}>`),de=V(p+Oe,jl(M+Ae+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,D,de,te,ae,le,ee),q(p+it,"{"+M+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,a)=>{const[n,s,r,I,$]=oe(_,e);c(null,N,n,s,r,I,$),Q(u+l+b,u+b,d,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+f,b+f,i,rl(w,"the whole of "+bl(e))+pe,t,a),Q(l+h+he,h+he,o,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+g,g,i,rl(h,bl(e))+pe,t,a),C=Q(l+m,m,i,rl(h,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,hl(e,0,1)+pe,ut,Dl(a,dt)),Q(l+h,h,r,hl(e)+pe,ut,Dl(a,dt)),Q(l+f,f,$+Me,rl(w,pl(e))+pe,ut,Dl(a,dt)),Q(je+l+b+Ce,je+b+Ce,nt,Cl(e,9)+lt,Dl(_l(b)+Yl+s,_l(b)+we),Dl(a,Zl(b)),at,Dl(It,`table: ${s})`+qe,Kl),ct),Q(ge+l+b+Ce,ge+b+Ce,Ce,Cl(e,12),t,a,t,$t,ct),Q(je+l+h+Ce,je+h+Ce,nt,hl(e,9)+lt,Dl(ut,_l(h)+Yl+I,_l(h)+we),Dl(a,dt,Zl(h)),at,Dl(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Dl(_l(h)+Yl+I,_l(h)+we),Dl(a,Zl(h)),at,"then?: ("+Dl(ut+ke,"store: Store","row: "+I+")"+qe,"then"+we)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(je+l+Pe+h+Ce,je+Pe+h+Ce,nt,hl(e,11)+lt,Dl(ut,_l(Pe+h)+Yl+I,_l(Pe+h)+we),Dl(a,dt,Zl(Pe+h)),at,Dl(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+h+Ce,ge+h+Ce,Ce,hl(e,12),ut,Dl(a,dt),t,$t,ct);const T=q(l+h+it,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ot,"cellId={cellId}",F,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,Cl(e,13)+pe),E(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);c(0,N,$),c(1,N,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Dl(a,r)),Q(u+l+I+w,u+w,d,gl(e,n,0,1)+pe,ut,Dl(a,dt,r));const i=Q(l+I+w,w,o+(R(s)?ke:t),gl(e,n)+pe,ut,Dl(a,dt,r));Q(je+l+I+w+Ce,je+w+Ce,nt,gl(e,n,9)+lt,Dl(ut,_l(w)+Yl+o+" | "+$,_l(w)+we),Dl(a,dt,r,Zl(w)),at,Dl(It,`cell: ${o} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,gl(e,n,12),Dl(ut,"forceDel?: boolean"),Dl(a,dt,r,"forceDel"),t,$t,ct),q(l+I+w+it,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+pe)}))}));const re=H(O((e=>oe(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Qe,ol(1,8,0,1)+" changes",bt($),pt()),Q(p+I,p+I,Qe,ol(1,8)+" changes",bt(T),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(y),pt()),Q(u+b+I,u+b+I,Qe,il(3,0,0,1),bt(v,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(A,`tableId: ${n} | null`),pt("tableId")),Q(b+f+I,b+f+I,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(u+b+w+I,u+b+w+I,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(h+he+I,h+he+I,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(4,3,1),bt(L,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+ke,"descending: boolean","offset: number","limit: number"+ke),pt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(f+I,f+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(u+w+I,u+w+I,Qe,il(7,5,0,1),bt(B,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+I,w+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(a)){const[e,l,a,n,o,s,$,i]=r;c(null,N,...r),c(1,N,j);const b=x("getDefaultValueComponent","valueId: Id",H(L(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,ol(2,0,0,1)+pe),Q(y,y,e,ol(2,0)+pe);const p=Q(v,v,a+Me,rl(T,Je)+pe);Q(je+y+Ce,je+y+Ce,nt,ol(2,9)+lt,Dl(_l(y)+Yl+l,_l(y)+we),Zl(y),at,Dl(It,`values: ${l})`+qe,Kl),ct),Q(je+Pe+y+Ce,je+Pe+y+Ce,nt,ol(2,11)+lt,Dl(_l(Pe+y)+Yl+l,_l(Pe+y)+we),Zl(Pe+y),at,Dl(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+y+Ce,ge+y+Ce,Ce,ol(2,12),t,t,t,$t,ct);const C=V(T+Oe,jl("valueId?: VId",M+Ae+j,Ql),$l("a Value"),`<VId extends ${a}>`),h=V(y+Oe,jl(M+Ae+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,D,h,C),q(y+it,"{"+M+", valueComponents, getValueComponentProps"+st+"}: "+h,[se+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",F,ql,"/>;","}), separator)"],ol(2,13)+pe),L(((e,l,a,n,o)=>{const s="Map"+El(l,1);c(0,N,s),c(1,N,s),Q(u+o+T,u+T,d,ml(e,0,1)+pe,t,n);const r=Q(o+T,T,l,ml(e)+pe,t,n);Q(je+o+T+Ce,je+T+Ce,nt,ml(e,9)+lt,Dl(_l(T)+Yl+l+" | "+s,_l(T)+we),Dl(n,Zl(T)),at,Dl(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+o+T+Ce,ge+T+Ce,Ce,ml(e,12),t,n,t,$t,ct),q(o+T+it,`{${M}, debugIds}: ${C}<'${e}'>`,[se+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],ml(e,13)+pe)})),Q(u+y+I,u+y+I,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(y+I,y+I,Qe,ol(2,8)+" changes",bt(o),pt()),Q(v+I,v+I,Qe,il(10,0,1),bt(s),pt()),Q(u+T+I,u+T+I,Qe,il(11,0,0,1),bt($,`valueId: ${a} | null`),pt("valueId")),Q(T+I,T+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ee,`{${M}, ${M}ById, children}: `+Y+" & {children: React.ReactNode}",["{",et,"return (","<Context."+Ee,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Ee}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,d,o,s]=Ul(e,l,a);return[n,d,...Ct(e,l,a,o,s)]},gt=JSON.parse,mt="prettier/",wt=mt+"plugins/",ft={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!ee(l)||D(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(D(a,(l=>D(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[N(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==N(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:N(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(mt+"standalone")).format,z(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await L(M(a(e),(async(e,a)=>Pl(await n(e,{...ft,plugins:t,filepath:"_."+l[a]})))))};return q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=Tt;
1
+ "use strict";const e=e=>typeof e,l="tinybase",t="",a=",",n=e(t),d=e(!0),o=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Has",i="Ids",b="Table",p=b+"s",C=b+i,h="Row",m=h+i,g="Sorted"+h+i,w="Cell",f=w+i,T="Value",y=T+"s",v=T+i,V=Promise,x=isFinite,R=e=>null==e,A=(e,l,t)=>R(e)?t?.():l(e),k=e=>e==n||e==d,S=l=>e(l)==n,P=e=>Array.isArray(e),O=(e,l,t)=>e.slice(l,t),E=e=>e.length,N=async e=>V.all(e),D=l=>{const t=e(l);return k(t)||t==o&&x(l)?t:void 0},L=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),j=(e,l)=>e.forEach(l),H=(e,l=t)=>e.join(l),M=(e,l)=>e.map(l),J=(e,l)=>e.filter(l),z=(e,...l)=>e.push(...l),W=e=>e.pop(),B=(e,...l)=>e.unshift(...l),F=e=>e.shift(),U=Object,_=e=>U.getPrototypeOf(e),Z=U.entries,Q=U.keys,q=U.freeze,K=e=>!R(e)&&A(_(e),(e=>e==U.prototype||R(_(e))),(()=>!0)),X=(e,l)=>M(Z(e),(([e,t])=>l(t,e))),Y=e=>E(Q(e)),ee=e=>K(e)&&0==Y(e),le=(e,l)=>e?.has(l)??!1,te=e=>[...e?.values()??[]],ae=(e,l)=>e?.forEach(l),ne=(e,l)=>e?.delete(l),de=e=>new Map(e),oe=(e,l)=>e?.get(l),se=(e,l)=>ae(e,((e,t)=>l(t,e))),re=(e,l)=>M([...e?.entries()??[]],(([e,t])=>l(t,e))),Ie=(e,l,t)=>R(t)?(ne(e,l),e):e?.set(l,t),$e=(e,l,t)=>(le(e,l)||Ie(e,l,t()),oe(e,l)),ce=e=>e.toUpperCase(),ue=e=>e.toLowerCase(),ie="a ",be="A function for",pe=", and registers a listener so that any changes to that result will cause a re-render",Ce="Callback",he="Changes",me="Count",ge="Del",we="Deps",fe=we+"?: React.DependencyList",Te="doRollback?: DoRollback",ye="actions: () => Return, "+Te,ve="export",Ve="Id",xe="Invalid",Re="Json",Ae=ue(I),ke="?: ",Se=" | undefined",Pe="NonNullable",Oe="Partial",Ee="Props",Ne="Provider",De=`Registers a ${Ae} that will be called`,Le="Represents",Ge="rowId: "+Ve,je="Schema",He="Set",Me=", descending?: boolean, offset?: number, limit?: number",Je="[]",ze="the Store",We="Transaction",Be=ue(We),Fe="Execute a "+Be+" to make multiple mutations",Ue="Explicitly starts a "+Be,_e="Explicitly finishes a "+Be,Ze="the end of the "+Be,Qe="void",qe=" => "+Qe,Ke="WhenSet",Xe=" when setting it",Ye=ie+"string serialization of",el=" ",ll="Gets a callback that can ",tl="the ",al=" the schema for",nl=(e=0)=>e?"the existence of ":"",dl=(e=0,l=0,a=0)=>nl(a)+`the ${yl[e]}content of`+(l?el+ze:t),ol=(e=0,l,a=0,n=0)=>wl[l]+el+nl(n)+dl(e,1)+(a?" when setting it":t),sl=(e,l=0)=>Le+` a Row when ${l?"s":"g"}etting ${dl()} the '${e}' `+b,rl=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,Il=(e,l)=>`Calls a function for each ${e} in `+l,$l=e=>"The props passed to a component that renders "+e,cl=e=>"A function that takes "+e,ul=(e,l=0,t=0)=>be+" listening to changes to "+nl(t)+Tl[e]+" in "+Tl[l],il=(e,l,a=0,n=0)=>De+" whenever "+nl(n)+Tl[e]+" in "+Tl[l]+" change"+(a?t:"s"),bl=e=>`the '${e}' `+b,pl=e=>"the specified Row in "+bl(e),Cl=(e,l=0,t=0)=>wl[l]+el+dl(0,0,t)+el+bl(e),hl=(e,l=0,t=0)=>wl[l]+` ${dl(0,0,t)} `+pl(e),ml=(e,l,t=0,a=0)=>wl[t]+el+nl(a)+`the '${l}' Cell for `+pl(e),gl=(e,l=0,t=0)=>wl[l]+el+nl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",Le,"Gets "+Ye,"Sets "+Ye,De+" whenever",ll+"set",ll+"add",ll+"set part of",ll+"delete","Renders","Gets "+Ye+al,"Sets"+al,"Deletes"+al],fl=[$,"has","set","del","set","forEach",c,t],Tl=[ze,p,tl+b+el+i,ie+b,tl+h+el+i,ie+h,tl+w+el+i,ie+w,"invalid Cell changes",y,tl+T+el+i,ie+T,"invalid Value changes",tl+"sorted "+h+el+i,tl+w+el+i+" anywhere",tl+"number of Rows",ie+w+" anywhere"],yl=[t,"tabular ","keyed value "],vl=e=>new Set(P(e)||R(e)?e:[e]),Vl=(e,l)=>e?.add(l),xl=/[^A-Za-z]+/,Rl=/[^A-Za-z0-9]+/,Al=/^( *)\/\*\* *(.*?) *\*\/$/gm,kl=e=>e.includes(a),Sl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return le(e,n)?Sl(e,l,t,a+1):(Ie(e,n,t),n)},Pl=e=>e.replace(Al,((e,l,t)=>{const a=77-E(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),Ol=e=>e.flat(1e3),El=(e,l=0)=>H(M(e.split(Rl),((e,t)=>(t>0||l?ce:ue)(O(e,0,1))+O(e,1)))),Nl=e=>ce(H((e&&!xl.test(e[0])?e:" "+e).split(Rl),"_")),Dl=e=>`/** ${e}. */`,Ll=(...e)=>H(J(e,(e=>e)),", "),Gl=(...e)=>"{"+H(e,"; ")+"}",jl=(...e)=>Gl(...M(e,(e=>"readonly "+e))),Hl=()=>{const e=[de(),de(),de(),de()],l=de(),a=de(),n=e=>{const l=e.indexOf(" as ");return-1!=l?O(e,l+4):e};return[(...e)=>H(Ol(e),"\n"),(l,t,...a)=>j(a,(a=>j([0,1],(n=>(l??n)==n?Vl($e(e[n],t,vl),a):0)))),(e,a,n,d=t,o=1)=>Sl(l,e,[a,n,d,o]),(e,l,t)=>Sl(a,e,P(t)?[`(${l}) => {`,t,"}"]:[`(${l}) => ${t}`]),(e,l)=>oe(a,e)===l?e:Sl(a,e,l),(l=0)=>M([...G(re(e[l],((e,l)=>`import {${H(G(te(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>kl(e)!=kl(l)?kl(e)?-1:1:e>l?1:-1)),t],(e=>e.replace("{React}","React"))),()=>re(l,(([e,l,a,n],d)=>[Dl(l),`${n?ve+" ":t}type ${d}${a} = ${e};`,t])),()=>re(a,((e,l)=>(e=P(e)?e:[e],z(e,W(e)+";"),[`const ${l} = ${F(e)}`,e,t])))]},Ml=(e,l)=>{const t=new WeakMap;return a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},Jl=(e,l,t)=>[l=>X(e,((e,a)=>l(a,El(a,1),t(Nl(a),`'${a}'`)))),(l,a)=>X(e[l],((e,l)=>a(l,e[s],e[r],t(Nl(l),`'${l}'`),El(l,1)))),e=>X(l,((l,a)=>e(a,l[s],l[r],t(Nl(a),`'${a}'`),El(a,1))))],zl=(e,l,a,n)=>[(n,d)=>{const o=n+": "+d,s=e(p,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`)))+"}"))),ol(1,5)),r=e(p+Ke,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...a(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),ol(1,5,1)),$=e(b+Ve,"keyof "+s,"A "+b+" Id in "+ze),c=`<TId extends ${$}>`,i=e(b,Pe+`<${s}[TId]>`,"A "+b+" in "+ze,c),T=e(b+Ke,Pe+`<${r}[TId]>`,"A "+b+" in "+ze+Xe,c),y=e(h,i+"<TId>[Id]","A "+h+" in a "+b,c),v=e(h+Ke,T+"<TId>[Id]","A "+h+" in a "+b+Xe,c),V=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+h,c),x=e(w,Pe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+h,`<TId extends ${$}, CId extends ${V}<TId>>`),A=e("CellIdCellArray",`CId extends ${V}<TId> ? [cellId: CId, cell: ${x}<TId, CId>] : never`,w+" Ids and types in a "+h,`<TId extends ${$}, CId = ${V}<TId>>`,0),k=e(w+Ce,`(...[cellId, cell]: ${A}<TId>)`+qe,cl(ie+w+" Id, and "+w),c),S=e(h+Ce,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+qe+") "+qe,cl(ie+h+" Id, and a "+w+" iterator"),c),P=e(b+w+Ce,`(cellId: ${V}<TId>, count: number) `+qe,cl(ie+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${qe}] : never`,b+" Ids and callback types",`<TId = ${$}>`,0),E=e(b+Ce,`(...[tableId, forEachRow]: ${O})`+qe,cl(ie+b+" Id, and a "+h+" iterator"),t),N=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${V}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,be+" returning information about any Cell's changes during a "+Be),L=e(u+p+I,`(${o}, hasTables: boolean)`+qe,ul(1,0,1)),G=e(p+I,`(${o}, getCellChange: ${D}${Se})`+qe,ul(1)),j=e(C+I,`(${o})`+qe,ul(2)),H=e(u+b+I,`(${o}, tableId: ${$}, hasTable: boolean)`+qe,ul(3,0,1)),M=e(b+I,`(${o}, tableId: ${$}, getCellChange: ${D}${Se})`+qe,ul(3)),J=e(b+f+I,`(${o}, tableId: ${$})`+qe,ul(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${$} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${$}>`,0),B=e(u+b+w+I,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+qe,ul(16,3,1)),F=e(h+"Count"+I,`(${o}, tableId: ${$})`+qe,ul(15,3)),U=e(m+I,`(${o}, tableId: ${$})`+qe,ul(4,3)),_=e(g+I,"("+Ll(o,"tableId: "+$,"cellId: Id"+Se,"descending: boolean","offset: number","limit: number"+Se,"sortedRowIds: Ids")+")"+qe,ul(13,3)),Z=e(u+h+I,"("+Ll(""+o,"tableId: "+$,Ge,"hasRow: boolean")+")"+qe,ul(5,3,1)),Q=e(h+I,"("+Ll(""+o,"tableId: "+$,Ge,`getCellChange: ${D}${Se}`)+")"+qe,ul(5,3)),q=e(f+I,"("+Ll(""+o,"tableId: "+$,Ge)+")"+qe,ul(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${$} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${$}>`,0),Y=e(u+w+I,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+qe,ul(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${V}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${x}<TId, CId> ${Se}, oldCell: ${x}<TId, CId> ${Se}, getCellChange: ${D} ${Se}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${V}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,i,T,y,v,V,x,k,S,P,E,L,G,j,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+qe,ul(7,5)),e(xe+w+I,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+qe,ul(8))]},(l,a)=>{const d=l+": "+a,o=e(y,Gl(...n(((e,l,a)=>`'${e}'${R(a)?"?":t}: ${l}`))),ol(2,5)),s=e(y+Ke,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),ol(2,5,1)),r=e(T+Ve,"keyof "+o,"A "+T+" Id in "+ze),$=e(T,Pe+`<${o}[VId]>`,"A "+T+" Id in "+ze,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,T+" Ids and types in "+ze,`<VId = ${r}>`,0),i=e(T+Ce,`(...[valueId, value]: ${c})`+qe,cl(ie+T+" Id, and "+T)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,be+" returning information about any Value's changes during a "+Be),p=e(u+y+I,`(${d}, hasValues: boolean)`+qe,ul(9,0,1)),C=e(y+I,`(${d}, getValueChange: ${b}${Se})`+qe,ul(9)),h=e(v+I,`(${d})`+qe,ul(10)),m=e(u+T+I,`(${d}, valueId: ValueId, hasValue: boolean)`+qe,ul(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${$}<VId> ${Se}, oldValue: ${$}<VId> ${Se}, getValueChange: ${b} ${Se}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,$,i,p,C,h,m,e(T+I,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+qe,ul(11)),e(xe+T+I,`(${d}, valueId: Id, invalidValues: any[])`+qe,ul(12))]},(l,t)=>e(We+I,`(${l}: ${t})`+qe,be+" listening to the completion of a "+Be)],Wl=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Bl=(e,l=t)=>`fluent(() => ${Wl(e,l)})`,Fl=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Ul=(e,a,n)=>{const[o,$,V,x,A,k,P,O]=Hl(),[E,N,D]=Jl(e,a,A),[L,G,M]=zl(V,E,N,D),J=de(),W=(e=0)=>re(J,(([l,a,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${a} => ${n},`]:[s+o+`(${l}): ${a};`];return e||B(r,Dl(d)),z(r,t),r})),F=(e,l,a,n,d,o=t)=>Sl(J,e,[l,a,n,d,o]),U=(e,l,a,n,d,o=t,s=t,r=t)=>F(fl[e]+l+(4==e?Oe:t)+a,o,n,(n==Q?Bl:Wl)(fl[e]+(4==e?Oe:t)+a,s,e?void 0:n),d,r),_=(e,l,a,n=t,d=t,o=1,s=t)=>F(c+e+I,(n?n+", ":t)+Ae+": "+l+(o?", mutator?: boolean":t),Ve,Fl(c+e+I,d,o?"mutator":t),a,s),Z=`./${El(n)}.d`,Q=El(n,1),q=El(Q),K=[],X=de();let Y=[],le=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),ee(e))$(null,l,p);else{$(0,l,"CellChange"),$(null,l,i);const[e,a,n,o,I,c,T,y,v,x,k,P,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue]=L(q,Q),ie=de();E(((e,l)=>{const t=`<'${e}'>`,a=[V(l+b,o+t,Le+` the '${e}' `+b),V(l+b+Ke,I+t,Le+` the '${e}' `+b+Xe),V(l+h,c+t,sl(e)),V(l+h+Ke,T+t,sl(e,1)),V(l+w+Ve,y+t,`A Cell Id for the '${e}' `+b),V(l+w+Ce,x+t,cl(`a Cell Id and value from a Row in the '${e}' `+b)),V(l+h+Ce,k+t,cl(`a Row Id from the '${e}' Table, and a Cell iterator`)),V(l+b+w+Ce,P+t,cl(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Ie(ie,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,O,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ue),Y=[e,a,n,y,D,G,M,J,W,B,F,ee,le,ae,ne,se,re,$e,ce,ie],j([[e],[d],[Q,"tables: "+a,"tables"],[Q]],(([e,l,a],n)=>U(n,t,p,e,ol(1,n),l,a))),U(0,t,C,n+Je,rl(b,ze)),U(5,t,b,Qe,Il(b,ze),"tableCallback: "+O,"tableCallback as any"),E(((e,l,a)=>{const[n,o,s,r,I,$,c,u]=oe(ie,e);j([[n],[d],[Q,"table: "+o,", table"],[Q]],(([n,d,o=t],s)=>U(s,l,b,n,Cl(e,s),d,a+o))),U(0,l,b+f,i,rl(w,"the whole of "+bl(e)),t,a),U(5,l,b+w,Qe,Il(b+w,"the whole of "+bl(e)),"tableCellCallback: "+u,a+", tableCellCallback as any"),U(0,l,h+me,"number","Gets the number of Rows in the "+bl(e),t,a),U(0,l,m,i,rl(h,bl(e)),t,a),U(0,l,g,i,rl(h,bl(e),1),"cellId?: "+I+Me,a+", cellId, descending, offset, limit"),U(5,l,h,Qe,Il(h,bl(e)),"rowCallback: "+c,a+", rowCallback as any"),j([[s],[d],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=t,o=t],s)=>U(s,l,h,n,hl(e,s),Ge+d,a+", rowId"+o))),U(6,l,h,Ve+Se,"Add a new Row to "+bl(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,l,f,I+Je,rl(w,pl(e)),Ge,a+", rowId"),U(5,l,w,Qe,Il(w,pl(e)),Ge+", cellCallback: "+$,a+", rowId, cellCallback as any"),N(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);Ie(X,o,$);const c=o+(R(s)?Se:t);j([[c],[d],[Q,`, cell: ${o} | `+$,", cell as any"],[Q]],(([d,o=t,s=t],$)=>U($,l+I,w,d,ml(e,n,$),Ge+o,a+", rowId, "+r+s))),U(1,l+I,b+w,d,wl[1]+` the '${n}' Cell anywhere in `+bl(e),t,a+", "+r)}))})),U(0,t,p+Re,Re,ol(1,6)),U(2,t,p+Re,Q,ol(1,7),"tablesJson: "+Re,"tables"+Re),_(u+p,D,ol(1,8,0,1)+" changes"),_(p,G,ol(1,8)+" changes"),_(C,M,il(2,0,1)),_(u+b,J,il(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(b,W,il(3,0),`tableId: ${n} | null`,"tableId"),_(b+f,B,il(14,3,1),`tableId: ${n} | null`,"tableId"),_(u+b+w,F,il(16,3,0,1),`tableId: ${n} | null, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, cellId"),_(h+me,ee,il(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,il(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,ae,il(13,3,1),Ll("tableId: TId",`cellId: ${y}<TId>`+Se,"descending: boolean","offset: number","limit: number"+Se),Ll("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(u+h,ne,il(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(h,se,il(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,re,il(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(u+w,$e,il(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,il(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${H(E((e=>oe(ie,e)?.[4]??t))," | ")} | null`,"tableId, rowId, cellId"),_(xe+w,ue,De+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...te(X)),z(K,".set"+p+je+"({",Ol(E(((e,l,a)=>[`[${a}]: {`,...N(e,((e,l,a,n)=>`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(ee(a))$(null,l,y);else{const[e,a,n,o,I,c,i,b,p,C,h]=G(q,Q);$(1,Z,e,a,n,I,c,i,b,p,C,h),le=[e,a,n,c,i,b,p,C],j([[e],[d],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,l,a],n)=>U(n,t,y,e,ol(2,n),l,a))),U(0,t,v,n+Je,rl(T,ze)),U(5,t,T,"void",Il(T,ze),"valueCallback: "+I,"valueCallback as any"),D(((e,l,a,n,o)=>{const s="Map"+El(l,1);Ie(X,l,s),j([[l],[d],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,a,d=t],s)=>U(s,o,T,l,gl(e,s),a,n+d)))})),U(0,t,y+Re,Re,ol(2,6)),U(2,t,y+Re,Q,ol(2,7),"valuesJson: "+Re,"values"+Re),_(u+y,c,ol(2,8,0,1)+" changes"),_(y,i,ol(2,8)+" changes"),_(v,b,il(10,0,1)),_(u+T,p,il(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(T,C,il(11,0),`valueId: ${n} | null`,"valueId"),_(xe+T,h,De+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...te(X)),$(0,l,"ValueChange"),z(K,".set"+y+je+"({",D(((e,l,a,n)=>[`[${n}]: {[${A(Nl(s),`'${s}'`)}]: ${A(Nl(l),`'${l}'`)}${R(a)?t:`, [${A(Nl(r),`'${r}'`)}]: `+(S(a)?A(Nl(a),`'${a}'`):a)}},`])),"})")}U(0,t,"Content",`[${p}, ${y}]`,ol(0,0)),U(2,t,"Content",Q,ol(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(7,t,"applyChanges",Q,`Applies a set of ${he} to the Store`,"changes: "+he,"changes"),se(X,((e,l)=>V(l,`(cell: ${e}${Se}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,l,"DoRollback",Ve,"IdOrNull",Re,"Store",he),U(0,t,Re,Re,ol(0,6)),U(2,t,Re,Q,ol(0,7),"tablesAndValuesJson: "+Re,"tablesAndValuesJson"),U(7,t,Be,"Return",Fe,ye,"actions, doRollback","<Return>"),U(7,t,"start"+We,Q,Ue),U(7,t,"finish"+We,Q,_e,Te,"doRollback");const ae=M(q,Q);return _("Start"+We,ae,De+" just before the start of the "+Be,t,t,0),_("WillFinish"+We,ae,De+" just before "+Ze,t,t,0),_("DidFinish"+We,ae,De+" just after "+Ze,t,t,0),U(7,t,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,t,I,Q,"Remove a listener that was previously added to "+ze,"listenerId: Id","listenerId"),F("getStore",t,"Store","store",wl[0]+" the underlying Store object"),$(1,l,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,ae),A("store",["createStore()",...K]),x("fluent","actions: () => Store",["actions();",`return ${q};`]),x("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),A(q,["{",...W(1),"}"]),[o(...k(0),...P(),ve+" interface "+Q+" {",...W(0),"}",t,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),o(...k(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,le]},_l=e=>$+e,Zl=e=>Ll(_l(e),_l(e)+we),Ql="debugIds?: boolean",ql="debugIds={debugIds}",Kl="then"+fe,Xl="Parameter",Yl=": (parameter: "+Xl+", store: Store) => ",et="const contextValue = useContext(Context);",lt=", based on a parameter",tt=": ",at="<"+Xl+",>",nt=Xl+"ized"+Ce+"<"+Xl+">",dt="rowId",ot="rowId={rowId}",st=", separator, debugIds",rt="separator?: ReactElement | string",It="then?: (store: Store",$t=Ll(It+")"+qe,Kl),ct="then, then"+we,ut=dt+tt+Ve,it="View",bt=(e,...l)=>Ll(...l,Ae+": "+e,Ae+fe,"mutator?: boolean"),pt=(...e)=>Ll(...e,Ae,Ae+we,"mutator"),Ct=(e,a,n,s,r)=>{const[$,c,V,x,A,k,S,P]=Hl(),[O,E,N]=Jl(e,a,A),D=`./${El(n)}.d`,L=`./${El(n)}-ui-react.d`,G="tinybase/ui-react",j=El(n,1),M=El(j),J=j+"Or"+j+Ve,W=M+"Or"+j+Ve,F=M+`={${M}}`,U=de(),_=(e,l,a,n,d,o=t)=>(c(1,L,e+" as "+e+"Decl"),Sl(U,e,[l,a,n,d,o])),Z=(e,l,a,n,d,o=t)=>_("use"+e,l,a,n,d,o),Q=(e,l,a,n,d=t,o=t,s=t,r=t,I=t)=>(c(1,G,`use${l} as use${l}Core`),Z(e,Ll(d,le,r),a,ae+`(${W}, use${l}Core, [`+(o||t)+(I?"], ["+I:t)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>re(U,(([l,a,n,d,o],s)=>{const r=e?[ve+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==a?"any":a} =>`,n]:[ve+` function ${s}${o}(${l}): ${1==a?"ComponentReturnType":a};`];return e||B(r,Dl(d)),z(r,t),r}));c(null,l,Ve,"Store",Ce,Xl+"ized"+Ce),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,D,j);const X=V(J,j+" | "+Ve,`Used when you need to refer to a ${j} in a React hook or component`),Y=V(Ne+Ee,jl(M+ke+j,M+`ById?: {[${M}Id: Id]: ${j}}`),`Used with the ${Ne} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const le=W+ke+X;A("{createContext, useContext, useMemo}","React"),A("Context",`createContext<[${j}?, {[${M}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+fe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Se,["{",et,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Ne} component context`),ae=x("useHook",W+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${te}(${W} as Id);`,`return hook(...preParams, ((${W} == null || typeof ${W} == 'string')`,`? ${M} : ${W})?.getStore(), ...postParams)`]),ne=x("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),se=x("wrap",Ll("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),Ie=x("useCustomOrDefaultCellIds",Ll("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${W}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${W}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=A("NullComponent","() => null");if(!ee(e)){const[e,a,n,r,$,T,y,v,A,k,S,P,N,G,J,z,W,B,U,_]=s;c(null,D,e,a,n,$,T,y,v,A,k,S,P,N,G,J,z,W,U,B),c(0,D,r),c(1,D,j),c(null,l,i,"IdOrNull");const Z=x("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+st+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${se}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ot,"customCellIds={customCellIds}",F,ql,"/>","))",st,", tableId,",");"]),K=x("getDefaultTableComponent","tableId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=x("getDefaultCellComponent","tableId: Id, cellId: Id",H(O(((e,l,t)=>`tableId == ${t} ? ${H(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(u+p,u+p,d,ol(1,0,0,1)+pe),Q(p,p,e,ol(1,0)+pe);const Y=Q(C,C,n+Je,rl(b,ze)+pe);Q(He+p+Ce,He+p+Ce,nt,ol(1,9)+lt,Ll(_l(p)+Yl+a,_l(p)+fe),Zl(p),at,Ll(It,`tables: ${a})`+qe,Kl),ct),Q(ge+p+Ce,ge+p+Ce,Ce,ol(1,12),t,t,t,$t,ct);const ee=V(w+Ee,jl("tableId?: TId","rowId: Id","cellId?: CId",M+ke+j,Ql),$l(ie+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=V(h+Ee,jl("tableId?: TId","rowId: Id",M+ke+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,rt,Ql),$l(ie+h),`<TId extends ${n}>`),te=V(b+Ee,jl("tableId?: TId",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+b),`<TId extends ${n}>`),ae=V("Sorted"+b+Ee,jl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",rt,Ql),$l(ie+"sorted "+b),`<TId extends ${n}>`),de=V(p+Ee,jl(M+ke+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,rt,Ql),$l(dl(1,1)));c(1,L,de,te,ae,le,ee),q(p+it,"{"+M+", tableComponents, getTableComponentProps"+st+"}: "+de,[se+`(${Y}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",F,ql,"/>;","}), separator)"],ol(1,13)+pe),O(((e,l,a)=>{const[n,s,r,I,$]=oe(_,e);c(null,D,n,s,r,I,$),Q(u+l+b,u+b,d,Cl(e,0,1)+pe,t,a),Q(l+b,b,n,Cl(e)+pe,t,a),Q(l+b+f,b+f,i,rl(w,"the whole of "+bl(e))+pe,t,a),Q(l+h+me,h+me,o,"Gets the number of Rows in "+bl(e)+pe,t,a);const p=Q(l+m,m,i,rl(h,bl(e))+pe,t,a),C=Q(l+g,g,i,rl(h,bl(e),1)+pe,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");Q(u+l+h,u+h,d,hl(e,0,1)+pe,ut,Ll(a,dt)),Q(l+h,h,r,hl(e)+pe,ut,Ll(a,dt)),Q(l+f,f,$+Je,rl(w,pl(e))+pe,ut,Ll(a,dt)),Q(He+l+b+Ce,He+b+Ce,nt,Cl(e,9)+lt,Ll(_l(b)+Yl+s,_l(b)+fe),Ll(a,Zl(b)),at,Ll(It,`table: ${s})`+qe,Kl),ct),Q(ge+l+b+Ce,ge+b+Ce,Ce,Cl(e,12),t,a,t,$t,ct),Q(He+l+h+Ce,He+h+Ce,nt,hl(e,9)+lt,Ll(ut,_l(h)+Yl+I,_l(h)+fe),Ll(a,dt,Zl(h)),at,Ll(It,`row: ${I})`+qe,Kl),ct),Q("Add"+l+h+Ce,"Add"+h+Ce,nt,hl(e,10)+lt,Ll(_l(h)+Yl+I,_l(h)+fe),Ll(a,Zl(h)),at,"then?: ("+Ll(ut+Se,"store: Store","row: "+I+")"+qe,"then"+fe)+", reuseRowIds?: boolean",ct+", reuseRowIds"),Q(He+l+Oe+h+Ce,He+Oe+h+Ce,nt,hl(e,11)+lt,Ll(ut,_l(Oe+h)+Yl+I,_l(Oe+h)+fe),Ll(a,dt,Zl(Oe+h)),at,Ll(It,`partialRow: ${I})`+qe,Kl),ct),Q(ge+l+h+Ce,ge+h+Ce,Ce,hl(e,12),ut,Ll(a,dt),t,$t,ct);const T=q(l+h+it,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+st+`}: ${le}<'${e}'>`,[se+`(${Ie}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ot,"cellId={cellId}",F,ql,"/>;","})"+st+", rowId)"],hl(e,13)+pe);q(l+"Sorted"+b+it,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${M}), ${a}, ${T});`,Cl(e,13)+", sorted"+pe),q(l+b+it,`props: ${te}<'${e}'>`,Z+"(props, "+p+`(props.${M}), ${a}, ${T});`,Cl(e,13)+pe),E(e,((n,o,s,r,I)=>{const $="Map"+El(o,1);c(0,D,$),c(1,D,$),Q(u+l+I+b+w,u+b+w,d,`Gets ${nl(1)}the '${n}' Cell anywhere in `+bl(e)+pe,t,Ll(a,r)),Q(u+l+I+w,u+w,d,ml(e,n,0,1)+pe,ut,Ll(a,dt,r));const i=Q(l+I+w,w,o+(R(s)?Se:t),ml(e,n)+pe,ut,Ll(a,dt,r));Q(He+l+I+w+Ce,He+w+Ce,nt,ml(e,n,9)+lt,Ll(ut,_l(w)+Yl+o+" | "+$,_l(w)+fe),Ll(a,dt,r,Zl(w)),at,Ll(It,`cell: ${o} | ${$})`+qe,Kl),ct),Q(ge+l+I+w+Ce,ge+w+Ce,Ce,ml(e,n,12),Ll(ut,"forceDel?: boolean"),Ll(a,dt,r,"forceDel"),t,$t,ct),q(l+I+w+it,`{rowId, ${M}, debugIds}: `+ee+`<'${e}', '${n}'>`,[se+`('' + ${i}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],ml(e,n,13)+pe)}))}));const re=H(O((e=>oe(_,e)?.[4]??t))," | ");Q(u+p+I,u+p+I,Qe,ol(1,8,0,1)+" changes",bt($),pt()),Q(p+I,p+I,Qe,ol(1,8)+" changes",bt(T),pt()),Q(C+I,C+I,Qe,il(2,0,1),bt(y),pt()),Q(u+b+I,u+b+I,Qe,il(3,0,0,1),bt(v,`tableId: ${n} | null`),pt("tableId")),Q(b+I,b+I,Qe,il(3,0),bt(A,`tableId: ${n} | null`),pt("tableId")),Q(b+f+I,b+f+I,Qe,il(14,3,1),bt(k,`tableId: ${n} | null`),pt("tableId")),Q(u+b+w+I,u+b+w+I,Qe,il(16,3,0,1),bt(S,`tableId: ${n} | null`,`cellId: ${re} | null`),pt("tableId","cellId")),Q(h+me+I,h+me+I,Qe,il(15,3),bt(P,`tableId: ${n} | null`),pt("tableId")),Q(m+I,m+I,Qe,il(4,3,1),bt(N,`tableId: ${n} | null`),pt("tableId")),Q(g+I,g+I,Qe,il(13,3,1),bt(G,`tableId: ${n} | null`,"cellId: "+re+Se,"descending: boolean","offset: number","limit: number"+Se),pt("tableId","cellId","descending","offset","limit")),Q(u+h+I,u+h+I,Qe,il(5,3,0,1),bt(J,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(h+I,h+I,Qe,il(5,3),bt(z,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(f+I,f+I,Qe,il(6,5,1),bt(W,`tableId: ${n} | null`,dt+": IdOrNull"),pt("tableId",dt)),Q(u+w+I,u+w+I,Qe,il(7,5,0,1),bt(B,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId")),Q(w+I,w+I,Qe,il(7,5),bt(U,`tableId: ${n} | null`,dt+": IdOrNull",`cellId: ${re} | null`),pt("tableId",dt,"cellId"))}if(!ee(a)){const[e,l,a,n,o,s,$,i]=r;c(null,D,...r),c(1,D,j);const b=x("getDefaultValueComponent","valueId: Id",H(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(u+y,u+y,d,ol(2,0,0,1)+pe),Q(y,y,e,ol(2,0)+pe);const p=Q(v,v,a+Je,rl(T,ze)+pe);Q(He+y+Ce,He+y+Ce,nt,ol(2,9)+lt,Ll(_l(y)+Yl+l,_l(y)+fe),Zl(y),at,Ll(It,`values: ${l})`+qe,Kl),ct),Q(He+Oe+y+Ce,He+Oe+y+Ce,nt,ol(2,11)+lt,Ll(_l(Oe+y)+Yl+l,_l(Oe+y)+fe),Zl(Oe+y),at,Ll(It,`partialValues: ${l})`+qe,Kl),ct),Q(ge+y+Ce,ge+y+Ce,Ce,ol(2,12),t,t,t,$t,ct);const C=V(T+Ee,jl("valueId?: VId",M+ke+j,Ql),$l("a Value"),`<VId extends ${a}>`),h=V(y+Ee,jl(M+ke+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${C}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,rt,Ql),$l(dl(2,1)));c(1,L,h,C),q(y+it,"{"+M+", valueComponents, getValueComponentProps"+st+"}: "+h,[se+`(${p}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+b+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",F,ql,"/>;","}), separator)"],ol(2,13)+pe),N(((e,l,a,n,o)=>{const s="Map"+El(l,1);c(0,D,s),c(1,D,s),Q(u+o+T,u+T,d,gl(e,0,1)+pe,t,n);const r=Q(o+T,T,l,gl(e)+pe,t,n);Q(He+o+T+Ce,He+T+Ce,nt,gl(e,9)+lt,Ll(_l(T)+Yl+l+" | "+s,_l(T)+fe),Ll(n,Zl(T)),at,Ll(It,`value: ${l} | ${s})`+qe,Kl),ct),Q(ge+o+T+Ce,ge+T+Ce,Ce,gl(e,12),t,n,t,$t,ct),q(o+T+it,`{${M}, debugIds}: ${C}<'${e}'>`,[se+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],gl(e,13)+pe)})),Q(u+y+I,u+y+I,Qe,ol(2,8,0,1)+" changes",bt(n),pt()),Q(y+I,y+I,Qe,ol(2,8)+" changes",bt(o),pt()),Q(v+I,v+I,Qe,il(10,0,1),bt(s),pt()),Q(u+T+I,u+T+I,Qe,il(11,0,0,1),bt($,`valueId: ${a} | null`),pt("valueId")),Q(T+I,T+I,Qe,il(11,0),bt(i,`valueId: ${a} | null`),pt("valueId"))}return q(Ne,`{${M}, ${M}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",et,"return (","<Context."+Ne,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Ne}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[$(...k(0),...S(),...K(0)),$(...k(1),...P(),...K(1))]},ht=(e,l,a)=>{if(ee(e)&&ee(l))return[t,t,t,t];const[n,d,o,s]=Ul(e,l,a);return[n,d,...Ct(e,l,a,o,s)]},mt=JSON.parse,gt="prettier/",wt=gt+"plugins/",ft={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tt=Ml((e=>{const l=()=>{const l=mt(e.getTablesSchemaJson());return!ee(l)||L(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=de();if(L(a,(l=>L(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=$e(n,a,(()=>[D(d),de(),[0],0])),[s,r,[I]]=o,$=$e(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),Ie(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ae(n,(([e,,[,n],d],o)=>{l[t][o]={[s]:e,...d==E(a)?{[r]:n}:{}}})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return ee(l)&&e.forEachValue(((e,t)=>{l[e]={[s]:D(t)}})),l},a=e=>ht(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(gt+"standalone")).format,z(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await N(M(a(e),(async(e,a)=>Pl(await n(e,{...ft,plugins:t,filepath:"_."+l[a]})))))};return q({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:E(e.getValueIds()),jsonLength:E(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=Tt;
Binary file