Skip to content

Commit

Permalink
feat: enable sonar for eslint/tslint, refactor dependencies declaration
Browse files Browse the repository at this point in the history
  • Loading branch information
JounQin committed Oct 31, 2019
1 parent 618a6c4 commit a27422f
Show file tree
Hide file tree
Showing 27 changed files with 122 additions and 95 deletions.
3 changes: 3 additions & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "@1stg/eslint-config/recommended"
}
8 changes: 0 additions & 8 deletions .eslintrc.js

This file was deleted.

14 changes: 6 additions & 8 deletions packages/babel-preset/index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/* eslint-disable node/no-extraneous-require */
/* eslint-disable sonarjs/cognitive-complexity */
const { declare } = require('@babel/helper-plugin-utils')
const { isPkgAvailable } = require('@pkgr/utils')

const DEFAULT_ANTD_OPTIONS = {
libraryName: 'antd',
Expand Down Expand Up @@ -126,12 +127,6 @@ module.exports = declare(
}
}

let reactHotLoaderAvailable = false

try {
reactHotLoaderAvailable = !!require.resolve('react-hot-loader/babel')
} catch (e) {}

const reactPreset = [
require('@babel/preset-react'),
{
Expand All @@ -145,7 +140,10 @@ module.exports = declare(
removeImport: true,
},
]
: isDev && reactHotLoaderAvailable && require('react-hot-loader/babel')
: isDev &&
isPkgAvailable('react-hot-loader/babel') &&
// eslint-disable-next-line node/no-missing-require
require('react-hot-loader/babel')

if (react) {
presets.push(reactPreset)
Expand Down
7 changes: 4 additions & 3 deletions packages/babel-preset/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"node": ">=4.0.0"
},
"peerDependencies": {
"@babel/core": "^7.6.2"
"@babel/core": ">=7.6.0"
},
"dependencies": {
"@babel/helper-plugin-utils": "^7.0.0",
Expand All @@ -18,14 +18,15 @@
"@babel/preset-env": "^7.6.3",
"@babel/preset-react": "^7.6.3",
"@babel/preset-typescript": "^7.6.0",
"@pkgr/utils": "^0.2.0",
"@vue/babel-helper-vue-jsx-merge-props": "^1.0.0",
"@vue/babel-preset-jsx": "^1.1.0",
"@vue/babel-preset-jsx": "^1.1.1",
"babel-plugin-import": "^1.12.2",
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
"babel-plugin-transform-remove-console": "^6.9.4",
"babel-plugin-transform-typescript-metadata": "^0.2.2",
"babel-preset-proposal-typescript": "^1.4.5",
"core-js": "^3.2.1",
"core-js": "^3.3.5",
"fast-async": "^7.0.6"
},
"publishConfig": {
Expand Down
2 changes: 1 addition & 1 deletion packages/browserslist-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"browserslist": "^4.7.1"
"browserslist": ">=4.0.0"
},
"publishConfig": {
"access": "public"
Expand Down
10 changes: 2 additions & 8 deletions packages/commitlint-config/index.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,10 @@
let isLernaAvailable

try {
// eslint-disable-next-line node/no-extraneous-require
isLernaAvailable = !!require.resolve('lerna')
} catch (e) {}

const { isPkgAvailable } = require('@pkgr/utils')
const conventionalConfig = require('@commitlint/config-conventional')
const lernaScopesConfig = require('@commitlint/config-lerna-scopes')

const MERGE_PROPERTIES = ['rules', 'utils']

module.exports = isLernaAvailable
module.exports = isPkgAvailable('lerna')
? Object.assign(
{},
conventionalConfig,
Expand Down
7 changes: 3 additions & 4 deletions packages/commitlint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,11 @@
"repository": "git@github.com:1stG/configs.git",
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"@commitlint/cli": "^8.2.0"
},
"dependencies": {
"@commitlint/cli": "^8.2.0",
"@commitlint/config-conventional": "^8.2.0",
"@commitlint/config-lerna-scopes": "^8.2.0"
"@commitlint/config-lerna-scopes": "^8.2.0",
"@pkgr/utils": "^0.2.0"
},
"publishConfig": {
"access": "public"
Expand Down
2 changes: 2 additions & 0 deletions packages/eslint-config/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,15 @@ const {
module.exports = {
extends: [
'eslint:recommended',
'plugin:sonarjs/recommended',
'plugin:import/recommended',
'plugin:node/recommended',
'plugin:promise/recommended',
'standard',
'plugin:prettier/recommended',
'prettier/standard',
],
plugins: ['sonarjs'],
settings: {
node: {
allowModules,
Expand Down
14 changes: 14 additions & 0 deletions packages/eslint-config/loose.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
module.exports = {
extends: ['@1stg/eslint-config/recommended'],
rules: {
'@typescript-eslint/no-explicit-any': 0,
'@typescript-eslint/no-floating-promises': 0,
'@typescript-eslint/no-magic-numbers': 0,
'@typescript-eslint/no-unnecessary-condition': 0,
'@typescript-eslint/restrict-plus-operands': 0,
'@typescript-eslint/unbound-method': 0,
'no-magic-numbers': 0,
'promise/always-return': 0,
'promise/catch-or-return': 0,
},
}
1 change: 1 addition & 0 deletions packages/eslint-config/overrides.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
/* eslint-disable sonarjs/no-duplicate-string */
const fs = require('fs')
const { resolve } = require('path')

Expand Down
3 changes: 2 additions & 1 deletion packages/eslint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"eslint": "^6.6.0"
"eslint": ">=6.6.0"
},
"dependencies": {
"@pkgr/utils": "^0.2.0",
Expand All @@ -22,6 +22,7 @@
"eslint-formatter-friendly": "^7.0.0",
"eslint-import-resolver-ts": "^0.4.2",
"eslint-plugin-babel": "^5.3.0",
"eslint-plugin-sonarjs": "^0.4.0",
"eslint-plugin-import": "^2.18.2",
"eslint-plugin-jest": "^23.0.2",
"eslint-plugin-mdx": "^1.6.1",
Expand Down
3 changes: 3 additions & 0 deletions packages/husky-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"husky": ">=3.0.0"
},
"dependencies": {
"@commitlint/cli": "^8.2.0",
"lint-staged": "^9.4.2"
},
Expand Down
4 changes: 2 additions & 2 deletions packages/lint-staged/base.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
/* eslint-disable sonarjs/no-duplicate-string */
const { isPkgAvailable } = require('@pkgr/utils')

const config = {
'*.{js,jsx,md,mdx,mjs,vue}': ['eslint --cache -f friendly --fix', 'git add'],
'*.{*ignore,*sh,env,env.*,gql,html,json,pug,vue,toml,yaml,yml}': [
'*.{*ignore,*sh,env,env.*,gql,html,json,properties,pug,vue,toml,yaml,yml}': [
'prettier --write',
'git add',
],
Expand Down
21 changes: 13 additions & 8 deletions packages/lint-staged/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,20 @@ const { isPkgAvailable, tryFile } = require('@pkgr/utils')

const config = Object.assign({}, require('./base'))

const eslint = isPkgAvailable('eslint')

const tslint = isPkgAvailable('tslint') && tryFile('tslint.json')
if (isPkgAvailable('eslint')) {
Object.assign(
config,
{
'*.{js,jsx,md,mdx,mjs,vue}': [
'eslint --cache -f friendly --fix',
'git add',
],
},
require('./ts-eslint'),
)
}

if (eslint && tslint) {
Object.assign(config, require('./ts-eslint'), require('./ts-tslint'))
} else if (eslint) {
Object.assign(config, require('./ts-eslint'))
} else if (tslint) {
if (isPkgAvailable('tslint') && tryFile('tslint.json')) {
Object.assign(config, require('./ts-tslint'))
}

Expand Down
7 changes: 3 additions & 4 deletions packages/lint-staged/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,13 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"eslint": "^6.6.0",
"lint-staged": "^9.4.2",
"prettier": "^1.18.2"
"lint-staged": ">=9.0.0"
},
"dependencies": {
"@pkgr/utils": "^0.1.2",
"@pkgr/utils": "^0.2.0",
"@prettier/plugin-pug": "^1.0.5",
"cross-env": "^6.0.3",
"prettier": "^1.18.2",
"prettier-plugin-sh": "^0.2.1",
"prettier-plugin-toml": "^0.3.1"
},
Expand Down
2 changes: 1 addition & 1 deletion packages/postcss-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"node": ">=4.0.0"
},
"peerDependencies": {
"postcss": "^7.0.18"
"postcss": ">=7.0.0"
},
"dependencies": {
"autoprefixer": "^9.7.0",
Expand Down
6 changes: 3 additions & 3 deletions packages/prettier-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"prettier": "^1.18.2"
"prettier": ">=1.18.0"
},
"dependencies": {
"@prettier/plugin-pug": "^1.0.4",
"@prettier/plugin-pug": "^1.0.5",
"prettier-plugin-pkg": "^0.4.4",
"prettier-plugin-sh": "^0.2.1",
"prettier-plugin-sh": "^0.2.2",
"prettier-plugin-toml": "^0.3.1"
},
"publishConfig": {
Expand Down
5 changes: 4 additions & 1 deletion packages/stylelint-config/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ module.exports = {
'selector-pseudo-element-no-unknown': [
true,
{
ignorePseudoElements: [isAngularAvailable ? 'ng-deep' : 'v-deep'],
ignorePseudoElements: [
isAngularAvailable && 'ng-deep',
isVueAvailable && 'v-deep',
].filter(Boolean),
},
],
},
Expand Down
4 changes: 2 additions & 2 deletions packages/stylelint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
"author": "JounQin <admin@1stg.me>",
"license": "MIT",
"peerDependencies": {
"stylelint": "^11.1.1"
"stylelint": ">=11.0.0"
},
"dependencies": {
"@pkgr/utils": "^0.1.2",
"@pkgr/utils": "^0.2.0",
"stylelint-config-prettier": "^6.0.0",
"stylelint-config-standard": "^19.0.0",
"stylelint-high-performance-animation": "^1.3.0",
Expand Down
7 changes: 6 additions & 1 deletion packages/stylelint-config/scss.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,12 @@ module.exports = {
'scss/at-import-partial-extension-blacklist': ['sass', 'scss'],
'scss/at-mixin-argumentless-call-parentheses': 'never',
'scss/at-rule-no-unknown': true,
'scss/dollar-variable-default': true,
'scss/dollar-variable-default': [
true,
{
ignore: 'local',
},
],
'scss/dollar-variable-no-missing-interpolation': true,
'scss/declaration-nested-properties': [
'always',
Expand Down
3 changes: 0 additions & 3 deletions packages/tsconfig/angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@
"extends": "./app.json",
"compilerOptions": {
"emitDecoratorMetadata": true,
"paths": {
"*": ["src/app/*"]
},
"target": "es2015"
},
"angularCompilerOptions": {
Expand Down
15 changes: 2 additions & 13 deletions packages/tsconfig/app.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,12 @@
"declaration": false,
"declarationMap": false,
"paths": {
"dayjs": [
"dayjs/esm"
],
"dayjs/*": [
"dayjs/esm/*"
],
"lodash": [
"lodash-es"
],
"moment": [
"dayjs/esm"
],
"*": [
"src/*"
]
},
"outDir": "dist",
"strictFunctionTypes": false
"strictFunctionTypes": false,
"strictNullChecks": false
}
}
2 changes: 1 addition & 1 deletion packages/tsconfig/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"license": "MIT",
"main": "tsconfig.json",
"peerDependencies": {
"typescript": ">=3.5.3"
"typescript": ">=3.0.0"
},
"optionalDependencies": {
"tslib": "^1.10.0"
Expand Down
7 changes: 4 additions & 3 deletions packages/tslint-config/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
"license": "MIT",
"main": "tslint.json",
"peerDependencies": {
"tslint": "^5.20.0",
"typescript": ">=3.5.3"
"tslint": ">=5.0.0",
"typescript": ">=3.0.0"
},
"dependencies": {
"codelyzer": "^5.2.0",
Expand All @@ -17,7 +17,8 @@
"tslint-config-eslint": "^0.1.1",
"tslint-config-prettier": "^1.18.0",
"tslint-plugin-prettier": "^2.0.1",
"tslint-react": "^4.1.0"
"tslint-react": "^4.1.0",
"tslint-sonarts": "^1.9.0"
},
"publishConfig": {
"access": "public"
Expand Down
Loading

0 comments on commit a27422f

Please sign in to comment.