1) {
activeParams.push({
key: 'page',
value: activePage,
});
}
const filteredSortedUrl = `/search${activeParams.length > 0 ? `?${activeParams.map(v => `${v.key}=${v.value}`).join('&')}` : ''}`;
$store.ajaxWorking = true;
fetch(filteredSortedUrl)
.then((response) => response.text())
.then((responseText) => {
const html = new DOMParser().parseFromString(responseText, 'text/html');
document.querySelector('.search-page').innerHTML = html.querySelector('.search-page').innerHTML;
$store.ajaxWorking = false;
history.pushState({}, '', filteredSortedUrl);
// Scroll to top.
const scrollTop = document.querySelector('.search-results').getBoundingClientRect().top + window.scrollY - document.querySelector('.site-header').getBoundingClientRect().height - 40;
window.scrollTo({ top: scrollTop, behavior: 'smooth' });
});
"
@paginate="
activePage = $event.detail;
$dispatch('update');
"
@sort="
activeSort = $event.detail;
$dispatch('update');
"
@filter="
$dispatch('update');
">