func writeData()

in internal/renderers/json/json.go [26:53]


func writeData(data [][]string, fileName, extension string) {
	filename := fmt.Sprintf("%s.%s.json", fileName, extension)
	log.Info().Msgf("Generating Report: %s", filename)

	f, err := os.Create(filename)
	if err != nil {
		log.Fatal().Err(err).Msg("error creating json:")
	}
	
	defer func() {
		// Handle error during file close
		if cerr := f.Close(); cerr != nil {
			log.Fatal().Err(cerr).Msg("error closing file:")
		}
	}()

	jsonData := convertToJSON(data)

	js, err := json.MarshalIndent(jsonData, "", "\t")
	if err != nil {
		log.Fatal().Err(err).Msg("error marshaling data:")
	}

	_, err = f.Write(js)
	if err != nil {
		log.Fatal().Err(err).Msg("error writing json:")
	}
}