mirror of
https://github.com/Tencent/BrowserSkill.git
synced 2026-09-10 13:01:23 +08:00
24 lines
964 B
TypeScript
24 lines
964 B
TypeScript
import type { SnapshotInfo } from "./connection-controller";
|
|
|
|
/**
|
|
* Wire protocol for `chrome.runtime.connect({ name: "popup" })`:
|
|
* - Background pushes `{ kind: "snapshot", data: SnapshotInfo }`.
|
|
* - Popup sends `{ kind: "set_label" }`, `{ kind: "set_connection_enabled" }`, etc.
|
|
*
|
|
* NOTE(review M4/M5 C2): the `set_port` variant is defined as a
|
|
* placeholder so the future custom-port UI does not have to re-design
|
|
* the bridge, but the popup does NOT render a control that emits it
|
|
* yet and the background does NOT route it. The wiring requires
|
|
* ConnectionController to dispose its current Transport and persist
|
|
* the port in chrome.storage; tracked as a follow-up.
|
|
*/
|
|
|
|
export const POPUP_PORT_NAME = "popup";
|
|
|
|
export type PopupOutbound =
|
|
| { kind: "set_label"; value: string }
|
|
| { kind: "set_port"; value: number }
|
|
| { kind: "set_connection_enabled"; value: boolean };
|
|
|
|
export type PopupInbound = { kind: "snapshot"; data: SnapshotInfo };
|