perf(ui): cache settings Fuse instance in command palette

This commit is contained in:
akane 2026-03-21 12:04:25 -07:00
parent 7e56fc5030
commit da5ade79a7

View file

@ -1082,13 +1082,7 @@ class CommandPalette {
let results = this.allSettings;
if (query) {
const fuse = new Fuse(this.allSettings, {
keys: ['label', 'description'],
includeScore: true,
threshold: 0.4,
ignoreLocation: true,
});
results = fuse.search(query).map((r) => r.item);
results = this.settingsFuse.search(query).map((r) => r.item);
}
const items = results.map((setting) => ({
@ -1126,6 +1120,13 @@ class CommandPalette {
return { id: item.id, label, description, tab };
})
.filter((s) => s.label);
this.settingsFuse = new Fuse(this.allSettings, {
keys: ['label', 'description'],
includeScore: true,
threshold: 0.4,
ignoreLocation: true,
});
}
async navigateToSetting(setting) {