{"version":3,"file":"CartButton.E9eEibna.mjs","names":["useTransition","useState","useRef"],"sources":["https:/framerusercontent.com/modules/pHBj44exUAtP27jyhlUs/QjZXGodBpTa2CwFsuz3s/CartButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,RenderTarget,withCSS}from\"framer\";import{useState,useEffect,useRef,isValidElement,cloneElement,useTransition}from\"react\";import{motion,AnimatePresence}from\"framer-motion\";import{styleLayer,OPEN_CART_EVENT,DEFAULT_TRANSITION,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{Icon,iconProp,Button,createButtonPropertyControls,Colors}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js\";import{createPortal}from\"react-dom\";import{useCartStore}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";export const CLOSE_CART_EVENT=\"frameship-close-cart\";const DEFAULT_ITEM_COUNT_BADGE={whenZero:\"hide\",position:\"topRight\",inset:-6,size:20,color:Colors.Accent.color,fill:{type:\"color\",color:\"#111\",colorA:\"#5E5E5E\",colorB:\"#111\"},radius:\"100px\"};function CartButtonComponent(props){const{overlay,escToClose,button,itemCountBadge}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[isPending,startTransition]=useTransition();const[open,setOpen]=useState(false);const[portalContainer,setPortalContainer]=useState(null);const[overlayParentClasses,setOverlayParentClasses]=useState([]);const ref=useRef(null);const cartItems=useCartStore(state=>state.items);useEffect(()=>{if(!isCanvas){const getParentClasses=()=>{const classes=[];let currentElement=ref.current;while(currentElement&&currentElement.tagName.toLowerCase()!==\"main\"){if(currentElement.className){classes.push(currentElement.className);}currentElement=currentElement.parentElement;}return classes.reverse();};setOverlayParentClasses(getParentClasses());const openCart=()=>{setOpen(true);};window.addEventListener(OPEN_CART_EVENT,openCart);return()=>{window.removeEventListener(OPEN_CART_EVENT,openCart);};}},[]);useEffect(()=>{if(!isCanvas){const handleEscKey=event=>{if(event.key===\"Escape\"&&open&&escToClose){setOpen(false);}};window.addEventListener(\"keydown\",handleEscKey);return()=>{window.removeEventListener(\"keydown\",handleEscKey);};}},[open,escToClose]);useEffect(()=>{if(!isCanvas){const container=document.createElement(\"div\");container.id=\"frameship-cart-portal\";document.body.appendChild(container);setPortalContainer(container);return()=>{document.body.removeChild(container);};}},[isCanvas]);useEffect(()=>{if(!isCanvas){const handleClose=()=>setOpen(false);window.addEventListener(CLOSE_CART_EVENT,handleClose);return()=>{window.removeEventListener(CLOSE_CART_EVENT,handleClose);};}},[]);let cartElement=styleLayer(props.cartLayer,{width:\"100%\",height:\"100%\"});cartElement=updateExitProp(cartElement);const onClick=()=>startTransition(()=>setOpen(true));let badgeElement=null;if(itemCountBadge){const{whenZero,position,inset,fill}=itemCountBadge;let amount=0;if(Array.isArray(cartItems)){amount=cartItems.reduce((total,item)=>total+(item.quantity||1),0);}if(amount>0||whenZero===\"show\"){let top=undefined;let left=undefined;let bottom=undefined;let right=undefined;let centerX=false;let centerY=false;switch(position){case\"topLeft\":top=inset;left=inset;break;case\"topCenter\":top=inset;left=\"50%\";centerX=true;break;case\"topRight\":top=inset;right=inset;break;case\"bottomLeft\":bottom=inset;left=inset;break;case\"bottomCenter\":bottom=inset;left=\"50%\";centerX=true;break;case\"bottomRight\":bottom=inset;right=inset;break;case\"left\":left=inset;top=\"50%\";centerY=true;break;case\"right\":right=inset;top=\"50%\";centerY=true;break;}let background=\"none\";if(fill){if(fill.type===\"color\"){background=fill.color;}else{background=`linear-gradient(${fill.gradientAngle}deg, ${fill.colorB}, ${fill.colorA})`;}}let paddingH=0;if(typeof document!==\"undefined\"){const zeroWidth=getZeroCharacterWidth(itemCountBadge.font);paddingH=(itemCountBadge.size-zeroWidth)/2;}badgeElement=/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",minWidth:itemCountBadge.size,height:itemCountBadge.size,top,left,bottom,right,transform:`${centerX?\"translateX(-50%)\":\"\"} ${centerY?\"translateY(-50%)\":\"\"}`.trim()||undefined,textAlign:\"center\",color:itemCountBadge.color,boxShadow:itemCountBadge.shadows,borderRadius:itemCountBadge.radius,background,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:`0px ${paddingH}px`,...itemCountBadge.font},children:amount});}}const buttonElement=props.appearance===\"custom\"?/*#__PURE__*/_jsx(\"div\",{style:{cursor:\"pointer\",...props.style},onClick:onClick,children:styleLayer(props.customButton,props.style)}):/*#__PURE__*/_jsxs(Button,{...button,onClick:onClick,style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",...props.style},children:[/*#__PURE__*/_jsx(Icon,{...button.icon,defaultImage:`url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"feather feather-shopping-cart\"><circle cx=\"9\" cy=\"21\" r=\"1\"></circle><circle cx=\"20\" cy=\"21\" r=\"1\"></circle><path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\"></path></svg>')`}),badgeElement]});return /*#__PURE__*/_jsxs(\"div\",{ref:ref,style:{position:\"relative\",...props.style},children:[buttonElement,!isCanvas&&portalContainer&&/*#__PURE__*/createPortal(overlayParentClasses.reduce((children,className)=>/*#__PURE__*/_jsx(\"div\",{className:`${className} frameship-contents`,children:children}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"fixed\",inset:0,zIndex:9999,pointerEvents:\"none\"},children:[/*#__PURE__*/_jsx(motion.div,{animate:{opacity:open?1:0},style:{position:\"absolute\",inset:0,backgroundColor:overlay.backgroundColor,backdropFilter:overlay.blur?`blur(${overlay.blur}px)`:undefined},initial:false,transition:props.transition}),/*#__PURE__*/_jsx(AnimatePresence,{children:open&&/*#__PURE__*/_jsx(motion.div,{initial:{pointerEvents:\"auto\"},animate:{pointerEvents:\"auto\"},exit:{pointerEvents:\"none\"},style:{position:\"absolute\",inset:0,display:\"flex\",flexDirection:\"row\",justifyContent:\"end\"},children:cartElement})})]})),portalContainer)]});}/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerDisableUnlink\n */const CartButton=withCSS(CartButtonComponent,[\".frameship-contents { display: contents !important }\"],\"\");export default CartButton;CartButton.displayName=\"Open Cart Button\";addPropertyControlsFrameship(CartButton,{cartLayer:{type:ControlType.ComponentInstance,description:\"Connect a layer for the cart overlay\"},overlay:{type:ControlType.Object,buttonTitle:\"Styles\",controls:{backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0.5)\"},blur:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true},transition:{type:ControlType.Transition,defaultValue:DEFAULT_TRANSITION,description:\"A solid overlay is shown behind the cart\"}}},appearance:{type:ControlType.Enum,defaultValue:\"button\",options:[\"button\",\"custom\"],optionTitles:[\"Button\",\"Custom\"],displaySegmentedControl:true},button:{type:ControlType.Object,buttonTitle:\"Icon & Styles\",title:\"Button\",controls:{icon:iconProp({buttonTitle:\"Cart\",size:18}),...createButtonPropertyControls({font:false,color:false})},hidden:props=>props.appearance!==\"button\"},itemCountBadge:{type:ControlType.Object,title:\"Item Count\",buttonTitle:\"Badge\",optional:true,description:\"A badge showing the number of items in cart\",hidden:props=>props.appearance!==\"button\",defaultValue:DEFAULT_ITEM_COUNT_BADGE,controls:{whenZero:{type:ControlType.Enum,defaultValue:DEFAULT_ITEM_COUNT_BADGE.whenZero,options:[\"show\",\"hide\"],optionTitles:[\"Show\",\"Hide\"],displaySegmentedControl:true},position:{type:ControlType.Enum,defaultValue:DEFAULT_ITEM_COUNT_BADGE.position,options:[\"topLeft\",\"topCenter\",\"topRight\",\"bottomLeft\",\"bottomCenter\",\"bottomRight\",\"left\",\"right\"],optionTitles:[\"Top Left\",\"Top Center\",\"Top Right\",\"Bottom Left\",\"Bottom Center\",\"Bottom Right\",\"Left\",\"Right\"]},inset:{type:ControlType.Number,defaultValue:DEFAULT_ITEM_COUNT_BADGE.inset,min:-100,max:100,step:1,displayStepper:true},size:{type:ControlType.Number,defaultValue:DEFAULT_ITEM_COUNT_BADGE.size,min:0,max:1e3,step:1,displayStepper:true},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:12,lineHeight:1.4}},color:{type:ControlType.Color,defaultValue:DEFAULT_ITEM_COUNT_BADGE.color},fill:createFillPropertyControl(DEFAULT_ITEM_COUNT_BADGE.fill,true),radius:{type:ControlType.BorderRadius,defaultValue:DEFAULT_ITEM_COUNT_BADGE.radius},shadows:{type:ControlType.BoxShadow}}},customButton:{type:ControlType.ComponentInstance,title:\"Button\",description:\"Connect a layer for the open cart button\",hidden:props=>props.appearance!==\"custom\"},escToClose:{type:ControlType.Boolean,defaultValue:true,title:\"Esc to Close\"}});const updateExitProp=element=>{if(/*#__PURE__*/isValidElement(element)){const{initial,exit,children,animate,transition}=element.props;// Create new props object\nconst newProps={};// Handle exit animation\nif(initial&&typeof initial===\"object\"&&!exit){let exitValue=initial;if(!transition&&!initial.transition&&animate?.transition){exitValue={...initial,transition:animate.transition};}newProps.exit=exitValue;}// Handle children\nif(children){if(typeof children===\"string\"){// Don't modify string children\nreturn element;}else if(Array.isArray(children)){// Handle array of children\nnewProps.children=children.map(updateExitProp);}else{// Handle single child\nnewProps.children=updateExitProp(children);}}// Only clone if we have new props to apply\nreturn Object.keys(newProps).length>0?/*#__PURE__*/cloneElement(element,newProps):element;}return element;};function getZeroCharacterWidth(font){// Create a temporary span element\nconst span=document.createElement(\"span\");// Set the font and content\nObject.assign(span.style,font);span.style.visibility=\"hidden\";span.style.position=\"absolute\";span.textContent=\"0\";// Add to DOM temporarily to measure\ndocument.body.appendChild(span);const width=span.getBoundingClientRect().width;document.body.removeChild(span);return width;}function createFillPropertyControl(values,hasDefault=true){return{type:ControlType.Object,optional:true,defaultValue:hasDefault?values:undefined,controls:{type:{type:ControlType.Enum,defaultValue:\"color\",options:[\"color\",\"linearGradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},color:{type:ControlType.Color,defaultValue:values.color,description:\"Solid color background\",hidden:props=>props.type!==\"color\"},colorA:{type:ControlType.Color,defaultValue:values.colorA,title:\"Colors\",hidden:props=>props.type!==\"linearGradient\"},colorB:{type:ControlType.Color,defaultValue:values.colorB,title:\" \",hidden:props=>props.type!==\"linearGradient\"},gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:-360,max:360,unit:\"\\xb0\",description:\"Linear gradient background\",hidden:props=>props.type!==\"linearGradient\"}}};}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CartButton\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerIntrinsicWidth\":\"40\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"CLOSE_CART_EVENT\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}