diff --git a/packages/eslint-plugin-next/.swcrc b/packages/eslint-plugin-next/.swcrc new file mode 100644 index 0000000000000..03874f5c178ff --- /dev/null +++ b/packages/eslint-plugin-next/.swcrc @@ -0,0 +1,11 @@ +{ + "$schema": "https://json.schemastore.org/swcrc", + "jsc": { + "parser": { + "syntax": "typescript" + } + }, + "module": { + "type": "commonjs" + } +} \ No newline at end of file diff --git a/packages/eslint-plugin-next/lib/rules/no-img-element.js b/packages/eslint-plugin-next/lib/rules/no-img-element.js deleted file mode 100644 index 7d071ef86792f..0000000000000 --- a/packages/eslint-plugin-next/lib/rules/no-img-element.js +++ /dev/null @@ -1,43 +0,0 @@ -const url = 'https://nextjs.org/docs/messages/no-img-element' - -module.exports = { - meta: { - docs: { - description: 'Prevent usage of `` element to prevent layout shift.', - category: 'HTML', - recommended: true, - url, - }, - type: 'problem', - schema: [], - }, - - create: function (context) { - return { - JSXOpeningElement(node) { - if (node.name.name !== 'img') { - return - } - - if (node.attributes.length === 0) { - return - } - - if ( - node.parent && - node.parent.openingElement && - node.parent.parent.openingElement && - node.parent.parent.openingElement.name && - node.parent.parent.openingElement.name.name === 'picture' - ) { - return - } - - context.report({ - node, - message: `Do not use \`\` element. Use \`\` from \`next/image\` instead. See: ${url}`, - }) - }, - } - }, -} diff --git a/packages/eslint-plugin-next/package.json b/packages/eslint-plugin-next/package.json index 71927094482dd..151c2001186bf 100644 --- a/packages/eslint-plugin-next/package.json +++ b/packages/eslint-plugin-next/package.json @@ -2,19 +2,23 @@ "name": "@next/eslint-plugin-next", "version": "12.3.2-canary.15", "description": "ESLint plugin for NextJS.", - "main": "lib/index.js", + "main": "dist/index.js", "license": "MIT", "repository": { "url": "vercel/next.js", "directory": "packages/eslint-plugin-next" }, "files": [ - "lib" + "dist" ], "dependencies": { "glob": "7.1.7" }, "devDependencies": { - "@types/eslint": "7.28.0" + "eslint": "7.24.0" + }, + "scripts": { + "build": "swc -d dist src", + "prepublishOnly": "cd ../../ && turbo run build" } } diff --git a/packages/eslint-plugin-next/lib/index.js b/packages/eslint-plugin-next/src/index.ts similarity index 100% rename from packages/eslint-plugin-next/lib/index.js rename to packages/eslint-plugin-next/src/index.ts diff --git a/packages/eslint-plugin-next/lib/rules/google-font-display.js b/packages/eslint-plugin-next/src/rules/google-font-display.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/google-font-display.js rename to packages/eslint-plugin-next/src/rules/google-font-display.js diff --git a/packages/eslint-plugin-next/lib/rules/google-font-preconnect.js b/packages/eslint-plugin-next/src/rules/google-font-preconnect.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/google-font-preconnect.js rename to packages/eslint-plugin-next/src/rules/google-font-preconnect.js diff --git a/packages/eslint-plugin-next/lib/rules/inline-script-id.js b/packages/eslint-plugin-next/src/rules/inline-script-id.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/inline-script-id.js rename to packages/eslint-plugin-next/src/rules/inline-script-id.js diff --git a/packages/eslint-plugin-next/lib/rules/next-script-for-ga.js b/packages/eslint-plugin-next/src/rules/next-script-for-ga.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/next-script-for-ga.js rename to packages/eslint-plugin-next/src/rules/next-script-for-ga.js diff --git a/packages/eslint-plugin-next/lib/rules/no-assign-module-variable.js b/packages/eslint-plugin-next/src/rules/no-assign-module-variable.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-assign-module-variable.js rename to packages/eslint-plugin-next/src/rules/no-assign-module-variable.js diff --git a/packages/eslint-plugin-next/lib/rules/no-before-interactive-script-outside-document.js b/packages/eslint-plugin-next/src/rules/no-before-interactive-script-outside-document.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-before-interactive-script-outside-document.js rename to packages/eslint-plugin-next/src/rules/no-before-interactive-script-outside-document.js diff --git a/packages/eslint-plugin-next/lib/rules/no-css-tags.js b/packages/eslint-plugin-next/src/rules/no-css-tags.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-css-tags.js rename to packages/eslint-plugin-next/src/rules/no-css-tags.js diff --git a/packages/eslint-plugin-next/lib/rules/no-document-import-in-page.js b/packages/eslint-plugin-next/src/rules/no-document-import-in-page.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-document-import-in-page.js rename to packages/eslint-plugin-next/src/rules/no-document-import-in-page.js diff --git a/packages/eslint-plugin-next/lib/rules/no-duplicate-head.js b/packages/eslint-plugin-next/src/rules/no-duplicate-head.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-duplicate-head.js rename to packages/eslint-plugin-next/src/rules/no-duplicate-head.js diff --git a/packages/eslint-plugin-next/lib/rules/no-head-element.js b/packages/eslint-plugin-next/src/rules/no-head-element.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-head-element.js rename to packages/eslint-plugin-next/src/rules/no-head-element.js diff --git a/packages/eslint-plugin-next/lib/rules/no-head-import-in-document.js b/packages/eslint-plugin-next/src/rules/no-head-import-in-document.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-head-import-in-document.js rename to packages/eslint-plugin-next/src/rules/no-head-import-in-document.js diff --git a/packages/eslint-plugin-next/lib/rules/no-html-link-for-pages.js b/packages/eslint-plugin-next/src/rules/no-html-link-for-pages.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-html-link-for-pages.js rename to packages/eslint-plugin-next/src/rules/no-html-link-for-pages.js diff --git a/packages/eslint-plugin-next/src/rules/no-img-element.ts b/packages/eslint-plugin-next/src/rules/no-img-element.ts new file mode 100644 index 0000000000000..baea84b669b93 --- /dev/null +++ b/packages/eslint-plugin-next/src/rules/no-img-element.ts @@ -0,0 +1,37 @@ +import type { Rule } from 'eslint' + +const url = 'https://nextjs.org/docs/messages/no-img-element' + +export const meta: Rule.RuleMetaData = { + docs: { + description: 'Prevent usage of `` element to prevent layout shift.', + category: 'HTML', + recommended: true, + url, + }, + type: 'problem', + schema: [], +} + +export const create: Rule.RuleModule['create'] = (context) => { + return { + JSXOpeningElement(node) { + if (node.name.name !== 'img') { + return + } + + if (node.attributes.length === 0) { + return + } + + if (node.parent?.parent?.openingElement?.name?.name === 'picture') { + return + } + + context.report({ + node, + message: `Do not use \`\` element. Use \`\` from \`next/image\` instead. See: ${url}`, + }) + }, + } +} diff --git a/packages/eslint-plugin-next/lib/rules/no-page-custom-font.js b/packages/eslint-plugin-next/src/rules/no-page-custom-font.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-page-custom-font.js rename to packages/eslint-plugin-next/src/rules/no-page-custom-font.js diff --git a/packages/eslint-plugin-next/lib/rules/no-script-component-in-head.js b/packages/eslint-plugin-next/src/rules/no-script-component-in-head.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-script-component-in-head.js rename to packages/eslint-plugin-next/src/rules/no-script-component-in-head.js diff --git a/packages/eslint-plugin-next/lib/rules/no-styled-jsx-in-document.js b/packages/eslint-plugin-next/src/rules/no-styled-jsx-in-document.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-styled-jsx-in-document.js rename to packages/eslint-plugin-next/src/rules/no-styled-jsx-in-document.js diff --git a/packages/eslint-plugin-next/lib/rules/no-sync-scripts.js b/packages/eslint-plugin-next/src/rules/no-sync-scripts.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-sync-scripts.js rename to packages/eslint-plugin-next/src/rules/no-sync-scripts.js diff --git a/packages/eslint-plugin-next/lib/rules/no-title-in-document-head.js b/packages/eslint-plugin-next/src/rules/no-title-in-document-head.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-title-in-document-head.js rename to packages/eslint-plugin-next/src/rules/no-title-in-document-head.js diff --git a/packages/eslint-plugin-next/lib/rules/no-typos.js b/packages/eslint-plugin-next/src/rules/no-typos.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-typos.js rename to packages/eslint-plugin-next/src/rules/no-typos.js diff --git a/packages/eslint-plugin-next/lib/rules/no-unwanted-polyfillio.js b/packages/eslint-plugin-next/src/rules/no-unwanted-polyfillio.js similarity index 100% rename from packages/eslint-plugin-next/lib/rules/no-unwanted-polyfillio.js rename to packages/eslint-plugin-next/src/rules/no-unwanted-polyfillio.js diff --git a/packages/eslint-plugin-next/lib/utils/get-root-dirs.js b/packages/eslint-plugin-next/src/utils/get-root-dirs.js similarity index 100% rename from packages/eslint-plugin-next/lib/utils/get-root-dirs.js rename to packages/eslint-plugin-next/src/utils/get-root-dirs.js diff --git a/packages/eslint-plugin-next/lib/utils/node-attributes.js b/packages/eslint-plugin-next/src/utils/node-attributes.js similarity index 100% rename from packages/eslint-plugin-next/lib/utils/node-attributes.js rename to packages/eslint-plugin-next/src/utils/node-attributes.js diff --git a/packages/eslint-plugin-next/lib/utils/url.js b/packages/eslint-plugin-next/src/utils/url.js similarity index 100% rename from packages/eslint-plugin-next/lib/utils/url.js rename to packages/eslint-plugin-next/src/utils/url.js diff --git a/packages/eslint-plugin-next/jsconfig.json b/packages/eslint-plugin-next/tsconfig.json similarity index 80% rename from packages/eslint-plugin-next/jsconfig.json rename to packages/eslint-plugin-next/tsconfig.json index e4468a2aee6de..ed9206798a9e8 100644 --- a/packages/eslint-plugin-next/jsconfig.json +++ b/packages/eslint-plugin-next/tsconfig.json @@ -3,5 +3,6 @@ "module": "commonjs", "target": "es2019" }, + "include": ["src/**/*"], "exclude": ["node_modules"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7f2c4f40f6888..797d1ff47e3b5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -419,12 +419,12 @@ importers: packages/eslint-plugin-next: specifiers: - '@types/eslint': 7.28.0 + eslint: 7.24.0 glob: 7.1.7 dependencies: glob: 7.1.7 devDependencies: - '@types/eslint': 7.28.0 + eslint: 7.24.0 packages/font: specifiers: {} diff --git a/test/unit/eslint-plugin-next/google-font-display.test.ts b/test/unit/eslint-plugin-next/google-font-display.test.ts index 8754fc526c1a5..d52ec9a831d71 100644 --- a/test/unit/eslint-plugin-next/google-font-display.test.ts +++ b/test/unit/eslint-plugin-next/google-font-display.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/google-font-display' +import rule from '@next/eslint-plugin-next/dist/rules/google-font-display' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/google-font-preconnect.test.ts b/test/unit/eslint-plugin-next/google-font-preconnect.test.ts index d5bbbc717335a..33578d20a360b 100644 --- a/test/unit/eslint-plugin-next/google-font-preconnect.test.ts +++ b/test/unit/eslint-plugin-next/google-font-preconnect.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/google-font-preconnect' +import rule from '@next/eslint-plugin-next/dist/rules/google-font-preconnect' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/index.test.ts b/test/unit/eslint-plugin-next/index.test.ts index 394d2a37485b6..f795293f0b353 100644 --- a/test/unit/eslint-plugin-next/index.test.ts +++ b/test/unit/eslint-plugin-next/index.test.ts @@ -3,7 +3,7 @@ import glob from 'glob' import index from '@next/eslint-plugin-next' const getRuleNameFromRulePath = (path) => basename(path, '.js') -const rulePaths = glob.sync('packages/eslint-plugin-next/lib/rules/*js', { +const rulePaths = glob.sync('packages/eslint-plugin-next/dist/rules/*js', { absolute: true, }) @@ -15,7 +15,8 @@ describe('@next/eslint-plugin-next index', () => { }) rulePaths.forEach((rulePath) => { - const rule = require(rulePath) + let rule = require(rulePath) + rule = rule.default ?? rule const ruleName = getRuleNameFromRulePath(rulePath) const { recommended = false } = rule.meta.docs diff --git a/test/unit/eslint-plugin-next/inline-script-id.test.ts b/test/unit/eslint-plugin-next/inline-script-id.test.ts index 569f258ef78f5..fc3fb9e9fe397 100644 --- a/test/unit/eslint-plugin-next/inline-script-id.test.ts +++ b/test/unit/eslint-plugin-next/inline-script-id.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/inline-script-id' +import rule from '@next/eslint-plugin-next/dist/rules/inline-script-id' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/next-script-for-ga.test.ts b/test/unit/eslint-plugin-next/next-script-for-ga.test.ts index cee8ceb4a092e..709042a0fbc13 100644 --- a/test/unit/eslint-plugin-next/next-script-for-ga.test.ts +++ b/test/unit/eslint-plugin-next/next-script-for-ga.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/next-script-for-ga' +import rule from '@next/eslint-plugin-next/dist/rules/next-script-for-ga' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-assign-module-variable.test.ts b/test/unit/eslint-plugin-next/no-assign-module-variable.test.ts index a81b2eca64c36..7b93ae0d399bd 100644 --- a/test/unit/eslint-plugin-next/no-assign-module-variable.test.ts +++ b/test/unit/eslint-plugin-next/no-assign-module-variable.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-assign-module-variable' +import rule from '@next/eslint-plugin-next/dist/rules/no-assign-module-variable' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-before-interactive-script-outside-document.test.ts b/test/unit/eslint-plugin-next/no-before-interactive-script-outside-document.test.ts index 48789a3e237e3..6b6fec463c32f 100644 --- a/test/unit/eslint-plugin-next/no-before-interactive-script-outside-document.test.ts +++ b/test/unit/eslint-plugin-next/no-before-interactive-script-outside-document.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-before-interactive-script-outside-document' +import rule from '@next/eslint-plugin-next/dist/rules/no-before-interactive-script-outside-document' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-css-tags.test.ts b/test/unit/eslint-plugin-next/no-css-tags.test.ts index 4dd04ea80514c..127bb6b5c148c 100644 --- a/test/unit/eslint-plugin-next/no-css-tags.test.ts +++ b/test/unit/eslint-plugin-next/no-css-tags.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-css-tags' +import rule from '@next/eslint-plugin-next/dist/rules/no-css-tags' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-document-import-in-page.test.ts b/test/unit/eslint-plugin-next/no-document-import-in-page.test.ts index ad98e079309c6..f09edd3a9240a 100644 --- a/test/unit/eslint-plugin-next/no-document-import-in-page.test.ts +++ b/test/unit/eslint-plugin-next/no-document-import-in-page.test.ts @@ -1,6 +1,6 @@ import path from 'path' -import rule from '@next/eslint-plugin-next/lib/rules/no-document-import-in-page' +import rule from '@next/eslint-plugin-next/dist/rules/no-document-import-in-page' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-duplicate-head.test.ts b/test/unit/eslint-plugin-next/no-duplicate-head.test.ts index c859e8029136d..c25b6071d5dc4 100644 --- a/test/unit/eslint-plugin-next/no-duplicate-head.test.ts +++ b/test/unit/eslint-plugin-next/no-duplicate-head.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-duplicate-head' +import rule from '@next/eslint-plugin-next/dist/rules/no-duplicate-head' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-head-element.test.ts b/test/unit/eslint-plugin-next/no-head-element.test.ts index 1804abd9a8f50..9ce756197a900 100644 --- a/test/unit/eslint-plugin-next/no-head-element.test.ts +++ b/test/unit/eslint-plugin-next/no-head-element.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-head-element' +import rule from '@next/eslint-plugin-next/dist/rules/no-head-element' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-head-import-in-document.test.ts b/test/unit/eslint-plugin-next/no-head-import-in-document.test.ts index 4bcaed90b7a3a..21affc36f2003 100644 --- a/test/unit/eslint-plugin-next/no-head-import-in-document.test.ts +++ b/test/unit/eslint-plugin-next/no-head-import-in-document.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-head-import-in-document' +import rule from '@next/eslint-plugin-next/dist/rules/no-head-import-in-document' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-html-link-for-pages.test.ts b/test/unit/eslint-plugin-next/no-html-link-for-pages.test.ts index e5aa38beecb17..0f2c0f629713e 100644 --- a/test/unit/eslint-plugin-next/no-html-link-for-pages.test.ts +++ b/test/unit/eslint-plugin-next/no-html-link-for-pages.test.ts @@ -1,5 +1,5 @@ /* eslint-env jest */ -import rule from '@next/eslint-plugin-next/lib/rules/no-html-link-for-pages' +import rule from '@next/eslint-plugin-next/dist/rules/no-html-link-for-pages' import { Linter } from 'eslint' import assert from 'assert' import path from 'path' diff --git a/test/unit/eslint-plugin-next/no-img-element.test.ts b/test/unit/eslint-plugin-next/no-img-element.test.ts index 18efcff88a4da..1349524709dfb 100644 --- a/test/unit/eslint-plugin-next/no-img-element.test.ts +++ b/test/unit/eslint-plugin-next/no-img-element.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-img-element' +import * as rule from '@next/eslint-plugin-next/dist/rules/no-img-element' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-page-custom-font.test.ts b/test/unit/eslint-plugin-next/no-page-custom-font.test.ts index 8e2a5623c8ca0..c9548d8090619 100644 --- a/test/unit/eslint-plugin-next/no-page-custom-font.test.ts +++ b/test/unit/eslint-plugin-next/no-page-custom-font.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-page-custom-font' +import rule from '@next/eslint-plugin-next/dist/rules/no-page-custom-font' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-script-component-in-head.test.ts b/test/unit/eslint-plugin-next/no-script-component-in-head.test.ts index c4ae01685660b..ba0aece3e727f 100644 --- a/test/unit/eslint-plugin-next/no-script-component-in-head.test.ts +++ b/test/unit/eslint-plugin-next/no-script-component-in-head.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-script-component-in-head' +import rule from '@next/eslint-plugin-next/dist/rules/no-script-component-in-head' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-styled-jsx-in-document.test.ts b/test/unit/eslint-plugin-next/no-styled-jsx-in-document.test.ts index 5a91d5f0bafd1..94382c61507b7 100644 --- a/test/unit/eslint-plugin-next/no-styled-jsx-in-document.test.ts +++ b/test/unit/eslint-plugin-next/no-styled-jsx-in-document.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-styled-jsx-in-document' +import rule from '@next/eslint-plugin-next/dist/rules/no-styled-jsx-in-document' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-sync-scripts.test.ts b/test/unit/eslint-plugin-next/no-sync-scripts.test.ts index 90d4267efa8cf..08203108f93d5 100644 --- a/test/unit/eslint-plugin-next/no-sync-scripts.test.ts +++ b/test/unit/eslint-plugin-next/no-sync-scripts.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-sync-scripts' +import rule from '@next/eslint-plugin-next/dist/rules/no-sync-scripts' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-title-in-document-head.test.ts b/test/unit/eslint-plugin-next/no-title-in-document-head.test.ts index 8877d0c1343df..6644fe4a85d9d 100644 --- a/test/unit/eslint-plugin-next/no-title-in-document-head.test.ts +++ b/test/unit/eslint-plugin-next/no-title-in-document-head.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-title-in-document-head' +import rule from '@next/eslint-plugin-next/dist/rules/no-title-in-document-head' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-typos.test.ts b/test/unit/eslint-plugin-next/no-typos.test.ts index ee8a26b2313a5..89bcaf1602af5 100644 --- a/test/unit/eslint-plugin-next/no-typos.test.ts +++ b/test/unit/eslint-plugin-next/no-typos.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-typos' +import rule from '@next/eslint-plugin-next/dist/rules/no-typos' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: { diff --git a/test/unit/eslint-plugin-next/no-unwanted-polyfillio.test.ts b/test/unit/eslint-plugin-next/no-unwanted-polyfillio.test.ts index 7283183736c42..f1383c2f67d9c 100644 --- a/test/unit/eslint-plugin-next/no-unwanted-polyfillio.test.ts +++ b/test/unit/eslint-plugin-next/no-unwanted-polyfillio.test.ts @@ -1,4 +1,4 @@ -import rule from '@next/eslint-plugin-next/lib/rules/no-unwanted-polyfillio' +import rule from '@next/eslint-plugin-next/dist/rules/no-unwanted-polyfillio' import { RuleTester } from 'eslint' ;(RuleTester as any).setDefaultConfig({ parserOptions: {