{"version":3,"file":"FavoritesButton.DK0FQFNs.mjs","names":["useState","useCallback","getProps","React.forwardRef","Heart","React.useContext","React.useMemo","React.Fragment","React.forwardRef","useRef","React.useId","FavoriteHeart"],"sources":["https:/framerusercontent.com/modules/xEthLLh3zm1eRSUoQzVC/Ho88RiSZAPZWgxolM9dq/useFavorites.js","https:/framerusercontent.com/modules/e0h3YOKYJPeSXovNmJ6s/TffY0sO5plWLmaoB7QOt/uC4CM2JL4.js","https:/framerusercontent.com/modules/YGHawFDnssrQLn1C8cg1/8PgWHmrfGhbvU2Hz4z4E/xiJEVJ3xS.js","https:/framer.com/m/Favorite-Heart-zvfTRd.js@8PgWHmrfGhbvU2Hz4z4E","https:/framerusercontent.com/modules/TAlPfdp0fZlcWVkYJ7ep/lOoiQUz5o8XYXPuXkEpM/FavoritesButton.js"],"sourcesContent":["import{useState,useEffect,useCallback}from\"react\";const STORAGE_KEY=\"favoriteApartments\";const FAVORITES_UPDATED_EVENT=\"favoriteApartments:updated\";function readFavorites(){if(typeof window===\"undefined\")return[];try{const raw=window.localStorage.getItem(STORAGE_KEY);return raw?JSON.parse(raw):[];}catch{return[];}}function writeFavorites(items){if(typeof window===\"undefined\")return;try{window.localStorage.setItem(STORAGE_KEY,JSON.stringify(items));window.dispatchEvent(new CustomEvent(FAVORITES_UPDATED_EVENT,{detail:{items}}));}catch{}}export function useFavorites(){const[favorites,setFavorites]=useState(readFavorites);useEffect(()=>{const handleUpdate=()=>{setFavorites(readFavorites());};window.addEventListener(FAVORITES_UPDATED_EVENT,handleUpdate);window.addEventListener(\"storage\",handleUpdate);return()=>{window.removeEventListener(FAVORITES_UPDATED_EVENT,handleUpdate);window.removeEventListener(\"storage\",handleUpdate);};},[]);const isFavorited=useCallback(number=>{if(!number)return false;return favorites.some(item=>item?.number===number);},[favorites]);const toggleFavorite=useCallback(apartment=>{if(!apartment?.number)return;const current=readFavorites();const exists=current.some(item=>item?.number===apartment.number);const next=exists?current.filter(item=>item?.number!==apartment.number):[...current,apartment];writeFavorites(next);},[]);return{favorites,isFavorited,toggleFavorite};}\nexport const __FramerMetadata__ = {\"exports\":{\"useFavorites\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"FavoriteApartment\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./useFavorites.map","// Generated by Framer (85eaff3)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 5.516 C 0 3.238 1.404 1.196 3.532 0.381 C 5.659 -0.435 8.068 0.146 9.591 1.84 C 9.697 1.954 9.845 2.018 10 2.018 C 10.155 2.018 10.303 1.954 10.409 1.84 C 11.927 0.135 14.343 -0.453 16.475 0.364 C 18.607 1.181 20.011 3.233 20 5.516 C 20 7.806 18.5 9.516 17 11.016 L 11.508 16.329 C 11.131 16.762 10.586 17.012 10.012 17.016 C 9.438 17.02 8.89 16.776 8.508 16.348 L 3 11.016 C 1.5 9.516 0 7.816 0 5.516\" fill=\"transparent\" height=\"17.016074446131555px\" id=\"BmMuopOcR\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(2 3.984)\" width=\"20.00006277311737px\"/></svg>';const getProps=({color,height,id,width,width1,...props})=>{return{...props,JEeZYcamG:width1??props.JEeZYcamG??2,P_DcoRcrY:color??props.P_DcoRcrY??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,P_DcoRcrY,JEeZYcamG,...restProps}=getProps(props);const href=useSVGTemplate(\"79158532\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-Q3GTQ\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m973uw\":P_DcoRcrY,\"--js9iwy\":JEeZYcamG,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-Q3GTQ { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"P_DcoRcrY\":\"color\",\"JEeZYcamG\":\"width1\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Heart\",\"color\":{\"type\":\"variable\",\"value\":\"1m973uw\"},\"set\":{\"localId\":\"vectorSet/ZsiCCGPvG\",\"id\":\"ZsiCCGPvG\",\"moduleId\":\"Y7SpbVH16cWqMhj75z1M\"}}\n */const Icon=withCSS(Component,css,\"framer-Q3GTQ\");Icon.displayName=\"Heart\";export default Icon;addPropertyControls(Icon,{P_DcoRcrY:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},JEeZYcamG:{defaultValue:2,displayStepper:true,hidden:false,max:16,min:1,title:\"Width\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerIntrinsicHeight\":\"24\",\"framerVector\":\"{\\\"name\\\":\\\"Heart\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1m973uw\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/ZsiCCGPvG\\\",\\\"id\\\":\\\"ZsiCCGPvG\\\",\\\"moduleId\\\":\\\"Y7SpbVH16cWqMhj75z1M\\\"}}\",\"framerVariables\":\"{\\\"P_DcoRcrY\\\":\\\"color\\\",\\\"JEeZYcamG\\\":\\\"width1\\\"}\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (eaac66a)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,CycleVariantState,getFonts,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Heart from\"https://framerusercontent.com/modules/e0h3YOKYJPeSXovNmJ6s/TffY0sO5plWLmaoB7QOt/uC4CM2JL4.js\";const HeartFonts=getFonts(Heart);const cycleOrder=[\"qjX0Vd5EK\",\"nkJHUsUOz\"];const serializationHash=\"framer-vSOs4\";const variantClassNames={nkJHUsUOz:\"framer-v-10899z1\",qjX0Vd5EK:\"framer-v-18y73d5\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:0,delay:0,duration:.2,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Active:\"nkJHUsUOz\",Default:\"qjX0Vd5EK\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"qjX0Vd5EK\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"qjX0Vd5EK\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1ihqjoj=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(CycleVariantState);});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-18y73d5\",className,classNames),\"data-framer-name\":\"Default\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"qjX0Vd5EK\",onTap:onTap1ihqjoj,ref:refBinding,style:{backgroundColor:\"rgba(41, 41, 41, 0)\",borderBottomLeftRadius:999,borderBottomRightRadius:999,borderTopLeftRadius:999,borderTopRightRadius:999,...style},variants:{nkJHUsUOz:{backgroundColor:\"rgba(181, 48, 42, 0.1)\"}},...addPropertyOverrides({nkJHUsUOz:{\"data-framer-name\":\"Active\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(Heart,{animated:true,className:\"framer-ny8ns3\",layoutDependency:layoutDependency,layoutId:\"VGy7no3HE\",style:{\"--1m973uw\":\"var(--token-71ec82c2-ce8d-4751-9842-d684e681c34b, rgb(41, 41, 41))\",\"--js9iwy\":1.75},variants:{nkJHUsUOz:{\"--1m973uw\":\"rgb(181, 48, 42)\"}}})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-vSOs4.framer-1b4m1im, .framer-vSOs4 .framer-1b4m1im { display: block; }\",\".framer-vSOs4.framer-18y73d5 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 32px; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 6px; position: relative; width: 32px; will-change: var(--framer-will-change-override, transform); }\",\".framer-vSOs4 .framer-ny8ns3 { flex: none; height: var(--framer-aspect-ratio-supported, 18px); position: relative; width: 18px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 32\n * @framerIntrinsicWidth 32\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"nkJHUsUOz\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerxiJEVJ3xS=withCSS(Component,css,\"framer-vSOs4\");export default FramerxiJEVJ3xS;FramerxiJEVJ3xS.displayName=\"Favorite Heart\";FramerxiJEVJ3xS.defaultProps={height:32,width:32};addPropertyControls(FramerxiJEVJ3xS,{variant:{options:[\"qjX0Vd5EK\",\"nkJHUsUOz\"],optionTitles:[\"Default\",\"Active\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerxiJEVJ3xS,[{explicitInter:true,fonts:[]},...HeartFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerxiJEVJ3xS\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"32\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"nkJHUsUOz\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"32\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./xiJEVJ3xS.map","/*\n * Favorite Heart\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/YGHawFDnssrQLn1C8cg1/8PgWHmrfGhbvU2Hz4z4E/xiJEVJ3xS.js\"\nexport { default } from \"https://framerusercontent.com/modules/YGHawFDnssrQLn1C8cg1/8PgWHmrfGhbvU2Hz4z4E/xiJEVJ3xS.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useFavorites}from\"https://framerusercontent.com/modules/xEthLLh3zm1eRSUoQzVC/Ho88RiSZAPZWgxolM9dq/useFavorites.js\";import FavoriteHeart from\"https://framer.com/m/Favorite-Heart-zvfTRd.js@8PgWHmrfGhbvU2Hz4z4E\";export default function FavoriteButton(props){const{isFavorited,toggleFavorite}=useFavorites();const targetNumber=props?.number||\"\";const active=isFavorited(targetNumber);const handleToggle=e=>{e.stopPropagation();if(!targetNumber)return;const apartment={number:targetNumber,status:props?.status||\"\",floor:props?.floor||\"\",building:props?.building||\"\",price:props?.price||\"\",size:props?.size||\"\",direction:props?.direction||\"\",rooms:props?.rooms||\"\",features:props?.features||\"\",plan:props?.plan||\"\"};toggleFavorite(apartment);};const ComponentToRender=typeof FavoriteHeart!==\"undefined\"?FavoriteHeart:null;return /*#__PURE__*/_jsx(\"div\",{onClick:handleToggle,style:{cursor:\"pointer\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",width:props?.width,height:props?.height},children:ComponentToRender&&/*#__PURE__*/_jsx(ComponentToRender,{variant:active?\"Active\":\"Default\",style:{width:\"100%\",height:\"100%\"}},`${targetNumber}-${active?\"active\":\"default\"}`)});}addPropertyControls(FavoriteButton,{number:{type:ControlType.String,title:\"Apt Number\",defaultValue:\"101\"},status:{type:ControlType.String,title:\"Status\",placeholder:\"Available\"},floor:{type:ControlType.String,title:\"Floor\"},building:{type:ControlType.String,title:\"Building\"},price:{type:ControlType.String,title:\"Price\"},size:{type:ControlType.String,title:\"Size\"},direction:{type:ControlType.String,title:\"Direction (Kryptis)\"},rooms:{type:ControlType.String,title:\"Rooms\"},features:{type:ControlType.String,title:\"Features (CSV)\",placeholder:\"Balcony, Parking, AC\"},plan:{type:ControlType.Image,title:\"Plan Image\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FavoriteButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FavoritesButton.map"],"mappings":"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"}