refactor(command_palette): reduce duplication

This commit is contained in:
Elian Doran 2025-07-27 21:39:55 +03:00
parent c09e124805
commit e8b16287e0
No known key found for this signature in database

View File

@ -83,26 +83,13 @@ async function autocompleteSource(term: string, cb: (rows: Suggestion[]) => void
if (options.isCommandPalette && term.startsWith(">")) {
const commandQuery = term.substring(1).trim();
if (commandQuery.length === 0) {
// Show all commands if no query
const allCommands = commandRegistry.getAllCommands();
const commandSuggestions: Suggestion[] = allCommands.map(cmd => ({
action: "command",
commandId: cmd.id,
noteTitle: cmd.name,
notePathTitle: `>${cmd.name}`,
highlightedNotePathTitle: cmd.name,
commandDescription: cmd.description,
commandShortcut: cmd.shortcut,
icon: cmd.icon
}));
cb(commandSuggestions);
return;
}
// Search commands
const matchedCommands = commandRegistry.searchCommands(commandQuery);
const commandSuggestions: Suggestion[] = matchedCommands.map(cmd => ({
// Get commands (all if no query, filtered if query provided)
const commands = commandQuery.length === 0
? commandRegistry.getAllCommands()
: commandRegistry.searchCommands(commandQuery);
// Convert commands to suggestions
const commandSuggestions: Suggestion[] = commands.map(cmd => ({
action: "command",
commandId: cmd.id,
noteTitle: cmd.name,
@ -112,6 +99,7 @@ async function autocompleteSource(term: string, cb: (rows: Suggestion[]) => void
commandShortcut: cmd.shortcut,
icon: cmd.icon
}));
cb(commandSuggestions);
return;
}