@multiplatform.one/frappe 6.1.0 → 6.3.0

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 (792) hide show
  1. package/README.md +38 -12
  2. package/dist/cjs/auth.cjs +1 -1
  3. package/dist/cjs/auth.native.js.map +1 -1
  4. package/dist/cjs/call.cjs +1 -1
  5. package/dist/cjs/call.native.js.map +1 -1
  6. package/dist/cjs/collection.cjs +18 -4
  7. package/dist/cjs/collection.native.js +18 -4
  8. package/dist/cjs/collection.native.js.map +1 -1
  9. package/dist/cjs/core/http.cjs +92 -9
  10. package/dist/cjs/core/http.native.js +96 -7
  11. package/dist/cjs/core/http.native.js.map +1 -1
  12. package/dist/cjs/db.cjs +7 -7
  13. package/dist/cjs/db.native.js +4 -4
  14. package/dist/cjs/db.native.js.map +1 -1
  15. package/dist/cjs/doctype.cjs +97 -39
  16. package/dist/cjs/doctype.native.js +116 -46
  17. package/dist/cjs/doctype.native.js.map +1 -1
  18. package/dist/cjs/file.cjs +1 -1
  19. package/dist/cjs/file.native.js.map +1 -1
  20. package/dist/cjs/fixtureDb.cjs +3 -2
  21. package/dist/cjs/fixtureDb.native.js +2 -1
  22. package/dist/cjs/fixtureDb.native.js.map +1 -1
  23. package/dist/cjs/frappeApp.cjs +15 -14
  24. package/dist/cjs/frappeApp.native.js +16 -14
  25. package/dist/cjs/frappeApp.native.js.map +1 -1
  26. package/dist/cjs/frappeReact.cjs +198 -18
  27. package/dist/cjs/frappeReact.native.js +241 -18
  28. package/dist/cjs/frappeReact.native.js.map +1 -1
  29. package/dist/cjs/index.cjs +9 -4
  30. package/dist/cjs/index.native.js +9 -4
  31. package/dist/cjs/index.native.js.map +1 -1
  32. package/dist/cjs/pacer.cjs +2 -2
  33. package/dist/cjs/pacer.native.js +2 -2
  34. package/dist/cjs/pacer.native.js.map +1 -1
  35. package/dist/cjs/realtime.cjs +186 -46
  36. package/dist/cjs/realtime.native.js +268 -48
  37. package/dist/cjs/realtime.native.js.map +1 -1
  38. package/dist/cjs/sync/backfill.cjs +32 -27
  39. package/dist/cjs/sync/backfill.native.js +49 -43
  40. package/dist/cjs/sync/backfill.native.js.map +1 -1
  41. package/dist/cjs/sync/index.cjs +90 -24
  42. package/dist/cjs/sync/index.native.js +112 -10
  43. package/dist/cjs/sync/index.native.js.map +1 -1
  44. package/dist/cjs/sync/merge.cjs +0 -3
  45. package/dist/cjs/sync/merge.native.js +0 -3
  46. package/dist/cjs/sync/merge.native.js.map +1 -1
  47. package/dist/cjs/sync/mutationEngine.cjs +25 -19
  48. package/dist/cjs/sync/mutationEngine.native.js +16 -13
  49. package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
  50. package/dist/cjs/sync/mutationJournal.cjs +9 -4
  51. package/dist/cjs/sync/mutationJournal.native.js +7 -4
  52. package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
  53. package/dist/cjs/sync/normalizedCache.cjs +7 -3
  54. package/dist/cjs/sync/normalizedCache.native.js +7 -2
  55. package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
  56. package/dist/cjs/sync/persistence.cjs +63 -31
  57. package/dist/cjs/sync/persistence.native.js +120 -63
  58. package/dist/cjs/sync/persistence.native.js.map +1 -1
  59. package/dist/cjs/sync/realtime.cjs +124 -13
  60. package/dist/cjs/sync/realtime.native.js +163 -20
  61. package/dist/cjs/sync/realtime.native.js.map +1 -1
  62. package/dist/cjs/sync/rehydration.cjs +16 -10
  63. package/dist/cjs/sync/rehydration.native.js +16 -14
  64. package/dist/cjs/sync/rehydration.native.js.map +1 -1
  65. package/dist/cjs/sync/storage.cjs +3 -3
  66. package/dist/cjs/sync/storage.native.js +1 -1
  67. package/dist/cjs/sync/storage.native.js.map +1 -1
  68. package/dist/cjs/sync/subscriptionManager.cjs +255 -65
  69. package/dist/cjs/sync/subscriptionManager.native.js +330 -93
  70. package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
  71. package/dist/cjs/sync/types.cjs +2 -0
  72. package/dist/cjs/sync/types.native.js +2 -0
  73. package/dist/cjs/sync/types.native.js.map +1 -1
  74. package/dist/cjs/sync/virtualPageManager.cjs +9 -9
  75. package/dist/cjs/sync/virtualPageManager.native.js +5 -9
  76. package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
  77. package/dist/cjs/useLiveQuery.cjs +52 -0
  78. package/dist/cjs/useLiveQuery.native.js +59 -0
  79. package/dist/cjs/useLiveQuery.native.js.map +1 -0
  80. package/dist/cjs/util.cjs +11 -2
  81. package/dist/cjs/util.native.js +16 -2
  82. package/dist/cjs/util.native.js.map +1 -1
  83. package/dist/esm/auth.mjs +1 -1
  84. package/dist/esm/auth.mjs.map +1 -1
  85. package/dist/esm/auth.native.js.map +1 -1
  86. package/dist/esm/call.mjs +1 -1
  87. package/dist/esm/call.mjs.map +1 -1
  88. package/dist/esm/call.native.js.map +1 -1
  89. package/dist/esm/collection.mjs +18 -4
  90. package/dist/esm/collection.mjs.map +1 -1
  91. package/dist/esm/collection.native.js +18 -4
  92. package/dist/esm/collection.native.js.map +1 -1
  93. package/dist/esm/core/http.mjs +93 -10
  94. package/dist/esm/core/http.mjs.map +1 -1
  95. package/dist/esm/core/http.native.js +97 -8
  96. package/dist/esm/core/http.native.js.map +1 -1
  97. package/dist/esm/db.mjs +7 -7
  98. package/dist/esm/db.mjs.map +1 -1
  99. package/dist/esm/db.native.js +4 -4
  100. package/dist/esm/db.native.js.map +1 -1
  101. package/dist/esm/doctype.mjs +96 -39
  102. package/dist/esm/doctype.mjs.map +1 -1
  103. package/dist/esm/doctype.native.js +115 -46
  104. package/dist/esm/doctype.native.js.map +1 -1
  105. package/dist/esm/file.mjs +1 -1
  106. package/dist/esm/file.mjs.map +1 -1
  107. package/dist/esm/file.native.js.map +1 -1
  108. package/dist/esm/fixtureDb.mjs +3 -2
  109. package/dist/esm/fixtureDb.mjs.map +1 -1
  110. package/dist/esm/fixtureDb.native.js +2 -1
  111. package/dist/esm/fixtureDb.native.js.map +1 -1
  112. package/dist/esm/frappeApp.mjs +15 -14
  113. package/dist/esm/frappeApp.mjs.map +1 -1
  114. package/dist/esm/frappeApp.native.js +16 -14
  115. package/dist/esm/frappeApp.native.js.map +1 -1
  116. package/dist/esm/frappeReact.mjs +197 -19
  117. package/dist/esm/frappeReact.mjs.map +1 -1
  118. package/dist/esm/frappeReact.native.js +240 -19
  119. package/dist/esm/frappeReact.native.js.map +1 -1
  120. package/dist/esm/index.mjs +5 -4
  121. package/dist/esm/index.mjs.map +1 -1
  122. package/dist/esm/index.native.js +5 -4
  123. package/dist/esm/index.native.js.map +1 -1
  124. package/dist/esm/pacer.mjs +1 -1
  125. package/dist/esm/pacer.native.js +1 -1
  126. package/dist/esm/realtime.mjs +187 -47
  127. package/dist/esm/realtime.mjs.map +1 -1
  128. package/dist/esm/realtime.native.js +269 -49
  129. package/dist/esm/realtime.native.js.map +1 -1
  130. package/dist/esm/sync/backfill.mjs +32 -27
  131. package/dist/esm/sync/backfill.mjs.map +1 -1
  132. package/dist/esm/sync/backfill.native.js +49 -43
  133. package/dist/esm/sync/backfill.native.js.map +1 -1
  134. package/dist/esm/sync/index.mjs +90 -24
  135. package/dist/esm/sync/index.mjs.map +1 -1
  136. package/dist/esm/sync/index.native.js +112 -10
  137. package/dist/esm/sync/index.native.js.map +1 -1
  138. package/dist/esm/sync/merge.mjs +1 -1
  139. package/dist/esm/sync/merge.mjs.map +1 -1
  140. package/dist/esm/sync/merge.native.js +1 -1
  141. package/dist/esm/sync/merge.native.js.map +1 -1
  142. package/dist/esm/sync/mutationEngine.mjs +25 -19
  143. package/dist/esm/sync/mutationEngine.mjs.map +1 -1
  144. package/dist/esm/sync/mutationEngine.native.js +16 -13
  145. package/dist/esm/sync/mutationEngine.native.js.map +1 -1
  146. package/dist/esm/sync/mutationJournal.mjs +9 -4
  147. package/dist/esm/sync/mutationJournal.mjs.map +1 -1
  148. package/dist/esm/sync/mutationJournal.native.js +7 -4
  149. package/dist/esm/sync/mutationJournal.native.js.map +1 -1
  150. package/dist/esm/sync/normalizedCache.mjs +7 -3
  151. package/dist/esm/sync/normalizedCache.mjs.map +1 -1
  152. package/dist/esm/sync/normalizedCache.native.js +7 -2
  153. package/dist/esm/sync/normalizedCache.native.js.map +1 -1
  154. package/dist/esm/sync/persistence.mjs +64 -32
  155. package/dist/esm/sync/persistence.mjs.map +1 -1
  156. package/dist/esm/sync/persistence.native.js +121 -64
  157. package/dist/esm/sync/persistence.native.js.map +1 -1
  158. package/dist/esm/sync/realtime.mjs +124 -13
  159. package/dist/esm/sync/realtime.mjs.map +1 -1
  160. package/dist/esm/sync/realtime.native.js +163 -20
  161. package/dist/esm/sync/realtime.native.js.map +1 -1
  162. package/dist/esm/sync/rehydration.mjs +16 -10
  163. package/dist/esm/sync/rehydration.mjs.map +1 -1
  164. package/dist/esm/sync/rehydration.native.js +16 -14
  165. package/dist/esm/sync/rehydration.native.js.map +1 -1
  166. package/dist/esm/sync/storage.mjs +3 -3
  167. package/dist/esm/sync/storage.mjs.map +1 -1
  168. package/dist/esm/sync/storage.native.js +1 -1
  169. package/dist/esm/sync/storage.native.js.map +1 -1
  170. package/dist/esm/sync/subscriptionManager.mjs +255 -65
  171. package/dist/esm/sync/subscriptionManager.mjs.map +1 -1
  172. package/dist/esm/sync/subscriptionManager.native.js +330 -93
  173. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  174. package/dist/esm/sync/types.mjs +2 -0
  175. package/dist/esm/sync/types.mjs.map +1 -1
  176. package/dist/esm/sync/types.native.js +2 -0
  177. package/dist/esm/sync/types.native.js.map +1 -1
  178. package/dist/esm/sync/virtualPageManager.mjs +9 -9
  179. package/dist/esm/sync/virtualPageManager.mjs.map +1 -1
  180. package/dist/esm/sync/virtualPageManager.native.js +5 -9
  181. package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
  182. package/dist/esm/useLiveQuery.mjs +26 -0
  183. package/dist/esm/useLiveQuery.mjs.map +1 -0
  184. package/dist/esm/useLiveQuery.native.js +30 -0
  185. package/dist/esm/useLiveQuery.native.js.map +1 -0
  186. package/dist/esm/util.mjs +10 -2
  187. package/dist/esm/util.mjs.map +1 -1
  188. package/dist/esm/util.native.js +15 -2
  189. package/dist/esm/util.native.js.map +1 -1
  190. package/dist/jsx/auth.mjs +1 -1
  191. package/dist/jsx/auth.mjs.map +1 -1
  192. package/dist/jsx/auth.native.js.map +1 -1
  193. package/dist/jsx/call.mjs +1 -1
  194. package/dist/jsx/call.mjs.map +1 -1
  195. package/dist/jsx/call.native.js.map +1 -1
  196. package/dist/jsx/collection.mjs +18 -4
  197. package/dist/jsx/collection.mjs.map +1 -1
  198. package/dist/jsx/collection.native.js +18 -4
  199. package/dist/jsx/collection.native.js.map +1 -1
  200. package/dist/jsx/core/http.mjs +93 -10
  201. package/dist/jsx/core/http.mjs.map +1 -1
  202. package/dist/jsx/core/http.native.js +96 -7
  203. package/dist/jsx/core/http.native.js.map +1 -1
  204. package/dist/jsx/db.mjs +7 -7
  205. package/dist/jsx/db.mjs.map +1 -1
  206. package/dist/jsx/db.native.js +4 -4
  207. package/dist/jsx/db.native.js.map +1 -1
  208. package/dist/jsx/doctype.mjs +96 -39
  209. package/dist/jsx/doctype.mjs.map +1 -1
  210. package/dist/jsx/doctype.native.js +116 -46
  211. package/dist/jsx/doctype.native.js.map +1 -1
  212. package/dist/jsx/file.mjs +1 -1
  213. package/dist/jsx/file.mjs.map +1 -1
  214. package/dist/jsx/file.native.js.map +1 -1
  215. package/dist/jsx/fixtureDb.mjs +3 -2
  216. package/dist/jsx/fixtureDb.mjs.map +1 -1
  217. package/dist/jsx/fixtureDb.native.js +2 -1
  218. package/dist/jsx/fixtureDb.native.js.map +1 -1
  219. package/dist/jsx/frappeApp.mjs +15 -14
  220. package/dist/jsx/frappeApp.mjs.map +1 -1
  221. package/dist/jsx/frappeApp.native.js +16 -14
  222. package/dist/jsx/frappeApp.native.js.map +1 -1
  223. package/dist/jsx/frappeReact.mjs +197 -19
  224. package/dist/jsx/frappeReact.mjs.map +1 -1
  225. package/dist/jsx/frappeReact.native.js +241 -18
  226. package/dist/jsx/frappeReact.native.js.map +1 -1
  227. package/dist/jsx/index.js +5 -4
  228. package/dist/jsx/index.js.map +1 -1
  229. package/dist/jsx/index.mjs +5 -4
  230. package/dist/jsx/index.mjs.map +1 -1
  231. package/dist/jsx/index.native.js +9 -4
  232. package/dist/jsx/index.native.js.map +1 -1
  233. package/dist/jsx/pacer.mjs +1 -1
  234. package/dist/jsx/pacer.native.js +2 -2
  235. package/dist/jsx/pacer.native.js.map +1 -1
  236. package/dist/jsx/realtime.mjs +187 -47
  237. package/dist/jsx/realtime.mjs.map +1 -1
  238. package/dist/jsx/realtime.native.js +268 -48
  239. package/dist/jsx/realtime.native.js.map +1 -1
  240. package/dist/jsx/sync/backfill.mjs +32 -27
  241. package/dist/jsx/sync/backfill.mjs.map +1 -1
  242. package/dist/jsx/sync/backfill.native.js +49 -43
  243. package/dist/jsx/sync/backfill.native.js.map +1 -1
  244. package/dist/jsx/sync/index.mjs +90 -24
  245. package/dist/jsx/sync/index.mjs.map +1 -1
  246. package/dist/jsx/sync/index.native.js +112 -10
  247. package/dist/jsx/sync/index.native.js.map +1 -1
  248. package/dist/jsx/sync/merge.mjs +1 -1
  249. package/dist/jsx/sync/merge.mjs.map +1 -1
  250. package/dist/jsx/sync/merge.native.js +0 -3
  251. package/dist/jsx/sync/merge.native.js.map +1 -1
  252. package/dist/jsx/sync/mutationEngine.mjs +25 -19
  253. package/dist/jsx/sync/mutationEngine.mjs.map +1 -1
  254. package/dist/jsx/sync/mutationEngine.native.js +16 -13
  255. package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
  256. package/dist/jsx/sync/mutationJournal.mjs +9 -4
  257. package/dist/jsx/sync/mutationJournal.mjs.map +1 -1
  258. package/dist/jsx/sync/mutationJournal.native.js +7 -4
  259. package/dist/jsx/sync/mutationJournal.native.js.map +1 -1
  260. package/dist/jsx/sync/normalizedCache.mjs +7 -3
  261. package/dist/jsx/sync/normalizedCache.mjs.map +1 -1
  262. package/dist/jsx/sync/normalizedCache.native.js +7 -2
  263. package/dist/jsx/sync/normalizedCache.native.js.map +1 -1
  264. package/dist/jsx/sync/persistence.mjs +64 -32
  265. package/dist/jsx/sync/persistence.mjs.map +1 -1
  266. package/dist/jsx/sync/persistence.native.js +120 -63
  267. package/dist/jsx/sync/persistence.native.js.map +1 -1
  268. package/dist/jsx/sync/realtime.mjs +124 -13
  269. package/dist/jsx/sync/realtime.mjs.map +1 -1
  270. package/dist/jsx/sync/realtime.native.js +163 -20
  271. package/dist/jsx/sync/realtime.native.js.map +1 -1
  272. package/dist/jsx/sync/rehydration.mjs +16 -10
  273. package/dist/jsx/sync/rehydration.mjs.map +1 -1
  274. package/dist/jsx/sync/rehydration.native.js +16 -14
  275. package/dist/jsx/sync/rehydration.native.js.map +1 -1
  276. package/dist/jsx/sync/storage.mjs +3 -3
  277. package/dist/jsx/sync/storage.mjs.map +1 -1
  278. package/dist/jsx/sync/storage.native.js +1 -1
  279. package/dist/jsx/sync/storage.native.js.map +1 -1
  280. package/dist/jsx/sync/subscriptionManager.mjs +255 -65
  281. package/dist/jsx/sync/subscriptionManager.mjs.map +1 -1
  282. package/dist/jsx/sync/subscriptionManager.native.js +330 -93
  283. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  284. package/dist/jsx/sync/types.mjs +2 -0
  285. package/dist/jsx/sync/types.mjs.map +1 -1
  286. package/dist/jsx/sync/types.native.js +2 -0
  287. package/dist/jsx/sync/types.native.js.map +1 -1
  288. package/dist/jsx/sync/virtualPageManager.mjs +9 -9
  289. package/dist/jsx/sync/virtualPageManager.mjs.map +1 -1
  290. package/dist/jsx/sync/virtualPageManager.native.js +5 -9
  291. package/dist/jsx/sync/virtualPageManager.native.js.map +1 -1
  292. package/dist/jsx/useLiveQuery.mjs +26 -0
  293. package/dist/jsx/useLiveQuery.mjs.map +1 -0
  294. package/dist/jsx/useLiveQuery.native.js +59 -0
  295. package/dist/jsx/useLiveQuery.native.js.map +1 -0
  296. package/dist/jsx/util.mjs +10 -2
  297. package/dist/jsx/util.mjs.map +1 -1
  298. package/dist/jsx/util.native.js +16 -2
  299. package/dist/jsx/util.native.js.map +1 -1
  300. package/package.json +20 -17
  301. package/src/auth.ts +5 -1
  302. package/src/call.ts +5 -1
  303. package/src/collection.spec.ts +55 -0
  304. package/src/collection.ts +33 -4
  305. package/src/core/http.spec.ts +66 -0
  306. package/src/core/http.ts +115 -9
  307. package/src/core/httpNative.spec.ts +234 -0
  308. package/src/core/types.ts +2 -0
  309. package/src/db.spec.ts +91 -51
  310. package/src/db.ts +27 -8
  311. package/src/doctype.spec.ts +247 -39
  312. package/src/doctype.ts +203 -53
  313. package/src/file.ts +5 -1
  314. package/src/fixtureDb.ts +13 -2
  315. package/src/frappeApp.ts +18 -19
  316. package/src/frappeReact.spec.ts +565 -1
  317. package/src/frappeReact.ts +445 -37
  318. package/src/frappeReactLiveQueryGc.spec.ts +320 -0
  319. package/src/frappeReactNative.spec.ts +65 -0
  320. package/src/index.ts +10 -9
  321. package/src/pacer.ts +1 -1
  322. package/src/realtime.spec.ts +464 -20
  323. package/src/realtime.ts +284 -46
  324. package/src/sync/backfill.spec.ts +43 -0
  325. package/src/sync/backfill.ts +59 -39
  326. package/src/sync/debug.spec.ts +36 -0
  327. package/src/sync/filterValidation.spec.ts +197 -0
  328. package/src/sync/index.ts +98 -7
  329. package/src/sync/merge.ts +3 -3
  330. package/src/sync/mutationEngine.spec.ts +36 -4
  331. package/src/sync/mutationEngine.ts +30 -11
  332. package/src/sync/mutationJournal.ts +18 -4
  333. package/src/sync/normalizedCache.spec.ts +102 -0
  334. package/src/sync/normalizedCache.ts +19 -3
  335. package/src/sync/offlineRestore.spec.ts +423 -0
  336. package/src/sync/persistence.spec.ts +39 -7
  337. package/src/sync/persistence.ts +90 -18
  338. package/src/sync/persistenceGjs.spec.ts +143 -0
  339. package/src/sync/persistenceNative.spec.ts +139 -0
  340. package/src/sync/realtime.spec.ts +18 -1
  341. package/src/sync/realtime.ts +161 -13
  342. package/src/sync/rehydration.ts +23 -5
  343. package/src/sync/storage.ts +5 -4
  344. package/src/sync/subscriptionManager.spec.ts +94 -0
  345. package/src/sync/subscriptionManager.ts +304 -82
  346. package/src/sync/syncModule.spec.ts +137 -0
  347. package/src/sync/types.ts +39 -0
  348. package/src/sync/virtualPageManager.ts +8 -4
  349. package/src/useLiveQuery.ts +58 -0
  350. package/src/util.spec.ts +35 -4
  351. package/src/util.ts +34 -7
  352. package/types/auth.d.ts +13 -0
  353. package/types/auth.d.ts.map +1 -0
  354. package/types/call.d.ts +10 -0
  355. package/types/call.d.ts.map +1 -0
  356. package/types/collection.d.ts +127 -0
  357. package/types/collection.d.ts.map +1 -0
  358. package/types/common/types.d.ts +35 -0
  359. package/types/common/types.d.ts.map +1 -0
  360. package/types/core/http.d.ts +86 -0
  361. package/types/core/http.d.ts.map +1 -0
  362. package/types/core/types.d.ts +74 -0
  363. package/types/core/types.d.ts.map +1 -0
  364. package/types/core/wire.d.ts +405 -0
  365. package/types/core/wire.d.ts.map +1 -0
  366. package/types/db.d.ts +244 -0
  367. package/types/db.d.ts.map +1 -0
  368. package/types/devtools/FrappeDevtoolsPanel.d.ts +7 -0
  369. package/types/devtools/FrappeDevtoolsPanel.d.ts.map +1 -0
  370. package/types/devtools/index.d.ts +4 -0
  371. package/types/devtools/index.d.ts.map +1 -0
  372. package/types/devtools/plugin.d.ts +9 -0
  373. package/types/devtools/plugin.d.ts.map +1 -0
  374. package/types/devtools/theme.d.ts +15 -0
  375. package/types/devtools/theme.d.ts.map +1 -0
  376. package/types/doctype.d.ts +256 -0
  377. package/types/doctype.d.ts.map +1 -0
  378. package/types/file.d.ts +15 -0
  379. package/types/file.d.ts.map +1 -0
  380. package/types/fixtureDb.d.ts +76 -0
  381. package/types/fixtureDb.d.ts.map +1 -0
  382. package/types/fixtures.d.ts +55 -0
  383. package/types/fixtures.d.ts.map +1 -0
  384. package/types/frappeApp.d.ts +45 -0
  385. package/types/frappeApp.d.ts.map +1 -0
  386. package/types/frappeReact.d.ts +270 -0
  387. package/types/frappeReact.d.ts.map +1 -0
  388. package/types/index.d.ts +44 -0
  389. package/types/index.d.ts.map +1 -0
  390. package/types/optimistic.d.ts +38 -0
  391. package/types/optimistic.d.ts.map +1 -0
  392. package/types/pacer.d.ts +193 -0
  393. package/types/pacer.d.ts.map +1 -0
  394. package/types/plugin/index.d.ts +11 -0
  395. package/types/plugin/index.d.ts.map +1 -0
  396. package/types/realtime.d.ts +121 -0
  397. package/types/realtime.d.ts.map +1 -0
  398. package/types/sync/backfill.d.ts +60 -0
  399. package/types/sync/backfill.d.ts.map +1 -0
  400. package/types/sync/filters.d.ts +101 -0
  401. package/types/sync/filters.d.ts.map +1 -0
  402. package/types/sync/index.d.ts +181 -0
  403. package/types/sync/index.d.ts.map +1 -0
  404. package/types/sync/merge.d.ts +59 -0
  405. package/types/sync/merge.d.ts.map +1 -0
  406. package/types/sync/mutationEngine.d.ts +117 -0
  407. package/types/sync/mutationEngine.d.ts.map +1 -0
  408. package/types/sync/mutationJournal.d.ts +60 -0
  409. package/types/sync/mutationJournal.d.ts.map +1 -0
  410. package/types/sync/normalizedCache.d.ts +59 -0
  411. package/types/sync/normalizedCache.d.ts.map +1 -0
  412. package/types/sync/persistence.d.ts +185 -0
  413. package/types/sync/persistence.d.ts.map +1 -0
  414. package/types/sync/realtime.d.ts +121 -0
  415. package/types/sync/realtime.d.ts.map +1 -0
  416. package/types/sync/rehydration.d.ts +109 -0
  417. package/types/sync/rehydration.d.ts.map +1 -0
  418. package/types/sync/storage.d.ts +65 -0
  419. package/types/sync/storage.d.ts.map +1 -0
  420. package/types/sync/subscriptionManager.d.ts +161 -0
  421. package/types/sync/subscriptionManager.d.ts.map +1 -0
  422. package/types/sync/types.d.ts +435 -0
  423. package/types/sync/types.d.ts.map +1 -0
  424. package/types/sync/virtualPageManager.d.ts +190 -0
  425. package/types/sync/virtualPageManager.d.ts.map +1 -0
  426. package/types/useLiveQuery.d.ts +16 -0
  427. package/types/useLiveQuery.d.ts.map +1 -0
  428. package/types/util.d.ts +24 -0
  429. package/types/util.d.ts.map +1 -0
  430. package/dist/cjs/auth.spec.cjs +0 -322
  431. package/dist/cjs/auth.spec.native.js +0 -329
  432. package/dist/cjs/auth.spec.native.js.map +0 -1
  433. package/dist/cjs/call.spec.cjs +0 -427
  434. package/dist/cjs/call.spec.native.js +0 -430
  435. package/dist/cjs/call.spec.native.js.map +0 -1
  436. package/dist/cjs/collection.spec.cjs +0 -186
  437. package/dist/cjs/collection.spec.native.js +0 -216
  438. package/dist/cjs/collection.spec.native.js.map +0 -1
  439. package/dist/cjs/common/types.spec.cjs +0 -266
  440. package/dist/cjs/common/types.spec.native.js +0 -271
  441. package/dist/cjs/common/types.spec.native.js.map +0 -1
  442. package/dist/cjs/core/http.spec.cjs +0 -1259
  443. package/dist/cjs/core/http.spec.native.js +0 -1401
  444. package/dist/cjs/core/http.spec.native.js.map +0 -1
  445. package/dist/cjs/core/wire.spec.cjs +0 -478
  446. package/dist/cjs/core/wire.spec.native.js +0 -482
  447. package/dist/cjs/core/wire.spec.native.js.map +0 -1
  448. package/dist/cjs/db.spec.cjs +0 -862
  449. package/dist/cjs/db.spec.native.js +0 -865
  450. package/dist/cjs/db.spec.native.js.map +0 -1
  451. package/dist/cjs/doctype.spec.cjs +0 -460
  452. package/dist/cjs/doctype.spec.native.js +0 -538
  453. package/dist/cjs/doctype.spec.native.js.map +0 -1
  454. package/dist/cjs/file.spec.cjs +0 -315
  455. package/dist/cjs/file.spec.native.js +0 -342
  456. package/dist/cjs/file.spec.native.js.map +0 -1
  457. package/dist/cjs/frappeApp.spec.cjs +0 -306
  458. package/dist/cjs/frappeApp.spec.native.js +0 -308
  459. package/dist/cjs/frappeApp.spec.native.js.map +0 -1
  460. package/dist/cjs/frappeReact.spec.cjs +0 -531
  461. package/dist/cjs/frappeReact.spec.native.js +0 -670
  462. package/dist/cjs/frappeReact.spec.native.js.map +0 -1
  463. package/dist/cjs/optimistic.spec.cjs +0 -11
  464. package/dist/cjs/optimistic.spec.native.js +0 -19
  465. package/dist/cjs/optimistic.spec.native.js.map +0 -1
  466. package/dist/cjs/pacer.spec.cjs +0 -470
  467. package/dist/cjs/pacer.spec.native.js +0 -537
  468. package/dist/cjs/pacer.spec.native.js.map +0 -1
  469. package/dist/cjs/realtime.spec.cjs +0 -326
  470. package/dist/cjs/realtime.spec.native.js +0 -392
  471. package/dist/cjs/realtime.spec.native.js.map +0 -1
  472. package/dist/cjs/sync/backfill.spec.cjs +0 -586
  473. package/dist/cjs/sync/backfill.spec.native.js +0 -712
  474. package/dist/cjs/sync/backfill.spec.native.js.map +0 -1
  475. package/dist/cjs/sync/debug.spec.cjs +0 -125
  476. package/dist/cjs/sync/debug.spec.native.js +0 -133
  477. package/dist/cjs/sync/debug.spec.native.js.map +0 -1
  478. package/dist/cjs/sync/filters.spec.cjs +0 -168
  479. package/dist/cjs/sync/filters.spec.native.js +0 -173
  480. package/dist/cjs/sync/filters.spec.native.js.map +0 -1
  481. package/dist/cjs/sync/merge.spec.cjs +0 -908
  482. package/dist/cjs/sync/merge.spec.native.js +0 -937
  483. package/dist/cjs/sync/merge.spec.native.js.map +0 -1
  484. package/dist/cjs/sync/multiOrderBy.spec.cjs +0 -165
  485. package/dist/cjs/sync/multiOrderBy.spec.native.js +0 -229
  486. package/dist/cjs/sync/multiOrderBy.spec.native.js.map +0 -1
  487. package/dist/cjs/sync/mutationEngine.spec.cjs +0 -1158
  488. package/dist/cjs/sync/mutationEngine.spec.native.js +0 -1173
  489. package/dist/cjs/sync/mutationEngine.spec.native.js.map +0 -1
  490. package/dist/cjs/sync/mutationJournal.spec.cjs +0 -330
  491. package/dist/cjs/sync/mutationJournal.spec.native.js +0 -333
  492. package/dist/cjs/sync/mutationJournal.spec.native.js.map +0 -1
  493. package/dist/cjs/sync/mutations.spec.cjs +0 -327
  494. package/dist/cjs/sync/mutations.spec.native.js +0 -330
  495. package/dist/cjs/sync/mutations.spec.native.js.map +0 -1
  496. package/dist/cjs/sync/normalizedCache.spec.cjs +0 -302
  497. package/dist/cjs/sync/normalizedCache.spec.native.js +0 -311
  498. package/dist/cjs/sync/normalizedCache.spec.native.js.map +0 -1
  499. package/dist/cjs/sync/persistence.spec.cjs +0 -562
  500. package/dist/cjs/sync/persistence.spec.native.js +0 -572
  501. package/dist/cjs/sync/persistence.spec.native.js.map +0 -1
  502. package/dist/cjs/sync/realtime.spec.cjs +0 -499
  503. package/dist/cjs/sync/realtime.spec.native.js +0 -512
  504. package/dist/cjs/sync/realtime.spec.native.js.map +0 -1
  505. package/dist/cjs/sync/rehydration.spec.cjs +0 -731
  506. package/dist/cjs/sync/rehydration.spec.native.js +0 -736
  507. package/dist/cjs/sync/rehydration.spec.native.js.map +0 -1
  508. package/dist/cjs/sync/storage.spec.cjs +0 -446
  509. package/dist/cjs/sync/storage.spec.native.js +0 -470
  510. package/dist/cjs/sync/storage.spec.native.js.map +0 -1
  511. package/dist/cjs/sync/subscriptionManager.spec.cjs +0 -1102
  512. package/dist/cjs/sync/subscriptionManager.spec.native.js +0 -1136
  513. package/dist/cjs/sync/subscriptionManager.spec.native.js.map +0 -1
  514. package/dist/cjs/sync/subscriptions.spec.cjs +0 -937
  515. package/dist/cjs/sync/subscriptions.spec.native.js +0 -969
  516. package/dist/cjs/sync/subscriptions.spec.native.js.map +0 -1
  517. package/dist/cjs/sync/syncModule.spec.cjs +0 -206
  518. package/dist/cjs/sync/syncModule.spec.native.js +0 -222
  519. package/dist/cjs/sync/syncModule.spec.native.js.map +0 -1
  520. package/dist/cjs/sync/types.spec.cjs +0 -246
  521. package/dist/cjs/sync/types.spec.native.js +0 -256
  522. package/dist/cjs/sync/types.spec.native.js.map +0 -1
  523. package/dist/cjs/sync/virtualPageManager.spec.cjs +0 -801
  524. package/dist/cjs/sync/virtualPageManager.spec.native.js +0 -873
  525. package/dist/cjs/sync/virtualPageManager.spec.native.js.map +0 -1
  526. package/dist/cjs/util.spec.cjs +0 -43
  527. package/dist/cjs/util.spec.native.js +0 -48
  528. package/dist/cjs/util.spec.native.js.map +0 -1
  529. package/dist/esm/auth.spec.mjs +0 -323
  530. package/dist/esm/auth.spec.mjs.map +0 -1
  531. package/dist/esm/auth.spec.native.js +0 -327
  532. package/dist/esm/auth.spec.native.js.map +0 -1
  533. package/dist/esm/call.spec.mjs +0 -428
  534. package/dist/esm/call.spec.mjs.map +0 -1
  535. package/dist/esm/call.spec.native.js +0 -428
  536. package/dist/esm/call.spec.native.js.map +0 -1
  537. package/dist/esm/collection.spec.mjs +0 -187
  538. package/dist/esm/collection.spec.mjs.map +0 -1
  539. package/dist/esm/collection.spec.native.js +0 -214
  540. package/dist/esm/collection.spec.native.js.map +0 -1
  541. package/dist/esm/common/types.spec.mjs +0 -267
  542. package/dist/esm/common/types.spec.mjs.map +0 -1
  543. package/dist/esm/common/types.spec.native.js +0 -269
  544. package/dist/esm/common/types.spec.native.js.map +0 -1
  545. package/dist/esm/core/http.spec.mjs +0 -1260
  546. package/dist/esm/core/http.spec.mjs.map +0 -1
  547. package/dist/esm/core/http.spec.native.js +0 -1399
  548. package/dist/esm/core/http.spec.native.js.map +0 -1
  549. package/dist/esm/core/wire.spec.mjs +0 -479
  550. package/dist/esm/core/wire.spec.mjs.map +0 -1
  551. package/dist/esm/core/wire.spec.native.js +0 -480
  552. package/dist/esm/core/wire.spec.native.js.map +0 -1
  553. package/dist/esm/db.spec.mjs +0 -863
  554. package/dist/esm/db.spec.mjs.map +0 -1
  555. package/dist/esm/db.spec.native.js +0 -863
  556. package/dist/esm/db.spec.native.js.map +0 -1
  557. package/dist/esm/doctype.spec.mjs +0 -461
  558. package/dist/esm/doctype.spec.mjs.map +0 -1
  559. package/dist/esm/doctype.spec.native.js +0 -536
  560. package/dist/esm/doctype.spec.native.js.map +0 -1
  561. package/dist/esm/file.spec.mjs +0 -316
  562. package/dist/esm/file.spec.mjs.map +0 -1
  563. package/dist/esm/file.spec.native.js +0 -340
  564. package/dist/esm/file.spec.native.js.map +0 -1
  565. package/dist/esm/frappeApp.spec.mjs +0 -307
  566. package/dist/esm/frappeApp.spec.mjs.map +0 -1
  567. package/dist/esm/frappeApp.spec.native.js +0 -306
  568. package/dist/esm/frappeApp.spec.native.js.map +0 -1
  569. package/dist/esm/frappeReact.spec.mjs +0 -532
  570. package/dist/esm/frappeReact.spec.mjs.map +0 -1
  571. package/dist/esm/frappeReact.spec.native.js +0 -668
  572. package/dist/esm/frappeReact.spec.native.js.map +0 -1
  573. package/dist/esm/optimistic.spec.mjs +0 -12
  574. package/dist/esm/optimistic.spec.mjs.map +0 -1
  575. package/dist/esm/optimistic.spec.native.js +0 -17
  576. package/dist/esm/optimistic.spec.native.js.map +0 -1
  577. package/dist/esm/pacer.spec.mjs +0 -447
  578. package/dist/esm/pacer.spec.mjs.map +0 -1
  579. package/dist/esm/pacer.spec.native.js +0 -511
  580. package/dist/esm/pacer.spec.native.js.map +0 -1
  581. package/dist/esm/realtime.spec.mjs +0 -327
  582. package/dist/esm/realtime.spec.mjs.map +0 -1
  583. package/dist/esm/realtime.spec.native.js +0 -390
  584. package/dist/esm/realtime.spec.native.js.map +0 -1
  585. package/dist/esm/sync/backfill.spec.mjs +0 -563
  586. package/dist/esm/sync/backfill.spec.mjs.map +0 -1
  587. package/dist/esm/sync/backfill.spec.native.js +0 -686
  588. package/dist/esm/sync/backfill.spec.native.js.map +0 -1
  589. package/dist/esm/sync/debug.spec.mjs +0 -102
  590. package/dist/esm/sync/debug.spec.mjs.map +0 -1
  591. package/dist/esm/sync/debug.spec.native.js +0 -107
  592. package/dist/esm/sync/debug.spec.native.js.map +0 -1
  593. package/dist/esm/sync/filters.spec.mjs +0 -169
  594. package/dist/esm/sync/filters.spec.mjs.map +0 -1
  595. package/dist/esm/sync/filters.spec.native.js +0 -171
  596. package/dist/esm/sync/filters.spec.native.js.map +0 -1
  597. package/dist/esm/sync/merge.spec.mjs +0 -909
  598. package/dist/esm/sync/merge.spec.mjs.map +0 -1
  599. package/dist/esm/sync/merge.spec.native.js +0 -935
  600. package/dist/esm/sync/merge.spec.native.js.map +0 -1
  601. package/dist/esm/sync/multiOrderBy.spec.mjs +0 -166
  602. package/dist/esm/sync/multiOrderBy.spec.mjs.map +0 -1
  603. package/dist/esm/sync/multiOrderBy.spec.native.js +0 -227
  604. package/dist/esm/sync/multiOrderBy.spec.native.js.map +0 -1
  605. package/dist/esm/sync/mutationEngine.spec.mjs +0 -1159
  606. package/dist/esm/sync/mutationEngine.spec.mjs.map +0 -1
  607. package/dist/esm/sync/mutationEngine.spec.native.js +0 -1171
  608. package/dist/esm/sync/mutationEngine.spec.native.js.map +0 -1
  609. package/dist/esm/sync/mutationJournal.spec.mjs +0 -331
  610. package/dist/esm/sync/mutationJournal.spec.mjs.map +0 -1
  611. package/dist/esm/sync/mutationJournal.spec.native.js +0 -331
  612. package/dist/esm/sync/mutationJournal.spec.native.js.map +0 -1
  613. package/dist/esm/sync/mutations.spec.mjs +0 -328
  614. package/dist/esm/sync/mutations.spec.mjs.map +0 -1
  615. package/dist/esm/sync/mutations.spec.native.js +0 -328
  616. package/dist/esm/sync/mutations.spec.native.js.map +0 -1
  617. package/dist/esm/sync/normalizedCache.spec.mjs +0 -303
  618. package/dist/esm/sync/normalizedCache.spec.mjs.map +0 -1
  619. package/dist/esm/sync/normalizedCache.spec.native.js +0 -309
  620. package/dist/esm/sync/normalizedCache.spec.native.js.map +0 -1
  621. package/dist/esm/sync/persistence.spec.mjs +0 -563
  622. package/dist/esm/sync/persistence.spec.mjs.map +0 -1
  623. package/dist/esm/sync/persistence.spec.native.js +0 -570
  624. package/dist/esm/sync/persistence.spec.native.js.map +0 -1
  625. package/dist/esm/sync/realtime.spec.mjs +0 -500
  626. package/dist/esm/sync/realtime.spec.mjs.map +0 -1
  627. package/dist/esm/sync/realtime.spec.native.js +0 -510
  628. package/dist/esm/sync/realtime.spec.native.js.map +0 -1
  629. package/dist/esm/sync/rehydration.spec.mjs +0 -732
  630. package/dist/esm/sync/rehydration.spec.mjs.map +0 -1
  631. package/dist/esm/sync/rehydration.spec.native.js +0 -734
  632. package/dist/esm/sync/rehydration.spec.native.js.map +0 -1
  633. package/dist/esm/sync/storage.spec.mjs +0 -423
  634. package/dist/esm/sync/storage.spec.mjs.map +0 -1
  635. package/dist/esm/sync/storage.spec.native.js +0 -444
  636. package/dist/esm/sync/storage.spec.native.js.map +0 -1
  637. package/dist/esm/sync/subscriptionManager.spec.mjs +0 -1079
  638. package/dist/esm/sync/subscriptionManager.spec.mjs.map +0 -1
  639. package/dist/esm/sync/subscriptionManager.spec.native.js +0 -1110
  640. package/dist/esm/sync/subscriptionManager.spec.native.js.map +0 -1
  641. package/dist/esm/sync/subscriptions.spec.mjs +0 -914
  642. package/dist/esm/sync/subscriptions.spec.mjs.map +0 -1
  643. package/dist/esm/sync/subscriptions.spec.native.js +0 -943
  644. package/dist/esm/sync/subscriptions.spec.native.js.map +0 -1
  645. package/dist/esm/sync/syncModule.spec.mjs +0 -207
  646. package/dist/esm/sync/syncModule.spec.mjs.map +0 -1
  647. package/dist/esm/sync/syncModule.spec.native.js +0 -220
  648. package/dist/esm/sync/syncModule.spec.native.js.map +0 -1
  649. package/dist/esm/sync/types.spec.mjs +0 -247
  650. package/dist/esm/sync/types.spec.mjs.map +0 -1
  651. package/dist/esm/sync/types.spec.native.js +0 -254
  652. package/dist/esm/sync/types.spec.native.js.map +0 -1
  653. package/dist/esm/sync/virtualPageManager.spec.mjs +0 -802
  654. package/dist/esm/sync/virtualPageManager.spec.mjs.map +0 -1
  655. package/dist/esm/sync/virtualPageManager.spec.native.js +0 -871
  656. package/dist/esm/sync/virtualPageManager.spec.native.js.map +0 -1
  657. package/dist/esm/util.spec.mjs +0 -20
  658. package/dist/esm/util.spec.mjs.map +0 -1
  659. package/dist/esm/util.spec.native.js +0 -22
  660. package/dist/esm/util.spec.native.js.map +0 -1
  661. package/dist/jsx/auth.spec.mjs +0 -323
  662. package/dist/jsx/auth.spec.mjs.map +0 -1
  663. package/dist/jsx/auth.spec.native.js +0 -329
  664. package/dist/jsx/auth.spec.native.js.map +0 -1
  665. package/dist/jsx/call.spec.mjs +0 -428
  666. package/dist/jsx/call.spec.mjs.map +0 -1
  667. package/dist/jsx/call.spec.native.js +0 -430
  668. package/dist/jsx/call.spec.native.js.map +0 -1
  669. package/dist/jsx/collection.spec.mjs +0 -187
  670. package/dist/jsx/collection.spec.mjs.map +0 -1
  671. package/dist/jsx/collection.spec.native.js +0 -216
  672. package/dist/jsx/collection.spec.native.js.map +0 -1
  673. package/dist/jsx/common/types.spec.mjs +0 -267
  674. package/dist/jsx/common/types.spec.mjs.map +0 -1
  675. package/dist/jsx/common/types.spec.native.js +0 -271
  676. package/dist/jsx/common/types.spec.native.js.map +0 -1
  677. package/dist/jsx/core/http.spec.mjs +0 -1260
  678. package/dist/jsx/core/http.spec.mjs.map +0 -1
  679. package/dist/jsx/core/http.spec.native.js +0 -1401
  680. package/dist/jsx/core/http.spec.native.js.map +0 -1
  681. package/dist/jsx/core/wire.spec.mjs +0 -479
  682. package/dist/jsx/core/wire.spec.mjs.map +0 -1
  683. package/dist/jsx/core/wire.spec.native.js +0 -482
  684. package/dist/jsx/core/wire.spec.native.js.map +0 -1
  685. package/dist/jsx/db.spec.mjs +0 -863
  686. package/dist/jsx/db.spec.mjs.map +0 -1
  687. package/dist/jsx/db.spec.native.js +0 -865
  688. package/dist/jsx/db.spec.native.js.map +0 -1
  689. package/dist/jsx/doctype.spec.mjs +0 -461
  690. package/dist/jsx/doctype.spec.mjs.map +0 -1
  691. package/dist/jsx/doctype.spec.native.js +0 -538
  692. package/dist/jsx/doctype.spec.native.js.map +0 -1
  693. package/dist/jsx/file.spec.mjs +0 -316
  694. package/dist/jsx/file.spec.mjs.map +0 -1
  695. package/dist/jsx/file.spec.native.js +0 -342
  696. package/dist/jsx/file.spec.native.js.map +0 -1
  697. package/dist/jsx/frappeApp.spec.mjs +0 -307
  698. package/dist/jsx/frappeApp.spec.mjs.map +0 -1
  699. package/dist/jsx/frappeApp.spec.native.js +0 -308
  700. package/dist/jsx/frappeApp.spec.native.js.map +0 -1
  701. package/dist/jsx/frappeReact.spec.mjs +0 -532
  702. package/dist/jsx/frappeReact.spec.mjs.map +0 -1
  703. package/dist/jsx/frappeReact.spec.native.js +0 -670
  704. package/dist/jsx/frappeReact.spec.native.js.map +0 -1
  705. package/dist/jsx/optimistic.spec.mjs +0 -12
  706. package/dist/jsx/optimistic.spec.mjs.map +0 -1
  707. package/dist/jsx/optimistic.spec.native.js +0 -19
  708. package/dist/jsx/optimistic.spec.native.js.map +0 -1
  709. package/dist/jsx/pacer.spec.mjs +0 -447
  710. package/dist/jsx/pacer.spec.mjs.map +0 -1
  711. package/dist/jsx/pacer.spec.native.js +0 -537
  712. package/dist/jsx/pacer.spec.native.js.map +0 -1
  713. package/dist/jsx/realtime.spec.mjs +0 -327
  714. package/dist/jsx/realtime.spec.mjs.map +0 -1
  715. package/dist/jsx/realtime.spec.native.js +0 -392
  716. package/dist/jsx/realtime.spec.native.js.map +0 -1
  717. package/dist/jsx/sync/backfill.spec.mjs +0 -563
  718. package/dist/jsx/sync/backfill.spec.mjs.map +0 -1
  719. package/dist/jsx/sync/backfill.spec.native.js +0 -712
  720. package/dist/jsx/sync/backfill.spec.native.js.map +0 -1
  721. package/dist/jsx/sync/debug.spec.mjs +0 -102
  722. package/dist/jsx/sync/debug.spec.mjs.map +0 -1
  723. package/dist/jsx/sync/debug.spec.native.js +0 -133
  724. package/dist/jsx/sync/debug.spec.native.js.map +0 -1
  725. package/dist/jsx/sync/filters.spec.mjs +0 -169
  726. package/dist/jsx/sync/filters.spec.mjs.map +0 -1
  727. package/dist/jsx/sync/filters.spec.native.js +0 -173
  728. package/dist/jsx/sync/filters.spec.native.js.map +0 -1
  729. package/dist/jsx/sync/merge.spec.mjs +0 -909
  730. package/dist/jsx/sync/merge.spec.mjs.map +0 -1
  731. package/dist/jsx/sync/merge.spec.native.js +0 -937
  732. package/dist/jsx/sync/merge.spec.native.js.map +0 -1
  733. package/dist/jsx/sync/multiOrderBy.spec.mjs +0 -166
  734. package/dist/jsx/sync/multiOrderBy.spec.mjs.map +0 -1
  735. package/dist/jsx/sync/multiOrderBy.spec.native.js +0 -229
  736. package/dist/jsx/sync/multiOrderBy.spec.native.js.map +0 -1
  737. package/dist/jsx/sync/mutationEngine.spec.mjs +0 -1159
  738. package/dist/jsx/sync/mutationEngine.spec.mjs.map +0 -1
  739. package/dist/jsx/sync/mutationEngine.spec.native.js +0 -1173
  740. package/dist/jsx/sync/mutationEngine.spec.native.js.map +0 -1
  741. package/dist/jsx/sync/mutationJournal.spec.mjs +0 -331
  742. package/dist/jsx/sync/mutationJournal.spec.mjs.map +0 -1
  743. package/dist/jsx/sync/mutationJournal.spec.native.js +0 -333
  744. package/dist/jsx/sync/mutationJournal.spec.native.js.map +0 -1
  745. package/dist/jsx/sync/mutations.spec.mjs +0 -328
  746. package/dist/jsx/sync/mutations.spec.mjs.map +0 -1
  747. package/dist/jsx/sync/mutations.spec.native.js +0 -330
  748. package/dist/jsx/sync/mutations.spec.native.js.map +0 -1
  749. package/dist/jsx/sync/normalizedCache.spec.mjs +0 -303
  750. package/dist/jsx/sync/normalizedCache.spec.mjs.map +0 -1
  751. package/dist/jsx/sync/normalizedCache.spec.native.js +0 -311
  752. package/dist/jsx/sync/normalizedCache.spec.native.js.map +0 -1
  753. package/dist/jsx/sync/persistence.spec.mjs +0 -563
  754. package/dist/jsx/sync/persistence.spec.mjs.map +0 -1
  755. package/dist/jsx/sync/persistence.spec.native.js +0 -572
  756. package/dist/jsx/sync/persistence.spec.native.js.map +0 -1
  757. package/dist/jsx/sync/realtime.spec.mjs +0 -500
  758. package/dist/jsx/sync/realtime.spec.mjs.map +0 -1
  759. package/dist/jsx/sync/realtime.spec.native.js +0 -512
  760. package/dist/jsx/sync/realtime.spec.native.js.map +0 -1
  761. package/dist/jsx/sync/rehydration.spec.mjs +0 -732
  762. package/dist/jsx/sync/rehydration.spec.mjs.map +0 -1
  763. package/dist/jsx/sync/rehydration.spec.native.js +0 -736
  764. package/dist/jsx/sync/rehydration.spec.native.js.map +0 -1
  765. package/dist/jsx/sync/storage.spec.mjs +0 -423
  766. package/dist/jsx/sync/storage.spec.mjs.map +0 -1
  767. package/dist/jsx/sync/storage.spec.native.js +0 -470
  768. package/dist/jsx/sync/storage.spec.native.js.map +0 -1
  769. package/dist/jsx/sync/subscriptionManager.spec.mjs +0 -1079
  770. package/dist/jsx/sync/subscriptionManager.spec.mjs.map +0 -1
  771. package/dist/jsx/sync/subscriptionManager.spec.native.js +0 -1136
  772. package/dist/jsx/sync/subscriptionManager.spec.native.js.map +0 -1
  773. package/dist/jsx/sync/subscriptions.spec.mjs +0 -914
  774. package/dist/jsx/sync/subscriptions.spec.mjs.map +0 -1
  775. package/dist/jsx/sync/subscriptions.spec.native.js +0 -969
  776. package/dist/jsx/sync/subscriptions.spec.native.js.map +0 -1
  777. package/dist/jsx/sync/syncModule.spec.mjs +0 -207
  778. package/dist/jsx/sync/syncModule.spec.mjs.map +0 -1
  779. package/dist/jsx/sync/syncModule.spec.native.js +0 -222
  780. package/dist/jsx/sync/syncModule.spec.native.js.map +0 -1
  781. package/dist/jsx/sync/types.spec.mjs +0 -247
  782. package/dist/jsx/sync/types.spec.mjs.map +0 -1
  783. package/dist/jsx/sync/types.spec.native.js +0 -256
  784. package/dist/jsx/sync/types.spec.native.js.map +0 -1
  785. package/dist/jsx/sync/virtualPageManager.spec.mjs +0 -802
  786. package/dist/jsx/sync/virtualPageManager.spec.mjs.map +0 -1
  787. package/dist/jsx/sync/virtualPageManager.spec.native.js +0 -873
  788. package/dist/jsx/sync/virtualPageManager.spec.native.js.map +0 -1
  789. package/dist/jsx/util.spec.mjs +0 -20
  790. package/dist/jsx/util.spec.mjs.map +0 -1
  791. package/dist/jsx/util.spec.native.js +0 -48
  792. package/dist/jsx/util.spec.native.js.map +0 -1
