{"id":15327697568127,"title":"Marin Alpine Trail XR AXS","handle":"marin-alpine-trail-xr-axs","description":"\u003cp\u003eThe all-new Alpine Trail series is our boldest and most capable line of enduro bikes ever, built upon our most advanced, most adjustable frames to date.\u003c\/p\u003e\n\u003cp\u003eSeries 4 aluminum MultiTrac 2 LT frames feature mixed 29”\/27.5” wheels, 170mm front and 160mm rear travel, and the utmost in adjustability. Riders can alter the head tube angle and bottom bracket\/chainstay length, as well as run 29” rear wheels if desired. “Bear Box” downtube storage includes a zippered nylon bag to house trail essentials, and a 34.9mm seatpost increases strength and is compatible with the latest dropper posts.\u003c\/p\u003e\n\u003cp\u003e\"XR\" = \"Xtra Rad\" here at Marin, and we pulled out all the stops with the XR AXS take on the Alpine Trail. Not only did we grace the bike with Ultimate-level RockShox suspension, but took the drivetrain up a notch wi

sion\u003c\/h4\u003e\n\u003cp\u003eRockShox Super Deluxe Coil Ultimate, 205x65, 30xM8 Lower Hardware, Custom Tune, Spring Rates S\/M: 350lbs, L\/XL:450lbs\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eRim\u003c\/h4\u003e\n\u003cp\u003eMarin, Double Wall Alloy, 29mm Inner, Sleeved Joint, Disc Specific, 32H, Tubeless Compatible\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHub Rear\u003c\/h4\u003e\n\u003cp\u003eFormula, DCL-3482, 148x12, 4 Sealed Bearings, 6-Bolt Disc, XD Driver, 32H\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHub Front\u003c\/h4\u003e\n\u003cp\u003eFormula, DC-711, 110x15mm, 6-Bolt Disc, 32h\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eSpokes\u003c\/h4\u003e\n\u003cp\u003e14g Black Stainless Steel\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u00

03cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eChain\u003c\/h4\u003e\n\u003cp\u003eSRAM GX Eagle T-Type\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eCassette\u003c\/h4\u003e\n\u003cp\u003eSRAM GX 1275 T-Type 10-52T\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eBrakes Front\u003c\/h4\u003e\n\u003cp\u003eSRAM Code Bronze 4-Piston Hydraulic Disc, HSC 200mm Rotor\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eBrakes Rear\u003c\/h4\u003e\n\u003cp\u003eSRAM Code Bronze 4-Piston Hydraulic, HSC 200mm Rotor\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eBrake Levers\u003c\/h4\u003e\n\u003cp\u003eSRAM Code Bronze Stealth Hydraulic\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHandlebar\u003c\/h4\u003e\n\u003cp\u003eMarin Trail, 35mm Clamp, 7000 Alloy Bar, 80
e\n\u003ch4\u003ePedals\u003c\/h4\u003e\n\u003cp\u003e-\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eExtras\u003c\/h4\u003e\n\u003cp\u003eBolt-On 12mm Thru-Axle, 174mm Length, 1.0 Thread Pitch, 16.5mm, Tapered Head\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eExtras\u003c\/h4\u003e\n\u003cp\u003eDowntube Storage Bag\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e","published_at":"2025-10-09T11:11:05+01:00","created_at":"2025-10-09T11:11:06+01:00","vendor":"Marin","type":"Bicycles","tags":["Alpine Trail XR AXS"],"price":519900,"price_min":519900,"price_max":519900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":56189671735679,"title":"Small","option1":"Small","option2":null,"option3":null,"sku":"737521001","requires_shipping":true,"taxable":true,"featured_image":null,"
  • <life-systems-pocket-first-aid-kit-hire" title="Life Systems Pocket First Aid Kit - HIRE" aria-label="Life Systems Pocket First Aid Kit - HIRE" style="background-image: url(//projektride.co.uk/cdn/shop/files/Screenshot2022-02-24at21.18.22_5c0e6e2d-1913-4fd1-a90d-b486895960b6_600x.png?v=1691610357)"> >
  • s=\"data item title\" data-role=\"collapsible\" id=\"tab-label-product.info.details.amblog.related_posts\" role=\"tab\" data-collapsible=\"true\" aria-controls=\"product.info.details.amblog.related_posts\" aria-selected=\"false\" aria-expanded=\"false\" tabindex=\"0\"\u003e\u003ca class=\"data switch\" data-toggle=\"trigger\" href=\"https:\/\/www.silverfish-uk.com\/yeti-cycles-sb140-c-series-c2-lunch-ride-29-quot-bike.html#product.info.details.amblog.related_posts\" id=\"tab-label-product.info.details.amblog.related_posts-title\" tabindex=\"-1\"\u003eRelated Posts\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e"}; window._RestockRocketConfig.variantsInventoryPolicy = {55196401336703 : "deny",55196401369471 : "deny",55196401402239 : "deny",55196401435007 : "deny",55196401467775 : "deny",55196401500543 : "deny",55196401533311 : "deny",55196401566079 : "deny",55196401598847 : "deny",55196401631615 : "deny",55196401664383 : "deny",55196401697151 : "deny",55196401729919 : "deny",551964017
    ),55196401467775 : parseInt(""),55196401500543 : parseInt(""),55196401533311 : parseInt(""),55196401566079 : parseInt(""),55196401598847 : parseInt(""),55196401631615 : parseInt(""),55196401664383 : parseInt(""),55196401697151 : parseInt(""),55196401729919 : parseInt(""),55196401762687 : parseInt(""),55196401795455 : parseInt(""),55196401828223 : parseInt(""),55196401860991 : parseInt(""),55196401893759 : parseInt(""),55196401926527 : parseInt(""),55196401959295 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {55196401336703 : null,55196401369471 : null,55196401402239 : null,55196401435007 : null,55196401467775 : null,55196401500543 : null,55196401533311 : null,55196401566079 : null,55196401598847 : null,55196401631615 : null,55196401664383 : null,55196401697151 : null,55196401729919 : null,55196401762687 : null,55196401795455 : null,55196401828223 : null,55196401860991 : null,55196401893759 : null,55196401926527 : null,55196401959295 : null,}; window._RestockRocketConfi
  • : null,55196401828223 : null,55196401860991 : null,55196401893759 : null,55196401926527 : null,55196401959295 : null,}; window._RestockRocketConfig.variantsShippingText = {55196401336703 : "",55196401369471 : "",55196401402239 : "",55196401435007 : "",55196401467775 : "",55196401500543 : "",55196401533311 : "",55196401566079 : "",55196401598847 : "",55196401631615 : "",55196401664383 : "",55196401697151 : "",55196401729919 : "",55196401762687 : "",55196401795455 : "",55196401828223 : "",55196401860991 : "",55196401893759 : "",55196401926527 : "",55196401959295 : "",}; window._RestockRocketConfig.variantsShippingTextForMarket = {55196401336703 : null,55196401369471 : null,55196401402239 : null,55196401435007 : null,55196401467775 : null,55196401500543 : null,55196401533311 : null,55196401566079 : null,55196401598847 : null,55196401631615 : null,55196401664383 : null,55196401697151 : null,55196401729919 : null,55196401762687 : null,55196401795455 : null,55196401828223 : null,55196401860991 : null,55196seconds function checkSettingsExpiry(settings) { try { if (!settings || !settings.updated_at) { console.debug('STOQ - Invalid settings data structure'); return null; } if (!settings.cache) { console.debug('STOQ - settings caching disabled'); return null; } // Check if translations are enabled but missing from cache // This handles the backfill period where DB has translations but metafield doesn't if (settings.multi_language_enabled) { if (!settings.translations) { // Translations enabled but no translation data in metafield // Metafield hasn't been backfilled yet - force refresh console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh'); return null; } // Translations object exists in metafield - cache is valid // If current locale isn't translated, applyTranslations will gracefully use default locale from base fields Parts & Components<
  • !settings.multi_language_enabled) { return settings; } if (!settings.translations) { console.debug('STOQ - No translations found, skipping translation'); return settings; } const normalizedLocale = window._RestockRocketConfig.normalizedLocale; const translations = settings.translations; if (!normalizedLocale) { // No matching locale has translations; drop payload to save memory console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); delete settings.translations; return settings; } console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields).forEach(function(key) { const value = translatedFields[keySee Moree?.role === 'main') { headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name; headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version; headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id; } fetch( `${window._RestockRocketConfig.host}/api/v1/setting.json?translation_loc n = window._RestockRocketConfig.integrations.find(function(integration) { return integration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'index' && (settings.show_button_on_index || settings.preorder_index_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'search' && (settings.show_button_on_search || settings.preorder_search_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_pag
  • .countdown-box{min-width:40px;padding:10px 6px;text-align:center;font-size:20px;line-height:1}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:14px;font-weight:500;text-align:center;text-transform:capitalize;opacity:.7}@media (max-width:768px){.restock-rocket-preorder-countdown-timer{padding:14px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:55px;padding:14px 10px;font-size:26px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:11px}}@media (max-width:480px){.restock-rocket-preorder-countdown-timer{padding:12px}.restock-rocket-preorder-countdown-timer .countdown-units{width:100%;gap:10px}.restock-rocket-preorder-countdown-timer .countdown-box{width:100%;min-width:50px;padding:12px 8px;font-size:24px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:10px}}.restock-rocket-toast{position:fixed;cursor:pointer;background:#fff;border:0;min-width:40px;min-height:40px;box-shadow:0 0 15px rgba(0,0,0,.1)!important;z-index:622004;padding:20px 30p
    Bottles and Cageswebkit-transform:translateX(0)}}@keyframes slide-out-left{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}@-webkit-keyframes slide-out-left{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(-100%)}}@keyframes slide-out-right{0%{transform:translateX(0)}100%{transform:translateX(100%)}}@-webkit-keyframes slide-out-right{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(100%)}}
    Hope Enve
    Mudguards
    Bags and Transportation

    Tubeless Handlebars
    Phone Holders
    Saddles
    Header Image

    metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('STOQ - using cached settings'); initializeScripts(validCachedSettings); } else { console.debug('STOQ - fetching fresh settings'); const headers = { 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.Shopify.shop, 'ngrok-skip-browser-warning': 'skip' }; if (window.Shopify?.theme?.role === 'main') { headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name; headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version; headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id; } fetch( `${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`, { headers } ) .then(fu
    ntegration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'index' && (settings.show_button_on_index || settings.preorder_index_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'search' && (settings.show_button_on_search || settings.preorder_search_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_page_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollespan class="visually-hidden">Hire Lazer Compact Helmet .restock-rocket-button,.restock-rocket-button-float{opacity:1!important;border:none!important;cursor:pointer!important;background-image:none!important;box-shadow:none!important;padding:15px 20px;font-size:16px;width:100%;font-family:inherit}@font-face{font-family:OpenSans;font-weight:200;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Light.woff)}@font-face{font-family:OpenSans;font-weight:300;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Regular.woff)}@font-face{font-family:OpenSans;font-weight:600;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-SemiBold.woff)}.restock-rocket-button-container{position:relative;z-index:1;width:100%}.restock-rocket-button-container-float-right{position:fixed;z-index:123123;top:calc(50% - 200px);right:0;transform:rotate(270deg);transform-origin:bottom right}.restock-rocket-button-container-float-left{position:fixed;z-index:123123;top:calc(50% - 200px);left:40px;transform:rotate(90deg);transform < Front Suspensiondiv class="product__tag{{ it.product.badgeClasses }}">Black span>{{ it.product.badgeText | safe }} > Hire Ortlieb 40L Pannier Bags
    > Tyres>
    >
    p class="result__title">{{ it.item.text }}
    > Tubeless£0.00 > { "@context": "http://schema.org", "@type": "Organization", "name": "ProjektRide","sameAs": [ null, null, null, null, null, null, null ], "url": "https:\/\/projektride.co.uk" } Saddles console.log("pr-product-page"); <
    < Pedals

    Product Details

    >
    £0.00
    <

    29"

    FAQ© 2025, WHEEL SIZE

    Questions and answersProjektRide

    .
     View all
    Website by
    • Juan Borges Designs Loading more 06101474,43936706134242,43936706167010,43936706199778,43936706232546,43936706265314,43938308587746,43938308653282,43938308718818,43938308751586,43938308784354,43938308817122,43938322612450,43938322645218,43938322677986,43981336051938,43981336084706,43981336117474,43981336150242,43981345587426,43981345620194,43981345652962,43981345685730,43981357580514,43981357613282,43981362462946,43981362495714,43981362528482,43981369016546,43981369049314,43981374914786,43981374947554,43981374980322,43981392904418,43981695844578,43981695877346,43981695910114,43981695942882,43981986070754,43981987905762,43981987938530,44052906967266,44052907327714,44052907360482,44052907393250,44052907426018,44052907458786,44052907491554,44052909097186,44052909129954,44140302827746,44140302893282,44140317016290,44155590508770,44155590541538,44155594211554,44155594244322,44155594277090,44155594309858,44155594342626,44155594375394,44155594440930,44155594473698,44155594506466,44195991847138,44195991945442,44329993437410,44329993470178,4432999350 EFF. SEAT ANGLE
    • ig.cachedVariantPreorderLimits = {"variant_preorder_limits":{},"updated_at":"2025-12-14T12:19:01Z","shopify_market_id":382140642,"market_locations_enabled":false}; window._RestockRocketConfig.cachedVariantPreorderLimitsMarketKey = "variant_preorder_limits_for_market_382140642";window._RestockRocketConfig.cachedVariantShippingTexts = {"variant_shipping_texts":{},"updated_at":"2025-12-14T12:19:01Z","shopify_market_id":382140642,"market_locations_enabled":false}; window._RestockRocketConfig.cachedVariantShippingTextsMarketKey = "variant_shipping_texts_for_market_382140642";window._RestockRocketConfig.sellingPlans = [{"shopify_selling_plan_group_id":98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569933140351,55569712382335,55569712415103,55569712480639,55569933173119,55570017616255,55569933074815,55570017550719,55569712447871,55569933107583,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_descriptionli class="result"> "countdown_timer_ends_text":null,"updated_at":"2025-08-19T10:05:43.042Z","allow_mixed_cart":true}];window._RestockRocketConfig.integrations = [{"id":"15c94526-b6b8-4de1-9bc1-23b1ca52ddb0","shop_id":38436,"enabled":true,"page_types":["product","collection","index","search","page","cart","list-collections","article","blog"],"configuration":{"toastDuration":10000,"toastPosition":"bottom-right","enableXHRHijack":true,"enableFetchHijack":true,"quantityLimitDisabled":false},"type":"hijack","css_config":null,"js_config":null,"created_at":"2025-07-26T09:16:04.076Z","updated_at":"2025-07-26T09:16:04.076Z"}];window._RestockRocketConfig.obfuscateInventoryQuantity = false;window._RestockRocketConfig.product = {"id":15327697633663,"title":"Marin Alpine Trail XR","handle":"marin-alpine-trail-xr","description":"\u003cp\u003eBIG ALL-MOUNTAIN DAYS WHERE TRAVEL AND GEOMETRY MATTER MOST\u003c\/p\u003e\n\u003cp\u003eBUILT FOR ABUSE AND ROWDY RIDING\u003c\/p\u003e\n\u003cp\u003eENDURO-STYLE RIDING AND RACING\u003c\/p\u003e\n\u003a href="{{ it.product.url }}" class="result__image-link" aria-label='{{ it.product.title }}'> Compatible\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHandlebar\u003c\/h4\u003e\n\u003cp\u003eMarin Trail, 35mm Clamp, 7000 Alloy Bar, 800mm Length, 20mm Rise, 5 Degree Up, 8 Degree Back\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eStem\u003c\/h4\u003e\n\u003cp\u003eMarin CNC, 35mm Length, 35mm Bar Bore\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eGrips\u003c\/h4\u003e\n\u003cp\u003eMarin Grizzy Lock On\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHeadset\u003c\/h4\u003e\n\u003cp\u003eFSA No 57, Sealed Cartridge Bearings, 1 1\/8\" x 1 1\/2”\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eSeatpost\u003c\/h4\u003e\n\u003cp\u003eX-Fusion Manic, 1x Composite Remote, Size S 125mm Travel, Size M and L 150mm Travel, Size XL 175mm Travel, 30.9mm\> Fox Transfer dropper post
    ),56189672292735 : parseInt("0"),56189672325503 : parseInt("0"),56189672358271 : parseInt("0"),56189672391039 : parseInt("0"),56189672423807 : parseInt("0"),56189672456575 : parseInt("2"),56189672489343 : parseInt("5"),}; window._RestockRocketConfig.variantsPreorderCount = {56189672259967 : parseInt(""),56189672292735 : parseInt(""),56189672325503 : parseInt(""),56189672358271 : parseInt(""),56189672391039 : parseInt(""),56189672423807 : parseInt(""),56189672456575 : parseInt(""),56189672489343 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {56189672259967 : null,56189672292735 : null,56189672325503 : null,56189672358271 : null,56189672391039 : null,56189672423807 : null,56189672456575 : null,56189672489343 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {56189672259967 : parseInt(""),56189672292735 : parseInt(""),56189672325503 : parseInt(""),56189672358271 : parseInt(""),56189672391039 : parseInt(""),56189672423807 : parseInt(""),56189672456575 : p class="result__title">
    id }).available;window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/019b1405-52e0-7e89-a6c1-1ac7fea6dd8f/restock-rocket-shopify-410/assets/restockrocket-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019b1405-52e0-7e89-a6c1-1ac7fea6dd8f/restock-rocket-shopify-410/assets/restockrocket-collection.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds function checkSettingsExpiry(settings) { try { if (!settings || !settings.updated_at) { console.debug('STOQ - Invalid settings data structure'); return null; } if (!settings.cache) { console.debug('STOQ - settings caching disabled'); return null; } // a href="{{ it.product.url }}">{{ it.product.title }}DT Swiss EX Wheels
    ntinue using cache even for untranslated locales } const updatedAt = new Date(settings.updated_at); if (isNaN(updatedAt.getTime())) { console.debug('STOQ - Invalid updated_at date format in settings'); return null; } const age = Date.now() - updatedAt.getTime(); if (age >
    SETTINGS_CACHE_DURATION) { console.debug('STOQ - settings changed recently, skipping cache'); return null; } return settings; } catch (error) { console.debug('STOQ - Error checking settings cache:', error); return null; } } function createRestockRocketContainer() { const restockRocketContainer = document.createElement('div'); restockRocketContainer.id = 'restock-rocket'; document.body.appendChild(restockRocketContainer); } function createRestockRocketScript(scriptUrl) { const restockRocketScriptElement = document.createElement('script'); restockRocketScriptElement.setAttribute('defer', 'defer'); restockRock> 4 piston brakes
    <
    XX-LARGE<