tinybase 5.0.0-beta.22 → 5.0.0-beta.23

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 (271) hide show
  1. package/@types/mergeable-store/index.d.cts +77 -11
  2. package/@types/mergeable-store/index.d.ts +77 -11
  3. package/@types/mergeable-store/with-schemas/index.d.cts +96 -11
  4. package/@types/mergeable-store/with-schemas/index.d.ts +96 -11
  5. package/@types/persisters/index.d.cts +0 -1
  6. package/@types/persisters/index.d.ts +0 -1
  7. package/@types/persisters/persister-expo-sqlite/index.d.cts +36 -40
  8. package/@types/persisters/persister-expo-sqlite/index.d.ts +36 -40
  9. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +36 -40
  10. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +36 -40
  11. package/@types/persisters/with-schemas/index.d.cts +0 -1
  12. package/@types/persisters/with-schemas/index.d.ts +0 -1
  13. package/cjs/es6/index.cjs +3 -3
  14. package/cjs/es6/mergeable-store/index.cjs +2 -2
  15. package/cjs/es6/mergeable-store/with-schemas/index.cjs +2 -2
  16. package/cjs/es6/min/index.cjs +1 -1
  17. package/cjs/es6/min/index.cjs.gz +0 -0
  18. package/cjs/es6/min/mergeable-store/index.cjs +1 -1
  19. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  20. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
  21. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  22. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  23. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  24. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  25. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  26. package/cjs/es6/min/synchronizers/index.cjs +1 -1
  27. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  28. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
  29. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  30. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  31. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  32. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  33. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  34. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  35. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  36. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
  37. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  38. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  39. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  40. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +7 -2
  41. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +7 -2
  42. package/cjs/es6/synchronizers/index.cjs +1 -1
  43. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +1 -1
  44. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  45. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  46. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  47. package/cjs/es6/synchronizers/with-schemas/index.cjs +1 -1
  48. package/cjs/es6/with-schemas/index.cjs +3 -3
  49. package/cjs/index.cjs +3 -3
  50. package/cjs/mergeable-store/index.cjs +2 -2
  51. package/cjs/mergeable-store/with-schemas/index.cjs +2 -2
  52. package/cjs/min/index.cjs +1 -1
  53. package/cjs/min/index.cjs.gz +0 -0
  54. package/cjs/min/mergeable-store/index.cjs +1 -1
  55. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  56. package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
  57. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  58. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  59. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  60. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  61. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  62. package/cjs/min/synchronizers/index.cjs +1 -1
  63. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  64. package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
  65. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  66. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  67. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  69. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  70. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  71. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
  73. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  74. package/cjs/min/with-schemas/index.cjs +1 -1
  75. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/persisters/persister-expo-sqlite/index.cjs +7 -3
  77. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +7 -3
  78. package/cjs/synchronizers/index.cjs +1 -1
  79. package/cjs/synchronizers/synchronizer-local/index.cjs +1 -1
  80. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  81. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  82. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  83. package/cjs/synchronizers/with-schemas/index.cjs +1 -1
  84. package/cjs/with-schemas/index.cjs +3 -3
  85. package/es6/index.js +3 -3
  86. package/es6/mergeable-store/index.js +2 -2
  87. package/es6/mergeable-store/with-schemas/index.js +2 -2
  88. package/es6/min/index.js +1 -1
  89. package/es6/min/index.js.gz +0 -0
  90. package/es6/min/mergeable-store/index.js +1 -1
  91. package/es6/min/mergeable-store/index.js.gz +0 -0
  92. package/es6/min/mergeable-store/with-schemas/index.js +1 -1
  93. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  94. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  95. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  96. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  97. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  98. package/es6/min/synchronizers/index.js +1 -1
  99. package/es6/min/synchronizers/index.js.gz +0 -0
  100. package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  101. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  102. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  103. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  104. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  105. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  106. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  107. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  108. package/es6/min/synchronizers/with-schemas/index.js +1 -1
  109. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  110. package/es6/min/with-schemas/index.js +1 -1
  111. package/es6/min/with-schemas/index.js.gz +0 -0
  112. package/es6/persisters/persister-expo-sqlite/index.js +5 -2
  113. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +5 -2
  114. package/es6/synchronizers/index.js +1 -1
  115. package/es6/synchronizers/synchronizer-local/index.js +1 -1
  116. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  117. package/es6/synchronizers/synchronizer-ws-client/index.js +1 -1
  118. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  119. package/es6/synchronizers/with-schemas/index.js +1 -1
  120. package/es6/with-schemas/index.js +3 -3
  121. package/index.js +3 -3
  122. package/mergeable-store/index.js +2 -2
  123. package/mergeable-store/with-schemas/index.js +2 -2
  124. package/min/index.js +1 -1
  125. package/min/index.js.gz +0 -0
  126. package/min/mergeable-store/index.js +1 -1
  127. package/min/mergeable-store/index.js.gz +0 -0
  128. package/min/mergeable-store/with-schemas/index.js +1 -1
  129. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  130. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  131. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  132. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  133. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  134. package/min/synchronizers/index.js +1 -1
  135. package/min/synchronizers/index.js.gz +0 -0
  136. package/min/synchronizers/synchronizer-local/index.js +1 -1
  137. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  138. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  139. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  140. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  141. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  142. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  143. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  144. package/min/synchronizers/with-schemas/index.js +1 -1
  145. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  146. package/min/with-schemas/index.js +1 -1
  147. package/min/with-schemas/index.js.gz +0 -0
  148. package/package.json +3 -107
  149. package/persisters/persister-expo-sqlite/index.js +5 -3
  150. package/persisters/persister-expo-sqlite/with-schemas/index.js +5 -3
  151. package/readme.md +2 -2
  152. package/releases.md +1 -1
  153. package/synchronizers/index.js +1 -1
  154. package/synchronizers/synchronizer-local/index.js +1 -1
  155. package/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  156. package/synchronizers/synchronizer-ws-client/index.js +1 -1
  157. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  158. package/synchronizers/with-schemas/index.js +1 -1
  159. package/umd/es6/index.js +3 -3
  160. package/umd/es6/mergeable-store/index.js +2 -2
  161. package/umd/es6/mergeable-store/with-schemas/index.js +2 -2
  162. package/umd/es6/min/index.js +1 -1
  163. package/umd/es6/min/index.js.gz +0 -0
  164. package/umd/es6/min/mergeable-store/index.js +1 -1
  165. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  166. package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
  167. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  168. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  169. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  170. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  171. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  172. package/umd/es6/min/synchronizers/index.js +1 -1
  173. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  174. package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  175. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  176. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  177. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  178. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  179. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  180. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  181. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  182. package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
  183. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  184. package/umd/es6/min/with-schemas/index.js +1 -1
  185. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  186. package/umd/es6/persisters/persister-expo-sqlite/index.js +9 -6
  187. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +9 -6
  188. package/umd/es6/synchronizers/index.js +1 -1
  189. package/umd/es6/synchronizers/synchronizer-local/index.js +1 -1
  190. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  191. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +1 -1
  192. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  193. package/umd/es6/synchronizers/with-schemas/index.js +1 -1
  194. package/umd/es6/with-schemas/index.js +3 -3
  195. package/umd/index.js +3 -3
  196. package/umd/mergeable-store/index.js +2 -2
  197. package/umd/mergeable-store/with-schemas/index.js +2 -2
  198. package/umd/min/index.js +1 -1
  199. package/umd/min/index.js.gz +0 -0
  200. package/umd/min/mergeable-store/index.js +1 -1
  201. package/umd/min/mergeable-store/index.js.gz +0 -0
  202. package/umd/min/mergeable-store/with-schemas/index.js +1 -1
  203. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  204. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  205. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  206. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  207. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  208. package/umd/min/synchronizers/index.js +1 -1
  209. package/umd/min/synchronizers/index.js.gz +0 -0
  210. package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
  211. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  212. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  213. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  214. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  215. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  216. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  217. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  218. package/umd/min/synchronizers/with-schemas/index.js +1 -1
  219. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  220. package/umd/min/with-schemas/index.js +1 -1
  221. package/umd/min/with-schemas/index.js.gz +0 -0
  222. package/umd/persisters/persister-expo-sqlite/index.js +9 -7
  223. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +9 -7
  224. package/umd/synchronizers/index.js +1 -1
  225. package/umd/synchronizers/synchronizer-local/index.js +1 -1
  226. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  227. package/umd/synchronizers/synchronizer-ws-client/index.js +1 -1
  228. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  229. package/umd/synchronizers/with-schemas/index.js +1 -1
  230. package/umd/with-schemas/index.js +3 -3
  231. package/with-schemas/index.js +3 -3
  232. package/@types/persisters/persister-expo-sqlite-next/index.d.cts +0 -187
  233. package/@types/persisters/persister-expo-sqlite-next/index.d.ts +0 -187
  234. package/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.cts +0 -206
  235. package/@types/persisters/persister-expo-sqlite-next/with-schemas/index.d.ts +0 -206
  236. package/cjs/es6/min/persisters/persister-expo-sqlite-next/index.cjs +0 -1
  237. package/cjs/es6/min/persisters/persister-expo-sqlite-next/index.cjs.gz +0 -0
  238. package/cjs/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +0 -1
  239. package/cjs/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.cjs.gz +0 -0
  240. package/cjs/es6/persisters/persister-expo-sqlite-next/index.cjs +0 -1253
  241. package/cjs/es6/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +0 -1253
  242. package/cjs/min/persisters/persister-expo-sqlite-next/index.cjs +0 -1
  243. package/cjs/min/persisters/persister-expo-sqlite-next/index.cjs.gz +0 -0
  244. package/cjs/min/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +0 -1
  245. package/cjs/min/persisters/persister-expo-sqlite-next/with-schemas/index.cjs.gz +0 -0
  246. package/cjs/persisters/persister-expo-sqlite-next/index.cjs +0 -926
  247. package/cjs/persisters/persister-expo-sqlite-next/with-schemas/index.cjs +0 -926
  248. package/es6/min/persisters/persister-expo-sqlite-next/index.js +0 -1
  249. package/es6/min/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  250. package/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1
  251. package/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.js.gz +0 -0
  252. package/es6/persisters/persister-expo-sqlite-next/index.js +0 -1251
  253. package/es6/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1251
  254. package/min/persisters/persister-expo-sqlite-next/index.js +0 -1
  255. package/min/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  256. package/min/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1
  257. package/min/persisters/persister-expo-sqlite-next/with-schemas/index.js.gz +0 -0
  258. package/persisters/persister-expo-sqlite-next/index.js +0 -924
  259. package/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -924
  260. package/umd/es6/min/persisters/persister-expo-sqlite-next/index.js +0 -1
  261. package/umd/es6/min/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  262. package/umd/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1
  263. package/umd/es6/min/persisters/persister-expo-sqlite-next/with-schemas/index.js.gz +0 -0
  264. package/umd/es6/persisters/persister-expo-sqlite-next/index.js +0 -1293
  265. package/umd/es6/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1293
  266. package/umd/min/persisters/persister-expo-sqlite-next/index.js +0 -1
  267. package/umd/min/persisters/persister-expo-sqlite-next/index.js.gz +0 -0
  268. package/umd/min/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -1
  269. package/umd/min/persisters/persister-expo-sqlite-next/with-schemas/index.js.gz +0 -0
  270. package/umd/persisters/persister-expo-sqlite-next/index.js +0 -957
  271. package/umd/persisters/persister-expo-sqlite-next/with-schemas/index.js +0 -957
@@ -1729,7 +1729,7 @@
1729
1729
  : (yield request(
1730
1730
  otherClientId,
1731
1731
  GET_VALUE_DIFF,
1732
- store.getMergeableValuesHashes(),
1732
+ store.getMergeableValueHashes(),
1733
1733
  ))[0],
1734
1734
  1,
1735
1735
  ];
@@ -4295,7 +4295,7 @@
4295
4295
  );
4296
4296
  return newStamp(tablesObj, tablesTime);
4297
4297
  };
4298
- const getMergeableValuesHashes = () =>
4298
+ const getMergeableValueHashes = () =>
4299
4299
  mapToObj(contentStampMap[1][0], getStampHash);
4300
4300
  const getMergeableValueDiff = (relativeTo) => {
4301
4301
  const [, [valueStampMaps, valuesTime]] = contentStampMap;
@@ -4385,7 +4385,7 @@
4385
4385
  getMergeableRowDiff,
4386
4386
  getMergeableCellHashes,
4387
4387
  getMergeableCellDiff,
4388
- getMergeableValuesHashes,
4388
+ getMergeableValueHashes,
4389
4389
  getMergeableValueDiff,
4390
4390
  setMergeableContent,
4391
4391
  setDefaultContent,
package/umd/index.js CHANGED
@@ -1540,7 +1540,7 @@
1540
1540
  await request(
1541
1541
  otherClientId,
1542
1542
  GET_VALUE_DIFF,
1543
- store.getMergeableValuesHashes(),
1543
+ store.getMergeableValueHashes(),
1544
1544
  )
1545
1545
  )[0],
1546
1546
  1,
@@ -4034,7 +4034,7 @@
4034
4034
  );
4035
4035
  return newStamp(tablesObj, tablesTime);
4036
4036
  };
4037
- const getMergeableValuesHashes = () =>
4037
+ const getMergeableValueHashes = () =>
4038
4038
  mapToObj(contentStampMap[1][0], getStampHash);
4039
4039
  const getMergeableValueDiff = (relativeTo) => {
4040
4040
  const [, [valueStampMaps, valuesTime]] = contentStampMap;
@@ -4123,7 +4123,7 @@
4123
4123
  getMergeableRowDiff,
4124
4124
  getMergeableCellHashes,
4125
4125
  getMergeableCellDiff,
4126
- getMergeableValuesHashes,
4126
+ getMergeableValueHashes,
4127
4127
  getMergeableValueDiff,
4128
4128
  setMergeableContent,
4129
4129
  setDefaultContent,
@@ -2176,7 +2176,7 @@
2176
2176
  );
2177
2177
  return newStamp(tablesObj, tablesTime);
2178
2178
  };
2179
- const getMergeableValuesHashes = () =>
2179
+ const getMergeableValueHashes = () =>
2180
2180
  mapToObj(contentStampMap[1][0], getStampHash);
2181
2181
  const getMergeableValueDiff = (relativeTo) => {
2182
2182
  const [, [valueStampMaps, valuesTime]] = contentStampMap;
@@ -2265,7 +2265,7 @@
2265
2265
  getMergeableRowDiff,
2266
2266
  getMergeableCellHashes,
2267
2267
  getMergeableCellDiff,
2268
- getMergeableValuesHashes,
2268
+ getMergeableValueHashes,
2269
2269
  getMergeableValueDiff,
2270
2270
  setMergeableContent,
2271
2271
  setDefaultContent,
@@ -2176,7 +2176,7 @@
2176
2176
  );
2177
2177
  return newStamp(tablesObj, tablesTime);
2178
2178
  };
2179
- const getMergeableValuesHashes = () =>
2179
+ const getMergeableValueHashes = () =>
2180
2180
  mapToObj(contentStampMap[1][0], getStampHash);
