import simpleImportSort from 'eslint-plugin-simple-import-sort'; export default { files: ['**/*.{js,mjs,cjs,ts,vue}'], plugins: { 'simple-import-sort': simpleImportSort, }, rules: { 'simple-import-sort/imports': [ 'error', { groups: [ ['./polyfills'], ['^(node)(:.*|$)'], // Node.js builtins. You could also generate this regex if you use a `.js` config. // For example: `^(${require("module").builtinModules.join("|")})(/|$)` [ '^(assert|buffer|child_process|cluster|console|constants|crypto|dgram|dns|domain|events|fs|http|https|module|net|os|path|punycode|querystring|readline|repl|stream|string_decoder|sys|timers|tls|tty|url|util|vm|zlib|freelist|v8|process|async_hooks|http2|perf_hooks)(/.*|$)', ], // Packages. `react|vue` related packages come first. ['^(react|vue|vite|vitest)', '^@?\\w'], ['^(@tencent)(/.*|$)'], ['^(@tmagic)(/.*|$)'], // Internal packages. ['^(@|@editor|@data-source)(/.*|$)'], // Side effect imports. ['^\\u0000'], // Parent imports. Put `..` last. ['^\\.\\.(?!/?$)', '^\\.\\./?$'], // Other relative imports. Put same-folder imports and `.` last. ['^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'], // Style imports. ['^.+\\.s?css$'], ], }, ], }, };