mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
c2eaf26ea9
* Remove flow-typed * Remove flow types * Remove the last types * Bring back taskr dependency * Revert "Bring back taskr dependency" This reverts commit 38cb95d7274d63fe63c6ac3c95ca358a28c17895. * Bring back preset-flow as it’s used for tests * Revert "Revert "Bring back taskr dependency"" This reverts commit b4c933ef133f4039f544fb10bf31d5c95d3b27a2.
39 lines
1 KiB
JavaScript
39 lines
1 KiB
JavaScript
import findUp from 'find-up'
|
|
import {CONFIG_FILE} from 'next-server/constants'
|
|
|
|
const defaultConfig = {
|
|
webpack: null,
|
|
webpackDevMiddleware: null,
|
|
poweredByHeader: true,
|
|
distDir: '.next',
|
|
assetPrefix: '',
|
|
configOrigin: 'default',
|
|
useFileSystemPublicRoutes: true,
|
|
generateBuildId: () => null,
|
|
generateEtags: true,
|
|
pageExtensions: ['jsx', 'js']
|
|
}
|
|
|
|
export default function loadConfig (phase, dir, customConfig) {
|
|
if (customConfig) {
|
|
customConfig.configOrigin = 'server'
|
|
return {...defaultConfig, ...customConfig}
|
|
}
|
|
const path = findUp.sync(CONFIG_FILE, {
|
|
cwd: dir
|
|
})
|
|
|
|
// If config file was found
|
|
if (path && path.length) {
|
|
const userConfigModule = require(path)
|
|
const userConfigInitial = userConfigModule.default || userConfigModule
|
|
if (typeof userConfigInitial === 'function') {
|
|
return {...defaultConfig, configOrigin: CONFIG_FILE, ...userConfigInitial(phase, {defaultConfig})}
|
|
}
|
|
|
|
return {...defaultConfig, configOrigin: CONFIG_FILE, ...userConfigInitial}
|
|
}
|
|
|
|
return defaultConfig
|
|
}
|