diff --git a/configs/babel.js b/configs/babel.js index c5cee70..c67bed5 100644 --- a/configs/babel.js +++ b/configs/babel.js @@ -1,5 +1,9 @@ +let _ = require('lodash'); let _basic = require('./basic'); +// see https://github.com/eslint/eslint/issues/12592 +_basic = _.cloneDeep(_basic); + module.exports = { parser: 'babel-eslint', diff --git a/configs/typescript-eslint-recommended.js b/configs/typescript-eslint-recommended.js index fc2db4f..e59ff8c 100644 --- a/configs/typescript-eslint-recommended.js +++ b/configs/typescript-eslint-recommended.js @@ -1,10 +1,13 @@ /* eslint-disable lodash/prefer-lodash-method */ +let _ = require('lodash'); let _basic = require('./basic'); let _recommended = require('@typescript-eslint/eslint-plugin/dist/configs/recommended.json'); -// poor man's _.cloneDeep -let _restoreBasicOverrides = JSON.parse(JSON.stringify(_recommended)); +// see https://github.com/eslint/eslint/issues/12592 +_basic = _.cloneDeep(_basic); + +let _restoreBasicOverrides = _.cloneDeep(_recommended); let filterObject = function(obj, predicate) { // eslint-disable-next-line fp/no-mutating-assign diff --git a/configs/typescript.js b/configs/typescript.js index a25fe02..64dff01 100644 --- a/configs/typescript.js +++ b/configs/typescript.js @@ -14,6 +14,11 @@ let _basic = require('./basic'); let _babel = require('./babel'); let _restoreBasicOverrides = require('./typescript-eslint-recommended'); +// see https://github.com/eslint/eslint/issues/12592 +_basic = _.cloneDeep(_basic); +_babel = _.cloneDeep(_babel); + + module.exports = { extends: [ 'plugin:@typescript-eslint/recommended'