use wasm_bindgen::prelude::*;
use web_sys::BroadcastChannel;
#[wasm_bindgen]
extern "C" {
#[derive(Clone)]
pub type PortLike;
#[wasm_bindgen(method, catch, js_name = "postMessage")]
pub fn post_message(this: &PortLike, value: &JsValue) -> Result<(), JsValue>;
#[wasm_bindgen(method, catch)]
pub fn close(this: &PortLike) -> Result<(), JsValue>;
}
impl PortLike {
pub fn broadcast(name: &str) -> Self {
BroadcastChannel::new(name)
.expect("Failed to create broadcast channel")
.unchecked_into()
}
}