Skip to content

[9.3] [filters] type meta.value as string or object (#253537)#254294

Merged
kibanamachine merged 1 commit intoelastic:9.3from
kibanamachine:backport/9.3/pr-253537
Feb 20, 2026
Merged

[9.3] [filters] type meta.value as string or object (#253537)#254294
kibanamachine merged 1 commit intoelastic:9.3from
kibanamachine:backport/9.3/pr-253537

Conversation

@kibanamachine
Copy link
Copy Markdown
Contributor

Backport

This will backport the following commits from main to 9.3:

Questions ?

Please refer to the Backport tool documentation

Fixes elastic#253480

`storedFilterMetaSchema.value` schema is too restrictive and needs to be
broadened. This PR broadens `storedFilterMetaSchema.value` to any since
`storedFilterMetaSchema.value` is a subset of `FilterMetaParams` and to
prevent future issues like this.

PR also updates `FilterMeta.value` type to more accurately reflect
usage.

[mapPhrases](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data/public/query/filter_manager/lib/mappers/map_phrases.ts#L32)
sets value to `PhraseFilterValue[]`
```
export const mapPhrases = (filter: Filter) => {
  if (!isPhrasesFilter(filter)) {
    throw filter;
  }

  const { type, key, params } = filter.meta;

  return {
    type,
    key,
    value: params,
    params,
  };
};
```

[mapRange](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data/public/query/filter_manager/lib/mappers/map_range.ts#L54)
sets value to `RangeFilterParams`

```
function getParams(filter: RangeFilter) {
  const isScriptedRange = isScriptedRangeFilter(filter);
  const key: string = (isScriptedRange ? filter.meta.field : getFirstRangeKey(filter)) || '';
  const params: any = isScriptedRange
    ? get(filter.query, 'script.script.params')
    : getRangeByKey(filter, key);

  return { type: FILTERS.RANGE, key, value: params, params };
}

export const mapRange = (filter: Filter) => {
  if (!isMapRangeFilter(filter)) {
    throw filter;
  }

  return getParams(filter);
};
```

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
(cherry picked from commit 64510c0)
@kibanamachine kibanamachine added the backport This PR is a backport of another PR label Feb 20, 2026
@kibanamachine kibanamachine enabled auto-merge (squash) February 20, 2026 20:15
@kibanamachine kibanamachine merged commit 259fea7 into elastic:9.3 Feb 20, 2026
18 checks passed
@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] Jest Tests #2 / apiKeysManagementApp renders application and sets breadcrumbs

Metrics [docs]

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
data 442.5KB 442.5KB +8.0B

cc @nreese

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a backport of another PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants