in dev/import-beats/streams_config_parser.go [157:187]
func writeHandlebarsIfNode(ifNode *parse.IfNode, inputType string) []byte {
var buffer bytes.Buffer
if isIfNodeEqInput(ifNode) {
if isIfNodeEqInputInputType(ifNode, inputType) {
if ifNode.List != nil {
buffer.Write(configForInputForNode(ifNode.List, inputType))
}
} else {
if ifNode.ElseList != nil {
buffer.Write(configForInputForNode(ifNode.ElseList, inputType))
}
}
} else {
if len(ifNode.Pipe.Cmds[0].Args) == 1 {
var1 := ifNode.Pipe.Cmds[0].Args[0].String()[1:]
buffer.WriteString(fmt.Sprintf("{{#if %s}}", var1))
} else {
buffer.WriteString(fmt.Sprintf("{{#if %s}}", ifNode.Pipe.String()))
}
if ifNode.List != nil {
buffer.Write(configForInputForNode(ifNode.List, inputType))
}
if ifNode.ElseList != nil {
buffer.WriteString("{{else}}")
buffer.Write(configForInputForNode(ifNode.ElseList, inputType))
}
buffer.WriteString("{{/if}}")
}
return buffer.Bytes()
}