imports.js (3052B)
1 'use strict'; 2 3 module.exports = { 4 plugins: ['import'], 5 rules: { 6 'import/no-unresolved': ['error', {commonjs: true, amd: true}], 7 'import/named': 'error', 8 'import/default': 'error', 9 'import/namespace': 'error', 10 // 'import/no-restricted-paths)', // may be add sometime 11 'import/no-absolute-path': 'error', 12 'import/no-dynamic-require': 'error', 13 // 'import/no-internal-modules': 'error', // checked, declined 14 'import/no-webpack-loader-syntax': 'error', 15 'import/no-self-import': 'error', 16 'import/no-cycle': 'error', 17 'import/no-useless-path-segments': ['error', {noUselessIndex: true}], 18 // 'import/no-relative-parent-imports': 'error', // checked, declined 19 'import/export': 'error', 20 'import/no-named-as-default': 'error', 21 'import/no-named-as-default-member': 'error', 22 'import/no-deprecated': 'error', 23 'import/no-extraneous-dependencies': [ 24 'error', 25 { 26 devDependencies: false, 27 optionalDependencies: false, 28 peerDependencies: false, 29 bundledDependencies: false, 30 }, 31 ], 32 'import/no-mutable-exports': 'error', 33 'import/no-unused-modules': ['error', {missingExports: true, unusedExports: true}], 34 'import/unambiguous': 'error', 35 'import/no-commonjs': 'error', 36 'import/no-amd': 'error', 37 'import/first': 'error', 38 'import/exports-last': 'error', 39 'import/no-duplicates': 'error', 40 // 'import/no-namespace': 'error', // checked, declined 41 'import/extensions': ['error', 'always', {js: 'never'}], 42 'import/order': [ 43 'error', 44 { 45 'groups': [['builtin', 'external'], 'internal', ['parent', 'sibling', 'index'], 'object', 'unknown'], 46 'pathGroups': [{pattern: '~/**', group: 'internal'}], 47 'newlines-between': 'always', 48 'alphabetize': {order: 'asc', caseInsensitive: true}, 49 }, 50 ], 51 'import/newline-after-import': 'error', 52 // 'import/prefer-default-export': 'error', // checked, declined 53 // 'import/max-dependencies': 'error', // checked, declined 54 'import/no-unassigned-import': 'error', 55 'import/no-named-default': 'error', 56 // 'import/no-default-export': 'error', // checked, declined 57 // 'import/no-named-export': 'error', // checked, declined 58 'import/no-anonymous-default-export': 'error', 59 'import/group-exports': 'error', 60 // 'import/dynamic-import-chunkname': 'error', // checked, no idea why to use 61 }, 62 settings: { 63 'import/resolver': { 64 node: {}, // workaround for https://github.com/benmosher/eslint-plugin-import/issues/1861 65 webpack: { 66 config: './webpack/webpack.config.js', 67 env: { 68 NODE_ENV: 'production', 69 }, 70 }, 71 }, 72 }, 73 };