{"version":3,"file":"store.js@_1.0.DeRTdoz1.mjs","names":["t","e","useState"],"sources":["https:/ga.jspm.io/npm:js-cookie@3.0.5/dist/js.cookie.mjs","https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0"],"sourcesContent":["function assign(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)e[r]=n[r]}return e}var e={read:function(e){'\"'===e[0]&&(e=e.slice(1,-1));return e.replace(/(%[\\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function init(e,t){function set(n,r,i){if(\"undefined\"!==typeof document){i=assign({},t,i);\"number\"===typeof i.expires&&(i.expires=new Date(Date.now()+864e5*i.expires));i.expires&&(i.expires=i.expires.toUTCString());n=encodeURIComponent(n).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o=\"\";for(var c in i)if(i[c]){o+=\"; \"+c;true!==i[c]&&(o+=\"=\"+i[c].split(\";\")[0])}return document.cookie=n+\"=\"+e.write(r,n)+o}}function get(t){if(\"undefined\"!==typeof document&&(!arguments.length||t)){var n=document.cookie?document.cookie.split(\"; \"):[];var r={};for(var i=0;i<n.length;i++){var o=n[i].split(\"=\");var c=o.slice(1).join(\"=\");try{var a=decodeURIComponent(o[0]);r[a]=e.read(c,a);if(t===a)break}catch(e){}}return t?r[t]:r}}return Object.create({set:set,get:get,remove:function(e,t){set(e,\"\",assign({},t,{expires:-1}))},withAttributes:function(e){return init(this.converter,assign({},this.attributes,e))},withConverter:function(e){return init(assign({},this.converter,e),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var t=init(e,{path:\"/\"});export{t as default};\n\n//# sourceMappingURL=js.cookie.mjs.map","import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n"],"mappings":"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"}