{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/DfiHm7rgZZvl0dxRShLF/YFXw8Lhzym1IpplB8f8b/FC_ProductPriceDiscount.js", "ssg:https://framerusercontent.com/modules/N07JJZfuMtyHijtiRRgH/vuWsYB4j3wQ8nbJ1MmZM/FC_ProductPrice.js", "ssg:https://framerusercontent.com/modules/2fP7v77675ki5lXQlUhm/s7PunzJMnAYgZPUd1mXY/cMEJPzH94.js", "ssg:https://framerusercontent.com/modules/36DVyPlOW97GPUqzU0OA/cj9YEppQdM5qdKrIv28C/ukqB34sIW.js", "ssg:https://framerusercontent.com/modules/DfixsupJND2Hhr1xcPbk/6MM9Wuv0pSfEixZe7rhf/FC_ProductPurchaseButton.js", "ssg:https://framerusercontent.com/modules/B12xzzGu5tV27jDrWyaW/dyGmYzzIUDiXU0ubHYzE/FC_ProductVariantState.js", "ssg:https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js", "ssg:https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js", "ssg:https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js", "ssg:https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js", "ssg:https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js", "ssg:https://framerusercontent.com/modules/NQ9LlTfXzHTRhTTi6qMI/5u9VoSaQM7qxLI2scUcH/Loading.js", "ssg:https://framerusercontent.com/modules/23Il6xyHh6L2znsT1LJ9/R5dC3djCLeeSoSwzkWJv/tmZW16Ab4.js", "ssg:https://framerusercontent.com/modules/v6CVE5jwnSjaPan6xJCc/k43Lrekye7CzK9UA4Nam/UnsogWI8Z.js", "ssg:https://framerusercontent.com/modules/gsF1PcoB6DIjO9DCxQ8u/ZF2YKjKEXWtLeQihDKoU/FC_ProductStockStatus.js", "ssg:https://framerusercontent.com/modules/LfNrg3Vrj1wZ6mJirTUh/di9WOJwWZKBTLUmtcBbH/FC_ProductInventoryCounter.js", "ssg:https://framerusercontent.com/modules/ZipJAXrtSkBsdbTSry5q/vYd5oXwvdxHiTUBD8VOo/FC_ProductPriceCompare.js", "ssg:https://framerusercontent.com/modules/uXSS2HMy7WCSFRr0ffsL/7dbfOaFMje3ms4qHDntE/rBqzz0xZ_.js"],
  "sourcesContent": ["/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useCallback,useEffect,useMemo,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{currencyMaps}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/N2GIWD1ik8HES3ASBGeD/locales.js\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_ProductPriceDiscount(props){const{shopifyProductID,discountType,format:{showCurrency,showSymbol,showDecimals,currencyCode}={},textFormat}=props;const[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[selectedCurrency,setSelectedCurrency]=useState(()=>{// Initialize with the currency code from the product or default to \"USD\"\nreturn get(product,\"priceRange.minVariantPrice.currencyCode\")||\"USD\";});const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const isBrowser=useIsBrowser();useEffect(()=>{if(product){setSelectedCurrency(get(product,\"priceRange.minVariantPrice.currencyCode\")||\"USD\");}},[product]);// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");},[isBrowser]);useEffect(()=>{if(!isBrowser)return;const handleVariantChange=e=>{try{if(e.detail){const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(!e.detail.productId||e.detail.productId!==expectedProductId){return;}}// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Find the matching variant in the current product data\nconst matchingVariant=_matchingProduct.node?.variants?.edges?.find(({node})=>node.selectedOptions.every(option=>e.detail.selectedOptions.find(detailOption=>detailOption.name===option.name&&detailOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}else{setActiveVariant(e.detail);}}}catch(error){// Fallback to using the event detail directly\nsetActiveVariant(e.detail);}};const handleProductsReady=e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");// If there's only one variant, set it as active\nif(_matchingProduct?.node?.variants?.edges?.length===1){const variant=_matchingProduct.node.variants.edges[0].node;setActiveVariant(variant);}}};// Initial product load function\nconst loadProduct=async()=>{try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);if(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}}catch(error){// Error handling\n}};// Call loadProduct on mount\nloadProduct();// Initial check for existing products\nif(window[\"shopXtools\"]?.products){if(Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");// If there's only one variant, set it as active\nif(_matchingProduct?.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}}// Add event listeners\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);// Cleanup\nreturn()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[isBrowser,shopifyProductID,selectedCurrency]);useEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Preserve active variant selection if possible\nif(activeVariant){const matchingVariant=_matchingProduct.node?.variants?.edges?.find(({node})=>node.selectedOptions.every(option=>activeVariant.selectedOptions.find(activeOption=>activeOption.name===option.name&&activeOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}}}}catch(error){// Error handling\n}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,shopifyProductID,activeVariant,product]);const price=useMemo(()=>activeVariant?get(activeVariant,\"price.amount\"):get(product,\"priceRange.minVariantPrice.amount\"),[activeVariant,product]);const compareAtPrice=useMemo(()=>activeVariant?get(activeVariant,\"compareAtPrice.amount\"):get(product,\"compareAtPriceRange.minVariantPrice.amount\"),[activeVariant,product]);const currencyConfig=useMemo(()=>{const config=typeof window!==\"undefined\"?{position:window?.__FcCurrencyConfigs?.currencyPosition||\"Before\",showCode:window?.__FcCurrencyConfigs?.currencyPosition!==\"Hide\",symbol:currencyMaps[selectedCurrency]||\"$\"}:{position:\"Before\",showCode:false,symbol:\"$\"};return config;},[selectedCurrency]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Log browser user agent for debugging iOS-specific issues\n// if (isBrowser) {\n//     console.log(\"[FC_ProductPriceDiscount] Format debug:\", {\n//         userAgent: navigator.userAgent,\n//         isCurrencySymbolSameAsCode: symbolSameAsCode,\n//         currencyCode: currCode,\n//         selectedCountryCode,\n//         locale,\n//         showSymbol,\n//         showCurrency,\n//         showDecimals,\n//     })\n// }\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback for boolean value\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const calculateDiscount=useCallback(()=>{const compareAtPriceNum=parseFloat(compareAtPrice);const priceNum=parseFloat(price);if(!compareAtPriceNum||!priceNum||compareAtPriceNum<=priceNum)return null;if(discountType===\"Percentage\"){const discount=(compareAtPriceNum-priceNum)/compareAtPriceNum*100;return`${Math.round(discount)}%`;}else{const amount=compareAtPriceNum-priceNum;const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(amount,currentCurrencyCode);}},[price,compareAtPrice,discountType,showDecimals,selectedCurrency,currencyCode,showCurrency,showSymbol]);const discount=calculateDiscount();const formattedDiscount=discount?discount:\"\";const showMockValues=useMemo(()=>typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||isBrowser&&window.location.origin.endsWith(\"framercanvas.com\")),[isBrowser]);const text=useMemo(()=>{if(!isBrowser)return\"\";if(showMockValues){if(discountType===\"Percentage\"){return textFormat.replace(\"{{discount}}\",\"20%\");}else{// For canvas view, handle the display options directly\nconst mockAmount=10;const currentCurrencyCode=currencyCode||\"USD\";const formattedAmount=formatPriceWithOptions(mockAmount,currentCurrencyCode);return textFormat.replace(\"{{discount}}\",formattedAmount);}}if(!formattedDiscount)return\"\";return textFormat.replace(\"{{discount}}\",formattedDiscount);},[discount,showMockValues,isBrowser,textFormat,discountType,showDecimals,showCurrency,showSymbol,currencyCode,props.format]);// Return empty div during SSR\nif(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"}});}if(!text)return null;return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",width:\"100%\",height:\"100%\",backgroundColor:props.backgroundColor,padding:props.paddingPerSide?`${props.paddingTop}px ${props.paddingRight}px ${props.paddingBottom}px ${props.paddingLeft}px`:props.padding,borderRadius:props.radiusPerCorner?`${props.radiusTopLeft}px ${props.radiusTopRight}px ${props.radiusBottomRight}px ${props.radiusBottomLeft}px`:props.borderRadius,boxSizing:\"border-box\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.textColor,margin:0,padding:0,whiteSpace:\"nowrap\"},children:text})});}FC_ProductPriceDiscount.defaultProps={shopifyProductID:\"\",backgroundColor:\"transparent\",padding:8,borderRadius:0,font:undefined,textColor:\"#000\",textFormat:\"{{discount}} OFF\",discountType:\"Percentage\",format:{showCurrency:true,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_ProductPriceDiscount,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},discountType:{type:ControlType.Enum,title:\"Type\",options:[\"Percentage\",\"Amount\"],optionTitles:[\"%\",\"Amount\"],defaultValue:\"Percentage\",displaySegmentedControl:true},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, \u20AC, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency on your site is automatic, this is only shown in canvas preview.\"}},hidden:props=>props.discountType!==\"Amount\"},textFormat:{type:ControlType.String,title:\"Text Format\",defaultValue:\"{{discount}} OFF\",description:\"Use {{discount}} to display the discount value\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},textColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},backgroundColor:{type:ControlType.Color,title:\"BG\"},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:8,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:0,toggleKey:\"radiusPerCorner\",toggleTitles:[\"All\",\"Corners\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0,max:100,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPriceDiscount\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPriceDiscount.map", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useMemo,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/N2GIWD1ik8HES3ASBGeD/locales.js\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};export default function FC_ProductPrice(props){const{shopifyProductID,canvasPrice,format:{showCurrency,showSymbol,showDecimals,currencyCode}={}}=props;const isBrowser=useIsBrowser();const[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[subscriptionPrice,setSubscriptionPrice]=useState(null);const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const[isLoadingPrice,setIsLoadingPrice]=useState(false);// Initialize currency and country code on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");},[isBrowser]);// Handle variant changes\nconst handleVariantChange=async e=>{if(!e.detail){return;}setIsLoadingPrice(true);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Find the matching variant in the current product data\nconst matchingVariant=_matchingProduct.node?.variants?.edges?.find(({node})=>node.selectedOptions.every(option=>e.detail.selectedOptions.find(detailOption=>detailOption.name===option.name&&detailOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}}}catch(error){// Fallback to using the event detail directly\nsetActiveVariant(e.detail);}finally{setIsLoadingPrice(false);}};// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{setIsLoadingPrice(true);const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Preserve active variant selection if possible\nif(activeVariant){const matchingVariant=_matchingProduct.node.variants?.edges.find(({node})=>node.selectedOptions.every(option=>activeVariant.selectedOptions.find(activeOption=>activeOption.name===option.name&&activeOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}}}}catch(error){// Error handling\n}finally{setIsLoadingPrice(false);}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,shopifyProductID,activeVariant,selectedCurrency,selectedCountryCode]);// Initial product load\nuseEffect(()=>{if(!isBrowser)return;const handleProductsReady=async e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);if(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}setActiveVariant(_matchingProduct.node?.variants?.edges[0].node);}}};const loadProduct=async()=>{try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);if(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}setActiveVariant(_matchingProduct.node?.variants?.edges[0].node);}}catch(error){// Error handling\n}finally{setIsLoadingPrice(false);}};loadProduct();// Add event listeners\ndocument.addEventListener(\"product__active-variant__changed\",handleVariantChange);document.addEventListener(\"data__products-ready\",handleProductsReady);// Cleanup\nreturn()=>{document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);document.removeEventListener(\"data__products-ready\",handleProductsReady);};},[isBrowser,shopifyProductID,selectedCurrency,selectedCountryCode]);// Add subscription price listener\nuseEffect(()=>{if(!isBrowser)return;const handleSubscriptionPriceUpdate=e=>{if(e.detail?.price){//console.log(\"selling plan event\", e.detail)\nsetSubscriptionPrice(e.detail.price);}else{setSubscriptionPrice(null);}};document.addEventListener(\"subscription__price-update\",handleSubscriptionPriceUpdate);return()=>{document.removeEventListener(\"subscription__price-update\",handleSubscriptionPriceUpdate);};},[isBrowser]);// Get currency formatting options at component level\nconst _currencyCode=useMemo(()=>{const variantCurrency=get(activeVariant,\"price.currencyCode\");const productCurrency=get(product,\"priceRange.minVariantPrice.currencyCode\");return variantCurrency||productCurrency||\"USD\";},[activeVariant,product]);const showMockValues=useMemo(()=>RenderTarget.current()===RenderTarget.canvas||isBrowser&&window.location.origin.endsWith(\"framercanvas.com\"),[isBrowser]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Log browser user agent for debugging iOS-specific issues\n// if (isBrowser) {\n//     console.log(\"[FC_ProductPrice] Format debug:\", {\n//         userAgent: navigator.userAgent,\n//         isCurrencySymbolSameAsCode: symbolSameAsCode,\n//         currencyCode: currCode,\n//         selectedCountryCode,\n//         locale,\n//         showSymbol,\n//         showCurrency,\n//         showDecimals,\n//     })\n// }\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const text=useMemo(()=>{if(!isBrowser)return\"\";// For canvas view, handle the display options directly\nif(typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||showMockValues)){const price=canvasPrice||\"50.00\";const numericPrice=parseFloat(price);const currentCurrencyCode=currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);}// For live view, use the selected currency or preview currency\nconst amount=subscriptionPrice||(activeVariant?get(activeVariant,\"price.amount\"):get(product,\"priceRange.minVariantPrice.amount\"));if(!amount)return\"\";const numericPrice=parseFloat(amount);if(isNaN(numericPrice))return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);},[isBrowser,showMockValues,activeVariant,product,canvasPrice,showCurrency,showSymbol,currencyCode,showDecimals,selectedCurrency,subscriptionPrice,props.format]);const compareAtPrice=useMemo(()=>{const amount=activeVariant?get(activeVariant,\"compareAtPrice.amount\"):get(product,\"compareAtPriceRange.minVariantPrice.amount\");if(!amount)return\"\";const numericPrice=parseFloat(amount);if(isNaN(numericPrice))return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";// Use the same formatting function as the main price\nreturn formatPriceWithOptions(numericPrice,currentCurrencyCode);},[activeVariant,product,currencyCode,showCurrency,showSymbol,showDecimals,selectedCurrency,showMockValues,props.format]);const numericValue=useMemo(()=>parseFloat(compareAtPrice.replace(/[^\\d.-]/g,\"\")),[compareAtPrice]);const hasValidCompareAtPrice=!isNaN(numericValue)&&numericValue>0;// console.log(\"Text\", text)\n// Price calculation logging\n// useEffect(() => {\n//     console.log(\"[FC_ProductPrice] Price State Update:\", {\n//         activeVariant,\n//         product,\n//         selectedCurrency,\n//         subscriptionPrice,\n//     })\n// }, [activeVariant, product, selectedCurrency, subscriptionPrice])\n// useEffect(() => {\n//     console.log(\"Active variant updated:\", activeVariant);\n// }, [activeVariant]);\n// Return placeholder during SSR\nif(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\"}});}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",whiteSpace:\"nowrap\"},children:/*#__PURE__*/_jsx(\"p\",{style:{margin:0,whiteSpace:\"nowrap\",...props[hasValidCompareAtPrice?\"saleFont\":\"regularFont\"],color:props[hasValidCompareAtPrice?\"saleColor\":\"regularColor\"]},children:text})});}// Property controls remain the same\nFC_ProductPrice.defaultProps={shopifyProductID:\"\",canvasPrice:\"50.00\",format:{showCurrency:true,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_ProductPrice,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},canvasPrice:{type:ControlType.String,title:\"Price\",description:\"Connect to CMS for canvas preview.\",defaultValue:\"50.00\"},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, \u20AC, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency is for canvas preview only.\"}}},/** Font and Color Controls */regularFont:{type:ControlType.Font,title:\"Regular\",controls:\"extended\"},regularColor:{type:ControlType.Color,title:\"Regular\",defaultValue:\"#000\"},saleFont:{type:ControlType.Font,title:\"Sale\",controls:\"extended\"},saleColor:{type:ControlType.Color,title:\"Sale\",defaultValue:\"#FF0000\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPrice\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPrice.map", "// Generated by Framer (a2fb474)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/sjeLFN5OBljXOu3OSAaU/FXqZ7K7vvQcqcxFSewwy/cW5kN9oyo.js\";const cycleOrder=[\"OvgHHqST4\",\"mA1iYHmpg\",\"hzLxCDCME\"];const serializationHash=\"framer-4Khkk\";const variantClassNames={hzLxCDCME:\"framer-v-1vsbur6\",mA1iYHmpg:\"framer-v-1ie2h1q\",OvgHHqST4:\"framer-v-hlxn96\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,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 Variants=motion.create(React.Fragment);const humanReadableVariantMap={Black:\"mA1iYHmpg\",Grey:\"hzLxCDCME\",White:\"OvgHHqST4\"};const getProps=({height,id,title,width,...props})=>{return{...props,GuWLZATKE:title??props.GuWLZATKE??\"Title\",variant:humanReadableVariantMap[props.variant]??props.variant??\"OvgHHqST4\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,GuWLZATKE,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"OvgHHqST4\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[sharedStyle.className];const componentViewport=useComponentViewport();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(serializationHash,...sharedStyleClassNames,\"framer-hlxn96\",className,classNames),\"data-framer-name\":\"White\",layoutDependency:layoutDependency,layoutId:\"OvgHHqST4\",ref:ref??ref1,style:{backgroundColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",borderBottomLeftRadius:6,borderBottomRightRadius:6,borderTopLeftRadius:6,borderTopRightRadius:6,...style},variants:{hzLxCDCME:{backgroundColor:\"rgb(156, 156, 156)\"},mA1iYHmpg:{backgroundColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\"}},...addPropertyOverrides({hzLxCDCME:{\"data-framer-name\":\"Grey\"},mA1iYHmpg:{\"data-framer-name\":\"Black\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1l65ki4\",\"data-styles-preset\":\"cW5kN9oyo\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0)))\"},children:\"Best Seller\"})}),className:\"framer-rqr9d2\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"VvegFBBSE\",style:{\"--extracted-r6o4lv\":\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:GuWLZATKE,variants:{hzLxCDCME:{\"--extracted-r6o4lv\":\"rgb(199, 199, 199)\"},mA1iYHmpg:{\"--extracted-r6o4lv\":\"var(--token-f1b8eb01-83ac-4f1a-aa3c-b07c7d0c9e66, rgb(255, 255, 255))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({hzLxCDCME:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1l65ki4\",\"data-styles-preset\":\"cW5kN9oyo\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(199, 199, 199))\"},children:\"Best Seller\"})})},mA1iYHmpg:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1l65ki4\",\"data-styles-preset\":\"cW5kN9oyo\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-f1b8eb01-83ac-4f1a-aa3c-b07c7d0c9e66, rgb(255, 255, 255)))\"},children:\"Best Seller\"})})}},baseVariant,gestureVariant)})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-4Khkk.framer-136yz9x, .framer-4Khkk .framer-136yz9x { display: block; }\",\".framer-4Khkk.framer-hlxn96 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 18px; justify-content: center; overflow: visible; padding: 0px 6px 0px 6px; position: relative; width: min-content; }\",\".framer-4Khkk .framer-rqr9d2 { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-4Khkk.framer-hlxn96 { gap: 0px; } .framer-4Khkk.framer-hlxn96 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-4Khkk.framer-hlxn96 > :first-child { margin-left: 0px; } .framer-4Khkk.framer-hlxn96 > :last-child { margin-right: 0px; } }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 18\n * @framerIntrinsicWidth 44\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"fixed\"]},\"mA1iYHmpg\":{\"layout\":[\"auto\",\"fixed\"]},\"hzLxCDCME\":{\"layout\":[\"auto\",\"fixed\"]}}}\n * @framerVariables {\"GuWLZATKE\":\"title\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramercMEJPzH94=withCSS(Component,css,\"framer-4Khkk\");export default FramercMEJPzH94;FramercMEJPzH94.displayName=\"FC Product / badgeBase\";FramercMEJPzH94.defaultProps={height:18,width:44};addPropertyControls(FramercMEJPzH94,{variant:{options:[\"OvgHHqST4\",\"mA1iYHmpg\",\"hzLxCDCME\"],optionTitles:[\"White\",\"Black\",\"Grey\"],title:\"Variant\",type:ControlType.Enum},GuWLZATKE:{defaultValue:\"Title\",displayTextArea:false,title:\"Title\",type:ControlType.String}});addFonts(FramercMEJPzH94,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramercMEJPzH94\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"GuWLZATKE\\\":\\\"title\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"mA1iYHmpg\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"hzLxCDCME\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]}}}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"18\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"44\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "// Generated by Framer (a2fb474)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getPropertyControls,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import FCProductBadgeBase from\"https://framerusercontent.com/modules/2fP7v77675ki5lXQlUhm/s7PunzJMnAYgZPUd1mXY/cMEJPzH94.js\";const FCProductBadgeBaseFonts=getFonts(FCProductBadgeBase);const FCProductBadgeBaseControls=getPropertyControls(FCProductBadgeBase);const cycleOrder=[\"hGhv7_zZr\",\"HJdGtxK8E\"];const serializationHash=\"framer-TmTwi\";const variantClassNames={hGhv7_zZr:\"framer-v-k0ez5e\",HJdGtxK8E:\"framer-v-7932hl\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,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 Variants=motion.create(React.Fragment);const humanReadableEnumMap={Black:\"mA1iYHmpg\",Grey:\"hzLxCDCME\",White:\"OvgHHqST4\"};const humanReadableVariantMap={\"best-seller\":\"HJdGtxK8E\",new:\"hGhv7_zZr\"};const getProps=({color,height,id,width,...props})=>{return{...props,DgJsA9KIz:humanReadableEnumMap[color]??color??props.DgJsA9KIz??\"OvgHHqST4\",variant:humanReadableVariantMap[props.variant]??props.variant??\"hGhv7_zZr\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,DgJsA9KIz,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"hGhv7_zZr\",variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const defaultLayoutId=React.useId();const sharedStyleClassNames=[];const componentViewport=useComponentViewport();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(serializationHash,...sharedStyleClassNames,\"framer-k0ez5e\",className,classNames),\"data-framer-name\":\"new\",layoutDependency:layoutDependency,layoutId:\"hGhv7_zZr\",ref:ref??ref1,style:{...style},...addPropertyOverrides({HJdGtxK8E:{\"data-framer-name\":\"best-seller\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:18,y:(componentViewport?.y||0)+(0+((componentViewport?.height||18)-0-18)/2),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-tq1rr3-container\",layoutDependency:layoutDependency,layoutId:\"UmEeiIYTM-container\",children:/*#__PURE__*/_jsx(FCProductBadgeBase,{GuWLZATKE:\"New\",height:\"100%\",id:\"UmEeiIYTM\",layoutId:\"UmEeiIYTM\",variant:DgJsA9KIz,width:\"100%\",...addPropertyOverrides({HJdGtxK8E:{GuWLZATKE:\"Best seller\"}},baseVariant,gestureVariant)})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-TmTwi.framer-1jj83o9, .framer-TmTwi .framer-1jj83o9 { display: block; }\",\".framer-TmTwi.framer-k0ez5e { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 18px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-TmTwi .framer-tq1rr3-container { flex: none; height: auto; position: relative; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-TmTwi.framer-k0ez5e { gap: 0px; } .framer-TmTwi.framer-k0ez5e > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-TmTwi.framer-k0ez5e > :first-child { margin-left: 0px; } .framer-TmTwi.framer-k0ez5e > :last-child { margin-right: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 18\n * @framerIntrinsicWidth 37.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"fixed\"]},\"HJdGtxK8E\":{\"layout\":[\"auto\",\"fixed\"]}}}\n * @framerVariables {\"DgJsA9KIz\":\"color\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerukqB34sIW=withCSS(Component,css,\"framer-TmTwi\");export default FramerukqB34sIW;FramerukqB34sIW.displayName=\"FC Product / badge\";FramerukqB34sIW.defaultProps={height:18,width:37.5};addPropertyControls(FramerukqB34sIW,{variant:{options:[\"hGhv7_zZr\",\"HJdGtxK8E\"],optionTitles:[\"new\",\"best-seller\"],title:\"Variant\",type:ControlType.Enum},DgJsA9KIz:FCProductBadgeBaseControls?.[\"variant\"]&&{...FCProductBadgeBaseControls[\"variant\"],defaultValue:\"OvgHHqST4\",description:undefined,hidden:undefined,title:\"Color\"}});addFonts(FramerukqB34sIW,[{explicitInter:true,fonts:[]},...FCProductBadgeBaseFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerukqB34sIW\",\"slots\":[],\"annotations\":{\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"18\",\"framerVariables\":\"{\\\"DgJsA9KIz\\\":\\\"color\\\"}\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"HJdGtxK8E\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicWidth\":\"37.5\",\"framerComponentViewportWidth\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useState,useRef,useCallback,cloneElement}from\"react\";import{createCartMutation,addToCartMutation,cartQuery,updateCartAttributes,updateCartCurrency}from\"https://framerusercontent.com/modules/yiRfl1JCGhIBUL31WVDk/wupS2XmBAHu1kBQNv9pi/mutations_v2.js\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{appendUTMParamsToUrl}from\"https://framerusercontent.com/modules/w24ELWa2giT3SFaWpV77/624RTOU53ckt7NzZkGeH/utmParams.js\";import{appendLanguageToUrl}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/N2GIWD1ik8HES3ASBGeD/locales.js\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";/**\n * @framerDisableUnlink\n */export default function FC_ProductPurchaseButton(props){const{shopifyProductID,available,OutOfStock,SelectVariant,LoadingState,shopifyProductVariantId,BuyNowATC,title=\"Add to Cart\",required=false,openCart=true}=props;// State from original component\nconst[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[isInStock,setIsInStock]=useState(true);const[needsVariantSelection,setNeedsVariantSelection]=useState(false);const[isLoading,setIsLoading]=useState(true);const[shouldShowLoading,setShouldShowLoading]=useState(false);const[hasInitialized,setHasInitialized]=useState(false);const[countryCode,setCountryCode]=useState();const isBrowser=useIsBrowser();// Additional state for cart functionality\nconst[planSelected,setPlanSelected]=useState(\"one-time\");const[cartExistingData,setCartExistingData]=useState();const[errorMessage,setErrorMessage]=useState();const[productQuantity,setProductQuantity]=useState(1);const viewContentFired=useRef(false);const[autoSelectFirst,setAutoSelectFirst]=useState(false);const[autoSelectReceived,setAutoSelectReceived]=useState(false);const[isVariantManuallySelected,setIsVariantManuallySelected]=useState(false);// Check if variant is autoselected by default\nuseEffect(()=>{if(!isBrowser)return;//console.log(\"FC_ProductPurchaseButton mounted\")\nconst handleAutoSelectFlag=event=>{// console.log(\n//     \"Auto Select event received as:\",\n//     event.detail.autoSelectFirst\n// )\nsetAutoSelectFirst(event.detail.autoSelectFirst);// console.log(\"Auto Select First Flag:\", event.detail.autoSelectFirst)\nsetAutoSelectReceived(true);// console.log(\"Auto Select First Flag Received\")\n};document.addEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);return()=>{document.removeEventListener(\"auto_select_first_flag\",handleAutoSelectFlag);};},[isBrowser]);// Calculate total inventory helper function\nconst calculateTotalInventory=useCallback(productData=>{if(!productData||productData===\"404\")return 0;// If totalInventory is available, use it\nif(typeof productData.totalInventory===\"number\"){return productData.totalInventory;}// Otherwise sum up variant quantities\nreturn get(productData,\"variants.edges\",[]).reduce((total,{node})=>{return total+(node.quantityAvailable||0);},0);},[]);// Helper function to check if variant is available for sale\nconst isVariantAvailable=useCallback(variant=>{if(!variant)return false;// If availableForSale is true, the variant can be sold regardless of quantity\nif(variant.availableForSale)return true;// If availableForSale is false, check quantity\nreturn variant.quantityAvailable>0;},[]);// Error handling\nuseEffect(()=>{if(errorMessage&&isBrowser){const event=new CustomEvent(\"errorChanged\",{detail:errorMessage});window.dispatchEvent(event);}},[errorMessage]);// Load cart from localStorage\nuseEffect(()=>{if(!isBrowser||!window[\"shopXtools\"])return;// Try to load cart ID first\nconst savedCartId=localStorage.getItem(\"shopX_cart_id\");if(savedCartId){// If we have a cart ID, fetch the cart data\nwindow.shopXtools.handleCartMutation(cartQuery,{cartId:savedCartId}).then(data=>{if(data?.cart){setCartExistingData(data.cart);window.shopXtools.cart=data.cart;localStorage.setItem(\"shopXtools.cart\",JSON.stringify(data.cart));}}).catch(error=>{// Clear invalid cart data\nlocalStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");});}const handleSubscriptionChange=event=>{setPlanSelected(event.detail.subscriptionId);};document.addEventListener(\"subscription__selection-sync\",handleSubscriptionChange);return()=>document.removeEventListener(\"subscription__selection-sync\",handleSubscriptionChange);},[isBrowser]);// Add this at the top level with other event handlers\nconst handleQuantityChange=event=>{setProductQuantity(event.detail);};useEffect(()=>{if(isBrowser){window.addEventListener(\"FcQuantitySelectorchanges\",handleQuantityChange);// Track view content\nif(typeof fbq!==\"undefined\"&&!viewContentFired.current){fbq(\"track\",\"ViewContent\");viewContentFired.current=true;}// Cleanup\nreturn()=>{window.removeEventListener(\"FcQuantitySelectorchanges\",handleQuantityChange);};}},[isBrowser]);useEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=async event=>{const{countryCode}=event.detail;setCountryCode(countryCode);const existingCartId=localStorage.getItem(\"shopX_cart_id\");if(existingCartId){try{const updateData=await window.shopXtools.handleCartMutation(updateCartCurrency,{cartId:existingCartId,countryCode:countryCode});if(updateData?.cartBuyerIdentityUpdate?.cart){window.shopXtools.cart=updateData.cartBuyerIdentityUpdate.cart;window.dispatchEvent(new Event(\"shopXtools-cart-update\"));}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to update cart with new country code\"}));}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to update cart currency\"}));}}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser]);// Load product data and set up event listeners\nuseEffect(()=>{if(!isBrowser)return;const handleSingleVariantProduct=productNode=>{if(!productNode)return false;const variants=get(productNode,\"variants.edges\",[]);if(variants.length===1){const variant=variants[0].node;setActiveVariant(variant);setIsInStock(isVariantAvailable(variant));setNeedsVariantSelection(false);return true;}return false;};const handleProductData=_matchingProduct=>{if(_matchingProduct){const productNode=_matchingProduct.node;setProduct(productNode||\"404\");// If shopifyProductVariantId is provided, find and set that variant\nif(shopifyProductVariantId&&productNode){const variantId=`gid://shopify/ProductVariant/${shopifyProductVariantId}`;const matchingVariant=get(productNode,\"variants.edges\",[]).find(({node})=>node.id===variantId);if(matchingVariant){setActiveVariant(matchingVariant.node);setIsInStock(isVariantAvailable(matchingVariant.node));setNeedsVariantSelection(false);return;// Exit early as we've found our variant\n}}// Immediately handle single variant products\nif(handleSingleVariantProduct(productNode)){return;// Exit early as we've handled the single variant\n}if(autoSelectFirst&&!isVariantManuallySelected){//console.log(\"Auto-selecting the first variant\");\nconst firstAvailableVariant=productNode.variants.edges.find(edge=>edge.node.availableForSale)?.node;if(firstAvailableVariant){setActiveVariant(firstAvailableVariant);// console.log(\n//     \"Setting first available variant\",\n//     firstAvailableVariant\n// )\nsetIsInStock(isVariantAvailable(firstAvailableVariant));setNeedsVariantSelection(false);//console.log(\"Setting variant with autoSelectFirst\", firstAvailableVariant);\nreturn;// Exit early as we've set the active variant\n}}// For multi-variant products without a selected variant\nsetNeedsVariantSelection(!shopifyProductVariantId);// Check if any variant is available\nconst anyVariantAvailable=get(productNode,\"variants.edges\",[]).some(({node})=>isVariantAvailable(node));setIsInStock(anyVariantAvailable);}else{setProduct(\"404\");setIsInStock(false);}};// Check if we already have product data available\nif(window.shopXtools?.products&&Array.isArray(window.shopXtools.products)){const _matchingProduct=window.shopXtools.products.find(({node})=>node.id===`gid://shopify/Product/${shopifyProductID}`);handleProductData(_matchingProduct);}const productsReadyHandler=()=>{if(window?.shopXtools?.products){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);handleProductData(matchingProduct);}};const variantChangeHandler=e=>{// Only update the variant if no shopifyProductVariantId is provided\n// console.log(\"Variant changed, active variant is\", e.detail)\nif(e.detail){setActiveVariant(e.detail);setIsInStock(e.detail.quantityAvailable>0);setNeedsVariantSelection(false);setIsVariantManuallySelected(true);}};document.addEventListener(\"data__products-ready\",productsReadyHandler);document.addEventListener(\"product__active-variant__changed\",variantChangeHandler);// Analytics\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*1).toFixed(2));const item_id=activeVariant?.id;const item_name=activeVariant?.title;const price=parseFloat(activeVariant?.price?.amount||\"0\");// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking View Item - google:\", {\n//     currency,\n//     value,\n//     items: [{\n//         item_id,\n//         item_name,\n//         price,\n//         quantity: 1\n//     }]\n// });\nwindow.fcTrackGAEvent(\"view_item\",{currency,value,items:[{item_id,item_name,price,quantity:1}]});}// Meta Pixel tracking\nif(typeof fbq===\"function\"){// console.log(\"Tracking View Item - meta:\", {\n//     content_type: 'product',\n//     content_ids: [item_id],\n//     content_name: item_name,\n//     value,\n//     currency\n// });\nfbq(\"track\",\"ViewContent\",{content_type:\"product\",content_ids:[item_id],content_name:item_name,value,currency});}return()=>{document.removeEventListener(\"data__products-ready\",productsReadyHandler);document.removeEventListener(\"product__active-variant__changed\",variantChangeHandler);};},[shopifyProductID,shopifyProductVariantId,activeVariant,isBrowser,calculateTotalInventory,autoSelectFirst]);// Update variant selection state when activeVariant changes\nuseEffect(()=>{if(!product||product===\"404\")return;const variants=get(product,\"variants.edges\",[]);const hasMultipleVariants=variants.length>1;const noVariantSelected=!activeVariant&&!shopifyProductVariantId;setNeedsVariantSelection(hasMultipleVariants&&noVariantSelected);},[product,activeVariant,shopifyProductVariantId]);// Handle single variant products\nconst handleSingleVariantProducts=product=>{if(!product)return;const variants=get(product,\"variants.edges\",[]);if(variants.length===1){const variant=variants[0].node;setActiveVariant(variant);setIsInStock(variant.quantityAvailable>0);setNeedsVariantSelection(false);}};// Cart functionality\nconst handleSubscription=async(mutation,variables)=>{if(!isBrowser)return null;const handleCartMutation=window[\"shopXtools\"]?.handleCartMutation;if(handleCartMutation){return await handleCartMutation(mutation,variables);}throw new Error(\"handleCartMutation function not available\");};const isValidId=id=>id!==null&&id!==undefined&&id!==\"\";const fullId=`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`;// Add new state for order field validation\nconst[orderFieldError,setOrderFieldError]=useState(false);// Debug logging function\nconst logDebug=(message,data)=>{// Empty function - no logging\n};// Enhanced validation function with logging\nconst validateOrderField=()=>{if(!props.required){logDebug(\"Validation skipped - not required\",{required:props.required});return true;}const productSpecificKey=`shopX_cart_attributes_${props.shopifyProductID}`;const storedAttributes=sessionStorage.getItem(productSpecificKey);logDebug(\"Checking stored attributes\",{productSpecificKey,hasStoredAttributes:!!storedAttributes});if(!storedAttributes){return false;}try{const attributes=JSON.parse(storedAttributes);const isValid=attributes?.Email&&attributes.Email.trim()!==\"\";logDebug(\"Validation result\",{attributes,isValid,email:attributes?.Email});return isValid;}catch(error){return false;}};// Effect to initialize validation state\nuseEffect(()=>{if(props.required){const isValid=validateOrderField();logDebug(\"Initial validation\",{isValid,required:props.required});setOrderFieldError(!isValid);}},[props.required,props.shopifyProductID]);// Listen for order field changes with logging\nuseEffect(()=>{if(props.required){const handleOrderFieldChange=event=>{logDebug(\"Order field change event received\",event.detail);const isValid=validateOrderField();setOrderFieldError(!isValid);logDebug(\"Order field validation updated\",{isValid,orderFieldError:!isValid});};window.addEventListener(\"orderFieldChanged\",handleOrderFieldChange);return()=>window.removeEventListener(\"orderFieldChanged\",handleOrderFieldChange);}},[props.required]);const[isInputRequired,setIsInputRequired]=useState(false);// Effect to check if the input field exists and is required\nuseEffect(()=>{const checkInputRequirement=()=>{const configKey=`shopX_input_config_${shopifyProductID}`;const config=sessionStorage.getItem(configKey);// Only set as required if the config exists and required is true\nif(config){const{required}=JSON.parse(config);setIsInputRequired(required);}else{// If no config exists, the field isn't on the page\nsetIsInputRequired(false);}};checkInputRequirement();// Listen for config changes\nwindow.addEventListener(\"inputConfigChanged\",checkInputRequirement);return()=>window.removeEventListener(\"inputConfigChanged\",checkInputRequirement);},[shopifyProductID]);const getLineItem=()=>{const merchandiseId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);if(!merchandiseId){throw new Error(\"No valid product variant selected\");}const lineItem={merchandiseId,quantity:productQuantity};// Add selling plan ID if a subscription is selected\nif(planSelected&&planSelected!==\"one-time\"){lineItem[\"sellingPlanId\"]=planSelected;}try{const productSpecificKey=`shopX_cart_attributes_${props.shopifyProductID}`;const stored=sessionStorage.getItem(productSpecificKey);if(!stored)return lineItem;const data=JSON.parse(stored);const value=data[\"Email\"]||data[\"Order Note\"];const key=data[\"Email\"]?\"Email\":\"Order Note\";if(value&&value.trim()){lineItem[\"attributes\"]=[{key,value:value.trim()}];}}catch(e){// Error handling without logging\n}return lineItem;};const[maxQuantityReached,setMaxQuantityReached]=useState(false);// Modify the getCurrentCartQuantity function to add more logging\nconst getCurrentCartQuantity=useCallback(variantId=>{if(!cartExistingData?.lines?.edges){return 0;}const quantity=cartExistingData.lines.edges.reduce((total,{node})=>{if(node.merchandise.id===variantId){return total+node.quantity;}return total;},0);return quantity;},[cartExistingData]);const handleAddToCart=async()=>{try{if(!isBrowser)return;const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);if(props.maxQuantity>0){const currentCartQuantity=getCurrentCartQuantity(variantId);const totalRequestedQuantity=currentCartQuantity+productQuantity;if(currentCartQuantity>=props.maxQuantity){const message=`Maximum quantity of ${props.maxQuantity} already in cart`;window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:message}));setMaxQuantityReached(true);return;}if(totalRequestedQuantity>props.maxQuantity){const adjustedQuantity=props.maxQuantity-currentCartQuantity;setProductQuantity(adjustedQuantity);return;}}if(props.required||isInputRequired){const productSpecificKey=`shopX_cart_attributes_${props.shopifyProductID}`;const storedAttributes=sessionStorage.getItem(productSpecificKey);const inputElement=document.querySelector(`[data-product-id=\"${props.shopifyProductID}\"]`);const currentInputValue=inputElement?.value||\"\";if(currentInputValue&&(!storedAttributes||currentInputValue!==JSON.parse(storedAttributes)?.Email)){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please save your email before adding to cart\"}}));return;}if(!storedAttributes||!JSON.parse(storedAttributes)?.Email||JSON.parse(storedAttributes).Email.trim()===\"\"){window.dispatchEvent(new CustomEvent(\"inputValidationFailed\",{detail:{productId:props.shopifyProductID,message:\"Please fill in all required fields\"}}));return;}}const lines=[getLineItem()];// Retrieve the selected country code from localStorage\nconst countryCode=localStorage.getItem(\"selectedCountryCode\");let existingCartId=localStorage.getItem(\"shopX_cart_id\");if(!BuyNowATC){if(existingCartId){try{const cartValidation=await window.shopXtools.handleCartMutation(cartQuery,{cartId:existingCartId});if(!cartValidation?.cart){localStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");existingCartId=null;}}catch(error){localStorage.removeItem(\"shopX_cart_id\");localStorage.removeItem(\"shopXtools.cart\");existingCartId=null;}}if(!existingCartId){try{const cartData=await window.shopXtools.handleCartMutation(createCartMutation,{lines,countryCode:countryCode});if(cartData?.cartCreate?.cart?.id){localStorage.setItem(\"shopX_cart_id\",cartData.cartCreate.cart.id);localStorage.setItem(\"shopXtools.cart\",JSON.stringify(cartData.cartCreate.cart));window.shopXtools.cart=cartData.cartCreate.cart;// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Analytics\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=activeVariant?.id;const item_name=activeVariant?.title;const price=parseFloat(activeVariant?.price?.amount||\"0\");const activeProduct=product;// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Add to Cart - google:\", {\n//     currency,\n//     value,\n//     items: [{\n//         item_id,\n//         item_name,\n//         price,\n//         quantity: productQuantity\n//     }]\n// });\nwindow.fcTrackGAEvent(\"add_to_cart\",{currency,value,items:[{item_id,item_name,price,quantity:productQuantity}]});}// Meta Pixel tracking\nif(typeof fbq===\"function\"){// console.log(\"Tracking Add ToCart - meta:\", {\n//     ccontent_type: 'product',\n//     content_ids: [item_id],\n//     content_name: activeProduct?.title,\n//     value,\n//     currency,\n//     contents: [{\n//         merchandiseId: item_id,\n//         price: price,\n//         quantity: productQuantity\n//     }]\n// })\nfbq(\"track\",\"AddToCart\",{content_type:\"product\",content_ids:[item_id],content_name:activeProduct?.title,value,currency,contents:[{merchandiseId:item_id,price:price,quantity:productQuantity}]});}window.shopXtools.dispatchEvent(\"checkout__changed\",{__triggerCartModal:openCart});}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to add to cart\"}));}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to create new cart\"}));}}else{const cartData=await window.shopXtools.handleCartMutation(addToCartMutation,{cartId:existingCartId,lines});if(cartData?.cartLinesAdd?.cart){localStorage.setItem(\"shopXtools.cart\",JSON.stringify(cartData.cartLinesAdd.cart));window.shopXtools.cart=cartData.cartLinesAdd.cart;// Dispatch event after updating the cart\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));// Google Analytics tracking\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=activeVariant?.id;const item_name=activeVariant?.title;const price=parseFloat(activeVariant?.price?.amount||\"0\");const activeProduct=product;// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Add to Cart - google:\", {\n//     currency,\n//     value,\n//     items: [{\n//         item_id,\n//         item_name,\n//         price,\n//         quantity: productQuantity\n//     }]\n// });\nwindow.fcTrackGAEvent(\"add_to_cart\",{currency,value,items:[{item_id,item_name,price,quantity:productQuantity}]});}// Meta Pixel tracking\nif(typeof fbq===\"function\"){// console.log(\"Tracking Add ToCart - meta:\", {\n//     content_type: 'product',\n//     content_ids: [item_id],\n//     content_name: activeProduct?.title,\n//     value,\n//     currency,\n//     contents: {\n//         merchandiseId: item_id,\n//         price: price,\n//         quantity: productQuantity\n//     }\n// })\nfbq(\"track\",\"AddToCart\",{content_type:\"product\",content_ids:[item_id],content_name:activeProduct?.title,value,currency,contents:[{merchandiseId:item_id,price:price,quantity:productQuantity}]});}window.shopXtools.dispatchEvent(\"checkout__changed\",{__triggerCartModal:openCart});}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to add to cart\"}));}}}// Directly proceed to checkout without opening the cart modal\nif(BuyNowATC){//console.log(\"Directly proceeding to checkout without opening the cart modal\")\n// Create the cart and proceed to checkout\nconst variables={lines,countryCode:countryCode};//console.log(\"Sending mutation with variables:\", variables)\nconst result=await window[\"shopXtools\"]?.handleTemporaryCartMutation(createCartMutation,variables);//console.log(\"result:\", result)\nconst checkoutUrl=result.cartCreate.cart.checkoutUrl;if(checkoutUrl){//console.log(\"checkoutUrl:\", checkoutUrl)\nlet finalCheckoutUrl=checkoutUrl;if(finalCheckoutUrl){// Analytics\nconst currency=activeVariant?.price?.currencyCode||\"USD\";const value=parseFloat((parseFloat(activeVariant?.price?.amount||\"0\")*productQuantity).toFixed(2));const item_id=activeVariant?.id;const item_name=activeVariant?.title;const price=parseFloat(activeVariant?.price?.amount||\"0\");// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Initiate Checkout (Buy now) - google:\", {\n//     currency,\n//     value,\n//     item_id,\n//     item_name,\n//     price,\n//     quantity: productQuantity\n// });\nwindow.fcTrackGAEvent(\"begin_checkout\",{currency,value,items:[{item_id,item_name,price,quantity:productQuantity}]});}// Meta Pixel tracking\nif(typeof fbq===\"function\"){// console.log(\"Tracking Initiate Checkout (Buy now) - meta:\", {\n//     content_type: 'product',\n//     content_ids: [activeVariant?.id],\n//     value,\n//     currency,\n//     num_items: productQuantity\n// })\nfbq(\"track\",\"InitiateCheckout\",{content_type:\"product\",content_ids:[activeVariant?.id],value,currency,num_items:productQuantity});}finalCheckoutUrl=appendUTMParamsToUrl(finalCheckoutUrl);finalCheckoutUrl=appendLanguageToUrl(finalCheckoutUrl);window.location.assign(finalCheckoutUrl)// Use assign instead of href to avoid page reload and make sure it works in Safari and Chrome\n;}}else{window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:\"Failed to create cart for checkout\"}));}}if(lines[0].attributes){// const cartId = existingCartId || cartData?.cartCreate?.cart?.id;\nconst cartId=existingCartId//removed check for cartData\n;await window.shopXtools.handleCartMutation(updateCartAttributes,{cartId,attributes:lines[0].attributes});}}catch(error){window.dispatchEvent(new CustomEvent(\"errorChanged\",{detail:error.message||\"Failed to add item to cart\"}));}};useEffect(()=>{let timer;if(isLoading){setShouldShowLoading(false);timer=setTimeout(()=>{setShouldShowLoading(true);},200)// 200ms delay before showing loading state\n;}else{setShouldShowLoading(false);}return()=>{if(timer)clearTimeout(timer);};},[isLoading]);// Update loading state when product data is received\nuseEffect(()=>{if(product){setIsLoading(false);}},[product]);// Initialize hasInitialized\nuseEffect(()=>{if(!hasInitialized&&product){// Small delay to ensure we have all the necessary data\nconst timer=setTimeout(()=>{setHasInitialized(true);},50);return()=>clearTimeout(timer);}},[product]);let content=null;if(RenderTarget.current()===RenderTarget.canvas){content=available?.[0]||null// Always show available state in canvas\n;}else if(!hasInitialized){content=null;}else if(needsVariantSelection){content=SelectVariant?.[0]||null;}else if(maxQuantityReached&&props.MaxQuantityReached?.[0]){content=props.MaxQuantityReached[0];}else if(!isInStock&&!activeVariant?.availableForSale||activeVariant&&!isVariantAvailable(activeVariant)||product&&!get(product,\"variants.edges\",[]).some(({node})=>isVariantAvailable(node))||props.required&&orderFieldError){content=OutOfStock?.[0]||null;}else{content=available?.[0]||null;}// Near the bottom of the component where we create clonedElement\nconst canAddToCart=(isInStock||activeVariant&&activeVariant.availableForSale)&&!needsVariantSelection&&!maxQuantityReached&&(!props.required||!orderFieldError);const handleClick=e=>{if(canAddToCart){handleAddToCart();}};// Single consolidated effect for maxQuantityReached\nuseEffect(()=>{if(!props.maxQuantity){if(maxQuantityReached){setMaxQuantityReached(false);}return;}const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);if(!variantId||!cartExistingData?.lines?.edges){if(maxQuantityReached){setMaxQuantityReached(false);}return;}const currentQuantity=cartExistingData.lines.edges.reduce((total,{node})=>{if(node.merchandise.id===variantId){return total+node.quantity;}return total;},0);const shouldBeAtMax=currentQuantity>=props.maxQuantity;if(shouldBeAtMax!==maxQuantityReached){setMaxQuantityReached(shouldBeAtMax);}},[props.maxQuantity,activeVariant,props.shopifyProductVariantId,cartExistingData,maxQuantityReached]);const clonedElement=content?/*#__PURE__*/cloneElement(content,{style:{...content.props?.style||{},width:\"100%\",height:\"100%\",cursor:canAddToCart?\"pointer\":\"not-allowed\",transition:hasInitialized?\"opacity 0.2s ease-in-out\":\"none\",opacity:1},onClick:handleClick,\"aria-hidden\":!hasInitialized,tabIndex:hasInitialized?0:-1}):/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\",border:\"1px dashed #ccc\",borderRadius:\"4px\"},children:\"Connect Instance\"});const debugInfo=RenderTarget.current()!==RenderTarget.canvas&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",bottom:\"100%\",left:0,background:\"#f0f0f0\",padding:\"4px\",fontSize:\"10px\",display:props.maxQuantity>0?\"block\":\"none\"},children:[\"Max: \",props.maxQuantity,\" | Current:\",\" \",getCurrentCartQuantity(activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null)),\" \",\"| At Max: \",maxQuantityReached?\"Yes\":\"No\"]});// Add this effect near the other useEffect hooks\nuseEffect(()=>{if(props.maxQuantity>0){window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:props.maxQuantity}}));}},[props.maxQuantity,props.shopifyProductID]);// Add this effect to handle cart updates\nuseEffect(()=>{if(props.maxQuantity>0&&cartExistingData){const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);const currentInCart=getCurrentCartQuantity(variantId);const remainingAllowed=Math.max(0,props.maxQuantity-currentInCart);window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:remainingAllowed}}));if(productQuantity>remainingAllowed){setProductQuantity(remainingAllowed);}}},[cartExistingData,props.maxQuantity,activeVariant,props.shopifyProductVariantId,getCurrentCartQuantity]);// Add this effect to handle quantity max reached events\nuseEffect(()=>{const handleQuantityMaxReached=event=>{const{productId,maxQuantity}=event.detail;if(productId===props.shopifyProductID){setMaxQuantityReached(true);}};window.addEventListener(\"quantityMaxReached\",handleQuantityMaxReached);return()=>window.removeEventListener(\"quantityMaxReached\",handleQuantityMaxReached);},[props.shopifyProductID]);// Modify the effect that sets initial max quantity\nuseEffect(()=>{if(props.maxQuantity>0){const variantId=activeVariant?.id||(props.shopifyProductVariantId?`gid://shopify/ProductVariant/${props.shopifyProductVariantId}`:null);const currentInCart=getCurrentCartQuantity(variantId);const remainingAllowed=Math.max(0,props.maxQuantity-currentInCart);window.dispatchEvent(new CustomEvent(\"setMaxQuantity\",{detail:{productId:props.shopifyProductID,maxQuantity:remainingAllowed}}));}},[props.maxQuantity,props.shopifyProductID,getCurrentCartQuantity,activeVariant,props.shopifyProductVariantId]);return /*#__PURE__*/_jsxs(\"div\",{style:{height:\"100%\",position:\"relative\"},role:\"none\",className:\"fc-purchase-button-container\",children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .fc-purchase-button-container :focus-visible {\n                    outline: ${props.focus.width}px solid ${props.focus.color} !important;\n                    outline-offset: ${props.focus.padding}px !important;\n                    border-radius: ${props.focus.radius}px !important;\n                }\n            `}),debugInfo,RenderTarget.current()===RenderTarget.canvas?// In canvas, only render the available state\navailable?.[0]&&/*#__PURE__*/cloneElement(available[0],{style:{...available[0].props?.style||{},width:\"100%\",height:\"100%\",cursor:\"pointer\",outline:\"none\"},onClick:handleClick,role:\"button\",\"aria-label\":props.BuyNowATC?\"Buy now\":\"Add to cart\"}):// In browser, render all states but only show the active one\n/*#__PURE__*/_jsxs(\"div\",{style:{height:\"100%\",position:\"relative\"},children:[available?.[0]&&/*#__PURE__*/cloneElement(available[0],{style:{...available[0].props?.style||{},width:\"100%\",height:\"100%\",cursor:canAddToCart?\"pointer\":\"not-allowed\",transition:hasInitialized?\"opacity 0.3s ease-in-out\":\"none\",opacity:content===available?.[0]?1:0,position:\"absolute\",top:0,left:0,pointerEvents:content===available?.[0]?\"auto\":\"none\",visibility:content===available?.[0]?\"visible\":\"hidden\",outline:\"none\",zIndex:content===available?.[0]?2:0,transitionDelay:content===available?.[0]?\"0s\":\"0s\"},onClick:handleClick,onKeyDown:e=>{if(e.key===\"Enter\"||e.key===\" \"){e.preventDefault();if(canAddToCart){handleClick(e);}}},role:\"button\",\"aria-disabled\":!canAddToCart,\"aria-label\":props.BuyNowATC?\"Buy now\":\"Add to cart\",tabIndex:content===available?.[0]&&hasInitialized?0:-1,\"aria-hidden\":content!==available?.[0]||!hasInitialized}),OutOfStock?.[0]&&/*#__PURE__*/cloneElement(OutOfStock[0],{style:{...OutOfStock[0].props?.style||{},width:\"100%\",height:\"100%\",cursor:\"not-allowed\",transition:hasInitialized?\"opacity 0.3s ease-in-out\":\"none\",opacity:content===OutOfStock?.[0]?1:0,position:\"absolute\",top:0,left:0,pointerEvents:content===OutOfStock?.[0]?\"auto\":\"none\",visibility:content===OutOfStock?.[0]?\"visible\":\"hidden\",outline:\"none\",zIndex:content===OutOfStock?.[0]?2:0,transitionDelay:content===OutOfStock?.[0]?\"0s\":\"0s\"},role:\"button\",\"aria-disabled\":true,\"aria-label\":\"Out of stock\",tabIndex:content===OutOfStock?.[0]&&hasInitialized?0:-1,\"aria-hidden\":content!==OutOfStock?.[0]||!hasInitialized}),SelectVariant?.[0]&&/*#__PURE__*/cloneElement(SelectVariant[0],{style:{...SelectVariant[0].props?.style||{},width:\"100%\",height:\"100%\",cursor:\"not-allowed\",transition:hasInitialized?\"opacity 0.3s ease-in-out\":\"none\",opacity:content===SelectVariant?.[0]?1:content===available?.[0]||content===OutOfStock?.[0]?1-(hasInitialized?1:0):0,position:\"absolute\",top:0,left:0,pointerEvents:content===SelectVariant?.[0]?\"auto\":\"none\",visibility:content===SelectVariant?.[0]||(content===available?.[0]||content===OutOfStock?.[0])&&hasInitialized?\"visible\":\"hidden\",outline:\"none\",zIndex:content===SelectVariant?.[0]?2:1,transitionDelay:content===SelectVariant?.[0]?\"0s\":\"0.3s\"},role:\"button\",\"aria-disabled\":true,\"aria-label\":\"Select variant\",tabIndex:content===SelectVariant?.[0]&&hasInitialized?0:-1,\"aria-hidden\":content!==SelectVariant?.[0]||!hasInitialized})]}),LoadingState?.[0]&&RenderTarget.current()!==RenderTarget.canvas&&/*#__PURE__*/cloneElement(LoadingState[0],{style:{...LoadingState[0].props?.style||{},width:\"100%\",height:\"100%\",position:\"absolute\",top:0,left:0,opacity:isLoading&&shouldShowLoading&&!props.skipLoading?1:0,pointerEvents:isLoading&&shouldShowLoading&&!props.skipLoading?\"auto\":\"none\",visibility:isLoading&&shouldShowLoading&&!props.skipLoading?\"visible\":\"hidden\",transition:\"opacity 0.2s ease-in-out\",outline:\"none\"},role:\"status\",\"aria-label\":`Loading ${props.BuyNowATC?\"buy now\":\"add to cart\"} button`,\"aria-live\":\"polite\",tabIndex:-1,\"aria-hidden\":!isLoading||!shouldShowLoading||props.skipLoading})]});}addPropertyControls(FC_ProductPurchaseButton,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},shopifyProductVariantId:{type:ControlType.String,title:\"Variant ID\",description:\"Manually set a specific product variant ID (optional).\"},available:{type:ControlType.ComponentInstance,title:\"Available\"},OutOfStock:{type:ControlType.ComponentInstance,title:\"Out of Stock\"},SelectVariant:{type:ControlType.ComponentInstance,title:\"Select Variant\"},LoadingState:{type:ControlType.ComponentInstance,title:\"Loading\"},BuyNowATC:{title:\"Buy Now\",description:\"Enabling will skip the cart and go right to checkout.\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},openCart:{title:\"Trigger Cart\",description:\"Open your cart on click. If button is inside the cart, select No to keep the cart open.\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:true},skipLoading:{title:\"Skip Loading\",description:\"Skip loading state\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\",defaultValue:false},focus:{type:ControlType.Object,title:\"Focus\",controls:{radius:{type:ControlType.Number,title:\"Radius\",defaultValue:0,min:0,max:100,step:1,displayStepper:true},width:{type:ControlType.Number,title:\"Width\",defaultValue:2,min:0,max:20,step:1,displayStepper:true},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:2,min:0,max:20,step:1,displayStepper:true},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#007AFF\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPurchaseButton\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPurchaseButton.map", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useState,useCallback}from\"react\";import{get}from\"lodash-es\";/**\n * @framerDisableUnlink\n */export default function FC_ProductVariantState(props){const{shopifyProductID,textTemplate}=props;const[product,setProduct]=useState();const[selectedOptions,setSelectedOptions]=useState({});// Move handler outside useEffect for better stability\nconst handleVariantSelection=useCallback(event=>{// Directly set the new selected options\nsetSelectedOptions(prev=>({...prev,[event.detail.optionName]:event.detail.value}));},[]);useEffect(()=>{if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");}else{document.addEventListener(\"data__products-ready\",e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");}});}document.addEventListener(\"variant_option_selected\",handleVariantSelection);return()=>{document.removeEventListener(\"variant_option_selected\",handleVariantSelection);};},[shopifyProductID,handleVariantSelection]);useEffect(()=>{const handleCurrencyChange=event=>{const{currency}=event.detail;if(window[\"shopXtools\"]&&Array.isArray(window[\"shopXtools\"].products)){const _matchingProduct=window[\"shopXtools\"].products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);}}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[shopifyProductID]);const options=get(product,\"options\",[]);// Get remaining unselected options\nconst remainingOptions=options.filter(opt=>!selectedOptions[opt.name]).map(opt=>opt.name);// In Framer canvas or when shopXtools is not ready, show placeholder\nconst isFramerCanvas=typeof window===\"undefined\"||!window[\"shopXtools\"];const displayText=isFramerCanvas?textTemplate.replace(\"{{variant}}\",\"Size\"):remainingOptions.length===0?\"\":textTemplate.replace(\"{{variant}}\",remainingOptions.join(\", \"));// If no text to display, return empty div\nif(!displayText){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\"}});}return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0,textAlign:\"center\",textTransform:props.textTransform},children:displayText})});}FC_ProductVariantState.defaultProps={shopifyProductID:\"\",textTemplate:\"Select {{variant}}\",textTransform:\"none\",color:\"#000000\"};addPropertyControls(FC_ProductVariantState,{shopifyProductID:{type:ControlType.String,title:\"Product ID\"},textTemplate:{type:ControlType.String,title:\"Format\",description:\"Use {{variant}} to insert the variant name\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductVariantState\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductVariantState.map", "import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here \u2014 there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map", "import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map", "import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map", "import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map", "import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map", "import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{useRef,useEffect}from\"react\";import{addPropertyControls,ControlType,useAnimation,motion}from\"framer\";import{defaultEvents,useOnEnter,useOnExit}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";var Indicators;(function(Indicators){Indicators[\"DotWave\"]=\"Dots\";Indicators[\"Material\"]=\"Material\";Indicators[\"IOS\"]=\"iOS\";})(Indicators||(Indicators={}));const angleInRadians=angleInDegrees=>(angleInDegrees-90)*(Math.PI/180);const polarToCartesian=(centerX,centerY,radius,angleInDegrees)=>{const a=angleInRadians(angleInDegrees);return{x:centerX+radius*Math.cos(a),y:centerY+radius*Math.sin(a)};};const arc=(x,y,radius,startAngle,endAngle)=>{const fullCircle=endAngle-startAngle===360;const start=polarToCartesian(x,y,radius,endAngle-0.01);const end=polarToCartesian(x,y,radius,startAngle);const arcFlag=endAngle-startAngle<=180?\"0\":\"1\";let d=[\"M\",start.x,start.y,\"A\",radius,radius,0,arcFlag,0,end.x,end.y,].join(\" \");if(fullCircle)d+=\"z\";return d;};function Spinner({color}){const length=360;const endPercentage=length/360*100;const strokeWidth=10;const width=100;const height=100;return(/*#__PURE__*/ _jsxs(motion.div,{style:{height:\"85%\",width:\"85%\",position:\"relative\",originX:0.5,originY:0.5},animate:{rotate:360},transition:{loop:Infinity,ease:\"linear\",duration:0.5},children:[/*#__PURE__*/ _jsx(motion.svg,{style:{height:\"100%\",width:\"100%\",top:0,left:0,right:0,bottom:0,position:\"absolute\",WebkitMask:`conic-gradient(rgba(0, 0, 0, 0.0) 0%, rgba(0, 0, 0,1.0) ${endPercentage}%)`},viewBox:\"0 0 100 100\",children:/*#__PURE__*/ _jsx(\"g\",{transform:\"translate(0 0)\",children:/*#__PURE__*/ _jsx(\"path\",{d:arc(width/2,height/2,width/2-strokeWidth/2,0,length),fill:\"none\",stroke:color,strokeWidth:strokeWidth,strokeLinecap:\"round\"})})}),/*#__PURE__*/ _jsx(motion.svg,{style:{height:\"100%\",width:\"100%\",position:\"absolute\"},viewBox:\"0 0 100 100\",children:/*#__PURE__*/ _jsx(\"g\",{transform:\"translate(50 0)\",children:/*#__PURE__*/ _jsx(\"path\",{d:\"M 0 0 C 2.761 0 5 2.239 5 5 C 5 7.761 2.761 10 0 10 C 0 10 0 0 0 0 Z\",fill:color})})})]}));}// <path d=\"M 0 0 C 2.761 0 5 2.239 5 5 C 5 7.761 2.761 10 0 10 C 0 10 0 0 0 0 Z\" fill=\"#CCC\"></path>\n// function Spinner({ color }) {\n//     return (\n//         <svg style={{ height: \"85%\", width: \"85%\" }} viewBox=\"0 0 100 100\">\n//             <motion.g\n//                 transform=\"translate(3 3)\"\n//                 animate={{ rotate: 360 }}\n//                 transition={{ loop: Infinity, ease: \"linear\", duration: 1 }}\n//             >\n//                 {pathStrings.map((data, i) => {\n//                     return <path d={data} fill={color} opacity={i / pathStrings.length} />\n//                 })}\n//             </motion.g>\n//         </svg>\n//     )\n// }\nfunction DotWave({color,animation}){const circles=[0,1,2];const{delay,ease,duration,...animProps}=animation;const transition=animation.type===\"spring\"?animProps:{...animProps,ease,duration};// console.log(animProps)\nreturn(/*#__PURE__*/ _jsx(motion.svg,{style:{height:\"85%\",width:\"85%\"},viewBox:\"0 0 30 30\",variants:{show:{transition:{delayChildren:0.1,staggerChildren:0.12}}},animate:\"show\",children:circles.map(circle=>/*#__PURE__*/ _jsx(motion.circle,{style:{fill:color},variants:{hidden:{y:0},show:{y:[0,0,0,-10,0,0,0]}},transition:{...transition,yoyo:Infinity},r:3,cx:circle*10+5,cy:15},circle))}));}function Material({color,animation}){return(/*#__PURE__*/ _jsx(motion.svg,{style:{height:\"85%\",width:\"85%\",overflow:\"visible\",originX:\"50%\",originY:\"50%\"},animate:{rotate:360},transition:{ease:\"linear\",loop:Infinity,duration:2},viewBox:\"25 25 50 50\",children:/*#__PURE__*/ _jsx(motion.circle,{style:{stroke:color,strokeLinecap:\"round\"},animate:{strokeDasharray:[\"1, 200\",\"89, 200\",\"89, 200\"],strokeDashoffset:[0,-35,-124]},transition:{...animation,loop:Infinity,ease:\"easeInOut\"},cx:\"50\",cy:\"50\",r:\"20\",fill:\"none\",strokeWidth:2,strokeMiterlimit:\"10\"})}));}function IOS({color,animation}){const particles=12;// this was the death of me\nconst arrayRotate=(arr,n)=>arr.slice(n,arr.length).concat(arr.slice(0,n));const lines=[...new Array(particles)].map((l,i)=>0.9/particles*i+0.1).reverse();const lineOpacities=lines.map((l,i)=>arrayRotate(lines,i));return(/*#__PURE__*/ _jsx(motion.svg,{viewBox:\"-15 -15 30 30\",style:{width:\"100%\",height:\"100%\"},children:lineOpacities.map((lineKeyframes,i)=>/*#__PURE__*/ _jsx(motion.g,{initial:{opacity:lineKeyframes[0]},animate:{opacity:lineKeyframes},transition:{...animation,loop:Infinity,repeatDelay:0.0005},children:/*#__PURE__*/ _jsx(\"rect\",{style:{width:7,height:2,fill:color,transform:`rotate(${(particles-i)/particles*360-90}deg)`},x:5,y:-1,rx:1})},i))}));}function getIndicator(indicator,props){switch(indicator){case Indicators.DotWave:return(/*#__PURE__*/ _jsx(DotWave,{...props}));case Indicators.Material:return(/*#__PURE__*/ _jsx(Material,{...props}));case Indicators.IOS:return(/*#__PURE__*/ _jsx(IOS,{...props}));// case Indicators.Spinner:\n//     return <Spinner {...props} />\ndefault:return(/*#__PURE__*/ _jsx(DotWave,{...props}));}}export function handleTimeout(duration,callback){const id=setTimeout(callback,duration*1e3);return()=>clearTimeout(id);}/**\n * Loading\n *\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */ export function Loading(props){const{duration,onTimeout,fadeOut,hasDuration,indicator,onClick,onMouseDown,onMouseUp,onMouseEnter,onMouseLeave,style}=props;const controls=useAnimation();const animDuration=fadeOut?Math.min(duration,0.35):0;const animDelay=fadeOut?duration-animDuration:duration;const currentIndicator=getIndicator(indicator,props);const handlers=useRef([]);const onFadeOut=React.useCallback(()=>{if(hasDuration)controls.start({opacity:0,transition:{duration:animDuration,ease:\"easeIn\"}});},[hasDuration,animDuration]);const resetOpacity=async()=>{controls.set({opacity:1});};useOnEnter(()=>{resetOpacity();if(hasDuration)handlers.current=[handleTimeout(duration,onTimeout),handleTimeout(animDelay,onFadeOut),];});// Cancel all timers on exit.\nuseOnExit(()=>handlers.current.forEach(cleanup=>cleanup));// Cancel all timers on unmount.\nuseEffect(()=>()=>handlers.current.forEach(cleanup=>cleanup),[]);return(/*#__PURE__*/ _jsx(motion.div,{onClick,onMouseDown,onMouseUp,onMouseEnter,onMouseLeave,animate:controls,style:{position:\"relative\",overflow:\"show\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",...style},children:currentIndicator}));}Loading.defaultProps={height:40,width:40,duration:2,color:\"#888\",animation:{type:\"tween\",ease:\"linear\",duration:1.3},hasDuration:false};// Learn more: https://framer.com/api/property-controls/\naddPropertyControls(Loading,{indicator:{title:\"Indicator\",type:ControlType.Enum,options:Object.keys(Indicators).map(i=>Indicators[i])},color:{type:ControlType.Color,defaultValue:\"#888\"},// transition: { title: \"Animation\", type: ControlType.Transition },\nhasDuration:{title:\"Duration\",type:ControlType.Boolean,defaultValue:Loading.defaultProps.hasDuration,enabledTitle:\"Timeout\",disabledTitle:\"Infinity\"},duration:{title:\"Time\",hidden:({hasDuration})=>!hasDuration,min:0.1,max:10,defaultValue:Loading.defaultProps.duration,type:ControlType.Number,step:0.1},animation:{type:ControlType.Transition},fadeOut:{title:\"Fade Out\",hidden:({hasDuration})=>!hasDuration,type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\"},onTimeout:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"handleTimeout\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Loading\":{\"type\":\"reactComponent\",\"name\":\"Loading\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"40\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"40\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Loading.map", "// Generated by Framer (ab692b1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductVariantState from\"https://framerusercontent.com/modules/B12xzzGu5tV27jDrWyaW/dyGmYzzIUDiXU0ubHYzE/FC_ProductVariantState.js\";import FC_ProductPrice from\"https://framerusercontent.com/modules/N07JJZfuMtyHijtiRRgH/vuWsYB4j3wQ8nbJ1MmZM/FC_ProductPrice.js\";import{Loading}from\"https://framerusercontent.com/modules/NQ9LlTfXzHTRhTTi6qMI/5u9VoSaQM7qxLI2scUcH/Loading.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/1PdpgUiM6vjJqBr6zrYk/BojYz7IGF7nSzPVDEFxX/u9bJH5KE7.js\";const FC_ProductPriceFonts=getFonts(FC_ProductPrice);const FC_ProductVariantStateFonts=getFonts(FC_ProductVariantState);const LoadingFonts=getFonts(Loading);const enabledGestures={f_HVTgLU0:{hover:true},qiv395MRY:{hover:true}};const cycleOrder=[\"qiv395MRY\",\"B7b72A4cy\",\"mtL6j6SKd\",\"FHPHnpq_F\",\"f_HVTgLU0\"];const serializationHash=\"framer-qxZ4K\";const variantClassNames={B7b72A4cy:\"framer-v-1izu2x4\",f_HVTgLU0:\"framer-v-zpxs03\",FHPHnpq_F:\"framer-v-1vr5r15\",mtL6j6SKd:\"framer-v-3druyj\",qiv395MRY:\"framer-v-ovdptl\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"};const transformTemplate1=(_,t)=>`translateY(-50%) ${t}`;const transformTemplate2=(_,t)=>`translate(-50%, -50%) ${t}`;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 Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Add to Cart\":\"qiv395MRY\",\"Out of Stock\":\"mtL6j6SKd\",\"Quick Add\":\"f_HVTgLU0\",\"Select Variant\":\"B7b72A4cy\",Loading:\"FHPHnpq_F\"};const getProps=({height,id,productID,width,...props})=>{return{...props,elgRTGdr9:productID??props.elgRTGdr9??\"8521120088358\",variant:humanReadableVariantMap[props.variant]??props.variant??\"qiv395MRY\"};};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,elgRTGdr9,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"qiv395MRY\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(gestureVariant===\"f_HVTgLU0-hover\")return false;if([\"B7b72A4cy\",\"mtL6j6SKd\",\"FHPHnpq_F\",\"f_HVTgLU0\"].includes(baseVariant))return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"B7b72A4cy\")return true;return false;};const isDisplayed2=()=>{if(baseVariant===\"FHPHnpq_F\")return true;return false;};const isDisplayed3=()=>{if(gestureVariant===\"f_HVTgLU0-hover\")return true;if([\"mtL6j6SKd\",\"f_HVTgLU0\"].includes(baseVariant))return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-ovdptl\",className,classNames),\"data-framer-name\":\"Add to Cart\",layoutDependency:layoutDependency,layoutId:\"qiv395MRY\",ref:refBinding,style:{backgroundColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8,...style},variants:{\"f_HVTgLU0-hover\":{backgroundColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\"},B7b72A4cy:{backgroundColor:\"var(--token-ae8ee2a3-db43-4346-aa65-c9685dfafd51, rgba(231, 236, 229, 0.64))\"},f_HVTgLU0:{backgroundColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\"},FHPHnpq_F:{backgroundColor:\"var(--token-977611e6-b9d8-4d09-809b-8b874fb3d33d, rgb(231, 236, 229))\"},mtL6j6SKd:{backgroundColor:\"var(--token-ae8ee2a3-db43-4346-aa65-c9685dfafd51, rgba(231, 236, 229, 0.64))\"}},...addPropertyOverrides({\"f_HVTgLU0-hover\":{\"data-framer-name\":undefined},\"qiv395MRY-hover\":{\"data-framer-name\":undefined},B7b72A4cy:{\"data-framer-name\":\"Select Variant\"},f_HVTgLU0:{\"data-framer-name\":\"Quick Add\"},FHPHnpq_F:{\"data-framer-name\":\"Loading\"},mtL6j6SKd:{\"data-framer-name\":\"Out of Stock\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-k46krw\",\"data-styles-preset\":\"u9bJH5KE7\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255)))\"},children:\"Add to Cart\"})}),className:\"framer-1hx38cg\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Ju4M6n2qJ\",style:{\"--extracted-r6o4lv\":\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},transformTemplate:transformTemplate1,verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"qiv395MRY-hover\":{transformTemplate:transformTemplate2}},baseVariant,gestureVariant)}),isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1ide4zg-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"p1AJ_IMUz-container\",nodeId:\"p1AJ_IMUz\",rendersWithMotion:true,scopeId:\"tmZW16Ab4\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(FC_ProductPrice,{canvasPrice:\"50.00\",format:{currencyCode:\"USD\",showCurrency:true,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"p1AJ_IMUz\",layoutId:\"p1AJ_IMUz\",regularColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",regularFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1em\"},saleColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",saleFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"1em\"},shopifyProductID:elgRTGdr9,width:\"100%\"})})}),isDisplayed1()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-b2x0-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"P3lvqSEP_-container\",nodeId:\"P3lvqSEP_\",rendersWithMotion:true,scopeId:\"tmZW16Ab4\",children:/*#__PURE__*/_jsx(FC_ProductVariantState,{color:\"var(--token-25dffb6f-7224-457b-8095-a82c7fa5a8b9, rgba(0, 0, 0, 0.48))\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"12px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.01em\",lineHeight:\"1em\"},height:\"100%\",id:\"P3lvqSEP_\",layoutId:\"P3lvqSEP_\",shopifyProductID:elgRTGdr9,textTemplate:\"Select {{variant}}\",textTransform:\"None\",width:\"100%\"})})}),isDisplayed2()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-169mmhr-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"naiYMjKJg-container\",nodeId:\"naiYMjKJg\",rendersWithMotion:true,scopeId:\"tmZW16Ab4\",children:/*#__PURE__*/_jsx(Loading,{animation:{delay:0,duration:1.3,ease:[.44,0,.56,1],type:\"tween\"},color:\"var(--token-32039339-f64a-42c6-a8f4-f7fdfa12eb53, rgba(0, 0, 0, 0.16))\",duration:2,fadeOut:true,hasDuration:false,height:\"100%\",id:\"naiYMjKJg\",indicator:\"Material\",layoutId:\"naiYMjKJg\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})}),isDisplayed3()&&/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItU2VtaUJvbGQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"600\",\"--framer-letter-spacing\":\"-0.01em\",\"--framer-line-height\":\"100%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-25dffb6f-7224-457b-8095-a82c7fa5a8b9, rgba(0, 0, 0, 0.48)))\"},children:\"OUT OF STOCK\"})}),className:\"framer-6ax5tz\",fonts:[\"Inter-SemiBold\"],layoutDependency:layoutDependency,layoutId:\"HkBucgBig\",style:{\"--extracted-r6o4lv\":\"var(--token-25dffb6f-7224-457b-8095-a82c7fa5a8b9, rgba(0, 0, 0, 0.48))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},variants:{\"f_HVTgLU0-hover\":{\"--extracted-r6o4lv\":\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\"},f_HVTgLU0:{\"--extracted-r6o4lv\":\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"f_HVTgLU0-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItU2VtaUJvbGQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"600\",\"--framer-letter-spacing\":\"-0.01em\",\"--framer-line-height\":\"100%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255)))\"},children:\"QUICK ADD\"})})},f_HVTgLU0:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItU2VtaUJvbGQ=\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"12px\",\"--framer-font-weight\":\"600\",\"--framer-letter-spacing\":\"-0.01em\",\"--framer-line-height\":\"100%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0)))\"},children:\"QUICK ADD\"})})}},baseVariant,gestureVariant)})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-qxZ4K.framer-1jp0h5p, .framer-qxZ4K .framer-1jp0h5p { display: block; }\",\".framer-qxZ4K.framer-ovdptl { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; height: 56px; justify-content: space-between; overflow: hidden; padding: 0px 24px 0px 24px; position: relative; width: 200px; will-change: var(--framer-will-change-override, transform); }\",\".framer-qxZ4K .framer-1hx38cg { flex: none; height: auto; left: 24px; position: absolute; top: 50%; white-space: pre; width: auto; z-index: 1; }\",\".framer-qxZ4K .framer-1ide4zg-container { flex: none; height: auto; position: absolute; right: 24px; top: 50%; width: auto; z-index: 1; }\",\".framer-qxZ4K .framer-b2x0-container { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; width: auto; }\",\".framer-qxZ4K .framer-169mmhr-container { flex: none; height: 32px; position: relative; width: 32px; }\",\".framer-qxZ4K .framer-6ax5tz { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-qxZ4K.framer-v-1izu2x4.framer-ovdptl, .framer-qxZ4K.framer-v-3druyj.framer-ovdptl, .framer-qxZ4K.framer-v-1vr5r15.framer-ovdptl { cursor: unset; gap: 0px; justify-content: center; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-qxZ4K.framer-v-1izu2x4.framer-ovdptl { gap: 0px; } .framer-qxZ4K.framer-v-1izu2x4.framer-ovdptl > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-qxZ4K.framer-v-1izu2x4.framer-ovdptl > :first-child { margin-left: 0px; } .framer-qxZ4K.framer-v-1izu2x4.framer-ovdptl > :last-child { margin-right: 0px; } }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-qxZ4K.framer-v-3druyj.framer-ovdptl { gap: 0px; } .framer-qxZ4K.framer-v-3druyj.framer-ovdptl > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-qxZ4K.framer-v-3druyj.framer-ovdptl > :first-child { margin-left: 0px; } .framer-qxZ4K.framer-v-3druyj.framer-ovdptl > :last-child { margin-right: 0px; } }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-qxZ4K.framer-v-1vr5r15.framer-ovdptl { gap: 0px; } .framer-qxZ4K.framer-v-1vr5r15.framer-ovdptl > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-qxZ4K.framer-v-1vr5r15.framer-ovdptl > :first-child { margin-left: 0px; } .framer-qxZ4K.framer-v-1vr5r15.framer-ovdptl > :last-child { margin-right: 0px; } }\",\".framer-qxZ4K.framer-v-zpxs03.framer-ovdptl { gap: 0px; height: 40px; justify-content: center; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-qxZ4K.framer-v-zpxs03.framer-ovdptl { gap: 0px; } .framer-qxZ4K.framer-v-zpxs03.framer-ovdptl > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-qxZ4K.framer-v-zpxs03.framer-ovdptl > :first-child { margin-left: 0px; } .framer-qxZ4K.framer-v-zpxs03.framer-ovdptl > :last-child { margin-right: 0px; } }\",\".framer-qxZ4K.framer-v-ovdptl.hover .framer-1hx38cg { left: 50%; }\",\".framer-qxZ4K.framer-v-ovdptl.hover .framer-1ide4zg-container { right: -96px; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 56\n * @framerIntrinsicWidth 200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"B7b72A4cy\":{\"layout\":[\"fixed\",\"fixed\"]},\"mtL6j6SKd\":{\"layout\":[\"fixed\",\"fixed\"]},\"FHPHnpq_F\":{\"layout\":[\"fixed\",\"fixed\"]},\"f_HVTgLU0\":{\"layout\":[\"fixed\",\"fixed\"]},\"nGr75WALs\":{\"layout\":[\"fixed\",\"fixed\"]},\"URoWg7I6X\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"elgRTGdr9\":\"productID\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramertmZW16Ab4=withCSS(Component,css,\"framer-qxZ4K\");export default FramertmZW16Ab4;FramertmZW16Ab4.displayName=\"Local Design\";FramertmZW16Ab4.defaultProps={height:56,width:200};addPropertyControls(FramertmZW16Ab4,{variant:{options:[\"qiv395MRY\",\"B7b72A4cy\",\"mtL6j6SKd\",\"FHPHnpq_F\",\"f_HVTgLU0\"],optionTitles:[\"Add to Cart\",\"Select Variant\",\"Out of Stock\",\"Loading\",\"Quick Add\"],title:\"Variant\",type:ControlType.Enum},elgRTGdr9:{defaultValue:\"8521120088358\",title:\"Product ID\",type:ControlType.String}});addFonts(FramertmZW16Ab4,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/1ZFS7N918ojhhd0nQWdj3jz4w.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2\",weight:\"600\"}]},...FC_ProductPriceFonts,...FC_ProductVariantStateFonts,...LoadingFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramertmZW16Ab4\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"B7b72A4cy\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"mtL6j6SKd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"FHPHnpq_F\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"f_HVTgLU0\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"nGr75WALs\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"URoWg7I6X\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"elgRTGdr9\\\":\\\"productID\\\"}\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"200\",\"framerIntrinsicHeight\":\"56\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./tmZW16Ab4.map", "// Generated by Framer (f030ee3)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductPurchaseButton from\"https://framerusercontent.com/modules/DfixsupJND2Hhr1xcPbk/6MM9Wuv0pSfEixZe7rhf/FC_ProductPurchaseButton.js\";import LocalDesign from\"https://framerusercontent.com/modules/23Il6xyHh6L2znsT1LJ9/R5dC3djCLeeSoSwzkWJv/tmZW16Ab4.js\";const LocalDesignFonts=getFonts(LocalDesign);const FC_ProductPurchaseButtonFonts=getFonts(FC_ProductPurchaseButton);const serializationHash=\"framer-ev4eH\";const variantClassNames={RcrAKAnuK:\"framer-v-h0lpas\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const convertFromBoolean=(value,activeLocale)=>{if(value){return\"f_HVTgLU0\";}else{return\"qiv395MRY\";}};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 Variants=motion.create(React.Fragment);const getProps=({height,id,productID,quickAdd,skipLoading,width,...props})=>{return{...props,CtxbSorek:skipLoading??props.CtxbSorek,gzPkfrIbf:productID??props.gzPkfrIbf??\"9914855981350\",KAtvUtyrK:quickAdd??props.KAtvUtyrK};};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,gzPkfrIbf,CtxbSorek,KAtvUtyrK,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"RcrAKAnuK\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);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-h0lpas\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"RcrAKAnuK\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-3ppn37-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"LmzYfsjdz-container\",nodeId:\"LmzYfsjdz\",rendersWithMotion:true,scopeId:\"UnsogWI8Z\",children:/*#__PURE__*/_jsx(FC_ProductPurchaseButton,{available:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-sdsytv\",\"data-framer-name\":\"Available\",layoutDependency:layoutDependency,layoutId:\"f1A_p61ax\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:56,width:\"400px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-gjpd2-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"olS5qP9CS-container\",nodeId:\"olS5qP9CS\",rendersWithMotion:true,scopeId:\"UnsogWI8Z\",children:/*#__PURE__*/_jsx(LocalDesign,{elgRTGdr9:gzPkfrIbf,height:\"100%\",id:\"olS5qP9CS\",layoutId:\"olS5qP9CS\",style:{height:\"100%\",width:\"100%\"},variant:convertFromBoolean(KAtvUtyrK,activeLocale),width:\"100%\"})})})})],BuyNowATC:false,focus:{color:\"rgb(0, 122, 255)\",padding:2,radius:8,width:2},height:\"100%\",id:\"LmzYfsjdz\",layoutId:\"LmzYfsjdz\",LoadingState:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1enkfv5\",\"data-framer-name\":\"Loading\",layoutDependency:layoutDependency,layoutId:\"XVgiFwapB\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:56,width:\"400px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1g8220y-container\",\"data-framer-name\":\"Loading\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"Hf_aywAYy-container\",name:\"Loading\",nodeId:\"Hf_aywAYy\",rendersWithMotion:true,scopeId:\"UnsogWI8Z\",children:/*#__PURE__*/_jsx(LocalDesign,{elgRTGdr9:gzPkfrIbf,height:\"100%\",id:\"Hf_aywAYy\",layoutId:\"Hf_aywAYy\",name:\"Loading\",style:{height:\"100%\",width:\"100%\"},variant:\"FHPHnpq_F\",width:\"100%\"})})})})],openCart:true,OutOfStock:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-14ay2co\",\"data-framer-name\":\"Out of Stock\",layoutDependency:layoutDependency,layoutId:\"DLa3NiL1z\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:56,width:\"400px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1vvrptf-container\",\"data-framer-name\":\"Out of Stock\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"igAutchvn-container\",name:\"Out of Stock\",nodeId:\"igAutchvn\",rendersWithMotion:true,scopeId:\"UnsogWI8Z\",children:/*#__PURE__*/_jsx(LocalDesign,{elgRTGdr9:gzPkfrIbf,height:\"100%\",id:\"igAutchvn\",layoutId:\"igAutchvn\",name:\"Out of Stock\",style:{height:\"100%\",width:\"100%\"},variant:\"mtL6j6SKd\",width:\"100%\"})})})})],SelectVariant:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-tdjchj\",\"data-framer-name\":\"Select Variant\",layoutDependency:layoutDependency,layoutId:\"o9cUIyM4g\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:56,width:\"400px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-19yest9-container\",\"data-framer-name\":\"Select Variant\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"FYIZkok5E-container\",name:\"Select Variant\",nodeId:\"FYIZkok5E\",rendersWithMotion:true,scopeId:\"UnsogWI8Z\",children:/*#__PURE__*/_jsx(LocalDesign,{elgRTGdr9:gzPkfrIbf,height:\"100%\",id:\"FYIZkok5E\",layoutId:\"FYIZkok5E\",name:\"Select Variant\",style:{height:\"100%\",width:\"100%\"},variant:\"B7b72A4cy\",width:\"100%\"})})})})],shopifyProductID:gzPkfrIbf,shopifyProductVariantId:\"\",skipLoading:CtxbSorek,style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ev4eH.framer-1di2lge, .framer-ev4eH .framer-1di2lge { display: block; }\",\".framer-ev4eH.framer-h0lpas { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 56px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 400px; }\",\".framer-ev4eH .framer-3ppn37-container, .framer-ev4eH .framer-gjpd2-container, .framer-ev4eH .framer-1vvrptf-container, .framer-ev4eH .framer-19yest9-container, .framer-ev4eH .framer-1g8220y-container { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",\".framer-ev4eH .framer-sdsytv, .framer-ev4eH .framer-14ay2co, .framer-ev4eH .framer-tdjchj, .framer-ev4eH .framer-1enkfv5 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 56px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 400px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-ev4eH.framer-h0lpas, .framer-ev4eH .framer-sdsytv, .framer-ev4eH .framer-14ay2co, .framer-ev4eH .framer-tdjchj, .framer-ev4eH .framer-1enkfv5 { gap: 0px; } .framer-ev4eH.framer-h0lpas > *, .framer-ev4eH .framer-sdsytv > *, .framer-ev4eH .framer-14ay2co > *, .framer-ev4eH .framer-tdjchj > *, .framer-ev4eH .framer-1enkfv5 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-ev4eH.framer-h0lpas > :first-child, .framer-ev4eH .framer-sdsytv > :first-child, .framer-ev4eH .framer-14ay2co > :first-child, .framer-ev4eH .framer-tdjchj > :first-child, .framer-ev4eH .framer-1enkfv5 > :first-child { margin-left: 0px; } .framer-ev4eH.framer-h0lpas > :last-child, .framer-ev4eH .framer-sdsytv > :last-child, .framer-ev4eH .framer-14ay2co > :last-child, .framer-ev4eH .framer-tdjchj > :last-child, .framer-ev4eH .framer-1enkfv5 > :last-child { margin-right: 0px; } }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 56\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"gzPkfrIbf\":\"productID\",\"CtxbSorek\":\"skipLoading\",\"KAtvUtyrK\":\"quickAdd\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FramerUnsogWI8Z=withCSS(Component,css,\"framer-ev4eH\");export default FramerUnsogWI8Z;FramerUnsogWI8Z.displayName=\"Purchase Button\";FramerUnsogWI8Z.defaultProps={height:56,width:400};addPropertyControls(FramerUnsogWI8Z,{gzPkfrIbf:{defaultValue:\"9914855981350\",title:\"Product ID\",type:ControlType.String},CtxbSorek:{defaultValue:false,title:\"Skip Loading\",type:ControlType.Boolean},KAtvUtyrK:{defaultValue:false,title:\"Quick Add\",type:ControlType.Boolean}});addFonts(FramerUnsogWI8Z,[{explicitInter:true,fonts:[]},...LocalDesignFonts,...FC_ProductPurchaseButtonFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerUnsogWI8Z\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"56\",\"framerIntrinsicWidth\":\"400\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"gzPkfrIbf\\\":\\\"productID\\\",\\\"CtxbSorek\\\":\\\"skipLoading\\\",\\\"KAtvUtyrK\\\":\\\"quickAdd\\\"}\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./UnsogWI8Z.map", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2024 Framer Commerce. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// Disable console logs in production\nconst DEBUG=false;/**\n * @framerDisableUnlink\n */export default function FC_ProductStockStatus(props){// Handle canvas preview\nif(RenderTarget.current()===RenderTarget.canvas){// Return the first visible instance based on show/hide props\nif(props.showAboveThreshold){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.aboveThresholdComponent});}if(props.showBelowThreshold){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.belowThresholdComponent});}if(props.showOutOfStock){return /*#__PURE__*/_jsx(\"div\",{style:{opacity:1},children:props.outOfStockComponent});}// If no instances are set to show, return an empty div\nreturn /*#__PURE__*/_jsx(\"div\",{style:{opacity:1}});}const{threshold,aboveThresholdComponent,belowThresholdComponent,outOfStockComponent,showTotalInventory,showOutOfStock,showAboveThreshold,showBelowThreshold}=props;const[quantityAvailable,setQuantityAvailable]=useState(null);const[hasSelectedVariant,setHasSelectedVariant]=useState(false);const[totalInventory,setTotalInventory]=useState(null);const[isInfiniteInventory,setIsInfiniteInventory]=useState(false);useEffect(()=>{const handleVariantChange=e=>{const activeVariant=e.detail;const expectedProductId=`gid://shopify/Product/${props.shopifyProductID}`;if(!activeVariant?.productId||activeVariant.productId!==expectedProductId){return;}if(activeVariant){setQuantityAvailable(activeVariant.quantityAvailable);setHasSelectedVariant(true);}};const processProduct=product=>{const variants=product.variants.edges.map(edge=>edge.node)||[];const hasVariants=variants.length>1;const hasInfiniteInventory=variants.some(variant=>variant.availableForSale&&variant.quantityAvailable===0);const total=variants.reduce((sum,variant)=>{if(variant.availableForSale&&variant.quantityAvailable===0){return sum;}return sum+(variant.quantityAvailable||0);},0);setTotalInventory(total);setQuantityAvailable(total);setHasSelectedVariant(!hasVariants);setIsInfiniteInventory(hasInfiniteInventory||product.availableForSale&&total===0);};const handleProductsReady=e=>{if(Array.isArray(e.detail.products)){const matchingProduct=e.detail.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){processProduct(matchingProduct.node);}}};if(window?.shopXtools?.products&&Array.isArray(window.shopXtools.products)){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${props.shopifyProductID}`);if(matchingProduct){processProduct(matchingProduct.node);}}document.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);return()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[props.shopifyProductID]);const getStockMessage=()=>{const displayQuantity=hasSelectedVariant?quantityAvailable:totalInventory;if(displayQuantity<=0&&!isInfiniteInventory){if(showOutOfStock){return props.outOfStockComponent;}else{return null;}}if(isInfiniteInventory||displayQuantity>=props.threshold){if(showAboveThreshold){return props.aboveThresholdComponent;}else{return null;}}if(showBelowThreshold){return props.belowThresholdComponent;}else{return null;}};const shouldShow=totalInventory!==null||isInfiniteInventory;const isHidden=!showTotalInventory&&!hasSelectedVariant;const styles={opacity:isHidden?0:1,transition:\"opacity 0.2s ease-in-out\",userSelect:isHidden?\"none\":\"auto\",visibility:isHidden?\"hidden\":\"visible\"};return /*#__PURE__*/_jsx(\"div\",{style:styles,\"aria-hidden\":isHidden,children:getStockMessage()});}FC_ProductStockStatus.defaultProps={shopifyProductID:\"\",threshold:10,showTotalInventory:false,showOutOfStock:false,showAboveThreshold:true,showBelowThreshold:true};addPropertyControls(FC_ProductStockStatus,{shopifyProductID:{type:ControlType.String,title:\"Product ID\"},threshold:{type:ControlType.Number,title:\"Threshold\",defaultValue:10,min:0},showAboveThreshold:{type:ControlType.Boolean,title:\"Above Threshold\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},aboveThresholdComponent:{type:ControlType.ComponentInstance,title:\"Above Threshold\",required:true,hidden:props=>!props.showAboveThreshold},showBelowThreshold:{type:ControlType.Boolean,title:\"Below Threshold\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},belowThresholdComponent:{type:ControlType.ComponentInstance,title:\"Below Threshold\",required:true,hidden:props=>!props.showBelowThreshold},showOutOfStock:{type:ControlType.Boolean,title:\"Out of Stock\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"},outOfStockComponent:{type:ControlType.ComponentInstance,title:\"Out of Stock\",required:true,hidden:props=>!props.showOutOfStock},showTotalInventory:{type:ControlType.Boolean,title:\"No variant selected\",description:\"When a product has variants and none are selected, show the total inventory available, or hide until a variant is selected\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductStockStatus\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductStockStatus.map", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2024 Framer Commerce. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useState,useEffect,useCallback}from\"react\";// Disable console logs in production\nconst DEBUG=false;/**\n * @framerDisableUnlink\n */export default function FC_ProductInventoryCounter(props){// Handle canvas preview\nif(RenderTarget.current()===RenderTarget.canvas){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",width:\"auto\",boxSizing:\"border-box\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,flexGrow:0},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.textColor,margin:0,padding:0,lineHeight:1,whiteSpace:\"nowrap\"},children:props.textFormat.replace(\"{{inventory}}\",\"5\")})});}const{shopifyProductID,showOutOfStock,outOfStockText,noLimitText}=props;const[quantityAvailable,setQuantityAvailable]=useState(null);const[hasSelectedVariant,setHasSelectedVariant]=useState(false);useEffect(()=>{const calculateTotalInventory=product=>{if(!product?.variants?.edges){return null;}const totalInventory=product.variants.edges.reduce((total,{node:variant})=>{const variantQuantity=variant.quantityAvailable||0;return total+variantQuantity;},0);return totalInventory;};const handleVariantChange=e=>{const activeVariant=e.detail;const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(!activeVariant?.productId||activeVariant.productId!==expectedProductId){return;}const inventory=activeVariant?.quantityAvailable;setHasSelectedVariant(true);setQuantityAvailable(inventory);};const handleProductsReady=e=>{if(Array.isArray(e.detail.products)){const matchingProduct=e.detail.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);if(matchingProduct){const totalInventory=calculateTotalInventory(matchingProduct.node);setQuantityAvailable(totalInventory);setHasSelectedVariant(false);}}};if(window?.shopXtools?.products&&Array.isArray(window.shopXtools.products)){const matchingProduct=window.shopXtools.products.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`);if(matchingProduct){const totalInventory=calculateTotalInventory(matchingProduct.node);setQuantityAvailable(totalInventory);setHasSelectedVariant(false);}}document.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);return()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[shopifyProductID]);const formatText=useCallback((text,quantity)=>{if(quantity===null||quantity===undefined){return null;}const isInfiniteInventory=window?.shopXtools?.products?.find(({node:product})=>product.id===`gid://shopify/Product/${shopifyProductID}`)?.node?.variants?.edges?.some(({node:variant})=>variant.availableForSale&&variant.quantityAvailable===0);if(quantity<=0){if(isInfiniteInventory){return noLimitText;}if(showOutOfStock){return outOfStockText;}return null;}const formattedText=text?.replace(\"{{inventory}}\",quantity)||`${quantity} left in stock`;return formattedText;},[showOutOfStock,outOfStockText,noLimitText,shopifyProductID]);// Only return null if explicitly 0/null and not showing out of stock\nif(quantityAvailable===null&&!showOutOfStock){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",width:\"auto\",boxSizing:\"border-box\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,flexGrow:0},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.textColor,margin:0,padding:0,lineHeight:1,whiteSpace:\"nowrap\"},children:formatText(props.textFormat,quantityAvailable)})});}FC_ProductInventoryCounter.defaultProps={shopifyProductID:\"\",font:undefined,textColor:\"#000\",textFormat:\"{{inventory}} left in stock\",showOutOfStock:true,outOfStockText:\"Out of stock\",noLimitText:\"In Stock\"};addPropertyControls(FC_ProductInventoryCounter,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},textColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},textFormat:{type:ControlType.String,title:\"Text Format\",defaultValue:\"{{inventory}} left in stock\",description:\"Use {{inventory}} to display the stock count\"},showOutOfStock:{type:ControlType.Boolean,title:\"Out of Stock\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},outOfStockText:{type:ControlType.String,title:\"Out of Stock Text\",defaultValue:\"Out of Stock\",hidden:props=>!props.showOutOfStock},noLimitText:{type:ControlType.String,title:\"No Limit Text\",defaultValue:\"In Stock\",description:'If you have \"Continue Selling When Out Of Stock\" selected on Shopify, and the inventory reaches 0.'}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductInventoryCounter\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductInventoryCounter.map", "/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * \u00A9 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useMemo,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";// Helper function to map country code to appropriate locale\nconst getLocaleFromCountry=countryCode=>{// Default fallback locale\nif(!countryCode)return undefined;// Common country code to locale mappings\nconst countryToLocale={// North America\nUS:\"en-US\",CA:\"en-CA\",QC:\"fr-CA\",// Europe\nGB:\"en-GB\",FR:\"fr-FR\",DE:\"de-DE\",IT:\"it-IT\",ES:\"es-ES\",PT:\"pt-PT\",NL:\"nl-NL\",BE:\"fr-BE\",LU:\"fr-LU\",CH:\"de-CH\",AT:\"de-AT\",SE:\"sv-SE\",NO:\"nb-NO\",DK:\"da-DK\",FI:\"fi-FI\",PL:\"pl-PL\",CZ:\"cs-CZ\",HU:\"hu-HU\",RU:\"ru-RU\",// Asia Pacific\nCN:\"zh-CN\",JP:\"ja-JP\",KR:\"ko-KR\",IN:\"en-IN\",AU:\"en-AU\",NZ:\"en-NZ\",// Latin America\nMX:\"es-MX\",BR:\"pt-BR\",AR:\"es-AR\",CL:\"es-CL\",CO:\"es-CO\",PE:\"es-PE\",// Middle East & Africa\nAE:\"ar-AE\",SA:\"ar-SA\",ZA:\"en-ZA\",IL:\"he-IL\"};return countryToLocale[countryCode]||undefined;};// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_ProductPriceCompare(props){const{shopifyProductID,canvasPrice,format:{showCurrency,showSymbol,showDecimals,currencyCode}={},strikethrough,strikethroughColor,strikethroughSize,font,color}=props;const[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const isBrowser=useIsBrowser();// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode);setSelectedCountry(storedCountry);},[isBrowser]);const _currencyCode=useMemo(()=>{const variantCurrency=get(activeVariant,\"price.currencyCode\");const productCurrency=get(product,\"priceRange.minVariantPrice.currencyCode\");return variantCurrency||productCurrency||\"USD\";},[activeVariant,product]);const showMockValues=useMemo(()=>typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||isBrowser&&window.location.origin.endsWith(\"framercanvas.com\")),[isBrowser]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback for boolean value\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!(\"MSStream\"in window);// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const text=useMemo(()=>{if(!isBrowser)return\"\";// For canvas view, handle the display options directly\nif(typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||showMockValues)){const price=canvasPrice||\"75.00\";const numericPrice=parseFloat(price);const currentCurrencyCode=currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);}// For live view, get the compare at price\nconst amount=activeVariant?get(activeVariant,\"compareAtPrice.amount\"):get(product,\"compareAtPriceRange.minVariantPrice.amount\");if(!amount)return\"\";const numericPrice=parseFloat(amount);if(isNaN(numericPrice))return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);},[isBrowser,showMockValues,activeVariant,product,canvasPrice,showCurrency,showSymbol,currencyCode,showDecimals,selectedCurrency,props.format]);const numericValue=useMemo(()=>{if(!text)return 0;const value=parseFloat(text.replace(/[^\\d.-]/g,\"\"));return isNaN(value)?0:value;},[text]);const showComparePrice=showMockValues||numericValue>0;// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Preserve active variant selection if possible\nif(activeVariant){const matchingVariant=_matchingProduct.node.variants?.edges.find(({node})=>node.selectedOptions.every(option=>activeVariant.selectedOptions.find(activeOption=>activeOption.name===option.name&&activeOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}}}}catch(error){// Error handling\n}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,shopifyProductID,activeVariant,selectedCurrency,selectedCountryCode]);useEffect(()=>{if(!isBrowser)return;const handleVariantChange=e=>{try{if(e.detail){const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(!e.detail.productId||e.detail.productId!==expectedProductId){return;}}// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Find the matching variant in the current product data\nconst matchingVariant=_matchingProduct.node?.variants?.edges?.find(({node})=>node.selectedOptions.every(option=>e.detail.selectedOptions.find(detailOption=>detailOption.name===option.name&&detailOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}else{setActiveVariant(e.detail);}}}catch(error){// Error handling without console.error\nsetActiveVariant(e.detail);}};const handleProductsReady=e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?_matchingProduct.node:\"404\");// If there's only one variant, set it as active\nif(_matchingProduct?.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}// Invalid products data structure - silently handle\n};// Initial product load function\nconst loadProduct=async()=>{try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);if(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}}catch(error){// Error handling without console.error\n}};// Call loadProduct on mount\nloadProduct();// Initial check for existing products\nif(window[\"shopXtools\"]?.products){const products=window[\"shopXtools\"].products;if(Array.isArray(products)&&products.length>0){const _matchingProduct=products.find(({node:_product})=>_product?.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct?.node){setProduct(_matchingProduct.node);if(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}else{setProduct(\"404\");}}}// Add event listeners\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);// Cleanup\nreturn()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[isBrowser,shopifyProductID,selectedCurrency]);// Return empty div during SSR\nif(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"}});}// Always show in canvas view, otherwise only show if there's a compare price\nif(!showComparePrice){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-block\",maxWidth:\"100%\",width:\"auto\",whiteSpace:\"nowrap\",overflow:\"visible\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...font,color:color,margin:0,padding:0,lineHeight:1,textDecoration:strikethrough?\"line-through\":\"none\",textDecorationColor:strikethroughColor,textDecorationThickness:strikethrough?`${strikethroughSize}px`:undefined,whiteSpace:\"nowrap\",display:\"inline-block\",width:\"auto\"},children:text})});}FC_ProductPriceCompare.defaultProps={shopifyProductID:\"\",strikethrough:true,strikethroughColor:\"#000000\",strikethroughSize:1,canvasPrice:\"75.00\",format:{showCurrency:true,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_ProductPriceCompare,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS\"},canvasPrice:{type:ControlType.String,title:\"Canvas Price\",description:\"Connect to CMS for canvas preview.\",defaultValue:\"75.00\"},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, \u20AC, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency on your site is automatic, this is only shown in canvas preview.\"}}},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},strikethrough:{type:ControlType.Boolean,title:\"Strike\",defaultValue:true},strikethroughSize:{type:ControlType.Number,title:\"Size\",defaultValue:1,min:0,max:8,step:.1,hidden:props=>!props.strikethrough},strikethroughColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\",hidden:props=>!props.strikethrough}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPriceCompare\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPriceCompare.map", "// Generated by Framer (b5638f1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image,Link,RichText,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductPriceDiscount from\"https://framerusercontent.com/modules/DfiHm7rgZZvl0dxRShLF/YFXw8Lhzym1IpplB8f8b/FC_ProductPriceDiscount.js\";import FC_ProductStockStatus from\"https://framerusercontent.com/modules/gsF1PcoB6DIjO9DCxQ8u/ZF2YKjKEXWtLeQihDKoU/FC_ProductStockStatus.js\";import FC_ProductInventoryCounter from\"https://framerusercontent.com/modules/LfNrg3Vrj1wZ6mJirTUh/di9WOJwWZKBTLUmtcBbH/FC_ProductInventoryCounter.js\";import FC_ProductPrice from\"https://framerusercontent.com/modules/N07JJZfuMtyHijtiRRgH/vuWsYB4j3wQ8nbJ1MmZM/FC_ProductPrice.js\";import FC_ProductPriceCompare from\"https://framerusercontent.com/modules/ZipJAXrtSkBsdbTSry5q/vYd5oXwvdxHiTUBD8VOo/FC_ProductPriceCompare.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/sjeLFN5OBljXOu3OSAaU/FXqZ7K7vvQcqcxFSewwy/cW5kN9oyo.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/fDPquNB7Wv4W9FTucSav/IPtWdWjnK9E0H1KMSCZ9/FaDfI39rU.js\";import FCProductBadge from\"https://framerusercontent.com/modules/36DVyPlOW97GPUqzU0OA/cj9YEppQdM5qdKrIv28C/ukqB34sIW.js\";import PurchaseButton from\"https://framerusercontent.com/modules/v6CVE5jwnSjaPan6xJCc/k43Lrekye7CzK9UA4Nam/UnsogWI8Z.js\";const PurchaseButtonFonts=getFonts(PurchaseButton);const FC_ProductPriceDiscountFonts=getFonts(FC_ProductPriceDiscount);const FCProductBadgeFonts=getFonts(FCProductBadge);const FC_ProductInventoryCounterFonts=getFonts(FC_ProductInventoryCounter);const FC_ProductStockStatusFonts=getFonts(FC_ProductStockStatus);const FC_ProductPriceFonts=getFonts(FC_ProductPrice);const FC_ProductPriceCompareFonts=getFonts(FC_ProductPriceCompare);const enabledGestures={IPs4PKtdB:{hover:true},T2p3G2Jxv:{hover:true}};const cycleOrder=[\"IPs4PKtdB\",\"T2p3G2Jxv\",\"gL2dR8PPe\"];const serializationHash=\"framer-VfPuO\";const variantClassNames={gL2dR8PPe:\"framer-v-wdlvku\",IPs4PKtdB:\"framer-v-1u41xkp\",T2p3G2Jxv:\"framer-v-1rq9txx\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;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 Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"img-swap\":\"IPs4PKtdB\",\"img-zoom\":\"T2p3G2Jxv\",phone:\"gL2dR8PPe\"};const getProps=({bestSeller,height,id,image1,image2,link,new1,productID,quickAdd,title,width,...props})=>{return{...props,kzuvLaKjt:new1??props.kzuvLaKjt??true,L50124giC:image2??props.L50124giC,oDaFcesAH:quickAdd??props.oDaFcesAH,QxKEfLsTA:bestSeller??props.QxKEfLsTA??true,rOnTqGIsu:productID??props.rOnTqGIsu,TCXN5zxa5:image1??props.TCXN5zxa5,TOAsAcbaX:title??props.TOAsAcbaX??\"Title\",UdwOBeoEW:link??props.UdwOBeoEW,variant:humanReadableVariantMap[props.variant]??props.variant??\"IPs4PKtdB\"};};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,rOnTqGIsu,TOAsAcbaX,TCXN5zxa5,L50124giC,QxKEfLsTA,UdwOBeoEW,kzuvLaKjt,oDaFcesAH,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"IPs4PKtdB\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(gestureVariant===\"T2p3G2Jxv-hover\")return false;if(baseVariant===\"T2p3G2Jxv\")return false;return true;};const isDisplayed1=value=>{if([\"IPs4PKtdB-hover\",\"T2p3G2Jxv-hover\"].includes(gestureVariant))return value;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1u41xkp\",className,classNames),\"data-framer-name\":\"img-swap\",layoutDependency:layoutDependency,layoutId:\"IPs4PKtdB\",ref:refBinding,style:{...style},...addPropertyOverrides({\"IPs4PKtdB-hover\":{\"data-framer-name\":undefined},\"T2p3G2Jxv-hover\":{\"data-framer-name\":undefined},gL2dR8PPe:{\"data-framer-name\":\"phone\"},T2p3G2Jxv:{\"data-framer-name\":\"img-zoom\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-197geqv\",\"data-framer-name\":\"img-btn\",layoutDependency:layoutDependency,layoutId:\"LGb4ss692\",style:{borderBottomLeftRadius:16,borderBottomRightRadius:16,borderTopLeftRadius:16,borderTopRightRadius:16},children:[/*#__PURE__*/_jsx(Link,{href:UdwOBeoEW,motionChild:true,nodeId:\"K_Xzu8j6Q\",openInNewTab:false,scopeId:\"rBqzz0xZ_\",smoothScroll:false,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-j4py23 framer-1mgpwsl\",\"data-framer-name\":\"img\",layoutDependency:layoutDependency,layoutId:\"K_Xzu8j6Q\",style:{backgroundColor:\"var(--token-977611e6-b9d8-4d09-809b-8b874fb3d33d, rgb(235, 235, 230))\"},children:[isDisplayed()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fit\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0),sizes:\"400px\",...toResponsiveImage(L50124giC),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-xah1jy\",\"data-framer-name\":\"img-hover\",layoutDependency:layoutDependency,layoutId:\"d8SZMXilL\",style:{opacity:0},variants:{\"IPs4PKtdB-hover\":{opacity:1}}}),/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fit\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0+0),sizes:\"400px\",...toResponsiveImage(TCXN5zxa5),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-qg0j1t\",\"data-framer-name\":\"img-primary\",layoutDependency:layoutDependency,layoutId:\"bzDtE1CGX\",style:{opacity:1},variants:{\"IPs4PKtdB-hover\":{opacity:0},\"T2p3G2Jxv-hover\":{opacity:1}}})]})}),isDisplayed1(oDaFcesAH)&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-m0mgg7\",\"data-framer-name\":\"button\",layoutDependency:layoutDependency,layoutId:\"WOEM_pHx9\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:56,...addPropertyOverrides({\"IPs4PKtdB-hover\":{width:`max(${componentViewport?.width||\"100vw\"} * 0.9975 - 16px, 1px)`,y:(componentViewport?.y||0)+0+0+500-72+8},\"T2p3G2Jxv-hover\":{width:`max(${componentViewport?.width||\"100vw\"} * 0.9975 - 16px, 1px)`,y:(componentViewport?.y||0)+0+0+500-72+8}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1utvtpy-container\",layoutDependency:layoutDependency,layoutId:\"hqaZq4zuz-container\",nodeId:\"hqaZq4zuz\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(PurchaseButton,{CtxbSorek:true,gzPkfrIbf:rOnTqGIsu,height:\"100%\",id:\"hqaZq4zuz\",KAtvUtyrK:true,layoutId:\"hqaZq4zuz\",style:{width:\"100%\"},width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-13u2xk3\",layoutDependency:layoutDependency,layoutId:\"w5hAx66oi\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-5knrml-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"FFuuUJOWT-container\",nodeId:\"FFuuUJOWT\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FC_ProductPriceDiscount,{backgroundColor:\"var(--token-ee0b45be-ab89-496b-a918-9602b833a448, rgb(217, 61, 79))\",borderRadius:6,discountType:\"Percentage\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"10px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"0em\",lineHeight:\"1em\"},format:{currencyCode:\"USD\",showCurrency:true,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"FFuuUJOWT\",layoutId:\"FFuuUJOWT\",padding:8,paddingBottom:8,paddingLeft:8,paddingPerSide:false,paddingRight:8,paddingTop:8,radiusBottomLeft:6,radiusBottomRight:6,radiusPerCorner:false,radiusTopLeft:6,radiusTopRight:6,shopifyProductID:rOnTqGIsu,style:{height:\"100%\"},textColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",textFormat:\"{{discount}} OFF\",width:\"100%\"})})}),QxKEfLsTA&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:18,y:(componentViewport?.y||0)+0+0+0+8,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-voe1zz-container\",layoutDependency:layoutDependency,layoutId:\"nWwMG9XWL-container\",nodeId:\"nWwMG9XWL\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FCProductBadge,{DgJsA9KIz:\"OvgHHqST4\",height:\"100%\",id:\"nWwMG9XWL\",layoutId:\"nWwMG9XWL\",variant:\"HJdGtxK8E\",width:\"100%\"})})}),kzuvLaKjt&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:18,y:(componentViewport?.y||0)+0+0+0+8,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1sbxr1z-container\",layoutDependency:layoutDependency,layoutId:\"cHeoSZaZF-container\",nodeId:\"cHeoSZaZF\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FCProductBadge,{DgJsA9KIz:\"OvgHHqST4\",height:\"100%\",id:\"cHeoSZaZF\",layoutId:\"cHeoSZaZF\",variant:\"hGhv7_zZr\",width:\"100%\"})})})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-17rr0hl\",layoutDependency:layoutDependency,layoutId:\"U9VnIOqX2\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1itd4cq-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"RBVIsOZOV-container\",nodeId:\"RBVIsOZOV\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FC_ProductStockStatus,{aboveThresholdComponent:[],belowThresholdComponent:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-gldqd8\",\"data-framer-name\":\"low\",layoutDependency:layoutDependency,layoutId:\"X73Mjr0Pt\",style:{backgroundColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",borderBottomLeftRadius:6,borderBottomRightRadius:6,borderTopLeftRadius:6,borderTopRightRadius:6},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-iapv2o-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"oq8vmS2gW-container\",nodeId:\"oq8vmS2gW\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FC_ProductInventoryCounter,{font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"10px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"0.08em\",lineHeight:\"1em\"},height:\"100%\",id:\"oq8vmS2gW\",layoutId:\"oq8vmS2gW\",noLimitText:\"In Stock\",outOfStockText:\"Out of Stock\",shopifyProductID:rOnTqGIsu,showOutOfStock:true,textColor:\"var(--token-d35e5398-af28-4f97-8e2e-13717c50156f, rgb(255, 255, 255))\",textFormat:\"ONLY {{inventory}} LEFT\",width:\"100%\"})})})})],height:\"100%\",id:\"RBVIsOZOV\",layoutId:\"RBVIsOZOV\",outOfStockComponent:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1y31vi1\",\"data-framer-name\":\"out-of-stock\",layoutDependency:layoutDependency,layoutId:\"SovfssRQv\",style:{backgroundColor:\"rgba(196, 201, 193, 0.64)\",borderBottomLeftRadius:6,borderBottomRightRadius:6,borderTopLeftRadius:6,borderTopRightRadius:6},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1l65ki4\",\"data-styles-preset\":\"cW5kN9oyo\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Out of stock\"})}),className:\"framer-zms40\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"UYNU6k8hL\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})],shopifyProductID:rOnTqGIsu,showAboveThreshold:false,showBelowThreshold:true,showOutOfStock:true,showTotalInventory:true,threshold:5,width:\"100%\"})})})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1wkqaas\",\"data-framer-name\":\"info\",layoutDependency:layoutDependency,layoutId:\"uVrI46oR6\",children:[/*#__PURE__*/_jsx(Link,{href:UdwOBeoEW,motionChild:true,nodeId:\"HcWrUhdm5\",openInNewTab:false,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-woult9 framer-1mgpwsl\",\"data-framer-name\":\"title\",layoutDependency:layoutDependency,layoutId:\"HcWrUhdm5\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1in8z1g\",\"data-styles-preset\":\"FaDfI39rU\",children:\"Title\"})}),className:\"framer-1gzp1kd\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"o7lLzJXVB\",text:TOAsAcbaX,verticalAlignment:\"top\",withExternalLayout:true})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1lf9n95\",\"data-framer-name\":\"prices\",layoutDependency:layoutDependency,layoutId:\"PcOZbofij\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-bnvkm-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"DSAL7IMIX-container\",nodeId:\"DSAL7IMIX\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FC_ProductPrice,{canvasPrice:\"50.00\",format:{currencyCode:\"USD\",showCurrency:true,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"DSAL7IMIX\",layoutId:\"DSAL7IMIX\",regularColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",regularFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},saleColor:\"var(--token-ee0b45be-ab89-496b-a918-9602b833a448, rgb(217, 61, 79))\",saleFont:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},shopifyProductID:rOnTqGIsu,width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-19x6pi1-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"hDRXL77id-container\",nodeId:\"hDRXL77id\",rendersWithMotion:true,scopeId:\"rBqzz0xZ_\",children:/*#__PURE__*/_jsx(FC_ProductPriceCompare,{canvasPrice:\"\",color:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:600,letterSpacing:\"-0.02em\",lineHeight:\"1em\"},format:{currencyCode:\"USD\",showCurrency:true,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"hDRXL77id\",layoutId:\"hDRXL77id\",shopifyProductID:rOnTqGIsu,strikethrough:true,strikethroughColor:\"var(--token-2de60d55-30ed-45f4-87e6-158824b868d3, rgb(0, 0, 0))\",strikethroughSize:1,width:\"100%\"})})})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-VfPuO.framer-1mgpwsl, .framer-VfPuO .framer-1mgpwsl { display: block; }\",\".framer-VfPuO.framer-1u41xkp { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: column; flex-wrap: wrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 400px; }\",\".framer-VfPuO .framer-197geqv { aspect-ratio: 0.8 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 500px); overflow: hidden; position: relative; width: 100%; will-change: var(--framer-will-change-override, transform); }\",\".framer-VfPuO .framer-j4py23 { aspect-ratio: 0.8 / 1; bottom: 0px; flex: none; left: 0px; overflow: hidden; position: absolute; text-decoration: none; top: 0px; width: var(--framer-aspect-ratio-supported, 400px); }\",\".framer-VfPuO .framer-xah1jy { flex: none; height: 100%; left: calc(50.00000000000002% - 100% / 2); overflow: hidden; position: absolute; top: calc(50.00000000000002% - 100% / 2); width: 100%; z-index: 1; }\",\".framer-VfPuO .framer-qg0j1t { flex: none; height: 100%; left: calc(50.00000000000002% - 100% / 2); overflow: hidden; position: absolute; top: calc(50.00000000000002% - 100% / 2); width: 100%; z-index: 2; }\",\".framer-VfPuO .framer-m0mgg7 { align-content: center; align-items: center; bottom: 0px; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; left: 50%; overflow: visible; padding: 8px; position: absolute; width: 100%; z-index: 3; }\",\".framer-VfPuO .framer-1utvtpy-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-VfPuO .framer-13u2xk3 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 8px; position: absolute; right: 0px; top: 0px; width: min-content; z-index: 4; }\",\".framer-VfPuO .framer-5knrml-container { flex: none; height: 18px; position: relative; width: auto; }\",\".framer-VfPuO .framer-voe1zz-container, .framer-VfPuO .framer-1sbxr1z-container { flex: none; height: auto; position: relative; width: auto; z-index: 4; }\",\".framer-VfPuO .framer-17rr0hl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; left: 0px; overflow: visible; padding: 8px; position: absolute; top: 0px; width: min-content; }\",\".framer-VfPuO .framer-1itd4cq-container, .framer-VfPuO .framer-iapv2o-container, .framer-VfPuO .framer-bnvkm-container, .framer-VfPuO .framer-19x6pi1-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-VfPuO .framer-gldqd8, .framer-VfPuO .framer-1y31vi1 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 18px; justify-content: center; overflow: visible; padding: 0px 6px 0px 6px; position: relative; width: min-content; z-index: 4; }\",\".framer-VfPuO .framer-zms40 { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-VfPuO .framer-1wkqaas { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-VfPuO .framer-woult9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: 100%; }\",\".framer-VfPuO .framer-1gzp1kd { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-VfPuO .framer-1lf9n95 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-VfPuO.framer-1u41xkp, .framer-VfPuO .framer-m0mgg7, .framer-VfPuO .framer-13u2xk3, .framer-VfPuO .framer-17rr0hl, .framer-VfPuO .framer-gldqd8, .framer-VfPuO .framer-1y31vi1, .framer-VfPuO .framer-1wkqaas, .framer-VfPuO .framer-woult9, .framer-VfPuO .framer-1lf9n95 { gap: 0px; } .framer-VfPuO.framer-1u41xkp > * { margin: 0px; margin-bottom: calc(16px / 2); margin-top: calc(16px / 2); } .framer-VfPuO.framer-1u41xkp > :first-child, .framer-VfPuO .framer-1wkqaas > :first-child { margin-top: 0px; } .framer-VfPuO.framer-1u41xkp > :last-child, .framer-VfPuO .framer-1wkqaas > :last-child { margin-bottom: 0px; } .framer-VfPuO .framer-m0mgg7 > *, .framer-VfPuO .framer-13u2xk3 > *, .framer-VfPuO .framer-1lf9n95 > * { margin: 0px; margin-left: calc(8px / 2); margin-right: calc(8px / 2); } .framer-VfPuO .framer-m0mgg7 > :first-child, .framer-VfPuO .framer-13u2xk3 > :first-child, .framer-VfPuO .framer-17rr0hl > :first-child, .framer-VfPuO .framer-gldqd8 > :first-child, .framer-VfPuO .framer-1y31vi1 > :first-child, .framer-VfPuO .framer-woult9 > :first-child, .framer-VfPuO .framer-1lf9n95 > :first-child { margin-left: 0px; } .framer-VfPuO .framer-m0mgg7 > :last-child, .framer-VfPuO .framer-13u2xk3 > :last-child, .framer-VfPuO .framer-17rr0hl > :last-child, .framer-VfPuO .framer-gldqd8 > :last-child, .framer-VfPuO .framer-1y31vi1 > :last-child, .framer-VfPuO .framer-woult9 > :last-child, .framer-VfPuO .framer-1lf9n95 > :last-child { margin-right: 0px; } .framer-VfPuO .framer-17rr0hl > *, .framer-VfPuO .framer-gldqd8 > *, .framer-VfPuO .framer-1y31vi1 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-VfPuO .framer-1wkqaas > * { margin: 0px; margin-bottom: calc(8px / 2); margin-top: calc(8px / 2); } .framer-VfPuO .framer-woult9 > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } }\",\".framer-VfPuO.framer-v-wdlvku.framer-1u41xkp { cursor: unset; }\",\".framer-VfPuO.framer-v-1rq9txx.hover .framer-qg0j1t { top: 0px; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 555\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"T2p3G2Jxv\":{\"layout\":[\"fixed\",\"auto\"]},\"gL2dR8PPe\":{\"layout\":[\"fixed\",\"auto\"]},\"A5EVMVqz6\":{\"layout\":[\"fixed\",\"auto\"]},\"k5OMU5NW4\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"rOnTqGIsu\":\"productID\",\"TOAsAcbaX\":\"title\",\"TCXN5zxa5\":\"image1\",\"L50124giC\":\"image2\",\"QxKEfLsTA\":\"bestSeller\",\"UdwOBeoEW\":\"link\",\"kzuvLaKjt\":\"new1\",\"oDaFcesAH\":\"quickAdd\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerrBqzz0xZ_=withCSS(Component,css,\"framer-VfPuO\");export default FramerrBqzz0xZ_;FramerrBqzz0xZ_.displayName=\"FC Product / productCard\";FramerrBqzz0xZ_.defaultProps={height:555,width:400};addPropertyControls(FramerrBqzz0xZ_,{variant:{options:[\"IPs4PKtdB\",\"T2p3G2Jxv\",\"gL2dR8PPe\"],optionTitles:[\"img-swap\",\"img-zoom\",\"phone\"],title:\"Variant\",type:ControlType.Enum},rOnTqGIsu:{defaultValue:\"\",description:\"\",title:\"Product ID\",type:ControlType.String},TOAsAcbaX:{defaultValue:\"Title\",title:\"Title\",type:ControlType.String},TCXN5zxa5:{title:\"Image 1\",type:ControlType.ResponsiveImage},L50124giC:{title:\"Image 2\",type:ControlType.ResponsiveImage},QxKEfLsTA:{defaultValue:true,title:\"Best seller\",type:ControlType.Boolean},UdwOBeoEW:{title:\"Link\",type:ControlType.Link},kzuvLaKjt:{defaultValue:true,title:\"New\",type:ControlType.Boolean},oDaFcesAH:{defaultValue:false,title:\"Quick Add\",type:ControlType.Boolean}});addFonts(FramerrBqzz0xZ_,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/1ZFS7N918ojhhd0nQWdj3jz4w.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...PurchaseButtonFonts,...FC_ProductPriceDiscountFonts,...FCProductBadgeFonts,...FC_ProductInventoryCounterFonts,...FC_ProductStockStatusFonts,...FC_ProductPriceFonts,...FC_ProductPriceCompareFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerrBqzz0xZ_\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"rOnTqGIsu\\\":\\\"productID\\\",\\\"TOAsAcbaX\\\":\\\"title\\\",\\\"TCXN5zxa5\\\":\\\"image1\\\",\\\"L50124giC\\\":\\\"image2\\\",\\\"QxKEfLsTA\\\":\\\"bestSeller\\\",\\\"UdwOBeoEW\\\":\\\"link\\\",\\\"kzuvLaKjt\\\":\\\"new1\\\",\\\"oDaFcesAH\\\":\\\"quickAdd\\\"}\",\"framerIntrinsicHeight\":\"555\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"400\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"T2p3G2Jxv\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"gL2dR8PPe\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"A5EVMVqz6\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"k5OMU5NW4\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./rBqzz0xZ_.map"],
  "mappings": "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",
  "names": ["isCurrencySymbolSameAsCode", "currencyCode", "knownCurrenciesWithCodeAsSymbol", "FC_ProductPriceDiscount", "props", "shopifyProductID", "discountType", "showCurrency", "showSymbol", "showDecimals", "textFormat", "product", "setProduct", "ye", "activeVariant", "setActiveVariant", "selectedCurrency", "setSelectedCurrency", "get_default", "selectedCountryCode", "setSelectedCountryCode", "selectedCountry", "setSelectedCountry", "isBrowser", "useIsBrowser", "ue", "storedCurrency", "storedCountryCode", "storedCountry", "handleVariantChange", "e", "expectedProductId", "_matchingProduct", "window", "_product", "matchingVariant", "node", "option", "detailOption", "handleProductsReady", "variant", "handleCurrencyChange", "event", "currency", "countryCode", "country", "activeOption", "price", "se", "compareAtPrice", "currencyConfig", "currencyMaps", "formatPriceWithOptions", "numericPrice", "currCode", "symbolSameAsCode", "locale", "getLocaleFromCountry", "decimalDigits", "navigator", "number", "discount", "te", "compareAtPriceNum", "priceNum", "amount", "formattedDiscount", "showMockValues", "RenderTarget", "text", "formattedAmount", "p", "addPropertyControls", "ControlType", "isCurrencySymbolSameAsCode", "currencyCode", "knownCurrenciesWithCodeAsSymbol", "FC_ProductPrice", "props", "shopifyProductID", "canvasPrice", "showCurrency", "showSymbol", "showDecimals", "isBrowser", "useIsBrowser", "product", "setProduct", "ye", "activeVariant", "setActiveVariant", "subscriptionPrice", "setSubscriptionPrice", "selectedCurrency", "setSelectedCurrency", "selectedCountryCode", "setSelectedCountryCode", "selectedCountry", "setSelectedCountry", "isLoadingPrice", "setIsLoadingPrice", "ue", "storedCurrency", "storedCountryCode", "storedCountry", "handleVariantChange", "e", "_matchingProduct", "window", "_product", "matchingVariant", "node", "option", "detailOption", "handleCurrencyChange", "event", "currency", "countryCode", "country", "activeOption", "handleProductsReady", "handleSubscriptionPriceUpdate", "_currencyCode", "se", "variantCurrency", "get_default", "productCurrency", "showMockValues", "RenderTarget", "formatPriceWithOptions", "numericPrice", "currCode", "symbolSameAsCode", "locale", "getLocaleFromCountry", "decimalDigits", "navigator", "number", "text", "amount", "compareAtPrice", "numericValue", "hasValidCompareAtPrice", "p", "addPropertyControls", "ControlType", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "title", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "GuWLZATKE", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "RichText2", "css", "FramercMEJPzH94", "withCSS", "cMEJPzH94_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "FCProductBadgeBaseFonts", "getFonts", "cMEJPzH94_default", "FCProductBadgeBaseControls", "getPropertyControls", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableEnumMap", "humanReadableVariantMap", "getProps", "color", "height", "id", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "DgJsA9KIz", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "ref1", "pe", "defaultLayoutId", "ae", "sharedStyleClassNames", "componentViewport", "useComponentViewport", "LayoutGroup", "cx", "ComponentViewportProvider", "css", "FramerukqB34sIW", "withCSS", "ukqB34sIW_default", "addPropertyControls", "ControlType", "addFonts", "FC_ProductPurchaseButton", "props", "shopifyProductID", "available", "OutOfStock", "SelectVariant", "LoadingState", "shopifyProductVariantId", "BuyNowATC", "title", "required", "openCart", "product", "setProduct", "ye", "activeVariant", "setActiveVariant", "isInStock", "setIsInStock", "needsVariantSelection", "setNeedsVariantSelection", "isLoading", "setIsLoading", "shouldShowLoading", "setShouldShowLoading", "hasInitialized", "setHasInitialized", "countryCode", "setCountryCode", "isBrowser", "useIsBrowser", "planSelected", "setPlanSelected", "cartExistingData", "setCartExistingData", "errorMessage", "setErrorMessage", "productQuantity", "setProductQuantity", "viewContentFired", "pe", "autoSelectFirst", "setAutoSelectFirst", "autoSelectReceived", "setAutoSelectReceived", "isVariantManuallySelected", "setIsVariantManuallySelected", "ue", "handleAutoSelectFlag", "event", "calculateTotalInventory", "te", "productData", "get_default", "total", "node", "isVariantAvailable", "variant", "window", "savedCartId", "cartQuery", "data", "error", "handleSubscriptionChange", "handleQuantityChange", "handleCurrencyChange", "existingCartId", "updateData", "updateCartCurrency", "handleSingleVariantProduct", "productNode", "variants", "handleProductData", "_matchingProduct", "variantId", "matchingVariant", "firstAvailableVariant", "edge", "anyVariantAvailable", "productsReadyHandler", "matchingProduct", "variantChangeHandler", "e", "currency", "value", "item_id", "item_name", "price", "hasMultipleVariants", "handleSingleVariantProducts", "handleSubscription", "mutation", "variables", "handleCartMutation", "isValidId", "id", "fullId", "orderFieldError", "setOrderFieldError", "logDebug", "message", "validateOrderField", "productSpecificKey", "storedAttributes", "attributes", "isValid", "handleOrderFieldChange", "isInputRequired", "setIsInputRequired", "checkInputRequirement", "configKey", "config", "getLineItem", "merchandiseId", "lineItem", "stored", "key", "maxQuantityReached", "setMaxQuantityReached", "getCurrentCartQuantity", "handleAddToCart", "currentCartQuantity", "totalRequestedQuantity", "adjustedQuantity", "currentInputValue", "lines", "cartData", "addToCartMutation", "activeProduct", "createCartMutation", "checkoutUrl", "finalCheckoutUrl", "appendUTMParamsToUrl", "appendLanguageToUrl", "cartId", "updateCartAttributes", "timer", "content", "RenderTarget", "canAddToCart", "handleClick", "shouldBeAtMax", "clonedElement", "q", "p", "debugInfo", "u", "currentInCart", "remainingAllowed", "handleQuantityMaxReached", "productId", "maxQuantity", "addPropertyControls", "ControlType", "FC_ProductVariantState", "props", "shopifyProductID", "textTemplate", "product", "setProduct", "ye", "selectedOptions", "setSelectedOptions", "handleVariantSelection", "te", "event", "prev", "ue", "window", "_matchingProduct", "_product", "e", "handleCurrencyChange", "currency", "remainingOptions", "get_default", "opt", "displayText", "p", "addPropertyControls", "ControlType", "containerStyles", "emptyStateStyle", "defaultEvents", "ControlType", "fontSizeOptions", "fontControls", "font", "useOnEnter", "onEnter", "enabled", "useOnSpecificTargetChange", "useOnExit", "onExit", "goal", "callback", "isInTarget", "useIsInCurrentNavigationTarget", "ue", "isBrowserSafari", "navigator", "userAgent", "useIsBrowserSafari", "se", "useRenderTarget", "se", "RenderTarget", "useIsOnCanvas", "se", "RenderTarget", "useRadius", "props", "borderRadius", "isMixedBorderRadius", "topLeftRadius", "topRightRadius", "bottomRightRadius", "bottomLeftRadius", "se", "borderRadiusControl", "ControlType", "paddingControl", "ControlType", "Indicators", "DotWave", "color", "animation", "circles", "delay", "ease", "duration", "animProps", "transition", "p", "motion", "circle", "Material", "IOS", "arrayRotate", "arr", "n", "lines", "l", "i", "lineOpacities", "lineKeyframes", "getIndicator", "indicator", "props", "Indicators", "handleTimeout", "callback", "id", "Loading", "onTimeout", "fadeOut", "hasDuration", "onClick", "onMouseDown", "onMouseUp", "onMouseEnter", "onMouseLeave", "style", "controls", "useAnimation", "animDuration", "animDelay", "currentIndicator", "handlers", "pe", "onFadeOut", "te", "resetOpacity", "useOnEnter", "useOnExit", "cleanup", "ue", "addPropertyControls", "ControlType", "defaultEvents", "FC_ProductPriceFonts", "getFonts", "FC_ProductPrice", "FC_ProductVariantStateFonts", "FC_ProductVariantState", "LoadingFonts", "Loading", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "transformTemplate1", "_", "t", "transformTemplate2", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "productID", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "elgRTGdr9", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "isDisplayed", "isDisplayed1", "isDisplayed2", "isDisplayed3", "LayoutGroup", "u", "RichText2", "ComponentViewportProvider", "SmartComponentScopedContainer", "css", "FramertmZW16Ab4", "withCSS", "tmZW16Ab4_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts", "LocalDesignFonts", "getFonts", "tmZW16Ab4_default", "FC_ProductPurchaseButtonFonts", "FC_ProductPurchaseButton", "serializationHash", "variantClassNames", "transition1", "convertFromBoolean", "value", "activeLocale", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "getProps", "height", "id", "productID", "quickAdd", "skipLoading", "width", "props", "createLayoutDependency", "variants", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "variant", "gzPkfrIbf", "CtxbSorek", "KAtvUtyrK", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "variantClassNames", "layoutDependency", "scopingClassNames", "cx", "serializationHash", "LayoutGroup", "ComponentViewportProvider", "SmartComponentScopedContainer", "FC_ProductPurchaseButton", "tmZW16Ab4_default", "css", "FramerUnsogWI8Z", "withCSS", "UnsogWI8Z_default", "addPropertyControls", "ControlType", "addFonts", "LocalDesignFonts", "FC_ProductPurchaseButtonFonts", "FC_ProductStockStatus", "props", "RenderTarget", "p", "threshold", "aboveThresholdComponent", "belowThresholdComponent", "outOfStockComponent", "showTotalInventory", "showOutOfStock", "showAboveThreshold", "showBelowThreshold", "quantityAvailable", "setQuantityAvailable", "ye", "hasSelectedVariant", "setHasSelectedVariant", "totalInventory", "setTotalInventory", "isInfiniteInventory", "setIsInfiniteInventory", "ue", "handleVariantChange", "e", "activeVariant", "expectedProductId", "processProduct", "product", "variants", "edge", "hasVariants", "hasInfiniteInventory", "variant", "total", "sum", "handleProductsReady", "matchingProduct", "window", "getStockMessage", "displayQuantity", "shouldShow", "isHidden", "addPropertyControls", "ControlType", "FC_ProductInventoryCounter", "props", "RenderTarget", "p", "shopifyProductID", "showOutOfStock", "outOfStockText", "noLimitText", "quantityAvailable", "setQuantityAvailable", "ye", "hasSelectedVariant", "setHasSelectedVariant", "ue", "calculateTotalInventory", "product", "total", "variant", "variantQuantity", "handleVariantChange", "e", "activeVariant", "expectedProductId", "inventory", "handleProductsReady", "matchingProduct", "totalInventory", "window", "formatText", "te", "text", "quantity", "isInfiniteInventory", "addPropertyControls", "ControlType", "getLocaleFromCountry", "countryCode", "isCurrencySymbolSameAsCode", "currencyCode", "knownCurrenciesWithCodeAsSymbol", "FC_ProductPriceCompare", "props", "shopifyProductID", "canvasPrice", "showCurrency", "showSymbol", "showDecimals", "strikethrough", "strikethroughColor", "strikethroughSize", "font", "color", "product", "setProduct", "ye", "activeVariant", "setActiveVariant", "selectedCurrency", "setSelectedCurrency", "selectedCountryCode", "setSelectedCountryCode", "selectedCountry", "setSelectedCountry", "isBrowser", "useIsBrowser", "ue", "storedCurrency", "storedCountryCode", "storedCountry", "_currencyCode", "se", "variantCurrency", "get_default", "productCurrency", "showMockValues", "RenderTarget", "window", "formatPriceWithOptions", "numericPrice", "currCode", "symbolSameAsCode", "locale", "decimalDigits", "navigator", "number", "text", "amount", "numericValue", "value", "showComparePrice", "handleCurrencyChange", "event", "currency", "country", "_matchingProduct", "_product", "matchingVariant", "node", "option", "activeOption", "handleVariantChange", "e", "expectedProductId", "detailOption", "handleProductsReady", "products", "p", "addPropertyControls", "ControlType", "PurchaseButtonFonts", "getFonts", "UnsogWI8Z_default", "FC_ProductPriceDiscountFonts", "FC_ProductPriceDiscount", "FCProductBadgeFonts", "ukqB34sIW_default", "FC_ProductInventoryCounterFonts", "FC_ProductInventoryCounter", "FC_ProductStockStatusFonts", "FC_ProductStockStatus", "FC_ProductPriceFonts", "FC_ProductPrice", "FC_ProductPriceCompareFonts", "FC_ProductPriceCompare", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "toResponsiveImage", "value", "transformTemplate1", "_", "t", "Transition", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "bestSeller", "height", "id", "image1", "image2", "link", "new1", "productID", "quickAdd", "title", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "fallbackRef", "pe", "refBinding", "defaultLayoutId", "ae", "activeLocale", "setLocale", "useLocaleInfo", "componentViewport", "useComponentViewport", "style", "className", "layoutId", "rOnTqGIsu", "TOAsAcbaX", "TCXN5zxa5", "L50124giC", "QxKEfLsTA", "UdwOBeoEW", "kzuvLaKjt", "oDaFcesAH", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "scopingClassNames", "cx", "isDisplayed", "isDisplayed1", "LayoutGroup", "u", "Link", "Image2", "getLoadingLazyAtYPosition", "ComponentViewportProvider", "SmartComponentScopedContainer", "RichText2", "css", "FramerrBqzz0xZ_", "withCSS", "rBqzz0xZ_default", "addPropertyControls", "ControlType", "addFonts", "getFontsFromSharedStyle", "fonts"]
}
