Adding function to get preset values by name

d2df04550a74ba340953f5a937682d42754a1c4f

qvink <qvink@users.noreply.github.com>

1 files changed, +28 -0Showing whitespace changes
public/scripts/preset-manager.js+28 -0
@@ -615,6 +615,34 @@ class PresetManager {
615 return settings;615 return settings;
616 }616 }
617617
618 getCompletionPresetByName(name) {
619 // Retrieve a completion preset by name
620 let { presets, preset_names } = this.getPresetList();
621 let preset;
622
623 // Some APIs use an array of names, others use an object of {name: index}
624 if (Array.isArray(preset_names)) { // array of names
625 if (!preset_names.includes(name)) {
626 preset = undefined;
627 } else {
628 preset = presets[preset_names.indexOf(name)];
629 }
630 } else { // object of {names: index}
631 if (preset_names[name] === undefined) {
632 preset = undefined;
633 } else {
634 preset = presets[preset_names[name]];
635 }
636 }
637
638 // if the preset isn't found, return null
639 if (preset === undefined) {
640 console.error(`Preset ${name} not found`);
641 return;
642 }
643 return preset;
644 }
645
618 // pass no arguments to delete current preset646 // pass no arguments to delete current preset
619 async deletePreset(name) {647 async deletePreset(name) {
620 const { preset_names, presets } = this.getPresetList();648 const { preset_names, presets } = this.getPresetList();