11import type { PluginConfig } from '@code-pushup/models' ;
22import { name as packageName , version } from '../../package.json' ;
3- import {
4- AUDITS ,
5- DEFAULT_TS_CONFIG ,
6- GROUPS ,
7- TYPESCRIPT_PLUGIN_SLUG ,
8- } from './constants.js' ;
3+ import { AUDITS , DEFAULT_TS_CONFIG , GROUPS , TYPESCRIPT_PLUGIN_SLUG , } from './constants.js' ;
94import { createRunnerFunction } from './runner/runner.js' ;
10- import type { TypescriptPluginOptions } from './types.js' ;
5+ import type { AuditSlug , CompilerOptionName , TypescriptPluginOptions } from './types.js' ;
116import {
12- filterAuditsBySlug ,
7+ filterAuditsByTsOptions ,
138 filterGroupsByAuditSlug ,
9+ filterGroupsByByTsOptions ,
1410 getCurrentTsVersion ,
15- loadDefaultTsConfig ,
16- mergeTsConfigs
11+ loadDefaultTsConfig
1712} from './utils.js' ;
1813import { getTsConfigurationFromPath } from "./runner/typescript-runner.ts" ;
19- import { join , resolve } from "node:path" ;
20- import { formatDiagnosticsWithColorAndContext , parseJsonConfigFileContent , readConfigFile , sys } from "typescript" ;
14+ import { resolve } from "node:path" ;
15+ import {
16+ type CompilerOptions ,
17+ formatDiagnosticsWithColorAndContext ,
18+ parseJsonConfigFileContent ,
19+ readConfigFile ,
20+ sys ,
21+ } from "typescript" ;
22+ import { kebabCaseToCamelCase } from "@code-pushup/utils" ;
23+ import { filterAuditsBySlug } from './utils.js' ;
2124
2225export function mergeTsConfigs ( baseConfigPath : string , overrideConfigPath : string ) {
2326 // Read and parse the base configuration
@@ -66,13 +69,15 @@ export async function typescriptPlugin(
6669 existingConfig : defaultCompilerOptions
6770 } ) ;
6871
69- const compilerOptions = { ...defaultCompilerOptions , ...desiredCompilerOptions } ;
72+ // merges the defaultCompilerOptions of that TS Version with the compilerOptions configured by the user. EX: user vermatin could be undefined, but the default could be true
73+ const compilerOptions : CompilerOptions = { ...defaultCompilerOptions , ...desiredCompilerOptions } ;
74+
75+
7076
71- const filteredAudits = AUDITS //.filter(filterAuditsBySlug(onlyAudits))
72- // filter by active compilerOptions
73- // .filter();
77+ const filteredAudits = AUDITS
78+ . filter ( filterAuditsByTsOptions ( compilerOptions , onlyAudits ) )
7479
75- const filteredGroups = GROUPS . filter ( filterGroupsByAuditSlug ( onlyAudits ) ) ;
80+ const filteredGroups = GROUPS . filter ( filterGroupsByByTsOptions ( compilerOptions , onlyAudits ) ) ;
7681 return {
7782 slug : TYPESCRIPT_PLUGIN_SLUG ,
7883 packageName,
@@ -82,7 +87,7 @@ export async function typescriptPlugin(
8287 docsUrl : 'https://www.npmjs.com/package/@code-pushup/typescript-plugin/' ,
8388 icon : 'typescript' ,
8489 audits : filteredAudits ,
85- groups : filteredGroups ,
90+ // groups: filteredGroups,
8691 runner : createRunnerFunction ( {
8792 fileNames,
8893 compilerOptions,
0 commit comments