@fishjam-cloud/react-client 0.26.0-rc.0 → 0.26.0-rc.1
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/dist/FishjamProvider.d.ts +2 -2
- package/dist/hooks/internal/useFishjamClientState.d.ts.map +1 -1
- package/dist/hooks/internal/useFishjamClientState.js +1 -0
- package/dist/hooks/internal/useReconnection.d.ts.map +1 -1
- package/dist/hooks/internal/useReconnection.js +7 -0
- package/dist/hooks/internal/useTrackManager.js +3 -3
- package/dist/hooks/usePeers.d.ts +12 -12
- package/dist/hooks/usePeers.d.ts.map +1 -1
- package/dist/hooks/usePeers.js +34 -17
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/types/public.d.ts +4 -2
- package/dist/types/public.d.ts.map +1 -1
- package/dist/utils/track.d.ts.map +1 -1
- package/dist/utils/track.js +0 -1
- package/package.json +2 -2
|
@@ -26,11 +26,11 @@ export interface FishjamProviderProps extends PropsWithChildren {
|
|
|
26
26
|
*/
|
|
27
27
|
bandwidthLimits?: Partial<BandwidthLimits>;
|
|
28
28
|
/**
|
|
29
|
-
* Configure whether to use video simulcast and which layers to send if so.
|
|
29
|
+
* Configure whether to use video simulcast and which quality layers to send if so.
|
|
30
30
|
*/
|
|
31
31
|
videoConfig?: StreamConfig;
|
|
32
32
|
/**
|
|
33
|
-
* Configure whether to use audio simulcast and which layers to send if so.
|
|
33
|
+
* Configure whether to use audio simulcast and which quality layers to send if so.
|
|
34
34
|
*/
|
|
35
35
|
audioConfig?: StreamConfig;
|
|
36
36
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFishjamClientState.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useFishjamClientState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAiB,MAAM,0BAA0B,CAAC;AAGzG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"useFishjamClientState.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useFishjamClientState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAiB,MAAM,0BAA0B,CAAC;AAGzG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AA2CjD,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,eAAe,EAAE,CAAC,GAAG,eAAe;IAC1E,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACtC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IACpC,cAAc,EAAE,OAAO,CAAC;CACzB;AAMD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAwCxG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useReconnection.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useReconnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAKnE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,
|
|
1
|
+
{"version":3,"file":"useReconnection.d.ts","sourceRoot":"","sources":["../../../src/hooks/internal/useReconnection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAKnE;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,kBAsClC,CAAC"}
|
|
@@ -20,13 +20,20 @@ export const useReconnection = () => {
|
|
|
20
20
|
const setError = () => {
|
|
21
21
|
setReconnectionStatus("error");
|
|
22
22
|
};
|
|
23
|
+
const setErrorIfReconnecting = () => {
|
|
24
|
+
setReconnectionStatus((prev) => (prev === "reconnecting" ? "error" : prev));
|
|
25
|
+
};
|
|
23
26
|
client.on("reconnectionStarted", setReconnecting);
|
|
24
27
|
client.on("reconnected", setIdle);
|
|
25
28
|
client.on("reconnectionRetriesLimitReached", setError);
|
|
29
|
+
client.on("authError", setErrorIfReconnecting);
|
|
30
|
+
client.on("joinError", setErrorIfReconnecting);
|
|
26
31
|
return () => {
|
|
27
32
|
client.off("reconnectionStarted", setReconnecting);
|
|
28
33
|
client.off("reconnected", setIdle);
|
|
29
34
|
client.off("reconnectionRetriesLimitReached", setError);
|
|
35
|
+
client.off("authError", setErrorIfReconnecting);
|
|
36
|
+
client.off("joinError", setErrorIfReconnecting);
|
|
30
37
|
};
|
|
31
38
|
}, [fishjamClientRef]);
|
|
32
39
|
return reconnectionStatus;
|
|
@@ -30,7 +30,7 @@ export const useTrackManager = ({ deviceManager, tsClient, peerStatus, bandwidth
|
|
|
30
30
|
return;
|
|
31
31
|
await tsClient.replaceTrack(currentTrackId, processedTrack);
|
|
32
32
|
}, [applyMiddleware, getCurrentTrackId, tsClient]);
|
|
33
|
-
const startStreaming = useCallback(async (track, props = {
|
|
33
|
+
const startStreaming = useCallback(async (track, props = { sentQualities: [Variant.VARIANT_LOW, Variant.VARIANT_MEDIUM, Variant.VARIANT_HIGH] }) => {
|
|
34
34
|
// temporarily setting the local trackId until we have the remoteTrackId
|
|
35
35
|
currentTrackIdRef.current = track.id;
|
|
36
36
|
const trackMetadata = { type, paused: false };
|
|
@@ -38,7 +38,7 @@ export const useTrackManager = ({ deviceManager, tsClient, peerStatus, bandwidth
|
|
|
38
38
|
if (typeof displayName === "string") {
|
|
39
39
|
trackMetadata.displayName = displayName;
|
|
40
40
|
}
|
|
41
|
-
const [maxBandwidth, simulcastConfig] = getConfigAndBandwidthFromProps(props.
|
|
41
|
+
const [maxBandwidth, simulcastConfig] = getConfigAndBandwidthFromProps(props.sentQualities, bandwidthLimits);
|
|
42
42
|
try {
|
|
43
43
|
const remoteTrackId = await tsClient.addTrack(track, trackMetadata, simulcastConfig, maxBandwidth);
|
|
44
44
|
currentTrackIdRef.current = remoteTrackId;
|
|
@@ -67,8 +67,8 @@ export const useTrackManager = ({ deviceManager, tsClient, peerStatus, bandwidth
|
|
|
67
67
|
* @see {@link TrackManager#toggleMute} for more details.
|
|
68
68
|
*/
|
|
69
69
|
const toggleMute = useCallback(async () => {
|
|
70
|
-
const isTrackCurrentlyEnabled = Boolean(deviceTrack?.enabled);
|
|
71
70
|
const currentTrackId = getCurrentTrackId();
|
|
71
|
+
const isTrackCurrentlyEnabled = Boolean(deviceTrack?.enabled);
|
|
72
72
|
if (!currentTrackId) {
|
|
73
73
|
logger.warn("Toggling mute is only possible while connected to a room.");
|
|
74
74
|
return;
|
package/dist/hooks/usePeers.d.ts
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { Metadata } from "@fishjam-cloud/ts-client";
|
|
2
|
-
import type { PeerId, Track } from "../types/public";
|
|
2
|
+
import type { PeerId, RemoteTrack, Track } from "../types/public";
|
|
3
3
|
/**
|
|
4
4
|
*
|
|
5
5
|
* @typeParam PeerMetadata Type of metadata set by peer while connecting to a room.
|
|
6
6
|
* @typeParam ServerMetadata Type of metadata set by the server while creating a peer.
|
|
7
7
|
*/
|
|
8
|
-
export type PeerWithTracks<PeerMetadata, ServerMetadata> = {
|
|
8
|
+
export type PeerWithTracks<PeerMetadata, ServerMetadata, T extends Track = Track> = {
|
|
9
9
|
id: PeerId;
|
|
10
10
|
metadata?: Metadata<PeerMetadata, ServerMetadata>;
|
|
11
|
-
tracks:
|
|
12
|
-
cameraTrack?:
|
|
13
|
-
microphoneTrack?:
|
|
14
|
-
screenShareVideoTrack?:
|
|
15
|
-
screenShareAudioTrack?:
|
|
16
|
-
customVideoTracks:
|
|
17
|
-
customAudioTracks:
|
|
11
|
+
tracks: T[];
|
|
12
|
+
cameraTrack?: T;
|
|
13
|
+
microphoneTrack?: T;
|
|
14
|
+
screenShareVideoTrack?: T;
|
|
15
|
+
screenShareAudioTrack?: T;
|
|
16
|
+
customVideoTracks: T[];
|
|
17
|
+
customAudioTracks: T[];
|
|
18
18
|
};
|
|
19
19
|
/**
|
|
20
20
|
* Hook allows to access id, tracks and metadata of the local and remote peers.
|
|
@@ -28,15 +28,15 @@ export declare function usePeers<PeerMetadata = Record<string, unknown>, ServerM
|
|
|
28
28
|
/**
|
|
29
29
|
* The local peer with distinguished tracks (camera, microphone, screen share).
|
|
30
30
|
* Will be null if the local peer is not found.
|
|
31
|
-
*/ localPeer: PeerWithTracks<PeerMetadata, ServerMetadata> | null;
|
|
31
|
+
*/ localPeer: PeerWithTracks<PeerMetadata, ServerMetadata, Track> | null;
|
|
32
32
|
/**
|
|
33
33
|
* Array of remote peers with distinguished tracks (camera, microphone, screen share).
|
|
34
|
-
*/ remotePeers: PeerWithTracks<PeerMetadata, ServerMetadata>[];
|
|
34
|
+
*/ remotePeers: PeerWithTracks<PeerMetadata, ServerMetadata, RemoteTrack>[];
|
|
35
35
|
/**
|
|
36
36
|
* @deprecated Use remotePeers instead
|
|
37
37
|
* Legacy array containing remote peers.
|
|
38
38
|
* This property will be removed in future versions.
|
|
39
39
|
*/
|
|
40
|
-
peers: PeerWithTracks<PeerMetadata, ServerMetadata>[];
|
|
40
|
+
peers: PeerWithTracks<PeerMetadata, ServerMetadata, RemoteTrack>[];
|
|
41
41
|
};
|
|
42
42
|
//# sourceMappingURL=usePeers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePeers.d.ts","sourceRoot":"","sources":["../../src/hooks/usePeers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"usePeers.d.ts","sourceRoot":"","sources":["../../src/hooks/usePeers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,QAAQ,EAAiD,MAAM,0BAA0B,CAAC;AAMvH,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAW,MAAM,iBAAiB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,MAAM,cAAc,CAAC,YAAY,EAAE,cAAc,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IAClF,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,CAAC,EAAE,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAClD,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,eAAe,CAAC,EAAE,CAAC,CAAC;IACpB,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAC1B,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAC1B,iBAAiB,EAAE,CAAC,EAAE,CAAC;IACvB,iBAAiB,EAAE,CAAC,EAAE,CAAC;CACxB,CAAC;AAuEF;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAoBrG;;;OAGG;IACH;;OAEG;IACH;;;;OAIG;;EAGN"}
|
package/dist/hooks/usePeers.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { useContext } from "react";
|
|
2
|
+
import { FishjamClientContext } from "../contexts/fishjamClient";
|
|
2
3
|
import { FishjamClientStateContext } from "../contexts/fishjamState";
|
|
3
4
|
function trackContextToTrack(track) {
|
|
4
5
|
return {
|
|
@@ -6,28 +7,43 @@ function trackContextToTrack(track) {
|
|
|
6
7
|
trackId: track.trackId,
|
|
7
8
|
stream: track.stream,
|
|
8
9
|
simulcastConfig: track.simulcastConfig ?? null,
|
|
9
|
-
encoding: track.encoding ?? null,
|
|
10
10
|
track: track.track,
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function trackContextToRemoteTrack(track, fishjamClient) {
|
|
14
|
+
return {
|
|
15
|
+
...trackContextToTrack(track),
|
|
16
|
+
setReceivedQuality: (encoding) => {
|
|
17
|
+
fishjamClient.setTargetTrackEncoding(track.trackId, encoding);
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function getLocalPeerWithTracks(peer) {
|
|
14
22
|
const tracks = [...peer.tracks.values()].map(trackContextToTrack);
|
|
15
|
-
const cameraTrack = tracks.find(({ metadata }) => metadata?.type === "camera");
|
|
16
|
-
const microphoneTrack = tracks.find(({ metadata }) => metadata?.type === "microphone");
|
|
17
|
-
const screenShareVideoTrack = tracks.find(({ metadata }) => metadata?.type === "screenShareVideo");
|
|
18
|
-
const screenShareAudioTrack = tracks.find(({ metadata }) => metadata?.type === "screenShareAudio");
|
|
19
|
-
const customVideoTracks = tracks.filter(({ metadata }) => metadata?.type === "customVideo");
|
|
20
|
-
const customAudioTracks = tracks.filter(({ metadata }) => metadata?.type === "customAudio");
|
|
21
23
|
return {
|
|
22
24
|
id: peer.id,
|
|
23
25
|
metadata: peer.metadata,
|
|
24
26
|
tracks,
|
|
25
|
-
cameraTrack,
|
|
26
|
-
microphoneTrack,
|
|
27
|
-
screenShareVideoTrack,
|
|
28
|
-
screenShareAudioTrack,
|
|
29
|
-
customVideoTracks,
|
|
30
|
-
customAudioTracks,
|
|
27
|
+
cameraTrack: tracks.find(({ metadata }) => metadata?.type === "camera"),
|
|
28
|
+
microphoneTrack: tracks.find(({ metadata }) => metadata?.type === "microphone"),
|
|
29
|
+
screenShareVideoTrack: tracks.find(({ metadata }) => metadata?.type === "screenShareVideo"),
|
|
30
|
+
screenShareAudioTrack: tracks.find(({ metadata }) => metadata?.type === "screenShareAudio"),
|
|
31
|
+
customVideoTracks: tracks.filter(({ metadata }) => metadata?.type === "customVideo"),
|
|
32
|
+
customAudioTracks: tracks.filter(({ metadata }) => metadata?.type === "customAudio"),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function getRemotePeerWithTracks(peer, fishjamClient) {
|
|
36
|
+
const tracks = [...peer.tracks.values()].map((track) => trackContextToRemoteTrack(track, fishjamClient));
|
|
37
|
+
return {
|
|
38
|
+
id: peer.id,
|
|
39
|
+
metadata: peer.metadata,
|
|
40
|
+
tracks,
|
|
41
|
+
cameraTrack: tracks.find(({ metadata }) => metadata?.type === "camera"),
|
|
42
|
+
microphoneTrack: tracks.find(({ metadata }) => metadata?.type === "microphone"),
|
|
43
|
+
screenShareVideoTrack: tracks.find(({ metadata }) => metadata?.type === "screenShareVideo"),
|
|
44
|
+
screenShareAudioTrack: tracks.find(({ metadata }) => metadata?.type === "screenShareAudio"),
|
|
45
|
+
customVideoTracks: tracks.filter(({ metadata }) => metadata?.type === "customVideo"),
|
|
46
|
+
customAudioTracks: tracks.filter(({ metadata }) => metadata?.type === "customAudio"),
|
|
31
47
|
};
|
|
32
48
|
}
|
|
33
49
|
/**
|
|
@@ -40,12 +56,13 @@ function getPeerWithDistinguishedTracks(peer) {
|
|
|
40
56
|
*/
|
|
41
57
|
export function usePeers() {
|
|
42
58
|
const clientState = useContext(FishjamClientStateContext);
|
|
43
|
-
|
|
59
|
+
const fishjamClient = useContext(FishjamClientContext);
|
|
60
|
+
if (!clientState || !fishjamClient)
|
|
44
61
|
throw Error("usePeers must be used within FishjamProvider");
|
|
45
62
|
const localPeer = clientState.localPeer
|
|
46
|
-
?
|
|
63
|
+
? getLocalPeerWithTracks(clientState.localPeer)
|
|
47
64
|
: null;
|
|
48
|
-
const remotePeers = Object.values(clientState.peers).map((peer) =>
|
|
65
|
+
const remotePeers = Object.values(clientState.peers).map((peer) => getRemotePeerWithTracks(peer, fishjamClient.current));
|
|
49
66
|
return {
|
|
50
67
|
/**
|
|
51
68
|
* The local peer with distinguished tracks (camera, microphone, screen share).
|
package/dist/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export { type RoomType, useSandbox, type UseSandboxProps } from "./hooks/useSand
|
|
|
18
18
|
export { useScreenShare } from "./hooks/useScreenShare";
|
|
19
19
|
export { useUpdatePeerMetadata } from "./hooks/useUpdatePeerMetadata";
|
|
20
20
|
export { useVAD } from "./hooks/useVAD";
|
|
21
|
-
export type { BandwidthLimits, Brand, CustomSource, DeviceError, DeviceItem, InitializeDevicesResult, InitializeDevicesStatus, MiddlewareResult, PeerId, PeerStatus, PersistLastDeviceHandlers, SimulcastBandwidthLimits, StreamConfig, Track, TrackId, TrackMiddleware, TracksMiddleware, TracksMiddlewareResult, UseDataChannelResult, } from "./types/public";
|
|
21
|
+
export type { BandwidthLimits, Brand, CustomSource, DeviceError, DeviceItem, InitializeDevicesResult, InitializeDevicesStatus, MiddlewareResult, PeerId, PeerStatus, PersistLastDeviceHandlers, RemoteTrack, SimulcastBandwidthLimits, StreamConfig, Track, TrackId, TrackMiddleware, TracksMiddleware, TracksMiddlewareResult, UseDataChannelResult, } from "./types/public";
|
|
22
22
|
export type { AuthErrorReason, DataCallback, DataChannelOptions, JoinErrorReason, Metadata, ReconnectConfig, ReconnectionStatus, SimulcastBandwidthLimit, SimulcastConfig, TrackBandwidthLimit, } from "@fishjam-cloud/ts-client";
|
|
23
23
|
export { Variant } from "@fishjam-cloud/ts-client";
|
|
24
24
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACxG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,KAAK,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,qBAAqB,EACrB,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,KAAK,mBAAmB,EACxB,mBAAmB,EACnB,KAAK,yBAAyB,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,cAAc,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,YAAY,EACV,eAAe,EACf,KAAK,EACL,YAAY,EACZ,WAAW,EACX,UAAU,EACV,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,EACZ,KAAK,EACL,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AACxG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,KAAK,cAAc,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,qBAAqB,EACrB,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,KAAK,mBAAmB,EACxB,mBAAmB,EACnB,KAAK,yBAAyB,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,cAAc,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,YAAY,EACV,eAAe,EACf,KAAK,EACL,YAAY,EACZ,WAAW,EACX,UAAU,EACV,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,yBAAyB,EACzB,WAAW,EACX,wBAAwB,EACxB,YAAY,EACZ,KAAK,EACL,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/types/public.d.ts
CHANGED
|
@@ -12,12 +12,14 @@ export type TrackId = Brand<string, "TrackId">;
|
|
|
12
12
|
export type PeerId = Brand<string, "PeerId">;
|
|
13
13
|
export type Track = {
|
|
14
14
|
stream: MediaStream | null;
|
|
15
|
-
encoding: Variant | null;
|
|
16
15
|
trackId: TrackId;
|
|
17
16
|
metadata?: TrackMetadata;
|
|
18
17
|
simulcastConfig: SimulcastConfig | null;
|
|
19
18
|
track: MediaStreamTrack | null;
|
|
20
19
|
};
|
|
20
|
+
export type RemoteTrack = Track & {
|
|
21
|
+
setReceivedQuality: (quality: Variant) => void;
|
|
22
|
+
};
|
|
21
23
|
export type MiddlewareResult = {
|
|
22
24
|
track: MediaStreamTrack;
|
|
23
25
|
onClear?: () => void;
|
|
@@ -52,7 +54,7 @@ export type SimulcastBandwidthLimits = {
|
|
|
52
54
|
[Variant.VARIANT_HIGH]: number;
|
|
53
55
|
};
|
|
54
56
|
export type StreamConfig = {
|
|
55
|
-
|
|
57
|
+
sentQualities?: Variant[] | false;
|
|
56
58
|
};
|
|
57
59
|
export type BandwidthLimits = {
|
|
58
60
|
singleStream: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/types/public.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,OAAO,EACR,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG,QAAQ,GAAG,yBAAyB,GAAG,qBAAqB,CAAC;AAEnH,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,uBAAuB,CAAC;IAChC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE;QAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC/C,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE7C,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/types/public.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,OAAO,EACR,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG,QAAQ,GAAG,yBAAyB,GAAG,qBAAqB,CAAC;AAEnH,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,uBAAuB,CAAC;IAChC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE;QAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC/C,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAE7C,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG;IAChC,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,EAAE,gBAAgB,KAAK,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI,CAAC;AAEjH,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,CAC7B,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,gBAAgB,GAAG,IAAI,KAChC,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAEvE,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,MAAM,MAAM,yBAAyB,GAAG;IACtC,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,KAAK,eAAe,GAAG,IAAI,CAAC;IACzE,cAAc,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC;CAChF,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAAE,aAAa,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;CAAE,CAAC;AAEjE,MAAM,MAAM,eAAe,GAAG;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAE5F,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3C,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAEhC,OAAO,CAAC,MAAM,KAAK,EAAE,OAAO,MAAM,CAAC;AACnC,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,IAAI,CAAC,GAAG;IAAE,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI;IAC3C,EAAE,EAAE,CAAC,CAAC;IACN,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;OAIG;IACH,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC;;;;OAIG;IACH,WAAW,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACxE;;;;;;OAMG;IACH,aAAa,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,kBAAkB,KAAK,MAAM,IAAI,CAAC;IACnF;;;OAGG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;OAEG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,gBAAgB,EAAE,KAAK,GAAG,IAAI,CAAC;CAChC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAA+B,MAAM,0BAA0B,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAW,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAA+B,MAAM,0BAA0B,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAW,MAAM,iBAAiB,CAAC;AAgCvE,eAAO,MAAM,qBAAqB,GAAI,UAAU,aAAa,EAAE,sBAAsB,MAAM,iBAI1F,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,gBAAgB,EACvB,iBAAiB,EAAE,MAAM,MAAM,GAAG,SAAS,EAC3C,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,QAQ9B;AAOD,eAAO,MAAM,8BAA8B,GACzC,WAAW,OAAO,EAAE,GAAG,KAAK,GAAG,SAAS,EACxC,iBAAiB,eAAe,oFAgBjC,CAAC;AAOF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,oBAE9E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,QAKtE"}
|
package/dist/utils/track.js
CHANGED
|
@@ -22,7 +22,6 @@ const getTrackFromContext = (context) => ({
|
|
|
22
22
|
trackId: context.trackId,
|
|
23
23
|
stream: context.stream,
|
|
24
24
|
simulcastConfig: context.simulcastConfig || null,
|
|
25
|
-
encoding: context.encoding || null,
|
|
26
25
|
track: context.track,
|
|
27
26
|
});
|
|
28
27
|
export const getRemoteOrLocalTrack = (tsClient, remoteOrLocalTrackId) => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fishjam-cloud/react-client",
|
|
3
|
-
"version": "0.26.0-rc.
|
|
3
|
+
"version": "0.26.0-rc.1",
|
|
4
4
|
"description": "React client library for Fishjam",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Fishjam Team",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"vitest": "^3.1.1"
|
|
63
63
|
},
|
|
64
64
|
"dependencies": {
|
|
65
|
-
"@fishjam-cloud/ts-client": "0.26.0-rc.
|
|
65
|
+
"@fishjam-cloud/ts-client": "0.26.0-rc.1",
|
|
66
66
|
"events": "3.3.0",
|
|
67
67
|
"lodash.isequal": "4.5.0"
|
|
68
68
|
},
|