@unicitylabs/sphere-sdk 0.9.1-dev.8 → 0.9.1-dev.9

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.
@@ -5059,7 +5059,10 @@ var WalletApiTokenStorageProvider = class {
5059
5059
  view = /* @__PURE__ */ new Map();
5060
5060
  /**
5061
5061
  * Empty-import protection (§5.1): no removal is ever pushed before this
5062
- * flips on the first successful inventory load.
5062
+ * flips on the first successful inventory load. Doubles as the per-session
5063
+ * first-sync flag (#521): while false, `syncInventory` full-pulls even with
5064
+ * a warm persisted cursor — the view Map is process-lifetime, so a reloaded
5065
+ * instance (tab refresh) must rebuild it before deltas can resume.
5063
5066
  */
5064
5067
  hadSuccessfulLoad = false;
5065
5068
  constructor(config) {
@@ -5180,7 +5183,7 @@ var WalletApiTokenStorageProvider = class {
5180
5183
  /** Converge the local view with the server (delta when possible). */
5181
5184
  async syncInventory() {
5182
5185
  const cursor = await this.readCursor();
5183
- if (cursor === null) {
5186
+ if (cursor === null || !this.hadSuccessfulLoad) {
5184
5187
  await this.fullPull();
5185
5188
  } else if (await this.deltaLoop(cursor)) {
5186
5189
  await this.handleSyncEpochChange();