in cmd/flatten-approvals/main.go [57:83]
func transform(filepath string) error {
var input struct {
Events []map[string]any `json:"events"`
}
if err := decodeJSONFile(filepath, &input); err != nil {
return fmt.Errorf("could not read existing approved events file: %w", err)
}
out := make([]map[string][]any, 0, len(input.Events))
for _, event := range input.Events {
fields := make(map[string][]any)
flattenFields("", event, fields)
out = append(out, fields)
}
var w io.Writer = os.Stdout
if *inplace {
f, err := os.Create(filepath)
if err != nil {
return err
}
defer f.Close()
w = f
}
enc := json.NewEncoder(w)
enc.SetIndent("", " ")
return enc.Encode(out)
}