mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
9ffd23eeef
* Remove unused argument * Replace pages-plugin with loader * Add loader-utils types * Remove logs * Bring back previous deposal behavior * Remove console.log * Remove webpack/utils as it’s no longer in use * Remove hot-self-accept-loader * Error Recovery tests * Make hotSelfAccept a noop default loader * Fix windows deleted/added * Remove logging * Remove unused variables * Remove log * Simplify entrypoint generation * Don’t return the function * Fix _app test * Remove code that’s always true * Move aliases to constants * Use alias * Join pages alias in reduce * Default pages differently * Loop over pages instead of manually defining * Move entry generation into common function * Update packages/next/build/webpack/loaders/next-client-pages-loader.ts Co-Authored-By: timneutkens <tim@timneutkens.nl> * Update packages/next/build/webpack/loaders/next-client-pages-loader.ts
33 lines
874 B
JavaScript
33 lines
874 B
JavaScript
import 'event-source-polyfill'
|
|
import connect from './dev-error-overlay/hot-dev-client'
|
|
export default ({assetPrefix}) => {
|
|
const options = {
|
|
path: `${assetPrefix}/_next/webpack-hmr`
|
|
}
|
|
|
|
const devClient = connect(options)
|
|
|
|
devClient.subscribeToHmrEvent((obj) => {
|
|
if (obj.action === 'reloadPage') {
|
|
return window.location.reload()
|
|
}
|
|
if (obj.action === 'removedPage') {
|
|
const [page] = obj.data
|
|
if (page === window.next.router.pathname) {
|
|
return window.location.reload()
|
|
}
|
|
return
|
|
}
|
|
if (obj.action === 'addedPage') {
|
|
const [page] = obj.data
|
|
if (page === window.next.router.pathname && typeof window.next.router.components[page] === 'undefined') {
|
|
return window.location.reload()
|
|
}
|
|
return
|
|
}
|
|
throw new Error('Unexpected action ' + obj.action)
|
|
})
|
|
|
|
return devClient
|
|
}
|