@fishjam-cloud/react-client 0.5.2 → 0.6.0
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/Client.d.ts +68 -69
- package/dist/Client.d.ts.map +1 -1
- package/dist/Client.js +9 -9
- package/dist/DeviceManager.d.ts +2 -1
- package/dist/DeviceManager.d.ts.map +1 -1
- package/dist/DeviceManager.js +3 -0
- package/dist/fishjamProvider.d.ts +12 -0
- package/dist/fishjamProvider.d.ts.map +1 -0
- package/dist/fishjamProvider.js +30 -0
- package/dist/hooks/clientState.d.ts +4 -0
- package/dist/hooks/clientState.d.ts.map +1 -0
- package/dist/hooks/clientState.js +81 -0
- package/dist/hooks/connection.d.ts +6 -0
- package/dist/hooks/connection.d.ts.map +1 -0
- package/dist/hooks/connection.js +28 -0
- package/dist/hooks/devices.d.ts +4 -0
- package/dist/hooks/devices.d.ts.map +1 -0
- package/dist/hooks/devices.js +9 -0
- package/dist/hooks/fishjamContext.d.ts +4 -0
- package/dist/hooks/fishjamContext.d.ts.map +1 -0
- package/dist/hooks/fishjamContext.js +8 -0
- package/dist/hooks/participants.d.ts +6 -0
- package/dist/hooks/participants.d.ts.map +1 -0
- package/dist/hooks/participants.js +13 -0
- package/dist/hooks/public.d.ts +7 -0
- package/dist/hooks/public.d.ts.map +1 -0
- package/dist/hooks/public.js +6 -0
- package/dist/hooks/screenShare.d.ts +3 -0
- package/dist/hooks/screenShare.d.ts.map +1 -0
- package/dist/{screenShareTrackManager.js → hooks/screenShare.js} +8 -6
- package/dist/hooks/setupMedia.d.ts +3 -0
- package/dist/hooks/setupMedia.d.ts.map +1 -0
- package/dist/hooks/setupMedia.js +200 -0
- package/dist/hooks/state.d.ts +6 -0
- package/dist/hooks/state.d.ts.map +1 -0
- package/dist/hooks/state.js +15 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/state.types.d.ts +18 -18
- package/dist/state.types.d.ts.map +1 -1
- package/dist/trackManager.d.ts +3 -3
- package/dist/trackManager.d.ts.map +1 -1
- package/dist/trackManager.js +30 -13
- package/dist/types.d.ts +48 -45
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/track.d.ts +2 -1
- package/dist/utils/track.d.ts.map +1 -1
- package/package.json +4 -5
- package/readme.md +1 -15
- package/dist/create.d.ts +0 -10
- package/dist/create.d.ts.map +0 -1
- package/dist/create.js +0 -201
- package/dist/screenShareTrackManager.d.ts +0 -4
- package/dist/screenShareTrackManager.d.ts.map +0 -1
- package/dist/useSetupMedia.d.ts +0 -3
- package/dist/useSetupMedia.d.ts.map +0 -1
- package/dist/useSetupMedia.js +0 -206
package/dist/types.d.ts
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import type { ConnectConfig, SimulcastConfig, TrackBandwidthLimit, TrackKind } from "@fishjam-cloud/ts-client";
|
|
1
|
+
import type { ConnectConfig as TSClientConnectConfig, SimulcastConfig, TrackBandwidthLimit, TrackKind } from "@fishjam-cloud/ts-client";
|
|
2
2
|
import type { PeerState, PeerStatus, Selector, State, Track, TrackId, TrackWithOrigin, UseReconnection } from "./state.types";
|
|
3
|
-
import type { JSX,
|
|
3
|
+
import type { JSX, PropsWithChildren } from "react";
|
|
4
4
|
import type { Client } from "./Client";
|
|
5
|
+
export type PeerMetadata = {
|
|
6
|
+
displayName?: string;
|
|
7
|
+
};
|
|
8
|
+
export type TrackMetadata = {
|
|
9
|
+
type: "camera" | "microphone" | "screenShareVideo" | "screenShareAudio";
|
|
10
|
+
paused: boolean;
|
|
11
|
+
displayName?: string;
|
|
12
|
+
};
|
|
5
13
|
export type DevicesStatus = "OK" | "Error" | "Not requested" | "Requesting";
|
|
6
14
|
export type MediaStatus = "OK" | "Error" | "Not requested" | "Requesting";
|
|
7
15
|
export type Media = {
|
|
@@ -47,15 +55,11 @@ export type DeviceError = {
|
|
|
47
55
|
} | {
|
|
48
56
|
name: "UNHANDLED_ERROR";
|
|
49
57
|
};
|
|
50
|
-
export type Errors = {
|
|
51
|
-
audio?: DeviceError | null;
|
|
52
|
-
video?: DeviceError | null;
|
|
53
|
-
};
|
|
54
58
|
export type CurrentDevices = {
|
|
55
59
|
videoinput: MediaDeviceInfo | null;
|
|
56
60
|
audioinput: MediaDeviceInfo | null;
|
|
57
61
|
};
|
|
58
|
-
export type UseSetupMediaConfig
|
|
62
|
+
export type UseSetupMediaConfig = {
|
|
59
63
|
camera: {
|
|
60
64
|
/**
|
|
61
65
|
* Determines whether broadcasting should start when the user connects to the server with an active camera stream.
|
|
@@ -77,7 +81,6 @@ export type UseSetupMediaConfig<TrackMetadata> = {
|
|
|
77
81
|
*/
|
|
78
82
|
onDeviceStop?: "remove" | "mute";
|
|
79
83
|
trackConstraints: boolean | MediaTrackConstraints;
|
|
80
|
-
defaultTrackMetadata?: TrackMetadata;
|
|
81
84
|
defaultSimulcastConfig?: SimulcastConfig;
|
|
82
85
|
defaultMaxBandwidth?: TrackBandwidthLimit;
|
|
83
86
|
};
|
|
@@ -103,7 +106,6 @@ export type UseSetupMediaConfig<TrackMetadata> = {
|
|
|
103
106
|
*/
|
|
104
107
|
onDeviceStop?: "remove" | "mute";
|
|
105
108
|
trackConstraints: boolean | MediaTrackConstraints;
|
|
106
|
-
defaultTrackMetadata?: TrackMetadata;
|
|
107
109
|
defaultMaxBandwidth?: TrackBandwidthLimit;
|
|
108
110
|
};
|
|
109
111
|
screenShare: {
|
|
@@ -115,7 +117,6 @@ export type UseSetupMediaConfig<TrackMetadata> = {
|
|
|
115
117
|
* Determines whether broadcasting should start when the user initiates the camera and is connected to the server.
|
|
116
118
|
*/
|
|
117
119
|
broadcastOnDeviceStart?: boolean;
|
|
118
|
-
defaultTrackMetadata?: TrackMetadata;
|
|
119
120
|
defaultMaxBandwidth?: TrackBandwidthLimit;
|
|
120
121
|
};
|
|
121
122
|
startOnMount?: boolean;
|
|
@@ -135,6 +136,7 @@ export interface MediaManager {
|
|
|
135
136
|
track: MediaStreamTrack | null;
|
|
136
137
|
enabled: boolean;
|
|
137
138
|
} | null;
|
|
139
|
+
getDeviceType: () => "audio" | "video";
|
|
138
140
|
}
|
|
139
141
|
export type TrackMiddleware = ((track: MediaStreamTrack | null) => MediaStreamTrack | null) | null;
|
|
140
142
|
export type ScreenshareState = {
|
|
@@ -145,19 +147,20 @@ export type ScreenshareState = {
|
|
|
145
147
|
};
|
|
146
148
|
tracksMiddleware?: TracksMiddleware | null;
|
|
147
149
|
} | null;
|
|
148
|
-
export interface TrackManager
|
|
150
|
+
export interface TrackManager {
|
|
149
151
|
initialize: (deviceId?: string) => Promise<void>;
|
|
150
152
|
stop: () => Promise<void>;
|
|
151
|
-
startStreaming: (
|
|
153
|
+
startStreaming: (simulcastConfig?: SimulcastConfig, maxBandwidth?: TrackBandwidthLimit) => Promise<string>;
|
|
152
154
|
stopStreaming: () => Promise<void>;
|
|
153
155
|
pauseStreaming: () => Promise<void>;
|
|
154
156
|
resumeStreaming: () => Promise<void>;
|
|
157
|
+
paused: boolean;
|
|
155
158
|
disableTrack: () => void;
|
|
156
159
|
enableTrack: () => void;
|
|
157
160
|
setTrackMiddleware: (middleware: TrackMiddleware) => Promise<void>;
|
|
158
161
|
currentTrackMiddleware: TrackMiddleware;
|
|
159
162
|
refreshStreamedTrack: () => Promise<void>;
|
|
160
|
-
getCurrentTrack: () => Track
|
|
163
|
+
getCurrentTrack: () => Track | null;
|
|
161
164
|
}
|
|
162
165
|
export type UserMediaAPI = {
|
|
163
166
|
status: DevicesStatus | null;
|
|
@@ -173,9 +176,8 @@ export type TrackManagerState = {
|
|
|
173
176
|
currentTrackId: TrackId | null;
|
|
174
177
|
currentTrackMiddleware: TrackMiddleware;
|
|
175
178
|
};
|
|
176
|
-
export type ScreenshareApi
|
|
179
|
+
export type ScreenshareApi = {
|
|
177
180
|
startStreaming: (props?: {
|
|
178
|
-
metadata?: TrackMetadata;
|
|
179
181
|
audioConstraints?: boolean | MediaTrackConstraints;
|
|
180
182
|
videoConstraints?: boolean | MediaTrackConstraints;
|
|
181
183
|
}) => Promise<void>;
|
|
@@ -183,8 +185,8 @@ export type ScreenshareApi<TrackMetadata> = {
|
|
|
183
185
|
stream: MediaStream | null;
|
|
184
186
|
videoTrack: MediaStreamTrack | null;
|
|
185
187
|
audioTrack: MediaStreamTrack | null;
|
|
186
|
-
videoBroadcast: Track
|
|
187
|
-
audioBroadcast: Track
|
|
188
|
+
videoBroadcast: Track | null;
|
|
189
|
+
audioBroadcast: Track | null;
|
|
188
190
|
setTracksMiddleware: (middleware: TracksMiddleware | null) => Promise<void>;
|
|
189
191
|
currentTracksMiddleware: TracksMiddleware | null;
|
|
190
192
|
};
|
|
@@ -192,39 +194,40 @@ export type Devices = {
|
|
|
192
194
|
camera: UserMediaAPI;
|
|
193
195
|
microphone: UserMediaAPI;
|
|
194
196
|
};
|
|
195
|
-
export type FishjamContextProviderProps = {
|
|
196
|
-
children: ReactNode;
|
|
197
|
-
};
|
|
198
197
|
export type TracksMiddleware = (videoTrack: MediaStreamTrack, audioTrack: MediaStreamTrack | null) => [MediaStreamTrack, MediaStreamTrack | null];
|
|
199
|
-
export type FishjamContextType
|
|
200
|
-
state: State
|
|
198
|
+
export type FishjamContextType = {
|
|
199
|
+
state: State;
|
|
201
200
|
screenshareState: [ScreenshareState, React.Dispatch<React.SetStateAction<ScreenshareState>>];
|
|
202
|
-
videoTrackManager: TrackManager
|
|
203
|
-
audioTrackManager: TrackManager
|
|
204
|
-
};
|
|
205
|
-
export type
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
201
|
+
videoTrackManager: TrackManager;
|
|
202
|
+
audioTrackManager: TrackManager;
|
|
203
|
+
};
|
|
204
|
+
export type ConnectConfig = Omit<TSClientConnectConfig<PeerMetadata>, "peerMetadata"> & {
|
|
205
|
+
peerMetadata?: PeerMetadata;
|
|
206
|
+
};
|
|
207
|
+
export type UseConnect = (config: ConnectConfig) => () => void;
|
|
208
|
+
type DistinguishedTracks = {
|
|
209
|
+
videoTracks: Track[];
|
|
210
|
+
audioTracks: Track[];
|
|
211
|
+
};
|
|
212
|
+
export type PeerStateWithTracks = PeerState & DistinguishedTracks;
|
|
213
|
+
export type Participiants = {
|
|
214
|
+
localParticipant: PeerStateWithTracks | null;
|
|
215
|
+
participants: PeerStateWithTracks[];
|
|
216
|
+
};
|
|
217
|
+
export type CreateFishjamClient = {
|
|
218
|
+
FishjamContextProvider: ({ children }: PropsWithChildren) => JSX.Element;
|
|
219
|
+
useConnect: () => (config: ConnectConfig) => () => void;
|
|
214
220
|
useDisconnect: () => () => void;
|
|
215
221
|
useStatus: () => PeerStatus;
|
|
216
|
-
useSelector: <Result>(selector: Selector<
|
|
217
|
-
useTracks: () => Record<TrackId, TrackWithOrigin
|
|
218
|
-
useSetupMedia: (config: UseSetupMediaConfig
|
|
219
|
-
useCamera: () => Devices["camera"] & TrackManager
|
|
220
|
-
useMicrophone: () => Devices["microphone"] & TrackManager
|
|
221
|
-
useClient: () => Client
|
|
222
|
+
useSelector: <Result>(selector: Selector<Result>) => Result;
|
|
223
|
+
useTracks: () => Record<TrackId, TrackWithOrigin>;
|
|
224
|
+
useSetupMedia: (config: UseSetupMediaConfig) => UseSetupMediaResult;
|
|
225
|
+
useCamera: () => Devices["camera"] & TrackManager;
|
|
226
|
+
useMicrophone: () => Devices["microphone"] & TrackManager;
|
|
227
|
+
useClient: () => Client;
|
|
222
228
|
useReconnection: () => UseReconnection;
|
|
223
|
-
useParticipants: () =>
|
|
224
|
-
|
|
225
|
-
participants: PeerStateWithTracks<PeerMetadata, TrackMetadata>[];
|
|
226
|
-
};
|
|
227
|
-
useScreenShare: () => ScreenshareApi<TrackMetadata>;
|
|
229
|
+
useParticipants: () => Participiants;
|
|
230
|
+
useScreenShare: () => ScreenshareApi;
|
|
228
231
|
};
|
|
229
232
|
export type TrackType = TrackKind | "audiovideo";
|
|
230
233
|
export type MediaDeviceType = "displayMedia" | "userMedia";
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/track.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { FishjamClient } from "@fishjam-cloud/ts-client";
|
|
2
2
|
import type { Track } from "../state.types";
|
|
3
|
-
|
|
3
|
+
import type { PeerMetadata, TrackMetadata } from "../types";
|
|
4
|
+
export declare const getRemoteOrLocalTrack: (tsClient: FishjamClient<PeerMetadata, TrackMetadata>, remoteOrLocalTrackId: string | null) => Track | null;
|
|
4
5
|
//# sourceMappingURL=track.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/utils/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAsC5D,eAAO,MAAM,qBAAqB,aACtB,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,wBAC9B,MAAM,GAAG,IAAI,iBAKpC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fishjam-cloud/react-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "React client library for Fishjam Cloud",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Fishjam Cloud Team",
|
|
@@ -38,8 +38,7 @@
|
|
|
38
38
|
"format:check": "prettier --check . --ignore-path ./.eslintignore",
|
|
39
39
|
"lint": "eslint . --ext .ts,.tsx --fix",
|
|
40
40
|
"lint:check": "eslint . --ext .ts,.tsx",
|
|
41
|
-
"prepack": "yarn workspace @fishjam-cloud/ts-client build && yarn build"
|
|
42
|
-
"typecheck": "tsc"
|
|
41
|
+
"prepack": "yarn workspace @fishjam-cloud/ts-client build && yarn build"
|
|
43
42
|
},
|
|
44
43
|
"devDependencies": {
|
|
45
44
|
"@playwright/test": "^1.46.1",
|
|
@@ -50,11 +49,11 @@
|
|
|
50
49
|
"react": "^18.2.0",
|
|
51
50
|
"typed-emitter": "^2.1.0",
|
|
52
51
|
"typedoc": "^0.26.6",
|
|
53
|
-
"typedoc-plugin-mdn-links": "^3.2.
|
|
52
|
+
"typedoc-plugin-mdn-links": "^3.2.10",
|
|
54
53
|
"typescript": "^5.5.4"
|
|
55
54
|
},
|
|
56
55
|
"dependencies": {
|
|
57
|
-
"@fishjam-cloud/ts-client": "0.
|
|
56
|
+
"@fishjam-cloud/ts-client": "0.6.0",
|
|
58
57
|
"events": "3.3.0",
|
|
59
58
|
"lodash.isequal": "4.5.0"
|
|
60
59
|
},
|
package/readme.md
CHANGED
|
@@ -61,22 +61,9 @@ import { SCREEN_SHARING_MEDIA_CONSTRAINTS } from "@fishjam-cloud/react-client";
|
|
|
61
61
|
import { create } from "@fishjam-cloud/react-client";
|
|
62
62
|
import { useState } from "react";
|
|
63
63
|
|
|
64
|
-
// Example metadata types for peer and track
|
|
65
|
-
// You can define your own metadata types just make sure they are serializable
|
|
66
|
-
export type PeerMetadata = {
|
|
67
|
-
name: string;
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
export type TrackMetadata = {
|
|
71
|
-
type: "camera" | "screen";
|
|
72
|
-
};
|
|
73
|
-
|
|
74
64
|
// Create a Fishjam client instance
|
|
75
65
|
// remember to use FishjamContextProvider
|
|
76
|
-
export const { useApi, useTracks, useStatus, useConnect, useDisconnect, FishjamContextProvider } = create
|
|
77
|
-
PeerMetadata,
|
|
78
|
-
TrackMetadata
|
|
79
|
-
>();
|
|
66
|
+
export const { useApi, useTracks, useStatus, useConnect, useDisconnect, FishjamContextProvider } = create();
|
|
80
67
|
|
|
81
68
|
export const App = () => {
|
|
82
69
|
const [token, setToken] = useState("");
|
|
@@ -96,7 +83,6 @@ export const App = () => {
|
|
|
96
83
|
onClick={() => {
|
|
97
84
|
if (!token || token === "") throw Error("Token is empty");
|
|
98
85
|
connect({
|
|
99
|
-
peerMetadata: { name: "John Doe" }, // example metadata
|
|
100
86
|
token: token,
|
|
101
87
|
});
|
|
102
88
|
}}
|
package/dist/create.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { CreateConfig } from "@fishjam-cloud/ts-client";
|
|
2
|
-
import type { DeviceManagerConfig, CreateFishjamClient } from "./types";
|
|
3
|
-
/**
|
|
4
|
-
* Create a client that can be used with a context.
|
|
5
|
-
* Returns context provider, and two hooks to interact with the context.
|
|
6
|
-
*
|
|
7
|
-
* @returns ContextProvider, useSelector, useConnect
|
|
8
|
-
*/
|
|
9
|
-
export declare function create<PeerMetadata, TrackMetadata>(config?: CreateConfig<PeerMetadata, TrackMetadata>, deviceManagerDefaultConfig?: DeviceManagerConfig): CreateFishjamClient<PeerMetadata, TrackMetadata>;
|
|
10
|
-
//# sourceMappingURL=create.d.ts.map
|
package/dist/create.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EACV,mBAAmB,EAEnB,mBAAmB,EAMpB,MAAM,SAAS,CAAC;AAuDjB;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,YAAY,EAAE,aAAa,EAChD,MAAM,CAAC,EAAE,YAAY,CAAC,YAAY,EAAE,aAAa,CAAC,EAClD,0BAA0B,CAAC,EAAE,mBAAmB,GAC/C,mBAAmB,CAAC,YAAY,EAAE,aAAa,CAAC,CA0LlD"}
|
package/dist/create.js
DELETED
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { createContext, useCallback, useContext, useMemo, useRef, useState, useSyncExternalStore } from "react";
|
|
3
|
-
import { Client } from "./Client";
|
|
4
|
-
import { createUseSetupMediaHook } from "./useSetupMedia";
|
|
5
|
-
import { useScreenShare as _useScreenShare } from "./screenShareTrackManager";
|
|
6
|
-
import { useTrackManager } from "./trackManager";
|
|
7
|
-
const eventNames = [
|
|
8
|
-
"socketOpen",
|
|
9
|
-
"socketError",
|
|
10
|
-
"socketClose",
|
|
11
|
-
"authSuccess",
|
|
12
|
-
"authError",
|
|
13
|
-
"disconnected",
|
|
14
|
-
"joined",
|
|
15
|
-
"joinError",
|
|
16
|
-
"peerJoined",
|
|
17
|
-
"peerUpdated",
|
|
18
|
-
"peerLeft",
|
|
19
|
-
"reconnected",
|
|
20
|
-
"reconnectionRetriesLimitReached",
|
|
21
|
-
"reconnectionStarted",
|
|
22
|
-
"componentAdded",
|
|
23
|
-
"componentUpdated",
|
|
24
|
-
"componentRemoved",
|
|
25
|
-
"trackReady",
|
|
26
|
-
"trackAdded",
|
|
27
|
-
"trackRemoved",
|
|
28
|
-
"trackUpdated",
|
|
29
|
-
"bandwidthEstimationChanged",
|
|
30
|
-
"encodingChanged",
|
|
31
|
-
"voiceActivityChanged",
|
|
32
|
-
"deviceDisabled",
|
|
33
|
-
"deviceEnabled",
|
|
34
|
-
"managerInitialized",
|
|
35
|
-
"managerStarted",
|
|
36
|
-
"deviceStopped",
|
|
37
|
-
"deviceReady",
|
|
38
|
-
"devicesStarted",
|
|
39
|
-
"devicesReady",
|
|
40
|
-
"error",
|
|
41
|
-
"targetTrackEncodingRequested",
|
|
42
|
-
"localTrackAdded",
|
|
43
|
-
"localTrackRemoved",
|
|
44
|
-
"localTrackReplaced",
|
|
45
|
-
"localTrackMuted",
|
|
46
|
-
"localTrackUnmuted",
|
|
47
|
-
"localTrackBandwidthSet",
|
|
48
|
-
"localTrackEncodingBandwidthSet",
|
|
49
|
-
"localTrackEncodingEnabled",
|
|
50
|
-
"localTrackEncodingDisabled",
|
|
51
|
-
"localPeerMetadataChanged",
|
|
52
|
-
"localTrackMetadataChanged",
|
|
53
|
-
"disconnectRequested",
|
|
54
|
-
];
|
|
55
|
-
/**
|
|
56
|
-
* Create a client that can be used with a context.
|
|
57
|
-
* Returns context provider, and two hooks to interact with the context.
|
|
58
|
-
*
|
|
59
|
-
* @returns ContextProvider, useSelector, useConnect
|
|
60
|
-
*/
|
|
61
|
-
export function create(config, deviceManagerDefaultConfig) {
|
|
62
|
-
const FishjamContext = createContext(undefined);
|
|
63
|
-
function FishjamContextProvider({ children }) {
|
|
64
|
-
const memoClient = useMemo(() => {
|
|
65
|
-
return new Client({
|
|
66
|
-
clientConfig: config,
|
|
67
|
-
deviceManagerDefaultConfig,
|
|
68
|
-
});
|
|
69
|
-
}, []);
|
|
70
|
-
const clientRef = useRef(memoClient);
|
|
71
|
-
const mutationRef = useRef(false);
|
|
72
|
-
const subscribe = useCallback((subscribeCallback) => {
|
|
73
|
-
const client = clientRef.current;
|
|
74
|
-
const callback = () => {
|
|
75
|
-
mutationRef.current = true;
|
|
76
|
-
subscribeCallback();
|
|
77
|
-
};
|
|
78
|
-
eventNames.forEach((eventName) => client.on(eventName, callback));
|
|
79
|
-
return () => {
|
|
80
|
-
eventNames.forEach((eventName) => client.removeListener(eventName, callback));
|
|
81
|
-
};
|
|
82
|
-
}, []);
|
|
83
|
-
const lastSnapshotRef = useRef(null);
|
|
84
|
-
const getSnapshot = useCallback(() => {
|
|
85
|
-
if (mutationRef.current || lastSnapshotRef.current === null) {
|
|
86
|
-
const state = {
|
|
87
|
-
remote: clientRef.current.peers,
|
|
88
|
-
media: clientRef.current.media,
|
|
89
|
-
bandwidthEstimation: clientRef.current.bandwidthEstimation,
|
|
90
|
-
tracks: clientRef.current.peersTracks,
|
|
91
|
-
local: clientRef.current.local,
|
|
92
|
-
status: clientRef.current.status,
|
|
93
|
-
devices: clientRef.current.devices,
|
|
94
|
-
client: clientRef.current,
|
|
95
|
-
reconnectionStatus: clientRef.current.reconnectionStatus,
|
|
96
|
-
};
|
|
97
|
-
lastSnapshotRef.current = state;
|
|
98
|
-
mutationRef.current = false;
|
|
99
|
-
}
|
|
100
|
-
return lastSnapshotRef.current;
|
|
101
|
-
}, []);
|
|
102
|
-
const state = useSyncExternalStore(subscribe, getSnapshot);
|
|
103
|
-
const tsClient = state.client.getTsClient();
|
|
104
|
-
const screenshareState = useState(null);
|
|
105
|
-
const videoTrackManager = useTrackManager({
|
|
106
|
-
mediaManager: state.client.videoDeviceManager,
|
|
107
|
-
tsClient,
|
|
108
|
-
});
|
|
109
|
-
const audioTrackManager = useTrackManager({
|
|
110
|
-
mediaManager: state.client.audioDeviceManager,
|
|
111
|
-
tsClient,
|
|
112
|
-
});
|
|
113
|
-
return (_jsx(FishjamContext.Provider, { value: { state, screenshareState, videoTrackManager, audioTrackManager }, children: children }));
|
|
114
|
-
}
|
|
115
|
-
function useFishjamContext() {
|
|
116
|
-
const context = useContext(FishjamContext);
|
|
117
|
-
if (!context)
|
|
118
|
-
throw new Error("useFishjamContext must be used within a FishjamContextProvider");
|
|
119
|
-
return context;
|
|
120
|
-
}
|
|
121
|
-
function useSelector(selector) {
|
|
122
|
-
const { state } = useFishjamContext();
|
|
123
|
-
return useMemo(() => selector(state), [selector, state]);
|
|
124
|
-
}
|
|
125
|
-
function useConnect() {
|
|
126
|
-
const { state } = useFishjamContext();
|
|
127
|
-
return useMemo(() => {
|
|
128
|
-
return (config) => {
|
|
129
|
-
state.client.connect(config);
|
|
130
|
-
return () => {
|
|
131
|
-
state.client.disconnect();
|
|
132
|
-
};
|
|
133
|
-
};
|
|
134
|
-
}, [state.client]);
|
|
135
|
-
}
|
|
136
|
-
function useDisconnect() {
|
|
137
|
-
const { state } = useFishjamContext();
|
|
138
|
-
return useCallback(() => {
|
|
139
|
-
state.client.disconnect();
|
|
140
|
-
}, [state.client]);
|
|
141
|
-
}
|
|
142
|
-
function useStatus() {
|
|
143
|
-
return useSelector((s) => s.status);
|
|
144
|
-
}
|
|
145
|
-
function useTracks() {
|
|
146
|
-
return useSelector((s) => s.tracks);
|
|
147
|
-
}
|
|
148
|
-
function useClient() {
|
|
149
|
-
return useSelector((s) => s.client);
|
|
150
|
-
}
|
|
151
|
-
function useCamera() {
|
|
152
|
-
const { state, videoTrackManager } = useFishjamContext();
|
|
153
|
-
return { ...state.devices.camera, ...videoTrackManager };
|
|
154
|
-
}
|
|
155
|
-
function useMicrophone() {
|
|
156
|
-
const { state, audioTrackManager } = useFishjamContext();
|
|
157
|
-
return { ...state.devices.microphone, ...audioTrackManager };
|
|
158
|
-
}
|
|
159
|
-
function useReconnection() {
|
|
160
|
-
const { state } = useFishjamContext();
|
|
161
|
-
return {
|
|
162
|
-
status: state.reconnectionStatus,
|
|
163
|
-
isReconnecting: state.reconnectionStatus === "reconnecting",
|
|
164
|
-
isError: state.reconnectionStatus === "error",
|
|
165
|
-
isIdle: state.reconnectionStatus === "idle",
|
|
166
|
-
};
|
|
167
|
-
}
|
|
168
|
-
function getPeerWithDistinguishedTracks(peerState) {
|
|
169
|
-
const localTracks = Object.values(peerState.tracks ?? {});
|
|
170
|
-
const videoTracks = localTracks.filter(({ track }) => track?.kind === "video");
|
|
171
|
-
const audioTracks = localTracks.filter(({ track }) => track?.kind === "audio");
|
|
172
|
-
return { ...peerState, videoTracks, audioTracks };
|
|
173
|
-
}
|
|
174
|
-
function useParticipants() {
|
|
175
|
-
const { state } = useFishjamContext();
|
|
176
|
-
const localParticipant = state.local
|
|
177
|
-
? getPeerWithDistinguishedTracks(state.local)
|
|
178
|
-
: null;
|
|
179
|
-
const participants = Object.values(state.remote).map(getPeerWithDistinguishedTracks);
|
|
180
|
-
return { localParticipant, participants };
|
|
181
|
-
}
|
|
182
|
-
function useScreenShare() {
|
|
183
|
-
const { state, screenshareState } = useFishjamContext();
|
|
184
|
-
return _useScreenShare(screenshareState, state.client.getTsClient());
|
|
185
|
-
}
|
|
186
|
-
return {
|
|
187
|
-
FishjamContextProvider,
|
|
188
|
-
useSelector,
|
|
189
|
-
useConnect,
|
|
190
|
-
useDisconnect,
|
|
191
|
-
useStatus,
|
|
192
|
-
useTracks,
|
|
193
|
-
useSetupMedia: createUseSetupMediaHook(useFishjamContext),
|
|
194
|
-
useParticipants,
|
|
195
|
-
useScreenShare,
|
|
196
|
-
useCamera,
|
|
197
|
-
useMicrophone,
|
|
198
|
-
useClient,
|
|
199
|
-
useReconnection,
|
|
200
|
-
};
|
|
201
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { FishjamClient } from "@fishjam-cloud/ts-client";
|
|
2
|
-
import type { ScreenshareApi, ScreenshareState } from "./types";
|
|
3
|
-
export declare const useScreenShare: <PeerMetadata, TrackMetadata>([state, setState]: [ScreenshareState, React.Dispatch<React.SetStateAction<ScreenshareState>>], tsClient: FishjamClient<PeerMetadata, TrackMetadata>) => ScreenshareApi<TrackMetadata>;
|
|
4
|
-
//# sourceMappingURL=screenShareTrackManager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"screenShareTrackManager.d.ts","sourceRoot":"","sources":["../src/screenShareTrackManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAoB,MAAM,SAAS,CAAC;AASlF,eAAO,MAAM,cAAc,GAAI,YAAY,EAAE,aAAa,qBAErC,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,YACnF,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,KACnD,cAAc,CAAC,aAAa,CAmG9B,CAAC"}
|
package/dist/useSetupMedia.d.ts
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import type { FishjamContextType, UseSetupMediaConfig, UseSetupMediaResult } from "./types";
|
|
2
|
-
export declare const createUseSetupMediaHook: <PeerMetadata, TrackMetadata>(useFishjamContext: () => FishjamContextType<PeerMetadata, TrackMetadata>) => (config: UseSetupMediaConfig<TrackMetadata>) => UseSetupMediaResult;
|
|
3
|
-
//# sourceMappingURL=useSetupMedia.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSetupMedia.d.ts","sourceRoot":"","sources":["../src/useSetupMedia.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAK5F,eAAO,MAAM,uBAAuB,GAAI,YAAY,EAAE,aAAa,qBAC9C,MAAM,kBAAkB,CAAC,YAAY,EAAE,aAAa,CAAC,cAQxD,mBAAmB,CAAC,aAAa,CAAC,KAAG,mBAiQtD,CAAC"}
|