From fcb1fb39be6f836c4e4cc035062d1d63803bfef2 Mon Sep 17 00:00:00 2001 From: Will Miao <13051207myq@gmail.com> Date: Sat, 6 Sep 2025 08:15:18 +0800 Subject: [PATCH] feat(controls): add toggleBulkMode functionality for Checkpoints and Embeddings pages --- .../components/controls/CheckpointsControls.js | 8 ++++++++ .../js/components/controls/EmbeddingsControls.js | 8 ++++++++ static/js/components/controls/PageControls.js | 16 ++++------------ 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/static/js/components/controls/CheckpointsControls.js b/static/js/components/controls/CheckpointsControls.js index b9333d82..fa1e48e2 100644 --- a/static/js/components/controls/CheckpointsControls.js +++ b/static/js/components/controls/CheckpointsControls.js @@ -43,6 +43,14 @@ export class CheckpointsControls extends PageControls { showDownloadModal: () => { downloadManager.showDownloadModal(); }, + + toggleBulkMode: () => { + if (window.bulkManager) { + window.bulkManager.toggleBulkMode(); + } else { + console.error('Bulk manager not available'); + } + }, // No clearCustomFilter implementation is needed for checkpoints // as custom filters are currently only used for LoRAs diff --git a/static/js/components/controls/EmbeddingsControls.js b/static/js/components/controls/EmbeddingsControls.js index 57527a72..6b8042df 100644 --- a/static/js/components/controls/EmbeddingsControls.js +++ b/static/js/components/controls/EmbeddingsControls.js @@ -43,6 +43,14 @@ export class EmbeddingsControls extends PageControls { showDownloadModal: () => { downloadManager.showDownloadModal(); }, + + toggleBulkMode: () => { + if (window.bulkManager) { + window.bulkManager.toggleBulkMode(); + } else { + console.error('Bulk manager not available'); + } + }, // No clearCustomFilter implementation is needed for embeddings // as custom filters are currently only used for LoRAs diff --git a/static/js/components/controls/PageControls.js b/static/js/components/controls/PageControls.js index 06009880..6e9766f2 100644 --- a/static/js/components/controls/PageControls.js +++ b/static/js/components/controls/PageControls.js @@ -185,12 +185,9 @@ export class PageControls { duplicatesButton.addEventListener('click', () => this.findDuplicates()); } - if (this.pageType === 'loras') { - // Bulk operations button - LoRAs only - const bulkButton = document.querySelector('[data-action="bulk"]'); - if (bulkButton) { - bulkButton.addEventListener('click', () => this.toggleBulkMode()); - } + const bulkButton = document.querySelector('[data-action="bulk"]'); + if (bulkButton) { + bulkButton.addEventListener('click', () => this.toggleBulkMode()); } // Favorites filter button handler @@ -349,14 +346,9 @@ export class PageControls { } /** - * Toggle bulk mode (LoRAs only) + * Toggle bulk mode */ toggleBulkMode() { - if (this.pageType !== 'loras' || !this.api) { - console.error('Bulk mode is only available for LoRAs'); - return; - } - this.api.toggleBulkMode(); }