UNPKG

891 BJavaScriptView Raw
1import { isFile, readFileSync } from './fs.js';
2import { dirname, extname, isAbsolute, resolve } from './path.js';
3
4export function load ( id ) {
5 return readFileSync( id, 'utf-8' );
6}
7
8function addJsExtensionIfNecessary ( file ) {
9 if ( isFile( file ) ) return file;
10
11 file += '.js';
12 if ( isFile( file ) ) return file;
13
14 return null;
15}
16
17export function resolveId ( importee, importer ) {
18 // absolute paths are left untouched
19 if ( isAbsolute( importee ) ) return addJsExtensionIfNecessary( importee );
20
21 // if this is the entry point, resolve against cwd
22 if ( importer === undefined ) return addJsExtensionIfNecessary( resolve( process.cwd(), importee ) );
23
24 // external modules are skipped at this stage
25 if ( importee[0] !== '.' ) return null;
26
27 return addJsExtensionIfNecessary( resolve( dirname( importer ), importee ) );
28}
29
30export function onwarn ( msg ) {
31 console.error( msg );
32}