diff --git a/src/devtools-handlers.ts b/src/devtools-handlers.ts index 27b9665..3421fb6 100644 --- a/src/devtools-handlers.ts +++ b/src/devtools-handlers.ts @@ -20,6 +20,7 @@ import { postHandler as htmlValidatePost, deleteHandler as htmlValidateDelete, } from './runtime/html-validate/api-handlers' +import { addDevServerHandler } from '@nuxt/kit' export { getHydrationMismatches, @@ -30,8 +31,10 @@ export { clearHtmlValidateReport, } -export function createHintsRouter() { - const router = createRouter() +function createHintsRouter() { + const router = createRouter({ + preemptive: true, + }) router.get('/hydration', hydrationGet) router.post('/hydration', hydrationPost) @@ -47,3 +50,12 @@ export function createHintsRouter() { return router } + +export function registerDevServerHandlers() { + const router = createHintsRouter() + + addDevServerHandler({ + route: '/__nuxt_hints', + handler: router.handler, + }) +} diff --git a/src/devtools.ts b/src/devtools.ts index d1c35b2..d29c4f9 100644 --- a/src/devtools.ts +++ b/src/devtools.ts @@ -7,13 +7,13 @@ import { joinURL } from 'ufo' import type { HintsClientFunctions, HintsServerFunctions } from './runtime/core/rpc-types' import { RPC_NAMESPACE } from './runtime/core/rpc-types' import { - createHintsRouter, getHydrationMismatches, clearHydrationMismatches, getLazyLoadHints, clearLazyLoadHint, getHtmlValidateReports, clearHtmlValidateReport, + registerDevServerHandlers, } from './devtools-handlers' const DEVTOOLS_UI_ROUTE = '/__nuxt-hints' @@ -54,10 +54,7 @@ export function setupDevToolsUI(nuxt: Nuxt, resolver: Resolver) { }, }, nuxt) - addDevServerHandler({ - route: '/__nuxt_hints', - handler: createHintsRouter().handler, - }) + registerDevServerHandlers() onDevToolsInitialized(() => { const rpc = extendServerRpc(RPC_NAMESPACE, {