Skip to content

Commit

Permalink
Enforce path imports for MUI icons, upgrade to ESLint v8 (jupyterlab#…
Browse files Browse the repository at this point in the history
…1225)

* Enforce path imports for mui icons, migrate to newer eslint

* Replace mui icons imports with path imports
  • Loading branch information
krassowski authored Feb 4, 2025
1 parent 4028aaa commit 5b99b0f
Show file tree
Hide file tree
Showing 5 changed files with 424 additions and 273 deletions.
23 changes: 21 additions & 2 deletions packages/jupyter-ai/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ module.exports = {
tsconfigRootDir: __dirname,
project: './tsconfig.json'
},
plugins: ['@typescript-eslint'],
plugins: ['@stylistic', '@typescript-eslint'],
rules: {
'@typescript-eslint/naming-convention': [
'error',
Expand All @@ -27,13 +27,32 @@ module.exports = {
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-namespace': 'off',
'@typescript-eslint/no-use-before-define': 'off',
'@typescript-eslint/quotes': [
'@stylistic/quotes': [
'error',
'single',
{ avoidEscape: true, allowTemplateLiterals: false }
],
curly: ['error', 'all'],
eqeqeq: 'error',
'no-restricted-imports': [
'error',
{
paths: [
{
name: '@mui/icons-material',

message:
"Please import icons using path imports, e.g. `import AddIcon from '@mui/icons-material/Add'`"
}
],
patterns: [
{
group: ['@mui/*/*/*'],
message: '3rd level imports in mui are considered private'
}
]
}
],
'prefer-arrow-callback': 'error'
},
overrides: [
Expand Down
7 changes: 4 additions & 3 deletions packages/jupyter-ai/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -85,11 +85,12 @@
"@babel/preset-env": "^7.0.0",
"@jupyterlab/builder": "^4.2.0",
"@jupyterlab/testutils": "^4.2.0",
"@stylistic/eslint-plugin": "^3.0.1",
"@types/jest": "^29",
"@types/react-dom": "^18.2.0",
"@typescript-eslint/eslint-plugin": "^4.8.1",
"@typescript-eslint/parser": "^4.8.1",
"eslint": "^7.14.0",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"eslint": "^8.56.0",
"eslint-config-prettier": "^6.15.0",
"eslint-plugin-prettier": "^3.1.4",
"jest": "^29",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,12 @@ import {
TextField,
InputAdornment
} from '@mui/material';
import {
Edit,
DeleteOutline,
Cancel,
Check,
Visibility,
VisibilityOff
} from '@mui/icons-material';
import Edit from '@mui/icons-material/Edit';
import DeleteOutline from '@mui/icons-material/DeleteOutline';
import Cancel from '@mui/icons-material/Cancel';
import Check from '@mui/icons-material/Check';
import Visibility from '@mui/icons-material/Visibility';
import VisibilityOff from '@mui/icons-material/VisibilityOff';
import { AsyncIconButton } from '../mui-extras/async-icon-button';

import { AiService } from '../../handler';
Expand Down
18 changes: 8 additions & 10 deletions packages/jupyter-ai/src/slash-autocompletion.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,14 @@ import {
AutocompleteCommand,
IAutocompletionCommandsProps
} from '@jupyter/chat';
import {
Download,
FindInPage,
Help,
MoreHoriz,
MenuBook,
School,
HideSource,
AutoFixNormal
} from '@mui/icons-material';
import Download from '@mui/icons-material/Download';
import FindInPage from '@mui/icons-material/FindInPage';
import Help from '@mui/icons-material/Help';
import MoreHoriz from '@mui/icons-material/MoreHoriz';
import MenuBook from '@mui/icons-material/MenuBook';
import School from '@mui/icons-material/School';
import HideSource from '@mui/icons-material/HideSource';
import AutoFixNormal from '@mui/icons-material/AutoFixNormal';
import { Box, Typography } from '@mui/material';
import React from 'react';
import { AiService } from './handler';
Expand Down
Loading

0 comments on commit 5b99b0f

Please sign in to comment.