Stability AI code fix. > "break;" line had space before word. Oops. > Stability hides steps, cfg, height, etc. when selected. > Settings are loaded and saved. > isValid state is modified now for Stability. Oops. > Skips remote function for Stability.

4b356fbc6099b6409634b9a73fda597698af49e5

WBlair1 <wolfgangblair1@gmail.com>

1 files changed, +33 -6Showing whitespace changes
public/scripts/extensions/stable-diffusion/index.js+33 -6
@@ -368,6 +368,14 @@ function toggleSourceControls() {
368368 const source = $(this).data('sd-source').split(',');
369369 $(this).toggle(source.includes(extension_settings.sd.source));
370370 });
371+ const stabilityHiddenControls = $('#sd_steps, #sd_scale, #sd_sampler, #sd_scheduler, #sd_width, #sd_height, #sd_hr_upscaler, #sd_clip_skip');
372+ if (extension_settings.sd.source === sources.stability) {
373+ stabilityHiddenControls.hide();
374+ $('#sd_resolution').parent().hide();
375+ } else {
376+ stabilityHiddenControls.show();
377+ $('#sd_resolution').parent().show();
378+ }
371379}
372380
373381async function loadSettings() {
@@ -452,6 +460,11 @@ async function loadSettings() {
452460 $('#sd_wand_visible').prop('checked', extension_settings.sd.wand_visible);
453461 $('#sd_command_visible').prop('checked', extension_settings.sd.command_visible);
454462 $('#sd_interactive_visible').prop('checked', extension_settings.sd.interactive_visible);
463+ $('#sd_stability_key').val(extension_settings.sd.stability_key);
464+ $('#sd_stability_engine').val(extension_settings.sd.stability_engine);
465+ $('#sd_stability_style_preset').val(extension_settings.sd.stability_style_preset);
466+ $('#sd_stability_aspect_ratio').val(extension_settings.sd.stability_aspect_ratio);
467+ $('#sd_stability_output_format').val(extension_settings.sd.stability_output_format);
455468
456469 for (const style of extension_settings.sd.styles) {
457470 const option = document.createElement('option');
@@ -1227,7 +1240,7 @@ async function onModelChange() {
12271240 extension_settings.sd.model = $('#sd_model').find(':selected').val();
12281241 saveSettingsDebounced();
12291242
12301243 const cloudSources = [sources.horde, sources.novel, sources.openai, sources.togetherai, sources.pollinations, sources.stability];
12311244
12321245 if (cloudSources.includes(extension_settings.sd.source)) {
12331246 return;
@@ -1620,11 +1633,7 @@ async function loadModels() {
16201633 models = await loadPollinationsModels();
16211634 break;
16221635 case sources.stability:
16231636 models = [await loadStabilityModels();
1624- { value: 'stable-image-ultra', text: 'Stable Image Ultra' },
1625- { value: 'stable-image-core', text: 'Stable Image Core' },
1626- { value: 'stable-diffusion-3', text: 'Stable Diffusion 3' },
1627- ];
16281637 break;
16291638 }
16301639
@@ -1669,6 +1678,22 @@ async function generateStabilityImage(prompt, negativePrompt) {
16691678 }
16701679}
16711680
1681+async function loadStabilityModels() {
1682+ return [
1683+ {
1684+ value: 'stable-image-ultra',
1685+ text: 'Stable Image Ultra',
1686+ },
1687+ {
1688+ value: 'stable-image-core',
1689+ text: 'Stable Image Core',
1690+ },
1691+ {
1692+ value: 'stable-diffusion-3',
1693+ text: 'Stable Diffusion 3',
1694+ },
1695+ ];
1696+}
16721697async function loadPollinationsModels() {
16731698 return [
16741699 {
@@ -3300,6 +3325,8 @@ function isValidState() {
33003325 return secret_state[SECRET_KEYS.TOGETHERAI];
33013326 case sources.pollinations:
33023327 return true;
3328+ case sources.stability:
3329+ return !!extension_settings.sd.stability_key;
33033330 }
33043331}
33053332