package
1.6.1
Repository: https://github.com/danspts/helmdocs.git
Documentation: pkg.go.dev

# README

package readme

import ( "fmt" "strings"

"github.com/danspts/helmdocs/pkg/parse"
"github.com/danspts/helmdocs/pkg/types"

)

func GenerateReadme(schema types.Schema) string { var sb strings.Builder

// Initialize the table headers
sb.WriteString("| Name | Title | Type | Required | Default |\n")
sb.WriteString("|------|-------|------|----------|---------|\n")

tree := parse.ConvertTableToFieldTree(types.Property{Schema: schema}, "")
flatList := tree.Flatten()
for _, field := range flatList {
	typeDetails := field.TypeDetails
	if len(typeDetails) > 0 {
		typeDetails = " " + typeDetails
	}
	if field.ParentFullName == "" {
		sb.WriteString(fmt.Sprintf("| `%s` | %s | **%s**%s | %v | %s |\n", field.Name, field.Title, field.Type, field.TypeDetails, field.Required, field.DefaultValue))

	} else {
		sb.WriteString(fmt.Sprintf("| `%s.%s` | %s | **%s**%s | %v | %s |\n", field.ParentFullName, field.Name, field.Title, field.Type, field.TypeDetails, field.Required, field.DefaultValue))
	}
}
return sb.String()

}