{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/Y1ZXBoo8yVz7K3MPQoYE/uswne52PdDbnKkJi1SD6/FavouriteButton.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";import{Border,createBackground,fillPropOnOff,useSlug}from\"https://framerusercontent.com/modules/FZjYlw33eNo8pxLbSFLX/SsR3sa3zv8QyYQXijsM2/SuperfieldsShared.js\";import useFavouriteStore from\"https://framerusercontent.com/modules/c1jaZMVo1HBulMCJfZHW/uQvAbmyp1KshkSoHEEUq/FavouriteStore.js\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function FavouriteButton(props){const{colors,border,cmsCollectionName}=props;const{slug,slugFieldId}=useSlug();const{favourites,addFavourite,removeFavourite}=useFavouriteStore(slugFieldId,state=>state,cmsCollectionName);const favourite=favourites?.includes(slug)??false;function onButtonClick(event){event.preventDefault();event.stopPropagation();if(favourites.includes(slug)){// Remove from list\nprops.unfavourited?.();removeFavourite(slug);}else{// Add to list\nprops.favourited?.();addFavourite(slug);}props.click?.();}return /*#__PURE__*/_jsxs(motion.div,{\"data-superfields\":true,onClick:onButtonClick,onMouseEnter:props.hover,animate:{...createBackground(props.fill,favourite),boxShadow:favourite?colors.shadowOn:colors.shadowOff},style:{borderRadius:props.radiusIsMixed?`${props.radiusTopLeft}px ${props.radiusTopRight}px ${props.radiusBottomRight}px ${props.radiusBottomLeft}px`:`${props.radius}px`,padding:props.paddingIsMixed?`${props.paddingTop}px ${props.paddingRight}px ${props.paddingBottom}px ${props.paddingLeft}px`:`${props.padding}px`,cursor:\"pointer\",overflow:\"hidden\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",...props.style},initial:false,transition:props.transition,children:[/*#__PURE__*/_jsx(HeartIcon,{on:favourite,size:props.iconSize,colorOn:colors.iconOn,colorOff:colors.iconOff,customIcons:props.customIcons,transition:props.transition}),border&&/*#__PURE__*/_jsx(Border,{...border,color:favourite?border.colorOn:border.colorOff,transition:props.transition})]});}FavouriteButton.displayName=\"Favourite Button\";addPropertyControls(FavouriteButton,{colors:{type:ControlType.Object,buttonTitle:\"Icon & Shadow\",controls:{iconOn:{type:ControlType.Color,defaultValue:\"#FF0000\"},iconOff:{type:ControlType.Color,defaultValue:\"#919191\"},shadowOn:{type:ControlType.BoxShadow},shadowOff:{type:ControlType.BoxShadow}}},fill:fillPropOnOff({colorOn:\"#FF0000\",colorAOn:\"#FF7070\",colorBOn:\"#FF0000\",colorOff:\"#000\",colorAOff:\"#8C8C8C\",colorBOff:\"#000\",noDefault:true}),iconSize:{type:ControlType.Number,defaultValue:24,min:1,step:1},padding:{type:ControlType.FusedNumber,defaultValue:12,toggleKey:\"paddingIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},radius:{type:ControlType.FusedNumber,defaultValue:24,toggleKey:\"radiusIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0},border:{type:ControlType.Object,optional:true,controls:{colorOn:{type:ControlType.Color,defaultValue:\"#FF0000\"},colorOff:{type:ControlType.Color,defaultValue:\"#919191\"},width:{type:ControlType.FusedNumber,defaultValue:1,toggleKey:\"widthIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"widthTop\",\"widthRight\",\"widthBottom\",\"widthLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},customIcons:{type:ControlType.Object,optional:true,buttonTitle:\"Icon\",controls:{type:{type:ControlType.Enum,defaultValue:\"svg\",options:[\"svg\",\"image\"],optionTitles:[\"SVG\",\"Image\"],displaySegmentedControl:true},svgOn:{type:ControlType.String,placeholder:\"<svg></svg>\",displayTextArea:true,title:\"On\",preventLocalization:true,hidden:props=>props.type!=\"svg\"},svgOff:{type:ControlType.String,placeholder:\"<svg></svg>\",displayTextArea:true,preventLocalization:true,title:\"Off\",hidden:props=>props.type!=\"svg\"},imageOn:{type:ControlType.ResponsiveImage,title:\"On\",hidden:props=>props.type!=\"image\"},imageOff:{type:ControlType.ResponsiveImage,title:\"Off\",hidden:props=>props.type!=\"image\"},sizing:{type:ControlType.Enum,defaultValue:\"cover\",options:[\"cover\",\"contain\",\"fill\"],optionTitles:[\"Fill\",\"Fit\",\"Stretch\"],hidden:props=>props.type!=\"image\"},opacity:{type:ControlType.Number,defaultValue:1,min:0,max:1,step:.01}}},transition:{type:ControlType.Transition,defaultValue:{type:\"spring\",duration:.2,bounce:0}},favourited:{type:ControlType.EventHandler},unfavourited:{type:ControlType.EventHandler},click:{type:ControlType.EventHandler},hover:{type:ControlType.EventHandler},cmsCollectionName:{type:ControlType.String,defaultValue:\"\",preventLocalization:true,hidden:props=>true}});function HeartIcon(props){const{on,customIcons,size,colorOn,colorOff,transition}=props;let iconElements=[];if(customIcons){if(customIcons.type==\"svg\"){const icons=[{svg:customIcons.svgOn,color:colorOn},{svg:customIcons.svgOff,color:colorOff}];iconElements=icons.map((icon,index)=>/*#__PURE__*/_jsx(motion.div,{animate:{opacity:on==(index==0)?customIcons.opacity:0},initial:false,transition:transition,className:\"superfields-social-share-icon\",style:{position:\"absolute\",width:size,height:size,color:icon.color,pointerEvents:\"none\"},dangerouslySetInnerHTML:{__html:icon.svg.replace(/width=\"(\\d+)\"/,`width=\"${size}\"`).replace(/height=\"(\\d+)\"/,`width=\"${size}\"`)}},index));iconElements.push(/*#__PURE__*/_jsx(\"style\",{children:`.superfields-social-share-icon svg { display: block; }`}));}else if(customIcons.type==\"image\"){const images=[customIcons.imageOn,customIcons.imageOff];iconElements=images.map((image,index)=>/*#__PURE__*/_jsx(motion.img,{animate:{opacity:on==(index==0)?1:0},initial:false,transition:transition,src:image?.src,alt:image?.alt,style:{position:\"absolute\",display:\"block\",width:size,height:size,opacity:customIcons.opacity,objectFit:customIcons.sizing,objectPosition:\"center\",pointerEvents:\"none\"}},index));}}else{const icons=[{color:colorOn,element:/*#__PURE__*/_jsx(\"path\",{d:\"M6.979 3.074a6 6 0 0 1 4.988 1.425l.037 .033l.034 -.03a6 6 0 0 1 4.733 -1.44l.246 .036a6 6 0 0 1 3.364 10.008l-.18 .185l-.048 .041l-7.45 7.379a1 1 0 0 1 -1.313 .082l-.094 -.082l-7.493 -7.422a6 6 0 0 1 3.176 -10.215z\",strokeWidth:\"0\",fill:\"currentColor\"})},{color:colorOff,element:/*#__PURE__*/_jsx(\"path\",{d:\"M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572\"})}];iconElements=icons.map((icon,index)=>/*#__PURE__*/_jsx(motion.svg,{animate:{opacity:on==(index==0)?1:0},initial:false,transition:transition,xmlns:\"http://www.w3.org/2000/svg\",width:size,height:size,viewBox:\"0 0 24 24\",strokeWidth:\"2\",stroke:\"currentColor\",fill:\"none\",strokeLinecap:\"round\",strokeLinejoin:\"round\",style:{position:\"absolute\",color:icon.color,display:\"block\"},children:icon.element},index));}return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:size,height:size},children:iconElements});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FavouriteButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "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",
  "names": ["init_ssg_sandbox_shims", "FavouriteButton", "props", "colors", "border", "cmsCollectionName", "slug", "slugFieldId", "useSlug", "favourites", "addFavourite", "removeFavourite", "FavouriteStore_default", "state", "favourite", "onButtonClick", "event", "u", "motion", "createBackground", "p", "HeartIcon", "Border", "addPropertyControls", "ControlType", "fillPropOnOff", "on", "customIcons", "size", "colorOn", "colorOff", "transition", "iconElements", "icon", "index", "image"]
}
