{
  "version": 3,
  "sources": ["../../src/methods/initApp/helpers/waitForStoreRehydration.ts"],
  "sourcesContent": ["import { REHYDRATE_STORE_TIMEOUT } from 'constants/storage.constants';\nimport { defaultStorageCallback, StorageCallback } from 'store/storage';\nimport { StoreApi } from 'store/store';\n\nconst REHYDRATE_TIMEOUT_SECONDS = REHYDRATE_STORE_TIMEOUT / 1000;\n\nexport async function waitForStoreRehydration({\n  store,\n  getStorageCallback\n}: {\n  store: StoreApi;\n  getStorageCallback: StorageCallback;\n}): Promise<void> {\n  // Wait for store rehydration when using async storage (like React Native AsyncStorage)\n  // This ensures the store is fully populated before restoreProvider() executes\n  if (getStorageCallback !== defaultStorageCallback) {\n    try {\n      await new Promise<void>((resolve, reject) => {\n        if (store.persist.hasHydrated()) {\n          resolve();\n        }\n\n        store.persist.onFinishHydration(() => {\n          resolve();\n        });\n\n        setTimeout(() => {\n          reject();\n        }, REHYDRATE_STORE_TIMEOUT);\n      });\n    } catch (error: any) {\n      console.warn(\n        `Store rehydration timed out after ${REHYDRATE_TIMEOUT_SECONDS} seconds. Continuing initialization...`,\n        error?.message\n      );\n    }\n  }\n}\n"],
  "mappings": "kFAIA,IAAMA,EAA4BC,EAA0B,IAE5D,eAAsBC,EAAwB,CAC5C,MAAAC,EACA,mBAAAC,CACF,EAGkB,CAGhB,GAAIA,IAAuBC,EACzB,GAAI,CACF,MAAM,IAAI,QAAc,CAACC,EAASC,IAAW,CACvCJ,EAAM,QAAQ,YAAY,GAC5BG,EAAQ,EAGVH,EAAM,QAAQ,kBAAkB,IAAM,CACpCG,EAAQ,CACV,CAAC,EAED,WAAW,IAAM,CACfC,EAAO,CACT,EAAGN,CAAuB,CAC5B,CAAC,CACH,OAASO,EAAY,CACnB,QAAQ,KACN,qCAAqCR,CAAyB,yCAC9DQ,GAAO,OACT,CACF,CAEJ",
  "names": ["REHYDRATE_TIMEOUT_SECONDS", "REHYDRATE_STORE_TIMEOUT", "waitForStoreRehydration", "store", "getStorageCallback", "defaultStorageCallback", "resolve", "reject", "error"]
}
