@ -129,7 +129,7 @@
v - bind = "result" / >
< / ul >
< div class = "result-footer" >
< NcButton type = "tertiary-no-background" @click ="loadMoreResultsForProvider(providerResult)" >
< NcButton v-if ="providerResult.results.length === providerResult.limit" type="tertiary-no-background" @click ="loadMoreResultsForProvider(providerResult)">
{ { t ( 'core' , 'Load more results' ) } }
< template # icon >
< IconDotsHorizontal :size ="20" / >
@ -367,7 +367,7 @@ export default defineComponent({
this . $refs . searchInput ? . focus ( )
} )
} ,
find ( query : string ) {
find ( query : string , providersToSearchOverride = null ) {
if ( query . length === 0 ) {
this . results = [ ]
this . searching = false
@ -382,7 +382,7 @@ export default defineComponent({
this . searching = true
const newResults = [ ]
const providersToSearch = this . filteredProviders . length > 0 ? this . filteredProviders : this . providers
const providersToSearch = providersToSearchOverride || ( this . filteredProviders . length > 0 ? this . filteredProviders : this . providers )
const searchProvider = ( provider ) => {
const params = {
type : provider . searchFrom ? ? provider . id ,
@ -424,6 +424,7 @@ export default defineComponent({
newResults . push ( {
... provider ,
results : response . data . ocs . data . entries ,
limit : params . limit ? ? 5 ,
} )
unifiedSearchLogger . debug ( 'Unified search results:' , { results : this . results , newResults } )
@ -513,15 +514,7 @@ export default defineComponent({
} ,
async loadMoreResultsForProvider ( provider ) {
this . providerResultLimit += 5
/ / R e m o v e a l l o t h e r p r o v i d e r s f r o m f i l t e r e d P r o v i d e r s e x c e p t t h e c u r r e n t " l o a d m o r e " p r o v i d e r
this . filteredProviders = this . filteredProviders . filter ( filteredProvider => filteredProvider . id === provider . id )
/ / P l u g i n f i l t e r s m a y h a v e e x t r a p a r a m e t e r s , s o w e n e e d t o k e e p t h e m
/ / S e e m e t h o d h a n d l e P l u g i n F i l t e r f o r m o r e d e t a i l s
if ( this . filteredProviders . length > 0 && this . filteredProviders [ 0 ] . isPluginFilter ) {
provider = this . filteredProviders [ 0 ]
}
this . addProviderFilter ( provider , true )
this . find ( this . searchQuery )
this . find ( this . searchQuery , [ provider ] )
} ,
addProviderFilter ( providerFilter , loadMoreResultsForProvider = false ) {
unifiedSearchLogger . debug ( 'Applying provider filter' , { providerFilter , loadMoreResultsForProvider } )