Fix model name not being detected after startup

Fixes #174
This commit is contained in:
DominikDoom
2023-05-06 20:06:47 +02:00
parent f9f7732c69
commit 40edb89974
2 changed files with 15 additions and 9 deletions

View File

@@ -98,6 +98,19 @@ function escapeHTML(unsafeText) {
return div.innerHTML;
}
// For black/whitelisting
function updateModelName() {
let sdm = gradioApp().querySelector("#setting_sd_model_checkpoint");
let modelDropdown = sdm.querySelector("input") || sdm.querySelector("#select");
if (modelDropdown) {
currentModelName = modelDropdown.value;
} else {
// Fallback for intermediate versions
modelDropdown = sdm.querySelector("span.single-select");
currentModelName = modelDropdown.textContent;
}
}
// Queue calling function to process global queues
async function processQueue(queue, context, ...args) {
for (let i = 0; i < queue.length; i++) {

View File

@@ -860,21 +860,14 @@ async function setup() {
// Add mutation observer for the model hash text to also allow hash-based blacklist again
let modelHashText = gradioApp().querySelector("#sd_checkpoint_hash");
updateModelName();
if (modelHashText) {
currentModelHash = modelHashText.title
let modelHashObserver = new MutationObserver((mutationList, observer) => {
for (const mutation of mutationList) {
if (mutation.type === "attributes" && mutation.attributeName === "title") {
currentModelHash = mutation.target.title;
let sdm = gradioApp().querySelector("#setting_sd_model_checkpoint");
let modelDropdown = sdm.querySelector("input") || sdm.querySelector("#select");
if (modelDropdown) {
currentModelName = modelDropdown.value;
} else {
// Fallback for intermediate versions
modelDropdown = sdm.querySelector("span.single-select");
currentModelName = modelDropdown.textContent;
}
updateModelName();
}
}
});