diff --git a/src/plugins/hydration.ts b/src/plugins/hydration.ts index 20397dd..4055c52 100644 --- a/src/plugins/hydration.ts +++ b/src/plugins/hydration.ts @@ -1,6 +1,8 @@ import MagicString from 'magic-string' import { createUnplugin } from 'unplugin' +const ID_INCLUDE = /\.vue$/ +const ID_EXCLUDE = /node_modules/ export const InjectHydrationPlugin = createUnplugin(() => { return { name: '@nuxt/hints:inject-hydration-check', @@ -8,24 +10,33 @@ export const InjectHydrationPlugin = createUnplugin(() => { transformInclude(id) { return id.endsWith('.vue') && !id.includes('node_modules') }, - transform(code) { - const m = new MagicString(code) - const re = /]*>/g - const match = re.exec(code) - if (!match) { - return code - } + transform: { + filter: { + id: { + include: ID_INCLUDE, + exclude: ID_EXCLUDE, + }, + }, - // Add useHydrationCheck after the