@multiplatform.one/frappe 7.8.0 → 7.11.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 (87) hide show
  1. package/README.md +89 -1
  2. package/dist/cjs/frappeReact.cjs +54 -30
  3. package/dist/cjs/frappeReact.native.js +67 -32
  4. package/dist/cjs/frappeReact.native.js.map +1 -1
  5. package/dist/cjs/index.cjs +1 -0
  6. package/dist/cjs/index.native.js +1 -0
  7. package/dist/cjs/index.native.js.map +1 -1
  8. package/dist/cjs/sync/index.cjs +97 -13
  9. package/dist/cjs/sync/index.native.js +127 -13
  10. package/dist/cjs/sync/index.native.js.map +1 -1
  11. package/dist/cjs/sync/subscriptionManager.cjs +94 -50
  12. package/dist/cjs/sync/subscriptionManager.native.js +133 -73
  13. package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
  14. package/dist/cjs/sync/types.native.js.map +1 -1
  15. package/dist/cjs/syncOptionsKey.cjs +59 -0
  16. package/dist/cjs/syncOptionsKey.native.js +82 -0
  17. package/dist/cjs/syncOptionsKey.native.js.map +1 -0
  18. package/dist/esm/frappeReact.mjs +55 -32
  19. package/dist/esm/frappeReact.mjs.map +1 -1
  20. package/dist/esm/frappeReact.native.js +68 -34
  21. package/dist/esm/frappeReact.native.js.map +1 -1
  22. package/dist/esm/index.mjs +2 -2
  23. package/dist/esm/index.mjs.map +1 -1
  24. package/dist/esm/index.native.js +2 -2
  25. package/dist/esm/index.native.js.map +1 -1
  26. package/dist/esm/sync/index.mjs +97 -13
  27. package/dist/esm/sync/index.mjs.map +1 -1
  28. package/dist/esm/sync/index.native.js +127 -13
  29. package/dist/esm/sync/index.native.js.map +1 -1
  30. package/dist/esm/sync/subscriptionManager.mjs +94 -50
  31. package/dist/esm/sync/subscriptionManager.mjs.map +1 -1
  32. package/dist/esm/sync/subscriptionManager.native.js +133 -73
  33. package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
  34. package/dist/esm/sync/types.mjs.map +1 -1
  35. package/dist/esm/sync/types.native.js.map +1 -1
  36. package/dist/esm/syncOptionsKey.mjs +34 -0
  37. package/dist/esm/syncOptionsKey.mjs.map +1 -0
  38. package/dist/esm/syncOptionsKey.native.js +54 -0
  39. package/dist/esm/syncOptionsKey.native.js.map +1 -0
  40. package/dist/jsx/frappeReact.mjs +55 -32
  41. package/dist/jsx/frappeReact.mjs.map +1 -1
  42. package/dist/jsx/frappeReact.native.js +67 -32
  43. package/dist/jsx/frappeReact.native.js.map +1 -1
  44. package/dist/jsx/index.js +2 -2
  45. package/dist/jsx/index.js.map +1 -1
  46. package/dist/jsx/index.mjs +2 -2
  47. package/dist/jsx/index.mjs.map +1 -1
  48. package/dist/jsx/index.native.js +1 -0
  49. package/dist/jsx/index.native.js.map +1 -1
  50. package/dist/jsx/sync/index.mjs +97 -13
  51. package/dist/jsx/sync/index.mjs.map +1 -1
  52. package/dist/jsx/sync/index.native.js +127 -13
  53. package/dist/jsx/sync/index.native.js.map +1 -1
  54. package/dist/jsx/sync/subscriptionManager.mjs +94 -50
  55. package/dist/jsx/sync/subscriptionManager.mjs.map +1 -1
  56. package/dist/jsx/sync/subscriptionManager.native.js +133 -73
  57. package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
  58. package/dist/jsx/sync/types.mjs.map +1 -1
  59. package/dist/jsx/sync/types.native.js.map +1 -1
  60. package/dist/jsx/syncOptionsKey.mjs +34 -0
  61. package/dist/jsx/syncOptionsKey.mjs.map +1 -0
  62. package/dist/jsx/syncOptionsKey.native.js +82 -0
  63. package/dist/jsx/syncOptionsKey.native.js.map +1 -0
  64. package/package.json +9 -9
  65. package/src/frappeReact.catchUp.spec.tsx +105 -0
  66. package/src/frappeReact.ts +62 -38
  67. package/src/index.ts +8 -1
  68. package/src/sync/catchUp.spec.ts +142 -0
  69. package/src/sync/index.ts +108 -8
  70. package/src/sync/refreshSubscriptions.lifecycle.spec.ts +268 -0
  71. package/src/sync/refreshSubscriptions.spec.ts +295 -0
  72. package/src/sync/subscriptionManager.ts +107 -44
  73. package/src/sync/types.ts +9 -1
  74. package/src/syncOptionsKey.spec.ts +46 -0
  75. package/src/syncOptionsKey.ts +45 -0
  76. package/types/frappeReact.d.ts +6 -1
  77. package/types/frappeReact.d.ts.map +1 -1
  78. package/types/index.d.ts +4 -4
  79. package/types/index.d.ts.map +1 -1
  80. package/types/sync/index.d.ts +13 -1
  81. package/types/sync/index.d.ts.map +1 -1
  82. package/types/sync/subscriptionManager.d.ts +13 -10
  83. package/types/sync/subscriptionManager.d.ts.map +1 -1
  84. package/types/sync/types.d.ts +8 -1
  85. package/types/sync/types.d.ts.map +1 -1
  86. package/types/syncOptionsKey.d.ts +3 -0
  87. package/types/syncOptionsKey.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["onAppFocus","onOnline","MutationEngine","MutationJournal","NormalizedCache","PersistenceManager","RealtimeHandler","RehydrationManager","SubscriptionManager","BackfillScope","Status","getBrowserJournalStorage","window","document","storage","localStorage","getItem","setItem","SyncModule","normalizedCache","mutationJournal","storeListeners","Set","realtimeEventListeners","subscriptionManager","mutationEngine","realtimeHandler","persistenceManager","rehydrationManager","cleanupFocus","cleanupFocusReplay","cleanupOnlineBackfill","cleanupOnlineReplay","cdcIntervalHandle","db","realtime","options","constructor","maxSize","maxCacheSize","ttl","mutationTTL","enableAutoCleanup","emit","onStoreChange","realtimeOptions","onResetCache","resetCache","onBackfillAll","backfill","scope","All","onRealtimeEvent","event","listener","setupWindowEvents","listPending","length","replayPending","cdcInterval","setInterval","subscribe","query","whenReady","result","watchDoctype","doctype","refresh","then","unsubscribe","subscriptionId","subscription","getSubscription","unwatchDoctype","mutate","mutation","err","broadcastMutation","args","getMutationEntries","entries","id","entry","push","operation","docname","status","createdAt","retryCount","error","message","String","dismissMutation","remove","getDocFromCache","name","get","getDocsForSubscription","getPage","page","getNextBatch","cursorDocId","limit","getPageInfo","refetchDocs","docs","Docs","subscribeStore","add","delete","subscribeRealtimeEvents","getConnectionState","scheduleSave","broadcastChange","unwatchAll","clear","clearTemporaryMappings","dispose","destroy","clearInterval","__debug","allSubs","getAllSubscriptions","vpm","getVirtualPageManager","subscriptions","sub","virtualSub","pageInfo","islands","getPageIslands","debugSub","docCount","docIds","tombstoneCount","tombstones","size","checkpoint","cursor","stale","restored","isRestoredSubscription","pc","getProgressiveCache","progressiveCache","nextCursor","hasMore","totalCount","lastFetchedAt","toISOString","cacheStats","getStats","allEntries","getAllEntries","pending","confirmed","failed","debugEntry","Pending","Confirmed","Failed","connection","socketConnected","getIsConnected","isLeader","getIsLeader","isOnline","navigator","onLine"],"sources":["../../../src/sync/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["onAppFocus","onOnline","MutationEngine","MutationJournal","NormalizedCache","PersistenceManager","RealtimeHandler","RehydrationManager","SubscriptionManager","BackfillScope","Status","getBrowserJournalStorage","window","document","storage","localStorage","getItem","setItem","idleCatchUpState","Object","freeze","refreshing","stale","error","SyncModule","normalizedCache","mutationJournal","storeListeners","Set","realtimeEventListeners","subscriptionManager","mutationEngine","realtimeHandler","persistenceManager","rehydrationManager","cleanupFocus","cleanupFocusReplay","cleanupOnlineBackfill","cleanupOnlineReplay","cdcIntervalHandle","db","realtime","options","catchUpState","catchUpEpoch","disposed","catchUpRun","constructor","maxSize","maxCacheSize","ttl","mutationTTL","enableAutoCleanup","emit","onStoreChange","realtimeOptions","onResetCache","resetCache","onBackfillAll","catchUp","onRealtimeEvent","event","listener","setupWindowEvents","listPending","length","replayPending","cdcInterval","setInterval","subscribe","query","catchUpStrategy","progressive","Error","whenReady","result","watchDoctype","doctype","refresh","then","unsubscribe","subscriptionId","subscription","getSubscription","unwatchDoctype","mutate","mutation","err","broadcastMutation","refreshSubscriptions","epoch","results","getCatchUpState","publishCatchUp","state","Promise","resolve","attempt","trailing","promise","run","active","failures","filter","ok","isRestoredSubscription","AggregateError","map","failure","backfill","scope","All","caught","args","getMutationEntries","entries","id","entry","push","operation","docname","status","createdAt","retryCount","message","String","dismissMutation","remove","getDocFromCache","name","get","getDocsForSubscription","getPage","page","getNextBatch","cursorDocId","limit","getPageInfo","refetchDocs","docs","Docs","subscribeStore","add","delete","subscribeRealtimeEvents","getConnectionState","scheduleSave","broadcastChange","unwatchAll","clear","clearTemporaryMappings","dispose","destroy","clearInterval","__debug","allSubs","getAllSubscriptions","vpm","getVirtualPageManager","subscriptions","sub","virtualSub","pageInfo","islands","getPageIslands","debugSub","docCount","docIds","tombstoneCount","tombstones","size","checkpoint","cursor","restored","pc","getProgressiveCache","progressiveCache","nextCursor","hasMore","totalCount","lastFetchedAt","toISOString","cacheStats","getStats","allEntries","getAllEntries","pending","confirmed","failed","debugEntry","Pending","Confirmed","Failed","connection","socketConnected","getIsConnected","isLeader","getIsLeader","isOnline","navigator","onLine"],"sources":["../../../src/sync/index.ts"],"sourcesContent":[null],"mappings":"AAGA,SAASA,UAAA,EAAYC,QAAA,QAAgB;AACrC,SAASC,cAAA,QAAsB;AAC/B,SAASC,eAAA,QAAuB;AAChC,SAASC,eAAA,QAAuB;AAChC,SAASC,kBAAA,QAA0B;AACnC,SAASC,eAAA,QAAuB;AAChC,SAASC,kBAAA,QAA0B;AAGnC,SAASC,mBAAA,QAA2B;AACpC,SAASC,aAAA,EAAeC,MAAA,QAAc;AAmBtC,SAASC,yBAAA,EAAgD;EACvD,IAAI,OAAOC,MAAA,KAAW,eAAe,OAAOC,QAAA,KAAa,aAAa,OAAO;EAC7E,IAAI;IACF,MAAMC,OAAA,GAAUF,MAAA,CAAOG,YAAA;IACvB,OAAO,OAAOD,OAAA,EAASE,OAAA,KAAY,cAAc,OAAOF,OAAA,CAAQG,OAAA,KAAY,aACxEH,OAAA,GACA;EACN,QAAQ;IAEN,OAAO;EACT;AACF;AAEA,MAAMI,gBAAA,GAAqCC,MAAA,CAAOC,MAAA,CAAO;EACvDC,UAAA,EAAY;EACZC,KAAA,EAAO;EACPC,KAAA,EAAO;AACT,CAAC;AAgDM,MAAMC,UAAA,CAAW;EACdC,eAAA;EACAC,eAAA;EACAC,cAAA,GAAiB,mBAAIC,GAAA,CAAgB;EAAA;EAErCC,sBAAA,GAAyB,mBAAID,GAAA,CAAwC;EACrEE,mBAAA;EAAA;EAEAC,cAAA;EAAA;EAEAC,eAAA;EAAA;EAEAC,kBAAA;EAAA;EAEAC,kBAAA;EAAA;EAEAC,YAAA;EACAC,kBAAA;EACAC,qBAAA;EACAC,mBAAA;EAAA;EAEAC,iBAAA;EACSC,EAAA;EACAC,QAAA;EACAC,OAAA;EACTC,YAAA,GAAezB,gBAAA;EACf0B,YAAA,GAAe;EACfC,QAAA,GAAW;EACXC,UAAA;EAMRC,YAAYP,EAAA,EAAcC,QAAA,EAA2BC,OAAA,GAAuB,CAAC,GAAG;IAC9E,KAAKF,EAAA,GAAKA,EAAA;IACV,KAAKC,QAAA,GAAWA,QAAA;IAChB,KAAKC,OAAA,GAAUA,OAAA;IAEf,KAAKjB,eAAA,GAAkB,IAAIrB,eAAA,CAAgB;MACzC4C,OAAA,EAAS,KAAKN,OAAA,CAAQO;IACxB,CAAC;IACD,KAAKvB,eAAA,GAAkB,IAAIvB,eAAA,CAAgB;MACzC+C,GAAA,EAAK,KAAKR,OAAA,CAAQS,WAAA;MAClBC,iBAAA,EAAmB;MACnBtC,OAAA,EAASH,wBAAA,CAAyB;IACpC,CAAC;IACD,KAAKmB,mBAAA,GAAsB,IAAItB,mBAAA,CAAoB,KAAKgC,EAAA,EAAI,KAAKf,eAAA,EAAiB,KAAKiB,OAAO;IAG9F,KAAKR,kBAAA,GAAqB,IAAI3B,kBAAA,CAC5B,KAAKiC,EAAA,EACL,KAAKf,eAAA,EACL,KAAKK,mBAAA,EACL,KAAKJ,eAAA,EACL,MAAM,KAAK2B,IAAA,CAAK,CAClB;IAEA,KAAKtB,cAAA,GAAiB,IAAI7B,cAAA,CACxB,KAAKsC,EAAA,EACL,KAAKC,QAAA,EACL,KAAKhB,eAAA,EACL,KAAKC,eAAA,EACL,KAAKI,mBAAA,EACL,KAAKI,kBAAA,EACL;MACE,GAAG,KAAKQ,OAAA;MAAA;MAAA;MAAA;MAAA;MAKRY,aAAA,EAAeA,CAAA,KAAM,KAAKD,IAAA,CAAK;IACjC,CACF;IAGA,MAAME,eAAA,GAA+B;MACnC,GAAG,KAAKb,OAAA;MACRc,YAAA,EAAcA,CAAA,KAAM,KAAKC,UAAA,CAAW;MACpCC,aAAA,EAAeA,CAAA,KAAM;QACnB,KAAK,KAAKC,OAAA,CAAQ;MACpB;MAAA;MAAA;MAGAL,aAAA,EAAeA,CAAA,KAAM,KAAKD,IAAA,CAAK;MAC/BO,eAAA,EAAkBC,KAAA,IAAU;QAC1B,KAAKnB,OAAA,CAAQkB,eAAA,GAAkBC,KAAK;QACpC,WAAWC,QAAA,IAAY,KAAKjC,sBAAA,EAAwBiC,QAAA,CAASD,KAAK;MACpE;IACF;IAEA,KAAK7B,eAAA,GAAkB,IAAI1B,eAAA,CACzB,KAAKkC,EAAA,EACL,KAAKC,QAAA,EACL,KAAKhB,eAAA,EACL,KAAKK,mBAAA,EACL,KAAKI,kBAAA,EACLqB,eACF;IAEA,KAAKtB,kBAAA,GAAqB,IAAI5B,kBAAA,CAC5B,KAAKoB,eAAA,EACL,KAAKC,eAAA,EACL,KAAKI,mBAAA,EACL,KAAKC,cAAA,EACLwB,eACF;IAEA,KAAKQ,iBAAA,CAAkB;EACzB;EAAA;AAAA;AAAA;AAAA;EAMQA,kBAAA,EAAoB;IAC1B,KAAK5B,YAAA,GAAenC,UAAA,CAAW,MAAM;MACnC,KAAK,KAAK2D,OAAA,CAAQ;IACpB,CAAC;IAKD,KAAKvB,kBAAA,GAAqBpC,UAAA,CAAW,MAAM;MACzC,IAAI,KAAK0B,eAAA,CAAgBsC,WAAA,CAAY,EAAEC,MAAA,GAAS,GAAG,KAAK,KAAKC,aAAA,CAAc;IAC7E,CAAC;IACD,KAAK7B,qBAAA,GAAwBpC,QAAA,CAAS,MAAM;MAC1C,KAAK,KAAK0D,OAAA,CAAQ;IACpB,CAAC;IACD,KAAKrB,mBAAA,GAAsBrC,QAAA,CAAS,MAAM,KAAKiE,aAAA,CAAc,CAAC;IAE9D,IAAI,KAAKxB,OAAA,CAAQyB,WAAA,IAAe,KAAKzB,OAAA,CAAQyB,WAAA,GAAc,GAAG;MAC5D,KAAK5B,iBAAA,GAAoB6B,WAAA,CAAY,MAAM;QACzC,KAAK,KAAKT,OAAA,CAAQ;MACpB,GAAG,KAAKjB,OAAA,CAAQyB,WAAW;IAC7B;EACF;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAWA,MAAME,UAAsCC,KAAA,EAA0B;IACpE,IAAI,KAAK5B,OAAA,CAAQ6B,eAAA,KAAoB,cAAcD,KAAA,CAAME,WAAA,EAAa;MACpE,MAAM,IAAIC,KAAA,CAAM,8DAA8D;IAChF;IAGA,MAAM,KAAKxC,kBAAA,CAAmByC,SAAA,CAAU;IACxC,MAAMC,MAAA,GAAS,MAAM,KAAK7C,mBAAA,CAAoBuC,SAAA,CAAgBC,KAAK;IAGnE,KAAKtC,eAAA,CAAgB4C,YAAA,CAAaN,KAAA,CAAMO,OAAO;IAC/C,KAAKxB,IAAA,CAAK;IAGV,IAAIsB,MAAA,CAAOG,OAAA,EAAS,KAAKH,MAAA,CAAOG,OAAA,CAAQC,IAAA,CAAK,MAAM,KAAK1B,IAAA,CAAK,CAAC;IAC9D,OAAOsB,MAAA;EACT;EAAA;AAAA;AAAA;EAKAK,YAAYC,cAAA,EAAwB;IAClC,MAAMC,YAAA,GAAe,KAAKpD,mBAAA,CAAoBqD,eAAA,CAAgBF,cAAc;IAC5E,KAAKnD,mBAAA,CAAoBkD,WAAA,CAAYC,cAAc;IACnD,IAAIC,YAAA,EAAc,KAAKlD,eAAA,CAAgBoD,cAAA,CAAeF,YAAA,CAAaZ,KAAA,CAAMO,OAAO;IAChF,KAAKxB,IAAA,CAAK;EACZ;EAEA,MAAMgC,OAAOC,QAAA,EAAmC;IAC9C,IAAI;MACF,MAAM,KAAKvD,cAAA,CAAesD,MAAA,CAAOC,QAAQ;IAC3C,SAASC,GAAA,EAAK;MAKZ,KAAKlC,IAAA,CAAK;MACV,MAAMkC,GAAA;IACR;IAEA,KAAKtD,kBAAA,CAAmBuD,iBAAA,CAAkBF,QAAQ;IAClD,KAAKjC,IAAA,CAAK;EACZ;EAAA;EAGA,MAAMoC,qBACJ/C,OAAA,EACsC;IACtC,MAAMgD,KAAA,GAAQ,KAAK9C,YAAA;IACnB,MAAM,KAAKX,kBAAA,CAAmByC,SAAA,CAAU;IACxC,IAAI,KAAK7B,QAAA,IAAY6C,KAAA,KAAU,KAAK9C,YAAA,EAAc,OAAO,EAAC;IAC1D,MAAM+C,OAAA,GAAU,MAAM,KAAK7D,mBAAA,CAAoB2D,oBAAA,CAAqB/C,OAAO;IAC3E,IAAI,CAAC,KAAKG,QAAA,IAAY6C,KAAA,KAAU,KAAK9C,YAAA,EAAc,KAAKS,IAAA,CAAK;IAC7D,OAAOsC,OAAA;EACT;EAEAC,gBAAA,EAAoC;IAClC,OAAO,KAAKjD,YAAA;EACd;EAEQkD,eAAeC,KAAA,EAAyB;IAC9C,KAAKnD,YAAA,GAAexB,MAAA,CAAOC,MAAA,CAAO0E,KAAK;IACvC,WAAWhC,QAAA,IAAY,KAAKnC,cAAA,EAAgBmC,QAAA,CAAS;EACvD;EAAA;EAGAH,QAAA,EAAqC;IACnC,IAAI,KAAKd,QAAA,EAAU,OAAOkD,OAAA,CAAQC,OAAA,CAAQ,KAAKrD,YAAY;IAC3D,IAAI,KAAKG,UAAA,EAAY;MACnB,IAAI,KAAKA,UAAA,CAAWmD,OAAA,KAAY,GAAG,KAAKnD,UAAA,CAAWoD,QAAA,GAAW;MAC9D,OAAO,KAAKpD,UAAA,CAAWqD,OAAA;IACzB;IACA,MAAMT,KAAA,GAAQ,KAAK9C,YAAA;IACnB,MAAMwD,GAAA,GAAM;MAAEF,QAAA,EAAU;MAAOD,OAAA,EAAS;MAAGE,OAAA,EAASJ,OAAA,CAAQC,OAAA,CAAQ,KAAKrD,YAAY;IAAE;IACvF,KAAKG,UAAA,GAAasD,GAAA;IAClBA,GAAA,CAAID,OAAA,GAAUJ,OAAA,CAAQC,OAAA,CAAQ,EAAEjB,IAAA,CAAK,YAAY;MAC/C,IAAIxD,KAAA,GAAiB;MACrB,MAAM8E,MAAA,GAASA,CAAA,KAAM,CAAC,KAAKxD,QAAA,IAAY,KAAKD,YAAA,KAAiB8C,KAAA;MAC7D,GAAG;QACD,IAAI,CAACW,MAAA,CAAO,GAAG,OAAO,KAAK1D,YAAA;QAC3ByD,GAAA,CAAIF,QAAA,GAAW;QACf3E,KAAA,GAAQ;QACR,IAAI;UACF,IAAI,KAAKmB,OAAA,CAAQ6B,eAAA,KAAoB,YAAY;YAC/C,MAAMoB,OAAA,GAAU,MAAM,KAAKF,oBAAA,CAAqB;YAChD,MAAMa,QAAA,GAAWX,OAAA,CAAQY,MAAA,CACtB5B,MAAA,IACC,CAACA,MAAA,CAAO6B,EAAA,IACR,KAAK1E,mBAAA,CAAoBqD,eAAA,CAAgBR,MAAA,CAAOM,cAAc,KAC9D,CAAC,KAAKnD,mBAAA,CAAoB2E,sBAAA,CAAuB9B,MAAA,CAAOM,cAAc,CAC1E;YACA,IAAIqB,QAAA,CAASrC,MAAA,EACX1C,KAAA,GAAQ,IAAImF,cAAA,CACVJ,QAAA,CAASK,GAAA,CAAKC,OAAA,IAAYA,OAAA,CAAQrF,KAAK,GACvC,8DACF;UACJ,OAAO;YACL,MAAM,KAAKsF,QAAA,CAAS;cAAEC,KAAA,EAAOrG,aAAA,CAAcsG;YAAI,CAAC;UAClD;QACF,SAASC,MAAA,EAAQ;UACfzF,KAAA,GAAQyF,MAAA;QACV;MAEF,SAASX,MAAA,CAAO,KAAKD,GAAA,CAAIF,QAAA,IAAYE,GAAA,CAAIH,OAAA,OAAc;MACvD,IAAII,MAAA,CAAO,GAAG;QACZ,KAAKvD,UAAA,GAAa;QAClB,KAAK+C,cAAA,CAAe;UAAExE,UAAA,EAAY;UAAOC,KAAA,EAAOC,KAAA,KAAU;UAAMA;QAAM,CAAC;MACzE;MACA,OAAO,KAAKoB,YAAA;IACd,CAAC;IACD,KAAKkD,cAAA,CAAe;MAAE,GAAG,KAAKlD,YAAA;MAActB,UAAA,EAAY;IAAK,CAAC;IAC9D,OAAO+E,GAAA,CAAID,OAAA;EACb;EAAA;AAAA;AAAA;EAKA,MAAMU,SAASI,IAAA,EAAoB;IACjC,MAAMvB,KAAA,GAAQ,KAAK9C,YAAA;IACnB,MAAM,KAAKd,mBAAA,CAAoB+E,QAAA,CAASI,IAAI;IAC5C,IAAI,CAAC,KAAKpE,QAAA,IAAY6C,KAAA,KAAU,KAAK9C,YAAA,EAAc,KAAKS,IAAA,CAAK;EAC/D;EAAA;AAAA;AAAA;EAKA,MAAMa,cAAA,EAAgB;IACpB,MAAM,KAAKnC,cAAA,CAAemC,aAAA,CAAc;IACxC,KAAKb,IAAA,CAAK;EACZ;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EASA6D,mBAAmBrC,OAAA,EAAwC;IACzD,MAAMsC,OAAA,GAAgC,EAAC;IACvC,WAAW;MAAEC,EAAA;MAAIC;IAAM,KAAK,KAAK3F,eAAA,CAAgBsC,WAAA,CAAY,GAAG;MAC9D,IAAIa,OAAA,IAAWwC,KAAA,CAAMxC,OAAA,KAAYA,OAAA,EAAS;MAC1CsC,OAAA,CAAQG,IAAA,CAAK;QACXF,EAAA;QACAG,SAAA,EAAWF,KAAA,CAAME,SAAA;QACjB1C,OAAA,EAASwC,KAAA,CAAMxC,OAAA;QACf2C,OAAA,EAASH,KAAA,CAAMG,OAAA;QACfC,MAAA,EAAQJ,KAAA,CAAMI,MAAA;QACdC,SAAA,EAAWL,KAAA,CAAMK,SAAA,IAAa;QAC9BC,UAAA,EAAYN,KAAA,CAAMM,UAAA,IAAc;QAChCpG,KAAA,EAAO8F,KAAA,CAAM9F,KAAA,GAAU8F,KAAA,CAAM9F,KAAA,CAAgBqG,OAAA,IAAWC,MAAA,CAAOR,KAAA,CAAM9F,KAAK,IAAK;MACjF,CAAC;IACH;IACA,OAAO4F,OAAA;EACT;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAQAW,gBAAgBV,EAAA,EAAY;IAC1B,KAAK1F,eAAA,CAAgBqG,MAAA,CAAOX,EAAE;IAC9B,KAAK/D,IAAA,CAAK;EACZ;EAAA;EAGA2E,gBACEnD,OAAA,EACAoD,IAAA,EACe;IACf,OAAO,KAAKxG,eAAA,CAAgByG,GAAA,CAAI;MAAErD,OAAA;MAASoD;IAAK,CAAC;EACnD;EAAA;EAGA9C,gBAAgBiC,EAAA,EAAY;IAC1B,OAAO,KAAKtF,mBAAA,CAAoBqD,eAAA,CAAgBiC,EAAE;EACpD;EAAA;AAAA;AAAA;EAKAe,uBAAmDf,EAAA,EAA+B;IAChF,OAAO,KAAKtF,mBAAA,CAAoBqG,sBAAA,CAAwCf,EAAE;EAC5E;EAAA;AAAA;AAAA;AAAA;EAMA,MAAMgB,QACJnD,cAAA,EACAoD,IAAA,EAC4B;IAC5B,MAAM1D,MAAA,GAAS,MAAM,KAAK7C,mBAAA,CAAoBsG,OAAA,CAAyBnD,cAAA,EAAgBoD,IAAI;IAC3F,KAAKhF,IAAA,CAAK;IACV,OAAOsB,MAAA;EACT;EAAA;AAAA;AAAA;AAAA;EAMA,MAAM2D,aACJrD,cAAA,EACAsD,WAAA,EACAC,KAAA,EAC4B;IAC5B,MAAM7D,MAAA,GAAS,MAAM,KAAK7C,mBAAA,CAAoBwG,YAAA,CAC5CrD,cAAA,EACAsD,WAAA,EACAC,KACF;IACA,KAAKnF,IAAA,CAAK;IACV,OAAOsB,MAAA;EACT;EAAA;AAAA;AAAA;EAKA8D,YAAYxD,cAAA,EAAwB;IAClC,OAAO,KAAKnD,mBAAA,CAAoB2G,WAAA,CAAYxD,cAAc;EAC5D;EAAA;EAGA,MAAMyD,YAAYC,IAAA,EAA2C;IAC3D,MAAM,KAAK7G,mBAAA,CAAoB+E,QAAA,CAAS;MACtCC,KAAA,EAAOrG,aAAA,CAAcmI,IAAA;MACrBD;IACF,CAAC;IACD,KAAKtF,IAAA,CAAK;EACZ;EAAA;EAGAwF,eAAe/E,QAAA,EAAkC;IAC/C,KAAKnC,cAAA,CAAemH,GAAA,CAAIhF,QAAQ;IAChC,OAAO,MAAM;MACX,KAAKnC,cAAA,CAAeoH,MAAA,CAAOjF,QAAQ;IACrC;EACF;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAQAkF,wBAAwBlF,QAAA,EAA0D;IAChF,KAAKjC,sBAAA,CAAuBiH,GAAA,CAAIhF,QAAQ;IACxC,OAAO,MAAM;MACX,KAAKjC,sBAAA,CAAuBkH,MAAA,CAAOjF,QAAQ;IAC7C;EACF;EAAA;AAAA;AAAA;AAAA;AAAA;EAOAc,aAAaC,OAAA,EAAuB;IAClC,KAAK7C,eAAA,CAAgB4C,YAAA,CAAaC,OAAO;EAC3C;EAAA;EAGAO,eAAeP,OAAA,EAAuB;IACpC,KAAK7C,eAAA,CAAgBoD,cAAA,CAAeP,OAAO;EAC7C;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EASAoE,mBAAA,EAAqE;IACnE,OAAO,KAAKjH,eAAA,CAAgBiH,kBAAA,CAAmB;EACjD;EAAA;EAGQ5F,KAAA,EAAO;IAEb,WAAWS,QAAA,IAAY,KAAKnC,cAAA,EAAgBmC,QAAA,CAAS;IAErD,KAAK7B,kBAAA,CAAmBiH,YAAA,CAAa;IAErC,KAAKjH,kBAAA,CAAmBkH,eAAA,CAAgB;EAC1C;EAAA;EAGA1F,WAAA,EAAa;IACX,KAAKb,YAAA;IACL,KAAKE,UAAA,GAAa;IAClB,KAAKH,YAAA,GAAezB,gBAAA;IAEpB,KAAKc,eAAA,CAAgBoH,UAAA,CAAW;IAEhC,KAAKtH,mBAAA,CAAoBuH,KAAA,CAAM;IAC/B,KAAK5H,eAAA,CAAgB4H,KAAA,CAAM;IAC3B,KAAK3H,eAAA,CAAgB2H,KAAA,CAAM;IAC3B,KAAKtH,cAAA,CAAeuH,sBAAA,CAAuB;IAE3C,KAAKjG,IAAA,CAAK;EACZ;EAAA;EAGA,MAAMkG,QAAA,EAAU;IACd,KAAK1G,QAAA,GAAW;IAEhB,KAAKlB,cAAA,CAAe0H,KAAA,CAAM;IAC1B,KAAKxH,sBAAA,CAAuBwH,KAAA,CAAM;IAGlC,KAAK5F,UAAA,CAAW;IAGhB,KAAK/B,eAAA,CAAgB6H,OAAA,CAAQ;IAC7B,KAAKxH,cAAA,CAAewH,OAAA,CAAQ;IAC5B,KAAKvH,eAAA,CAAgBuH,OAAA,CAAQ;IAC7B,KAAKtH,kBAAA,CAAmBuH,OAAA,CAAQ;IAChC,KAAKtH,kBAAA,CAAmBmH,KAAA,CAAM;IAG9B,KAAKlH,YAAA,GAAe;IACpB,KAAKC,kBAAA,GAAqB;IAC1B,KAAKC,qBAAA,GAAwB;IAC7B,KAAKC,mBAAA,GAAsB;IAC3B,KAAKH,YAAA,GAAe;IACpB,KAAKC,kBAAA,GAAqB;IAC1B,KAAKC,qBAAA,GAAwB;IAC7B,KAAKC,mBAAA,GAAsB;IAE3B,IAAI,KAAKC,iBAAA,EAAmB;MAC1BkH,aAAA,CAAc,KAAKlH,iBAAiB;MACpC,KAAKA,iBAAA,GAAoB;IAC3B;EACF;EAAA;AAAA;AAAA;AAAA;EAMAmH,QAAA,EAA4B;IAC1B,MAAMC,OAAA,GAAU,KAAK7H,mBAAA,CAAoB8H,mBAAA,CAAoB;IAC7D,MAAMC,GAAA,GAAM,KAAK/H,mBAAA,CAAoBgI,qBAAA,CAAsB;IAE3D,MAAMC,aAAA,GAAqC,EAAC;IAC5C,WAAW,GAAGC,GAAG,KAAKL,OAAA,EAAS;MAC7B,MAAMM,UAAA,GAAaJ,GAAA,CAAI1E,eAAA,CAAgB6E,GAAA,CAAI5C,EAAE;MAC7C,MAAM8C,QAAA,GAAWL,GAAA,CAAIpB,WAAA,CAAYuB,GAAA,CAAI5C,EAAE;MACvC,MAAM+C,OAAA,GAAUN,GAAA,CAAIO,cAAA,CAAeJ,GAAA,CAAI5C,EAAE;MAEzC,MAAMiD,QAAA,GAA8B;QAClCjD,EAAA,EAAI4C,GAAA,CAAI5C,EAAA;QACR9C,KAAA,EAAO0F,GAAA,CAAI1F,KAAA;QACXgG,QAAA,EAAUN,GAAA,CAAIO,MAAA,CAAOtG,MAAA;QACrBuG,cAAA,EAAgBR,GAAA,CAAIS,UAAA,EAAYC,IAAA,IAAQ;QACxCC,UAAA,EAAYX,GAAA,CAAIW,UAAA;QAChBC,MAAA,EAAQZ,GAAA,CAAIY,MAAA;QACZtJ,KAAA,EAAO0I,GAAA,CAAI1I,KAAA;QACXuJ,QAAA,EAAU,KAAK/I,mBAAA,CAAoB2E,sBAAA,CAAuBuD,GAAA,CAAI5C,EAAE;QAChE8C;MACF;MAEA,IAAID,UAAA,EAAY;QACd,MAAMa,EAAA,GAAKb,UAAA,CAAWc,mBAAA,CAAoB;QAC1CV,QAAA,CAASW,gBAAA,GAAmB;UAC1BT,MAAA,EAAQO,EAAA,CAAGP,MAAA;UACXU,UAAA,EAAYH,EAAA,CAAGG,UAAA;UACfC,OAAA,EAASJ,EAAA,CAAGI,OAAA;UACZC,UAAA,EAAYL,EAAA,CAAGK,UAAA;UACfC,aAAA,EAAeN,EAAA,CAAGM,aAAA,EAAeC,WAAA,CAAY;UAC7ClB;QACF;MACF;MAEAJ,aAAA,CAAczC,IAAA,CAAK+C,QAAQ;IAC7B;IAEA,MAAMiB,UAAA,GAAa,KAAK7J,eAAA,CAAgB8J,QAAA,CAAS;IAEjD,MAAMC,UAAA,GAAa,KAAK9J,eAAA,CAAgB+J,aAAA,CAAc;IACtD,MAAMC,OAAA,GAAgC,EAAC;IACvC,MAAMC,SAAA,GAAkC,EAAC;IACzC,MAAMC,MAAA,GAA+B,EAAC;IAEtC,WAAW;MAAExE,EAAA;MAAIC;IAAM,KAAKmE,UAAA,EAAY;MACtC,MAAMK,UAAA,GAAiC;QACrCzE,EAAA;QACAG,SAAA,EAAWF,KAAA,CAAME,SAAA;QACjB1C,OAAA,EAASwC,KAAA,CAAMxC,OAAA;QACf2C,OAAA,EAASH,KAAA,CAAMG,OAAA;QACfC,MAAA,EAAQJ,KAAA,CAAMI,MAAA;QACdC,SAAA,EAAWL,KAAA,CAAMK,SAAA,IAAa;QAC9BC,UAAA,EAAYN,KAAA,CAAMM,UAAA,IAAc;QAChCpG,KAAA,EAAO8F,KAAA,CAAM9F,KAAA,GAAU8F,KAAA,CAAM9F,KAAA,CAAgBqG,OAAA,IAAWC,MAAA,CAAOR,KAAA,CAAM9F,KAAK,IAAK;MACjF;MACA,IAAI8F,KAAA,CAAMI,MAAA,KAAW/G,MAAA,CAAOoL,OAAA,EAASJ,OAAA,CAAQpE,IAAA,CAAKuE,UAAU,WACnDxE,KAAA,CAAMI,MAAA,KAAW/G,MAAA,CAAOqL,SAAA,EAAWJ,SAAA,CAAUrE,IAAA,CAAKuE,UAAU,WAC5DxE,KAAA,CAAMI,MAAA,KAAW/G,MAAA,CAAOsL,MAAA,EAAQJ,MAAA,CAAOtE,IAAA,CAAKuE,UAAU;IACjE;IAEA,OAAO;MACL9B,aAAA;MACAtI,eAAA,EAAiB6J,UAAA;MACjB5J,eAAA,EAAiB;QAAEgK,OAAA;QAASC,SAAA;QAAWC;MAAO;MAC9CK,UAAA,EAAY;QACVC,eAAA,EAAiB,KAAKlK,eAAA,CAAgBmK,cAAA,CAAe;QACrDC,QAAA,EAAU,KAAKnK,kBAAA,CAAmBoK,WAAA,CAAY;QAAA;QAAA;QAG9CC,QAAA,EAAU,OAAOC,SAAA,KAAc,eAAeA,SAAA,CAAUC,MAAA,KAAW;MACrE;IACF;EACF;EAAA;AAAA;AAAA;EAKAJ,SAAA,EAAoB;IAClB,OAAO,KAAKnK,kBAAA,CAAmBoK,WAAA,CAAY;EAC7C;AACF","ignoreList":[]}
@@ -48,6 +48,11 @@ function getBrowserJournalStorage() {
48
48
  return void 0;
49
49
  }
50
50
  }
