diff --git a/public/index.html b/public/index.html
index 8fbef0fb5..311b20547 100644
--- a/public/index.html
+++ b/public/index.html
@@ -1026,7 +1026,7 @@
- Hold Control / Command key to select multiple models.
+ You can select multiple models.
@@ -1798,7 +1798,7 @@
Blacklisted words
-
+
Blacklisted word count to swipe
diff --git a/public/scripts/horde.js b/public/scripts/horde.js
index 44581799c..5464dde8f 100644
--- a/public/scripts/horde.js
+++ b/public/scripts/horde.js
@@ -1,4 +1,10 @@
-import { saveSettingsDebounced, changeMainAPI, callPopup, setGenerationProgress, CLIENT_VERSION, getRequestHeaders } from "../script.js";
+import {
+ saveSettingsDebounced,
+ callPopup,
+ setGenerationProgress,
+ CLIENT_VERSION,
+ getRequestHeaders,
+} from "../script.js";
import { SECRET_KEYS, writeSecret } from "./secrets.js";
import { delay } from "./utils.js";
import { deviceInfo } from "./RossAscends-mods.js";
@@ -216,34 +222,25 @@ async function showKudos() {
toastr.info(`Kudos: ${data.kudos}`, data.username);
}
-
-
jQuery(function () {
- var hordeModelSelectScrollTop = null;
- $("#horde_model").on('mousedown change', function (e) {
+ let hordeModelSelectScrollTop = null;
+
+ $("#horde_model").on('mousedown change', async function (e) {
//desktop-only routine for multi-select without CTRL
if (deviceInfo.device.type === 'desktop') {
e.preventDefault();
- var option = $(e.target);
- var selectElement = $(this)[0];
+ const option = $(e.target);
+ const selectElement = $(this)[0];
hordeModelSelectScrollTop = selectElement.scrollTop;
option.prop('selected', !option.prop('selected'));
- setTimeout(function () {
- selectElement.scrollTop = hordeModelSelectScrollTop;
- }, 1)
+ await delay(1);
+ selectElement.scrollTop = hordeModelSelectScrollTop;
}
horde_settings.models = $('#horde_model').val();
console.log('Updated Horde models', horde_settings.models);
});
- /* $("#horde_model").on("change", function () {
- horde_settings.models = $('#horde_model').val();
- console.log('Updated Horde models', horde_settings.models);
- saveSettingsDebounced();
- }); */
-
-
$("#horde_auto_adjust_response_length").on("input", function () {
horde_settings.auto_adjust_response_length = !!$(this).prop("checked");
saveSettingsDebounced();
diff --git a/public/style.css b/public/style.css
index f58f916ce..99d74fe40 100644
--- a/public/style.css
+++ b/public/style.css
@@ -3938,7 +3938,8 @@ toolcool-color-picker {
}
.neutral_warning {
- color: rgba(255, 0, 0, 0.5)
+ color: rgba(225, 0, 0, 0.9);
+ font-weight: 800;
}
.max_context_unlocked_block .checkbox_label {
@@ -4484,4 +4485,4 @@ body.waifuMode #avatar_zoom_popup {
overflow-y: auto;
overflow-x: hidden;
}
-}
\ No newline at end of file
+}
diff --git a/server.js b/server.js
index 09d5486d6..d2de68153 100644
--- a/server.js
+++ b/server.js
@@ -1708,6 +1708,40 @@ app.post("/importchat", urlencodedParser, function (request, response) {
response.send('Errors occurred while writing character files. Errors: ' + JSON.stringify(errors));
}
+ response.send({ res: true });
+ } else if (Array.isArray(jsonData.data_visible)) {
+ // oobabooga's format
+ const chat = [{
+ user_name: 'You',
+ character_name: ch_name,
+ create_date: humanizedISO8601DateTime(),
+ }];
+
+ for (const arr of jsonData.data_visible) {
+ if (arr[0]) {
+ const userMessage = {
+ name: 'You',
+ is_user: true,
+ is_name: true,
+ send_date: humanizedISO8601DateTime(),
+ mes: arr[0],
+ };
+ chat.push(userMessage);
+ }
+ if (arr[1]) {
+ const charMessage = {
+ name: ch_name,
+ is_user: false,
+ is_name: true,
+ send_date: humanizedISO8601DateTime(),
+ mes: arr[1],
+ };
+ chat.push(charMessage);
+ }
+ }
+
+ fs.writeFileSync(`${chatsPath + avatar_url}/${ch_name} - ${humanizedISO8601DateTime()} imported.jsonl`, chat.map(JSON.stringify).join('\n'), 'utf8');
+
response.send({ res: true });
} else {
response.send({ error: true });