File tree 1 file changed +24
-1
lines changed
1 file changed +24
-1
lines changed Original file line number Diff line number Diff line change @@ -68,7 +68,30 @@ const pipeline = async (value: YamlConfigInstance, arrType: ArrType) => {
68
68
recylarrMergedTemplates . quality_profiles . push ( ...value . quality_profiles ) ;
69
69
}
70
70
71
- // TODO "real" merge missing of profiles?
71
+ const recyclarrProfilesMerged = recylarrMergedTemplates . quality_profiles . reduce < Map < string , YamlConfigQualityProfile > > ( ( p , c ) => {
72
+ const profile = p . get ( c . name ) ;
73
+
74
+ if ( profile == null ) {
75
+ p . set ( c . name , c ) ;
76
+ } else {
77
+ p . set ( c . name , {
78
+ ...profile ,
79
+ ...c ,
80
+ reset_unmatched_scores : {
81
+ enabled : c . reset_unmatched_scores ?. enabled ?? profile . reset_unmatched_scores ?. enabled ?? true ,
82
+ except : c . reset_unmatched_scores ?. except ?? profile . reset_unmatched_scores ?. except ,
83
+ } ,
84
+ upgrade : {
85
+ ...profile . upgrade ,
86
+ ...c . upgrade ,
87
+ } ,
88
+ } ) ;
89
+ }
90
+
91
+ return p ;
92
+ } , new Map ( ) ) ;
93
+
94
+ recylarrMergedTemplates . quality_profiles = Array . from ( recyclarrProfilesMerged . values ( ) ) ;
72
95
73
96
recylarrMergedTemplates . quality_profiles = filterInvalidQualityProfiles ( recylarrMergedTemplates . quality_profiles ) ;
74
97
You can’t perform that action at this time.
0 commit comments