rsnext/packages/next/build/static-checker.ts
JJ Kasper 0ca8087565
Add prerender PageConfig option (#7699)
* Add prerender PageConfig option

* Update PageConfig type

* Add inlining of data when pre-render is set and add tests

* Update types import

* Add check for props

* Rename prerender to experimentalPrerender for now
2019-07-01 14:13:52 -07:00

26 lines
722 B
TypeScript

import { isPageStatic } from './utils'
export default function worker(
options: any,
callback: (err: Error | null, data?: any) => void
) {
try {
const { serverBundle, runtimeEnvConfig } = options || ({} as any)
const result = isPageStatic(serverBundle, runtimeEnvConfig)
// clear require.cache to prevent running out of memory
// since the cache is persisted by default
Object.keys(require.cache).map(modId => {
const mod = require.cache[modId]
delete require.cache[modId]
if (mod.parent) {
const idx = mod.parent.children.indexOf(mod)
mod.parent.children.splice(idx, 1)
}
})
callback(null, result)
} catch (error) {
callback(error)
}
}