feat(lora-pool): add folder filtering and preview tooltip enhancements

- Add include/exclude folder modals for advanced filtering
- Implement folder tree search with auto-expand functionality
- Add hover tooltip to preview header showing matching LoRA thumbnails
- Format match count with locale string for better readability
- Prevent event propagation on refresh button click
- Improve folder tree component with expand/collapse controls
This commit is contained in:
Will Miao
2026-01-12 10:08:16 +08:00
parent 9719dd4d07
commit 65cede7335
10 changed files with 1070 additions and 437 deletions

View File

@@ -1,15 +1,5 @@
<template>
<div class="summary-view">
<!-- Header with filter count badge -->
<div class="summary-view__header">
<div class="summary-view__badge">
<svg class="summary-view__badge-icon" viewBox="0 0 16 16" fill="currentColor">
<path d="M1.5 1.5A.5.5 0 0 1 2 1h12a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-.128.334L10 8.692V13.5a.5.5 0 0 1-.342.474l-3 1A.5.5 0 0 1 6 14.5V8.692L1.628 3.834A.5.5 0 0 1 1.5 3.5v-2z"/>
</svg>
<span class="summary-view__count">{{ matchCount.toLocaleString() }}</span>
</div>
</div>
<!-- Filter sections -->
<div class="summary-view__filters">
<BaseModelSection
@@ -30,6 +20,8 @@
:exclude-folders="excludeFolders"
@update:include-folders="$emit('update:includeFolders', $event)"
@update:exclude-folders="$emit('update:excludeFolders', $event)"
@edit-include="$emit('open-modal', 'includeFolders')"
@edit-exclude="$emit('open-modal', 'excludeFolders')"
/>
<LicenseSection
@@ -95,33 +87,6 @@ defineEmits<{
height: 100%;
}
.summary-view__header {
display: flex;
justify-content: flex-end;
margin-bottom: 12px;
}
.summary-view__badge {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 4px 10px;
background: rgba(66, 153, 225, 0.15);
border: 1px solid rgba(66, 153, 225, 0.4);
border-radius: 4px;
color: #4299e1;
}
.summary-view__badge-icon {
width: 12px;
height: 12px;
}
.summary-view__count {
font-size: 12px;
font-weight: 600;
}
.summary-view__filters {
flex: 1;
overflow-y: auto;