tinybase 5.3.6 → 5.3.8

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 (839) hide show
  1. package/@types/persisters/index.d.cts +6 -4
  2. package/@types/persisters/index.d.ts +6 -4
  3. package/@types/persisters/with-schemas/index.d.cts +6 -4
  4. package/@types/persisters/with-schemas/index.d.ts +6 -4
  5. package/@types/synchronizers/synchronizer-ws-server/index.d.cts +4 -0
  6. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +4 -0
  7. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +5 -0
  8. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +5 -0
  9. package/cjs/es6/min/persisters/index.cjs +1 -1
  10. package/cjs/es6/min/persisters/index.cjs.gz +0 -0
  11. package/cjs/es6/min/persisters/persister-automerge/index.cjs +1 -1
  12. package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
  13. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  14. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  15. package/cjs/es6/min/persisters/persister-browser/index.cjs +1 -1
  16. package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
  17. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  18. package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  19. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  20. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  21. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  22. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  23. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  24. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  25. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  26. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  27. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  28. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  29. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  30. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  31. package/cjs/es6/min/persisters/persister-file/index.cjs +1 -1
  32. package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
  33. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  34. package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  35. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs +1 -1
  36. package/cjs/es6/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  37. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  38. package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  39. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  40. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  41. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  42. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  43. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +1 -1
  44. package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  45. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  46. package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  47. package/cjs/es6/min/persisters/persister-pglite/index.cjs +1 -1
  48. package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
  49. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  50. package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  51. package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
  52. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  53. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  54. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  55. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  56. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  57. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  58. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  59. package/cjs/es6/min/persisters/persister-remote/index.cjs +1 -1
  60. package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
  61. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  62. package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  63. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  64. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  65. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  66. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  67. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  68. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  69. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  70. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  71. package/cjs/es6/min/persisters/persister-yjs/index.cjs +1 -1
  72. package/cjs/es6/min/persisters/persister-yjs/index.cjs.gz +0 -0
  73. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  74. package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  75. package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
  76. package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
  77. package/cjs/es6/min/synchronizers/index.cjs +1 -1
  78. package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
  79. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  80. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  81. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  82. package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  83. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
  84. package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  85. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  86. package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  87. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  88. package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  89. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  90. package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  91. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  92. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  93. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  94. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  95. package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
  96. package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  97. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  98. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  99. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  100. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  101. package/cjs/es6/persisters/index.cjs +1 -1
  102. package/cjs/es6/persisters/persister-automerge/index.cjs +1 -1
  103. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  104. package/cjs/es6/persisters/persister-browser/index.cjs +1 -1
  105. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +1 -1
  106. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  107. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  108. package/cjs/es6/persisters/persister-electric-sql/index.cjs +1 -1
  109. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  110. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +1 -1
  111. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  112. package/cjs/es6/persisters/persister-file/index.cjs +1 -1
  113. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +1 -1
  114. package/cjs/es6/persisters/persister-indexed-db/index.cjs +1 -1
  115. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  116. package/cjs/es6/persisters/persister-libsql/index.cjs +1 -1
  117. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  118. package/cjs/es6/persisters/persister-partykit-client/index.cjs +1 -1
  119. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  120. package/cjs/es6/persisters/persister-pglite/index.cjs +1 -1
  121. package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  122. package/cjs/es6/persisters/persister-postgres/index.cjs +1 -1
  123. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  124. package/cjs/es6/persisters/persister-powersync/index.cjs +1 -1
  125. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  126. package/cjs/es6/persisters/persister-remote/index.cjs +1 -1
  127. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +1 -1
  128. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +1 -1
  129. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  130. package/cjs/es6/persisters/persister-sqlite3/index.cjs +1 -1
  131. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  132. package/cjs/es6/persisters/persister-yjs/index.cjs +1 -1
  133. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  134. package/cjs/es6/persisters/with-schemas/index.cjs +1 -1
  135. package/cjs/es6/synchronizers/index.cjs +51 -42
  136. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +51 -42
  137. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +51 -42
  138. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +51 -42
  139. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +51 -42
  140. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +51 -42
  141. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +51 -42
  142. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +78 -46
  143. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +78 -46
  144. package/cjs/es6/synchronizers/with-schemas/index.cjs +51 -42
  145. package/cjs/es6/ui-react-inspector/index.cjs +1 -1
  146. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +1 -1
  147. package/cjs/min/persisters/index.cjs +1 -1
  148. package/cjs/min/persisters/index.cjs.gz +0 -0
  149. package/cjs/min/persisters/persister-automerge/index.cjs +1 -1
  150. package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
  151. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  152. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  153. package/cjs/min/persisters/persister-browser/index.cjs +1 -1
  154. package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
  155. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
  156. package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
  157. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  158. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  159. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  160. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  161. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  162. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  163. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  164. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  165. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  166. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  167. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  168. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  169. package/cjs/min/persisters/persister-file/index.cjs +1 -1
  170. package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
  171. package/cjs/min/persisters/persister-file/with-schemas/index.cjs +1 -1
  172. package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
  173. package/cjs/min/persisters/persister-indexed-db/index.cjs +1 -1
  174. package/cjs/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
  175. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  176. package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
  177. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  178. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  179. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  180. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  181. package/cjs/min/persisters/persister-partykit-client/index.cjs +1 -1
  182. package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
  183. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  184. package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
  185. package/cjs/min/persisters/persister-pglite/index.cjs +1 -1
  186. package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
  187. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  188. package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
  189. package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
  190. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  191. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  192. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  193. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  194. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  195. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  196. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  197. package/cjs/min/persisters/persister-remote/index.cjs +1 -1
  198. package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
  199. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
  200. package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
  201. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  202. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  203. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  204. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  205. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  206. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  207. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  208. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  209. package/cjs/min/persisters/persister-yjs/index.cjs +1 -1
  210. package/cjs/min/persisters/persister-yjs/index.cjs.gz +0 -0
  211. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  212. package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
  213. package/cjs/min/persisters/with-schemas/index.cjs +1 -1
  214. package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
  215. package/cjs/min/synchronizers/index.cjs +1 -1
  216. package/cjs/min/synchronizers/index.cjs.gz +0 -0
  217. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
  218. package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
  219. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
  220. package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
  221. package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
  222. package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
  223. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
  224. package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
  225. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
  226. package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
  227. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
  228. package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
  229. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  230. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  231. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  232. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  233. package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
  234. package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
  235. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  236. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  237. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  238. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  239. package/cjs/persisters/index.cjs +1 -1
  240. package/cjs/persisters/persister-automerge/index.cjs +1 -1
  241. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  242. package/cjs/persisters/persister-browser/index.cjs +1 -1
  243. package/cjs/persisters/persister-browser/with-schemas/index.cjs +1 -1
  244. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  245. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  246. package/cjs/persisters/persister-electric-sql/index.cjs +1 -1
  247. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  248. package/cjs/persisters/persister-expo-sqlite/index.cjs +1 -1
  249. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  250. package/cjs/persisters/persister-file/index.cjs +1 -1
  251. package/cjs/persisters/persister-file/with-schemas/index.cjs +1 -1
  252. package/cjs/persisters/persister-indexed-db/index.cjs +1 -1
  253. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
  254. package/cjs/persisters/persister-libsql/index.cjs +1 -1
  255. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  256. package/cjs/persisters/persister-partykit-client/index.cjs +1 -1
  257. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
  258. package/cjs/persisters/persister-pglite/index.cjs +1 -1
  259. package/cjs/persisters/persister-pglite/with-schemas/index.cjs +1 -1
  260. package/cjs/persisters/persister-postgres/index.cjs +1 -1
  261. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  262. package/cjs/persisters/persister-powersync/index.cjs +1 -1
  263. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  264. package/cjs/persisters/persister-remote/index.cjs +1 -1
  265. package/cjs/persisters/persister-remote/with-schemas/index.cjs +1 -1
  266. package/cjs/persisters/persister-sqlite-wasm/index.cjs +1 -1
  267. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  268. package/cjs/persisters/persister-sqlite3/index.cjs +1 -1
  269. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  270. package/cjs/persisters/persister-yjs/index.cjs +1 -1
  271. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +1 -1
  272. package/cjs/persisters/with-schemas/index.cjs +1 -1
  273. package/cjs/synchronizers/index.cjs +51 -45
  274. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +51 -45
  275. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +51 -45
  276. package/cjs/synchronizers/synchronizer-local/index.cjs +51 -45
  277. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +51 -45
  278. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +51 -45
  279. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +51 -45
  280. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +78 -49
  281. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +78 -49
  282. package/cjs/synchronizers/with-schemas/index.cjs +51 -45
  283. package/cjs/ui-react-inspector/index.cjs +1 -1
  284. package/cjs/ui-react-inspector/with-schemas/index.cjs +1 -1
  285. package/es6/min/persisters/index.js +1 -1
  286. package/es6/min/persisters/index.js.gz +0 -0
  287. package/es6/min/persisters/persister-automerge/index.js +1 -1
  288. package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  289. package/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  290. package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  291. package/es6/min/persisters/persister-browser/index.js +1 -1
  292. package/es6/min/persisters/persister-browser/index.js.gz +0 -0
  293. package/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  294. package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  295. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  296. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  297. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  298. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  299. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  300. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  301. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  302. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  303. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  304. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  305. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  306. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  307. package/es6/min/persisters/persister-file/index.js +1 -1
  308. package/es6/min/persisters/persister-file/index.js.gz +0 -0
  309. package/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  310. package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  311. package/es6/min/persisters/persister-indexed-db/index.js +1 -1
  312. package/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  313. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  314. package/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  315. package/es6/min/persisters/persister-libsql/index.js +1 -1
  316. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  317. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  318. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  319. package/es6/min/persisters/persister-partykit-client/index.js +1 -1
  320. package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  321. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  322. package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  323. package/es6/min/persisters/persister-pglite/index.js +1 -1
  324. package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  325. package/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  326. package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  327. package/es6/min/persisters/persister-postgres/index.js +1 -1
  328. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  329. package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  330. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  331. package/es6/min/persisters/persister-powersync/index.js +1 -1
  332. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  333. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  334. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  335. package/es6/min/persisters/persister-remote/index.js +1 -1
  336. package/es6/min/persisters/persister-remote/index.js.gz +0 -0
  337. package/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  338. package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  339. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  340. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  341. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  342. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  343. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  344. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  345. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  346. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  347. package/es6/min/persisters/persister-yjs/index.js +1 -1
  348. package/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  349. package/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  350. package/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  351. package/es6/min/persisters/with-schemas/index.js +1 -1
  352. package/es6/min/persisters/with-schemas/index.js.gz +0 -0
  353. package/es6/min/synchronizers/index.js +1 -1
  354. package/es6/min/synchronizers/index.js.gz +0 -0
  355. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  356. package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  357. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  358. package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  359. package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  360. package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  361. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  362. package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  363. package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  364. package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  365. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  366. package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  367. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  368. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  369. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  370. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  371. package/es6/min/synchronizers/with-schemas/index.js +1 -1
  372. package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  373. package/es6/min/ui-react-inspector/index.js +1 -1
  374. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  375. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  376. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  377. package/es6/persisters/index.js +1 -1
  378. package/es6/persisters/persister-automerge/index.js +1 -1
  379. package/es6/persisters/persister-automerge/with-schemas/index.js +1 -1
  380. package/es6/persisters/persister-browser/index.js +1 -1
  381. package/es6/persisters/persister-browser/with-schemas/index.js +1 -1
  382. package/es6/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  383. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  384. package/es6/persisters/persister-electric-sql/index.js +1 -1
  385. package/es6/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  386. package/es6/persisters/persister-expo-sqlite/index.js +1 -1
  387. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  388. package/es6/persisters/persister-file/index.js +1 -1
  389. package/es6/persisters/persister-file/with-schemas/index.js +1 -1
  390. package/es6/persisters/persister-indexed-db/index.js +1 -1
  391. package/es6/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  392. package/es6/persisters/persister-libsql/index.js +1 -1
  393. package/es6/persisters/persister-libsql/with-schemas/index.js +1 -1
  394. package/es6/persisters/persister-partykit-client/index.js +1 -1
  395. package/es6/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  396. package/es6/persisters/persister-pglite/index.js +1 -1
  397. package/es6/persisters/persister-pglite/with-schemas/index.js +1 -1
  398. package/es6/persisters/persister-postgres/index.js +1 -1
  399. package/es6/persisters/persister-postgres/with-schemas/index.js +1 -1
  400. package/es6/persisters/persister-powersync/index.js +1 -1
  401. package/es6/persisters/persister-powersync/with-schemas/index.js +1 -1
  402. package/es6/persisters/persister-remote/index.js +1 -1
  403. package/es6/persisters/persister-remote/with-schemas/index.js +1 -1
  404. package/es6/persisters/persister-sqlite-wasm/index.js +1 -1
  405. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  406. package/es6/persisters/persister-sqlite3/index.js +1 -1
  407. package/es6/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  408. package/es6/persisters/persister-yjs/index.js +1 -1
  409. package/es6/persisters/persister-yjs/with-schemas/index.js +1 -1
  410. package/es6/persisters/with-schemas/index.js +1 -1
  411. package/es6/synchronizers/index.js +51 -42
  412. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +51 -42
  413. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +51 -42
  414. package/es6/synchronizers/synchronizer-local/index.js +51 -42
  415. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +51 -42
  416. package/es6/synchronizers/synchronizer-ws-client/index.js +51 -42
  417. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +51 -42
  418. package/es6/synchronizers/synchronizer-ws-server/index.js +78 -46
  419. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +78 -46
  420. package/es6/synchronizers/with-schemas/index.js +51 -42
  421. package/es6/ui-react-inspector/index.js +1 -1
  422. package/es6/ui-react-inspector/with-schemas/index.js +1 -1
  423. package/min/persisters/index.js +1 -1
  424. package/min/persisters/index.js.gz +0 -0
  425. package/min/persisters/persister-automerge/index.js +1 -1
  426. package/min/persisters/persister-automerge/index.js.gz +0 -0
  427. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  428. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  429. package/min/persisters/persister-browser/index.js +1 -1
  430. package/min/persisters/persister-browser/index.js.gz +0 -0
  431. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  432. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  433. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  434. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  435. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  436. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  437. package/min/persisters/persister-electric-sql/index.js +1 -1
  438. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  439. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  440. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  441. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  442. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  443. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  444. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  445. package/min/persisters/persister-file/index.js +1 -1
  446. package/min/persisters/persister-file/index.js.gz +0 -0
  447. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  448. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  449. package/min/persisters/persister-indexed-db/index.js +1 -1
  450. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  451. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  452. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  453. package/min/persisters/persister-libsql/index.js +1 -1
  454. package/min/persisters/persister-libsql/index.js.gz +0 -0
  455. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  456. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  457. package/min/persisters/persister-partykit-client/index.js +1 -1
  458. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  459. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  460. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  461. package/min/persisters/persister-pglite/index.js +1 -1
  462. package/min/persisters/persister-pglite/index.js.gz +0 -0
  463. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  464. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  465. package/min/persisters/persister-postgres/index.js +1 -1
  466. package/min/persisters/persister-postgres/index.js.gz +0 -0
  467. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  468. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  469. package/min/persisters/persister-powersync/index.js +1 -1
  470. package/min/persisters/persister-powersync/index.js.gz +0 -0
  471. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  472. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  473. package/min/persisters/persister-remote/index.js +1 -1
  474. package/min/persisters/persister-remote/index.js.gz +0 -0
  475. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  476. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  477. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  478. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  479. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  480. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  481. package/min/persisters/persister-sqlite3/index.js +1 -1
  482. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  483. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  484. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  485. package/min/persisters/persister-yjs/index.js +1 -1
  486. package/min/persisters/persister-yjs/index.js.gz +0 -0
  487. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  488. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  489. package/min/persisters/with-schemas/index.js +1 -1
  490. package/min/persisters/with-schemas/index.js.gz +0 -0
  491. package/min/synchronizers/index.js +1 -1
  492. package/min/synchronizers/index.js.gz +0 -0
  493. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  494. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  495. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  496. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  497. package/min/synchronizers/synchronizer-local/index.js +1 -1
  498. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  499. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  500. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  501. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  502. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  503. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  504. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  505. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  506. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  507. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  508. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  509. package/min/synchronizers/with-schemas/index.js +1 -1
  510. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  511. package/min/ui-react-inspector/index.js +1 -1
  512. package/min/ui-react-inspector/index.js.gz +0 -0
  513. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  514. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  515. package/package.json +2 -2
  516. package/persisters/index.js +1 -1
  517. package/persisters/persister-automerge/index.js +1 -1
  518. package/persisters/persister-automerge/with-schemas/index.js +1 -1
  519. package/persisters/persister-browser/index.js +1 -1
  520. package/persisters/persister-browser/with-schemas/index.js +1 -1
  521. package/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  522. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  523. package/persisters/persister-electric-sql/index.js +1 -1
  524. package/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  525. package/persisters/persister-expo-sqlite/index.js +1 -1
  526. package/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  527. package/persisters/persister-file/index.js +1 -1
  528. package/persisters/persister-file/with-schemas/index.js +1 -1
  529. package/persisters/persister-indexed-db/index.js +1 -1
  530. package/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  531. package/persisters/persister-libsql/index.js +1 -1
  532. package/persisters/persister-libsql/with-schemas/index.js +1 -1
  533. package/persisters/persister-partykit-client/index.js +1 -1
  534. package/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  535. package/persisters/persister-pglite/index.js +1 -1
  536. package/persisters/persister-pglite/with-schemas/index.js +1 -1
  537. package/persisters/persister-postgres/index.js +1 -1
  538. package/persisters/persister-postgres/with-schemas/index.js +1 -1
  539. package/persisters/persister-powersync/index.js +1 -1
  540. package/persisters/persister-powersync/with-schemas/index.js +1 -1
  541. package/persisters/persister-remote/index.js +1 -1
  542. package/persisters/persister-remote/with-schemas/index.js +1 -1
  543. package/persisters/persister-sqlite-wasm/index.js +1 -1
  544. package/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  545. package/persisters/persister-sqlite3/index.js +1 -1
  546. package/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  547. package/persisters/persister-yjs/index.js +1 -1
  548. package/persisters/persister-yjs/with-schemas/index.js +1 -1
  549. package/persisters/with-schemas/index.js +1 -1
  550. package/readme.md +13 -13
  551. package/releases.md +23 -23
  552. package/synchronizers/index.js +51 -45
  553. package/synchronizers/synchronizer-broadcast-channel/index.js +51 -45
  554. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +51 -45
  555. package/synchronizers/synchronizer-local/index.js +51 -45
  556. package/synchronizers/synchronizer-local/with-schemas/index.js +51 -45
  557. package/synchronizers/synchronizer-ws-client/index.js +51 -45
  558. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +51 -45
  559. package/synchronizers/synchronizer-ws-server/index.js +78 -49
  560. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +78 -49
  561. package/synchronizers/with-schemas/index.js +51 -45
  562. package/ui-react-inspector/index.js +1 -1
  563. package/ui-react-inspector/with-schemas/index.js +1 -1
  564. package/umd/es6/min/persisters/index.js +1 -1
  565. package/umd/es6/min/persisters/index.js.gz +0 -0
  566. package/umd/es6/min/persisters/persister-automerge/index.js +1 -1
  567. package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  568. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  569. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  570. package/umd/es6/min/persisters/persister-browser/index.js +1 -1
  571. package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
  572. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
  573. package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  574. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  575. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  576. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  577. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  578. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  579. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  580. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  581. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  582. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  583. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  584. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  585. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  586. package/umd/es6/min/persisters/persister-file/index.js +1 -1
  587. package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
  588. package/umd/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
  589. package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  590. package/umd/es6/min/persisters/persister-indexed-db/index.js +1 -1
  591. package/umd/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
  592. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  593. package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  594. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  595. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  596. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  597. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  598. package/umd/es6/min/persisters/persister-partykit-client/index.js +1 -1
  599. package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
  600. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  601. package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  602. package/umd/es6/min/persisters/persister-pglite/index.js +1 -1
  603. package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
  604. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  605. package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  606. package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
  607. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  608. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  609. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  610. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  611. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  612. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  613. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  614. package/umd/es6/min/persisters/persister-remote/index.js +1 -1
  615. package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
  616. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
  617. package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  618. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  619. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  620. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  621. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  622. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  623. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  624. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  625. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  626. package/umd/es6/min/persisters/persister-yjs/index.js +1 -1
  627. package/umd/es6/min/persisters/persister-yjs/index.js.gz +0 -0
  628. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  629. package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  630. package/umd/es6/min/persisters/with-schemas/index.js +1 -1
  631. package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
  632. package/umd/es6/min/synchronizers/index.js +1 -1
  633. package/umd/es6/min/synchronizers/index.js.gz +0 -0
  634. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  635. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  636. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  637. package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  638. package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
  639. package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  640. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  641. package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  642. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  643. package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  644. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  645. package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  646. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  647. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  648. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  649. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  650. package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
  651. package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
  652. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  653. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  654. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  655. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  656. package/umd/es6/persisters/index.js +1 -1
  657. package/umd/es6/persisters/persister-automerge/index.js +1 -1
  658. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +1 -1
  659. package/umd/es6/persisters/persister-browser/index.js +1 -1
  660. package/umd/es6/persisters/persister-browser/with-schemas/index.js +1 -1
  661. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  662. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  663. package/umd/es6/persisters/persister-electric-sql/index.js +1 -1
  664. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  665. package/umd/es6/persisters/persister-expo-sqlite/index.js +1 -1
  666. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  667. package/umd/es6/persisters/persister-file/index.js +1 -1
  668. package/umd/es6/persisters/persister-file/with-schemas/index.js +1 -1
  669. package/umd/es6/persisters/persister-indexed-db/index.js +1 -1
  670. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  671. package/umd/es6/persisters/persister-libsql/index.js +1 -1
  672. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +1 -1
  673. package/umd/es6/persisters/persister-partykit-client/index.js +1 -1
  674. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  675. package/umd/es6/persisters/persister-pglite/index.js +1 -1
  676. package/umd/es6/persisters/persister-pglite/with-schemas/index.js +1 -1
  677. package/umd/es6/persisters/persister-postgres/index.js +1 -1
  678. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +1 -1
  679. package/umd/es6/persisters/persister-powersync/index.js +1 -1
  680. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +1 -1
  681. package/umd/es6/persisters/persister-remote/index.js +1 -1
  682. package/umd/es6/persisters/persister-remote/with-schemas/index.js +1 -1
  683. package/umd/es6/persisters/persister-sqlite-wasm/index.js +1 -1
  684. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  685. package/umd/es6/persisters/persister-sqlite3/index.js +1 -1
  686. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  687. package/umd/es6/persisters/persister-yjs/index.js +1 -1
  688. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +1 -1
  689. package/umd/es6/persisters/with-schemas/index.js +1 -1
  690. package/umd/es6/synchronizers/index.js +51 -44
  691. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +51 -44
  692. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +51 -44
  693. package/umd/es6/synchronizers/synchronizer-local/index.js +51 -44
  694. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +51 -44
  695. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +51 -44
  696. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +51 -44
  697. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +78 -48
  698. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +78 -48
  699. package/umd/es6/synchronizers/with-schemas/index.js +51 -44
  700. package/umd/es6/ui-react-inspector/index.js +1 -1
  701. package/umd/es6/ui-react-inspector/with-schemas/index.js +1 -1
  702. package/umd/min/persisters/index.js +1 -1
  703. package/umd/min/persisters/index.js.gz +0 -0
  704. package/umd/min/persisters/persister-automerge/index.js +1 -1
  705. package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
  706. package/umd/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  707. package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  708. package/umd/min/persisters/persister-browser/index.js +1 -1
  709. package/umd/min/persisters/persister-browser/index.js.gz +0 -0
  710. package/umd/min/persisters/persister-browser/with-schemas/index.js +1 -1
  711. package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  712. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  713. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  714. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  715. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  716. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  717. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  718. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  719. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  720. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  721. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  722. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  723. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  724. package/umd/min/persisters/persister-file/index.js +1 -1
  725. package/umd/min/persisters/persister-file/index.js.gz +0 -0
  726. package/umd/min/persisters/persister-file/with-schemas/index.js +1 -1
  727. package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  728. package/umd/min/persisters/persister-indexed-db/index.js +1 -1
  729. package/umd/min/persisters/persister-indexed-db/index.js.gz +0 -0
  730. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  731. package/umd/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  732. package/umd/min/persisters/persister-libsql/index.js +1 -1
  733. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  734. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  735. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  736. package/umd/min/persisters/persister-partykit-client/index.js +1 -1
  737. package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
  738. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  739. package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  740. package/umd/min/persisters/persister-pglite/index.js +1 -1
  741. package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
  742. package/umd/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  743. package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  744. package/umd/min/persisters/persister-postgres/index.js +1 -1
  745. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  746. package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  747. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  748. package/umd/min/persisters/persister-powersync/index.js +1 -1
  749. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  750. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  751. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  752. package/umd/min/persisters/persister-remote/index.js +1 -1
  753. package/umd/min/persisters/persister-remote/index.js.gz +0 -0
  754. package/umd/min/persisters/persister-remote/with-schemas/index.js +1 -1
  755. package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  756. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  757. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  758. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  759. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  760. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  761. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  762. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  763. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  764. package/umd/min/persisters/persister-yjs/index.js +1 -1
  765. package/umd/min/persisters/persister-yjs/index.js.gz +0 -0
  766. package/umd/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  767. package/umd/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  768. package/umd/min/persisters/with-schemas/index.js +1 -1
  769. package/umd/min/persisters/with-schemas/index.js.gz +0 -0
  770. package/umd/min/synchronizers/index.js +1 -1
  771. package/umd/min/synchronizers/index.js.gz +0 -0
  772. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  773. package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  774. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  775. package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  776. package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
  777. package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  778. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  779. package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  780. package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  781. package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  782. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  783. package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  784. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  785. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  786. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  787. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  788. package/umd/min/synchronizers/with-schemas/index.js +1 -1
  789. package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
  790. package/umd/min/ui-react-inspector/index.js +1 -1
  791. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  792. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  793. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  794. package/umd/persisters/index.js +1 -1
  795. package/umd/persisters/persister-automerge/index.js +1 -1
  796. package/umd/persisters/persister-automerge/with-schemas/index.js +1 -1
  797. package/umd/persisters/persister-browser/index.js +1 -1
  798. package/umd/persisters/persister-browser/with-schemas/index.js +1 -1
  799. package/umd/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  800. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  801. package/umd/persisters/persister-electric-sql/index.js +1 -1
  802. package/umd/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  803. package/umd/persisters/persister-expo-sqlite/index.js +1 -1
  804. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  805. package/umd/persisters/persister-file/index.js +1 -1
  806. package/umd/persisters/persister-file/with-schemas/index.js +1 -1
  807. package/umd/persisters/persister-indexed-db/index.js +1 -1
  808. package/umd/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  809. package/umd/persisters/persister-libsql/index.js +1 -1
  810. package/umd/persisters/persister-libsql/with-schemas/index.js +1 -1
  811. package/umd/persisters/persister-partykit-client/index.js +1 -1
  812. package/umd/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  813. package/umd/persisters/persister-pglite/index.js +1 -1
  814. package/umd/persisters/persister-pglite/with-schemas/index.js +1 -1
  815. package/umd/persisters/persister-postgres/index.js +1 -1
  816. package/umd/persisters/persister-postgres/with-schemas/index.js +1 -1
  817. package/umd/persisters/persister-powersync/index.js +1 -1
  818. package/umd/persisters/persister-powersync/with-schemas/index.js +1 -1
  819. package/umd/persisters/persister-remote/index.js +1 -1
  820. package/umd/persisters/persister-remote/with-schemas/index.js +1 -1
  821. package/umd/persisters/persister-sqlite-wasm/index.js +1 -1
  822. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  823. package/umd/persisters/persister-sqlite3/index.js +1 -1
  824. package/umd/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  825. package/umd/persisters/persister-yjs/index.js +1 -1
  826. package/umd/persisters/persister-yjs/with-schemas/index.js +1 -1
  827. package/umd/persisters/with-schemas/index.js +1 -1
  828. package/umd/synchronizers/index.js +52 -45
  829. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +52 -45
  830. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +52 -45
  831. package/umd/synchronizers/synchronizer-local/index.js +52 -45
  832. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +52 -45
  833. package/umd/synchronizers/synchronizer-ws-client/index.js +52 -45
  834. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +52 -45
  835. package/umd/synchronizers/synchronizer-ws-server/index.js +79 -49
  836. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +79 -49
  837. package/umd/synchronizers/with-schemas/index.js +52 -45
  838. package/umd/ui-react-inspector/index.js +1 -1
  839. package/umd/ui-react-inspector/with-schemas/index.js +1 -1
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=Promise,r=e=>null==e,u=(e,n,t)=>r(e)?null==t?void 0:t():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==s(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",P="WHERE",O="TABLE",C="ALTER "+O,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,I=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),l),S=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},w=e=>r(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,t])=>n(t,e))),H=e=>U.values(e),W=e=>s(G(e)),k=e=>(e=>!r(e)&&u(F(e),(e=>e==U.prototype||r(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var t;return p([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},Z=(e,n,t)=>r(t)?(D(e,n),e):null==e?void 0:e.set(n,t),ee=(e,n,t,l)=>(S(e,n)?null==l||l(V(e,n)):Z(e,n,t()),V(e,n)),ne=(e,n,t,l,o=0)=>u((t?ee:V)(e,n[o],o>s(n)-2?t:K),(i=>{if(o>s(n)-2)return(null==l?void 0:l(i))&&Z(e,n[o]),i;const r=ne(i,n,t,l,o+1);return w(i)&&Z(e,n[o]),r})),te=e=>new Set(a(e)||r(e)?e:[e]),le=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var ie=Object.defineProperty,re=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,t)=>n in e?ie(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,ce=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const se=K(),ve=K(),ye=(e,n,t,l,o,i,d,c={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(se,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[P,O,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,I,S]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?A(e):null)?l:""+n++},n=>{oe.test(n)&&s(e)<1e3&&R(e,n)}]})(),l=K();return[(t,o,i,r=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(l,d,[t,o,i,r,u]),le(ne(o,null!=i?i:[""],te),d),d},(n,t,...o)=>E(((e,n=[""])=>{const t=[],l=(e,o)=>o==s(n)?R(t,e):null===n[o]?x(e,(e=>l(e,o+1))):E([n[o],null],(n=>l(V(e,n),o+1)));return l(e,0),t})(n,t),(n=>x(n,(n=>V(l,n)[0](e,...null!=t?t:[],...o))))),e=>u(V(l,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),w(n)?1:0))),Z(l,e),t(e),o))),n=>u(V(l,n),(([n,,t=[],l,o])=>{const i=(...u)=>{var d,a;const c=s(u);c==s(t)?n(e,...u,...o(u)):r(t[c])?E(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>i(...u,e))):i(...u,t[c])};i()}))]})(),_=e=>{e!=T&&(T=e,I(g,void 0,T))},U=n=>{(P&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>ce(void 0,null,(function*(){return 2!=T&&(_(1),m++,yield X((()=>ce(void 0,null,(function*(){try{const t=yield n();a(t)?U(t):e?L(e):y("Content is not an array "+t)}catch(n){null==i||i(n),e&&L(e)}_(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>ce(void 0,null,(function*(){return 1!=T&&(_(2),N++,yield X((()=>ce(void 0,null,(function*(){try{yield t(O,e)}catch(e){null==i||i(e)}_(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>ce(void 0,null,(function*(){return R(V(ve,v),...e),yield ce(void 0,null,(function*(){if(!V(se,v)){for(Z(se,v,1);!r(f=A(V(ve,v)));)try{yield f()}catch(e){null==i||i(e)}Z(se,v,0)}})),Y})),Y=((e,n)=>{for(var t in n||(n={}))ue.call(n,t)&&ae(e,t,n[t]);if(re)for(var t of re(n))de.call(n,t)&&ae(e,t,n[t]);return e})({load:F,startAutoLoad:e=>ce(void 0,null,(function*(){yield M().load(e);try{p=yield l(((e,n)=>ce(void 0,null,(function*(){n||e?2!=T&&(_(1),m++,U(null!=n?n:e),_(0)):yield F()}))))}catch(e){null==i||i(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!r(p),save:G,startAutoSave:()=>ce(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!r(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(S(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},c);return j(Y)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const fe=(e,n,t,o,i,u=pe,d,a)=>{const c=K();return[()=>Ee(void 0,null,(function*(){c.clear(),p(yield t(e,n),(({tn:e,cn:n})=>le(ee(c,e,te),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>S(V(c,e),n))(n,t)?B(T(p(yield e(L+$(n)),(e=>{return[e[t],a?(n=Y(e,t),l=a,B(q(n,((e,n)=>[n,l(e,n)])))):Y(e,t)];var n,l})),(([e,n])=>!r(e)&&!k(n)))):{}})),(n,t,o,a,s,y=!1)=>Ee(void 0,null,(function*(){const E=te();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>le(E,e)))));const A=_(E);if(!y&&s&&h(A)&&S(c,n))return yield e("DROP "+O+$(n)),void Z(c,n);const m=V(c,n),N=te(_(m));if(h(A)||(S(c,n)?yield v(p([t,...A],((l,o)=>Ee(void 0,null,(function*(){D(N,l)||(yield e(C+$(n)+"ADD"+$(l)+i),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(t)})`)),le(m,l))}))))):(yield e("CREATE "+O+$(n)+`(${$(t)}${i} PRIMARY KEY${f(p(A,(e=>l+$(e)+i)))});`),Z(c,n,te([t,...A])))),yield v([...!y&&a?p(_(N),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e(C+$(n)+"DROP"+$(l)),D(m,l))})))):[]]),y)r(o)?yield e(b+$(n)+P+" true"):yield v(q(o,((l,o)=>Ee(void 0,null,(function*(){r(l)?yield e(b+$(n)+P+$(t)+"=$1",[o]):h(A)||(yield u(e,n,t,G(l),{[o]:d?p(H(l),d):H(l)},m))})))));else if(h(A))S(c,n)&&(yield e(b+$(n)+P+" true"));else{const l=T(_(V(c,n)),(e=>e!=t)),i={},r=[];q(null!=o?o:{},((e,n)=>{i[n]=p(l,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(r,n)})),yield u(e,n,t,l,i),yield e(b+$(n)+P+$(t)+`NOT IN(${I(r)})`,r)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==o||o(e)}return yield e("END"),t}))]},pe=(e,n,t,o,i)=>Ee(void 0,null,(function*(){const r=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),l))(t,...o)+")VALUES"+f(q(i,(e=>"($"+r[0]+++","+I(e,r)+")")),l)+"ON CONFLICT("+$(t)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),l),q(i,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Te=(e,n,t,l,o,i,r,[u,d,a],c,s,v,y,E,f)=>{const[p,h,T,R]=fe(n,c,s,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,t;return yield p(),t=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,t;yield p(),yield T(u,d,{[m]:{[a]:(t=null!=(n=e())?n:null,z(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,r,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),i(),A)},v);return A};var Re=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,i,u,[d,a,[c,s,y]],E,f,p,h,R,A,g,P)=>{const[O,C,b,L]=fe(n,E,f,o,R,A,g,P),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((t,l)=>Re(void 0,[t,l],(function*([t,l,o,i],r){n&&!(r in e)||(yield b(t,l,e[r],o,i,n))})))))})),I=(e,n)=>Re(void 0,null,(function*(){return s?yield b(y,N,{[m]:e},!0,!0,n):null})),S=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield O();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],t){return[e,yield C(t,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return c?(yield C(y,N))[m]:{}}));return k(e)&&r(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield O(),r(n)){const[n,t]=e();yield $(n),yield I(t)}else yield $(n[0],!0),yield I(n[1],!0)}))))}))),t,l,o,u,{[h]:()=>p,destroy:()=>(S.stopAutoLoad().stopAutoSave(),i(),S)},p);return S},me="ColumnName",Ne="store",ge="json",Pe=Ne+"TableName",Oe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Ie="tableName",Se="deleteEmptyColumns",we="deleteEmptyTable",_e={mode:ge,[be]:1},xe={load:0,save:0,[Ie]:t+"_values"},De=(e,n,t,l,o)=>{const i=K();return q(e,((e,u)=>{const a=c(H(X(n,d(e)?{[t]:e}:e)),0,W(n));r(a[0])||l(u,a[0])||(o(u,a[0]),Z(i,u,a))})),i};var Ue=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Fe=t,Me=/^([cd]:)(.+)/,Ge=t+"_data",je=t+"_table";var Be=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));e.createPglitePersister=(e,n,l,o,i)=>Be(void 0,null,(function*(){return((e,n,l,o,i,r,a,s,y,E,f="getDb")=>{const h=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},l=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);i((o=o.apply(void 0,null)).next())}));var o}:e)(l,r),[T,,R,A]=(e=>{var n,l,o;const i=(e=>X(_e,d(e)?{[Pe]:e}:null!=e?e:{}))(e),r=i[be];if(i.mode==ge){const e=null!=(n=i[Pe])?n:t;return[1,r,[e,null!=(l=i[Oe])?l:N,null!=(o=i[Ce])?o:Ne],te(e)]}const{tables:{load:u={},save:a={}}={},values:s={}}=i,v=c(H(X(xe,s)),0,W(xe)),y=v[2],E=te(y),f=te(y);return[0,r,[De(u,{[$e]:null,[Le]:N},$e,(e=>S(f,e)),(e=>le(E,e))),De(a,{[Ie]:null,[Le]:N,[Se]:0,[we]:0},Ie,((e,n)=>S(f,n)),((e,n)=>le(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(_(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((t=n,l=Me,null==t?void 0:t.match(l)),(n=>Ue(void 0,[n],(function*([,n,t]){S(A,t)&&("c:"==n&&(yield m(t)),e())}))));var t,l}))))}))),i,a,s,y,R,_(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${P} table_schema='public'AND table_name IN(${I(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,l,((e,...t)=>Be(void 0,[e,...t],(function*(e,t=[]){return(yield n.query(e,t)).rows}))),((e,t)=>Be(void 0,null,(function*(){return yield n.listen(e,t)}))),(e=>Be(void 0,null,(function*(){try{yield e()}catch(e){null==i||i(e)}}))),o,i,(()=>0),3,n,"getPglite")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPglite={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=Promise,r=e=>null==e,u=(e,n,t)=>r(e)?null==t?void 0:t():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==s(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",P="WHERE",O="TABLE",C="ALTER "+O,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,I=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),l),S=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},w=e=>r(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,t])=>n(t,e))),H=e=>U.values(e),W=e=>s(G(e)),k=e=>(e=>!r(e)&&u(F(e),(e=>e==U.prototype||r(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var t;return p([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},Z=(e,n,t)=>r(t)?(D(e,n),e):null==e?void 0:e.set(n,t),ee=(e,n,t,l)=>(S(e,n)?null==l||l(V(e,n)):Z(e,n,t()),V(e,n)),ne=(e,n,t,l,o=0)=>u((t?ee:V)(e,n[o],o>s(n)-2?t:K),(i=>{if(o>s(n)-2)return(null==l?void 0:l(i))&&Z(e,n[o]),i;const r=ne(i,n,t,l,o+1);return w(i)&&Z(e,n[o]),r})),te=e=>new Set(a(e)||r(e)?e:[e]),le=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var ie=Object.defineProperty,re=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,t)=>n in e?ie(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,ce=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const se=K(),ve=K(),ye=(e,n,t,l,o,i,d,c={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(se,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[P,O,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,I,S]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?A(e):null)?l:""+n++},n=>{oe.test(n)&&s(e)<1e3&&R(e,n)}]})(),l=K();return[(t,o,i,r=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(l,d,[t,o,i,r,u]),le(ne(o,null!=i?i:[""],te),d),d},(n,t,...o)=>E(((e,n=[""])=>{const t=[],l=(e,o)=>o==s(n)?R(t,e):null===n[o]?x(e,(e=>l(e,o+1))):E([n[o],null],(n=>l(V(e,n),o+1)));return l(e,0),t})(n,t),(n=>x(n,(n=>V(l,n)[0](e,...null!=t?t:[],...o))))),e=>u(V(l,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),w(n)?1:0))),Z(l,e),t(e),o))),n=>u(V(l,n),(([n,,t=[],l,o])=>{const i=(...u)=>{var d,a;const c=s(u);c==s(t)?n(e,...u,...o(u)):r(t[c])?E(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>i(...u,e))):i(...u,t[c])};i()}))]})(),_=e=>{e!=T&&(T=e,I(g,void 0,T))},U=n=>{(P&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>ce(void 0,null,(function*(){return 2!=T&&(_(1),m++,yield X((()=>ce(void 0,null,(function*(){try{const t=yield n();a(t)?U(t):e?L(e):y("Content is not an array: "+t)}catch(n){null==i||i(n),e&&L(e)}_(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>ce(void 0,null,(function*(){return 1!=T&&(_(2),N++,yield X((()=>ce(void 0,null,(function*(){try{yield t(O,e)}catch(e){null==i||i(e)}_(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>ce(void 0,null,(function*(){return R(V(ve,v),...e),yield ce(void 0,null,(function*(){if(!V(se,v)){for(Z(se,v,1);!r(f=A(V(ve,v)));)try{yield f()}catch(e){null==i||i(e)}Z(se,v,0)}})),Y})),Y=((e,n)=>{for(var t in n||(n={}))ue.call(n,t)&&ae(e,t,n[t]);if(re)for(var t of re(n))de.call(n,t)&&ae(e,t,n[t]);return e})({load:F,startAutoLoad:e=>ce(void 0,null,(function*(){yield M().load(e);try{p=yield l(((e,n)=>ce(void 0,null,(function*(){n||e?2!=T&&(_(1),m++,U(null!=n?n:e),_(0)):yield F()}))))}catch(e){null==i||i(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!r(p),save:G,startAutoSave:()=>ce(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!r(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(S(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},c);return j(Y)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const fe=(e,n,t,o,i,u=pe,d,a)=>{const c=K();return[()=>Ee(void 0,null,(function*(){c.clear(),p(yield t(e,n),(({tn:e,cn:n})=>le(ee(c,e,te),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>S(V(c,e),n))(n,t)?B(T(p(yield e(L+$(n)),(e=>{return[e[t],a?(n=Y(e,t),l=a,B(q(n,((e,n)=>[n,l(e,n)])))):Y(e,t)];var n,l})),(([e,n])=>!r(e)&&!k(n)))):{}})),(n,t,o,a,s,y=!1)=>Ee(void 0,null,(function*(){const E=te();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>le(E,e)))));const A=_(E);if(!y&&s&&h(A)&&S(c,n))return yield e("DROP "+O+$(n)),void Z(c,n);const m=V(c,n),N=te(_(m));if(h(A)||(S(c,n)?yield v(p([t,...A],((l,o)=>Ee(void 0,null,(function*(){D(N,l)||(yield e(C+$(n)+"ADD"+$(l)+i),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(t)})`)),le(m,l))}))))):(yield e("CREATE "+O+$(n)+`(${$(t)}${i} PRIMARY KEY${f(p(A,(e=>l+$(e)+i)))});`),Z(c,n,te([t,...A])))),yield v([...!y&&a?p(_(N),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e(C+$(n)+"DROP"+$(l)),D(m,l))})))):[]]),y)r(o)?yield e(b+$(n)+P+" true"):yield v(q(o,((l,o)=>Ee(void 0,null,(function*(){r(l)?yield e(b+$(n)+P+$(t)+"=$1",[o]):h(A)||(yield u(e,n,t,G(l),{[o]:d?p(H(l),d):H(l)},m))})))));else if(h(A))S(c,n)&&(yield e(b+$(n)+P+" true"));else{const l=T(_(V(c,n)),(e=>e!=t)),i={},r=[];q(null!=o?o:{},((e,n)=>{i[n]=p(l,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(r,n)})),yield u(e,n,t,l,i),yield e(b+$(n)+P+$(t)+`NOT IN(${I(r)})`,r)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==o||o(e)}return yield e("END"),t}))]},pe=(e,n,t,o,i)=>Ee(void 0,null,(function*(){const r=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),l))(t,...o)+")VALUES"+f(q(i,(e=>"($"+r[0]+++","+I(e,r)+")")),l)+"ON CONFLICT("+$(t)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),l),q(i,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Te=(e,n,t,l,o,i,r,[u,d,a],c,s,v,y,E,f)=>{const[p,h,T,R]=fe(n,c,s,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,t;return yield p(),t=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,t;yield p(),yield T(u,d,{[m]:{[a]:(t=null!=(n=e())?n:null,z(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,r,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),i(),A)},v);return A};var Re=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,i,u,[d,a,[c,s,y]],E,f,p,h,R,A,g,P)=>{const[O,C,b,L]=fe(n,E,f,o,R,A,g,P),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((t,l)=>Re(void 0,[t,l],(function*([t,l,o,i],r){n&&!(r in e)||(yield b(t,l,e[r],o,i,n))})))))})),I=(e,n)=>Re(void 0,null,(function*(){return s?yield b(y,N,{[m]:e},!0,!0,n):null})),S=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield O();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],t){return[e,yield C(t,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return c?(yield C(y,N))[m]:{}}));return k(e)&&r(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield O(),r(n)){const[n,t]=e();yield $(n),yield I(t)}else yield $(n[0],!0),yield I(n[1],!0)}))))}))),t,l,o,u,{[h]:()=>p,destroy:()=>(S.stopAutoLoad().stopAutoSave(),i(),S)},p);return S},me="ColumnName",Ne="store",ge="json",Pe=Ne+"TableName",Oe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Ie="tableName",Se="deleteEmptyColumns",we="deleteEmptyTable",_e={mode:ge,[be]:1},xe={load:0,save:0,[Ie]:t+"_values"},De=(e,n,t,l,o)=>{const i=K();return q(e,((e,u)=>{const a=c(H(X(n,d(e)?{[t]:e}:e)),0,W(n));r(a[0])||l(u,a[0])||(o(u,a[0]),Z(i,u,a))})),i};var Ue=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Fe=t,Me=/^([cd]:)(.+)/,Ge=t+"_data",je=t+"_table";var Be=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));e.createPglitePersister=(e,n,l,o,i)=>Be(void 0,null,(function*(){return((e,n,l,o,i,r,a,s,y,E,f="getDb")=>{const h=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},l=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);i((o=o.apply(void 0,null)).next())}));var o}:e)(l,r),[T,,R,A]=(e=>{var n,l,o;const i=(e=>X(_e,d(e)?{[Pe]:e}:null!=e?e:{}))(e),r=i[be];if(i.mode==ge){const e=null!=(n=i[Pe])?n:t;return[1,r,[e,null!=(l=i[Oe])?l:N,null!=(o=i[Ce])?o:Ne],te(e)]}const{tables:{load:u={},save:a={}}={},values:s={}}=i,v=c(H(X(xe,s)),0,W(xe)),y=v[2],E=te(y),f=te(y);return[0,r,[De(u,{[$e]:null,[Le]:N},$e,(e=>S(f,e)),(e=>le(E,e))),De(a,{[Ie]:null,[Le]:N,[Se]:0,[we]:0},Ie,((e,n)=>S(f,n)),((e,n)=>le(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(_(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((t=n,l=Me,null==t?void 0:t.match(l)),(n=>Ue(void 0,[n],(function*([,n,t]){S(A,t)&&("c:"==n&&(yield m(t)),e())}))));var t,l}))))}))),i,a,s,y,R,_(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${P} table_schema='public'AND table_name IN(${I(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,l,((e,...t)=>Be(void 0,[e,...t],(function*(e,t=[]){return(yield n.query(e,t)).rows}))),((e,t)=>Be(void 0,null,(function*(){return yield n.listen(e,t)}))),(e=>Be(void 0,null,(function*(){try{yield e()}catch(e){null==i||i(e)}}))),o,i,(()=>0),3,n,"getPglite")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPglite={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=Promise,r=e=>null==e,u=(e,n,t)=>r(e)?null==t?void 0:t():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==s(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",P="WHERE",O="TABLE",C="ALTER "+O,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,I=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),l),S=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},w=e=>r(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,t])=>n(t,e))),H=e=>U.values(e),W=e=>s(G(e)),k=e=>(e=>!r(e)&&u(F(e),(e=>e==U.prototype||r(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var t;return p([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},Z=(e,n,t)=>r(t)?(D(e,n),e):null==e?void 0:e.set(n,t),ee=(e,n,t,l)=>(S(e,n)?null==l||l(V(e,n)):Z(e,n,t()),V(e,n)),ne=(e,n,t,l,o=0)=>u((t?ee:V)(e,n[o],o>s(n)-2?t:K),(i=>{if(o>s(n)-2)return(null==l?void 0:l(i))&&Z(e,n[o]),i;const r=ne(i,n,t,l,o+1);return w(i)&&Z(e,n[o]),r})),te=e=>new Set(a(e)||r(e)?e:[e]),le=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var ie=Object.defineProperty,re=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,t)=>n in e?ie(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,ce=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const se=K(),ve=K(),ye=(e,n,t,l,o,i,d,c={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(se,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[P,O,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,I,S]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?A(e):null)?l:""+n++},n=>{oe.test(n)&&s(e)<1e3&&R(e,n)}]})(),l=K();return[(t,o,i,r=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(l,d,[t,o,i,r,u]),le(ne(o,null!=i?i:[""],te),d),d},(n,t,...o)=>E(((e,n=[""])=>{const t=[],l=(e,o)=>o==s(n)?R(t,e):null===n[o]?x(e,(e=>l(e,o+1))):E([n[o],null],(n=>l(V(e,n),o+1)));return l(e,0),t})(n,t),(n=>x(n,(n=>V(l,n)[0](e,...null!=t?t:[],...o))))),e=>u(V(l,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),w(n)?1:0))),Z(l,e),t(e),o))),n=>u(V(l,n),(([n,,t=[],l,o])=>{const i=(...u)=>{var d,a;const c=s(u);c==s(t)?n(e,...u,...o(u)):r(t[c])?E(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>i(...u,e))):i(...u,t[c])};i()}))]})(),_=e=>{e!=T&&(T=e,I(g,void 0,T))},U=n=>{(P&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>ce(void 0,null,(function*(){return 2!=T&&(_(1),m++,yield X((()=>ce(void 0,null,(function*(){try{const t=yield n();a(t)?U(t):e?L(e):y("Content is not an array "+t)}catch(n){null==i||i(n),e&&L(e)}_(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>ce(void 0,null,(function*(){return 1!=T&&(_(2),N++,yield X((()=>ce(void 0,null,(function*(){try{yield t(O,e)}catch(e){null==i||i(e)}_(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>ce(void 0,null,(function*(){return R(V(ve,v),...e),yield ce(void 0,null,(function*(){if(!V(se,v)){for(Z(se,v,1);!r(f=A(V(ve,v)));)try{yield f()}catch(e){null==i||i(e)}Z(se,v,0)}})),Y})),Y=((e,n)=>{for(var t in n||(n={}))ue.call(n,t)&&ae(e,t,n[t]);if(re)for(var t of re(n))de.call(n,t)&&ae(e,t,n[t]);return e})({load:F,startAutoLoad:e=>ce(void 0,null,(function*(){yield M().load(e);try{p=yield l(((e,n)=>ce(void 0,null,(function*(){n||e?2!=T&&(_(1),m++,U(null!=n?n:e),_(0)):yield F()}))))}catch(e){null==i||i(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!r(p),save:G,startAutoSave:()=>ce(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!r(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(S(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},c);return j(Y)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const fe=(e,n,t,o,i,u=pe,d,a)=>{const c=K();return[()=>Ee(void 0,null,(function*(){c.clear(),p(yield t(e,n),(({tn:e,cn:n})=>le(ee(c,e,te),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>S(V(c,e),n))(n,t)?B(T(p(yield e(L+$(n)),(e=>{return[e[t],a?(n=Y(e,t),l=a,B(q(n,((e,n)=>[n,l(e,n)])))):Y(e,t)];var n,l})),(([e,n])=>!r(e)&&!k(n)))):{}})),(n,t,o,a,s,y=!1)=>Ee(void 0,null,(function*(){const E=te();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>le(E,e)))));const A=_(E);if(!y&&s&&h(A)&&S(c,n))return yield e("DROP "+O+$(n)),void Z(c,n);const m=V(c,n),N=te(_(m));if(h(A)||(S(c,n)?yield v(p([t,...A],((l,o)=>Ee(void 0,null,(function*(){D(N,l)||(yield e(C+$(n)+"ADD"+$(l)+i),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(t)})`)),le(m,l))}))))):(yield e("CREATE "+O+$(n)+`(${$(t)}${i} PRIMARY KEY${f(p(A,(e=>l+$(e)+i)))});`),Z(c,n,te([t,...A])))),yield v([...!y&&a?p(_(N),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e(C+$(n)+"DROP"+$(l)),D(m,l))})))):[]]),y)r(o)?yield e(b+$(n)+P+" true"):yield v(q(o,((l,o)=>Ee(void 0,null,(function*(){r(l)?yield e(b+$(n)+P+$(t)+"=$1",[o]):h(A)||(yield u(e,n,t,G(l),{[o]:d?p(H(l),d):H(l)},m))})))));else if(h(A))S(c,n)&&(yield e(b+$(n)+P+" true"));else{const l=T(_(V(c,n)),(e=>e!=t)),i={},r=[];q(null!=o?o:{},((e,n)=>{i[n]=p(l,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(r,n)})),yield u(e,n,t,l,i),yield e(b+$(n)+P+$(t)+`NOT IN(${I(r)})`,r)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==o||o(e)}return yield e("END"),t}))]},pe=(e,n,t,o,i)=>Ee(void 0,null,(function*(){const r=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),l))(t,...o)+")VALUES"+f(q(i,(e=>"($"+r[0]+++","+I(e,r)+")")),l)+"ON CONFLICT("+$(t)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),l),q(i,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Te=(e,n,t,l,o,i,r,[u,d,a],c,s,v,y,E,f)=>{const[p,h,T,R]=fe(n,c,s,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,t;return yield p(),t=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,t;yield p(),yield T(u,d,{[m]:{[a]:(t=null!=(n=e())?n:null,z(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,r,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),i(),A)},v);return A};var Re=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,i,u,[d,a,[c,s,y]],E,f,p,h,R,A,g,P)=>{const[O,C,b,L]=fe(n,E,f,o,R,A,g,P),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((t,l)=>Re(void 0,[t,l],(function*([t,l,o,i],r){n&&!(r in e)||(yield b(t,l,e[r],o,i,n))})))))})),I=(e,n)=>Re(void 0,null,(function*(){return s?yield b(y,N,{[m]:e},!0,!0,n):null})),S=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield O();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],t){return[e,yield C(t,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return c?(yield C(y,N))[m]:{}}));return k(e)&&r(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield O(),r(n)){const[n,t]=e();yield $(n),yield I(t)}else yield $(n[0],!0),yield I(n[1],!0)}))))}))),t,l,o,u,{[h]:()=>p,destroy:()=>(S.stopAutoLoad().stopAutoSave(),i(),S)},p);return S},me="ColumnName",Ne="store",ge="json",Pe=Ne+"TableName",Oe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Ie="tableName",Se="deleteEmptyColumns",we="deleteEmptyTable",_e={mode:ge,[be]:1},xe={load:0,save:0,[Ie]:t+"_values"},De=(e,n,t,l,o)=>{const i=K();return q(e,((e,u)=>{const a=c(H(X(n,d(e)?{[t]:e}:e)),0,W(n));r(a[0])||l(u,a[0])||(o(u,a[0]),Z(i,u,a))})),i};var Ue=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Fe=t,Me=/^([cd]:)(.+)/,Ge=t+"_data",je=t+"_table";var Be=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));e.createPglitePersister=(e,n,l,o,i)=>Be(void 0,null,(function*(){return((e,n,l,o,i,r,a,s,y,E,f="getDb")=>{const h=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},l=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);i((o=o.apply(void 0,null)).next())}));var o}:e)(l,r),[T,,R,A]=(e=>{var n,l,o;const i=(e=>X(_e,d(e)?{[Pe]:e}:null!=e?e:{}))(e),r=i[be];if(i.mode==ge){const e=null!=(n=i[Pe])?n:t;return[1,r,[e,null!=(l=i[Oe])?l:N,null!=(o=i[Ce])?o:Ne],te(e)]}const{tables:{load:u={},save:a={}}={},values:s={}}=i,v=c(H(X(xe,s)),0,W(xe)),y=v[2],E=te(y),f=te(y);return[0,r,[De(u,{[$e]:null,[Le]:N},$e,(e=>S(f,e)),(e=>le(E,e))),De(a,{[Ie]:null,[Le]:N,[Se]:0,[we]:0},Ie,((e,n)=>S(f,n)),((e,n)=>le(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(_(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((t=n,l=Me,null==t?void 0:t.match(l)),(n=>Ue(void 0,[n],(function*([,n,t]){S(A,t)&&("c:"==n&&(yield m(t)),e())}))));var t,l}))))}))),i,a,s,y,R,_(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${P} table_schema='public'AND table_name IN(${I(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,l,((e,...t)=>Be(void 0,[e,...t],(function*(e,t=[]){return(yield n.query(e,t)).rows}))),((e,t)=>Be(void 0,null,(function*(){return yield n.listen(e,t)}))),(e=>Be(void 0,null,(function*(){try{yield e()}catch(e){null==i||i(e)}}))),o,i,(()=>0),3,n,"getPglite")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPglite={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),i=Promise,r=e=>null==e,u=(e,n,t)=>r(e)?null==t?void 0:t():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{i(n.next(e))}catch(e){t(e)}},o=e=>{try{i(n.throw(e))}catch(e){t(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);i((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==s(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",P="WHERE",O="TABLE",C="ALTER "+O,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,I=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),l),S=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},w=e=>r(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,t])=>n(t,e))),H=e=>U.values(e),W=e=>s(G(e)),k=e=>(e=>!r(e)&&u(F(e),(e=>e==U.prototype||r(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var t;return p([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},Z=(e,n,t)=>r(t)?(D(e,n),e):null==e?void 0:e.set(n,t),ee=(e,n,t,l)=>(S(e,n)?null==l||l(V(e,n)):Z(e,n,t()),V(e,n)),ne=(e,n,t,l,o=0)=>u((t?ee:V)(e,n[o],o>s(n)-2?t:K),(i=>{if(o>s(n)-2)return(null==l?void 0:l(i))&&Z(e,n[o]),i;const r=ne(i,n,t,l,o+1);return w(i)&&Z(e,n[o]),r})),te=e=>new Set(a(e)||r(e)?e:[e]),le=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var ie=Object.defineProperty,re=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,t)=>n in e?ie(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,ce=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const se=K(),ve=K(),ye=(e,n,t,l,o,i,d,c={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(se,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[P,O,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,I,S]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var l;return null!=(l=t?A(e):null)?l:""+n++},n=>{oe.test(n)&&s(e)<1e3&&R(e,n)}]})(),l=K();return[(t,o,i,r=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(l,d,[t,o,i,r,u]),le(ne(o,null!=i?i:[""],te),d),d},(n,t,...o)=>E(((e,n=[""])=>{const t=[],l=(e,o)=>o==s(n)?R(t,e):null===n[o]?x(e,(e=>l(e,o+1))):E([n[o],null],(n=>l(V(e,n),o+1)));return l(e,0),t})(n,t),(n=>x(n,(n=>V(l,n)[0](e,...null!=t?t:[],...o))))),e=>u(V(l,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),w(n)?1:0))),Z(l,e),t(e),o))),n=>u(V(l,n),(([n,,t=[],l,o])=>{const i=(...u)=>{var d,a;const c=s(u);c==s(t)?n(e,...u,...o(u)):r(t[c])?E(null!=(a=null==(d=l[c])?void 0:d.call(l,...u))?a:[],(e=>i(...u,e))):i(...u,t[c])};i()}))]})(),_=e=>{e!=T&&(T=e,I(g,void 0,T))},U=n=>{(P&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>ce(void 0,null,(function*(){return 2!=T&&(_(1),m++,yield X((()=>ce(void 0,null,(function*(){try{const t=yield n();a(t)?U(t):e?L(e):y("Content is not an array: "+t)}catch(n){null==i||i(n),e&&L(e)}_(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>ce(void 0,null,(function*(){return 1!=T&&(_(2),N++,yield X((()=>ce(void 0,null,(function*(){try{yield t(O,e)}catch(e){null==i||i(e)}_(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>ce(void 0,null,(function*(){return R(V(ve,v),...e),yield ce(void 0,null,(function*(){if(!V(se,v)){for(Z(se,v,1);!r(f=A(V(ve,v)));)try{yield f()}catch(e){null==i||i(e)}Z(se,v,0)}})),Y})),Y=((e,n)=>{for(var t in n||(n={}))ue.call(n,t)&&ae(e,t,n[t]);if(re)for(var t of re(n))de.call(n,t)&&ae(e,t,n[t]);return e})({load:F,startAutoLoad:e=>ce(void 0,null,(function*(){yield M().load(e);try{p=yield l(((e,n)=>ce(void 0,null,(function*(){n||e?2!=T&&(_(1),m++,U(null!=n?n:e),_(0)):yield F()}))))}catch(e){null==i||i(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!r(p),save:G,startAutoSave:()=>ce(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!r(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(S(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},c);return j(Y)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const fe=(e,n,t,o,i,u=pe,d,a)=>{const c=K();return[()=>Ee(void 0,null,(function*(){c.clear(),p(yield t(e,n),(({tn:e,cn:n})=>le(ee(c,e,te),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>S(V(c,e),n))(n,t)?B(T(p(yield e(L+$(n)),(e=>{return[e[t],a?(n=Y(e,t),l=a,B(q(n,((e,n)=>[n,l(e,n)])))):Y(e,t)];var n,l})),(([e,n])=>!r(e)&&!k(n)))):{}})),(n,t,o,a,s,y=!1)=>Ee(void 0,null,(function*(){const E=te();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>le(E,e)))));const A=_(E);if(!y&&s&&h(A)&&S(c,n))return yield e("DROP "+O+$(n)),void Z(c,n);const m=V(c,n),N=te(_(m));if(h(A)||(S(c,n)?yield v(p([t,...A],((l,o)=>Ee(void 0,null,(function*(){D(N,l)||(yield e(C+$(n)+"ADD"+$(l)+i),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(t)})`)),le(m,l))}))))):(yield e("CREATE "+O+$(n)+`(${$(t)}${i} PRIMARY KEY${f(p(A,(e=>l+$(e)+i)))});`),Z(c,n,te([t,...A])))),yield v([...!y&&a?p(_(N),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e(C+$(n)+"DROP"+$(l)),D(m,l))})))):[]]),y)r(o)?yield e(b+$(n)+P+" true"):yield v(q(o,((l,o)=>Ee(void 0,null,(function*(){r(l)?yield e(b+$(n)+P+$(t)+"=$1",[o]):h(A)||(yield u(e,n,t,G(l),{[o]:d?p(H(l),d):H(l)},m))})))));else if(h(A))S(c,n)&&(yield e(b+$(n)+P+" true"));else{const l=T(_(V(c,n)),(e=>e!=t)),i={},r=[];q(null!=o?o:{},((e,n)=>{i[n]=p(l,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(r,n)})),yield u(e,n,t,l,i),yield e(b+$(n)+P+$(t)+`NOT IN(${I(r)})`,r)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==o||o(e)}return yield e("END"),t}))]},pe=(e,n,t,o,i)=>Ee(void 0,null,(function*(){const r=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),l))(t,...o)+")VALUES"+f(q(i,(e=>"($"+r[0]+++","+I(e,r)+")")),l)+"ON CONFLICT("+$(t)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),l),q(i,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Te=(e,n,t,l,o,i,r,[u,d,a],c,s,v,y,E,f)=>{const[p,h,T,R]=fe(n,c,s,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,t;return yield p(),t=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,t;yield p(),yield T(u,d,{[m]:{[a]:(t=null!=(n=e())?n:null,z(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,r,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),i(),A)},v);return A};var Re=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,i,u,[d,a,[c,s,y]],E,f,p,h,R,A,g,P)=>{const[O,C,b,L]=fe(n,E,f,o,R,A,g,P),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((t,l)=>Re(void 0,[t,l],(function*([t,l,o,i],r){n&&!(r in e)||(yield b(t,l,e[r],o,i,n))})))))})),I=(e,n)=>Re(void 0,null,(function*(){return s?yield b(y,N,{[m]:e},!0,!0,n):null})),S=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield O();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],t){return[e,yield C(t,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return c?(yield C(y,N))[m]:{}}));return k(e)&&r(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield O(),r(n)){const[n,t]=e();yield $(n),yield I(t)}else yield $(n[0],!0),yield I(n[1],!0)}))))}))),t,l,o,u,{[h]:()=>p,destroy:()=>(S.stopAutoLoad().stopAutoSave(),i(),S)},p);return S},me="ColumnName",Ne="store",ge="json",Pe=Ne+"TableName",Oe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Ie="tableName",Se="deleteEmptyColumns",we="deleteEmptyTable",_e={mode:ge,[be]:1},xe={load:0,save:0,[Ie]:t+"_values"},De=(e,n,t,l,o)=>{const i=K();return q(e,((e,u)=>{const a=c(H(X(n,d(e)?{[t]:e}:e)),0,W(n));r(a[0])||l(u,a[0])||(o(u,a[0]),Z(i,u,a))})),i};var Ue=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));const Fe=t,Me=/^([cd]:)(.+)/,Ge=t+"_data",je=t+"_table";var Be=(e,n,t)=>new Promise(((l,o)=>{var i=e=>{try{u(t.next(e))}catch(e){o(e)}},r=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);u((t=t.apply(e,n)).next())}));e.createPglitePersister=(e,n,l,o,i)=>Be(void 0,null,(function*(){return((e,n,l,o,i,r,a,s,y,E,f="getDb")=>{const h=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},l=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);i((o=o.apply(void 0,null)).next())}));var o}:e)(l,r),[T,,R,A]=(e=>{var n,l,o;const i=(e=>X(_e,d(e)?{[Pe]:e}:null!=e?e:{}))(e),r=i[be];if(i.mode==ge){const e=null!=(n=i[Pe])?n:t;return[1,r,[e,null!=(l=i[Oe])?l:N,null!=(o=i[Ce])?o:Ne],te(e)]}const{tables:{load:u={},save:a={}}={},values:s={}}=i,v=c(H(X(xe,s)),0,W(xe)),y=v[2],E=te(y),f=te(y);return[0,r,[De(u,{[$e]:null,[Le]:N},$e,(e=>S(f,e)),(e=>le(E,e))),De(a,{[Ie]:null,[Le]:N,[Se]:0,[we]:0},Ie,((e,n)=>S(f,n)),((e,n)=>le(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(_(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((t=n,l=Me,null==t?void 0:t.match(l)),(n=>Ue(void 0,[n],(function*([,n,t]){S(A,t)&&("c:"==n&&(yield m(t)),e())}))));var t,l}))))}))),i,a,s,y,R,_(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${P} table_schema='public'AND table_name IN(${I(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,l,((e,...t)=>Be(void 0,[e,...t],(function*(e,t=[]){return(yield n.query(e,t)).rows}))),((e,t)=>Be(void 0,null,(function*(){return yield n.listen(e,t)}))),(e=>Be(void 0,null,(function*(){try{yield e()}catch(e){null==i||i(e)}}))),o,i,(()=>0),3,n,"getPglite")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPglite={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=Promise,i=e=>null==e,u=(e,n,l)=>i(e)?null==l?void 0:l():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),s=(e,n,l)=>e.slice(n,l),c=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==c(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",O="WHERE",P="TABLE",C="ALTER "+P,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,S=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),t),I=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},_=e=>i(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,l])=>n(l,e))),H=e=>U.values(e),W=e=>c(G(e)),k=e=>(e=>!i(e)&&u(F(e),(e=>e==U.prototype||i(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var l;return p([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Z=(e,n,l)=>i(l)?(D(e,n),e):null==e?void 0:e.set(n,l),ee=(e,n,l,t)=>(I(e,n)?null==t||t(V(e,n)):Z(e,n,l()),V(e,n)),ne=(e,n,l,t,o=0)=>u((l?ee:V)(e,n[o],o>c(n)-2?l:K),(r=>{if(o>c(n)-2)return(null==t?void 0:t(r))&&Z(e,n[o]),r;const i=ne(r,n,l,t,o+1);return _(r)&&Z(e,n[o]),i})),le=e=>new Set(a(e)||i(e)?e:[e]),te=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var re=Object.defineProperty,ie=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,l)=>n in e?re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce=K(),ve=K(),ye=(e,n,l,t,o,r,d,s={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(ce,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[O,P,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,S,I]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var t;return null!=(t=l?A(e):null)?t:""+n++},n=>{oe.test(n)&&c(e)<1e3&&R(e,n)}]})(),t=K();return[(l,o,r,i=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(t,d,[l,o,r,i,u]),te(ne(o,null!=r?r:[""],le),d),d},(n,l,...o)=>E(((e,n=[""])=>{const l=[],t=(e,o)=>o==c(n)?R(l,e):null===n[o]?x(e,(e=>t(e,o+1))):E([n[o],null],(n=>t(V(e,n),o+1)));return t(e,0),l})(n,l),(n=>x(n,(n=>V(t,n)[0](e,...null!=l?l:[],...o))))),e=>u(V(t,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),_(n)?1:0))),Z(t,e),l(e),o))),n=>u(V(t,n),(([n,,l=[],t,o])=>{const r=(...u)=>{var d,a;const s=c(u);s==c(l)?n(e,...u,...o(u)):i(l[s])?E(null!=(a=null==(d=t[s])?void 0:d.call(t,...u))?a:[],(e=>r(...u,e))):r(...u,l[s])};r()}))]})(),w=e=>{e!=T&&(T=e,S(g,void 0,T))},U=n=>{(O&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>se(void 0,null,(function*(){return 2!=T&&(w(1),m++,yield X((()=>se(void 0,null,(function*(){try{const l=yield n();a(l)?U(l):e?L(e):y("Content is not an array "+l)}catch(n){null==r||r(n),e&&L(e)}w(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>se(void 0,null,(function*(){return 1!=T&&(w(2),N++,yield X((()=>se(void 0,null,(function*(){try{yield l(P,e)}catch(e){null==r||r(e)}w(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>se(void 0,null,(function*(){return R(V(ve,v),...e),yield se(void 0,null,(function*(){if(!V(ce,v)){for(Z(ce,v,1);!i(f=A(V(ve,v)));)try{yield f()}catch(e){null==r||r(e)}Z(ce,v,0)}})),Y})),Y=((e,n)=>{for(var l in n||(n={}))ue.call(n,l)&&ae(e,l,n[l]);if(ie)for(var l of ie(n))de.call(n,l)&&ae(e,l,n[l]);return e})({load:F,startAutoLoad:e=>se(void 0,null,(function*(){yield M().load(e);try{p=yield t(((e,n)=>se(void 0,null,(function*(){n||e?2!=T&&(w(1),m++,U(null!=n?n:e),w(0)):yield F()}))))}catch(e){null==r||r(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!i(p),save:G,startAutoSave:()=>se(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!i(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(I(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},s);return j(Y)};var Ee=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe=(e,n,l,o,r,u=pe,d,a)=>{const s=K();return[()=>Ee(void 0,null,(function*(){s.clear(),p(yield l(e,n),(({tn:e,cn:n})=>te(ee(s,e,le),n)))})),(n,l)=>Ee(void 0,null,(function*(){return((e,n)=>I(V(s,e),n))(n,l)?B(T(p(yield e(L+$(n)),(e=>{return[e[l],a?(n=Y(e,l),t=a,B(q(n,((e,n)=>[n,t(e,n)])))):Y(e,l)];var n,t})),(([e,n])=>!i(e)&&!k(n)))):{}})),(n,l,o,a,c,y=!1)=>Ee(void 0,null,(function*(){const E=le();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>te(E,e)))));const A=w(E);if(!y&&c&&h(A)&&I(s,n))return yield e("DROP "+P+$(n)),void Z(s,n);const m=V(s,n),N=le(w(m));if(h(A)||(I(s,n)?yield v(p([l,...A],((t,o)=>Ee(void 0,null,(function*(){D(N,t)||(yield e(C+$(n)+"ADD"+$(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(l)})`)),te(m,t))}))))):(yield e("CREATE "+P+$(n)+`(${$(l)}${r} PRIMARY KEY${f(p(A,(e=>t+$(e)+r)))});`),Z(s,n,le([l,...A])))),yield v([...!y&&a?p(w(N),(t=>Ee(void 0,null,(function*(){t!=l&&(yield e(C+$(n)+"DROP"+$(t)),D(m,t))})))):[]]),y)i(o)?yield e(b+$(n)+O+" true"):yield v(q(o,((t,o)=>Ee(void 0,null,(function*(){i(t)?yield e(b+$(n)+O+$(l)+"=$1",[o]):h(A)||(yield u(e,n,l,G(t),{[o]:d?p(H(t),d):H(t)},m))})))));else if(h(A))I(s,n)&&(yield e(b+$(n)+O+" true"));else{const t=T(w(V(s,n)),(e=>e!=l)),r={},i=[];q(null!=o?o:{},((e,n)=>{r[n]=p(t,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(i,n)})),yield u(e,n,l,t,r),yield e(b+$(n)+O+$(l)+`NOT IN(${S(i)})`,i)}})),n=>Ee(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},pe=(e,n,l,o,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),t))(l,...o)+")VALUES"+f(q(r,(e=>"($"+i[0]+++","+S(e,i)+")")),t)+"ON CONFLICT("+$(l)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),t),q(r,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Te=(e,n,l,t,o,r,i,[u,d,a],s,c,v,y,E,f)=>{const[p,h,T,R]=fe(n,s,c,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,l;yield p(),yield T(u,d,{[m]:{[a]:(l=null!=(n=e())?n:null,z(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),r(),A)},v);return A};var Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ae=(e,n,l,t,o,r,u,[d,a,[s,c,y]],E,f,p,h,R,A,g,O)=>{const[P,C,b,L]=fe(n,E,f,o,R,A,g,O),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((l,t)=>Re(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield b(l,t,e[i],o,r,n))})))))})),S=(e,n)=>Re(void 0,null,(function*(){return c?yield b(y,N,{[m]:e},!0,!0,n):null})),I=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield P();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],l){return[e,yield C(l,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return s?(yield C(y,N))[m]:{}}));return k(e)&&i(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield P(),i(n)){const[n,l]=e();yield $(n),yield S(l)}else yield $(n[0],!0),yield S(n[1],!0)}))))}))),l,t,o,u,{[h]:()=>p,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},p);return I},me="ColumnName",Ne="store",ge="json",Oe=Ne+"TableName",Pe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Se="tableName",Ie="deleteEmptyColumns",_e="deleteEmptyTable",we={mode:ge,[be]:1},xe={load:0,save:0,[Se]:l+"_values"},De=(e,n,l,t,o)=>{const r=K();return q(e,((e,u)=>{const a=s(H(X(n,d(e)?{[l]:e}:e)),0,W(n));i(a[0])||t(u,a[0])||(o(u,a[0]),Z(r,u,a))})),r};var Ue=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Fe=l,Me=/^([cd]:)(.+)/,Ge=l+"_data",je=l+"_table";var Be=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));e.createPostgresPersister=(e,n,t,o,r)=>Be(void 0,null,(function*(){var i;const a=yield null==(i=n.reserve)?void 0:i.call(n);return((e,n,t,o,r,i,a,c,y,E,f="getDb")=>{const h=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(t,i),[T,,R,A]=(e=>{var n,t,o;const r=(e=>X(we,d(e)?{[Oe]:e}:null!=e?e:{}))(e),i=r[be];if(r.mode==ge){const e=null!=(n=r[Oe])?n:l;return[1,i,[e,null!=(t=r[Pe])?t:N,null!=(o=r[Ce])?o:Ne],le(e)]}const{tables:{load:u={},save:a={}}={},values:c={}}=r,v=s(H(X(xe,c)),0,W(xe)),y=v[2],E=le(y),f=le(y);return[0,i,[De(u,{[$e]:null,[Le]:N},$e,(e=>I(f,e)),(e=>te(E,e))),De(a,{[Se]:null,[Le]:N,[Ie]:0,[_e]:0},Se,((e,n)=>I(f,n)),((e,n)=>te(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(w(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((l=n,t=Me,null==l?void 0:l.match(t)),(n=>Ue(void 0,[n],(function*([,n,l]){I(A,l)&&("c:"==n&&(yield m(l)),e())}))));var l,t}))))}))),r,a,c,y,R,w(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${O} table_schema='public'AND table_name IN(${S(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,t,null==a?void 0:a.unsafe,((e,l)=>Be(void 0,null,(function*(){return n.listen(e,l)}))),(e=>Be(void 0,null,(function*(){try{yield e.unlisten()}catch(e){null==r||r(e)}}))),o,r,(()=>{var e;return null==(e=null==a?void 0:a.release)?void 0:e.call(a)}),3,n,"getSql")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPostgres={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=Promise,i=e=>null==e,u=(e,n,l)=>i(e)?null==l?void 0:l():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),s=(e,n,l)=>e.slice(n,l),c=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==c(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",O="WHERE",P="TABLE",C="ALTER "+P,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,S=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),t),I=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},_=e=>i(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,l])=>n(l,e))),H=e=>U.values(e),W=e=>c(G(e)),k=e=>(e=>!i(e)&&u(F(e),(e=>e==U.prototype||i(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var l;return p([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Z=(e,n,l)=>i(l)?(D(e,n),e):null==e?void 0:e.set(n,l),ee=(e,n,l,t)=>(I(e,n)?null==t||t(V(e,n)):Z(e,n,l()),V(e,n)),ne=(e,n,l,t,o=0)=>u((l?ee:V)(e,n[o],o>c(n)-2?l:K),(r=>{if(o>c(n)-2)return(null==t?void 0:t(r))&&Z(e,n[o]),r;const i=ne(r,n,l,t,o+1);return _(r)&&Z(e,n[o]),i})),le=e=>new Set(a(e)||i(e)?e:[e]),te=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var re=Object.defineProperty,ie=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,l)=>n in e?re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce=K(),ve=K(),ye=(e,n,l,t,o,r,d,s={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(ce,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[O,P,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,S,I]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var t;return null!=(t=l?A(e):null)?t:""+n++},n=>{oe.test(n)&&c(e)<1e3&&R(e,n)}]})(),t=K();return[(l,o,r,i=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(t,d,[l,o,r,i,u]),te(ne(o,null!=r?r:[""],le),d),d},(n,l,...o)=>E(((e,n=[""])=>{const l=[],t=(e,o)=>o==c(n)?R(l,e):null===n[o]?x(e,(e=>t(e,o+1))):E([n[o],null],(n=>t(V(e,n),o+1)));return t(e,0),l})(n,l),(n=>x(n,(n=>V(t,n)[0](e,...null!=l?l:[],...o))))),e=>u(V(t,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),_(n)?1:0))),Z(t,e),l(e),o))),n=>u(V(t,n),(([n,,l=[],t,o])=>{const r=(...u)=>{var d,a;const s=c(u);s==c(l)?n(e,...u,...o(u)):i(l[s])?E(null!=(a=null==(d=t[s])?void 0:d.call(t,...u))?a:[],(e=>r(...u,e))):r(...u,l[s])};r()}))]})(),w=e=>{e!=T&&(T=e,S(g,void 0,T))},U=n=>{(O&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>se(void 0,null,(function*(){return 2!=T&&(w(1),m++,yield X((()=>se(void 0,null,(function*(){try{const l=yield n();a(l)?U(l):e?L(e):y("Content is not an array: "+l)}catch(n){null==r||r(n),e&&L(e)}w(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>se(void 0,null,(function*(){return 1!=T&&(w(2),N++,yield X((()=>se(void 0,null,(function*(){try{yield l(P,e)}catch(e){null==r||r(e)}w(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>se(void 0,null,(function*(){return R(V(ve,v),...e),yield se(void 0,null,(function*(){if(!V(ce,v)){for(Z(ce,v,1);!i(f=A(V(ve,v)));)try{yield f()}catch(e){null==r||r(e)}Z(ce,v,0)}})),Y})),Y=((e,n)=>{for(var l in n||(n={}))ue.call(n,l)&&ae(e,l,n[l]);if(ie)for(var l of ie(n))de.call(n,l)&&ae(e,l,n[l]);return e})({load:F,startAutoLoad:e=>se(void 0,null,(function*(){yield M().load(e);try{p=yield t(((e,n)=>se(void 0,null,(function*(){n||e?2!=T&&(w(1),m++,U(null!=n?n:e),w(0)):yield F()}))))}catch(e){null==r||r(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!i(p),save:G,startAutoSave:()=>se(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!i(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(I(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},s);return j(Y)};var Ee=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe=(e,n,l,o,r,u=pe,d,a)=>{const s=K();return[()=>Ee(void 0,null,(function*(){s.clear(),p(yield l(e,n),(({tn:e,cn:n})=>te(ee(s,e,le),n)))})),(n,l)=>Ee(void 0,null,(function*(){return((e,n)=>I(V(s,e),n))(n,l)?B(T(p(yield e(L+$(n)),(e=>{return[e[l],a?(n=Y(e,l),t=a,B(q(n,((e,n)=>[n,t(e,n)])))):Y(e,l)];var n,t})),(([e,n])=>!i(e)&&!k(n)))):{}})),(n,l,o,a,c,y=!1)=>Ee(void 0,null,(function*(){const E=le();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>te(E,e)))));const A=w(E);if(!y&&c&&h(A)&&I(s,n))return yield e("DROP "+P+$(n)),void Z(s,n);const m=V(s,n),N=le(w(m));if(h(A)||(I(s,n)?yield v(p([l,...A],((t,o)=>Ee(void 0,null,(function*(){D(N,t)||(yield e(C+$(n)+"ADD"+$(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(l)})`)),te(m,t))}))))):(yield e("CREATE "+P+$(n)+`(${$(l)}${r} PRIMARY KEY${f(p(A,(e=>t+$(e)+r)))});`),Z(s,n,le([l,...A])))),yield v([...!y&&a?p(w(N),(t=>Ee(void 0,null,(function*(){t!=l&&(yield e(C+$(n)+"DROP"+$(t)),D(m,t))})))):[]]),y)i(o)?yield e(b+$(n)+O+" true"):yield v(q(o,((t,o)=>Ee(void 0,null,(function*(){i(t)?yield e(b+$(n)+O+$(l)+"=$1",[o]):h(A)||(yield u(e,n,l,G(t),{[o]:d?p(H(t),d):H(t)},m))})))));else if(h(A))I(s,n)&&(yield e(b+$(n)+O+" true"));else{const t=T(w(V(s,n)),(e=>e!=l)),r={},i=[];q(null!=o?o:{},((e,n)=>{r[n]=p(t,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(i,n)})),yield u(e,n,l,t,r),yield e(b+$(n)+O+$(l)+`NOT IN(${S(i)})`,i)}})),n=>Ee(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},pe=(e,n,l,o,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),t))(l,...o)+")VALUES"+f(q(r,(e=>"($"+i[0]+++","+S(e,i)+")")),t)+"ON CONFLICT("+$(l)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),t),q(r,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Te=(e,n,l,t,o,r,i,[u,d,a],s,c,v,y,E,f)=>{const[p,h,T,R]=fe(n,s,c,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,l;yield p(),yield T(u,d,{[m]:{[a]:(l=null!=(n=e())?n:null,z(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),r(),A)},v);return A};var Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ae=(e,n,l,t,o,r,u,[d,a,[s,c,y]],E,f,p,h,R,A,g,O)=>{const[P,C,b,L]=fe(n,E,f,o,R,A,g,O),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((l,t)=>Re(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield b(l,t,e[i],o,r,n))})))))})),S=(e,n)=>Re(void 0,null,(function*(){return c?yield b(y,N,{[m]:e},!0,!0,n):null})),I=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield P();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],l){return[e,yield C(l,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return s?(yield C(y,N))[m]:{}}));return k(e)&&i(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield P(),i(n)){const[n,l]=e();yield $(n),yield S(l)}else yield $(n[0],!0),yield S(n[1],!0)}))))}))),l,t,o,u,{[h]:()=>p,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},p);return I},me="ColumnName",Ne="store",ge="json",Oe=Ne+"TableName",Pe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Se="tableName",Ie="deleteEmptyColumns",_e="deleteEmptyTable",we={mode:ge,[be]:1},xe={load:0,save:0,[Se]:l+"_values"},De=(e,n,l,t,o)=>{const r=K();return q(e,((e,u)=>{const a=s(H(X(n,d(e)?{[l]:e}:e)),0,W(n));i(a[0])||t(u,a[0])||(o(u,a[0]),Z(r,u,a))})),r};var Ue=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Fe=l,Me=/^([cd]:)(.+)/,Ge=l+"_data",je=l+"_table";var Be=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));e.createPostgresPersister=(e,n,t,o,r)=>Be(void 0,null,(function*(){var i;const a=yield null==(i=n.reserve)?void 0:i.call(n);return((e,n,t,o,r,i,a,c,y,E,f="getDb")=>{const h=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(t,i),[T,,R,A]=(e=>{var n,t,o;const r=(e=>X(we,d(e)?{[Oe]:e}:null!=e?e:{}))(e),i=r[be];if(r.mode==ge){const e=null!=(n=r[Oe])?n:l;return[1,i,[e,null!=(t=r[Pe])?t:N,null!=(o=r[Ce])?o:Ne],le(e)]}const{tables:{load:u={},save:a={}}={},values:c={}}=r,v=s(H(X(xe,c)),0,W(xe)),y=v[2],E=le(y),f=le(y);return[0,i,[De(u,{[$e]:null,[Le]:N},$e,(e=>I(f,e)),(e=>te(E,e))),De(a,{[Se]:null,[Le]:N,[Ie]:0,[_e]:0},Se,((e,n)=>I(f,n)),((e,n)=>te(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(w(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((l=n,t=Me,null==l?void 0:l.match(t)),(n=>Ue(void 0,[n],(function*([,n,l]){I(A,l)&&("c:"==n&&(yield m(l)),e())}))));var l,t}))))}))),r,a,c,y,R,w(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${O} table_schema='public'AND table_name IN(${S(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,t,null==a?void 0:a.unsafe,((e,l)=>Be(void 0,null,(function*(){return n.listen(e,l)}))),(e=>Be(void 0,null,(function*(){try{yield e.unlisten()}catch(e){null==r||r(e)}}))),o,r,(()=>{var e;return null==(e=null==a?void 0:a.release)?void 0:e.call(a)}),3,n,"getSql")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPostgres={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=Promise,i=e=>null==e,u=(e,n,l)=>i(e)?null==l?void 0:l():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),s=(e,n,l)=>e.slice(n,l),c=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==c(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",O="WHERE",P="TABLE",C="ALTER "+P,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,S=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),t),I=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},_=e=>i(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,l])=>n(l,e))),H=e=>U.values(e),W=e=>c(G(e)),k=e=>(e=>!i(e)&&u(F(e),(e=>e==U.prototype||i(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var l;return p([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Z=(e,n,l)=>i(l)?(D(e,n),e):null==e?void 0:e.set(n,l),ee=(e,n,l,t)=>(I(e,n)?null==t||t(V(e,n)):Z(e,n,l()),V(e,n)),ne=(e,n,l,t,o=0)=>u((l?ee:V)(e,n[o],o>c(n)-2?l:K),(r=>{if(o>c(n)-2)return(null==t?void 0:t(r))&&Z(e,n[o]),r;const i=ne(r,n,l,t,o+1);return _(r)&&Z(e,n[o]),i})),le=e=>new Set(a(e)||i(e)?e:[e]),te=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var re=Object.defineProperty,ie=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,l)=>n in e?re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce=K(),ve=K(),ye=(e,n,l,t,o,r,d,s={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(ce,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[O,P,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,S,I]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var t;return null!=(t=l?A(e):null)?t:""+n++},n=>{oe.test(n)&&c(e)<1e3&&R(e,n)}]})(),t=K();return[(l,o,r,i=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(t,d,[l,o,r,i,u]),te(ne(o,null!=r?r:[""],le),d),d},(n,l,...o)=>E(((e,n=[""])=>{const l=[],t=(e,o)=>o==c(n)?R(l,e):null===n[o]?x(e,(e=>t(e,o+1))):E([n[o],null],(n=>t(V(e,n),o+1)));return t(e,0),l})(n,l),(n=>x(n,(n=>V(t,n)[0](e,...null!=l?l:[],...o))))),e=>u(V(t,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),_(n)?1:0))),Z(t,e),l(e),o))),n=>u(V(t,n),(([n,,l=[],t,o])=>{const r=(...u)=>{var d,a;const s=c(u);s==c(l)?n(e,...u,...o(u)):i(l[s])?E(null!=(a=null==(d=t[s])?void 0:d.call(t,...u))?a:[],(e=>r(...u,e))):r(...u,l[s])};r()}))]})(),w=e=>{e!=T&&(T=e,S(g,void 0,T))},U=n=>{(O&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>se(void 0,null,(function*(){return 2!=T&&(w(1),m++,yield X((()=>se(void 0,null,(function*(){try{const l=yield n();a(l)?U(l):e?L(e):y("Content is not an array "+l)}catch(n){null==r||r(n),e&&L(e)}w(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>se(void 0,null,(function*(){return 1!=T&&(w(2),N++,yield X((()=>se(void 0,null,(function*(){try{yield l(P,e)}catch(e){null==r||r(e)}w(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>se(void 0,null,(function*(){return R(V(ve,v),...e),yield se(void 0,null,(function*(){if(!V(ce,v)){for(Z(ce,v,1);!i(f=A(V(ve,v)));)try{yield f()}catch(e){null==r||r(e)}Z(ce,v,0)}})),Y})),Y=((e,n)=>{for(var l in n||(n={}))ue.call(n,l)&&ae(e,l,n[l]);if(ie)for(var l of ie(n))de.call(n,l)&&ae(e,l,n[l]);return e})({load:F,startAutoLoad:e=>se(void 0,null,(function*(){yield M().load(e);try{p=yield t(((e,n)=>se(void 0,null,(function*(){n||e?2!=T&&(w(1),m++,U(null!=n?n:e),w(0)):yield F()}))))}catch(e){null==r||r(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!i(p),save:G,startAutoSave:()=>se(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!i(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(I(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},s);return j(Y)};var Ee=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe=(e,n,l,o,r,u=pe,d,a)=>{const s=K();return[()=>Ee(void 0,null,(function*(){s.clear(),p(yield l(e,n),(({tn:e,cn:n})=>te(ee(s,e,le),n)))})),(n,l)=>Ee(void 0,null,(function*(){return((e,n)=>I(V(s,e),n))(n,l)?B(T(p(yield e(L+$(n)),(e=>{return[e[l],a?(n=Y(e,l),t=a,B(q(n,((e,n)=>[n,t(e,n)])))):Y(e,l)];var n,t})),(([e,n])=>!i(e)&&!k(n)))):{}})),(n,l,o,a,c,y=!1)=>Ee(void 0,null,(function*(){const E=le();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>te(E,e)))));const A=w(E);if(!y&&c&&h(A)&&I(s,n))return yield e("DROP "+P+$(n)),void Z(s,n);const m=V(s,n),N=le(w(m));if(h(A)||(I(s,n)?yield v(p([l,...A],((t,o)=>Ee(void 0,null,(function*(){D(N,t)||(yield e(C+$(n)+"ADD"+$(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(l)})`)),te(m,t))}))))):(yield e("CREATE "+P+$(n)+`(${$(l)}${r} PRIMARY KEY${f(p(A,(e=>t+$(e)+r)))});`),Z(s,n,le([l,...A])))),yield v([...!y&&a?p(w(N),(t=>Ee(void 0,null,(function*(){t!=l&&(yield e(C+$(n)+"DROP"+$(t)),D(m,t))})))):[]]),y)i(o)?yield e(b+$(n)+O+" true"):yield v(q(o,((t,o)=>Ee(void 0,null,(function*(){i(t)?yield e(b+$(n)+O+$(l)+"=$1",[o]):h(A)||(yield u(e,n,l,G(t),{[o]:d?p(H(t),d):H(t)},m))})))));else if(h(A))I(s,n)&&(yield e(b+$(n)+O+" true"));else{const t=T(w(V(s,n)),(e=>e!=l)),r={},i=[];q(null!=o?o:{},((e,n)=>{r[n]=p(t,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(i,n)})),yield u(e,n,l,t,r),yield e(b+$(n)+O+$(l)+`NOT IN(${S(i)})`,i)}})),n=>Ee(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},pe=(e,n,l,o,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),t))(l,...o)+")VALUES"+f(q(r,(e=>"($"+i[0]+++","+S(e,i)+")")),t)+"ON CONFLICT("+$(l)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),t),q(r,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Te=(e,n,l,t,o,r,i,[u,d,a],s,c,v,y,E,f)=>{const[p,h,T,R]=fe(n,s,c,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,l;yield p(),yield T(u,d,{[m]:{[a]:(l=null!=(n=e())?n:null,z(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),r(),A)},v);return A};var Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ae=(e,n,l,t,o,r,u,[d,a,[s,c,y]],E,f,p,h,R,A,g,O)=>{const[P,C,b,L]=fe(n,E,f,o,R,A,g,O),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((l,t)=>Re(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield b(l,t,e[i],o,r,n))})))))})),S=(e,n)=>Re(void 0,null,(function*(){return c?yield b(y,N,{[m]:e},!0,!0,n):null})),I=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield P();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],l){return[e,yield C(l,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return s?(yield C(y,N))[m]:{}}));return k(e)&&i(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield P(),i(n)){const[n,l]=e();yield $(n),yield S(l)}else yield $(n[0],!0),yield S(n[1],!0)}))))}))),l,t,o,u,{[h]:()=>p,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},p);return I},me="ColumnName",Ne="store",ge="json",Oe=Ne+"TableName",Pe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Se="tableName",Ie="deleteEmptyColumns",_e="deleteEmptyTable",we={mode:ge,[be]:1},xe={load:0,save:0,[Se]:l+"_values"},De=(e,n,l,t,o)=>{const r=K();return q(e,((e,u)=>{const a=s(H(X(n,d(e)?{[l]:e}:e)),0,W(n));i(a[0])||t(u,a[0])||(o(u,a[0]),Z(r,u,a))})),r};var Ue=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Fe=l,Me=/^([cd]:)(.+)/,Ge=l+"_data",je=l+"_table";var Be=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));e.createPostgresPersister=(e,n,t,o,r)=>Be(void 0,null,(function*(){var i;const a=yield null==(i=n.reserve)?void 0:i.call(n);return((e,n,t,o,r,i,a,c,y,E,f="getDb")=>{const h=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(t,i),[T,,R,A]=(e=>{var n,t,o;const r=(e=>X(we,d(e)?{[Oe]:e}:null!=e?e:{}))(e),i=r[be];if(r.mode==ge){const e=null!=(n=r[Oe])?n:l;return[1,i,[e,null!=(t=r[Pe])?t:N,null!=(o=r[Ce])?o:Ne],le(e)]}const{tables:{load:u={},save:a={}}={},values:c={}}=r,v=s(H(X(xe,c)),0,W(xe)),y=v[2],E=le(y),f=le(y);return[0,i,[De(u,{[$e]:null,[Le]:N},$e,(e=>I(f,e)),(e=>te(E,e))),De(a,{[Se]:null,[Le]:N,[Ie]:0,[_e]:0},Se,((e,n)=>I(f,n)),((e,n)=>te(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(w(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((l=n,t=Me,null==l?void 0:l.match(t)),(n=>Ue(void 0,[n],(function*([,n,l]){I(A,l)&&("c:"==n&&(yield m(l)),e())}))));var l,t}))))}))),r,a,c,y,R,w(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${O} table_schema='public'AND table_name IN(${S(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,t,null==a?void 0:a.unsafe,((e,l)=>Be(void 0,null,(function*(){return n.listen(e,l)}))),(e=>Be(void 0,null,(function*(){try{yield e.unlisten()}catch(e){null==r||r(e)}}))),o,r,(()=>{var e;return null==(e=null==a?void 0:a.release)?void 0:e.call(a)}),3,n,"getSql")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPostgres={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=Promise,i=e=>null==e,u=(e,n,l)=>i(e)?null==l?void 0:l():n(e),d=e=>n(e)==o,a=e=>Array.isArray(e),s=(e,n,l)=>e.slice(n,l),c=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y=e=>{throw Error(e)},E=(e,n)=>e.forEach(n),f=(e,n="")=>e.join(n),p=(e,n)=>e.map(n),h=e=>0==c(e),T=(e,n)=>e.filter(n),R=(e,...n)=>e.push(...n),A=e=>e.shift(),m="_",N="_id",g="SELECT",O="WHERE",P="TABLE",C="ALTER "+P,b="DELETE FROM",L=g+"*FROM",$=e=>`"${e.replace(/"/g,'""')}"`,S=(e,n=[1])=>f(p(e,(()=>"$"+n[0]++)),t),I=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},_=e=>i(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),w=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.forEach(n),D=(e,n)=>null==e?void 0:e.delete(n),U=Object,F=e=>U.getPrototypeOf(e),M=U.entries,G=U.keys,j=U.freeze,B=(e=[])=>U.fromEntries(e),X=(...e)=>U.assign({},...e),Y=(e,n)=>(delete e[n],e),q=(e,n)=>p(M(e),(([e,l])=>n(l,e))),H=e=>U.values(e),W=e=>c(G(e)),k=e=>(e=>!i(e)&&u(F(e),(e=>e==U.prototype||i(F(e))),(()=>!0)))(e)&&0==W(e),z=JSON.stringify,J=JSON.parse,K=e=>new Map(e),V=(e,n)=>null==e?void 0:e.get(n),Q=(e,n)=>{var l;return p([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Z=(e,n,l)=>i(l)?(D(e,n),e):null==e?void 0:e.set(n,l),ee=(e,n,l,t)=>(I(e,n)?null==t||t(V(e,n)):Z(e,n,l()),V(e,n)),ne=(e,n,l,t,o=0)=>u((l?ee:V)(e,n[o],o>c(n)-2?l:K),(r=>{if(o>c(n)-2)return(null==t?void 0:t(r))&&Z(e,n[o]),r;const i=ne(r,n,l,t,o+1);return _(r)&&Z(e,n[o]),i})),le=e=>new Set(a(e)||i(e)?e:[e]),te=(e,n)=>null==e?void 0:e.add(n),oe=/^\d+$/;var re=Object.defineProperty,ie=Object.getOwnPropertySymbols,ue=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable,ae=(e,n,l)=>n in e?re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce=K(),ve=K(),ye=(e,n,l,t,o,r,d,s={},v=[])=>{let f,p,h,T=0,m=0,N=0;ee(ce,v,(()=>0)),ee(ve,v,(()=>[]));const g=K(),[O,P,C,b,L]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!k(e)||!k(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!k(e)||!k(n),n.setContent]:y("Store type not supported by this Persister"))(d,e),[$,S,I]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var t;return null!=(t=l?A(e):null)?t:""+n++},n=>{oe.test(n)&&c(e)<1e3&&R(e,n)}]})(),t=K();return[(l,o,r,i=[],u=()=>[])=>{null!=e||(e=Y);const d=n(1);return Z(t,d,[l,o,r,i,u]),te(ne(o,null!=r?r:[""],le),d),d},(n,l,...o)=>E(((e,n=[""])=>{const l=[],t=(e,o)=>o==c(n)?R(l,e):null===n[o]?x(e,(e=>t(e,o+1))):E([n[o],null],(n=>t(V(e,n),o+1)));return t(e,0),l})(n,l),(n=>x(n,(n=>V(t,n)[0](e,...null!=l?l:[],...o))))),e=>u(V(t,e),(([,n,o])=>(ne(n,null!=o?o:[""],void 0,(n=>(D(n,e),_(n)?1:0))),Z(t,e),l(e),o))),n=>u(V(t,n),(([n,,l=[],t,o])=>{const r=(...u)=>{var d,a;const s=c(u);s==c(l)?n(e,...u,...o(u)):i(l[s])?E(null!=(a=null==(d=t[s])?void 0:d.call(t,...u))?a:[],(e=>r(...u,e))):r(...u,l[s])};r()}))]})(),w=e=>{e!=T&&(T=e,S(g,void 0,T))},U=n=>{(O&&a(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},F=e=>se(void 0,null,(function*(){return 2!=T&&(w(1),m++,yield X((()=>se(void 0,null,(function*(){try{const l=yield n();a(l)?U(l):e?L(e):y("Content is not an array: "+l)}catch(n){null==r||r(n),e&&L(e)}w(0)}))))),Y})),M=()=>(p&&(o(p),p=void 0),Y),G=e=>se(void 0,null,(function*(){return 1!=T&&(w(2),N++,yield X((()=>se(void 0,null,(function*(){try{yield l(P,e)}catch(e){null==r||r(e)}w(0)}))))),Y})),B=()=>(u(h,e.delListener),h=void 0,Y),X=(...e)=>se(void 0,null,(function*(){return R(V(ve,v),...e),yield se(void 0,null,(function*(){if(!V(ce,v)){for(Z(ce,v,1);!i(f=A(V(ve,v)));)try{yield f()}catch(e){null==r||r(e)}Z(ce,v,0)}})),Y})),Y=((e,n)=>{for(var l in n||(n={}))ue.call(n,l)&&ae(e,l,n[l]);if(ie)for(var l of ie(n))de.call(n,l)&&ae(e,l,n[l]);return e})({load:F,startAutoLoad:e=>se(void 0,null,(function*(){yield M().load(e);try{p=yield t(((e,n)=>se(void 0,null,(function*(){n||e?2!=T&&(w(1),m++,U(null!=n?n:e),w(0)):yield F()}))))}catch(e){null==r||r(e)}return Y})),stopAutoLoad:M,isAutoLoading:()=>!i(p),save:G,startAutoSave:()=>se(void 0,null,(function*(){return yield B().save(),h=e.addDidFinishTransactionListener((()=>{const e=C();b(e)&&G(e)})),Y})),stopAutoSave:B,isAutoSaving:()=>!i(h),getStatus:()=>T,addStatusListener:e=>$(e,g),delListener:n=>(I(n),e),schedule:X,getStore:()=>e,destroy:()=>(V(ve,v).splice(0,void 0),M().stopAutoSave()),getStats:()=>({loads:m,saves:N})},s);return j(Y)};var Ee=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe=(e,n,l,o,r,u=pe,d,a)=>{const s=K();return[()=>Ee(void 0,null,(function*(){s.clear(),p(yield l(e,n),(({tn:e,cn:n})=>te(ee(s,e,le),n)))})),(n,l)=>Ee(void 0,null,(function*(){return((e,n)=>I(V(s,e),n))(n,l)?B(T(p(yield e(L+$(n)),(e=>{return[e[l],a?(n=Y(e,l),t=a,B(q(n,((e,n)=>[n,t(e,n)])))):Y(e,l)];var n,t})),(([e,n])=>!i(e)&&!k(n)))):{}})),(n,l,o,a,c,y=!1)=>Ee(void 0,null,(function*(){const E=le();q(null!=o?o:{},(e=>p(G(null!=e?e:{}),(e=>te(E,e)))));const A=w(E);if(!y&&c&&h(A)&&I(s,n))return yield e("DROP "+P+$(n)),void Z(s,n);const m=V(s,n),N=le(w(m));if(h(A)||(I(s,n)?yield v(p([l,...A],((t,o)=>Ee(void 0,null,(function*(){D(N,t)||(yield e(C+$(n)+"ADD"+$(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+$(n)+`(${$(l)})`)),te(m,t))}))))):(yield e("CREATE "+P+$(n)+`(${$(l)}${r} PRIMARY KEY${f(p(A,(e=>t+$(e)+r)))});`),Z(s,n,le([l,...A])))),yield v([...!y&&a?p(w(N),(t=>Ee(void 0,null,(function*(){t!=l&&(yield e(C+$(n)+"DROP"+$(t)),D(m,t))})))):[]]),y)i(o)?yield e(b+$(n)+O+" true"):yield v(q(o,((t,o)=>Ee(void 0,null,(function*(){i(t)?yield e(b+$(n)+O+$(l)+"=$1",[o]):h(A)||(yield u(e,n,l,G(t),{[o]:d?p(H(t),d):H(t)},m))})))));else if(h(A))I(s,n)&&(yield e(b+$(n)+O+" true"));else{const t=T(w(V(s,n)),(e=>e!=l)),r={},i=[];q(null!=o?o:{},((e,n)=>{r[n]=p(t,(n=>d?d(null==e?void 0:e[n]):null==e?void 0:e[n])),R(i,n)})),yield u(e,n,l,t,r),yield e(b+$(n)+O+$(l)+`NOT IN(${S(i)})`,i)}})),n=>Ee(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},pe=(e,n,l,o,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+$(n)+"("+((...e)=>f(p(e,$),t))(l,...o)+")VALUES"+f(q(r,(e=>"($"+i[0]+++","+S(e,i)+")")),t)+"ON CONFLICT("+$(l)+")DO UPDATE SET"+f(p(o,(e=>$(e)+"=excluded."+$(e))),t),q(r,((e,n)=>[n,...p(e,(e=>null!=e?e:null))])).flat())}));var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Te=(e,n,l,t,o,r,i,[u,d,a],s,c,v,y,E,f)=>{const[p,h,T,R]=fe(n,s,c,o,E,f),A=ye(e,(()=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield h(u,d))[m])?void 0:e[a])?n:"null",J(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>he(void 0,null,(function*(){return yield R((()=>he(void 0,null,(function*(){var n,l;yield p(),yield T(u,d,{[m]:{[a]:(l=null!=(n=e())?n:null,z(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(A.stopAutoLoad().stopAutoSave(),r(),A)},v);return A};var Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ae=(e,n,l,t,o,r,u,[d,a,[s,c,y]],E,f,p,h,R,A,g,O)=>{const[P,C,b,L]=fe(n,E,f,o,R,A,g,O),$=(e,n)=>Re(void 0,null,(function*(){return yield v(Q(a,((l,t)=>Re(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield b(l,t,e[i],o,r,n))})))))})),S=(e,n)=>Re(void 0,null,(function*(){return c?yield b(y,N,{[m]:e},!0,!0,n):null})),I=ye(e,(()=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){yield P();const e=yield Re(void 0,null,(function*(){return B(T(yield v(Q(d,((e,n)=>Re(void 0,[e,n],(function*([e,n],l){return[e,yield C(l,n)]}))))),(e=>!k(e[1]))))})),n=yield Re(void 0,null,(function*(){return s?(yield C(y,N))[m]:{}}));return k(e)&&i(n)?void 0:[e,n]}))))}))),((e,n)=>Re(void 0,null,(function*(){return yield L((()=>Re(void 0,null,(function*(){if(yield P(),i(n)){const[n,l]=e();yield $(n),yield S(l)}else yield $(n[0],!0),yield S(n[1],!0)}))))}))),l,t,o,u,{[h]:()=>p,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},p);return I},me="ColumnName",Ne="store",ge="json",Oe=Ne+"TableName",Pe=Ne+"Id"+me,Ce=Ne+me,be="autoLoadIntervalSeconds",Le="rowId"+me,$e="tableId",Se="tableName",Ie="deleteEmptyColumns",_e="deleteEmptyTable",we={mode:ge,[be]:1},xe={load:0,save:0,[Se]:l+"_values"},De=(e,n,l,t,o)=>{const r=K();return q(e,((e,u)=>{const a=s(H(X(n,d(e)?{[l]:e}:e)),0,W(n));i(a[0])||t(u,a[0])||(o(u,a[0]),Z(r,u,a))})),r};var Ue=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Fe=l,Me=/^([cd]:)(.+)/,Ge=l+"_data",je=l+"_table";var Be=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));e.createPostgresPersister=(e,n,t,o,r)=>Be(void 0,null,(function*(){var i;const a=yield null==(i=n.reserve)?void 0:i.call(n);return((e,n,t,o,r,i,a,c,y,E,f="getDb")=>{const h=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(t,i),[T,,R,A]=(e=>{var n,t,o;const r=(e=>X(we,d(e)?{[Oe]:e}:null!=e?e:{}))(e),i=r[be];if(r.mode==ge){const e=null!=(n=r[Oe])?n:l;return[1,i,[e,null!=(t=r[Pe])?t:N,null!=(o=r[Ce])?o:Ne],le(e)]}const{tables:{load:u={},save:a={}}={},values:c={}}=r,v=s(H(X(xe,c)),0,W(xe)),y=v[2],E=le(y),f=le(y);return[0,i,[De(u,{[$e]:null,[Le]:N},$e,(e=>I(f,e)),(e=>te(E,e))),De(a,{[Se]:null,[Le]:N,[Ie]:0,[_e]:0},Se,((e,n)=>I(f,n)),((e,n)=>te(E,n))),v],E]})(n),m=e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE TRIGGER ${$(Ge+"_"+e)} AFTER INSERT OR UPDATE OR DELETE ON ${$(e)} EXECUTE FUNCTION ${Ge}()`)}));return(T?Te:Ae)(e,h,(e=>Ue(void 0,null,(function*(){yield h(`CREATE OR REPLACE FUNCTION ${je}()RETURNS event_trigger AS $t2$ DECLARE row record; BEGIN FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()WHERE command_tag='CREATE TABLE' LOOP PERFORM pg_notify('${Fe}','c:'||SPLIT_PART(row.object_identity,'.',2));END LOOP;END;$t2$ LANGUAGE plpgsql;`);try{yield h(`CREATE EVENT TRIGGER ${je} ON ddl_command_end WHEN TAG IN('CREATE TABLE')EXECUTE FUNCTION ${je}();`)}catch(e){}return yield h(`CREATE OR REPLACE FUNCTION ${Ge}()RETURNS trigger AS $t1$ BEGIN PERFORM pg_notify('${Fe}','d:'||TG_TABLE_NAME);RETURN NULL;END;$t1$ LANGUAGE plpgsql;`),yield v(p(w(A),(e=>Ue(void 0,null,(function*(){yield h(`CREATE TABLE IF NOT EXISTS ${$(e)}("_id"text PRIMARY KEY)`),yield m(e)}))))),yield o(Fe,(n=>Ue(void 0,null,(function*(){return yield u((l=n,t=Me,null==l?void 0:l.match(t)),(n=>Ue(void 0,[n],(function*([,n,l]){I(A,l)&&("c:"==n&&(yield m(l)),e())}))));var l,t}))))}))),r,a,c,y,R,w(A),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${g} table_name tn,column_name cn FROM information_schema.columns ${O} table_schema='public'AND table_name IN(${S(n)})`,n)}))),E,f,"text",void 0,(e=>z(e)),(e=>J(e)))})(e,t,null==a?void 0:a.unsafe,((e,l)=>Be(void 0,null,(function*(){return n.listen(e,l)}))),(e=>Be(void 0,null,(function*(){try{yield e.unlisten()}catch(e){null==r||r(e)}}))),o,r,(()=>{var e;return null==(e=null==a?void 0:a.release)?void 0:e.call(a)}),3,n,"getSql")}))},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPostgres={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},h=e=>{throw Error(e)},p=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),g=e=>0==y(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),w=e=>e.shift(),S=Object,A=e=>S.getPrototypeOf(e),O=S.entries,T=S.keys,N=S.freeze,x=(e=[])=>S.fromEntries(e),C=(...e)=>S.assign({},...e),$=(e,n)=>(delete e[n],e),I=(e,n)=>E(O(e),(([e,l])=>n(l,e))),L=e=>S.values(e),R=e=>y(T(e)),D=e=>(e=>!a(e)&&d(A(e),(e=>e==S.prototype||a(A(e))),(()=>!0)))(e)&&0==R(e),M=e=>new Set(c(e)||a(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),j="_",F="_id",U="SELECT",B="WHERE",H="TABLE",J="ALTER "+H,Y="DELETE FROM",k=U+"*FROM",z="pragma_",G="data_version",V="schema_version",W="pragma_table_",K=e=>`"${e.replace(/"/g,'""')}"`,Q=(...e)=>m(E(e,K),o),X=(e,n=[1])=>m(E(e,(()=>"$"+n[0]++)),o),q=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},Z=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),ee=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},ne=(e,n)=>null==e?void 0:e.forEach(n),le=(e,n)=>null==e?void 0:e.delete(n),te=JSON.stringify,oe=JSON.parse,re=e=>new Map(e),ie=(e,n)=>null==e?void 0:e.get(n),ue=(e,n)=>{var l;return E([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},ae=(e,n,l)=>a(l)?(le(e,n),e):null==e?void 0:e.set(n,l),de=(e,n,l,t)=>(q(e,n)?null==t||t(ie(e,n)):ae(e,n,l()),ie(e,n)),se=(e,n,l,t,o=0)=>d((l?de:ie)(e,n[o],o>y(n)-2?l:re),(r=>{if(o>y(n)-2)return(null==t?void 0:t(r))&&ae(e,n[o]),r;const i=se(r,n,l,t,o+1);return Z(r)&&ae(e,n[o]),i})),ce=/^\d+$/;var ve=Object.defineProperty,ye=Object.getOwnPropertySymbols,fe=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable,pe=(e,n,l)=>n in e?ve(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,me=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ee=re(),ge=re(),be=(e,n,l,o,r,i,u,s={},v=[])=>{let f,m,E,g=0,b=0,S=0;de(Ee,v,(()=>0)),de(ge,v,(()=>[]));const A=re(),[O,T,x,C,$]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!D(e)||!D(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!D(e)||!D(n),n.setContent]:h("Store type not supported by this Persister"))(u,e),[I,L,R]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?w(e):null)?o:t+n++},n=>{ce.test(n)&&y(e)<1e3&&P(e,n)}]})(),o=re();return[(l,r,i,u=[],a=()=>[])=>{null!=e||(e=k);const d=n(1);return ae(o,d,[l,r,i,u,a]),_(se(r,null!=i?i:[t],M),d),d},(n,l,...r)=>p(((e,n=[t])=>{const l=[],o=(e,t)=>t==y(n)?P(l,e):null===n[t]?ne(e,(e=>o(e,t+1))):p([n[t],null],(n=>o(ie(e,n),t+1)));return o(e,0),l})(n,l),(n=>ne(n,(n=>ie(o,n)[0](e,...null!=l?l:[],...r))))),e=>d(ie(o,e),(([,n,r])=>(se(n,null!=r?r:[t],void 0,(n=>(le(n,e),Z(n)?1:0))),ae(o,e),l(e),r))),n=>d(ie(o,n),(([n,,l=[],t,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(l)?n(e,...i,...o(i)):a(l[s])?p(null!=(d=null==(u=t[s])?void 0:u.call(t,...i))?d:[],(e=>r(...i,e))):r(...i,l[s])};r()}))]})(),j=e=>{e!=g&&(g=e,L(A,void 0,g))},F=n=>{(O&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},U=e=>me(void 0,null,(function*(){return 2!=g&&(j(1),b++,yield Y((()=>me(void 0,null,(function*(){try{const l=yield n();c(l)?F(l):e?$(e):h("Content is not an array "+l)}catch(n){null==i||i(n),e&&$(e)}j(0)}))))),k})),B=()=>(m&&(r(m),m=void 0),k),H=e=>me(void 0,null,(function*(){return 1!=g&&(j(2),S++,yield Y((()=>me(void 0,null,(function*(){try{yield l(T,e)}catch(e){null==i||i(e)}j(0)}))))),k})),J=()=>(d(E,e.delListener),E=void 0,k),Y=(...e)=>me(void 0,null,(function*(){return P(ie(ge,v),...e),yield me(void 0,null,(function*(){if(!ie(Ee,v)){for(ae(Ee,v,1);!a(f=w(ie(ge,v)));)try{yield f()}catch(e){null==i||i(e)}ae(Ee,v,0)}})),k})),k=((e,n)=>{for(var l in n||(n={}))fe.call(n,l)&&pe(e,l,n[l]);if(ye)for(var l of ye(n))he.call(n,l)&&pe(e,l,n[l]);return e})({load:U,startAutoLoad:e=>me(void 0,null,(function*(){yield B().load(e);try{m=yield o(((e,n)=>me(void 0,null,(function*(){n||e?2!=g&&(j(1),b++,F(null!=n?n:e),j(0)):yield U()}))))}catch(e){null==i||i(e)}return k})),stopAutoLoad:B,isAutoLoading:()=>!a(m),save:H,startAutoSave:()=>me(void 0,null,(function*(){return yield J().save(),E=e.addDidFinishTransactionListener((()=>{const e=x();C(e)&&H(e)})),k})),stopAutoSave:J,isAutoSaving:()=>!a(E),getStatus:()=>g,addStatusListener:e=>I(e,A),delListener:n=>(R(n),e),schedule:Y,getStore:()=>e,destroy:()=>(ie(ge,v).splice(0,void 0),B().stopAutoSave()),getStats:()=>({loads:b,saves:S})},s);return N(k)};var Pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const we=(e,n,l,t,r,i=Se,u,d)=>{const s=re();return[()=>Pe(void 0,null,(function*(){s.clear(),E(yield l(e,n),(({tn:e,cn:n})=>_(de(s,e,M),n)))})),(n,l)=>Pe(void 0,null,(function*(){return((e,n)=>q(ie(s,e),n))(n,l)?x(b(E(yield e(k+K(n)),(e=>{return[e[l],d?(n=$(e,l),t=d,x(I(n,((e,n)=>[n,t(e,n)])))):$(e,l)];var n,t})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,l,t,d,c,v=!1)=>Pe(void 0,null,(function*(){const y=M();I(null!=t?t:{},(e=>E(T(null!=e?e:{}),(e=>_(y,e)))));const h=ee(y);if(!v&&c&&g(h)&&q(s,n))return yield e("DROP "+H+K(n)),void ae(s,n);const p=ie(s,n),w=M(ee(p));if(g(h)||(q(s,n)?yield f(E([l,...h],((t,o)=>Pe(void 0,null,(function*(){le(w,t)||(yield e(J+K(n)+"ADD"+K(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+K(n)+`(${K(l)})`)),_(p,t))}))))):(yield e("CREATE "+H+K(n)+`(${K(l)}${r} PRIMARY KEY${m(E(h,(e=>o+K(e)+r)))});`),ae(s,n,M([l,...h])))),yield f([...!v&&d?E(ee(w),(t=>Pe(void 0,null,(function*(){t!=l&&(yield e(J+K(n)+"DROP"+K(t)),le(p,t))})))):[]]),v)a(t)?yield e(Y+K(n)+B+" true"):yield f(I(t,((t,o)=>Pe(void 0,null,(function*(){a(t)?yield e(Y+K(n)+B+K(l)+"=$1",[o]):g(h)||(yield i(e,n,l,T(t),{[o]:u?E(L(t),u):L(t)},p))})))));else if(g(h))q(s,n)&&(yield e(Y+K(n)+B+" true"));else{const o=b(ee(ie(s,n)),(e=>e!=l)),r={},a=[];I(null!=t?t:{},((e,n)=>{r[n]=E(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),P(a,n)})),yield i(e,n,l,o,r),yield e(Y+K(n)+B+K(l)+`NOT IN(${X(a)})`,a)}})),n=>Pe(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},Se=(e,n,l,t,r)=>Pe(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+K(n)+"("+Q(l,...t)+")VALUES"+m(I(r,(e=>"($"+i[0]+++","+X(e,i)+")")),o)+"ON CONFLICT("+K(l)+")DO UPDATE SET"+m(E(t,(e=>K(e)+"=excluded."+K(e))),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Oe=(e,n,l,t,o,r,i,[u,a,d],s,c,v,y,f,h)=>{const[p,m,E,g]=we(n,s,c,o,f,h),b=be(e,(()=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield m(u,a))[j])?void 0:e[d])?n:"null",oe(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var n,l;yield p(),yield E(u,a,{[j]:{[d]:(l=null!=(n=e())?n:null,te(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(b.stopAutoLoad().stopAutoSave(),r(),b)},v);return b};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ne=(e,n,l,t,o,r,i,[u,d,[s,c,v]],y,h,p,m,E,g,P,w)=>{const[S,A,O,T]=we(n,y,h,o,E,g,P,w),N=(e,n)=>Te(void 0,null,(function*(){return yield f(ue(d,((l,t)=>Te(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield O(l,t,e[i],o,r,n))})))))})),C=(e,n)=>Te(void 0,null,(function*(){return c?yield O(v,F,{[j]:e},!0,!0,n):null})),$=be(e,(()=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){yield S();const e=yield Te(void 0,null,(function*(){return x(b(yield f(ue(u,((e,n)=>Te(void 0,[e,n],(function*([e,n],l){return[e,yield A(l,n)]}))))),(e=>!D(e[1]))))})),n=yield Te(void 0,null,(function*(){return s?(yield A(v,F))[j]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){if(yield S(),a(n)){const[n,l]=e();yield N(n),yield C(l)}else yield N(n[0],!0),yield C(n[1],!0)}))))}))),l,t,o,i,{[m]:()=>p,destroy:()=>($.stopAutoLoad().stopAutoSave(),r(),$)},p);return $},xe="ColumnName",Ce="store",$e="json",Ie=Ce+"TableName",Le=Ce+"Id"+xe,Re=Ce+xe,De="autoLoadIntervalSeconds",Me="rowId"+xe,_e="tableId",je="tableName",Fe="deleteEmptyColumns",Ue="deleteEmptyTable",Be={mode:$e,[De]:1},He={load:0,save:0,[je]:l+"_values"},Je=(e,n,l,t,o)=>{const r=re();return I(e,((e,i)=>{const u=v(L(C(n,s(e)?{[l]:e}:e)),0,R(n));a(u[0])||t(i,u[0])||(o(i,u[0]),ae(r,i,u))})),r};var Ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ke=(e,n,o,r,i,a,d,c,y,f,h="getDb",p)=>{let m,E,g;const b=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[P,w,S,A]=(e=>{var n,t,o;const r=(e=>C(Be,s(e)?{[Ie]:e}:null!=e?e:{}))(e),i=r[De];if(r.mode==$e){const e=null!=(n=r[Ie])?n:l;return[1,i,[e,null!=(t=r[Le])?t:F,null!=(o=r[Re])?o:Ce],M(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(L(C(He,d)),0,R(He)),y=c[2],f=M(y),h=M(y);return[0,i,[Je(u,{[_e]:null,[Me]:F},_e,(e=>q(h,e)),(e=>_(f,e))),Je(a,{[je]:null,[Me]:F,[Fe]:0,[Ue]:0},je,((e,n)=>q(h,n)),((e,n)=>_(f,n))),c],f]})(n);return(P?Oe:Ne)(e,b,(e=>{let n;const l=()=>n=setInterval((()=>Ye(void 0,null,(function*(){try{const[{d:n,s:l,c:t}]=yield b(`${U} ${G} d,${V} s,TOTAL_CHANGES() c FROM ${z}${G} JOIN ${z}${V}`);n==m&&l==E&&t==g||(null!=m&&e(),m=n,E=l,g=t)}catch(e){}}))),1e3*w),t=()=>{m=E=g=null,u(n)},o=r((n=>{A.has(n)&&(t(),e(),l())}));return l(),()=>{t(),i(o)}}),(e=>e()),d,c,y,S,ee(A),((e,n)=>Ye(void 0,null,(function*(){return yield e(`${U} t.name tn,c.name cn FROM ${W}list()t,${W}info(t.name)c ${B} t.schema='main'AND t.type IN('table','view')AND t.name IN(${X(n)})ORDER BY t.name,c.name`,n)}))),f,h,t,p,(e=>!0===e?1:!1===e?0:e),void 0)};var ze=(e,n)=>(n=Symbol[e])?n:Symbol.for("Symbol."+e),Ge=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ve=(e,n,l,t,r,i)=>Ge(void 0,null,(function*(){const u=[1],a=M(t),d=i?b([...i],(e=>e!=l&&!q(a,e))):[];if(!g(d)){const t=T(r),o=x(E(yield e("SELECT"+Q(l,...d)+"FROM"+K(n)+"WHERE"+K(l)+"IN("+X(t)+")",t),(e=>[e[l],e])));p(t,(e=>P(r[e],...E(d,(n=>{var l,t;return null!=(t=null==(l=null==o?void 0:o[e])?void 0:l[n])?t:null})))))}yield e("INSERT OR REPLACE INTO"+K(n)+"("+Q(l,...t,...d)+")VALUES"+m(I(r,(e=>"($"+u[0]+++","+X(e,u)+")")),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));e.createPowerSyncPersister=(e,n,l,t,o)=>{let r;return ke(e,l,((e,...l)=>Ge(void 0,[e,...l],(function*(e,l=[]){return n.execute(e,l).then((e=>{var n,l;return null!=(l=null==(n=e.rows)?void 0:n._array)?l:[]}))}))),(e=>{const l=new AbortController,t=n.onChange({rawTableNames:!0,signal:l.signal});return Ge(void 0,null,(function*(){try{for(var e,n,l,o=((e,n,l)=>(n=e[ze("asyncIterator")])?n.call(e):(e=e[ze("iterator")](),n={},(l=(l,t)=>(t=e[l])&&(n[l]=n=>new Promise(((l,o,r)=>(n=t.call(e,n),r=n.done,Promise.resolve(n.value).then((e=>l({value:e,done:r})),o))))))("next"),l("return"),n))(t);e=!(n=yield o.next()).done;e=!1){const e=n.value;r&&E(e.changedTables,r)}}catch(n){l=[n]}finally{try{e&&(n=o.return)&&(yield n.call(o))}finally{if(l)throw l[0]}}})),r=e,l}),(e=>{r=void 0,e.abort()}),t,o,(()=>0),1,n,"getPowerSync",Ve)}},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPowersync={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},h=e=>{throw Error(e)},p=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),g=e=>0==y(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),w=e=>e.shift(),S=Object,A=e=>S.getPrototypeOf(e),O=S.entries,T=S.keys,N=S.freeze,x=(e=[])=>S.fromEntries(e),C=(...e)=>S.assign({},...e),$=(e,n)=>(delete e[n],e),I=(e,n)=>E(O(e),(([e,l])=>n(l,e))),L=e=>S.values(e),R=e=>y(T(e)),D=e=>(e=>!a(e)&&d(A(e),(e=>e==S.prototype||a(A(e))),(()=>!0)))(e)&&0==R(e),M=e=>new Set(c(e)||a(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),j="_",F="_id",U="SELECT",B="WHERE",H="TABLE",J="ALTER "+H,Y="DELETE FROM",k=U+"*FROM",z="pragma_",G="data_version",V="schema_version",W="pragma_table_",K=e=>`"${e.replace(/"/g,'""')}"`,Q=(...e)=>m(E(e,K),o),X=(e,n=[1])=>m(E(e,(()=>"$"+n[0]++)),o),q=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},Z=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),ee=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},ne=(e,n)=>null==e?void 0:e.forEach(n),le=(e,n)=>null==e?void 0:e.delete(n),te=JSON.stringify,oe=JSON.parse,re=e=>new Map(e),ie=(e,n)=>null==e?void 0:e.get(n),ue=(e,n)=>{var l;return E([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},ae=(e,n,l)=>a(l)?(le(e,n),e):null==e?void 0:e.set(n,l),de=(e,n,l,t)=>(q(e,n)?null==t||t(ie(e,n)):ae(e,n,l()),ie(e,n)),se=(e,n,l,t,o=0)=>d((l?de:ie)(e,n[o],o>y(n)-2?l:re),(r=>{if(o>y(n)-2)return(null==t?void 0:t(r))&&ae(e,n[o]),r;const i=se(r,n,l,t,o+1);return Z(r)&&ae(e,n[o]),i})),ce=/^\d+$/;var ve=Object.defineProperty,ye=Object.getOwnPropertySymbols,fe=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable,pe=(e,n,l)=>n in e?ve(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,me=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ee=re(),ge=re(),be=(e,n,l,o,r,i,u,s={},v=[])=>{let f,m,E,g=0,b=0,S=0;de(Ee,v,(()=>0)),de(ge,v,(()=>[]));const A=re(),[O,T,x,C,$]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!D(e)||!D(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!D(e)||!D(n),n.setContent]:h("Store type not supported by this Persister"))(u,e),[I,L,R]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?w(e):null)?o:t+n++},n=>{ce.test(n)&&y(e)<1e3&&P(e,n)}]})(),o=re();return[(l,r,i,u=[],a=()=>[])=>{null!=e||(e=k);const d=n(1);return ae(o,d,[l,r,i,u,a]),_(se(r,null!=i?i:[t],M),d),d},(n,l,...r)=>p(((e,n=[t])=>{const l=[],o=(e,t)=>t==y(n)?P(l,e):null===n[t]?ne(e,(e=>o(e,t+1))):p([n[t],null],(n=>o(ie(e,n),t+1)));return o(e,0),l})(n,l),(n=>ne(n,(n=>ie(o,n)[0](e,...null!=l?l:[],...r))))),e=>d(ie(o,e),(([,n,r])=>(se(n,null!=r?r:[t],void 0,(n=>(le(n,e),Z(n)?1:0))),ae(o,e),l(e),r))),n=>d(ie(o,n),(([n,,l=[],t,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(l)?n(e,...i,...o(i)):a(l[s])?p(null!=(d=null==(u=t[s])?void 0:u.call(t,...i))?d:[],(e=>r(...i,e))):r(...i,l[s])};r()}))]})(),j=e=>{e!=g&&(g=e,L(A,void 0,g))},F=n=>{(O&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},U=e=>me(void 0,null,(function*(){return 2!=g&&(j(1),b++,yield Y((()=>me(void 0,null,(function*(){try{const l=yield n();c(l)?F(l):e?$(e):h("Content is not an array: "+l)}catch(n){null==i||i(n),e&&$(e)}j(0)}))))),k})),B=()=>(m&&(r(m),m=void 0),k),H=e=>me(void 0,null,(function*(){return 1!=g&&(j(2),S++,yield Y((()=>me(void 0,null,(function*(){try{yield l(T,e)}catch(e){null==i||i(e)}j(0)}))))),k})),J=()=>(d(E,e.delListener),E=void 0,k),Y=(...e)=>me(void 0,null,(function*(){return P(ie(ge,v),...e),yield me(void 0,null,(function*(){if(!ie(Ee,v)){for(ae(Ee,v,1);!a(f=w(ie(ge,v)));)try{yield f()}catch(e){null==i||i(e)}ae(Ee,v,0)}})),k})),k=((e,n)=>{for(var l in n||(n={}))fe.call(n,l)&&pe(e,l,n[l]);if(ye)for(var l of ye(n))he.call(n,l)&&pe(e,l,n[l]);return e})({load:U,startAutoLoad:e=>me(void 0,null,(function*(){yield B().load(e);try{m=yield o(((e,n)=>me(void 0,null,(function*(){n||e?2!=g&&(j(1),b++,F(null!=n?n:e),j(0)):yield U()}))))}catch(e){null==i||i(e)}return k})),stopAutoLoad:B,isAutoLoading:()=>!a(m),save:H,startAutoSave:()=>me(void 0,null,(function*(){return yield J().save(),E=e.addDidFinishTransactionListener((()=>{const e=x();C(e)&&H(e)})),k})),stopAutoSave:J,isAutoSaving:()=>!a(E),getStatus:()=>g,addStatusListener:e=>I(e,A),delListener:n=>(R(n),e),schedule:Y,getStore:()=>e,destroy:()=>(ie(ge,v).splice(0,void 0),B().stopAutoSave()),getStats:()=>({loads:b,saves:S})},s);return N(k)};var Pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const we=(e,n,l,t,r,i=Se,u,d)=>{const s=re();return[()=>Pe(void 0,null,(function*(){s.clear(),E(yield l(e,n),(({tn:e,cn:n})=>_(de(s,e,M),n)))})),(n,l)=>Pe(void 0,null,(function*(){return((e,n)=>q(ie(s,e),n))(n,l)?x(b(E(yield e(k+K(n)),(e=>{return[e[l],d?(n=$(e,l),t=d,x(I(n,((e,n)=>[n,t(e,n)])))):$(e,l)];var n,t})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,l,t,d,c,v=!1)=>Pe(void 0,null,(function*(){const y=M();I(null!=t?t:{},(e=>E(T(null!=e?e:{}),(e=>_(y,e)))));const h=ee(y);if(!v&&c&&g(h)&&q(s,n))return yield e("DROP "+H+K(n)),void ae(s,n);const p=ie(s,n),w=M(ee(p));if(g(h)||(q(s,n)?yield f(E([l,...h],((t,o)=>Pe(void 0,null,(function*(){le(w,t)||(yield e(J+K(n)+"ADD"+K(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+K(n)+`(${K(l)})`)),_(p,t))}))))):(yield e("CREATE "+H+K(n)+`(${K(l)}${r} PRIMARY KEY${m(E(h,(e=>o+K(e)+r)))});`),ae(s,n,M([l,...h])))),yield f([...!v&&d?E(ee(w),(t=>Pe(void 0,null,(function*(){t!=l&&(yield e(J+K(n)+"DROP"+K(t)),le(p,t))})))):[]]),v)a(t)?yield e(Y+K(n)+B+" true"):yield f(I(t,((t,o)=>Pe(void 0,null,(function*(){a(t)?yield e(Y+K(n)+B+K(l)+"=$1",[o]):g(h)||(yield i(e,n,l,T(t),{[o]:u?E(L(t),u):L(t)},p))})))));else if(g(h))q(s,n)&&(yield e(Y+K(n)+B+" true"));else{const o=b(ee(ie(s,n)),(e=>e!=l)),r={},a=[];I(null!=t?t:{},((e,n)=>{r[n]=E(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),P(a,n)})),yield i(e,n,l,o,r),yield e(Y+K(n)+B+K(l)+`NOT IN(${X(a)})`,a)}})),n=>Pe(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},Se=(e,n,l,t,r)=>Pe(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+K(n)+"("+Q(l,...t)+")VALUES"+m(I(r,(e=>"($"+i[0]+++","+X(e,i)+")")),o)+"ON CONFLICT("+K(l)+")DO UPDATE SET"+m(E(t,(e=>K(e)+"=excluded."+K(e))),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Oe=(e,n,l,t,o,r,i,[u,a,d],s,c,v,y,f,h)=>{const[p,m,E,g]=we(n,s,c,o,f,h),b=be(e,(()=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield m(u,a))[j])?void 0:e[d])?n:"null",oe(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var n,l;yield p(),yield E(u,a,{[j]:{[d]:(l=null!=(n=e())?n:null,te(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(b.stopAutoLoad().stopAutoSave(),r(),b)},v);return b};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ne=(e,n,l,t,o,r,i,[u,d,[s,c,v]],y,h,p,m,E,g,P,w)=>{const[S,A,O,T]=we(n,y,h,o,E,g,P,w),N=(e,n)=>Te(void 0,null,(function*(){return yield f(ue(d,((l,t)=>Te(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield O(l,t,e[i],o,r,n))})))))})),C=(e,n)=>Te(void 0,null,(function*(){return c?yield O(v,F,{[j]:e},!0,!0,n):null})),$=be(e,(()=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){yield S();const e=yield Te(void 0,null,(function*(){return x(b(yield f(ue(u,((e,n)=>Te(void 0,[e,n],(function*([e,n],l){return[e,yield A(l,n)]}))))),(e=>!D(e[1]))))})),n=yield Te(void 0,null,(function*(){return s?(yield A(v,F))[j]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){if(yield S(),a(n)){const[n,l]=e();yield N(n),yield C(l)}else yield N(n[0],!0),yield C(n[1],!0)}))))}))),l,t,o,i,{[m]:()=>p,destroy:()=>($.stopAutoLoad().stopAutoSave(),r(),$)},p);return $},xe="ColumnName",Ce="store",$e="json",Ie=Ce+"TableName",Le=Ce+"Id"+xe,Re=Ce+xe,De="autoLoadIntervalSeconds",Me="rowId"+xe,_e="tableId",je="tableName",Fe="deleteEmptyColumns",Ue="deleteEmptyTable",Be={mode:$e,[De]:1},He={load:0,save:0,[je]:l+"_values"},Je=(e,n,l,t,o)=>{const r=re();return I(e,((e,i)=>{const u=v(L(C(n,s(e)?{[l]:e}:e)),0,R(n));a(u[0])||t(i,u[0])||(o(i,u[0]),ae(r,i,u))})),r};var Ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ke=(e,n,o,r,i,a,d,c,y,f,h="getDb",p)=>{let m,E,g;const b=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[P,w,S,A]=(e=>{var n,t,o;const r=(e=>C(Be,s(e)?{[Ie]:e}:null!=e?e:{}))(e),i=r[De];if(r.mode==$e){const e=null!=(n=r[Ie])?n:l;return[1,i,[e,null!=(t=r[Le])?t:F,null!=(o=r[Re])?o:Ce],M(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(L(C(He,d)),0,R(He)),y=c[2],f=M(y),h=M(y);return[0,i,[Je(u,{[_e]:null,[Me]:F},_e,(e=>q(h,e)),(e=>_(f,e))),Je(a,{[je]:null,[Me]:F,[Fe]:0,[Ue]:0},je,((e,n)=>q(h,n)),((e,n)=>_(f,n))),c],f]})(n);return(P?Oe:Ne)(e,b,(e=>{let n;const l=()=>n=setInterval((()=>Ye(void 0,null,(function*(){try{const[{d:n,s:l,c:t}]=yield b(`${U} ${G} d,${V} s,TOTAL_CHANGES() c FROM ${z}${G} JOIN ${z}${V}`);n==m&&l==E&&t==g||(null!=m&&e(),m=n,E=l,g=t)}catch(e){}}))),1e3*w),t=()=>{m=E=g=null,u(n)},o=r((n=>{A.has(n)&&(t(),e(),l())}));return l(),()=>{t(),i(o)}}),(e=>e()),d,c,y,S,ee(A),((e,n)=>Ye(void 0,null,(function*(){return yield e(`${U} t.name tn,c.name cn FROM ${W}list()t,${W}info(t.name)c ${B} t.schema='main'AND t.type IN('table','view')AND t.name IN(${X(n)})ORDER BY t.name,c.name`,n)}))),f,h,t,p,(e=>!0===e?1:!1===e?0:e),void 0)};var ze=(e,n)=>(n=Symbol[e])?n:Symbol.for("Symbol."+e),Ge=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ve=(e,n,l,t,r,i)=>Ge(void 0,null,(function*(){const u=[1],a=M(t),d=i?b([...i],(e=>e!=l&&!q(a,e))):[];if(!g(d)){const t=T(r),o=x(E(yield e("SELECT"+Q(l,...d)+"FROM"+K(n)+"WHERE"+K(l)+"IN("+X(t)+")",t),(e=>[e[l],e])));p(t,(e=>P(r[e],...E(d,(n=>{var l,t;return null!=(t=null==(l=null==o?void 0:o[e])?void 0:l[n])?t:null})))))}yield e("INSERT OR REPLACE INTO"+K(n)+"("+Q(l,...t,...d)+")VALUES"+m(I(r,(e=>"($"+u[0]+++","+X(e,u)+")")),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));e.createPowerSyncPersister=(e,n,l,t,o)=>{let r;return ke(e,l,((e,...l)=>Ge(void 0,[e,...l],(function*(e,l=[]){return n.execute(e,l).then((e=>{var n,l;return null!=(l=null==(n=e.rows)?void 0:n._array)?l:[]}))}))),(e=>{const l=new AbortController,t=n.onChange({rawTableNames:!0,signal:l.signal});return Ge(void 0,null,(function*(){try{for(var e,n,l,o=((e,n,l)=>(n=e[ze("asyncIterator")])?n.call(e):(e=e[ze("iterator")](),n={},(l=(l,t)=>(t=e[l])&&(n[l]=n=>new Promise(((l,o,r)=>(n=t.call(e,n),r=n.done,Promise.resolve(n.value).then((e=>l({value:e,done:r})),o))))))("next"),l("return"),n))(t);e=!(n=yield o.next()).done;e=!1){const e=n.value;r&&E(e.changedTables,r)}}catch(n){l=[n]}finally{try{e&&(n=o.return)&&(yield n.call(o))}finally{if(l)throw l[0]}}})),r=e,l}),(e=>{r=void 0,e.abort()}),t,o,(()=>0),1,n,"getPowerSync",Ve)}},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPowersync={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},h=e=>{throw Error(e)},p=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),g=e=>0==y(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),w=e=>e.shift(),S=Object,A=e=>S.getPrototypeOf(e),O=S.entries,T=S.keys,N=S.freeze,x=(e=[])=>S.fromEntries(e),C=(...e)=>S.assign({},...e),$=(e,n)=>(delete e[n],e),I=(e,n)=>E(O(e),(([e,l])=>n(l,e))),L=e=>S.values(e),R=e=>y(T(e)),D=e=>(e=>!a(e)&&d(A(e),(e=>e==S.prototype||a(A(e))),(()=>!0)))(e)&&0==R(e),M=e=>new Set(c(e)||a(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),j="_",F="_id",U="SELECT",B="WHERE",H="TABLE",J="ALTER "+H,Y="DELETE FROM",k=U+"*FROM",z="pragma_",G="data_version",V="schema_version",W="pragma_table_",K=e=>`"${e.replace(/"/g,'""')}"`,Q=(...e)=>m(E(e,K),o),X=(e,n=[1])=>m(E(e,(()=>"$"+n[0]++)),o),q=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},Z=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),ee=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},ne=(e,n)=>null==e?void 0:e.forEach(n),le=(e,n)=>null==e?void 0:e.delete(n),te=JSON.stringify,oe=JSON.parse,re=e=>new Map(e),ie=(e,n)=>null==e?void 0:e.get(n),ue=(e,n)=>{var l;return E([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},ae=(e,n,l)=>a(l)?(le(e,n),e):null==e?void 0:e.set(n,l),de=(e,n,l,t)=>(q(e,n)?null==t||t(ie(e,n)):ae(e,n,l()),ie(e,n)),se=(e,n,l,t,o=0)=>d((l?de:ie)(e,n[o],o>y(n)-2?l:re),(r=>{if(o>y(n)-2)return(null==t?void 0:t(r))&&ae(e,n[o]),r;const i=se(r,n,l,t,o+1);return Z(r)&&ae(e,n[o]),i})),ce=/^\d+$/;var ve=Object.defineProperty,ye=Object.getOwnPropertySymbols,fe=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable,pe=(e,n,l)=>n in e?ve(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,me=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ee=re(),ge=re(),be=(e,n,l,o,r,i,u,s={},v=[])=>{let f,m,E,g=0,b=0,S=0;de(Ee,v,(()=>0)),de(ge,v,(()=>[]));const A=re(),[O,T,x,C,$]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!D(e)||!D(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!D(e)||!D(n),n.setContent]:h("Store type not supported by this Persister"))(u,e),[I,L,R]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?w(e):null)?o:t+n++},n=>{ce.test(n)&&y(e)<1e3&&P(e,n)}]})(),o=re();return[(l,r,i,u=[],a=()=>[])=>{null!=e||(e=k);const d=n(1);return ae(o,d,[l,r,i,u,a]),_(se(r,null!=i?i:[t],M),d),d},(n,l,...r)=>p(((e,n=[t])=>{const l=[],o=(e,t)=>t==y(n)?P(l,e):null===n[t]?ne(e,(e=>o(e,t+1))):p([n[t],null],(n=>o(ie(e,n),t+1)));return o(e,0),l})(n,l),(n=>ne(n,(n=>ie(o,n)[0](e,...null!=l?l:[],...r))))),e=>d(ie(o,e),(([,n,r])=>(se(n,null!=r?r:[t],void 0,(n=>(le(n,e),Z(n)?1:0))),ae(o,e),l(e),r))),n=>d(ie(o,n),(([n,,l=[],t,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(l)?n(e,...i,...o(i)):a(l[s])?p(null!=(d=null==(u=t[s])?void 0:u.call(t,...i))?d:[],(e=>r(...i,e))):r(...i,l[s])};r()}))]})(),j=e=>{e!=g&&(g=e,L(A,void 0,g))},F=n=>{(O&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},U=e=>me(void 0,null,(function*(){return 2!=g&&(j(1),b++,yield Y((()=>me(void 0,null,(function*(){try{const l=yield n();c(l)?F(l):e?$(e):h("Content is not an array "+l)}catch(n){null==i||i(n),e&&$(e)}j(0)}))))),k})),B=()=>(m&&(r(m),m=void 0),k),H=e=>me(void 0,null,(function*(){return 1!=g&&(j(2),S++,yield Y((()=>me(void 0,null,(function*(){try{yield l(T,e)}catch(e){null==i||i(e)}j(0)}))))),k})),J=()=>(d(E,e.delListener),E=void 0,k),Y=(...e)=>me(void 0,null,(function*(){return P(ie(ge,v),...e),yield me(void 0,null,(function*(){if(!ie(Ee,v)){for(ae(Ee,v,1);!a(f=w(ie(ge,v)));)try{yield f()}catch(e){null==i||i(e)}ae(Ee,v,0)}})),k})),k=((e,n)=>{for(var l in n||(n={}))fe.call(n,l)&&pe(e,l,n[l]);if(ye)for(var l of ye(n))he.call(n,l)&&pe(e,l,n[l]);return e})({load:U,startAutoLoad:e=>me(void 0,null,(function*(){yield B().load(e);try{m=yield o(((e,n)=>me(void 0,null,(function*(){n||e?2!=g&&(j(1),b++,F(null!=n?n:e),j(0)):yield U()}))))}catch(e){null==i||i(e)}return k})),stopAutoLoad:B,isAutoLoading:()=>!a(m),save:H,startAutoSave:()=>me(void 0,null,(function*(){return yield J().save(),E=e.addDidFinishTransactionListener((()=>{const e=x();C(e)&&H(e)})),k})),stopAutoSave:J,isAutoSaving:()=>!a(E),getStatus:()=>g,addStatusListener:e=>I(e,A),delListener:n=>(R(n),e),schedule:Y,getStore:()=>e,destroy:()=>(ie(ge,v).splice(0,void 0),B().stopAutoSave()),getStats:()=>({loads:b,saves:S})},s);return N(k)};var Pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const we=(e,n,l,t,r,i=Se,u,d)=>{const s=re();return[()=>Pe(void 0,null,(function*(){s.clear(),E(yield l(e,n),(({tn:e,cn:n})=>_(de(s,e,M),n)))})),(n,l)=>Pe(void 0,null,(function*(){return((e,n)=>q(ie(s,e),n))(n,l)?x(b(E(yield e(k+K(n)),(e=>{return[e[l],d?(n=$(e,l),t=d,x(I(n,((e,n)=>[n,t(e,n)])))):$(e,l)];var n,t})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,l,t,d,c,v=!1)=>Pe(void 0,null,(function*(){const y=M();I(null!=t?t:{},(e=>E(T(null!=e?e:{}),(e=>_(y,e)))));const h=ee(y);if(!v&&c&&g(h)&&q(s,n))return yield e("DROP "+H+K(n)),void ae(s,n);const p=ie(s,n),w=M(ee(p));if(g(h)||(q(s,n)?yield f(E([l,...h],((t,o)=>Pe(void 0,null,(function*(){le(w,t)||(yield e(J+K(n)+"ADD"+K(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+K(n)+`(${K(l)})`)),_(p,t))}))))):(yield e("CREATE "+H+K(n)+`(${K(l)}${r} PRIMARY KEY${m(E(h,(e=>o+K(e)+r)))});`),ae(s,n,M([l,...h])))),yield f([...!v&&d?E(ee(w),(t=>Pe(void 0,null,(function*(){t!=l&&(yield e(J+K(n)+"DROP"+K(t)),le(p,t))})))):[]]),v)a(t)?yield e(Y+K(n)+B+" true"):yield f(I(t,((t,o)=>Pe(void 0,null,(function*(){a(t)?yield e(Y+K(n)+B+K(l)+"=$1",[o]):g(h)||(yield i(e,n,l,T(t),{[o]:u?E(L(t),u):L(t)},p))})))));else if(g(h))q(s,n)&&(yield e(Y+K(n)+B+" true"));else{const o=b(ee(ie(s,n)),(e=>e!=l)),r={},a=[];I(null!=t?t:{},((e,n)=>{r[n]=E(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),P(a,n)})),yield i(e,n,l,o,r),yield e(Y+K(n)+B+K(l)+`NOT IN(${X(a)})`,a)}})),n=>Pe(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},Se=(e,n,l,t,r)=>Pe(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+K(n)+"("+Q(l,...t)+")VALUES"+m(I(r,(e=>"($"+i[0]+++","+X(e,i)+")")),o)+"ON CONFLICT("+K(l)+")DO UPDATE SET"+m(E(t,(e=>K(e)+"=excluded."+K(e))),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Oe=(e,n,l,t,o,r,i,[u,a,d],s,c,v,y,f,h)=>{const[p,m,E,g]=we(n,s,c,o,f,h),b=be(e,(()=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield m(u,a))[j])?void 0:e[d])?n:"null",oe(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var n,l;yield p(),yield E(u,a,{[j]:{[d]:(l=null!=(n=e())?n:null,te(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(b.stopAutoLoad().stopAutoSave(),r(),b)},v);return b};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ne=(e,n,l,t,o,r,i,[u,d,[s,c,v]],y,h,p,m,E,g,P,w)=>{const[S,A,O,T]=we(n,y,h,o,E,g,P,w),N=(e,n)=>Te(void 0,null,(function*(){return yield f(ue(d,((l,t)=>Te(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield O(l,t,e[i],o,r,n))})))))})),C=(e,n)=>Te(void 0,null,(function*(){return c?yield O(v,F,{[j]:e},!0,!0,n):null})),$=be(e,(()=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){yield S();const e=yield Te(void 0,null,(function*(){return x(b(yield f(ue(u,((e,n)=>Te(void 0,[e,n],(function*([e,n],l){return[e,yield A(l,n)]}))))),(e=>!D(e[1]))))})),n=yield Te(void 0,null,(function*(){return s?(yield A(v,F))[j]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){if(yield S(),a(n)){const[n,l]=e();yield N(n),yield C(l)}else yield N(n[0],!0),yield C(n[1],!0)}))))}))),l,t,o,i,{[m]:()=>p,destroy:()=>($.stopAutoLoad().stopAutoSave(),r(),$)},p);return $},xe="ColumnName",Ce="store",$e="json",Ie=Ce+"TableName",Le=Ce+"Id"+xe,Re=Ce+xe,De="autoLoadIntervalSeconds",Me="rowId"+xe,_e="tableId",je="tableName",Fe="deleteEmptyColumns",Ue="deleteEmptyTable",Be={mode:$e,[De]:1},He={load:0,save:0,[je]:l+"_values"},Je=(e,n,l,t,o)=>{const r=re();return I(e,((e,i)=>{const u=v(L(C(n,s(e)?{[l]:e}:e)),0,R(n));a(u[0])||t(i,u[0])||(o(i,u[0]),ae(r,i,u))})),r};var Ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ke=(e,n,o,r,i,a,d,c,y,f,h="getDb",p)=>{let m,E,g;const b=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[P,w,S,A]=(e=>{var n,t,o;const r=(e=>C(Be,s(e)?{[Ie]:e}:null!=e?e:{}))(e),i=r[De];if(r.mode==$e){const e=null!=(n=r[Ie])?n:l;return[1,i,[e,null!=(t=r[Le])?t:F,null!=(o=r[Re])?o:Ce],M(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(L(C(He,d)),0,R(He)),y=c[2],f=M(y),h=M(y);return[0,i,[Je(u,{[_e]:null,[Me]:F},_e,(e=>q(h,e)),(e=>_(f,e))),Je(a,{[je]:null,[Me]:F,[Fe]:0,[Ue]:0},je,((e,n)=>q(h,n)),((e,n)=>_(f,n))),c],f]})(n);return(P?Oe:Ne)(e,b,(e=>{let n;const l=()=>n=setInterval((()=>Ye(void 0,null,(function*(){try{const[{d:n,s:l,c:t}]=yield b(`${U} ${G} d,${V} s,TOTAL_CHANGES() c FROM ${z}${G} JOIN ${z}${V}`);n==m&&l==E&&t==g||(null!=m&&e(),m=n,E=l,g=t)}catch(e){}}))),1e3*w),t=()=>{m=E=g=null,u(n)},o=r((n=>{A.has(n)&&(t(),e(),l())}));return l(),()=>{t(),i(o)}}),(e=>e()),d,c,y,S,ee(A),((e,n)=>Ye(void 0,null,(function*(){return yield e(`${U} t.name tn,c.name cn FROM ${W}list()t,${W}info(t.name)c ${B} t.schema='main'AND t.type IN('table','view')AND t.name IN(${X(n)})ORDER BY t.name,c.name`,n)}))),f,h,t,p,(e=>!0===e?1:!1===e?0:e),void 0)};var ze=(e,n)=>(n=Symbol[e])?n:Symbol.for("Symbol."+e),Ge=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ve=(e,n,l,t,r,i)=>Ge(void 0,null,(function*(){const u=[1],a=M(t),d=i?b([...i],(e=>e!=l&&!q(a,e))):[];if(!g(d)){const t=T(r),o=x(E(yield e("SELECT"+Q(l,...d)+"FROM"+K(n)+"WHERE"+K(l)+"IN("+X(t)+")",t),(e=>[e[l],e])));p(t,(e=>P(r[e],...E(d,(n=>{var l,t;return null!=(t=null==(l=null==o?void 0:o[e])?void 0:l[n])?t:null})))))}yield e("INSERT OR REPLACE INTO"+K(n)+"("+Q(l,...t,...d)+")VALUES"+m(I(r,(e=>"($"+u[0]+++","+X(e,u)+")")),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));e.createPowerSyncPersister=(e,n,l,t,o)=>{let r;return ke(e,l,((e,...l)=>Ge(void 0,[e,...l],(function*(e,l=[]){return n.execute(e,l).then((e=>{var n,l;return null!=(l=null==(n=e.rows)?void 0:n._array)?l:[]}))}))),(e=>{const l=new AbortController,t=n.onChange({rawTableNames:!0,signal:l.signal});return Ge(void 0,null,(function*(){try{for(var e,n,l,o=((e,n,l)=>(n=e[ze("asyncIterator")])?n.call(e):(e=e[ze("iterator")](),n={},(l=(l,t)=>(t=e[l])&&(n[l]=n=>new Promise(((l,o,r)=>(n=t.call(e,n),r=n.done,Promise.resolve(n.value).then((e=>l({value:e,done:r})),o))))))("next"),l("return"),n))(t);e=!(n=yield o.next()).done;e=!1){const e=n.value;r&&E(e.changedTables,r)}}catch(n){l=[n]}finally{try{e&&(n=o.return)&&(yield n.call(o))}finally{if(l)throw l[0]}}})),r=e,l}),(e=>{r=void 0,e.abort()}),t,o,(()=>0),1,n,"getPowerSync",Ve)}},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPowersync={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},h=e=>{throw Error(e)},p=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),E=(e,n)=>e.map(n),g=e=>0==y(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),w=e=>e.shift(),S=Object,A=e=>S.getPrototypeOf(e),O=S.entries,T=S.keys,N=S.freeze,x=(e=[])=>S.fromEntries(e),C=(...e)=>S.assign({},...e),$=(e,n)=>(delete e[n],e),I=(e,n)=>E(O(e),(([e,l])=>n(l,e))),L=e=>S.values(e),R=e=>y(T(e)),D=e=>(e=>!a(e)&&d(A(e),(e=>e==S.prototype||a(A(e))),(()=>!0)))(e)&&0==R(e),M=e=>new Set(c(e)||a(e)?e:[e]),_=(e,n)=>null==e?void 0:e.add(n),j="_",F="_id",U="SELECT",B="WHERE",H="TABLE",J="ALTER "+H,Y="DELETE FROM",k=U+"*FROM",z="pragma_",G="data_version",V="schema_version",W="pragma_table_",K=e=>`"${e.replace(/"/g,'""')}"`,Q=(...e)=>m(E(e,K),o),X=(e,n=[1])=>m(E(e,(()=>"$"+n[0]++)),o),q=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},Z=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),ee=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},ne=(e,n)=>null==e?void 0:e.forEach(n),le=(e,n)=>null==e?void 0:e.delete(n),te=JSON.stringify,oe=JSON.parse,re=e=>new Map(e),ie=(e,n)=>null==e?void 0:e.get(n),ue=(e,n)=>{var l;return E([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},ae=(e,n,l)=>a(l)?(le(e,n),e):null==e?void 0:e.set(n,l),de=(e,n,l,t)=>(q(e,n)?null==t||t(ie(e,n)):ae(e,n,l()),ie(e,n)),se=(e,n,l,t,o=0)=>d((l?de:ie)(e,n[o],o>y(n)-2?l:re),(r=>{if(o>y(n)-2)return(null==t?void 0:t(r))&&ae(e,n[o]),r;const i=se(r,n,l,t,o+1);return Z(r)&&ae(e,n[o]),i})),ce=/^\d+$/;var ve=Object.defineProperty,ye=Object.getOwnPropertySymbols,fe=Object.prototype.hasOwnProperty,he=Object.prototype.propertyIsEnumerable,pe=(e,n,l)=>n in e?ve(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,me=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ee=re(),ge=re(),be=(e,n,l,o,r,i,u,s={},v=[])=>{let f,m,E,g=0,b=0,S=0;de(Ee,v,(()=>0)),de(ge,v,(()=>[]));const A=re(),[O,T,x,C,$]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!D(e)||!D(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!D(e)||!D(n),n.setContent]:h("Store type not supported by this Persister"))(u,e),[I,L,R]=(()=>{let e;const[n,l]=(()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?w(e):null)?o:t+n++},n=>{ce.test(n)&&y(e)<1e3&&P(e,n)}]})(),o=re();return[(l,r,i,u=[],a=()=>[])=>{null!=e||(e=k);const d=n(1);return ae(o,d,[l,r,i,u,a]),_(se(r,null!=i?i:[t],M),d),d},(n,l,...r)=>p(((e,n=[t])=>{const l=[],o=(e,t)=>t==y(n)?P(l,e):null===n[t]?ne(e,(e=>o(e,t+1))):p([n[t],null],(n=>o(ie(e,n),t+1)));return o(e,0),l})(n,l),(n=>ne(n,(n=>ie(o,n)[0](e,...null!=l?l:[],...r))))),e=>d(ie(o,e),(([,n,r])=>(se(n,null!=r?r:[t],void 0,(n=>(le(n,e),Z(n)?1:0))),ae(o,e),l(e),r))),n=>d(ie(o,n),(([n,,l=[],t,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(l)?n(e,...i,...o(i)):a(l[s])?p(null!=(d=null==(u=t[s])?void 0:u.call(t,...i))?d:[],(e=>r(...i,e))):r(...i,l[s])};r()}))]})(),j=e=>{e!=g&&(g=e,L(A,void 0,g))},F=n=>{(O&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},U=e=>me(void 0,null,(function*(){return 2!=g&&(j(1),b++,yield Y((()=>me(void 0,null,(function*(){try{const l=yield n();c(l)?F(l):e?$(e):h("Content is not an array: "+l)}catch(n){null==i||i(n),e&&$(e)}j(0)}))))),k})),B=()=>(m&&(r(m),m=void 0),k),H=e=>me(void 0,null,(function*(){return 1!=g&&(j(2),S++,yield Y((()=>me(void 0,null,(function*(){try{yield l(T,e)}catch(e){null==i||i(e)}j(0)}))))),k})),J=()=>(d(E,e.delListener),E=void 0,k),Y=(...e)=>me(void 0,null,(function*(){return P(ie(ge,v),...e),yield me(void 0,null,(function*(){if(!ie(Ee,v)){for(ae(Ee,v,1);!a(f=w(ie(ge,v)));)try{yield f()}catch(e){null==i||i(e)}ae(Ee,v,0)}})),k})),k=((e,n)=>{for(var l in n||(n={}))fe.call(n,l)&&pe(e,l,n[l]);if(ye)for(var l of ye(n))he.call(n,l)&&pe(e,l,n[l]);return e})({load:U,startAutoLoad:e=>me(void 0,null,(function*(){yield B().load(e);try{m=yield o(((e,n)=>me(void 0,null,(function*(){n||e?2!=g&&(j(1),b++,F(null!=n?n:e),j(0)):yield U()}))))}catch(e){null==i||i(e)}return k})),stopAutoLoad:B,isAutoLoading:()=>!a(m),save:H,startAutoSave:()=>me(void 0,null,(function*(){return yield J().save(),E=e.addDidFinishTransactionListener((()=>{const e=x();C(e)&&H(e)})),k})),stopAutoSave:J,isAutoSaving:()=>!a(E),getStatus:()=>g,addStatusListener:e=>I(e,A),delListener:n=>(R(n),e),schedule:Y,getStore:()=>e,destroy:()=>(ie(ge,v).splice(0,void 0),B().stopAutoSave()),getStats:()=>({loads:b,saves:S})},s);return N(k)};var Pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const we=(e,n,l,t,r,i=Se,u,d)=>{const s=re();return[()=>Pe(void 0,null,(function*(){s.clear(),E(yield l(e,n),(({tn:e,cn:n})=>_(de(s,e,M),n)))})),(n,l)=>Pe(void 0,null,(function*(){return((e,n)=>q(ie(s,e),n))(n,l)?x(b(E(yield e(k+K(n)),(e=>{return[e[l],d?(n=$(e,l),t=d,x(I(n,((e,n)=>[n,t(e,n)])))):$(e,l)];var n,t})),(([e,n])=>!a(e)&&!D(n)))):{}})),(n,l,t,d,c,v=!1)=>Pe(void 0,null,(function*(){const y=M();I(null!=t?t:{},(e=>E(T(null!=e?e:{}),(e=>_(y,e)))));const h=ee(y);if(!v&&c&&g(h)&&q(s,n))return yield e("DROP "+H+K(n)),void ae(s,n);const p=ie(s,n),w=M(ee(p));if(g(h)||(q(s,n)?yield f(E([l,...h],((t,o)=>Pe(void 0,null,(function*(){le(w,t)||(yield e(J+K(n)+"ADD"+K(t)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+K(n)+`(${K(l)})`)),_(p,t))}))))):(yield e("CREATE "+H+K(n)+`(${K(l)}${r} PRIMARY KEY${m(E(h,(e=>o+K(e)+r)))});`),ae(s,n,M([l,...h])))),yield f([...!v&&d?E(ee(w),(t=>Pe(void 0,null,(function*(){t!=l&&(yield e(J+K(n)+"DROP"+K(t)),le(p,t))})))):[]]),v)a(t)?yield e(Y+K(n)+B+" true"):yield f(I(t,((t,o)=>Pe(void 0,null,(function*(){a(t)?yield e(Y+K(n)+B+K(l)+"=$1",[o]):g(h)||(yield i(e,n,l,T(t),{[o]:u?E(L(t),u):L(t)},p))})))));else if(g(h))q(s,n)&&(yield e(Y+K(n)+B+" true"));else{const o=b(ee(ie(s,n)),(e=>e!=l)),r={},a=[];I(null!=t?t:{},((e,n)=>{r[n]=E(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),P(a,n)})),yield i(e,n,l,o,r),yield e(Y+K(n)+B+K(l)+`NOT IN(${X(a)})`,a)}})),n=>Pe(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},Se=(e,n,l,t,r)=>Pe(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+K(n)+"("+Q(l,...t)+")VALUES"+m(I(r,(e=>"($"+i[0]+++","+X(e,i)+")")),o)+"ON CONFLICT("+K(l)+")DO UPDATE SET"+m(E(t,(e=>K(e)+"=excluded."+K(e))),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Oe=(e,n,l,t,o,r,i,[u,a,d],s,c,v,y,f,h)=>{const[p,m,E,g]=we(n,s,c,o,f,h),b=be(e,(()=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var e,n,l;return yield p(),l=null!=(n=null==(e=(yield m(u,a))[j])?void 0:e[d])?n:"null",oe(l,((e,n)=>""===n?void 0:n))}))))}))),(e=>Ae(void 0,null,(function*(){return yield g((()=>Ae(void 0,null,(function*(){var n,l;yield p(),yield E(u,a,{[j]:{[d]:(l=null!=(n=e())?n:null,te(l,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),l,t,o,i,{[y]:()=>v,destroy:()=>(b.stopAutoLoad().stopAutoSave(),r(),b)},v);return b};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ne=(e,n,l,t,o,r,i,[u,d,[s,c,v]],y,h,p,m,E,g,P,w)=>{const[S,A,O,T]=we(n,y,h,o,E,g,P,w),N=(e,n)=>Te(void 0,null,(function*(){return yield f(ue(d,((l,t)=>Te(void 0,[l,t],(function*([l,t,o,r],i){n&&!(i in e)||(yield O(l,t,e[i],o,r,n))})))))})),C=(e,n)=>Te(void 0,null,(function*(){return c?yield O(v,F,{[j]:e},!0,!0,n):null})),$=be(e,(()=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){yield S();const e=yield Te(void 0,null,(function*(){return x(b(yield f(ue(u,((e,n)=>Te(void 0,[e,n],(function*([e,n],l){return[e,yield A(l,n)]}))))),(e=>!D(e[1]))))})),n=yield Te(void 0,null,(function*(){return s?(yield A(v,F))[j]:{}}));return D(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Te(void 0,null,(function*(){return yield T((()=>Te(void 0,null,(function*(){if(yield S(),a(n)){const[n,l]=e();yield N(n),yield C(l)}else yield N(n[0],!0),yield C(n[1],!0)}))))}))),l,t,o,i,{[m]:()=>p,destroy:()=>($.stopAutoLoad().stopAutoSave(),r(),$)},p);return $},xe="ColumnName",Ce="store",$e="json",Ie=Ce+"TableName",Le=Ce+"Id"+xe,Re=Ce+xe,De="autoLoadIntervalSeconds",Me="rowId"+xe,_e="tableId",je="tableName",Fe="deleteEmptyColumns",Ue="deleteEmptyTable",Be={mode:$e,[De]:1},He={load:0,save:0,[je]:l+"_values"},Je=(e,n,l,t,o)=>{const r=re();return I(e,((e,i)=>{const u=v(L(C(n,s(e)?{[l]:e}:e)),0,R(n));a(u[0])||t(i,u[0])||(o(i,u[0]),ae(r,i,u))})),r};var Ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ke=(e,n,o,r,i,a,d,c,y,f,h="getDb",p)=>{let m,E,g;const b=((e,n)=>n?(l,t)=>{return o=function*(){return n(l,t),yield e(l,t)},new Promise(((e,n)=>{var l=e=>{try{r(o.next(e))}catch(e){n(e)}},t=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,t);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[P,w,S,A]=(e=>{var n,t,o;const r=(e=>C(Be,s(e)?{[Ie]:e}:null!=e?e:{}))(e),i=r[De];if(r.mode==$e){const e=null!=(n=r[Ie])?n:l;return[1,i,[e,null!=(t=r[Le])?t:F,null!=(o=r[Re])?o:Ce],M(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(L(C(He,d)),0,R(He)),y=c[2],f=M(y),h=M(y);return[0,i,[Je(u,{[_e]:null,[Me]:F},_e,(e=>q(h,e)),(e=>_(f,e))),Je(a,{[je]:null,[Me]:F,[Fe]:0,[Ue]:0},je,((e,n)=>q(h,n)),((e,n)=>_(f,n))),c],f]})(n);return(P?Oe:Ne)(e,b,(e=>{let n;const l=()=>n=setInterval((()=>Ye(void 0,null,(function*(){try{const[{d:n,s:l,c:t}]=yield b(`${U} ${G} d,${V} s,TOTAL_CHANGES() c FROM ${z}${G} JOIN ${z}${V}`);n==m&&l==E&&t==g||(null!=m&&e(),m=n,E=l,g=t)}catch(e){}}))),1e3*w),t=()=>{m=E=g=null,u(n)},o=r((n=>{A.has(n)&&(t(),e(),l())}));return l(),()=>{t(),i(o)}}),(e=>e()),d,c,y,S,ee(A),((e,n)=>Ye(void 0,null,(function*(){return yield e(`${U} t.name tn,c.name cn FROM ${W}list()t,${W}info(t.name)c ${B} t.schema='main'AND t.type IN('table','view')AND t.name IN(${X(n)})ORDER BY t.name,c.name`,n)}))),f,h,t,p,(e=>!0===e?1:!1===e?0:e),void 0)};var ze=(e,n)=>(n=Symbol[e])?n:Symbol.for("Symbol."+e),Ge=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ve=(e,n,l,t,r,i)=>Ge(void 0,null,(function*(){const u=[1],a=M(t),d=i?b([...i],(e=>e!=l&&!q(a,e))):[];if(!g(d)){const t=T(r),o=x(E(yield e("SELECT"+Q(l,...d)+"FROM"+K(n)+"WHERE"+K(l)+"IN("+X(t)+")",t),(e=>[e[l],e])));p(t,(e=>P(r[e],...E(d,(n=>{var l,t;return null!=(t=null==(l=null==o?void 0:o[e])?void 0:l[n])?t:null})))))}yield e("INSERT OR REPLACE INTO"+K(n)+"("+Q(l,...t,...d)+")VALUES"+m(I(r,(e=>"($"+u[0]+++","+X(e,u)+")")),o),I(r,((e,n)=>[n,...E(e,(e=>null!=e?e:null))])).flat())}));e.createPowerSyncPersister=(e,n,l,t,o)=>{let r;return ke(e,l,((e,...l)=>Ge(void 0,[e,...l],(function*(e,l=[]){return n.execute(e,l).then((e=>{var n,l;return null!=(l=null==(n=e.rows)?void 0:n._array)?l:[]}))}))),(e=>{const l=new AbortController,t=n.onChange({rawTableNames:!0,signal:l.signal});return Ge(void 0,null,(function*(){try{for(var e,n,l,o=((e,n,l)=>(n=e[ze("asyncIterator")])?n.call(e):(e=e[ze("iterator")](),n={},(l=(l,t)=>(t=e[l])&&(n[l]=n=>new Promise(((l,o,r)=>(n=t.call(e,n),r=n.done,Promise.resolve(n.value).then((e=>l({value:e,done:r})),o))))))("next"),l("return"),n))(t);e=!(n=yield o.next()).done;e=!1){const e=n.value;r&&E(e.changedTables,r)}}catch(n){l=[n]}finally{try{e&&(n=o.return)&&(yield n.call(o))}finally{if(l)throw l[0]}}})),r=e,l}),(e=>{r=void 0,e.abort()}),t,o,(()=>0),1,n,"getPowerSync",Ve)}},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterPowersync={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=clearInterval,n=e=>null==e,l=(e,t,l)=>n(e)?null==l?void 0:l():t(e),o=e=>Array.isArray(e),r=e=>e.length,i=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),a=(e,...t)=>e.push(...t),s=e=>e.shift(),d=Object,c=e=>d.getPrototypeOf(e),v=d.keys,y=d.freeze,f=e=>(e=>!n(e)&&l(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>r(v(e)))(e),p=JSON.stringify,h=JSON.parse,g=e=>n(e)||0==(e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0})(e),b=(e,t)=>null==e?void 0:e.forEach(t),m=(e,t)=>null==e?void 0:e.delete(t),S=e=>new Map(e),C=(e,t)=>null==e?void 0:e.get(t),P=(e,t,l)=>n(l)?(m(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,n,l)=>{var o,r,i;return r=t,null!=(i=null==(o=e)?void 0:o.has(r))&&i?null==l||l(C(e,t)):P(e,t,n()),C(e,t)},w=(e,t,n,o,i=0)=>l((n?O:C)(e,t[i],i>r(t)-2?n:S),(l=>{if(i>r(t)-2)return(null==o?void 0:o(l))&&P(e,t[i]),l;const u=w(l,t,n,o,i+1);return g(l)&&P(e,t[i]),u})),A=e=>new Set(o(e)||n(e)?e:[e]),T=/^\d+$/;var x=Object.defineProperty,j=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,M=(e,t,n)=>t in e?x(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,D=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const I=S(),z=S(),J=(e,t,d,c,v,p,h,x={},J=[])=>{let N,R,k,B=0,F=0,H=0;O(I,J,(()=>0)),O(z,J,(()=>[]));const U=S(),[$,q,G,K,Q]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!f(e)||!f(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!f(e)||!f(t),t.setContent]:i("Store type not supported by this Persister"))(h,e),[V,W,X]=(()=>{let e;const[t,o]=(()=>{const e=[];let t=0;return[n=>{var l;return null!=(l=n?s(e):null)?l:""+t++},t=>{T.test(t)&&r(e)<1e3&&a(e,t)}]})(),i=S();return[(n,l,o,r=[],u=()=>[])=>{null!=e||(e=oe);const a=t(1);var s,d;return P(i,a,[n,l,o,r,u]),d=a,null==(s=w(l,null!=o?o:[""],A))||s.add(d),a},(t,n,...l)=>u(((e,t=[""])=>{const n=[],l=(e,o)=>o==r(t)?a(n,e):null===t[o]?b(e,(e=>l(e,o+1))):u([t[o],null],(t=>l(C(e,t),o+1)));return l(e,0),n})(t,n),(t=>b(t,(t=>C(i,t)[0](e,...null!=n?n:[],...l))))),e=>l(C(i,e),(([,t,n])=>(w(t,null!=n?n:[""],void 0,(t=>(m(t,e),g(t)?1:0))),P(i,e),o(e),n))),t=>l(C(i,t),(([t,,l=[],o,i])=>{const a=(...s)=>{var d,c;const v=r(s);v==r(l)?t(e,...s,...i(s)):n(l[v])?u(null!=(c=null==(d=o[v])?void 0:d.call(o,...s))?c:[],(e=>a(...s,e))):a(...s,l[v])};a()}))]})(),Y=e=>{e!=B&&(B=e,W(U,void 0,B))},Z=t=>{($&&o(null==t?void 0:t[0])?1===(null==t?void 0:t[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==t?void 0:t[2])?e.applyChanges:e.setContent)(t)},_=e=>D(void 0,null,(function*(){return 2!=B&&(Y(1),F++,yield le((()=>D(void 0,null,(function*(){try{const n=yield t();o(n)?Z(n):e?Q(e):i("Content is not an array "+n)}catch(t){null==p||p(t),e&&Q(e)}Y(0)}))))),oe})),ee=()=>(R&&(v(R),R=void 0),oe),te=e=>D(void 0,null,(function*(){return 1!=B&&(Y(2),H++,yield le((()=>D(void 0,null,(function*(){try{yield d(q,e)}catch(e){null==p||p(e)}Y(0)}))))),oe})),ne=()=>(l(k,e.delListener),k=void 0,oe),le=(...e)=>D(void 0,null,(function*(){return a(C(z,J),...e),yield D(void 0,null,(function*(){if(!C(I,J)){for(P(I,J,1);!n(N=s(C(z,J)));)try{yield N()}catch(e){null==p||p(e)}P(I,J,0)}})),oe})),oe=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&M(e,n,t[n]);if(j)for(var n of j(t))L.call(t,n)&&M(e,n,t[n]);return e})({load:_,startAutoLoad:e=>D(void 0,null,(function*(){yield ee().load(e);try{R=yield c(((e,t)=>D(void 0,null,(function*(){t||e?2!=B&&(Y(1),F++,Z(null!=t?t:e),Y(0)):yield _()}))))}catch(e){null==p||p(e)}return oe})),stopAutoLoad:ee,isAutoLoading:()=>!n(R),save:te,startAutoSave:()=>D(void 0,null,(function*(){return yield ne().save(),k=e.addDidFinishTransactionListener((()=>{const e=G();K(e)&&te(e)})),oe})),stopAutoSave:ne,isAutoSaving:()=>!n(k),getStatus:()=>B,addStatusListener:e=>V(e,U),delListener:t=>(X(t),e),schedule:le,getStore:()=>e,destroy:()=>(C(z,J).splice(0,void 0),ee().stopAutoSave()),getStats:()=>({loads:F,saves:H})},x);return y(oe)};var N=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const R=e=>e.headers.get("ETag");e.createRemotePersister=(e,l,o,r=5,i)=>{let u;return J(e,(()=>N(void 0,null,(function*(){const e=yield fetch(l);return u=R(e),h(yield e.text())}))),(e=>N(void 0,null,(function*(){return yield fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:(t=e(),p(t,((e,t)=>t instanceof Map?d.fromEntries([...t]):t)))});var t}))),(e=>setInterval((()=>N(void 0,null,(function*(){const t=yield fetch(l,{method:"HEAD"}),o=R(t);n(u)||n(o)||o==u||(u=o,e())}))),1e3*r)),(e=>t(e)),i,1,{getUrls:()=>[l,o]})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=clearInterval,n=e=>null==e,l=(e,t,l)=>n(e)?null==l?void 0:l():t(e),o=e=>Array.isArray(e),r=e=>e.length,i=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),a=(e,...t)=>e.push(...t),s=e=>e.shift(),d=Object,c=e=>d.getPrototypeOf(e),v=d.keys,y=d.freeze,f=e=>(e=>!n(e)&&l(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>r(v(e)))(e),p=JSON.stringify,h=JSON.parse,g=e=>n(e)||0==(e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0})(e),b=(e,t)=>null==e?void 0:e.forEach(t),m=(e,t)=>null==e?void 0:e.delete(t),S=e=>new Map(e),C=(e,t)=>null==e?void 0:e.get(t),P=(e,t,l)=>n(l)?(m(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,n,l)=>{var o,r,i;return r=t,null!=(i=null==(o=e)?void 0:o.has(r))&&i?null==l||l(C(e,t)):P(e,t,n()),C(e,t)},w=(e,t,n,o,i=0)=>l((n?O:C)(e,t[i],i>r(t)-2?n:S),(l=>{if(i>r(t)-2)return(null==o?void 0:o(l))&&P(e,t[i]),l;const u=w(l,t,n,o,i+1);return g(l)&&P(e,t[i]),u})),A=e=>new Set(o(e)||n(e)?e:[e]),T=/^\d+$/;var x=Object.defineProperty,j=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,M=(e,t,n)=>t in e?x(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,D=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const I=S(),z=S(),J=(e,t,d,c,v,p,h,x={},J=[])=>{let N,R,k,B=0,F=0,H=0;O(I,J,(()=>0)),O(z,J,(()=>[]));const U=S(),[$,q,G,K,Q]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!f(e)||!f(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!f(e)||!f(t),t.setContent]:i("Store type not supported by this Persister"))(h,e),[V,W,X]=(()=>{let e;const[t,o]=(()=>{const e=[];let t=0;return[n=>{var l;return null!=(l=n?s(e):null)?l:""+t++},t=>{T.test(t)&&r(e)<1e3&&a(e,t)}]})(),i=S();return[(n,l,o,r=[],u=()=>[])=>{null!=e||(e=oe);const a=t(1);var s,d;return P(i,a,[n,l,o,r,u]),d=a,null==(s=w(l,null!=o?o:[""],A))||s.add(d),a},(t,n,...l)=>u(((e,t=[""])=>{const n=[],l=(e,o)=>o==r(t)?a(n,e):null===t[o]?b(e,(e=>l(e,o+1))):u([t[o],null],(t=>l(C(e,t),o+1)));return l(e,0),n})(t,n),(t=>b(t,(t=>C(i,t)[0](e,...null!=n?n:[],...l))))),e=>l(C(i,e),(([,t,n])=>(w(t,null!=n?n:[""],void 0,(t=>(m(t,e),g(t)?1:0))),P(i,e),o(e),n))),t=>l(C(i,t),(([t,,l=[],o,i])=>{const a=(...s)=>{var d,c;const v=r(s);v==r(l)?t(e,...s,...i(s)):n(l[v])?u(null!=(c=null==(d=o[v])?void 0:d.call(o,...s))?c:[],(e=>a(...s,e))):a(...s,l[v])};a()}))]})(),Y=e=>{e!=B&&(B=e,W(U,void 0,B))},Z=t=>{($&&o(null==t?void 0:t[0])?1===(null==t?void 0:t[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==t?void 0:t[2])?e.applyChanges:e.setContent)(t)},_=e=>D(void 0,null,(function*(){return 2!=B&&(Y(1),F++,yield le((()=>D(void 0,null,(function*(){try{const n=yield t();o(n)?Z(n):e?Q(e):i("Content is not an array: "+n)}catch(t){null==p||p(t),e&&Q(e)}Y(0)}))))),oe})),ee=()=>(R&&(v(R),R=void 0),oe),te=e=>D(void 0,null,(function*(){return 1!=B&&(Y(2),H++,yield le((()=>D(void 0,null,(function*(){try{yield d(q,e)}catch(e){null==p||p(e)}Y(0)}))))),oe})),ne=()=>(l(k,e.delListener),k=void 0,oe),le=(...e)=>D(void 0,null,(function*(){return a(C(z,J),...e),yield D(void 0,null,(function*(){if(!C(I,J)){for(P(I,J,1);!n(N=s(C(z,J)));)try{yield N()}catch(e){null==p||p(e)}P(I,J,0)}})),oe})),oe=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&M(e,n,t[n]);if(j)for(var n of j(t))L.call(t,n)&&M(e,n,t[n]);return e})({load:_,startAutoLoad:e=>D(void 0,null,(function*(){yield ee().load(e);try{R=yield c(((e,t)=>D(void 0,null,(function*(){t||e?2!=B&&(Y(1),F++,Z(null!=t?t:e),Y(0)):yield _()}))))}catch(e){null==p||p(e)}return oe})),stopAutoLoad:ee,isAutoLoading:()=>!n(R),save:te,startAutoSave:()=>D(void 0,null,(function*(){return yield ne().save(),k=e.addDidFinishTransactionListener((()=>{const e=G();K(e)&&te(e)})),oe})),stopAutoSave:ne,isAutoSaving:()=>!n(k),getStatus:()=>B,addStatusListener:e=>V(e,U),delListener:t=>(X(t),e),schedule:le,getStore:()=>e,destroy:()=>(C(z,J).splice(0,void 0),ee().stopAutoSave()),getStats:()=>({loads:F,saves:H})},x);return y(oe)};var N=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const R=e=>e.headers.get("ETag");e.createRemotePersister=(e,l,o,r=5,i)=>{let u;return J(e,(()=>N(void 0,null,(function*(){const e=yield fetch(l);return u=R(e),h(yield e.text())}))),(e=>N(void 0,null,(function*(){return yield fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:(t=e(),p(t,((e,t)=>t instanceof Map?d.fromEntries([...t]):t)))});var t}))),(e=>setInterval((()=>N(void 0,null,(function*(){const t=yield fetch(l,{method:"HEAD"}),o=R(t);n(u)||n(o)||o==u||(u=o,e())}))),1e3*r)),(e=>t(e)),i,1,{getUrls:()=>[l,o]})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=clearInterval,n=e=>null==e,l=(e,t,l)=>n(e)?null==l?void 0:l():t(e),o=e=>Array.isArray(e),r=e=>e.length,i=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),a=(e,...t)=>e.push(...t),s=e=>e.shift(),d=Object,c=e=>d.getPrototypeOf(e),v=d.keys,y=d.freeze,f=e=>(e=>!n(e)&&l(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>r(v(e)))(e),p=JSON.stringify,h=JSON.parse,g=e=>n(e)||0==(e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0})(e),b=(e,t)=>null==e?void 0:e.forEach(t),m=(e,t)=>null==e?void 0:e.delete(t),S=e=>new Map(e),C=(e,t)=>null==e?void 0:e.get(t),P=(e,t,l)=>n(l)?(m(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,n,l)=>{var o,r,i;return r=t,null!=(i=null==(o=e)?void 0:o.has(r))&&i?null==l||l(C(e,t)):P(e,t,n()),C(e,t)},w=(e,t,n,o,i=0)=>l((n?O:C)(e,t[i],i>r(t)-2?n:S),(l=>{if(i>r(t)-2)return(null==o?void 0:o(l))&&P(e,t[i]),l;const u=w(l,t,n,o,i+1);return g(l)&&P(e,t[i]),u})),A=e=>new Set(o(e)||n(e)?e:[e]),T=/^\d+$/;var x=Object.defineProperty,j=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,M=(e,t,n)=>t in e?x(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,D=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const I=S(),z=S(),J=(e,t,d,c,v,p,h,x={},J=[])=>{let N,R,k,B=0,F=0,H=0;O(I,J,(()=>0)),O(z,J,(()=>[]));const U=S(),[$,q,G,K,Q]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!f(e)||!f(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!f(e)||!f(t),t.setContent]:i("Store type not supported by this Persister"))(h,e),[V,W,X]=(()=>{let e;const[t,o]=(()=>{const e=[];let t=0;return[n=>{var l;return null!=(l=n?s(e):null)?l:""+t++},t=>{T.test(t)&&r(e)<1e3&&a(e,t)}]})(),i=S();return[(n,l,o,r=[],u=()=>[])=>{null!=e||(e=oe);const a=t(1);var s,d;return P(i,a,[n,l,o,r,u]),d=a,null==(s=w(l,null!=o?o:[""],A))||s.add(d),a},(t,n,...l)=>u(((e,t=[""])=>{const n=[],l=(e,o)=>o==r(t)?a(n,e):null===t[o]?b(e,(e=>l(e,o+1))):u([t[o],null],(t=>l(C(e,t),o+1)));return l(e,0),n})(t,n),(t=>b(t,(t=>C(i,t)[0](e,...null!=n?n:[],...l))))),e=>l(C(i,e),(([,t,n])=>(w(t,null!=n?n:[""],void 0,(t=>(m(t,e),g(t)?1:0))),P(i,e),o(e),n))),t=>l(C(i,t),(([t,,l=[],o,i])=>{const a=(...s)=>{var d,c;const v=r(s);v==r(l)?t(e,...s,...i(s)):n(l[v])?u(null!=(c=null==(d=o[v])?void 0:d.call(o,...s))?c:[],(e=>a(...s,e))):a(...s,l[v])};a()}))]})(),Y=e=>{e!=B&&(B=e,W(U,void 0,B))},Z=t=>{($&&o(null==t?void 0:t[0])?1===(null==t?void 0:t[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==t?void 0:t[2])?e.applyChanges:e.setContent)(t)},_=e=>D(void 0,null,(function*(){return 2!=B&&(Y(1),F++,yield le((()=>D(void 0,null,(function*(){try{const n=yield t();o(n)?Z(n):e?Q(e):i("Content is not an array "+n)}catch(t){null==p||p(t),e&&Q(e)}Y(0)}))))),oe})),ee=()=>(R&&(v(R),R=void 0),oe),te=e=>D(void 0,null,(function*(){return 1!=B&&(Y(2),H++,yield le((()=>D(void 0,null,(function*(){try{yield d(q,e)}catch(e){null==p||p(e)}Y(0)}))))),oe})),ne=()=>(l(k,e.delListener),k=void 0,oe),le=(...e)=>D(void 0,null,(function*(){return a(C(z,J),...e),yield D(void 0,null,(function*(){if(!C(I,J)){for(P(I,J,1);!n(N=s(C(z,J)));)try{yield N()}catch(e){null==p||p(e)}P(I,J,0)}})),oe})),oe=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&M(e,n,t[n]);if(j)for(var n of j(t))L.call(t,n)&&M(e,n,t[n]);return e})({load:_,startAutoLoad:e=>D(void 0,null,(function*(){yield ee().load(e);try{R=yield c(((e,t)=>D(void 0,null,(function*(){t||e?2!=B&&(Y(1),F++,Z(null!=t?t:e),Y(0)):yield _()}))))}catch(e){null==p||p(e)}return oe})),stopAutoLoad:ee,isAutoLoading:()=>!n(R),save:te,startAutoSave:()=>D(void 0,null,(function*(){return yield ne().save(),k=e.addDidFinishTransactionListener((()=>{const e=G();K(e)&&te(e)})),oe})),stopAutoSave:ne,isAutoSaving:()=>!n(k),getStatus:()=>B,addStatusListener:e=>V(e,U),delListener:t=>(X(t),e),schedule:le,getStore:()=>e,destroy:()=>(C(z,J).splice(0,void 0),ee().stopAutoSave()),getStats:()=>({loads:F,saves:H})},x);return y(oe)};var N=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const R=e=>e.headers.get("ETag");e.createRemotePersister=(e,l,o,r=5,i)=>{let u;return J(e,(()=>N(void 0,null,(function*(){const e=yield fetch(l);return u=R(e),h(yield e.text())}))),(e=>N(void 0,null,(function*(){return yield fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:(t=e(),p(t,((e,t)=>t instanceof Map?d.fromEntries([...t]):t)))});var t}))),(e=>setInterval((()=>N(void 0,null,(function*(){const t=yield fetch(l,{method:"HEAD"}),o=R(t);n(u)||n(o)||o==u||(u=o,e())}))),1e3*r)),(e=>t(e)),i,1,{getUrls:()=>[l,o]})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=clearInterval,n=e=>null==e,l=(e,t,l)=>n(e)?null==l?void 0:l():t(e),o=e=>Array.isArray(e),r=e=>e.length,i=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),a=(e,...t)=>e.push(...t),s=e=>e.shift(),d=Object,c=e=>d.getPrototypeOf(e),v=d.keys,y=d.freeze,f=e=>(e=>!n(e)&&l(c(e),(e=>e==d.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>r(v(e)))(e),p=JSON.stringify,h=JSON.parse,g=e=>n(e)||0==(e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0})(e),b=(e,t)=>null==e?void 0:e.forEach(t),m=(e,t)=>null==e?void 0:e.delete(t),S=e=>new Map(e),C=(e,t)=>null==e?void 0:e.get(t),P=(e,t,l)=>n(l)?(m(e,t),e):null==e?void 0:e.set(t,l),O=(e,t,n,l)=>{var o,r,i;return r=t,null!=(i=null==(o=e)?void 0:o.has(r))&&i?null==l||l(C(e,t)):P(e,t,n()),C(e,t)},w=(e,t,n,o,i=0)=>l((n?O:C)(e,t[i],i>r(t)-2?n:S),(l=>{if(i>r(t)-2)return(null==o?void 0:o(l))&&P(e,t[i]),l;const u=w(l,t,n,o,i+1);return g(l)&&P(e,t[i]),u})),A=e=>new Set(o(e)||n(e)?e:[e]),T=/^\d+$/;var x=Object.defineProperty,j=Object.getOwnPropertySymbols,E=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable,M=(e,t,n)=>t in e?x(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,D=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const I=S(),z=S(),J=(e,t,d,c,v,p,h,x={},J=[])=>{let N,R,k,B=0,F=0,H=0;O(I,J,(()=>0)),O(z,J,(()=>[]));const U=S(),[$,q,G,K,Q]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!f(e)||!f(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!f(e)||!f(t),t.setContent]:i("Store type not supported by this Persister"))(h,e),[V,W,X]=(()=>{let e;const[t,o]=(()=>{const e=[];let t=0;return[n=>{var l;return null!=(l=n?s(e):null)?l:""+t++},t=>{T.test(t)&&r(e)<1e3&&a(e,t)}]})(),i=S();return[(n,l,o,r=[],u=()=>[])=>{null!=e||(e=oe);const a=t(1);var s,d;return P(i,a,[n,l,o,r,u]),d=a,null==(s=w(l,null!=o?o:[""],A))||s.add(d),a},(t,n,...l)=>u(((e,t=[""])=>{const n=[],l=(e,o)=>o==r(t)?a(n,e):null===t[o]?b(e,(e=>l(e,o+1))):u([t[o],null],(t=>l(C(e,t),o+1)));return l(e,0),n})(t,n),(t=>b(t,(t=>C(i,t)[0](e,...null!=n?n:[],...l))))),e=>l(C(i,e),(([,t,n])=>(w(t,null!=n?n:[""],void 0,(t=>(m(t,e),g(t)?1:0))),P(i,e),o(e),n))),t=>l(C(i,t),(([t,,l=[],o,i])=>{const a=(...s)=>{var d,c;const v=r(s);v==r(l)?t(e,...s,...i(s)):n(l[v])?u(null!=(c=null==(d=o[v])?void 0:d.call(o,...s))?c:[],(e=>a(...s,e))):a(...s,l[v])};a()}))]})(),Y=e=>{e!=B&&(B=e,W(U,void 0,B))},Z=t=>{($&&o(null==t?void 0:t[0])?1===(null==t?void 0:t[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==t?void 0:t[2])?e.applyChanges:e.setContent)(t)},_=e=>D(void 0,null,(function*(){return 2!=B&&(Y(1),F++,yield le((()=>D(void 0,null,(function*(){try{const n=yield t();o(n)?Z(n):e?Q(e):i("Content is not an array: "+n)}catch(t){null==p||p(t),e&&Q(e)}Y(0)}))))),oe})),ee=()=>(R&&(v(R),R=void 0),oe),te=e=>D(void 0,null,(function*(){return 1!=B&&(Y(2),H++,yield le((()=>D(void 0,null,(function*(){try{yield d(q,e)}catch(e){null==p||p(e)}Y(0)}))))),oe})),ne=()=>(l(k,e.delListener),k=void 0,oe),le=(...e)=>D(void 0,null,(function*(){return a(C(z,J),...e),yield D(void 0,null,(function*(){if(!C(I,J)){for(P(I,J,1);!n(N=s(C(z,J)));)try{yield N()}catch(e){null==p||p(e)}P(I,J,0)}})),oe})),oe=((e,t)=>{for(var n in t||(t={}))E.call(t,n)&&M(e,n,t[n]);if(j)for(var n of j(t))L.call(t,n)&&M(e,n,t[n]);return e})({load:_,startAutoLoad:e=>D(void 0,null,(function*(){yield ee().load(e);try{R=yield c(((e,t)=>D(void 0,null,(function*(){t||e?2!=B&&(Y(1),F++,Z(null!=t?t:e),Y(0)):yield _()}))))}catch(e){null==p||p(e)}return oe})),stopAutoLoad:ee,isAutoLoading:()=>!n(R),save:te,startAutoSave:()=>D(void 0,null,(function*(){return yield ne().save(),k=e.addDidFinishTransactionListener((()=>{const e=G();K(e)&&te(e)})),oe})),stopAutoSave:ne,isAutoSaving:()=>!n(k),getStatus:()=>B,addStatusListener:e=>V(e,U),delListener:t=>(X(t),e),schedule:le,getStore:()=>e,destroy:()=>(C(z,J).splice(0,void 0),ee().stopAutoSave()),getStats:()=>({loads:F,saves:H})},x);return y(oe)};var N=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{u(n.next(e))}catch(e){o(e)}},i=e=>{try{u(n.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((n=n.apply(e,t)).next())}));const R=e=>e.headers.get("ETag");e.createRemotePersister=(e,l,o,r=5,i)=>{let u;return J(e,(()=>N(void 0,null,(function*(){const e=yield fetch(l);return u=R(e),h(yield e.text())}))),(e=>N(void 0,null,(function*(){return yield fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:(t=e(),p(t,((e,t)=>t instanceof Map?d.fromEntries([...t]):t)))});var t}))),(e=>setInterval((()=>N(void 0,null,(function*(){const t=yield fetch(l,{method:"HEAD"}),o=R(t);n(u)||n(o)||o==u||(u=o,e())}))),1e3*r)),(e=>t(e)),i,1,{getUrls:()=>[l,o]})}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterRemote={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l="",o=",",r=n(l),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,t)=>a(e)?null==t?void 0:t():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,t)=>e.slice(n,t),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},p=e=>{throw Error(e)},h=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),b=(e,n)=>e.map(n),g=e=>0==y(e),E=(e,n)=>e.filter(n),O=(e,...n)=>e.push(...n),P=e=>e.shift(),w="_",A="_id",S="SELECT",N="WHERE",T="TABLE",$="ALTER "+T,x="DELETE FROM",C=S+"*FROM",I="pragma_",L="data_version",R="schema_version",D="pragma_table_",j=e=>`"${e.replace(/"/g,'""')}"`,_=(e,n=[1])=>m(b(e,(()=>"$"+n[0]++)),o),M=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},F=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),k=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},q=(e,n)=>null==e?void 0:e.forEach(n),B=(e,n)=>null==e?void 0:e.delete(n),U=Object,J=e=>U.getPrototypeOf(e),W=U.entries,Y=U.keys,z=U.freeze,G=(e=[])=>U.fromEntries(e),H=(...e)=>U.assign({},...e),V=(e,n)=>(delete e[n],e),K=(e,n)=>b(W(e),(([e,t])=>n(t,e))),Q=e=>U.values(e),X=e=>y(Y(e)),Z=e=>(e=>!a(e)&&d(J(e),(e=>e==U.prototype||a(J(e))),(()=>!0)))(e)&&0==X(e),ee=JSON.stringify,ne=JSON.parse,te=e=>new Map(e),le=(e,n)=>null==e?void 0:e.get(n),oe=(e,n)=>{var t;return b([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},re=(e,n,t)=>a(t)?(B(e,n),e):null==e?void 0:e.set(n,t),ie=(e,n,t,l)=>(M(e,n)?null==l||l(le(e,n)):re(e,n,t()),le(e,n)),ue=(e,n,t,l,o=0)=>d((t?ie:le)(e,n[o],o>y(n)-2?t:te),(r=>{if(o>y(n)-2)return(null==l?void 0:l(r))&&re(e,n[o]),r;const i=ue(r,n,t,l,o+1);return F(r)&&re(e,n[o]),i})),ae=e=>new Set(c(e)||a(e)?e:[e]),de=(e,n)=>null==e?void 0:e.add(n),se=/^\d+$/;var ce=Object.defineProperty,ve=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,pe=(e,n,t)=>n in e?ce(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,he=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const me=te(),be=te(),ge=(e,n,t,o,r,i,u,s={},v=[])=>{let f,m,b,g=0,E=0,w=0;ie(me,v,(()=>0)),ie(be,v,(()=>[]));const A=te(),[S,N,T,$,x]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!Z(e)||!Z(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!Z(e)||!Z(n),n.setContent]:p("Store type not supported by this Persister"))(u,e),[C,I,L]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var o;return null!=(o=t?P(e):null)?o:l+n++},n=>{se.test(n)&&y(e)<1e3&&O(e,n)}]})(),o=te();return[(t,r,i,u=[],a=()=>[])=>{null!=e||(e=J);const d=n(1);return re(o,d,[t,r,i,u,a]),de(ue(r,null!=i?i:[l],ae),d),d},(n,t,...r)=>h(((e,n=[l])=>{const t=[],o=(e,l)=>l==y(n)?O(t,e):null===n[l]?q(e,(e=>o(e,l+1))):h([n[l],null],(n=>o(le(e,n),l+1)));return o(e,0),t})(n,t),(n=>q(n,(n=>le(o,n)[0](e,...null!=t?t:[],...r))))),e=>d(le(o,e),(([,n,r])=>(ue(n,null!=r?r:[l],void 0,(n=>(B(n,e),F(n)?1:0))),re(o,e),t(e),r))),n=>d(le(o,n),(([n,,t=[],l,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(t)?n(e,...i,...o(i)):a(t[s])?h(null!=(d=null==(u=l[s])?void 0:u.call(l,...i))?d:[],(e=>r(...i,e))):r(...i,t[s])};r()}))]})(),R=e=>{e!=g&&(g=e,I(A,void 0,g))},D=n=>{(S&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},j=e=>he(void 0,null,(function*(){return 2!=g&&(R(1),E++,yield U((()=>he(void 0,null,(function*(){try{const t=yield n();c(t)?D(t):e?x(e):p("Content is not an array "+t)}catch(n){null==i||i(n),e&&x(e)}R(0)}))))),J})),_=()=>(m&&(r(m),m=void 0),J),M=e=>he(void 0,null,(function*(){return 1!=g&&(R(2),w++,yield U((()=>he(void 0,null,(function*(){try{yield t(N,e)}catch(e){null==i||i(e)}R(0)}))))),J})),k=()=>(d(b,e.delListener),b=void 0,J),U=(...e)=>he(void 0,null,(function*(){return O(le(be,v),...e),yield he(void 0,null,(function*(){if(!le(me,v)){for(re(me,v,1);!a(f=P(le(be,v)));)try{yield f()}catch(e){null==i||i(e)}re(me,v,0)}})),J})),J=((e,n)=>{for(var t in n||(n={}))ye.call(n,t)&&pe(e,t,n[t]);if(ve)for(var t of ve(n))fe.call(n,t)&&pe(e,t,n[t]);return e})({load:j,startAutoLoad:e=>he(void 0,null,(function*(){yield _().load(e);try{m=yield o(((e,n)=>he(void 0,null,(function*(){n||e?2!=g&&(R(1),E++,D(null!=n?n:e),R(0)):yield j()}))))}catch(e){null==i||i(e)}return J})),stopAutoLoad:_,isAutoLoading:()=>!a(m),save:M,startAutoSave:()=>he(void 0,null,(function*(){return yield k().save(),b=e.addDidFinishTransactionListener((()=>{const e=T();$(e)&&M(e)})),J})),stopAutoSave:k,isAutoSaving:()=>!a(b),getStatus:()=>g,addStatusListener:e=>C(e,A),delListener:n=>(L(n),e),schedule:U,getStore:()=>e,destroy:()=>(le(be,v).splice(0,void 0),_().stopAutoSave()),getStats:()=>({loads:E,saves:w})},s);return z(J)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Oe=(e,n,t,l,r,i=Pe,u,d)=>{const s=te();return[()=>Ee(void 0,null,(function*(){s.clear(),b(yield t(e,n),(({tn:e,cn:n})=>de(ie(s,e,ae),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>M(le(s,e),n))(n,t)?G(E(b(yield e(C+j(n)),(e=>{return[e[t],d?(n=V(e,t),l=d,G(K(n,((e,n)=>[n,l(e,n)])))):V(e,t)];var n,l})),(([e,n])=>!a(e)&&!Z(n)))):{}})),(n,t,l,d,c,v=!1)=>Ee(void 0,null,(function*(){const y=ae();K(null!=l?l:{},(e=>b(Y(null!=e?e:{}),(e=>de(y,e)))));const p=k(y);if(!v&&c&&g(p)&&M(s,n))return yield e("DROP "+T+j(n)),void re(s,n);const h=le(s,n),P=ae(k(h));if(g(p)||(M(s,n)?yield f(b([t,...p],((l,o)=>Ee(void 0,null,(function*(){B(P,l)||(yield e($+j(n)+"ADD"+j(l)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+j(n)+`(${j(t)})`)),de(h,l))}))))):(yield e("CREATE "+T+j(n)+`(${j(t)}${r} PRIMARY KEY${m(b(p,(e=>o+j(e)+r)))});`),re(s,n,ae([t,...p])))),yield f([...!v&&d?b(k(P),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e($+j(n)+"DROP"+j(l)),B(h,l))})))):[]]),v)a(l)?yield e(x+j(n)+N+" true"):yield f(K(l,((l,o)=>Ee(void 0,null,(function*(){a(l)?yield e(x+j(n)+N+j(t)+"=$1",[o]):g(p)||(yield i(e,n,t,Y(l),{[o]:u?b(Q(l),u):Q(l)},h))})))));else if(g(p))M(s,n)&&(yield e(x+j(n)+N+" true"));else{const o=E(k(le(s,n)),(e=>e!=t)),r={},a=[];K(null!=l?l:{},((e,n)=>{r[n]=b(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),O(a,n)})),yield i(e,n,t,o,r),yield e(x+j(n)+N+j(t)+`NOT IN(${_(a)})`,a)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},Pe=(e,n,t,l,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+j(n)+"("+((...e)=>m(b(e,j),o))(t,...l)+")VALUES"+m(K(r,(e=>"($"+i[0]+++","+_(e,i)+")")),o)+"ON CONFLICT("+j(t)+")DO UPDATE SET"+m(b(l,(e=>j(e)+"=excluded."+j(e))),o),K(r,((e,n)=>[n,...b(e,(e=>null!=e?e:null))])).flat())}));var we=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,r,i,[u,a,d],s,c,v,y,f,p)=>{const[h,m,b,g]=Oe(n,s,c,o,f,p),E=ge(e,(()=>we(void 0,null,(function*(){return yield g((()=>we(void 0,null,(function*(){var e,n,t;return yield h(),t=null!=(n=null==(e=(yield m(u,a))[w])?void 0:e[d])?n:"null",ne(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>we(void 0,null,(function*(){return yield g((()=>we(void 0,null,(function*(){var n,t;yield h(),yield b(u,a,{[w]:{[d]:(t=null!=(n=e())?n:null,ee(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,i,{[y]:()=>v,destroy:()=>(E.stopAutoLoad().stopAutoSave(),r(),E)},v);return E};var Se=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ne=(e,n,t,l,o,r,i,[u,d,[s,c,v]],y,p,h,m,b,g,O,P)=>{const[S,N,T,$]=Oe(n,y,p,o,b,g,O,P),x=(e,n)=>Se(void 0,null,(function*(){return yield f(oe(d,((t,l)=>Se(void 0,[t,l],(function*([t,l,o,r],i){n&&!(i in e)||(yield T(t,l,e[i],o,r,n))})))))})),C=(e,n)=>Se(void 0,null,(function*(){return c?yield T(v,A,{[w]:e},!0,!0,n):null})),I=ge(e,(()=>Se(void 0,null,(function*(){return yield $((()=>Se(void 0,null,(function*(){yield S();const e=yield Se(void 0,null,(function*(){return G(E(yield f(oe(u,((e,n)=>Se(void 0,[e,n],(function*([e,n],t){return[e,yield N(t,n)]}))))),(e=>!Z(e[1]))))})),n=yield Se(void 0,null,(function*(){return s?(yield N(v,A))[w]:{}}));return Z(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Se(void 0,null,(function*(){return yield $((()=>Se(void 0,null,(function*(){if(yield S(),a(n)){const[n,t]=e();yield x(n),yield C(t)}else yield x(n[0],!0),yield C(n[1],!0)}))))}))),t,l,o,i,{[m]:()=>h,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},h);return I},Te="ColumnName",$e="store",xe="json",Ce=$e+"TableName",Ie=$e+"Id"+Te,Le=$e+Te,Re="autoLoadIntervalSeconds",De="rowId"+Te,je="tableId",_e="tableName",Me="deleteEmptyColumns",Fe="deleteEmptyTable",ke={mode:xe,[Re]:1},qe={load:0,save:0,[_e]:t+"_values"},Be=(e,n,t,l,o)=>{const r=te();return K(e,((e,i)=>{const u=v(Q(H(n,s(e)?{[t]:e}:e)),0,X(n));a(u[0])||l(i,u[0])||(o(i,u[0]),re(r,i,u))})),r};var Ue=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Je=(e,n,o,r,i,a,d,c,y,f,p="getDb",h)=>{let m,b,g;const E=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{r(o.next(e))}catch(e){n(e)}},l=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[O,P,w,T]=(e=>{var n,l,o;const r=(e=>H(ke,s(e)?{[Ce]:e}:null!=e?e:{}))(e),i=r[Re];if(r.mode==xe){const e=null!=(n=r[Ce])?n:t;return[1,i,[e,null!=(l=r[Ie])?l:A,null!=(o=r[Le])?o:$e],ae(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(Q(H(qe,d)),0,X(qe)),y=c[2],f=ae(y),p=ae(y);return[0,i,[Be(u,{[je]:null,[De]:A},je,(e=>M(p,e)),(e=>de(f,e))),Be(a,{[_e]:null,[De]:A,[Me]:0,[Fe]:0},_e,((e,n)=>M(p,n)),((e,n)=>de(f,n))),c],f]})(n);return(O?Ae:Ne)(e,E,(e=>{let n;const t=()=>n=setInterval((()=>Ue(void 0,null,(function*(){try{const[{d:n,s:t,c:l}]=yield E(`${S} ${L} d,${R} s,TOTAL_CHANGES() c FROM ${I}${L} JOIN ${I}${R}`);n==m&&t==b&&l==g||(null!=m&&e(),m=n,b=t,g=l)}catch(e){}}))),1e3*P),l=()=>{m=b=g=null,u(n)},o=r((n=>{T.has(n)&&(l(),e(),t())}));return t(),()=>{l(),i(o)}}),(e=>e()),d,c,y,w,k(T),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${S} t.name tn,c.name cn FROM ${D}list()t,${D}info(t.name)c ${N} t.schema='main'AND t.type IN('table','view')AND t.name IN(${_(n)})ORDER BY t.name,c.name`,n)}))),f,p,l,h,(e=>!0===e?1:!1===e?0:e),void 0)};var We=Object.defineProperty,Ye=Object.getOwnPropertySymbols,ze=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable,He=(e,n,t)=>n in e?We(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;e.createSqliteWasmPersister=(e,n,t,l,o,r)=>Je(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))ze.call(n,t)&&He(e,t,n[t]);if(Ye)for(var t of Ye(n))Ge.call(n,t)&&He(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,(()=>0),3,t)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l="",o=",",r=n(l),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,t)=>a(e)?null==t?void 0:t():n(e),s=e=>n(e)==r,c=e=>Array.isArray(e),v=(e,n,t)=>e.slice(n,t),y=e=>e.length,f=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},p=e=>{throw Error(e)},h=(e,n)=>e.forEach(n),m=(e,n="")=>e.join(n),b=(e,n)=>e.map(n),g=e=>0==y(e),E=(e,n)=>e.filter(n),O=(e,...n)=>e.push(...n),P=e=>e.shift(),w="_",A="_id",S="SELECT",N="WHERE",T="TABLE",$="ALTER "+T,x="DELETE FROM",C=S+"*FROM",I="pragma_",L="data_version",R="schema_version",D="pragma_table_",j=e=>`"${e.replace(/"/g,'""')}"`,_=(e,n=[1])=>m(b(e,(()=>"$"+n[0]++)),o),M=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},F=e=>a(e)||0==(e=>{var n;return null!=(n=null==e?void 0:e.size)?n:0})(e),k=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},q=(e,n)=>null==e?void 0:e.forEach(n),B=(e,n)=>null==e?void 0:e.delete(n),U=Object,J=e=>U.getPrototypeOf(e),W=U.entries,Y=U.keys,z=U.freeze,G=(e=[])=>U.fromEntries(e),H=(...e)=>U.assign({},...e),V=(e,n)=>(delete e[n],e),K=(e,n)=>b(W(e),(([e,t])=>n(t,e))),Q=e=>U.values(e),X=e=>y(Y(e)),Z=e=>(e=>!a(e)&&d(J(e),(e=>e==U.prototype||a(J(e))),(()=>!0)))(e)&&0==X(e),ee=JSON.stringify,ne=JSON.parse,te=e=>new Map(e),le=(e,n)=>null==e?void 0:e.get(n),oe=(e,n)=>{var t;return b([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},re=(e,n,t)=>a(t)?(B(e,n),e):null==e?void 0:e.set(n,t),ie=(e,n,t,l)=>(M(e,n)?null==l||l(le(e,n)):re(e,n,t()),le(e,n)),ue=(e,n,t,l,o=0)=>d((t?ie:le)(e,n[o],o>y(n)-2?t:te),(r=>{if(o>y(n)-2)return(null==l?void 0:l(r))&&re(e,n[o]),r;const i=ue(r,n,t,l,o+1);return F(r)&&re(e,n[o]),i})),ae=e=>new Set(c(e)||a(e)?e:[e]),de=(e,n)=>null==e?void 0:e.add(n),se=/^\d+$/;var ce=Object.defineProperty,ve=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,pe=(e,n,t)=>n in e?ce(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,he=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const me=te(),be=te(),ge=(e,n,t,o,r,i,u,s={},v=[])=>{let f,m,b,g=0,E=0,w=0;ie(me,v,(()=>0)),ie(be,v,(()=>[]));const A=te(),[S,N,T,$,x]=((e=1,n)=>1!=e&&n.isMergeable()?[1,n.getMergeableContent,n.getTransactionMergeableChanges,([[e],[n]])=>!Z(e)||!Z(n),n.setDefaultContent]:2!=e?[0,n.getContent,n.getTransactionChanges,([e,n])=>!Z(e)||!Z(n),n.setContent]:p("Store type not supported by this Persister"))(u,e),[C,I,L]=(()=>{let e;const[n,t]=(()=>{const e=[];let n=0;return[t=>{var o;return null!=(o=t?P(e):null)?o:l+n++},n=>{se.test(n)&&y(e)<1e3&&O(e,n)}]})(),o=te();return[(t,r,i,u=[],a=()=>[])=>{null!=e||(e=J);const d=n(1);return re(o,d,[t,r,i,u,a]),de(ue(r,null!=i?i:[l],ae),d),d},(n,t,...r)=>h(((e,n=[l])=>{const t=[],o=(e,l)=>l==y(n)?O(t,e):null===n[l]?q(e,(e=>o(e,l+1))):h([n[l],null],(n=>o(le(e,n),l+1)));return o(e,0),t})(n,t),(n=>q(n,(n=>le(o,n)[0](e,...null!=t?t:[],...r))))),e=>d(le(o,e),(([,n,r])=>(ue(n,null!=r?r:[l],void 0,(n=>(B(n,e),F(n)?1:0))),re(o,e),t(e),r))),n=>d(le(o,n),(([n,,t=[],l,o])=>{const r=(...i)=>{var u,d;const s=y(i);s==y(t)?n(e,...i,...o(i)):a(t[s])?h(null!=(d=null==(u=l[s])?void 0:u.call(l,...i))?d:[],(e=>r(...i,e))):r(...i,t[s])};r()}))]})(),R=e=>{e!=g&&(g=e,I(A,void 0,g))},D=n=>{(S&&c(null==n?void 0:n[0])?1===(null==n?void 0:n[2])?e.applyMergeableChanges:e.setMergeableContent:1===(null==n?void 0:n[2])?e.applyChanges:e.setContent)(n)},j=e=>he(void 0,null,(function*(){return 2!=g&&(R(1),E++,yield U((()=>he(void 0,null,(function*(){try{const t=yield n();c(t)?D(t):e?x(e):p("Content is not an array: "+t)}catch(n){null==i||i(n),e&&x(e)}R(0)}))))),J})),_=()=>(m&&(r(m),m=void 0),J),M=e=>he(void 0,null,(function*(){return 1!=g&&(R(2),w++,yield U((()=>he(void 0,null,(function*(){try{yield t(N,e)}catch(e){null==i||i(e)}R(0)}))))),J})),k=()=>(d(b,e.delListener),b=void 0,J),U=(...e)=>he(void 0,null,(function*(){return O(le(be,v),...e),yield he(void 0,null,(function*(){if(!le(me,v)){for(re(me,v,1);!a(f=P(le(be,v)));)try{yield f()}catch(e){null==i||i(e)}re(me,v,0)}})),J})),J=((e,n)=>{for(var t in n||(n={}))ye.call(n,t)&&pe(e,t,n[t]);if(ve)for(var t of ve(n))fe.call(n,t)&&pe(e,t,n[t]);return e})({load:j,startAutoLoad:e=>he(void 0,null,(function*(){yield _().load(e);try{m=yield o(((e,n)=>he(void 0,null,(function*(){n||e?2!=g&&(R(1),E++,D(null!=n?n:e),R(0)):yield j()}))))}catch(e){null==i||i(e)}return J})),stopAutoLoad:_,isAutoLoading:()=>!a(m),save:M,startAutoSave:()=>he(void 0,null,(function*(){return yield k().save(),b=e.addDidFinishTransactionListener((()=>{const e=T();$(e)&&M(e)})),J})),stopAutoSave:k,isAutoSaving:()=>!a(b),getStatus:()=>g,addStatusListener:e=>C(e,A),delListener:n=>(L(n),e),schedule:U,getStore:()=>e,destroy:()=>(le(be,v).splice(0,void 0),_().stopAutoSave()),getStats:()=>({loads:E,saves:w})},s);return z(J)};var Ee=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Oe=(e,n,t,l,r,i=Pe,u,d)=>{const s=te();return[()=>Ee(void 0,null,(function*(){s.clear(),b(yield t(e,n),(({tn:e,cn:n})=>de(ie(s,e,ae),n)))})),(n,t)=>Ee(void 0,null,(function*(){return((e,n)=>M(le(s,e),n))(n,t)?G(E(b(yield e(C+j(n)),(e=>{return[e[t],d?(n=V(e,t),l=d,G(K(n,((e,n)=>[n,l(e,n)])))):V(e,t)];var n,l})),(([e,n])=>!a(e)&&!Z(n)))):{}})),(n,t,l,d,c,v=!1)=>Ee(void 0,null,(function*(){const y=ae();K(null!=l?l:{},(e=>b(Y(null!=e?e:{}),(e=>de(y,e)))));const p=k(y);if(!v&&c&&g(p)&&M(s,n))return yield e("DROP "+T+j(n)),void re(s,n);const h=le(s,n),P=ae(k(h));if(g(p)||(M(s,n)?yield f(b([t,...p],((l,o)=>Ee(void 0,null,(function*(){B(P,l)||(yield e($+j(n)+"ADD"+j(l)+r),0==o&&(yield e("CREATE UNIQUE INDEX pk ON "+j(n)+`(${j(t)})`)),de(h,l))}))))):(yield e("CREATE "+T+j(n)+`(${j(t)}${r} PRIMARY KEY${m(b(p,(e=>o+j(e)+r)))});`),re(s,n,ae([t,...p])))),yield f([...!v&&d?b(k(P),(l=>Ee(void 0,null,(function*(){l!=t&&(yield e($+j(n)+"DROP"+j(l)),B(h,l))})))):[]]),v)a(l)?yield e(x+j(n)+N+" true"):yield f(K(l,((l,o)=>Ee(void 0,null,(function*(){a(l)?yield e(x+j(n)+N+j(t)+"=$1",[o]):g(p)||(yield i(e,n,t,Y(l),{[o]:u?b(Q(l),u):Q(l)},h))})))));else if(g(p))M(s,n)&&(yield e(x+j(n)+N+" true"));else{const o=E(k(le(s,n)),(e=>e!=t)),r={},a=[];K(null!=l?l:{},((e,n)=>{r[n]=b(o,(n=>u?u(null==e?void 0:e[n]):null==e?void 0:e[n])),O(a,n)})),yield i(e,n,t,o,r),yield e(x+j(n)+N+j(t)+`NOT IN(${_(a)})`,a)}})),n=>Ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},Pe=(e,n,t,l,r)=>Ee(void 0,null,(function*(){const i=[1];yield e("INSERT INTO"+j(n)+"("+((...e)=>m(b(e,j),o))(t,...l)+")VALUES"+m(K(r,(e=>"($"+i[0]+++","+_(e,i)+")")),o)+"ON CONFLICT("+j(t)+")DO UPDATE SET"+m(b(l,(e=>j(e)+"=excluded."+j(e))),o),K(r,((e,n)=>[n,...b(e,(e=>null!=e?e:null))])).flat())}));var we=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ae=(e,n,t,l,o,r,i,[u,a,d],s,c,v,y,f,p)=>{const[h,m,b,g]=Oe(n,s,c,o,f,p),E=ge(e,(()=>we(void 0,null,(function*(){return yield g((()=>we(void 0,null,(function*(){var e,n,t;return yield h(),t=null!=(n=null==(e=(yield m(u,a))[w])?void 0:e[d])?n:"null",ne(t,((e,n)=>""===n?void 0:n))}))))}))),(e=>we(void 0,null,(function*(){return yield g((()=>we(void 0,null,(function*(){var n,t;yield h(),yield b(u,a,{[w]:{[d]:(t=null!=(n=e())?n:null,ee(t,((e,n)=>void 0===n?"":n)))}},!0,!0)}))))}))),t,l,o,i,{[y]:()=>v,destroy:()=>(E.stopAutoLoad().stopAutoSave(),r(),E)},v);return E};var Se=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Ne=(e,n,t,l,o,r,i,[u,d,[s,c,v]],y,p,h,m,b,g,O,P)=>{const[S,N,T,$]=Oe(n,y,p,o,b,g,O,P),x=(e,n)=>Se(void 0,null,(function*(){return yield f(oe(d,((t,l)=>Se(void 0,[t,l],(function*([t,l,o,r],i){n&&!(i in e)||(yield T(t,l,e[i],o,r,n))})))))})),C=(e,n)=>Se(void 0,null,(function*(){return c?yield T(v,A,{[w]:e},!0,!0,n):null})),I=ge(e,(()=>Se(void 0,null,(function*(){return yield $((()=>Se(void 0,null,(function*(){yield S();const e=yield Se(void 0,null,(function*(){return G(E(yield f(oe(u,((e,n)=>Se(void 0,[e,n],(function*([e,n],t){return[e,yield N(t,n)]}))))),(e=>!Z(e[1]))))})),n=yield Se(void 0,null,(function*(){return s?(yield N(v,A))[w]:{}}));return Z(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>Se(void 0,null,(function*(){return yield $((()=>Se(void 0,null,(function*(){if(yield S(),a(n)){const[n,t]=e();yield x(n),yield C(t)}else yield x(n[0],!0),yield C(n[1],!0)}))))}))),t,l,o,i,{[m]:()=>h,destroy:()=>(I.stopAutoLoad().stopAutoSave(),r(),I)},h);return I},Te="ColumnName",$e="store",xe="json",Ce=$e+"TableName",Ie=$e+"Id"+Te,Le=$e+Te,Re="autoLoadIntervalSeconds",De="rowId"+Te,je="tableId",_e="tableName",Me="deleteEmptyColumns",Fe="deleteEmptyTable",ke={mode:xe,[Re]:1},qe={load:0,save:0,[_e]:t+"_values"},Be=(e,n,t,l,o)=>{const r=te();return K(e,((e,i)=>{const u=v(Q(H(n,s(e)?{[t]:e}:e)),0,X(n));a(u[0])||l(i,u[0])||(o(i,u[0]),re(r,i,u))})),r};var Ue=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Je=(e,n,o,r,i,a,d,c,y,f,p="getDb",h)=>{let m,b,g;const E=((e,n)=>n?(t,l)=>{return o=function*(){return n(t,l),yield e(t,l)},new Promise(((e,n)=>{var t=e=>{try{r(o.next(e))}catch(e){n(e)}},l=e=>{try{r(o.throw(e))}catch(e){n(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,l);r((o=o.apply(void 0,null)).next())}));var o}:e)(o,a),[O,P,w,T]=(e=>{var n,l,o;const r=(e=>H(ke,s(e)?{[Ce]:e}:null!=e?e:{}))(e),i=r[Re];if(r.mode==xe){const e=null!=(n=r[Ce])?n:t;return[1,i,[e,null!=(l=r[Ie])?l:A,null!=(o=r[Le])?o:$e],ae(e)]}const{tables:{load:u={},save:a={}}={},values:d={}}=r,c=v(Q(H(qe,d)),0,X(qe)),y=c[2],f=ae(y),p=ae(y);return[0,i,[Be(u,{[je]:null,[De]:A},je,(e=>M(p,e)),(e=>de(f,e))),Be(a,{[_e]:null,[De]:A,[Me]:0,[Fe]:0},_e,((e,n)=>M(p,n)),((e,n)=>de(f,n))),c],f]})(n);return(O?Ae:Ne)(e,E,(e=>{let n;const t=()=>n=setInterval((()=>Ue(void 0,null,(function*(){try{const[{d:n,s:t,c:l}]=yield E(`${S} ${L} d,${R} s,TOTAL_CHANGES() c FROM ${I}${L} JOIN ${I}${R}`);n==m&&t==b&&l==g||(null!=m&&e(),m=n,b=t,g=l)}catch(e){}}))),1e3*P),l=()=>{m=b=g=null,u(n)},o=r((n=>{T.has(n)&&(l(),e(),t())}));return t(),()=>{l(),i(o)}}),(e=>e()),d,c,y,w,k(T),((e,n)=>Ue(void 0,null,(function*(){return yield e(`${S} t.name tn,c.name cn FROM ${D}list()t,${D}info(t.name)c ${N} t.schema='main'AND t.type IN('table','view')AND t.name IN(${_(n)})ORDER BY t.name,c.name`,n)}))),f,p,l,h,(e=>!0===e?1:!1===e?0:e),void 0)};var We=Object.defineProperty,Ye=Object.getOwnPropertySymbols,ze=Object.prototype.hasOwnProperty,Ge=Object.prototype.propertyIsEnumerable,He=(e,n,t)=>n in e?We(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;e.createSqliteWasmPersister=(e,n,t,l,o,r)=>Je(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))ze.call(n,t)&&He(e,t,n[t]);if(Ye)for(var t of Ye(n))Ge.call(n,t)&&He(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,(()=>0),3,t)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterSqliteWasm={});