From bc66592e99144fbd62ad8a60f668454a8e047fc3 Mon Sep 17 00:00:00 2001 From: James Date: Wed, 19 Feb 2025 22:33:21 +0000 Subject: [PATCH 1/4] return meta files from createAssets() --- packages/open-next/src/build/createAssets.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/open-next/src/build/createAssets.ts b/packages/open-next/src/build/createAssets.ts index 892d8bf3a..58fd53fb6 100644 --- a/packages/open-next/src/build/createAssets.ts +++ b/packages/open-next/src/build/createAssets.ts @@ -244,5 +244,5 @@ export function createCacheAssets(options: buildHelper.BuildOptions) { ({ relativePath }) => !relativePath.endsWith(".cache"), ); - return { useTagCache }; + return { useTagCache, metaFiles }; } From 83cc8049c44b7d23ed8ef1e34f94d1594a57886d Mon Sep 17 00:00:00 2001 From: James Date: Wed, 19 Feb 2025 22:47:24 +0000 Subject: [PATCH 2/4] add back typesVersions --- packages/open-next/package.json | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/open-next/package.json b/packages/open-next/package.json index 1f692419b..a1b1d1db0 100644 --- a/packages/open-next/package.json +++ b/packages/open-next/package.json @@ -22,6 +22,13 @@ "types": "./dist/*.d.ts" } }, + "typesVersions": { + "*": { + "*": [ + "dist/*" + ] + } + }, "keywords": [], "author": "", "files": [ From 634b229d4c1a7be297be8b4b1af4a4421a309fe4 Mon Sep 17 00:00:00 2001 From: James Date: Wed, 19 Feb 2025 23:07:20 +0000 Subject: [PATCH 3/4] expose meta file type --- packages/open-next/src/build/createAssets.ts | 7 ++----- packages/open-next/src/types/open-next.ts | 6 ++++++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/open-next/src/build/createAssets.ts b/packages/open-next/src/build/createAssets.ts index 58fd53fb6..f4e12f9dc 100644 --- a/packages/open-next/src/build/createAssets.ts +++ b/packages/open-next/src/build/createAssets.ts @@ -2,6 +2,7 @@ import fs from "node:fs"; import path from "node:path"; import logger from "../logger.js"; +import type { TagCacheMetaFile } from "../types/open-next.js"; import { isBinaryContentType } from "../utils/binary.js"; import * as buildHelper from "./helper.js"; @@ -157,11 +158,7 @@ export function createCacheAssets(options: buildHelper.BuildOptions) { }); // We need to traverse the cache to find every .meta file - const metaFiles: { - tag: { S: string }; - path: { S: string }; - revalidatedAt: { N: string }; - }[] = []; + const metaFiles: TagCacheMetaFile[] = []; // Copy fetch-cache to cache folder const fetchCachePath = path.join( diff --git a/packages/open-next/src/types/open-next.ts b/packages/open-next/src/types/open-next.ts index 0a23d76ff..8c73a6846 100644 --- a/packages/open-next/src/types/open-next.ts +++ b/packages/open-next/src/types/open-next.ts @@ -447,3 +447,9 @@ export interface OpenNextConfig { */ edgeExternals?: string[]; } + +export type TagCacheMetaFile = { + tag: { S: string }; + path: { S: string }; + revalidatedAt: { N: string }; +}; From 596aa36ff23d591101a2419d1014c1cc4ebf991f Mon Sep 17 00:00:00 2001 From: James Date: Thu, 20 Feb 2025 08:39:25 +0000 Subject: [PATCH 4/4] update comment and move type location --- packages/open-next/src/build/createAssets.ts | 4 ++-- packages/open-next/src/types/cache.ts | 6 ++++++ packages/open-next/src/types/open-next.ts | 6 ------ 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/open-next/src/build/createAssets.ts b/packages/open-next/src/build/createAssets.ts index f4e12f9dc..792a30f94 100644 --- a/packages/open-next/src/build/createAssets.ts +++ b/packages/open-next/src/build/createAssets.ts @@ -2,7 +2,7 @@ import fs from "node:fs"; import path from "node:path"; import logger from "../logger.js"; -import type { TagCacheMetaFile } from "../types/open-next.js"; +import type { TagCacheMetaFile } from "../types/cache.js"; import { isBinaryContentType } from "../utils/binary.js"; import * as buildHelper from "./helper.js"; @@ -56,7 +56,7 @@ export function createStaticAssets(options: buildHelper.BuildOptions) { * Create the cache assets. * * @param options Build options. - * @returns Whether tag cache is used. + * @returns Whether the tag cache is used, and the meta files collected. */ export function createCacheAssets(options: buildHelper.BuildOptions) { logger.info("Bundling cache assets..."); diff --git a/packages/open-next/src/types/cache.ts b/packages/open-next/src/types/cache.ts index da343ac34..2c01e122d 100644 --- a/packages/open-next/src/types/cache.ts +++ b/packages/open-next/src/types/cache.ts @@ -75,3 +75,9 @@ export interface Meta { headers?: Record; postponed?: string; } + +export type TagCacheMetaFile = { + tag: { S: string }; + path: { S: string }; + revalidatedAt: { N: string }; +}; diff --git a/packages/open-next/src/types/open-next.ts b/packages/open-next/src/types/open-next.ts index 8c73a6846..0a23d76ff 100644 --- a/packages/open-next/src/types/open-next.ts +++ b/packages/open-next/src/types/open-next.ts @@ -447,9 +447,3 @@ export interface OpenNextConfig { */ edgeExternals?: string[]; } - -export type TagCacheMetaFile = { - tag: { S: string }; - path: { S: string }; - revalidatedAt: { N: string }; -};