tinybase 4.4.0-beta.0 → 4.4.0-beta.2

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 (347) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/cjs/checkpoints.cjs +1 -1
  4. package/lib/cjs/checkpoints.cjs.gz +0 -0
  5. package/lib/cjs/indexes.cjs +1 -1
  6. package/lib/cjs/indexes.cjs.gz +0 -0
  7. package/lib/cjs/metrics.cjs +1 -1
  8. package/lib/cjs/metrics.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  10. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  12. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  14. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  16. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-file.cjs +1 -1
  18. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  20. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  24. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  26. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  30. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  31. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  32. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  33. package/lib/cjs/persisters.cjs +1 -1
  34. package/lib/cjs/persisters.cjs.gz +0 -0
  35. package/lib/cjs/queries.cjs +1 -1
  36. package/lib/cjs/queries.cjs.gz +0 -0
  37. package/lib/cjs/relationships.cjs +1 -1
  38. package/lib/cjs/relationships.cjs.gz +0 -0
  39. package/lib/cjs/store.cjs +1 -1
  40. package/lib/cjs/store.cjs.gz +0 -0
  41. package/lib/cjs/tinybase.cjs +1 -1
  42. package/lib/cjs/tinybase.cjs.gz +0 -0
  43. package/lib/cjs/tools.cjs +1 -1
  44. package/lib/cjs/tools.cjs.gz +0 -0
  45. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  46. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  47. package/lib/cjs/ui-react-dom.cjs +1 -1
  48. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  49. package/lib/cjs/ui-react.cjs +1 -1
  50. package/lib/cjs/ui-react.cjs.gz +0 -0
  51. package/lib/cjs-es6/checkpoints.cjs +1 -1
  52. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  53. package/lib/cjs-es6/indexes.cjs +1 -1
  54. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  55. package/lib/cjs-es6/metrics.cjs +1 -1
  56. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  74. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  75. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  76. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  77. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  78. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  79. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  80. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  81. package/lib/cjs-es6/persisters.cjs +1 -1
  82. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  83. package/lib/cjs-es6/queries.cjs +1 -1
  84. package/lib/cjs-es6/queries.cjs.gz +0 -0
  85. package/lib/cjs-es6/relationships.cjs +1 -1
  86. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  87. package/lib/cjs-es6/store.cjs +1 -1
  88. package/lib/cjs-es6/store.cjs.gz +0 -0
  89. package/lib/cjs-es6/tinybase.cjs +1 -1
  90. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  91. package/lib/cjs-es6/tools.cjs +1 -1
  92. package/lib/cjs-es6/tools.cjs.gz +0 -0
  93. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  94. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  95. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  96. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  97. package/lib/cjs-es6/ui-react.cjs +1 -1
  98. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  99. package/lib/debug/checkpoints.js +12 -12
  100. package/lib/debug/indexes.js +9 -9
  101. package/lib/debug/metrics.js +9 -9
  102. package/lib/debug/persisters/persister-automerge.js +21 -8
  103. package/lib/debug/persisters/persister-browser.js +17 -3
  104. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +27 -12
  105. package/lib/debug/persisters/persister-expo-sqlite.js +27 -12
  106. package/lib/debug/persisters/persister-file.js +17 -3
  107. package/lib/debug/persisters/persister-indexed-db.js +21 -8
  108. package/lib/debug/persisters/persister-partykit-client.js +54 -20
  109. package/lib/debug/persisters/persister-partykit-server.js +173 -77
  110. package/lib/debug/persisters/persister-remote.js +17 -3
  111. package/lib/debug/persisters/persister-sqlite-wasm.js +27 -12
  112. package/lib/debug/persisters/persister-sqlite3.js +28 -13
  113. package/lib/debug/persisters/persister-yjs.js +23 -10
  114. package/lib/debug/persisters.js +16 -4
  115. package/lib/debug/queries.js +16 -15
  116. package/lib/debug/relationships.js +9 -9
  117. package/lib/debug/store.js +130 -35
  118. package/lib/debug/tinybase.js +142 -41
  119. package/lib/debug/tools.js +17 -9
  120. package/lib/debug/ui-react-dom.js +262 -150
  121. package/lib/debug/ui-react.js +288 -67
  122. package/lib/es6/checkpoints.js +1 -1
  123. package/lib/es6/checkpoints.js.gz +0 -0
  124. package/lib/es6/indexes.js +1 -1
  125. package/lib/es6/indexes.js.gz +0 -0
  126. package/lib/es6/metrics.js +1 -1
  127. package/lib/es6/metrics.js.gz +0 -0
  128. package/lib/es6/persisters/persister-automerge.js +1 -1
  129. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  130. package/lib/es6/persisters/persister-browser.js +1 -1
  131. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  132. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  133. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  134. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  135. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  136. package/lib/es6/persisters/persister-file.js +1 -1
  137. package/lib/es6/persisters/persister-file.js.gz +0 -0
  138. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  139. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  140. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  141. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  142. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  143. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  144. package/lib/es6/persisters/persister-remote.js +1 -1
  145. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  146. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  147. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  148. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  149. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  150. package/lib/es6/persisters/persister-yjs.js +1 -1
  151. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  152. package/lib/es6/persisters.js +1 -1
  153. package/lib/es6/persisters.js.gz +0 -0
  154. package/lib/es6/queries.js +1 -1
  155. package/lib/es6/queries.js.gz +0 -0
  156. package/lib/es6/relationships.js +1 -1
  157. package/lib/es6/relationships.js.gz +0 -0
  158. package/lib/es6/store.js +1 -1
  159. package/lib/es6/store.js.gz +0 -0
  160. package/lib/es6/tinybase.js +1 -1
  161. package/lib/es6/tinybase.js.gz +0 -0
  162. package/lib/es6/tools.js +1 -1
  163. package/lib/es6/tools.js.gz +0 -0
  164. package/lib/es6/ui-react-dom-debug.js +1 -1
  165. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  166. package/lib/es6/ui-react-dom.js +1 -1
  167. package/lib/es6/ui-react-dom.js.gz +0 -0
  168. package/lib/es6/ui-react.js +1 -1
  169. package/lib/es6/ui-react.js.gz +0 -0
  170. package/lib/indexes.js +1 -1
  171. package/lib/indexes.js.gz +0 -0
  172. package/lib/metrics.js +1 -1
  173. package/lib/metrics.js.gz +0 -0
  174. package/lib/persisters/persister-automerge.js +1 -1
  175. package/lib/persisters/persister-automerge.js.gz +0 -0
  176. package/lib/persisters/persister-browser.js +1 -1
  177. package/lib/persisters/persister-browser.js.gz +0 -0
  178. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  179. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  180. package/lib/persisters/persister-expo-sqlite.js +1 -1
  181. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  182. package/lib/persisters/persister-file.js +1 -1
  183. package/lib/persisters/persister-file.js.gz +0 -0
  184. package/lib/persisters/persister-indexed-db.js +1 -1
  185. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  186. package/lib/persisters/persister-partykit-client.js +1 -1
  187. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  188. package/lib/persisters/persister-partykit-server.js +1 -1
  189. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  190. package/lib/persisters/persister-remote.js +1 -1
  191. package/lib/persisters/persister-remote.js.gz +0 -0
  192. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  193. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  194. package/lib/persisters/persister-sqlite3.js +1 -1
  195. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  196. package/lib/persisters/persister-yjs.js +1 -1
  197. package/lib/persisters/persister-yjs.js.gz +0 -0
  198. package/lib/persisters.js +1 -1
  199. package/lib/persisters.js.gz +0 -0
  200. package/lib/queries.js +1 -1
  201. package/lib/queries.js.gz +0 -0
  202. package/lib/relationships.js +1 -1
  203. package/lib/relationships.js.gz +0 -0
  204. package/lib/store.js +1 -1
  205. package/lib/store.js.gz +0 -0
  206. package/lib/tinybase.js +1 -1
  207. package/lib/tinybase.js.gz +0 -0
  208. package/lib/tools.js +1 -1
  209. package/lib/tools.js.gz +0 -0
  210. package/lib/types/persisters/persister-automerge.d.ts +36 -3
  211. package/lib/types/persisters/persister-browser.d.ts +71 -8
  212. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +42 -8
  213. package/lib/types/persisters/persister-expo-sqlite.d.ts +40 -7
  214. package/lib/types/persisters/persister-file.d.ts +34 -3
  215. package/lib/types/persisters/persister-indexed-db.d.ts +40 -9
  216. package/lib/types/persisters/persister-partykit-client.d.ts +99 -13
  217. package/lib/types/persisters/persister-partykit-server.d.ts +414 -9
  218. package/lib/types/persisters/persister-remote.d.ts +40 -4
  219. package/lib/types/persisters/persister-sqlite-wasm.d.ts +46 -7
  220. package/lib/types/persisters/persister-sqlite3.d.ts +40 -7
  221. package/lib/types/persisters/persister-yjs.d.ts +37 -5
  222. package/lib/types/persisters.d.ts +10 -10
  223. package/lib/types/queries.d.ts +24 -0
  224. package/lib/types/store.d.ts +912 -32
  225. package/lib/types/tools.d.ts +4 -6
  226. package/lib/types/ui-react-dom.d.ts +13 -2
  227. package/lib/types/ui-react.d.ts +1176 -44
  228. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +38 -4
  229. package/lib/types/with-schemas/persisters/persister-browser.d.ts +75 -10
  230. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +44 -9
  231. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +42 -8
  232. package/lib/types/with-schemas/persisters/persister-file.d.ts +36 -4
  233. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +42 -10
  234. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +102 -15
  235. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +447 -9
  236. package/lib/types/with-schemas/persisters/persister-remote.d.ts +42 -5
  237. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +48 -8
  238. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +41 -7
  239. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +39 -6
  240. package/lib/types/with-schemas/persisters.d.ts +10 -10
  241. package/lib/types/with-schemas/queries.d.ts +24 -0
  242. package/lib/types/with-schemas/store.d.ts +1180 -36
  243. package/lib/types/with-schemas/tools.d.ts +4 -6
  244. package/lib/types/with-schemas/ui-react-dom.d.ts +21 -4
  245. package/lib/types/with-schemas/ui-react.d.ts +1382 -71
  246. package/lib/ui-react-dom.js +1 -1
  247. package/lib/ui-react-dom.js.gz +0 -0
  248. package/lib/ui-react.js +1 -1
  249. package/lib/ui-react.js.gz +0 -0
  250. package/lib/umd/checkpoints.js +1 -1
  251. package/lib/umd/checkpoints.js.gz +0 -0
  252. package/lib/umd/indexes.js +1 -1
  253. package/lib/umd/indexes.js.gz +0 -0
  254. package/lib/umd/metrics.js +1 -1
  255. package/lib/umd/metrics.js.gz +0 -0
  256. package/lib/umd/persisters/persister-automerge.js +1 -1
  257. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  258. package/lib/umd/persisters/persister-browser.js +1 -1
  259. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  260. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  261. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  262. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  263. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  264. package/lib/umd/persisters/persister-file.js +1 -1
  265. package/lib/umd/persisters/persister-file.js.gz +0 -0
  266. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  267. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  268. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  269. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  270. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  271. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  272. package/lib/umd/persisters/persister-remote.js +1 -1
  273. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  274. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  275. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  276. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  277. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  278. package/lib/umd/persisters/persister-yjs.js +1 -1
  279. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  280. package/lib/umd/persisters.js +1 -1
  281. package/lib/umd/persisters.js.gz +0 -0
  282. package/lib/umd/queries.js +1 -1
  283. package/lib/umd/queries.js.gz +0 -0
  284. package/lib/umd/relationships.js +1 -1
  285. package/lib/umd/relationships.js.gz +0 -0
  286. package/lib/umd/store.js +1 -1
  287. package/lib/umd/store.js.gz +0 -0
  288. package/lib/umd/tinybase.js +1 -1
  289. package/lib/umd/tinybase.js.gz +0 -0
  290. package/lib/umd/tools.js +1 -1
  291. package/lib/umd/tools.js.gz +0 -0
  292. package/lib/umd/ui-react-dom-debug.js +1 -1
  293. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  294. package/lib/umd/ui-react-dom.js +1 -1
  295. package/lib/umd/ui-react-dom.js.gz +0 -0
  296. package/lib/umd/ui-react.js +1 -1
  297. package/lib/umd/ui-react.js.gz +0 -0
  298. package/lib/umd-es6/checkpoints.js +1 -1
  299. package/lib/umd-es6/checkpoints.js.gz +0 -0
  300. package/lib/umd-es6/indexes.js +1 -1
  301. package/lib/umd-es6/indexes.js.gz +0 -0
  302. package/lib/umd-es6/metrics.js +1 -1
  303. package/lib/umd-es6/metrics.js.gz +0 -0
  304. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  305. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  306. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  307. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  308. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  309. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  310. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  311. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  312. package/lib/umd-es6/persisters/persister-file.js +1 -1
  313. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  314. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  315. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  316. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  317. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  318. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  319. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  320. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  321. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  322. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  323. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  324. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  325. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  326. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  327. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  328. package/lib/umd-es6/persisters.js +1 -1
  329. package/lib/umd-es6/persisters.js.gz +0 -0
  330. package/lib/umd-es6/queries.js +1 -1
  331. package/lib/umd-es6/queries.js.gz +0 -0
  332. package/lib/umd-es6/relationships.js +1 -1
  333. package/lib/umd-es6/relationships.js.gz +0 -0
  334. package/lib/umd-es6/store.js +1 -1
  335. package/lib/umd-es6/store.js.gz +0 -0
  336. package/lib/umd-es6/tinybase.js +1 -1
  337. package/lib/umd-es6/tinybase.js.gz +0 -0
  338. package/lib/umd-es6/tools.js +1 -1
  339. package/lib/umd-es6/tools.js.gz +0 -0
  340. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  341. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  342. package/lib/umd-es6/ui-react-dom.js +1 -1
  343. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  344. package/lib/umd-es6/ui-react.js +1 -1
  345. package/lib/umd-es6/ui-react.js.gz +0 -0
  346. package/package.json +42 -40
  347. package/readme.md +2 -2
