p2party 0.14.2 → 0.14.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +230 -30
- package/docs/getting-started.md +15 -0
- package/docs/protocol-v4-security.md +40 -0
- package/docs/references.md +28 -8
- package/docs/session-api.md +10 -2
- package/lib/api/signalingServerApi.d.ts +13 -2
- package/lib/api/webrtc/applyIceConfiguration.d.ts +9 -0
- package/lib/api/webrtc/dataChannelHandler.d.ts +10 -0
- package/lib/api/webrtc/deleteRoomData.d.ts +13 -0
- package/lib/api/webrtc/disconnectFromAllRoomsQuery.d.ts +2 -1
- package/lib/api/webrtc/disconnectFromRoomQuery.d.ts +2 -1
- package/lib/api/webrtc/disconnectQuery.d.ts +2 -1
- package/lib/api/webrtc/iceRepair.d.ts +3 -1
- package/lib/api/webrtc/index.d.ts +2 -1
- package/lib/api/webrtc/interfaces.d.ts +37 -0
- package/lib/api/webrtc/negotiationLock.d.ts +24 -0
- package/lib/api/webrtc/pendingOffer.d.ts +29 -0
- package/lib/api/webrtc/rebindDeadline.d.ts +61 -0
- package/lib/api/webrtc/remoteTransportChange.d.ts +142 -0
- package/lib/api/webrtc/retiredRemoteTransports.d.ts +70 -0
- package/lib/api/webrtc/roomEdgeBudget.d.ts +10 -0
- package/lib/api/webrtc/setDescriptionQuery.d.ts +8 -1
- package/lib/api/webrtc/settleOnClose.d.ts +36 -0
- package/lib/blindRendezvous/admissionInput.d.ts +11 -0
- package/lib/blindRendezvous/admissionPolicy.d.ts +217 -0
- package/lib/blindRendezvous/canonicalSchema.d.ts +139 -0
- package/lib/blindRendezvous/carrierEnvelope.d.ts +105 -0
- package/lib/blindRendezvous/coreReduce.d.ts +199 -0
- package/lib/blindRendezvous/derivations.d.ts +381 -0
- package/lib/blindRendezvous/identityHelloAdmission.d.ts +89 -0
- package/lib/blindRendezvous/identityHelloAdmissionPersistence.d.ts +133 -0
- package/lib/blindRendezvous/identityHelloHistoricalEvidence.d.ts +52 -0
- package/lib/blindRendezvous/identityHelloOpen.d.ts +167 -0
- package/lib/blindRendezvous/identityHelloTrial.d.ts +271 -0
- package/lib/blindRendezvous/localAdmissibleProject.d.ts +101 -0
- package/lib/blindRendezvous/localPresenceKeyBinding.d.ts +108 -0
- package/lib/blindRendezvous/localStableIdentityCustody.d.ts +46 -0
- package/lib/blindRendezvous/normativeKernel.d.ts +222 -0
- package/lib/blindRendezvous/operation.d.ts +137 -0
- package/lib/blindRendezvous/operationPayload.d.ts +134 -0
- package/lib/blindRendezvous/pairBootstrapSuite.d.ts +93 -0
- package/lib/blindRendezvous/pairCrypto.d.ts +122 -0
- package/lib/blindRendezvous/pairLedger.d.ts +154 -0
- package/lib/blindRendezvous/pairOpenBudget.d.ts +67 -0
- package/lib/blindRendezvous/pairOpenReservation.d.ts +157 -0
- package/lib/blindRendezvous/pairPlaintext.d.ts +240 -0
- package/lib/blindRendezvous/pairStepEnvelope.d.ts +60 -0
- package/lib/blindRendezvous/plannerState.d.ts +61 -0
- package/lib/blindRendezvous/projections.d.ts +71 -0
- package/lib/blindRendezvous/publicWindow.d.ts +330 -0
- package/lib/blindRendezvous/retainedOperationStore.d.ts +187 -0
- package/lib/blindRendezvous/roomInviteV2.d.ts +92 -0
- package/lib/blindRendezvous/roomPolicyV4.d.ts +90 -0
- package/lib/blindRendezvous/schemas.d.ts +221 -0
- package/lib/blindRendezvous/storeDescriptor.d.ts +160 -0
- package/lib/cryptography/aeadWasm.d.ts +18 -0
- package/lib/cryptography/byteInput.d.ts +12 -0
- package/lib/cryptography/carrierAead.d.ts +23 -0
- package/lib/cryptography/chacha20poly1305.d.ts +7 -0
- package/lib/cryptography/fips202.d.ts +10 -0
- package/lib/cryptography/hpke.d.ts +84 -0
- package/lib/cryptography/hpkeSuite.d.ts +39 -0
- package/lib/cryptography/hybridKem.d.ts +42 -0
- package/lib/cryptography/hybridKemSuite.d.ts +22 -0
- package/lib/cryptography/interfaces.d.ts +3 -0
- package/lib/cryptography/mlkem.d.ts +27 -1
- package/lib/cryptography/mnemonic.d.ts +65 -1
- package/lib/cryptography/ownedEd25519KeyMaterial.d.ts +27 -0
- package/lib/cryptography/webCryptoSha256.d.ts +20 -0
- package/lib/cryptography/x25519.d.ts +18 -0
- package/lib/cryptography/xchacha20poly1305.d.ts +7 -0
- package/lib/db/api.d.ts +6 -3
- package/lib/db/identityEd25519ClientBoundary.d.ts +13 -0
- package/lib/db/src/getDB.d.ts +2 -2
- package/lib/db/types.d.ts +52 -4
- package/lib/db.worker.js +1 -1
- package/lib/handlers/coverChannelRegistry.d.ts +22 -0
- package/lib/handlers/edgeTeardownFollowUp.d.ts +35 -0
- package/lib/handlers/handleChallenge.d.ts +2 -1
- package/lib/handlers/handleConnectToPeer.d.ts +1 -1
- package/lib/handlers/handleHandshake.d.ts +2 -6
- package/lib/handlers/handleSendMessage.d.ts +60 -7
- package/lib/handlers/handleWebSocketMessage.d.ts +1 -1
- package/lib/handlers/handshakeCore.d.ts +2 -7
- package/lib/handlers/handshakeFrame.d.ts +25 -0
- package/lib/handlers/ratchetGateWait.d.ts +13 -0
- package/lib/handlers/reconcile.d.ts +24 -0
- package/lib/handlers/requestRoom.d.ts +30 -0
- package/lib/handlers/roomResponse.d.ts +53 -0
- package/lib/index.d.ts +99 -12
- package/lib/index.js +1 -1
- package/lib/index.min.js +1 -1
- package/lib/index.mjs +1 -1
- package/lib/libcrypto.provenance.json +5 -5
- package/lib/libcrypto.wasm +0 -0
- package/lib/middleware/roomListenerMiddleware.d.ts +4 -1
- package/lib/reducers/commonSlice.d.ts +3 -2
- package/lib/reducers/keyPairSlice.d.ts +3 -6
- package/lib/reducers/roomSlice.d.ts +81 -5
- package/lib/reducers/signalingServerSlice.d.ts +3 -2
- package/lib/session.d.ts +6 -3
- package/lib/session.js +1 -1
- package/lib/session.mjs +1 -1
- package/lib/store.d.ts +4 -2
- package/lib/utils/constants.d.ts +12 -0
- package/lib/utils/correlationId.d.ts +4 -0
- package/lib/utils/identityRestore.d.ts +108 -0
- package/lib/utils/interfaces.d.ts +25 -6
- package/lib/utils/roomConnectAdmission.d.ts +15 -0
- package/lib/utils/roomLeaveCoordinator.d.ts +38 -0
- package/lib/utils/roomRequestCoordinator.d.ts +104 -0
- package/lib/utils/roomRosterReconciler.d.ts +83 -0
- package/lib/utils/sdpFingerprint.d.ts +6 -0
- package/lib/utils/signalingAttemptLifecycle.d.ts +33 -0
- package/lib/utils/signalingAuth.d.ts +21 -2
- package/lib/utils/signalingBounds.d.ts +6 -0
- package/lib/utils/signalingFrame.d.ts +21 -0
- package/lib/utils/signalingHeartbeatWatchdog.d.ts +45 -0
- package/lib/utils/signalingIngressQueue.d.ts +49 -0
- package/lib/utils/signalingPeerRequestDebouncer.d.ts +13 -0
- package/lib/utils/signalingRoomLifecycle.d.ts +7 -0
- package/lib/utils/signalingRoomOperationLifecycle.d.ts +14 -0
- package/lib/utils/signalingServerBoundary.d.ts +11 -0
- package/lib/utils/terminalSettlement.d.ts +53 -0
- package/lib/utils/transportIdentity.d.ts +5 -0
- package/package.json +1 -1
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"release": "v1.2.0",
|
|
13
13
|
"commit": "0ba906cb14b1c241476134d7403a811b382ca498",
|
|
14
14
|
"sourceTreeSha256": "a2e15382a8dc0207752b3f5cdfc907886505fe304948183b4b61e99e7cb92ac6",
|
|
15
|
-
"wrapperSha256": "
|
|
15
|
+
"wrapperSha256": "ec8250c5fefebf1b7958c5ad20ed92bf7ef0a3c5e7b0783c2079d2be678f090d",
|
|
16
16
|
"backend": "portable-c",
|
|
17
17
|
"parameterSets": [
|
|
18
18
|
512,
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
}
|
|
30
30
|
},
|
|
31
31
|
"toolchain": {
|
|
32
|
-
"emscripten": "6.0.
|
|
32
|
+
"emscripten": "6.0.9"
|
|
33
33
|
},
|
|
34
34
|
"build": {
|
|
35
35
|
"mode": "production",
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
},
|
|
39
39
|
"artifact": {
|
|
40
40
|
"file": "libcrypto.wasm",
|
|
41
|
-
"bytes":
|
|
42
|
-
"sha256": "
|
|
43
|
-
"sri": "sha384-
|
|
41
|
+
"bytes": 211350,
|
|
42
|
+
"sha256": "7fc91b615f6ca7f7f61497b784c8e75102751cdc84251bcadcd688aaa17c4d76",
|
|
43
|
+
"sri": "sha384-K0QqktkF2/8IHMDEgDIcyDl/ywcUXUO8fF1ZzcwhVrUYfGn8jN8Foohn1+bw4HmZ"
|
|
44
44
|
}
|
|
45
45
|
}
|
package/lib/libcrypto.wasm
CHANGED
|
Binary file
|
|
@@ -1,2 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
import type { UnknownAction } from "@reduxjs/toolkit";
|
|
2
|
+
import type { RoomRosterReconciler } from "../utils/roomRosterReconciler";
|
|
3
|
+
export declare const createRoomListenerMiddleware: (reconciler?: RoomRosterReconciler) => import("@reduxjs/toolkit").ListenerMiddlewareInstance<unknown, import("redux-thunk").ThunkDispatch<unknown, unknown, UnknownAction>, unknown>;
|
|
4
|
+
declare const roomListenerMiddleware: import("@reduxjs/toolkit").ListenerMiddlewareInstance<unknown, import("redux-thunk").ThunkDispatch<unknown, unknown, UnknownAction>, unknown>;
|
|
2
5
|
export default roomListenerMiddleware;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { State } from "../store";
|
|
2
1
|
export interface CommonState {
|
|
3
2
|
currentRoomUrl: string;
|
|
4
3
|
}
|
|
5
4
|
export declare const setCurrentRoomUrl: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "commonState/setCurrentRoomUrl">;
|
|
6
|
-
export declare const commonStateSelector: (state:
|
|
5
|
+
export declare const commonStateSelector: (state: {
|
|
6
|
+
readonly commonState: CommonState;
|
|
7
|
+
}) => CommonState;
|
|
7
8
|
declare const _default: import("redux").Reducer<CommonState>;
|
|
8
9
|
export default _default;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { State } from "../store";
|
|
2
1
|
export interface KeyPair {
|
|
3
2
|
peerId: string;
|
|
4
3
|
challengeId: string;
|
|
@@ -18,15 +17,13 @@ export interface SetPeerData {
|
|
|
18
17
|
}
|
|
19
18
|
export interface SetChallengeId {
|
|
20
19
|
challengeId: string;
|
|
21
|
-
username?: string;
|
|
22
|
-
credential?: string;
|
|
23
20
|
}
|
|
24
21
|
export interface SetReconnectData extends SetPeerData {
|
|
25
22
|
challengeId: string;
|
|
26
|
-
username?: string;
|
|
27
|
-
credential?: string;
|
|
28
23
|
}
|
|
29
24
|
export declare const setKeyPair: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetKeyPair, "keyPair/setKeyPair">, setReconnectData: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetReconnectData, "keyPair/setReconnectData">, setPeerData: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetPeerData, "keyPair/setPeerData">, setChallengeId: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetChallengeId, "keyPair/setChallengeId">, resetIdentity: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"keyPair/resetIdentity">;
|
|
30
|
-
export declare const keyPairSelector: (state:
|
|
25
|
+
export declare const keyPairSelector: (state: {
|
|
26
|
+
readonly keyPair: KeyPair;
|
|
27
|
+
}) => KeyPair;
|
|
31
28
|
declare const _default: import("redux").Reducer<KeyPair>;
|
|
32
29
|
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { State } from "../store";
|
|
2
1
|
import type { RoomPolicyV1 } from "../roomPolicy";
|
|
3
2
|
import type { CoverSchedulerStatus } from "../handlers/coverScheduler";
|
|
3
|
+
import type { TurnCredentials } from "../utils/interfaces";
|
|
4
4
|
export interface Channel {
|
|
5
5
|
label: string;
|
|
6
6
|
peerIds: string[];
|
|
@@ -54,6 +54,27 @@ export interface SetIceServersArgs {
|
|
|
54
54
|
roomId: string;
|
|
55
55
|
iceServers: RTCIceServer[];
|
|
56
56
|
}
|
|
57
|
+
export interface ApplyRoomResponseArgs {
|
|
58
|
+
roomUrl: string;
|
|
59
|
+
roomId: string;
|
|
60
|
+
roomRequestId: string;
|
|
61
|
+
requestGeneration: number;
|
|
62
|
+
turnCredentials: TurnCredentials | null;
|
|
63
|
+
}
|
|
64
|
+
export interface ExpireRoomTurnCredentialsArgs {
|
|
65
|
+
roomUrl: string;
|
|
66
|
+
expiresAtUnixSeconds: number;
|
|
67
|
+
requestGeneration: number;
|
|
68
|
+
}
|
|
69
|
+
export interface RollbackRoomResponseArgs {
|
|
70
|
+
roomUrl: string;
|
|
71
|
+
failedRoomId: string;
|
|
72
|
+
failedRequestGeneration: number;
|
|
73
|
+
previousRoomId: string;
|
|
74
|
+
previousRequestGeneration: number;
|
|
75
|
+
previousTurnCredentials: TurnCredentials | null;
|
|
76
|
+
previousSignalingActive: boolean;
|
|
77
|
+
}
|
|
57
78
|
export interface SetMessageArgs {
|
|
58
79
|
roomId: string;
|
|
59
80
|
transferId?: string;
|
|
@@ -107,6 +128,7 @@ export interface DeleteChannelArgs {
|
|
|
107
128
|
}
|
|
108
129
|
export interface SetCanOnlyConnectWithKnownPeers {
|
|
109
130
|
roomId: string;
|
|
131
|
+
roomUrl?: string;
|
|
110
132
|
onlyConnectWithKnownPeers: boolean;
|
|
111
133
|
}
|
|
112
134
|
export interface SetPeerCoverStatusArgs {
|
|
@@ -126,7 +148,23 @@ export interface PeerHandshakeStatus {
|
|
|
126
148
|
reason?: PeerHandshakeFailureReason;
|
|
127
149
|
/** Absolute epoch ms after which a throttled PIN retry may succeed. */
|
|
128
150
|
retryAfter?: number;
|
|
151
|
+
/**
|
|
152
|
+
* The stable identity this status describes, in the same hex spelling as
|
|
153
|
+
* `Peer.peerPublicKey`. A peerId is a per-session signaling handle: a peer
|
|
154
|
+
* that fails and reconnects arrives under a new one, and a joiner that fails
|
|
155
|
+
* is dropped from `peers` altogether — so a UI that keys a failure on the
|
|
156
|
+
* peerId either loses it or leaves a stale one on top of a working room.
|
|
157
|
+
* The identity is what stays the same across both.
|
|
158
|
+
*
|
|
159
|
+
* Optional only because a status persisted by an older build has none.
|
|
160
|
+
*/
|
|
161
|
+
peerPublicKey?: string;
|
|
129
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* `peerPublicKey` is inherited as optional so a caller that only has a peerId
|
|
165
|
+
* still compiles, but every in-library dispatch supplies it: the edge always
|
|
166
|
+
* knows the identity it is authenticating against (`epc.withPeerPublicKey`).
|
|
167
|
+
*/
|
|
130
168
|
export interface SetPeerHandshakeStatusArgs extends PeerHandshakeStatus {
|
|
131
169
|
roomId: string;
|
|
132
170
|
peerId: string;
|
|
@@ -137,7 +175,16 @@ export interface Room extends SetRoomArgs {
|
|
|
137
175
|
connectedToPeers: boolean;
|
|
138
176
|
canBeConnectionRelay: boolean;
|
|
139
177
|
onlyConnectWithKnownAddresses: boolean;
|
|
178
|
+
/** Caller-owned configuration. Signaling credentials never mutate it. */
|
|
179
|
+
callerRtcConfig?: RTCConfiguration;
|
|
180
|
+
/** Current signaling-owned TURN bundle, replaced atomically per response. */
|
|
181
|
+
signalingTurnCredentials?: TurnCredentials | null;
|
|
182
|
+
/** Compatibility projection derived from the two authoritative inputs. */
|
|
140
183
|
rtcConfig: RTCConfiguration;
|
|
184
|
+
/** Last accepted wire-correlated response generation for this room URL. */
|
|
185
|
+
roomResponseGeneration?: number;
|
|
186
|
+
/** False after deleteRoom so retained room metadata is not auto-rejoined. */
|
|
187
|
+
signalingActive?: boolean;
|
|
141
188
|
peers: Peer[];
|
|
142
189
|
channels: Channel[];
|
|
143
190
|
messages: Message[];
|
|
@@ -156,10 +203,37 @@ export interface Room extends SetRoomArgs {
|
|
|
156
203
|
*/
|
|
157
204
|
handshakeStatusByPeer?: Record<string, PeerHandshakeStatus>;
|
|
158
205
|
}
|
|
206
|
+
/** Fully normalized reducer state; public Room keeps new fields optional. */
|
|
207
|
+
export interface ManagedRoom extends Room {
|
|
208
|
+
callerRtcConfig: RTCConfiguration;
|
|
209
|
+
signalingTurnCredentials: TurnCredentials | null;
|
|
210
|
+
roomResponseGeneration: number;
|
|
211
|
+
signalingActive: boolean;
|
|
212
|
+
}
|
|
159
213
|
export declare const defaultRTCConfig: RTCConfiguration;
|
|
160
|
-
export declare const
|
|
214
|
+
export declare const cloneRTCConfiguration: (configuration: RTCConfiguration) => RTCConfiguration;
|
|
215
|
+
export declare const rtcConfigurationsEqual: (left: RTCConfiguration, right: RTCConfiguration) => boolean;
|
|
216
|
+
/**
|
|
217
|
+
* Replace credentials only for endpoints present in an incoming ICE server.
|
|
218
|
+
*
|
|
219
|
+
* This preserves every unrelated caller-supplied STUN/TURN entry and every
|
|
220
|
+
* non-ICE RTCConfiguration option. Replacing overlapping URLs is required:
|
|
221
|
+
* TURN REST credentials expire, so retaining the first credential for a URL
|
|
222
|
+
* would make a later authenticated room join silently keep stale access.
|
|
223
|
+
*/
|
|
224
|
+
export declare const mergeIceServers: (existing: readonly RTCIceServer[] | undefined, incoming: readonly RTCIceServer[]) => RTCIceServer[];
|
|
225
|
+
/**
|
|
226
|
+
* Derive the browser configuration from two single-source inputs.
|
|
227
|
+
*
|
|
228
|
+
* A managed URL replaces an overlapping caller URL only in this projection.
|
|
229
|
+
* Clearing the managed bundle therefore restores the caller's exact input,
|
|
230
|
+
* while rotation cannot accidentally retain an older signaling credential.
|
|
231
|
+
*/
|
|
232
|
+
export declare const deriveEffectiveRTCConfig: (callerRtcConfig: RTCConfiguration, signalingTurnCredentials: TurnCredentials | null) => RTCConfiguration;
|
|
233
|
+
export declare const setRoom: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetRoomArgs, "rooms/setRoom">, applyRoomResponse: import("@reduxjs/toolkit").ActionCreatorWithPayload<ApplyRoomResponseArgs, "rooms/applyRoomResponse">, rollbackRoomResponse: import("@reduxjs/toolkit").ActionCreatorWithPayload<RollbackRoomResponseArgs, "rooms/rollbackRoomResponse">, expireRoomTurnCredentials: import("@reduxjs/toolkit").ActionCreatorWithPayload<ExpireRoomTurnCredentialsArgs, "rooms/expireRoomTurnCredentials">, setRoomPolicy: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetRoomPolicyArgs, "rooms/setRoomPolicy">, setConnectingToPeers: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
161
234
|
roomId: string;
|
|
162
235
|
connectingToPeers: boolean;
|
|
236
|
+
reason?: "redial" | "reconcile";
|
|
163
237
|
}, "rooms/setConnectingToPeers">, setConnectedToPeers: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
164
238
|
roomId: string;
|
|
165
239
|
connectedToPeers: boolean;
|
|
@@ -169,7 +243,9 @@ export declare const setRoom: import("@reduxjs/toolkit").ActionCreatorWithPayloa
|
|
|
169
243
|
}, "rooms/setConnectionRelay">, setOnlyConnectWithKnownPeers: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetCanOnlyConnectWithKnownPeers, "rooms/setOnlyConnectWithKnownPeers">, setPeer: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetPeerArgs, "rooms/setPeer">, setPeerCoverStatus: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetPeerCoverStatusArgs, "rooms/setPeerCoverStatus">, setPeerHandshakeStatus: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetPeerHandshakeStatusArgs, "rooms/setPeerHandshakeStatus">, setChannel: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetChannelArgs, "rooms/setChannel">, setIceServers: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetIceServersArgs, "rooms/setIceServers">, setMessage: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetMessageArgs, "rooms/setMessage">, setMessageAllChunks: import("@reduxjs/toolkit").ActionCreatorWithPayload<SetMessageAllChunksArgs, "rooms/setMessageAllChunks">, incrementMessageStats: import("@reduxjs/toolkit").ActionCreatorWithPayload<IncrementMessageStatsArgs, "rooms/incrementMessageStats">, deletePeer: import("@reduxjs/toolkit").ActionCreatorWithPayload<{
|
|
170
244
|
peerId: string;
|
|
171
245
|
roomId?: string;
|
|
172
|
-
}, "rooms/deletePeer">, deleteChannel: import("@reduxjs/toolkit").ActionCreatorWithPayload<DeleteChannelArgs, "rooms/deleteChannel">, deleteMessage: import("@reduxjs/toolkit").ActionCreatorWithPayload<DeleteMessageArgs, "rooms/deleteMessage">, deleteRoom: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "rooms/deleteRoom">;
|
|
173
|
-
export declare const roomSelector: (state:
|
|
174
|
-
|
|
246
|
+
}, "rooms/deletePeer">, deleteChannel: import("@reduxjs/toolkit").ActionCreatorWithPayload<DeleteChannelArgs, "rooms/deleteChannel">, deleteMessage: import("@reduxjs/toolkit").ActionCreatorWithPayload<DeleteMessageArgs, "rooms/deleteMessage">, deleteMessageStateOnly: import("@reduxjs/toolkit").ActionCreatorWithPayload<DeleteMessageArgs, "rooms/deleteMessageStateOnly">, deleteRoom: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "rooms/deleteRoom">, purgeAllRooms: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"rooms/purgeAllRooms">;
|
|
247
|
+
export declare const roomSelector: <TRoom extends Room>(state: {
|
|
248
|
+
readonly rooms: TRoom[];
|
|
249
|
+
}) => TRoom[];
|
|
250
|
+
declare const _default: import("redux").Reducer<ManagedRoom[]>;
|
|
175
251
|
export default _default;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { PayloadAction } from "@reduxjs/toolkit";
|
|
2
|
-
import type { State } from "../store";
|
|
3
2
|
export interface SignalingState {
|
|
4
3
|
isEstablishingConnection: boolean;
|
|
5
4
|
isConnected: boolean;
|
|
@@ -32,6 +31,8 @@ export declare const signalingServerActions: import("@reduxjs/toolkit").CaseRedu
|
|
|
32
31
|
serverUrl: string;
|
|
33
32
|
}) => void;
|
|
34
33
|
}, "signalingServer">;
|
|
35
|
-
export declare const signalingServerSelector: (state:
|
|
34
|
+
export declare const signalingServerSelector: (state: {
|
|
35
|
+
readonly signalingServer: SignalingState;
|
|
36
|
+
}) => SignalingState;
|
|
36
37
|
declare const _default: import("redux").Reducer<SignalingState>;
|
|
37
38
|
export default _default;
|
package/lib/session.d.ts
CHANGED
|
@@ -28,8 +28,11 @@ export interface SessionChannelBinding {
|
|
|
28
28
|
}
|
|
29
29
|
export interface SessionCryptoOptions {
|
|
30
30
|
/**
|
|
31
|
-
* Local/self-hosted libcrypto.wasm bytes
|
|
32
|
-
*
|
|
31
|
+
* Local/self-hosted libcrypto.wasm bytes; an override, rarely a necessity.
|
|
32
|
+
* Omitted, the loader reads this release's WASM from the installed package on
|
|
33
|
+
* Node and Bun and checks it against the build-pinned SHA-384, so an offline
|
|
34
|
+
* install already works; it falls back to the versioned p2party CDN under the
|
|
35
|
+
* same SRI when that read fails, which is also the only path in a browser.
|
|
33
36
|
*/
|
|
34
37
|
wasmBinary?: ArrayBuffer | Uint8Array;
|
|
35
38
|
}
|
|
@@ -55,7 +58,7 @@ export interface EncryptedSessionMessage {
|
|
|
55
58
|
protocolVersion: 4;
|
|
56
59
|
/** The message Merkle root; authenticated as AEAD additional data. */
|
|
57
60
|
root: Uint8Array;
|
|
58
|
-
/** Uniform protocol-
|
|
61
|
+
/** Uniform protocol-v4 chunk frames. */
|
|
59
62
|
frames: Uint8Array[];
|
|
60
63
|
}
|
|
61
64
|
/**
|