2181
2181
  const getMergeableValueDiff = (relativeTo) => {
2182
2182
  const [, [valueStampMaps, valuesTime]] = contentStampMap;
@@ -2265,7 +2265,7 @@
2265
2265
  getMergeableRowDiff,
2266
2266
  getMergeableCellHashes,
2267
2267
  getMergeableCellDiff,
2268
- getMergeableValuesHashes,
2268
+ getMergeableValueHashes,
2269
2269
  getMergeableValueDiff,
2270
2270
  setMergeableContent,
2271
2271
  setDefaultContent,
package/umd/min/index.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",b=f+"s",w=f+h,C="Row",L=C+"Count",p=C+h,v="Sorted"+C+h,y="Cell",I=y+h,T="Value",R=T+"s",S=T+h,M=e=>s+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),D=Promise,E=Math.max,H=Math.min,k=isFinite,A=e=>null==e,x=(e,t,s)=>A(e)?s?.():t(e),J=e=>e==n||e==a,F=e=>t(e)==n,Q=e=>t(e)==r,z=e=>Array.isArray(e),P=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),_=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),B=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),U=(e,t)=>e.sort(t),$=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>X(e,((e,t)=>e+t),0),K=e=>0==N(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.isFrozen,oe=e=>!A(e)&&x(se(e),(e=>e==te.prototype||A(se(e))),(()=>!0)),re=te.keys,le=te.freeze,ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>$(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),he=e=>oe(e)&&0==(e=>N(re(e)))(e),fe=(e,t,s)=>(ce(e,t)||(e[t]=s()),e[t]),be=(e,t,s,n=0)=>A(e)||!oe(e)||!n&&he(e)||ae(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!!n||!he(e)),we=e=>t=>X(Te(t),((t,s)=>t+e(s)),0),Ce=e=>e?.size??0,Le=we(Ce),pe=we(Le),ve=we(pe),ye=(e,t)=>e?.has(t)??!1,Ie=e=>A(e)||0==Ce(e),Te=e=>[...e?.values()??[]],Re=e=>e.clear(),Se=(e,t)=>e?.forEach(t),Me=(e,t)=>e?.delete(t),me=e=>new Map(e),Ve=e=>[...e?.keys()??[]],De=(e,t)=>e?.get(t),Ee=(e,t)=>Se(e,((e,s)=>t(s,e))),He=(e,t,s)=>A(s)?(Me(e,t),e):e?.set(t,s),ke=(e,t,s,n)=>(ye(e,t)?n?.(De(e,t)):He(e,t,s()),De(e,t)),Ae=(e,t,s,n=He)=>(ge(t,((t,n)=>s(e,n,t))),Ee(e,(s=>ce(t,s)?0:n(e,s))),e),xe=(e,t,s,n)=>{const a={};return Se(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},Je=(e,t,s)=>xe(e,(e=>xe(e,t,s)),Ie,he),Fe=(e,t,s)=>xe(e,(e=>Je(e,t,s)),Ie,he),Qe=(e,t)=>{const s=me();return Se(e,((e,n)=>s.set(n,t?.(e)??e))),s},ze=e=>Qe(e,Qe),Pe=e=>Qe(e,ze),Ne=(e,t,s,n,a=0)=>x((s?ke:De)(e,t[a],a>N(t)-2?s:me),(o=>{if(a>N(t)-2)return n?.(o)&&He(e,t[a]),o;const r=Ne(o,t,s,n,a+1);return Ie(o)&&He(e,t[a]),r})),Oe=e=>{const s=t(e);return J(s)||s==o&&k(e)?s:void 0},We=e=>A(e)||!A(Oe(e)),je=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),_e=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),Be=e=>new Set(z(e)||A(e)?e:[e]),Ue=(e,t)=>e?.add(t),$e=(e,t,s,n,a)=>{const o=e.hasRow,r=me(),l=me(),i=me(),c=me(),d=me(),u=me(),g=(t,s,...n)=>{const a=ke(u,t,Be);return $(n,(t=>Ue(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>x(De(u,t),(n=>{$(K(s)?Te(n):s,(t=>{e.delListener(t),Me(n,t)})),Ie(n)&&He(u,t)})),f=(e,s)=>{He(r,e,s),ye(l,e)||(He(l,e,t()),He(c,e,me()),He(d,e,me()),a(i))},b=e=>{He(r,e),He(l,e),He(c,e),He(d,e),h(e),a(i)};return[()=>e,()=>Ve(r),e=>Ee(l,e),e=>ye(l,e),e=>De(r,e),e=>De(l,e),(e,t)=>He(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=me(),u=me(),b=De(c,t),w=De(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=De(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&_(c,d)||He(i,t,[c,d]),!A(l)){const e=De(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&He(u,t,s)}},L=e=>{a((()=>{Se(i,(([,e],t)=>He(b,t,e))),Se(u,((e,t)=>He(w,t,e)))}),i,u,b,w,e),Re(i),Re(u)};Ee(b,C),e.hasTable(n)&&$(e.getRowIds(n),(e=>{ye(b,e)||C(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>L())))},b,e=>n(e,i),()=>Ee(u,b),g,h]},qe=(e,t)=>F(e)?t=>t(e):e??(()=>t??s),Ge=(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}},Ke=/^\d+$/,Xe=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{Ke.test(t)&&N(e)<1e3&&Y(e,t)}]},Ye=e=>{let t;const[n,a]=Xe(),o=me();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return He(o,d,[a,r,l,i,c]),Ue(Ne(r,l??[s],Be),d),d},(e,n,...a)=>$(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?Y(n,e):null===t[s]?Se(e,(e=>a(e,s+1))):$([t[s],null],(t=>a(De(e,t),s+1)));return a(e,0),n})(e,n),(e=>Se(e,(e=>De(o,e)[0](t,...n??[],...a))))),e=>x(De(o,e),(([,t,n])=>(Ne(t,n??[s],void 0,(t=>(Me(t,e),Ie(t)?1:0))),He(o,e),a(e),n))),e=>x(De(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):A(s[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},Ze=Ge((e=>{let t,n,a,o=100,r=me(),l=me(),i=1;const c=me(),d=me(),[u,g,h]=Ye((()=>J)),f=me(),b=me(),w=[],C=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=De(f,s);Se(n,((s,n)=>Se(s,((s,a)=>Se(s,((s,o)=>je(e,n,a,o,s[t]))))))),Se(a,((s,n)=>_e(e,n,s[t])))})),i=1},p=e=>{He(f,e),He(b,e),g(d,[e])},v=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??N(e)),p),y=()=>v(w,N(w)-o),I=()=>x(t,(()=>{Y(w,t),y(),v(C),t=void 0,a=1})),T=()=>{t=Z(w),a=1};let R,S;const M=(e=s)=>(A(t)&&(t=s+n++,He(f,t,[r,l]),H(t,e),r=me(),l=me(),a=1),t),m=()=>{K(w)||(((e,...t)=>{e.unshift(...t)})(C,M()),L(0,t),t=Z(w),a=1)},V=()=>{K(C)||(Y(w,t),t=ee(C),L(1,t),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(k(e)&&De(b,e)!==t&&(He(b,e,t),g(d,[e])),J),k=e=>ye(f,e),J={setSize:e=>(o=e,y(),J),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Ee(b,e),hasCheckpoint:k,getCheckpoint:e=>De(b,e),goBackward:()=>(m(),D(),J),goForward:()=>(V(),D(),J),goTo:e=>{const s=W(w,e)?m:W(C,e)?V:null;for(;!A(s)&&e!=t;)s();return D(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(v(w),v(C),A(t)||p(t),t=void 0,n=0,E(),J),clearForward:()=>(K(C)||(v(C),g(c)),J),destroy:()=>{e.delListener(R),e.delListener(S)},getListenerStats:()=>({checkpointIds:Le(c),checkpoint:Le(d)}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){I();const e=ke(r,t,me),l=ke(e,s,me),i=ke(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ie(He(l,n))&&Ie(He(e,s))&&Ie(He(r,t))&&T(),D()}})),S=e.addValueListener(null,((e,t,s,n)=>{if(i){I();const e=ke(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Ie(He(l,t))&&T(),D()}}))}};return le(J.clear())}),(e=>e._registerListeners())),et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=me(q(et,((e,t)=>[e,t]))),st=e=>et[63&e],nt=(e,t)=>De(tt,e[t])??0,at=(e,t)=>(e??0)<(t??0)?-1:1,ot=(e=16)=>X(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""),rt=Ge((e=>{const t=me(),n=me(),[a,o,r]=Ye((()=>p)),[l,i,c,d,u,g,h,,f,b,w,C]=$e(e,me,(e=>A(e)?s:z(e)?q(e,M):M(e)),a,o),L=(t,s,n)=>{const a=u(t);Se(n,((t,n)=>s(n,(s=>Se(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},p={setIndexDefinition:(e,s,a,r,l,i=at)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let b=0;const w=Be(),C=Be(),L=g(e);if(Se(a,(([e,t],s)=>{const n=Be(e),a=Be(t);Se(n,(e=>Me(a,e)?Me(n,e):0)),Se(n,(e=>{Ue(w,e),x(De(L,e),(t=>{Me(t,s),Ie(t)&&(He(L,e),b=1)}))})),Se(a,(e=>{Ue(w,e),ye(L,e)||(He(L,e,Be()),b=1),Ue(De(L,e),s),A(r)||Ue(C,e)}))})),s(),Ie(u)||(f?Ee(L,(e=>Ue(C,e))):Ee(l,(e=>x(De(d,e),(e=>Ue(C,e))))),Se(C,(e=>{const t=(t,s)=>i(De(u,t),De(u,s),e),s=[...De(L,e)];B(s,t)||(He(L,e,Be(U(s,t))),Ue(w,e))}))),(b||f)&&!A(c)){const t=[...L];B(t,c)||(h(e,me(U(t,c))),b=1)}b&&o(t,[e]),Se(w,(t=>o(n,[e,t])))}),qe(a),x(r,qe)),p},delIndexDefinition:e=>(b(e),p),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>ye(g(e),t),getTableId:u,getSliceIds:e=>Ve(g(e)),getSliceRowIds:(e,t)=>Te(De(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),p),destroy:C,getListenerStats:()=>({sliceIds:Le(t),sliceRowIds:pe(n)})};return le(p)})),lt=me([["avg",[(e,t)=>G(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),it=(e,t,s,n,a,o=!1)=>{if(Ie(s))return;const[r,l,i,c]=a;return o||=A(e),Se(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(Te(s),Ce(s)):e},ct=Ge((e=>{const t=me(),[n,a,o]=Ye((()=>C)),[r,l,i,c,d,u,g,,h,f,b,w]=$e(e,O,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:De(lt,n)??De(lt,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=Ce(r);i||=A(d),s();let f=it(d,h,r,n,c,i);k(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),qe(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({metric:Le(t)})};return le(C)})),dt=me(),ut=me(),gt=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0,h=0,f=0;ke(dt,i,(()=>0)),ke(ut,i,(()=>[]));const[b,w,C,L,p]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!he(e)||!he(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(r,e),v=t=>{(b&&z(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},y=async e=>(2!=g&&(g=1,h++,await S((async()=>{try{v(await t())}catch(t){o?.(t),e&&p(e)}g=0}))),M),I=()=>(d&&(a(d),d=void 0),M),T=async e=>(1!=g&&(g=2,f++,await S((async()=>{try{await s(w,e)}catch(e){o?.(e)}g=0}))),M),R=()=>(x(u,e.delListener),u=void 0,M),S=async(...e)=>(Y(De(ut,i),...e),await(async()=>{if(!De(dt,i)){for(He(dt,i,1);!A(c=ee(De(ut,i)));)try{await c()}catch(e){o?.(e)}He(dt,i,0)}})(),M),M={load:y,startAutoLoad:async e=>(await I().load(e),d=n((async(e,t)=>{t||e?2!=g&&(g=1,h++,v(t??e),g=0):await y()})),M),stopAutoLoad:I,isAutoLoading:()=>!A(d),save:T,startAutoSave:async()=>(await R().save(),u=e.addDidFinishTransactionListener((()=>{const e=C();L(e)&&T(e)})),M),stopAutoSave:R,isAutoSaving:()=>!A(u),schedule:S,getStore:()=>e,destroy:()=>I().stopAutoSave(),getStats:()=>({loads:h,saves:f}),...l};return le(M)},ht=new globalThis.TextEncoder,ft=e=>{let t=2166136261;return $(ht.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},bt=([e,t,s])=>[e,t,s],wt=([e,t])=>Ct(e,t),Ct=(e,t)=>t?[e,t]:[e],Lt=e=>e[2],pt=(e,t)=>ft(e+":"+t),vt=(e,t)=>t>e?(e?ft(e):0)^ft(t):0,yt=(e,t)=>((e??"")>(t??"")?e:t)??"",It=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},Tt=(e=s)=>Ct(ie(),e),Rt=(e=s)=>[me(),e,0],St=([e,t,s],n=bt)=>[xe(e,n),t,s],Mt=([e,t],s=wt)=>Ct(xe(e,s),t),mt=(e,s)=>z(e)&&3==N(e)&&F(e[1])&&t(e[2])==o&&k(e[2])&&s(e[0]),Vt=Ge((e=>{const t=e.createStore,n=t(),a=t(),o=me(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,b,w,T,,,R,,S,M,m,V,D]=$e(e,(()=>!0),O,r,l),E=(e,t,...s)=>$(s,(s=>Ue(ke(ke(o,t,me),e,Be),s))),H=e=>{x(De(o,e),(e=>{Ee(e,((e,t)=>Se(t,(t=>e.delListener(t))))),Re(e)})),$([a,n],(t=>t.delTable(e)))},k=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),H(t);const l=[],i=[[null,[o,null,null,[],me()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=Q(e)?[N(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||Q(t)?null:t,a=A(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],me()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,Q(e)?e:A(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]:De(lt,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,Q(e)?e:s=>s(e)===t)});const g=me(l);if(Ie(g))return J;const h=me(i);Ee(h,((e,[,t])=>x(De(h,t),(({3:t})=>A(e)?0:Y(t,e)))));const f=me(d);let b=n;if(Ie(f)&&K(u))b=a;else{k(t,b,a);const e=me();Ee(f,((t,[s,n])=>Ue(ke(e,s,Be),[t,n])));const s=Be();Ee(g,(t=>ye(e,t)?0:Ue(s,t)));const n=me(),o=(s,n,o,r)=>x(s,(([l,i,c,d])=>{Ee(n,((t,[s])=>{const n=ke(l,t,me),a=De(n,o),i=r?void 0:s;if(a!==i){const s=Be([[a,i]]),r=Ce(n);He(n,o,i),Se(De(e,t),(([e,t])=>{const a=it(d[e],r,n,s,t);d[e]=A(Oe(a))?null:a}))}})),Ie(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));E(b,t,b.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=me(),g=b.hasRow(t,l);let h=!g;Se(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Ee(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&He(u,e,[n])})),h&&o(Ne(n,c,void 0,(([,e])=>(Me(e,l),Ie(e)))),u,l,1),g&&o(Ne(n,d,(()=>{const e={};return Se(s,(s=>e[s]=b.getCell(t,l,s))),[me(),Be(),void 0,e]}),(([,e])=>{Ue(e,l)})),u,l)})))}k(t,e,b);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=De(h,n),c=o?.(l,s),[d,u]=De(i,s)??[];c!=d&&(A(u)||D(t,u),He(i,s,A(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[De(h,t)?.[0],De(De(h,t)?.[4],s)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?Ee(g,((e,a)=>je(b,t,s,e,a(n,s)))):b.delRow(t,s)))})(s)},{3:C}=De(h,null);return b.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(b.delRow(t,a),Se(h,(({4:e})=>x(De(e,a),(([,s])=>{D(t,s),He(e,a)})))))}))))),J},delQueryDefinition:e=>(H(e),S(e),J),getStore:g,getQueryIds:h,forEachQuery:b,hasQuery:w,getTableId:T,addQueryIdsListener:e=>M((()=>e(J))),delListener:e=>(i(e),J),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+I]:[0,1],[L]:[0,1],[p]:[0,1],[v]:[0,5],[C]:[1,2],[I]:[0,2],[y]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>a[e+s](...t))),J[u+d+s+c]=(...e)=>a[u+s+c](...P(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),le(J)})),Dt=Ge((e=>{const t=me(),n=me(),a=me(),o=me(),[r,l,i]=Ye((()=>I)),[c,d,u,g,h,f,,,b,w,C,L]=$e(e,(()=>[me(),me(),me(),me()]),(e=>A(e)?void 0:e+s),r,l),p=(e,t,s)=>x(f(e),(([n,,a])=>{if(!ye(a,t)){const o=Be();if(h(e)!=y(e))Ue(o,t);else{let e=t;for(;!A(e)&&!ye(o,e);)Ue(o,e),e=De(n,e)}if(s)return o;He(a,t,o)}return De(a,t)})),v=(e,t)=>x(f(e),(([,,e])=>He(e,t))),y=e=>De(t,e),I={setRelationshipDefinition:(e,s,r,i)=>(He(t,e,r),b(e,s,((t,s)=>{const r=Be(),i=Be(),c=Be(),[d,u]=f(e);Se(s,(([t,s],n)=>{A(t)||(Ue(i,t),x(De(u,t),(e=>{Me(e,n),Ie(e)&&He(u,t)}))),A(s)||(Ue(i,s),ye(u,s)||He(u,s,Be()),Ue(De(u,s),n)),Ue(r,n),He(d,n,s),Ee(De(o,e),(t=>{ye(p(e,t),n)&&Ue(c,t)}))})),t(),Se(r,(t=>l(n,[e,t]))),Se(i,(t=>l(a,[e,t]))),Se(c,(t=>{v(e,t),l(o,[e,t])}))}),qe(i)),I),delRelationshipDefinition:e=>(He(t,e),w(e),I),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:y,getRemoteRowId:(e,t)=>De(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(De(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:Te(p(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),I),destroy:L,getListenerStats:()=>({remoteRowId:pe(n),localRowIds:pe(a),linkedRowIds:pe(o)})};return le(I)})),Et=e=>[e,e],Ht=(e,t=Le)=>t(e[0])+t(e[1]),kt=()=>[me(),me()],At=e=>[...e],xt=([e,t])=>e===t,Jt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),Ft=JSON.parse,Qt=(e,t,s)=>He(e,t,De(e,t)==-s?void 0:s),zt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=me(),h=me(),v=me(),m=me(),V=me(),D=me(),E=me(),H=me(),k=me(),F=me(),z=me(),N=me(),O=me(),j=me(),B=Be(),G=me(),K=me(),X=me(),Z=me(),ee=kt(),te=kt(),se=kt(),ne=kt(),ae=kt(),oe=kt(),re=kt(),ie=kt(),ue=kt(),fe=kt(),we=kt(),Te=kt(),Ne=kt(),We=kt(),$e=kt(),qe=kt(),Ge=kt(),Ke=kt(),Ze=kt(),et=kt(),tt=kt(),st=kt(),nt=me(),ot=kt(),[rt,lt,it,ct]=Ye((()=>zs)),dt=e=>{if(!be(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!J(t)&&t!=o||(Oe(e[i])!=t&&de(e,i),0))},ut=(t,s)=>(!e||ye(z,s)||Kt(s))&&be(t,((e,t)=>gt(s,t,e)),(()=>Kt(s))),gt=(e,t,s,n)=>be(n?s:wt(s,e,t),((n,a)=>x(ht(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Kt(e,t))),ht=(t,s,n,a)=>e?x(De(De(z,t),n),(e=>Oe(a)!=e[l]?Kt(t,s,n,a,e[i]):a),(()=>Kt(t,s,n,a))):A(Oe(a))?Kt(t,s,n,a):a,ft=(e,t)=>be(t?e:Ct(e),((t,s)=>x(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),bt=(e,s)=>t?x(De(O,e),(t=>Oe(s)!=t[l]?Xt(e,s,t[i]):s),(()=>Xt(e,s))):A(Oe(s))?Xt(e,s):s,wt=(e,t,s)=>(x(De(N,t),(([n,a])=>{Se(n,((t,s)=>{ce(e,s)||(e[s]=t)})),Se(a,(n=>{ce(e,n)||Kt(t,s,n)}))})),e),Ct=e=>(t&&(Se(j,((t,s)=>{ce(e,s)||(e[s]=t)})),Se(B,(t=>{ce(e,t)||Xt(t)}))),e),Lt=e=>Ae(z,e,((e,t,s)=>{const n=me(),a=Be();Ae(ke(z,t,me),s,((e,t,s)=>{He(e,t,s),x(s[i],(e=>He(n,t,e)),(()=>Ue(a,t)))})),He(N,t,[n,a])}),((e,t)=>{He(z,t),He(N,t)})),pt=e=>Ae(O,e,((e,t,s)=>{He(O,t,s),x(s[i],(e=>He(j,t,e)),(()=>Ue(B,t)))}),((e,t)=>{He(O,t),He(j,t),Me(B,t)})),vt=e=>he(e)?Ds():Rs(e),yt=e=>Ae(X,e,((e,t,s)=>It(t,s)),((e,t)=>Nt(t))),It=(e,t)=>Ae(ke(X,e,(()=>(_t(e,1),He(G,e,Xe()),He(K,e,me()),me()))),t,((t,s,n)=>Tt(e,t,s,n)),((t,s)=>Ot(e,t,s))),Tt=(e,t,s,n,a)=>Ae(ke(t,s,(()=>(Bt(e,s,1),me()))),n,((t,n,a)=>Rt(e,s,t,n,a)),((n,o)=>Wt(e,t,s,n,o,a))),Rt=(e,t,s,n,a)=>{ye(s,n)||Ut(e,t,n,1);const o=De(s,n);a!==o&&($t(e,t,n,o,a),He(s,n,a))},St=(e,t,s,n,a)=>x(De(t,s),(t=>Rt(e,s,t,n,a)),(()=>Tt(e,t,s,wt({[n]:a},e,s)))),Mt=e=>he(e)?ks():Ss(e),mt=e=>Ae(Z,e,((e,t,s)=>Vt(t,s)),((e,t)=>jt(t))),Vt=(e,t)=>{ye(Z,e)||qt(e,1);const s=De(Z,e);t!==s&&(Gt(e,s,t),He(Z,e,t))},Dt=(e,t)=>{const[s]=De(G,e),n=s(t);return ye(De(X,e),n)?Dt(e,t):n},Pt=e=>De(X,e)??It(e,{}),Nt=e=>It(e,{}),Ot=(e,t,s)=>{const[,n]=De(G,e);n(s),Tt(e,t,s,{},!0)},Wt=(e,t,s,n,a,o)=>{const r=De(De(N,e)?.[0],a);if(!A(r)&&!o)return Rt(e,s,n,a,r);const l=t=>{$t(e,s,t,De(n,t)),Ut(e,s,t,-1),He(n,t)};A(r)?l(a):Ee(n,l),Ie(n)&&(Bt(e,s,-1),Ie(He(t,s))&&(_t(e,-1),He(X,e),He(G,e),He(K,e)))},jt=e=>{const t=De(j,e);if(!A(t))return Vt(e,t);Gt(e,De(Z,e)),qt(e,-1),He(Z,e)},_t=(e,t)=>Qt(d,e,t),Bt=(e,t,s)=>Qt(ke(m,e,me),t,s)&&He(v,e,ke(v,e,(()=>0))+s),Ut=(e,t,s,n)=>{const a=De(K,e),o=De(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Qt(ke(h,e,me),s,n),He(a,s,o!=-n?o+n:null),Qt(ke(ke(V,e,me),t,me),s,n)},$t=(e,t,s,n,a)=>{ke(ke(ke(D,e,me),t,me),s,(()=>[n,0]))[1]=a,r[3]?.(e,t,s,a)},qt=(e,t)=>Qt(E,e,t),Gt=(e,t,s)=>{ke(H,e,(()=>[t,0]))[1]=s,r[4]?.(e,s)},Kt=(e,t,s,n,a)=>(Y(ke(ke(ke(k,e,me),t,me),s,(()=>[])),n),a),Xt=(e,t,s)=>(Y(ke(F,e,(()=>[])),t),s),Yt=(e,t,s)=>x(De(De(De(D,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(hs(e,t,s))])),Zt=e=>x(De(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(ws(e))])),es=e=>Ie(k)||Ie(qe[e])?0:Se(e?Pe(k):k,((t,s)=>Se(t,((t,n)=>Se(t,((t,a)=>lt(qe[e],[s,n,a],t))))))),ts=e=>Ie(F)||Ie(Ge[e])?0:Se(e?Qe(F):F,((t,s)=>lt(Ge[e],[s],t))),ss=(e,t,s,n)=>{if(!Ie(e))return lt(t,n,(()=>xe(e))),Ee(e,((e,t)=>lt(s,[...n??[],e],1==t))),1},ns=e=>{const t=Cs();t!=s&&lt(ee[e],void 0,t);const n=Ie(fe[e]),a=Ie(Ne[e])&&Ie(We[e])&&Ie(ue[e])&&Ie(we[e])&&Ie(oe[e])&&Ie(re[e])&&Ie(ie[e])&&n&&Ie(se[e])&&Ie(ne[e]),o=Ie($e[e])&&Ie(Te[e])&&Ie(ae[e])&&Ie(te[e]);if(!a||!o){const t=e?[Qe(d),ze(h),Qe(v),ze(m),Pe(V),Pe(D)]:[d,h,v,m,V,D];if(!a){ss(t[0],se[e],ne[e]),Se(t[1],((t,s)=>ss(t,oe[e],re[e],[s]))),Se(t[2],((t,s)=>{0!=t&&lt(ie[e],[s],cs(s))}));const s=Be();Se(t[3],((t,a)=>{ss(t,ue[e],we[e],[a])&&!n&&(lt(fe[e],[a,null]),Ue(s,a))})),n||Se(t[5],((t,n)=>{if(!ye(s,n)){const s=Be();Se(t,(e=>Se(e,(([t,n],a)=>n!==t?Ue(s,a):Me(e,a))))),Se(s,(t=>lt(fe[e],[n,t])))}})),Se(t[4],((t,s)=>Se(t,((t,n)=>ss(t,Ne[e],We[e],[s,n])))))}if(!o){let s;Se(t[5],((t,n)=>{let a;Se(t,((t,o)=>{let r;Se(t,(([t,l],i)=>{l!==t&&(lt($e[e],[n,o,i],l,t,Yt),s=a=r=1)})),r&&lt(Te[e],[n,o],Yt)})),a&&lt(ae[e],[n],Yt)})),s&&lt(te[e],void 0,Yt)}}},as=e=>{const t=Is();t!=n&&lt(Ke[e],void 0,t);const s=Ie(et[e])&&Ie(tt[e]),a=Ie(st[e])&&Ie(Ze[e]);if(!s||!a){const t=e?[Qe(E),Qe(H)]:[E,H];if(s||ss(t[0],et[e],tt[e]),!a){let s;Se(t[1],(([t,n],a)=>{n!==t&&(lt(st[e],[a],n,t,Zt),s=1)})),s&&lt(Ze[e],void 0,Zt)}}},os=(e,...t)=>(Js((()=>e(...q(t,M)))),zs),rs=()=>Fe(X),ls=()=>Ve(X),is=e=>Ve(De(K,M(e))),cs=e=>Ce(De(X,M(e))),ds=e=>Ve(De(X,M(e))),us=(e,t,s,n=0,a)=>{return q(P(U((o=De(X,M(e)),r=(e,s)=>[A(t)?s:De(e,M(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>at(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},gs=(e,t)=>Ve(De(De(X,M(e)),M(t))),hs=(e,t,s)=>De(De(De(X,M(e)),M(t)),M(s)),fs=()=>xe(Z),bs=()=>Ve(Z),ws=e=>De(Z,M(e)),Cs=()=>!Ie(X),Ls=e=>ye(X,M(e)),ps=(e,t)=>ye(De(K,M(e)),M(t)),vs=(e,t)=>ye(De(X,M(e)),M(t)),ys=(e,t,s)=>ye(De(De(X,M(e)),M(t)),M(s)),Is=()=>!Ie(Z),Ts=e=>ye(Z,M(e)),Rs=e=>os((()=>(e=>be(e,ut,Kt))(e)?yt(e):0)),Ss=e=>os((()=>ft(e)?mt(e):0)),Ms=e=>{try{vt(Ft(e))}catch{}return zs},ms=t=>os((()=>{if((e=be(t,(e=>be(e,dt))))&&(Lt(t),!Ie(X))){const e=rs();Ds(),Rs(e)}})),Vs=e=>os((()=>{if(t=(e=>be(e,dt))(e)){const s=fs();xs(),ks(),t=!0,pt(e),Ss(s)}})),Ds=()=>os((()=>yt({}))),Es=e=>os((e=>ye(X,e)?Nt(e):0),e),Hs=(e,t)=>os(((e,t)=>x(De(X,e),(s=>ye(s,t)?Ot(e,s,t):0))),e,t),ks=()=>os((()=>mt({}))),As=()=>os((()=>{Lt({}),e=!1})),xs=()=>os((()=>{pt({}),t=!1})),Js=(e,t)=>{if(-1!=a){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=a&&a++,1==a&&(r[0]?.(),lt(nt)),zs),Qs=e=>(a>0&&(a--,0==a&&(a=1,es(1),Ie(D)||ns(1),ts(1),Ie(H)||as(1),e?.(zs)&&(Se(D,((e,t)=>Se(e,((e,s)=>Se(e,(([e],n)=>je(zs,t,s,n,e))))))),Re(D),Se(H,(([e],t)=>_e(zs,t,e))),Re(H)),lt(ot[0],void 0),a=-1,es(0),Ie(D)||ns(0),ts(0),Ie(H)||as(0),r[1]?.(),lt(ot[1],void 0),r[2]?.(),a=0,s=Cs(),n=Is(),$([d,h,v,m,V,D,k,E,H,F],Re))),zs),zs={getContent:()=>[rs(),fs()],getTables:rs,getTableIds:ls,getTable:e=>Je(De(X,M(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>xe(De(De(X,M(e)),M(t))),getCellIds:gs,getCell:hs,getValues:fs,getValueIds:bs,getValue:ws,hasTables:Cs,hasTable:Ls,hasTableCell:ps,hasRow:vs,hasCell:ys,hasValues:Is,hasValue:Ts,getTablesJson:()=>Jt(X),getValuesJson:()=>Jt(Z),getJson:()=>Jt([X,Z]),getTablesSchemaJson:()=>Jt(z),getValuesSchemaJson:()=>Jt(O),getSchemaJson:()=>Jt([z,O]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>os((()=>{(he(e)?Ds:Rs)(e),(he(t)?ks:Ss)(t)})),setTables:Rs,setTable:(e,t)=>os((e=>ut(t,e)?It(e,t):0),e),setRow:(e,t,s)=>os(((e,t)=>gt(e,t,s)?Tt(e,Pt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let n;return gt(e,n,t)&&(e=M(e),Tt(e,Pt(e),n=Dt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>os(((e,t)=>{if(gt(e,t,s,1)){const n=Pt(e);ge(s,((s,a)=>St(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>os(((e,t,s)=>x(ht(e,t,s,Q(n)?n(hs(e,t,s)):n),(n=>St(e,Pt(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>os((()=>ft(e,1)?ge(e,((e,t)=>Vt(t,e))):0)),setValue:(e,t)=>os((e=>x(bt(e,Q(t)?t(ws(e)):t),(t=>Vt(e,t)))),e),applyChanges:e=>os((()=>{ge(e[0],((e,t)=>A(e)?Es(t):ge(e,((e,s)=>A(e)?Hs(t,s):ge(e,((e,n)=>je(zs,t,s,n,e))))))),ge(e[1],((e,t)=>_e(zs,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{Mt(Ft(e))}catch{}return zs},setJson:e=>os((()=>{try{const[t,s]=Ft(e);vt(t),Mt(s)}catch{Ms(e)}})),setTablesSchema:ms,setValuesSchema:Vs,setSchema:(e,t)=>os((()=>{ms(e),Vs(t)})),delTables:Ds,delTable:Es,delRow:Hs,delCell:(e,t,s,n)=>os(((e,t,s)=>x(De(X,e),(a=>x(De(a,t),(o=>ye(o,s)?Wt(e,a,t,o,s,n):0))))),e,t,s),delValues:ks,delValue:e=>os((e=>ye(Z,e)?jt(e):0),e),delTablesSchema:As,delValuesSchema:xs,delSchema:()=>os((()=>{As(),xs()})),transaction:Js,startTransaction:Fs,getTransactionChanges:()=>[xe(D,((e,t)=>-1===De(d,t)?void 0:xe(e,((e,s)=>-1===De(De(m,t),s)?void 0:xe(e,(([,e])=>e),(e=>xt(e)))),Ie,he)),Ie,he),xe(H,(([,e])=>e),(e=>xt(e))),1],getTransactionLog:()=>[!Ie(D),!Ie(H),Fe(D,At,xt),Fe(k),xe(H,At,xt),xe(F),xe(d),Je(m),Fe(V),xe(E)],finishTransaction:Qs,forEachTable:e=>Se(X,((t,s)=>e(s,(e=>Se(t,((t,s)=>e(s,(e=>Ee(t,e))))))))),forEachTableCell:(e,t)=>Ee(De(K,M(e)),t),forEachRow:(e,t)=>Se(De(X,M(e)),((e,s)=>t(s,(t=>Ee(e,t))))),forEachCell:(e,t,s)=>Ee(De(De(X,M(e)),M(t)),s),forEachValue:e=>Ee(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=us(e,t,s,n,a);return rt((()=>{const r=us(e,t,s,n,a);_(r,l)||(l=r,o(zs,e,t,s,n,a,l))}),fe[r?1:0],[e,t],[ls])},addStartTransactionListener:e=>rt(e,nt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(ct(e),zs),delListener:e=>(it(e),zs),getListenerStats:()=>({hasTables:Ht(ee),tables:Ht(te),tableIds:Ht(se),hasTable:Ht(ne),table:Ht(ae),tableCellIds:Ht(oe),hasTableCell:Ht(re,pe),rowCount:Ht(ie),rowIds:Ht(ue),sortedRowIds:Ht(fe),hasRow:Ht(we,pe),row:Ht(Te,pe),cellIds:Ht(Ne,pe),hasCell:Ht(We,ve),cell:Ht($e,ve),invalidCell:Ht(qe,ve),hasValues:Ht(Ke),values:Ht(Ze),valueIds:Ht(et),hasValue:Ht(tt),value:Ht(st),invalidValue:Ht(Ge),transaction:Le(nt)+Ht(ot)}),isMergeable:()=>!1,createStore:zt,addListener:rt,callListeners:lt,setInternalListeners:(e,t,s,n,a)=>r=[e,t,s,n,a]};return ge({[g+b]:[0,ee,[],()=>[Cs()]],[b]:[0,te],[w]:[0,se],[g+f]:[1,ne,[ls],e=>[Ls(...e)]],[f]:[1,ae,[ls]],[f+I]:[1,oe,[ls]],[g+f+y]:[2,re,[ls,is],e=>[ps(...e)]],[L]:[1,ie,[ls]],[p]:[1,ue,[ls]],[g+C]:[2,we,[ls,ds],e=>[vs(...e)]],[C]:[2,Te,[ls,ds]],[I]:[2,Ne,[ls,ds]],[g+y]:[3,We,[ls,ds,gs],e=>[ys(...e)]],[y]:[3,$e,[ls,ds,gs],e=>Et(hs(...e))],InvalidCell:[3,qe],[g+R]:[0,Ke,[],()=>[Is()]],[R]:[0,Ze],[S]:[0,et],[g+T]:[1,tt,[bs],e=>[Ts(...e)]],[T]:[1,st,[bs],e=>Et(ws(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{zs[u+a+c]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?P(a,0,e):void 0,s,n)})),le(zs)},Pt=2**36,Nt=2**30,Ot=2**24,Wt=2**18,jt=4096,_t={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=(e=s)=>[Rt(e),Rt(e)];e.createCheckpoints=Ze,e.createCustomPersister=gt,e.createCustomSynchronizer=(e,t,n,a,o,r,l={})=>{let i,c=0,d=0;const u=me();n(((s,n,a,o)=>{d++,0==a?x(De(u,n),(([e,t])=>A(e)||e==s?t(o,s):0)):2==a&&b.isAutoLoading()?f(s,o).then((e=>{i?.(void 0,e)})):3==a&&b.isAutoLoading()?i?.(void 0,o):x(1==a&&b.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{c++,t(s,n,0,e)}))}));const g=async(e,n,a=s)=>new D(((s,r)=>{const l=ot(),i=setTimeout((()=>{Me(u,l),r(`No response from ${e??"anyone"} to '${n}'`)}),1e3*o);He(u,l,[e,(e,t)=>{clearTimeout(i),Me(u,l),s([e,t])}]),c++,t(e,l,n,a)})),h=(e,[t,s])=>{ue(t,(([t,s],n)=>{const a=fe(e[0],n,Tt);ue(t,(([e,t],s)=>{const n=fe(a[0],s,Tt);ue(e,(([e,t],s)=>n[0][s]=Ct(e,t))),n[1]=yt(n[1],t)})),a[1]=yt(a[1],s)})),e[1]=yt(e[1],s)},f=async(t=null,s)=>{A(s)&&([s,t]=await g(t,1));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=Tt();if(o!=n){const[s,n]=(await g(t,4,e.getMergeableTableHashes()))[0];if(l=s,!he(n)){const[s,a]=(await g(t,5,e.getMergeableRowHashes(n)))[0];if(h(l,s),!he(a)){const s=(await g(t,6,e.getMergeableCellHashes(a)))[0];h(l,s)}}}return[l,r==a?Tt():(await g(t,7,e.getMergeableValuesHashes()))[0],1]},b=gt(e,(async()=>{const e=await f();return he(e[0][0])&&he(e[1][0])?void 0:e}),(async(s,n)=>{c++,n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await b.startAutoLoad(e)).startAutoSave(),stopSync:()=>b.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),b.stopSync()),getSynchronizerStats:()=>({sends:c,receives:d}),...l});return b},e.createIndexes=rt,e.createMergeableStore=e=>{let t=1,n=Bt(),a=0;const o=me(),r=Be(),[l,i]=(e=>{let t=0,s=-1;const n=x(e,(e=>{const t=ft(e);return st(t/Ot)+st(t/Wt)+st(t/jt)+st(t/64)+st(t)}),(()=>ot(5))),a=e=>{const n=t,[a,o]=A(e)||""==e?[0,0]:[nt(r=e,0)*Pt+nt(r,1)*Nt+nt(r,2)*Ot+nt(r,3)*Wt+nt(r,4)*jt+64*nt(r,5)+nt(r,6),nt(r,7)*Wt+nt(r,8)*jt+64*nt(r,9)+nt(r,10)];var r;t=E(n,a,globalThis.HLC_TIME??Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,st((e=t)/Pt)+st(e/Nt)+st(e/Ot)+st(e/Wt)+st(e/jt)+st(e/64)+st(e)+st(o/Wt)+st(o/jt)+st(o/64)+st(o)+n;var e,o},a]})(e),c=zt(),d=e=>{const s=t;return t=0,e(),t=s,b},u=(e,t=0)=>{const a={},o={},[[r,l=s,c=0],d]=e,[u,h]=n,[f,b,w]=u;let C=t?c:w,L=l;ue(r,(([e,n=s,o=0],r)=>{const l=ke(f,r,Rt),[i,c,d]=l;let u=t?o:d,h=n;ue(e,((e,s)=>{const[n,o,l]=g(e,ke(i,s,Rt),fe(fe(a,r,ie),s,ie),t);u^=t?0:(o?pt(s,o):0)^pt(s,l),h=yt(h,n)})),u^=t?0:vt(c,n),It(l,u,n),C^=t?0:(d?pt(r,d):0)^pt(r,l[2]),L=yt(L,h)})),C^=t?0:vt(b,l),It(u,C,l);const[p]=g(d,h,o,t);return i(yt(L,p)),[a,o,1]},g=(e,t,n,a)=>{const[o,r=s,l=0]=e,[i,c,d]=t;let u=r,g=a?l:d;return ue(o,(([e,t,o=0],r)=>{const l=ke(i,r,(()=>[void 0,s,0])),[,c,d]=l;(!c||t>c)&&(It(l,a?o:ft(Jt(e??null)+":"+t),t),l[0]=e,n[r]=e,g^=a?0:pt(r,d)^pt(r,l[2]),u=yt(u,t))})),g^=a?0:vt(c,r),It(t,g,r),[u,d,t[2]]},h=()=>[St(n[0],(e=>St(e,(e=>St(e))))),St(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>xe(n[0][0],Lt),getMergeableTableDiff:e=>{const t=Tt(n[0][1]),s={};return Ee(n[0][0],((n,[a,o,r])=>ce(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Mt([a,o],(e=>Mt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return ue(e,((e,s)=>x(De(n[0][0],s),(([n,,a])=>a!=e?Ee(n,((e,[,,n])=>fe(t,s,ie)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=Tt(n[0][1]),s={};return ue(e,((e,a)=>Ee(De(n[0][0],a)?.[0],((n,[o,r,l])=>ce(e,n)?l!==e[n]?fe(s,a,ie)[n]=l:0:fe(t[0],a,Tt)[0][n]=Mt([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return ue(e,((e,s)=>x(De(n[0][0],s),(([n])=>ue(e,((e,a)=>x(De(n,a),(([n,,o])=>o!==e?Ee(n,((e,[,,n])=>fe(fe(t,s,ie),a,ie)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return ue(e,((e,s)=>ue(e,((e,n)=>x(De(t,s),(([t,o])=>x(De(t,n),(([t,r])=>Ee(t,((t,[l,i,c])=>c!==e[t]?fe(fe(a,s,(()=>Tt(o)))[0],n,(()=>Tt(r)))[0][t]=[l,i]:0)))))))))),Ct(a,s)},getMergeableValuesHashes:()=>xe(n[1][0],Lt),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=xe(t,wt,(([,,t],s)=>t==e?.[s]));return Ct(a,s)},setMergeableContent:e=>d((()=>(e=>z(e)&&2==N(e)&&mt(e[0],(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,We)),void 0,1)))),void 0,1)))),void 0,1)))&&mt(e[1],(e=>be(e,(e=>mt(e,We)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Bt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};Se(o,((t,s)=>x(De(e,s),(([e,n])=>{const a={};Se(t,((t,s)=>x(De(e,s),(([e,n])=>{const o={};Se(t,(t=>{x(De(e,t),(([e,s])=>o[t]=Ct(e,s)))})),a[s]=Ct(o,n)})))),l[s]=Ct(a,n)}))));const i={};return Se(r,(e=>x(De(s,e),(([t,s])=>i[e]=Ct(t,s))))),[Ct(l,t),Ct(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{Re(o),Re(r)}),((e,n,r,i)=>{Ue(ke(ke(o,e,me),n,Be),r),t&&u([[{[e]:[{[n]:[{[r]:[i,a?s:l()]}]}]}],[{}],1])}),((e,n)=>{Ue(r,e),t&&u([[{}],[{[e]:[n,a?s:l()]}],1])})),ge(c,((e,t)=>b[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=_t[P(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),le(b)},e.createMetrics=ct,e.createQueries=Vt,e.createRelationships=Dt,e.createStore=zt,e.defaultSorter=at,e.getUniqueId=ot},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),a=t(!0),o=t(0),r=t(t),l="type",i="default",c="Listener",d="Result",u="add",g="Has",h="Ids",f="Table",b=f+"s",w=f+h,C="Row",L=C+"Count",p=C+h,v="Sorted"+C+h,y="Cell",I=y+h,T="Value",R=T+"s",S=T+h,M=e=>s+e,m=(e,t)=>e.startsWith(t),V=(e,t)=>e.endsWith(t),D=Promise,E=Math.max,H=Math.min,k=isFinite,A=e=>null==e,x=(e,t,s)=>A(e)?s?.():t(e),J=e=>e==n||e==a,F=e=>t(e)==n,Q=e=>t(e)==r,z=e=>Array.isArray(e),P=(e,t,s)=>e.slice(t,s),N=e=>e.length,O=()=>{},W=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),_=(e,t)=>N(e)===N(t)&&j(e,((e,s)=>t[s]===e)),B=(e,t)=>j(e,((s,n)=>0==n||t(e[n-1],s)<=0)),U=(e,t)=>e.sort(t),$=(e,t)=>e.forEach(t),q=(e,t)=>e.map(t),G=e=>X(e,((e,t)=>e+t),0),K=e=>0==N(e),X=(e,t,s)=>e.reduce(t,s),Y=(e,...t)=>e.push(...t),Z=e=>e.pop(),ee=e=>e.shift(),te=Object,se=e=>te.getPrototypeOf(e),ne=te.entries,ae=te.isFrozen,oe=e=>!A(e)&&x(se(e),(e=>e==te.prototype||A(se(e))),(()=>!0)),re=te.keys,le=te.freeze,ie=(e=[])=>te.fromEntries(e),ce=(e,t)=>t in e,de=(e,t)=>(delete e[t],e),ue=(e,t)=>$(ne(e),(([e,s])=>t(s,e))),ge=(e,t)=>q(ne(e),(([e,s])=>t(s,e))),he=e=>oe(e)&&0==(e=>N(re(e)))(e),fe=(e,t,s)=>(ce(e,t)||(e[t]=s()),e[t]),be=(e,t,s,n=0)=>A(e)||!oe(e)||!n&&he(e)||ae(e)?(s?.(),!1):(ge(e,((s,n)=>{t(s,n)||de(e,n)})),!!n||!he(e)),we=e=>t=>X(Te(t),((t,s)=>t+e(s)),0),Ce=e=>e?.size??0,Le=we(Ce),pe=we(Le),ve=we(pe),ye=(e,t)=>e?.has(t)??!1,Ie=e=>A(e)||0==Ce(e),Te=e=>[...e?.values()??[]],Re=e=>e.clear(),Se=(e,t)=>e?.forEach(t),Me=(e,t)=>e?.delete(t),me=e=>new Map(e),Ve=e=>[...e?.keys()??[]],De=(e,t)=>e?.get(t),Ee=(e,t)=>Se(e,((e,s)=>t(s,e))),He=(e,t,s)=>A(s)?(Me(e,t),e):e?.set(t,s),ke=(e,t,s,n)=>(ye(e,t)?n?.(De(e,t)):He(e,t,s()),De(e,t)),Ae=(e,t,s,n=He)=>(ge(t,((t,n)=>s(e,n,t))),Ee(e,(s=>ce(t,s)?0:n(e,s))),e),xe=(e,t,s,n)=>{const a={};return Se(e,((e,o)=>{if(!s?.(e,o)){const s=t?t(e,o):e;!n?.(s)&&(a[o]=s)}})),a},Je=(e,t,s)=>xe(e,(e=>xe(e,t,s)),Ie,he),Fe=(e,t,s)=>xe(e,(e=>Je(e,t,s)),Ie,he),Qe=(e,t)=>{const s=me();return Se(e,((e,n)=>s.set(n,t?.(e)??e))),s},ze=e=>Qe(e,Qe),Pe=e=>Qe(e,ze),Ne=(e,t,s,n,a=0)=>x((s?ke:De)(e,t[a],a>N(t)-2?s:me),(o=>{if(a>N(t)-2)return n?.(o)&&He(e,t[a]),o;const r=Ne(o,t,s,n,a+1);return Ie(o)&&He(e,t[a]),r})),Oe=e=>{const s=t(e);return J(s)||s==o&&k(e)?s:void 0},We=e=>A(e)||!A(Oe(e)),je=(e,t,s,n,a)=>A(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),_e=(e,t,s)=>A(s)?e.delValue(t):e.setValue(t,s),Be=e=>new Set(z(e)||A(e)?e:[e]),Ue=(e,t)=>e?.add(t),$e=(e,t,s,n,a)=>{const o=e.hasRow,r=me(),l=me(),i=me(),c=me(),d=me(),u=me(),g=(t,s,...n)=>{const a=ke(u,t,Be);return $(n,(t=>Ue(a,t)&&s&&e.callListener(t))),n},h=(t,...s)=>x(De(u,t),(n=>{$(K(s)?Te(n):s,(t=>{e.delListener(t),Me(n,t)})),Ie(n)&&He(u,t)})),f=(e,s)=>{He(r,e,s),ye(l,e)||(He(l,e,t()),He(c,e,me()),He(d,e,me()),a(i))},b=e=>{He(r,e),He(l,e),He(c,e),He(d,e),h(e),a(i)};return[()=>e,()=>Ve(r),e=>Ee(l,e),e=>ye(l,e),e=>De(r,e),e=>De(l,e),(e,t)=>He(l,e,t),f,(t,n,a,r,l)=>{f(t,n);const i=me(),u=me(),b=De(c,t),w=De(d,t),C=t=>{const a=s=>e.getCell(n,t,s),c=De(b,t),d=o(n,t)?s(r(a,t)):void 0;if(c===d||z(c)&&z(d)&&_(c,d)||He(i,t,[c,d]),!A(l)){const e=De(w,t),s=o(n,t)?l(a,t):void 0;e!=s&&He(u,t,s)}},L=e=>{a((()=>{Se(i,(([,e],t)=>He(b,t,e))),Se(u,((e,t)=>He(w,t,e)))}),i,u,b,w,e),Re(i),Re(u)};Ee(b,C),e.hasTable(n)&&$(e.getRowIds(n),(e=>{ye(b,e)||C(e)})),L(!0),h(t),g(t,0,e.addRowListener(n,null,((e,t,s)=>C(s))),e.addTableListener(n,(()=>L())))},b,e=>n(e,i),()=>Ee(u,b),g,h]},qe=(e,t)=>F(e)?t=>t(e):e??(()=>t??s),Ge=(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}},Ke=/^\d+$/,Xe=()=>{const e=[];let t=0;return[n=>(n?ee(e):null)??s+t++,t=>{Ke.test(t)&&N(e)<1e3&&Y(e,t)}]},Ye=e=>{let t;const[n,a]=Xe(),o=me();return[(a,r,l,i=[],c=(()=>[]))=>{t??=e();const d=n(1);return He(o,d,[a,r,l,i,c]),Ue(Ne(r,l??[s],Be),d),d},(e,n,...a)=>$(((e,t=[s])=>{const n=[],a=(e,s)=>s==N(t)?Y(n,e):null===t[s]?Se(e,(e=>a(e,s+1))):$([t[s],null],(t=>a(De(e,t),s+1)));return a(e,0),n})(e,n),(e=>Se(e,(e=>De(o,e)[0](t,...n??[],...a))))),e=>x(De(o,e),(([,t,n])=>(Ne(t,n??[s],void 0,(t=>(Me(t,e),Ie(t)?1:0))),He(o,e),a(e),n))),e=>x(De(o,e),(([e,,s=[],n,a])=>{const o=(...r)=>{const l=N(r);l==N(s)?e(t,...r,...a(r)):A(s[l])?$(n[l]?.(...r)??[],(e=>o(...r,e))):o(...r,s[l])};o()}))]},Ze=Ge((e=>{let t,n,a,o=100,r=me(),l=me(),i=1;const c=me(),d=me(),[u,g,h]=Ye((()=>J)),f=me(),b=me(),w=[],C=[],L=(t,s)=>{i=0,e.transaction((()=>{const[n,a]=De(f,s);Se(n,((s,n)=>Se(s,((s,a)=>Se(s,((s,o)=>je(e,n,a,o,s[t]))))))),Se(a,((s,n)=>_e(e,n,s[t])))})),i=1},p=e=>{He(f,e),He(b,e),g(d,[e])},v=(e,t)=>$(((e,t)=>e.splice(0,t))(e,t??N(e)),p),y=()=>v(w,N(w)-o),I=()=>x(t,(()=>{Y(w,t),y(),v(C),t=void 0,a=1})),T=()=>{t=Z(w),a=1};let R,S;const M=(e=s)=>(A(t)&&(t=s+n++,He(f,t,[r,l]),H(t,e),r=me(),l=me(),a=1),t),m=()=>{K(w)||(((e,...t)=>{e.unshift(...t)})(C,M()),L(0,t),t=Z(w),a=1)},V=()=>{K(C)||(Y(w,t),t=ee(C),L(1,t),a=1)},D=()=>{a&&(g(c),a=0)},E=e=>{const t=M(e);return D(),t},H=(e,t)=>(k(e)&&De(b,e)!==t&&(He(b,e,t),g(d,[e])),J),k=e=>ye(f,e),J={setSize:e=>(o=e,y(),J),addCheckpoint:E,setCheckpoint:H,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...C]],forEachCheckpoint:e=>Ee(b,e),hasCheckpoint:k,getCheckpoint:e=>De(b,e),goBackward:()=>(m(),D(),J),goForward:()=>(V(),D(),J),goTo:e=>{const s=W(w,e)?m:W(C,e)?V:null;for(;!A(s)&&e!=t;)s();return D(),J},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(h(e),J),clear:()=>(v(w),v(C),A(t)||p(t),t=void 0,n=0,E(),J),clearForward:()=>(K(C)||(v(C),g(c)),J),destroy:()=>{e.delListener(R),e.delListener(S)},getListenerStats:()=>({checkpointIds:Le(c),checkpoint:Le(d)}),_registerListeners:()=>{R=e.addCellListener(null,null,null,((e,t,s,n,a,o)=>{if(i){I();const e=ke(r,t,me),l=ke(e,s,me),i=ke(l,n,(()=>[o,void 0]));i[1]=a,i[0]===a&&Ie(He(l,n))&&Ie(He(e,s))&&Ie(He(r,t))&&T(),D()}})),S=e.addValueListener(null,((e,t,s,n)=>{if(i){I();const e=ke(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&Ie(He(l,t))&&T(),D()}}))}};return le(J.clear())}),(e=>e._registerListeners())),et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=me(q(et,((e,t)=>[e,t]))),st=e=>et[63&e],nt=(e,t)=>De(tt,e[t])??0,at=(e,t)=>(e??0)<(t??0)?-1:1,ot=(e=16)=>X(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""),rt=Ge((e=>{const t=me(),n=me(),[a,o,r]=Ye((()=>p)),[l,i,c,d,u,g,h,,f,b,w,C]=$e(e,me,(e=>A(e)?s:z(e)?q(e,M):M(e)),a,o),L=(t,s,n)=>{const a=u(t);Se(n,((t,n)=>s(n,(s=>Se(t,(t=>s(t,(s=>e.forEachCell(a,t,s)))))))))},p={setIndexDefinition:(e,s,a,r,l,i=at)=>{const c=A(l)?void 0:([e],[t])=>l(e,t);return f(e,s,((s,a,l,d,u,f)=>{let b=0;const w=Be(),C=Be(),L=g(e);if(Se(a,(([e,t],s)=>{const n=Be(e),a=Be(t);Se(n,(e=>Me(a,e)?Me(n,e):0)),Se(n,(e=>{Ue(w,e),x(De(L,e),(t=>{Me(t,s),Ie(t)&&(He(L,e),b=1)}))})),Se(a,(e=>{Ue(w,e),ye(L,e)||(He(L,e,Be()),b=1),Ue(De(L,e),s),A(r)||Ue(C,e)}))})),s(),Ie(u)||(f?Ee(L,(e=>Ue(C,e))):Ee(l,(e=>x(De(d,e),(e=>Ue(C,e))))),Se(C,(e=>{const t=(t,s)=>i(De(u,t),De(u,s),e),s=[...De(L,e)];B(s,t)||(He(L,e,Be(U(s,t))),Ue(w,e))}))),(b||f)&&!A(c)){const t=[...L];B(t,c)||(h(e,me(U(t,c))),b=1)}b&&o(t,[e]),Se(w,(t=>o(n,[e,t])))}),qe(a),x(r,qe)),p},delIndexDefinition:e=>(b(e),p),getStore:l,getIndexIds:i,forEachIndex:e=>c(((t,s)=>e(t,(e=>L(t,e,s))))),forEachSlice:(e,t)=>L(e,t,g(e)),hasIndex:d,hasSlice:(e,t)=>ye(g(e),t),getTableId:u,getSliceIds:e=>Ve(g(e)),getSliceRowIds:(e,t)=>Te(De(g(e),t)),addIndexIdsListener:w,addSliceIdsListener:(e,s)=>a(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>a(s,n,[e,t]),delListener:e=>(r(e),p),destroy:C,getListenerStats:()=>({sliceIds:Le(t),sliceRowIds:pe(n)})};return le(p)})),lt=me([["avg",[(e,t)=>G(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:E(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>G(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),it=(e,t,s,n,a,o=!1)=>{if(Ie(s))return;const[r,l,i,c]=a;return o||=A(e),Se(n,(([s,n])=>{o||(e=A(s)?l?.(e,n,t++):A(n)?i?.(e,s,t--):c?.(e,n,s,t),o||=A(e))})),o?r(Te(s),Ce(s)):e},ct=Ge((e=>{const t=me(),[n,a,o]=Ye((()=>C)),[r,l,i,c,d,u,g,,h,f,b,w]=$e(e,O,(e=>isNaN(e)||A(e)||!0===e||!1===e||e===s?void 0:1*e),n,a),C={setMetricDefinition:(e,s,n,o,r,l,i)=>{const c=Q(n)?[n,r,l,i]:De(lt,n)??De(lt,"sum");return h(e,s,((s,n,o,r,l,i)=>{const d=u(e),h=Ce(r);i||=A(d),s();let f=it(d,h,r,n,c,i);k(f)||(f=void 0),f!=d&&(g(e,f),a(t,[e],f,d))}),qe(o,1)),C},delMetricDefinition:e=>(f(e),C),getStore:r,getMetricIds:l,forEachMetric:i,hasMetric:c,getTableId:d,getMetric:u,addMetricIdsListener:b,addMetricListener:(e,s)=>n(s,t,[e]),delListener:e=>(o(e),C),destroy:w,getListenerStats:()=>({metric:Le(t)})};return le(C)})),dt=me(),ut=me(),gt=(e,t,s,n,a,o,r,l={},i=[])=>{let c,d,u,g=0,h=0,f=0;ke(dt,i,(()=>0)),ke(ut,i,(()=>[]));const[b,w,C,L,p]=((e=1,t)=>e>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!he(e)||!he(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!he(e)||!he(t),t.setContent]:(e=>{throw Error("Store type not supported by this Persister")})())(r,e),v=t=>{(b&&z(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},y=async e=>(2!=g&&(g=1,h++,await S((async()=>{try{v(await t())}catch(t){o?.(t),e&&p(e)}g=0}))),M),I=()=>(d&&(a(d),d=void 0),M),T=async e=>(1!=g&&(g=2,f++,await S((async()=>{try{await s(w,e)}catch(e){o?.(e)}g=0}))),M),R=()=>(x(u,e.delListener),u=void 0,M),S=async(...e)=>(Y(De(ut,i),...e),await(async()=>{if(!De(dt,i)){for(He(dt,i,1);!A(c=ee(De(ut,i)));)try{await c()}catch(e){o?.(e)}He(dt,i,0)}})(),M),M={load:y,startAutoLoad:async e=>(await I().load(e),d=n((async(e,t)=>{t||e?2!=g&&(g=1,h++,v(t??e),g=0):await y()})),M),stopAutoLoad:I,isAutoLoading:()=>!A(d),save:T,startAutoSave:async()=>(await R().save(),u=e.addDidFinishTransactionListener((()=>{const e=C();L(e)&&T(e)})),M),stopAutoSave:R,isAutoSaving:()=>!A(u),schedule:S,getStore:()=>e,destroy:()=>I().stopAutoSave(),getStats:()=>({loads:h,saves:f}),...l};return le(M)},ht=new globalThis.TextEncoder,ft=e=>{let t=2166136261;return $(ht.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},bt=([e,t,s])=>[e,t,s],wt=([e,t])=>Ct(e,t),Ct=(e,t)=>t?[e,t]:[e],Lt=e=>e[2],pt=(e,t)=>ft(e+":"+t),vt=(e,t)=>t>e?(e?ft(e):0)^ft(t):0,yt=(e,t)=>((e??"")>(t??"")?e:t)??"",It=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},Tt=(e=s)=>Ct(ie(),e),Rt=(e=s)=>[me(),e,0],St=([e,t,s],n=bt)=>[xe(e,n),t,s],Mt=([e,t],s=wt)=>Ct(xe(e,s),t),mt=(e,s)=>z(e)&&3==N(e)&&F(e[1])&&t(e[2])==o&&k(e[2])&&s(e[0]),Vt=Ge((e=>{const t=e.createStore,n=t(),a=t(),o=me(),{addListener:r,callListeners:l,delListener:i}=a,[g,h,b,w,T,,,R,,S,M,m,V,D]=$e(e,(()=>!0),O,r,l),E=(e,t,...s)=>$(s,(s=>Ue(ke(ke(o,t,me),e,Be),s))),H=e=>{x(De(o,e),(e=>{Ee(e,((e,t)=>Se(t,(t=>e.delListener(t))))),Re(e)})),$([a,n],(t=>t.delTable(e)))},k=(e,t,s)=>E(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),J={setQueryDefinition:(t,o,r)=>{R(t,o),H(t);const l=[],i=[[null,[o,null,null,[],me()]]],c=[],d=[],u=[];r({select:(e,t)=>{const n=Q(e)?[N(l)+s,e]:[A(t)?e:t,s=>s(e,t)];return Y(l,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=A(s)||Q(t)?null:t,a=A(n)?t:s,o=[e,[e,n,Q(a)?a:e=>e(a),[],me()]];return Y(i,o),{as:e=>o[0]=e}},where:(e,t,s)=>Y(c,Q(e)?e:A(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]:De(lt,t)??[(e,t)=>t]]];return Y(d,o),{as:e=>o[0]=e}},having:(e,t)=>Y(u,Q(e)?e:s=>s(e)===t)});const g=me(l);if(Ie(g))return J;const h=me(i);Ee(h,((e,[,t])=>x(De(h,t),(({3:t})=>A(e)?0:Y(t,e)))));const f=me(d);let b=n;if(Ie(f)&&K(u))b=a;else{k(t,b,a);const e=me();Ee(f,((t,[s,n])=>Ue(ke(e,s,Be),[t,n])));const s=Be();Ee(g,(t=>ye(e,t)?0:Ue(s,t)));const n=me(),o=(s,n,o,r)=>x(s,(([l,i,c,d])=>{Ee(n,((t,[s])=>{const n=ke(l,t,me),a=De(n,o),i=r?void 0:s;if(a!==i){const s=Be([[a,i]]),r=Ce(n);He(n,o,i),Se(De(e,t),(([e,t])=>{const a=it(d[e],r,n,s,t);d[e]=A(Oe(a))?null:a}))}})),Ie(i)||!j(u,(e=>e((e=>d[e]))))?a.delRow(t,c):A(c)?s[2]=a.addRow(t,d):a.setRow(t,c,d)}));E(b,t,b.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=me(),g=b.hasRow(t,l);let h=!g;Se(s,(e=>{const[s,n,a]=i(t,l,e);Y(c,n),Y(d,a),h||=s})),Ee(e,(e=>{const[s,,n]=i(t,l,e);(h||s)&&He(u,e,[n])})),h&&o(Ne(n,c,void 0,(([,e])=>(Me(e,l),Ie(e)))),u,l,1),g&&o(Ne(n,d,(()=>{const e={};return Se(s,(s=>e[s]=b.getCell(t,l,s))),[me(),Be(),void 0,e]}),(([,e])=>{Ue(e,l)})),u,l)})))}k(t,e,b);const w=(s,n,a,r)=>{const l=t=>e.getCell(n,a,t);$(r,(n=>{const[a,,o,r,i]=De(h,n),c=o?.(l,s),[d,u]=De(i,s)??[];c!=d&&(A(u)||D(t,u),He(i,s,A(c)?null:[c,...V(t,1,e.addRowListener(a,c,(()=>w(s,a,c,r))))]))})),(s=>{const n=(t,n)=>e.getCell(...A(n)?[o,s,t]:t===o?[o,s,n]:[De(h,t)?.[0],De(De(h,t)?.[4],s)?.[0],n]);b.transaction((()=>j(c,(e=>e(n)))?Ee(g,((e,a)=>je(b,t,s,e,a(n,s)))):b.delRow(t,s)))})(s)},{3:C}=De(h,null);return b.transaction((()=>V(t,1,e.addRowListener(o,null,((s,n,a)=>{e.hasRow(o,a)?w(a,o,a,C):(b.delRow(t,a),Se(h,(({4:e})=>x(De(e,a),(([,s])=>{D(t,s),He(e,a)})))))}))))),J},delQueryDefinition:e=>(H(e),S(e),J),getStore:g,getQueryIds:h,forEachQuery:b,hasQuery:w,getTableId:T,addQueryIdsListener:e=>M((()=>e(J))),delListener:e=>(i(e),J),destroy:m,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=a.getListenerStats();return n}};return ge({[f]:[1,1],[f+I]:[0,1],[L]:[0,1],[p]:[0,1],[v]:[0,5],[C]:[1,2],[I]:[0,2],[y]:[1,3]},(([e,t],s)=>{$(e?["get","has","forEach"]:["get"],(e=>J[e+d+s]=(...t)=>a[e+s](...t))),J[u+d+s+c]=(...e)=>a[u+s+c](...P(e,0,t),((s,...n)=>e[t](J,...n)),!0)})),le(J)})),Dt=Ge((e=>{const t=me(),n=me(),a=me(),o=me(),[r,l,i]=Ye((()=>I)),[c,d,u,g,h,f,,,b,w,C,L]=$e(e,(()=>[me(),me(),me(),me()]),(e=>A(e)?void 0:e+s),r,l),p=(e,t,s)=>x(f(e),(([n,,a])=>{if(!ye(a,t)){const o=Be();if(h(e)!=y(e))Ue(o,t);else{let e=t;for(;!A(e)&&!ye(o,e);)Ue(o,e),e=De(n,e)}if(s)return o;He(a,t,o)}return De(a,t)})),v=(e,t)=>x(f(e),(([,,e])=>He(e,t))),y=e=>De(t,e),I={setRelationshipDefinition:(e,s,r,i)=>(He(t,e,r),b(e,s,((t,s)=>{const r=Be(),i=Be(),c=Be(),[d,u]=f(e);Se(s,(([t,s],n)=>{A(t)||(Ue(i,t),x(De(u,t),(e=>{Me(e,n),Ie(e)&&He(u,t)}))),A(s)||(Ue(i,s),ye(u,s)||He(u,s,Be()),Ue(De(u,s),n)),Ue(r,n),He(d,n,s),Ee(De(o,e),(t=>{ye(p(e,t),n)&&Ue(c,t)}))})),t(),Se(r,(t=>l(n,[e,t]))),Se(i,(t=>l(a,[e,t]))),Se(c,(t=>{v(e,t),l(o,[e,t])}))}),qe(i)),I),delRelationshipDefinition:e=>(He(t,e),w(e),I),getStore:c,getRelationshipIds:d,forEachRelationship:t=>u((s=>t(s,(t=>e.forEachRow(h(s),t))))),hasRelationship:g,getLocalTableId:h,getRemoteTableId:y,getRemoteRowId:(e,t)=>De(f(e)?.[0],t),getLocalRowIds:(e,t)=>Te(De(f(e)?.[1],t)),getLinkedRowIds:(e,t)=>A(f(e))?[t]:Te(p(e,t,!0)),addRelationshipIdsListener:C,addRemoteRowIdListener:(e,t,s)=>r(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>r(s,a,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),r(s,o,[e,t])),delListener:e=>(v(...i(e)??[]),I),destroy:L,getListenerStats:()=>({remoteRowId:pe(n),localRowIds:pe(a),linkedRowIds:pe(o)})};return le(I)})),Et=e=>[e,e],Ht=(e,t=Le)=>t(e[0])+t(e[1]),kt=()=>[me(),me()],At=e=>[...e],xt=([e,t])=>e===t,Jt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?te.fromEntries([...t]):t)),Ft=JSON.parse,Qt=(e,t,s)=>He(e,t,De(e,t)==-s?void 0:s),zt=()=>{let e,t,s=!1,n=!1,a=0,r=[];const d=me(),h=me(),v=me(),m=me(),V=me(),D=me(),E=me(),H=me(),k=me(),F=me(),z=me(),N=me(),O=me(),j=me(),B=Be(),G=me(),K=me(),X=me(),Z=me(),ee=kt(),te=kt(),se=kt(),ne=kt(),ae=kt(),oe=kt(),re=kt(),ie=kt(),ue=kt(),fe=kt(),we=kt(),Te=kt(),Ne=kt(),We=kt(),$e=kt(),qe=kt(),Ge=kt(),Ke=kt(),Ze=kt(),et=kt(),tt=kt(),st=kt(),nt=me(),ot=kt(),[rt,lt,it,ct]=Ye((()=>zs)),dt=e=>{if(!be(e,((e,t)=>W([l,i],t))))return!1;const t=e[l];return!(!J(t)&&t!=o||(Oe(e[i])!=t&&de(e,i),0))},ut=(t,s)=>(!e||ye(z,s)||Kt(s))&&be(t,((e,t)=>gt(s,t,e)),(()=>Kt(s))),gt=(e,t,s,n)=>be(n?s:wt(s,e,t),((n,a)=>x(ht(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Kt(e,t))),ht=(t,s,n,a)=>e?x(De(De(z,t),n),(e=>Oe(a)!=e[l]?Kt(t,s,n,a,e[i]):a),(()=>Kt(t,s,n,a))):A(Oe(a))?Kt(t,s,n,a):a,ft=(e,t)=>be(t?e:Ct(e),((t,s)=>x(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),bt=(e,s)=>t?x(De(O,e),(t=>Oe(s)!=t[l]?Xt(e,s,t[i]):s),(()=>Xt(e,s))):A(Oe(s))?Xt(e,s):s,wt=(e,t,s)=>(x(De(N,t),(([n,a])=>{Se(n,((t,s)=>{ce(e,s)||(e[s]=t)})),Se(a,(n=>{ce(e,n)||Kt(t,s,n)}))})),e),Ct=e=>(t&&(Se(j,((t,s)=>{ce(e,s)||(e[s]=t)})),Se(B,(t=>{ce(e,t)||Xt(t)}))),e),Lt=e=>Ae(z,e,((e,t,s)=>{const n=me(),a=Be();Ae(ke(z,t,me),s,((e,t,s)=>{He(e,t,s),x(s[i],(e=>He(n,t,e)),(()=>Ue(a,t)))})),He(N,t,[n,a])}),((e,t)=>{He(z,t),He(N,t)})),pt=e=>Ae(O,e,((e,t,s)=>{He(O,t,s),x(s[i],(e=>He(j,t,e)),(()=>Ue(B,t)))}),((e,t)=>{He(O,t),He(j,t),Me(B,t)})),vt=e=>he(e)?Ds():Rs(e),yt=e=>Ae(X,e,((e,t,s)=>It(t,s)),((e,t)=>Nt(t))),It=(e,t)=>Ae(ke(X,e,(()=>(_t(e,1),He(G,e,Xe()),He(K,e,me()),me()))),t,((t,s,n)=>Tt(e,t,s,n)),((t,s)=>Ot(e,t,s))),Tt=(e,t,s,n,a)=>Ae(ke(t,s,(()=>(Bt(e,s,1),me()))),n,((t,n,a)=>Rt(e,s,t,n,a)),((n,o)=>Wt(e,t,s,n,o,a))),Rt=(e,t,s,n,a)=>{ye(s,n)||Ut(e,t,n,1);const o=De(s,n);a!==o&&($t(e,t,n,o,a),He(s,n,a))},St=(e,t,s,n,a)=>x(De(t,s),(t=>Rt(e,s,t,n,a)),(()=>Tt(e,t,s,wt({[n]:a},e,s)))),Mt=e=>he(e)?ks():Ss(e),mt=e=>Ae(Z,e,((e,t,s)=>Vt(t,s)),((e,t)=>jt(t))),Vt=(e,t)=>{ye(Z,e)||qt(e,1);const s=De(Z,e);t!==s&&(Gt(e,s,t),He(Z,e,t))},Dt=(e,t)=>{const[s]=De(G,e),n=s(t);return ye(De(X,e),n)?Dt(e,t):n},Pt=e=>De(X,e)??It(e,{}),Nt=e=>It(e,{}),Ot=(e,t,s)=>{const[,n]=De(G,e);n(s),Tt(e,t,s,{},!0)},Wt=(e,t,s,n,a,o)=>{const r=De(De(N,e)?.[0],a);if(!A(r)&&!o)return Rt(e,s,n,a,r);const l=t=>{$t(e,s,t,De(n,t)),Ut(e,s,t,-1),He(n,t)};A(r)?l(a):Ee(n,l),Ie(n)&&(Bt(e,s,-1),Ie(He(t,s))&&(_t(e,-1),He(X,e),He(G,e),He(K,e)))},jt=e=>{const t=De(j,e);if(!A(t))return Vt(e,t);Gt(e,De(Z,e)),qt(e,-1),He(Z,e)},_t=(e,t)=>Qt(d,e,t),Bt=(e,t,s)=>Qt(ke(m,e,me),t,s)&&He(v,e,ke(v,e,(()=>0))+s),Ut=(e,t,s,n)=>{const a=De(K,e),o=De(a,s)??0;(0==o&&1==n||1==o&&-1==n)&&Qt(ke(h,e,me),s,n),He(a,s,o!=-n?o+n:null),Qt(ke(ke(V,e,me),t,me),s,n)},$t=(e,t,s,n,a)=>{ke(ke(ke(D,e,me),t,me),s,(()=>[n,0]))[1]=a,r[3]?.(e,t,s,a)},qt=(e,t)=>Qt(E,e,t),Gt=(e,t,s)=>{ke(H,e,(()=>[t,0]))[1]=s,r[4]?.(e,s)},Kt=(e,t,s,n,a)=>(Y(ke(ke(ke(k,e,me),t,me),s,(()=>[])),n),a),Xt=(e,t,s)=>(Y(ke(F,e,(()=>[])),t),s),Yt=(e,t,s)=>x(De(De(De(D,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(hs(e,t,s))])),Zt=e=>x(De(H,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Et(ws(e))])),es=e=>Ie(k)||Ie(qe[e])?0:Se(e?Pe(k):k,((t,s)=>Se(t,((t,n)=>Se(t,((t,a)=>lt(qe[e],[s,n,a],t))))))),ts=e=>Ie(F)||Ie(Ge[e])?0:Se(e?Qe(F):F,((t,s)=>lt(Ge[e],[s],t))),ss=(e,t,s,n)=>{if(!Ie(e))return lt(t,n,(()=>xe(e))),Ee(e,((e,t)=>lt(s,[...n??[],e],1==t))),1},ns=e=>{const t=Cs();t!=s&&lt(ee[e],void 0,t);const n=Ie(fe[e]),a=Ie(Ne[e])&&Ie(We[e])&&Ie(ue[e])&&Ie(we[e])&&Ie(oe[e])&&Ie(re[e])&&Ie(ie[e])&&n&&Ie(se[e])&&Ie(ne[e]),o=Ie($e[e])&&Ie(Te[e])&&Ie(ae[e])&&Ie(te[e]);if(!a||!o){const t=e?[Qe(d),ze(h),Qe(v),ze(m),Pe(V),Pe(D)]:[d,h,v,m,V,D];if(!a){ss(t[0],se[e],ne[e]),Se(t[1],((t,s)=>ss(t,oe[e],re[e],[s]))),Se(t[2],((t,s)=>{0!=t&&lt(ie[e],[s],cs(s))}));const s=Be();Se(t[3],((t,a)=>{ss(t,ue[e],we[e],[a])&&!n&&(lt(fe[e],[a,null]),Ue(s,a))})),n||Se(t[5],((t,n)=>{if(!ye(s,n)){const s=Be();Se(t,(e=>Se(e,(([t,n],a)=>n!==t?Ue(s,a):Me(e,a))))),Se(s,(t=>lt(fe[e],[n,t])))}})),Se(t[4],((t,s)=>Se(t,((t,n)=>ss(t,Ne[e],We[e],[s,n])))))}if(!o){let s;Se(t[5],((t,n)=>{let a;Se(t,((t,o)=>{let r;Se(t,(([t,l],i)=>{l!==t&&(lt($e[e],[n,o,i],l,t,Yt),s=a=r=1)})),r&&lt(Te[e],[n,o],Yt)})),a&&lt(ae[e],[n],Yt)})),s&&lt(te[e],void 0,Yt)}}},as=e=>{const t=Is();t!=n&&lt(Ke[e],void 0,t);const s=Ie(et[e])&&Ie(tt[e]),a=Ie(st[e])&&Ie(Ze[e]);if(!s||!a){const t=e?[Qe(E),Qe(H)]:[E,H];if(s||ss(t[0],et[e],tt[e]),!a){let s;Se(t[1],(([t,n],a)=>{n!==t&&(lt(st[e],[a],n,t,Zt),s=1)})),s&&lt(Ze[e],void 0,Zt)}}},os=(e,...t)=>(Js((()=>e(...q(t,M)))),zs),rs=()=>Fe(X),ls=()=>Ve(X),is=e=>Ve(De(K,M(e))),cs=e=>Ce(De(X,M(e))),ds=e=>Ve(De(X,M(e))),us=(e,t,s,n=0,a)=>{return q(P(U((o=De(X,M(e)),r=(e,s)=>[A(t)?s:De(e,M(t)),s],q([...o?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>at(e,t)*(s?-1:1))),n,A(a)?a:n+a),(([,e])=>e));var o,r},gs=(e,t)=>Ve(De(De(X,M(e)),M(t))),hs=(e,t,s)=>De(De(De(X,M(e)),M(t)),M(s)),fs=()=>xe(Z),bs=()=>Ve(Z),ws=e=>De(Z,M(e)),Cs=()=>!Ie(X),Ls=e=>ye(X,M(e)),ps=(e,t)=>ye(De(K,M(e)),M(t)),vs=(e,t)=>ye(De(X,M(e)),M(t)),ys=(e,t,s)=>ye(De(De(X,M(e)),M(t)),M(s)),Is=()=>!Ie(Z),Ts=e=>ye(Z,M(e)),Rs=e=>os((()=>(e=>be(e,ut,Kt))(e)?yt(e):0)),Ss=e=>os((()=>ft(e)?mt(e):0)),Ms=e=>{try{vt(Ft(e))}catch{}return zs},ms=t=>os((()=>{if((e=be(t,(e=>be(e,dt))))&&(Lt(t),!Ie(X))){const e=rs();Ds(),Rs(e)}})),Vs=e=>os((()=>{if(t=(e=>be(e,dt))(e)){const s=fs();xs(),ks(),t=!0,pt(e),Ss(s)}})),Ds=()=>os((()=>yt({}))),Es=e=>os((e=>ye(X,e)?Nt(e):0),e),Hs=(e,t)=>os(((e,t)=>x(De(X,e),(s=>ye(s,t)?Ot(e,s,t):0))),e,t),ks=()=>os((()=>mt({}))),As=()=>os((()=>{Lt({}),e=!1})),xs=()=>os((()=>{pt({}),t=!1})),Js=(e,t)=>{if(-1!=a){Fs();const s=e();return Qs(t),s}},Fs=()=>(-1!=a&&a++,1==a&&(r[0]?.(),lt(nt)),zs),Qs=e=>(a>0&&(a--,0==a&&(a=1,es(1),Ie(D)||ns(1),ts(1),Ie(H)||as(1),e?.(zs)&&(Se(D,((e,t)=>Se(e,((e,s)=>Se(e,(([e],n)=>je(zs,t,s,n,e))))))),Re(D),Se(H,(([e],t)=>_e(zs,t,e))),Re(H)),lt(ot[0],void 0),a=-1,es(0),Ie(D)||ns(0),ts(0),Ie(H)||as(0),r[1]?.(),lt(ot[1],void 0),r[2]?.(),a=0,s=Cs(),n=Is(),$([d,h,v,m,V,D,k,E,H,F],Re))),zs),zs={getContent:()=>[rs(),fs()],getTables:rs,getTableIds:ls,getTable:e=>Je(De(X,M(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>xe(De(De(X,M(e)),M(t))),getCellIds:gs,getCell:hs,getValues:fs,getValueIds:bs,getValue:ws,hasTables:Cs,hasTable:Ls,hasTableCell:ps,hasRow:vs,hasCell:ys,hasValues:Is,hasValue:Ts,getTablesJson:()=>Jt(X),getValuesJson:()=>Jt(Z),getJson:()=>Jt([X,Z]),getTablesSchemaJson:()=>Jt(z),getValuesSchemaJson:()=>Jt(O),getSchemaJson:()=>Jt([z,O]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>os((()=>{(he(e)?Ds:Rs)(e),(he(t)?ks:Ss)(t)})),setTables:Rs,setTable:(e,t)=>os((e=>ut(t,e)?It(e,t):0),e),setRow:(e,t,s)=>os(((e,t)=>gt(e,t,s)?Tt(e,Pt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let n;return gt(e,n,t)&&(e=M(e),Tt(e,Pt(e),n=Dt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>os(((e,t)=>{if(gt(e,t,s,1)){const n=Pt(e);ge(s,((s,a)=>St(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>os(((e,t,s)=>x(ht(e,t,s,Q(n)?n(hs(e,t,s)):n),(n=>St(e,Pt(e),t,s,n)))),e,t,s),setValues:Ss,setPartialValues:e=>os((()=>ft(e,1)?ge(e,((e,t)=>Vt(t,e))):0)),setValue:(e,t)=>os((e=>x(bt(e,Q(t)?t(ws(e)):t),(t=>Vt(e,t)))),e),applyChanges:e=>os((()=>{ge(e[0],((e,t)=>A(e)?Es(t):ge(e,((e,s)=>A(e)?Hs(t,s):ge(e,((e,n)=>je(zs,t,s,n,e))))))),ge(e[1],((e,t)=>_e(zs,t,e)))})),setTablesJson:Ms,setValuesJson:e=>{try{Mt(Ft(e))}catch{}return zs},setJson:e=>os((()=>{try{const[t,s]=Ft(e);vt(t),Mt(s)}catch{Ms(e)}})),setTablesSchema:ms,setValuesSchema:Vs,setSchema:(e,t)=>os((()=>{ms(e),Vs(t)})),delTables:Ds,delTable:Es,delRow:Hs,delCell:(e,t,s,n)=>os(((e,t,s)=>x(De(X,e),(a=>x(De(a,t),(o=>ye(o,s)?Wt(e,a,t,o,s,n):0))))),e,t,s),delValues:ks,delValue:e=>os((e=>ye(Z,e)?jt(e):0),e),delTablesSchema:As,delValuesSchema:xs,delSchema:()=>os((()=>{As(),xs()})),transaction:Js,startTransaction:Fs,getTransactionChanges:()=>[xe(D,((e,t)=>-1===De(d,t)?void 0:xe(e,((e,s)=>-1===De(De(m,t),s)?void 0:xe(e,(([,e])=>e),(e=>xt(e)))),Ie,he)),Ie,he),xe(H,(([,e])=>e),(e=>xt(e))),1],getTransactionLog:()=>[!Ie(D),!Ie(H),Fe(D,At,xt),Fe(k),xe(H,At,xt),xe(F),xe(d),Je(m),Fe(V),xe(E)],finishTransaction:Qs,forEachTable:e=>Se(X,((t,s)=>e(s,(e=>Se(t,((t,s)=>e(s,(e=>Ee(t,e))))))))),forEachTableCell:(e,t)=>Ee(De(K,M(e)),t),forEachRow:(e,t)=>Se(De(X,M(e)),((e,s)=>t(s,(t=>Ee(e,t))))),forEachCell:(e,t,s)=>Ee(De(De(X,M(e)),M(t)),s),forEachValue:e=>Ee(Z,e),addSortedRowIdsListener:(e,t,s,n,a,o,r)=>{let l=us(e,t,s,n,a);return rt((()=>{const r=us(e,t,s,n,a);_(r,l)||(l=r,o(zs,e,t,s,n,a,l))}),fe[r?1:0],[e,t],[ls])},addStartTransactionListener:e=>rt(e,nt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(ct(e),zs),delListener:e=>(it(e),zs),getListenerStats:()=>({hasTables:Ht(ee),tables:Ht(te),tableIds:Ht(se),hasTable:Ht(ne),table:Ht(ae),tableCellIds:Ht(oe),hasTableCell:Ht(re,pe),rowCount:Ht(ie),rowIds:Ht(ue),sortedRowIds:Ht(fe),hasRow:Ht(we,pe),row:Ht(Te,pe),cellIds:Ht(Ne,pe),hasCell:Ht(We,ve),cell:Ht($e,ve),invalidCell:Ht(qe,ve),hasValues:Ht(Ke),values:Ht(Ze),valueIds:Ht(et),hasValue:Ht(tt),value:Ht(st),invalidValue:Ht(Ge),transaction:Le(nt)+Ht(ot)}),isMergeable:()=>!1,createStore:zt,addListener:rt,callListeners:lt,setInternalListeners:(e,t,s,n,a)=>r=[e,t,s,n,a]};return ge({[g+b]:[0,ee,[],()=>[Cs()]],[b]:[0,te],[w]:[0,se],[g+f]:[1,ne,[ls],e=>[Ls(...e)]],[f]:[1,ae,[ls]],[f+I]:[1,oe,[ls]],[g+f+y]:[2,re,[ls,is],e=>[ps(...e)]],[L]:[1,ie,[ls]],[p]:[1,ue,[ls]],[g+C]:[2,we,[ls,ds],e=>[vs(...e)]],[C]:[2,Te,[ls,ds]],[I]:[2,Ne,[ls,ds]],[g+y]:[3,We,[ls,ds,gs],e=>[ys(...e)]],[y]:[3,$e,[ls,ds,gs],e=>Et(hs(...e))],InvalidCell:[3,qe],[g+R]:[0,Ke,[],()=>[Is()]],[R]:[0,Ze],[S]:[0,et],[g+T]:[1,tt,[bs],e=>[Ts(...e)]],[T]:[1,st,[bs],e=>Et(ws(e[0]))],InvalidValue:[1,Ge]},(([e,t,s,n],a)=>{zs[u+a+c]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?P(a,0,e):void 0,s,n)})),le(zs)},Pt=2**36,Nt=2**30,Ot=2**24,Wt=2**18,jt=4096,_t={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=(e=s)=>[Rt(e),Rt(e)];e.createCheckpoints=Ze,e.createCustomPersister=gt,e.createCustomSynchronizer=(e,t,n,a,o,r,l={})=>{let i,c=0,d=0;const u=me();n(((s,n,a,o)=>{d++,0==a?x(De(u,n),(([e,t])=>A(e)||e==s?t(o,s):0)):2==a&&b.isAutoLoading()?f(s,o).then((e=>{i?.(void 0,e)})):3==a&&b.isAutoLoading()?i?.(void 0,o):x(1==a&&b.isAutoSaving()?e.getMergeableContentHashes():4==a?e.getMergeableTableDiff(o):5==a?e.getMergeableRowDiff(o):6==a?e.getMergeableCellDiff(o):7==a?e.getMergeableValueDiff(o):void 0,(e=>{c++,t(s,n,0,e)}))}));const g=async(e,n,a=s)=>new D(((s,r)=>{const l=ot(),i=setTimeout((()=>{Me(u,l),r(`No response from ${e??"anyone"} to '${n}'`)}),1e3*o);He(u,l,[e,(e,t)=>{clearTimeout(i),Me(u,l),s([e,t])}]),c++,t(e,l,n,a)})),h=(e,[t,s])=>{ue(t,(([t,s],n)=>{const a=fe(e[0],n,Tt);ue(t,(([e,t],s)=>{const n=fe(a[0],s,Tt);ue(e,(([e,t],s)=>n[0][s]=Ct(e,t))),n[1]=yt(n[1],t)})),a[1]=yt(a[1],s)})),e[1]=yt(e[1],s)},f=async(t=null,s)=>{A(s)&&([s,t]=await g(t,1));const[n,a]=s,[o,r]=e.getMergeableContentHashes();let l=Tt();if(o!=n){const[s,n]=(await g(t,4,e.getMergeableTableHashes()))[0];if(l=s,!he(n)){const[s,a]=(await g(t,5,e.getMergeableRowHashes(n)))[0];if(h(l,s),!he(a)){const s=(await g(t,6,e.getMergeableCellHashes(a)))[0];h(l,s)}}}return[l,r==a?Tt():(await g(t,7,e.getMergeableValueHashes()))[0],1]},b=gt(e,(async()=>{const e=await f();return he(e[0][0])&&he(e[1][0])?void 0:e}),(async(s,n)=>{c++,n?t(null,null,3,n):t(null,null,2,e.getMergeableContentHashes())}),(e=>i=e),(()=>i=void 0),r,2,{startSync:async e=>await(await b.startAutoLoad(e)).startAutoSave(),stopSync:()=>b.stopAutoLoad().stopAutoSave(),destroy:()=>(a(),b.stopSync()),getSynchronizerStats:()=>({sends:c,receives:d}),...l});return b},e.createIndexes=rt,e.createMergeableStore=e=>{let t=1,n=Bt(),a=0;const o=me(),r=Be(),[l,i]=(e=>{let t=0,s=-1;const n=x(e,(e=>{const t=ft(e);return st(t/Ot)+st(t/Wt)+st(t/jt)+st(t/64)+st(t)}),(()=>ot(5))),a=e=>{const n=t,[a,o]=A(e)||""==e?[0,0]:[nt(r=e,0)*Pt+nt(r,1)*Nt+nt(r,2)*Ot+nt(r,3)*Wt+nt(r,4)*jt+64*nt(r,5)+nt(r,6),nt(r,7)*Wt+nt(r,8)*jt+64*nt(r,9)+nt(r,10)];var r;t=E(n,a,globalThis.HLC_TIME??Date.now()),s=t==n?t==a?E(s,o):s:t==a?o:-1};return[()=>{return a(),o=++s,st((e=t)/Pt)+st(e/Nt)+st(e/Ot)+st(e/Wt)+st(e/jt)+st(e/64)+st(e)+st(o/Wt)+st(o/jt)+st(o/64)+st(o)+n;var e,o},a]})(e),c=zt(),d=e=>{const s=t;return t=0,e(),t=s,b},u=(e,t=0)=>{const a={},o={},[[r,l=s,c=0],d]=e,[u,h]=n,[f,b,w]=u;let C=t?c:w,L=l;ue(r,(([e,n=s,o=0],r)=>{const l=ke(f,r,Rt),[i,c,d]=l;let u=t?o:d,h=n;ue(e,((e,s)=>{const[n,o,l]=g(e,ke(i,s,Rt),fe(fe(a,r,ie),s,ie),t);u^=t?0:(o?pt(s,o):0)^pt(s,l),h=yt(h,n)})),u^=t?0:vt(c,n),It(l,u,n),C^=t?0:(d?pt(r,d):0)^pt(r,l[2]),L=yt(L,h)})),C^=t?0:vt(b,l),It(u,C,l);const[p]=g(d,h,o,t);return i(yt(L,p)),[a,o,1]},g=(e,t,n,a)=>{const[o,r=s,l=0]=e,[i,c,d]=t;let u=r,g=a?l:d;return ue(o,(([e,t,o=0],r)=>{const l=ke(i,r,(()=>[void 0,s,0])),[,c,d]=l;(!c||t>c)&&(It(l,a?o:ft(Jt(e??null)+":"+t),t),l[0]=e,n[r]=e,g^=a?0:pt(r,d)^pt(r,l[2]),u=yt(u,t))})),g^=a?0:vt(c,r),It(t,g,r),[u,d,t[2]]},h=()=>[St(n[0],(e=>St(e,(e=>St(e))))),St(n[1])],f=e=>d((()=>c.applyChanges(u(e)))),b={getMergeableContent:h,getMergeableContentHashes:()=>[n[0][2],n[1][2]],getMergeableTableHashes:()=>xe(n[0][0],Lt),getMergeableTableDiff:e=>{const t=Tt(n[0][1]),s={};return Ee(n[0][0],((n,[a,o,r])=>ce(e,n)?r!=e[n]?s[n]=r:0:t[0][n]=Mt([a,o],(e=>Mt(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return ue(e,((e,s)=>x(De(n[0][0],s),(([n,,a])=>a!=e?Ee(n,((e,[,,n])=>fe(t,s,ie)[e]=n)):0)))),t},getMergeableRowDiff:e=>{const t=Tt(n[0][1]),s={};return ue(e,((e,a)=>Ee(De(n[0][0],a)?.[0],((n,[o,r,l])=>ce(e,n)?l!==e[n]?fe(s,a,ie)[n]=l:0:fe(t[0],a,Tt)[0][n]=Mt([o,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return ue(e,((e,s)=>x(De(n[0][0],s),(([n])=>ue(e,((e,a)=>x(De(n,a),(([n,,o])=>o!==e?Ee(n,((e,[,,n])=>fe(fe(t,s,ie),a,ie)[e]=n)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=n,a={};return ue(e,((e,s)=>ue(e,((e,n)=>x(De(t,s),(([t,o])=>x(De(t,n),(([t,r])=>Ee(t,((t,[l,i,c])=>c!==e[t]?fe(fe(a,s,(()=>Tt(o)))[0],n,(()=>Tt(r)))[0][t]=[l,i]:0)))))))))),Ct(a,s)},getMergeableValueHashes:()=>xe(n[1][0],Lt),getMergeableValueDiff:e=>{const[,[t,s]]=n,a=xe(t,wt,(([,,t],s)=>t==e?.[s]));return Ct(a,s)},setMergeableContent:e=>d((()=>(e=>z(e)&&2==N(e)&&mt(e[0],(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,(e=>be(e,(e=>mt(e,We)),void 0,1)))),void 0,1)))),void 0,1)))&&mt(e[1],(e=>be(e,(e=>mt(e,We)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),n=Bt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{a=1,c.setContent(e),a=0})),b),getTransactionMergeableChanges:()=>{const[[e,t],[s,a]]=n,l={};Se(o,((t,s)=>x(De(e,s),(([e,n])=>{const a={};Se(t,((t,s)=>x(De(e,s),(([e,n])=>{const o={};Se(t,(t=>{x(De(e,t),(([e,s])=>o[t]=Ct(e,s)))})),a[s]=Ct(o,n)})))),l[s]=Ct(a,n)}))));const i={};return Se(r,(e=>x(De(s,e),(([t,s])=>i[e]=Ct(t,s))))),[Ct(l,t),Ct(i,a),1]},applyMergeableChanges:f,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),f(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{Re(o),Re(r)}),((e,n,r,i)=>{Ue(ke(ke(o,e,me),n,Be),r),t&&u([[{[e]:[{[n]:[{[r]:[i,a?s:l()]}]}]}],[{}],1])}),((e,n)=>{Ue(r,e),t&&u([[{}],[{[e]:[n,a?s:l()]}],1])})),ge(c,((e,t)=>b[t]=m(t,"set")||m(t,"del")||m(t,"apply")||V(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),b):m(t,"add")&&V(t,"Listener")?(...s)=>{const n=_t[P(t,3,-8)]??0,a=s[n];return s[n]=(e,...t)=>a(b,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),le(b)},e.createMetrics=ct,e.createQueries=Vt,e.createRelationships=Dt,e.createStore=zt,e.defaultSorter=at,e.getUniqueId=ot},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",a=t(s),n=t(!0),l=t(0),r=t(t),o="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,b="Row",f=b+"Count",T=b+d,C="Cell",v=C+d,p="Value",V=p+"s",w=p+d,y=e=>s+e,I=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),R=Math.max,S=isFinite,m=e=>null==e,L=(e,t,s)=>m(e)?s?.():t(e),H=e=>e==a||e==n,E=e=>t(e)==r,J=e=>Array.isArray(e),D=(e,t,s)=>e.slice(t,s),x=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,t,s)=>e.reduce(t,s),A=(e,...t)=>e.push(...t),P=Object,W=e=>P.getPrototypeOf(e),j=P.entries,k=P.isFrozen,N=e=>!m(e)&&L(W(e),(e=>e==P.prototype||m(W(e))),(()=>!0)),B=P.keys,U=P.freeze,_=(e=[])=>P.fromEntries(e),q=(e,t)=>t in e,G=(e,t)=>(delete e[t],e),K=(e,t)=>F(j(e),(([e,s])=>t(s,e))),Q=(e,t)=>O(j(e),(([e,s])=>t(s,e))),X=e=>N(e)&&0==(e=>x(B(e)))(e),Y=(e,t,s)=>(q(e,t)||(e[t]=s()),e[t]),Z=(e,t,s,a=0)=>m(e)||!N(e)||!a&&X(e)||k(e)?(s?.(),!1):(Q(e,((s,a)=>{t(s,a)||G(e,a)})),!!a||!X(e)),$=e=>new Set(J(e)||m(e)?e:[e]),ee=(e,t)=>e?.add(t),te=e=>t=>z(ie(t),((t,s)=>t+e(s)),0),se=e=>e?.size??0,ae=te(se),ne=te(ae),le=te(ne),re=(e,t)=>e?.has(t)??!1,oe=e=>m(e)||0==se(e),ie=e=>[...e?.values()??[]],ce=e=>e.clear(),de=(e,t)=>e?.forEach(t),ue=(e,t)=>e?.delete(t),ge=e=>new Map(e),he=e=>[...e?.keys()??[]],be=(e,t)=>e?.get(t),fe=(e,t)=>de(e,((e,s)=>t(s,e))),Te=(e,t,s)=>m(s)?(ue(e,t),e):e?.set(t,s),Ce=(e,t,s,a)=>(re(e,t)?a?.(be(e,t)):Te(e,t,s()),be(e,t)),ve=(e,t,s,a=Te)=>(Q(t,((t,a)=>s(e,a,t))),fe(e,(s=>q(t,s)?0:a(e,s))),e),pe=(e,t,s,a)=>{const n={};return de(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!a?.(s)&&(n[l]=s)}})),n},Ve=(e,t,s)=>pe(e,(e=>pe(e,t,s)),oe,X),we=(e,t,s)=>pe(e,(e=>Ve(e,t,s)),oe,X),ye=(e,t)=>{const s=ge();return de(e,((e,a)=>s.set(a,t?.(e)??e))),s},Ie=e=>ye(e,ye),Me=e=>ye(e,Ie),Re=(e,t,s,a,n=0)=>L((s?Ce:be)(e,t[n],n>x(t)-2?s:ge),(l=>{if(n>x(t)-2)return a?.(l)&&Te(e,t[n]),l;const r=Re(l,t,s,a,n+1);return oe(l)&&Te(e,t[n]),r})),Se=new globalThis.TextEncoder,me=e=>{let t=2166136261;return F(Se.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},Le=([e,t,s])=>[e,t,s],He=([e,t])=>Ee(e,t),Ee=(e,t)=>t?[e,t]:[e],Je=e=>e[2],De=(e,t)=>me(e+":"+t),xe=(e,t)=>t>e?(e?me(e):0)^me(t):0,Fe=(e,t)=>((e??"")>(t??"")?e:t)??"",Oe=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},ze=(e=s)=>Ee(_(),e),Ae=(e=s)=>[ge(),e,0],Pe=([e,t,s],a=Le)=>[pe(e,a),t,s],We=([e,t],s=He)=>Ee(pe(e,s),t),je=(e,s)=>{return J(e)&&3==x(e)&&(n=e[1],t(n)==a)&&t(e[2])==l&&S(e[2])&&s(e[0]);var n},ke=/^\d+$/,Ne=()=>{const e=[];let t=0;return[a=>(a?e.shift():null)??s+t++,t=>{ke.test(t)&&x(e)<1e3&&A(e,t)}]},Be=e=>[e,e],Ue=(e,t=ae)=>t(e[0])+t(e[1]),_e=()=>[ge(),ge()],qe=e=>[...e],Ge=([e,t])=>e===t,Ke=e=>{const s=t(e);return H(s)||s==l&&S(e)?s:void 0},Qe=e=>m(e)||!m(Ke(e)),Xe=(e,t,s,a,n)=>m(n)?e.delCell(t,s,a,!0):e.setCell(t,s,a,n),Ye=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?P.fromEntries([...t]):t)),$e=JSON.parse,et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=ge(O(et,((e,t)=>[e,t]))),st=e=>et[63&e],at=(e,t)=>be(tt,e[t])??0,nt=(e,t,s)=>Te(e,t,be(e,t)==-s?void 0:s),lt=()=>{let e,t,a=!1,n=!1,r=0,d=[];const I=ge(),M=ge(),R=ge(),S=ge(),J=ge(),z=ge(),P=ge(),W=ge(),j=ge(),k=ge(),N=ge(),B=ge(),_=ge(),K=ge(),Y=$(),te=ge(),ie=ge(),Se=ge(),me=ge(),Le=_e(),He=_e(),Ee=_e(),Je=_e(),De=_e(),xe=_e(),Fe=_e(),Oe=_e(),ze=_e(),Ae=_e(),Pe=_e(),We=_e(),je=_e(),ke=_e(),Qe=_e(),et=_e(),tt=_e(),st=_e(),at=_e(),rt=_e(),ot=_e(),it=_e(),ct=ge(),dt=_e(),[ut,gt,ht,bt]=(e=>{let t;const[a,n]=Ne(),l=ge();return[(e,n,r,o=[],i=(()=>[]))=>{t??=Fs;const c=a(1);return Te(l,c,[e,n,r,o,i]),ee(Re(n,r??[s],$),c),c},(e,a,...n)=>F(((e,t=[s])=>{const a=[],n=(e,s)=>s==x(t)?A(a,e):null===t[s]?de(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(be(e,t),s+1)));return n(e,0),a})(e,a),(e=>de(e,(e=>be(l,e)[0](t,...a??[],...n))))),e=>L(be(l,e),(([,t,a])=>(Re(t,a??[s],void 0,(t=>(ue(t,e),oe(t)?1:0))),Te(l,e),n(e),a))),e=>L(be(l,e),(([e,,s=[],a,n])=>{const l=(...r)=>{const o=x(r);o==x(s)?e(t,...r,...n(r)):m(s[o])?F(a[o]?.(...r)??[],(e=>l(...r,e))):l(...r,s[o])};l()}))]})(),ft=e=>{if(!Z(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!H(t)&&t!=l||(Ke(e[i])!=t&&G(e,i),0))},Tt=(t,s)=>(!e||re(N,s)||qt(s))&&Z(t,((e,t)=>Ct(s,t,e)),(()=>qt(s))),Ct=(e,t,s,a)=>Z(a?s:wt(s,e,t),((a,n)=>L(vt(e,t,n,a),(e=>(s[n]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,a,n)=>e?L(be(be(N,t),a),(e=>Ke(n)!=e[o]?qt(t,s,a,n,e[i]):n),(()=>qt(t,s,a,n))):m(Ke(n))?qt(t,s,a,n):n,pt=(e,t)=>Z(t?e:yt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),Vt=(e,s)=>t?L(be(_,e),(t=>Ke(s)!=t[o]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):m(Ke(s))?Gt(e,s):s,wt=(e,t,s)=>(L(be(B,t),(([a,n])=>{de(a,((t,s)=>{q(e,s)||(e[s]=t)})),de(n,(a=>{q(e,a)||qt(t,s,a)}))})),e),yt=e=>(t&&(de(K,((t,s)=>{q(e,s)||(e[s]=t)})),de(Y,(t=>{q(e,t)||Gt(t)}))),e),It=e=>ve(N,e,((e,t,s)=>{const a=ge(),n=$();ve(Ce(N,t,ge),s,((e,t,s)=>{Te(e,t,s),L(s[i],(e=>Te(a,t,e)),(()=>ee(n,t)))})),Te(B,t,[a,n])}),((e,t)=>{Te(N,t),Te(B,t)})),Mt=e=>ve(_,e,((e,t,s)=>{Te(_,t,s),L(s[i],(e=>Te(K,t,e)),(()=>ee(Y,t)))}),((e,t)=>{Te(_,t),Te(K,t),ue(Y,t)})),Rt=e=>X(e)?Rs():Vs(e),St=e=>ve(Se,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>ve(Ce(Se,e,(()=>(jt(e,1),Te(te,e,Ne()),Te(ie,e,ge()),ge()))),t,((t,s,a)=>Lt(e,t,s,a)),((t,s)=>At(e,t,s))),Lt=(e,t,s,a,n)=>ve(Ce(t,s,(()=>(kt(e,s,1),ge()))),a,((t,a,n)=>Ht(e,s,t,a,n)),((a,l)=>Pt(e,t,s,a,l,n))),Ht=(e,t,s,a,n)=>{re(s,a)||Nt(e,t,a,1);const l=be(s,a);n!==l&&(Bt(e,t,a,l,n),Te(s,a,n))},Et=(e,t,s,a,n)=>L(be(t,s),(t=>Ht(e,s,t,a,n)),(()=>Lt(e,t,s,wt({[a]:n},e,s)))),Jt=e=>X(e)?Ls():ws(e),Dt=e=>ve(me,e,((e,t,s)=>xt(t,s)),((e,t)=>Wt(t))),xt=(e,t)=>{re(me,e)||Ut(e,1);const s=be(me,e);t!==s&&(_t(e,s,t),Te(me,e,t))},Ft=(e,t)=>{const[s]=be(te,e),a=s(t);return re(be(Se,e),a)?Ft(e,t):a},Ot=e=>be(Se,e)??mt(e,{}),zt=e=>mt(e,{}),At=(e,t,s)=>{const[,a]=be(te,e);a(s),Lt(e,t,s,{},!0)},Pt=(e,t,s,a,n,l)=>{const r=be(be(B,e)?.[0],n);if(!m(r)&&!l)return Ht(e,s,a,n,r);const o=t=>{Bt(e,s,t,be(a,t)),Nt(e,s,t,-1),Te(a,t)};m(r)?o(n):fe(a,o),oe(a)&&(kt(e,s,-1),oe(Te(t,s))&&(jt(e,-1),Te(Se,e),Te(te,e),Te(ie,e)))},Wt=e=>{const t=be(K,e);if(!m(t))return xt(e,t);_t(e,be(me,e)),Ut(e,-1),Te(me,e)},jt=(e,t)=>nt(I,e,t),kt=(e,t,s)=>nt(Ce(S,e,ge),t,s)&&Te(R,e,Ce(R,e,(()=>0))+s),Nt=(e,t,s,a)=>{const n=be(ie,e),l=be(n,s)??0;(0==l&&1==a||1==l&&-1==a)&&nt(Ce(M,e,ge),s,a),Te(n,s,l!=-a?l+a:null),nt(Ce(Ce(J,e,ge),t,ge),s,a)},Bt=(e,t,s,a,n)=>{Ce(Ce(Ce(z,e,ge),t,ge),s,(()=>[a,0]))[1]=n,d[3]?.(e,t,s,n)},Ut=(e,t)=>nt(P,e,t),_t=(e,t,s)=>{Ce(W,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},qt=(e,t,s,a,n)=>(A(Ce(Ce(Ce(j,e,ge),t,ge),s,(()=>[])),a),n),Gt=(e,t,s)=>(A(Ce(k,e,(()=>[])),t),s),Kt=(e,t,s)=>L(be(be(be(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(cs(e,t,s))])),Qt=e=>L(be(W,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(gs(e))])),Xt=e=>oe(j)||oe(et[e])?0:de(e?Me(j):j,((t,s)=>de(t,((t,a)=>de(t,((t,n)=>gt(et[e],[s,a,n],t))))))),Yt=e=>oe(k)||oe(tt[e])?0:de(e?ye(k):k,((t,s)=>gt(tt[e],[s],t))),Zt=(e,t,s,a)=>{if(!oe(e))return gt(t,a,(()=>pe(e))),fe(e,((e,t)=>gt(s,[...a??[],e],1==t))),1},$t=e=>{const t=hs();t!=a&&gt(Le[e],void 0,t);const s=oe(Ae[e]),n=oe(je[e])&&oe(ke[e])&&oe(ze[e])&&oe(Pe[e])&&oe(xe[e])&&oe(Fe[e])&&oe(Oe[e])&&s&&oe(Ee[e])&&oe(Je[e]),l=oe(Qe[e])&&oe(We[e])&&oe(De[e])&&oe(He[e]);if(!n||!l){const t=e?[ye(I),Ie(M),ye(R),Ie(S),Me(J),Me(z)]:[I,M,R,S,J,z];if(!n){Zt(t[0],Ee[e],Je[e]),de(t[1],((t,s)=>Zt(t,xe[e],Fe[e],[s]))),de(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const a=$();de(t[3],((t,n)=>{Zt(t,ze[e],Pe[e],[n])&&!s&&(gt(Ae[e],[n,null]),ee(a,n))})),s||de(t[5],((t,s)=>{if(!re(a,s)){const a=$();de(t,(e=>de(e,(([t,s],n)=>s!==t?ee(a,n):ue(e,n))))),de(a,(t=>gt(Ae[e],[s,t])))}})),de(t[4],((t,s)=>de(t,((t,a)=>Zt(t,je[e],ke[e],[s,a])))))}if(!l){let s;de(t[5],((t,a)=>{let n;de(t,((t,l)=>{let r;de(t,(([t,o],i)=>{o!==t&&(gt(Qe[e],[a,l,i],o,t,Kt),s=n=r=1)})),r&&gt(We[e],[a,l],Kt)})),n&&gt(De[e],[a],Kt)})),s&&gt(He[e],void 0,Kt)}}},es=e=>{const t=vs();t!=n&&gt(st[e],void 0,t);const s=oe(rt[e])&&oe(ot[e]),a=oe(it[e])&&oe(at[e]);if(!s||!a){const t=e?[ye(P),ye(W)]:[P,W];if(s||Zt(t[0],rt[e],ot[e]),!a){let s;de(t[1],(([t,a],n)=>{a!==t&&(gt(it[e],[n],a,t,Qt),s=1)})),s&&gt(at[e],void 0,Qt)}}},ts=(e,...t)=>(Js((()=>e(...O(t,y)))),Fs),ss=()=>we(Se),as=()=>he(Se),ns=e=>he(be(ie,y(e))),ls=e=>se(be(Se,y(e))),rs=e=>he(be(Se,y(e))),os=(e,t,s,a=0,n)=>{return O(D((r=be(Se,y(e)),o=(e,s)=>[m(t)?s:be(e,y(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),a,m(n)?n:a+n),(([,e])=>e));var l,r,o},is=(e,t)=>he(be(be(Se,y(e)),y(t))),cs=(e,t,s)=>be(be(be(Se,y(e)),y(t)),y(s)),ds=()=>pe(me),us=()=>he(me),gs=e=>be(me,y(e)),hs=()=>!oe(Se),bs=e=>re(Se,y(e)),fs=(e,t)=>re(be(ie,y(e)),y(t)),Ts=(e,t)=>re(be(Se,y(e)),y(t)),Cs=(e,t,s)=>re(be(be(Se,y(e)),y(t)),y(s)),vs=()=>!oe(me),ps=e=>re(me,y(e)),Vs=e=>ts((()=>(e=>Z(e,Tt,qt))(e)?St(e):0)),ws=e=>ts((()=>pt(e)?Dt(e):0)),ys=e=>{try{Rt($e(e))}catch{}return Fs},Is=t=>ts((()=>{if((e=Z(t,(e=>Z(e,ft))))&&(It(t),!oe(Se))){const e=ss();Rs(),Vs(e)}})),Ms=e=>ts((()=>{if(t=(e=>Z(e,ft))(e)){const s=ds();Es(),Ls(),t=!0,Mt(e),ws(s)}})),Rs=()=>ts((()=>St({}))),Ss=e=>ts((e=>re(Se,e)?zt(e):0),e),ms=(e,t)=>ts(((e,t)=>L(be(Se,e),(s=>re(s,t)?At(e,s,t):0))),e,t),Ls=()=>ts((()=>Dt({}))),Hs=()=>ts((()=>{It({}),e=!1})),Es=()=>ts((()=>{Mt({}),t=!1})),Js=(e,t)=>{if(-1!=r){Ds();const s=e();return xs(t),s}},Ds=()=>(-1!=r&&r++,1==r&&(d[0]?.(),gt(ct)),Fs),xs=e=>(r>0&&(r--,0==r&&(r=1,Xt(1),oe(z)||$t(1),Yt(1),oe(W)||es(1),e?.(Fs)&&(de(z,((e,t)=>de(e,((e,s)=>de(e,(([e],a)=>Xe(Fs,t,s,a,e))))))),ce(z),de(W,(([e],t)=>Ye(Fs,t,e))),ce(W)),gt(dt[0],void 0),r=-1,Xt(0),oe(z)||$t(0),Yt(0),oe(W)||es(0),d[1]?.(),gt(dt[1],void 0),d[2]?.(),r=0,a=hs(),n=vs(),F([I,M,R,S,J,z,j,P,W,k],ce))),Fs),Fs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:as,getTable:e=>Ve(be(Se,y(e))),getTableCellIds:ns,getRowCount:ls,getRowIds:rs,getSortedRowIds:os,getRow:(e,t)=>pe(be(be(Se,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:bs,hasTableCell:fs,hasRow:Ts,hasCell:Cs,hasValues:vs,hasValue:ps,getTablesJson:()=>Ze(Se),getValuesJson:()=>Ze(me),getJson:()=>Ze([Se,me]),getTablesSchemaJson:()=>Ze(N),getValuesSchemaJson:()=>Ze(_),getSchemaJson:()=>Ze([N,_]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(X(e)?Rs:Vs)(e),(X(t)?Ls:ws)(t)})),setTables:Vs,setTable:(e,t)=>ts((e=>Tt(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>Ct(e,t,s)?Lt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let a;return Ct(e,a,t)&&(e=y(e),Lt(e,Ot(e),a=Ft(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(Ct(e,t,s,1)){const a=Ot(e);Q(s,((s,n)=>Et(e,a,t,n,s)))}}),e,t),setCell:(e,t,s,a)=>ts(((e,t,s)=>L(vt(e,t,s,E(a)?a(cs(e,t,s)):a),(a=>Et(e,Ot(e),t,s,a)))),e,t,s),setValues:ws,setPartialValues:e=>ts((()=>pt(e,1)?Q(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ts((e=>L(Vt(e,E(t)?t(gs(e)):t),(t=>xt(e,t)))),e),applyChanges:e=>ts((()=>{Q(e[0],((e,t)=>m(e)?Ss(t):Q(e,((e,s)=>m(e)?ms(t,s):Q(e,((e,a)=>Xe(Fs,t,s,a,e))))))),Q(e[1],((e,t)=>Ye(Fs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Jt($e(e))}catch{}return Fs},setJson:e=>ts((()=>{try{const[t,s]=$e(e);Rt(t),Jt(s)}catch{ys(e)}})),setTablesSchema:Is,setValuesSchema:Ms,setSchema:(e,t)=>ts((()=>{Is(e),Ms(t)})),delTables:Rs,delTable:Ss,delRow:ms,delCell:(e,t,s,a)=>ts(((e,t,s)=>L(be(Se,e),(n=>L(be(n,t),(l=>re(l,s)?Pt(e,n,t,l,s,a):0))))),e,t,s),delValues:Ls,delValue:e=>ts((e=>re(me,e)?Wt(e):0),e),delTablesSchema:Hs,delValuesSchema:Es,delSchema:()=>ts((()=>{Hs(),Es()})),transaction:Js,startTransaction:Ds,getTransactionChanges:()=>[pe(z,((e,t)=>-1===be(I,t)?void 0:pe(e,((e,s)=>-1===be(be(S,t),s)?void 0:pe(e,(([,e])=>e),(e=>Ge(e)))),oe,X)),oe,X),pe(W,(([,e])=>e),(e=>Ge(e))),1],getTransactionLog:()=>[!oe(z),!oe(W),we(z,qe,Ge),we(j),pe(W,qe,Ge),pe(k),pe(I),Ve(S),we(J),pe(P)],finishTransaction:xs,forEachTable:e=>de(Se,((t,s)=>e(s,(e=>de(t,((t,s)=>e(s,(e=>fe(t,e))))))))),forEachTableCell:(e,t)=>fe(be(ie,y(e)),t),forEachRow:(e,t)=>de(be(Se,y(e)),((e,s)=>t(s,(t=>fe(e,t))))),forEachCell:(e,t,s)=>fe(be(be(Se,y(e)),y(t)),s),forEachValue:e=>fe(me,e),addSortedRowIdsListener:(e,t,s,a,n,l,r)=>{let o=os(e,t,s,a,n);return ut((()=>{const r=os(e,t,s,a,n);var i,c,d;c=o,x(i=r)===x(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(o=r,l(Fs,e,t,s,a,n,o))}),Ae[r?1:0],[e,t],[as])},addStartTransactionListener:e=>ut(e,ct),addWillFinishTransactionListener:e=>ut(e,dt[0]),addDidFinishTransactionListener:e=>ut(e,dt[1]),callListener:e=>(bt(e),Fs),delListener:e=>(ht(e),Fs),getListenerStats:()=>({hasTables:Ue(Le),tables:Ue(He),tableIds:Ue(Ee),hasTable:Ue(Je),table:Ue(De),tableCellIds:Ue(xe),hasTableCell:Ue(Fe,ne),rowCount:Ue(Oe),rowIds:Ue(ze),sortedRowIds:Ue(Ae),hasRow:Ue(Pe,ne),row:Ue(We,ne),cellIds:Ue(je,ne),hasCell:Ue(ke,le),cell:Ue(Qe,le),invalidCell:Ue(et,le),hasValues:Ue(st),values:Ue(at),valueIds:Ue(rt),hasValue:Ue(ot),value:Ue(it),invalidValue:Ue(tt),transaction:ae(ct)+Ue(dt)}),isMergeable:()=>!1,createStore:lt,addListener:ut,callListeners:gt,setInternalListeners:(e,t,s,a,n)=>d=[e,t,s,a,n]};return Q({[c+g]:[0,Le,[],()=>[hs()]],[g]:[0,He],[h]:[0,Ee],[c+u]:[1,Je,[as],e=>[bs(...e)]],[u]:[1,De,[as]],[u+v]:[1,xe,[as]],[c+u+C]:[2,Fe,[as,ns],e=>[fs(...e)]],[f]:[1,Oe,[as]],[T]:[1,ze,[as]],[c+b]:[2,Pe,[as,rs],e=>[Ts(...e)]],[b]:[2,We,[as,rs]],[v]:[2,je,[as,rs]],[c+C]:[3,ke,[as,rs,is],e=>[Cs(...e)]],[C]:[3,Qe,[as,rs,is],e=>Be(cs(...e))],InvalidCell:[3,et],[c+V]:[0,st,[],()=>[vs()]],[V]:[0,at],[w]:[0,rt],[c+p]:[1,ot,[us],e=>[ps(...e)]],[p]:[1,it,[us],e=>Be(gs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,a],n)=>{Fs["add"+n+"Listener"]=(...n)=>ut(n[e],t[n[e+1]?1:0],e>0?D(n,0,e):void 0,s,a)})),U(Fs)},rt=2**36,ot=2**30,it=2**24,ct=2**18,dt=4096,ut={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},gt=(e=s)=>[Ae(e),Ae(e)];e.createMergeableStore=e=>{let t=1,a=gt(),n=0;const l=ge(),r=$(),[o,i]=(e=>{let t=0,s=-1;const a=L(e,(e=>{const t=me(e);return st(t/it)+st(t/ct)+st(t/dt)+st(t/64)+st(t)}),(()=>((e=16)=>z(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""))(5))),n=e=>{const a=t,[n,l]=m(e)||""==e?[0,0]:[at(r=e,0)*rt+at(r,1)*ot+at(r,2)*it+at(r,3)*ct+at(r,4)*dt+64*at(r,5)+at(r,6),at(r,7)*ct+at(r,8)*dt+64*at(r,9)+at(r,10)];var r;t=R(a,n,globalThis.HLC_TIME??Date.now()),s=t==a?t==n?R(s,l):s:t==n?l:-1};return[()=>{return n(),l=++s,st((e=t)/rt)+st(e/ot)+st(e/it)+st(e/ct)+st(e/dt)+st(e/64)+st(e)+st(l/ct)+st(l/dt)+st(l/64)+st(l)+a;var e,l},n]})(e),c=lt(),d=e=>{const s=t;return t=0,e(),t=s,f},u=(e,t=0)=>{const n={},l={},[[r,o=s,c=0],d]=e,[u,h]=a,[b,f,T]=u;let C=t?c:T,v=o;K(r,(([e,a=s,l=0],r)=>{const o=Ce(b,r,Ae),[i,c,d]=o;let u=t?l:d,h=a;K(e,((e,s)=>{const[a,l,o]=g(e,Ce(i,s,Ae),Y(Y(n,r,_),s,_),t);u^=t?0:(l?De(s,l):0)^De(s,o),h=Fe(h,a)})),u^=t?0:xe(c,a),Oe(o,u,a),C^=t?0:(d?De(r,d):0)^De(r,o[2]),v=Fe(v,h)})),C^=t?0:xe(f,o),Oe(u,C,o);const[p]=g(d,h,l,t);return i(Fe(v,p)),[n,l,1]},g=(e,t,a,n)=>{const[l,r=s,o=0]=e,[i,c,d]=t;let u=r,g=n?o:d;return K(l,(([e,t,l=0],r)=>{const o=Ce(i,r,(()=>[void 0,s,0])),[,c,d]=o;(!c||t>c)&&(Oe(o,n?l:me(Ze(e??null)+":"+t),t),o[0]=e,a[r]=e,g^=n?0:De(r,d)^De(r,o[2]),u=Fe(u,t))})),g^=n?0:xe(c,r),Oe(t,g,r),[u,d,t[2]]},h=()=>[Pe(a[0],(e=>Pe(e,(e=>Pe(e))))),Pe(a[1])],b=e=>d((()=>c.applyChanges(u(e)))),f={getMergeableContent:h,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>pe(a[0][0],Je),getMergeableTableDiff:e=>{const t=ze(a[0][1]),s={};return fe(a[0][0],((a,[n,l,r])=>q(e,a)?r!=e[a]?s[a]=r:0:t[0][a]=We([n,l],(e=>We(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a,,n])=>n!=e?fe(a,((e,[,,a])=>Y(t,s,_)[e]=a)):0)))),t},getMergeableRowDiff:e=>{const t=ze(a[0][1]),s={};return K(e,((e,n)=>fe(be(a[0][0],n)?.[0],((a,[l,r,o])=>q(e,a)?o!==e[a]?Y(s,n,_)[a]=o:0:Y(t[0],n,ze)[0][a]=We([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a])=>K(e,((e,n)=>L(be(a,n),(([a,,l])=>l!==e?fe(a,((e,[,,a])=>Y(Y(t,s,_),n,_)[e]=a)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return K(e,((e,s)=>K(e,((e,a)=>L(be(t,s),(([t,l])=>L(be(t,a),(([t,r])=>fe(t,((t,[o,i,c])=>c!==e[t]?Y(Y(n,s,(()=>ze(l)))[0],a,(()=>ze(r)))[0][t]=[o,i]:0)))))))))),Ee(n,s)},getMergeableValuesHashes:()=>pe(a[1][0],Je),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=pe(t,He,(([,,t],s)=>t==e?.[s]));return Ee(n,s)},setMergeableContent:e=>d((()=>(e=>J(e)&&2==x(e)&&je(e[0],(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&je(e[1],(e=>Z(e,(e=>je(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),a=gt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{n=1,c.setContent(e),n=0})),f),getTransactionMergeableChanges:()=>{const[[e,t],[s,n]]=a,o={};de(l,((t,s)=>L(be(e,s),(([e,a])=>{const n={};de(t,((t,s)=>L(be(e,s),(([e,a])=>{const l={};de(t,(t=>{L(be(e,t),(([e,s])=>l[t]=Ee(e,s)))})),n[s]=Ee(l,a)})))),o[s]=Ee(n,a)}))));const i={};return de(r,(e=>L(be(s,e),(([t,s])=>i[e]=Ee(t,s))))),[Ee(o,t),Ee(i,n),1]},applyMergeableChanges:b,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ce(l),ce(r)}),((e,a,r,i)=>{ee(Ce(Ce(l,e,ge),a,$),r),t&&u([[{[e]:[{[a]:[{[r]:[i,n?s:o()]}]}]}],[{}],1])}),((e,a)=>{ee(r,e),t&&u([[{}],[{[e]:[a,n?s:o()]}],1])})),Q(c,((e,t)=>f[t]=I(t,"set")||I(t,"del")||I(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),f):I(t,"add")&&M(t,"Listener")?(...s)=>{const a=ut[D(t,3,-8)]??0,n=s[a];return s[a]=(e,...t)=>n(f,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),U(f)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",a=t(s),n=t(!0),l=t(0),r=t(t),o="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,b="Row",f=b+"Count",T=b+d,C="Cell",v=C+d,p="Value",V=p+"s",w=p+d,y=e=>s+e,I=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),R=Math.max,S=isFinite,m=e=>null==e,L=(e,t,s)=>m(e)?s?.():t(e),H=e=>e==a||e==n,E=e=>t(e)==r,J=e=>Array.isArray(e),D=(e,t,s)=>e.slice(t,s),x=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,t,s)=>e.reduce(t,s),A=(e,...t)=>e.push(...t),P=Object,W=e=>P.getPrototypeOf(e),j=P.entries,k=P.isFrozen,N=e=>!m(e)&&L(W(e),(e=>e==P.prototype||m(W(e))),(()=>!0)),B=P.keys,U=P.freeze,_=(e=[])=>P.fromEntries(e),q=(e,t)=>t in e,G=(e,t)=>(delete e[t],e),K=(e,t)=>F(j(e),(([e,s])=>t(s,e))),Q=(e,t)=>O(j(e),(([e,s])=>t(s,e))),X=e=>N(e)&&0==(e=>x(B(e)))(e),Y=(e,t,s)=>(q(e,t)||(e[t]=s()),e[t]),Z=(e,t,s,a=0)=>m(e)||!N(e)||!a&&X(e)||k(e)?(s?.(),!1):(Q(e,((s,a)=>{t(s,a)||G(e,a)})),!!a||!X(e)),$=e=>new Set(J(e)||m(e)?e:[e]),ee=(e,t)=>e?.add(t),te=e=>t=>z(ie(t),((t,s)=>t+e(s)),0),se=e=>e?.size??0,ae=te(se),ne=te(ae),le=te(ne),re=(e,t)=>e?.has(t)??!1,oe=e=>m(e)||0==se(e),ie=e=>[...e?.values()??[]],ce=e=>e.clear(),de=(e,t)=>e?.forEach(t),ue=(e,t)=>e?.delete(t),ge=e=>new Map(e),he=e=>[...e?.keys()??[]],be=(e,t)=>e?.get(t),fe=(e,t)=>de(e,((e,s)=>t(s,e))),Te=(e,t,s)=>m(s)?(ue(e,t),e):e?.set(t,s),Ce=(e,t,s,a)=>(re(e,t)?a?.(be(e,t)):Te(e,t,s()),be(e,t)),ve=(e,t,s,a=Te)=>(Q(t,((t,a)=>s(e,a,t))),fe(e,(s=>q(t,s)?0:a(e,s))),e),pe=(e,t,s,a)=>{const n={};return de(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!a?.(s)&&(n[l]=s)}})),n},Ve=(e,t,s)=>pe(e,(e=>pe(e,t,s)),oe,X),we=(e,t,s)=>pe(e,(e=>Ve(e,t,s)),oe,X),ye=(e,t)=>{const s=ge();return de(e,((e,a)=>s.set(a,t?.(e)??e))),s},Ie=e=>ye(e,ye),Me=e=>ye(e,Ie),Re=(e,t,s,a,n=0)=>L((s?Ce:be)(e,t[n],n>x(t)-2?s:ge),(l=>{if(n>x(t)-2)return a?.(l)&&Te(e,t[n]),l;const r=Re(l,t,s,a,n+1);return oe(l)&&Te(e,t[n]),r})),Se=new globalThis.TextEncoder,me=e=>{let t=2166136261;return F(Se.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},Le=([e,t,s])=>[e,t,s],He=([e,t])=>Ee(e,t),Ee=(e,t)=>t?[e,t]:[e],Je=e=>e[2],De=(e,t)=>me(e+":"+t),xe=(e,t)=>t>e?(e?me(e):0)^me(t):0,Fe=(e,t)=>((e??"")>(t??"")?e:t)??"",Oe=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},ze=(e=s)=>Ee(_(),e),Ae=(e=s)=>[ge(),e,0],Pe=([e,t,s],a=Le)=>[pe(e,a),t,s],We=([e,t],s=He)=>Ee(pe(e,s),t),je=(e,s)=>{return J(e)&&3==x(e)&&(n=e[1],t(n)==a)&&t(e[2])==l&&S(e[2])&&s(e[0]);var n},ke=/^\d+$/,Ne=()=>{const e=[];let t=0;return[a=>(a?e.shift():null)??s+t++,t=>{ke.test(t)&&x(e)<1e3&&A(e,t)}]},Be=e=>[e,e],Ue=(e,t=ae)=>t(e[0])+t(e[1]),_e=()=>[ge(),ge()],qe=e=>[...e],Ge=([e,t])=>e===t,Ke=e=>{const s=t(e);return H(s)||s==l&&S(e)?s:void 0},Qe=e=>m(e)||!m(Ke(e)),Xe=(e,t,s,a,n)=>m(n)?e.delCell(t,s,a,!0):e.setCell(t,s,a,n),Ye=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?P.fromEntries([...t]):t)),$e=JSON.parse,et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=ge(O(et,((e,t)=>[e,t]))),st=e=>et[63&e],at=(e,t)=>be(tt,e[t])??0,nt=(e,t,s)=>Te(e,t,be(e,t)==-s?void 0:s),lt=()=>{let e,t,a=!1,n=!1,r=0,d=[];const I=ge(),M=ge(),R=ge(),S=ge(),J=ge(),z=ge(),P=ge(),W=ge(),j=ge(),k=ge(),N=ge(),B=ge(),_=ge(),K=ge(),Y=$(),te=ge(),ie=ge(),Se=ge(),me=ge(),Le=_e(),He=_e(),Ee=_e(),Je=_e(),De=_e(),xe=_e(),Fe=_e(),Oe=_e(),ze=_e(),Ae=_e(),Pe=_e(),We=_e(),je=_e(),ke=_e(),Qe=_e(),et=_e(),tt=_e(),st=_e(),at=_e(),rt=_e(),ot=_e(),it=_e(),ct=ge(),dt=_e(),[ut,gt,ht,bt]=(e=>{let t;const[a,n]=Ne(),l=ge();return[(e,n,r,o=[],i=(()=>[]))=>{t??=Fs;const c=a(1);return Te(l,c,[e,n,r,o,i]),ee(Re(n,r??[s],$),c),c},(e,a,...n)=>F(((e,t=[s])=>{const a=[],n=(e,s)=>s==x(t)?A(a,e):null===t[s]?de(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(be(e,t),s+1)));return n(e,0),a})(e,a),(e=>de(e,(e=>be(l,e)[0](t,...a??[],...n))))),e=>L(be(l,e),(([,t,a])=>(Re(t,a??[s],void 0,(t=>(ue(t,e),oe(t)?1:0))),Te(l,e),n(e),a))),e=>L(be(l,e),(([e,,s=[],a,n])=>{const l=(...r)=>{const o=x(r);o==x(s)?e(t,...r,...n(r)):m(s[o])?F(a[o]?.(...r)??[],(e=>l(...r,e))):l(...r,s[o])};l()}))]})(),ft=e=>{if(!Z(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!H(t)&&t!=l||(Ke(e[i])!=t&&G(e,i),0))},Tt=(t,s)=>(!e||re(N,s)||qt(s))&&Z(t,((e,t)=>Ct(s,t,e)),(()=>qt(s))),Ct=(e,t,s,a)=>Z(a?s:wt(s,e,t),((a,n)=>L(vt(e,t,n,a),(e=>(s[n]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,a,n)=>e?L(be(be(N,t),a),(e=>Ke(n)!=e[o]?qt(t,s,a,n,e[i]):n),(()=>qt(t,s,a,n))):m(Ke(n))?qt(t,s,a,n):n,pt=(e,t)=>Z(t?e:yt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),Vt=(e,s)=>t?L(be(_,e),(t=>Ke(s)!=t[o]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):m(Ke(s))?Gt(e,s):s,wt=(e,t,s)=>(L(be(B,t),(([a,n])=>{de(a,((t,s)=>{q(e,s)||(e[s]=t)})),de(n,(a=>{q(e,a)||qt(t,s,a)}))})),e),yt=e=>(t&&(de(K,((t,s)=>{q(e,s)||(e[s]=t)})),de(Y,(t=>{q(e,t)||Gt(t)}))),e),It=e=>ve(N,e,((e,t,s)=>{const a=ge(),n=$();ve(Ce(N,t,ge),s,((e,t,s)=>{Te(e,t,s),L(s[i],(e=>Te(a,t,e)),(()=>ee(n,t)))})),Te(B,t,[a,n])}),((e,t)=>{Te(N,t),Te(B,t)})),Mt=e=>ve(_,e,((e,t,s)=>{Te(_,t,s),L(s[i],(e=>Te(K,t,e)),(()=>ee(Y,t)))}),((e,t)=>{Te(_,t),Te(K,t),ue(Y,t)})),Rt=e=>X(e)?Rs():Vs(e),St=e=>ve(Se,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>ve(Ce(Se,e,(()=>(jt(e,1),Te(te,e,Ne()),Te(ie,e,ge()),ge()))),t,((t,s,a)=>Lt(e,t,s,a)),((t,s)=>At(e,t,s))),Lt=(e,t,s,a,n)=>ve(Ce(t,s,(()=>(kt(e,s,1),ge()))),a,((t,a,n)=>Ht(e,s,t,a,n)),((a,l)=>Pt(e,t,s,a,l,n))),Ht=(e,t,s,a,n)=>{re(s,a)||Nt(e,t,a,1);const l=be(s,a);n!==l&&(Bt(e,t,a,l,n),Te(s,a,n))},Et=(e,t,s,a,n)=>L(be(t,s),(t=>Ht(e,s,t,a,n)),(()=>Lt(e,t,s,wt({[a]:n},e,s)))),Jt=e=>X(e)?Ls():ws(e),Dt=e=>ve(me,e,((e,t,s)=>xt(t,s)),((e,t)=>Wt(t))),xt=(e,t)=>{re(me,e)||Ut(e,1);const s=be(me,e);t!==s&&(_t(e,s,t),Te(me,e,t))},Ft=(e,t)=>{const[s]=be(te,e),a=s(t);return re(be(Se,e),a)?Ft(e,t):a},Ot=e=>be(Se,e)??mt(e,{}),zt=e=>mt(e,{}),At=(e,t,s)=>{const[,a]=be(te,e);a(s),Lt(e,t,s,{},!0)},Pt=(e,t,s,a,n,l)=>{const r=be(be(B,e)?.[0],n);if(!m(r)&&!l)return Ht(e,s,a,n,r);const o=t=>{Bt(e,s,t,be(a,t)),Nt(e,s,t,-1),Te(a,t)};m(r)?o(n):fe(a,o),oe(a)&&(kt(e,s,-1),oe(Te(t,s))&&(jt(e,-1),Te(Se,e),Te(te,e),Te(ie,e)))},Wt=e=>{const t=be(K,e);if(!m(t))return xt(e,t);_t(e,be(me,e)),Ut(e,-1),Te(me,e)},jt=(e,t)=>nt(I,e,t),kt=(e,t,s)=>nt(Ce(S,e,ge),t,s)&&Te(R,e,Ce(R,e,(()=>0))+s),Nt=(e,t,s,a)=>{const n=be(ie,e),l=be(n,s)??0;(0==l&&1==a||1==l&&-1==a)&&nt(Ce(M,e,ge),s,a),Te(n,s,l!=-a?l+a:null),nt(Ce(Ce(J,e,ge),t,ge),s,a)},Bt=(e,t,s,a,n)=>{Ce(Ce(Ce(z,e,ge),t,ge),s,(()=>[a,0]))[1]=n,d[3]?.(e,t,s,n)},Ut=(e,t)=>nt(P,e,t),_t=(e,t,s)=>{Ce(W,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},qt=(e,t,s,a,n)=>(A(Ce(Ce(Ce(j,e,ge),t,ge),s,(()=>[])),a),n),Gt=(e,t,s)=>(A(Ce(k,e,(()=>[])),t),s),Kt=(e,t,s)=>L(be(be(be(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(cs(e,t,s))])),Qt=e=>L(be(W,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(gs(e))])),Xt=e=>oe(j)||oe(et[e])?0:de(e?Me(j):j,((t,s)=>de(t,((t,a)=>de(t,((t,n)=>gt(et[e],[s,a,n],t))))))),Yt=e=>oe(k)||oe(tt[e])?0:de(e?ye(k):k,((t,s)=>gt(tt[e],[s],t))),Zt=(e,t,s,a)=>{if(!oe(e))return gt(t,a,(()=>pe(e))),fe(e,((e,t)=>gt(s,[...a??[],e],1==t))),1},$t=e=>{const t=hs();t!=a&&gt(Le[e],void 0,t);const s=oe(Ae[e]),n=oe(je[e])&&oe(ke[e])&&oe(ze[e])&&oe(Pe[e])&&oe(xe[e])&&oe(Fe[e])&&oe(Oe[e])&&s&&oe(Ee[e])&&oe(Je[e]),l=oe(Qe[e])&&oe(We[e])&&oe(De[e])&&oe(He[e]);if(!n||!l){const t=e?[ye(I),Ie(M),ye(R),Ie(S),Me(J),Me(z)]:[I,M,R,S,J,z];if(!n){Zt(t[0],Ee[e],Je[e]),de(t[1],((t,s)=>Zt(t,xe[e],Fe[e],[s]))),de(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const a=$();de(t[3],((t,n)=>{Zt(t,ze[e],Pe[e],[n])&&!s&&(gt(Ae[e],[n,null]),ee(a,n))})),s||de(t[5],((t,s)=>{if(!re(a,s)){const a=$();de(t,(e=>de(e,(([t,s],n)=>s!==t?ee(a,n):ue(e,n))))),de(a,(t=>gt(Ae[e],[s,t])))}})),de(t[4],((t,s)=>de(t,((t,a)=>Zt(t,je[e],ke[e],[s,a])))))}if(!l){let s;de(t[5],((t,a)=>{let n;de(t,((t,l)=>{let r;de(t,(([t,o],i)=>{o!==t&&(gt(Qe[e],[a,l,i],o,t,Kt),s=n=r=1)})),r&&gt(We[e],[a,l],Kt)})),n&&gt(De[e],[a],Kt)})),s&&gt(He[e],void 0,Kt)}}},es=e=>{const t=vs();t!=n&&gt(st[e],void 0,t);const s=oe(rt[e])&&oe(ot[e]),a=oe(it[e])&&oe(at[e]);if(!s||!a){const t=e?[ye(P),ye(W)]:[P,W];if(s||Zt(t[0],rt[e],ot[e]),!a){let s;de(t[1],(([t,a],n)=>{a!==t&&(gt(it[e],[n],a,t,Qt),s=1)})),s&&gt(at[e],void 0,Qt)}}},ts=(e,...t)=>(Js((()=>e(...O(t,y)))),Fs),ss=()=>we(Se),as=()=>he(Se),ns=e=>he(be(ie,y(e))),ls=e=>se(be(Se,y(e))),rs=e=>he(be(Se,y(e))),os=(e,t,s,a=0,n)=>{return O(D((r=be(Se,y(e)),o=(e,s)=>[m(t)?s:be(e,y(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),a,m(n)?n:a+n),(([,e])=>e));var l,r,o},is=(e,t)=>he(be(be(Se,y(e)),y(t))),cs=(e,t,s)=>be(be(be(Se,y(e)),y(t)),y(s)),ds=()=>pe(me),us=()=>he(me),gs=e=>be(me,y(e)),hs=()=>!oe(Se),bs=e=>re(Se,y(e)),fs=(e,t)=>re(be(ie,y(e)),y(t)),Ts=(e,t)=>re(be(Se,y(e)),y(t)),Cs=(e,t,s)=>re(be(be(Se,y(e)),y(t)),y(s)),vs=()=>!oe(me),ps=e=>re(me,y(e)),Vs=e=>ts((()=>(e=>Z(e,Tt,qt))(e)?St(e):0)),ws=e=>ts((()=>pt(e)?Dt(e):0)),ys=e=>{try{Rt($e(e))}catch{}return Fs},Is=t=>ts((()=>{if((e=Z(t,(e=>Z(e,ft))))&&(It(t),!oe(Se))){const e=ss();Rs(),Vs(e)}})),Ms=e=>ts((()=>{if(t=(e=>Z(e,ft))(e)){const s=ds();Es(),Ls(),t=!0,Mt(e),ws(s)}})),Rs=()=>ts((()=>St({}))),Ss=e=>ts((e=>re(Se,e)?zt(e):0),e),ms=(e,t)=>ts(((e,t)=>L(be(Se,e),(s=>re(s,t)?At(e,s,t):0))),e,t),Ls=()=>ts((()=>Dt({}))),Hs=()=>ts((()=>{It({}),e=!1})),Es=()=>ts((()=>{Mt({}),t=!1})),Js=(e,t)=>{if(-1!=r){Ds();const s=e();return xs(t),s}},Ds=()=>(-1!=r&&r++,1==r&&(d[0]?.(),gt(ct)),Fs),xs=e=>(r>0&&(r--,0==r&&(r=1,Xt(1),oe(z)||$t(1),Yt(1),oe(W)||es(1),e?.(Fs)&&(de(z,((e,t)=>de(e,((e,s)=>de(e,(([e],a)=>Xe(Fs,t,s,a,e))))))),ce(z),de(W,(([e],t)=>Ye(Fs,t,e))),ce(W)),gt(dt[0],void 0),r=-1,Xt(0),oe(z)||$t(0),Yt(0),oe(W)||es(0),d[1]?.(),gt(dt[1],void 0),d[2]?.(),r=0,a=hs(),n=vs(),F([I,M,R,S,J,z,j,P,W,k],ce))),Fs),Fs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:as,getTable:e=>Ve(be(Se,y(e))),getTableCellIds:ns,getRowCount:ls,getRowIds:rs,getSortedRowIds:os,getRow:(e,t)=>pe(be(be(Se,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:bs,hasTableCell:fs,hasRow:Ts,hasCell:Cs,hasValues:vs,hasValue:ps,getTablesJson:()=>Ze(Se),getValuesJson:()=>Ze(me),getJson:()=>Ze([Se,me]),getTablesSchemaJson:()=>Ze(N),getValuesSchemaJson:()=>Ze(_),getSchemaJson:()=>Ze([N,_]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(X(e)?Rs:Vs)(e),(X(t)?Ls:ws)(t)})),setTables:Vs,setTable:(e,t)=>ts((e=>Tt(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>Ct(e,t,s)?Lt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let a;return Ct(e,a,t)&&(e=y(e),Lt(e,Ot(e),a=Ft(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(Ct(e,t,s,1)){const a=Ot(e);Q(s,((s,n)=>Et(e,a,t,n,s)))}}),e,t),setCell:(e,t,s,a)=>ts(((e,t,s)=>L(vt(e,t,s,E(a)?a(cs(e,t,s)):a),(a=>Et(e,Ot(e),t,s,a)))),e,t,s),setValues:ws,setPartialValues:e=>ts((()=>pt(e,1)?Q(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ts((e=>L(Vt(e,E(t)?t(gs(e)):t),(t=>xt(e,t)))),e),applyChanges:e=>ts((()=>{Q(e[0],((e,t)=>m(e)?Ss(t):Q(e,((e,s)=>m(e)?ms(t,s):Q(e,((e,a)=>Xe(Fs,t,s,a,e))))))),Q(e[1],((e,t)=>Ye(Fs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Jt($e(e))}catch{}return Fs},setJson:e=>ts((()=>{try{const[t,s]=$e(e);Rt(t),Jt(s)}catch{ys(e)}})),setTablesSchema:Is,setValuesSchema:Ms,setSchema:(e,t)=>ts((()=>{Is(e),Ms(t)})),delTables:Rs,delTable:Ss,delRow:ms,delCell:(e,t,s,a)=>ts(((e,t,s)=>L(be(Se,e),(n=>L(be(n,t),(l=>re(l,s)?Pt(e,n,t,l,s,a):0))))),e,t,s),delValues:Ls,delValue:e=>ts((e=>re(me,e)?Wt(e):0),e),delTablesSchema:Hs,delValuesSchema:Es,delSchema:()=>ts((()=>{Hs(),Es()})),transaction:Js,startTransaction:Ds,getTransactionChanges:()=>[pe(z,((e,t)=>-1===be(I,t)?void 0:pe(e,((e,s)=>-1===be(be(S,t),s)?void 0:pe(e,(([,e])=>e),(e=>Ge(e)))),oe,X)),oe,X),pe(W,(([,e])=>e),(e=>Ge(e))),1],getTransactionLog:()=>[!oe(z),!oe(W),we(z,qe,Ge),we(j),pe(W,qe,Ge),pe(k),pe(I),Ve(S),we(J),pe(P)],finishTransaction:xs,forEachTable:e=>de(Se,((t,s)=>e(s,(e=>de(t,((t,s)=>e(s,(e=>fe(t,e))))))))),forEachTableCell:(e,t)=>fe(be(ie,y(e)),t),forEachRow:(e,t)=>de(be(Se,y(e)),((e,s)=>t(s,(t=>fe(e,t))))),forEachCell:(e,t,s)=>fe(be(be(Se,y(e)),y(t)),s),forEachValue:e=>fe(me,e),addSortedRowIdsListener:(e,t,s,a,n,l,r)=>{let o=os(e,t,s,a,n);return ut((()=>{const r=os(e,t,s,a,n);var i,c,d;c=o,x(i=r)===x(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(o=r,l(Fs,e,t,s,a,n,o))}),Ae[r?1:0],[e,t],[as])},addStartTransactionListener:e=>ut(e,ct),addWillFinishTransactionListener:e=>ut(e,dt[0]),addDidFinishTransactionListener:e=>ut(e,dt[1]),callListener:e=>(bt(e),Fs),delListener:e=>(ht(e),Fs),getListenerStats:()=>({hasTables:Ue(Le),tables:Ue(He),tableIds:Ue(Ee),hasTable:Ue(Je),table:Ue(De),tableCellIds:Ue(xe),hasTableCell:Ue(Fe,ne),rowCount:Ue(Oe),rowIds:Ue(ze),sortedRowIds:Ue(Ae),hasRow:Ue(Pe,ne),row:Ue(We,ne),cellIds:Ue(je,ne),hasCell:Ue(ke,le),cell:Ue(Qe,le),invalidCell:Ue(et,le),hasValues:Ue(st),values:Ue(at),valueIds:Ue(rt),hasValue:Ue(ot),value:Ue(it),invalidValue:Ue(tt),transaction:ae(ct)+Ue(dt)}),isMergeable:()=>!1,createStore:lt,addListener:ut,callListeners:gt,setInternalListeners:(e,t,s,a,n)=>d=[e,t,s,a,n]};return Q({[c+g]:[0,Le,[],()=>[hs()]],[g]:[0,He],[h]:[0,Ee],[c+u]:[1,Je,[as],e=>[bs(...e)]],[u]:[1,De,[as]],[u+v]:[1,xe,[as]],[c+u+C]:[2,Fe,[as,ns],e=>[fs(...e)]],[f]:[1,Oe,[as]],[T]:[1,ze,[as]],[c+b]:[2,Pe,[as,rs],e=>[Ts(...e)]],[b]:[2,We,[as,rs]],[v]:[2,je,[as,rs]],[c+C]:[3,ke,[as,rs,is],e=>[Cs(...e)]],[C]:[3,Qe,[as,rs,is],e=>Be(cs(...e))],InvalidCell:[3,et],[c+V]:[0,st,[],()=>[vs()]],[V]:[0,at],[w]:[0,rt],[c+p]:[1,ot,[us],e=>[ps(...e)]],[p]:[1,it,[us],e=>Be(gs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,a],n)=>{Fs["add"+n+"Listener"]=(...n)=>ut(n[e],t[n[e+1]?1:0],e>0?D(n,0,e):void 0,s,a)})),U(Fs)},rt=2**36,ot=2**30,it=2**24,ct=2**18,dt=4096,ut={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},gt=(e=s)=>[Ae(e),Ae(e)];e.createMergeableStore=e=>{let t=1,a=gt(),n=0;const l=ge(),r=$(),[o,i]=(e=>{let t=0,s=-1;const a=L(e,(e=>{const t=me(e);return st(t/it)+st(t/ct)+st(t/dt)+st(t/64)+st(t)}),(()=>((e=16)=>z(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""))(5))),n=e=>{const a=t,[n,l]=m(e)||""==e?[0,0]:[at(r=e,0)*rt+at(r,1)*ot+at(r,2)*it+at(r,3)*ct+at(r,4)*dt+64*at(r,5)+at(r,6),at(r,7)*ct+at(r,8)*dt+64*at(r,9)+at(r,10)];var r;t=R(a,n,globalThis.HLC_TIME??Date.now()),s=t==a?t==n?R(s,l):s:t==n?l:-1};return[()=>{return n(),l=++s,st((e=t)/rt)+st(e/ot)+st(e/it)+st(e/ct)+st(e/dt)+st(e/64)+st(e)+st(l/ct)+st(l/dt)+st(l/64)+st(l)+a;var e,l},n]})(e),c=lt(),d=e=>{const s=t;return t=0,e(),t=s,f},u=(e,t=0)=>{const n={},l={},[[r,o=s,c=0],d]=e,[u,h]=a,[b,f,T]=u;let C=t?c:T,v=o;K(r,(([e,a=s,l=0],r)=>{const o=Ce(b,r,Ae),[i,c,d]=o;let u=t?l:d,h=a;K(e,((e,s)=>{const[a,l,o]=g(e,Ce(i,s,Ae),Y(Y(n,r,_),s,_),t);u^=t?0:(l?De(s,l):0)^De(s,o),h=Fe(h,a)})),u^=t?0:xe(c,a),Oe(o,u,a),C^=t?0:(d?De(r,d):0)^De(r,o[2]),v=Fe(v,h)})),C^=t?0:xe(f,o),Oe(u,C,o);const[p]=g(d,h,l,t);return i(Fe(v,p)),[n,l,1]},g=(e,t,a,n)=>{const[l,r=s,o=0]=e,[i,c,d]=t;let u=r,g=n?o:d;return K(l,(([e,t,l=0],r)=>{const o=Ce(i,r,(()=>[void 0,s,0])),[,c,d]=o;(!c||t>c)&&(Oe(o,n?l:me(Ze(e??null)+":"+t),t),o[0]=e,a[r]=e,g^=n?0:De(r,d)^De(r,o[2]),u=Fe(u,t))})),g^=n?0:xe(c,r),Oe(t,g,r),[u,d,t[2]]},h=()=>[Pe(a[0],(e=>Pe(e,(e=>Pe(e))))),Pe(a[1])],b=e=>d((()=>c.applyChanges(u(e)))),f={getMergeableContent:h,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>pe(a[0][0],Je),getMergeableTableDiff:e=>{const t=ze(a[0][1]),s={};return fe(a[0][0],((a,[n,l,r])=>q(e,a)?r!=e[a]?s[a]=r:0:t[0][a]=We([n,l],(e=>We(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a,,n])=>n!=e?fe(a,((e,[,,a])=>Y(t,s,_)[e]=a)):0)))),t},getMergeableRowDiff:e=>{const t=ze(a[0][1]),s={};return K(e,((e,n)=>fe(be(a[0][0],n)?.[0],((a,[l,r,o])=>q(e,a)?o!==e[a]?Y(s,n,_)[a]=o:0:Y(t[0],n,ze)[0][a]=We([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a])=>K(e,((e,n)=>L(be(a,n),(([a,,l])=>l!==e?fe(a,((e,[,,a])=>Y(Y(t,s,_),n,_)[e]=a)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return K(e,((e,s)=>K(e,((e,a)=>L(be(t,s),(([t,l])=>L(be(t,a),(([t,r])=>fe(t,((t,[o,i,c])=>c!==e[t]?Y(Y(n,s,(()=>ze(l)))[0],a,(()=>ze(r)))[0][t]=[o,i]:0)))))))))),Ee(n,s)},getMergeableValueHashes:()=>pe(a[1][0],Je),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=pe(t,He,(([,,t],s)=>t==e?.[s]));return Ee(n,s)},setMergeableContent:e=>d((()=>(e=>J(e)&&2==x(e)&&je(e[0],(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&je(e[1],(e=>Z(e,(e=>je(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),a=gt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{n=1,c.setContent(e),n=0})),f),getTransactionMergeableChanges:()=>{const[[e,t],[s,n]]=a,o={};de(l,((t,s)=>L(be(e,s),(([e,a])=>{const n={};de(t,((t,s)=>L(be(e,s),(([e,a])=>{const l={};de(t,(t=>{L(be(e,t),(([e,s])=>l[t]=Ee(e,s)))})),n[s]=Ee(l,a)})))),o[s]=Ee(n,a)}))));const i={};return de(r,(e=>L(be(s,e),(([t,s])=>i[e]=Ee(t,s))))),[Ee(o,t),Ee(i,n),1]},applyMergeableChanges:b,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ce(l),ce(r)}),((e,a,r,i)=>{ee(Ce(Ce(l,e,ge),a,$),r),t&&u([[{[e]:[{[a]:[{[r]:[i,n?s:o()]}]}]}],[{}],1])}),((e,a)=>{ee(r,e),t&&u([[{}],[{[e]:[a,n?s:o()]}],1])})),Q(c,((e,t)=>f[t]=I(t,"set")||I(t,"del")||I(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),f):I(t,"add")&&M(t,"Listener")?(...s)=>{const a=ut[D(t,3,-8)]??0,n=s[a];return s[a]=(e,...t)=>n(f,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),U(f)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",a=t(s),n=t(!0),l=t(0),r=t(t),o="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,b="Row",f=b+"Count",T=b+d,C="Cell",v=C+d,p="Value",V=p+"s",w=p+d,y=e=>s+e,I=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),R=Math.max,S=isFinite,m=e=>null==e,L=(e,t,s)=>m(e)?s?.():t(e),H=e=>e==a||e==n,E=e=>t(e)==r,J=e=>Array.isArray(e),D=(e,t,s)=>e.slice(t,s),x=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,t,s)=>e.reduce(t,s),A=(e,...t)=>e.push(...t),P=Object,W=e=>P.getPrototypeOf(e),j=P.entries,k=P.isFrozen,N=e=>!m(e)&&L(W(e),(e=>e==P.prototype||m(W(e))),(()=>!0)),B=P.keys,U=P.freeze,_=(e=[])=>P.fromEntries(e),q=(e,t)=>t in e,G=(e,t)=>(delete e[t],e),K=(e,t)=>F(j(e),(([e,s])=>t(s,e))),Q=(e,t)=>O(j(e),(([e,s])=>t(s,e))),X=e=>N(e)&&0==(e=>x(B(e)))(e),Y=(e,t,s)=>(q(e,t)||(e[t]=s()),e[t]),Z=(e,t,s,a=0)=>m(e)||!N(e)||!a&&X(e)||k(e)?(s?.(),!1):(Q(e,((s,a)=>{t(s,a)||G(e,a)})),!!a||!X(e)),$=e=>new Set(J(e)||m(e)?e:[e]),ee=(e,t)=>e?.add(t),te=e=>t=>z(ie(t),((t,s)=>t+e(s)),0),se=e=>e?.size??0,ae=te(se),ne=te(ae),le=te(ne),re=(e,t)=>e?.has(t)??!1,oe=e=>m(e)||0==se(e),ie=e=>[...e?.values()??[]],ce=e=>e.clear(),de=(e,t)=>e?.forEach(t),ue=(e,t)=>e?.delete(t),ge=e=>new Map(e),he=e=>[...e?.keys()??[]],be=(e,t)=>e?.get(t),fe=(e,t)=>de(e,((e,s)=>t(s,e))),Te=(e,t,s)=>m(s)?(ue(e,t),e):e?.set(t,s),Ce=(e,t,s,a)=>(re(e,t)?a?.(be(e,t)):Te(e,t,s()),be(e,t)),ve=(e,t,s,a=Te)=>(Q(t,((t,a)=>s(e,a,t))),fe(e,(s=>q(t,s)?0:a(e,s))),e),pe=(e,t,s,a)=>{const n={};return de(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!a?.(s)&&(n[l]=s)}})),n},Ve=(e,t,s)=>pe(e,(e=>pe(e,t,s)),oe,X),we=(e,t,s)=>pe(e,(e=>Ve(e,t,s)),oe,X),ye=(e,t)=>{const s=ge();return de(e,((e,a)=>s.set(a,t?.(e)??e))),s},Ie=e=>ye(e,ye),Me=e=>ye(e,Ie),Re=(e,t,s,a,n=0)=>L((s?Ce:be)(e,t[n],n>x(t)-2?s:ge),(l=>{if(n>x(t)-2)return a?.(l)&&Te(e,t[n]),l;const r=Re(l,t,s,a,n+1);return oe(l)&&Te(e,t[n]),r})),Se=new globalThis.TextEncoder,me=e=>{let t=2166136261;return F(Se.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},Le=([e,t,s])=>[e,t,s],He=([e,t])=>Ee(e,t),Ee=(e,t)=>t?[e,t]:[e],Je=e=>e[2],De=(e,t)=>me(e+":"+t),xe=(e,t)=>t>e?(e?me(e):0)^me(t):0,Fe=(e,t)=>((e??"")>(t??"")?e:t)??"",Oe=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},ze=(e=s)=>Ee(_(),e),Ae=(e=s)=>[ge(),e,0],Pe=([e,t,s],a=Le)=>[pe(e,a),t,s],We=([e,t],s=He)=>Ee(pe(e,s),t),je=(e,s)=>{return J(e)&&3==x(e)&&(n=e[1],t(n)==a)&&t(e[2])==l&&S(e[2])&&s(e[0]);var n},ke=/^\d+$/,Ne=()=>{const e=[];let t=0;return[a=>(a?e.shift():null)??s+t++,t=>{ke.test(t)&&x(e)<1e3&&A(e,t)}]},Be=e=>[e,e],Ue=(e,t=ae)=>t(e[0])+t(e[1]),_e=()=>[ge(),ge()],qe=e=>[...e],Ge=([e,t])=>e===t,Ke=e=>{const s=t(e);return H(s)||s==l&&S(e)?s:void 0},Qe=e=>m(e)||!m(Ke(e)),Xe=(e,t,s,a,n)=>m(n)?e.delCell(t,s,a,!0):e.setCell(t,s,a,n),Ye=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?P.fromEntries([...t]):t)),$e=JSON.parse,et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=ge(O(et,((e,t)=>[e,t]))),st=e=>et[63&e],at=(e,t)=>be(tt,e[t])??0,nt=(e,t,s)=>Te(e,t,be(e,t)==-s?void 0:s),lt=()=>{let e,t,a=!1,n=!1,r=0,d=[];const I=ge(),M=ge(),R=ge(),S=ge(),J=ge(),z=ge(),P=ge(),W=ge(),j=ge(),k=ge(),N=ge(),B=ge(),_=ge(),K=ge(),Y=$(),te=ge(),ie=ge(),Se=ge(),me=ge(),Le=_e(),He=_e(),Ee=_e(),Je=_e(),De=_e(),xe=_e(),Fe=_e(),Oe=_e(),ze=_e(),Ae=_e(),Pe=_e(),We=_e(),je=_e(),ke=_e(),Qe=_e(),et=_e(),tt=_e(),st=_e(),at=_e(),rt=_e(),ot=_e(),it=_e(),ct=ge(),dt=_e(),[ut,gt,ht,bt]=(e=>{let t;const[a,n]=Ne(),l=ge();return[(e,n,r,o=[],i=(()=>[]))=>{t??=Fs;const c=a(1);return Te(l,c,[e,n,r,o,i]),ee(Re(n,r??[s],$),c),c},(e,a,...n)=>F(((e,t=[s])=>{const a=[],n=(e,s)=>s==x(t)?A(a,e):null===t[s]?de(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(be(e,t),s+1)));return n(e,0),a})(e,a),(e=>de(e,(e=>be(l,e)[0](t,...a??[],...n))))),e=>L(be(l,e),(([,t,a])=>(Re(t,a??[s],void 0,(t=>(ue(t,e),oe(t)?1:0))),Te(l,e),n(e),a))),e=>L(be(l,e),(([e,,s=[],a,n])=>{const l=(...r)=>{const o=x(r);o==x(s)?e(t,...r,...n(r)):m(s[o])?F(a[o]?.(...r)??[],(e=>l(...r,e))):l(...r,s[o])};l()}))]})(),ft=e=>{if(!Z(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!H(t)&&t!=l||(Ke(e[i])!=t&&G(e,i),0))},Tt=(t,s)=>(!e||re(N,s)||qt(s))&&Z(t,((e,t)=>Ct(s,t,e)),(()=>qt(s))),Ct=(e,t,s,a)=>Z(a?s:wt(s,e,t),((a,n)=>L(vt(e,t,n,a),(e=>(s[n]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,a,n)=>e?L(be(be(N,t),a),(e=>Ke(n)!=e[o]?qt(t,s,a,n,e[i]):n),(()=>qt(t,s,a,n))):m(Ke(n))?qt(t,s,a,n):n,pt=(e,t)=>Z(t?e:yt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),Vt=(e,s)=>t?L(be(_,e),(t=>Ke(s)!=t[o]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):m(Ke(s))?Gt(e,s):s,wt=(e,t,s)=>(L(be(B,t),(([a,n])=>{de(a,((t,s)=>{q(e,s)||(e[s]=t)})),de(n,(a=>{q(e,a)||qt(t,s,a)}))})),e),yt=e=>(t&&(de(K,((t,s)=>{q(e,s)||(e[s]=t)})),de(Y,(t=>{q(e,t)||Gt(t)}))),e),It=e=>ve(N,e,((e,t,s)=>{const a=ge(),n=$();ve(Ce(N,t,ge),s,((e,t,s)=>{Te(e,t,s),L(s[i],(e=>Te(a,t,e)),(()=>ee(n,t)))})),Te(B,t,[a,n])}),((e,t)=>{Te(N,t),Te(B,t)})),Mt=e=>ve(_,e,((e,t,s)=>{Te(_,t,s),L(s[i],(e=>Te(K,t,e)),(()=>ee(Y,t)))}),((e,t)=>{Te(_,t),Te(K,t),ue(Y,t)})),Rt=e=>X(e)?Rs():Vs(e),St=e=>ve(Se,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>ve(Ce(Se,e,(()=>(jt(e,1),Te(te,e,Ne()),Te(ie,e,ge()),ge()))),t,((t,s,a)=>Lt(e,t,s,a)),((t,s)=>At(e,t,s))),Lt=(e,t,s,a,n)=>ve(Ce(t,s,(()=>(kt(e,s,1),ge()))),a,((t,a,n)=>Ht(e,s,t,a,n)),((a,l)=>Pt(e,t,s,a,l,n))),Ht=(e,t,s,a,n)=>{re(s,a)||Nt(e,t,a,1);const l=be(s,a);n!==l&&(Bt(e,t,a,l,n),Te(s,a,n))},Et=(e,t,s,a,n)=>L(be(t,s),(t=>Ht(e,s,t,a,n)),(()=>Lt(e,t,s,wt({[a]:n},e,s)))),Jt=e=>X(e)?Ls():ws(e),Dt=e=>ve(me,e,((e,t,s)=>xt(t,s)),((e,t)=>Wt(t))),xt=(e,t)=>{re(me,e)||Ut(e,1);const s=be(me,e);t!==s&&(_t(e,s,t),Te(me,e,t))},Ft=(e,t)=>{const[s]=be(te,e),a=s(t);return re(be(Se,e),a)?Ft(e,t):a},Ot=e=>be(Se,e)??mt(e,{}),zt=e=>mt(e,{}),At=(e,t,s)=>{const[,a]=be(te,e);a(s),Lt(e,t,s,{},!0)},Pt=(e,t,s,a,n,l)=>{const r=be(be(B,e)?.[0],n);if(!m(r)&&!l)return Ht(e,s,a,n,r);const o=t=>{Bt(e,s,t,be(a,t)),Nt(e,s,t,-1),Te(a,t)};m(r)?o(n):fe(a,o),oe(a)&&(kt(e,s,-1),oe(Te(t,s))&&(jt(e,-1),Te(Se,e),Te(te,e),Te(ie,e)))},Wt=e=>{const t=be(K,e);if(!m(t))return xt(e,t);_t(e,be(me,e)),Ut(e,-1),Te(me,e)},jt=(e,t)=>nt(I,e,t),kt=(e,t,s)=>nt(Ce(S,e,ge),t,s)&&Te(R,e,Ce(R,e,(()=>0))+s),Nt=(e,t,s,a)=>{const n=be(ie,e),l=be(n,s)??0;(0==l&&1==a||1==l&&-1==a)&&nt(Ce(M,e,ge),s,a),Te(n,s,l!=-a?l+a:null),nt(Ce(Ce(J,e,ge),t,ge),s,a)},Bt=(e,t,s,a,n)=>{Ce(Ce(Ce(z,e,ge),t,ge),s,(()=>[a,0]))[1]=n,d[3]?.(e,t,s,n)},Ut=(e,t)=>nt(P,e,t),_t=(e,t,s)=>{Ce(W,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},qt=(e,t,s,a,n)=>(A(Ce(Ce(Ce(j,e,ge),t,ge),s,(()=>[])),a),n),Gt=(e,t,s)=>(A(Ce(k,e,(()=>[])),t),s),Kt=(e,t,s)=>L(be(be(be(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(cs(e,t,s))])),Qt=e=>L(be(W,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(gs(e))])),Xt=e=>oe(j)||oe(et[e])?0:de(e?Me(j):j,((t,s)=>de(t,((t,a)=>de(t,((t,n)=>gt(et[e],[s,a,n],t))))))),Yt=e=>oe(k)||oe(tt[e])?0:de(e?ye(k):k,((t,s)=>gt(tt[e],[s],t))),Zt=(e,t,s,a)=>{if(!oe(e))return gt(t,a,(()=>pe(e))),fe(e,((e,t)=>gt(s,[...a??[],e],1==t))),1},$t=e=>{const t=hs();t!=a&&gt(Le[e],void 0,t);const s=oe(Ae[e]),n=oe(je[e])&&oe(ke[e])&&oe(ze[e])&&oe(Pe[e])&&oe(xe[e])&&oe(Fe[e])&&oe(Oe[e])&&s&&oe(Ee[e])&&oe(Je[e]),l=oe(Qe[e])&&oe(We[e])&&oe(De[e])&&oe(He[e]);if(!n||!l){const t=e?[ye(I),Ie(M),ye(R),Ie(S),Me(J),Me(z)]:[I,M,R,S,J,z];if(!n){Zt(t[0],Ee[e],Je[e]),de(t[1],((t,s)=>Zt(t,xe[e],Fe[e],[s]))),de(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const a=$();de(t[3],((t,n)=>{Zt(t,ze[e],Pe[e],[n])&&!s&&(gt(Ae[e],[n,null]),ee(a,n))})),s||de(t[5],((t,s)=>{if(!re(a,s)){const a=$();de(t,(e=>de(e,(([t,s],n)=>s!==t?ee(a,n):ue(e,n))))),de(a,(t=>gt(Ae[e],[s,t])))}})),de(t[4],((t,s)=>de(t,((t,a)=>Zt(t,je[e],ke[e],[s,a])))))}if(!l){let s;de(t[5],((t,a)=>{let n;de(t,((t,l)=>{let r;de(t,(([t,o],i)=>{o!==t&&(gt(Qe[e],[a,l,i],o,t,Kt),s=n=r=1)})),r&&gt(We[e],[a,l],Kt)})),n&&gt(De[e],[a],Kt)})),s&&gt(He[e],void 0,Kt)}}},es=e=>{const t=vs();t!=n&&gt(st[e],void 0,t);const s=oe(rt[e])&&oe(ot[e]),a=oe(it[e])&&oe(at[e]);if(!s||!a){const t=e?[ye(P),ye(W)]:[P,W];if(s||Zt(t[0],rt[e],ot[e]),!a){let s;de(t[1],(([t,a],n)=>{a!==t&&(gt(it[e],[n],a,t,Qt),s=1)})),s&&gt(at[e],void 0,Qt)}}},ts=(e,...t)=>(Js((()=>e(...O(t,y)))),Fs),ss=()=>we(Se),as=()=>he(Se),ns=e=>he(be(ie,y(e))),ls=e=>se(be(Se,y(e))),rs=e=>he(be(Se,y(e))),os=(e,t,s,a=0,n)=>{return O(D((r=be(Se,y(e)),o=(e,s)=>[m(t)?s:be(e,y(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),a,m(n)?n:a+n),(([,e])=>e));var l,r,o},is=(e,t)=>he(be(be(Se,y(e)),y(t))),cs=(e,t,s)=>be(be(be(Se,y(e)),y(t)),y(s)),ds=()=>pe(me),us=()=>he(me),gs=e=>be(me,y(e)),hs=()=>!oe(Se),bs=e=>re(Se,y(e)),fs=(e,t)=>re(be(ie,y(e)),y(t)),Ts=(e,t)=>re(be(Se,y(e)),y(t)),Cs=(e,t,s)=>re(be(be(Se,y(e)),y(t)),y(s)),vs=()=>!oe(me),ps=e=>re(me,y(e)),Vs=e=>ts((()=>(e=>Z(e,Tt,qt))(e)?St(e):0)),ws=e=>ts((()=>pt(e)?Dt(e):0)),ys=e=>{try{Rt($e(e))}catch{}return Fs},Is=t=>ts((()=>{if((e=Z(t,(e=>Z(e,ft))))&&(It(t),!oe(Se))){const e=ss();Rs(),Vs(e)}})),Ms=e=>ts((()=>{if(t=(e=>Z(e,ft))(e)){const s=ds();Es(),Ls(),t=!0,Mt(e),ws(s)}})),Rs=()=>ts((()=>St({}))),Ss=e=>ts((e=>re(Se,e)?zt(e):0),e),ms=(e,t)=>ts(((e,t)=>L(be(Se,e),(s=>re(s,t)?At(e,s,t):0))),e,t),Ls=()=>ts((()=>Dt({}))),Hs=()=>ts((()=>{It({}),e=!1})),Es=()=>ts((()=>{Mt({}),t=!1})),Js=(e,t)=>{if(-1!=r){Ds();const s=e();return xs(t),s}},Ds=()=>(-1!=r&&r++,1==r&&(d[0]?.(),gt(ct)),Fs),xs=e=>(r>0&&(r--,0==r&&(r=1,Xt(1),oe(z)||$t(1),Yt(1),oe(W)||es(1),e?.(Fs)&&(de(z,((e,t)=>de(e,((e,s)=>de(e,(([e],a)=>Xe(Fs,t,s,a,e))))))),ce(z),de(W,(([e],t)=>Ye(Fs,t,e))),ce(W)),gt(dt[0],void 0),r=-1,Xt(0),oe(z)||$t(0),Yt(0),oe(W)||es(0),d[1]?.(),gt(dt[1],void 0),d[2]?.(),r=0,a=hs(),n=vs(),F([I,M,R,S,J,z,j,P,W,k],ce))),Fs),Fs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:as,getTable:e=>Ve(be(Se,y(e))),getTableCellIds:ns,getRowCount:ls,getRowIds:rs,getSortedRowIds:os,getRow:(e,t)=>pe(be(be(Se,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:bs,hasTableCell:fs,hasRow:Ts,hasCell:Cs,hasValues:vs,hasValue:ps,getTablesJson:()=>Ze(Se),getValuesJson:()=>Ze(me),getJson:()=>Ze([Se,me]),getTablesSchemaJson:()=>Ze(N),getValuesSchemaJson:()=>Ze(_),getSchemaJson:()=>Ze([N,_]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(X(e)?Rs:Vs)(e),(X(t)?Ls:ws)(t)})),setTables:Vs,setTable:(e,t)=>ts((e=>Tt(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>Ct(e,t,s)?Lt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let a;return Ct(e,a,t)&&(e=y(e),Lt(e,Ot(e),a=Ft(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(Ct(e,t,s,1)){const a=Ot(e);Q(s,((s,n)=>Et(e,a,t,n,s)))}}),e,t),setCell:(e,t,s,a)=>ts(((e,t,s)=>L(vt(e,t,s,E(a)?a(cs(e,t,s)):a),(a=>Et(e,Ot(e),t,s,a)))),e,t,s),setValues:ws,setPartialValues:e=>ts((()=>pt(e,1)?Q(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ts((e=>L(Vt(e,E(t)?t(gs(e)):t),(t=>xt(e,t)))),e),applyChanges:e=>ts((()=>{Q(e[0],((e,t)=>m(e)?Ss(t):Q(e,((e,s)=>m(e)?ms(t,s):Q(e,((e,a)=>Xe(Fs,t,s,a,e))))))),Q(e[1],((e,t)=>Ye(Fs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Jt($e(e))}catch{}return Fs},setJson:e=>ts((()=>{try{const[t,s]=$e(e);Rt(t),Jt(s)}catch{ys(e)}})),setTablesSchema:Is,setValuesSchema:Ms,setSchema:(e,t)=>ts((()=>{Is(e),Ms(t)})),delTables:Rs,delTable:Ss,delRow:ms,delCell:(e,t,s,a)=>ts(((e,t,s)=>L(be(Se,e),(n=>L(be(n,t),(l=>re(l,s)?Pt(e,n,t,l,s,a):0))))),e,t,s),delValues:Ls,delValue:e=>ts((e=>re(me,e)?Wt(e):0),e),delTablesSchema:Hs,delValuesSchema:Es,delSchema:()=>ts((()=>{Hs(),Es()})),transaction:Js,startTransaction:Ds,getTransactionChanges:()=>[pe(z,((e,t)=>-1===be(I,t)?void 0:pe(e,((e,s)=>-1===be(be(S,t),s)?void 0:pe(e,(([,e])=>e),(e=>Ge(e)))),oe,X)),oe,X),pe(W,(([,e])=>e),(e=>Ge(e))),1],getTransactionLog:()=>[!oe(z),!oe(W),we(z,qe,Ge),we(j),pe(W,qe,Ge),pe(k),pe(I),Ve(S),we(J),pe(P)],finishTransaction:xs,forEachTable:e=>de(Se,((t,s)=>e(s,(e=>de(t,((t,s)=>e(s,(e=>fe(t,e))))))))),forEachTableCell:(e,t)=>fe(be(ie,y(e)),t),forEachRow:(e,t)=>de(be(Se,y(e)),((e,s)=>t(s,(t=>fe(e,t))))),forEachCell:(e,t,s)=>fe(be(be(Se,y(e)),y(t)),s),forEachValue:e=>fe(me,e),addSortedRowIdsListener:(e,t,s,a,n,l,r)=>{let o=os(e,t,s,a,n);return ut((()=>{const r=os(e,t,s,a,n);var i,c,d;c=o,x(i=r)===x(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(o=r,l(Fs,e,t,s,a,n,o))}),Ae[r?1:0],[e,t],[as])},addStartTransactionListener:e=>ut(e,ct),addWillFinishTransactionListener:e=>ut(e,dt[0]),addDidFinishTransactionListener:e=>ut(e,dt[1]),callListener:e=>(bt(e),Fs),delListener:e=>(ht(e),Fs),getListenerStats:()=>({hasTables:Ue(Le),tables:Ue(He),tableIds:Ue(Ee),hasTable:Ue(Je),table:Ue(De),tableCellIds:Ue(xe),hasTableCell:Ue(Fe,ne),rowCount:Ue(Oe),rowIds:Ue(ze),sortedRowIds:Ue(Ae),hasRow:Ue(Pe,ne),row:Ue(We,ne),cellIds:Ue(je,ne),hasCell:Ue(ke,le),cell:Ue(Qe,le),invalidCell:Ue(et,le),hasValues:Ue(st),values:Ue(at),valueIds:Ue(rt),hasValue:Ue(ot),value:Ue(it),invalidValue:Ue(tt),transaction:ae(ct)+Ue(dt)}),isMergeable:()=>!1,createStore:lt,addListener:ut,callListeners:gt,setInternalListeners:(e,t,s,a,n)=>d=[e,t,s,a,n]};return Q({[c+g]:[0,Le,[],()=>[hs()]],[g]:[0,He],[h]:[0,Ee],[c+u]:[1,Je,[as],e=>[bs(...e)]],[u]:[1,De,[as]],[u+v]:[1,xe,[as]],[c+u+C]:[2,Fe,[as,ns],e=>[fs(...e)]],[f]:[1,Oe,[as]],[T]:[1,ze,[as]],[c+b]:[2,Pe,[as,rs],e=>[Ts(...e)]],[b]:[2,We,[as,rs]],[v]:[2,je,[as,rs]],[c+C]:[3,ke,[as,rs,is],e=>[Cs(...e)]],[C]:[3,Qe,[as,rs,is],e=>Be(cs(...e))],InvalidCell:[3,et],[c+V]:[0,st,[],()=>[vs()]],[V]:[0,at],[w]:[0,rt],[c+p]:[1,ot,[us],e=>[ps(...e)]],[p]:[1,it,[us],e=>Be(gs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,a],n)=>{Fs["add"+n+"Listener"]=(...n)=>ut(n[e],t[n[e+1]?1:0],e>0?D(n,0,e):void 0,s,a)})),U(Fs)},rt=2**36,ot=2**30,it=2**24,ct=2**18,dt=4096,ut={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},gt=(e=s)=>[Ae(e),Ae(e)];e.createMergeableStore=e=>{let t=1,a=gt(),n=0;const l=ge(),r=$(),[o,i]=(e=>{let t=0,s=-1;const a=L(e,(e=>{const t=me(e);return st(t/it)+st(t/ct)+st(t/dt)+st(t/64)+st(t)}),(()=>((e=16)=>z(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""))(5))),n=e=>{const a=t,[n,l]=m(e)||""==e?[0,0]:[at(r=e,0)*rt+at(r,1)*ot+at(r,2)*it+at(r,3)*ct+at(r,4)*dt+64*at(r,5)+at(r,6),at(r,7)*ct+at(r,8)*dt+64*at(r,9)+at(r,10)];var r;t=R(a,n,globalThis.HLC_TIME??Date.now()),s=t==a?t==n?R(s,l):s:t==n?l:-1};return[()=>{return n(),l=++s,st((e=t)/rt)+st(e/ot)+st(e/it)+st(e/ct)+st(e/dt)+st(e/64)+st(e)+st(l/ct)+st(l/dt)+st(l/64)+st(l)+a;var e,l},n]})(e),c=lt(),d=e=>{const s=t;return t=0,e(),t=s,f},u=(e,t=0)=>{const n={},l={},[[r,o=s,c=0],d]=e,[u,h]=a,[b,f,T]=u;let C=t?c:T,v=o;K(r,(([e,a=s,l=0],r)=>{const o=Ce(b,r,Ae),[i,c,d]=o;let u=t?l:d,h=a;K(e,((e,s)=>{const[a,l,o]=g(e,Ce(i,s,Ae),Y(Y(n,r,_),s,_),t);u^=t?0:(l?De(s,l):0)^De(s,o),h=Fe(h,a)})),u^=t?0:xe(c,a),Oe(o,u,a),C^=t?0:(d?De(r,d):0)^De(r,o[2]),v=Fe(v,h)})),C^=t?0:xe(f,o),Oe(u,C,o);const[p]=g(d,h,l,t);return i(Fe(v,p)),[n,l,1]},g=(e,t,a,n)=>{const[l,r=s,o=0]=e,[i,c,d]=t;let u=r,g=n?o:d;return K(l,(([e,t,l=0],r)=>{const o=Ce(i,r,(()=>[void 0,s,0])),[,c,d]=o;(!c||t>c)&&(Oe(o,n?l:me(Ze(e??null)+":"+t),t),o[0]=e,a[r]=e,g^=n?0:De(r,d)^De(r,o[2]),u=Fe(u,t))})),g^=n?0:xe(c,r),Oe(t,g,r),[u,d,t[2]]},h=()=>[Pe(a[0],(e=>Pe(e,(e=>Pe(e))))),Pe(a[1])],b=e=>d((()=>c.applyChanges(u(e)))),f={getMergeableContent:h,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>pe(a[0][0],Je),getMergeableTableDiff:e=>{const t=ze(a[0][1]),s={};return fe(a[0][0],((a,[n,l,r])=>q(e,a)?r!=e[a]?s[a]=r:0:t[0][a]=We([n,l],(e=>We(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a,,n])=>n!=e?fe(a,((e,[,,a])=>Y(t,s,_)[e]=a)):0)))),t},getMergeableRowDiff:e=>{const t=ze(a[0][1]),s={};return K(e,((e,n)=>fe(be(a[0][0],n)?.[0],((a,[l,r,o])=>q(e,a)?o!==e[a]?Y(s,n,_)[a]=o:0:Y(t[0],n,ze)[0][a]=We([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a])=>K(e,((e,n)=>L(be(a,n),(([a,,l])=>l!==e?fe(a,((e,[,,a])=>Y(Y(t,s,_),n,_)[e]=a)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return K(e,((e,s)=>K(e,((e,a)=>L(be(t,s),(([t,l])=>L(be(t,a),(([t,r])=>fe(t,((t,[o,i,c])=>c!==e[t]?Y(Y(n,s,(()=>ze(l)))[0],a,(()=>ze(r)))[0][t]=[o,i]:0)))))))))),Ee(n,s)},getMergeableValuesHashes:()=>pe(a[1][0],Je),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=pe(t,He,(([,,t],s)=>t==e?.[s]));return Ee(n,s)},setMergeableContent:e=>d((()=>(e=>J(e)&&2==x(e)&&je(e[0],(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&je(e[1],(e=>Z(e,(e=>je(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),a=gt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{n=1,c.setContent(e),n=0})),f),getTransactionMergeableChanges:()=>{const[[e,t],[s,n]]=a,o={};de(l,((t,s)=>L(be(e,s),(([e,a])=>{const n={};de(t,((t,s)=>L(be(e,s),(([e,a])=>{const l={};de(t,(t=>{L(be(e,t),(([e,s])=>l[t]=Ee(e,s)))})),n[s]=Ee(l,a)})))),o[s]=Ee(n,a)}))));const i={};return de(r,(e=>L(be(s,e),(([t,s])=>i[e]=Ee(t,s))))),[Ee(o,t),Ee(i,n),1]},applyMergeableChanges:b,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ce(l),ce(r)}),((e,a,r,i)=>{ee(Ce(Ce(l,e,ge),a,$),r),t&&u([[{[e]:[{[a]:[{[r]:[i,n?s:o()]}]}]}],[{}],1])}),((e,a)=>{ee(r,e),t&&u([[{}],[{[e]:[a,n?s:o()]}],1])})),Q(c,((e,t)=>f[t]=I(t,"set")||I(t,"del")||I(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),f):I(t,"add")&&M(t,"Listener")?(...s)=>{const a=ut[D(t,3,-8)]??0,n=s[a];return s[a]=(e,...t)=>n(f,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),U(f)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",a=t(s),n=t(!0),l=t(0),r=t(t),o="type",i="default",c="Has",d="Ids",u="Table",g=u+"s",h=u+d,b="Row",f=b+"Count",T=b+d,C="Cell",v=C+d,p="Value",V=p+"s",w=p+d,y=e=>s+e,I=(e,t)=>e.startsWith(t),M=(e,t)=>e.endsWith(t),R=Math.max,S=isFinite,m=e=>null==e,L=(e,t,s)=>m(e)?s?.():t(e),H=e=>e==a||e==n,E=e=>t(e)==r,J=e=>Array.isArray(e),D=(e,t,s)=>e.slice(t,s),x=e=>e.length,F=(e,t)=>e.forEach(t),O=(e,t)=>e.map(t),z=(e,t,s)=>e.reduce(t,s),A=(e,...t)=>e.push(...t),P=Object,W=e=>P.getPrototypeOf(e),j=P.entries,k=P.isFrozen,N=e=>!m(e)&&L(W(e),(e=>e==P.prototype||m(W(e))),(()=>!0)),B=P.keys,U=P.freeze,_=(e=[])=>P.fromEntries(e),q=(e,t)=>t in e,G=(e,t)=>(delete e[t],e),K=(e,t)=>F(j(e),(([e,s])=>t(s,e))),Q=(e,t)=>O(j(e),(([e,s])=>t(s,e))),X=e=>N(e)&&0==(e=>x(B(e)))(e),Y=(e,t,s)=>(q(e,t)||(e[t]=s()),e[t]),Z=(e,t,s,a=0)=>m(e)||!N(e)||!a&&X(e)||k(e)?(s?.(),!1):(Q(e,((s,a)=>{t(s,a)||G(e,a)})),!!a||!X(e)),$=e=>new Set(J(e)||m(e)?e:[e]),ee=(e,t)=>e?.add(t),te=e=>t=>z(ie(t),((t,s)=>t+e(s)),0),se=e=>e?.size??0,ae=te(se),ne=te(ae),le=te(ne),re=(e,t)=>e?.has(t)??!1,oe=e=>m(e)||0==se(e),ie=e=>[...e?.values()??[]],ce=e=>e.clear(),de=(e,t)=>e?.forEach(t),ue=(e,t)=>e?.delete(t),ge=e=>new Map(e),he=e=>[...e?.keys()??[]],be=(e,t)=>e?.get(t),fe=(e,t)=>de(e,((e,s)=>t(s,e))),Te=(e,t,s)=>m(s)?(ue(e,t),e):e?.set(t,s),Ce=(e,t,s,a)=>(re(e,t)?a?.(be(e,t)):Te(e,t,s()),be(e,t)),ve=(e,t,s,a=Te)=>(Q(t,((t,a)=>s(e,a,t))),fe(e,(s=>q(t,s)?0:a(e,s))),e),pe=(e,t,s,a)=>{const n={};return de(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!a?.(s)&&(n[l]=s)}})),n},Ve=(e,t,s)=>pe(e,(e=>pe(e,t,s)),oe,X),we=(e,t,s)=>pe(e,(e=>Ve(e,t,s)),oe,X),ye=(e,t)=>{const s=ge();return de(e,((e,a)=>s.set(a,t?.(e)??e))),s},Ie=e=>ye(e,ye),Me=e=>ye(e,Ie),Re=(e,t,s,a,n=0)=>L((s?Ce:be)(e,t[n],n>x(t)-2?s:ge),(l=>{if(n>x(t)-2)return a?.(l)&&Te(e,t[n]),l;const r=Re(l,t,s,a,n+1);return oe(l)&&Te(e,t[n]),r})),Se=new globalThis.TextEncoder,me=e=>{let t=2166136261;return F(Se.encode(e),(e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0},Le=([e,t,s])=>[e,t,s],He=([e,t])=>Ee(e,t),Ee=(e,t)=>t?[e,t]:[e],Je=e=>e[2],De=(e,t)=>me(e+":"+t),xe=(e,t)=>t>e?(e?me(e):0)^me(t):0,Fe=(e,t)=>((e??"")>(t??"")?e:t)??"",Oe=(e,t,s)=>{e[2]=t>>>0,s>e[1]&&(e[1]=s)},ze=(e=s)=>Ee(_(),e),Ae=(e=s)=>[ge(),e,0],Pe=([e,t,s],a=Le)=>[pe(e,a),t,s],We=([e,t],s=He)=>Ee(pe(e,s),t),je=(e,s)=>{return J(e)&&3==x(e)&&(n=e[1],t(n)==a)&&t(e[2])==l&&S(e[2])&&s(e[0]);var n},ke=/^\d+$/,Ne=()=>{const e=[];let t=0;return[a=>(a?e.shift():null)??s+t++,t=>{ke.test(t)&&x(e)<1e3&&A(e,t)}]},Be=e=>[e,e],Ue=(e,t=ae)=>t(e[0])+t(e[1]),_e=()=>[ge(),ge()],qe=e=>[...e],Ge=([e,t])=>e===t,Ke=e=>{const s=t(e);return H(s)||s==l&&S(e)?s:void 0},Qe=e=>m(e)||!m(Ke(e)),Xe=(e,t,s,a,n)=>m(n)?e.delCell(t,s,a,!0):e.setCell(t,s,a,n),Ye=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),Ze=e=>JSON.stringify(e,((e,t)=>t instanceof Map?P.fromEntries([...t]):t)),$e=JSON.parse,et="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(s),tt=ge(O(et,((e,t)=>[e,t]))),st=e=>et[63&e],at=(e,t)=>be(tt,e[t])??0,nt=(e,t,s)=>Te(e,t,be(e,t)==-s?void 0:s),lt=()=>{let e,t,a=!1,n=!1,r=0,d=[];const I=ge(),M=ge(),R=ge(),S=ge(),J=ge(),z=ge(),P=ge(),W=ge(),j=ge(),k=ge(),N=ge(),B=ge(),_=ge(),K=ge(),Y=$(),te=ge(),ie=ge(),Se=ge(),me=ge(),Le=_e(),He=_e(),Ee=_e(),Je=_e(),De=_e(),xe=_e(),Fe=_e(),Oe=_e(),ze=_e(),Ae=_e(),Pe=_e(),We=_e(),je=_e(),ke=_e(),Qe=_e(),et=_e(),tt=_e(),st=_e(),at=_e(),rt=_e(),ot=_e(),it=_e(),ct=ge(),dt=_e(),[ut,gt,ht,bt]=(e=>{let t;const[a,n]=Ne(),l=ge();return[(e,n,r,o=[],i=(()=>[]))=>{t??=Fs;const c=a(1);return Te(l,c,[e,n,r,o,i]),ee(Re(n,r??[s],$),c),c},(e,a,...n)=>F(((e,t=[s])=>{const a=[],n=(e,s)=>s==x(t)?A(a,e):null===t[s]?de(e,(e=>n(e,s+1))):F([t[s],null],(t=>n(be(e,t),s+1)));return n(e,0),a})(e,a),(e=>de(e,(e=>be(l,e)[0](t,...a??[],...n))))),e=>L(be(l,e),(([,t,a])=>(Re(t,a??[s],void 0,(t=>(ue(t,e),oe(t)?1:0))),Te(l,e),n(e),a))),e=>L(be(l,e),(([e,,s=[],a,n])=>{const l=(...r)=>{const o=x(r);o==x(s)?e(t,...r,...n(r)):m(s[o])?F(a[o]?.(...r)??[],(e=>l(...r,e))):l(...r,s[o])};l()}))]})(),ft=e=>{if(!Z(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!H(t)&&t!=l||(Ke(e[i])!=t&&G(e,i),0))},Tt=(t,s)=>(!e||re(N,s)||qt(s))&&Z(t,((e,t)=>Ct(s,t,e)),(()=>qt(s))),Ct=(e,t,s,a)=>Z(a?s:wt(s,e,t),((a,n)=>L(vt(e,t,n,a),(e=>(s[n]=e,!0)),(()=>!1))),(()=>qt(e,t))),vt=(t,s,a,n)=>e?L(be(be(N,t),a),(e=>Ke(n)!=e[o]?qt(t,s,a,n,e[i]):n),(()=>qt(t,s,a,n))):m(Ke(n))?qt(t,s,a,n):n,pt=(e,t)=>Z(t?e:yt(e),((t,s)=>L(Vt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Gt())),Vt=(e,s)=>t?L(be(_,e),(t=>Ke(s)!=t[o]?Gt(e,s,t[i]):s),(()=>Gt(e,s))):m(Ke(s))?Gt(e,s):s,wt=(e,t,s)=>(L(be(B,t),(([a,n])=>{de(a,((t,s)=>{q(e,s)||(e[s]=t)})),de(n,(a=>{q(e,a)||qt(t,s,a)}))})),e),yt=e=>(t&&(de(K,((t,s)=>{q(e,s)||(e[s]=t)})),de(Y,(t=>{q(e,t)||Gt(t)}))),e),It=e=>ve(N,e,((e,t,s)=>{const a=ge(),n=$();ve(Ce(N,t,ge),s,((e,t,s)=>{Te(e,t,s),L(s[i],(e=>Te(a,t,e)),(()=>ee(n,t)))})),Te(B,t,[a,n])}),((e,t)=>{Te(N,t),Te(B,t)})),Mt=e=>ve(_,e,((e,t,s)=>{Te(_,t,s),L(s[i],(e=>Te(K,t,e)),(()=>ee(Y,t)))}),((e,t)=>{Te(_,t),Te(K,t),ue(Y,t)})),Rt=e=>X(e)?Rs():Vs(e),St=e=>ve(Se,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>ve(Ce(Se,e,(()=>(jt(e,1),Te(te,e,Ne()),Te(ie,e,ge()),ge()))),t,((t,s,a)=>Lt(e,t,s,a)),((t,s)=>At(e,t,s))),Lt=(e,t,s,a,n)=>ve(Ce(t,s,(()=>(kt(e,s,1),ge()))),a,((t,a,n)=>Ht(e,s,t,a,n)),((a,l)=>Pt(e,t,s,a,l,n))),Ht=(e,t,s,a,n)=>{re(s,a)||Nt(e,t,a,1);const l=be(s,a);n!==l&&(Bt(e,t,a,l,n),Te(s,a,n))},Et=(e,t,s,a,n)=>L(be(t,s),(t=>Ht(e,s,t,a,n)),(()=>Lt(e,t,s,wt({[a]:n},e,s)))),Jt=e=>X(e)?Ls():ws(e),Dt=e=>ve(me,e,((e,t,s)=>xt(t,s)),((e,t)=>Wt(t))),xt=(e,t)=>{re(me,e)||Ut(e,1);const s=be(me,e);t!==s&&(_t(e,s,t),Te(me,e,t))},Ft=(e,t)=>{const[s]=be(te,e),a=s(t);return re(be(Se,e),a)?Ft(e,t):a},Ot=e=>be(Se,e)??mt(e,{}),zt=e=>mt(e,{}),At=(e,t,s)=>{const[,a]=be(te,e);a(s),Lt(e,t,s,{},!0)},Pt=(e,t,s,a,n,l)=>{const r=be(be(B,e)?.[0],n);if(!m(r)&&!l)return Ht(e,s,a,n,r);const o=t=>{Bt(e,s,t,be(a,t)),Nt(e,s,t,-1),Te(a,t)};m(r)?o(n):fe(a,o),oe(a)&&(kt(e,s,-1),oe(Te(t,s))&&(jt(e,-1),Te(Se,e),Te(te,e),Te(ie,e)))},Wt=e=>{const t=be(K,e);if(!m(t))return xt(e,t);_t(e,be(me,e)),Ut(e,-1),Te(me,e)},jt=(e,t)=>nt(I,e,t),kt=(e,t,s)=>nt(Ce(S,e,ge),t,s)&&Te(R,e,Ce(R,e,(()=>0))+s),Nt=(e,t,s,a)=>{const n=be(ie,e),l=be(n,s)??0;(0==l&&1==a||1==l&&-1==a)&&nt(Ce(M,e,ge),s,a),Te(n,s,l!=-a?l+a:null),nt(Ce(Ce(J,e,ge),t,ge),s,a)},Bt=(e,t,s,a,n)=>{Ce(Ce(Ce(z,e,ge),t,ge),s,(()=>[a,0]))[1]=n,d[3]?.(e,t,s,n)},Ut=(e,t)=>nt(P,e,t),_t=(e,t,s)=>{Ce(W,e,(()=>[t,0]))[1]=s,d[4]?.(e,s)},qt=(e,t,s,a,n)=>(A(Ce(Ce(Ce(j,e,ge),t,ge),s,(()=>[])),a),n),Gt=(e,t,s)=>(A(Ce(k,e,(()=>[])),t),s),Kt=(e,t,s)=>L(be(be(be(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(cs(e,t,s))])),Qt=e=>L(be(W,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Be(gs(e))])),Xt=e=>oe(j)||oe(et[e])?0:de(e?Me(j):j,((t,s)=>de(t,((t,a)=>de(t,((t,n)=>gt(et[e],[s,a,n],t))))))),Yt=e=>oe(k)||oe(tt[e])?0:de(e?ye(k):k,((t,s)=>gt(tt[e],[s],t))),Zt=(e,t,s,a)=>{if(!oe(e))return gt(t,a,(()=>pe(e))),fe(e,((e,t)=>gt(s,[...a??[],e],1==t))),1},$t=e=>{const t=hs();t!=a&&gt(Le[e],void 0,t);const s=oe(Ae[e]),n=oe(je[e])&&oe(ke[e])&&oe(ze[e])&&oe(Pe[e])&&oe(xe[e])&&oe(Fe[e])&&oe(Oe[e])&&s&&oe(Ee[e])&&oe(Je[e]),l=oe(Qe[e])&&oe(We[e])&&oe(De[e])&&oe(He[e]);if(!n||!l){const t=e?[ye(I),Ie(M),ye(R),Ie(S),Me(J),Me(z)]:[I,M,R,S,J,z];if(!n){Zt(t[0],Ee[e],Je[e]),de(t[1],((t,s)=>Zt(t,xe[e],Fe[e],[s]))),de(t[2],((t,s)=>{0!=t&&gt(Oe[e],[s],ls(s))}));const a=$();de(t[3],((t,n)=>{Zt(t,ze[e],Pe[e],[n])&&!s&&(gt(Ae[e],[n,null]),ee(a,n))})),s||de(t[5],((t,s)=>{if(!re(a,s)){const a=$();de(t,(e=>de(e,(([t,s],n)=>s!==t?ee(a,n):ue(e,n))))),de(a,(t=>gt(Ae[e],[s,t])))}})),de(t[4],((t,s)=>de(t,((t,a)=>Zt(t,je[e],ke[e],[s,a])))))}if(!l){let s;de(t[5],((t,a)=>{let n;de(t,((t,l)=>{let r;de(t,(([t,o],i)=>{o!==t&&(gt(Qe[e],[a,l,i],o,t,Kt),s=n=r=1)})),r&&gt(We[e],[a,l],Kt)})),n&&gt(De[e],[a],Kt)})),s&&gt(He[e],void 0,Kt)}}},es=e=>{const t=vs();t!=n&&gt(st[e],void 0,t);const s=oe(rt[e])&&oe(ot[e]),a=oe(it[e])&&oe(at[e]);if(!s||!a){const t=e?[ye(P),ye(W)]:[P,W];if(s||Zt(t[0],rt[e],ot[e]),!a){let s;de(t[1],(([t,a],n)=>{a!==t&&(gt(it[e],[n],a,t,Qt),s=1)})),s&&gt(at[e],void 0,Qt)}}},ts=(e,...t)=>(Js((()=>e(...O(t,y)))),Fs),ss=()=>we(Se),as=()=>he(Se),ns=e=>he(be(ie,y(e))),ls=e=>se(be(Se,y(e))),rs=e=>he(be(Se,y(e))),os=(e,t,s,a=0,n)=>{return O(D((r=be(Se,y(e)),o=(e,s)=>[m(t)?s:be(e,y(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),O([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),a,m(n)?n:a+n),(([,e])=>e));var l,r,o},is=(e,t)=>he(be(be(Se,y(e)),y(t))),cs=(e,t,s)=>be(be(be(Se,y(e)),y(t)),y(s)),ds=()=>pe(me),us=()=>he(me),gs=e=>be(me,y(e)),hs=()=>!oe(Se),bs=e=>re(Se,y(e)),fs=(e,t)=>re(be(ie,y(e)),y(t)),Ts=(e,t)=>re(be(Se,y(e)),y(t)),Cs=(e,t,s)=>re(be(be(Se,y(e)),y(t)),y(s)),vs=()=>!oe(me),ps=e=>re(me,y(e)),Vs=e=>ts((()=>(e=>Z(e,Tt,qt))(e)?St(e):0)),ws=e=>ts((()=>pt(e)?Dt(e):0)),ys=e=>{try{Rt($e(e))}catch{}return Fs},Is=t=>ts((()=>{if((e=Z(t,(e=>Z(e,ft))))&&(It(t),!oe(Se))){const e=ss();Rs(),Vs(e)}})),Ms=e=>ts((()=>{if(t=(e=>Z(e,ft))(e)){const s=ds();Es(),Ls(),t=!0,Mt(e),ws(s)}})),Rs=()=>ts((()=>St({}))),Ss=e=>ts((e=>re(Se,e)?zt(e):0),e),ms=(e,t)=>ts(((e,t)=>L(be(Se,e),(s=>re(s,t)?At(e,s,t):0))),e,t),Ls=()=>ts((()=>Dt({}))),Hs=()=>ts((()=>{It({}),e=!1})),Es=()=>ts((()=>{Mt({}),t=!1})),Js=(e,t)=>{if(-1!=r){Ds();const s=e();return xs(t),s}},Ds=()=>(-1!=r&&r++,1==r&&(d[0]?.(),gt(ct)),Fs),xs=e=>(r>0&&(r--,0==r&&(r=1,Xt(1),oe(z)||$t(1),Yt(1),oe(W)||es(1),e?.(Fs)&&(de(z,((e,t)=>de(e,((e,s)=>de(e,(([e],a)=>Xe(Fs,t,s,a,e))))))),ce(z),de(W,(([e],t)=>Ye(Fs,t,e))),ce(W)),gt(dt[0],void 0),r=-1,Xt(0),oe(z)||$t(0),Yt(0),oe(W)||es(0),d[1]?.(),gt(dt[1],void 0),d[2]?.(),r=0,a=hs(),n=vs(),F([I,M,R,S,J,z,j,P,W,k],ce))),Fs),Fs={getContent:()=>[ss(),ds()],getTables:ss,getTableIds:as,getTable:e=>Ve(be(Se,y(e))),getTableCellIds:ns,getRowCount:ls,getRowIds:rs,getSortedRowIds:os,getRow:(e,t)=>pe(be(be(Se,y(e)),y(t))),getCellIds:is,getCell:cs,getValues:ds,getValueIds:us,getValue:gs,hasTables:hs,hasTable:bs,hasTableCell:fs,hasRow:Ts,hasCell:Cs,hasValues:vs,hasValue:ps,getTablesJson:()=>Ze(Se),getValuesJson:()=>Ze(me),getJson:()=>Ze([Se,me]),getTablesSchemaJson:()=>Ze(N),getValuesSchemaJson:()=>Ze(_),getSchemaJson:()=>Ze([N,_]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ts((()=>{(X(e)?Rs:Vs)(e),(X(t)?Ls:ws)(t)})),setTables:Vs,setTable:(e,t)=>ts((e=>Tt(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>ts(((e,t)=>Ct(e,t,s)?Lt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Js((()=>{let a;return Ct(e,a,t)&&(e=y(e),Lt(e,Ot(e),a=Ft(e,s?1:0),t)),a})),setPartialRow:(e,t,s)=>ts(((e,t)=>{if(Ct(e,t,s,1)){const a=Ot(e);Q(s,((s,n)=>Et(e,a,t,n,s)))}}),e,t),setCell:(e,t,s,a)=>ts(((e,t,s)=>L(vt(e,t,s,E(a)?a(cs(e,t,s)):a),(a=>Et(e,Ot(e),t,s,a)))),e,t,s),setValues:ws,setPartialValues:e=>ts((()=>pt(e,1)?Q(e,((e,t)=>xt(t,e))):0)),setValue:(e,t)=>ts((e=>L(Vt(e,E(t)?t(gs(e)):t),(t=>xt(e,t)))),e),applyChanges:e=>ts((()=>{Q(e[0],((e,t)=>m(e)?Ss(t):Q(e,((e,s)=>m(e)?ms(t,s):Q(e,((e,a)=>Xe(Fs,t,s,a,e))))))),Q(e[1],((e,t)=>Ye(Fs,t,e)))})),setTablesJson:ys,setValuesJson:e=>{try{Jt($e(e))}catch{}return Fs},setJson:e=>ts((()=>{try{const[t,s]=$e(e);Rt(t),Jt(s)}catch{ys(e)}})),setTablesSchema:Is,setValuesSchema:Ms,setSchema:(e,t)=>ts((()=>{Is(e),Ms(t)})),delTables:Rs,delTable:Ss,delRow:ms,delCell:(e,t,s,a)=>ts(((e,t,s)=>L(be(Se,e),(n=>L(be(n,t),(l=>re(l,s)?Pt(e,n,t,l,s,a):0))))),e,t,s),delValues:Ls,delValue:e=>ts((e=>re(me,e)?Wt(e):0),e),delTablesSchema:Hs,delValuesSchema:Es,delSchema:()=>ts((()=>{Hs(),Es()})),transaction:Js,startTransaction:Ds,getTransactionChanges:()=>[pe(z,((e,t)=>-1===be(I,t)?void 0:pe(e,((e,s)=>-1===be(be(S,t),s)?void 0:pe(e,(([,e])=>e),(e=>Ge(e)))),oe,X)),oe,X),pe(W,(([,e])=>e),(e=>Ge(e))),1],getTransactionLog:()=>[!oe(z),!oe(W),we(z,qe,Ge),we(j),pe(W,qe,Ge),pe(k),pe(I),Ve(S),we(J),pe(P)],finishTransaction:xs,forEachTable:e=>de(Se,((t,s)=>e(s,(e=>de(t,((t,s)=>e(s,(e=>fe(t,e))))))))),forEachTableCell:(e,t)=>fe(be(ie,y(e)),t),forEachRow:(e,t)=>de(be(Se,y(e)),((e,s)=>t(s,(t=>fe(e,t))))),forEachCell:(e,t,s)=>fe(be(be(Se,y(e)),y(t)),s),forEachValue:e=>fe(me,e),addSortedRowIdsListener:(e,t,s,a,n,l,r)=>{let o=os(e,t,s,a,n);return ut((()=>{const r=os(e,t,s,a,n);var i,c,d;c=o,x(i=r)===x(c)&&(d=(e,t)=>c[t]===e,i.every(d))||(o=r,l(Fs,e,t,s,a,n,o))}),Ae[r?1:0],[e,t],[as])},addStartTransactionListener:e=>ut(e,ct),addWillFinishTransactionListener:e=>ut(e,dt[0]),addDidFinishTransactionListener:e=>ut(e,dt[1]),callListener:e=>(bt(e),Fs),delListener:e=>(ht(e),Fs),getListenerStats:()=>({hasTables:Ue(Le),tables:Ue(He),tableIds:Ue(Ee),hasTable:Ue(Je),table:Ue(De),tableCellIds:Ue(xe),hasTableCell:Ue(Fe,ne),rowCount:Ue(Oe),rowIds:Ue(ze),sortedRowIds:Ue(Ae),hasRow:Ue(Pe,ne),row:Ue(We,ne),cellIds:Ue(je,ne),hasCell:Ue(ke,le),cell:Ue(Qe,le),invalidCell:Ue(et,le),hasValues:Ue(st),values:Ue(at),valueIds:Ue(rt),hasValue:Ue(ot),value:Ue(it),invalidValue:Ue(tt),transaction:ae(ct)+Ue(dt)}),isMergeable:()=>!1,createStore:lt,addListener:ut,callListeners:gt,setInternalListeners:(e,t,s,a,n)=>d=[e,t,s,a,n]};return Q({[c+g]:[0,Le,[],()=>[hs()]],[g]:[0,He],[h]:[0,Ee],[c+u]:[1,Je,[as],e=>[bs(...e)]],[u]:[1,De,[as]],[u+v]:[1,xe,[as]],[c+u+C]:[2,Fe,[as,ns],e=>[fs(...e)]],[f]:[1,Oe,[as]],[T]:[1,ze,[as]],[c+b]:[2,Pe,[as,rs],e=>[Ts(...e)]],[b]:[2,We,[as,rs]],[v]:[2,je,[as,rs]],[c+C]:[3,ke,[as,rs,is],e=>[Cs(...e)]],[C]:[3,Qe,[as,rs,is],e=>Be(cs(...e))],InvalidCell:[3,et],[c+V]:[0,st,[],()=>[vs()]],[V]:[0,at],[w]:[0,rt],[c+p]:[1,ot,[us],e=>[ps(...e)]],[p]:[1,it,[us],e=>Be(gs(e[0]))],InvalidValue:[1,tt]},(([e,t,s,a],n)=>{Fs["add"+n+"Listener"]=(...n)=>ut(n[e],t[n[e+1]?1:0],e>0?D(n,0,e):void 0,s,a)})),U(Fs)},rt=2**36,ot=2**30,it=2**24,ct=2**18,dt=4096,ut={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},gt=(e=s)=>[Ae(e),Ae(e)];e.createMergeableStore=e=>{let t=1,a=gt(),n=0;const l=ge(),r=$(),[o,i]=(e=>{let t=0,s=-1;const a=L(e,(e=>{const t=me(e);return st(t/it)+st(t/ct)+st(t/dt)+st(t/64)+st(t)}),(()=>((e=16)=>z(crypto.getRandomValues(new Uint8Array(e)),((e,t)=>e+st(t)),""))(5))),n=e=>{const a=t,[n,l]=m(e)||""==e?[0,0]:[at(r=e,0)*rt+at(r,1)*ot+at(r,2)*it+at(r,3)*ct+at(r,4)*dt+64*at(r,5)+at(r,6),at(r,7)*ct+at(r,8)*dt+64*at(r,9)+at(r,10)];var r;t=R(a,n,globalThis.HLC_TIME??Date.now()),s=t==a?t==n?R(s,l):s:t==n?l:-1};return[()=>{return n(),l=++s,st((e=t)/rt)+st(e/ot)+st(e/it)+st(e/ct)+st(e/dt)+st(e/64)+st(e)+st(l/ct)+st(l/dt)+st(l/64)+st(l)+a;var e,l},n]})(e),c=lt(),d=e=>{const s=t;return t=0,e(),t=s,f},u=(e,t=0)=>{const n={},l={},[[r,o=s,c=0],d]=e,[u,h]=a,[b,f,T]=u;let C=t?c:T,v=o;K(r,(([e,a=s,l=0],r)=>{const o=Ce(b,r,Ae),[i,c,d]=o;let u=t?l:d,h=a;K(e,((e,s)=>{const[a,l,o]=g(e,Ce(i,s,Ae),Y(Y(n,r,_),s,_),t);u^=t?0:(l?De(s,l):0)^De(s,o),h=Fe(h,a)})),u^=t?0:xe(c,a),Oe(o,u,a),C^=t?0:(d?De(r,d):0)^De(r,o[2]),v=Fe(v,h)})),C^=t?0:xe(f,o),Oe(u,C,o);const[p]=g(d,h,l,t);return i(Fe(v,p)),[n,l,1]},g=(e,t,a,n)=>{const[l,r=s,o=0]=e,[i,c,d]=t;let u=r,g=n?o:d;return K(l,(([e,t,l=0],r)=>{const o=Ce(i,r,(()=>[void 0,s,0])),[,c,d]=o;(!c||t>c)&&(Oe(o,n?l:me(Ze(e??null)+":"+t),t),o[0]=e,a[r]=e,g^=n?0:De(r,d)^De(r,o[2]),u=Fe(u,t))})),g^=n?0:xe(c,r),Oe(t,g,r),[u,d,t[2]]},h=()=>[Pe(a[0],(e=>Pe(e,(e=>Pe(e))))),Pe(a[1])],b=e=>d((()=>c.applyChanges(u(e)))),f={getMergeableContent:h,getMergeableContentHashes:()=>[a[0][2],a[1][2]],getMergeableTableHashes:()=>pe(a[0][0],Je),getMergeableTableDiff:e=>{const t=ze(a[0][1]),s={};return fe(a[0][0],((a,[n,l,r])=>q(e,a)?r!=e[a]?s[a]=r:0:t[0][a]=We([n,l],(e=>We(e))))),[t,s]},getMergeableRowHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a,,n])=>n!=e?fe(a,((e,[,,a])=>Y(t,s,_)[e]=a)):0)))),t},getMergeableRowDiff:e=>{const t=ze(a[0][1]),s={};return K(e,((e,n)=>fe(be(a[0][0],n)?.[0],((a,[l,r,o])=>q(e,a)?o!==e[a]?Y(s,n,_)[a]=o:0:Y(t[0],n,ze)[0][a]=We([l,r]))))),[t,s]},getMergeableCellHashes:e=>{const t={};return K(e,((e,s)=>L(be(a[0][0],s),(([a])=>K(e,((e,n)=>L(be(a,n),(([a,,l])=>l!==e?fe(a,((e,[,,a])=>Y(Y(t,s,_),n,_)[e]=a)):0)))))))),t},getMergeableCellDiff:e=>{const[[t,s]]=a,n={};return K(e,((e,s)=>K(e,((e,a)=>L(be(t,s),(([t,l])=>L(be(t,a),(([t,r])=>fe(t,((t,[o,i,c])=>c!==e[t]?Y(Y(n,s,(()=>ze(l)))[0],a,(()=>ze(r)))[0][t]=[o,i]:0)))))))))),Ee(n,s)},getMergeableValueHashes:()=>pe(a[1][0],Je),getMergeableValueDiff:e=>{const[,[t,s]]=a,n=pe(t,He,(([,,t],s)=>t==e?.[s]));return Ee(n,s)},setMergeableContent:e=>d((()=>(e=>J(e)&&2==x(e)&&je(e[0],(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,(e=>Z(e,(e=>je(e,Qe)),void 0,1)))),void 0,1)))),void 0,1)))&&je(e[1],(e=>Z(e,(e=>je(e,Qe)),void 0,1))))(e)?c.transaction((()=>{c.delTables().delValues(),a=gt(),c.applyChanges(u(e,1))})):0)),setDefaultContent:e=>(c.transaction((()=>{n=1,c.setContent(e),n=0})),f),getTransactionMergeableChanges:()=>{const[[e,t],[s,n]]=a,o={};de(l,((t,s)=>L(be(e,s),(([e,a])=>{const n={};de(t,((t,s)=>L(be(e,s),(([e,a])=>{const l={};de(t,(t=>{L(be(e,t),(([e,s])=>l[t]=Ee(e,s)))})),n[s]=Ee(l,a)})))),o[s]=Ee(n,a)}))));const i={};return de(r,(e=>L(be(s,e),(([t,s])=>i[e]=Ee(t,s))))),[Ee(o,t),Ee(i,n),1]},applyMergeableChanges:b,merge:e=>{const t=h(),s=e.getMergeableContent();return e.applyMergeableChanges(t),b(s)}};return c.setInternalListeners((()=>{}),(()=>{}),(()=>{ce(l),ce(r)}),((e,a,r,i)=>{ee(Ce(Ce(l,e,ge),a,$),r),t&&u([[{[e]:[{[a]:[{[r]:[i,n?s:o()]}]}]}],[{}],1])}),((e,a)=>{ee(r,e),t&&u([[{}],[{[e]:[a,n?s:o()]}],1])})),Q(c,((e,t)=>f[t]=I(t,"set")||I(t,"del")||I(t,"apply")||M(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),f):I(t,"add")&&M(t,"Listener")?(...s)=>{const a=ut[D(t,3,-8)]??0,n=s[a];return s[a]=(e,...t)=>n(f,...t),e(...s)}:"isMergeable"==t?()=>!0:e)),U(f)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
@@ -1 +1 @@
1
- var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s="",n=",",i=t(s),r=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),p=a=>a.length,E=async a=>o.all(a),v=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),g=a=>0==p(a),m=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),C=(a,t)=>a?.has(t)??!1,T=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,b=a=>O.getPrototypeOf(a),N=O.entries,S=O.keys,R=O.freeze,L=(a=[])=>O.fromEntries(a),D=(...a)=>O.assign({},...a),I=(a,t)=>t in a,M=(a,t)=>f(N(a),(([a,e])=>t(e,a))),P=a=>O.values(a),$=a=>p(S(a)),_=a=>(a=>!l(a)&&y(b(a),(a=>a==O.prototype||l(b(a))),(()=>!0)))(a)&&0==$(a),x=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),H=(a,t,e,s)=>(C(a,t)||q(a,t,e()),j(a,t)),J=(a,t,e,s=q)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:s(a,e))),a),Y="_",k="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",W=a=>new Set(d(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=U+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=x();return[async()=>J(r,L(await E(f(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+sa(t)+")ORDER BY name",t),(async({name:t})=>[t,L(f(await a(U+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(H(r,t,x),e,((a,t,e)=>{e!=j(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!l(j(j(r,a),t)))(t,e)?L(m(f(await a(X+G(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,o,c,y,w=!1)=>{const d=W();M(o??{},(a=>f(S(a??{}),(a=>z(d,a)))));const u=T(d);if(!w&&y&&g(u)&&C(r,t))return await a("DROP "+K+G(t)),void q(r,t);if(g(u)||C(r,t)){const n=j(r,t),i=W(F(n));await E([...f(u,(async e=>{A(i,e)||(await a(V+G(t)+"ADD"+G(e)),q(n,e,s))})),...!w&&c?f(T(i),(async s=>{s!=e&&(await a(V+G(t)+"DROP"+G(s)),q(n,s))})):[]])}else await a("CREATE "+K+G(t)+"("+G(e)+` PRIMARY KEY ON CONFLICT REPLACE${v(f(u,(a=>n+G(a))))});`),q(r,t,x([[e,s],...f(u,(a=>[a,s]))]));if(w)l(o)?await a(Q+G(t)+aa+" 1"):await E(M(o,(async(s,n)=>{l(s)?await a(Q+G(t)+aa+G(e)+"=?",[n]):g(u)||await ea(a,t,e,S(s),[n,...P(s)],i)})));else if(g(u))C(r,t)&&await a(Q+G(t)+aa+" 1");else{const s=m(F(j(r,t)),(a=>a!=e)),n=[],c=[];M(o??{},((a,t)=>{h(n,t,...f(s,(t=>a?.[t]))),h(c,t)})),await ea(a,t,e,s,n,i),await a(Q+G(t)+aa+G(e)+"NOT IN("+sa(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},ea=async(a,t,e,i,o,c=!0)=>await a("INSERT "+(c?s:"OR REPLACE ")+"INTO"+G(t)+"("+G(e)+v(f(i,(a=>n+G(a))))+")VALUES"+u(r(`,(?${r(",?",p(i))})`,p(o)/(p(i)+1)),1)+(c?"ON CONFLICT("+G(e)+")DO UPDATE SET"+v(f(i,(a=>G(a)+"=excluded."+G(a))),n):s),f(o,(a=>a??null))),sa=a=>v(f(a,(()=>"?")),n),na=x(),ia=x(),ra=(a,t,e,s,n,i,r,o={},c=[])=>{let w,u,p,E=0,v=0,f=0;H(na,c,(()=>0)),H(ia,c,(()=>[]));const[g,m,C,T,A]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),O=t=>{(g&&d(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},b=async a=>(2!=E&&(E=1,v++,await D((async()=>{try{O(await t())}catch(t){i?.(t),a&&A(a)}E=0}))),I),N=()=>(u&&(n(u),u=void 0),I),S=async a=>(1!=E&&(E=2,f++,await D((async()=>{try{await e(m,a)}catch(a){i?.(a)}E=0}))),I),L=()=>(y(p,a.delListener),p=void 0,I),D=async(...a)=>(h(j(ia,c),...a),await(async()=>{if(!j(na,c)){for(q(na,c,1);!l((a=j(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}q(na,c,0)}var a})(),I),I={load:b,startAutoLoad:async a=>(await N().load(a),u=s((async(a,t)=>{t||a?2!=E&&(E=1,v++,O(t??a),E=0):await b()})),I),stopAutoLoad:N,isAutoLoading:()=>!l(u),save:S,startAutoSave:async()=>(await L().save(),p=a.addDidFinishTransactionListener((()=>{const a=C();T(a)&&S(a)})),I),stopAutoSave:L,isAutoSaving:()=>!l(p),schedule:D,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({loads:v,saves:f}),...o};return R(I)},oa=(a,t,e,s,n,i,[r,o,c],l,y,w,d)=>{const[u,p,E,v]=ta(t,l,n,d);return ra(a,(async()=>await v((async()=>{return await u(),a=(await p(r,o))[Y]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await u(),await E(r,o,{[Y]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,s,n,i,{[w]:()=>y},y)},ca=(a,t,e,s,n,i,[r,o,[c,y,w]],d,u,p,v)=>{const[f,g,h,C]=ta(t,d,n,v),T=async(a,t)=>await E(B(o,(async([e,s,n,i],r)=>{t&&!I(a,r)||await h(e,s,a[r],n,i,t)}))),A=async(a,t)=>y?await h(w,k,{[Y]:a},!0,!0,t):null;return ra(a,(async()=>await C((async()=>{await f();const a=await(async()=>L(m(await E(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,k))[Y]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await C((async()=>{if(await f(),l(t)){const[t,e]=a();await T(t),await A(e)}else await T(t[0],!0),await A(t[1],!0)}))),e,s,n,i,{[p]:()=>u},u)},la="ColumnName",ya="store",wa="json",da=ya+"TableName",ua=ya+"Id"+la,pa=ya+la,Ea="autoLoadIntervalSeconds",va="rowId"+la,fa="tableId",ga="tableName",ma={mode:wa,[Ea]:1},ha={load:0,save:0,[ga]:e+"_values"},Ca=(a,t,e,s,n)=>{const i=x();return M(a,((a,r)=>{const o=u(P(D(t,w(a)?{[e]:a}:a)),0,$(t));l(o[0])||s(r,o[0])||(n(r,o[0]),q(i,r,o))})),i},Ta="pragma_",Aa="data_version",Oa="schema_version";a.createExpoSqlitePersister=(a,t,s,n,i)=>((a,t,s,n,i,r,o,l,y,d="getDb",p)=>{let E,v,f;const[g,m,h,A]=(a=>{const t=(a=>D(ma,w(a)?{[da]:a}:a??{}))(a),s=t[Ea];if(t.mode==wa){const a=t[da]??e;return[1,s,[a,t[ua]??k,t[pa]??ya],W(a)]}const{tables:{load:n={},save:i={}}={},values:r={}}=t,o=u(P(D(ha,r)),0,$(ha)),c=o[2],l=W(c),y=W(c);return[0,s,[Ca(n,{[fa]:null,[va]:k},fa,(a=>C(y,a)),(a=>z(l,a))),Ca(i,{[ga]:null,[va]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>C(y,t)),((a,t)=>z(l,t))),o],l]})(t);return(g?oa:ca)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:n}]=await s(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ta}${Aa} JOIN ${Ta}${Oa}`);t==(E??=t)&&e==(v??=e)&&n==(f??=n)||(a(),E=t,v=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),n((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=v=f=null,i(t)}),o,l,h,T(A),y,d,p)})(a,s,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,i,3,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqlite={});
1
+ var a,t;a=this,t=function(a,t){"use strict";const e=a=>typeof a,s="tinybase",n="",i=",",r=e(n),o=(a,t)=>a.repeat(t),c=Promise,l=clearInterval,y=a=>null==a,w=(a,t,e)=>y(a)?e?.():t(a),d=a=>e(a)==r,u=a=>Array.isArray(a),p=(a,t,e)=>a.slice(t,e),E=a=>a.length,v=async a=>c.all(a),f=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),m=a=>0==E(a),h=(a,t)=>a.filter(t),A=(a,...t)=>a.push(...t),C=(a,t)=>a?.has(t)??!1,T=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),b=Object,N=a=>b.getPrototypeOf(a),S=b.entries,L=b.keys,R=b.freeze,D=(a=[])=>b.fromEntries(a),I=(...a)=>b.assign({},...a),M=(a,t)=>t in a,P=(a,t)=>g(S(a),(([a,e])=>t(e,a))),x=a=>b.values(a),$=a=>E(L(a)),_=a=>(a=>!y(a)&&w(N(a),(a=>a==b.prototype||y(N(a))),(()=>!0)))(a)&&0==$(a),F=a=>new Map(a),q=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>y(e)?(O(a,t),a):a?.set(t,e),J=(a,t,e,s)=>(C(a,t)||H(a,t,e()),j(a,t)),Y=(a,t,e,s=H)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>M(t,e)?0:s(a,e))),a),k="_",G="_id",U=a=>`"${a.replace(/"/g,'""')}"`,W="SELECT",z=a=>new Set(u(a)||y(a)?a:[a]),K=(a,t)=>a?.add(t),V="TABLE",Q="ALTER "+V,X="DELETE FROM",Z=W+"*FROM",aa="FROM pragma_table_",ta="WHERE",ea=(a,t,e,s)=>{const r=F();return[async()=>Y(r,D(await v(g(await a("SELECT name "+aa+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,D(g(await a(W+" name,type "+aa+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,F),e,((a,t,e)=>{e!=j(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!y(j(j(r,a),t)))(t,e)?D(h(g(await a(Z+U(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!y(a)&&!_(t)))):{},async(t,e,o,c,l,w=!1)=>{const d=z();P(o??{},(a=>g(L(a??{}),(a=>K(d,a)))));const u=T(d);if(!w&&l&&m(u)&&C(r,t))return await a("DROP "+V+U(t)),void H(r,t);if(m(u)||C(r,t)){const s=j(r,t),i=z(q(s));await v([...g(u,(async e=>{O(i,e)||(await a(Q+U(t)+"ADD"+U(e)),H(s,e,n))})),...!w&&c?g(T(i),(async n=>{n!=e&&(await a(Q+U(t)+"DROP"+U(n)),H(s,n))})):[]])}else await a("CREATE "+V+U(t)+"("+U(e)+` PRIMARY KEY ON CONFLICT REPLACE${f(g(u,(a=>i+U(a))))});`),H(r,t,F([[e,n],...g(u,(a=>[a,n]))]));if(w)y(o)?await a(X+U(t)+ta+" 1"):await v(P(o,(async(n,i)=>{y(n)?await a(X+U(t)+ta+U(e)+"=?",[i]):m(u)||await sa(a,t,e,L(n),[i,...x(n)],s)})));else if(m(u))C(r,t)&&await a(X+U(t)+ta+" 1");else{const n=h(q(j(r,t)),(a=>a!=e)),i=[],c=[];P(o??{},((a,t)=>{A(i,t,...g(n,(t=>a?.[t]))),A(c,t)})),await sa(a,t,e,n,i,s),await a(X+U(t)+ta+U(e)+"NOT IN("+na(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},sa=async(a,t,e,s,r,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+U(t)+"("+U(e)+f(g(s,(a=>i+U(a))))+")VALUES"+p(o(`,(?${o(",?",E(s))})`,E(r)/(E(s)+1)),1)+(c?"ON CONFLICT("+U(e)+")DO UPDATE SET"+f(g(s,(a=>U(a)+"=excluded."+U(a))),i):n),g(r,(a=>a??null))),na=a=>f(g(a,(()=>"?")),i),ia=F(),ra=F(),oa=(a,t,e,s,n,i,r,o={},c=[])=>{let l,d,p,E=0,v=0,f=0;J(ia,c,(()=>0)),J(ra,c,(()=>[]));const[g,m,h,C,T]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),O=t=>{(g&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},b=async a=>(2!=E&&(E=1,v++,await D((async()=>{try{O(await t())}catch(t){i?.(t),a&&T(a)}E=0}))),I),N=()=>(d&&(n(d),d=void 0),I),S=async a=>(1!=E&&(E=2,f++,await D((async()=>{try{await e(m,a)}catch(a){i?.(a)}E=0}))),I),L=()=>(w(p,a.delListener),p=void 0,I),D=async(...a)=>(A(j(ra,c),...a),await(async()=>{if(!j(ia,c)){for(H(ia,c,1);!y((a=j(ra,c),l=a.shift()));)try{await l()}catch(a){i?.(a)}H(ia,c,0)}var a})(),I),I={load:b,startAutoLoad:async a=>(await N().load(a),d=s((async(a,t)=>{t||a?2!=E&&(E=1,v++,O(t??a),E=0):await b()})),I),stopAutoLoad:N,isAutoLoading:()=>!y(d),save:S,startAutoSave:async()=>(await L().save(),p=a.addDidFinishTransactionListener((()=>{const a=h();C(a)&&S(a)})),I),stopAutoSave:L,isAutoSaving:()=>!y(p),schedule:D,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({loads:v,saves:f}),...o};return R(I)},ca=(a,t,e,s,n,i,[r,o,c],l,y,w,d)=>{const[u,p,E,v]=ea(t,l,n,d);return oa(a,(async()=>await v((async()=>{return await u(),a=(await p(r,o))[k]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await u(),await E(r,o,{[k]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,s,n,i,{[w]:()=>y},y)},la=(a,t,e,s,n,i,[r,o,[c,l,w]],d,u,p,E)=>{const[f,g,m,A]=ea(t,d,n,E),C=async(a,t)=>await v(B(o,(async([e,s,n,i],r)=>{t&&!M(a,r)||await m(e,s,a[r],n,i,t)}))),T=async(a,t)=>l?await m(w,G,{[k]:a},!0,!0,t):null;return oa(a,(async()=>await A((async()=>{await f();const a=await(async()=>D(h(await v(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,G))[k]:{})();return _(a)&&y(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await f(),y(t)){const[t,e]=a();await C(t),await T(e)}else await C(t[0],!0),await T(t[1],!0)}))),e,s,n,i,{[p]:()=>u},u)},ya="ColumnName",wa="store",da="json",ua=wa+"TableName",pa=wa+"Id"+ya,Ea=wa+ya,va="autoLoadIntervalSeconds",fa="rowId"+ya,ga="tableId",ma="tableName",ha={mode:da,[va]:1},Aa={load:0,save:0,[ma]:s+"_values"},Ca=(a,t,e,s,n)=>{const i=F();return P(a,((a,r)=>{const o=p(x(I(t,d(a)?{[e]:a}:a)),0,$(t));y(o[0])||s(r,o[0])||(n(r,o[0]),H(i,r,o))})),i},Ta="pragma_",Oa="data_version",ba="schema_version";a.createExpoSqlitePersister=(a,e,n,i,r)=>((a,t,e,n,i,r,o,c,y,w="getDb",u)=>{let E,v,f;const[g,m,h,A]=(a=>{const t=(a=>I(ha,d(a)?{[ua]:a}:a??{}))(a),e=t[va];if(t.mode==da){const a=t[ua]??s;return[1,e,[a,t[pa]??G,t[Ea]??wa],z(a)]}const{tables:{load:n={},save:i={}}={},values:r={}}=t,o=p(x(I(Aa,r)),0,$(Aa)),c=o[2],l=z(c),y=z(c);return[0,e,[Ca(n,{[ga]:null,[fa]:G},ga,(a=>C(y,a)),(a=>K(l,a))),Ca(i,{[ma]:null,[fa]:G,deleteEmptyColumns:0,deleteEmptyTable:0},ma,((a,t)=>C(y,t)),((a,t)=>K(l,t))),o],l]})(t);return(g?ca:la)(a,r?async(a,t)=>(r(a,t),await e(a,t)):e,(a=>{return[(t=async()=>{try{const[{d:t,s:s,c:n}]=await e(`SELECT ${Oa} d,${ba} s,TOTAL_CHANGES() c FROM ${Ta}${Oa} JOIN ${Ta}${ba}`);t==(E??=t)&&s==(v??=s)&&n==(f??=n)||(a(),E=t,v=s)}catch{}},s=m,t(),setInterval(t,1e3*s)),n((t=>A.has(t)?a():0))];var t,s}),(([a,t])=>{l(a),E=v=f=null,i(t)}),o,c,h,T(A),y,w,u)})(a,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(a=>t.addDatabaseChangeListener((({tableName:t})=>a(t)))),(a=>a.remove()),i,r,3,e)},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("expo-sqlite")):"function"==typeof define&&define.amd?define(["exports","expo-sqlite"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqlite={},a.expoSqlite);
@@ -1 +1 @@
1
- var a,t;a=this,t=function(a){"use strict";const t=a=>typeof a,e="tinybase",s="",n=",",i=t(s),r=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,d=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),p=a=>a.length,E=async a=>o.all(a),v=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),g=a=>0==p(a),m=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),C=(a,t)=>a?.has(t)??!1,T=a=>[...a?.values()??[]],A=(a,t)=>a?.delete(t),O=Object,b=a=>O.getPrototypeOf(a),N=O.entries,S=O.keys,R=O.freeze,L=(a=[])=>O.fromEntries(a),D=(...a)=>O.assign({},...a),I=(a,t)=>t in a,M=(a,t)=>f(N(a),(([a,e])=>t(e,a))),P=a=>O.values(a),$=a=>p(S(a)),_=a=>(a=>!l(a)&&y(b(a),(a=>a==O.prototype||l(b(a))),(()=>!0)))(a)&&0==$(a),x=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>l(e)?(A(a,t),a):a?.set(t,e),H=(a,t,e,s)=>(C(a,t)||q(a,t,e()),j(a,t)),J=(a,t,e,s=q)=>(M(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:s(a,e))),a),Y="_",k="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",W=a=>new Set(d(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=U+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=x();return[async()=>J(r,L(await E(f(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+sa(t)+")ORDER BY name",t),(async({name:t})=>[t,L(f(await a(U+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(H(r,t,x),e,((a,t,e)=>{e!=j(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!l(j(j(r,a),t)))(t,e)?L(m(f(await a(X+G(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,o,c,y,w=!1)=>{const d=W();M(o??{},(a=>f(S(a??{}),(a=>z(d,a)))));const u=T(d);if(!w&&y&&g(u)&&C(r,t))return await a("DROP "+K+G(t)),void q(r,t);if(g(u)||C(r,t)){const n=j(r,t),i=W(F(n));await E([...f(u,(async e=>{A(i,e)||(await a(V+G(t)+"ADD"+G(e)),q(n,e,s))})),...!w&&c?f(T(i),(async s=>{s!=e&&(await a(V+G(t)+"DROP"+G(s)),q(n,s))})):[]])}else await a("CREATE "+K+G(t)+"("+G(e)+` PRIMARY KEY ON CONFLICT REPLACE${v(f(u,(a=>n+G(a))))});`),q(r,t,x([[e,s],...f(u,(a=>[a,s]))]));if(w)l(o)?await a(Q+G(t)+aa+" 1"):await E(M(o,(async(s,n)=>{l(s)?await a(Q+G(t)+aa+G(e)+"=?",[n]):g(u)||await ea(a,t,e,S(s),[n,...P(s)],i)})));else if(g(u))C(r,t)&&await a(Q+G(t)+aa+" 1");else{const s=m(F(j(r,t)),(a=>a!=e)),n=[],c=[];M(o??{},((a,t)=>{h(n,t,...f(s,(t=>a?.[t]))),h(c,t)})),await ea(a,t,e,s,n,i),await a(Q+G(t)+aa+G(e)+"NOT IN("+sa(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},ea=async(a,t,e,i,o,c=!0)=>await a("INSERT "+(c?s:"OR REPLACE ")+"INTO"+G(t)+"("+G(e)+v(f(i,(a=>n+G(a))))+")VALUES"+u(r(`,(?${r(",?",p(i))})`,p(o)/(p(i)+1)),1)+(c?"ON CONFLICT("+G(e)+")DO UPDATE SET"+v(f(i,(a=>G(a)+"=excluded."+G(a))),n):s),f(o,(a=>a??null))),sa=a=>v(f(a,(()=>"?")),n),na=x(),ia=x(),ra=(a,t,e,s,n,i,r,o={},c=[])=>{let w,u,p,E=0,v=0,f=0;H(na,c,(()=>0)),H(ia,c,(()=>[]));const[g,m,C,T,A]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),O=t=>{(g&&d(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},b=async a=>(2!=E&&(E=1,v++,await D((async()=>{try{O(await t())}catch(t){i?.(t),a&&A(a)}E=0}))),I),N=()=>(u&&(n(u),u=void 0),I),S=async a=>(1!=E&&(E=2,f++,await D((async()=>{try{await e(m,a)}catch(a){i?.(a)}E=0}))),I),L=()=>(y(p,a.delListener),p=void 0,I),D=async(...a)=>(h(j(ia,c),...a),await(async()=>{if(!j(na,c)){for(q(na,c,1);!l((a=j(ia,c),w=a.shift()));)try{await w()}catch(a){i?.(a)}q(na,c,0)}var a})(),I),I={load:b,startAutoLoad:async a=>(await N().load(a),u=s((async(a,t)=>{t||a?2!=E&&(E=1,v++,O(t??a),E=0):await b()})),I),stopAutoLoad:N,isAutoLoading:()=>!l(u),save:S,startAutoSave:async()=>(await L().save(),p=a.addDidFinishTransactionListener((()=>{const a=C();T(a)&&S(a)})),I),stopAutoSave:L,isAutoSaving:()=>!l(p),schedule:D,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({loads:v,saves:f}),...o};return R(I)},oa=(a,t,e,s,n,i,[r,o,c],l,y,w,d)=>{const[u,p,E,v]=ta(t,l,n,d);return ra(a,(async()=>await v((async()=>{return await u(),a=(await p(r,o))[Y]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await u(),await E(r,o,{[Y]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,s,n,i,{[w]:()=>y},y)},ca=(a,t,e,s,n,i,[r,o,[c,y,w]],d,u,p,v)=>{const[f,g,h,C]=ta(t,d,n,v),T=async(a,t)=>await E(B(o,(async([e,s,n,i],r)=>{t&&!I(a,r)||await h(e,s,a[r],n,i,t)}))),A=async(a,t)=>y?await h(w,k,{[Y]:a},!0,!0,t):null;return ra(a,(async()=>await C((async()=>{await f();const a=await(async()=>L(m(await E(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,k))[Y]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await C((async()=>{if(await f(),l(t)){const[t,e]=a();await T(t),await A(e)}else await T(t[0],!0),await A(t[1],!0)}))),e,s,n,i,{[p]:()=>u},u)},la="ColumnName",ya="store",wa="json",da=ya+"TableName",ua=ya+"Id"+la,pa=ya+la,Ea="autoLoadIntervalSeconds",va="rowId"+la,fa="tableId",ga="tableName",ma={mode:wa,[Ea]:1},ha={load:0,save:0,[ga]:e+"_values"},Ca=(a,t,e,s,n)=>{const i=x();return M(a,((a,r)=>{const o=u(P(D(t,w(a)?{[e]:a}:a)),0,$(t));l(o[0])||s(r,o[0])||(n(r,o[0]),q(i,r,o))})),i},Ta="pragma_",Aa="data_version",Oa="schema_version";a.createExpoSqlitePersister=(a,t,s,n,i)=>((a,t,s,n,i,r,o,l,y,d="getDb",p)=>{let E,v,f;const[g,m,h,A]=(a=>{const t=(a=>D(ma,w(a)?{[da]:a}:a??{}))(a),s=t[Ea];if(t.mode==wa){const a=t[da]??e;return[1,s,[a,t[ua]??k,t[pa]??ya],W(a)]}const{tables:{load:n={},save:i={}}={},values:r={}}=t,o=u(P(D(ha,r)),0,$(ha)),c=o[2],l=W(c),y=W(c);return[0,s,[Ca(n,{[fa]:null,[va]:k},fa,(a=>C(y,a)),(a=>z(l,a))),Ca(i,{[ga]:null,[va]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>C(y,t)),((a,t)=>z(l,t))),o],l]})(t);return(g?oa:ca)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:n}]=await s(`SELECT ${Aa} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ta}${Aa} JOIN ${Ta}${Oa}`);t==(E??=t)&&e==(v??=e)&&n==(f??=n)||(a(),E=t,v=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),n((t=>A.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=v=f=null,i(t)}),o,l,h,T(A),y,d,p)})(a,s,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,i,3,t)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqlite={});
1
+ var a,t;a=this,t=function(a,t){"use strict";const e=a=>typeof a,s="tinybase",n="",i=",",r=e(n),o=(a,t)=>a.repeat(t),c=Promise,l=clearInterval,y=a=>null==a,w=(a,t,e)=>y(a)?e?.():t(a),d=a=>e(a)==r,u=a=>Array.isArray(a),p=(a,t,e)=>a.slice(t,e),E=a=>a.length,v=async a=>c.all(a),f=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),m=a=>0==E(a),h=(a,t)=>a.filter(t),A=(a,...t)=>a.push(...t),C=(a,t)=>a?.has(t)??!1,T=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),b=Object,N=a=>b.getPrototypeOf(a),S=b.entries,L=b.keys,R=b.freeze,D=(a=[])=>b.fromEntries(a),I=(...a)=>b.assign({},...a),M=(a,t)=>t in a,P=(a,t)=>g(S(a),(([a,e])=>t(e,a))),x=a=>b.values(a),$=a=>E(L(a)),_=a=>(a=>!y(a)&&w(N(a),(a=>a==b.prototype||y(N(a))),(()=>!0)))(a)&&0==$(a),F=a=>new Map(a),q=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>y(e)?(O(a,t),a):a?.set(t,e),J=(a,t,e,s)=>(C(a,t)||H(a,t,e()),j(a,t)),Y=(a,t,e,s=H)=>(P(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>M(t,e)?0:s(a,e))),a),k="_",G="_id",U=a=>`"${a.replace(/"/g,'""')}"`,W="SELECT",z=a=>new Set(u(a)||y(a)?a:[a]),K=(a,t)=>a?.add(t),V="TABLE",Q="ALTER "+V,X="DELETE FROM",Z=W+"*FROM",aa="FROM pragma_table_",ta="WHERE",ea=(a,t,e,s)=>{const r=F();return[async()=>Y(r,D(await v(g(await a("SELECT name "+aa+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,D(g(await a(W+" name,type "+aa+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,F),e,((a,t,e)=>{e!=j(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!y(j(j(r,a),t)))(t,e)?D(h(g(await a(Z+U(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!y(a)&&!_(t)))):{},async(t,e,o,c,l,w=!1)=>{const d=z();P(o??{},(a=>g(L(a??{}),(a=>K(d,a)))));const u=T(d);if(!w&&l&&m(u)&&C(r,t))return await a("DROP "+V+U(t)),void H(r,t);if(m(u)||C(r,t)){const s=j(r,t),i=z(q(s));await v([...g(u,(async e=>{O(i,e)||(await a(Q+U(t)+"ADD"+U(e)),H(s,e,n))})),...!w&&c?g(T(i),(async n=>{n!=e&&(await a(Q+U(t)+"DROP"+U(n)),H(s,n))})):[]])}else await a("CREATE "+V+U(t)+"("+U(e)+` PRIMARY KEY ON CONFLICT REPLACE${f(g(u,(a=>i+U(a))))});`),H(r,t,F([[e,n],...g(u,(a=>[a,n]))]));if(w)y(o)?await a(X+U(t)+ta+" 1"):await v(P(o,(async(n,i)=>{y(n)?await a(X+U(t)+ta+U(e)+"=?",[i]):m(u)||await sa(a,t,e,L(n),[i,...x(n)],s)})));else if(m(u))C(r,t)&&await a(X+U(t)+ta+" 1");else{const n=h(q(j(r,t)),(a=>a!=e)),i=[],c=[];P(o??{},((a,t)=>{A(i,t,...g(n,(t=>a?.[t]))),A(c,t)})),await sa(a,t,e,n,i,s),await a(X+U(t)+ta+U(e)+"NOT IN("+na(c)+")",c)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},sa=async(a,t,e,s,r,c=!0)=>await a("INSERT "+(c?n:"OR REPLACE ")+"INTO"+U(t)+"("+U(e)+f(g(s,(a=>i+U(a))))+")VALUES"+p(o(`,(?${o(",?",E(s))})`,E(r)/(E(s)+1)),1)+(c?"ON CONFLICT("+U(e)+")DO UPDATE SET"+f(g(s,(a=>U(a)+"=excluded."+U(a))),i):n),g(r,(a=>a??null))),na=a=>f(g(a,(()=>"?")),i),ia=F(),ra=F(),oa=(a,t,e,s,n,i,r,o={},c=[])=>{let l,d,p,E=0,v=0,f=0;J(ia,c,(()=>0)),J(ra,c,(()=>[]));const[g,m,h,C,T]=((a=1,t)=>a>1&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:(a=>{throw Error("Store type not supported by this Persister")})())(r,a),O=t=>{(g&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},b=async a=>(2!=E&&(E=1,v++,await D((async()=>{try{O(await t())}catch(t){i?.(t),a&&T(a)}E=0}))),I),N=()=>(d&&(n(d),d=void 0),I),S=async a=>(1!=E&&(E=2,f++,await D((async()=>{try{await e(m,a)}catch(a){i?.(a)}E=0}))),I),L=()=>(w(p,a.delListener),p=void 0,I),D=async(...a)=>(A(j(ra,c),...a),await(async()=>{if(!j(ia,c)){for(H(ia,c,1);!y((a=j(ra,c),l=a.shift()));)try{await l()}catch(a){i?.(a)}H(ia,c,0)}var a})(),I),I={load:b,startAutoLoad:async a=>(await N().load(a),d=s((async(a,t)=>{t||a?2!=E&&(E=1,v++,O(t??a),E=0):await b()})),I),stopAutoLoad:N,isAutoLoading:()=>!y(d),save:S,startAutoSave:async()=>(await L().save(),p=a.addDidFinishTransactionListener((()=>{const a=h();C(a)&&S(a)})),I),stopAutoSave:L,isAutoSaving:()=>!y(p),schedule:D,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({loads:v,saves:f}),...o};return R(I)},ca=(a,t,e,s,n,i,[r,o,c],l,y,w,d)=>{const[u,p,E,v]=ea(t,l,n,d);return oa(a,(async()=>await v((async()=>{return await u(),a=(await p(r,o))[k]?.[c]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await u(),await E(r,o,{[k]:{[c]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,s,n,i,{[w]:()=>y},y)},la=(a,t,e,s,n,i,[r,o,[c,l,w]],d,u,p,E)=>{const[f,g,m,A]=ea(t,d,n,E),C=async(a,t)=>await v(B(o,(async([e,s,n,i],r)=>{t&&!M(a,r)||await m(e,s,a[r],n,i,t)}))),T=async(a,t)=>l?await m(w,G,{[k]:a},!0,!0,t):null;return oa(a,(async()=>await A((async()=>{await f();const a=await(async()=>D(h(await v(B(r,(async([a,t],e)=>[a,await g(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>c?(await g(w,G))[k]:{})();return _(a)&&y(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await f(),y(t)){const[t,e]=a();await C(t),await T(e)}else await C(t[0],!0),await T(t[1],!0)}))),e,s,n,i,{[p]:()=>u},u)},ya="ColumnName",wa="store",da="json",ua=wa+"TableName",pa=wa+"Id"+ya,Ea=wa+ya,va="autoLoadIntervalSeconds",fa="rowId"+ya,ga="tableId",ma="tableName",ha={mode:da,[va]:1},Aa={load:0,save:0,[ma]:s+"_values"},Ca=(a,t,e,s,n)=>{const i=F();return P(a,((a,r)=>{const o=p(x(I(t,d(a)?{[e]:a}:a)),0,$(t));y(o[0])||s(r,o[0])||(n(r,o[0]),H(i,r,o))})),i},Ta="pragma_",Oa="data_version",ba="schema_version";a.createExpoSqlitePersister=(a,e,n,i,r)=>((a,t,e,n,i,r,o,c,y,w="getDb",u)=>{let E,v,f;const[g,m,h,A]=(a=>{const t=(a=>I(ha,d(a)?{[ua]:a}:a??{}))(a),e=t[va];if(t.mode==da){const a=t[ua]??s;return[1,e,[a,t[pa]??G,t[Ea]??wa],z(a)]}const{tables:{load:n={},save:i={}}={},values:r={}}=t,o=p(x(I(Aa,r)),0,$(Aa)),c=o[2],l=z(c),y=z(c);return[0,e,[Ca(n,{[ga]:null,[fa]:G},ga,(a=>C(y,a)),(a=>K(l,a))),Ca(i,{[ma]:null,[fa]:G,deleteEmptyColumns:0,deleteEmptyTable:0},ma,((a,t)=>C(y,t)),((a,t)=>K(l,t))),o],l]})(t);return(g?ca:la)(a,r?async(a,t)=>(r(a,t),await e(a,t)):e,(a=>{return[(t=async()=>{try{const[{d:t,s:s,c:n}]=await e(`SELECT ${Oa} d,${ba} s,TOTAL_CHANGES() c FROM ${Ta}${Oa} JOIN ${Ta}${ba}`);t==(E??=t)&&s==(v??=s)&&n==(f??=n)||(a(),E=t,v=s)}catch{}},s=m,t(),setInterval(t,1e3*s)),n((t=>A.has(t)?a():0))];var t,s}),(([a,t])=>{l(a),E=v=f=null,i(t)}),o,c,h,T(A),y,w,u)})(a,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(a=>t.addDatabaseChangeListener((({tableName:t})=>a(t)))),(a=>a.remove()),i,r,3,e)},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("expo-sqlite")):"function"==typeof define&&define.amd?define(["exports","expo-sqlite"],t):t((a="undefined"!=typeof globalThis?globalThis:a||self).TinyBasePersisterExpoSqlite={},a.expoSqlite);