abd5a8436f
Fixes: https://github.com/vercel/next.js/issues/42932 x-ref: [slack thread](https://vercel.slack.com/archives/C03S8ED1DKM/p1668639343426429?thread_ts=1668631260.554489&cid=C03S8ED1DKM) ## Bug - [x] Related issues linked using `fixes #number` - [x] Integration tests added - [ ] Errors have a helpful link attached, see `contributing.md`
40 lines
1.1 KiB
TypeScript
40 lines
1.1 KiB
TypeScript
import { RequestCookies } from '../../server/web/spec-extension/cookies'
|
|
import { requestAsyncStorage } from './request-async-storage'
|
|
import { staticGenerationBailout } from './static-generation-bailout'
|
|
|
|
export function headers() {
|
|
if (staticGenerationBailout('headers')) {
|
|
return new Headers({})
|
|
}
|
|
|
|
const requestStore =
|
|
requestAsyncStorage && 'getStore' in requestAsyncStorage
|
|
? requestAsyncStorage.getStore()!
|
|
: requestAsyncStorage
|
|
|
|
return requestStore.headers
|
|
}
|
|
|
|
export function previewData() {
|
|
if (staticGenerationBailout('previewData')) {
|
|
return {}
|
|
}
|
|
|
|
const requestStore =
|
|
requestAsyncStorage && 'getStore' in requestAsyncStorage
|
|
? requestAsyncStorage.getStore()!
|
|
: requestAsyncStorage
|
|
return requestStore.previewData
|
|
}
|
|
|
|
export function cookies() {
|
|
if (staticGenerationBailout('cookies')) {
|
|
return new RequestCookies(new Headers({}))
|
|
}
|
|
const requestStore =
|
|
requestAsyncStorage && 'getStore' in requestAsyncStorage
|
|
? requestAsyncStorage.getStore()!
|
|
: requestAsyncStorage
|
|
|
|
return requestStore.cookies
|
|
}
|