@@ -1 +1 @@
1
- const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=(e,t)=>e.includes(t),r=(e,t)=>e.forEach(t),s=e=>e.length,o=e=>0==s(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=t=>e(t)||0==(e=>e?.size??0)(t),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),f=(e,t)=>e?.get(t),g=(t,n,r)=>e(r)?(p(t,n),t):t?.set(n,r),k=(e,t,n)=>(d(e,t)||g(e,t,n()),f(e,t)),L=(e,n,r,o,l=0)=>t((r?k:f)(e,n[l],l>s(n)-2?r:C),(t=>{if(l>s(n)-2)return o?.(t)&&g(e,n[l]),t;const c=L(t,n,r,o,l+1);return u(t)&&g(e,n[l]),c})),v=t=>new Set(Array.isArray(t)||e(t)?t:[t]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(n=>{let o;const[c,a]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{w.test(t)&&s(e)<1e3&&l(e,t)}]})(),d=C();return[(e,t,n,r=[],s=(()=>[]))=>{o??=_;const l=c(1);var i,a;return g(d,l,[e,t,n,r,s]),i=L(t,n??[""],v),a=l,i?.add(a),l},(e,t,...n)=>r(((e,t=[""])=>{const n=[],o=(e,c)=>c==s(t)?l(n,e):null===t[c]?h(e,(e=>o(e,c+1))):r([t[c],null],(t=>o(f(e,t),c+1)));return o(e,0),n})(e,t),(e=>h(e,(e=>f(d,e)[0](o,...t??[],...n))))),e=>t(f(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),g(d,e),a(e),n))),n=>t(f(d,n),(([t,,n=[],l,c])=>{const i=(...a)=>{const d=s(a);d==s(n)?t(o,...a,...c(a)):e(n[d])?r(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,n[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(t,n)=>{M=0,S.transaction((()=>{const[r,s]=f(O,n);h(r,((n,r)=>h(n,((n,s)=>h(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(S,r,s,o,n[t]))))))),h(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(S,r,n[t])))})),M=1},q=e=>{g(O,e),g(T,e),B(j,[e])},D=(e,t)=>r(((e,t)=>e.splice(0,t))(e,t??s(e)),q),G=()=>D(W,s(W)-V),H=()=>t(y,(()=>{l(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=c(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=k(A,t,C),l=k(e,n,C),c=k(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(g(l,r))&&u(g(e,n))&&u(g(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=k(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(g(I,t))&&J(),U()}})),P=(t="")=>(e(y)&&(y=""+z++,g(O,y,[A,I]),Y(y,t),A=C(),I=C(),E=1),y),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=c(W),E=1)},R=()=>{o($)||(l(W,y),y=i($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&f(T,e)!==t&&(g(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>f(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const r=n(W,t)?Q:n($,t)?R:null;for(;!e(r)&&t!=y;)r();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),e(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
1
+ const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=t=>e(t)||0==(e=>e?.size??0)(t),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),f=(e,t)=>e?.get(t),g=(t,n,r)=>e(r)?(p(t,n),t):t?.set(n,r),k=(e,t,n)=>(d(e,t)||g(e,t,n()),f(e,t)),L=(e,r,s,o,l=0)=>t((s?k:f)(e,r[l],l>n(r)-2?s:C),(t=>{if(l>n(r)-2)return o?.(t)&&g(e,r[l]),t;const c=L(t,r,s,o,l+1);return u(t)&&g(e,r[l]),c})),v=t=>new Set(Array.isArray(t)||e(t)?t:[t]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(r=>{let o;const[c,a]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{w.test(t)&&n(e)<1e3&&l(e,t)}]})(),d=C();return[(e,t,n,r=[],s=(()=>[]))=>{o??=_;const l=c(1);var i,a;return g(d,l,[e,t,n,r,s]),i=L(t,n??[""],v),a=l,i?.add(a),l},(e,t,...r)=>s(((e,t=[""])=>{const r=[],o=(e,c)=>c==n(t)?l(r,e):null===t[c]?h(e,(e=>o(e,c+1))):s([t[c],null],(t=>o(f(e,t),c+1)));return o(e,0),r})(e,t),(e=>h(e,(e=>f(d,e)[0](o,...t??[],...r))))),e=>t(f(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),g(d,e),a(e),n))),r=>t(f(d,r),(([t,,r=[],l,c])=>{const i=(...a)=>{const d=n(a);d==n(r)?t(o,...a,...c(a)):e(r[d])?s(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,r[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(t,n)=>{M=0,S.transaction((()=>{const[r,s]=f(O,n);h(r,((n,r)=>h(n,((n,s)=>h(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(S,r,s,o,n[t]))))))),h(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(S,r,n[t])))})),M=1},q=e=>{g(O,e),g(T,e),B(j,[e])},D=(e,t)=>s(((e,t)=>e.splice(0,t))(e,t??n(e)),q),G=()=>D(W,n(W)-V),H=()=>t(y,(()=>{l(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=c(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=k(A,t,C),l=k(e,n,C),c=k(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(g(l,r))&&u(g(e,n))&&u(g(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=k(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(g(I,t))&&J(),U()}})),P=(t="")=>(e(y)&&(y=""+z++,g(O,y,[A,I]),Y(y,t),A=C(),I=C(),E=1),y),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=c(W),E=1)},R=()=>{o($)||(l(W,y),y=i($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&f(T,e)!==t&&(g(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>f(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=r(W,t)?Q:r($,t)?R:null;for(;!e(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),e(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=(e,t)=>e.includes(t),r=(e,t)=>e.forEach(t),s=e=>e.length,o=e=>0==s(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=t=>e(t)||0==(e=>e?.size??0)(t),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),k=(e,t)=>e?.get(t),f=(t,n,r)=>e(r)?(p(t,n),t):t?.set(n,r),g=(e,t,n)=>(d(e,t)||f(e,t,n()),k(e,t)),L=(e,n,r,o,l=0)=>t((r?g:k)(e,n[l],l>s(n)-2?r:C),(t=>{if(l>s(n)-2)return o?.(t)&&f(e,n[l]),t;const c=L(t,n,r,o,l+1);return u(t)&&f(e,n[l]),c})),v=t=>new Set(Array.isArray(t)||e(t)?t:[t]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(n=>{let o;const[c,a]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{w.test(t)&&s(e)<1e3&&l(e,t)}]})(),d=C();return[(e,t,n,r=[],s=(()=>[]))=>{o??=_;const l=c(1);var i,a;return f(d,l,[e,t,n,r,s]),i=L(t,n??[""],v),a=l,i?.add(a),l},(e,t,...n)=>r(((e,t=[""])=>{const n=[],o=(e,c)=>c==s(t)?l(n,e):null===t[c]?h(e,(e=>o(e,c+1))):r([t[c],null],(t=>o(k(e,t),c+1)));return o(e,0),n})(e,t),(e=>h(e,(e=>k(d,e)[0](o,...t??[],...n))))),e=>t(k(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),f(d,e),a(e),n))),n=>t(k(d,n),(([t,,n=[],l,c])=>{const i=(...a)=>{const d=s(a);d==s(n)?t(o,...a,...c(a)):e(n[d])?r(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,n[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(t,n)=>{M=0,S.transaction((()=>{const[r,s]=k(O,n);h(r,((n,r)=>h(n,((n,s)=>h(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(S,r,s,o,n[t]))))))),h(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(S,r,n[t])))})),M=1},q=e=>{f(O,e),f(T,e),B(j,[e])},D=(e,t)=>r(((e,t)=>e.splice(0,t))(e,t??s(e)),q),G=()=>D(W,s(W)-V),H=()=>t(y,(()=>{l(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=c(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=g(A,t,C),l=g(e,n,C),c=g(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(f(l,r))&&u(f(e,n))&&u(f(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=g(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(f(I,t))&&J(),U()}})),P=(t="")=>(e(y)&&(y=""+z++,f(O,y,[A,I]),Y(y,t),A=C(),I=C(),E=1),y),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=c(W),E=1)},R=()=>{o($)||(l(W,y),y=i($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&k(T,e)!==t&&(f(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>k(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const r=n(W,t)?Q:n($,t)?R:null;for(;!e(r)&&t!=y;)r();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),e(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();exports.createCheckpoints=S;
1
+ "use strict";const e=e=>null==e,t=(t,n,r)=>e(t)?r?.():n(t),n=e=>e.length,r=(e,t)=>e.includes(t),s=(e,t)=>e.forEach(t),o=e=>0==n(e),l=(e,...t)=>e.push(...t),c=e=>e.pop(),i=e=>e.shift(),a=Object.freeze,d=(e,t)=>e?.has(t)??!1,u=t=>e(t)||0==(e=>e?.size??0)(t),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),C=e=>new Map(e),k=(e,t)=>e?.get(t),f=(t,n,r)=>e(r)?(p(t,n),t):t?.set(n,r),g=(e,t,n)=>(d(e,t)||f(e,t,n()),k(e,t)),L=(e,r,s,o,l=0)=>t((s?g:k)(e,r[l],l>n(r)-2?s:C),(t=>{if(l>n(r)-2)return o?.(t)&&f(e,r[l]),t;const c=L(t,r,s,o,l+1);return u(t)&&f(e,r[l]),c})),v=t=>new Set(Array.isArray(t)||e(t)?t:[t]),w=/^\d+$/,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=C(),I=C(),M=1;const b=C(),j=C(),[x,B,F]=(r=>{let o;const[c,a]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{w.test(t)&&n(e)<1e3&&l(e,t)}]})(),d=C();return[(e,t,n,r=[],s=(()=>[]))=>{o??=_;const l=c(1);var i,a;return f(d,l,[e,t,n,r,s]),i=L(t,n??[""],v),a=l,i?.add(a),l},(e,t,...r)=>s(((e,t=[""])=>{const r=[],o=(e,c)=>c==n(t)?l(r,e):null===t[c]?h(e,(e=>o(e,c+1))):s([t[c],null],(t=>o(k(e,t),c+1)));return o(e,0),r})(e,t),(e=>h(e,(e=>k(d,e)[0](o,...t??[],...r))))),e=>t(k(d,e),(([,t,n])=>(L(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),f(d,e),a(e),n))),r=>t(k(d,r),(([t,,r=[],l,c])=>{const i=(...a)=>{const d=n(a);d==n(r)?t(o,...a,...c(a)):e(r[d])?s(l[d]?.(...a)??[],(e=>i(...a,e))):i(...a,r[d])};i()}))]})(),O=C(),T=C(),W=[],$=[],m=(t,n)=>{M=0,S.transaction((()=>{const[r,s]=k(O,n);h(r,((n,r)=>h(n,((n,s)=>h(n,((n,o)=>((t,n,r,s,o)=>e(o)?t.delCell(n,r,s,!0):t.setCell(n,r,s,o))(S,r,s,o,n[t]))))))),h(s,((n,r)=>((t,n,r)=>e(r)?t.delValue(n):t.setValue(n,r))(S,r,n[t])))})),M=1},q=e=>{f(O,e),f(T,e),B(j,[e])},D=(e,t)=>s(((e,t)=>e.splice(0,t))(e,t??n(e)),q),G=()=>D(W,n(W)-V),H=()=>t(y,(()=>{l(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=c(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=g(A,t,C),l=g(e,n,C),c=g(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&u(f(l,r))&&u(f(e,n))&&u(f(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=g(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&u(f(I,t))&&J(),U()}})),P=(t="")=>(e(y)&&(y=""+z++,f(O,y,[A,I]),Y(y,t),A=C(),I=C(),E=1),y),Q=()=>{o(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=c(W),E=1)},R=()=>{o($)||(l(W,y),y=i($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&k(T,e)!==t&&(f(T,e,t),B(j,[e])),_),Z=e=>d(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,h(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>k(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=r(W,t)?Q:r($,t)?R:null;for(;!e(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),e(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return a(_.clear())})(S)),y.get(S))})();exports.createCheckpoints=S;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=e=>null==e,o=(e,t,n)=>r(e)?n?.():t(e),c=e=>Array.isArray(e),d=(e,t)=>e.every(t),l=(e,t)=>d(e,((n,s)=>0==s||t(e[s-1],n)<=0)),a=(e,t)=>e.sort(t),i=(e,t)=>e.forEach(t),u=e=>e.length,I=(e,...t)=>e.push(...t),h=Object.freeze,f=(e,t)=>e?.has(t)??!1,g=e=>r(e)||0==(e=>e?.size??0)(e),L=e=>[...e?.values()??[]],S=e=>e.clear(),v=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),x=e=>new Map(e),p=e=>[...e?.keys()??[]],y=(e,t)=>e?.get(t),E=(e,t)=>v(e,((e,n)=>t(n,e))),R=(e,t,n)=>r(n)?(w(e,t),e):e?.set(t,n),b=(e,t,n)=>(f(e,t)||R(e,t,n()),y(e,t)),T=(e,t,n,s,r=0)=>o((n?b:y)(e,t[r],r>u(t)-2?n:x),(o=>{if(r>u(t)-2)return s?.(o)&&R(e,t[r]),o;const c=T(o,t,n,s,r+1);return g(o)&&R(e,t[r]),c})),k=e=>new Set(c(e)||r(e)?e:[e]),z=(e,t)=>e?.add(t),A=(s,r)=>e(s)==n?e=>e(s):s??(()=>r??t),C=(e,t)=>(e??0)<(t??0)?-1:1,D=/^\d+$/,M=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=x(),M=x(),[j,m,O]=(e=>{let n;const[s,c]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{D.test(t)&&u(e)<1e3&&I(e,t)}]})(),d=x();return[(e,r,o,c=[],l=(()=>[]))=>{n??=U;const a=s(1);return R(d,a,[e,r,o,c,l]),z(T(r,o??[t],k),a),a},(e,s,...r)=>i(((e,n=[t])=>{const s=[],r=(e,t)=>t==u(n)?I(s,e):null===n[t]?v(e,(e=>r(e,t+1))):i([n[t],null],(n=>r(y(e,n),t+1)));return r(e,0),s})(e,s),(e=>v(e,(e=>y(d,e)[0](n,...s??[],...r))))),e=>o(y(d,e),(([,n,s])=>(T(n,s??[t],void 0,(t=>(w(t,e),g(t)?1:0))),R(d,e),c(e),s))),e=>o(y(d,e),(([e,,t=[],s,o])=>{const c=(...d)=>{const l=u(d);l==u(t)?e(n,...d,...o(d)):r(t[l])?i(s[l]?.(...d)??[],(e=>c(...d,e))):c(...d,t[l])};c()}))]})(),[W,$,q,B,F,G,H,,J,K,N,P]=((e,t,n,s,l)=>{const a=e.hasRow,I=x(),h=x(),T=x(),A=x(),C=x(),D=x(),M=(t,n,...s)=>{const r=b(D,t,k);return i(s,(t=>z(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>o(y(D,t),(s=>{i(0==u(n)?L(s):n,(t=>{e.delListener(t),w(s,t)})),g(s)&&R(D,t)})),m=(e,n)=>{R(I,e,n),f(h,e)||(R(h,e,t()),R(A,e,x()),R(C,e,x()),l(T))},O=e=>{R(I,e),R(h,e),R(A,e),R(C,e),j(e),l(T)};return[()=>e,()=>p(I),e=>E(h,e),e=>f(h,e),e=>y(I,e),e=>y(h,e),(e,t)=>R(h,e,t),m,(t,s,o,l,I)=>{m(t,s);const h=x(),g=x(),L=y(A,t),w=y(C,t),p=t=>{const o=n=>e.getCell(s,t,n),i=y(L,t),f=a(s,t)?n(l(o,t)):void 0;var S,v;if(i===f||c(i)&&c(f)&&(v=f,u(S=i)===u(v)&&d(S,((e,t)=>v[t]===e)))||R(h,t,[i,f]),!r(I)){const e=y(w,t),n=a(s,t)?I(o,t):void 0;e!=n&&R(g,t,n)}},b=e=>{o((()=>{v(h,(([,e],t)=>R(L,t,e))),v(g,((e,t)=>R(w,t,e)))}),h,g,L,w,e),S(h),S(g)};E(L,p),e.hasTable(s)&&i(e.getRowIds(s),(e=>{f(L,e)||p(e)})),b(!0),j(t),M(t,0,e.addRowListener(s,null,((e,t,n)=>p(n))),e.addTableListener(s,(()=>b())))},O,e=>s(e,T),()=>E(D,O),M,j]})(e,x,(e=>{return r(e)?t:c(e)?(n=s,e.map(n)):s(e);var n}),j,m),Q=(t,n,s)=>{const r=F(t);v(s,((t,s)=>n(s,(n=>v(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},U={setIndexDefinition:(e,t,s,c,d,i=C)=>{const u=r(d)?void 0:([e],[t])=>d(e,t);return J(e,t,((t,s,d,I,h,L)=>{let S=0;const p=k(),b=k(),T=G(e);if(v(s,(([e,t],n)=>{const s=k(e),d=k(t);v(s,(e=>w(d,e)?w(s,e):0)),v(s,(e=>{z(p,e),o(y(T,e),(t=>{w(t,n),g(t)&&(R(T,e),S=1)}))})),v(d,(e=>{z(p,e),f(T,e)||(R(T,e,k()),S=1),z(y(T,e),n),r(c)||z(b,e)}))})),t(),g(h)||(L?E(T,(e=>z(b,e))):E(d,(e=>o(y(I,e),(e=>z(b,e))))),v(b,(e=>{const t=(t,n)=>i(y(h,t),y(h,n),e),n=[...y(T,e)];l(n,t)||(R(T,e,k(a(n,t))),z(p,e))}))),(S||L)&&!r(u)){const t=[...T];l(t,u)||(H(e,x(a(t,u))),S=1)}S&&m(n,[e]),v(p,(t=>m(M,[e,t])))}),A(s),o(c,A)),U},delIndexDefinition:e=>(K(e),U),getStore:W,getIndexIds:$,forEachIndex:e=>q(((t,n)=>e(t,(e=>Q(t,e,n))))),forEachSlice:(e,t)=>Q(e,t,G(e)),hasIndex:B,hasSlice:(e,t)=>f(G(e),t),getTableId:F,getSliceIds:e=>p(G(e)),getSliceRowIds:(e,t)=>L(y(G(e),t)),addIndexIdsListener:N,addSliceIdsListener:(e,t)=>j(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>j(n,M,[e,t]),delListener:e=>(O(e),U),destroy:P,getListenerStats:()=>({})};return h(U)})(e)),n.get(e))})();exports.createIndexes=M;
1
+ "use strict";const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=e=>null==e,o=(e,t,n)=>r(e)?n?.():t(e),c=e=>Array.isArray(e),d=e=>e.length,l=(e,t)=>e.every(t),a=(e,t)=>l(e,((n,s)=>0==s||t(e[s-1],n)<=0)),i=(e,t)=>e.sort(t),u=(e,t)=>e.forEach(t),I=(e,...t)=>e.push(...t),h=Object.freeze,f=(e,t)=>e?.has(t)??!1,g=e=>r(e)||0==(e=>e?.size??0)(e),L=e=>[...e?.values()??[]],S=e=>e.clear(),v=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),x=e=>new Map(e),p=e=>[...e?.keys()??[]],y=(e,t)=>e?.get(t),E=(e,t)=>v(e,((e,n)=>t(n,e))),R=(e,t,n)=>r(n)?(w(e,t),e):e?.set(t,n),b=(e,t,n)=>(f(e,t)||R(e,t,n()),y(e,t)),T=(e,t,n,s,r=0)=>o((n?b:y)(e,t[r],r>d(t)-2?n:x),(o=>{if(r>d(t)-2)return s?.(o)&&R(e,t[r]),o;const c=T(o,t,n,s,r+1);return g(o)&&R(e,t[r]),c})),k=e=>new Set(c(e)||r(e)?e:[e]),z=(e,t)=>e?.add(t),A=(s,r)=>e(s)==n?e=>e(s):s??(()=>r??t),C=(e,t)=>(e??0)<(t??0)?-1:1,D=/^\d+$/,M=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=x(),M=x(),[j,m,O]=(e=>{let n;const[s,c]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{D.test(t)&&d(e)<1e3&&I(e,t)}]})(),l=x();return[(e,r,o,c=[],d=(()=>[]))=>{n??=U;const a=s(1);return R(l,a,[e,r,o,c,d]),z(T(r,o??[t],k),a),a},(e,s,...r)=>u(((e,n=[t])=>{const s=[],r=(e,t)=>t==d(n)?I(s,e):null===n[t]?v(e,(e=>r(e,t+1))):u([n[t],null],(n=>r(y(e,n),t+1)));return r(e,0),s})(e,s),(e=>v(e,(e=>y(l,e)[0](n,...s??[],...r))))),e=>o(y(l,e),(([,n,s])=>(T(n,s??[t],void 0,(t=>(w(t,e),g(t)?1:0))),R(l,e),c(e),s))),e=>o(y(l,e),(([e,,t=[],s,o])=>{const c=(...l)=>{const a=d(l);a==d(t)?e(n,...l,...o(l)):r(t[a])?u(s[a]?.(...l)??[],(e=>c(...l,e))):c(...l,t[a])};c()}))]})(),[W,$,q,B,F,G,H,,J,K,N,P]=((e,t,n,s,a)=>{const i=e.hasRow,I=x(),h=x(),T=x(),A=x(),C=x(),D=x(),M=(t,n,...s)=>{const r=b(D,t,k);return u(s,(t=>z(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>o(y(D,t),(s=>{u(0==d(n)?L(s):n,(t=>{e.delListener(t),w(s,t)})),g(s)&&R(D,t)})),m=(e,n)=>{R(I,e,n),f(h,e)||(R(h,e,t()),R(A,e,x()),R(C,e,x()),a(T))},O=e=>{R(I,e),R(h,e),R(A,e),R(C,e),j(e),a(T)};return[()=>e,()=>p(I),e=>E(h,e),e=>f(h,e),e=>y(I,e),e=>y(h,e),(e,t)=>R(h,e,t),m,(t,s,o,a,I)=>{m(t,s);const h=x(),g=x(),L=y(A,t),w=y(C,t),p=t=>{const o=n=>e.getCell(s,t,n),u=y(L,t),f=i(s,t)?n(a(o,t)):void 0;var S,v;if(u===f||c(u)&&c(f)&&(v=f,d(S=u)===d(v)&&l(S,((e,t)=>v[t]===e)))||R(h,t,[u,f]),!r(I)){const e=y(w,t),n=i(s,t)?I(o,t):void 0;e!=n&&R(g,t,n)}},b=e=>{o((()=>{v(h,(([,e],t)=>R(L,t,e))),v(g,((e,t)=>R(w,t,e)))}),h,g,L,w,e),S(h),S(g)};E(L,p),e.hasTable(s)&&u(e.getRowIds(s),(e=>{f(L,e)||p(e)})),b(!0),j(t),M(t,0,e.addRowListener(s,null,((e,t,n)=>p(n))),e.addTableListener(s,(()=>b())))},O,e=>s(e,T),()=>E(D,O),M,j]})(e,x,(e=>{return r(e)?t:c(e)?(n=s,e.map(n)):s(e);var n}),j,m),Q=(t,n,s)=>{const r=F(t);v(s,((t,s)=>n(s,(n=>v(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},U={setIndexDefinition:(e,t,s,c,d,l=C)=>{const u=r(d)?void 0:([e],[t])=>d(e,t);return J(e,t,((t,s,d,I,h,L)=>{let S=0;const p=k(),b=k(),T=G(e);if(v(s,(([e,t],n)=>{const s=k(e),d=k(t);v(s,(e=>w(d,e)?w(s,e):0)),v(s,(e=>{z(p,e),o(y(T,e),(t=>{w(t,n),g(t)&&(R(T,e),S=1)}))})),v(d,(e=>{z(p,e),f(T,e)||(R(T,e,k()),S=1),z(y(T,e),n),r(c)||z(b,e)}))})),t(),g(h)||(L?E(T,(e=>z(b,e))):E(d,(e=>o(y(I,e),(e=>z(b,e))))),v(b,(e=>{const t=(t,n)=>l(y(h,t),y(h,n),e),n=[...y(T,e)];a(n,t)||(R(T,e,k(i(n,t))),z(p,e))}))),(S||L)&&!r(u)){const t=[...T];a(t,u)||(H(e,x(i(t,u))),S=1)}S&&m(n,[e]),v(p,(t=>m(M,[e,t])))}),A(s),o(c,A)),U},delIndexDefinition:e=>(K(e),U),getStore:W,getIndexIds:$,forEachIndex:e=>q(((t,n)=>e(t,(e=>Q(t,e,n))))),forEachSlice:(e,t)=>Q(e,t,G(e)),hasIndex:B,hasSlice:(e,t)=>f(G(e),t),getTableId:F,getSliceIds:e=>p(G(e)),getSliceRowIds:(e,t)=>L(y(G(e),t)),addIndexIdsListener:N,addSliceIdsListener:(e,t)=>j(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>j(n,M,[e,t]),delListener:e=>(O(e),U),destroy:P,getListenerStats:()=>({})};return h(U)})(e)),n.get(e))})();exports.createIndexes=M;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="",r=e(t),n=e(e),s=Math.max,i=Math.min,o=isFinite,c=e=>null==e,a=(e,t,r)=>c(e)?r?.():t(e),d=e=>Array.isArray(e),l=()=>{},u=(e,t)=>e.forEach(t),v=e=>M(e,((e,t)=>e+t),0),h=e=>e.length,M=(e,t,r)=>e.reduce(t,r),f=(e,...t)=>e.push(...t),g=Object.freeze,L=e=>e?.size??0,m=(e,t)=>e?.has(t)??!1,w=e=>c(e)||0==L(e),y=e=>[...e?.values()??[]],p=e=>e.clear(),b=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),x=e=>new Map(e),E=(e,t)=>e?.get(t),R=(e,t)=>b(e,((e,r)=>t(r,e))),S=(e,t,r)=>c(r)?(I(e,t),e):e?.set(t,r),T=(e,t,r)=>(m(e,t)||S(e,t,r()),E(e,t)),k=(e,t,r,n,s=0)=>a((r?T:E)(e,t[s],s>h(t)-2?r:x),(i=>{if(s>h(t)-2)return n?.(i)&&S(e,t[s]),i;const o=k(i,t,r,n,s+1);return w(i)&&S(e,t[s]),o})),z=x([["avg",[(e,t)=>v(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>s(...e),(e,t)=>s(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:s(t,e)]],["min",[e=>i(...e),(e,t)=>i(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:i(t,e)]],["sum",[e=>v(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),A=e=>new Set(d(e)||c(e)?e:[e]),D=(e,t)=>e?.add(t),N=/^\d+$/,j=(s=>{const i=new WeakMap;return s=>(i.has(s)||i.set(s,(s=>{const i=x(),[v,M,j]=(e=>{let r;const[n,s]=(()=>{const e=[];let r=0;return[n=>(n?e.shift():null)??t+r++,t=>{N.test(t)&&h(e)<1e3&&f(e,t)}]})(),i=x();return[(e,s,o,c=[],a=(()=>[]))=>{r??=P;const d=n(1);return S(i,d,[e,s,o,c,a]),D(k(s,o??[t],A),d),d},(e,n,...s)=>u(((e,r=[t])=>{const n=[],s=(e,t)=>t==h(r)?f(n,e):null===r[t]?b(e,(e=>s(e,t+1))):u([r[t],null],(r=>s(E(e,r),t+1)));return s(e,0),n})(e,n),(e=>b(e,(e=>E(i,e)[0](r,...n??[],...s))))),e=>a(E(i,e),(([,r,n])=>(k(r,n??[t],void 0,(t=>(I(t,e),w(t)?1:0))),S(i,e),s(e),n))),e=>a(E(i,e),(([e,,t=[],n,s])=>{const i=(...o)=>{const a=h(o);a==h(t)?e(r,...o,...s(o)):c(t[a])?u(n[a]?.(...o)??[],(e=>i(...o,e))):i(...o,t[a])};i()}))]})(),[C,F,O,W,$,q,B,,G,H,J,K]=((e,r,n,s,i)=>{const o=e.hasRow,l=x(),v=x(),M=x(),f=x(),g=x(),L=x(),k=(t,r,...n)=>{const s=T(L,t,A);return u(n,(t=>D(s,t)&&r&&e.callListener(t))),n},z=(t,...r)=>a(E(L,t),(n=>{u(0==h(r)?y(n):r,(t=>{e.delListener(t),I(n,t)})),w(n)&&S(L,t)})),N=(e,t)=>{S(l,e,t),m(v,e)||(S(v,e,r()),S(f,e,x()),S(g,e,x()),i(M))},j=e=>{S(l,e),S(v,e),S(f,e),S(g,e),z(e),i(M)};return[()=>e,()=>{return e=l,[...e?.keys()??[]];var e},e=>R(v,e),e=>m(v,e),e=>E(l,e),e=>E(v,e),(e,t)=>S(v,e,t),N,(r,n,s,i,a)=>{N(r,n);const l=x(),v=x(),M=E(f,r),L=E(g,r),w=r=>{const s=t=>e.getCell(n,r,t),u=E(M,r),f=o(n,r)?(g=i(s,r),isNaN(g)||c(g)||!0===g||!1===g||g===t?void 0:1*g):void 0;var g,m,w,y;if(u===f||d(u)&&d(f)&&(w=f,h(m=u)===h(w)&&(y=(e,t)=>w[t]===e,m.every(y)))||S(l,r,[u,f]),!c(a)){const e=E(L,r),t=o(n,r)?a(s,r):void 0;e!=t&&S(v,r,t)}},y=e=>{s((()=>{b(l,(([,e],t)=>S(M,t,e))),b(v,((e,t)=>S(L,t,e)))}),l,v,M,L,e),p(l),p(v)};R(M,w),e.hasTable(n)&&u(e.getRowIds(n),(e=>{m(M,e)||w(e)})),y(!0),z(r),k(r,0,e.addRowListener(n,null,((e,t,r)=>w(r))),e.addTableListener(n,(()=>y())))},j,e=>s(e,M),()=>R(L,j),k,z]})(s,l,0,v,M),P={setMetricDefinition:(t,s,a,d,l,u,v)=>{const h=e(a)==n?[a,l,u,v]:E(z,a)??E(z,"sum");return G(t,s,((e,r,n,s,a,d)=>{const l=q(t),u=L(s);d||=c(l),e();let v=((e,t,r,n,s,i=!1)=>{if(w(r))return;const[o,a,d,l]=s;return i||=c(e),b(n,(([r,n])=>{i||(e=c(r)?a?.(e,n,t++):c(n)?d?.(e,r,t--):l?.(e,n,r,t),i||=c(e))})),i?o(y(r),L(r)):e})(l,u,s,r,h,d);o(v)||(v=void 0),v!=l&&(B(t,v),M(i,[t],v,l))}),(1,e(f=d)==r?e=>e(f):f??(()=>1))),P;var f},delMetricDefinition:e=>(H(e),P),getStore:C,getMetricIds:F,forEachMetric:O,hasMetric:W,getTableId:$,getMetric:q,addMetricIdsListener:J,addMetricListener:(e,t)=>v(t,i,[e]),delListener:e=>(j(e),P),destroy:K,getListenerStats:()=>({})};return g(P)})(s)),i.get(s))})();exports.createMetrics=j;
1
+ "use strict";const e=e=>typeof e,t="",r=e(t),n=e(e),s=Math.max,i=Math.min,o=isFinite,c=e=>null==e,a=(e,t,r)=>c(e)?r?.():t(e),d=e=>Array.isArray(e),l=e=>e.length,u=()=>{},v=(e,t)=>e.forEach(t),h=e=>M(e,((e,t)=>e+t),0),M=(e,t,r)=>e.reduce(t,r),f=(e,...t)=>e.push(...t),g=Object.freeze,L=e=>e?.size??0,m=(e,t)=>e?.has(t)??!1,w=e=>c(e)||0==L(e),y=e=>[...e?.values()??[]],p=e=>e.clear(),b=(e,t)=>e?.forEach(t),I=(e,t)=>e?.delete(t),x=e=>new Map(e),E=(e,t)=>e?.get(t),R=(e,t)=>b(e,((e,r)=>t(r,e))),S=(e,t,r)=>c(r)?(I(e,t),e):e?.set(t,r),T=(e,t,r)=>(m(e,t)||S(e,t,r()),E(e,t)),k=(e,t,r,n,s=0)=>a((r?T:E)(e,t[s],s>l(t)-2?r:x),(i=>{if(s>l(t)-2)return n?.(i)&&S(e,t[s]),i;const o=k(i,t,r,n,s+1);return w(i)&&S(e,t[s]),o})),z=x([["avg",[(e,t)=>h(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>s(...e),(e,t)=>s(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:s(t,e)]],["min",[e=>i(...e),(e,t)=>i(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:i(t,e)]],["sum",[e=>h(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),A=e=>new Set(d(e)||c(e)?e:[e]),D=(e,t)=>e?.add(t),N=/^\d+$/,j=(s=>{const i=new WeakMap;return s=>(i.has(s)||i.set(s,(s=>{const i=x(),[h,M,j]=(e=>{let r;const[n,s]=(()=>{const e=[];let r=0;return[n=>(n?e.shift():null)??t+r++,t=>{N.test(t)&&l(e)<1e3&&f(e,t)}]})(),i=x();return[(e,s,o,c=[],a=(()=>[]))=>{r??=P;const d=n(1);return S(i,d,[e,s,o,c,a]),D(k(s,o??[t],A),d),d},(e,n,...s)=>v(((e,r=[t])=>{const n=[],s=(e,t)=>t==l(r)?f(n,e):null===r[t]?b(e,(e=>s(e,t+1))):v([r[t],null],(r=>s(E(e,r),t+1)));return s(e,0),n})(e,n),(e=>b(e,(e=>E(i,e)[0](r,...n??[],...s))))),e=>a(E(i,e),(([,r,n])=>(k(r,n??[t],void 0,(t=>(I(t,e),w(t)?1:0))),S(i,e),s(e),n))),e=>a(E(i,e),(([e,,t=[],n,s])=>{const i=(...o)=>{const a=l(o);a==l(t)?e(r,...o,...s(o)):c(t[a])?v(n[a]?.(...o)??[],(e=>i(...o,e))):i(...o,t[a])};i()}))]})(),[C,F,O,W,$,q,B,,G,H,J,K]=((e,r,n,s,i)=>{const o=e.hasRow,u=x(),h=x(),M=x(),f=x(),g=x(),L=x(),k=(t,r,...n)=>{const s=T(L,t,A);return v(n,(t=>D(s,t)&&r&&e.callListener(t))),n},z=(t,...r)=>a(E(L,t),(n=>{v(0==l(r)?y(n):r,(t=>{e.delListener(t),I(n,t)})),w(n)&&S(L,t)})),N=(e,t)=>{S(u,e,t),m(h,e)||(S(h,e,r()),S(f,e,x()),S(g,e,x()),i(M))},j=e=>{S(u,e),S(h,e),S(f,e),S(g,e),z(e),i(M)};return[()=>e,()=>{return e=u,[...e?.keys()??[]];var e},e=>R(h,e),e=>m(h,e),e=>E(u,e),e=>E(h,e),(e,t)=>S(h,e,t),N,(r,n,s,i,a)=>{N(r,n);const u=x(),h=x(),M=E(f,r),L=E(g,r),w=r=>{const s=t=>e.getCell(n,r,t),v=E(M,r),f=o(n,r)?(g=i(s,r),isNaN(g)||c(g)||!0===g||!1===g||g===t?void 0:1*g):void 0;var g,m,w,y;if(v===f||d(v)&&d(f)&&(w=f,l(m=v)===l(w)&&(y=(e,t)=>w[t]===e,m.every(y)))||S(u,r,[v,f]),!c(a)){const e=E(L,r),t=o(n,r)?a(s,r):void 0;e!=t&&S(h,r,t)}},y=e=>{s((()=>{b(u,(([,e],t)=>S(M,t,e))),b(h,((e,t)=>S(L,t,e)))}),u,h,M,L,e),p(u),p(h)};R(M,w),e.hasTable(n)&&v(e.getRowIds(n),(e=>{m(M,e)||w(e)})),y(!0),z(r),k(r,0,e.addRowListener(n,null,((e,t,r)=>w(r))),e.addTableListener(n,(()=>y())))},j,e=>s(e,M),()=>R(L,j),k,z]})(s,u,0,h,M),P={setMetricDefinition:(t,s,a,d,l,u,v)=>{const h=e(a)==n?[a,l,u,v]:E(z,a)??E(z,"sum");return G(t,s,((e,r,n,s,a,d)=>{const l=q(t),u=L(s);d||=c(l),e();let v=((e,t,r,n,s,i=!1)=>{if(w(r))return;const[o,a,d,l]=s;return i||=c(e),b(n,(([r,n])=>{i||(e=c(r)?a?.(e,n,t++):c(n)?d?.(e,r,t--):l?.(e,n,r,t),i||=c(e))})),i?o(y(r),L(r)):e})(l,u,s,r,h,d);o(v)||(v=void 0),v!=l&&(B(t,v),M(i,[t],v,l))}),(1,e(f=d)==r?e=>e(f):f??(()=>1))),P;var f},delMetricDefinition:e=>(H(e),P),getStore:C,getMetricIds:F,forEachMetric:O,hasMetric:W,getTableId:$,getMetric:q,addMetricIdsListener:J,addMetricListener:(e,t)=>h(t,i,[e]),delListener:e=>(j(e),P),destroy:K,getListenerStats:()=>({})};return g(P)})(s)),i.get(s))})();exports.createMetrics=j;
Binary file
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,a=(a,e,s)=>t(a)?s?.():e(a),e=Object,s=e.keys,n=e.freeze,o=(t,e)=>a(t,(t=>t[e])),c=(a,e)=>!t(o(a,e)),r=(t,a)=>(delete t[a],t),i=(t,a)=>((t,a)=>t.map(a))(e.entries(t),(([t,e])=>a(e,t))),d=t=>s(t).length,u=t=>(t=>t instanceof e&&t.constructor==e)(t)&&0==d(t),y=t=>new Map(t),h=(t,a)=>t?.get(a),v=(a,e,s)=>{return t(s)?(n=a,o=e,n?.delete(o),a):a?.set(e,s);var n,o},l=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||v(t,a,e()),h(t,a)},w=y(),g=y(),p=(t,a)=>[t[a].t,t[a].v],A=(a,e,s,n)=>{const o=t(e)?a:((t,a,e)=>(c(t,a)||(t[a]={}),t[a]))(a,e);let d;return i(s,((t,a)=>{n(o,a,t)&&(d=1)})),i(o,((t,a)=>{c(s,a)||(r(o,a),d=1)})),!t(e)&&u(o)&&r(a,e),d};exports.createAutomergePersister=(e,s,c="tinybase",y)=>(s.change((t=>t[c]={})),((e,s,o,c,r,i,d=[])=>{let y,p,A,f=0,L=0;l(w,d,(()=>0)),l(g,d,(()=>[]));const S=async t=>(2!=f&&(f=1,await C.schedule((async()=>{await t(),f=0}))),C),C={load:async(t,a)=>await S((async()=>{try{e.setContent(await s())}catch{e.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(C.stopAutoLoad(),await C.load(t,a),L=1,A=c((async(t,a)=>{if(a){const t=a();await S((async()=>e.setTransactionChanges(t)))}else await S((async()=>{try{e.setContent(t?.()??await s())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(L&&(r(A),A=void 0,L=0),C),save:async t=>(1!=f&&(f=2,await C.schedule((async()=>{try{await o(e.getContent,t)}catch(t){i?.(t)}f=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),y=e.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();u(e)&&u(s)||C.save((()=>[e,s]))})),C),stopAutoSave:()=>(a(y,e.delListener),C),schedule:async(...a)=>(((t,...a)=>{t.push(...a)})(h(g,d),...a),await(async()=>{if(!h(w,d)){for(v(w,d,1);!t((a=h(g,d),p=a.shift()));)try{await p()}catch(t){i?.(t)}v(w,d,0)}var a})(),C),getStore:()=>e,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return n(C)})(e,(async()=>2==d(s.doc[c])?p(s.doc,c):void 0),(async(e,n)=>s.change((s=>((e,s,n,c)=>{((t,a)=>{u(t[a])&&(t[a]={t:{},v:{}})})(e,s);const[d,y]=p(e,s),h=()=>{v=1};let v=1;if(a(c?.(),(([e,s])=>{v=0,i(e,((e,s)=>v?0:t(e)?r(d,s):a(d[s],(s=>i(e,((e,n)=>v?0:t(e)?r(s,n):a(o(s,n),(a=>i(e,((e,s)=>t(e)?r(a,s):a[s]=e))),h)))),h))),i(s,((a,e)=>v?0:t(a)?r(y,e):y[e]=a))})),v){const[t,a]=n();A(d,void 0,t,((t,a,e)=>A(d,a,e,((t,a,e)=>A(t,a,e,((t,a,e)=>{if(o(t,a)!==e)return t[a]=e,1})))))),A(y,void 0,a,((t,a,e)=>{o(y,a)!==e&&(y[a]=e)}))}})(s,c,e,n)))),(t=>{const a=({doc:a})=>t((()=>p(a,c)));return s.on("change",a),a}),(t=>{s.removeListener("change",t)}),y));
1
+ "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),n=a.keys,o=a.freeze,c=(t,a)=>e(t,(t=>t[a])),r=(e,a)=>!t(c(e,a)),i=(t,e)=>(delete t[e],t),d=(t,e)=>((t,e)=>t.map(e))(a.entries(t),(([t,a])=>e(a,t))),y=t=>n(t).length,u=n=>(n=>!t(n)&&e(s(n),(e=>e==a.prototype||t(s(e))),(()=>!0)))(n)&&0==y(n),v=t=>new Map(t),h=(t,e)=>t?.get(e),l=(e,a,s)=>{return t(s)?(n=e,o=a,n?.delete(o),e):e?.set(a,s);var n,o},w=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||l(t,e,a()),h(t,e)},g=v(),p=v(),A=(t,e)=>[t[e].t,t[e].v],f=(e,a,s,n)=>{const o=t(a)?e:((t,e,a)=>(r(t,e)||(t[e]={}),t[e]))(e,a);let c;return d(s,((t,e)=>{n(o,e,t)&&(c=1)})),d(o,((t,e)=>{r(s,e)||(i(o,e),c=1)})),!t(a)&&u(o)&&i(e,a),c};exports.createAutomergePersister=(a,s,n="tinybase",r)=>(s.change((t=>t[n]={})),((a,s,n,c,r,i,[d,y]=[],v=[])=>{let A,f,L,S=0,C=0;w(g,v,(()=>0)),w(p,v,(()=>[]));const m=async t=>(2!=S&&(S=1,await b.schedule((async()=>{await t(),S=0}))),b),b={load:async(t,e)=>await m((async()=>{try{a.setContent(await s())}catch{a.setContent([t,e])}})),startAutoLoad:async(t={},e={})=>(b.stopAutoLoad(),await b.load(t,e),C=1,L=c((async(t,e)=>{if(e){const t=e();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(t?.()??await s())}catch(t){i?.(t)}}))})),b),stopAutoLoad:()=>(C&&(r(L),L=void 0,C=0),b),save:async t=>(1!=S&&(S=2,await b.schedule((async()=>{try{await n(a.getContent,t)}catch(t){i?.(t)}S=0}))),b),startAutoSave:async()=>(await b.stopAutoSave().save(),A=a.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();u(a)&&u(s)||b.save((()=>[a,s]))})),b),stopAutoSave:()=>(e(A,a.delListener),A=void 0,b),schedule:async(...e)=>(((t,...e)=>{t.push(...e)})(h(p,v),...e),await(async()=>{if(!h(g,v)){for(l(g,v,1);!t((e=h(p,v),f=e.shift()));)try{await f()}catch(t){i?.(t)}l(g,v,0)}var e})(),b),getStore:()=>a,destroy:()=>b.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(b[d]=()=>y),o(b)})(a,(async()=>2==y(s.doc[n])?A(s.doc,n):void 0),(async(a,o)=>s.change((s=>((a,s,n,o)=>{((t,e)=>{u(t[e])&&(t[e]={t:{},v:{}})})(a,s);const[r,y]=A(a,s),v=()=>{h=1};let h=1;if(e(o?.(),(([a,s])=>{h=0,d(a,((a,s)=>h?0:t(a)?i(r,s):e(r[s],(s=>d(a,((a,n)=>h?0:t(a)?i(s,n):e(c(s,n),(e=>d(a,((a,s)=>t(a)?i(e,s):e[s]=a))),v)))),v))),d(s,((e,a)=>h?0:t(e)?i(y,a):y[a]=e))})),h){const[t,e]=n();f(r,void 0,t,((t,e,a)=>f(r,e,a,((t,e,a)=>f(t,e,a,((t,e,a)=>{if(c(t,e)!==a)return t[e]=a,1})))))),f(y,void 0,e,((t,e,a)=>{c(y,e)!==a&&(y[e]=a)}))}})(s,n,a,o)))),(t=>{const e=({doc:e})=>t((()=>A(e,n)));return s.on("change",e),e}),(t=>{s.removeListener("change",t)}),r,["getDocHandle",s]));
@@ -1 +1 @@
1
- "use strict";const t=(t,a)=>t instanceof a,a=t=>null==t,e=Object,s=e.keys,n=e.freeze,r=a=>(a=>t(a,e)&&a.constructor==e)(a)&&0==(t=>s(t).length)(a),o=JSON.parse,c=t=>new Map(t),i=(t,a)=>t?.get(a),y=(t,e,s)=>{return a(s)?(n=t,r=e,n?.delete(r),t):t?.set(e,s);var n,r},u=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||y(t,a,e()),i(t,a)},d=c(),l=c(),w="storage",v=globalThis.window,h=(s,c,h,g)=>((t,e,s,o,c,w,v=[])=>{let h,g,p,S=0,A=0;u(d,v,(()=>0)),u(l,v,(()=>[]));const L=async t=>(2!=S&&(S=1,await f.schedule((async()=>{await t(),S=0}))),f),f={load:async(a,s)=>await L((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(f.stopAutoLoad(),await f.load(a,s),A=1,p=o((async(a,s)=>{if(s){const a=s();await L((async()=>t.setTransactionChanges(a)))}else await L((async()=>{try{t.setContent(a?.()??await e())}catch(t){w?.(t)}}))})),f),stopAutoLoad:()=>(A&&(c(p),p=void 0,A=0),f),save:async a=>(1!=S&&(S=2,await f.schedule((async()=>{try{await s(t.getContent,a)}catch(t){w?.(t)}S=0}))),f),startAutoSave:async()=>(await f.stopAutoSave().save(),h=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();r(e)&&r(s)||f.save((()=>[e,s]))})),f),stopAutoSave:()=>{var e,s;return e=h,s=t.delListener,a(e)||s(e),f},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(i(l,v),...t),await(async()=>{if(!i(d,v)){for(y(d,v,1);!a((t=i(l,v),g=t.shift()));)try{await g()}catch(t){w?.(t)}y(d,v,0)}var t})(),f),getStore:()=>t,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return n(f)})(s,(async()=>o(h.getItem(c))),(async a=>{return h.setItem(c,(s=a(),JSON.stringify(s,((a,s)=>t(s,Map)?e.fromEntries([...s]):s))));var s}),(t=>{const a=a=>{a.storageArea===h&&a.key===c&&t((()=>o(a.newValue)))};return v.addEventListener(w,a),a}),(t=>v.removeEventListener(w,t)),g);exports.createLocalPersister=(t,a,e)=>h(t,a,localStorage,e),exports.createSessionPersister=(t,a,e)=>h(t,a,sessionStorage,e);
1
+ "use strict";const t=t=>null==t,e=(e,a,s)=>t(e)?s?.():a(e),a=Object,s=t=>a.getPrototypeOf(t),n=a.keys,o=a.freeze,r=o=>(n=>!t(n)&&e(s(n),(e=>e==a.prototype||t(s(e))),(()=>!0)))(o)&&0==(t=>n(t).length)(o),c=JSON.parse,i=t=>new Map(t),y=(t,e)=>t?.get(e),d=(e,a,s)=>{return t(s)?(n=e,o=a,n?.delete(o),e):e?.set(a,s);var n,o},u=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||d(t,e,a()),y(t,e)},l=i(),w=i(),g="storage",v=globalThis.window,p=(s,n,i,p)=>((a,s,n,c,i,g,[v,p]=[],h=[])=>{let S,f,A,L=0,m=0;u(l,h,(()=>0)),u(w,h,(()=>[]));const C=async t=>(2!=L&&(L=1,await O.schedule((async()=>{await t(),L=0}))),O),O={load:async(t,e)=>await C((async()=>{try{a.setContent(await s())}catch{a.setContent([t,e])}})),startAutoLoad:async(t={},e={})=>(O.stopAutoLoad(),await O.load(t,e),m=1,A=c((async(t,e)=>{if(e){const t=e();await C((async()=>a.setTransactionChanges(t)))}else await C((async()=>{try{a.setContent(t?.()??await s())}catch(t){g?.(t)}}))})),O),stopAutoLoad:()=>(m&&(i(A),A=void 0,m=0),O),save:async t=>(1!=L&&(L=2,await O.schedule((async()=>{try{await n(a.getContent,t)}catch(t){g?.(t)}L=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),S=a.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();r(a)&&r(s)||O.save((()=>[a,s]))})),O),stopAutoSave:()=>(e(S,a.delListener),S=void 0,O),schedule:async(...e)=>(((t,...e)=>{t.push(...e)})(y(w,h),...e),await(async()=>{if(!y(l,h)){for(d(l,h,1);!t((e=y(w,h),f=e.shift()));)try{await f()}catch(t){g?.(t)}d(l,h,0)}var e})(),O),getStore:()=>a,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return v&&(O[v]=()=>p),o(O)})(s,(async()=>c(i.getItem(n))),(async t=>{return i.setItem(n,(e=t(),JSON.stringify(e,((t,e)=>e instanceof Map?a.fromEntries([...e]):e))));var e}),(t=>{const e=e=>{e.storageArea===i&&e.key===n&&t((()=>c(e.newValue)))};return v.addEventListener(g,e),e}),(t=>v.removeEventListener(g,t)),p,["getStorageName",n]);exports.createLocalPersister=(t,e,a)=>p(t,e,localStorage,a),exports.createSessionPersister=(t,e,a)=>p(t,e,sessionStorage,a);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=(a,t)=>a instanceof t,w=a=>null==a,l=(a,t,e)=>w(a)?e?.():t(a),y=t=>a(t)==s,E=(a,t,e)=>a.slice(t,e),u=async a=>i.all(a),d=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),m=a=>a.length,v=a=>0==m(a),A=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),p=(a,t)=>a?.has(t)??!1,f=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),N=Object,O=N.keys,R=N.freeze,C=(a=[])=>N.fromEntries(a),S=(...a)=>N.assign({},...a),D=(a,t)=>T(N.entries(a),(([a,e])=>t(e,a))),I=a=>N.values(a),g=a=>m(O(a)),b=a=>(a=>r(a,N)&&a.constructor==N)(a)&&0==g(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>w(e)?(h(a,t),a):a?.set(t,e),B=(a,t,e)=>(p(a,t)||_(a,t,e()),$(a,t)),W=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!w(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||w(a)?a:[a]),j=(a,t)=>a?.add(t),x="_",U="_id",k=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>W(n,C(await u(T(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(T(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,W(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!w($($(n,a),t)))(t,e)?C(A(T(await a("SELECT*FROM"+k(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!w(a)&&!b(t)))):{},async(t,s,i,c,o,r=!1)=>{const l=H();D(i??{},(a=>T(O(a??{}),(a=>j(l,a)))));const y=f(l);if(!r&&o&&v(y)&&p(n,t))return await a("DROP TABLE"+k(t)),void _(n,t);if(v(y)||p(n,t)){const e=$(n,t),i=H(M(e));await u([...T(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${k(t)}ADD${k(s)}`),_(e,s,""))})),...!r&&c?T(f(i),(async n=>{n!=s&&(await a(`ALTER TABLE${k(t)}DROP${k(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${k(t)}(${k(s)} PRIMARY KEY ON CONFLICT REPLACE${d(T(y,(a=>e+k(a))))});`),_(n,t,F([[s,""],...T(y,(a=>[a,""]))]));if(r)w(i)?await a("DELETE FROM"+k(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{w(e)?await a("DELETE FROM"+k(t)+Y+k(s)+"=?",[n]):v(y)||await z(a,t,s,O(e),[n,...I(e)])})));else if(v(y))p(n,t)&&await a("DELETE FROM"+k(t)+"WHERE 1");else{const e=A(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{L(c,t,...T(e,(t=>a?.[t]))),L(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+k(t)+Y+k(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+k(t)+"("+k(s)+d(T(i,(a=>e+k(a))))+")VALUES"+E(n(`,(?${n(",?",m(i))})`,m(c)/(m(i)+1)),1)+"ON CONFLICT("+k(s)+")DO UPDATE SET"+d(T(i,(a=>k(a)+"=excluded."+k(a))),e),c),G=a=>d(T(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,c=[])=>{let o,r,y,E=0,u=0;B(V,c,(()=>0)),B(Q,c,(()=>[]));const d=async a=>(2!=E&&(E=1,await T.schedule((async()=>{await a(),E=0}))),T),T={load:async(e,s)=>await d((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),u=1,y=s((async(e,s)=>{if(s){const t=s();await d((async()=>a.setTransactionChanges(t)))}else await d((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(u&&(n(y),y=void 0,u=0),T),save:async t=>(1!=E&&(E=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}E=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),o=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(l(o,a.delListener),T),schedule:async(...a)=>(L($(Q,c),...a),await(async()=>{if(!$(V,c)){for(_(V,c,1);!w((a=$(Q,c),r=a.shift()));)try{await r()}catch(a){i?.(a)}_(V,c,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return R(T)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[w,l,y,E]=q(t,c,n);return X(a,(async()=>await E((async()=>(await w(),K((await l(i,U))[x]?.[Z]??"null"))))),(async a=>await E((async()=>{var t;await w(),await y(i,U,{[x]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>r(t,Map)?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,o)},ta=(a,t,e,s,n,[i,c,[o,r,l]],y,E)=>{const[d,T,m,v]=q(t,y,n),L=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),p=async(a,t)=>r?await m(l,U,{[x]:a},!0,!0,t):null;return X(a,(async()=>await v((async()=>{await d();const a=await(async()=>C(A(await u(P(i,(async([a,t],e)=>[a,await T(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await T(l,U))[x]:{})();return b(a)&&w(t)?void 0:[a,t]}))),(async(a,t)=>await v((async()=>{if(await d(),w(t)){const[t,e]=a();await L(t),await p(e)}else{const[a,e]=t();await L(a,!0),await p(e,!0)}}))),e,s,n,E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},wa=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=E(I(S(t,y(a)?{[e]:a}:a)),0,g(t));w(c[0])||s(i,c[0])||_(n,i,c)})),n},la="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,w,l)=>{let u,d;const[T,m,v,A]=(a=>{const e=(a=>S(oa,y(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=E(I(S(ra,c)),0,g(ra)),r=o[2],w=H(r);return[0,s,[wa(n,{[ia]:null,[na]:U},ia,(a=>j(w,a)&&a==r)),wa(i,{[ca]:null,[na]:U,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(w,t)&&t==r)),o],w]})(e);return(T?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(la+ya))[0][ya],e=(await s(la+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>A.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),w,v,f(A),l)};exports.createCrSqliteWasmPersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,w=(a,t,e)=>r(a)?e?.():t(a),l=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),v=a=>0==E(a),T=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),O=Object,h=a=>O.getPrototypeOf(a),N=O.keys,R=O.freeze,C=(a=[])=>O.fromEntries(a),S=(...a)=>O.assign({},...a),D=(a,t)=>p(O.entries(a),(([a,e])=>t(e,a))),g=a=>O.values(a),I=a=>E(N(a)),b=a=>(a=>!r(a)&&w(h(a),(a=>a==O.prototype||r(h(a))),(()=>!0)))(a)&&0==I(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),W=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||r(a)?a:[a]),j=(a,t)=>a?.add(t),x="_",U="_id",k=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>W(n,C(await u(p(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(p(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,W(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?C(T(p(await a("SELECT*FROM"+k(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!b(t)))):{},async(t,s,i,c,o,w=!1)=>{const l=H();D(i??{},(a=>p(N(a??{}),(a=>j(l,a)))));const y=L(l);if(!w&&o&&v(y)&&A(n,t))return await a("DROP TABLE"+k(t)),void _(n,t);if(v(y)||A(n,t)){const e=$(n,t),i=H(M(e));await u([...p(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${k(t)}ADD${k(s)}`),_(e,s,""))})),...!w&&c?p(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${k(t)}DROP${k(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${k(t)}(${k(s)} PRIMARY KEY ON CONFLICT REPLACE${d(p(y,(a=>e+k(a))))});`),_(n,t,F([[s,""],...p(y,(a=>[a,""]))]));if(w)r(i)?await a("DELETE FROM"+k(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+k(t)+Y+k(s)+"=?",[n]):v(y)||await z(a,t,s,N(e),[n,...g(e)])})));else if(v(y))A(n,t)&&await a("DELETE FROM"+k(t)+"WHERE 1");else{const e=T(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{m(c,t,...p(e,(t=>a?.[t]))),m(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+k(t)+Y+k(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+k(t)+"("+k(s)+d(p(i,(a=>e+k(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+k(s)+")DO UPDATE SET"+d(p(i,(a=>k(a)+"=excluded."+k(a))),e),c),G=a=>d(p(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],l=[])=>{let y,E,u,d=0,p=0;B(V,l,(()=>0)),B(Q,l,(()=>[]));const v=async a=>(2!=d&&(d=1,await T.schedule((async()=>{await a(),d=0}))),T),T={load:async(e,s)=>await v((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),p=1,u=s((async(e,s)=>{if(s){const t=s();await v((async()=>a.setTransactionChanges(t)))}else await v((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(p&&(n(u),u=void 0,p=0),T),save:async t=>(1!=d&&(d=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(w(y,a.delListener),y=void 0,T),schedule:async(...a)=>(m($(Q,l),...a),await(async()=>{if(!$(V,l)){for(_(V,l,1);!r((a=$(Q,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,l,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(T[c]=()=>o),R(T)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,w,l,y]=q(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await w(i,U))[x]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await l(i,U,{[x]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?O.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,w,l]],y,E)=>{const[d,p,v,m]=q(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await v(e,s,o,n,i,t)}))),L=async(a,t)=>w?await v(l,U,{[x]:a},!0,!0,t):null;return X(a,(async()=>await m((async()=>{await d();const a=await(async()=>C(T(await u(P(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await p(l,U))[x]:{})();return b(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},wa=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=y(g(S(t,l(a)?{[e]:a}:a)),0,I(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},la="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,w,E)=>{let u,d;const[p,v,T,m]=(a=>{const e=(a=>S(oa,l(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(S(ra,c)),0,I(ra)),r=o[2],w=H(r);return[0,s,[wa(n,{[ia]:null,[na]:U},ia,(a=>j(w,a)&&a==r)),wa(i,{[ca]:null,[na]:U,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(w,t)&&t==r)),o],w]})(e);return(p?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(la+ya))[0][ya],e=(await s(la+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*v),n((t=>m.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),w,T,L(m),E)};exports.createCrSqliteWasmPersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=(a,t)=>a instanceof t,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,E=(a,t,e)=>a.slice(t,e),u=async a=>i.all(a),d=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),v=a=>a.length,T=a=>0==v(a),A=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),p=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),f=Object,R=f.keys,O=f.freeze,C=(a=[])=>f.fromEntries(a),S=(...a)=>f.assign({},...a),D=(a,t)=>m(f.entries(a),(([a,e])=>t(e,a))),g=a=>f.values(a),I=a=>v(R(a)),b=a=>(a=>r(a,f)&&a.constructor==f)(a)&&0==I(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>l(e)?(N(a,t),a):a?.set(t,e),B=(a,t,e)=>(p(a,t)||_(a,t,e()),$(a,t)),x=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!l(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||l(a)?a:[a]),W=(a,t)=>a?.add(t),j="_",k="_id",q=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",Y=(a,t,s)=>{const n=F();return[async()=>x(n,C(await u(m(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(m(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,x(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!l($($(n,a),t)))(t,e)?C(A(m(await a("SELECT*FROM"+q(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!b(t)))):{},async(t,s,i,c,o,r=!1)=>{const w=H();D(i??{},(a=>m(R(a??{}),(a=>W(w,a)))));const y=h(w);if(!r&&o&&T(y)&&p(n,t))return await a("DROP TABLE"+q(t)),void _(n,t);if(T(y)||p(n,t)){const e=$(n,t),i=H(M(e));await u([...m(y,(async s=>{N(i,s)||(await a(`ALTER TABLE${q(t)}ADD${q(s)}`),_(e,s,""))})),...!r&&c?m(h(i),(async n=>{n!=s&&(await a(`ALTER TABLE${q(t)}DROP${q(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${q(t)}(${q(s)} PRIMARY KEY ON CONFLICT REPLACE${d(m(y,(a=>e+q(a))))});`),_(n,t,F([[s,""],...m(y,(a=>[a,""]))]));if(r)l(i)?await a("DELETE FROM"+q(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{l(e)?await a("DELETE FROM"+q(t)+U+q(s)+"=?",[n]):T(y)||await z(a,t,s,R(e),[n,...g(e)])})));else if(T(y))p(n,t)&&await a("DELETE FROM"+q(t)+"WHERE 1");else{const e=A(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{L(c,t,...m(e,(t=>a?.[t]))),L(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+q(t)+U+q(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+q(t)+"("+q(s)+d(m(i,(a=>e+q(a))))+")VALUES"+E(n(`,(?${n(",?",v(i))})`,v(c)/(v(i)+1)),1)+"ON CONFLICT("+q(s)+")DO UPDATE SET"+d(m(i,(a=>q(a)+"=excluded."+q(a))),e),c),G=a=>d(m(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,c=[])=>{let o,r,y,E=0,u=0;B(V,c,(()=>0)),B(Q,c,(()=>[]));const d=async a=>(2!=E&&(E=1,await m.schedule((async()=>{await a(),E=0}))),m),m={load:async(e,s)=>await d((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),u=1,y=s((async(e,s)=>{if(s){const t=s();await d((async()=>a.setTransactionChanges(t)))}else await d((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(u&&(n(y),y=void 0,u=0),m),save:async t=>(1!=E&&(E=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}E=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),o=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(w(o,a.delListener),m),schedule:async(...a)=>(L($(Q,c),...a),await(async()=>{if(!$(V,c)){for(_(V,c,1);!l((a=$(Q,c),r=a.shift()));)try{await r()}catch(a){i?.(a)}_(V,c,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return O(m)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[l,w,y,E]=Y(t,c,n);return X(a,(async()=>await E((async()=>(await l(),K((await w(i,k))[j]?.[Z]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,k,{[j]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>r(t,Map)?f.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,o)},ta=(a,t,e,s,n,[i,c,[o,r,w]],y,E)=>{const[d,m,v,T]=Y(t,y,n),L=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await v(e,s,o,n,i,t)}))),p=async(a,t)=>r?await v(w,k,{[j]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>C(A(await u(P(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await m(w,k))[j]:{})();return b(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),l(t)){const[t,e]=a();await L(t),await p(e)}else{const[a,e]=t();await L(a,!0),await p(e,!0)}}))),e,s,n,E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=E(g(S(t,y(a)?{[e]:a}:a)),0,I(t));l(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,w)=>{let u,d;const[m,v,T,A]=(a=>{const e=(a=>S(oa,y(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=E(g(S(ra,c)),0,I(ra)),r=o[2],l=H(r);return[0,s,[la(n,{[ia]:null,[na]:k},ia,(a=>W(l,a)&&a==r)),la(i,{[ca]:null,[na]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(m?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*v),n((t=>A.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,T,h(A),w)};exports.createExpoSqlitePersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),m=a=>0==E(a),p=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,N=a=>h.getPrototypeOf(a),O=h.keys,R=h.freeze,C=(a=[])=>h.fromEntries(a),D=(...a)=>h.assign({},...a),S=(a,t)=>v(h.entries(a),(([a,e])=>t(e,a))),g=a=>h.values(a),b=a=>E(O(a)),I=a=>(a=>!r(a)&&l(N(a),(a=>a==h.prototype||r(N(a))),(()=>!0)))(a)&&0==b(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),x=(a,t,e,s=_)=>(S(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),j="_",k="_id",q=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",Y=(a,t,s)=>{const n=F();return[async()=>x(n,C(await u(v(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(v(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,x(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?C(p(v(await a("SELECT*FROM"+q(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!I(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=H();S(i??{},(a=>v(O(a??{}),(a=>W(w,a)))));const y=L(w);if(!l&&o&&m(y)&&A(n,t))return await a("DROP TABLE"+q(t)),void _(n,t);if(m(y)||A(n,t)){const e=$(n,t),i=H(M(e));await u([...v(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${q(t)}ADD${q(s)}`),_(e,s,""))})),...!l&&c?v(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${q(t)}DROP${q(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${q(t)}(${q(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+q(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+q(t)+"WHERE 1"):await u(S(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+q(t)+U+q(s)+"=?",[n]):m(y)||await z(a,t,s,O(e),[n,...g(e)])})));else if(m(y))A(n,t)&&await a("DELETE FROM"+q(t)+"WHERE 1");else{const e=p(M($(n,t)),(a=>a!=s)),c=[],o=[];S(i??{},((a,t)=>{T(c,t,...v(e,(t=>a?.[t]))),T(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+q(t)+U+q(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+q(t)+"("+q(s)+d(v(i,(a=>e+q(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+q(s)+")DO UPDATE SET"+d(v(i,(a=>q(a)+"=excluded."+q(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;B(V,w,(()=>0)),B(Q,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await p.schedule((async()=>{await a(),d=0}))),p),p={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),p),save:async t=>(1!=d&&(d=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();I(e)&&I(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(l(y,a.delListener),y=void 0,p),schedule:async(...a)=>(T($(Q,w),...a),await(async()=>{if(!$(V,w)){for(_(V,w,1);!r((a=$(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,w,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(p[c]=()=>o),R(p)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=Y(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await l(i,k))[j]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,k,{[j]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,v,m,T]=Y(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),L=async(a,t)=>l?await m(w,k,{[j]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>C(p(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!I(a[1])))))(),t=await(async()=>o?(await v(w,k))[j]:{})();return I(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return S(a,((a,i)=>{const c=y(g(D(t,w(a)?{[e]:a}:a)),0,b(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[v,m,p,T]=(a=>{const e=(a=>D(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(D(ra,c)),0,b(ra)),r=o[2],l=H(r);return[0,s,[la(n,{[ia]:null,[na]:k},ia,(a=>W(l,a)&&a==r)),la(i,{[ca]:null,[na]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>T.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,p,L(T),E)};exports.createExpoSqlitePersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),s,n,t);
@@ -1 +1 @@
1
- "use strict";var t=require("fs"),a=require("fs/promises");const e="utf8",s=(t,a)=>t instanceof a,n=t=>null==t,r=Object,o=r.keys,c=r.freeze,i=t=>(t=>s(t,r)&&t.constructor==r)(t)&&0==(t=>o(t).length)(t),u=JSON.parse,y=t=>new Map(t),w=(t,a)=>t?.get(a),d=(t,a,e)=>{return n(e)?(s=t,r=a,s?.delete(r),t):t?.set(a,e);var s,r},l=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||d(t,a,e()),w(t,a)},h=y(),v=y();exports.createFilePersister=(o,y,p)=>((t,a,e,s,r,o,u=[])=>{let y,p,f,A=0,S=0;l(h,u,(()=>0)),l(v,u,(()=>[]));const g=async t=>(2!=A&&(A=1,await L.schedule((async()=>{await t(),A=0}))),L),L={load:async(e,s)=>await g((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(L.stopAutoLoad(),await L.load(e,n),S=1,f=s((async(e,s)=>{if(s){const a=s();await g((async()=>t.setTransactionChanges(a)))}else await g((async()=>{try{t.setContent(e?.()??await a())}catch(t){o?.(t)}}))})),L),stopAutoLoad:()=>(S&&(r(f),f=void 0,S=0),L),save:async a=>(1!=A&&(A=2,await L.schedule((async()=>{try{await e(t.getContent,a)}catch(t){o?.(t)}A=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),y=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();i(e)&&i(s)||L.save((()=>[e,s]))})),L),stopAutoSave:()=>{var a,e;return a=y,e=t.delListener,n(a)||e(a),L},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(w(v,u),...t),await(async()=>{if(!w(h,u)){for(d(h,u,1);!n((t=w(v,u),p=t.shift()));)try{await p()}catch(t){o?.(t)}d(h,u,0)}var t})(),L),getStore:()=>t,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c(L)})(o,(async()=>u(await a.readFile(y,e))),(async t=>{return await a.writeFile(y,(n=t(),JSON.stringify(n,((t,a)=>s(a,Map)?r.fromEntries([...a]):a))),e);var n}),(a=>t.watch(y,(()=>a()))),(t=>t?.close()),p);
1
+ "use strict";var t=require("fs"),a=require("fs/promises");const e="utf8",s=t=>null==t,n=(t,a,e)=>s(t)?e?.():a(t),r=Object,o=t=>r.getPrototypeOf(t),i=r.keys,c=r.freeze,y=t=>(t=>!s(t)&&n(o(t),(t=>t==r.prototype||s(o(t))),(()=>!0)))(t)&&0==(t=>i(t).length)(t),u=JSON.parse,d=t=>new Map(t),w=(t,a)=>t?.get(a),l=(t,a,e)=>{return s(e)?(n=t,r=a,n?.delete(r),t):t?.set(a,e);var n,r},h=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||l(t,a,e()),w(t,a)},p=d(),v=d();exports.createFilePersister=(o,i,d)=>((t,a,e,r,o,i,[u,d]=[],f=[])=>{let g,A,S,L=0,C=0;h(p,f,(()=>0)),h(v,f,(()=>[]));const F=async t=>(2!=L&&(L=1,await O.schedule((async()=>{await t(),L=0}))),O),O={load:async(e,s)=>await F((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(O.stopAutoLoad(),await O.load(e,s),C=1,S=r((async(e,s)=>{if(s){const a=s();await F((async()=>t.setTransactionChanges(a)))}else await F((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),O),stopAutoLoad:()=>(C&&(o(S),S=void 0,C=0),O),save:async a=>(1!=L&&(L=2,await O.schedule((async()=>{try{await e(t.getContent,a)}catch(t){i?.(t)}L=0}))),O),startAutoSave:async()=>(await O.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();y(e)&&y(s)||O.save((()=>[e,s]))})),O),stopAutoSave:()=>(n(g,t.delListener),g=void 0,O),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(w(v,f),...t),await(async()=>{if(!w(p,f)){for(l(p,f,1);!s((t=w(v,f),A=t.shift()));)try{await A()}catch(t){i?.(t)}l(p,f,0)}var t})(),O),getStore:()=>t,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u&&(O[u]=()=>d),c(O)})(o,(async()=>u(await a.readFile(i,e))),(async t=>{return await a.writeFile(i,(s=t(),JSON.stringify(s,((t,a)=>a instanceof Map?r.fromEntries([...a]):a))),e);var s}),(a=>t.watch(i,(()=>a()))),(t=>t?.close()),d,["getFilePath",i]);
@@ -1 +1 @@
1
- "use strict";const t=(t,a)=>t.map(a),a=(t,...a)=>t.push(...a),e=Promise,s=setInterval,n=clearInterval,o=t=>null==t,c=(t,a,e)=>o(t)?e?.():a(t),r=t=>new e(t),i=async t=>e.all(t),y=Object,d=y.keys,l=y.freeze,u=t=>(t=>t instanceof y&&t.constructor==y)(t)&&0==(t=>d(t).length)(t),w=t=>new Map(t),h=(t,a)=>t?.get(a),v=(t,a,e)=>{return o(e)?(s=t,n=a,s?.delete(n),t):t?.set(a,e);var s,n},p=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||v(t,a,e()),h(t,a)},g=w(),A=w(),S=globalThis.window,b=["t","v"],f={keyPath:"k"},L=async(e,s)=>{const n=((a,s)=>t(y.entries(a),(([t,a])=>j(e,"put",{k:t,v:a}))))(s);t(await j(e,"getAllKeys"),(t=>((t,a)=>!o(((t,a)=>c(t,(t=>t[a])))(t,a)))(s,t)?0:a(n,j(e,"delete",t)))),await i(n)},j=async(t,a,e)=>r(((s,n)=>{const o=t[a](e);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${a} error`)}));exports.createIndexedDbPersister=(e,d,w=1,k)=>{const x=async(a,e=[],s=0)=>r(((n,o)=>{const c=S.indexedDB.open(d,s?2:void 0);c.onupgradeneeded=()=>s&&t(b,(t=>{try{c.result.createObjectStore(t,f)}catch{}})),c.onsuccess=async()=>{try{const s=c.result.transaction(b,"readwrite"),o=await i(t(b,(async(t,n)=>await a(s.objectStore(t),e[n]))));c.result.close(),n(o)}catch(t){o(t)}},c.onerror=()=>o("indexedDB.open error")}));return((t,e,s,n,r,i,y=[])=>{let d,w,S,b=0,f=0;p(g,y,(()=>0)),p(A,y,(()=>[]));const L=async t=>(2!=b&&(b=1,await j.schedule((async()=>{await t(),b=0}))),j),j={load:async(a,s)=>await L((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(j.stopAutoLoad(),await j.load(a,s),f=1,S=n((async(a,s)=>{if(s){const a=s();await L((async()=>t.setTransactionChanges(a)))}else await L((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),j),stopAutoLoad:()=>(f&&(r(S),S=void 0,f=0),j),save:async a=>(1!=b&&(b=2,await j.schedule((async()=>{try{await s(t.getContent,a)}catch(t){i?.(t)}b=0}))),j),startAutoSave:async()=>(await j.stopAutoSave().save(),d=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();u(e)&&u(s)||j.save((()=>[e,s]))})),j),stopAutoSave:()=>(c(d,t.delListener),j),schedule:async(...t)=>(a(h(A,y),...t),await(async()=>{if(!h(g,y)){for(v(g,y,1);!o((t=h(A,y),w=t.shift()));)try{await w()}catch(t){i?.(t)}v(g,y,0)}var t})(),j),getStore:()=>t,destroy:()=>j.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l(j)})(e,(async()=>await x((async a=>((t=[])=>y.fromEntries(t))(t(await j(a,"getAll"),(({k:t,v:a})=>[t,a])))))),(async t=>await x((async(t,a)=>await L(t,a)),t(),1)),(t=>s(t,1e3*w)),(t=>n(t)),k)},exports.objectStoreMatch=L;
1
+ "use strict";const t=Promise,e=setInterval,a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=e=>new t(e),r=async e=>t.all(e),c=(t,e)=>t.map(e),i=(t,...e)=>t.push(...e),y=Object,d=t=>y.getPrototypeOf(t),l=y.keys,u=y.freeze,w=t=>(t=>!s(t)&&n(d(t),(t=>t==y.prototype||s(d(t))),(()=>!0)))(t)&&0==(t=>l(t).length)(t),h=t=>new Map(t),p=(t,e)=>t?.get(e),v=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},g=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||v(t,e,a()),p(t,e)},A=h(),S=h(),b=globalThis.window,f=["t","v"],L={keyPath:"k"},j=async(t,e)=>{const a=((e,a)=>c(y.entries(e),(([e,a])=>k(t,"put",{k:e,v:a}))))(e);c(await k(t,"getAllKeys"),(o=>((t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)))(e,o)?0:i(a,k(t,"delete",o)))),await r(a)},k=async(t,e,a)=>o(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)}));exports.createIndexedDbPersister=(t,d,l=1,h)=>{const x=async(t,e=[],a=0)=>o(((s,n)=>{const o=b.indexedDB.open(d,a?2:void 0);o.onupgradeneeded=()=>a&&c(f,(t=>{try{o.result.createObjectStore(t,L)}catch{}})),o.onsuccess=async()=>{try{const a=o.result.transaction(f,"readwrite"),n=await r(c(f,(async(s,n)=>await t(a.objectStore(s),e[n]))));o.result.close(),s(n)}catch(t){n(t)}},o.onerror=()=>n("indexedDB.open error")}));return((t,e,a,o,r,c,[y,d]=[],l=[])=>{let h,b,f,L=0,j=0;g(A,l,(()=>0)),g(S,l,(()=>[]));const k=async t=>(2!=L&&(L=1,await x.schedule((async()=>{await t(),L=0}))),x),x={load:async(a,s)=>await k((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(x.stopAutoLoad(),await x.load(a,s),j=1,f=o((async(a,s)=>{if(s){const e=s();await k((async()=>t.setTransactionChanges(e)))}else await k((async()=>{try{t.setContent(a?.()??await e())}catch(t){c?.(t)}}))})),x),stopAutoLoad:()=>(j&&(r(f),f=void 0,j=0),x),save:async e=>(1!=L&&(L=2,await x.schedule((async()=>{try{await a(t.getContent,e)}catch(t){c?.(t)}L=0}))),x),startAutoSave:async()=>(await x.stopAutoSave().save(),h=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();w(a)&&w(s)||x.save((()=>[a,s]))})),x),stopAutoSave:()=>(n(h,t.delListener),h=void 0,x),schedule:async(...t)=>(i(p(S,l),...t),await(async()=>{if(!p(A,l)){for(v(A,l,1);!s((t=p(S,l),b=t.shift()));)try{await b()}catch(t){c?.(t)}v(A,l,0)}var t})(),x),getStore:()=>t,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return y&&(x[y]=()=>d),u(x)})(t,(async()=>await x((async t=>((t=[])=>y.fromEntries(t))(c(await k(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await x((async(t,e)=>await j(t,e)),t(),1)),(t=>e(t,1e3*l)),(t=>a(t)),h,["getDbName",d])},exports.objectStoreMatch=j;
@@ -1 +1 @@
1
- "use strict";const t=t=>typeof t,a=t(""),e=(t,a)=>t instanceof a,s=t=>null==t,n=Object,o=n.keys,r=n.freeze,c=t=>(t=>e(t,n)&&t.constructor==n)(t)&&0==(t=>o(t).length)(t),i=t=>JSON.stringify(t,((t,a)=>e(a,Map)?n.fromEntries([...a]):a)),y=JSON.parse,d=t=>new Map(t),u=(t,a)=>t?.get(a),h=(t,a,e)=>{return s(e)?(n=t,o=a,n?.delete(o),t):t?.set(a,e);var n,o},v=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||h(t,a,e()),u(t,a)},w=d(),p=d(),l="message";exports.createPartyKitPersister=(e,n,o="https",d)=>{const{host:f,room:S}=n.partySocketOptions,g=o+"://"+f+"/parties/"+(n.name??"main")+"/"+S+"/store",m=async t=>await(await fetch(g,{...t?{method:"PUT",body:i(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,a,e,n,o,i,y=[])=>{let d,l,f,S=0,g=0;v(w,y,(()=>0)),v(p,y,(()=>[]));const m=async t=>(2!=S&&(S=1,await A.schedule((async()=>{await t(),S=0}))),A),A={load:async(e,s)=>await m((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(A.stopAutoLoad(),await A.load(e,s),g=1,f=n((async(e,s)=>{if(s){const a=s();await m((async()=>t.setTransactionChanges(a)))}else await m((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),A),stopAutoLoad:()=>(g&&(o(f),f=void 0,g=0),A),save:async a=>(1!=S&&(S=2,await A.schedule((async()=>{try{await e(t.getContent,a)}catch(t){i?.(t)}S=0}))),A),startAutoSave:async()=>(await A.stopAutoSave().save(),d=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||A.save((()=>[e,s]))})),A),stopAutoSave:()=>{var a,e;return a=d,e=t.delListener,s(a)||e(a),A},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(u(p,y),...t),await(async()=>{if(!u(w,y)){for(h(w,y,1);!s((t=u(p,y),l=t.shift()));)try{await l()}catch(t){i?.(t)}h(w,y,0)}var t})(),A),getStore:()=>t,destroy:()=>A.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(A)})(e,(async()=>await m()),(async(e,s)=>{var o;s?n.send(("s",o=s(),"s"+(t(o)==a?o:i(o)))):await m(e())}),(t=>{const a=a=>{const[e,s]=[(c=a.data)[0],y((n=c,o=1,n.slice(o,r)))];var n,o,r,c;"s"==e&&t(void 0,(()=>s))};return n.addEventListener(l,a),a}),(t=>{n.removeEventListener(l,t)}),d)};
1
+ "use strict";const t=t=>typeof t,a="",e=t(a),s=t=>null==t,o=(t,a,e)=>s(t)?e?.():a(t),n=a=>t(a)==e,r=t=>t.length,c=Object,i=t=>c.getPrototypeOf(t),y=c.keys,d=c.freeze,h=t=>(t=>!s(t)&&o(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),u=t=>JSON.stringify(t,((t,a)=>a instanceof Map?c.fromEntries([...a]):a)),v=JSON.parse,p="/store",w=t=>new Map(t),l=(t,a)=>t?.get(a),f=(t,a,e)=>{return s(e)?(o=t,n=a,o?.delete(n),t):t?.set(a,e);var o,n},g=(t,a,e)=>{var s,o;return s=t,o=a,s?.has(o)||f(t,a,e()),l(t,a)},S=w(),m=w(),A="message";exports.createPartyKitPersister=(t,e,c,i)=>{const{host:y,room:w}=e.partySocketOptions,{storeProtocol:L="https",storePath:P=p,messagePrefix:C=a}={...n(c)?{storeProtocol:c}:c},O=L+"://"+y+"/parties/"+e.name+"/"+w+P,E=async t=>await(await fetch(O,{...t?{method:"PUT",body:u(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,a,e,n,r,c,[i,y]=[],u=[])=>{let v,p,w,A=0,L=0;g(S,u,(()=>0)),g(m,u,(()=>[]));const P=async t=>(2!=A&&(A=1,await C.schedule((async()=>{await t(),A=0}))),C),C={load:async(e,s)=>await P((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(C.stopAutoLoad(),await C.load(e,s),L=1,w=n((async(e,s)=>{if(s){const a=s();await P((async()=>t.setTransactionChanges(a)))}else await P((async()=>{try{t.setContent(e?.()??await a())}catch(t){c?.(t)}}))})),C),stopAutoLoad:()=>(L&&(r(w),w=void 0,L=0),C),save:async a=>(1!=A&&(A=2,await C.schedule((async()=>{try{await e(t.getContent,a)}catch(t){c?.(t)}A=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),v=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();h(e)&&h(s)||C.save((()=>[e,s]))})),C),stopAutoSave:()=>(o(v,t.delListener),v=void 0,C),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(l(m,u),...t),await(async()=>{if(!l(S,u)){for(f(S,u,1);!s((t=l(m,u),p=t.shift()));)try{await p()}catch(t){c?.(t)}f(S,u,0)}var t})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(C[i]=()=>y),d(C)})(t,(async()=>await E()),(async(t,a)=>{var s,o;a?e.send((s=C,o=a(),s+"s"+(n(o)?o:u(o)))):await E(t())}),(t=>{const a=a=>o(((t,a,e)=>{const s=r(t);return((t,a)=>t.startsWith(a))(a,t)?[a[s],v((o=a,n=s+1,o.slice(n,void 0)))]:void 0;var o,n})(C,a.data),(([a,e])=>{"s"==a&&t(void 0,(()=>e))}));return e.addEventListener(A,a),a}),(t=>{e.removeEventListener(A,t)}),i,["getConnection",e])};
@@ -1 +1 @@
1
- "use strict";const t=t=>typeof t,s=t(""),a="t",e=Promise,r=t=>null==t,i=(t,s,a)=>t.slice(s,a),n=(t,s)=>t.map(s),o=(t,...s)=>t.push(...s),c=Object,l=(t=[])=>c.fromEntries(t),y=(t,s)=>n(c.entries(t),(([t,a])=>s(a,t))),h=(t,s,a)=>(((t,s)=>!r(((t,s)=>{return e=t=>t[s],r(a=t)?void 0:e(a);var a,e})(t,s)))(t,s)||(t[s]=a()),t[s]),u=t=>JSON.stringify(t,((t,s)=>s instanceof Map?c.fromEntries([...s]):s)),p=JSON.parse,w=(t,s)=>[t[0],s?p(i(t,1)):i(t,1)],d=(t,s)=>((t,s)=>t?.forEach(s))(t,((t,a)=>s(a,t))),f="hasStore",g=l(n(["Origin","Methods","Headers"],(t=>["Access-Control-Allow-"+t,"*"]))),v=async t=>await t.get(f),m=async(t,s)=>{const i=[t.put(f,1)],n=[];y(s[0],((s,e)=>r(s)?((t,...s)=>t.unshift(...s))(n,O(a,e)):y(s,((s,c)=>r(s)?o(n,O(a,e,c)):y(s,((s,r)=>S(i,t,O(a,e,c,r),s))))))),y(s[1],((s,a)=>S(i,t,"v"+a,s))),0!=n.length&&d(await t.list(),(s=>n.every((a=>!s.startsWith(a)||S(i,t,s)&&!1)))),await(async t=>e.all(t))(i)},O=(t,...s)=>t+i(u(s),1,-1),S=(t,s,a,e)=>o(t,r(e)?s.delete(a):s.put(a,e)),E=(t,s=null)=>new Response(s,{status:t,headers:g});exports.TinyBasePartyKitServer=class{constructor(t){this.party=t}async onRequest(t){const s=this.party.storage;if(t.url.endsWith("/store")){const e=await v(s),r=await t.text();return"PUT"==t.method?e?E(205):(await m(this.party.storage,p(r)),E(201)):E(200,e?u(await(async t=>{const s={},e={};return d(await t.list(),((t,r)=>{const[i,n]=w(t);if(i==a){const[t,a,e]=p("["+n+"]");h(h(s,t,l),a,l)[e]=r}else"v"==i&&(e[n]=r)})),[s,e]})(s)):"")}return E(404)}async onMessage(a,e){const r=this.party.storage,[i,n]=w(a,1);"s"==i&&await v(r)&&(await m(r,n),this.party.broadcast(((a,e)=>"s"+(t(e)==s?e:u(e)))(0,n),[e.id]))}};
1
+ "use strict";const t=t=>typeof t,a="",e=t(a),s="t",n=(t,a)=>t.startsWith(a),r=Promise,i=t=>null==t,c=(t,a,e)=>i(t)?e?.():a(t),o=(t,a,e)=>t.slice(a,e),l=t=>t.length,h=async t=>r.all(t),u=(t,a)=>t.map(a),w=(t,...a)=>t.push(...a),g=Object,y=(t=[])=>g.fromEntries(t),f=(t,a)=>u(g.entries(t),(([t,e])=>a(e,t))),p=(t,a,e)=>(((t,a)=>!i(((t,a)=>c(t,(t=>t[a])))(t,a)))(t,a)||(t[a]=e()),t[a]),S=t=>JSON.stringify(t,((t,a)=>a instanceof Map?g.fromEntries([...a]):a)),d=JSON.parse,D=(a,s,n)=>a+s+(t(n)==e?n:S(n)),P=(t,a,e)=>{const s=l(t);return n(a,t)?[a[s],(e?d:String)(o(a,s+1))]:void 0},m=(t,a)=>((t,a)=>t?.forEach(a))(t,((t,e)=>a(e,t))),R="hasStore",b=y(u(["Origin","Methods","Headers"],(t=>["Access-Control-Allow-"+t,"*"]))),x=async t=>await t.party.storage.get((t.config.storagePrefix??a)+R),T=async(t,e,r,c)=>{const o=t.party.storage,u=t.config.storagePrefix??a,g={[u+R]:1},y=[],p=[];await h(f(e[0],(async(a,e)=>i(a)?!r&&t.canDelTable(e,c)&&((t,...a)=>t.unshift(...a))(p,v(u,s,e)):t.canSetTable(e,r,c)&&await h(f(a,(async(a,n)=>i(a)?!r&&t.canDelRow(e,n,c)&&w(p,v(u,s,e,n)):t.canSetRow(e,n,r,c)&&await h(f(a,(async(a,l)=>{const h=[e,n,l],f=v(u,s,...h);i(a)?!r&&t.canDelCell(...h,c)&&w(y,f):t.canSetCell(...h,a,r,c,await o.get(f))&&(g[f]=a)}))))))))),await h(f(e[1],(async(a,e)=>{const s=u+"v"+e;i(a)?!r&&t.canDelValue(e,c)&&w(y,s):t.canSetValue(e,a,r,c,await o.get(s))&&(g[s]=a)}))),0!=l(p)&&m(await o.list(),(t=>p.every((a=>!n(t,a)||w(y,t)&&0)))),await o.delete(y),await o.put(g)},v=(t,a,...e)=>D(t,a,o(S(e),1,-1)),C=async(t,a,e=null)=>new Response(e,{status:a,headers:t.config.responseHeaders??b});exports.TinyBasePartyKitServer=class{constructor(t){this.party=t,this.config={}}async onRequest(t){const e=this.config.storePath??"/store";if(new URL(t.url).pathname.endsWith(e)){const e=await x(this),n=await t.text();return"PUT"==t.method?e?C(this,205):(await T(this,d(n),!0,t),C(this,201)):C(this,200,e?S(await(async t=>{const e={},n={},r=t.config.storagePrefix??a;return m(await t.party.storage.list(),((t,a)=>c(P(r,t),(([t,r])=>{if(t==s){const[t,s,n]=d("["+r+"]");p(p(e,t,y),s,y)[n]=a}else"v"==t&&(n[r]=a)})))),[e,n]})(this)):a)}return C(this,404)}async onMessage(t,e){const s=this.config.messagePrefix??a;await c(P(s,t,1),(async([t,a])=>{"s"==t&&await x(this)&&(await T(this,a,!1,e),this.party.broadcast(D(s,"s",a)))}))}canSetTable(t,a,e){return!0}canDelTable(t,a){return!0}canSetRow(t,a,e,s){return!0}canDelRow(t,a,e){return!0}canSetCell(t,a,e,s,n,r,i){return!0}canDelCell(t,a,e,s){return!0}canSetValue(t,a,e,s,n){return!0}canDelValue(t,a){return!0}};
@@ -1 +1 @@
1
- "use strict";const t=setInterval,a=clearInterval,e=(t,a)=>t instanceof a,s=t=>null==t,n=Object,r=n.keys,o=n.freeze,c=t=>(t=>e(t,n)&&t.constructor==n)(t)&&0==(t=>r(t).length)(t),i=JSON.parse,y=t=>new Map(t),u=(t,a)=>t?.get(a),d=(t,a,e)=>{return s(e)?(n=t,r=a,n?.delete(r),t):t?.set(a,e);var n,r},h=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||d(t,a,e()),u(t,a)},w=y(),l=y(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(r,y,p,f=5,g)=>{let A;return((t,a,e,n,r,i,y=[])=>{let v,p,f,g=0,A=0;h(w,y,(()=>0)),h(l,y,(()=>[]));const S=async t=>(2!=g&&(g=1,await C.schedule((async()=>{await t(),g=0}))),C),C={load:async(e,s)=>await S((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(C.stopAutoLoad(),await C.load(e,s),A=1,f=n((async(e,s)=>{if(s){const a=s();await S((async()=>t.setTransactionChanges(a)))}else await S((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(A&&(r(f),f=void 0,A=0),C),save:async a=>(1!=g&&(g=2,await C.schedule((async()=>{try{await e(t.getContent,a)}catch(t){i?.(t)}g=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),v=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||C.save((()=>[e,s]))})),C),stopAutoSave:()=>{var a,e;return a=v,e=t.delListener,s(a)||e(a),C},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(u(l,y),...t),await(async()=>{if(!u(w,y)){for(d(w,y,1);!s((t=u(l,y),p=t.shift()));)try{await p()}catch(t){i?.(t)}d(w,y,0)}var t})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o(C)})(r,(async()=>{const t=await fetch(y);return A=v(t),i(await t.text())}),(async t=>{return await fetch(p,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>e(a,Map)?n.fromEntries([...a]):a)))});var a}),(a=>t((async()=>{const t=await fetch(y,{method:"HEAD"}),e=v(t);s(A)||s(e)||e==A||(A=e,a())}),1e3*f)),(t=>a(t)),g)};
1
+ "use strict";const t=setInterval,a=clearInterval,e=t=>null==t,s=(t,a,s)=>e(t)?s?.():a(t),n=Object,o=t=>n.getPrototypeOf(t),r=n.keys,c=n.freeze,i=t=>(t=>!e(t)&&s(o(t),(t=>t==n.prototype||e(o(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),y=JSON.parse,d=t=>new Map(t),h=(t,a)=>t?.get(a),u=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},l=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||u(t,a,e()),h(t,a)},w=d(),p=d(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(o,r,d,f=5,g)=>{let A;return((t,a,n,o,r,y,[d,v]=[],f=[])=>{let g,A,S,C=0,L=0;l(w,f,(()=>0)),l(p,f,(()=>[]));const O=async t=>(2!=C&&(C=1,await T.schedule((async()=>{await t(),C=0}))),T),T={load:async(e,s)=>await O((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(T.stopAutoLoad(),await T.load(e,s),L=1,S=o((async(e,s)=>{if(s){const a=s();await O((async()=>t.setTransactionChanges(a)))}else await O((async()=>{try{t.setContent(e?.()??await a())}catch(t){y?.(t)}}))})),T),stopAutoLoad:()=>(L&&(r(S),S=void 0,L=0),T),save:async a=>(1!=C&&(C=2,await T.schedule((async()=>{try{await n(t.getContent,a)}catch(t){y?.(t)}C=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();i(e)&&i(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(s(g,t.delListener),g=void 0,T),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(h(p,f),...t),await(async()=>{if(!h(w,f)){for(u(w,f,1);!e((t=h(p,f),A=t.shift()));)try{await A()}catch(t){y?.(t)}u(w,f,0)}var t})(),T),getStore:()=>t,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(T[d]=()=>v),c(T)})(o,(async()=>{const t=await fetch(r);return A=v(t),y(await t.text())}),(async t=>{return await fetch(d,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?n.fromEntries([...a]):a)))});var a}),(a=>t((async()=>{const t=await fetch(r,{method:"HEAD"}),s=v(t);e(A)||e(s)||s==A||(A=s,a())}),1e3*f)),(t=>a(t)),g,["getUrls",[r,d]])};
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=(a,t)=>a instanceof t,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,E=(a,t,e)=>a.slice(t,e),u=async a=>i.all(a),d=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),m=a=>a.length,T=a=>0==m(a),v=(a,t)=>a.filter(t),A=(a,...t)=>a.push(...t),L=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),f=Object,N=f.keys,O=f.freeze,S=(a=[])=>f.fromEntries(a),C=(...a)=>f.assign({},...a),D=(a,t)=>p(f.entries(a),(([a,e])=>t(e,a))),I=a=>f.values(a),b=a=>m(N(a)),g=a=>(a=>r(a,f)&&a.constructor==f)(a)&&0==b(a),_=a=>new Map(a),M=a=>[...a?.keys()??[]],F=(a,t)=>a?.get(t),$=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),P=(a,t,e)=>l(e)?(R(a,t),a):a?.set(t,e),B=(a,t,e)=>(L(a,t)||P(a,t,e()),F(a,t)),W=(a,t,e,s=P)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!l(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),j=a=>new Set(Array.isArray(a)||l(a)?a:[a]),k=(a,t)=>a?.add(t),H="_",q="_id",x=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",V=(a,t,s)=>{const n=_();return[async()=>W(n,S(await u(p(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+z(t)+")",t),(async({name:t})=>[t,S(p(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>P(n,t,W(B(n,t,_),e,((a,t,e)=>{e!=F(a,t)&&P(a,t,e)}),((a,t)=>P(a,t))))),((a,t)=>P(n,t))),async(t,e)=>((a,t)=>!l(F(F(n,a),t)))(t,e)?S(v(p(await a("SELECT*FROM"+x(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!g(t)))):{},async(t,s,i,c,o,r=!1)=>{const w=j();D(i??{},(a=>p(N(a??{}),(a=>k(w,a)))));const y=h(w);if(!r&&o&&T(y)&&L(n,t))return await a("DROP TABLE"+x(t)),void P(n,t);if(T(y)||L(n,t)){const e=F(n,t),i=j(M(e));await u([...p(y,(async s=>{R(i,s)||(await a(`ALTER TABLE${x(t)}ADD${x(s)}`),P(e,s,""))})),...!r&&c?p(h(i),(async n=>{n!=s&&(await a(`ALTER TABLE${x(t)}DROP${x(n)}`),P(e,n))})):[]])}else await a(`CREATE TABLE${x(t)}(${x(s)} PRIMARY KEY ON CONFLICT REPLACE${d(p(y,(a=>e+x(a))))});`),P(n,t,_([[s,""],...p(y,(a=>[a,""]))]));if(r)l(i)?await a("DELETE FROM"+x(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{l(e)?await a("DELETE FROM"+x(t)+U+x(s)+"=?",[n]):T(y)||await Y(a,t,s,N(e),[n,...I(e)])})));else if(T(y))L(n,t)&&await a("DELETE FROM"+x(t)+"WHERE 1");else{const e=v(M(F(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{A(c,t,...p(e,(t=>a?.[t]))),A(o,t)})),await Y(a,t,s,e,c),await a("DELETE FROM"+x(t)+U+x(s)+"NOT IN("+z(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},Y=async(a,t,s,i,c)=>await a("INSERT INTO"+x(t)+"("+x(s)+d(p(i,(a=>e+x(a))))+")VALUES"+E(n(`,(?${n(",?",m(i))})`,m(c)/(m(i)+1)),1)+"ON CONFLICT("+x(s)+")DO UPDATE SET"+d(p(i,(a=>x(a)+"=excluded."+x(a))),e),c),z=a=>d(p(a,(()=>"?")),e),G=JSON.parse,K=_(),Q=_(),X=(a,t,e,s,n,i,c=[])=>{let o,r,y,E=0,u=0;B(K,c,(()=>0)),B(Q,c,(()=>[]));const d=async a=>(2!=E&&(E=1,await p.schedule((async()=>{await a(),E=0}))),p),p={load:async(e,s)=>await d((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),u=1,y=s((async(e,s)=>{if(s){const t=s();await d((async()=>a.setTransactionChanges(t)))}else await d((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(u&&(n(y),y=void 0,u=0),p),save:async t=>(1!=E&&(E=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}E=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),o=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();g(e)&&g(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(w(o,a.delListener),p),schedule:async(...a)=>(A(F(Q,c),...a),await(async()=>{if(!F(K,c)){for(P(K,c,1);!l((a=F(Q,c),r=a.shift()));)try{await r()}catch(a){i?.(a)}P(K,c,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return O(p)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[l,w,y,E]=V(t,c,n);return X(a,(async()=>await E((async()=>(await l(),G((await w(i,q))[H]?.[Z]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,q,{[H]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>r(t,Map)?f.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,o)},ta=(a,t,e,s,n,[i,c,[o,r,w]],y,E)=>{const[d,p,m,T]=V(t,y,n),A=async(a,t)=>await u($(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),L=async(a,t)=>r?await m(w,q,{[H]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>S(v(await u($(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!g(a[1])))))(),t=await(async()=>o?(await p(w,q))[H]:{})();return g(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),l(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=_();return D(a,((a,i)=>{const c=E(I(C(t,y(a)?{[e]:a}:a)),0,b(t));l(c[0])||s(i,c[0])||P(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,w)=>{let u,d;const[p,m,T,v]=(a=>{const e=(a=>C(oa,y(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],j(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=E(I(C(ra,c)),0,b(ra)),r=o[2],l=j(r);return[0,s,[la(n,{[ia]:null,[na]:q},ia,(a=>k(l,a)&&a==r)),la(i,{[ca]:null,[na]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>k(l,t)&&t==r)),o],l]})(e);return(p?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>v.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,T,h(v),w)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>ua(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),m=a=>0==E(a),v=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),f=Object,R=a=>f.getPrototypeOf(a),N=f.keys,O=f.freeze,S=(a=[])=>f.fromEntries(a),C=(...a)=>f.assign({},...a),D=(a,t)=>p(f.entries(a),(([a,e])=>t(e,a))),b=a=>f.values(a),g=a=>E(N(a)),I=a=>(a=>!r(a)&&l(R(a),(a=>a==f.prototype||r(R(a))),(()=>!0)))(a)&&0==g(a),_=a=>new Map(a),M=a=>[...a?.keys()??[]],F=(a,t)=>a?.get(t),$=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),P=(a,t,e)=>r(e)?(h(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||P(a,t,e()),F(a,t)),W=(a,t,e,s=P)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),j=a=>new Set(Array.isArray(a)||r(a)?a:[a]),k=(a,t)=>a?.add(t),H="_",q="_id",x=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",V=(a,t,s)=>{const n=_();return[async()=>W(n,S(await u(p(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+z(t)+")",t),(async({name:t})=>[t,S(p(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>P(n,t,W(B(n,t,_),e,((a,t,e)=>{e!=F(a,t)&&P(a,t,e)}),((a,t)=>P(a,t))))),((a,t)=>P(n,t))),async(t,e)=>((a,t)=>!r(F(F(n,a),t)))(t,e)?S(v(p(await a("SELECT*FROM"+x(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!I(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=j();D(i??{},(a=>p(N(a??{}),(a=>k(w,a)))));const y=L(w);if(!l&&o&&m(y)&&A(n,t))return await a("DROP TABLE"+x(t)),void P(n,t);if(m(y)||A(n,t)){const e=F(n,t),i=j(M(e));await u([...p(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${x(t)}ADD${x(s)}`),P(e,s,""))})),...!l&&c?p(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${x(t)}DROP${x(n)}`),P(e,n))})):[]])}else await a(`CREATE TABLE${x(t)}(${x(s)} PRIMARY KEY ON CONFLICT REPLACE${d(p(y,(a=>e+x(a))))});`),P(n,t,_([[s,""],...p(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+x(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+x(t)+U+x(s)+"=?",[n]):m(y)||await Y(a,t,s,N(e),[n,...b(e)])})));else if(m(y))A(n,t)&&await a("DELETE FROM"+x(t)+"WHERE 1");else{const e=v(M(F(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{T(c,t,...p(e,(t=>a?.[t]))),T(o,t)})),await Y(a,t,s,e,c),await a("DELETE FROM"+x(t)+U+x(s)+"NOT IN("+z(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},Y=async(a,t,s,i,c)=>await a("INSERT INTO"+x(t)+"("+x(s)+d(p(i,(a=>e+x(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+x(s)+")DO UPDATE SET"+d(p(i,(a=>x(a)+"=excluded."+x(a))),e),c),z=a=>d(p(a,(()=>"?")),e),G=JSON.parse,K=_(),Q=_(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,p=0;B(K,w,(()=>0)),B(Q,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await v.schedule((async()=>{await a(),d=0}))),v),v={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(v.stopAutoLoad(),await v.load(e,n),p=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),v),stopAutoLoad:()=>(p&&(n(u),u=void 0,p=0),v),save:async t=>(1!=d&&(d=2,await v.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();I(e)&&I(s)||v.save((()=>[e,s]))})),v),stopAutoSave:()=>(l(y,a.delListener),y=void 0,v),schedule:async(...a)=>(T(F(Q,w),...a),await(async()=>{if(!F(K,w)){for(P(K,w,1);!r((a=F(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}P(K,w,0)}var a})(),v),getStore:()=>a,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(v[c]=()=>o),O(v)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=V(t,c,n);return X(a,(async()=>await y((async()=>(await r(),G((await l(i,q))[H]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,q,{[H]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?f.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,p,m,T]=V(t,y,n),A=async(a,t)=>await u($(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),L=async(a,t)=>l?await m(w,q,{[H]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>S(v(await u($(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!I(a[1])))))(),t=await(async()=>o?(await p(w,q))[H]:{})();return I(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=_();return D(a,((a,i)=>{const c=y(b(C(t,w(a)?{[e]:a}:a)),0,g(t));r(c[0])||s(i,c[0])||P(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[p,m,v,T]=(a=>{const e=(a=>C(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],j(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(b(C(ra,c)),0,g(ra)),r=o[2],l=j(r);return[0,s,[la(n,{[ia]:null,[na]:q},ia,(a=>k(l,a)&&a==r)),la(i,{[ca]:null,[na]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>k(l,t)&&t==r)),o],l]})(e);return(p?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>T.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,v,L(T),E)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>ua(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=(a,t)=>a instanceof t,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=t=>a(t)==s,E=(a,t,e)=>a.slice(t,e),u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),T=a=>a.length,m=a=>0==T(a),A=(a,t)=>a.filter(t),L=(a,...t)=>a.push(...t),p=(a,t)=>a?.has(t)??!1,f=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),N=Object,R=N.keys,O=N.freeze,S=(a=[])=>N.fromEntries(a),C=(...a)=>N.assign({},...a),D=(a,t)=>v(N.entries(a),(([a,e])=>t(e,a))),I=a=>N.values(a),g=a=>T(R(a)),b=a=>(a=>r(a,N)&&a.constructor==N)(a)&&0==g(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>l(e)?(h(a,t),a):a?.set(t,e),B=(a,t,e)=>(p(a,t)||_(a,t,e()),$(a,t)),H=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!l(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),W=a=>new Set(Array.isArray(a)||l(a)?a:[a]),j=(a,t)=>a?.add(t),k="_",x="_id",J=a=>`"${a.replace(/"/g,'""')}"`,U="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>H(n,S(await u(v(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,S(v(await a("SELECT name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,H(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!l($($(n,a),t)))(t,e)?S(A(v(await a("SELECT*FROM"+J(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!b(t)))):{},async(t,s,i,c,o,r=!1)=>{const w=W();D(i??{},(a=>v(R(a??{}),(a=>j(w,a)))));const y=f(w);if(!r&&o&&m(y)&&p(n,t))return await a("DROP TABLE"+J(t)),void _(n,t);if(m(y)||p(n,t)){const e=$(n,t),i=W(M(e));await u([...v(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${J(t)}ADD${J(s)}`),_(e,s,""))})),...!r&&c?v(f(i),(async n=>{n!=s&&(await a(`ALTER TABLE${J(t)}DROP${J(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${J(t)}(${J(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+J(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(r)l(i)?await a("DELETE FROM"+J(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{l(e)?await a("DELETE FROM"+J(t)+Y+J(s)+"=?",[n]):m(y)||await z(a,t,s,R(e),[n,...I(e)])})));else if(m(y))p(n,t)&&await a("DELETE FROM"+J(t)+"WHERE 1");else{const e=A(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{L(c,t,...v(e,(t=>a?.[t]))),L(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+J(t)+Y+J(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+J(t)+"("+J(s)+d(v(i,(a=>e+J(a))))+")VALUES"+E(n(`,(?${n(",?",T(i))})`,T(c)/(T(i)+1)),1)+"ON CONFLICT("+J(s)+")DO UPDATE SET"+d(v(i,(a=>J(a)+"=excluded."+J(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,c=[])=>{let o,r,y,E=0,u=0;B(V,c,(()=>0)),B(Q,c,(()=>[]));const d=async a=>(2!=E&&(E=1,await v.schedule((async()=>{await a(),E=0}))),v),v={load:async(e,s)=>await d((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(v.stopAutoLoad(),await v.load(e,n),u=1,y=s((async(e,s)=>{if(s){const t=s();await d((async()=>a.setTransactionChanges(t)))}else await d((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),v),stopAutoLoad:()=>(u&&(n(y),y=void 0,u=0),v),save:async t=>(1!=E&&(E=2,await v.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}E=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),o=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||v.save((()=>[e,s]))})),v),stopAutoSave:()=>(w(o,a.delListener),v),schedule:async(...a)=>(L($(Q,c),...a),await(async()=>{if(!$(V,c)){for(_(V,c,1);!l((a=$(Q,c),r=a.shift()));)try{await r()}catch(a){i?.(a)}_(V,c,0)}var a})(),v),getStore:()=>a,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return O(v)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[l,w,y,E]=q(t,c,n);return X(a,(async()=>await E((async()=>(await l(),K((await w(i,x))[k]?.[Z]??"null"))))),(async a=>await E((async()=>{var t;await l(),await y(i,x,{[k]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>r(t,Map)?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,o)},ta=(a,t,e,s,n,[i,c,[o,r,w]],y,E)=>{const[d,v,T,m]=q(t,y,n),L=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),p=async(a,t)=>r?await T(w,x,{[k]:a},!0,!0,t):null;return X(a,(async()=>await m((async()=>{await d();const a=await(async()=>S(A(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await v(w,x))[k]:{})();return b(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await d(),l(t)){const[t,e]=a();await L(t),await p(e)}else{const[a,e]=t();await L(a,!0),await p(e,!0)}}))),e,s,n,E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=E(I(C(t,y(a)?{[e]:a}:a)),0,g(t));l(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,w)=>{let u,d;const[v,T,m,A]=(a=>{const e=(a=>C(oa,y(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],W(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=E(I(C(ra,c)),0,g(ra)),r=o[2],l=W(r);return[0,s,[la(n,{[ia]:null,[na]:x},ia,(a=>j(l,a)&&a==r)),la(i,{[ca]:null,[na]:x,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*T),n((t=>A.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,m,f(A),w)},da="change";exports.createSqlite3Persister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t.map((a=>({...a})))))),new i(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(da,e),e}),(a=>t.off(da,a)),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),T=a=>0==E(a),p=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,N=a=>h.getPrototypeOf(a),O=h.keys,R=h.freeze,S=(a=[])=>h.fromEntries(a),C=(...a)=>h.assign({},...a),D=(a,t)=>v(h.entries(a),(([a,e])=>t(e,a))),g=a=>h.values(a),I=a=>E(O(a)),b=a=>(a=>!r(a)&&l(N(a),(a=>a==h.prototype||r(N(a))),(()=>!0)))(a)&&0==I(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),H=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),W=a=>new Set(Array.isArray(a)||r(a)?a:[a]),j=(a,t)=>a?.add(t),k="_",x="_id",J=a=>`"${a.replace(/"/g,'""')}"`,U="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>H(n,S(await u(v(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,S(v(await a("SELECT name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,H(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?S(p(v(await a("SELECT*FROM"+J(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!b(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=W();D(i??{},(a=>v(O(a??{}),(a=>j(w,a)))));const y=L(w);if(!l&&o&&T(y)&&A(n,t))return await a("DROP TABLE"+J(t)),void _(n,t);if(T(y)||A(n,t)){const e=$(n,t),i=W(M(e));await u([...v(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${J(t)}ADD${J(s)}`),_(e,s,""))})),...!l&&c?v(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${J(t)}DROP${J(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${J(t)}(${J(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+J(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+J(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+J(t)+Y+J(s)+"=?",[n]):T(y)||await z(a,t,s,O(e),[n,...g(e)])})));else if(T(y))A(n,t)&&await a("DELETE FROM"+J(t)+"WHERE 1");else{const e=p(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{m(c,t,...v(e,(t=>a?.[t]))),m(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+J(t)+Y+J(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+J(t)+"("+J(s)+d(v(i,(a=>e+J(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+J(s)+")DO UPDATE SET"+d(v(i,(a=>J(a)+"=excluded."+J(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;B(V,w,(()=>0)),B(Q,w,(()=>[]));const T=async a=>(2!=d&&(d=1,await p.schedule((async()=>{await a(),d=0}))),p),p={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),p),save:async t=>(1!=d&&(d=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(l(y,a.delListener),y=void 0,p),schedule:async(...a)=>(m($(Q,w),...a),await(async()=>{if(!$(V,w)){for(_(V,w,1);!r((a=$(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,w,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(p[c]=()=>o),R(p)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=q(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await l(i,x))[k]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,x,{[k]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,v,T,m]=q(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),L=async(a,t)=>l?await T(w,x,{[k]:a},!0,!0,t):null;return X(a,(async()=>await m((async()=>{await d();const a=await(async()=>S(p(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await v(w,x))[k]:{})();return b(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=y(g(C(t,w(a)?{[e]:a}:a)),0,I(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[v,T,p,m]=(a=>{const e=(a=>C(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],W(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(C(ra,c)),0,I(ra)),r=o[2],l=W(r);return[0,s,[la(n,{[ia]:null,[na]:x},ia,(a=>j(l,a)&&a==r)),la(i,{[ca]:null,[na]:x,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*T),n((t=>m.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,p,L(m),E)},da="change";exports.createSqlite3Persister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t))),new i(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(da,e),e}),(a=>t.off(da,a)),s,n,t);
@@ -1 +1 @@
1
- "use strict";var t=require("yjs");const e="t",a="v",s=t=>t.length,n=t=>t.shift(),o=t=>null==t,c=(t,e,a)=>o(t)?a?.():e(t),r=Object,i=r.keys,u=r.freeze,l=(t=[])=>r.fromEntries(t),d=(t,e)=>!o(((t,e)=>c(t,(t=>t[e])))(t,e)),g=(t,e)=>((t,e)=>t.map(e))(r.entries(t),(([t,a])=>e(a,t))),y=t=>(t=>t instanceof r&&t.constructor==r)(t)&&0==(t=>s(i(t)))(t),h=(t,e,a)=>(d(t,e)||(t[e]=a()),t[e]),v=t=>new Map(t),p=(t,e)=>t?.get(e),w=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),f=(t,e,a)=>{return o(a)?(s=t,n=e,s?.delete(n),t):t?.set(e,a);var s,n},S=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||f(t,e,a()),p(t,e)},A=v(),O=v(),J="delete",L=t=>[t.get(e),t.get(a)],N=(e,a,s,n)=>{const c=o(a)?e:e.get(a)??e.set(a,new t.Map);let r;return g(s,((t,e)=>{n(c,e,t)&&(r=1)})),c.forEach(((t,e)=>{d(s,e)||(c.delete(e),r=1)})),o(a)||c.size||e.delete(a),r};exports.createYjsPersister=(r,i,d="tinybase",v)=>{const C=i.getMap(d);return((t,e,a,s,r,i,l=[])=>{let d,g,h,v=0,w=0;S(A,l,(()=>0)),S(O,l,(()=>[]));const J=async t=>(2!=v&&(v=1,await L.schedule((async()=>{await t(),v=0}))),L),L={load:async(a,s)=>await J((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},n={})=>(L.stopAutoLoad(),await L.load(a,n),w=1,h=s((async(a,s)=>{if(s){const e=s();await J((async()=>t.setTransactionChanges(e)))}else await J((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),L),stopAutoLoad:()=>(w&&(r(h),h=void 0,w=0),L),save:async e=>(1!=v&&(v=2,await L.schedule((async()=>{try{await a(t.getContent,e)}catch(t){i?.(t)}v=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),d=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();y(a)&&y(s)||L.save((()=>[a,s]))})),L),stopAutoSave:()=>(c(d,t.delListener),L),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(p(O,l),...t),await(async()=>{if(!p(A,l)){for(f(A,l,1);!o(g=n(p(O,l)));)try{await g()}catch(t){i?.(t)}f(A,l,0)}})(),L),getStore:()=>t,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u(L)})(r,(async()=>C.size?[C.get(e).toJSON(),C.get(a).toJSON()]:void 0),(async(s,n)=>i.transact((()=>((s,n,r)=>{s.size||(s.set(e,new t.Map),s.set(a,new t.Map));const[i,u]=L(s),l=()=>{d=1};let d=1;if(c(r?.(),(([t,e])=>{d=0,g(t,((t,e)=>d?0:o(t)?i.delete(e):c(i.get(e),(e=>g(t,((t,a)=>d?0:o(t)?e.delete(a):c(e.get(a),(e=>g(t,((t,a)=>o(t)?e.delete(a):e.set(a,t)))),l)))),l))),g(e,((t,e)=>d?0:o(t)?u.delete(e):u.set(e,t)))})),d){const[t,e]=n();N(i,void 0,t,((t,e,a)=>N(i,e,a,((t,e,a)=>N(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),N(u,void 0,e,((t,e,a)=>{u.get(e)!==a&&u.set(e,a)}))}})(C,s,n)))),(t=>{const o=o=>t(void 0,(()=>((t,o)=>{if(1==s(o)&&(r=o[0].path,0==s(r)))return[t.get(e).toJSON(),t.get(a).toJSON()];var r;const[i,u]=L(t),d={},g={};return((t,a)=>{t.forEach((({path:t,changes:{keys:a}})=>n(t)==e?c(n(t),(e=>{const s=h(d,e,l),o=i.get(e);c(n(t),(t=>{const e=h(s,t,l),n=o.get(t);w(a,((t,{action:a})=>e[t]=a==J?null:n.get(t)))}),(()=>w(a,((t,{action:e})=>s[t]=e==J?null:o.get(t)?.toJSON()))))}),(()=>w(a,((t,{action:e})=>d[t]=e==J?null:i.get(t)?.toJSON())))):w(a,((t,{action:e})=>g[t]=e==J?null:u.get(t)))))})(o),[d,g]})(C,o)));return C.observeDeep(o),o}),(t=>{C.unobserveDeep(t)}),v)};
1
+ "use strict";var t=require("yjs");const e="t",a="v",s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=t=>t.length,r=t=>t.shift(),c=Object,i=t=>c.getPrototypeOf(t),l=c.keys,u=c.freeze,d=(t=[])=>c.fromEntries(t),g=(t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)),y=(t,e)=>((t,e)=>t.map(e))(c.entries(t),(([t,a])=>e(a,t))),p=t=>(t=>!s(t)&&n(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>o(l(t)))(t),v=(t,e,a)=>(g(t,e)||(t[e]=a()),t[e]),h=t=>new Map(t),w=(t,e)=>t?.get(e),f=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),S=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},A=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||S(t,e,a()),w(t,e)},O=h(),J=h(),L="delete",N=t=>[t.get(e),t.get(a)],C=(e,a,n,o)=>{const r=s(a)?e:e.get(a)??e.set(a,new t.Map);let c;return y(n,((t,e)=>{o(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{g(n,e)||(r.delete(e),c=1)})),s(a)||r.size||e.delete(a),c};exports.createYjsPersister=(c,i,l="tinybase",g)=>{const h=i.getMap(l);return((t,e,a,o,c,i,[l,d]=[],g=[])=>{let y,v,h,f=0,L=0;A(O,g,(()=>0)),A(J,g,(()=>[]));const N=async t=>(2!=f&&(f=1,await C.schedule((async()=>{await t(),f=0}))),C),C={load:async(a,s)=>await N((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(C.stopAutoLoad(),await C.load(a,s),L=1,h=o((async(a,s)=>{if(s){const e=s();await N((async()=>t.setTransactionChanges(e)))}else await N((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(L&&(c(h),h=void 0,L=0),C),save:async e=>(1!=f&&(f=2,await C.schedule((async()=>{try{await a(t.getContent,e)}catch(t){i?.(t)}f=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),y=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();p(a)&&p(s)||C.save((()=>[a,s]))})),C),stopAutoSave:()=>(n(y,t.delListener),y=void 0,C),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(w(J,g),...t),await(async()=>{if(!w(O,g)){for(S(O,g,1);!s(v=r(w(J,g)));)try{await v()}catch(t){i?.(t)}S(O,g,0)}})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return l&&(C[l]=()=>d),u(C)})(c,(async()=>h.size?[h.get(e).toJSON(),h.get(a).toJSON()]:void 0),(async(o,r)=>i.transact((()=>((o,r,c)=>{o.size||(o.set(e,new t.Map),o.set(a,new t.Map));const[i,l]=N(o),u=()=>{d=1};let d=1;if(n(c?.(),(([t,e])=>{d=0,y(t,((t,e)=>d?0:s(t)?i.delete(e):n(i.get(e),(e=>y(t,((t,a)=>d?0:s(t)?e.delete(a):n(e.get(a),(e=>y(t,((t,a)=>s(t)?e.delete(a):e.set(a,t)))),u)))),u))),y(e,((t,e)=>d?0:s(t)?l.delete(e):l.set(e,t)))})),d){const[t,e]=r();C(i,void 0,t,((t,e,a)=>C(i,e,a,((t,e,a)=>C(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),C(l,void 0,e,((t,e,a)=>{l.get(e)!==a&&l.set(e,a)}))}})(h,o,r)))),(t=>{const s=s=>t(void 0,(()=>((t,s)=>{if(1==o(s)&&(c=s[0].path,0==o(c)))return[t.get(e).toJSON(),t.get(a).toJSON()];var c;const[i,l]=N(t),u={},g={};return((t,a)=>{t.forEach((({path:t,changes:{keys:a}})=>r(t)==e?n(r(t),(e=>{const s=v(u,e,d),o=i.get(e);n(r(t),(t=>{const e=v(s,t,d),n=o.get(t);f(a,((t,{action:a})=>e[t]=a==L?null:n.get(t)))}),(()=>f(a,((t,{action:e})=>s[t]=e==L?null:o.get(t)?.toJSON()))))}),(()=>f(a,((t,{action:e})=>u[t]=e==L?null:i.get(t)?.toJSON())))):f(a,((t,{action:e})=>g[t]=e==L?null:l.get(t)))))})(s),[u,g]})(h,s)));return h.observeDeep(s),s}),(t=>{h.unobserveDeep(t)}),g,["getYDoc",i])};
@@ -1 +1 @@
1
- "use strict";const t=t=>null==t,a=Object,e=a.keys,s=a.freeze,n=t=>(t=>t instanceof a&&t.constructor==a)(t)&&0==(t=>e(t).length)(t),o=t=>new Map(t),c=(t,a)=>t?.get(a),r=(a,e,s)=>{return t(s)?(n=a,o=e,n?.delete(o),a):a?.set(e,s);var n,o},i=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||r(t,a,e()),c(t,a)},u=o(),y=o();exports.createCustomPersister=(a,e,o,d,w,h,l=[])=>{let v,p,A,f=0,g=0;i(u,l,(()=>0)),i(y,l,(()=>[]));const C=async t=>(2!=f&&(f=1,await L.schedule((async()=>{await t(),f=0}))),L),L={load:async(t,s)=>await C((async()=>{try{a.setContent(await e())}catch{a.setContent([t,s])}})),startAutoLoad:async(t={},s={})=>(L.stopAutoLoad(),await L.load(t,s),g=1,A=d((async(t,s)=>{if(s){const t=s();await C((async()=>a.setTransactionChanges(t)))}else await C((async()=>{try{a.setContent(t?.()??await e())}catch(t){h?.(t)}}))})),L),stopAutoLoad:()=>(g&&(w(A),A=void 0,g=0),L),save:async t=>(1!=f&&(f=2,await L.schedule((async()=>{try{await o(a.getContent,t)}catch(t){h?.(t)}f=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),v=a.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();n(e)&&n(s)||L.save((()=>[e,s]))})),L),stopAutoSave:()=>{var e,s;return e=v,s=a.delListener,t(e)||s(e),L},schedule:async(...a)=>(((t,...a)=>{t.push(...a)})(c(y,l),...a),await(async()=>{if(!c(u,l)){for(r(u,l,1);!t((a=c(y,l),p=a.shift()));)try{await p()}catch(t){h?.(t)}r(u,l,0)}var a})(),L),getStore:()=>a,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return s(L)};
1
+ "use strict";const t=t=>null==t,a=(a,e,s)=>t(a)?s?.():e(a),e=Object,s=t=>e.getPrototypeOf(t),o=e.keys,n=e.freeze,c=n=>(o=>!t(o)&&a(s(o),(a=>a==e.prototype||t(s(a))),(()=>!0)))(n)&&0==(t=>o(t).length)(n),r=t=>new Map(t),i=(t,a)=>t?.get(a),y=(a,e,s)=>{return t(s)?(o=a,n=e,o?.delete(n),a):a?.set(e,s);var o,n},u=(t,a,e)=>{var s,o;return s=t,o=a,s?.has(o)||y(t,a,e()),i(t,a)},d=r(),w=r();exports.createCustomPersister=(e,s,o,r,h,l,[p,v]=[],A=[])=>{let g,f,C,L=0,S=0;u(d,A,(()=>0)),u(w,A,(()=>[]));const O=async t=>(2!=L&&(L=1,await P.schedule((async()=>{await t(),L=0}))),P),P={load:async(t,a)=>await O((async()=>{try{e.setContent(await s())}catch{e.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(P.stopAutoLoad(),await P.load(t,a),S=1,C=r((async(t,a)=>{if(a){const t=a();await O((async()=>e.setTransactionChanges(t)))}else await O((async()=>{try{e.setContent(t?.()??await s())}catch(t){l?.(t)}}))})),P),stopAutoLoad:()=>(S&&(h(C),C=void 0,S=0),P),save:async t=>(1!=L&&(L=2,await P.schedule((async()=>{try{await o(e.getContent,t)}catch(t){l?.(t)}L=0}))),P),startAutoSave:async()=>(await P.stopAutoSave().save(),g=e.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||P.save((()=>[e,s]))})),P),stopAutoSave:()=>(a(g,e.delListener),g=void 0,P),schedule:async(...a)=>(((t,...a)=>{t.push(...a)})(i(w,A),...a),await(async()=>{if(!i(d,A)){for(y(d,A,1);!t((a=i(w,A),f=a.shift()));)try{await f()}catch(t){l?.(t)}y(d,A,0)}var a})(),P),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(P[p]=()=>v),n(P)};
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=(e,t)=>e.every(t),L=(e,t)=>e.forEach(t),f=e=>T(e,((e,t)=>e+t),0),R=e=>e.length,y=e=>0==R(e),T=(e,t,n)=>e.reduce(t,n),b=(e,...t)=>e.push(...t),C=Math.max,p=Math.min,Q=isFinite,S=e=>null==e,m=(e,t,n)=>S(e)?n?.():t(e),I=t=>e(t)==r,E=e=>Array.isArray(e),M=()=>{},x=Object,D=x.freeze,j=e=>e?.size??0,k=(e,t)=>e?.has(t)??!1,z=e=>S(e)||0==j(e),A=e=>[...e?.values()??[]],F=e=>e.clear(),O=(e,t)=>e?.forEach(t),W=(e,t)=>e?.delete(t),q=e=>new Map(e),B=(e,t)=>e?.get(t),G=(e,t)=>O(e,((e,n)=>t(n,e))),H=(e,t,n)=>S(n)?(W(e,t),e):e?.set(t,n),J=(e,t,n)=>(k(e,t)||H(e,t,n()),B(e,t)),K=(e,t,n,s,r=0)=>m((n?J:B)(e,t[r],r>R(t)-2?n:q),(o=>{if(r>R(t)-2)return s?.(o)&&H(e,t[r]),o;const a=K(o,t,n,s,r+1);return z(o)&&H(e,t[r]),a})),N=e=>new Set(E(e)||S(e)?e:[e]),P=(e,t)=>e?.add(t),U=q([["avg",[(e,t)=>f(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:C(t,e)]],["min",[e=>p(...e),(e,t)=>p(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:p(t,e)]],["sum",[e=>f(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),V=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,f=l(),T=l(),C=q(),{addListener:p,callListeners:V,delListener:X}=T,[Y,Z,$,_,ee,,,te,,ne,se,re,oe,ae]=((e,t,n,s,r)=>{const o=e.hasRow,a=q(),l=q(),i=q(),d=q(),c=q(),u=q(),h=(t,n,...s)=>{const r=J(u,t,N);return L(s,(t=>P(r,t)&&n&&e.callListener(t))),s},g=(t,...n)=>m(B(u,t),(s=>{L(y(n)?A(s):n,(t=>{e.delListener(t),W(s,t)})),z(s)&&H(u,t)})),v=(e,t)=>{H(a,e,t),k(l,e)||(H(l,e,!0),H(d,e,q()),H(c,e,q()),r(i))},f=e=>{H(a,e),H(l,e),H(d,e),H(c,e),g(e),r(i)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>G(l,e),e=>k(l,e),e=>B(a,e),e=>B(l,e),(e,t)=>H(l,e,t),v,(t,s,r,a,l)=>{v(t,s);const i=q(),u=q(),f=B(d,t),y=B(c,t),T=t=>{const r=n=>e.getCell(s,t,n),d=B(f,t),c=o(s,t)?n(a(r,t)):void 0;var h,g;if(d===c||E(d)&&E(c)&&(g=c,R(h=d)===R(g)&&w(h,((e,t)=>g[t]===e)))||H(i,t,[d,c]),!S(l)){const e=B(y,t),n=o(s,t)?l(r,t):void 0;e!=n&&H(u,t,n)}},b=e=>{r((()=>{O(i,(([,e],t)=>H(f,t,e))),O(u,((e,t)=>H(y,t,e)))}),i,u,f,y,e),F(i),F(u)};G(f,T),e.hasTable(s)&&L(e.getRowIds(s),(e=>{k(f,e)||T(e)})),b(!0),g(t),h(t,0,e.addRowListener(s,null,((e,t,n)=>T(n))),e.addTableListener(s,(()=>b())))},f,e=>s(e,i),()=>G(u,f),h,g]})(r,0,M,p,V),le=(e,t,...n)=>L(n,(n=>P(J(J(C,t,q),e,N),n))),ie=e=>{m(B(C,e),(e=>{G(e,((e,t)=>O(t,(t=>e.delListener(t))))),F(e)})),L([T,f],(t=>t.delTable(e)))},de=(e,t,n)=>le(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ce={setQueryDefinition:(o,a,l)=>{te(o,a),ie(o);const i=[],d=[[null,[a,null,null,[],q()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=I(e)?[R(i)+"",e]:[S(t)?e:t,n=>n(e,t)];return b(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=S(n)||I(t)?null:t,r=S(s)?t:n,o=[e,[e,s,I(r)?r:e=>e(r),[],q()]];return b(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>b(c,I(e)?e:S(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,I(t)?[t,n,s,r]:B(U,t)??[(e,t)=>t]]];return b(u,o),{as:e=>o[0]=e}},having:(e,t)=>b(h,I(e)?e:n=>n(e)===t)});const g=q(i);if(z(g))return ce;const v=q(d);G(v,((e,[,t])=>m(B(v,t),(({3:t})=>S(e)?0:b(t,e)))));const C=q(u);let p=f;if(z(C)&&y(h))p=T;else{de(o,p,T);const r=q();G(C,((e,[t,n])=>P(J(r,t,N),[e,n])));const a=N();G(g,(e=>k(r,e)?0:P(a,e)));const l=q(),i=(a,l,i,d)=>m(a,(([c,u,g,v])=>{G(l,((o,[a])=>{const l=J(c,o,q),u=B(l,i),h=d?void 0:a;if(u!==h){const a=N([[u,h]]),d=j(l);H(l,i,h),O(B(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(z(n))return;const[a,l,i,d]=r;return o||=S(e),O(s,(([n,s])=>{o||(e=S(n)?l?.(e,s,t++):S(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=S(e))})),o?a(A(n),j(n)):e})(v[r],d,l,a,o);v[r]=S((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&Q(r)?o:void 0})(i))?null:i}))}})),z(u)||!w(h,(e=>e((e=>v[e]))))?T.delRow(o,g):S(g)?a[2]=T.addRow(o,v):T.setRow(o,g,v)}));le(p,o,p.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=q(),h=p.hasRow(o,n);let g=!h;O(a,(e=>{const[t,r,a]=s(o,n,e);b(d,r),b(c,a),g||=t})),G(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&H(u,e,[r])})),g&&i(K(l,d,void 0,(([,e])=>(W(e,n),z(e)))),u,n,1),h&&i(K(l,c,(()=>{const e={};return O(a,(t=>e[t]=p.getCell(o,n,t))),[q(),N(),void 0,e]}),(([,e])=>{P(e,n)})),u,n)})))}de(o,r,p);const E=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);L(s,(t=>{const[n,,s,a,i]=B(v,t),d=s?.(l,e),[c,u]=B(i,e)??[];d!=c&&(S(u)||ae(o,u),H(i,e,S(d)?null:[d,...oe(o,1,r.addRowListener(n,d,(()=>E(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...S(n)?[a,e,t]:t===a?[a,e,n]:[B(v,t)?.[0],B(B(v,t)?.[4],e)?.[0],n]);p.transaction((()=>w(c,(e=>e(t)))?G(g,((n,s)=>((e,t,n,s,r)=>S(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(p,o,e,n,s(t,e)))):p.delRow(o,e)))})(e)},{3:M}=B(v,null);return p.transaction((()=>oe(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?E(n,a,n,M):(p.delRow(o,n),O(v,(({4:e})=>m(B(e,n),(([,t])=>{ae(o,t),H(e,n)})))))}))))),ce},delQueryDefinition:e=>(ie(e),ne(e),ce),getStore:Y,getQueryIds:Z,forEachQuery:$,hasQuery:_,getTableId:ee,addQueryIdsListener:e=>se((()=>e(ce))),delListener:e=>(X(e),ce),destroy:re,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=T.getListenerStats();return s}};var ue,he;return ue={[i]:[1,1],[i+v]:[0,1],[c]:[0,1],[u]:[0,1],[h]:[0,5],[d]:[1,2],[v]:[0,2],[g]:[1,3]},he=([e,t],n)=>{L(e?["get","has","forEach"]:["get"],(e=>ce[e+a+n]=(...t)=>T[e+n](...t))),ce["add"+a+n+o]=(...e)=>{return T["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](ce,...s)));var s,r}},((e,t)=>{e.map(t)})(x.entries(ue),(([e,t])=>he(t,e))),D(ce)})(r)),l.get(r))})();exports.createQueries=V;
1
+ "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math.max,L=Math.min,f=isFinite,R=e=>null==e,y=(e,t,n)=>R(e)?n?.():t(e),T=t=>e(t)==r,b=e=>Array.isArray(e),C=e=>e.length,p=()=>{},Q=(e,t)=>e.every(t),S=(e,t)=>e.forEach(t),m=e=>E(e,((e,t)=>e+t),0),I=e=>0==C(e),E=(e,t,n)=>e.reduce(t,n),M=(e,...t)=>e.push(...t),x=Object,D=x.freeze,j=e=>e?.size??0,k=(e,t)=>e?.has(t)??!1,z=e=>R(e)||0==j(e),A=e=>[...e?.values()??[]],F=e=>e.clear(),O=(e,t)=>e?.forEach(t),W=(e,t)=>e?.delete(t),q=e=>new Map(e),B=(e,t)=>e?.get(t),G=(e,t)=>O(e,((e,n)=>t(n,e))),H=(e,t,n)=>R(n)?(W(e,t),e):e?.set(t,n),J=(e,t,n)=>(k(e,t)||H(e,t,n()),B(e,t)),K=(e,t,n,s,r=0)=>y((n?J:B)(e,t[r],r>C(t)-2?n:q),(o=>{if(r>C(t)-2)return s?.(o)&&H(e,t[r]),o;const a=K(o,t,n,s,r+1);return z(o)&&H(e,t[r]),a})),N=e=>new Set(b(e)||R(e)?e:[e]),P=(e,t)=>e?.add(t),U=q([["avg",[(e,t)=>m(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>w(...e),(e,t)=>w(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:w(t,e)]],["min",[e=>L(...e),(e,t)=>L(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:L(t,e)]],["sum",[e=>m(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),V=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,w=l(),L=l(),m=q(),{addListener:E,callListeners:V,delListener:X}=L,[Y,Z,$,_,ee,,,te,,ne,se,re,oe,ae]=((e,t,n,s,r)=>{const o=e.hasRow,a=q(),l=q(),i=q(),d=q(),c=q(),u=q(),h=(t,n,...s)=>{const r=J(u,t,N);return S(s,(t=>P(r,t)&&n&&e.callListener(t))),s},g=(t,...n)=>y(B(u,t),(s=>{S(I(n)?A(s):n,(t=>{e.delListener(t),W(s,t)})),z(s)&&H(u,t)})),v=(e,t)=>{H(a,e,t),k(l,e)||(H(l,e,!0),H(d,e,q()),H(c,e,q()),r(i))},w=e=>{H(a,e),H(l,e),H(d,e),H(c,e),g(e),r(i)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>G(l,e),e=>k(l,e),e=>B(a,e),e=>B(l,e),(e,t)=>H(l,e,t),v,(t,s,r,a,l)=>{v(t,s);const i=q(),u=q(),w=B(d,t),L=B(c,t),f=t=>{const r=n=>e.getCell(s,t,n),d=B(w,t),c=o(s,t)?n(a(r,t)):void 0;var h,g;if(d===c||b(d)&&b(c)&&(g=c,C(h=d)===C(g)&&Q(h,((e,t)=>g[t]===e)))||H(i,t,[d,c]),!R(l)){const e=B(L,t),n=o(s,t)?l(r,t):void 0;e!=n&&H(u,t,n)}},y=e=>{r((()=>{O(i,(([,e],t)=>H(w,t,e))),O(u,((e,t)=>H(L,t,e)))}),i,u,w,L,e),F(i),F(u)};G(w,f),e.hasTable(s)&&S(e.getRowIds(s),(e=>{k(w,e)||f(e)})),y(!0),g(t),h(t,0,e.addRowListener(s,null,((e,t,n)=>f(n))),e.addTableListener(s,(()=>y())))},w,e=>s(e,i),()=>G(u,w),h,g]})(r,0,p,E,V),le=(e,t,...n)=>S(n,(n=>P(J(J(m,t,q),e,N),n))),ie=e=>{y(B(m,e),(e=>{G(e,((e,t)=>O(t,(t=>e.delListener(t))))),F(e)})),S([L,w],(t=>t.delTable(e)))},de=(e,t,n)=>le(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ce={setQueryDefinition:(o,a,l)=>{te(o,a),ie(o);const i=[],d=[[null,[a,null,null,[],q()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=T(e)?[C(i)+"",e]:[R(t)?e:t,n=>n(e,t)];return M(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=R(n)||T(t)?null:t,r=R(s)?t:n,o=[e,[e,s,T(r)?r:e=>e(r),[],q()]];return M(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>M(c,T(e)?e:R(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,T(t)?[t,n,s,r]:B(U,t)??[(e,t)=>t]]];return M(u,o),{as:e=>o[0]=e}},having:(e,t)=>M(h,T(e)?e:n=>n(e)===t)});const g=q(i);if(z(g))return ce;const v=q(d);G(v,((e,[,t])=>y(B(v,t),(({3:t})=>R(e)?0:M(t,e)))));const b=q(u);let p=w;if(z(b)&&I(h))p=L;else{de(o,p,L);const r=q();G(b,((e,[t,n])=>P(J(r,t,N),[e,n])));const a=N();G(g,(e=>k(r,e)?0:P(a,e)));const l=q(),i=(a,l,i,d)=>y(a,(([c,u,g,v])=>{G(l,((o,[a])=>{const l=J(c,o,q),u=B(l,i),h=d?void 0:a;if(u!==h){const a=N([[u,h]]),d=j(l);H(l,i,h),O(B(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(z(n))return;const[a,l,i,d]=r;return o||=R(e),O(s,(([n,s])=>{o||(e=R(n)?l?.(e,s,t++):R(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=R(e))})),o?a(A(n),j(n)):e})(v[r],d,l,a,o);v[r]=R((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&f(r)?o:void 0})(i))?null:i}))}})),z(u)||!Q(h,(e=>e((e=>v[e]))))?L.delRow(o,g):R(g)?a[2]=L.addRow(o,v):L.setRow(o,g,v)}));le(p,o,p.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=q(),h=p.hasRow(o,n);let g=!h;O(a,(e=>{const[t,r,a]=s(o,n,e);M(d,r),M(c,a),g||=t})),G(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&H(u,e,[r])})),g&&i(K(l,d,void 0,(([,e])=>(W(e,n),z(e)))),u,n,1),h&&i(K(l,c,(()=>{const e={};return O(a,(t=>e[t]=p.getCell(o,n,t))),[q(),N(),void 0,e]}),(([,e])=>{P(e,n)})),u,n)})))}de(o,r,p);const m=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);S(s,(t=>{const[n,,s,a,i]=B(v,t),d=s?.(l,e),[c,u]=B(i,e)??[];d!=c&&(R(u)||ae(o,u),H(i,e,R(d)?null:[d,...oe(o,1,r.addRowListener(n,d,(()=>m(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...R(n)?[a,e,t]:t===a?[a,e,n]:[B(v,t)?.[0],B(B(v,t)?.[4],e)?.[0],n]);p.transaction((()=>Q(c,(e=>e(t)))?G(g,((n,s)=>((e,t,n,s,r)=>R(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(p,o,e,n,s(t,e)))):p.delRow(o,e)))})(e)},{3:E}=B(v,null);return p.transaction((()=>oe(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?m(n,a,n,E):(p.delRow(o,n),O(v,(({4:e})=>y(B(e,n),(([,t])=>{ae(o,t),H(e,n)})))))}))))),ce},delQueryDefinition:e=>(ie(e),ne(e),ce),getStore:Y,getQueryIds:Z,forEachQuery:$,hasQuery:_,getTableId:ee,addQueryIdsListener:e=>se((()=>e(ce))),delListener:e=>(X(e),ce),destroy:re,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=L.getListenerStats();return s}};var ue,he;return ue={[i]:[1,1],[i+v]:[0,1],[c]:[0,1],[u]:[0,1],[h]:[0,5],[d]:[1,2],[v]:[0,2],[g]:[1,3]},he=([e,t],n)=>{S(e?["get","has","forEach"]:["get"],(e=>ce[e+a+n]=(...t)=>L[e+n](...t))),ce["add"+a+n+o]=(...e)=>{return L["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](ce,...s)),!0);var s,r}},((e,t)=>{e.map(t)})(x.entries(ue),(([e,t])=>he(t,e))),D(ce)})(r)),l.get(r))})();exports.createQueries=V;
Binary file