ed_image":null,"available":true,"name":"Trek Checkmate SLR Frame Set - L","public_title":"L","options":["L"],"price":320000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":54945216528767,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"5330329","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Trek Checkmate SLR Frame Set - XL","public_title":"XL","options":["XL"],"price":320000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/CheckmateSLRFrameset-25-46763-A-Primary.webp?v=1736591735"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/CheckmateSLRFrameset-25-46763-A-Primary.webp?v=1736591735","options":["Size"],"media":[{"alt":null,"id":63841336459647,"position":1,"preview_image":{"aspect_ratio":1.333,"heig
ht":1440,"width":1920,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/CheckmateSLRFrameset-25-46763-A-Primary.webp?v=1736591735"},"aspect_ratio":1.333,"height":1440,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/CheckmateSLRFrameset-25-46763-A-Primary.webp?v=1736591735","width":1920}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp\u003eThe Checkmate SLR Frame Set is a carbon gravel race frame ready to toe the line and kick up dust on the long and rough road. To deliver the performance that you crave on race day, the Checkmate combines a lightweight aero design with IsoSpeed and new Gravel Race geometry that keeps you poised for the attack without eating up your energy. Top this frame up with your favourite components and bolt-on bags, and you'll be ready for anything.\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e*Please note – spec applies to all sizes unless listed separately\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003cstrong\u003eFrames
et\u003c\/strong\u003e\u003cbr\u003eFrame 800 Series OCLV Carbon, IsoSpeed, hidden mudguard mounts, integrated frame bag mounts, invisible cable routing, T47, flat-mount disc, integrated chainkeeper, removable FD hanger, UDH, 142x12 mm chamfered thru axle\u003cbr\u003eFork Checkmate SLR full carbon, tapered carbon steerer, hidden mudguard mounts, flat-mount disc, 12x100 mm thru axle\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWeight\u003c\/strong\u003e\u003cbr\u003eWeight 1146g - ML (frame-only, painted)\u003cbr\u003e415g (fork-only, painted)\u003cbr\u003eWeight limit This bike has a maximum total weight limit (combined weight of bicycle, rider and cargo) of 125 kg (275 lb).\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eDrivetrain\u003c\/strong\u003e\u003cbr\u003eMax. chainring size See service manual\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWheels\u003c\/strong\u003e\u003cbr\u003eSkewer front Bontrager Switch chamfered thru axle, removable lever\u003cbr\u003eSkewer rea
r Bontrager Switch chamfered thru axle, removable lever\u003cbr\u003eMax tyre size 45 mm without mudguards\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eComponents\u003c\/strong\u003e\u003cbr\u003eRotor size Max brake rotor sizes: 180mm front and rear\u003cbr\u003eWe reserve the right to make changes to the product information contained on this site at any time without notice, including with respect to equipment, specifications, models, colours, materials and pricing. Due to supply chain issues, compatible parts may be substituted at any time without notice.\u003c\/p\u003e\n\u003cp\u003eBike and frame weights are based on pre-production painted frames at time of publication. Weights may vary in final production.\u003c\/p\u003e"};
window._RestockRocketConfig.variantsInventoryPolicy = {54945216364927 : "deny",54945216397695 : "deny",54945216430463 : "deny",54945216463231 : "deny",54945216495999 : "deny",54945216528767 : "deny",};
window._RestockRocketConfig.variantsInventoryQuantity = {5
4945216364927 : parseInt("8"),54945216397695 : parseInt("20"),54945216430463 : parseInt("20"),54945216463231 : parseInt("20"),54945216495999 : parseInt("20"),54945216528767 : parseInt("20"),};
window._RestockRocketConfig.variantsPreorderCount = {54945216364927 : parseInt(""),54945216397695 : parseInt(""),54945216430463 : parseInt(""),54945216463231 : parseInt(""),54945216495999 : parseInt(""),54945216528767 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderCountForMarket = {54945216364927 : null,54945216397695 : null,54945216430463 : null,54945216463231 : null,54945216495999 : null,54945216528767 : null,};
window._RestockRocketConfig.variantsPreorderMaxCount = {54945216364927 : parseInt(""),54945216397695 : parseInt(""),54945216430463 : parseInt(""),54945216463231 : parseInt(""),54945216495999 : parseInt(""),54945216528767 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {54945216364927 : null,54945216397695 : null,54945216430463 : null,549452164632This site has limited support for your browser. We recommend switching to Edge, Chrome, Safari, or Firefox.31 : null,54945216495999 : null,54945216528767 : null,};
window._RestockRocketConfig.variantsShippingText = {54945216364927 : "",54945216397695 : "",54945216430463 : "",54945216463231 : "",54945216495999 : "",54945216528767 : "",};
window._RestockRocketConfig.variantsShippingTextForMarket = {54945216364927 : null,54945216397695 : null,54945216430463 : null,54945216463231 : null,54945216495999 : null,54945216528767 : null,};
window._RestockRocketConfig.selected_variant_id = 54945216364927;
window._RestockRocketConfig.selected_variant_available = window._RestockRocketConfig.product.variants.find(function(variant) { return variant.id == window._RestockRocketConfig.selected_variant_id }).available;window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/019bab4d-6c49-7d7e-b3eb-7d9317e290bf/restock-rocket-shopify-428/assets/restockrocket-product.js'
window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019bab4d-6c49-7d7e-b3eb-7d9317e290bf/
restock-rocket-shopify-428/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;
}
// 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
// Metafie
ld 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
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 (