Show node by frequency on empty query (#878)

This commit is contained in:
Chenlei Hu
2024-09-19 09:35:22 +09:00
committed by GitHub
parent efa2fa269d
commit 6c4143ca94
8 changed files with 2711 additions and 8 deletions

View File

@@ -33,6 +33,7 @@
:suggestions="suggestions"
:min-length="0"
:delay="100"
:loading="!nodeFrequencyStore.isLoaded"
@complete="search($event.query)"
@option-select="emit('addNode', $event.value)"
@focused-option-changed="setHoverSuggestion($event)"
@@ -67,7 +68,11 @@ import NodeSearchFilter from '@/components/searchbox/NodeSearchFilter.vue'
import NodeSearchItem from '@/components/searchbox/NodeSearchItem.vue'
import { type FilterAndValue } from '@/services/nodeSearchService'
import NodePreview from '@/components/node/NodePreview.vue'
import { ComfyNodeDefImpl, useNodeDefStore } from '@/stores/nodeDefStore'
import {
ComfyNodeDefImpl,
useNodeDefStore,
useNodeFrequencyStore
} from '@/stores/nodeDefStore'
import { useSettingStore } from '@/stores/settingStore'
import { useI18n } from 'vue-i18n'
import SearchFilterChip from '../common/SearchFilterChip.vue'
@@ -98,13 +103,18 @@ const placeholder = computed(() => {
return props.filters.length === 0 ? t('searchNodes') + '...' : ''
})
const nodeDefStore = useNodeDefStore()
const nodeFrequencyStore = useNodeFrequencyStore()
const search = (query: string) => {
currentQuery.value = query
suggestions.value = [
...useNodeDefStore().nodeSearchService.searchNode(query, props.filters, {
limit: props.searchLimit
})
]
suggestions.value =
query === ''
? nodeFrequencyStore.topNodeDefs
: [
...nodeDefStore.nodeSearchService.searchNode(query, props.filters, {
limit: props.searchLimit
})
]
}
const emit = defineEmits(['addFilter', 'removeFilter', 'addNode'])