@@ -46,31 +46,30 @@ var SubscriptionManager = /* @__PURE__ */function () {
46
46
  function SubscriptionManager2(db, normalizedCache) {
47
47
  var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
48
48
  _class_call_check(this, SubscriptionManager2);
49
+ _define_property(this, "subscriptions", /* @__PURE__ */new Map());
50
+ _define_property(this, "virtualPageManager", void 0);
51
+ _define_property(this, "backfillManager", void 0);
52
+ _define_property(this, "queryKeyToSubId", /* @__PURE__ */new Map());
53
+ _define_property(this, "subRefCounts", /* @__PURE__ */new Map());
54
+ _define_property(this, "restoredByQueryKey", /* @__PURE__ */new Map());
55
+ _define_property(this, "restoredAt", /* @__PURE__ */new Map());
49
56
  _define_property(this, "db", void 0);
50
57
  _define_property(this, "normalizedCache", void 0);
51
58
  _define_property(this, "options", void 0);
52
- _define_property(this, "subscriptions", void 0);
53
- _define_property(this, "virtualPageManager", void 0);
54
- _define_property(this, "backfillManager", void 0);
55
- _define_property(this, "queryKeyToSubId", void 0);
56
- _define_property(this, "subRefCounts", void 0);
57
59
  this.db = db;
58
60
  this.normalizedCache = normalizedCache;
59
61
  this.options = options;
60
- this.subscriptions = /* @__PURE__ */new Map();
61
- this.queryKeyToSubId = /* @__PURE__ */new Map();
62
- this.subRefCounts = /* @__PURE__ */new Map();
63
62
  this.virtualPageManager = new VirtualPageManager(this.normalizedCache, this.db, {
64
63
  batchSize: this.options.batchSize
65
64
  });
66
65
  this.backfillManager = new BackfillManager(this.db, this.normalizedCache, {
67
- pageSize: this.options.pageSize
66
+ pageSize: this.options.pageSize,
67
+ maxPages: this.options.backfillMaxPages
68
68
  });
69
69
  }
70
70
  _create_class(SubscriptionManager2, [{
71
71
  key: "subscribe",
72
72
  value: async function subscribe(query) {
73
- var _query_fields;
74
73
  var queryKey = JSON.stringify(query);
75
74
  var existingId = this.queryKeyToSubId.get(queryKey);
76
75
  if (existingId && this.subscriptions.has(existingId)) {
@@ -83,19 +82,73 @@ var SubscriptionManager = /* @__PURE__ */function () {
83
82
  checkpoint
84
83
  };
85
84
  }
85
+ var adopted = this.adoptRestoredSubscription(queryKey, query);
86
+ if (adopted) return adopted;
86
87
  var subscriptionId = cryptoRandomId();
88
+ var {
89
+ rows: rows1,
90
+ cursor,
91
+ checkpoint: checkpoint1
92
+ } = await this.fetchInitialRows(query);
93
+ var subscription = {
94
+ id: subscriptionId,
95
+ query,
96
+ checkpoint: checkpoint1,
97
+ // For CDC backfill
98
+ cursor,
99
+ // For stable pagination
100
+ docIds: rows1.map(function (row) {
101
+ return row.name;
102
+ }),
103
+ tombstones: /* @__PURE__ */new Map()
104
+ };
105
+ if (rows1.length > 0) {
106
+ subscription.boundaries = {
107
+ firstItem: rows1[0],
108
+ lastItem: rows1[rows1.length - 1],
109
+ offset: query.limitStart || 0,
110
+ pageSize: query.limit || 20
111
+ };
112
+ }
113
+ subscription.metadata = {
114
+ itemsBeforePage: 0,
115
+ itemsAfterPage: 0
116
+ };
117
+ this.subscriptions.set(subscriptionId, subscription);
118
+ this.queryKeyToSubId.set(queryKey, subscriptionId);
119
+ this.subRefCounts.set(subscriptionId, 1);
120
+ if (query.progressive) {
121
+ this.virtualPageManager.registerSubscription(subscriptionId, subscription, subscription.docIds, cursor);
122
+ }
123
+ return {
124
+ subscriptionId,
125
+ rows: rows1,
126
+ checkpoint: checkpoint1
127
+ };
128
+ }
129
+ }, {
130
+ key: "fetchInitialRows",
131
+ value: (
132
+ /**
133
+ * Performs the initial subscription fetch (single doc via getDoc, lists via
134
+ * getDocList), seeds the normalized cache, and computes the CDC checkpoint
135
+ * as the max `modified` across returned rows. Shared by fresh subscribes
136
+ * and adopted-subscription refreshes so both have identical semantics.
137
+ */
138
+ async function fetchInitialRows(query) {
139
+ var _query_fields;
87
140
  var queryFields = ((_query_fields = query.fields) === null || _query_fields === void 0 ? void 0 : _query_fields.length) ? Array.from(/* @__PURE__ */new Set([...query.fields, "modified", "name"])) : void 0;
88
- var rows1 = [];
141
+ var rows = [];
89
142
  var cursor;
90
143
  var singleName = extractSingleName(query.filters);
91
144
  if (singleName) {
92
145
  try {
93
146
  var document = await this.db.getDoc(query.doctype, singleName);
94
- rows1 = document ? [document] : [];
147
+ rows = document ? [document] : [];
95
148
  } catch (error) {
96
149
  var errorWithStatus = error;
97
150
  if ((errorWithStatus === null || errorWithStatus === void 0 ? void 0 : errorWithStatus.status) === 404) {
98
- rows1 = [];
151
+ rows = [];
99
152
  } else {
100
153
  throw error;
101
154
  }
@@ -109,17 +162,17 @@ var SubscriptionManager = /* @__PURE__ */function () {
109
162
  if (this.options.useCursorPagination) listOptions.cursor = void 0;
110
163
  var response = await this.db.getDocList(query.doctype, listOptions);
111
164
  if ((typeof response === "undefined" ? "undefined" : _type_of(response)) === "object" && response !== null && "data" in response) {
112
- rows1 = response.data;
165
+ rows = response.data;
113
166
  cursor = response.cursor;
114
167
  } else {
115
- rows1 = response;
168
+ rows = response;
116
169
  }
117
170
  }
118
171
  var _iteratorNormalCompletion = true,
119
172
  _didIteratorError = false,
120
173
  _iteratorError = void 0;
121
174
  try {
122
- for (var _iterator = rows1[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
175
+ for (var _iterator = rows[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
123
176
  var row = _step.value;
124
177
  if (!row.doctype) row.doctype = query.doctype;
125
178
  this.normalizedCache.upsert(row);
@@ -138,15 +191,15 @@ var SubscriptionManager = /* @__PURE__ */function () {
138
191
  }
139
192
  }
140
193
  }
141
- var checkpoint1 = void 0;
194
+ var checkpoint = void 0;
142
195
  var _iteratorNormalCompletion1 = true,
143
196
  _didIteratorError1 = false,
144
197
  _iteratorError1 = void 0;
145
198
  try {
146
- for (var _iterator1 = rows1[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
199
+ for (var _iterator1 = rows[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
147
200
  var row1 = _step1.value;
148
201
  if (!row1.modified) continue;
149
- if (!checkpoint1 || row1.modified > checkpoint1) checkpoint1 = row1.modified;
202
+ if (!checkpoint || row1.modified > checkpoint) checkpoint = row1.modified;
150
203
  }
151
204
  } catch (err) {
152
205
  _didIteratorError1 = true;
@@ -162,47 +215,203 @@ var SubscriptionManager = /* @__PURE__ */function () {
162
215
  }
163
216
  }
164
217
  }
165
- var subscription = {
166
- id: subscriptionId,
167
- query,
168
- checkpoint: checkpoint1,
169
- // For CDC backfill
218
+ return {
219
+ rows,
170
220
  cursor,
171
- // For stable pagination
172
- docIds: rows1.map(function (row2) {
173
- return row2.name;
174
- }),
175
- tombstones: /* @__PURE__ */new Map()
221
+ checkpoint
176
222
  };
177
- if (rows1.length > 0) {
178
- subscription.boundaries = {
179
- firstItem: rows1[0],
180
- lastItem: rows1[rows1.length - 1],
181
- offset: query.limitStart || 0,
182
- pageSize: query.limit || 20
223
+ })
224
+ }, {
225
+ key: "adoptRestoredSubscription",
226
+ value: (
227
+ /**
228
+ * Re-adopts a subscription restored from a persisted snapshot when an
229
+ * identical query subscribes: the cached membership renders immediately and
230
+ * a background refresh re-seeds from the network. Progressive queries are
231
+ * excluded — their VirtualPageManager state is not persisted, so they take
232
+ * the fresh-subscribe path.
233
+ */
234
+ function adoptRestoredSubscription(queryKey, query) {
235
+ if (query.progressive) return void 0;
236
+ var restoredId = this.restoredByQueryKey.get(queryKey);
237
+ if (!restoredId) return void 0;
238
+ var subscription = this.subscriptions.get(restoredId);
239
+ this.restoredByQueryKey.delete(queryKey);
240
+ this.restoredAt.delete(restoredId);
241
+ if (!subscription) return void 0;
242
+ this.queryKeyToSubId.set(queryKey, restoredId);
243
+ this.subRefCounts.set(restoredId, 1);
244
+ var refresh = this.refreshAdoptedSubscription(subscription);
245
+ var rows = this.getDocsForSubscription(restoredId);
246
+ return {
247
+ subscriptionId: restoredId,
248
+ rows,
249
+ checkpoint: subscription.checkpoint,
250
+ refresh
251
+ };
252
+ })
253
+ }, {
254
+ key: "refreshAdoptedSubscription",
255
+ value: (
256
+ /**
257
+ * Network refresh for an adopted subscription with fresh-subscribe
258
+ * semantics: an authoritative page fetch replaces membership and recomputes
259
+ * the checkpoint (identical to what a brand-new subscribe would produce).
260
+ * On failure (offline) the cached membership and the restored CDC
261
+ * checkpoint are kept and the subscription is marked stale — the next
262
+ * backfill trigger drains changes from that checkpoint. Never rejects.
263
+ */
264
+ async function refreshAdoptedSubscription(subscription) {
265
+ try {
266
+ var {
267
+ rows,
268
+ cursor,
269
+ checkpoint
270
+ } = await this.fetchInitialRows(subscription.query);
271
+ subscription.checkpoint = checkpoint;
272
+ subscription.cursor = cursor;
273
+ subscription.docIds = rows.map(function (row) {
274
+ return row.name;
275
+ });
276
+ if (rows.length > 0) {
277
+ subscription.boundaries = {
278
+ firstItem: rows[0],
279
+ lastItem: rows[rows.length - 1],
280
+ offset: subscription.query.limitStart || 0,
281
+ pageSize: subscription.query.limit || 20
282
+ };
283
+ }
284
+ subscription.metadata = {
285
+ itemsBeforePage: 0,
286
+ itemsAfterPage: 0
287
+ };
288
+ subscription.stale = false;
289
+ return {
290
+ ok: true
291
+ };
292
+ } catch (error) {
293
+ subscription.stale = true;
294
+ return {
295
+ ok: false,
296
+ error
183
297
  };
184
298
  }
185
- subscription.metadata = {
186
- itemsBeforePage: 0,
187
- itemsAfterPage: 0
188
- };
189
- this.subscriptions.set(subscriptionId, subscription);
190
- this.queryKeyToSubId.set(queryKey, subscriptionId);
191
- this.subRefCounts.set(subscriptionId, 1);
192
- if (query.progressive) {
193
- this.virtualPageManager.registerSubscription(subscriptionId, subscription, subscription.docIds, cursor);
299
+ })
300
+ }, {
301
+ /**
302
+ * Registers a subscription restored from a persisted snapshot. Restored
303
+ * subscriptions are dormant: they hold the persisted query, CDC checkpoint,
304
+ * and membership for cache-first re-adoption, but are skipped by backfill
305
+ * fan-out until adopted. Duplicate snapshot entries for the same query
306
+ * (accumulated by pre-GC versions) collapse last-wins.
307
+ */
308
+ key: "restoreSubscription",
309
+ value: function restoreSubscription(snapshotSub) {
310
+ var _snapshotSub_query;
311
+ if (!(snapshotSub === null || snapshotSub === void 0 ? void 0 : snapshotSub.id) || !((_snapshotSub_query = snapshotSub.query) === null || _snapshotSub_query === void 0 ? void 0 : _snapshotSub_query.doctype)) return;
312
+ if (this.subscriptions.has(snapshotSub.id)) return;
313
+ var queryKey = JSON.stringify(snapshotSub.query);
314
+ var activeId = this.queryKeyToSubId.get(queryKey);
315
+ if (activeId && this.subscriptions.has(activeId)) return;
316
+ var previousId = this.restoredByQueryKey.get(queryKey);
317
+ if (previousId) {
318
+ this.subscriptions.delete(previousId);
319
+ this.restoredAt.delete(previousId);
194
320
  }
195
- return {
196
- subscriptionId,
197
- rows: rows1,
198
- checkpoint: checkpoint1
321
+ var subscription = {
322
+ id: snapshotSub.id,
323
+ query: snapshotSub.query,
324
+ checkpoint: snapshotSub.checkpoint,
325
+ cursor: snapshotSub.cursor,
326
+ docIds: Array.isArray(snapshotSub.docIds) ? snapshotSub.docIds : [],
327
+ tombstones: /* @__PURE__ */new Map(),
328
+ metadata: {
329
+ itemsBeforePage: 0,
330
+ itemsAfterPage: 0
331
+ }
199
332
  };
333
+ this.subscriptions.set(subscription.id, subscription);
334
+ this.restoredByQueryKey.set(queryKey, subscription.id);
335
+ this.restoredAt.set(subscription.id, Date.now());
336
+ }
337
+ }, {
338
+ /** True when the subscription came from a snapshot and is not yet adopted. */
339
+ key: "isRestoredSubscription",
340
+ value: function isRestoredSubscription(subscriptionId) {
341
+ return this.restoredAt.has(subscriptionId);
342
+ }
343
+ }, {
344
+ /**
345
+ * Drops restored subscriptions that no query re-adopted within
346
+ * `restoredSubscriptionTTL` (default 30 minutes). Called before every
347
+ * persistence snapshot so expired entries also leave the snapshot.
348
+ */
349
+ key: "gcRestoredSubscriptions",
350
+ value: function gcRestoredSubscriptions() {
351
+ var now = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Date.now();
352
+ var _this_options_restoredSubscriptionTTL;
353
+ var ttl = (_this_options_restoredSubscriptionTTL = this.options.restoredSubscriptionTTL) !== null && _this_options_restoredSubscriptionTTL !== void 0 ? _this_options_restoredSubscriptionTTL : 30 * 60 * 1e3;
354
+ var _iteratorNormalCompletion = true,
355
+ _didIteratorError = false,
356
+ _iteratorError = void 0;
357
+ try {
358
+ for (var _iterator = this.restoredAt[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
359
+ var [subscriptionId, restoredAtMs] = _step.value;
360
+ if (now - restoredAtMs <= ttl) continue;
361
+ this.restoredAt.delete(subscriptionId);
362
+ this.subscriptions.delete(subscriptionId);
363
+ var _iteratorNormalCompletion1 = true,
364
+ _didIteratorError1 = false,
365
+ _iteratorError1 = void 0;
366
+ try {
367
+ for (var _iterator1 = this.restoredByQueryKey[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
368
+ var [key, id] = _step1.value;
369
+ if (id === subscriptionId) {
370
+ this.restoredByQueryKey.delete(key);
371
+ break;
372
+ }
373
+ }
374
+ } catch (err) {
375
+ _didIteratorError1 = true;
376
+ _iteratorError1 = err;
377
+ } finally {
378
+ try {
379
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
380
+ _iterator1.return();
381
+ }
382
+ } finally {
383
+ if (_didIteratorError1) {
384
+ throw _iteratorError1;
385
+ }
386
+ }
387
+ }
388
+ }
389
+ } catch (err) {
390
+ _didIteratorError = true;
391
+ _iteratorError = err;
392
+ } finally {
393
+ try {
394
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
395
+ _iterator.return();
396
+ }
397
+ } finally {
398
+ if (_didIteratorError) {
399
+ throw _iteratorError;
400
+ }
401
+ }
402
+ }
200
403
  }
201
404
  }, {
202
405
  /**
203
406
  * Removes a subscription by id. Cached docs remain until evicted by
204
407
  * realtime/backfill or explicit resets. This keeps other subs fast if they
205
408
  * share the same doctypes.
409
+ *
410
+ * With persistence enabled (`persistKey`), the released subscription is
411
+ * detached into the restored pool instead of deleted: its query,
412
+ * checkpoint, and membership stay in the snapshot so a remount (or a
413
+ * cold offline reload) can re-adopt it cache-first. Detached subscriptions
414
+ * are excluded from backfill and GC'd after `restoredSubscriptionTTL`.
206
415
  */
207
416
  key: "unsubscribe",
208
417
  value: function unsubscribe(subscriptionId) {
@@ -212,6 +421,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
212
421
  return;
213
422
  }
214
423
  this.subRefCounts.delete(subscriptionId);
424
+ var queryKey;
215
425
  var _iteratorNormalCompletion = true,
216
426
  _didIteratorError = false,
217
427
  _iteratorError = void 0;
@@ -219,6 +429,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
219
429
  for (var _iterator = this.queryKeyToSubId[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
220
430
  var [key, id] = _step.value;
221
431
  if (id === subscriptionId) {
432
+ queryKey = key;
222
433
  this.queryKeyToSubId.delete(key);
223
434
  break;
224
435
  }
@@ -237,6 +448,12 @@ var SubscriptionManager = /* @__PURE__ */function () {
237
448
  }
238
449
  }
239
450
  }
451
+ var subscription = this.subscriptions.get(subscriptionId);
452
+ if (this.options.persistKey && subscription && queryKey && !subscription.query.progressive && !this.restoredByQueryKey.has(queryKey)) {
453
+ this.restoredByQueryKey.set(queryKey, subscriptionId);
454
+ this.restoredAt.set(subscriptionId, Date.now());
455
+ return;
456
+ }
240
457
  this.subscriptions.delete(subscriptionId);
241
458
  }
242
459
  }, {
@@ -363,6 +580,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
363
580
  try {
364
581
  for (var _iterator = this.subscriptions.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
365
582
  var subscription = _step.value;
583
+ if (this.restoredAt.has(subscription.id)) continue;
366
584
  await this.backfillSub(subscription, args.pageSize);
367
585
  }
368
586
  } catch (err) {
@@ -415,6 +633,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
415
633
  try {
416
634
  for (var _iterator2 = this.subscriptions.values()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
417
635
  var subscription2 = _step2.value;
636
+ if (this.restoredAt.has(subscription2.id)) continue;
418
637
  if (set.has(subscription2.query.doctype)) await this.backfillSub(subscription2, args.pageSize);
419
638
  }
420
639
  } catch (err) {
@@ -466,7 +685,9 @@ var SubscriptionManager = /* @__PURE__ */function () {
466
685
  * Backfills one subscription using CDC checkpoint and updates membership.
467
686
  *
468
687
  * Algorithm
469
- * - Query backfill using checkpoint for CDC (Change Data Capture)
688
+ * - Query backfill using checkpoint for CDC (Change Data Capture),
689
+ * draining follow-up pages while the server reports has_more (bounded)
690
+ * so reconnect catch-up is complete rather than one page deep
470
691
  * - Upsert each row to cache
471
692
  * - For each row: test client-side filters; add/remove membership accordingly
472
693
  * - Track tombstones for deleted documents
@@ -475,48 +696,61 @@ var SubscriptionManager = /* @__PURE__ */function () {
475
696
  */
476
697
  async function backfillSub(subscription) {
477
698
  var pageSize = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : (_this_options_pageSize = this.options.pageSize) !== null && _this_options_pageSize !== void 0 ? _this_options_pageSize : 200;
478
- var response = await this.db.backfill({
479
- doctype: subscription.query.doctype,
480
- fields: subscription.query.fields,
481
- filters: subscription.query.filters,
482
- modifiedAfter: subscription.checkpoint,
483
- // CDC checkpoint
484
- limit: pageSize
485
- });
486
- if (response.deleted && Array.isArray(response.deleted)) {
487
- var _iteratorNormalCompletion = true,
488
- _didIteratorError = false,
489
- _iteratorError = void 0;
699
+ var _this_options_backfillMaxPages;
700
+ var maxPages = (_this_options_backfillMaxPages = this.options.backfillMaxPages) !== null && _this_options_backfillMaxPages !== void 0 ? _this_options_backfillMaxPages : 20;
701
+ var rows = [];
702
+ var deleted = [];
703
+ for (var page = 0; page < maxPages; page++) {
704
+ var _ref;
705
+ var _response_deleted;
706
+ var response = await this.db.backfill({
707
+ doctype: subscription.query.doctype,
708
+ fields: subscription.query.fields,
709
+ filters: subscription.query.filters,
710
+ modifiedAfter: subscription.checkpoint,
711
+ // CDC checkpoint
712
+ limit: pageSize
713
+ });
714
+ if (Array.isArray(response.deleted)) {
715
+ deleted.push(...response.deleted);
716
+ }
717
+ rows.push(...response.rows);
718
+ if (response.checkpoint) subscription.checkpoint = response.checkpoint;
719
+ var madeProgress = response.rows.length > 0 || ((_ref = (_response_deleted = response.deleted) === null || _response_deleted === void 0 ? void 0 : _response_deleted.length) !== null && _ref !== void 0 ? _ref : 0) > 0;
720
+ if (!response.has_more || !response.checkpoint || !madeProgress) break;
721
+ }
722
+ var _iteratorNormalCompletion = true,
723
+ _didIteratorError = false,
724
+ _iteratorError = void 0;
725
+ try {
726
+ var _this,
727
+ _loop = function () {
728
+ var deletedRef = _step.value;
729
+ if (!(deletedRef === null || deletedRef === void 0 ? void 0 : deletedRef.name)) return "continue";
730
+ var deletedDoctype = deletedRef.doctype || subscription.query.doctype;
731
+ if (deletedDoctype === subscription.query.doctype && subscription.tombstones) {
732
+ subscription.tombstones.set(deletedRef.name, Date.now());
733
+ }
734
+ _this.normalizedCache.remove({
735
+ doctype: deletedDoctype,
736
+ name: deletedRef.name
737
+ });
738
+ if (deletedDoctype === subscription.query.doctype) subscription.docIds = subscription.docIds.filter(function (currentName) {
739
+ return currentName !== deletedRef.name;
740
+ });
741
+ };
742
+ for (var _iterator = deleted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _this = this, _loop();
743
+ } catch (err) {
744
+ _didIteratorError = true;
745
+ _iteratorError = err;
746
+ } finally {
490
747
  try {
491
- var _this,
492
- _loop = function () {
493
- var deleted = _step.value;
494
- if (!(deleted === null || deleted === void 0 ? void 0 : deleted.name)) return "continue";
495
- var deletedDoctype = deleted.doctype || subscription.query.doctype;
496
- if (deletedDoctype === subscription.query.doctype && subscription.tombstones) {
497
- subscription.tombstones.set(deleted.name, Date.now());
498
- }
499
- _this.normalizedCache.remove({
500
- doctype: deletedDoctype,
501
- name: deleted.name
502
- });
503
- if (deletedDoctype === subscription.query.doctype) subscription.docIds = subscription.docIds.filter(function (currentName) {
504
- return currentName !== deleted.name;
505
- });
506
- };
507
- for (var _iterator = response.deleted[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _this = this, _loop();
508
- } catch (err) {
509
- _didIteratorError = true;
510
- _iteratorError = err;
748
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
749
+ _iterator.return();
750
+ }
511
751
  } finally {
512
- try {
513
- if (!_iteratorNormalCompletion && _iterator.return != null) {
514
- _iterator.return();
515
- }
516
- } finally {
517
- if (_didIteratorError) {
518
- throw _iteratorError;
519
- }
752
+ if (_didIteratorError) {
753
+ throw _iteratorError;
520
754
  }
521
755
  }
522
756
  }
@@ -537,7 +771,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
537
771
  return currentName !== name;
538
772
  });
539
773
  };
540
- for (var _iterator1 = response.rows[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _this1 = this, _loop1();
774
+ for (var _iterator1 = rows[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _this1 = this, _loop1();
541
775
  } catch (err) {
542
776
  _didIteratorError1 = true;
543
777
  _iteratorError1 = err;
@@ -552,8 +786,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
552
786
  }
553
787
  }
554
788
  }
555
- if (response.checkpoint) subscription.checkpoint = response.checkpoint;
556
- if (response.rows.length && !subscription.query.filters) subscription.docIds = response.rows.map(function (row) {
789
+ if (rows.length && !subscription.query.filters) subscription.docIds = rows.map(function (row) {
557
790
  return row.name;
558
791
  });
559
792
  if (subscription.docIds.length > 0) {
@@ -577,9 +810,10 @@ var SubscriptionManager = /* @__PURE__ */function () {
577
810
  }
578
811
  this.resortSubscriptionDocIds(subscription);
579
812
  this.cleanupTombstones(subscription.id);
813
+ subscription.stale = false;
580
814
  if (this.options.onBackfill) this.options.onBackfill({
581
815
  doctype: subscription.query.doctype,
582
- fetched: response.rows.length,
816
+ fetched: rows.length,
583
817
  checkpoint: subscription.checkpoint
584
818
  });
585
819
  })
@@ -648,6 +882,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
648
882
  try {
649
883
  for (var _iterator = this.subscriptions.values()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
650
884
  var subscription = _step.value;
885
+ if (this.restoredAt.has(subscription.id)) continue;
651
886
  if (subscription.query.doctype !== doc.doctype) continue;
652
887
  var match = matchesFilters(doc, subscription.query.filters);
653
888
  var isExisting = subscription.docIds.includes(doc.name);
@@ -818,6 +1053,8 @@ var SubscriptionManager = /* @__PURE__ */function () {
818
1053
  this.subscriptions.clear();
819
1054
  this.queryKeyToSubId.clear();
820
1055
  this.subRefCounts.clear();
1056
+ this.restoredByQueryKey.clear();
1057
+ this.restoredAt.clear();
821
1058
  }
822
1059
  }, {
823
1060
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["BackfillManager","extractSingleName","matchesFilters","BackfillScope","Order","VirtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager","SubscriptionManager2","db","normalizedCache","options","arguments","subscriptions","Map","queryKeyToSubId","subRefCounts","virtualPageManager","batchSize","backfillManager","pageSize","subscribe","query","_query_fields","queryKey","JSON","stringify","existingId","get","has","set","rows","getDocsForSubscription","checkpoint","subscriptionId","cryptoRandomId","queryFields","fields","Array","from","Set","rows1","cursor","singleName","filters","document","getDoc","doctype","error","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","row","upsert","err","return","checkpoint1","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","row1","modified","subscription","id","docIds","map","row2","name","tombstones","boundaries","firstItem","lastItem","offset","limitStart","limit","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","unsubscribe","refCount","delete","getSubscription","virtualSub","getProgressiveCache","filter","id2","out","push","out1","name1","document1","getPage","page","getNextBatch","cursorDocId","getPageInfo","backfill","args","scope","All","values","backfillSub","Subscriptions","subscription1","Doctypes","doctypes","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","subscription2","Docs","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","docs","_step3","docTarget"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BackfillManager","extractSingleName","matchesFilters","BackfillScope","Order","VirtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager","SubscriptionManager2","db","normalizedCache","options","arguments","Map","virtualPageManager","batchSize","backfillManager","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","queryKeyToSubId","get","subscriptions","has","subRefCounts","set","rows","getDocsForSubscription","checkpoint","subscriptionId","adopted","adoptRestoredSubscription","cryptoRandomId","rows1","cursor","checkpoint1","fetchInitialRows","subscription","id","docIds","map","row","name","tombstones","boundaries","firstItem","lastItem","offset","limitStart","limit","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","_query_fields","queryFields","fields","Array","from","Set","singleName","filters","document","getDoc","doctype","error","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","upsert","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","row1","modified","restoredId","restoredByQueryKey","delete","restoredAt","refresh","refreshAdoptedSubscription","stale","ok","restoreSubscription","snapshotSub","_snapshotSub_query","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","_this_options_restoredSubscriptionTTL","ttl","restoredSubscriptionTTL","restoredAtMs","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","filter","id2","out","push","out1","name1","document1","getPage","page","getNextBatch","cursorDocId","getPageInfo","backfill","args","scope","All","values","backfillSub","Subscriptions","subscription1"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}