@@ -182,14 +182,64 @@ function getJavascriptConfig() {
182182 return configs [ "javascript/recommended" ] ;
183183}
184184
185+ function getTypescriptJsdocConfig ( ) {
186+ if ( typeof packageJson . dependencies === "undefined" ) {
187+ return [ ] ;
188+ }
189+
190+ if (
191+ typeof packageJson . dependencies . typescript === "undefined" &&
192+ typeof packageJson . devDependencies . typescript === "undefined"
193+ ) {
194+ return [ ] ;
195+ }
196+
197+ return configs [ "typescript/jsdoc" ] ;
198+ }
199+
200+ function getJestConfig ( ) {
201+ if ( typeof packageJson . dependencies === "undefined" ) {
202+ return [ ] ;
203+ }
204+
205+ if (
206+ typeof packageJson . dependencies . jest === "undefined" &&
207+ typeof packageJson . devDependencies . jest === "undefined"
208+ ) {
209+ return [ ] ;
210+ }
211+
212+ return configs [ "jest/recommended" ] ;
213+ }
214+
185215configs . recommended = [
186216 globalIgnores ( ignorePaths ) ,
187217 isModule
188218 ? configs [ "node/mixed-module-and-commonjs" ]
189219 : configs [ "node/mixed-commonjs-and-module" ] ,
190220 getJavascriptConfig ( ) ,
191- configs [ "typescript/jsdoc" ] ,
192- configs [ "jest/recommended" ] ,
221+ getTypescriptJsdocConfig ( ) ,
222+ getJestConfig ( ) ,
223+ configs [ "markdown/recommended" ] ,
224+ configs [ "stylistic/recommended" ] ,
225+ ] ;
226+
227+ configs [ "recommended-module" ] = [
228+ globalIgnores ( ignorePaths ) ,
229+ configs [ "node/mixed-module-and-commonjs" ] ,
230+ getJavascriptConfig ( ) ,
231+ getTypescriptJsdocConfig ( ) ,
232+ getJestConfig ( ) ,
233+ configs [ "markdown/recommended" ] ,
234+ configs [ "stylistic/recommended" ] ,
235+ ] ;
236+
237+ configs [ "recommended-commonjs" ] = [
238+ globalIgnores ( ignorePaths ) ,
239+ configs [ "node/mixed-commonjs-and-module" ] ,
240+ getJavascriptConfig ( ) ,
241+ getTypescriptJsdocConfig ( ) ,
242+ getJestConfig ( ) ,
193243 configs [ "markdown/recommended" ] ,
194244 configs [ "stylistic/recommended" ] ,
195245] ;
@@ -198,8 +248,8 @@ configs["recommended-dirty"] = [
198248 globalIgnores ( ignorePaths ) ,
199249 configs [ "node/mixed-dirty" ] ,
200250 getJavascriptConfig ( ) ,
201- configs [ "typescript/jsdoc" ] ,
202- configs [ "jest/recommended" ] ,
251+ getTypescriptJsdocConfig ( ) ,
252+ getJestConfig ( ) ,
203253 configs [ "markdown/recommended" ] ,
204254 configs [ "stylistic/recommended" ] ,
205255] ;
0 commit comments