Skip to content

Commit e9dc6ad

Browse files
committed
Avoid bursting cache
1 parent 273e418 commit e9dc6ad

File tree

2 files changed

+16
-12
lines changed

2 files changed

+16
-12
lines changed

packages/gitbook/src/lib/api.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@ const getAPIContextId = async () => {
394394
* Get a revision by its ID.
395395
*/
396396
export const getRevision = cache({
397-
name: 'api.getRevision.v3',
397+
name: 'api.getRevision.v2',
398398
tag: (spaceId, revisionId, fetchOptions) =>
399399
// Temporary hack to make it work with OpenAPI on v1
400400
fetchOptions.tags?.[0] ??
@@ -427,7 +427,7 @@ export const getRevision = cache({
427427
return cacheResponse(response, {
428428
...(fetchOptions.metadata ? cacheTtl_7days : cacheTtl_1day),
429429
data: {
430-
revision: response.data,
430+
...response.data,
431431
tags: getResponseCacheTags(response),
432432
},
433433
});
@@ -439,7 +439,7 @@ export const getRevision = cache({
439439
* Get all the pages in a revision of a space.
440440
*/
441441
export const getRevisionPages = cache({
442-
name: 'api.getRevisionPages.v5',
442+
name: 'api.getRevisionPages.v4',
443443
tag: (spaceId, revisionId, fetchOptions) =>
444444
// Temporary hack to make it work with OpenAPI on v1
445445
fetchOptions.tags?.[0] ??
@@ -471,7 +471,7 @@ export const getRevisionPages = cache({
471471

472472
return cacheResponse(response, {
473473
...(fetchOptions.metadata ? cacheTtl_7days : cacheTtl_1day),
474-
data: { pages: response.data.pages, tags: getResponseCacheTags(response) },
474+
data: { ...response.data, tags: getResponseCacheTags(response) },
475475
});
476476
},
477477
getKeyArgs: (args) => [args[0], args[1]],
@@ -663,7 +663,7 @@ export const getRevisionFile = batch<[string, string, string], RevisionFile | nu
663663
let files: Record<string, RevisionFile> = {};
664664

665665
if (hasRevisionInMemory) {
666-
const { revision } = await getRevision(spaceId, revisionId, { metadata: false });
666+
const revision = await getRevision(spaceId, revisionId, { metadata: false });
667667
files = {};
668668
revision.files.forEach((file) => {
669669
files[file.id] = file;
@@ -709,7 +709,7 @@ export const getReusableContent = async (
709709
});
710710

711711
if (hasRevisionInMemory) {
712-
const { revision } = await getRevision(spaceId, revisionId, { metadata: false });
712+
const revision = await getRevision(spaceId, revisionId, { metadata: false });
713713
return (
714714
revision.reusableContents.find(
715715
(reusableContent) => reusableContent.id === reusableContentId

packages/gitbook/src/lib/v1.ts

+10-6
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ async function getDataFetcherV1(): Promise<GitBookDataFetcher> {
135135

136136
getRevision(params) {
137137
return wrapDataFetcherError(async () => {
138-
const { revision, tags } = await getRevision(params.spaceId, params.revisionId, {
138+
const { tags, ...revision } = await getRevision(params.spaceId, params.revisionId, {
139139
metadata: params.metadata,
140140
computed: false,
141141
});
@@ -145,11 +145,15 @@ async function getDataFetcherV1(): Promise<GitBookDataFetcher> {
145145
(page) => page.type === RevisionPageType.Computed
146146
)
147147
) {
148-
const { revision } = await getRevision(params.spaceId, params.revisionId, {
149-
metadata: params.metadata,
150-
computed: true,
151-
tags,
152-
});
148+
const { tags: _tags, ...revision } = await getRevision(
149+
params.spaceId,
150+
params.revisionId,
151+
{
152+
metadata: params.metadata,
153+
computed: true,
154+
tags,
155+
}
156+
);
153157
return revision;
154158
}
155159

0 commit comments

Comments
 (0)