@automerge/automerge-repo-network-messagechannel
Advanced tools
Comparing version 1.0.6 to 1.0.7
@@ -8,3 +8,3 @@ /** | ||
*/ | ||
import { type Message, NetworkAdapter, type PeerId } from "@automerge/automerge-repo"; | ||
import { type RepoMessage, NetworkAdapter, type PeerId } from "@automerge/automerge-repo"; | ||
import { MessagePortRef } from "./MessagePortRef.js"; | ||
@@ -18,3 +18,3 @@ export declare class MessageChannelNetworkAdapter extends NetworkAdapter { | ||
connect(peerId: PeerId): void; | ||
send(message: Message): void; | ||
send(message: RepoMessage): void; | ||
announceConnection(peerId: PeerId): void; | ||
@@ -21,0 +21,0 @@ disconnect(): void; |
{ | ||
"name": "@automerge/automerge-repo-network-messagechannel", | ||
"version": "1.0.6", | ||
"version": "1.0.7", | ||
"description": "MessageChannel network adapter for Automerge Repo", | ||
@@ -13,9 +13,9 @@ "repository": "https://github.com/automerge/automerge-repo/tree/master/packages/automerge-repo-network-messagechannel", | ||
"watch": "npm-watch", | ||
"test": "mocha --no-warnings --experimental-specifier-resolution=node --exit" | ||
"test": "vitest" | ||
}, | ||
"dependencies": { | ||
"@automerge/automerge-repo": "^1.0.6" | ||
"@automerge/automerge-repo": "^1.0.7" | ||
}, | ||
"peerDependencies": { | ||
"@automerge/automerge": "^2.1.0" | ||
"@automerge/automerge": "^2.1.5" | ||
}, | ||
@@ -33,6 +33,3 @@ "watch": { | ||
}, | ||
"devDependencies": { | ||
"@automerge/automerge": "^2.1.0" | ||
}, | ||
"gitHead": "088696831fed48c7a8a88109acd0465222dc8522" | ||
"gitHead": "71060981f168e511a99ab85b155a54a13fd04bcc" | ||
} |
@@ -9,6 +9,6 @@ /** | ||
import { | ||
type Message, | ||
type RepoMessage, | ||
NetworkAdapter, | ||
type PeerId, | ||
NetworkAdapterMessage, | ||
type Message, | ||
} from "@automerge/automerge-repo" | ||
@@ -45,41 +45,38 @@ import { MessagePortRef } from "./MessagePortRef.js" | ||
this.messagePortRef.start() | ||
this.messagePortRef.addListener( | ||
"message", | ||
(e: { data: NetworkAdapterMessage }) => { | ||
log("message port received", e.data) | ||
this.messagePortRef.addListener("message", (e: { data: Message }) => { | ||
log("message port received", e.data) | ||
const message = e.data | ||
if ("targetId" in message && message.targetId !== this.peerId) { | ||
throw new Error( | ||
"MessagePortNetwork should never receive messages for a different peer." | ||
) | ||
} | ||
const message = e.data | ||
if ("targetId" in message && message.targetId !== this.peerId) { | ||
throw new Error( | ||
"MessagePortNetwork should never receive messages for a different peer." | ||
) | ||
} | ||
const { senderId, type } = message | ||
const { senderId, type } = message | ||
switch (type) { | ||
case "arrive": | ||
this.messagePortRef.postMessage({ | ||
senderId: this.peerId, | ||
targetId: senderId, | ||
type: "welcome", | ||
switch (type) { | ||
case "arrive": | ||
this.messagePortRef.postMessage({ | ||
senderId: this.peerId, | ||
targetId: senderId, | ||
type: "welcome", | ||
}) | ||
this.announceConnection(senderId) | ||
break | ||
case "welcome": | ||
this.announceConnection(senderId) | ||
break | ||
default: | ||
if (!("data" in message)) { | ||
this.emit("message", message) | ||
} else { | ||
this.emit("message", { | ||
...message, | ||
data: new Uint8Array(message.data), | ||
}) | ||
this.announceConnection(senderId) | ||
break | ||
case "welcome": | ||
this.announceConnection(senderId) | ||
break | ||
default: | ||
if (!("data" in message)) { | ||
this.emit("message", message) | ||
} else { | ||
this.emit("message", { | ||
...message, | ||
data: new Uint8Array(message.data), | ||
}) | ||
} | ||
break | ||
} | ||
} | ||
break | ||
} | ||
) | ||
}) | ||
@@ -106,3 +103,3 @@ this.messagePortRef.addListener("close", () => { | ||
send(message: Message) { | ||
send(message: RepoMessage) { | ||
if ("data" in message) { | ||
@@ -109,0 +106,0 @@ const data = message.data.buffer.slice( |
@@ -0,1 +1,2 @@ | ||
import { describe } from "vitest" | ||
import { runAdapterTests } from "../../automerge-repo/src/helpers/tests/network-adapter-tests.js" | ||
@@ -2,0 +3,0 @@ import { MessageChannelNetworkAdapter as Adapter } from "../src/index.js" |
{ | ||
"extends": "../../typedoc.base.json", | ||
"entryPoints": ["src/index.ts"], | ||
"readme": "none" | ||
"extends": ["../../typedoc.base.json"], | ||
"entryPoints": ["src/index.ts"], | ||
"readme": "none" | ||
} |
Sorry, the diff of this file is not supported yet
0
21058
22
517