mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 01:38:56 -04:00
use field formattor to format list options (#16804)
This commit is contained in:
parent
5408900ba9
commit
5cacfb9b31
3 changed files with 14 additions and 1 deletions
|
@ -26,6 +26,15 @@ export class Control {
|
|||
throw new Error('fetch method not defined, subclass are required to implement');
|
||||
}
|
||||
|
||||
format(value) {
|
||||
const field = this.filterManager.getField();
|
||||
if (field) {
|
||||
return field.format.convert(value);
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param ancestors {array of Controls}
|
||||
|
|
|
@ -14,6 +14,10 @@ export class FilterManager {
|
|||
return this.indexPattern;
|
||||
}
|
||||
|
||||
getField() {
|
||||
return this.indexPattern.fields.byName[this.fieldName];
|
||||
}
|
||||
|
||||
createFilter() {
|
||||
throw new Error('Must implement createFilter.');
|
||||
}
|
||||
|
|
|
@ -78,7 +78,7 @@ class ListControl extends Control {
|
|||
|
||||
const resp = await searchSource.fetch();
|
||||
const selectOptions = _.get(resp, 'aggregations.termsAgg.buckets', []).map((bucket) => {
|
||||
return { label: bucket.key.toString(), value: bucket.key.toString() };
|
||||
return { label: this.format(bucket.key), value: bucket.key.toString() };
|
||||
}).sort((a, b) => {
|
||||
return a.label.toLowerCase().localeCompare(b.label.toLowerCase());
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue