RIDE CONFIDENT

This site has limited support for your browser. We recommend switching to Edge, Chrome, Safari, or Firefox. Quantity: Gloves

1
    Shop All Second-Hand
      • Services
    • See More
      • Custom Builds
      • Cycle To Work Schemes
      • .site-footer { --bg: #1f2324; --text: #ffffff; --text-alpha-15: rgba(255, 255, 255, 0.15); --text-alpha-60: rgba(255, 255, 255, 0.6); --text-alpha-85: rgba(255, 255, 255, 0.85); } .footer-content__logo__image { width: 170px; }
      • Hope Workshop
      EnveSee More
    • Grips & Bar-Tape Other
    • Brands
      • { "@context": "http://schema.org/", "@type": "Product", "name": "Hope Conventional Headset", "url": "https:\/\/projektride.co.uk\/products\/hope-conventional-headset","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/files\/134_3b966e41-1173-40b9-a4c7-396b0c16a428_1514x.jpg?v=1738421454" ],"description": "\n\n\n\n\nReliable and durable. Our conventional headset is designed to fit the standard 1 1\/8\" fork steerer. The headset uses custom made, replaceable stainless steel bearings to resist corrosion.\nKey Features\n\/\/ Replaceable stainless steel bearings (resist corrosion)\/\/ Split crown race for easy installation and removal\/\/ Comes complete with our Head Doctor top cap\/\/ Multiple seals to keep out the elements\/\/ Conventional headset is designed to fit standard frames and 1 1\/8\" fork steerers\/\/ Headset uses custom made, replaceable stainless steel bearings to resist corrosion\/\/The cups, taper ring and crown race (which is split for easy installation and removal) are all machined from 2014 T6 aluminium\/\/ Sealing is achieved through an adjustable taper ring cover and integrated rubber seal\/\/Available in: black, silver, red, blue, purple and orange\/\/Weight: 120g,[\n\n\n\n\n","brand": { "@type": "Thing", "name": "Hope" },"gtin8": "","offers": [{ "@type" : "Offer","availability" : "http://schema.org/InStock", "price" : 110.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/hope-conventional-headset?variant=55060649181567" }, { "@type" : "Offer","availability" : "http://schema.org/InStock", "price" : 110.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/hope-conventional-headset?variant=55060649214335" }, { "@type" : "Offer","availability" : "hRear Suspension
      • Finishing Kit
    • Tyres
      • <
      <
  • Bike Packing
  • I'm looking to find out more information about a product, where can I find this?

    Tubeless
    Tools & Maintenance
    Header Image

    #ProductTemplate--template--15326745395426__main { background: #ffffff; } .shop-pay-terms { --payment-terms-background-color: #ffffff }
    New Bikes
    GreyhoundCustom BuildsWorkshop Prices
    Yeti
    Frog
    Turquoise / Extra Large - £5,999.00 GBPBrakes <
    <
    Brakes
    Other
    See More :false,"selling_plan_allocations":[]},{"id":45817776242914,"title":"Extra Large","option1":"Extra Large","option2":null,"option3":null,"sku":"GN13010XL","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Genesis Tour De Fer 20 2024 - Extra Large","public_title":"Extra Large","options":["Extra Large"],"price":149900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_01.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_02.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_03.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_04.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_05.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_06.jpg?v=1723720467","\/\/projektride.co.uk\/cdn\/shop\/files\/gn1301
    ,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_01.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631652578,"position":2,"preview_image":{"aspect_ratio":1.0,"height":1800,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_02.jpg?v=1723720467"},"aspect_ratio":1.0,"height":1800,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_02.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631685346,"position":3,"preview_image":{"aspect_ratio":1.0,"height":1800,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_03.jpg?v=1723720467"},"aspect_ratio":1.0,"height":1800,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_03.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631718114,"position":4,"preview_image":{"aspect_ratio":1.503,"height":1198,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_04.jpg?v=1723720467"},"aspect_ratio":1.503,"height":1198,"medi Insure Your Bike
    <"height":1198,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_07.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631849186,"position":8,"preview_image":{"aspect_ratio":1.0,"height":1800,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_08.jpg?v=1723720467"},"aspect_ratio":1.0,"height":1800,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_08.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631881954,"position":9,"preview_image":{"aspect_ratio":1.503,"height":1198,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_09.jpg?v=1723720467"},"aspect_ratio":1.503,"height":1198,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_09.jpg?v=1723720467","width":1800},{"alt":null,"id":34464631914722,"position":10,"preview_image":{"aspect_ratio":1.0,"height":1800,"width":1800,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/gn13010_detail_10.jpg?v=1723720467"},"asGears & Drivetrain .co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_20\/800x1000-tdf20-keyfeature-c.jpg\" media=\"(max-width: 768px)\"\u003e\u003cimg data-element=\"lazy_image\" src=\"https:\/\/www.freewheel.co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_20\/800x1000-tdf20-keyfeature-c.jpg\" title=\"\" alt=\"\"\u003e\u003c\/picture\u003e\u003c\/figure\u003e\n\u003ch3 data-pb-style=\"AW7XFP6\" data-element=\"main\" data-appearance=\"default\" data-content-type=\"heading\" class=\"text-xl font-medium\"\u003eAccessorised\u003c\/h3\u003e\n\u003cdiv data-pb-style=\"SFYMXJ3\" data-element=\"main\" data-appearance=\"default\" data-content-type=\"text\" class=\"h-40\"\u003e\n\u003cp id=\"NM8TUA9\"\u003eFitted mudguards, front and rear luggage racks, dynamo cable routing and comfortable Vittoria Randonneur 40mm tyres complete the tour-ready specification. The Tour De Fer even comes with spare spokes.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli aria-hidden=\"true\" class=\"carou
    ce=\"default\" data-content-type=\"text\" class=\"h-40\"\u003e\n\u003cp id=\"NM8TUA9\"\u003eOur Mjolnir Chromoly tubeset is crafted to deliver a sublime ride feel with excellent comfort whilst also being immensely durable.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli aria-hidden=\"false\" class=\"carousel__slide carousel__slide--visible carousel__slide--active\"\u003e\n\u003cdiv data-content-type=\"slide\" class=\"carousel__item pagebuilder-column\"\u003e\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/div\u003e\n\u003cdiv aria-atomic=\"true\" aria-live=\"polite\" class=\"carousel__liveregion carousel__sr-only\"\u003e\u003cpicture\u003e\u003csource data-element=\"lazy_mobile_image\" srcset=\"https:\/\/www.freewheel.co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_20\/800x1000-tdf20-keyfeature-a.jpg\" media=\"(max-width: 768px)\"\u003e\u003c\/picture\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003eE-bike Batteries and chargers Parts & Components
    src=\"https:\/\/www.freewheel.co.uk\/media\/wysiwyg\/TDF20_4STAR_4mb_5.jpg\" title=\"\" alt=\"\"\u003e\u003c\/picture\u003e\u003c\/figure\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!----\u003e"}; window._RestockRocketConfig.variantsInventoryPolicy = {45817776111842 : "deny",45817776144610 : "deny",45817776177378 : "deny",45817776210146 : "deny",45817776242914 : "deny",}; window._RestockRocketConfig.variantsInventoryQuantity = {45817776111842 : parseInt("1"),45817776144610 : parseInt("1"),45817776177378 : parseInt("1"),45817776210146 : parseInt("1"),45817776242914 : parseInt("1"),}; window._RestockRocketConfig.variantsPreorderCount = {45817776111842 : parseInt(""),45817776144610 : parseInt(""),45817776177378 : parseInt(""),45817776210146 : parseInt(""),45817776242914 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {45817776111842 : null,45817776144610 : null,45817776177378 : null,45817776210146 : nu See Morent_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; } continue 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'); restockRocketScriptElement.src = scriptUrl; document.body.appendChild(restockRocketScriptElement); } createRestockRocketContainer() console.debug('STOQ - extension activated') function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings || Wheels
    malized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields).forEach(function(key) { const value = translatedFields[key]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.debug('STOQ - No translated fields found for locale:', normalizedLocale); } delete settings.translations; return settings; } catch (e) { console.debug('STOQ - error applying translations:', e); return settings; } } // First try to get settings from metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('
    (error) { // If request failed and we have cached settings (even if expired), use them as fallback if (cachedSettings) { console.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cachedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); if(settings.enable_app) { const hijackIntegration = 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 Complete WheelsBrandsRestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enabled for ${window._RestockRocketConfig.pageType}`); } // Check and update cart selling plans after scripts are loaded if (settings.preorder_enabled) { updateCartSellingPlans(); } // Dispatch custom event when app is loaded const appLoadedEvent = new CustomEvent('stoq:loaded', { detail: { pageType: window._RestockRocketConfig.pageType, enabled: settings.enable_app, settings: settings } }); console.debug('STOQ - dispatching app loaded event'); window.dispatchEvent(appLoadedEvent); } } function updateCartSellingPlans() { // Wait for the API to be available with retries const maxRetries = 10; const retryDelay = 500; function attemptCartCheck(attempt = 1) { if (window._RestockRocket && window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSel See More<
    LocksHandlebars MudguardsStems
    Product Details
    asr
    Open navigation menu
    Close search bar
    View all
    Loading more.
    .
    .
    Spend
    £50 to qualify for free shipping Congratulations! Your order qualifies for free shipping
    Open navigation menu
    Open search bar
    01313745324 Handlebars Kids Bikes
    < ) or email (Bike Packing img src="//projektride.co.uk/cdn/shop/files/my23_dew_e_1066x_f2f0a43b-77bd-4d35-82c5-b920356f72de_98x.jpg?v=1720109291" alt="" class="product-single__thumbnail-img"> Brooks Premium Leather Saddle Care Kit Sell Inquiry Form[email protected] ) where on of the team will be more than happy to help. Stems6'1" - 6'7"Frames £44.99 ProjektRide Bike Shop EdinburghBags and Transportation
    Orange
    Grips & Bar-Tape C / Series carbon fibre frame, threaded bottom bracket, configurable cable ports, 148mm x 12mm BOOST dropouts, integrated derailleur hanger and axle.
    GlovesTYRE (F)UTO (ex Eovolt)Servicing SKU: KN23B-DWE-MD-BL
    Please write a minimum of 10 words. Workshop Prices MAXXIS REKON 2.4 EXO Cycle to Tyres // Create "window.Shoppad.apps.infiniteoptions" object if it doesn't already exist 'Shoppad.apps.infiniteoptions'.split('.').reduce(function (o, x) { if (!o[x]) { o[x] = {}; } return o[x]; }, window); // Note we are using the theme app extension window.Shoppad.apps.infiniteoptions.themeAppExtensionActive = true;
    Tubes
    Increase quantity
    label for="quantity--template--24610452406655__main">QuantityAdd to cart
    Notify me when this product is available:
    Submit =\"column\" class=\"pagebuilder-column\"\u003e\n\u003ch2 data-element=\"main\" data-appearance=\"default\" data-content-type=\"heading\"\u003eFlat Simplicity\u003c\/h2\u003e\n\u003cdiv data-element=\"main\" data-appearance=\"default\" data-content-type=\"text\"\u003e\n\u003cp\u003e\u003cspan\u003eThe Tour De Fer 30 remains a comfortable long-range stable mate with its flat handlebar, dynamo lights and Reynolds 725 tubeset.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cspan\u003eReady to ride around the globe straight from the box with subtle impovements including a new straight bladed fork, fully housed brake and gear cables as well as a new Shimano CUES LINKGLIDE drivetrain.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003csection aria-label=\"Gallery\" dir=\"ltr\" class=\"carousel is-hover\" tabindex=\"0\"\u003e\n\u003cdiv class=\"carousel__viewport\"\u003e\n\u003col class=\"carousel__t<
    -element=\"main\" data-appearance=\"default\" data-content-type=\"text\" class=\"h-40\"\u003e\n\u003cp id=\"NM8TUA9\"\u003eGone are the triple chainsets and massive front derailleurs of yesteryear, the Tour De Fer 30 is equipped with an incredibly durable LINKGLIDE drivetrain. An 11-39T cassette is paired with our own 46-30T chain rings to provide wide ratios in a compact package.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli aria-hidden=\"true\" class=\"carousel__slide carousel__slide--clone\"\u003e\n\u003cdiv data-content-type=\"slide\" class=\"carousel__item pagebuilder-column\"\u003e\n\u003cfigure data-pb-style=\"TUX7JO8\" data-element=\"main\" data-appearance=\"full-width\" data-content-type=\"image\" class=\"pagebuilder-image\"\u003e\u003cpicture\u003e\u003csource data-element=\"lazy_mobile_image\" srcset=\"https:\/\/www.freewheel.co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_30\/800x1000-tdf30-keyfeature-b.jpg\" media=\"(max-width: 768px)\"\u003e\u003cimg ement=\"main\" data-appearance=\"full-width\" data-content-type=\"image\" class=\"pagebuilder-image\"\u003e\u003cpicture\u003e\u003csource data-element=\"lazy_mobile_image\" srcset=\"https:\/\/www.freewheel.co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_30\/800x1000-tdf30-keyfeature-c.jpg\" media=\"(max-width: 768px)\"\u003e\u003cimg data-element=\"lazy_image\" src=\"https:\/\/www.freewheel.co.uk\/media\/headless_websites\/genesis\/tour_de_fer\/tdf_30\/800x1000-tdf30-keyfeature-c.jpg\" title=\"\" alt=\"\"\u003e\u003c\/picture\u003e\u003c\/figure\u003e\n\u003ch3 data-pb-style=\"GQ4TGCS\" data-element=\"main\" data-appearance=\"default\" data-content-type=\"heading\" class=\"text-xl font-medium\"\u003eLowrider\u003c\/h3\u003e\n\u003cdiv data-pb-style=\"U45W4JQ\" data-element=\"main\" data-appearance=\"default\" data-content-type=\"text\" class=\"h-40\"\u003e\n\u003cp id=\"NM8TUA9\"\u003eA traditional AtranVelo Explorer front pannier rack keeps luggage as low as possible to maintain the Tour De Fer's<
    SRAM GX EAGLE ll; } // Translations object exists in metafield - cache is valid // If current locale isn't translated, applyTranslations will gracefully use default locale from base fields if (window._RestockRocketConfig.normalizedLocale && !Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) { console.debug('STOQ - locale not explicitly translated, will use default language from cache'); } // Don't return null - continue 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'); restockRocketScriptElement.src = scriptUrl; document.body.appendChild(restockRocketScriptElement); } createRestockRocketContainer() console.debug('STOQ - extension activated') function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings ||
    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[key]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.deb
    .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(function(response) { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(function(settings) { initializeScripts(settings); }) .catch(function(error) { // If request failed and we have cached settings (even if expired), use them as fallback if (cachedSettings) { console.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cachedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); w
    CASSETTE createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_page_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'product') { createRestockRocketScript(window._RestockRocketConfig.scriptUrlProduct); } else if(hijackIntegration) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enabled for ${window._RestockRocketConfig.pageType}`); } // Check and update cart selling plans after scripts are loaded if (settings.preorder_enabled) { updateCartSellingPlans(); } // Dispatch custom event when app is loaded const appLoadedEvent = new CustomEvent('stoq:loaded', { detail: { pageType: window._RestockRocketConfig.page
    Product Details<
    l,"inventory_management":null,"barcode":"","featured_media":{"alt":null,"id":64079131410815,"position":6,"preview_image":{"aspect_ratio":1.355,"height":1780,"width":2412,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.41.07.png?v=1738410077"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":55060087669119,"title":"Red \/ 31.8mm \/ 50mm","option1":"Red","option2":"31.8mm","option3":"50mm","sku":"","requires_shipping":true,"taxable":true,"featured_image":{"id":73216982122879,"product_id":14928105668991,"position":6,"created_at":"2025-02-01T11:41:12+00:00","updated_at":"2025-02-01T11:41:17+00:00","alt":null,"width":2412,"height":1780,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.41.07.png?v=1738410077","variant_ids":[55060087636351,55060087669119,55060087701887,55060087734655]},"available":true,"name":"Hope Direct mount Stem - Red \/ 31.8mm \/ 50mm","public_title":"Red \/ 31.8mm \/ 50mm","options":["Red","31.8mm","50mm"],"price":12500,"weight
    mm"],"price":12500,"weight":0,"compare_at_price":null,"inventory_management":null,"barcode":"","featured_media":{"alt":null,"id":64079131410815,"position":6,"preview_image":{"aspect_ratio":1.355,"height":1780,"width":2412,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.41.07.png?v=1738410077"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":55060087734655,"title":"Red \/ 35mm \/ 50mm","option1":"Red","option2":"35mm","option3":"50mm","sku":"","requires_shipping":true,"taxable":true,"featured_image":{"id":73216982122879,"product_id":14928105668991,"position":6,"created_at":"2025-02-01T11:41:12+00:00","updated_at":"2025-02-01T11:41:17+00:00","alt":null,"width":2412,"height":1780,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2025-02-01at11.41.07.png?v=1738410077","variant_ids":[55060087636351,55060087669119,55060087701887,55060087734655]},"available":true,"name":"Hope Direct mount Stem - Red \/ 35mm \/ 50mm","public_title":"Red \/ 35mm \/ 50mm","options":[
    75.5