mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-02-01 11:56:48 +01:00
Merge branch 'staging' of https://github.com/SillyTavern/SillyTavern into staging
This commit is contained in:
commit
14f395fdf9
@ -523,7 +523,6 @@ async function switchZenSliders() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
async function CreateZenSliders(elmnt) {
|
async function CreateZenSliders(elmnt) {
|
||||||
//await delay(100)
|
|
||||||
var originalSlider = elmnt;
|
var originalSlider = elmnt;
|
||||||
var sliderID = originalSlider.attr('id');
|
var sliderID = originalSlider.attr('id');
|
||||||
var sliderMin = Number(originalSlider.attr('min'));
|
var sliderMin = Number(originalSlider.attr('min'));
|
||||||
@ -664,29 +663,28 @@ async function CreateZenSliders(elmnt) {
|
|||||||
step: stepScale,
|
step: stepScale,
|
||||||
min: sliderMin,
|
min: sliderMin,
|
||||||
max: sliderMax,
|
max: sliderMax,
|
||||||
create: function () {
|
create: async function () {
|
||||||
|
await delay(100)
|
||||||
var handle = $(this).find('.ui-slider-handle');
|
var handle = $(this).find('.ui-slider-handle');
|
||||||
var handleText, stepNumber, leftMargin;
|
var handleText, stepNumber, leftMargin;
|
||||||
|
|
||||||
//handling creation of amt_gen
|
//handling creation of amt_gen
|
||||||
if (newSlider.attr('id') == 'amount_gen_zenslider') {
|
if (newSlider.attr('id') == 'amount_gen_zenslider') {
|
||||||
//console.log(`using custom process for ${newSlider.attr('id')}`)
|
|
||||||
handleText = steps[sliderValue];
|
handleText = steps[sliderValue];
|
||||||
stepNumber = sliderValue;
|
stepNumber = sliderValue;
|
||||||
leftMargin = ((stepNumber) / numSteps) * 50 * -1;
|
leftMargin = ((stepNumber) / numSteps) * 50 * -1;
|
||||||
handle.text(handleText)
|
handle.text(handleText)
|
||||||
.css('margin-left', `${leftMargin}px`);
|
.css('margin-left', `${leftMargin}px`);
|
||||||
//console.log(`${newSlider.attr('id')} initial value:${handleText}, stepNum:${stepNumber}, numSteps:${numSteps}, left-margin:${leftMargin}`)
|
//console.log(`${newSlider.attr('id')} initial value:${handleText}, stepNum:${stepNumber}, numSteps:${numSteps}, left-margin:${leftMargin}`)
|
||||||
|
}
|
||||||
//handling creation of rep_pen_range for ooba
|
//handling creation of rep_pen_range for ooba
|
||||||
} else if (newSlider.attr('id') == 'rep_pen_range_textgenerationwebui_zenslider') {
|
else if (newSlider.attr('id') == 'rep_pen_range_textgenerationwebui_zenslider') {
|
||||||
if ($('#rep_pen_range_textgenerationwebui_zensliders').length !== 0) {
|
if ($('#rep_pen_range_textgenerationwebui_zensliders').length !== 0) {
|
||||||
$('#rep_pen_range_textgenerationwebui_zensliders').remove();
|
$('#rep_pen_range_textgenerationwebui_zensliders').remove();
|
||||||
}
|
}
|
||||||
handleText = steps[sliderValue];
|
handleText = steps[sliderValue];
|
||||||
stepNumber = sliderValue;
|
stepNumber = sliderValue;
|
||||||
leftMargin = ((stepNumber) / numSteps) * 50 * -1;
|
leftMargin = ((stepNumber) / numSteps) * 50 * -1;
|
||||||
|
|
||||||
if (sliderValue === offVal) {
|
if (sliderValue === offVal) {
|
||||||
handleText = 'Off';
|
handleText = 'Off';
|
||||||
handle.css('color', 'rgba(128,128,128,0.5');
|
handle.css('color', 'rgba(128,128,128,0.5');
|
||||||
@ -698,13 +696,11 @@ async function CreateZenSliders(elmnt) {
|
|||||||
//console.log(sliderValue, handleText, offVal, allVal)
|
//console.log(sliderValue, handleText, offVal, allVal)
|
||||||
//console.log(`${newSlider.attr('id')} sliderValue = ${sliderValue}, handleText:${handleText}, stepNum:${stepNumber}, numSteps:${numSteps}, left-margin:${leftMargin}`)
|
//console.log(`${newSlider.attr('id')} sliderValue = ${sliderValue}, handleText:${handleText}, stepNum:${stepNumber}, numSteps:${numSteps}, left-margin:${leftMargin}`)
|
||||||
originalSlider.val(steps[sliderValue]);
|
originalSlider.val(steps[sliderValue]);
|
||||||
originalSlider.trigger('input');
|
}
|
||||||
originalSlider.trigger('change');
|
//create all other sliders
|
||||||
} else {
|
else {
|
||||||
//handling creation for all other sliders
|
|
||||||
var numVal = Number(sliderValue).toFixed(decimals);
|
var numVal = Number(sliderValue).toFixed(decimals);
|
||||||
offVal = Number(offVal).toFixed(decimals);
|
offVal = Number(offVal).toFixed(decimals);
|
||||||
//console.log(`${sliderID}: offVal ${offVal}`)
|
|
||||||
if (numVal === offVal) {
|
if (numVal === offVal) {
|
||||||
handle.text('Off').css('color', 'rgba(128,128,128,0.5');
|
handle.text('Off').css('color', 'rgba(128,128,128,0.5');
|
||||||
} else {
|
} else {
|
||||||
@ -712,11 +708,15 @@ async function CreateZenSliders(elmnt) {
|
|||||||
}
|
}
|
||||||
stepNumber = ((sliderValue - sliderMin) / stepScale);
|
stepNumber = ((sliderValue - sliderMin) / stepScale);
|
||||||
leftMargin = (stepNumber / numSteps) * 50 * -1;
|
leftMargin = (stepNumber / numSteps) * 50 * -1;
|
||||||
|
originalSlider.val(numVal)
|
||||||
|
.data('newSlider', newSlider)
|
||||||
|
//console.log(`${newSlider.attr('id')} sliderValue = ${sliderValue}, handleText:${handleText, numVal}, stepNum:${stepNumber}, numSteps:${numSteps}, left-margin:${leftMargin}`)
|
||||||
var isManualInput = false;
|
var isManualInput = false;
|
||||||
var valueBeforeManualInput;
|
var valueBeforeManualInput;
|
||||||
handle.css('margin-left', `${leftMargin}px`)
|
handle.css('margin-left', `${leftMargin}px`)
|
||||||
|
|
||||||
.attr('contenteditable', 'true')
|
.attr('contenteditable', 'true')
|
||||||
|
//these sliders need listeners for manual inputs
|
||||||
.on('click', function () {
|
.on('click', function () {
|
||||||
//this just selects all the text in the handle so user can overwrite easily
|
//this just selects all the text in the handle so user can overwrite easily
|
||||||
//needed because JQUery UI uses left/right arrow keys as well as home/end to move the slider..
|
//needed because JQUery UI uses left/right arrow keys as well as home/end to move the slider..
|
||||||
@ -729,10 +729,15 @@ async function CreateZenSliders(elmnt) {
|
|||||||
selection.removeAllRanges();
|
selection.removeAllRanges();
|
||||||
selection.addRange(range);
|
selection.addRange(range);
|
||||||
})
|
})
|
||||||
.on('keyup', function () {
|
.on('keyup', function (e) {
|
||||||
valueBeforeManualInput = newSlider.val();
|
valueBeforeManualInput = numVal;
|
||||||
console.log(valueBeforeManualInput);
|
//console.log(valueBeforeManualInput, numVal, handleText);
|
||||||
isManualInput = true;
|
isManualInput = true;
|
||||||
|
//allow enter to trigger slider update
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
e.preventDefault
|
||||||
|
handle.trigger('blur')
|
||||||
|
}
|
||||||
})
|
})
|
||||||
//trigger slider changes when user clicks away
|
//trigger slider changes when user clicks away
|
||||||
.on('mouseup blur', function () {
|
.on('mouseup blur', function () {
|
||||||
@ -750,15 +755,14 @@ async function CreateZenSliders(elmnt) {
|
|||||||
console.log(valueBeforeManualInput);
|
console.log(valueBeforeManualInput);
|
||||||
newSlider.val(valueBeforeManualInput);
|
newSlider.val(valueBeforeManualInput);
|
||||||
handle.text(valueBeforeManualInput);
|
handle.text(valueBeforeManualInput);
|
||||||
|
handleSlideEvent.call(newSlider, null, { value: parseFloat(valueBeforeManualInput) }, 'manual');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
isManualInput = false;
|
isManualInput = false;
|
||||||
});
|
});
|
||||||
console.debug(sliderID, sliderValue, stepNumber, stepScale);
|
|
||||||
originalSlider.val(numVal);
|
|
||||||
originalSlider.trigger('input');
|
|
||||||
originalSlider.trigger('change');
|
|
||||||
}
|
}
|
||||||
|
//zenSlider creation done, hide the original
|
||||||
|
originalSlider.hide();
|
||||||
},
|
},
|
||||||
slide: handleSlideEvent,
|
slide: handleSlideEvent,
|
||||||
});
|
});
|
||||||
@ -769,14 +773,8 @@ async function CreateZenSliders(elmnt) {
|
|||||||
offVal = Number(offVal).toFixed(decimals);
|
offVal = Number(offVal).toFixed(decimals);
|
||||||
allVal = Number(allVal).toFixed(decimals);
|
allVal = Number(allVal).toFixed(decimals);
|
||||||
console.log(numVal, sliderMin, sliderMax, numVal > sliderMax, numVal < sliderMin);
|
console.log(numVal, sliderMin, sliderMax, numVal > sliderMax, numVal < sliderMin);
|
||||||
if (numVal > sliderMax) {
|
if (numVal > sliderMax) { numVal = sliderMax; }
|
||||||
//console.log('clamping numVal to sliderMax')
|
if (numVal < sliderMin) { numVal = sliderMin; }
|
||||||
numVal = sliderMax;
|
|
||||||
}
|
|
||||||
if (numVal < sliderMin) {
|
|
||||||
//console.log('clamping numVal to sliderMin')
|
|
||||||
numVal = sliderMin;
|
|
||||||
}
|
|
||||||
var stepNumber = ((ui.value - sliderMin) / stepScale).toFixed(0);
|
var stepNumber = ((ui.value - sliderMin) / stepScale).toFixed(0);
|
||||||
var handleText = (ui.value);
|
var handleText = (ui.value);
|
||||||
var leftMargin = (stepNumber / numSteps) * 50 * -1;
|
var leftMargin = (stepNumber / numSteps) * 50 * -1;
|
||||||
@ -820,18 +818,13 @@ async function CreateZenSliders(elmnt) {
|
|||||||
newSlider.val(handleText);
|
newSlider.val(handleText);
|
||||||
}
|
}
|
||||||
//for manually typed-in values we must adjust left position because JQUI doesn't do it for us
|
//for manually typed-in values we must adjust left position because JQUI doesn't do it for us
|
||||||
//if (type === 'manual') {
|
|
||||||
handle.css('left', leftPos);
|
handle.css('left', leftPos);
|
||||||
//}
|
|
||||||
//adjust a negative left margin to avoid overflowing right side of slider body
|
//adjust a negative left margin to avoid overflowing right side of slider body
|
||||||
handle.css('margin-left', `${leftMargin}px`);
|
handle.css('margin-left', `${leftMargin}px`);
|
||||||
originalSlider.val(handleText);
|
originalSlider.val(numVal);
|
||||||
originalSlider.trigger('input');
|
originalSlider.trigger('input');
|
||||||
originalSlider.trigger('change');
|
originalSlider.trigger('change');
|
||||||
}
|
}
|
||||||
originalSlider.data('newSlider', newSlider);
|
|
||||||
await delay(1);
|
|
||||||
originalSlider.hide();
|
|
||||||
}
|
}
|
||||||
function switchUiMode() {
|
function switchUiMode() {
|
||||||
const fastUi = localStorage.getItem(storage_keys.fast_ui_mode);
|
const fastUi = localStorage.getItem(storage_keys.fast_ui_mode);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user