36 lines
968 B
TypeScript
36 lines
968 B
TypeScript
const initContextMenus = async () => {
|
|
chrome.contextMenus.onClicked.addListener(async (info) => {
|
|
switch (info.menuItemId) {
|
|
case "copy_markdown_links":
|
|
case "copy_markdown_links_full":
|
|
let tab: chrome.tabs.Tab;
|
|
|
|
[tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
|
|
|
|
if (tab && !tab.url.includes("chrome")) {
|
|
const messageType = info.menuItemId === "copy_markdown_links"
|
|
? "toolbox:copyLinkToMarkdown"
|
|
: "toolbox:copyLinkToMarkdownFull";
|
|
|
|
return await chrome.tabs.sendMessage(tab.id, { type: messageType });
|
|
}
|
|
|
|
break;
|
|
}
|
|
});
|
|
|
|
chrome.contextMenus.create({
|
|
title: "复制链接为 Markdown",
|
|
contexts: ["page"],
|
|
id: "copy_markdown_links",
|
|
});
|
|
|
|
chrome.contextMenus.create({
|
|
title: "复制完整链接为 Markdown",
|
|
contexts: ["page"],
|
|
id: "copy_markdown_links_full",
|
|
});
|
|
};
|
|
|
|
export default initContextMenus;
|