372
}
373
374
>
func buildMappingBody(mapping map[string]enumspb.IndexedValueType) map[string]any {
client_v7.go
375
>
properties := make(map[string]any, len(mapping))
376
>
for fieldName, fieldType := range mapping {
377
>
var typeMap map[string]any
378
>
switch fieldType {
379
>
case enumspb.INDEXED_VALUE_TYPE_TEXT:
380
>
typeMap = map[string]any{"type": "text"}
381
>
case enumspb.INDEXED_VALUE_TYPE_KEYWORD, enumspb.INDEXED_VALUE_TYPE_KEYWORD_LIST:
382
>
typeMap = map[string]any{"type": "keyword"}
383
>
case enumspb.INDEXED_VALUE_TYPE_INT:
384
>
typeMap = map[string]any{"type": "long"}
385
>
case enumspb.INDEXED_VALUE_TYPE_DOUBLE:
386
>
typeMap = map[string]any{
387
>
"type": "scaled_float",
388
>
"scaling_factor": 10000,
389
>
}
390
>
case enumspb.INDEXED_VALUE_TYPE_BOOL:
391
>
typeMap = map[string]any{"type": "boolean"}
392
>
case enumspb.INDEXED_VALUE_TYPE_DATETIME:
393
>
typeMap = map[string]any{"type": "date_nanos"}
394
}
396
>
properties[fieldName] = typeMap
397
>
}
398
}
399
401
>
"properties": properties,
402
>
}
403
>
return body
404
}
405