{"version":3,"file":"store.js@_1.0.DrioE9x3.mjs","names":["o","i","r","e","n","s","c","u","t","a","l","p","t.useRef","t.useMemo","useState"],"sources":["https:/ga.jspm.io/npm:react-swipeable@7.0.1/es/index.js","https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0"],"sourcesContent":["import*as t from\"react\";const e=\"Left\";const n=\"Right\";const s=\"Up\";const c=\"Down\";const o={delta:10,preventScrollOnSwipe:false,rotationAngle:0,trackMouse:false,trackTouch:true,swipeDuration:Infinity,touchEventOptions:{passive:true}};const i={first:true,initial:[0,0],start:0,swiping:false,xy:[0,0]};const r=\"mousemove\";const a=\"mouseup\";const u=\"touchend\";const l=\"touchmove\";const p=\"touchstart\";function getDirection(t,o,i,r){return t>o?i>0?n:e:r>0?c:s}function rotateXYByAngle(t,e){if(0===e)return t;const n=Math.PI/180*e;const s=t[0]*Math.cos(n)+t[1]*Math.sin(n);const c=t[1]*Math.cos(n)-t[0]*Math.sin(n);return[s,c]}function getHandlers(t,e){const onStart=e=>{const n=\"touches\"in e;n&&e.touches.length>1||t(((t,s)=>{if(s.trackMouse&&!n){document.addEventListener(r,onMove);document.addEventListener(a,onUp)}const{clientX:c,clientY:o}=n?e.touches[0]:e;const u=rotateXYByAngle([c,o],s.rotationAngle);s.onTouchStartOrOnMouseDown&&s.onTouchStartOrOnMouseDown({event:e});return Object.assign(Object.assign(Object.assign({},t),i),{initial:u.slice(),xy:u,start:e.timeStamp||0})}))};const onMove=e=>{t(((t,n)=>{const s=\"touches\"in e;if(s&&e.touches.length>1)return t;if(e.timeStamp-t.start>n.swipeDuration)return t.swiping?Object.assign(Object.assign({},t),{swiping:false}):t;const{clientX:c,clientY:i}=s?e.touches[0]:e;const[r,a]=rotateXYByAngle([c,i],n.rotationAngle);const u=r-t.xy[0];const l=a-t.xy[1];const p=Math.abs(u);const g=Math.abs(l);const O=(e.timeStamp||0)-t.start;const h=Math.sqrt(p*p+g*g)/(O||1);const f=[u/(O||1),l/(O||1)];const v=getDirection(p,g,u,l);const b=\"number\"===typeof n.delta?n.delta:n.delta[v.toLowerCase()]||o.delta;if(p<b&&g<b&&!t.swiping)return t;const d={absX:p,absY:g,deltaX:u,deltaY:l,dir:v,event:e,first:t.first,initial:t.initial,velocity:h,vxvy:f};d.first&&n.onSwipeStart&&n.onSwipeStart(d);n.onSwiping&&n.onSwiping(d);let S=false;(n.onSwiping||n.onSwiped||n[`onSwiped${v}`])&&(S=true);S&&n.preventScrollOnSwipe&&n.trackTouch&&e.cancelable&&e.preventDefault();return Object.assign(Object.assign({},t),{first:false,eventData:d,swiping:true})}))};const onEnd=e=>{t(((t,n)=>{let s;if(t.swiping&&t.eventData){if(e.timeStamp-t.start<n.swipeDuration){s=Object.assign(Object.assign({},t.eventData),{event:e});n.onSwiped&&n.onSwiped(s);const c=n[`onSwiped${s.dir}`];c&&c(s)}}else n.onTap&&n.onTap({event:e});n.onTouchEndOrOnMouseUp&&n.onTouchEndOrOnMouseUp({event:e});return Object.assign(Object.assign(Object.assign({},t),i),{eventData:s})}))};const cleanUpMouse=()=>{document.removeEventListener(r,onMove);document.removeEventListener(a,onUp)};const onUp=t=>{cleanUpMouse();onEnd(t)};const attachTouch=(t,e)=>{let cleanup=()=>{};if(t&&t.addEventListener){const n=Object.assign(Object.assign({},o.touchEventOptions),e.touchEventOptions);const s=[[p,onStart,n],[l,onMove,Object.assign(Object.assign({},n),e.preventScrollOnSwipe?{passive:false}:{})],[u,onEnd,n]];s.forEach((([e,n,s])=>t.addEventListener(e,n,s)));cleanup=()=>s.forEach((([e,n])=>t.removeEventListener(e,n)))}return cleanup};const onRef=e=>{null!==e&&t(((t,n)=>{if(t.el===e)return t;const s={};if(t.el&&t.el!==e&&t.cleanUpTouch){t.cleanUpTouch();s.cleanUpTouch=void 0}n.trackTouch&&e&&(s.cleanUpTouch=attachTouch(e,n));return Object.assign(Object.assign(Object.assign({},t),{el:e}),s)}))};const n={ref:onRef};e.trackMouse&&(n.onMouseDown=onStart);return[n,attachTouch]}function updateTransientState(t,e,n,s){if(!e.trackTouch||!t.el){t.cleanUpTouch&&t.cleanUpTouch();return Object.assign(Object.assign({},t),{cleanUpTouch:void 0})}if(!t.cleanUpTouch)return Object.assign(Object.assign({},t),{cleanUpTouch:s(t.el,e)});if(e.preventScrollOnSwipe!==n.preventScrollOnSwipe||e.touchEventOptions.passive!==n.touchEventOptions.passive){t.cleanUpTouch();return Object.assign(Object.assign({},t),{cleanUpTouch:s(t.el,e)})}return t}function useSwipeable(e){const{trackMouse:n}=e;const s=t.useRef(Object.assign({},i));const c=t.useRef(Object.assign({},o));const r=t.useRef(Object.assign({},c.current));r.current=Object.assign({},c.current);c.current=Object.assign(Object.assign({},o),e);let a;for(a in o)void 0===c.current[a]&&(c.current[a]=o[a]);const[u,l]=t.useMemo((()=>getHandlers((t=>s.current=t(s.current,c.current)),{trackMouse:n})),[n]);s.current=updateTransientState(s.current,c.current,r.current,l);return u}export{c as DOWN,e as LEFT,n as RIGHT,s as UP,useSwipeable};\n\n//# sourceMappingURL=index.js.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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"}