{"version":3,"file":"FrameshopAddtocart.CU_V-RNa.mjs","names":["React.useState","item","PlusCircle"],"sources":["https:/framerusercontent.com/modules/A5j7IKUkismULUFLB0Ti/kwJ8NiZrOZKCDFD8SMI4/QuantityEvents.js","https:/framer.com/m/QuantityEvents-8ZjF.js@kwJ8NiZrOZKCDFD8SMI4","https:/framerusercontent.com/modules/2U6qFmsOuMql7LNdSDG8/BPyN36u8KGTmpUQo0YAy/FrameshopAddtocart.js"],"sourcesContent":["export const quantityEvents={listeners:[],quantity:1,/**\n     * Abonner un callback à l'événement de mise à jour de la quantité.\n     * @param {Function} callback - Fonction appelée lorsque la quantité change.\n     */subscribe(callback){this.listeners.push(callback);},/**\n     * Désabonner un callback de l'événement de mise à jour de la quantité.\n     * @param {Function} callback - Fonction à désabonner.\n     */unsubscribe(callback){this.listeners=this.listeners.filter(listener=>listener!==callback);},/**\n     * Publier un événement de mise à jour de la quantité à tous les abonnés.\n     * @param {number} newQuantity - Nouvelle quantité sélectionnée.\n     */publish(newQuantity){this.quantity=newQuantity;this.listeners.forEach(callback=>callback(newQuantity));},/**\n     * Récupérer la quantité actuelle.\n     * @returns {number} - Quantité actuelle.\n     */getQuantity(){return this.quantity;}};\nexport const __FramerMetadata__ = {\"exports\":{\"quantityEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./QuantityEvents.map","/*\n * QuantityEvents\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/A5j7IKUkismULUFLB0Ti/kwJ8NiZrOZKCDFD8SMI4/QuantityEvents.js\"\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{PlusCircle}from\"lucide-react\";import{quantityEvents}from\"https://framer.com/m/QuantityEvents-8ZjF.js@kwJ8NiZrOZKCDFD8SMI4\";import{cartUpdateEvents}from\"https://framer.com/m/Frameshop-uk10.js@F0HXMoIYR3V1GwYzEzxa\";/**\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function FrameshopAddToCart(props){const{shopId,frameshop_article_id,productName,price,productImage,buttonText,showIcon,iconPosition,buttonBackgroundColor,buttonTextColor,buttonFontSize,buttonFontFamily,buttonFontWeight,isButtonBorderRadiusMixed,buttonTopLeftRadius,buttonTopRightRadius,buttonBottomRightRadius,buttonBottomLeftRadius,buttonBorderRadius,isPaddingMixed,paddingTop,paddingRight,paddingBottom,paddingLeft,buttonPadding,showBorders,buttonBorderColor,isBorderWidthMixed,borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth,buttonBorderWidth,outOfStockText,confirmationMessage,toastBackgroundColor,toastTextColor,toastFontSize,toastFontFamily,toastFontWeight,toastLineHeight}=props;const[stockQuantity,setStockQuantity]=React.useState(null);const[loadingStock,setLoadingStock]=React.useState(true);const[errorStock,setErrorStock]=React.useState(false);const[showNotification,setShowNotification]=React.useState(false);const[quantity,setQuantity]=React.useState(1)// Valeur par défaut\n;// Charger la police choisie\nReact.useEffect(()=>{if(buttonFontFamily){loadGoogleFont(buttonFontFamily);}},[buttonFontFamily]);const loadGoogleFont=font=>{const linkId=`google-font-${font.replace(/\\s+/g,\"-\")}`;if(!document.getElementById(linkId)){const link=document.createElement(\"link\");link.href=`https://fonts.googleapis.com/css2?family=${font.replace(/ /g,\"+\")}&display=swap`;link.rel=\"stylesheet\";link.id=linkId;document.head.appendChild(link);}};// Fonction pour récupérer le stock du produit\nconst fetchStock=async()=>{if(!shopId||!frameshop_article_id){setErrorStock(true);setLoadingStock(false);return;}try{setLoadingStock(true);const response=await fetch(`https://frameshopv2.support-cd7.workers.dev/stock?shopId=${encodeURIComponent(shopId)}&frameshop_article_id=${encodeURIComponent(frameshop_article_id)}`,{method:\"GET\",headers:{\"Content-Type\":\"application/json\"}});if(response.ok){const data=await response.json();setStockQuantity(data.stock_quantity);setErrorStock(false);}else{console.error(\"Error fetching stock:\",response.statusText);setErrorStock(true);}}catch(err){console.error(\"Error fetching stock:\",err);setErrorStock(true);}finally{setLoadingStock(false);}};React.useEffect(()=>{fetchStock();},[shopId,frameshop_article_id]);// Gestion des événements pour la quantité\nReact.useEffect(()=>{const handleQuantityUpdate=newQuantity=>{setQuantity(newQuantity);};quantityEvents.subscribe(handleQuantityUpdate);setQuantity(quantityEvents.getQuantity())// Valeur initiale depuis quantityEvents\n;return()=>{quantityEvents.unsubscribe(handleQuantityUpdate);};},[]);const AddToCart=()=>{let cart=JSON.parse(localStorage.getItem(\"cart\")||\"[]\");let item=cart.find(item=>item.frameshop_article_id===frameshop_article_id);if(item){item.quantity+=quantity;}else{cart.push({frameshop_article_id:frameshop_article_id,name:productName,quantity:quantity,price:price,image:productImage});}console.log(`Ajout au panier de l'article FrameshopArticleID: ${frameshop_article_id}, Quantit\\xe9: ${quantity}, Prix: ${price}`);localStorage.setItem(\"cart\",JSON.stringify(cart));cartUpdateEvents.publish(\"cartUpdated\",{});setShowNotification(true);setTimeout(()=>setShowNotification(false),3e3);};const containerStyle={display:\"flex\",justifyContent:\"center\",alignItems:\"center\",backgroundColor:buttonBackgroundColor,color:buttonTextColor,fontSize:`${buttonFontSize}px`,fontFamily:buttonFontFamily,fontWeight:buttonFontWeight,borderRadius:isButtonBorderRadiusMixed?`${buttonTopLeftRadius}px ${buttonTopRightRadius}px ${buttonBottomRightRadius}px ${buttonBottomLeftRadius}px`:`${buttonBorderRadius}px`,padding:isPaddingMixed?`${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`:`${buttonPadding}px`,cursor:\"pointer\",width:\"100%\",borderColor:showBorders?buttonBorderColor:\"transparent\",borderWidth:showBorders?isBorderWidthMixed?`${borderTopWidth}px ${borderRightWidth}px ${borderBottomWidth}px ${borderLeftWidth}px`:`${buttonBorderWidth}px`:\"0\",borderStyle:showBorders?\"solid\":\"none\",opacity:stockQuantity===0?.6:1,pointerEvents:stockQuantity===0?\"none\":\"auto\"};const iconStyle={marginLeft:iconPosition===\"right\"?\"8px\":\"0\",marginRight:iconPosition===\"left\"?\"8px\":\"0\"};const displayText=stockQuantity===0?outOfStockText:buttonText;return /*#__PURE__*/_jsxs(\"div\",{children:[/*#__PURE__*/_jsxs(\"div\",{onClick:stockQuantity===0?null:AddToCart,style:containerStyle,children:[showIcon&&iconPosition===\"left\"&&stockQuantity!==0&&/*#__PURE__*/_jsx(PlusCircle,{color:buttonTextColor,style:iconStyle}),displayText,showIcon&&iconPosition===\"right\"&&stockQuantity!==0&&/*#__PURE__*/_jsx(PlusCircle,{color:buttonTextColor,style:iconStyle})]}),showNotification&&/*#__PURE__*/_jsx(\"div\",{style:{...toastStyle,backgroundColor:toastBackgroundColor,color:toastTextColor,textAlign:\"center\",lineHeight:toastLineHeight,whiteSpace:\"pre-line\",width:\"340px\",boxSizing:\"content-box\",wordBreak:\"break-word\",fontSize:`${toastFontSize}px`,fontFamily:toastFontFamily,fontWeight:toastFontWeight,overflowX:\"auto\",maxWidth:\"90%\"},children:confirmationMessage.replace(\"{productName}\",productName)})]});}const toastStyle={position:\"fixed\",bottom:\"20px\",left:\"50%\",transform:\"translateX(-50%)\",padding:\"10px 20px\",borderRadius:\"8px\",boxShadow:\"0px 4px 6px rgba(0,0,0,0.1)\",zIndex:9999};FrameshopAddToCart.defaultProps={shopId:\"\",frameshop_article_id:\"001\",productName:\"Product Name\",price:10,productImage:\"\",buttonBackgroundColor:\"#000000\",buttonTextColor:\"#FFFFFF\",buttonFontSize:16,buttonFontFamily:\"Inter\",buttonFontWeight:\"400\",buttonPadding:10,buttonBorderRadius:10,showBorders:false,buttonBorderColor:\"#000000\",buttonBorderWidth:1,buttonText:\"Add to Cart\",showIcon:true,iconPosition:\"left\",outOfStockText:\"Available Soon\",confirmationMessage:\"{productName} has been added to your shopping cart.\",toastBackgroundColor:\"#fff\",toastTextColor:\"#000000\",toastFontSize:14,toastFontFamily:\"Inter\",toastFontWeight:\"400\",toastLineHeight:1.5};addPropertyControls(FrameshopAddToCart,{shopId:{type:ControlType.String,title:\"Shop ID\",defaultValue:\"\"},frameshop_article_id:{type:ControlType.String,title:\"Frameshop Article ID\",defaultValue:\"001\"},productName:{type:ControlType.String,title:\"Product Name\",defaultValue:\"Product Name\"},price:{type:ControlType.Number,title:\"Price\",defaultValue:10,min:0,step:1},productImage:{type:ControlType.Image,title:\"Product Image\",defaultValue:\"\"},buttonText:{type:ControlType.String,title:\"Text\",defaultValue:\"Add to Cart\"},outOfStockText:{type:ControlType.String,title:\"Out of Stock Text\",defaultValue:\"Available Soon\"},showIcon:{type:ControlType.Boolean,title:\"Show Icon\",defaultValue:true},iconPosition:{type:ControlType.Enum,title:\"Icon Position\",options:[\"left\",\"right\"],optionTitles:[\"Left\",\"Right\"],defaultValue:\"left\",hidden:({showIcon})=>!showIcon},buttonBackgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},buttonTextColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#FFFFFF\"},buttonFontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:16,min:8,max:100,unit:\"px\",displayStepper:true},buttonFontFamily:{type:ControlType.String,title:\"Font Family\",defaultValue:\"Inter\"},buttonFontWeight:{type:ControlType.Enum,title:\"Font Weight\",options:[\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],optionTitles:[\"Thin\",\"Extra Light\",\"Light\",\"Regular\",\"Medium\",\"Semi Bold\",\"Bold\",\"Extra Bold\",\"Black\"],defaultValue:\"400\"},buttonPadding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:10,toggleKey:\"isPaddingMixed\",toggleTitles:[\"Uniform\",\"Individual\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},buttonBorderRadius:{type:ControlType.FusedNumber,title:\"Border Radius\",defaultValue:10,toggleKey:\"isButtonBorderRadiusMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"buttonTopLeftRadius\",\"buttonTopRightRadius\",\"buttonBottomRightRadius\",\"buttonBottomLeftRadius\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0},showBorders:{type:ControlType.Boolean,title:\"Show Borders\",defaultValue:false},buttonBorderColor:{type:ControlType.Color,title:\"Border Color\",defaultValue:\"#000000\",hidden:({showBorders})=>!showBorders},buttonBorderWidth:{type:ControlType.FusedNumber,title:\"Border Width\",defaultValue:1,toggleKey:\"isBorderWidthMixed\",toggleTitles:[\"Uniform\",\"Individual\"],valueKeys:[\"borderTopWidth\",\"borderRightWidth\",\"borderBottomWidth\",\"borderLeftWidth\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,hidden:({showBorders})=>!showBorders},confirmationMessage:{type:ControlType.String,title:\"Confirmation Message\",defaultValue:\"{productName} has been added to your shopping cart.\"},toastBackgroundColor:{type:ControlType.Color,title:\"Toast Background\",defaultValue:\"#fff\"},toastTextColor:{type:ControlType.Color,title:\"Toast Text Color\",defaultValue:\"#000000\"},toastFontSize:{type:ControlType.Number,title:\"Toast Font Size\",defaultValue:14,min:8,max:36,unit:\"px\",displayStepper:true},toastFontFamily:{type:ControlType.String,title:\"Toast Font Family\",defaultValue:\"Inter\"},toastFontWeight:{type:ControlType.Enum,title:\"Toast Font Weight\",options:[\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],optionTitles:[\"Thin\",\"Extra Light\",\"Light\",\"Regular\",\"Medium\",\"Semi Bold\",\"Bold\",\"Extra Bold\",\"Black\"],defaultValue:\"400\"},toastLineHeight:{type:ControlType.Number,title:\"Toast Line Height\",defaultValue:1.5,min:1,max:3,step:.1}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameshopAddToCart\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"*\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FrameshopAddtocart.map"],"mappings":"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"}