diff --git a/apps/client/src/menus/context_menu.ts b/apps/client/src/menus/context_menu.ts index 72519233a..f343c6c0a 100644 --- a/apps/client/src/menus/context_menu.ts +++ b/apps/client/src/menus/context_menu.ts @@ -17,11 +17,17 @@ interface MenuSeparatorItem { title: "----"; } +interface MenuItemBadge { + title: string; + className?: string; +} + export interface MenuCommandItem { title: string; command?: T; type?: string; uiIcon?: string; + badges?: MenuItemBadge[]; templateNoteId?: string; enabled?: boolean; handler?: MenuHandler; @@ -157,6 +163,18 @@ class ContextMenu { .append("   ") // some space between icon and text .append(item.title); + if ("badges" in item && item.badges) { + for (let badge of item.badges) { + const badgeElement = $(``).text(badge.title); + + if (badge.className) { + badgeElement.addClass(badge.className); + } + + $link.append(badgeElement); + } + } + if ("shortcut" in item && item.shortcut) { $link.append($("").text(item.shortcut)); }