Skip to content

Commit 10edd5a

Browse files
committed
fix(node): use Module.registerHooks instead of deprecated Module.register for Node v26+
Node.js v26 deprecated Module.register() in favor of Module.registerHooks(). This change uses the new API when available, falling back to the old API for older Node versions. Fixes #19893
1 parent e01946f commit 10edd5a

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

packages/@tailwindcss-node/src/index.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,14 @@ if (!process.versions.bun) {
1414
let localRequire = Module.createRequire(import.meta.url)
1515

1616
// `Module#register` was added in Node v18.19.0 and v20.6.0
17+
// `Module#registerHooks` was added in Node v26.0.0 and is the preferred API
1718
//
1819
// Not calling it means that while ESM dependencies don't get reloaded, the
1920
// actual included files will because they cache bust directly via `?id=…`
20-
Module.register?.(pathToFileURL(localRequire.resolve('@tailwindcss/node/esm-cache-loader')))
21+
let loaderUrl = pathToFileURL(localRequire.resolve('@tailwindcss/node/esm-cache-loader'))
22+
if (Module.registerHooks) {
23+
Module.registerHooks({ resolve: loaderUrl })
24+
} else {
25+
Module.register?.(loaderUrl)
26+
}
2127
}

0 commit comments

Comments
 (0)