1- import { FoundTSLintRules } from "./input/findTslintRules " ;
1+ import { TSLintConfiguration } from "./input/findTslintConfiguration " ;
22import { ProcessLogger } from "./logger" ;
33import { reportConversionResults } from "./reportConversionResults" ;
44import { convertRules , ConfigConversionResults } from "./rules/convertRules" ;
55import { converters } from "./rules/converters" ;
66import { TSLintToESLintSettings , TSLintToESLintResult , ResultStatus } from "./types" ;
77
8- export type CreateNewConfiguration = ( conversionResults : ConfigConversionResults ) => Promise < void > ;
8+ export type CreateNewConfiguration = (
9+ conversionResults : ConfigConversionResults ,
10+ originalConfiguration : TSLintConfiguration ,
11+ ) => Promise < void > ;
912
1013export type FileExists = ( filePath : string ) => Promise < boolean > ;
1114
12- export type RuleFinder = ( config : string ) => Promise < FoundTSLintRules | Error > ;
15+ export type findTslintConfiguration = ( config : string ) => Promise < TSLintConfiguration | Error > ;
1316
1417export type ConvertConfigRequest = {
1518 createNewConfiguration : CreateNewConfiguration ;
1619 fileExists : FileExists ;
20+ findTslintConfiguration : findTslintConfiguration ;
1721 logger : ProcessLogger ;
18- ruleFinder : RuleFinder ;
1922 settings : TSLintToESLintSettings ;
2023} ;
2124
2225export const convertConfig = async ( {
2326 createNewConfiguration,
2427 fileExists,
28+ findTslintConfiguration,
2529 logger,
26- ruleFinder,
2730 settings,
2831} : ConvertConfigRequest ) : Promise < TSLintToESLintResult > => {
2932 const { config = "./tslint.json" } = settings ;
@@ -34,23 +37,23 @@ export const convertConfig = async ({
3437 } ;
3538 }
3639
37- const originalRules = await ruleFinder ( config ) ;
38- if ( originalRules instanceof Error ) {
40+ const originalConfiguration = await findTslintConfiguration ( config ) ;
41+ if ( originalConfiguration instanceof Error ) {
3942 return {
40- error : originalRules ,
43+ error : originalConfiguration ,
4144 status : ResultStatus . Failed ,
4245 } ;
4346 }
4447
4548 const convertedRules = convertRules (
46- Object . entries ( originalRules . rules ) . map ( ( [ ruleName , value ] ) => ( {
49+ Object . entries ( originalConfiguration . rules ) . map ( ( [ ruleName , value ] ) => ( {
4750 ruleName,
4851 ...value ,
4952 } ) ) ,
5053 converters ,
5154 ) ;
5255
53- await createNewConfiguration ( convertedRules ) ;
56+ await createNewConfiguration ( convertedRules , originalConfiguration ) ;
5457 reportConversionResults ( convertedRules , logger ) ;
5558
5659 return {
0 commit comments