in dev/import-beats/variables.go [184:206]
func determineInputVariableType(name, v interface{}) string {
if arr, isArray := v.([]interface{}); isArray {
if len(arr) == 0 {
return "text" // array doesn't contain any items, assuming default type
}
return determineInputVariableType(name, arr[0])
}
if _, isBool := v.(bool); isBool {
return "bool"
} else if _, isInt := v.(int); isInt {
return "integer"
}
if name == "password" {
return "password"
}
if _, isString := v.(string); isString || v == nil {
return "text"
}
return "yaml"
}