UNPKG

@deepkit/framework

Version:

35 lines 1.65 kB
// @ts-ignore import * as tsNode from 'ts-node/esm'; import { optimizeJSX } from '@deepkit/template'; import { inDebugMode } from '@deepkit/core'; import { importedFiles } from './src/watch.js'; export async function resolve(specifier, context, defaultResolve) { const res = await tsNode.resolve(specifier, context, defaultResolve); if (res.url) { importedFiles.add(res.url.replace('file://', '')); } return res; } resolve.__type = ['specifier', 'parentURL', 'context', () => resolve, 'defaultResolve', 'url', 'resolve', 'P&2!P&4"M2#i$2%P&4&M`/\'']; export function getFormat(url, context, defaultGetFormat) { return tsNode.getFormat(url, context, defaultGetFormat); } getFormat.__type = ['url', 'context', 'defaultGetFormat', 'getFormat', 'P"2!"2""2#"/$']; export async function transformSource(source, context, defaultTransformSource) { const code = await tsNode.transformSource(source, context, defaultTransformSource); if (inDebugMode()) return code; //we don't optimize code in debug-mode, since we break sourcemaps with it. if (context.url.endsWith('.tsx')) { if (code.source.indexOf('@deepkit/framework/jsx-runtime') === -1) return code; if (code.source.startsWith('#!')) { //allow shebang code.source = code.source.substr(code.source.indexOf('\n')); } const optimized = optimizeJSX(code.source); code.source = optimized; } return code; } transformSource.__type = ['source', 'url', 'format', 'context', 'defaultTransformSource', 'transformSource', 'P"2!P&4"&4#M2$"2%"/&']; //# sourceMappingURL=loader.js.map