@kinde-oss/kinde-auth-react
Version:
Kinde React SDK for authentication
2 lines (1 loc) • 1.5 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./utils.cjs");let i;async function a(){let o=0;for(;!i&&o<20;)await new Promise(e=>setTimeout(e,100)),o++}class c extends s.SessionBase{asyncStore=!0;constructor(){super(),this.loadExpoStore()}async loadExpoStore(){try{i=await Promise.resolve().then(()=>require("./js-utils-CDTLCo61.cjs"))}catch(e){console.error("Error loading dependency expo storage:",e)}}async destroySession(){const e=Object.values(s.StorageKeys);await Promise.all(e.map(t=>this.removeSessionItem(t))),this.notifyListeners()}async setSessionItem(e,t){if(await a(),await this.removeSessionItem(e),typeof t=="string"){const r=s.splitString(t,Math.min(s.storageSettings.maxLength,2048));await Promise.all(r.map((n,g)=>i.setItemAsync(`${s.storageSettings.keyPrefix}${e}${g}`,n))),this.notifyListeners();return}else throw new Error("Item value must be a string")}async getSessionItem(e){await a();const t=[];let r=0,n=await i.getItemAsync(`${s.storageSettings.keyPrefix}${String(e)}${r}`);for(;n;)t.push(n),r++,n=await i.getItemAsync(`${s.storageSettings.keyPrefix}${String(e)}${r}`);return t.join("")||null}async removeSessionItem(e){await a();let t=0,r=await i.getItemAsync(`${s.storageSettings.keyPrefix}${String(e)}${t}`);for(;r;)await i.deleteItemAsync(`${s.storageSettings.keyPrefix}${String(e)}${t}`),t++,r=await i.getItemAsync(`${s.storageSettings.keyPrefix}${String(e)}${t}`);this.notifyListeners()}}exports.ExpoSecureStore=c;