@multiplatform.one/frappe 7.8.0 → 7.10.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 (41) hide show
  1. package/README.md +31 -1
  2. package/dist/cjs/index.native.js.map +1 -1
  3. package/dist/cjs/sync/index.cjs +7 -0
  4. package/dist/cjs/sync/index.native.js +9 -0
  5. package/dist/cjs/sync/index.native.js.map +1 -1
  6. package/dist/cjs/sync/subscriptionManager.cjs +94 -50
  7. package/dist/cjs/sync/subscriptionManager.native.js +133 -73
  8. package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
  9. package/dist/esm/index.mjs.map +1 -1
  10. package/dist/esm/index.native.js.map +1 -1
  11. package/dist/esm/sync/index.mjs +7 -0
  12. package/dist/esm/sync/index.mjs.map +1 -1
  13. package/dist/esm/sync/index.native.js +9 -0
  14. package/dist/esm/sync/index.native.js.map +1 -1
  15. package/dist/esm/sync/subscriptionManager.mjs +94 -50
  16. package/dist/esm/sync/subscriptionManager.mjs.map +1 -1
  17. package/dist/esm/sync/subscriptionManager.native.js +133 -73
  18. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  19. package/dist/jsx/index.js.map +1 -1
  20. package/dist/jsx/index.mjs.map +1 -1
  21. package/dist/jsx/index.native.js.map +1 -1
  22. package/dist/jsx/sync/index.mjs +7 -0
  23. package/dist/jsx/sync/index.mjs.map +1 -1
  24. package/dist/jsx/sync/index.native.js +9 -0
  25. package/dist/jsx/sync/index.native.js.map +1 -1
  26. package/dist/jsx/sync/subscriptionManager.mjs +94 -50
  27. package/dist/jsx/sync/subscriptionManager.mjs.map +1 -1
  28. package/dist/jsx/sync/subscriptionManager.native.js +133 -73
  29. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  30. package/package.json +6 -6
  31. package/src/index.ts +5 -1
  32. package/src/sync/index.ts +12 -0
  33. package/src/sync/refreshSubscriptions.lifecycle.spec.ts +268 -0
  34. package/src/sync/refreshSubscriptions.spec.ts +295 -0
  35. package/src/sync/subscriptionManager.ts +107 -44
  36. package/types/index.d.ts +1 -1
  37. package/types/index.d.ts.map +1 -1
  38. package/types/sync/index.d.ts +4 -0
  39. package/types/sync/index.d.ts.map +1 -1
  40. package/types/sync/subscriptionManager.d.ts +13 -10
  41. package/types/sync/subscriptionManager.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["BackfillManager","extractSingleName","matchesFilters","BackfillScope","defaultPageLength","Order","VirtualPageManager","SubscriptionManager","subscriptions","Map","virtualPageManager","backfillManager","queryKeyToSubId","subRefCounts","restoredByQueryKey","restoredAt","db","normalizedCache","options","constructor","batchSize","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","get","has","set","rows","getDocsForSubscription","checkpoint","subscriptionId","rows2","checkpoint2","adopted","adoptRestoredSubscription","cryptoRandomId","cursor","fetchInitialRows","subscription","id","docIds","map","row","name","tombstones","length","boundaries","firstItem","lastItem","offset","limitStart","limit","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","queryFields","fields","Array","from","Set","singleName","filters","document","getDoc","doctype","error","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","upsert","modified","restoredId","delete","refresh","refreshAdoptedSubscription","stale","ok","restoreSubscription","snapshotSub","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","ttl","restoredSubscriptionTTL","restoredAtMs","key","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","filter","id2","out","push","getPage","page","getNextBatch","cursorDocId","getPageInfo","backfill","args","scope","All","values","backfillSub","Subscriptions","Doctypes","doctypes","Docs","docTarget","docs","deleted","modifiedAfter","madeProgress","has_more","deletedRef","deletedDoctype","remove","currentName","match","includes","firstDoc","lastDoc","resortSubscriptionDocIds","cleanupTombstones","onBackfill","fetched","orderByArray","sort","firstId","secondId","secondDoc","orderByField","field","ascending","order","Desc","firstValue","secondValue","firstIsNullish","secondIsNullish","updateSubscriptionMembership","doc","subscriptionsNeedingRehydration","isExisting","handleRemoteCreate","docId","handleRemoteDelete","handleRemoteUpdate","removeFromAllSubscriptions","affectedSubscriptions","hadDocument","getAllSubscriptions","getVirtualPageManager","insertDocumentIntoSubscription","insertIndex","findInsertionIndex","splice","left","right","mid","Math","floor","midDoc","comparison","compareDocuments","doc1","doc2","value1","value2","isAsc","isNull1","isNull2","name1","name2","clear","maxAge","tombstoneMaxAge","maxCount","tombstoneMaxCount","subscriptionsToClean","Boolean","size","timestamp","entries","a","b","toRemove","slice","crypto","randomUUID","random","toString"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["BackfillManager","extractSingleName","matchesFilters","BackfillScope","defaultPageLength","Order","VirtualPageManager","SubscriptionManager","refreshes","Map","subscriptions","virtualPageManager","backfillManager","queryKeyToSubId","subRefCounts","restoredByQueryKey","restoredAt","db","normalizedCache","options","constructor","batchSize","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","get","has","set","rows","getDocsForSubscription","checkpoint","subscriptionId","rows2","checkpoint2","adopted","adoptRestoredSubscription","cryptoRandomId","cursor","fetchInitialRows","seedRows","subscription","id","docIds","map","row","name","tombstones","length","boundaries","firstItem","lastItem","offset","limitStart","limit","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","refreshSubscriptions","values","filter","doctypes","includes","doctype","Promise","all","refreshSubscription","resolve","ok","error","Error","existing","requested","promise","state","active","then","stale","delete","queryFields","fields","Array","from","Set","singleName","filters","document","getDoc","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","modified","upsert","restoredId","refresh","restoreSubscription","snapshotSub","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","ttl","restoredSubscriptionTTL","restoredAtMs","key","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","id2","out","push","getPage","page","getNextBatch","cursorDocId","getPageInfo","backfill","args","scope","All","backfillSub","Subscriptions","Doctypes","Docs","docTarget","docs","deleted","modifiedAfter","madeProgress","has_more","deletedRef","deletedDoctype","remove","currentName","match","firstDoc","lastDoc","resortSubscriptionDocIds","cleanupTombstones","onBackfill","fetched","orderByArray","sort","firstId","secondId","secondDoc","orderByField","field","ascending","order","Desc","firstValue","secondValue","firstIsNullish","secondIsNullish","updateSubscriptionMembership","doc","subscriptionsNeedingRehydration","isExisting","handleRemoteCreate","docId","handleRemoteDelete","handleRemoteUpdate","removeFromAllSubscriptions","affectedSubscriptions","hadDocument","getAllSubscriptions","getVirtualPageManager","insertDocumentIntoSubscription","insertIndex","findInsertionIndex","splice","left","right","mid","Math","floor","midDoc","comparison","compareDocuments","doc1","doc2","value1","value2","isAsc","isNull1","isNull2","name1","name2","clear","maxAge","tombstoneMaxAge","maxCount","tombstoneMaxCount","subscriptionsToClean","Boolean","size","timestamp","entries","a","b","toRemove","slice","crypto","randomUUID","random","toString"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -75,6 +75,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
75
75
  function SubscriptionManager2(db, normalizedCache) {
76
76
  var options = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
77
77
  _class_call_check(this, SubscriptionManager2);
78
+ _define_property(this, "refreshes", /* @__PURE__ */new Map());
78
79
  _define_property(this, "subscriptions", /* @__PURE__ */new Map());
79
80
  _define_property(this, "virtualPageManager", void 0);
80
81
  _define_property(this, "backfillManager", void 0);
@@ -119,6 +120,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
119
120
  cursor,
120
121
  checkpoint: checkpoint1
121
122
  } = await this.fetchInitialRows(query);
123
+ this.seedRows(query, rows1);
122
124
  var subscription = {
123
125
  id: subscriptionId,
124
126
  query,
@@ -132,11 +134,12 @@ var SubscriptionManager = /* @__PURE__ */function () {
132
134
  tombstones: /* @__PURE__ */new Map()
133
135
  };
134
136
  if (rows1.length > 0) {
137
+ var _query_limitStart, _query_limit;
135
138
  subscription.boundaries = {
136
139
  firstItem: rows1[0],
137
140
  lastItem: rows1[rows1.length - 1],
138
- offset: query.limitStart || 0,
139
- pageSize: query.limit || 20
141
+ offset: (_query_limitStart = query.limitStart) !== null && _query_limitStart !== void 0 ? _query_limitStart : 0,
142
+ pageSize: (_query_limit = query.limit) !== null && _query_limit !== void 0 ? _query_limit : import_types.defaultPageLength
140
143
  };
141
144
  }
142
145
  subscription.metadata = {
@@ -155,12 +158,110 @@ var SubscriptionManager = /* @__PURE__ */function () {
155
158
  checkpoint: checkpoint1
156
159
  };
157
160
  }
161
+ }, {
162
+ key: "refreshSubscriptions",
163
+ value: async function refreshSubscriptions() {
164
+ var _this = this;
165
+ var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
166
+ var subscriptions = [...this.subscriptions.values()].filter(function (subscription) {
167
+ var _this_subRefCounts_get;
168
+ return ((_this_subRefCounts_get = _this.subRefCounts.get(subscription.id)) !== null && _this_subRefCounts_get !== void 0 ? _this_subRefCounts_get : 0) > 0 && (!options.doctypes || options.doctypes.includes(subscription.query.doctype));
169
+ });
170
+ return Promise.all(subscriptions.map(function (subscription) {
171
+ return _this.refreshSubscription(subscription);
172
+ }));
173
+ }
174
+ }, {
175
+ key: "refreshSubscription",
176
+ value: function refreshSubscription(subscription) {
177
+ var _this = this;
178
+ var subscriptionId = subscription.id;
179
+ if (subscription.query.progressive) {
180
+ return Promise.resolve({
181
+ subscriptionId,
182
+ ok: false,
183
+ error: new Error("Snapshot refresh does not support progressive subscriptions")
184
+ });
185
+ }
186
+ var existing = this.refreshes.get(subscriptionId);
187
+ if (existing) {
188
+ existing.requested = true;
189
+ return existing.promise;
190
+ }
191
+ var state = {
192
+ requested: false,
193
+ promise: Promise.resolve({
194
+ subscriptionId,
195
+ ok: false
196
+ })
197
+ };
198
+ var active = function active2() {
199
+ var _this_subRefCounts_get;
200
+ return _this.refreshes.get(subscriptionId) === state && _this.subscriptions.get(subscriptionId) === subscription && ((_this_subRefCounts_get = _this.subRefCounts.get(subscriptionId)) !== null && _this_subRefCounts_get !== void 0 ? _this_subRefCounts_get : 0) > 0;
201
+ };
202
+ state.promise = Promise.resolve().then(async function () {
203
+ try {
204
+ while (true) {
205
+ state.requested = false;
206
+ try {
207
+ var _subscription_query_limitStart, _subscription_query_limit;
208
+ var {
209
+ rows,
210
+ cursor,
211
+ checkpoint
212
+ } = await _this.fetchInitialRows(subscription.query);
213
+ if (!active()) {
214
+ return {
215
+ subscriptionId,
216
+ ok: false,
217
+ error: new Error("Subscription is no longer active")
218
+ };
219
+ }
220
+ if (state.requested) continue;
221
+ _this.seedRows(subscription.query, rows);
222
+ subscription.docIds = rows.map(function (row) {
223
+ return row.name;
224
+ });
225
+ subscription.cursor = cursor;
226
+ subscription.checkpoint = checkpoint;
227
+ subscription.boundaries = rows.length ? {
228
+ firstItem: rows[0],
229
+ lastItem: rows[rows.length - 1],
230
+ offset: (_subscription_query_limitStart = subscription.query.limitStart) !== null && _subscription_query_limitStart !== void 0 ? _subscription_query_limitStart : 0,
231
+ pageSize: (_subscription_query_limit = subscription.query.limit) !== null && _subscription_query_limit !== void 0 ? _subscription_query_limit : import_types.defaultPageLength
232
+ } : void 0;
233
+ subscription.metadata = {
234
+ itemsBeforePage: 0,
235
+ itemsAfterPage: 0
236
+ };
237
+ subscription.stale = false;
238
+ return {
239
+ subscriptionId,
240
+ ok: true
241
+ };
242
+ } catch (error) {
243
+ if (active() && state.requested) continue;
244
+ if (active()) subscription.stale = true;
245
+ return {
246
+ subscriptionId,
247
+ ok: false,
248
+ error
249
+ };
250
+ }
251
+ }
252
+ } finally {
253
+ if (_this.refreshes.get(subscriptionId) === state) _this.refreshes.delete(subscriptionId);
254
+ }
255
+ });
256
+ this.refreshes.set(subscriptionId, state);
257
+ return state.promise;
258
+ }
158
259
  }, {
159
260
  key: "fetchInitialRows",
160
261
  value: (
161
262
  /**
162
263
  * Performs the initial subscription fetch (single doc via getDoc, lists via
163
- * getDocList), seeds the normalized cache, and computes the CDC checkpoint
264
+ * getDocList) and computes the CDC checkpoint
164
265
  * as the max `modified` across returned rows. Shared by fresh subscribes
165
266
  * and adopted-subscription refreshes so both have identical semantics.
166
267
  */
@@ -200,14 +301,15 @@ var SubscriptionManager = /* @__PURE__ */function () {
200
301
  rows = response;
201
302
  }
202
303
  }
304
+ var checkpoint = void 0;
203
305
  var _iteratorNormalCompletion = true,
204
306
  _didIteratorError = false,
205
307
  _iteratorError = void 0;
206
308
  try {
207
309
  for (var _iterator = rows[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
208
310
  var row = _step.value;
209
- if (!row.doctype) row.doctype = query.doctype;
210
- this.normalizedCache.upsert(row);
311
+ if (!row.modified) continue;
312
+ if (!checkpoint || row.modified > checkpoint) checkpoint = row.modified;
211
313
  }
212
314
  } catch (err) {
213
315
  _didIteratorError = true;
@@ -223,36 +325,39 @@ var SubscriptionManager = /* @__PURE__ */function () {
223
325
  }
224
326
  }
225
327
  }
226
- var checkpoint = void 0;
227
- var _iteratorNormalCompletion1 = true,
228
- _didIteratorError1 = false,
229
- _iteratorError1 = void 0;
328
+ return {
329
+ rows,
330
+ cursor,
331
+ checkpoint
332
+ };
333
+ })
334
+ }, {
335
+ key: "seedRows",
336
+ value: function seedRows(query, rows) {
337
+ var _iteratorNormalCompletion = true,
338
+ _didIteratorError = false,
339
+ _iteratorError = void 0;
230
340
  try {
231
- for (var _iterator1 = rows[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
232
- var row1 = _step1.value;
233
- if (!row1.modified) continue;
234
- if (!checkpoint || row1.modified > checkpoint) checkpoint = row1.modified;
341
+ for (var _iterator = rows[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
342
+ var row = _step.value;
343
+ if (!row.doctype) row.doctype = query.doctype;
344
+ this.normalizedCache.upsert(row);
235
345
  }
236
346
  } catch (err) {
237
- _didIteratorError1 = true;
238
- _iteratorError1 = err;
347
+ _didIteratorError = true;
348
+ _iteratorError = err;
239
349
  } finally {
240
350
  try {
241
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
242
- _iterator1.return();
351
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
352
+ _iterator.return();
243
353
  }
244
354
  } finally {
245
- if (_didIteratorError1) {
246
- throw _iteratorError1;
355
+ if (_didIteratorError) {
356
+ throw _iteratorError;
247
357
  }
248
358
  }
249
359
  }
250
- return {
251
- rows,
252
- cursor,
253
- checkpoint
254
- };
255
- })
360
+ }
256
361
  }, {
257
362
  key: "adoptRestoredSubscription",
258
363
  value: (
@@ -273,7 +378,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
273
378
  if (!subscription) return void 0;
274
379
  this.queryKeyToSubId.set(queryKey, restoredId);
275
380
  this.subRefCounts.set(restoredId, 1);
276
- var refresh = this.refreshAdoptedSubscription(subscription);
381
+ var refresh = this.refreshSubscription(subscription);
277
382
  var rows = this.getDocsForSubscription(restoredId);
278
383
  return {
279
384
  subscriptionId: restoredId,
@@ -282,53 +387,6 @@ var SubscriptionManager = /* @__PURE__ */function () {
282
387
  refresh
283
388
  };
284
389
  })
285
- }, {
286
- key: "refreshAdoptedSubscription",
287
- value: (
288
- /**
289
- * Network refresh for an adopted subscription with fresh-subscribe
290
- * semantics: an authoritative page fetch replaces membership and recomputes
291
- * the checkpoint (identical to what a brand-new subscribe would produce).
292
- * On failure (offline) the cached membership and the restored CDC
293
- * checkpoint are kept and the subscription is marked stale — the next
294
- * backfill trigger drains changes from that checkpoint. Never rejects.
295
- */
296
- async function refreshAdoptedSubscription(subscription) {
297
- try {
298
- var {
299
- rows,
300
- cursor,
301
- checkpoint
302
- } = await this.fetchInitialRows(subscription.query);
303
- subscription.checkpoint = checkpoint;
304
- subscription.cursor = cursor;
305
- subscription.docIds = rows.map(function (row) {
306
- return row.name;
307
- });
308
- if (rows.length > 0) {
309
- subscription.boundaries = {
310
- firstItem: rows[0],
311
- lastItem: rows[rows.length - 1],
312
- offset: subscription.query.limitStart || 0,
313
- pageSize: subscription.query.limit || 20
314
- };
315
- }
316
- subscription.metadata = {
317
- itemsBeforePage: 0,
318
- itemsAfterPage: 0
319
- };
320
- subscription.stale = false;
321
- return {
322
- ok: true
323
- };
324
- } catch (error) {
325
- subscription.stale = true;
326
- return {
327
- ok: false,
328
- error
329
- };
330
- }
331
- })
332
390
  }, {
333
391
  /**
334
392
  * Registers a subscription restored from a persisted snapshot. Restored
@@ -452,6 +510,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
452
510
  this.subRefCounts.set(subscriptionId, refCount);
453
511
  return;
454
512
  }
513
+ this.refreshes.delete(subscriptionId);
455
514
  this.subRefCounts.delete(subscriptionId);
456
515
  var queryKey;
457
516
  var _iteratorNormalCompletion = true,
@@ -1082,6 +1141,7 @@ var SubscriptionManager = /* @__PURE__ */function () {
1082
1141
  }, {
1083
1142
  key: "clear",
1084
1143
  value: function clear() {
1144
+ this.refreshes.clear();
1085
1145
  this.subscriptions.clear();
1086
1146
  this.queryKeyToSubId.clear();
1087
1147
  this.subRefCounts.clear();
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","subscriptionManager_exports","SubscriptionManager","module","exports","import_backfill","require","import_filters","import_types","import_virtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager2","db","normalizedCache","options","arguments","Map","virtualPageManager","VirtualPageManager","batchSize","backfillManager","BackfillManager","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","queryKeyToSubId","subscriptions","has","subRefCounts","set","rows","getDocsForSubscription","checkpoint","subscriptionId","adopted","adoptRestoredSubscription","cryptoRandomId","rows1","cursor","checkpoint1","fetchInitialRows","subscription","id","docIds","map","row","tombstones","boundaries","firstItem","lastItem","offset","limitStart","limit","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","_query_fields","queryFields","fields","Array","Set","singleName","extractSingleName","filters","document","getDoc","doctype","error","errorWithStatus","status","_query_limit","listOptions","orderBy","defaultPageLength","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","BackfillScope","All","values","backfillSub"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","subscriptionManager_exports","SubscriptionManager","module","exports","import_backfill","require","import_filters","import_types","import_virtualPageManager","_class_call_check","instance","Constructor","TypeError","_defineProperties","props","i","length","descriptor","configurable","writable","_create_class","protoProps","staticProps","_define_property","obj","_type_of","Symbol","constructor","_this_options_pageSize","SubscriptionManager2","db","normalizedCache","options","arguments","Map","virtualPageManager","VirtualPageManager","batchSize","backfillManager","BackfillManager","pageSize","maxPages","backfillMaxPages","subscribe","query","queryKey","JSON","stringify","existingId","queryKeyToSubId","subscriptions","has","subRefCounts","set","rows","getDocsForSubscription","checkpoint","subscriptionId","adopted","adoptRestoredSubscription","cryptoRandomId","rows1","cursor","checkpoint1","fetchInitialRows","seedRows","subscription","id","docIds","map","row","tombstones","_query_limitStart","_query_limit","boundaries","firstItem","lastItem","offset","limitStart","limit","defaultPageLength","metadata","itemsBeforePage","itemsAfterPage","progressive","registerSubscription","refreshSubscriptions","_this","values","filter","_this_subRefCounts_get","doctypes","includes","doctype","Promise","refreshSubscription","resolve","ok","error","Error","existing","refreshes","requested","promise","state","active","active2","then","_subscription_query_limitStart","_subscription_query_limit","stale","delete","_query_fields","queryFields","fields","Array","Set","singleName","extractSingleName","filters","document","getDoc","errorWithStatus","status","listOptions","orderBy","useCursorPagination","response","getDocList","data","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","modified","err","return","upsert","restoredId","restoredByQueryKey","restoredAt","refresh","restoreSubscription","snapshotSub","_snapshotSub_query","activeId","previousId","isArray","Date","now","isRestoredSubscription","gcRestoredSubscriptions","_this_options_restoredSubscriptionTTL","ttl","restoredSubscriptionTTL","restoredAtMs","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","unsubscribe","refCount","persistKey","getSubscription","virtualSub","getProgressiveCache","id2","out","push","out1","name1","document1","getPage","page","getNextBatch","cursorDocId","getPageInfo"],"sources":["../../../src/sync/subscriptionManager.ts"],"sourcesContent":[null],"mappings":"AAGA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAmB;AAE5B,IAAAC,gBAAS,GAAAF,MAAe,CAAAG,wBAAmB;AAQ3C,IAAAC,iBAAS,GAAAJ,MAAA,CAAAK,mBAA0B;AA4B5B,IAAAC,YAAM,GAAAN,MAAA,CAAoBO,SAAA,CAAAC,cAAA;AAAA,IACvBC,QAAA,GAAYA,CAAAC,MAAA,EAAAC,GAAA;EAOZ,SAAAC,IAAA,IAAgBD,GAAA,EAChBZ,SAAA,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAAA;AACA,IAAAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAEA,IAAAF,IAAA,WAAkBA,IAAA,iBAAI,OAAoBA,IAAA;IAAA,SAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GAE1C,KAAAX,YAAe,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,CAAI,IAAoBA,GAAA,KAAAF,MAAA,EAAAnB,SAAA,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAAA;EAAA,OAAAE,EAAA;AAAA;AAAA,IAAAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IAAAE,2BAAA;AAAAhB,QAOvC,CAAAgB,2BAAqB;EAAwBC,mBAAA,EAAAA,CAAA,KAAAA;AAAA,EAE7C;AAAqCC,MAC5B,CAAAC,OAAA,GAAAN,YAAA,CAAAG,2BAAA;AAAA,IACAI,eAAA,GAAAC,OAAA;AAAA,IACAC,cAAA,GAAAD,OAAA;AAAA,IAEjBE,YAAY,GAAcF,OAAA,oBAAkC;AAC1D,IAAAG,yBAAU,GAAAH,OAAA;AACV,SAAKI,kBAAkBC,QAAA,EAAAC,WAAA;EACvB,MAAAD,QAAK,YAAUC,WAAA;IACf,MAAK,IAAAC,SAAA,oCAAiD;EAA0B;AACtD;AAE1B,SAAKC,kBAAkB5B,MAAI,EAAA6B,KAAA;EAA+C,KACxE,IAAAC,CAAA,IAAU,EAAAA,CAAA,GAAKD,KAAA,CAAAE,MAAQ,EAAAD,CAAA;IAAA,IACvBE,UAAU,GAAKH,KAAA,CAAAC,CAAA,CAAQ;IACzBE,UAAC,CAAA5B,UAAA,GAAA4B,UAAA,CAAA5B,UAAA;IACH4B,UAAA,CAAAC,YAAA;IAEA,IAAM,WACJD,UACgC,EAAAA,UAAA,CAAAE,QAAA;IAEhC5C,MAAM,CAAAC,cAAW,CAAKS,MAAA,EAAAgC,UAAe,CAAAtB,GAAA,EAAAsB,UAAA;EACrC;AACA;AACE,SAAAG,aAAKA,CAAAT,WAAiB,EAAAU,UAAkB,EAAAC,WAAa;EACrD,IAAAD,UAAM,EAAAR,iBAAY,CAAAF,WAAA,CAA6B7B,SAAA,EAAUuC,UAAA;EACzD,IAAAC,WAAM,EAAAT,iBAAkB,CAAAF,WAAc,EAAIW,WAAa;EACvD,OAAAX,WAAS;AAA6C;AAMxD,SAAAY,gBAAqBA,CAAAC,GAAA,EAAA7B,GAAA,EAAAI,KAAA;EACrB,IAAAJ,GAAI,IAAA6B,GAAS;IAEbjD,MAAM,CAAAC,cAAA,CAAAgD,GAAiB,EAAA7B,GAAA;MACvBI,KAAM;MACNV,UAAK,EAAS;MAEd6B,YAAM;MACJC,QAAI;IAAA,EACJ;EAAA,OACA;IAAAK,GAAA,CAAA7B,GAAA,IAAAI,KAAA;EAAA;EACA,OAAAyB,GAAA;AAAA;AACkC,SAClCC,SAAYD,GAAA;EAAwB,uBACtC;;EAGA,OAAIA,GAAA,IAAK,OAASE,MAAG,oBAAAF,GAAA,CAAAG,WAAA,KAAAD,MAAA,qBAAAF,GAAA;AACnB;AAA0B,IAAAI,sBACP;AAAA,IAAA3B,mBACF,kBAAe;EAAA,YAC9B;;EAA4B,SAC5B4B,oBAAgBA,CAAAC,EAAS,EAAAC,eAAA;IAAA,IAC3BC,OAAA,GAAAC,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA;IACFxB,iBAAA,OAAAoB,oBAAA;IAGAN,gBAAa,kBAAW,qBAAAW,GAAA;IAAAX,gBACtB,KAAiB,sCAAAW,GAAA;IAAAX,gBACjB,KAAgB;IAClBA,gBAAA;IAGAA,gBAAK,KAAc,EAAI,iBAAgB,iBAAY,IAAAW,GAAA;IACnDX,gBAAK,KAAgB,gBAAc,iBAAc,IAAAW,GAAA;IACjDX,gBAAK,KAAa,EAAI,oBAAiB,qBAAAW,GAAA;IAGvCX,gBAAU,OAAa,iCAAAW,GAAA;IACrBX,gBAAK,WAAmB;IAAAA,gBACtB;IAAAA,gBACA;IAAA,IACA,CAAAO,EAAA,GAAAA,EAAA;IAAa,IACb,CAAAC,eAAA,GAAAA,eAAA;IAAA,IACF,CAAAC,OAAA,GAAAA,OAAA;IACF,KAAAG,kBAAA,OAAA3B,yBAAA,CAAA4B,kBAAA,MAAAL,eAAA,OAAAD,EAAA;MAGAO,SAAS,OAAAL,OAAgC,CAAAK;IAC3C;IAEA,IAAM,CAAAC,eAAA,OACJlC,eACsC,CAAAmC,eAAA,MAAAT,EAAA,OAAAC,eAAA;MACtCS,QAAM,OAAAR,OAAiB,CAAAQ,QAAQ;MAC7BC,QAAC,OAAAT,OACE,CAAAU;IAEL;EACA;EACFtB,aAAA,CAAAS,oBAAA,GAEQ;IACNlC,GAAA,EAAM;IACNI,KAAI,iBAAmB4C,UAAAC,KAAa;MAClC,IAAAC,QAAO,GAAQC,IAAA,CAAAC,SAAQ,CAAAH,KAAA;MACrB,IAAAI,UAAA,QAAAC,eAAA,CAAA7D,GAAA,CAAAyD,QAAA;MACA,IAAIG,UAAA,SAAAE,aAAA,CAAAC,GAAA,CAAAH,UAAA;QACJ,KAAOI,YAAU,CAAAC,GAAA,CAAAL,UAAA,QAAAI,YAAA,CAAAhE,GAAA,CAAA4D,UAAA,UAA6D;QAC/E,IAAAM,IAAA,QAAAC,sBAAA,CAAAP,UAAA;QACH,IAAAQ,UAAA,QAAAN,aAAA,CAAA9D,GAAA,CAAA4D,UAAA,EAAAQ,UAAA;QACM;UACFC,cAAU,EAAAT,UAAA;UACZM,IAAS;UACTE;QACF;MACA;MACE,IAAAE,OAAW,QAAAC,yBAAA,CAAAd,QAAA,EAAAD,KAAA;MACX,IAAAc,OAAS,SAAQA,OAAqC;MACxD,IAAAD,cAAA,GAAAG,cAAA;MACA,IAAM;QAAAN,IAAA,EAASO,KACb;QAAAC,MAAK;QAAAN,UAAc,EAAAO;MAAc,UAAM,IACvC,CAAAC,gBAAK,CAAApB,KAAkB;MAEzB,IAAM,CAAAqB,QAAU,CAAArB,KAAA,EAAQiB,KAAA;MACtB,IAAIK,YAAA;QACFC,EAAA,EAAAV,cAAa;QACXb,KAAA;QACAY,UAAI,EAAAO,WAAA;QACF;QACAD,MAAI;QACF;QAAOM,MACL,EAAAP,KAAA,CAAAQ,GAAA,WAAAC,GAAA;UAAA,OACAA,GAAI,CAAAnF,IAAA;QAAA;QAC+CoF,UACrD,qBAAArC,GAAA;MAAA;MAEF,IAAA2B,KAAI,CAAA7C,MAAM;QACV,IAAAwD,iBAAc,EAAAC,YAAa;QAC3BP,YAAA,CAAAQ,UAAa,GAAS;UACtBC,SAAA,EAAAd,KAAa;UACbe,QAAA,EAAAf,KAAa,CAAAA,KAAA,CAAA7C,MAAa;UAC1B6D,MAAA,GAAAL,iBAA0B,GAAA5B,KAAK,CAAAkC,UAC3B,cAAAN,iBAAA,cAAAA,iBAAA;UAAAhC,QACE,GAAAiC,YAAiB,GAAA7B,KAAA,CAAAmC,KAAA,cAAAN,YAAA,cAAAA,YAAA,GAAAlE,YAAA,CAAAyE;QAAA;MACa;MACWd,YACzC,CAAAe,QAAU;QAA4BC,eAExC;QACJC,cAAA,EAAa;MACb;MACA,KAAAjC,aAAS,CAAAG,GAAA,CAAAI,cAAoB,EAAKS,YAAA;MAAA,IACpC,CAAAjB,eAAgB,CAAAI,GAAA,CAAAR,QAAA,EAAAY,cAAA;MACd,KAAAL,YAAW,CAAAC,GAAK,CAAAI,cAAiB;MACjC,IAAAb,KAAI,CAAAwC,WAAU;QACd,KAAAjD,kBAAS,CAAAkD,oBAAiC,CAAA5B,cAAA,EAAAS,YAAA,EAAAA,YAAA,CAAAE,MAAA,EAAAN,MAAA;MAAA;MAE9C;QACFL,cAAE;QACAH,IAAI,EAAAO,KAAK;QACXL,UAAA,EAAAO;MACD;IACD;EACA,GACF;IAAApE,GAAA;IAAAI,KAAA,iBAAAuF,qBAAA;MAAA,IAAAC,KAAA;MAAA,IAAAvD,OAAA,GAAAC,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA;MAAA,IAAAiB,aAAA,YAAAA,aAAA,CAAAsC,MAAA,GAQc,CAAAC,MAAA,WACZvB,YAC4E;QAGtE,IAAAwB,sBAAoB;QAGtB,OAA2B,EAAAA,sBAAA,GAAAH,KAAA,CAAAnC,YAAA,CAAAhE,GAAA,CAAA8E,YAAA,CAAAC,EAAA,eAAAuB,sBAAA,cAAAA,sBAAA,eAAA1D,OAAA,CAAA2D,QAAA,IAAA3D,OAAA,CAAA2D,QAAA,CAAAC,QAAA,CAAA1B,YAAA,CAAAtB,KAAA,CAAAiD,OAAA;MAC3B;MACJ,OAAMC,OAAA,CAAa5G,GAAA,CAAAgE,aAAA,CAAkBmB,GAAA,WAAaH,YAAA;QAC9C,OAAAqB,KAAY,CAAAQ,mBAAA,CAAA7B,YAAA;MACd,EAAI;IACF;EACA,GAAgC;IAGhCvE,GAAA,uBAAwB;IACxBI,KAAA,EAAI,SAAAgG,mBAA4BA,CAAA7B,YAAK;MAEnC,IAAAqB,KAAO,GAAC;MACV,IAAA9B,cAAO,GAAAS,YAAA,CAAAC,EAAA;MAEL,IAAAD,YAAM,CAAAtB,KAAA,CAAAwC,WAAA;QACR,OAAAU,OAAA,CAAAE,OAAA;UACFvC,cAAA;UACKwC,EAAA;UACCC,KAAA,MAAAC,KAA2B;QAC/B;MACA;MACA,IAAAC,QAAS,GAAM,KAAAC,SAAA,CAAAjH,GAAA,CAAAqE,cAAA;MACjB,IAAA2C,QAAA;QAMAA,QAAY,CAAAE,SAAQ,OAAM;QACtB,OAAMF,QAAA,CAAAG,OAAc;MACxB;MACA,IAAMC,KAAA;QAGFF,SAAO;QACTC,OAAQ,EAAAT,OAAiB,CAAAE,OAAA;UACzBvC,cAA2B;UAC7BwC,EAAO;QACL;MACF;MACF,IAAAQ,MAAA,YAAAC,QAAA;QAEI,IAAAhB,sBAAiC;QACrC,OAAWH,KAAO,CAAAc,SAAM,CAAAjH,GAAA,CAAAqE,cAAA,MAAA+C,KAAA,IAAAjB,KAAA,CAAArC,aAAA,CAAA9D,GAAA,CAAAqE,cAAA,MAAAS,YAAA,MAAAwB,sBAAA,GAAAH,KAAA,CAAAnC,YAAA,CAAAhE,GAAA,CAAAqE,cAAA,eAAAiC,sBAAA,cAAAA,sBAAA;MACtB;MACAc,KAAK,CAAAD,OAAA,GAAAT,OAAkB,CAAAE,OAAA,CAAW,EAAAW,IAAA,mBAAY;QAChD;UACO,OAAQ;YACjBH,KAAA,CAAAF,SAAA;YAE6C,IAA0B;cAC1D,IAAAM,8BAAa,EAAAC,yBAAA;cACb;gBAAAvD,IAAS;gBAAIQ,MAAA;gBAAAN;cAAgB,UAAA+B,KAAA,CAAAvB,gBAAA,CAAAE,YAAA,CAAAtB,KAAA;cACjC,KAAA6D,MAAgB;gBACvB;kBACFhD,cAAA;kBAAAwC,EAAA;kBAAAC,KAAA,MAAAC,KAAA;gBAAA;cAAA;cAAA,IAAAK,KAAA,CAAAF,SAAA;cAAAf,KAAA,CAAAtB,QAAA,CAAAC,YAAA,CAAAtB,KAAA,EAAAU,IAAA;cAAAY,YAAA,CAAAE,MAAA,GAAAd,IAAA,CAAAe,GAAA,WAAAC,GAAA;gBASQ,OAAAA,GACN,CAAAnF,IAAA;cAGU;cACJ+E,YAAkB,CAAAJ,MAAA,GAAAA,MAAA;cACnBI,YAAmB,CAAAV,UAAA,GAAAA,UAAA;cAClBU,YAAe,CAAAQ,UAAK,GAAApB,IAAc,CAAAtC,MAAI;gBACvC2D,SAAA,EAAmBrB,IAAA,EAAO;gBAC1BsB,QAAW,EAAOtB,IAAA,CAAAA,IAAU,CAAAtC,MAAA;gBAC5B6D,MAAc,GAAA+B,8BAAO,GAAA1C,YAAA,CAAAtB,KAAA,CAAAkC,UAAA,cAAA8B,8BAAA,cAAAA,8BAAA;gBAGrBpE,QAAgB,GAAIqE,yBAAoB,GAAA3C,YAAA,CAAAtB,KAAA,CAAAmC,KAAA,cAAA8B,yBAAA,cAAAA,yBAAA,GAAAtG,YAAA,CAAAyE;cACxC,SAAa,CAAI;cAEhBd,YAAe,CAAAe,QAAA;gBACRC,eAAK;gBACTC,cAAgB;cAC3B;cAAAjB,YAAA,CAAA4C,KAAA;cAAA;gBAAArD,cAAA;gBAAAwC,EAAA;cAAA;YAAA,SAAAC,KAAA;cAAA,IAAAO,MAAA,MAAAD,KAAA,CAAAF,SAAA;cASA,IAAAG,MACE,IAAAvC,YAEA,CAAA4C,KAAA;cACK,OAAa;gBACTrD,cAAkB;gBACrBwC,EAAA,EAAW,KAAK;gBAGhBC;cACF;YAEE;UACF;QACF,CAAK;UACA,IAAAX,KAAA,CAAWc,SAAO,CAAAjH,GAAA,CAAAqE,cAAU,MAAA+C,KAAA,EAAAjB,KAAA,CAAAc,SAAA,CAAAU,MAAA,CAAAtD,cAAA;QACnC;MACA,EAAM;MACJ,IAAI,CAAA4C,SAAY,CAAAhD,GAAA,CAAAI,cAAA,EAAA+C,KAAA;MAChB,OAAOA,KAAA,CAAAD,OAAY;IACnB;EAAwB,GACJ;IAEpB5G,GAAA,oBAAY;IACZI,KAAA;IACF;AACA;AACA;AACA;AAA+C;AACjD;IAGA,eAAAiE,gBAAuBA,CAAApB,KAAiC;MACtD,IAAOoE,aAAgB;MACzB,IAAAC,WAAA,KAAAD,aAAA,GAAApE,KAAA,CAAAsE,MAAA,cAAAF,aAAA,uBAAAA,aAAA,CAAAhG,MAAA,IAAAmG,KAAA,CAAA3H,IAAA,oBAAA4H,GAAA,KAAAxE,KAAA,CAAAsE,MAAA;MAAA,IAAA5D,IAAA;MAOA,IAAAQ,MAAA;MACQ,IAAAuD,UAAW,KAAQ,EAAA/G,cAAA,CAAAgH,iBAAgC,EAAA1E,KAAK,CAAA2E,OAAA;MAC9D,IAAAF,UAAY;QACN,IAAM;UACL,IAAAG,QAAW,GAAO,WAAA1F,EAAA,CAAc2F,MAAA,CAAA7E,KAAA,CAAAiD,OAAA,EAAAwB,UAAA;UAChC/D,IAAA,GAAAkE,QAAc,GAAO,CAC1BA,QAAiB,CACX,KAAO;QACT,SAAKtB,KAAA;UACL,IAAAwB,eAAA,GAAAxB,KAAA;UACF,KAAAwB,eAAA,aAAAA,eAAA,uBAAAA,eAAA,CAAAC,MAAA;YACFrE,IAAA;UACF;YACF,MAAA4C,KAAA;UAAA;QAAA;MAAA;QAAA,IAAAzB,YAAA;QAAA,IAAAmD,WAAA;UAAAV,MAAA,EAAAD,WAAA;UAAAM,OAAA,EAAA3E,KAAA,CAAA2E,OAAA;UAAAM,OAAA,EAAAjF,KAAA,CAAAiF;QAAA;QAAAD,WAAA,CAAA7C,KAAA,IAAAN,YAAA,GAAA7B,KAAA,CAAAmC,KAAA,cAAAN,YAAA,cAAAA,YAAA,GAAAlE,YAAA,CAAAyE,iBAAA;QAAA,IAAApC,KAAA,CAAAkC,UAAA,UAAA8C,WAAA,CAAA9C,UAAA,GAAAlC,KAAA,CAAAkC,UAAA;QAaA,IAAY,KAAA9C,OAAA,CAAA8F,mBAAwB,EAAAF,WAAA,CAAA9D,MAAA;QAC5B,IAAAiE,QAAY,GAAK,WAAAjG,EAAa,CAAAkG,UAAI,CAAApF,KAAA,CAAciD,OAAK,EAAA+B,WAAK;QAC5D,YAAcG,QAAA,iCAAAtG,QAAA,CAAAsG,QAAA,mBAAAA,QAAA,uBAAAA,QAAA;UACXzE,IAAA,GAAAyE,QAAiB,CAAAE,IAAA;UACtBnE,MAAA,GAAAiE,QAAA,CAAAjE,MAAA;QACF;UACKR,IAAA,GAAUyE,QAAO;QAEjB;MACD;MACJ,IAAAvE,UAAmB,QAAK,CAAK;MACvB,IAAA0E,yBAAuB;QAAAC,iBAAA;QAAAC,cAAA;MACzB;QACA,KAAK,IAAAC,SAAgB,GAAA/E,IAAO,CAAA5B,MAAG,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UAC/B,IAAA5D,GAAA,GAAAiE,KAAA,CAAAxI,KAAA;UACF,KAAAuE,GAAA,CAAAoE,QAAA;UACF,KAAAlF,UAAA,IAAAc,GAAA,CAAAoE,QAAA,GAAAlF,UAAA,EAAAA,UAAA,GAAAc,GAAA,CAAAoE,QAAA;QACM;MAEJ,SAAKC,GAAQ;QAMRR,iBAAA,GAAmB,IAAI;QACvBC,cAAe,GAAAO,GAAA;MACpB;QACF;UACK,KAAAT,yBAAmC,IAAAG,SAAA,CAAAO,MAAA;YAC1CP,SAAA,CAAAO,MAAA;UAAA;QAGA,UAA4B;UAEnB,IAAKT,iBAAkB,EAAE;YAClC,MAAAC,cAAA;UAAA;QAAA;MAAA;MAAA;QAMA9E,IAAA;QAEQQ,MAAA;QACFN;MAEF;IACA;EAEE,GAA0C;IACd7D,GAAA,EAC1B;IAAAI,KACD,WAAAkE,SAAArB,KAAA,EAAAU,IAAA;MACD,IAAI4E,yBAAmB,GAA2B;QAAAC,iBAAA;QAAAC,cAAA;MACpD;QACA,KAAO,IAAAC,SAAA,GAAA/E,IAAA,CAAA5B,MAAA,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UACT,IAAA5D,GAAA,GAAAiE,KAAA,CAAAxI,KAAA;UAGM,KAAAuE,GAAA,CAAAuB,OAAe,EAAKvB,GAAA,CAAAuB,OAAA,GAAcjD,KAAI,CAAEiD,OAAA;UACzC,KAAA9D,eAAsB,CAAA8G,MAAA,CAAAvE,GAAA;QACrB;MACN,SAAWqE,GAAA;QACTR,iBAAiB,GAAK;QACpBC,cAAS,GAAAO,GAAa;MACtB;QACD;UACG,KAAAT,yBAA8C,IAAAG,SAAA,CAAAO,MAAA;YACpDP,SAAA,CAAAO,MAAA;UACO;QACT;UAAA,IAAAT,iBAAA;YAAA,MAAAC,cAAA;UAAA;QAKM;MAIJ;IACF;EAAA;IAAAzI,GAAA;IAKAI,KAAM;IAKJ;AAA8E;AAGhF;AAAA;AAAA;AAAA;AAME;IACF,SAAA4D,0BAAAd,QAAA,EAAAD,KAAA;MAAA,IAAAA,KAAA,CAAAwC,WAAA;MAAA,IAAA0D,UAAA,QAAAC,kBAAA,CAAA3J,GAAA,CAAAyD,QAAA;MAAA,KAAAiG,UAAA;MAAA,IAAA5E,YAAA,QAAAhB,aAAA,CAAA9D,GAAA,CAAA0J,UAAA;MAAA,KAAAC,kBAAA,CAAAhC,MAAA,CAAAlE,QAAA;MAAA,KAAAmG,UAAA,CAAAjC,MAAA,CAAA+B,UAAA;MAAA,KAAA5E,YAAA;MAAA,KAAAjB,eAAA,CAAAI,GAAA,CAAAR,QAAA,EAAAiG,UAAA;MAAA,KAAA1F,YAAA,CAAAC,GAAA,CAAAyF,UAAA;MAWM,IAAAG,OAAqC,GAAoB,KAAAlD,mBAAA,CAAA7B,YAAA;MACzD,IAAKZ,IAAA,OAAU,CAAAC,sBAAmB,CAAAuF,UAAA;MACpC,OAAW;QAILrF,cAAK,EAAWqF,UAAI;QACxBxF,IAAM;QACRE,UAAA,EAAAU,YAAA,CAAAV,UAAA;QACAyF;MACF;IACI;EAEA,GACA;IACF;AACA;AAAA;AAEF;AACE;AACA;AACE;IACAtJ,GAAA,uBAAY;IACVI,KAAA,WAAWmJ,mBAAYA,CAAAC,WAAmB;MAC9C,IAAAC,kBAAA;MACA,MAAAD,WAAA,aAAAA,WAAA,uBAAAA,WAAA,CAAAhF,EAAA,QAAAiF,kBAAA,GAAAD,WAAA,CAAAvG,KAAA,cAAAwG,kBAAA,uBAAAA,kBAAA,CAAAvD,OAAA;MACF,SAAA3C,aAAA,CAAAC,GAAA,CAAAgG,WAAA,CAAAhF,EAAA;MACI,IAAAtB,QAAK,GAAUC,IAAA,CAAAC,SAAc,CAAAoG,WAAM,CAAAvG,KAAA;MACrC,IAAAyG,QAAW,QAAApG,eAA0B,CAAC7D,GAAG,CAAAyD,QAAA;MACvC,IAAAwG,QAAM,QAAW,CAAAnG,aAAc,CAAAC,GAAa,CAAAkG,QAAA,CAAU;MACtD,IAAAC,UAAK,OAAgB,CAAAP,kBAAe,CAAA3J,GAAA,CAAAyD,QAAA;MACtC,IAAAyG,UAAA;QACF,KAAApG,aAAA,CAAA6D,MAAA,CAAAuC,UAAA;QACF,KAAAN,UAAA,CAAAjC,MAAA,CAAAuC,UAAA;MAAA;MAAA,IAAApF,YAAA;QAAAC,EAAA,EAAAgF,WAAA,CAAAhF,EAAA;QAAAvB,KAAA,EAAAuG,WAAA,CAAAvG,KAAA;QAAAY,UAAA,EAAA2F,WAAA,CAAA3F,UAAA;QAAAM,MAAA,EAAAqF,WAAA,CAAArF,MAAA;QAAAM,MAAA,EAAA+C,KAAA,CAAAoC,OAAA,CAAAJ,WAAA,CAAA/E,MAAA,IAAA+E,WAAA,CAAA/E,MAAA;QAAAG,UAAA,qBAAArC,GAAA;QAAA+C,QAAA;UAAAC,eAAA;UAAAC,cAAA;QAAA;MAAA;MAeM,KAAAjC,aACJ,CAAAG,GAAA,CAAAa,YACA,CAAAC,EAAW,EAAAD,YAAa;MAExB,IAAM,CAAA6E,kBAAgB,CAAA1F,GAAQ,CAAAR,QAAA,EAAAqB,YAAoB,CAAAC,EAAA;MAClD,IAAM,CAAA6E,UAA2B,CAAA3F,GAAA,CAAAa,YAAA,CAAAC,EAAA,EAAAqF,IAAA,CAAAC,GAAA;IACjC;EACA,GAEE;IAA8C;IAChB9J,GAC5B,0BAA2B;IAAAI,KAC3B,WAAS2J,sBAAmBA,CAAAjG,cAAA;MAC5B,YAAAuF,UAAe,CAAA7F,GAAA,CAAAM,cAAa;IAAA;EAAA,GACrB;IAET;AACE;AAA0E;AAE5E;AAEA;IAIA9D,GAAA,2BAA8B;IAC9BI,KAAK,WAAS4J,uBAAsBA,CAAA;MACtC,IAAAF,GAAA,GAAAxH,SAAA,CAAAjB,MAAA,QAAAiB,SAAA,iBAAAA,SAAA,MAAAuH,IAAA,CAAAC,GAAA;MAIA,IAAAG,qCAAkC;MAChC,IAAKC,GAAA,IAAAD,qCAAkB,QAAA5H,OAAA,CAAA8H,uBAAA,cAAAF,qCAAA,cAAAA,qCAAA;MACvB,IAAM1B,yBAAiB,GAAW;QAAAC,iBAAW,GAAa,KAAM;QAAAC,cAAA;MAGhE,IAAI;QACF,SAAAC,SAAa,OAAW,CAAIW,UAAA,CAAWtH,MAAM,CAAA4G,QAAS,CAAC,IAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UACzD,KAAAzE,cAAA,EAAAsG,YAAA,IAAAxB,KAAA,CAAAxI,KAAA;UAEK,IAAA0J,GAAA,GAAAM,YAAuB,IAAAF,GAAA;UAC1B,KAASb,UAAA,CAAAjC,MAAA,CAAAtD,cAAA;UACT,IAAM,CAAAP,aAAW,CAAA6D,MAAA,CAAAtD,cAAA;UAClB,IAAAuG,0BAAA;YAAAC,kBAAA;YAAAC,eAAA;UACG;YACF,SAAaC,UAAS,QAAApB,kBAAoB,CAAArH,MAAA,CAAA4G,QAAA,KAAA8B,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA3B,IAAA,IAAAC,IAAA,GAAAuB,0BAAA;cACvC,KAAArK,GAAA,EAAAwE,EAAgB,IAAAiG,MAAA,CAAArK,KAAgB;cACnC,IAAAoE,EAAA,KAAAV,cAAA;gBACJ,KAAAsF,kBAAA,CAAAhC,MAAA,CAAApH,GAAA;gBAIW;cACA;YACJ;UACC,SAAOgJ,GAAI;YACZsB,kBAAM;YACLC,eAAQ,GAAAvB,GAAe;UACzB,UAAU;YACT;cACH,KAAaqB,0BAAsB,IAAOG,UAAQ,CAAAvB,MAAA,QAAgB;gBACtEuB,UAAA,CAAAvB,MAAA;cAES;YACP,UAAa;cAGX,IAAAqB,kBAA6B,EAAG;gBAC5B,MAAWC,eAAK;cACpB;YACM;UACP;QACD;MACE,SAASvB,GAAA;QACTR,iBAAmB,OAAO;QAC3BC,cAAA,GAAAO,GAAA;MAED,UAAI;QACF;UACE,KAAAT,yBAAW,IAAAG,SAAA,CAAAO,MAAA;YACXP,SAAU,CAAAO,MAAA;UACV;QACA,UAAU;UACZ,IAAAT,iBAAA;YACF,MAAAC,cAAA;UACF;QAGK;MAGL;IAGA;EAEA,GACE;IAAwB;AACM;AACd;AACW;AAC1B;AACL;AAGE;AACA;AACA;AACA;AACE;IACAzI,GAAA,eAAkB;IAClBI,KAAA,WAAWsK,WAAgBA,CAAA5G,cAAc;MACvC,IAAA6G,QAAM,GAAQ,MAAAlH,YAAa,CAAAhE,GAAA,CAAAqE,cAAA;MAC3B,IAAA6G,QAAM,MAAY;QAClB,IAAM,CAAAlH,YAAa,CAAAC,GAAA,CAAAI,cAAgB,EAAA6G,QAAA;QACnC;MACA;MACA,KAAAjE,SAAM,CAAAU,MAAA,CAAAtD,cAAkB;MACxB,IAAI,CAAAL,YAAA,CAAA2D,MAAmB,CAAAtD,cAAiB;MACxC,IAAIZ,QAAA;MACJ,IAAIqF,yBAAkB;QAAiBC,iBAAA;QAAAC,cAAA;MACvC,IAAI;QACJ,KAAI,IAAAC,SAAa,QAAApF,eAAoB,CAAAvB,MAAY,CAAA4G,QAAK,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;UAClD,KAAAvI,GAAA,EAAAwE,EAAA,CAAa,GAAAoE,KAAA,CAAAxI,KAAa;UAChC,IAAAoE,EAAA,KAAAV,cAAA;YACOZ,QAAA,GAAUlD,GAAA;YAClB,KAAAsD,eAAA,CAAA8D,MAAA,CAAApH,GAAA;YACH;UAEA;QACQ;MACN,SAAWgJ,GAAA;QAILR,iBAAgB,GAAI;QACpBC,cAAa,GAAAO,GAAM;MACvB,UAAM;QACN,IAAM;UACF,KAAAT,yBAAsB,IAAAG,SAAA,CAAAO,MAAA;YACxBP,SAAA,CAAAO,MAAA;UAEA;QACE;UACA,IAAAT,iBAAA;YACF,MAAAC,cAAA;UACF;QACE;MACE;MACA,IAAAlE,YAAK,QAAAhB,aAAmB,CAAA9D,GAAA,CAAAqE,cAAmB;MAC7C,QAAO,CAAAzB,OAAA,CAAAuI,UAAA,IAAArG,YAAA,IAAArB,QAAA,KAAAqB,YAAA,CAAAtB,KAAA,CAAAwC,WAAA,UAAA2D,kBAAA,CAAA5F,GAAA,CAAAN,QAAA;QACL,KAAKkG,kBAAA,CAAmB1F,GAAA,CAAAR,QAAA,EAAAY,cAAA;QAAA,IACtB,CAAAuF,UAAa,CAAA3F,GAAA,CAAAI,cAAA,EAAA+F,IAAA,CAAAC,GAAA;QAAA;MACb;MAEJ,KAAAvG,aAAA,CAAA6D,MAAA,CAAAtD,cAAA;IACA;EAA0C,GAE9C;IACA;IACF9D,GAAA;IAAAI,KAAA,WAAAyK,gBAAArG,EAAA;MAAA,YAAAjB,aAAA,CAAA9D,GAAA,CAAA+E,EAAA;IAAA;EAAA,GAMA;IAIE;AAEA;AACE;AAEA;IACAxE,GAAA,EAAI,wBAAa;IACfI,KAAA,WAAawD,sBAAsBA,CAAAY,EAAA;MACnC,IAAAsG,UAAK,QAAAtI,kBAAmB,CAAAqI,eAAgC,CAAArG,EAAA,CAAI;MAC5D,IAAAsG,UAAA;QACF,IAAArG,MAAA,GAAAqG,UAAA,CAAAC,mBAAA,GAAAtG,MAAA,CAAAqB,MAAA,WAAAkF,GAAA;UACF,OAAAA,GAAA;QAEA,CAAO;QACT,IAAAC,GAAA;QAAA,IAAA1C,yBAAA;UAAAC,iBAAA;UAAAC,cAAA;QAGA;UACS,KAAK,IAAAC,SAAA,GAAAjE,MAAA,CAAA1C,MAAA,CAAA4G,QAAA,KAAAC,KAAA,IAAAL,yBAAA,IAAAK,KAAA,GAAAF,SAAA,CAAAG,IAAA,IAAAC,IAAA,GAAAP,yBAAA;YACd,IAAA/I,IAAA,GAAAoJ,KAAA,CAAAxI,KAAA;YAEA,IAAAyH,QAA4C,QAAAzF,eAAA,CAAA3C,GAAA;cAC9ByG,OAAA,EAAA4E,UAAA,CAAA7H,KAAA,CAAAiD,OAAA;cACd1G;YAEA;YAIM,IAAAqI,QAAa,EAAOoD,GAAA,CAAAC,IAAA,CAASrD,QAAQ;UACpC;QACH,SAAOmB,GAAA;UACTR,iBAAA;UACMC,cAAc,GAAKO,GAAA;QACzB,UAAa;UACf;YAEQ,KAAAT,yBAGE,IAAAG,SAAA,CAAAO,MAAA;cACAP,SAAQ,CAAMO,MAAI;YACpB;UACF,UAAO;YACP,IAAQT,iBAAgB;cACrB,MAAQC,cAAO;YACd;UACA;QACJ;QACA,OAAMwC,GAAA;MACP;MACD,IAAK1G,YAAQ,QAAAhB,aAAA,CAAA9D,GAAA,CAAA+E,EAAA;MACX,KAAAD,YAAc;MAChB,IAAA4G,IAAA;MACA,IAAMd,0BAAkB;QAAiBC,kBAAa,QAAY;QAAAC,eAAA;MAClE,IAAI;QACF,SAAQC,UAAM,GAAAjG,YAAA,CAAAE,MAAA,CAAA1C,MAAA,CAAA4G,QAAA,KAAA8B,MAAA,IAAAJ,0BAAA,IAAAI,MAAA,GAAAD,UAAA,CAAA3B,IAAA,IAAAC,IAAA,GAAAuB,0BAAA;UAChB,IAAOe,KAAA,GAAAX,MAAA,CAAArK,KAAA;UACL,IAAOiL,SAAM,QAAAjJ,eAAA,CAAA3C,GAAA;YACfyG,OAAA,EAAA3B,YAAA,CAAAtB,KAAA,CAAAiD,OAAA;YACF1G,IAAA,EAAA4L;UACO;UACT,IAAAC,SAAA,EAAAF,IAAA,CAAAD,IAAA,CAAAG,SAAA;QAEQ;MAKN,SAAarC,GAAA;QACXsB,kBAAoB,GAAK;QACzBC,eAAe,GAAKvB,GAAK;MACzB,UAAM;QACN,IAAM;UACA,KAAAqB,0BAAoB,IAAAG,UAAA,CAAAvB,MAAA;YACtBuB,UAAY,CAAAvB,MAAS;UACpB;QACD;UACA,IAAAqB,kBAA0B;YAC1B,MAAUC,eAAgB;UAChC;QACM;MACN;MACA,OAAOY,IAAQ;IACjB;EAEA,GACE;IACAnL,GAAK;IACLI,KAAK;IACL;AACA;AACA;IACF,eAAAkL,QAAAxH,cAAA,EAAAyH,IAAA;MAAA,YAAA/I,kBAAA,CAAA8I,OAAA,CAAAxH,cAAA,EAAAyH,IAAA;IAAA;EAAA,GAMA;IACEvL,GAAA,EAAM,cAAc;IACpBI,KAAM;IACN;AAEA;AAIA;IACE,eAAKoL,YAAcA,CAAA1H,cAAc,EAAa2H,WAAW,EAAArG,KAAA,EAAS;MAGlE,OAAW,IAAC,CAAA5C,kBAAoB,CAAAgJ,YAAa,CAAA1H,cAAY,EAAA2H,WAAA,EAAArG,KAAA;IACvD;EACqC,GACrC;IAIF;AACE;AAEA;IAEApF,GAAA,eAAM;IACNI,KAAA,WAAYsL,WAASA,CAAA5H,cAAU;MAC7B,YAAAtB,kBAAwB,CAAAkJ,WAAW,CAAA5H,cAAA;IAAA;EACrC,GAEJ;IACF9D,GAAA;IACFI,KAAA;IAEA;AACE;AACE;AAAyB;AAE3B;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiplatform.one/frappe",
3
- "version": "7.8.0",
3
+ "version": "7.10.0",
4
4
  "description": "frappe client for multiplatform.one ecosystem",
5
5
  "keywords": [
6
6
  "auth",
@@ -66,7 +66,7 @@
66
66
  "@tanstack/react-pacer": "0.22.0",
67
67
  "broadcast-channel": "^7.3.0",
68
68
  "socket.io-client": "^4.8.3",
69
- "@multiplatform.one/store": "7.8.0"
69
+ "@multiplatform.one/store": "7.10.0"
70
70
  },
71
71
  "devDependencies": {
72
72
  "@tamagui/build": "2.7.6",
@@ -79,13 +79,13 @@
79
79
  "tamagui": "2.7.6",
80
80
  "typescript": "~5.9.3",
81
81
  "vitest": "^4.1.5",
82
- "@multiplatform.one/test-utils": "7.8.0",
83
- "@multiplatform.one/config": "7.8.0",
84
- "@multiplatform.one/platform": "7.8.0"
82
+ "@multiplatform.one/config": "7.10.0",
83
+ "@multiplatform.one/platform": "7.10.0",
84
+ "@multiplatform.one/test-utils": "7.10.0"
85
85
  },
86
86
  "peerDependencies": {
87
87
  "react": "^19.1.0",
88
- "@multiplatform.one/platform": "^7.8.0"
88
+ "@multiplatform.one/platform": "^7.10.0"
89
89
  },
90
90
  "engines": {
91
91
  "node": ">=6.0.0"
package/src/index.ts CHANGED
@@ -64,7 +64,11 @@ export type {
64
64
  UseFrappeInfiniteListConfig,
65
65
  UseFrappeInfiniteListResult,
66
66
  } from "./frappeReact";
67
- export type { SyncRealtimeEvent } from "./sync";
67
+ export type {
68
+ SyncRealtimeEvent,
69
+ SubscriptionRefreshOptions,
70
+ SubscriptionRefreshResult,
71
+ } from "./sync";
68
72
 
69
73
  // TanStack Pacer utilities for Frappe
70
74
  export { useDebouncedSearch, useThrottledPagination, createRateLimitedBatch } from "./pacer";
package/src/sync/index.ts CHANGED
@@ -8,6 +8,8 @@ import { NormalizedCache } from "./normalizedCache";
8
8
  import { PersistenceManager } from "./persistence";
9
9
  import { RealtimeHandler } from "./realtime";
10
10
  import { RehydrationManager } from "./rehydration";
11
+ import type { SubscriptionRefreshOptions, SubscriptionRefreshResult } from "./subscriptionManager";
12
+ export type { SubscriptionRefreshOptions, SubscriptionRefreshResult } from "./subscriptionManager";
11
13
  import { SubscriptionManager } from "./subscriptionManager";
12
14
  import { BackfillScope, Status } from "./types";
13
15
  import type {
@@ -261,6 +263,16 @@ export class SyncModule {
261
263
  this.emit();
262
264
  }
263
265
 
266
+ /** Refresh active query snapshots in place. Failures retain the last committed data. */
267
+ async refreshSubscriptions(
268
+ options?: SubscriptionRefreshOptions,
269
+ ): Promise<SubscriptionRefreshResult[]> {
270
+ await this.persistenceManager.whenReady();
271
+ const results = await this.subscriptionManager.refreshSubscriptions(options);
272
+ this.emit();
273
+ return results;
274
+ }
275
+
264
276
  /**
265
277
  * Reconciles local state by fetching changes since stored cursors.
266
278
  */