From 7a8175dd5952518f4783bef0f4e8c76203941cd3 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Sat, 20 Apr 2024 00:12:37 +0200 Subject: [PATCH] even better --- .eslintrc.js | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 55b755bff0b8ae..7f2b9b58f5c08a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,8 +1,8 @@ const path = require('path'); const { rules: baseStyleRules } = require('eslint-config-airbnb-base/rules/style'); -const forbidTopLevelMessage = [ - 'Prefer one level nested imports to avoid bundling everything in dev mode', +const OneLevelImportMessage = [ + 'Prefer one level nested imports to avoid bundling everything in dev mode or breaking CJS/ESM split.', 'See https://github.com/mui/material-ui/pull/24147 for the kind of win it can unlock.', ].join('\n'); // This only applies to packages published from this monorepo. @@ -66,12 +66,18 @@ module.exports = { 'error', { patterns: [ - '@mui/*/*/*', - '@pigment-css/*/*/*', - '@base_ui/*/*/*', - // Allow any import depth with any internal packages - '!@mui/internal-*/**', - '!@mui/docs/**', + { + group: [ + '@mui/*/*/*', + '@pigment-css/*/*/*', + '@base_ui/*/*/*', + // Allow any import depth with any internal packages + '!@mui/internal-*/**', + // TODO delete, @mui/docs should be @mui/internal-docs + '!@mui/docs/**', + ], + message: OneLevelImportMessage, + }, ], }, ], @@ -419,11 +425,11 @@ module.exports = { paths: [ { name: '@mui/material', - message: forbidTopLevelMessage, + message: OneLevelImportMessage, }, { name: '@mui/lab', - message: forbidTopLevelMessage, + message: OneLevelImportMessage, }, ], },