Update model-manager.js

This commit is contained in:
EtSL33py
2024-09-22 20:31:31 +03:00
parent 6f61688bd8
commit 848663d78b

View File

@@ -2308,7 +2308,7 @@ class ModelInfo {
/**
* @param {ModelData} modelData
* @param {() => Promise<void>} updateModels
* @param {(withoutComfyRefresh?: boolean) => Promise<void>} updateModels
* @param {any} settingsElements
*/
constructor(modelData, updateModels, settingsElements) {
@@ -2385,7 +2385,7 @@ class ModelInfo {
});
}
if (updatedPreview) {
updateModels();
updateModels(true);
const previewSelect = this.previewSelect;
previewSelect.elements.defaultUrl.dataset.noimage =
PREVIEW_NONE_URI;
@@ -2613,7 +2613,7 @@ class ModelInfo {
/**
* @param {string} searchPath
* @param {() => Promise<void>} updateModels
* @param {(withoutComfyRefresh?: boolean) => Promise<void>} updateModels
* @param {string} searchSeparator
*/
async update(searchPath, updateModels, searchSeparator) {
@@ -3632,13 +3632,13 @@ class DownloadView {
/** @type {Object.<string, HTMLElement>} */
#settings = null;
/** @type {() => Promise<void>} */
/** @type {(withoutComfyRefresh?: boolean) => Promise<void>} */
#updateModels = () => {};
/**
* @param {ModelData} modelData
* @param {Object.<string, HTMLElement>} settings
* @param {() => Promise<void>} updateModels
* @param {(withoutComfyRefresh?: boolean) => Promise<void>} updateModels
*/
constructor(modelData, settings, updateModels) {
this.#domParser = new DOMParser();
@@ -4118,7 +4118,7 @@ class BrowseView {
/** @type {ModelData} */
#modelData = null;
/** @type {@param {() => Promise<void>}} */
/** @type {(withoutComfyRefresh?: boolean) => Promise<void>} */
#updateModels = null;
/** */
@@ -4128,7 +4128,7 @@ class BrowseView {
updateModelGrid = () => {};
/**
* @param {() => Promise<void>} updateModels
* @param {(withoutComfyRefresh?: boolean) => Promise<void>} updateModels
* @param {ModelData} modelData
* @param {(searchPath: string) => Promise<void>} showModelInfo
* @param {() => void} updateModelGridCallback
@@ -4391,14 +4391,14 @@ class SettingsView {
},
};
/** @return {() => Promise<void>} */
/** @return {(withoutComfyRefresh?: boolean) => Promise<void>} */
#updateModels = () => {};
/**
* @param {Object} settingsData
* @param {boolean} updateModels
* @param {boolean} withoutComfyRefresh
*/
async #setSettings(settingsData, updateModels) {
async #setSettings(settingsData, withoutComfyRefresh) {
const settings = this.elements.settings;
for (const [key, value] of Object.entries(settingsData)) {
const setting = settings[key];
@@ -4427,19 +4427,17 @@ class SettingsView {
}
}
if (updateModels) {
await this.#updateModels(); // Is this slow?
}
await this.#updateModels(withoutComfyRefresh);
}
/**
* @param {boolean} updateModels
* @param {boolean} withoutComfyRefresh
* @returns {Promise<void>}
*/
async reload(updateModels) {
async reload(withoutComfyRefresh) {
const data = await comfyRequest('/model-manager/settings/load');
const settingsData = data['settings'];
await this.#setSettings(settingsData, updateModels);
await this.#setSettings(settingsData, withoutComfyRefresh);
comfyButtonAlert(this.elements.reloadButton, true);
}
@@ -4489,7 +4487,7 @@ class SettingsView {
}
/**
* @param {() => Promise<void>} updateModels
* @param {(withoutComfyRefresh?: boolean) => Promise<void>} updateModels
* @param {() => void} updateSidebarButtons
*/
constructor(updateModels, updateSidebarButtons) {
@@ -5348,8 +5346,7 @@ class ModelManager extends ComfyDialog {
}
async #init() {
await this.#settingsView.reload(false);
await this.#refreshModels();
await this.#settingsView.reload(true)
const settings = this.#settingsView.elements.settings;
@@ -5412,7 +5409,7 @@ class ModelManager extends ComfyDialog {
this.#tabManagerContents.scrollTop = 0;
};
#refreshModels = async () => {
#refreshModels = async (withoutComfyRefresh = false) => {
const modelData = this.#modelData;
modelData.systemSeparator = await comfyRequest(
'/model-manager/system-separator',
@@ -5426,8 +5423,9 @@ class ModelManager extends ComfyDialog {
this.#browseView.updateModelGrid();
await this.#tryHideModelInfo(false);
document.getElementById('comfy-refresh-button')?.click();
if (!withoutComfyRefresh){
document.getElementById('comfy-refresh-button')?.click();
}
};
/**