{
  "version": 3,
  "sources": ["/cdn/shop/t/224/assets/cv-custom-soldout-restockdate.js?enable_js_minification=1"],
  "sourcesContent": ["var productArray = [];\nvar productCards = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\n\nvar currentDate = new Date().toJSON().slice(0, 10).toString();\n\nfunction displayExpectedDate(item, index, array1, array2) {\n    let haveExpectedDate = false;\n    let expectedDate = [];\n    let productHandle = item.getAttribute(\"href\").split(\"/\").splice(-1).toString();\n\n    if (!array1.includes(productHandle)) {\n        array1.push(productHandle)\n        array2[index] = 0;\n\n        fetch(window.Shopify.routes.root + 'products/' + productHandle + '.js', {}).then((response) => {\n            return response.json();\n        }).then(function (product) {\n            for (let x = 0; x < product.tags.length; x++) {\n                if (product.tags[x].indexOf(\"expected_\") != -1) {\n                    haveExpectedDate = true;\n                    //  expectedDate = product.tags[x].split(\"_\").splice(-1).toString();\n                    // break\n                    expectedDate.push(product.tags[x].split(\"_\").splice(-1).toString())\n                }\n            }\n            expectedDate.sort(function (a, b) {\n                a = a.split('/').reverse().join('');\n                b = b.split('/').reverse().join('');\n                return a > b ? 1 : a < b ? -1 : 0;\n            });\n\n            if (haveExpectedDate && product.available == false) {\n                let expectedTrigger = item.closest(\".product-card-items-wrapper\").querySelector(\".fs-serp-product-title\").innerHTML.indexOf(\"Expected Restock Date\");\n                if (expectedTrigger == -1) {\n                    for (let i = 0; i < expectedDate.length; i++) {\n                        if (expectedDate[i] > currentDate) {\n                            item.closest(\".product-card-items-wrapper\").querySelector(\".fs-serp-product-title\").innerHTML += '<p style=\"font-size: 14px; color: #cd113d; margin:0;\">Expected Restock Date: ' + expectedDate[i] + '</p>';\n                            break;\n                        }\n                    }\n\n                }\n                haveExpectedDate = false;\n            }\n\n            function format(num) {\n                return (num / 100).toFixed(2);\n            }\n\n            if (false && product.compare_at_price > product.price) {\n\n\n                var originalPrice = format(product.compare_at_price)\n                var currentPrice = format(product.price)\n                var discount = Math.round((originalPrice - currentPrice) / originalPrice * 100);\n                var discountDiv = document.createElement(\"div\");\n                discountDiv.classList.add(\"cv-discount-wrapper\");\n\n                item.closest(\".product-card-items-wrapper\").querySelector(\".image-container\").append(discountDiv);\n                item.closest(\".product-card-items-wrapper\").querySelector(\".image-container\").style.position = \"relative\";\n                item.closest(\".product-card-items-wrapper\").querySelector(\".cv-discount-wrapper\").innerHTML = '<div class= cv-discount-content>' + discount + '% OFF</div>'\n\n                item.closest(\".product-card-items-wrapper\").querySelector(\".cv-discount-wrapper\").style.cssText = `\n    position: absolute;\n    top: 0;\n    background-color: #cd113d;\n    height: 40px;\n    width: 40px;\n    border-radius: 100%;\n    color: white;\n`;\n                item.closest(\".product-card-items-wrapper\").querySelector(\".cv-discount-content\").style.cssText = `\n    font-size: 14px;\n    position: absolute;\n    text-align: center;\n    top: 6px;\n    line-height: 1.3;\n`;\n            }\n        }).catch((err) => {\n            console.error(err)\n        });\n    }\n}\n\nvar existCondition = setInterval(function () {\n    if (document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelector(\"#products-grid\")) {\n        let parent = document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelector(\"#products-grid\");\n\n        let xhr = document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelectorAll(\"#products-grid > div > div > div.info-container.fs-serp-info > a\");\n        for (let x = 0; x < xhr.length; x++) {\n            displayExpectedDate(xhr[x], x, productArray, productCards);\n        }\n\n        clearInterval(existCondition);\n        const target = document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelector(\"#products-grid\");\n        const observer = new MutationObserver(function () {\n            let xhr = document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelectorAll(\"#products-grid > div > div > div.info-container.fs-serp-info > a\");\n            for (let x = 0; x < xhr.length; x++) {\n                displayExpectedDate(xhr[x], x, productArray, productCards);\n            }\n        });\n        const config = {\n            childList: true,\n            attributes: true,\n            attributeFilter: [\"data-product-id\", \"data-product-position\", \"class\"]\n        };\n        observer.observe(target, config);\n    }\n}, 100);\n\n\n//Function to detect url change - Works asynchrounously\n;(function () {\n    let pushState = history.pushState;\n    let replaceState = history.replaceState;\n\n    history.pushState = function () {\n        pushState.apply(history, arguments);\n        window.dispatchEvent(new Event('pushstate'));\n        window.dispatchEvent(new Event('locationchange'));\n    };\n\n    history.replaceState = function () {\n        replaceState.apply(history, arguments);\n        window.dispatchEvent(new Event('replacestate'));\n        window.dispatchEvent(new Event('locationchange'));\n    };\n\n    window.addEventListener('popstate', function () {\n        window.dispatchEvent(new Event('locationchange'))\n    });\n})();\n\n\n// Usage example:\n\nwindow.addEventListener('locationchange', function () {\n    let productArray2 = [];\n    let productCards2 = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1];\n    const myTimeout = setTimeout(myObservation, 2000);\n\n    function myObservation() {\n        let xhr = document.querySelector(\"#fast-simon-serp-app\").shadowRoot.querySelectorAll(\"#products-grid > div > div > div.info-container.fs-serp-info > a\");\n        for (let x = 0; x < xhr.length; x++) {\n            displayExpectedDate(xhr[x], x, productArray2, productCards2);\n        }\n    }\n\n    function myStopFunction() {\n        clearTimeout(myTimeout);\n    }\n});"],
  "mappings": "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",
  "names": ["xhr"]
}
