mirror of
https://github.com/kevin-DL/sapper.git
synced 2026-01-14 03:54:46 +00:00
expose find_page method
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { dev } from './api/dev';
|
||||
import { build } from './api/build';
|
||||
import { exporter } from './api/export';
|
||||
import { find_page } from './api/find_page';
|
||||
|
||||
export { dev, build, exporter };
|
||||
export { dev, build, exporter, find_page };
|
||||
16
src/api/find_page.ts
Normal file
16
src/api/find_page.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
import * as glob from 'glob';
|
||||
import { locations } from '../config';
|
||||
import { create_routes } from '../core';
|
||||
|
||||
export function find_page(pathname: string, files: string[] = glob.sync('**/*.*', { cwd: locations.routes(), dot: true, nodir: true })) {
|
||||
const routes = create_routes({ files });
|
||||
|
||||
for (let i = 0; i < routes.length; i += 1) {
|
||||
const route = routes[i];
|
||||
|
||||
if (route.pattern.test(pathname)) {
|
||||
const page = route.handlers.find(handler => handler.type === 'page');
|
||||
if (page) return page.file;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user