From 6231f2d10db0a7e8edf0b517fe676b929f2e84f7 Mon Sep 17 00:00:00 2001 From: Leonardo Matos Date: Tue, 22 Oct 2024 21:20:19 -0300 Subject: [PATCH] fix(storefront): Dropping `apiContext.timestamp` to support etag caching on output HTML --- packages/storefront/src/lib/$storefront.d.ts | 4 ---- packages/storefront/src/lib/layouts/BaseHead.astro | 2 +- packages/storefront/src/lib/ssr-context.ts | 1 - 3 files changed, 1 insertion(+), 6 deletions(-) diff --git a/packages/storefront/src/lib/$storefront.d.ts b/packages/storefront/src/lib/$storefront.d.ts index 8aa8a5690..8a0c30313 100644 --- a/packages/storefront/src/lib/$storefront.d.ts +++ b/packages/storefront/src/lib/$storefront.d.ts @@ -11,19 +11,15 @@ import type { CustomSharedData } from '@@sf/custom-shared-data'; export type StorefrontApiContext = { resource: 'products', doc: Products, - timestamp: number, } | { resource: 'categories', doc: Categories, - timestamp: number, } | { resource: 'brands', doc: Brands, - timestamp: number, } | { resource: 'collections', doc: Collections, - timestamp: number, }; export type $Storefront = { diff --git a/packages/storefront/src/lib/layouts/BaseHead.astro b/packages/storefront/src/lib/layouts/BaseHead.astro index ee7563f26..4f50146b5 100644 --- a/packages/storefront/src/lib/layouts/BaseHead.astro +++ b/packages/storefront/src/lib/layouts/BaseHead.astro @@ -129,7 +129,7 @@ window._firstLoadContextId = '${apiDoc._id}';`; $storefront.apiContext = ${JSON.stringify({ resource: apiContext.resource, doc: minifyApiDoc({ ...apiDoc }), - timestamp: Date.now(), + // timestamp: Date.now(), })}; $storefront.context /* DEPRECATED */ = $storefront.apiContext; _emitApiContext('${apiDoc._id}');`; diff --git a/packages/storefront/src/lib/ssr-context.ts b/packages/storefront/src/lib/ssr-context.ts index f2ee2b60d..c519ee5fb 100644 --- a/packages/storefront/src/lib/ssr-context.ts +++ b/packages/storefront/src/lib/ssr-context.ts @@ -216,7 +216,6 @@ const loadRouteContext = async ( sessions[sid].apiContext = { resource: apiResource, doc: apiDoc, - timestamp: Date.now(), }; sessions[sid]._timer = setTimeout(() => { // @ts-expect-error: mem clearing