Insert missing ooba samplers

b1bb41313f74e6df90624024031e62d703dc974f

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +16 -0Showing whitespace changes
public/scripts/textgen-settings.js+16 -0
@@ -805,6 +805,21 @@ function showTypeSpecificControls(type) {
805 });805 });
806}806}
807807
808/**
809 * Inserts missing items from the source array into the target array.
810 * @param {any[]} source - Source array
811 * @param {any[]} target - Target array
812 * @returns {void}
813 */
814function insertMissingArrayItems(source, target) {
815 for (const item of source) {
816 if (!target.includes(item)) {
817 const index = source.indexOf(item);
818 target.splice(index, 0, item);
819 }
820 }
821}
822
808function setSettingByName(setting, value, trigger) {823function setSettingByName(setting, value, trigger) {
809 if (value === null || value === undefined) {824 if (value === null || value === undefined) {
810 return;825 return;
@@ -819,6 +834,7 @@ function setSettingByName(setting, value, trigger) {
819834
820 if ('sampler_priority' === setting) {835 if ('sampler_priority' === setting) {
821 value = Array.isArray(value) ? value : OOBA_DEFAULT_ORDER;836 value = Array.isArray(value) ? value : OOBA_DEFAULT_ORDER;
837 insertMissingArrayItems(OOBA_DEFAULT_ORDER, value);
822 sortOobaItemsByOrder(value);838 sortOobaItemsByOrder(value);
823 settings.sampler_priority = value;839 settings.sampler_priority = value;
824 return;840 return;