const path = require('path') module.exports = { meta: { docs: { description: 'Disallow importing next/head in pages/document.js', recommended: true, url: 'https://nextjs.org/docs/messages/no-head-import-in-document', }, }, create: function (context) { return { ImportDeclaration(node) { if (node.source.value !== 'next/head') { return } const document = context.getFilename().split('pages')[1] if (!document) { return } const { name, dir } = path.parse(document) if ( name.startsWith('_document') || (dir === '/_document' && name === 'index') ) { context.report({ node, message: `next/head should not be imported in pages${document}. Import Head from next/document instead. See https://nextjs.org/docs/messages/no-head-import-in-document.`, }) } }, } }, }