diff --git a/packages/api/src/elastic/highlights.ts b/packages/api/src/elastic/highlights.ts index 5fb5e568d..19564c80e 100644 --- a/packages/api/src/elastic/highlights.ts +++ b/packages/api/src/elastic/highlights.ts @@ -70,7 +70,7 @@ export const getHighlightById = async ( nested: { path: 'highlights', query: { - match: { + term: { 'highlights.id': id, }, }, diff --git a/packages/api/src/elastic/labels.ts b/packages/api/src/elastic/labels.ts index d5f931553..b7e8f4e4f 100644 --- a/packages/api/src/elastic/labels.ts +++ b/packages/api/src/elastic/labels.ts @@ -260,10 +260,11 @@ export const setLabelsForHighlight = async ( index: INDEX_ALIAS, body: { script: { - source: `ctx._source.highlights[0].labels = params.labels; + source: `ctx._source.highlights.stream().filter(h -> params.highlightId.equals(h.id)).findAny().orElse(null).labels = params.labels; ctx._source.updatedAt = params.updatedAt`, lang: 'painless', params: { + highlightId, labels: labels, updatedAt: new Date(), },