vike
Version:
The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.
33 lines (32 loc) • 1.23 kB
JavaScript
import '../../assertEnvVite.js';
export { pluginViteRPC };
import { createViteRPC } from '../../../../utils/getViteRPC.js';
import { isDevCheck } from '../../../../utils/isDev.js';
import { retrievePageAssetsDev } from '../../../../server/runtime/renderPageServer/getPageAssets/retrievePageAssetsDev.js';
import { getViteConfigRuntime } from '../../shared/getViteConfigRuntime.js';
function getViteRpcFunctions(viteDevServer) {
return {
async transformIndexHtmlRPC(html) {
return await viteDevServer.transformIndexHtml('/', html);
},
async retrievePageAssetsDevRPC(clientDependencies, clientEntries) {
return await retrievePageAssetsDev(viteDevServer, clientDependencies, clientEntries);
},
async getViteConfigRuntimeRPC() {
return getViteConfigRuntime(viteDevServer.config);
},
};
}
function pluginViteRPC() {
return [
{
name: 'vike:pluginViteRPC:1',
apply: (_, configEnv) => isDevCheck(configEnv),
configureServer: {
handler(viteDevServer) {
createViteRPC(viteDevServer, getViteRpcFunctions);
},
},
},
];
}