Add folder tag toggle and feedback button; refactor theme toggle

This commit is contained in:
Will Miao
2025-02-05 17:40:39 +08:00
parent e2793a71be
commit 210bc70481
4 changed files with 114 additions and 10 deletions

View File

@@ -4,7 +4,19 @@ import { modalManager } from './managers/ModalManager.js';
import { state } from './state/index.js';
import { showLoraModal } from './components/LoraCard.js';
import { loadMoreLoras, fetchCivitai, deleteModel, replacePreview, resetAndReload, refreshLoras } from './api/loraApi.js';
import { showToast, lazyLoadImages, restoreFolderFilter, initTheme, toggleTheme, toggleFolder, copyTriggerWord, openCivitai } from './utils/uiHelpers.js';
import {
showToast,
lazyLoadImages,
restoreFolderFilter,
initTheme,
toggleTheme,
toggleFolder,
copyTriggerWord,
openCivitai,
toggleFolderTags,
openFeedback,
initFolderTagsVisibility
} from './utils/uiHelpers.js';
import { initializeInfiniteScroll } from './utils/infiniteScroll.js';
import { showDeleteModal, confirmDelete, closeDeleteModal } from './utils/modalUtils.js';
import { SearchManager } from './utils/search.js';
@@ -25,6 +37,8 @@ window.closeDeleteModal = closeDeleteModal;
window.refreshLoras = refreshLoras;
window.openCivitai = openCivitai;
window.showToast = showToast
window.toggleFolderTags = toggleFolderTags;
window.openFeedback = openFeedback;
// Initialize everything when DOM is ready
document.addEventListener('DOMContentLoaded', () => {
@@ -35,6 +49,7 @@ document.addEventListener('DOMContentLoaded', () => {
lazyLoadImages();
restoreFolderFilter();
initTheme();
initFolderTagsVisibility();
window.searchManager = new SearchManager();
});

View File

@@ -96,4 +96,28 @@ export function openCivitai(modelName) {
// 如果没有ID尝试使用名称搜索
window.open(`https://civitai.com/models?query=${encodeURIComponent(modelName)}`, '_blank');
}
}
export function toggleFolderTags() {
const folderTags = document.querySelector('.folder-tags');
if (!folderTags) return;
const isHidden = folderTags.style.display === 'none';
folderTags.style.display = isHidden ? 'flex' : 'none';
// Save preference
localStorage.setItem('folderTagsVisible', isHidden ? 'true' : 'false');
}
export function openFeedback() {
window.open('https://github.com/willmiao/ComfyUI-Lora-Manager/issues/new', '_blank');
}
// Add this to your existing initialization code
export function initFolderTagsVisibility() {
const folderTags = document.querySelector('.folder-tags');
if (!folderTags) return;
const isVisible = localStorage.getItem('folderTagsVisible') !== 'false';
folderTags.style.display = isVisible ? 'flex' : 'none';
}