feat: add new sorting options for template filtering by VRAM utilization and model size

This commit is contained in:
Johnpaul
2025-08-20 22:31:17 +01:00
parent 9ec2f69282
commit 8fb225f1f6
2 changed files with 22 additions and 6 deletions

View File

@@ -8,7 +8,7 @@ export interface TemplateFilterOptions {
selectedModels?: string[]
selectedUseCases?: string[] // Now represents selected tags
selectedLicenses?: string[]
sortBy?: 'default' | 'alphabetical' | 'newest'
sortBy?: 'default' | 'alphabetical' | 'newest' | 'vram-low-to-high' | 'model-size-low-to-high'
}
export function useTemplateFiltering(
@@ -18,7 +18,7 @@ export function useTemplateFiltering(
const selectedModels = ref<string[]>([])
const selectedUseCases = ref<string[]>([])
const selectedLicenses = ref<string[]>([])
const sortBy = ref<'default' | 'alphabetical' | 'newest'>('default')
const sortBy = ref<'default' | 'alphabetical' | 'newest' | 'vram-low-to-high' | 'model-size-low-to-high'>('default')
const templatesArray = computed(() => {
const templateData = 'value' in templates ? templates.value : templates
@@ -142,6 +142,14 @@ export function useTemplateFiltering(
const dateB = new Date(b.date || '1970-01-01')
return dateB.getTime() - dateA.getTime()
})
case 'vram-low-to-high':
// TODO: Implement VRAM sorting when VRAM data is available
// For now, keep original order
return templates
case 'model-size-low-to-high':
// TODO: Implement model size sorting when model size data is available
// For now, keep original order
return templates
case 'default':
default:
// Keep original order (default order)