@automerge/automerge-repo-network-messagechannel
Advanced tools
Comparing version 1.1.0-alpha.1 to 1.1.0-alpha.2
@@ -8,3 +8,3 @@ /** | ||
*/ | ||
import { type RepoMessage, NetworkAdapter, type PeerId, type StorageId } from "@automerge/automerge-repo"; | ||
import { type RepoMessage, NetworkAdapter, type PeerId, PeerMetadata } from "@automerge/automerge-repo"; | ||
import { MessagePortRef } from "./MessagePortRef.js"; | ||
@@ -17,5 +17,5 @@ export declare class MessageChannelNetworkAdapter extends NetworkAdapter { | ||
constructor(messagePort: MessagePort, config?: MessageChannelNetworkAdapterConfig); | ||
connect(peerId: PeerId, storageId: StorageId | undefined, isEphemeral: boolean): void; | ||
connect(peerId: PeerId, peerMetadata: PeerMetadata): void; | ||
send(message: RepoMessage): void; | ||
announceConnection(peerId: PeerId, storageId: StorageId | undefined, isEphemeral: boolean): void; | ||
announceConnection(peerId: PeerId, peerMetadata: PeerMetadata): void; | ||
disconnect(): void; | ||
@@ -22,0 +22,0 @@ } |
@@ -25,7 +25,6 @@ /** | ||
} | ||
connect(peerId, storageId, isEphemeral) { | ||
connect(peerId, peerMetadata) { | ||
log("messageport connecting"); | ||
this.peerId = peerId; | ||
this.storageId = storageId; | ||
this.isEphemeral = isEphemeral; | ||
this.peerMetadata = peerMetadata; | ||
this.messagePortRef.start(); | ||
@@ -42,11 +41,10 @@ this.messagePortRef.addListener("message", (e) => { | ||
{ | ||
const { storageId, isEphemeral } = message; | ||
const { peerMetadata } = message; | ||
this.messagePortRef.postMessage({ | ||
senderId: this.peerId, | ||
storageId: this.storageId, | ||
isEphemeral: this.isEphemeral, | ||
peerMetadata: this.peerMetadata, | ||
targetId: senderId, | ||
type: "welcome", | ||
}); | ||
this.announceConnection(senderId, storageId, isEphemeral); | ||
this.announceConnection(senderId, peerMetadata); | ||
} | ||
@@ -56,4 +54,4 @@ break; | ||
{ | ||
const { storageId, isEphemeral } = message; | ||
this.announceConnection(senderId, storageId, isEphemeral); | ||
const { peerMetadata } = message; | ||
this.announceConnection(senderId, peerMetadata); | ||
} | ||
@@ -103,3 +101,3 @@ break; | ||
} | ||
announceConnection(peerId, storageId, isEphemeral) { | ||
announceConnection(peerId, peerMetadata) { | ||
if (!this.#startupComplete) { | ||
@@ -109,3 +107,3 @@ this.#startupComplete = true; | ||
} | ||
this.emit("peer-candidate", { peerId, storageId, isEphemeral }); | ||
this.emit("peer-candidate", { peerId, peerMetadata }); | ||
} | ||
@@ -112,0 +110,0 @@ disconnect() { |
{ | ||
"name": "@automerge/automerge-repo-network-messagechannel", | ||
"version": "1.1.0-alpha.1", | ||
"version": "1.1.0-alpha.2", | ||
"description": "MessageChannel network adapter for Automerge Repo", | ||
@@ -16,3 +16,3 @@ "repository": "https://github.com/automerge/automerge-repo/tree/master/packages/automerge-repo-network-messagechannel", | ||
"dependencies": { | ||
"@automerge/automerge-repo": "^1.1.0-alpha.1" | ||
"@automerge/automerge-repo": "^1.1.0-alpha.2" | ||
}, | ||
@@ -30,3 +30,3 @@ "watch": { | ||
}, | ||
"gitHead": "11805d698f860bd6ffb3ca028d3b57e718690b5a" | ||
"gitHead": "d73e71588c3835a172fdf4d19e56a1f946c041ed" | ||
} |
@@ -14,2 +14,3 @@ /** | ||
type StorageId, | ||
PeerMetadata, | ||
} from "@automerge/automerge-repo" | ||
@@ -42,11 +43,6 @@ import { MessagePortRef } from "./MessagePortRef.js" | ||
connect( | ||
peerId: PeerId, | ||
storageId: StorageId | undefined, | ||
isEphemeral: boolean | ||
) { | ||
connect(peerId: PeerId, peerMetadata: PeerMetadata) { | ||
log("messageport connecting") | ||
this.peerId = peerId | ||
this.storageId = storageId | ||
this.isEphemeral = isEphemeral | ||
this.peerMetadata = peerMetadata | ||
this.messagePortRef.start() | ||
@@ -70,11 +66,10 @@ this.messagePortRef.addListener( | ||
{ | ||
const { storageId, isEphemeral } = message | ||
const { peerMetadata } = message | ||
this.messagePortRef.postMessage({ | ||
senderId: this.peerId, | ||
storageId: this.storageId, | ||
isEphemeral: this.isEphemeral, | ||
peerMetadata: this.peerMetadata, | ||
targetId: senderId, | ||
type: "welcome", | ||
}) | ||
this.announceConnection(senderId, storageId, isEphemeral) | ||
this.announceConnection(senderId, peerMetadata) | ||
} | ||
@@ -84,4 +79,4 @@ break | ||
{ | ||
const { storageId, isEphemeral } = message | ||
this.announceConnection(senderId, storageId, isEphemeral) | ||
const { peerMetadata } = message | ||
this.announceConnection(senderId, peerMetadata) | ||
} | ||
@@ -142,7 +137,3 @@ break | ||
announceConnection( | ||
peerId: PeerId, | ||
storageId: StorageId | undefined, | ||
isEphemeral: boolean | ||
) { | ||
announceConnection(peerId: PeerId, peerMetadata: PeerMetadata) { | ||
if (!this.#startupComplete) { | ||
@@ -152,3 +143,3 @@ this.#startupComplete = true | ||
} | ||
this.emit("peer-candidate", { peerId, storageId, isEphemeral }) | ||
this.emit("peer-candidate", { peerId, peerMetadata }) | ||
} | ||
@@ -181,9 +172,5 @@ | ||
/** Unique ID of the storage that the sender peer is using, is persistent across sessions */ | ||
storageId?: StorageId | ||
/** The peer metadata of the sender of this message */ | ||
peerMetadata: PeerMetadata | ||
/** Indicates whether other peers should persist the sync state of the sender peer. | ||
* Sync state is only persisted for non-ephemeral peers */ | ||
isEphemeral: boolean | ||
/** Arrive messages don't have a targetId */ | ||
@@ -200,9 +187,5 @@ targetId: never | ||
/** Unique ID of the storage that the sender peer is using, is persistent across sessions */ | ||
storageId?: StorageId | ||
/** The peer metadata of the sender of this message */ | ||
peerMetadata: PeerMetadata | ||
/** Indicates whether other peers should persist the sync state of the sender peer. | ||
* Sync state is only persisted for non-ephemeral peers */ | ||
isEphemeral: boolean | ||
/** The peer ID of the recipient of this message */ | ||
@@ -209,0 +192,0 @@ targetId: PeerId |
Sorry, the diff of this file is not supported yet
22762
559