51
+ var idleCatchUpState = Object.freeze({
52
+ refreshing: false,
53
+ stale: false,
54
+ error: null
55
+ });
51
56
  var SyncModule = /* @__PURE__ */function () {
52
57
  "use strict";
53
58
 
@@ -72,6 +77,10 @@ var SyncModule = /* @__PURE__ */function () {
72
77
  _define_property(this, "db", void 0);
73
78
  _define_property(this, "realtime", void 0);
74
79
  _define_property(this, "options", void 0);
80
+ _define_property(this, "catchUpState", idleCatchUpState);
81
+ _define_property(this, "catchUpEpoch", 0);
82
+ _define_property(this, "disposed", false);
83
+ _define_property(this, "catchUpRun", void 0);
75
84
  this.db = db;
76
85
  this.realtime = realtime;
77
86
  this.options = options;
@@ -103,9 +112,7 @@ var SyncModule = /* @__PURE__ */function () {
103
112
  return _this.resetCache();
104
113
  },
105
114
  onBackfillAll: function onBackfillAll() {
106
- return _this.backfill({
107
- scope: BackfillScope.All
108
- });
115
+ void _this.catchUp();
109
116
  },
110
117
  // Realtime reconciliation mutates cache/membership outside the public
111
118
  // mutate/backfill entry points — bridge those changes to store listeners.
@@ -153,26 +160,20 @@ var SyncModule = /* @__PURE__ */function () {
153
160
  function setupWindowEvents() {
154
161
  var _this = this;
155
162
  this.cleanupFocus = onAppFocus(function () {
156
- return _this.backfill({
157
- scope: BackfillScope.All
158
- });
163
+ void _this.catchUp();
159
164
  });
160
165
  this.cleanupFocusReplay = onAppFocus(function () {
161
166
  if (_this.mutationJournal.listPending().length > 0) void _this.replayPending();
162
167
  });
163
168
  this.cleanupOnlineBackfill = onOnline(function () {
164
- return _this.backfill({
165
- scope: BackfillScope.All
166
- });
169
+ void _this.catchUp();
167
170
  });
168
171
  this.cleanupOnlineReplay = onOnline(function () {
169
172
  return _this.replayPending();
170
173
  });
171
174
  if (this.options.cdcInterval && this.options.cdcInterval > 0) {
172
175
  this.cdcIntervalHandle = setInterval(function () {
173
- return _this.backfill({
174
- scope: BackfillScope.All
175
- });
176
+ void _this.catchUp();
176
177
  }, this.options.cdcInterval);
177
178
  }
178
179
  })
@@ -190,6 +191,9 @@ var SyncModule = /* @__PURE__ */function () {
190
191
  */
191
192
  async function subscribe(query) {
192
193
  var _this = this;
194
+ if (this.options.catchUpStrategy === "snapshot" && query.progressive) {
195
+ throw new Error("Snapshot catch-up does not support progressive subscriptions");
196
+ }
193
197
  await this.persistenceManager.whenReady();
194
198
  var result = await this.subscriptionManager.subscribe(query);
195
199
  this.realtimeHandler.watchDoctype(query.doctype);
@@ -222,6 +226,111 @@ var SyncModule = /* @__PURE__ */function () {
222
226
  this.persistenceManager.broadcastMutation(mutation);
223
227
  this.emit();
224
228
  }
229
+ }, {
230
+ key: "refreshSubscriptions",
231
+ value: (/** Refresh active query snapshots in place. Failures retain the last committed data. */
232
+ async function refreshSubscriptions(options) {
233
+ var epoch = this.catchUpEpoch;
234
+ await this.persistenceManager.whenReady();
235
+ if (this.disposed || epoch !== this.catchUpEpoch) return [];
236
+ var results = await this.subscriptionManager.refreshSubscriptions(options);
237
+ if (!this.disposed && epoch === this.catchUpEpoch) this.emit();
238
+ return results;
239
+ })
240
+ }, {
241
+ key: "getCatchUpState",
242
+ value: function getCatchUpState() {
243
+ return this.catchUpState;
244
+ }
245
+ }, {
246
+ key: "publishCatchUp",
247
+ value: function publishCatchUp(state) {
248
+ this.catchUpState = Object.freeze(state);
249
+ var _iteratorNormalCompletion = true,
250
+ _didIteratorError = false,
251
+ _iteratorError = void 0;
252
+ try {
253
+ for (var _iterator = this.storeListeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
254
+ var listener = _step.value;
255
+ listener();
256
+ }
257
+ } catch (err) {
258
+ _didIteratorError = true;
259
+ _iteratorError = err;
260
+ } finally {
261
+ try {
262
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
263
+ _iterator.return();
264
+ }
265
+ } finally {
266
+ if (_didIteratorError) {
267
+ throw _iteratorError;
268
+ }
269
+ }
270
+ }
271
+ }
272
+ }, {
273
+ /** Observes lifecycle/retry failures in state; explicit backfill still rejects. */
274
+ key: "catchUp",
275
+ value: function catchUp() {
276
+ var _this = this;
277
+ if (this.disposed) return Promise.resolve(this.catchUpState);
278
+ if (this.catchUpRun) {
279
+ if (this.catchUpRun.attempt === 0) this.catchUpRun.trailing = true;
280
+ return this.catchUpRun.promise;
281
+ }
282
+ var epoch = this.catchUpEpoch;
283
+ var run = {
284
+ trailing: false,
285
+ attempt: 0,
286
+ promise: Promise.resolve(this.catchUpState)
287
+ };
288
+ this.catchUpRun = run;
289
+ run.promise = Promise.resolve().then(async function () {
290
+ var error = null;
291
+ var active = function active2() {
292
+ return !_this.disposed && _this.catchUpEpoch === epoch;
293
+ };
294
+ do {
295
+ if (!active()) return _this.catchUpState;
296
+ run.trailing = false;
297
+ error = null;
298
+ try {
299
+ if (_this.options.catchUpStrategy === "snapshot") {
300
+ var results = await _this.refreshSubscriptions();
301
+ var failures = results.filter(function (result) {
302
+ return !result.ok && _this.subscriptionManager.getSubscription(result.subscriptionId) && !_this.subscriptionManager.isRestoredSubscription(result.subscriptionId);
303
+ });
304
+ if (failures.length) error = new AggregateError(failures.map(function (failure) {
305
+ return failure.error;
306
+ }), "Some subscriptions could not refresh. Showing previous data.");
307
+ } else {
308
+ await _this.backfill({
309
+ scope: BackfillScope.All
310
+ });
311
+ }
312
+ } catch (caught) {
313
+ error = caught;
314
+ }
315
+ } while (
316
+ // Bound a burst to one trailing read, including triggers during that read.
317
+ active() && run.trailing && run.attempt++ === 0);
318
+ if (active()) {
319
+ _this.catchUpRun = void 0;
320
+ _this.publishCatchUp({
321
+ refreshing: false,
322
+ stale: error !== null,
323
+ error
324
+ });
325
+ }
326
+ return _this.catchUpState;
327
+ });
328
+ this.publishCatchUp({
329
+ ...this.catchUpState,
330
+ refreshing: true
331
+ });
332
+ return run.promise;
333
+ }
225
334
  }, {
226
335
  key: "backfill",
227
336
  value: (
@@ -229,8 +338,9 @@ var SyncModule = /* @__PURE__ */function () {
229
338
  * Reconciles local state by fetching changes since stored cursors.
230
339
  */
231
340
  async function backfill(args) {
341
+ var epoch = this.catchUpEpoch;
232
342
  await this.subscriptionManager.backfill(args);
233
- this.emit();
343
+ if (!this.disposed && epoch === this.catchUpEpoch) this.emit();
234
344
  })
235
345
  }, {
236
346
  key: "replayPending",
@@ -454,6 +564,9 @@ var SyncModule = /* @__PURE__ */function () {
454
564
  /** Clears subscriptions, cache, journal, and temp id mappings. */
455
565
  key: "resetCache",
456
566
  value: function resetCache() {
567
+ this.catchUpEpoch++;
568
+ this.catchUpRun = void 0;
569
+ this.catchUpState = idleCatchUpState;
457
570
  this.realtimeHandler.unwatchAll();
458
571
  this.subscriptionManager.clear();
459
572
  this.normalizedCache.clear();
@@ -466,6 +579,7 @@ var SyncModule = /* @__PURE__ */function () {
466
579
  value: (/** Cleanup and dispose of resources */
467
580
  async function dispose() {
468
581
  var _this_cleanupFocus, _this, _this_cleanupFocusReplay, _this1, _this_cleanupOnlineBackfill, _this2, _this_cleanupOnlineReplay, _this3;
582
+ this.disposed = true;
469
583
  this.storeListeners.clear();
470
584
  this.realtimeEventListeners.clear();
471
585
  this.resetCache();
@@ -1 +1 @@
1
- {"version":3,"names":["onAppFocus","onOnline","MutationEngine","MutationJournal","NormalizedCache","PersistenceManager","RealtimeHandler","RehydrationManager","SubscriptionManager","BackfillScope","Status","_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","getBrowserJournalStorage","window","document","storage","localStorage","getItem","setItem","unused","SyncModule","SyncModule2","db","realtime","_this","options","arguments","Set","normalizedCache","maxSize","maxCacheSize","mutationJournal","ttl","mutationTTL","enableAutoCleanup","subscriptionManager","rehydrationManager","emit","mutationEngine","onStoreChange","realtimeOptions","onResetCache","resetCache","onBackfillAll","backfill","scope","All","onRealtimeEvent","event","_this_options_onRealtimeEvent","_this_options","call","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","realtimeEventListeners","Symbol","iterator","_step","next","done","listener","err","return","realtimeHandler","persistenceManager","setupWindowEvents","cleanupFocus","cleanupFocusReplay","listPending","replayPending","cleanupOnlineBackfill","cleanupOnlineReplay","cdcInterval","cdcIntervalHandle","setInterval","subscribe","query","whenReady","result","watchDoctype","doctype","refresh","then","unsubscribe","subscriptionId","subscription","getSubscription","unwatchDoctype","mutate","mutation","broadcastMutation","args","getMutationEntries","entries","id","entry","_entry_createdAt","_entry_retryCount","_entry_error_message","push","operation","docname","status","createdAt","retryCount","error","message","String","dismissMutation","remove","getDocFromCache","name","get","getDocsForSubscription","getPage","page","getNextBatch","cursorDocId","limit","getPageInfo","refetchDocs","docs","Docs","subscribeStore","storeListeners","add","delete","subscribeRealtimeEvents"],"sources":["../../../src/sync/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["onAppFocus","onOnline","MutationEngine","MutationJournal","NormalizedCache","PersistenceManager","RealtimeHandler","RehydrationManager","SubscriptionManager","BackfillScope","Status","_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","getBrowserJournalStorage","window","document","storage","localStorage","getItem","setItem","unused","idleCatchUpState","freeze","refreshing","stale","error","SyncModule","SyncModule2","db","realtime","_this","options","arguments","Set","normalizedCache","maxSize","maxCacheSize","mutationJournal","ttl","mutationTTL","enableAutoCleanup","subscriptionManager","rehydrationManager","emit","mutationEngine","onStoreChange","realtimeOptions","onResetCache","resetCache","onBackfillAll","catchUp","onRealtimeEvent","event","_this_options_onRealtimeEvent","_this_options","call","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","realtimeEventListeners","Symbol","iterator","_step","next","done","listener","err","return","realtimeHandler","persistenceManager","setupWindowEvents","cleanupFocus","cleanupFocusReplay","listPending","replayPending","cleanupOnlineBackfill","cleanupOnlineReplay","cdcInterval","cdcIntervalHandle","setInterval","subscribe","query","catchUpStrategy","progressive","Error","whenReady","result","watchDoctype","doctype","refresh","then","unsubscribe","subscriptionId","subscription","getSubscription","unwatchDoctype","mutate","mutation","broadcastMutation","refreshSubscriptions","epoch","catchUpEpoch","disposed","results","getCatchUpState","catchUpState","publishCatchUp","state","storeListeners","Promise","resolve","catchUpRun","attempt","trailing","promise","run","active","active2","failures","filter","ok","isRestoredSubscription","AggregateError","map","failure","backfill","scope","All","caught","args","getMutationEntries","entries","id","entry","_entry_createdAt","_entry_retryCount","_entry_error_message","push","operation","docname","status","createdAt","retryCount","message","String","dismissMutation","remove","getDocFromCache","name","get","getDocsForSubscription","getPage","page","getNextBatch","cursorDocId","limit","getPageInfo","refetchDocs","docs","Docs"],"sources":["../../../src/sync/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@ import { extractSingleName, matchesFilters } from "./filters.mjs";
3
3
  import { BackfillScope, defaultPageLength, Order } from "./types.mjs";
4
4
  import { VirtualPageManager } from "./virtualPageManager.mjs";
5
5
  class SubscriptionManager {
6
+ refreshes = /* @__PURE__ */new Map();
6
7
  subscriptions = /* @__PURE__ */new Map();
7
8
  virtualPageManager;
8
9
  backfillManager;
@@ -55,6 +56,7 @@ class SubscriptionManager {
55
56
  cursor,
56
57
  checkpoint
57
58
  } = await this.fetchInitialRows(query);
59
+ this.seedRows(query, rows);
58
60
  const subscription = {
59
61
  id: subscriptionId,
60
62
  query,
@@ -69,8 +71,8 @@ class SubscriptionManager {
69
71
  subscription.boundaries = {
70
72
  firstItem: rows[0],
71
73
  lastItem: rows[rows.length - 1],
72
- offset: query.limitStart || 0,
73
- pageSize: query.limit || 20
74
+ offset: query.limitStart ?? 0,
75
+ pageSize: query.limit ?? defaultPageLength
74
76
  };
75
77
  }
76
78
  subscription.metadata = {
@@ -89,9 +91,89 @@ class SubscriptionManager {
89
91
  checkpoint
90
92
  };
91
93
  }
94
+ async refreshSubscriptions(options = {}) {
95
+ const subscriptions = [...this.subscriptions.values()].filter(subscription => (this.subRefCounts.get(subscription.id) ?? 0) > 0 && (!options.doctypes || options.doctypes.includes(subscription.query.doctype)));
96
+ return Promise.all(subscriptions.map(subscription => this.refreshSubscription(subscription)));
97
+ }
98
+ refreshSubscription(subscription) {
99
+ const subscriptionId = subscription.id;
100
+ if (subscription.query.progressive) {
101
+ return Promise.resolve({
102
+ subscriptionId,
103
+ ok: false,
104
+ error: new Error("Snapshot refresh does not support progressive subscriptions")
105
+ });
106
+ }
107
+ const existing = this.refreshes.get(subscriptionId);
108
+ if (existing) {
109
+ existing.requested = true;
110
+ return existing.promise;
111
+ }
112
+ const state = {
113
+ requested: false,
114
+ promise: Promise.resolve({
115
+ subscriptionId,
116
+ ok: false
117
+ })
118
+ };
119
+ const active = () => this.refreshes.get(subscriptionId) === state && this.subscriptions.get(subscriptionId) === subscription && (this.subRefCounts.get(subscriptionId) ?? 0) > 0;
120
+ state.promise = Promise.resolve().then(async () => {
121
+ try {
122
+ while (true) {
123
+ state.requested = false;
124
+ try {
125
+ const {
126
+ rows,
127
+ cursor,
128
+ checkpoint
129
+ } = await this.fetchInitialRows(subscription.query);
130
+ if (!active()) {
131
+ return {
132
+ subscriptionId,
133
+ ok: false,
134
+ error: new Error("Subscription is no longer active")
135
+ };
136
+ }
137
+ if (state.requested) continue;
138
+ this.seedRows(subscription.query, rows);
139
+ subscription.docIds = rows.map(row => row.name);
140
+ subscription.cursor = cursor;
141
+ subscription.checkpoint = checkpoint;
142
+ subscription.boundaries = rows.length ? {
143
+ firstItem: rows[0],
144
+ lastItem: rows[rows.length - 1],
145
+ offset: subscription.query.limitStart ?? 0,
146
+ pageSize: subscription.query.limit ?? defaultPageLength
147
+ } : void 0;
148
+ subscription.metadata = {
149
+ itemsBeforePage: 0,
150
+ itemsAfterPage: 0
151
+ };
152
+ subscription.stale = false;
153
+ return {
154
+ subscriptionId,
155
+ ok: true
156
+ };
157
+ } catch (error) {
158
+ if (active() && state.requested) continue;
159
+ if (active()) subscription.stale = true;
160
+ return {
161
+ subscriptionId,
162
+ ok: false,
163
+ error
164
+ };
165
+ }
166
+ }
167
+ } finally {
168
+ if (this.refreshes.get(subscriptionId) === state) this.refreshes.delete(subscriptionId);
169
+ }
170
+ });
171
+ this.refreshes.set(subscriptionId, state);
172
+ return state.promise;
173
+ }
92
174
  /**
93
175
  * Performs the initial subscription fetch (single doc via getDoc, lists via
94
- * getDocList), seeds the normalized cache, and computes the CDC checkpoint
176
+ * getDocList) and computes the CDC checkpoint
95
177
  * as the max `modified` across returned rows. Shared by fresh subscribes
96
178
  * and adopted-subscription refreshes so both have identical semantics.
97
179
  */
@@ -129,10 +211,6 @@ class SubscriptionManager {
129
211
  rows = response;
130
212
  }
131
213
  }
132
- for (const row of rows) {
133
- if (!row.doctype) row.doctype = query.doctype;
134
- this.normalizedCache.upsert(row);
135
- }
136
214
  let checkpoint = void 0;
137
215
  for (const row of rows) {
138
216
  if (!row.modified) continue;
@@ -144,6 +222,12 @@ class SubscriptionManager {
144
222
  checkpoint
145
223
  };
146
224
  }
225
+ seedRows(query, rows) {
226
+ for (const row of rows) {
227
+ if (!row.doctype) row.doctype = query.doctype;
228
+ this.normalizedCache.upsert(row);
229
+ }
230
+ }
147
231
  /**
148
232
  * Re-adopts a subscription restored from a persisted snapshot when an
149
233
  * identical query subscribes: the cached membership renders immediately and
@@ -161,7 +245,7 @@ class SubscriptionManager {
161
245
  if (!subscription) return void 0;
162
246
  this.queryKeyToSubId.set(queryKey, restoredId);
163
247
  this.subRefCounts.set(restoredId, 1);
164
- const refresh = this.refreshAdoptedSubscription(subscription);
248
+ const refresh = this.refreshSubscription(subscription);
165
249
  const rows = this.getDocsForSubscription(restoredId);
166
250
  return {
167
251
  subscriptionId: restoredId,
@@ -170,48 +254,6 @@ class SubscriptionManager {
170
254
  refresh
171
255
  };
172
256
  }
173
- /**
174
- * Network refresh for an adopted subscription with fresh-subscribe
175
- * semantics: an authoritative page fetch replaces membership and recomputes
176
- * the checkpoint (identical to what a brand-new subscribe would produce).
177
- * On failure (offline) the cached membership and the restored CDC
178
- * checkpoint are kept and the subscription is marked stale — the next
179
- * backfill trigger drains changes from that checkpoint. Never rejects.
180
- */
181
- async refreshAdoptedSubscription(subscription) {
182
- try {
183
- const {
184
- rows,
185
- cursor,
186
- checkpoint
187
- } = await this.fetchInitialRows(subscription.query);
188
- subscription.checkpoint = checkpoint;
189
- subscription.cursor = cursor;
190
- subscription.docIds = rows.map(row => row.name);
191
- if (rows.length > 0) {
192
- subscription.boundaries = {
193
- firstItem: rows[0],
194
- lastItem: rows[rows.length - 1],
195
- offset: subscription.query.limitStart || 0,
196
- pageSize: subscription.query.limit || 20
197
- };
198
- }
199
- subscription.metadata = {
200
- itemsBeforePage: 0,
201
- itemsAfterPage: 0
202
- };
203
- subscription.stale = false;
204
- return {
205
- ok: true
206
- };
207
- } catch (error) {
208
- subscription.stale = true;
209
- return {
210
- ok: false,
211
- error
212
- };
213
- }
214
- }
215
257
  /**
216
258
  * Registers a subscription restored from a persisted snapshot. Restored
217
259
  * subscriptions are dormant: they hold the persisted query, CDC checkpoint,
@@ -286,6 +328,7 @@ class SubscriptionManager {
286
328
  this.subRefCounts.set(subscriptionId, refCount);
287
329
  return;
288
330
  }
331
+ this.refreshes.delete(subscriptionId);
289
332
  this.subRefCounts.delete(subscriptionId);
290
333
  let queryKey;
291
334
  for (const [key, id] of this.queryKeyToSubId) {
@@ -611,6 +654,7 @@ class SubscriptionManager {
611
654
  return name1 < name2 ? -1 : name1 > name2 ? 1 : 0;
612
655
  }
613
656
  clear() {
657
+ this.refreshes.clear();
614
658
  this.subscriptions.clear();
615
659
  this.queryKeyToSubId.clear();
616
660
  this.subRefCounts.clear();