b27a97f2c5
## Summary This PR enforces the use of `@/` alias for imports instead of relative parent imports (`../`). ## Changes ### ESLint Configuration - Added `no-restricted-imports` pattern in `eslint.config.react.mjs` to block `../*` imports with the message "Relative parent imports are not allowed. Use @/ alias instead." - Removed the non-working `import/no-relative-parent-imports` rule (doesn't work properly in ESLint flat config) ### VS Code Settings - Added `javascript.preferences.importModuleSpecifier: non-relative` to `.vscode/settings.json` (TypeScript setting was already there) ### Code Fixes - Fixed **941 relative parent imports** across **706 files** in `packages/twenty-front` - All `../` imports converted to use `@/` alias ## Why - Consistent import style across the codebase - Easier to move files without breaking imports - Better IDE support for auto-imports - Clearer understanding of where imports come from
58 lines
1.5 KiB
JSON
58 lines
1.5 KiB
JSON
{
|
|
"editor.formatOnSave": false,
|
|
"files.eol": "\n",
|
|
"files.insertFinalNewline": true,
|
|
"files.trimTrailingWhitespace": true,
|
|
"[typescript]": {
|
|
"editor.formatOnSave": false,
|
|
"editor.codeActionsOnSave": {
|
|
"source.fixAll.eslint": "explicit",
|
|
"source.addMissingImports": "always",
|
|
"source.organizeImports": "always"
|
|
}
|
|
},
|
|
"[javascript]": {
|
|
"editor.formatOnSave": false,
|
|
"editor.codeActionsOnSave": {
|
|
"source.fixAll.eslint": "explicit",
|
|
"source.addMissingImports": "always",
|
|
"source.organizeImports": "always"
|
|
}
|
|
},
|
|
"[typescriptreact]": {
|
|
"editor.formatOnSave": false,
|
|
"editor.codeActionsOnSave": {
|
|
"source.fixAll.eslint": "explicit",
|
|
"source.addMissingImports": "always",
|
|
"source.organizeImports": "always"
|
|
}
|
|
},
|
|
"[json]": {
|
|
"editor.formatOnSave": true
|
|
},
|
|
"javascript.format.enable": false,
|
|
"javascript.preferences.importModuleSpecifier": "non-relative",
|
|
"typescript.format.enable": false,
|
|
"cSpell.enableFiletypes": [
|
|
"!javascript",
|
|
"!json",
|
|
"!typescript",
|
|
"!typescriptreact",
|
|
"md",
|
|
"mdx"
|
|
],
|
|
"cSpell.words": [
|
|
"twentyhq"
|
|
],
|
|
"typescript.preferences.importModuleSpecifier": "non-relative",
|
|
"search.exclude": {
|
|
"**/.yarn": true
|
|
},
|
|
"eslint.debug": true,
|
|
"files.associations": {
|
|
".cursorrules": "markdown"
|
|
},
|
|
"jestrunner.codeLensSelector": "**/*.{test,spec,integration-spec}.{js,jsx,ts,tsx}",
|
|
"typescript.tsdk": "node_modules/typescript/lib"
|
|
}
|