diff --git a/src/app/core/shared/search/search.service.ts b/src/app/core/shared/search/search.service.ts index 3c91bdff73..9cb62263ea 100644 --- a/src/app/core/shared/search/search.service.ts +++ b/src/app/core/shared/search/search.service.ts @@ -268,15 +268,21 @@ export class SearchService implements OnDestroy { * no valid cached version. Defaults to true * @returns {Observable>>} Emits the given page of facet values */ - getFacetValuesFor(filterConfig: SearchFilterConfig, valuePage: number, searchOptions?: SearchOptions, filterQuery?: string, useCachedVersionIfAvailable = true): Observable> { + getFacetValuesFor(filterConfig: SearchFilterConfig, valuePage: number, searchOptions?: PaginatedSearchOptions, filterQuery?: string, useCachedVersionIfAvailable = true): Observable> { let href; - const args: string[] = [`page=${valuePage - 1}`, `size=${filterConfig.pageSize}`]; + let args: string[] = []; if (hasValue(filterQuery)) { args.push(`prefix=${filterQuery}`); } if (hasValue(searchOptions)) { + searchOptions = Object.assign(new PaginatedSearchOptions({}), searchOptions, { + pagination: Object.assign({}, searchOptions.pagination, { + currentPage: valuePage + }) + }); href = searchOptions.toRestUrl(filterConfig._links.self.href, args); } else { + args = [`page=${valuePage - 1}`, `size=${filterConfig.pageSize}`, ...args]; href = new URLCombiner(filterConfig._links.self.href, `?${args.join('&')}`).toString(); }