src/popup/popup-messaging.ts
Symbols by Kind
function
3
All Symbols
| Name | Kind | Visibility | Status | Lines | Signature |
|---|---|---|---|---|---|
| sendToActiveTab | function | exported- | 8-18 | sendToActiveTab(
message: ExtensionMessage,
): : Promise<unknown> |
|
| sendToBackground | function | exported- | 20-24 | sendToBackground(
message: ExtensionMessage,
): : Promise<unknown> |
|
| getActivePageUrl | function | exported- | 26-29 | getActivePageUrl(): : Promise<string> |
Full Source
/**
* Popup messaging helpers — wraps chrome messaging APIs
*/
import type { ExtensionMessage } from "@/types";
import { sendToActiveTab as sendMessageToActiveTab } from "@/lib/chrome/active-tab-messaging";
export async function sendToActiveTab(
message: ExtensionMessage,
): Promise<unknown> {
const result = await sendMessageToActiveTab(message, {
injectIfNeeded: true,
});
if (result && typeof result === "object" && "error" in result) {
return null;
}
return result;
}
export async function sendToBackground(
message: ExtensionMessage,
): Promise<unknown> {
return chrome.runtime.sendMessage(message);
}
export async function getActivePageUrl(): Promise<string> {
const [tab] = await chrome.tabs.query({ active: true, currentWindow: true });
return tab?.url ?? "";
}
export { escapeHtml } from "@/lib/ui";