let loose the Mad Labs
This commit is contained in:
parent
2f5e7778cc
commit
dfb8a85eed
|
@ -121,6 +121,7 @@
|
||||||
<div data-i18n="clickslidertips" class="toggle-description wide100p editable-slider-notification">
|
<div data-i18n="clickslidertips" class="toggle-description wide100p editable-slider-notification">
|
||||||
Click slider numbers to input manually.
|
Click slider numbers to input manually.
|
||||||
</div>
|
</div>
|
||||||
|
<div id="labModeWarning" class="redWarningBG textAlignCenter">MAD LAB MODE ON</div>
|
||||||
<a href="https://docs.sillytavern.app/usage/common-settings/" target="_blank" title="Documentation on sampling parameters.">
|
<a href="https://docs.sillytavern.app/usage/common-settings/" target="_blank" title="Documentation on sampling parameters.">
|
||||||
<span name="samplerHelpButton" class="note-link-span topRightInset fa-solid fa-circle-question"></span>
|
<span name="samplerHelpButton" class="note-link-span topRightInset fa-solid fa-circle-question"></span>
|
||||||
</a>
|
</a>
|
||||||
|
@ -2702,6 +2703,10 @@
|
||||||
<input id="enableZenSliders" type="checkbox" />
|
<input id="enableZenSliders" type="checkbox" />
|
||||||
<span data-i18n="Zen Sliders">Zen Sliders</span>
|
<span data-i18n="Zen Sliders">Zen Sliders</span>
|
||||||
</label>
|
</label>
|
||||||
|
<label data-newbie-hidden for="enableLabMode" class="checkbox_label">
|
||||||
|
<input id="enableLabMode" type="checkbox" />
|
||||||
|
<span data-i18n="Mad Lab Mode">Mad Lab Mode</span>
|
||||||
|
</label>
|
||||||
<label data-newbie-hidden for="messageTimerEnabled" class="checkbox_label">
|
<label data-newbie-hidden for="messageTimerEnabled" class="checkbox_label">
|
||||||
<input id="messageTimerEnabled" type="checkbox" />
|
<input id="messageTimerEnabled" type="checkbox" />
|
||||||
<span data-i18n="Message Timer">Message Timer</span>
|
<span data-i18n="Message Timer">Message Timer</span>
|
||||||
|
@ -4618,4 +4623,4 @@
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
|
@ -9010,6 +9010,13 @@ jQuery(async function () {
|
||||||
const closestStep = Math.round(rawStepCompare)
|
const closestStep = Math.round(rawStepCompare)
|
||||||
const closestStepRaw = (closestStep) * masterStep
|
const closestStepRaw = (closestStep) * masterStep
|
||||||
|
|
||||||
|
//yolo anything for Lab Mode
|
||||||
|
if (power_user.enableLabMode) {
|
||||||
|
console.log($(masterElement).attr('id'), myValue)
|
||||||
|
$(masterElement).val(myValue).trigger('input')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
//if text box val is not a number, reset slider val to its previous and wait for better input
|
//if text box val is not a number, reset slider val to its previous and wait for better input
|
||||||
if (Number.isNaN(myValue)) {
|
if (Number.isNaN(myValue)) {
|
||||||
console.warn('Label input is not a valid number. Resetting the value to match slider', myText);
|
console.warn('Label input is not a valid number. Resetting the value to match slider', myText);
|
||||||
|
|
|
@ -166,6 +166,7 @@ let power_user = {
|
||||||
message_token_count_enabled: false,
|
message_token_count_enabled: false,
|
||||||
expand_message_actions: false,
|
expand_message_actions: false,
|
||||||
enableZenSliders: false,
|
enableZenSliders: false,
|
||||||
|
enableLabMode: false,
|
||||||
prefer_character_prompt: true,
|
prefer_character_prompt: true,
|
||||||
prefer_character_jailbreak: true,
|
prefer_character_jailbreak: true,
|
||||||
quick_continue: false,
|
quick_continue: false,
|
||||||
|
@ -256,6 +257,7 @@ const storage_keys = {
|
||||||
message_token_count_enabled: 'MessageTokenCountEnabled',
|
message_token_count_enabled: 'MessageTokenCountEnabled',
|
||||||
expand_message_actions: 'ExpandMessageActions',
|
expand_message_actions: 'ExpandMessageActions',
|
||||||
enableZenSliders: 'enableZenSliders',
|
enableZenSliders: 'enableZenSliders',
|
||||||
|
enableLabMode: 'enableLabMode',
|
||||||
};
|
};
|
||||||
|
|
||||||
const contextControls = [
|
const contextControls = [
|
||||||
|
@ -424,13 +426,62 @@ function switchMessageActions() {
|
||||||
$('.extraMesButtons, .extraMesButtonsHint').removeAttr('style');
|
$('.extraMesButtons, .extraMesButtonsHint').removeAttr('style');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var originalSliderValues = []
|
||||||
|
|
||||||
|
async function switchLabMode() {
|
||||||
|
|
||||||
|
if (power_user.enableZenSliders) {
|
||||||
|
//force disable ZenSliders for Lab Mode
|
||||||
|
$("#enableZenSliders").trigger('click')
|
||||||
|
}
|
||||||
|
await delay(100)
|
||||||
|
const value = localStorage.getItem(storage_keys.enableLabMode);
|
||||||
|
power_user.enableLabMode = value === null ? false : value == "true";
|
||||||
|
$("body").toggleClass("enableLabMode", power_user.enableLabMode);
|
||||||
|
$("#enableLabMode").prop("checked", power_user.enableLabMode);
|
||||||
|
|
||||||
|
if (power_user.enableLabMode) {
|
||||||
|
//save all original slider values into an array
|
||||||
|
$("#advanced-ai-config-block input").each(function () {
|
||||||
|
let id = $(this).attr('id')
|
||||||
|
let min = $(this).attr('min')
|
||||||
|
let max = $(this).attr('max')
|
||||||
|
let step = $(this).attr('step')
|
||||||
|
originalSliderValues.push({ id, min, max, step });
|
||||||
|
})
|
||||||
|
//console.log(originalSliderValues)
|
||||||
|
//remove limits on all inputs and hide sliders
|
||||||
|
$("#advanced-ai-config-block input")
|
||||||
|
.attr('min', '-99999')
|
||||||
|
.attr('max', '99999')
|
||||||
|
.attr('step', '0.001')
|
||||||
|
$("#labModeWarning").show()
|
||||||
|
//$("#advanced-ai-config-block input[type='range']").hide()
|
||||||
|
|
||||||
|
} else {
|
||||||
|
//re apply the original sliders values to each input
|
||||||
|
originalSliderValues.forEach(function (slider) {
|
||||||
|
$("#" + slider.id)
|
||||||
|
.attr('min', slider.min)
|
||||||
|
.attr('max', slider.max)
|
||||||
|
.attr('step', slider.step)
|
||||||
|
.trigger('input')
|
||||||
|
});
|
||||||
|
$("#advanced-ai-config-block input[type='range']").show()
|
||||||
|
$("#labModeWarning").hide()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async function switchZenSliders() {
|
async function switchZenSliders() {
|
||||||
|
|
||||||
await delay(100)
|
await delay(100)
|
||||||
const value = localStorage.getItem(storage_keys.enableZenSliders);
|
const value = localStorage.getItem(storage_keys.enableZenSliders);
|
||||||
power_user.enableZenSliders = value === null ? false : value == "true";
|
power_user.enableZenSliders = value === null ? false : value == "true";
|
||||||
$("body").toggleClass("enableZenSliders", power_user.enableZenSliders);
|
$("body").toggleClass("enableZenSliders", power_user.enableZenSliders);
|
||||||
$("#enableZenSliders").prop("checked", power_user.enableZenSliders);
|
$("#enableZenSliders").prop("checked", power_user.enableZenSliders);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (power_user.enableZenSliders) {
|
if (power_user.enableZenSliders) {
|
||||||
$("#pro-settings-block input[type='number']").hide();
|
$("#pro-settings-block input[type='number']").hide();
|
||||||
//hide number inputs that are not 'seed' inputs
|
//hide number inputs that are not 'seed' inputs
|
||||||
|
@ -972,6 +1023,13 @@ async function applyTheme(name) {
|
||||||
switchMessageActions();
|
switchMessageActions();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
key: 'enableLabMode',
|
||||||
|
action: async () => {
|
||||||
|
localStorage.setItem(storage_keys.enableLabMode, Boolean(power_user.enableLabMode));
|
||||||
|
switchMessageActions();
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
key: 'hotswap_enabled',
|
key: 'hotswap_enabled',
|
||||||
action: async () => {
|
action: async () => {
|
||||||
|
@ -1087,6 +1145,7 @@ function loadPowerUserSettings(settings, data) {
|
||||||
const mesIDDisplay = localStorage.getItem(storage_keys.mesIDDisplay_enabled);
|
const mesIDDisplay = localStorage.getItem(storage_keys.mesIDDisplay_enabled);
|
||||||
const expandMessageActions = localStorage.getItem(storage_keys.expand_message_actions);
|
const expandMessageActions = localStorage.getItem(storage_keys.expand_message_actions);
|
||||||
const enableZenSliders = localStorage.getItem(storage_keys.enableZenSliders);
|
const enableZenSliders = localStorage.getItem(storage_keys.enableZenSliders);
|
||||||
|
const enableLabMode = localStorage.getItem(storage_keys.enableLabMode);
|
||||||
power_user.fast_ui_mode = fastUi === null ? true : fastUi == "true";
|
power_user.fast_ui_mode = fastUi === null ? true : fastUi == "true";
|
||||||
power_user.movingUI = movingUI === null ? false : movingUI == "true";
|
power_user.movingUI = movingUI === null ? false : movingUI == "true";
|
||||||
power_user.noShadows = noShadows === null ? false : noShadows == "true";
|
power_user.noShadows = noShadows === null ? false : noShadows == "true";
|
||||||
|
@ -1096,6 +1155,7 @@ function loadPowerUserSettings(settings, data) {
|
||||||
power_user.mesIDDisplay_enabled = mesIDDisplay === null ? true : mesIDDisplay == "true";
|
power_user.mesIDDisplay_enabled = mesIDDisplay === null ? true : mesIDDisplay == "true";
|
||||||
power_user.expand_message_actions = expandMessageActions === null ? true : expandMessageActions == "true";
|
power_user.expand_message_actions = expandMessageActions === null ? true : expandMessageActions == "true";
|
||||||
power_user.enableZenSliders = enableZenSliders === null ? false : enableZenSliders == "true";
|
power_user.enableZenSliders = enableZenSliders === null ? false : enableZenSliders == "true";
|
||||||
|
power_user.enableLabMode = enableLabMode === null ? false : enableLabMode == "true";
|
||||||
power_user.avatar_style = Number(localStorage.getItem(storage_keys.avatar_style) ?? avatar_styles.ROUND);
|
power_user.avatar_style = Number(localStorage.getItem(storage_keys.avatar_style) ?? avatar_styles.ROUND);
|
||||||
//power_user.chat_display = Number(localStorage.getItem(storage_keys.chat_display) ?? chat_styles.DEFAULT);
|
//power_user.chat_display = Number(localStorage.getItem(storage_keys.chat_display) ?? chat_styles.DEFAULT);
|
||||||
power_user.chat_width = Number(localStorage.getItem(storage_keys.chat_width) ?? 50);
|
power_user.chat_width = Number(localStorage.getItem(storage_keys.chat_width) ?? 50);
|
||||||
|
@ -1178,6 +1238,7 @@ function loadPowerUserSettings(settings, data) {
|
||||||
$("#prefer_character_prompt").prop("checked", power_user.prefer_character_prompt);
|
$("#prefer_character_prompt").prop("checked", power_user.prefer_character_prompt);
|
||||||
$("#prefer_character_jailbreak").prop("checked", power_user.prefer_character_jailbreak);
|
$("#prefer_character_jailbreak").prop("checked", power_user.prefer_character_jailbreak);
|
||||||
$("#enableZenSliders").prop('checked', power_user.enableZenSliders).trigger('input');
|
$("#enableZenSliders").prop('checked', power_user.enableZenSliders).trigger('input');
|
||||||
|
$("#enableLabMode").prop('checked', power_user.enableLabMode).trigger('input');
|
||||||
$(`input[name="avatar_style"][value="${power_user.avatar_style}"]`).prop("checked", true);
|
$(`input[name="avatar_style"][value="${power_user.avatar_style}"]`).prop("checked", true);
|
||||||
$(`#chat_display option[value=${power_user.chat_display}]`).attr("selected", true).trigger('change');
|
$(`#chat_display option[value=${power_user.chat_display}]`).attr("selected", true).trigger('change');
|
||||||
$('#chat_width_slider').val(power_user.chat_width);
|
$('#chat_width_slider').val(power_user.chat_width);
|
||||||
|
@ -1598,6 +1659,7 @@ async function saveTheme() {
|
||||||
message_token_count_enabled: power_user.message_token_count_enabled,
|
message_token_count_enabled: power_user.message_token_count_enabled,
|
||||||
expand_message_actions: power_user.expand_message_actions,
|
expand_message_actions: power_user.expand_message_actions,
|
||||||
enableZenSliders: power_user.enableZenSliders,
|
enableZenSliders: power_user.enableZenSliders,
|
||||||
|
enableLabMode: power_user.enableLabMode,
|
||||||
hotswap_enabled: power_user.hotswap_enabled,
|
hotswap_enabled: power_user.hotswap_enabled,
|
||||||
custom_css: power_user.custom_css,
|
custom_css: power_user.custom_css,
|
||||||
|
|
||||||
|
@ -2591,12 +2653,31 @@ $(document).ready(() => {
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#enableZenSliders").on("input", function () {
|
$("#enableZenSliders").on("input", function () {
|
||||||
|
if (power_user.enableLabMode) {
|
||||||
|
//disallow zenSliders while Lab Mode is active
|
||||||
|
toastr.warning('ZenSliders not allowed in Mad Lab Mode')
|
||||||
|
$(this).prop('checked', false);
|
||||||
|
return
|
||||||
|
}
|
||||||
const value = !!$(this).prop('checked');
|
const value = !!$(this).prop('checked');
|
||||||
power_user.enableZenSliders = value;
|
power_user.enableZenSliders = value;
|
||||||
localStorage.setItem(storage_keys.enableZenSliders, Boolean(power_user.enableZenSliders));
|
localStorage.setItem(storage_keys.enableZenSliders, Boolean(power_user.enableZenSliders));
|
||||||
switchZenSliders();
|
switchZenSliders();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#enableLabMode").on("input", function () {
|
||||||
|
if (power_user.enableZenSliders) {
|
||||||
|
//disallow Lab Mode if ZenSliders are active
|
||||||
|
toastr.warning('Mad Lab Mode not allowed while ZenSliders are active')
|
||||||
|
$(this).prop('checked', false);
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const value = !!$(this).prop('checked');
|
||||||
|
power_user.enableLabMode = value;
|
||||||
|
localStorage.setItem(storage_keys.enableLabMode, Boolean(power_user.enableLabMode));
|
||||||
|
switchLabMode();
|
||||||
|
});
|
||||||
|
|
||||||
$("#mesIDDisplayEnabled").on("input", function () {
|
$("#mesIDDisplayEnabled").on("input", function () {
|
||||||
const value = !!$(this).prop('checked');
|
const value = !!$(this).prop('checked');
|
||||||
power_user.mesIDDisplay_enabled = value;
|
power_user.mesIDDisplay_enabled = value;
|
||||||
|
|
Loading…
Reference in New Issue