Skip to content

Commit 3fc4ce9

Browse files
committed
improve deduplication logic in getContextMenuOptions to handle context menu item keys more accurately
1 parent 2c8304e commit 3fc4ce9

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

webview-ui/src/utils/context-mentions.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -246,8 +246,17 @@ export function getContextMenuOptions(
246246
const seen = new Set()
247247
const deduped = allItems.filter((item) => {
248248
// Normalize paths for deduplication by ensuring leading slashes
249-
const normalizedValue = item.value && !item.value.startsWith("/") ? `/${item.value}` : item.value
250-
const key = `${item.type}-${normalizedValue}`
249+
const normalizedValue = item.value
250+
let key = ""
251+
if (
252+
item.type === ContextMenuOptionType.File ||
253+
item.type === ContextMenuOptionType.Folder ||
254+
item.type === ContextMenuOptionType.OpenedFile
255+
) {
256+
key = normalizedValue!
257+
} else {
258+
key = `${item.type}-${normalizedValue}`
259+
}
251260
if (seen.has(key)) return false
252261
seen.add(key)
253262
return true

0 commit comments

Comments
 (0)