From 96a0c266a043e5432c2f253d87fdd29b2359c76c Mon Sep 17 00:00:00 2001 From: Fred Reimer Date: Tue, 6 Aug 2024 17:39:01 +0000 Subject: [PATCH 1/2] retain comments from original files --- main.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index ba2e41e..1723a55 100644 --- a/main.go +++ b/main.go @@ -169,6 +169,9 @@ func handleObject() SectionHandler { pathCommentAlreadyAdded := false for _, m := range childSection.Value.(*jwcc.Object).Members { newMember := &jwcc.Member{Key: m.Key, Value: m.Value} + newMember.Comments().Before = m.Comments().Before + newMember.Comments().Line = m.Comments().Line + newMember.Comments().End = m.Comments().End newObj.Members = append(newObj.Members, newMember) if !pathCommentAlreadyAdded { @@ -204,15 +207,19 @@ func handleAutoApprovers() SectionHandler { func upsertMember[V *jwcc.Object | *jwcc.Array](doc *jwcc.Object, key string, val V) { keyAst := ast.String(key) index := doc.IndexKey(ast.TextEqual(key)) + newMember := &jwcc.Member{Key: keyAst.Quote(), Value: jwcc.Value(val)} + newMember.Comments().Before = jwcc.Value(val).Comments().Before + newMember.Comments().Line = jwcc.Value(val).Comments().Line + newMember.Comments().End = jwcc.Value(val).Comments().End if index != -1 { - doc.Members[index] = &jwcc.Member{Key: keyAst.Quote(), Value: jwcc.Value(val)} + doc.Members[index] = newMember } else { - doc.Members = append(doc.Members, &jwcc.Member{Key: keyAst.Quote(), Value: jwcc.Value(val)}) + doc.Members = append(doc.Members, newMember) } } func pathComment(val jwcc.Value, path string) { - val.Comments().Before = []string{fmt.Sprintf("from `%s`", path)} + val.Comments().Before = append([]string{fmt.Sprintf("from `%s`", path)}, val.Comments().Before...) } func mergeDocs(sections map[string]SectionHandler, parentDoc *ParsedDocument, childDocs []*ParsedDocument) error { From 5e34e13f7c35ecf7411eed14ee6fc85c12359636 Mon Sep 17 00:00:00 2001 From: Fred Reimer Date: Tue, 6 Aug 2024 17:41:45 +0000 Subject: [PATCH 2/2] formatting changes --- main.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/main.go b/main.go index 1723a55..d5c52ab 100644 --- a/main.go +++ b/main.go @@ -169,9 +169,9 @@ func handleObject() SectionHandler { pathCommentAlreadyAdded := false for _, m := range childSection.Value.(*jwcc.Object).Members { newMember := &jwcc.Member{Key: m.Key, Value: m.Value} - newMember.Comments().Before = m.Comments().Before - newMember.Comments().Line = m.Comments().Line - newMember.Comments().End = m.Comments().End + newMember.Comments().Before = m.Comments().Before + newMember.Comments().Line = m.Comments().Line + newMember.Comments().End = m.Comments().End newObj.Members = append(newObj.Members, newMember) if !pathCommentAlreadyAdded { @@ -207,10 +207,10 @@ func handleAutoApprovers() SectionHandler { func upsertMember[V *jwcc.Object | *jwcc.Array](doc *jwcc.Object, key string, val V) { keyAst := ast.String(key) index := doc.IndexKey(ast.TextEqual(key)) - newMember := &jwcc.Member{Key: keyAst.Quote(), Value: jwcc.Value(val)} - newMember.Comments().Before = jwcc.Value(val).Comments().Before - newMember.Comments().Line = jwcc.Value(val).Comments().Line - newMember.Comments().End = jwcc.Value(val).Comments().End + newMember := &jwcc.Member{Key: keyAst.Quote(), Value: jwcc.Value(val)} + newMember.Comments().Before = jwcc.Value(val).Comments().Before + newMember.Comments().Line = jwcc.Value(val).Comments().Line + newMember.Comments().End = jwcc.Value(val).Comments().End if index != -1 { doc.Members[index] = newMember } else {