e818389999
By popular request, this pull request adds support for returning `fallback: 'blocking'` from `getStaticPaths`. This new mode will cause unknown paths to be rendered on-demand ("SSR") without the static (placeholder) fallback. This feature is **currently experimental and should not be used in production yet**. It's currently flagged behind `unstable_`: ``` fallback: 'unstable_blocking' ``` TODO: - [x] Next.js tests - [ ] Add Vercel support - [ ] Vercel tests --- Fixes #15637
50 lines
2.7 KiB
TypeScript
50 lines
2.7 KiB
TypeScript
import { join } from 'path'
|
|
export const NEXT_PROJECT_ROOT = join(__dirname, '..', '..')
|
|
export const NEXT_PROJECT_ROOT_DIST = join(NEXT_PROJECT_ROOT, 'dist')
|
|
export const NEXT_PROJECT_ROOT_NODE_MODULES = join(
|
|
NEXT_PROJECT_ROOT,
|
|
'node_modules'
|
|
)
|
|
export const NEXT_PROJECT_ROOT_DIST_CLIENT = join(
|
|
NEXT_PROJECT_ROOT_DIST,
|
|
'client'
|
|
)
|
|
export const NEXT_PROJECT_ROOT_DIST_SERVER = join(
|
|
NEXT_PROJECT_ROOT_DIST,
|
|
'server'
|
|
)
|
|
|
|
// Regex for API routes
|
|
export const API_ROUTE = /^\/api(?:\/|$)/
|
|
|
|
// Because on Windows absolute paths in the generated code can break because of numbers, eg 1 in the path,
|
|
// we have to use a private alias
|
|
export const PAGES_DIR_ALIAS = 'private-next-pages'
|
|
export const DOT_NEXT_ALIAS = 'private-dot-next'
|
|
|
|
export const PUBLIC_DIR_MIDDLEWARE_CONFLICT = `You can not have a '_next' folder inside of your public folder. This conflicts with the internal '/_next' route. https://err.sh/vercel/next.js/public-next-folder-conflict`
|
|
|
|
export const SSG_GET_INITIAL_PROPS_CONFLICT = `You can not use getInitialProps with getStaticProps. To use SSG, please remove your getInitialProps`
|
|
|
|
export const SERVER_PROPS_GET_INIT_PROPS_CONFLICT = `You can not use getInitialProps with getServerSideProps. Please remove getInitialProps.`
|
|
|
|
export const SERVER_PROPS_SSG_CONFLICT = `You can not use getStaticProps or getStaticPaths with getServerSideProps. To use SSG, please remove getServerSideProps`
|
|
|
|
export const PAGES_404_GET_INITIAL_PROPS_ERROR = `\`pages/404\` can not have getInitialProps/getServerSideProps, https://err.sh/next.js/404-get-initial-props`
|
|
|
|
export const SERVER_PROPS_EXPORT_ERROR = `pages with \`getServerSideProps\` can not be exported. See more info here: https://err.sh/next.js/gssp-export`
|
|
|
|
export const GSP_NO_RETURNED_VALUE =
|
|
'Your `getStaticProps` function did not return an object. Did you forget to add a `return`?'
|
|
export const GSSP_NO_RETURNED_VALUE =
|
|
'Your `getServerSideProps` function did not return an object. Did you forget to add a `return`?'
|
|
|
|
export const UNSTABLE_REVALIDATE_RENAME_ERROR =
|
|
'The `unstable_revalidate` property is available for general use.\n' +
|
|
'Please use `revalidate` instead.'
|
|
|
|
export const GSSP_COMPONENT_MEMBER_ERROR = `can not be attached to a page's component and must be exported from the page. See more info here: https://err.sh/next.js/gssp-component-member`
|
|
|
|
export const NON_STANDARD_NODE_ENV = `You are using a non-standard "NODE_ENV" value in your environment. This creates inconsistencies in the project and is strongly advised against. Read more: https://err.sh/next.js/non-standard-node-env`
|
|
|
|
export const SSG_FALLBACK_EXPORT_ERROR = `Pages with \`fallback\` enabled in \`getStaticPaths\` can not be exported. See more info here: https://err.sh/next.js/ssg-fallback-true-export`
|