bef9b56109
Updates the way filenames are generated for browser compilation. Notably: - All entry bundles now have hashes in production, this includes pages (previously pages used a buildId in the path) - The AmpFiles no longer depends on hardcoded bundle names, it uses the buildManifest instead (internals) - All cases where we match the page name from the chunk/entrypoint name now use the same function `getRouteFromEntrypoint` (internals) - In development we no longer include the "faked" `buildId` set to `development` for page files, instead we just use the `/_next/static/pages` path (was `/_next/static/development/pages`). This was changed as it caused unneeded complexity and makes generating the bundles easier (internals) - Updated tons of tests to be more resilient to these changes by relying on the buildManifest instead of hardcoded paths (internals) Follow up of these PRs: https://github.com/vercel/next.js/pull/13759 https://github.com/vercel/next.js/pull/13870 https://github.com/vercel/next.js/pull/13937 https://github.com/vercel/next.js/pull/14130 https://github.com/vercel/next.js/pull/14176 https://github.com/vercel/next.js/pull/14268 Fixes #6303 Fixes #12087 Fixes #1948 Fixes #4368 Fixes #4255 Fixes #2548
36 lines
2 KiB
TypeScript
36 lines
2 KiB
TypeScript
export const PHASE_EXPORT = 'phase-export'
|
|
export const PHASE_PRODUCTION_BUILD = 'phase-production-build'
|
|
export const PHASE_PRODUCTION_SERVER = 'phase-production-server'
|
|
export const PHASE_DEVELOPMENT_SERVER = 'phase-development-server'
|
|
export const PAGES_MANIFEST = 'pages-manifest.json'
|
|
export const BUILD_MANIFEST = 'build-manifest.json'
|
|
export const EXPORT_MARKER = 'export-marker.json'
|
|
export const EXPORT_DETAIL = 'export-detail.json'
|
|
export const PRERENDER_MANIFEST = 'prerender-manifest.json'
|
|
export const ROUTES_MANIFEST = 'routes-manifest.json'
|
|
export const REACT_LOADABLE_MANIFEST = 'react-loadable-manifest.json'
|
|
export const SERVER_DIRECTORY = 'server'
|
|
export const SERVERLESS_DIRECTORY = 'serverless'
|
|
export const CONFIG_FILE = 'next.config.js'
|
|
export const BUILD_ID_FILE = 'BUILD_ID'
|
|
export const BLOCKED_PAGES = ['/_document', '/_app']
|
|
export const CLIENT_PUBLIC_FILES_PATH = 'public'
|
|
export const CLIENT_STATIC_FILES_PATH = 'static'
|
|
export const CLIENT_STATIC_FILES_RUNTIME = 'runtime'
|
|
export const AMP_RENDER_TARGET = '__NEXT_AMP_RENDER_TARGET__'
|
|
export const STRING_LITERAL_DROP_BUNDLE = '__NEXT_DROP_CLIENT_FILE__'
|
|
export const CLIENT_STATIC_FILES_RUNTIME_PATH = `${CLIENT_STATIC_FILES_PATH}/${CLIENT_STATIC_FILES_RUNTIME}`
|
|
// static/runtime/main.js
|
|
export const CLIENT_STATIC_FILES_RUNTIME_MAIN = `${CLIENT_STATIC_FILES_RUNTIME_PATH}/main`
|
|
// static/runtime/react-refresh.js
|
|
export const CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH = `${CLIENT_STATIC_FILES_RUNTIME_PATH}/react-refresh`
|
|
// static/runtime/amp.js
|
|
export const CLIENT_STATIC_FILES_RUNTIME_AMP = `${CLIENT_STATIC_FILES_RUNTIME_PATH}/amp`
|
|
// static/runtime/webpack.js
|
|
export const CLIENT_STATIC_FILES_RUNTIME_WEBPACK = `${CLIENT_STATIC_FILES_RUNTIME_PATH}/webpack`
|
|
// static/runtime/polyfills.js
|
|
export const CLIENT_STATIC_FILES_RUNTIME_POLYFILLS = `${CLIENT_STATIC_FILES_RUNTIME_PATH}/polyfills`
|
|
export const TEMPORARY_REDIRECT_STATUS = 307
|
|
export const PERMANENT_REDIRECT_STATUS = 308
|
|
export const STATIC_PROPS_ID = '__N_SSG'
|
|
export const SERVER_PROPS_ID = '__N_SSP'
|