forked from
me.webbeef.org/browser.html
Rewild Your Web
1--- original
2+++ modified
3@@ -0,0 +1,71 @@
4+/* SPDX Id: AGPL-3.0-or-later */
5+
6+[Exposed=Window,
7+Func="Embedder::is_allowed_to_embed"]
8+interface Peer : EventTarget {
9+ attribute DOMString displayName;
10+ readonly attribute DOMString id;
11+ readonly attribute DOMString status;
12+
13+ // This peer left.
14+ attribute EventHandler onpeerleft;
15+};
16+
17+[Exposed=Window,
18+Func="Embedder::is_allowed_to_embed"]
19+interface PairingPeerEvent : Event {
20+ [Throws] constructor(DOMString type, PairingPeerEventInit eventInitDict);
21+ readonly attribute Peer peer;
22+};
23+
24+dictionary PairingPeerEventInit : EventInit {
25+ required Peer peer;
26+};
27+
28+[Exposed=Window,
29+Func="Embedder::is_allowed_to_embed"]
30+interface Pairing : EventTarget {
31+ // Starts the pairing service.
32+ Promise<undefined> start();
33+
34+ // Stops the pairing service.
35+ Promise<undefined> stop();
36+
37+ // Our own endpoint.
38+ Promise<Peer> local();
39+
40+ // Update the display name and restart the service.
41+ Promise<undefined> setName(DOMString name);
42+
43+ // The list of paired peers.
44+ Promise<sequence<Peer>> peers();
45+
46+ // Start a pairing handshake with a discovered peer.
47+ Promise<boolean> requestPairing(Peer peer);
48+
49+ // Accept an incoming pairing request.
50+ Promise<undefined> acceptPairing(Peer peer);
51+
52+ // Reject an incoming pairing request.
53+ Promise<undefined> rejectPairing(Peer peer);
54+
55+ // Remove a paired peer (unpair and forget).
56+ Promise<undefined> removePeer(Peer peer);
57+
58+ // A new unpaired peer was discovered.
59+ attribute EventHandler onpeerdiscovered;
60+
61+ // A paired peer joined.
62+ attribute EventHandler onpeerjoined;
63+
64+ // A paired peer left.
65+ attribute EventHandler onpeerleft;
66+
67+ // An unpaired peer is requesting pairing.
68+ attribute EventHandler onpairingrequest;
69+};
70+
71+partial interface Embedder {
72+ [Func="Embedder::is_allowed_to_embed"]
73+ readonly attribute Pairing pairing;
74+};