195"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/products\/20902-pm.png?v=1679144195","options":["Color"],"media":[{"alt":null,"id":31694786724066,"position":1,"preview_image":{"aspect_ratio":1.0,"height":776,"width":776,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/20902-pm.png?v=1679144195"},"aspect_ratio":1.0,"height":776,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/20902-pm.png?v=1679144195","width":776},{"alt":null,"id":31694786756834,"position":2,"preview_image":{"aspect_ratio":1.0,"height":776,"width":776,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/20906-pm.png?v=1679144196"},"aspect_ratio":1.0,"height":776,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/20906-pm.png?v=1679144196","width":776},{"alt":null,"id":31694786789602,"position":3,"preview_image":{"aspect_ratio":1.0,"height":776,"width":776,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/20912-pm.png?v=1679144195"},"aspect_ratio":1.0,"height":776,"media_type":"image","src3c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"col\"\u003e\n\u003cdiv class=\"features\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e"};
window._RestockRocketConfig.variantsInventoryPolicy = {43936177291490 : "continue",43936177324258 : "continue",43936177357026 : "continue",43936177389794 : "continue",};
window._RestockRocketConfig.variantsInventoryQuantity = {43936177291490 : parseInt("4"),43936177324258 : parseInt("4"),43936177357026 : parseInt("4"),43936177389794 : parseInt("4"),};
window._RestockRocketConfig.variantsPreorderCount = {43936177291490 : parseInt(""),43936177324258 : parseInt(""),43936177357026 : parseInt(""),43936177389794 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderCountForMarket = {43936177291490 : null,43936177324258 : null,43936177357026 : null,43936177389794 : null,};
window._RestockRocketConfig.variantsPreorderMaxCount = {43936177291490 : parseInt(""),43936177324258 : parseInt(""),43936177357026 : parseInt(""),com/extensions/019c4de0-280f-760f-b566-2e2f8e837eb8/restock-rocket-shopify-454/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
const LIQUID_CACHE_MAX_AGE = 2 * 60 * 60; // 2 hours in seconds
// Calculate Liquid cache freshness once at initialization
const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt;
// Validate timestamp and calculate cache age
if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) {
console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh');
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else {
const now = Math.floor(Date.now() / 1000); // Current time in seconds
const liq<<
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
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