aboutsummaryrefslogtreecommitdiffstats
path: root/javascript
diff options
context:
space:
mode:
authorSj-Si <sjw.jetty@gmail.com>2024-01-18 03:38:51 +0000
committerSj-Si <sjw.jetty@gmail.com>2024-01-18 03:38:51 +0000
commitf25c81a74462554890ac7327a30629b332db1084 (patch)
treee25f38eeee9a47c397d46879275235690f41897c /javascript
parentccee26b0653b4f6778c107d68df52da27446abd2 (diff)
downloadstable-diffusion-webui-gfx803-f25c81a74462554890ac7327a30629b332db1084.tar.gz
stable-diffusion-webui-gfx803-f25c81a74462554890ac7327a30629b332db1084.tar.bz2
stable-diffusion-webui-gfx803-f25c81a74462554890ac7327a30629b332db1084.zip
Fix embeddings add/remove to/from prompt on click bugs.
Diffstat (limited to 'javascript')
-rw-r--r--javascript/extraNetworks.js13
1 files changed, 3 insertions, 10 deletions
diff --git a/javascript/extraNetworks.js b/javascript/extraNetworks.js
index caaa3fae..1e2786ab 100644
--- a/javascript/extraNetworks.js
+++ b/javascript/extraNetworks.js
@@ -169,8 +169,8 @@ function tryToRemoveExtraNetworkFromPrompt(textarea, text, isNeg) {
var m = text.match(isNeg ? re_extranet_neg : re_extranet);
var replaced = false;
var newTextareaText;
+ var extraTextBeforeNet = opts.extra_networks_add_text_separator;
if (m) {
- var extraTextBeforeNet = opts.extra_networks_add_text_separator;
var extraTextAfterNet = m[2];
var partToSearch = m[1];
var foundAtPosition = -1;
@@ -183,7 +183,6 @@ function tryToRemoveExtraNetworkFromPrompt(textarea, text, isNeg) {
}
return found;
});
-
if (foundAtPosition >= 0) {
if (extraTextAfterNet && newTextareaText.substr(foundAtPosition, extraTextAfterNet.length) == extraTextAfterNet) {
newTextareaText = newTextareaText.substr(0, foundAtPosition) + newTextareaText.substr(foundAtPosition + extraTextAfterNet.length);
@@ -193,13 +192,8 @@ function tryToRemoveExtraNetworkFromPrompt(textarea, text, isNeg) {
}
}
} else {
- newTextareaText = textarea.value.replaceAll(new RegExp(text, "g"), function(found) {
- if (found == text) {
- replaced = true;
- return "";
- }
- return found;
- });
+ newTextareaText = textarea.value.replaceAll(new RegExp(`((?:${extraTextBeforeNet})?${text})`, "g"), "");
+ replaced = (newTextareaText != textarea.value);
}
if (replaced) {
@@ -211,7 +205,6 @@ function tryToRemoveExtraNetworkFromPrompt(textarea, text, isNeg) {
}
function updatePromptArea(text, textArea, isNeg) {
-
if (!tryToRemoveExtraNetworkFromPrompt(textArea, text, isNeg)) {
textArea.value = textArea.value + opts.extra_networks_add_text_separator + text;
}