mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-25 15:15:44 -03:00
Enhance folder tag visibility on click; streamline refresh logic in download manager
This commit is contained in:
@@ -86,10 +86,13 @@ function updateFolderTags(folders) {
|
|||||||
// Update the container
|
// Update the container
|
||||||
folderTagsContainer.innerHTML = tagsHTML;
|
folderTagsContainer.innerHTML = tagsHTML;
|
||||||
|
|
||||||
// Reattach click handlers
|
// Reattach click handlers and ensure the active tag is visible
|
||||||
const tags = folderTagsContainer.querySelectorAll('.tag');
|
const tags = folderTagsContainer.querySelectorAll('.tag');
|
||||||
tags.forEach(tag => {
|
tags.forEach(tag => {
|
||||||
tag.addEventListener('click', toggleFolder);
|
tag.addEventListener('click', toggleFolder);
|
||||||
|
if (tag.dataset.folder === currentFolder) {
|
||||||
|
tag.scrollIntoView({ behavior: 'smooth', block: 'nearest' });
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -271,13 +274,11 @@ export async function resetAndReload(boolUpdateFolders = false) {
|
|||||||
await loadMoreLoras(boolUpdateFolders);
|
await loadMoreLoras(boolUpdateFolders);
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function refreshLoras(boolShowToast = true) {
|
export async function refreshLoras() {
|
||||||
try {
|
try {
|
||||||
state.loadingManager.showSimpleLoading('Refreshing loras...');
|
state.loadingManager.showSimpleLoading('Refreshing loras...');
|
||||||
await resetAndReload(true);
|
await resetAndReload();
|
||||||
if (boolShowToast){
|
showToast('Refresh complete', 'success');
|
||||||
showToast('Refresh complete', 'success');
|
|
||||||
}
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Refresh failed:', error);
|
console.error('Refresh failed:', error);
|
||||||
showToast('Failed to refresh loras', 'error');
|
showToast('Failed to refresh loras', 'error');
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
import { modalManager } from './ModalManager.js';
|
import { modalManager } from './ModalManager.js';
|
||||||
import { showToast } from '../utils/uiHelpers.js';
|
import { showToast } from '../utils/uiHelpers.js';
|
||||||
import { LoadingManager } from './LoadingManager.js';
|
import { LoadingManager } from './LoadingManager.js';
|
||||||
|
import { state } from '../state/index.js';
|
||||||
|
import { resetAndReload } from '../api/loraApi.js';
|
||||||
|
|
||||||
export class DownloadManager {
|
export class DownloadManager {
|
||||||
constructor() {
|
constructor() {
|
||||||
@@ -183,13 +185,13 @@ export class DownloadManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Construct relative path
|
// Construct relative path
|
||||||
let relativePath = '';
|
let targetFolder = '';
|
||||||
if (this.selectedFolder) {
|
if (this.selectedFolder) {
|
||||||
relativePath = this.selectedFolder;
|
targetFolder = this.selectedFolder;
|
||||||
}
|
}
|
||||||
if (newFolder) {
|
if (newFolder) {
|
||||||
relativePath = relativePath ?
|
targetFolder = targetFolder ?
|
||||||
`${relativePath}/${newFolder}` : newFolder;
|
`${targetFolder}/${newFolder}` : newFolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -218,7 +220,7 @@ export class DownloadManager {
|
|||||||
body: JSON.stringify({
|
body: JSON.stringify({
|
||||||
download_url: downloadUrl,
|
download_url: downloadUrl,
|
||||||
lora_root: loraRoot,
|
lora_root: loraRoot,
|
||||||
relative_path: relativePath
|
relative_path: targetFolder
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -229,8 +231,9 @@ export class DownloadManager {
|
|||||||
showToast('Download completed successfully', 'success');
|
showToast('Download completed successfully', 'success');
|
||||||
modalManager.closeModal('downloadModal');
|
modalManager.closeModal('downloadModal');
|
||||||
|
|
||||||
// Refresh the grid to show new model
|
// Update state and trigger reload with folder update
|
||||||
window.refreshLoras(false);
|
state.activeFolder = targetFolder;
|
||||||
|
await resetAndReload(true); // Pass true to update folders
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
showToast(error.message, 'error');
|
showToast(error.message, 'error');
|
||||||
|
|||||||
Reference in New Issue
Block a user