{"version":3,"file":"StepStore.DXwvUb0F.mjs","names":[],"sources":["https:/framerusercontent.com/modules/iAifiruVQ3lsCiWjQy2M/8iGe0KayiP2iZmCitmZW/StepStore.js"],"sourcesContent":["// StepStore.ts\nconst STORAGE_KEY=\"StepStore.v1\";const ENABLE_STORAGE=true;const state={currentStep:0,data:{}};const listeners=new Set;let hydrated=false;let storageAvailable=null;function canUseStorage(){if(!ENABLE_STORAGE)return false;if(typeof window===\"undefined\")return false;if(storageAvailable!==null)return storageAvailable;try{const testKey=\"__stepstore_test__\";window.localStorage.setItem(testKey,\"1\");window.localStorage.removeItem(testKey);storageAvailable=true;}catch{storageAvailable=false;}return storageAvailable;}function safeParse(json){if(!json)return null;try{const parsed=JSON.parse(json);if(!parsed||typeof parsed!==\"object\")return null;return{currentStep:parsed.currentStep??0,data:parsed.data??{}};}catch{return null;}}function hydrateOnce(){if(hydrated)return;hydrated=true;if(!canUseStorage())return;try{const saved=safeParse(window.localStorage.getItem(STORAGE_KEY));if(!saved)return;state.currentStep=saved.currentStep;state.data=saved.data??{};}catch{// storage blocked in this context\n}}function persist(){if(!canUseStorage())return;try{window.localStorage.setItem(STORAGE_KEY,JSON.stringify({currentStep:state.currentStep,data:state.data}));}catch{// ignore\n}}function emit(){persist();const snapshot={...state,data:{...state.data}};for(const l of listeners)l(snapshot);}export const StepStore={getStep(){hydrateOnce();return state.currentStep;},setStep(step){hydrateOnce();state.currentStep=step;emit();},getAll(){hydrateOnce();return state.data;},get(key){hydrateOnce();return state.data[key];},set(key,value){hydrateOnce();state.data[key]=value;emit();},patch(partial){hydrateOnce();state.data={...state.data,...partial};emit();},reset(){hydrateOnce();state.currentStep=0;state.data={};emit();},toJSON(){hydrateOnce();return{currentStep:state.currentStep,data:{...state.data}};},toJSONString(pretty=true){hydrateOnce();return JSON.stringify({currentStep:state.currentStep,data:state.data},null,pretty?2:0);},storageKey:STORAGE_KEY,clearStorage(){if(!canUseStorage())return;try{window.localStorage.removeItem(STORAGE_KEY);}catch{}},reloadFromStorage(){if(!canUseStorage())return;try{const saved=safeParse(window.localStorage.getItem(STORAGE_KEY));if(!saved)return;state.currentStep=saved.currentStep;state.data=saved.data??{};emit();}catch{}},subscribe(listener){hydrateOnce();listeners.add(listener);return()=>listeners.delete(listener);}};\nexport const __FramerMetadata__ = {\"exports\":{\"StepStore\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"StepData\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./StepStore.map"],"mappings":"oGACoK,SAAS,GAAe,CAAiC,GAAU,IAAS,OAAY,MAAO,GAAM,GAAG,IAAmB,KAAK,OAAO,EAAiB,GAAG,CAAC,IAAM,EAAQ,qBAAqB,EAAO,aAAa,QAAQ,EAAQ,IAAI,CAAC,EAAO,aAAa,WAAW,EAAQ,CAAC,EAAiB,QAAW,CAAC,EAAiB,GAAO,OAAO,EAAkB,SAAS,EAAU,EAAK,CAAC,GAAG,CAAC,EAAK,OAAO,KAAK,GAAG,CAAC,IAAM,EAAO,KAAK,MAAM,EAAK,CAAkD,MAA9C,CAAC,GAAQ,OAAO,GAAS,SAAgB,KAAW,CAAC,YAAY,EAAO,aAAa,EAAE,KAAK,EAAO,MAAM,EAAE,CAAC,MAAO,CAAC,OAAO,MAAO,SAAS,GAAa,CAAI,QAAgB,EAAS,GAAS,GAAe,EAAQ,GAAG,CAAC,IAAM,EAAM,EAAU,EAAO,aAAa,QAAQ,EAAY,CAAC,CAAC,GAAG,CAAC,EAAM,OAAO,EAAM,YAAY,EAAM,YAAY,EAAM,KAAK,EAAM,MAAM,EAAE,MAAO,GACj8B,SAAS,GAAS,CAAK,MAAe,CAAQ,GAAG,CAAC,EAAO,aAAa,QAAQ,EAAY,KAAK,UAAU,CAAC,YAAY,EAAM,YAAY,KAAK,EAAM,KAAK,CAAC,CAAC,MAAO,GACjK,SAAS,GAAM,CAAC,GAAS,CAAC,IAAM,EAAS,CAAC,GAAG,EAAM,KAAK,CAAC,GAAG,EAAM,KAAK,CAAC,CAAC,IAAI,IAAM,KAAK,EAAU,EAAE,EAAS,+BAFzG,EAAY,eAA+C,EAAM,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,CAAO,EAAU,IAAI,IAAQ,EAAS,GAAU,EAAiB,KAEjC,EAAU,CAAC,SAAS,CAAe,OAAd,GAAa,CAAQ,EAAM,aAAc,QAAQ,EAAK,CAAC,GAAa,CAAC,EAAM,YAAY,EAAK,GAAM,EAAG,QAAQ,CAAe,OAAd,GAAa,CAAQ,EAAM,MAAO,IAAI,EAAI,CAAe,OAAd,GAAa,CAAQ,EAAM,KAAK,IAAO,IAAI,EAAI,EAAM,CAAC,GAAa,CAAC,EAAM,KAAK,GAAK,EAAM,GAAM,EAAG,MAAM,EAAQ,CAAC,GAAa,CAAC,EAAM,KAAK,CAAC,GAAG,EAAM,KAAK,GAAG,EAAQ,CAAC,GAAM,EAAG,OAAO,CAAC,GAAa,CAAC,EAAM,YAAY,EAAE,EAAM,KAAK,EAAE,CAAC,GAAM,EAAG,QAAQ,CAAe,OAAd,GAAa,CAAO,CAAC,YAAY,EAAM,YAAY,KAAK,CAAC,GAAG,EAAM,KAAK,CAAC,EAAG,aAAa,EAAO,GAAK,CAAe,OAAd,GAAa,CAAQ,KAAK,UAAU,CAAC,YAAY,EAAM,YAAY,KAAK,EAAM,KAAK,CAAC,KAAK,EAAO,EAAE,EAAE,EAAG,WAAW,EAAY,cAAc,CAAK,MAAe,CAAQ,GAAG,CAAC,EAAO,aAAa,WAAW,EAAY,MAAO,IAAI,mBAAmB,CAAK,MAAe,CAAQ,GAAG,CAAC,IAAM,EAAM,EAAU,EAAO,aAAa,QAAQ,EAAY,CAAC,CAAC,GAAG,CAAC,EAAM,OAAO,EAAM,YAAY,EAAM,YAAY,EAAM,KAAK,EAAM,MAAM,EAAE,CAAC,GAAM,MAAO,IAAI,UAAU,EAAS,CAAuC,OAAtC,GAAa,CAAC,EAAU,IAAI,EAAS,KAAW,EAAU,OAAO,EAAS,EAAG"}