{"version":3,"file":"ProductTileSearchResults.BufdZEGO.min.js","sources":["../frontend/src/stories/client/ProductTileSearch/ProductTileSearchResults.tsx"],"sourcesContent":["import React, {useEffect, useState} from \"react\";\r\nimport helpers from \"../../../../js/helpers\";\r\nimport useMobileBreakpoint from \"@mindarc/arctheme-components/frontend/src/hooks/useMobileBreakpoint\";\r\n\r\nexport const ProductTileSearchResults = ({\r\n product,\r\n swatches = [],\r\n siblings,\r\n show_add = false,\r\n show_price_inline = false,\r\n settings,\r\n enableWishlist,\r\n type = ''\r\n }) => {\r\n const isMobile = useMobileBreakpoint(\"1024px\");\r\n const [currencyCode, setCurrencyCode] = useState('AUD');\r\n useEffect(() => {\r\n window.addEventListener('currency_initialised' , (event) => {\r\n setCurrencyCode(event.detail.currency.name);\r\n });\r\n }, []);\r\n\r\n // Helper function to get price by currency code\r\n const getPriceByCurrency = (priceRanges, currency) => {\r\n const priceEntry = priceRanges?.find((item) => item.currency_code === currency);\r\n return priceEntry?.amount || 0; // Convert to proper price format\r\n };\r\n\r\n // Default prices from compare_at_price and price\r\n let minPrice = product?.price > 0 ? product?.price / 100 : 0;\r\n let maxPrice = product?.compare_at_price > 0 ? product?.compare_at_price / 100 : 0;\r\n\r\n // If presentment_price_ranges exist, extract prices for the current currency\r\n if (product?.presentment_price_ranges) {\r\n const presentmentMinPrice = getPriceByCurrency(product?.presentment_price_ranges?.min_variant_price, currencyCode);\r\n const presentmentMaxPrice = getPriceByCurrency(product?.presentment_price_ranges?.max_variant_price, currencyCode);\r\n\r\n // Use presentment prices only if they are available\r\n minPrice = presentmentMinPrice ?? minPrice;\r\n maxPrice = presentmentMaxPrice ?? maxPrice;\r\n }\r\n\r\n // Ensure that compare_at_price is treated as a \"strike-through price\" if higher\r\n const isOnSale = minPrice > 0 && minPrice < maxPrice;\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {product.title}\r\n
\r\n
\r\n
\r\n {isOnSale ? (\r\n <>\r\n Special Price\r\n
\r\n {currencyCode} ${minPrice.toFixed(0)}\r\n
\r\n \r\n ) : (\r\n <>\r\n Regular Price\r\n
\r\n {currencyCode} ${minPrice.toFixed(0)}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n {swatches.map((swatch) => (\r\n \r\n ))}\r\n
\r\n
\r\n {show_add && (\r\n {\r\n }}\r\n >\r\n Add to Cart\r\n \r\n )}\r\n {enableWishlist && (\r\n {\r\n }}\r\n >\r\n Add to Wishlist\r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n );\r\n};\r\n"],"names":["ProductTileSearchResults","product","swatches","siblings","show_add","show_price_inline","settings","enableWishlist","type","useMobileBreakpoint","currencyCode","setCurrencyCode","useState","useEffect","event","getPriceByCurrency","priceRanges","currency","priceEntry","item","minPrice","maxPrice","presentmentMinPrice","_a","presentmentMaxPrice","_b","isOnSale","jsx","Fragment","jsxs","swatch"],"mappings":"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"}