File tree 1 file changed +3
-4
lines changed
1 file changed +3
-4
lines changed Original file line number Diff line number Diff line change @@ -30,11 +30,10 @@ export const mergeTrees = (tree1: ParserTree, tree2: ParserTree) => {
30
30
const mergedNodesT2 : ParserField [ ] = [ ] ;
31
31
const mergeResultNodes : ParserField [ ] = [ ] ;
32
32
const errors : Array < { conflictingNode : string ; conflictingField : string } > = [ ] ;
33
+ const filteredTree2Nodes = tree2 . nodes . filter ( ( t ) => t . data . type !== TypeSystemDefinition . SchemaDefinition ) ;
33
34
// merge nodes
34
35
tree1 . nodes . forEach ( ( t1n ) => {
35
- const matchingNode = tree2 . nodes
36
- . filter ( ( t ) => t . data . type !== TypeSystemDefinition . SchemaDefinition )
37
- . find ( ( t2n ) => t2n . name === t1n . name && t1n . data . type === t2n . data . type ) ;
36
+ const matchingNode = filteredTree2Nodes . find ( ( t2n ) => t2n . name === t1n . name && t1n . data . type === t2n . data . type ) ;
38
37
if ( matchingNode ) {
39
38
if ( isExtensionNode ( matchingNode . data . type ) ) {
40
39
t1n . args . forEach ( ( t1nA ) => {
@@ -76,7 +75,7 @@ export const mergeTrees = (tree1: ParserTree, tree2: ParserTree) => {
76
75
} ;
77
76
}
78
77
const t1Nodes = tree1 . nodes . filter ( ( t1n ) => ! mergedNodesT1 . find ( ( mtn1 ) => mtn1 === t1n ) ) ;
79
- const t2Nodes = tree2 . nodes
78
+ const t2Nodes = filteredTree2Nodes
80
79
. filter ( ( t2n ) => ! mergedNodesT2 . find ( ( mtn2 ) => mtn2 === t2n ) )
81
80
. map ( ( n ) => ( { ...n , fromLibrary : true } ) ) ;
82
81
return {
You can’t perform that action at this time.
0 commit comments