From 5910962fd944a1157b4a36a764a1870a83149c30 Mon Sep 17 00:00:00 2001 From: Ahad Birang Date: Tue, 16 Aug 2022 16:02:51 +0200 Subject: [PATCH] fix(prerender): add extension to prerendered queries --- src/runtime/composables/navigation.ts | 6 +++--- src/runtime/composables/query.ts | 2 +- src/runtime/utils/query.ts | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/runtime/composables/navigation.ts b/src/runtime/composables/navigation.ts index 75bdd0b92..248e1081c 100644 --- a/src/runtime/composables/navigation.ts +++ b/src/runtime/composables/navigation.ts @@ -4,13 +4,13 @@ import type { NavItem, QueryBuilder, QueryBuilderParams } from '../types' import { jsonStringify } from '../utils/json' import { withContentBase } from './utils' -export const fetchContentNavigation = (queryBuilder?: QueryBuilder | QueryBuilderParams) => { +export const fetchContentNavigation = (queryBuilder?: QueryBuilder | QueryBuilderParams): Promise> => { let params = queryBuilder // When params is an instance of QueryBuilder then we need to pick the params explicitly if (typeof params?.params === 'function') { params = params.params() } - const apiPath = withContentBase(params ? `/navigation/${hash(params)}` : '/navigation') + const apiPath = withContentBase(params ? `/navigation/${hash(params)}.json` : '/navigation') // Add `prefetch` to `` in production if (!process.dev && process.server) { @@ -21,7 +21,7 @@ export const fetchContentNavigation = (queryBuilder?: QueryBuilder | QueryBuilde }) } - return $fetch>(apiPath, { + return $fetch(apiPath, { method: 'GET', responseType: 'json', params: { diff --git a/src/runtime/composables/query.ts b/src/runtime/composables/query.ts index d0d51f0d5..e4d62b87c 100644 --- a/src/runtime/composables/query.ts +++ b/src/runtime/composables/query.ts @@ -24,7 +24,7 @@ export const createQueryFetch = (path?: string) => (query: Qu const params = query.params() - const apiPath = withContentBase(process.dev ? '/query' : `/query/${hash(params)}`) + const apiPath = withContentBase(process.dev ? '/query' : `/query/${hash(params)}.json`) // Prefetch the query if (!process.dev && process.server) { diff --git a/src/runtime/utils/query.ts b/src/runtime/utils/query.ts index efe9c1c6a..236c8020b 100644 --- a/src/runtime/utils/query.ts +++ b/src/runtime/utils/query.ts @@ -12,7 +12,7 @@ const parseQueryParams = (body: string) => { const memory = {} export const getContentQuery = (event: CompatibilityEvent): QueryBuilderParams => { - const { qid } = event.context.params + const qid = event.context.params.qid?.replace(/.json$/, '') const query: any = useQuery(event) || {} // Using /api/_content/query/:qid?_params=....