vike
Version:
The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.
43 lines (42 loc) • 1.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveClientEntriesDev = resolveClientEntriesDev;
const utils_js_1 = require("../utils.js");
(0, utils_js_1.assertIsNotProductionRuntime)();
function resolveClientEntriesDev(clientEntry, viteDevServer) {
let userRootDir = viteDevServer.config.root;
(0, utils_js_1.assert)(userRootDir);
userRootDir = (0, utils_js_1.toPosixPath)(userRootDir);
// The `?import` suffix is needed for MDX to be transpiled:
// - Not transpiled: `/pages/markdown.page.mdx`
// - Transpiled: `/pages/markdown.page.mdx?import`
// But `?import` doesn't work with `/@fs/`:
// - Not transpiled: /@fs/home/runner/work/vike/packages/vike/examples/react-full/pages/markdown.page.mdx
// - Not transpiled: /@fs/home/runner/work/vike/packages/vike/examples/react-full/pages/markdown.page.mdx?import
if (clientEntry.endsWith('?import')) {
(0, utils_js_1.assert)(clientEntry.startsWith('/'));
return clientEntry;
}
(0, utils_js_1.assertPosixPath)(clientEntry);
let filePath;
if (clientEntry.startsWith('/')) {
filePath = (0, utils_js_1.pathJoin)(userRootDir, clientEntry);
}
else {
if (clientEntry.startsWith('@@vike/')) {
(0, utils_js_1.assert)(clientEntry.endsWith('.js'));
filePath = (0, utils_js_1.requireResolveVikeDistFile)(`dist/esm/${clientEntry.replace('@@vike/dist/esm/', '')}`);
}
else {
(0, utils_js_1.assertIsImportPathNpmPackage)(clientEntry);
filePath = (0, utils_js_1.requireResolveNpmPackage)({ importPathNpmPackage: clientEntry, userRootDir });
}
}
if (!filePath.startsWith('/')) {
(0, utils_js_1.assert)(process.platform === 'win32');
filePath = '/' + filePath;
}
filePath = '/@fs' + filePath;
(0, utils_js_1.assertPosixPath)(filePath);
return filePath;
}