mirror of
https://github.com/kevin-DL/sapper.git
synced 2026-01-13 11:35:28 +00:00
13 lines
485 B
TypeScript
13 lines
485 B
TypeScript
import { components, routes } from '@sapper/internal/manifest-client';
|
|
import { load_component } from '../app';
|
|
|
|
export default function prefetchRoutes(pathnames: string[]) {
|
|
return routes
|
|
.filter(pathnames
|
|
? route => pathnames.some(pathname => route.pattern.test(pathname))
|
|
: () => true
|
|
)
|
|
.reduce((promise: Promise<any>, route) => promise.then(() => {
|
|
return Promise.all(route.parts.map(part => part && load_component(components[part.i])));
|
|
}), Promise.resolve());
|
|
} |