{"version":3,"file":"AddToCartButton.MQzFMP4c.mjs","names":["Children","useRef","useMemo","useState","useCallback","size","state","State","defaultText","useState","State","HIDDEN_CLASS","currencySymbols","State","useState","state"],"sources":["https:/framerusercontent.com/modules/B2xAlJLcN0gOnt11mSPw/LHz3bw67SqHRmnCKTlE6/Ticker.js","https:/framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js","https:/framerusercontent.com/modules/0xkiWjwekn87OErRIyqu/n7KSs8xzJL2rvL8Ols5u/BuyNowButton.js","https:/framerusercontent.com/modules/6m3bYVdQqi1oLEe0M7tX/ZAqHvo3rsZ6EatnOW5LO/QuantityInput.js","https:/framerusercontent.com/modules/Ncx6rwHWSXe5kU34gWm3/ODkUbH8JS0kgmkT2t1Ml/ProductInfoLabel.js","https:/framerusercontent.com/modules/tGueMWfVDCEvfQtSlUrd/VfRukcnlHdi5HoZO7y0h/VariantButtons.js","https:/framerusercontent.com/modules/xIS6qWCTGkDJXuKuDYIj/VG4ISx3vIFnu1mBpatyR/AddToCartButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{Children,useEffect,useState,useRef,useMemo,useCallback,cloneElement,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useReducedMotion,LayoutGroup,useInView,useMotionValue,useTransform,motion,frame}from\"framer-motion\";import{resize}from\"@motionone/dom\";const MAX_DUPLICATED_ITEMS=100;const directionTransformers={left:offset=>`translateX(-${offset}px)`,right:offset=>`translateX(${offset}px)`,top:offset=>`translateY(-${offset}px)`,bottom:offset=>`translateY(${offset}px)`};/**\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function Ticker(props){/* Props */let{slots=[],gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,speed,hoverFactor,direction,alignment,sizingOptions,fadeOptions,style}=props;const{fadeContent,overflow,fadeWidth,fadeInset,fadeAlpha}=fadeOptions;const{widthType,heightType}=sizingOptions;const paddingValue=paddingPerSide?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${padding}px`;/* Checks */const currentTarget=RenderTarget.current();const isCanvas=currentTarget===RenderTarget.canvas||currentTarget===RenderTarget.export;// Remove empty slots (such as hidden layers)\nconst filteredSlots=slots.filter(Boolean);const numChildren=Children.count(filteredSlots);const hasChildren=numChildren>0;if(direction===true){direction=\"left\";}const isHorizontal=direction===\"left\"||direction===\"right\";const offset=useMotionValue(0);const transformer=directionTransformers[direction];const transform=useTransform(offset,transformer);/* Refs and State */const parentRef=useRef(null);const childrenRef=useMemo(()=>{return[{current:null},{current:null}];},[]);const[size,setSize]=useState({parent:null,children:null});/* Arrays */let clonedChildren=null;let dupedChildren=[];/* Duplicate value */let duplicateBy=0;let opacity=0;if(isCanvas){duplicateBy=numChildren?Math.floor(10/numChildren):0;opacity=1;}if(!isCanvas&&hasChildren&&size.parent){duplicateBy=Math.round(size.parent/size.children*2)+1;duplicateBy=Math.min(duplicateBy,MAX_DUPLICATED_ITEMS);opacity=1;}/* Measure parent and child */const measure=useCallback(()=>{if(hasChildren&&parentRef.current){const parentLength=isHorizontal?parentRef.current.offsetWidth:parentRef.current.offsetHeight;const start=childrenRef[0].current?isHorizontal?childrenRef[0].current.offsetLeft:childrenRef[0].current.offsetTop:0;const end=childrenRef[1].current?isHorizontal?childrenRef[1].current.offsetLeft+childrenRef[1].current.offsetWidth:childrenRef[1].current.offsetTop+childrenRef[1].current.offsetHeight:0;const childrenLength=end-start+gap;startTransition(()=>setSize({parent:parentLength,children:childrenLength}));}},[]);const childrenStyles=isCanvas?{contentVisibility:\"auto\"}:{};/* Add refs to first and last child */if(hasChildren){// TODO: These conditional hooks will be unsafe if hasChildren ever changes outside the canvas.\nif(!isCanvas){/**\n             * Track whether this is the initial resize event. By default this will fire on mount,\n             * which we do in the useEffect. We should only fire it on subsequent resizes.\n             */let initialResize=useRef(true);useEffect(()=>{frame.read(measure);return resize(parentRef.current,({contentSize})=>{if(!initialResize.current&&(contentSize.width||contentSize.height)){frame.read(measure);}initialResize.current=false;});},[]);}clonedChildren=Children.map(filteredSlots,(child,index)=>{let ref;if(index===0){ref=childrenRef[0];}if(index===filteredSlots.length-1){ref=childrenRef[1];}const size={width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{ref:ref,style:size,children:/*#__PURE__*/cloneElement(child,{style:{...child.props?.style,...size,flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-original-\"+index:undefined},child.props?.children)})});});}const isInView=isCanvas?true:useInView(parentRef);if(!isCanvas){for(let i=0;i<duplicateBy;i++){dupedChildren=dupedChildren.concat(Children.map(filteredSlots,(child,childIndex)=>{const size={width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\",willChange:!isInView?undefined:\"transform\"};return /*#__PURE__*/_jsx(LayoutGroup,{inherit:\"id\",children:/*#__PURE__*/_jsx(\"li\",{style:size,\"aria-hidden\":true,children:/*#__PURE__*/cloneElement(child,{key:i+\" \"+childIndex,style:{...child.props?.style,width:widthType?child.props?.width:\"100%\",height:heightType?child.props?.height:\"100%\",flexShrink:0,...childrenStyles},layoutId:child.props.layoutId?child.props.layoutId+\"-dupe-\"+i:undefined},child.props?.children)},i+\"li\"+childIndex)},i+\"lg\"+childIndex);}));}}const animateToValue=size.children+size.children*Math.round(size.parent/size.children);const initialTime=useRef(null);const prevTime=useRef(null);const xOrY=useRef(0);const isHover=useRef(false);const isReducedMotion=useReducedMotion();const listRef=useRef(null);const animationRef=useRef(null);/**\n     * Setup animations\n     */if(!isCanvas){useEffect(()=>{if(isReducedMotion||!animateToValue||!speed){return;}animationRef.current=listRef.current.animate({transform:[transformer(0),transformer(animateToValue)]},{duration:Math.abs(animateToValue)/speed*1e3,iterations:Infinity,easing:\"linear\"});return()=>animationRef.current.cancel();},[hoverFactor,animateToValue,speed]);const playOrPause=useCallback(()=>{if(!animationRef.current)return;const hidden=document.hidden;if(isInView&&!hidden&&animationRef.current.playState===\"paused\"){animationRef.current.play();}else if((!isInView||hidden)&&animationRef.current.playState===\"running\"){animationRef.current.pause();}},[isInView]);useEffect(()=>{playOrPause();},[isInView]);useEffect(()=>{document.addEventListener(\"visibilitychange\",playOrPause);return()=>{document.removeEventListener(\"visibilitychange\",playOrPause);};},[playOrPause]);}/* Fades */const fadeDirection=isHorizontal?\"to right\":\"to bottom\";const fadeWidthStart=fadeWidth/2;const fadeWidthEnd=100-fadeWidth/2;const fadeInsetStart=clamp(fadeInset,0,fadeWidthStart);const fadeInsetEnd=100-fadeInset;const fadeMask=`linear-gradient(${fadeDirection}, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetStart}%, rgba(0, 0, 0, 1) ${fadeWidthStart}%, rgba(0, 0, 0, 1) ${fadeWidthEnd}%, rgba(0, 0, 0, ${fadeAlpha}) ${fadeInsetEnd}%)`;/* Empty state */if(!hasChildren){return /*#__PURE__*/_jsxs(\"section\",{style:placeholderStyles,children:[/*#__PURE__*/_jsx(\"div\",{style:emojiStyles,children:\"✨\"}),/*#__PURE__*/_jsx(\"p\",{style:titleStyles,children:\"Connect to Content\"}),/*#__PURE__*/_jsx(\"p\",{style:subtitleStyles,children:\"Add layers or components to infinitely loop on your page.\"})]});}return /*#__PURE__*/_jsx(\"section\",{style:{...containerStyle,opacity:opacity,WebkitMaskImage:fadeContent?fadeMask:undefined,maskImage:fadeContent?fadeMask:undefined,overflow:overflow?\"visible\":\"hidden\",padding:paddingValue},ref:parentRef,children:/*#__PURE__*/_jsxs(motion.ul,{ref:listRef,style:{...containerStyle,gap:gap,top:direction===\"bottom\"&&isValidNumber(animateToValue)?-animateToValue:undefined,left:direction===\"right\"&&isValidNumber(animateToValue)?-animateToValue:undefined,placeItems:alignment,position:\"relative\",flexDirection:isHorizontal?\"row\":\"column\",...style,willChange:isCanvas||!isInView?\"auto\":\"transform\",transform:transformer(0)},onMouseEnter:()=>{isHover.current=true;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=hoverFactor;}},onMouseLeave:()=>{isHover.current=false;if(animationRef.current){// TODO Replace with updatePlaybackRate when Chrome bugs sorted\nanimationRef.current.playbackRate=1;}},children:[clonedChildren,dupedChildren]})});}/* Default Properties */Ticker.defaultProps={gap:10,padding:10,sizingOptions:{widthType:true,heightType:true},fadeOptions:{fadeContent:true,overflow:false,fadeWidth:25,fadeAlpha:0,fadeInset:0},direction:true};/* Property Controls */addPropertyControls(Ticker,{slots:{type:ControlType.Array,title:\"Children\",control:{type:ControlType.ComponentInstance}},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:1e3,defaultValue:100,unit:\"%\",displayStepper:true,step:5},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left\",\"right\",\"top\",\"bottom\"],optionIcons:[\"direction-left\",\"direction-right\",\"direction-up\",\"direction-down\"],optionTitles:[\"Left\",\"Right\",\"Top\",\"Bottom\"],defaultValue:\"left\",displaySegmentedControl:true},alignment:{type:ControlType.Enum,title:\"Align\",options:[\"flex-start\",\"center\",\"flex-end\"],optionIcons:{direction:{right:[\"align-top\",\"align-middle\",\"align-bottom\"],left:[\"align-top\",\"align-middle\",\"align-bottom\"],top:[\"align-left\",\"align-center\",\"align-right\"],bottom:[\"align-left\",\"align-center\",\"align-right\"]}},defaultValue:\"center\",displaySegmentedControl:true},gap:{type:ControlType.Number,title:\"Gap\"},padding:{title:\"Padding\",type:ControlType.FusedNumber,toggleKey:\"paddingPerSide\",toggleTitles:[\"Padding\",\"Padding per side\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},sizingOptions:{type:ControlType.Object,title:\"Sizing\",controls:{widthType:{type:ControlType.Boolean,title:\"Width\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true},heightType:{type:ControlType.Boolean,title:\"Height\",enabledTitle:\"Auto\",disabledTitle:\"Stretch\",defaultValue:true}}},fadeOptions:{type:ControlType.Object,title:\"Clipping\",controls:{fadeContent:{type:ControlType.Boolean,title:\"Fade\",defaultValue:true},overflow:{type:ControlType.Boolean,title:\"Overflow\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false,hidden(props){return props.fadeContent===true;}},fadeWidth:{type:ControlType.Number,title:\"Width\",defaultValue:25,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeInset:{type:ControlType.Number,title:\"Inset\",defaultValue:0,min:0,max:100,unit:\"%\",hidden(props){return props.fadeContent===false;}},fadeAlpha:{type:ControlType.Number,title:\"Opacity\",defaultValue:0,min:0,max:1,step:.05,hidden(props){return props.fadeContent===false;}}}},hoverFactor:{type:ControlType.Number,title:\"Hover\",min:0,max:1,unit:\"x\",defaultValue:1,step:.1,displayStepper:true,description:\"Slows down the speed while you are hovering.\"}});/* Placeholder Styles */const containerStyle={display:\"flex\",width:\"100%\",height:\"100%\",maxWidth:\"100%\",maxHeight:\"100%\",placeItems:\"center\",margin:0,padding:0,listStyleType:\"none\",textIndent:\"none\"};/* Styles */const placeholderStyles={display:\"flex\",width:\"100%\",height:\"100%\",placeContent:\"center\",placeItems:\"center\",flexDirection:\"column\",color:\"#96F\",background:\"rgba(136, 85, 255, 0.1)\",fontSize:11,overflow:\"hidden\",padding:\"20px 20px 30px 20px\"};const emojiStyles={fontSize:32,marginBottom:10};const titleStyles={margin:0,marginBottom:10,fontWeight:600,textAlign:\"center\"};const subtitleStyles={margin:0,opacity:.7,maxWidth:150,lineHeight:1.5,textAlign:\"center\"};/* Clamp function, used for fadeInset */const clamp=(num,min,max)=>Math.min(Math.max(num,min),max);const isValidNumber=value=>typeof value===\"number\"&&!isNaN(value);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Ticker\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicHeight\":\"200\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Ticker.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType}from\"framer\";import{motion}from\"framer-motion\";import{DEFAULT_TRANSITION}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";export const Colors={Primary:{color:\"#000\",fill:\"#F3F3F3\",fillA:\"#F3F3F3\",fillB:\"#999999\"},Accent:{color:\"#FFF\",fill:\"#111\",fillA:\"#5E5E5E\",fillB:\"#111\"}};export function Icon({image,color,size,style={},defaultImage}){let colorValue=color||(image?.src?undefined:\"#999\");return /*#__PURE__*/_jsx(\"div\",{\"aria-label\":image?.alt,style:{width:size,height:size,minWidth:size,minHeight:size,pointerEvents:\"none\",backgroundColor:colorValue,backgroundImage:colorValue?\"none\":`url('${image?.src}')`,maskImage:image?.src?`url('${image?.src}')`:defaultImage,backgroundSize:\"contain\",backgroundPosition:\"center\",maskSize:\"contain\",maskPosition:\"center\",...style}});}export function iconProp({buttonTitle=\"Icon\",size=24,object=true}={}){return{type:ControlType.Object,buttonTitle,optional:true,defaultValue:{color:\"#000\",size},controls:{image:{type:ControlType.ResponsiveImage},color:{type:ControlType.Color,optional:true,defaultValue:\"#000\"},size:{type:ControlType.Number,defaultValue:size,min:1,step:1,displayStepper:true}}};}export function Button({tag=\"button\",fill,color,shadows,border,radius,padding,font,opacity,bgBlur,transition,variant=\"\",children,style,animate,...otherProps}){let background=\"none\";if(fill){if(fill.type===\"color\"){background=fill[`${variant}Color`]||fill.defaultColor;}else{background=`linear-gradient(${fill.gradientAngle}deg, ${fill[`${variant}ColorB`]||fill.defaultColorB}, ${fill[`${variant}ColorA`]||fill.defaultColorA})`;}}const Tag=motion[tag];const addWrapper=tag===\"input\";const elementChildren=[children,border&&/*#__PURE__*/_jsx(motion.div,{animate:{borderColor:border[`${variant}Color`]||border.defaultColor},style:{position:\"absolute\",inset:0,borderWidth:border.width,borderStyle:border.style,borderRadius:radius,pointerEvents:\"none\"},initial:false,transition:transition})];let element=/*#__PURE__*/_jsx(Tag,{style:{position:\"relative\",borderRadius:radius,padding:padding,textAlign:\"center\",appearance:\"none\",border:\"none\",backdropFilter:bgBlur?`blur(${bgBlur}px)`:undefined,...font,...style},animate:{background,color:typeof color===\"object\"?color[`${variant}Color`]||color.defaultColor:color,boxShadow:typeof shadows===\"object\"?shadows[`${variant}Shadows`]||shadows.defaultShadows:shadows,opacity:typeof opacity===\"object\"?typeof opacity[variant]===\"number\"?opacity[variant]:opacity.default:typeof opacity===\"number\"?opacity:1,...animate},initial:false,transition:transition,children:addWrapper?undefined:elementChildren,...otherProps});if(addWrapper){element=/*#__PURE__*/_jsxs(\"div\",{style:{display:\"contents\"},children:[element,elementChildren]});}return element;}export function createButtonPropertyControls({variants=[],font=true,color=true,placeholder=false,opacity=false,padding=\"10px\",hidden={},endProps={},lastControlDescription=\"\"}){const allVariants=variants.length?variants:[{id:\"default\",title:\"Default\",optional:false,...Colors.Primary}];const colorControls={};const placeholderControls={};const fillControls={};const borderControls={};const shadowsControls={};const opacityControls={};const defaultColorValues={};const defaultPlaceholderValues={};const defaultFillValues={type:\"color\",gradientAngle:0};const defaultBorderValues={width:\"1px\",style:\"solid\"};const defaultOpacityValues={};let hasDefaultBorder=allVariants.some(variant=>variant.borderColor);for(const variant of allVariants){const isDefault=variant.id===\"default\";const optional=variant.optional??true;colorControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.color,title:isDefault?\"Color\":variant.title};if(placeholder){placeholderControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.placeholder,title:isDefault?\"Color\":variant.title};}fillControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.fill,title:isDefault?\"Color\":variant.title,hidden:props=>props.type!=\"color\"};fillControls[`${variant.id}ColorA`]={type:ControlType.Color,optional,defaultValue:variant.fillA,title:isDefault?\"Colors\":variant.title,hidden:props=>props.type!=\"linearGradient\"};fillControls[`${variant.id}ColorB`]={type:ControlType.Color,optional,defaultValue:variant.fillB,title:\" \",hidden:props=>props.type!=\"linearGradient\"};borderControls[`${variant.id}Color`]={type:ControlType.Color,optional,defaultValue:variant.borderColor||(variants.length===1?\"#222\":undefined),title:isDefault?\"Color\":variant.title};shadowsControls[`${variant.id}Shadows`]={type:ControlType.BoxShadow,title:variant.title};if(opacity){opacityControls[variant.id]={type:ControlType.Number,title:variant.title,defaultValue:typeof variant.opacity===\"number\"?variant.opacity:1,min:0,max:1,step:.01};}}for(const prop of Object.keys(colorControls)){defaultColorValues[prop]=colorControls[prop].defaultValue;}for(const prop of Object.keys(placeholderControls)){defaultPlaceholderValues[prop]=placeholderControls[prop].defaultValue;}for(const prop of Object.keys(fillControls)){defaultFillValues[prop]=fillControls[prop].defaultValue;}for(const prop of Object.keys(borderControls)){defaultBorderValues[prop]=borderControls[prop].defaultValue;}for(const prop of Object.keys(opacityControls)){defaultOpacityValues[prop]=opacityControls[prop].defaultValue;}const showTransition=variants.length>0;return{font:font?{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4},hidden:hidden[\"font\"]}:undefined,color:color?variants.length?{type:ControlType.Object,defaultValue:defaultColorValues,controls:colorControls,buttonTitle:\"Font Color\"}:colorControls[\"default\"]:undefined,placeholder:placeholder?variants.length?{type:ControlType.Object,defaultValue:defaultPlaceholderValues,controls:placeholderControls,hidden:hidden[\"placeholder\"]}:{...placeholderControls[\"default\"],hidden:hidden[\"placeholder\"]}:undefined,fill:{type:ControlType.Object,optional:true,defaultValue:defaultFillValues,controls:{type:{type:ControlType.Enum,options:[\"color\",\"linearGradient\"],optionTitles:[\"Color\",\"Gradient\"],displaySegmentedControl:true},...fillControls,gradientAngle:{type:ControlType.Number,defaultValue:0,title:\"Angle\",step:1,min:0,max:360,unit:\"\\xb0\",hidden:props=>props.type!=\"linearGradient\"}}},radius:{type:ControlType.BorderRadius,defaultValue:\"10px\"},padding:{type:ControlType.Padding,defaultValue:padding},border:{type:ControlType.Object,optional:true,defaultValue:hasDefaultBorder?defaultBorderValues:undefined,controls:{...borderControls,width:{type:ControlType.Padding,defaultValue:defaultBorderValues.width},style:{type:ControlType.Enum,defaultValue:defaultBorderValues.style,options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]}}},shadows:variants.length?{type:ControlType.Object,optional:true,controls:shadowsControls}:{type:ControlType.BoxShadow},opacity:opacity?{type:ControlType.Object,controls:opacityControls}:undefined,bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\",description:!showTransition?lastControlDescription:undefined},...endProps,transition:showTransition?{type:ControlType.Transition,defaultValue:DEFAULT_TRANSITION,description:lastControlDescription}:undefined};}\nexport const __FramerMetadata__ = {\"exports\":{\"iconProp\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"createButtonPropertyControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Colors\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Button\":{\"type\":\"reactComponent\",\"name\":\"Button\",\"slots\":[\"children\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"Icon\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SharedStyles.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{ControlType,RenderTarget}from\"framer\";import{generateBuyNowCheckoutUrl,useAmountInStock}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";import{useProductStore,useSelectedVariant}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";import{parseShopifyData,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{Button,createButtonPropertyControls,Colors}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js\";var State;(function(State){State[\"Default\"]=\"default\";State[\"OutOfStock\"]=\"outOfStock\";})(State||(State={}));const defaultText={[\"default\"]:\"Buy Now\",[\"outOfStock\"]:\"Buy Now\"};/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 300\n * @framerDisableUnlink\n */export default function BuyNowButton(props){const{newTab,layer,disableOutOfStock}=props;const{shopifyId}=parseShopifyData(props.shopifyData);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const{quantity,selectedVariantOptions}=useProductStore(state=>state.products?.[shopifyId]||{quantity:1,selectedVariantOptions:{}});const selectedVariant=useSelectedVariant(props.shopifyData);const[inventory,inventoryIsLoading]=useAmountInStock(props.shopifyData);const state=isCanvas||!disableOutOfStock||inventory[selectedVariant?.id]>0||inventoryIsLoading?\"default\":\"outOfStock\";const onClick=()=>{if(selectedVariant){const windowReference=newTab?window.open():null;generateBuyNowCheckoutUrl(selectedVariant.id,quantity).then(checkoutUrl=>{if(newTab){windowReference.location=checkoutUrl;}else{window.location.href=checkoutUrl;}}).catch(console.error);}};return /*#__PURE__*/_jsx(Button,{...props,onClick:onClick,variant:state,style:{cursor:state===\"default\"?\"pointer\":undefined,userSelect:\"none\",...props.style},children:props.text[state]});}BuyNowButton.displayName=\"Buy Now Button\";addPropertyControlsFrameship(BuyNowButton,{newTab:{type:ControlType.Boolean,defaultValue:true,description:\"Open checkout in new tab\"},disableOutOfStock:{type:ControlType.Boolean,defaultValue:true,title:\"Disable Out-of-Stock\",description:\"Disable if selected variant is out-of-stock.\"},text:{type:ControlType.Object,defaultValue:defaultText,controls:{[\"default\"]:{type:ControlType.String,defaultValue:defaultText[\"default\"],placeholder:\"Default Text\"},[\"outOfStock\"]:{type:ControlType.String,defaultValue:defaultText[\"outOfStock\"],placeholder:\"Out of Stock Text\",title:\"Out of Stock\"}}},...createButtonPropertyControls({opacity:true,variants:[{id:\"default\",title:\"Default\",...Colors.Primary,opacity:1},{id:\"outOfStock\",title:\"Out of Stock\",opacity:.5}]})},{shopifyData:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BuyNowButton\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"300\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,withCSS,RenderTarget}from\"framer\";import{useState,useEffect}from\"react\";import{parseShopifyData,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{Button,createButtonPropertyControls,Colors}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js\";import{useProductStore,useSelectedVariant}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";import{useCartItem}from\"https://framerusercontent.com/modules/Be5mN5EUhdOwl54qCG8y/Icj1ZU450uFtWcyrdGTm/CartItemContext.js\";import{useCartStore,useAmountInStock}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";var State;(function(State){State[\"Default\"]=\"default\";State[\"Disabled\"]=\"disabled\";})(State||(State={}));const INPUT_CLASS=\"frameship-quantity-input\";function QuantityInputComponent(props){const{shopifyData,type,icon,maxValue}=props;const{shopifyId}=parseShopifyData(shopifyData);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const{cartItemId,variantId:cartVariantId,quantity:cartItemQuantity}=useCartItem();const[productStoreQuantity,setProductStoreQuantity]=useProductStore(state=>[state.products[shopifyId]?.quantity,state.setQuantity]);const[items,setCartItemQuantity]=useCartStore(state=>[state.items,state.setCartItemQuantity]);const[inventory,inventoryIsLoading]=useAmountInStock(shopifyData);const selectedVariant=useSelectedVariant(props.shopifyData);const variantId=cartItemId?cartVariantId:selectedVariant?.id;const quantity=(cartItemId?cartItemQuantity:productStoreQuantity)||1;const maxQuantity=Math.min(inventory[variantId]||Infinity,maxValue);const[inputValue,setInputValue]=useState(quantity.toString());const setItemQuantity=newQuantity=>{const limitedQuantity=Math.min(newQuantity,maxQuantity,maxValue);if(cartItemId){setCartItemQuantity(cartItemId,limitedQuantity);}else{setProductStoreQuantity(shopifyId,limitedQuantity);}};useEffect(()=>{if(!cartItemId&&quantity>maxQuantity){setProductStoreQuantity(shopifyId,maxQuantity);}},[maxQuantity,cartItemId,quantity,shopifyId,setProductStoreQuantity]);useEffect(()=>{setInputValue(quantity.toString());},[quantity]);let element=null;switch(type){case\"add\":case\"subtract\":const radius=icon.rounded?icon.strokeWidth/2:0;const disabled=type===\"add\"&&quantity>=maxQuantity||type===\"subtract\"&&quantity<=1;element=/*#__PURE__*/_jsx(Button,{...props,variant:disabled&&!isCanvas?\"disabled\":\"default\",onClick:()=>setItemQuantity(quantity+(type===\"add\"?1:-1)),disabled:disabled,style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:disabled?undefined:\"pointer\",...props.style},children:/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:icon.size,height:icon.size,viewBox:\"0 0 16 16\",children:[/*#__PURE__*/_jsx(\"path\",{d:`M ${radius} 8 L ${16-radius} 8`,fill:\"transparent\",strokeWidth:icon.strokeWidth,stroke:\"currentColor\",strokeLinecap:icon.rounded?\"round\":\"square\"}),type==\"add\"&&/*#__PURE__*/_jsx(\"path\",{d:`M 8 ${radius} L 8 ${16-radius}`,fill:\"transparent\",strokeWidth:icon.strokeWidth,stroke:\"currentColor\",strokeLinecap:icon.rounded?\"round\":\"square\"})]})});break;case\"input\":const handleInputChange=event=>{setInputValue(event.target.value);};const handleSetQuantity=()=>{const newQuantity=parseInt(inputValue,10);if(!isNaN(newQuantity)&&newQuantity>0){setItemQuantity(newQuantity);}else{setInputValue(quantity.toString());}};element=/*#__PURE__*/_jsx(Button,{...props,className:INPUT_CLASS,tag:\"input\",type:\"number\",value:inputValue,onChange:handleInputChange,onBlur:handleSetQuantity,onKeyDown:event=>{if(event.key===\"Enter\"){handleSetQuantity();}},max:maxQuantity,style:{appearance:\"textfield\",...props.style}});break;}return element;}/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerDisableUnlink\n */const QuantityInput=withCSS(QuantityInputComponent,[`input.${INPUT_CLASS}[type=number]::-webkit-outer-spin-button,\n\tinput.${INPUT_CLASS}[type=number]::-webkit-inner-spin-button {\n\t\tdisplay: none;\n\t}`,`input.${INPUT_CLASS}[type=number]::-moz-inner-spin-button,\n\tinput.${INPUT_CLASS}[type=number]::-moz-outer-spin-button {\n\t\t-moz-appearance: none;\n\t\tmargin: 0;\n\t}`]);export default QuantityInput;QuantityInput.displayName=\"Quantity Input\";addPropertyControlsFrameship(QuantityInput,{type:{type:ControlType.Enum,options:[\"subtract\",\"input\",\"add\"],optionTitles:[\"−\",\"Input\",\"+\"],displaySegmentedControl:true},maxValue:{type:ControlType.Number,defaultValue:100,min:1,step:1,description:\"The value will always be limited to the amount in stock\"},icon:{type:ControlType.Object,hidden:props=>props.type!==\"add\"&&props.type!==\"subtract\",controls:{size:{type:ControlType.Number,defaultValue:12,min:0,step:1},strokeWidth:{type:ControlType.Number,defaultValue:3,min:0,max:10,step:1,title:\"Stroke\"},rounded:{type:ControlType.Boolean,defaultValue:true}}},...createButtonPropertyControls({placeholder:true,hidden:{font:props=>props.type!==\"input\",placeholder:props=>props.type!==\"input\"},variants:[{id:\"default\",title:\"Default\",...Colors.Primary},{id:\"disabled\",title:\"Disabled\",color:\"rgba(0, 0, 0, 0.25)\"}]})},{shopifyData:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"QuantityInput\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"40\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"40\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,withCSS}from\"framer\";import{useSelectedVariant}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";import{useCartItem}from\"https://framerusercontent.com/modules/Be5mN5EUhdOwl54qCG8y/Icj1ZU450uFtWcyrdGTm/CartItemContext.js\";import{currencyFormatProp,formatCurrency,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import currencySymbols from\"https://framerusercontent.com/modules/pJIZxaEdKo1uS87sS4xM/4PSl3AVmNoISomoZ0s7m/CurrencySymbols.js\";const HIDDEN_CLASS=\"frameship-price-label-hidden\";var ProductInfoType;(function(ProductInfoType){ProductInfoType[\"Price\"]=\"price\";ProductInfoType[\"CompareAtPrice\"]=\"compareAtPrice\";})(ProductInfoType||(ProductInfoType={}));function ProductInfoLabelComponent(props){const{type,whenZero,textWhenZero,currencyFormat}=props;const Tag=props.htmlTag||\"p\";const variant=useSelectedVariant(props.shopifyData);const{inCart,price:cartPrice,compareAtPrice:cartCompareAtPrice}=useCartItem();let value=0;let currencyCode=props.currency;let hidden=false;if(inCart){if(type===\"price\"){if(isPriceV2(cartPrice)){value=cartPrice.amount||0;currencyCode=cartPrice.currencyCode||props.currency;}}else if(type===\"compareAtPrice\"){if(isPriceV2(cartCompareAtPrice)){value=cartCompareAtPrice.amount||0;currencyCode=cartCompareAtPrice.currencyCode||props.currency;}}}else if(variant){const price=variant[type];if(isPriceV2(price)){value=price.amount||0;currencyCode=price.currencyCode||props.currency;}else if(typeof price===\"number\"){value=price;}}let text=\"\";if(whenZero==\"hide\"&&!value){hidden=true;}else if(whenZero==\"showText\"&&!value){text=textWhenZero;}else{text=formatCurrency(value,currencyCode,currencyFormat);}return hidden?/*#__PURE__*/_jsx(\"div\",{className:HIDDEN_CLASS}):/*#__PURE__*/_jsxs(Tag,{style:{color:props.color,margin:0,whiteSpace:\"pre\",userSelect:props.selectable?undefined:\"none\",textDecoration:props.decoration===\"strikethrough\"?\"line-through\":props.decoration,textWrap:props.style?.width==\"100%\"?\"wrap\":\"nowrap\",...props.font,...props.style},children:[props.prefix,text,props.suffix]});}/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n * @framerDisableUnlink\n */const ProductInfoLabel=withCSS(ProductInfoLabelComponent,[`.${HIDDEN_CLASS} { display: none !important; }`,`div:has(> .${HIDDEN_CLASS}) { display: none !important; }`],\"\");export default ProductInfoLabel;ProductInfoLabel.displayName=\"Price Label\";addPropertyControlsFrameship(ProductInfoLabel,{type:{type:ControlType.Enum,defaultValue:\"price\",options:Object.values(ProductInfoType),optionTitles:[\"Price\",\"Compare-at Price\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},whenZero:{type:ControlType.Enum,defaultValue:\"show\",options:[\"show\",\"showText\",\"hide\"],optionTitles:[\"Show\",\"Show Text\",\"Hide\"],title:\"When Zero\"},textWhenZero:{type:ControlType.String,defaultValue:\"Free\",title:\"Text\",description:\"This text is shown when the price is 0\",hidden:props=>props.whenZero!==\"showText\"},currency:{type:ControlType.Enum,defaultValue:\"USD\",title:\"Default Currency\",options:Object.keys(currencySymbols)},currencyFormat:currencyFormatProp(),font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:16,lineHeight:1.4}},color:{type:ControlType.Color,defaultValue:\"#999999\"},prefix:{type:ControlType.String,defaultValue:\"\"},suffix:{type:ControlType.String,defaultValue:\"\"},decoration:{type:ControlType.Enum,defaultValue:\"none\",options:[\"none\",\"strikethrough\",\"underline\"],optionTitles:[\"None\",\"Strikethrough\",\"Underline\"]},selectable:{type:ControlType.Boolean,defaultValue:true,title:\"User Select\"},htmlTag:{type:ControlType.Enum,options:[\"p\",\"span\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"],title:\"Tag\"}},{shopifyData:true});function isPriceV2(value){return value&&typeof value===\"object\"&&value.hasOwnProperty(\"amount\");}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ProductInfoLabel\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ProductInfoLabel.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{ControlType,withCSS,RenderTarget}from\"framer\";import{parseShopifyData,parseShopifyId,ShopifyDataType,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{createButtonPropertyControls,Colors,Button}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js\";import{useProductStore}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";import{useAmountInStock}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";const HIDDEN_CLASS=\"frameship-variant-buttons-hidden\";const SAMPLE_VARIANTS=`[{\"id\":\"gid://shopify/ProductOption/12345678901234\",\"name\":\"Sample Variants\",\"values\":[\"Red\",\"Blue\",\"Green\",\"Purple\"]}]`;var State;(function(State){State[\"Default\"]=\"default\";State[\"Selected\"]=\"selected\";State[\"Disabled\"]=\"disabled\";})(State||(State={}));const alignmentMap={left:\"flex-start\",center:\"center\",right:\"flex-end\"};function VariantButtonsComponent(props){const{shopifyData,variantOptions,titles,textButtons,layout,disableOutOfStock}=props;const{shopifyId,variants}=parseShopifyData(shopifyData);const horizontal=layout.direction===\"horizontal\";const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[selectedVariantOptions,setSelectedVariantOption]=useProductStore(state=>[state.products[shopifyId]?.selectedVariantOptions||{},state.setSelectedVariantOption]);const[inventory,inventoryIsLoading]=useAmountInStock(shopifyData);const options=parseVariantOptions(isCanvas&&!variantOptions?SAMPLE_VARIANTS:variantOptions);const disabledOptionValues={};if(disableOutOfStock){for(const option of options){const disabledValues=[];for(const value of option.values){const matchingVariants=variants.filter(variant=>variant.selectedOptions.some(o=>o.name===option.name&&o.value===value));const outOfStockVariants=matchingVariants.filter(variant=>inventory[variant.id]===0);if(matchingVariants.length===outOfStockVariants.length){disabledValues.push(value);}}disabledOptionValues[option.name]=disabledValues;}}const selectedOptions={...selectedVariantOptions};let hasUpdatedGlobalState=false;let firstAvailableVariantOptions={};for(const variant of variants){if(inventory[variant.id]>0){for(const option of variant.selectedOptions){firstAvailableVariantOptions[option.name]=option.value;}break;}}for(const option of options){const name=option?.name;const values=option?.values;if(!name||!Array.isArray(values)){continue;}if(selectedOptions[name]&&values.includes(selectedOptions[name])){continue;// Keep the existing selection\n}else if(firstAvailableVariantOptions[name]){setSelectedVariantOption(shopifyId,name,firstAvailableVariantOptions[name]);}else{// Auto-select the first option if no selection is made\nsetSelectedVariantOption(shopifyId,name,values[0]);}}const onVariantClicked=(optionName,optionValue)=>{setSelectedVariantOption(shopifyId,optionName,optionValue);};return options.length==0?/*#__PURE__*/_jsx(\"div\",{className:HIDDEN_CLASS}):/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.gap,userSelect:\"none\",minHeight:options.length==0?40:0,minWidth:options.length==0?40:0,...props.style},children:options.map(option=>/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"flex\",flexDirection:titles?.location==\"bottom\"?\"column-reverse\":\"column\",gap:titles?.gap},children:[titles&&/*#__PURE__*/_jsx(\"p\",{style:{width:\"100%\",color:titles.color,whiteSpace:\"pre\",margin:0,textTransform:titles.transform,...titles.font},children:option.name}),/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:\"flex\",flexDirection:horizontal?\"row\":\"column\",rowGap:layout.gapV,columnGap:layout.gapH,alignItems:horizontal?\"center\":alignmentMap[layout.verticalAlignment],justifyContent:horizontal?layout.distribute:\"start\",flexWrap:layout.wrap?\"wrap\":\"nowrap\"},children:option.values.map((value,index)=>{const selected=isCanvas?index===0:selectedOptions[option.name]==value;const disabled=isCanvas||!disableOutOfStock?false:disabledOptionValues[option.name]?.includes(value);return /*#__PURE__*/_jsx(Button,{...textButtons,variant:disabled?\"disabled\":selected?\"selected\":\"default\",onClick:()=>!disabled&&onVariantClicked(option.name,value),style:{flex:textButtons.width===\"fill\"?\"1 1 0\":\"none\",width:textButtons.width===\"fill\"?\"0\":textButtons.width===\"fixed\"?textButtons.fixedWidth:undefined,cursor:disabled?undefined:\"pointer\",textTransform:textButtons.transform,...textButtons.font},opacity:disabled&&textButtons.outOfStock?textButtons.outOfStock.opacity:1,disabled:disabled,children:value},value);})})]},option.name))});}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 300\n * @framerDisableUnlink\n */const VariantButtons=withCSS(VariantButtonsComponent,[`.${HIDDEN_CLASS} { display: none !important; }`,`div:has(> .${HIDDEN_CLASS}) { display: none !important; }`],\"\");export default VariantButtons;VariantButtons.displayName=\"Variant Buttons\";addPropertyControlsFrameship(VariantButtons,{variantOptions:{type:ControlType.String,defaultValue:\"\",placeholder:\"Variant Options\",preventLocalization:true,description:\"Connect to the Variant Options field from the products CMS\"},disableOutOfStock:{type:ControlType.Boolean,defaultValue:true,title:\"Disable Out-of-Stock\",description:\"Disable out-of-stock product variants.\"},titles:{type:ControlType.Object,optional:true,buttonTitle:\"Style\",defaultValue:{location:\"top\",color:\"#000\",gap:10},controls:{location:{type:ControlType.Enum,defaultValue:\"top\",options:[\"top\",\"bottom\"],optionTitles:[\"Top\",\"Bottom\"],displaySegmentedControl:true},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4}},color:{type:ControlType.Color,defaultValue:\"#000\"},gap:{type:ControlType.Number,defaultValue:10,min:0,step:1},transform:{type:ControlType.Enum,defaultValue:\"none\",options:[\"none\",\"capitalize\",\"uppercase\",\"lowercase\"],optionTitles:[\"None\",\"Capitalize\",\"Uppercase\",\"Lowercase\"]}}},textButtons:{type:ControlType.Object,buttonTitle:\"Style\",title:\"Buttons\",controls:{width:{type:ControlType.Enum,defaultValue:\"fit\",options:[\"fit\",\"fill\",\"fixed\"],optionTitles:[\"Fit\",\"Fill\",\"Fixed\"],displaySegmentedControl:true},fixedWidth:{type:ControlType.Number,defaultValue:100,min:0,step:1,title:\" \",hidden:props=>props.width!==\"fixed\"},outOfStock:{type:ControlType.Object,title:\"Out of Stock\",controls:{opacity:{type:ControlType.Number,defaultValue:.5,min:0,max:1,step:.01}}},...createButtonPropertyControls({padding:\"12px 20px 12px 20px\",variants:[{id:\"default\",title:\"Default\",...Colors.Primary},{id:\"selected\",title:\"Selected\",...Colors.Accent},{id:\"disabled\",title:\"Disabled\"}],endProps:{transform:{type:ControlType.Enum,defaultValue:\"none\",options:[\"none\",\"capitalize\",\"uppercase\",\"lowercase\"],optionTitles:[\"None\",\"Capitalize\",\"Uppercase\",\"Lowercase\"]}}})}},layout:{type:ControlType.Object,controls:{direction:{type:ControlType.Enum,defaultValue:\"horizontal\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true},distribute:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"],hidden:props=>props.direction!==\"horizontal\"},wrap:{type:ControlType.Boolean,defaultValue:true,hidden:props=>props.direction!==\"horizontal\"},verticalAlignment:{type:ControlType.Enum,defaultValue:\"center\",options:[\"left\",\"center\",\"right\"],optionTitles:[\"Left\",\"Center\",\"Right\"],displaySegmentedControl:true,title:\"Alignment\",hidden:props=>props.direction!==\"vertical\"},gapH:{type:ControlType.Number,defaultValue:10,min:0,step:1,hidden:props=>props.direction!==\"horizontal\"},gapV:{type:ControlType.Number,defaultValue:10,min:0,step:1}}},gap:{type:ControlType.Number,defaultValue:20,min:0,step:1,hidden:props=>props.variantMode==\"one\"}},{shopifyData:true});const variantOptionsCache={};function parseVariantOptions(variantOptions){if(!variantOptions){return[];}const cachedResult=variantOptionsCache[variantOptions];if(cachedResult){return cachedResult;}try{const options=JSON.parse(variantOptions);let result=options;if(options.length===1&&options[0]?.values?.length===1){result=[];}for(let i=0;i<result.length;i++){if(typeof result[i]===\"object\"){result[i].id=parseShopifyId(result[i].id,ShopifyDataType.ProductOption);}}variantOptionsCache[variantOptions]=result;return result;}catch(error){console.error(\"Error parsing variant options:\",error);return[];}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"VariantButtons\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"auto\",\"framerDisableUnlink\":\"\",\"framerIntrinsicWidth\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./VariantButtons.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{ControlType,RenderTarget}from\"framer\";import{useState,useEffect}from\"react\";import{useCartStore,useAmountInStock}from\"https://framerusercontent.com/modules/ibjYTPLnMMPhPLNCj4uG/cXa4uUn5VWWAcoaQctVU/Cart.js\";import{parseShopifyData,OPEN_CART_EVENT,addPropertyControlsFrameship}from\"https://framerusercontent.com/modules/gd3dcT3w5rYoRy7ZcKte/sH6FZizM8jJ11j2dQOhQ/Shared.js\";import{createButtonPropertyControls,Colors,Button}from\"https://framerusercontent.com/modules/fVHxdMMgjEun6wSmFoH5/UO9Fwa3zz4T8isOKvUfB/SharedStyles.js\";import{useProductStore,useSelectedVariant}from\"https://framerusercontent.com/modules/ajKYBgRXgNyNgL1GkpqG/prknJU66nI5iRE43ff6z/ProductState.js\";var State;(function(State){State[\"Default\"]=\"default\";State[\"OutOfStock\"]=\"outOfStock\";})(State||(State={}));const defaultText={[\"default\"]:\"Add to Cart\",[\"outOfStock\"]:\"Out of Stock\"};/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 300\n * @framerDisableUnlink\n */export default function AddToCartButton(props){const{disableOutOfStock}=props;const{shopifyId,variants}=parseShopifyData(props.shopifyData);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[state,setState]=useState(\"default\");const[items,addToCart]=useCartStore(state=>[state.items,state.addToCart]);const{quantity,selectedVariantOptions}=useProductStore(state=>state.products?.[shopifyId]||{quantity:1,selectedVariantOptions:{}});const[inventory,inventoryIsLoading]=useAmountInStock(props.shopifyData);const selectedVariant=useSelectedVariant(props.shopifyData);useEffect(()=>{if(!isCanvas){if(disableOutOfStock&&selectedVariant&&inventory[selectedVariant.id]===0){setState(\"outOfStock\");}else{setState(\"default\");}}},[items,selectedVariant,inventory]);const onClick=async()=>{if(state===\"default\"&&selectedVariant&&(!disableOutOfStock||!inventoryIsLoading&&inventory[selectedVariant.id]>0)){await addToCart(selectedVariant.id,quantity);if(props.openCart){window.dispatchEvent(new Event(OPEN_CART_EVENT));}}};return /*#__PURE__*/_jsx(Button,{...props,variant:state,onClick:onClick,style:{cursor:state===\"outOfStock\"?undefined:\"pointer\",userSelect:\"none\",...props.style},children:props.text[state]});}AddToCartButton.displayName=\"Add to Cart Button\";addPropertyControlsFrameship(AddToCartButton,{openCart:{type:ControlType.Boolean,defaultValue:true,description:\"If enabled, opens the cart after adding item\"},disableOutOfStock:{type:ControlType.Boolean,defaultValue:true,title:\"Disable Out-of-Stock\",description:\"Disable if selected variant is out-of-stock.\"},text:{type:ControlType.Object,defaultValue:defaultText,controls:{[\"default\"]:{type:ControlType.String,defaultValue:defaultText[\"default\"],placeholder:\"Default Text\"},[\"outOfStock\"]:{type:ControlType.String,defaultValue:defaultText[\"outOfStock\"],placeholder:\"Out of Stock Text\"}}},...createButtonPropertyControls({variants:[{id:\"default\",title:\"Default\",...Colors.Accent},{id:\"outOfStock\",title:\"Out of Stock\",...Colors.Primary}]})},{shopifyData:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AddToCartButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicWidth\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}