@whereby.com/browser-sdk 2.0.0-alpha18 → 2.0.0-alpha19

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/lib.cjs CHANGED
@@ -150,7 +150,7 @@ heresy.define("WherebyEmbed", {
150
150
  if (roomUrl.searchParams.get("roomKey")) {
151
151
  this.url.searchParams.append("roomKey", roomUrl.searchParams.get("roomKey"));
152
152
  }
153
- Object.entries(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ jsApi: true, we: "2.0.0-alpha18", iframeSource: subdomain }, (displayName && { displayName })), (lang && { lang })), (metadata && { metadata })), (groups && { groups })), (virtualBackgroundUrl && { virtualBackgroundUrl })), (avatarUrl && { avatarUrl })), (minimal != null && { embed: minimal })), boolAttrs.reduce(
153
+ Object.entries(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ jsApi: true, we: "2.0.0-alpha19", iframeSource: subdomain }, (displayName && { displayName })), (lang && { lang })), (metadata && { metadata })), (groups && { groups })), (virtualBackgroundUrl && { virtualBackgroundUrl })), (avatarUrl && { avatarUrl })), (minimal != null && { embed: minimal })), boolAttrs.reduce(
154
154
  // add to URL if set in any way
155
155
  (o, v) => (this[v.toLowerCase()] != null ? Object.assign(Object.assign({}, o), { [v]: this[v.toLowerCase()] }) : o), {}))).forEach(([k, v]) => {
156
156
  if (!this.url.searchParams.has(k) && typeof v === "string") {
@@ -9038,75 +9038,100 @@ function useRoomConnection(roomUrl, roomConnectionOptions) {
9038
9038
  return new RoomConnection(roomUrl, Object.assign(Object.assign({}, roomConnectionOptions), { localMedia: ((_a = roomConnectionOptions === null || roomConnectionOptions === void 0 ? void 0 : roomConnectionOptions.localMedia) === null || _a === void 0 ? void 0 : _a._ref) || undefined }));
9039
9039
  });
9040
9040
  const [state, dispatch] = React.useReducer(reducer, initialState);
9041
- React.useEffect(() => {
9042
- roomConnection.addEventListener("chat_message", (e) => {
9043
- const chatMessage = e.detail;
9044
- dispatch({ type: "CHAT_MESSAGE", payload: chatMessage });
9045
- });
9046
- roomConnection.addEventListener("cloud_recording_started", (e) => {
9041
+ function createEventListener(eventName, listener, options) {
9042
+ return {
9043
+ eventName,
9044
+ listener,
9045
+ options,
9046
+ };
9047
+ }
9048
+ const eventListeners = React__default["default"].useMemo(() => [
9049
+ createEventListener("chat_message", (e) => {
9050
+ dispatch({ type: "CHAT_MESSAGE", payload: e.detail });
9051
+ }),
9052
+ createEventListener("cloud_recording_started", (e) => {
9047
9053
  const { status, startedAt } = e.detail;
9048
9054
  dispatch({ type: "CLOUD_RECORDING_STARTED", payload: { status, startedAt } });
9049
- });
9050
- roomConnection.addEventListener("cloud_recording_stopped", () => {
9055
+ }),
9056
+ createEventListener("cloud_recording_stopped", () => {
9051
9057
  dispatch({ type: "CLOUD_RECORDING_STOPPED" });
9052
- });
9053
- roomConnection.addEventListener("participant_audio_enabled", (e) => {
9058
+ }),
9059
+ createEventListener("participant_audio_enabled", (e) => {
9054
9060
  const { participantId, isAudioEnabled } = e.detail;
9055
9061
  dispatch({ type: "PARTICIPANT_AUDIO_ENABLED", payload: { participantId, isAudioEnabled } });
9056
- });
9057
- roomConnection.addEventListener("participant_joined", (e) => {
9062
+ }),
9063
+ createEventListener("participant_joined", (e) => {
9058
9064
  const { remoteParticipant } = e.detail;
9059
9065
  dispatch({ type: "PARTICIPANT_JOINED", payload: { paritipant: remoteParticipant } });
9060
- });
9061
- roomConnection.addEventListener("participant_left", (e) => {
9066
+ }),
9067
+ createEventListener("participant_left", (e) => {
9062
9068
  const { participantId } = e.detail;
9063
9069
  dispatch({ type: "PARTICIPANT_LEFT", payload: { participantId } });
9064
- });
9065
- roomConnection.addEventListener("participant_stream_added", (e) => {
9070
+ }),
9071
+ createEventListener("participant_metadata_changed", (e) => {
9072
+ const { participantId, displayName } = e.detail;
9073
+ dispatch({ type: "PARTICIPANT_METADATA_CHANGED", payload: { participantId, displayName } });
9074
+ }),
9075
+ createEventListener("participant_stream_added", (e) => {
9066
9076
  const { participantId, stream } = e.detail;
9067
9077
  dispatch({ type: "PARTICIPANT_STREAM_ADDED", payload: { participantId, stream } });
9068
- });
9069
- roomConnection.addEventListener("room_connection_status_changed", (e) => {
9070
- const { roomConnectionStatus } = e.detail;
9071
- dispatch({ type: "ROOM_CONNECTION_STATUS_CHANGED", payload: { roomConnectionStatus } });
9072
- });
9073
- roomConnection.addEventListener("room_joined", (e) => {
9074
- const { localParticipant, remoteParticipants, waitingParticipants } = e.detail;
9075
- dispatch({ type: "ROOM_JOINED", payload: { localParticipant, remoteParticipants, waitingParticipants } });
9076
- });
9077
- roomConnection.addEventListener("participant_video_enabled", (e) => {
9078
+ }),
9079
+ createEventListener("participant_video_enabled", (e) => {
9078
9080
  const { participantId, isVideoEnabled } = e.detail;
9079
9081
  dispatch({ type: "PARTICIPANT_VIDEO_ENABLED", payload: { participantId, isVideoEnabled } });
9080
- });
9081
- roomConnection.addEventListener("participant_metadata_changed", (e) => {
9082
- const { participantId, displayName } = e.detail;
9083
- dispatch({ type: "PARTICIPANT_METADATA_CHANGED", payload: { participantId, displayName } });
9084
- });
9085
- roomConnection.addEventListener("screenshare_started", (e) => {
9086
- const { participantId, id, hasAudioTrack, stream } = e.detail;
9087
- dispatch({ type: "SCREENSHARE_STARTED", payload: { participantId, id, hasAudioTrack, stream } });
9088
- });
9089
- roomConnection.addEventListener("screenshare_stopped", (e) => {
9082
+ }),
9083
+ createEventListener("room_connection_status_changed", (e) => {
9084
+ const { roomConnectionStatus } = e.detail;
9085
+ dispatch({
9086
+ type: "ROOM_CONNECTION_STATUS_CHANGED",
9087
+ payload: { roomConnectionStatus },
9088
+ });
9089
+ }),
9090
+ createEventListener("room_joined", (e) => {
9091
+ const { localParticipant, remoteParticipants, waitingParticipants } = e.detail;
9092
+ dispatch({
9093
+ type: "ROOM_JOINED",
9094
+ payload: { localParticipant, remoteParticipants, waitingParticipants },
9095
+ });
9096
+ }),
9097
+ createEventListener("screenshare_started", (e) => {
9098
+ const { participantId, stream, id, hasAudioTrack } = e.detail;
9099
+ dispatch({
9100
+ type: "SCREENSHARE_STARTED",
9101
+ payload: { participantId, stream, id, hasAudioTrack },
9102
+ });
9103
+ }),
9104
+ createEventListener("screenshare_stopped", (e) => {
9090
9105
  const { participantId, id } = e.detail;
9091
- dispatch({ type: "SCREENSHARE_STOPPED", payload: { participantId, id } });
9092
- });
9093
- roomConnection.addEventListener("streaming_started", (e) => {
9106
+ dispatch({
9107
+ type: "SCREENSHARE_STOPPED",
9108
+ payload: { participantId, id },
9109
+ });
9110
+ }),
9111
+ createEventListener("streaming_started", (e) => {
9094
9112
  const { status, startedAt } = e.detail;
9095
9113
  dispatch({ type: "STREAMING_STARTED", payload: { status, startedAt } });
9096
- });
9097
- roomConnection.addEventListener("streaming_stopped", () => {
9114
+ }),
9115
+ createEventListener("streaming_stopped", () => {
9098
9116
  dispatch({ type: "STREAMING_STOPPED" });
9099
- });
9100
- roomConnection.addEventListener("waiting_participant_joined", (e) => {
9117
+ }),
9118
+ createEventListener("waiting_participant_joined", (e) => {
9101
9119
  const { participantId, displayName } = e.detail;
9102
- dispatch({ type: "WAITING_PARTICIPANT_JOINED", payload: { participantId, displayName } });
9103
- });
9104
- roomConnection.addEventListener("waiting_participant_left", (e) => {
9105
- const { participantId } = e.detail;
9106
- dispatch({ type: "WAITING_PARTICIPANT_LEFT", payload: { participantId } });
9120
+ dispatch({
9121
+ type: "WAITING_PARTICIPANT_JOINED",
9122
+ payload: { participantId, displayName },
9123
+ });
9124
+ }),
9125
+ ], []);
9126
+ React.useEffect(() => {
9127
+ eventListeners.forEach(({ eventName, listener }) => {
9128
+ roomConnection.addEventListener(eventName, listener);
9107
9129
  });
9108
9130
  roomConnection.join();
9109
9131
  return () => {
9132
+ eventListeners.forEach(({ eventName, listener }) => {
9133
+ roomConnection.removeEventListener(eventName, listener);
9134
+ });
9110
9135
  roomConnection.leave();
9111
9136
  };
9112
9137
  }, []);
@@ -9151,7 +9176,7 @@ function useRoomConnection(roomUrl, roomConnectionOptions) {
9151
9176
  };
9152
9177
  }
9153
9178
 
9154
- const sdkVersion = "2.0.0-alpha18";
9179
+ const sdkVersion = "2.0.0-alpha19";
9155
9180
 
9156
9181
  exports.VideoView = VideoView;
9157
9182
  exports.sdkVersion = sdkVersion;
package/dist/lib.esm.js CHANGED
@@ -128,7 +128,7 @@ define("WherebyEmbed", {
128
128
  if (roomUrl.searchParams.get("roomKey")) {
129
129
  this.url.searchParams.append("roomKey", roomUrl.searchParams.get("roomKey"));
130
130
  }
131
- Object.entries(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ jsApi: true, we: "2.0.0-alpha18", iframeSource: subdomain }, (displayName && { displayName })), (lang && { lang })), (metadata && { metadata })), (groups && { groups })), (virtualBackgroundUrl && { virtualBackgroundUrl })), (avatarUrl && { avatarUrl })), (minimal != null && { embed: minimal })), boolAttrs.reduce(
131
+ Object.entries(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ jsApi: true, we: "2.0.0-alpha19", iframeSource: subdomain }, (displayName && { displayName })), (lang && { lang })), (metadata && { metadata })), (groups && { groups })), (virtualBackgroundUrl && { virtualBackgroundUrl })), (avatarUrl && { avatarUrl })), (minimal != null && { embed: minimal })), boolAttrs.reduce(
132
132
  // add to URL if set in any way
133
133
  (o, v) => (this[v.toLowerCase()] != null ? Object.assign(Object.assign({}, o), { [v]: this[v.toLowerCase()] }) : o), {}))).forEach(([k, v]) => {
134
134
  if (!this.url.searchParams.has(k) && typeof v === "string") {
@@ -9016,75 +9016,100 @@ function useRoomConnection(roomUrl, roomConnectionOptions) {
9016
9016
  return new RoomConnection(roomUrl, Object.assign(Object.assign({}, roomConnectionOptions), { localMedia: ((_a = roomConnectionOptions === null || roomConnectionOptions === void 0 ? void 0 : roomConnectionOptions.localMedia) === null || _a === void 0 ? void 0 : _a._ref) || undefined }));
9017
9017
  });
9018
9018
  const [state, dispatch] = useReducer(reducer, initialState);
9019
- useEffect(() => {
9020
- roomConnection.addEventListener("chat_message", (e) => {
9021
- const chatMessage = e.detail;
9022
- dispatch({ type: "CHAT_MESSAGE", payload: chatMessage });
9023
- });
9024
- roomConnection.addEventListener("cloud_recording_started", (e) => {
9019
+ function createEventListener(eventName, listener, options) {
9020
+ return {
9021
+ eventName,
9022
+ listener,
9023
+ options,
9024
+ };
9025
+ }
9026
+ const eventListeners = React.useMemo(() => [
9027
+ createEventListener("chat_message", (e) => {
9028
+ dispatch({ type: "CHAT_MESSAGE", payload: e.detail });
9029
+ }),
9030
+ createEventListener("cloud_recording_started", (e) => {
9025
9031
  const { status, startedAt } = e.detail;
9026
9032
  dispatch({ type: "CLOUD_RECORDING_STARTED", payload: { status, startedAt } });
9027
- });
9028
- roomConnection.addEventListener("cloud_recording_stopped", () => {
9033
+ }),
9034
+ createEventListener("cloud_recording_stopped", () => {
9029
9035
  dispatch({ type: "CLOUD_RECORDING_STOPPED" });
9030
- });
9031
- roomConnection.addEventListener("participant_audio_enabled", (e) => {
9036
+ }),
9037
+ createEventListener("participant_audio_enabled", (e) => {
9032
9038
  const { participantId, isAudioEnabled } = e.detail;
9033
9039
  dispatch({ type: "PARTICIPANT_AUDIO_ENABLED", payload: { participantId, isAudioEnabled } });
9034
- });
9035
- roomConnection.addEventListener("participant_joined", (e) => {
9040
+ }),
9041
+ createEventListener("participant_joined", (e) => {
9036
9042
  const { remoteParticipant } = e.detail;
9037
9043
  dispatch({ type: "PARTICIPANT_JOINED", payload: { paritipant: remoteParticipant } });
9038
- });
9039
- roomConnection.addEventListener("participant_left", (e) => {
9044
+ }),
9045
+ createEventListener("participant_left", (e) => {
9040
9046
  const { participantId } = e.detail;
9041
9047
  dispatch({ type: "PARTICIPANT_LEFT", payload: { participantId } });
9042
- });
9043
- roomConnection.addEventListener("participant_stream_added", (e) => {
9048
+ }),
9049
+ createEventListener("participant_metadata_changed", (e) => {
9050
+ const { participantId, displayName } = e.detail;
9051
+ dispatch({ type: "PARTICIPANT_METADATA_CHANGED", payload: { participantId, displayName } });
9052
+ }),
9053
+ createEventListener("participant_stream_added", (e) => {
9044
9054
  const { participantId, stream } = e.detail;
9045
9055
  dispatch({ type: "PARTICIPANT_STREAM_ADDED", payload: { participantId, stream } });
9046
- });
9047
- roomConnection.addEventListener("room_connection_status_changed", (e) => {
9048
- const { roomConnectionStatus } = e.detail;
9049
- dispatch({ type: "ROOM_CONNECTION_STATUS_CHANGED", payload: { roomConnectionStatus } });
9050
- });
9051
- roomConnection.addEventListener("room_joined", (e) => {
9052
- const { localParticipant, remoteParticipants, waitingParticipants } = e.detail;
9053
- dispatch({ type: "ROOM_JOINED", payload: { localParticipant, remoteParticipants, waitingParticipants } });
9054
- });
9055
- roomConnection.addEventListener("participant_video_enabled", (e) => {
9056
+ }),
9057
+ createEventListener("participant_video_enabled", (e) => {
9056
9058
  const { participantId, isVideoEnabled } = e.detail;
9057
9059
  dispatch({ type: "PARTICIPANT_VIDEO_ENABLED", payload: { participantId, isVideoEnabled } });
9058
- });
9059
- roomConnection.addEventListener("participant_metadata_changed", (e) => {
9060
- const { participantId, displayName } = e.detail;
9061
- dispatch({ type: "PARTICIPANT_METADATA_CHANGED", payload: { participantId, displayName } });
9062
- });
9063
- roomConnection.addEventListener("screenshare_started", (e) => {
9064
- const { participantId, id, hasAudioTrack, stream } = e.detail;
9065
- dispatch({ type: "SCREENSHARE_STARTED", payload: { participantId, id, hasAudioTrack, stream } });
9066
- });
9067
- roomConnection.addEventListener("screenshare_stopped", (e) => {
9060
+ }),
9061
+ createEventListener("room_connection_status_changed", (e) => {
9062
+ const { roomConnectionStatus } = e.detail;
9063
+ dispatch({
9064
+ type: "ROOM_CONNECTION_STATUS_CHANGED",
9065
+ payload: { roomConnectionStatus },
9066
+ });
9067
+ }),
9068
+ createEventListener("room_joined", (e) => {
9069
+ const { localParticipant, remoteParticipants, waitingParticipants } = e.detail;
9070
+ dispatch({
9071
+ type: "ROOM_JOINED",
9072
+ payload: { localParticipant, remoteParticipants, waitingParticipants },
9073
+ });
9074
+ }),
9075
+ createEventListener("screenshare_started", (e) => {
9076
+ const { participantId, stream, id, hasAudioTrack } = e.detail;
9077
+ dispatch({
9078
+ type: "SCREENSHARE_STARTED",
9079
+ payload: { participantId, stream, id, hasAudioTrack },
9080
+ });
9081
+ }),
9082
+ createEventListener("screenshare_stopped", (e) => {
9068
9083
  const { participantId, id } = e.detail;
9069
- dispatch({ type: "SCREENSHARE_STOPPED", payload: { participantId, id } });
9070
- });
9071
- roomConnection.addEventListener("streaming_started", (e) => {
9084
+ dispatch({
9085
+ type: "SCREENSHARE_STOPPED",
9086
+ payload: { participantId, id },
9087
+ });
9088
+ }),
9089
+ createEventListener("streaming_started", (e) => {
9072
9090
  const { status, startedAt } = e.detail;
9073
9091
  dispatch({ type: "STREAMING_STARTED", payload: { status, startedAt } });
9074
- });
9075
- roomConnection.addEventListener("streaming_stopped", () => {
9092
+ }),
9093
+ createEventListener("streaming_stopped", () => {
9076
9094
  dispatch({ type: "STREAMING_STOPPED" });
9077
- });
9078
- roomConnection.addEventListener("waiting_participant_joined", (e) => {
9095
+ }),
9096
+ createEventListener("waiting_participant_joined", (e) => {
9079
9097
  const { participantId, displayName } = e.detail;
9080
- dispatch({ type: "WAITING_PARTICIPANT_JOINED", payload: { participantId, displayName } });
9081
- });
9082
- roomConnection.addEventListener("waiting_participant_left", (e) => {
9083
- const { participantId } = e.detail;
9084
- dispatch({ type: "WAITING_PARTICIPANT_LEFT", payload: { participantId } });
9098
+ dispatch({
9099
+ type: "WAITING_PARTICIPANT_JOINED",
9100
+ payload: { participantId, displayName },
9101
+ });
9102
+ }),
9103
+ ], []);
9104
+ useEffect(() => {
9105
+ eventListeners.forEach(({ eventName, listener }) => {
9106
+ roomConnection.addEventListener(eventName, listener);
9085
9107
  });
9086
9108
  roomConnection.join();
9087
9109
  return () => {
9110
+ eventListeners.forEach(({ eventName, listener }) => {
9111
+ roomConnection.removeEventListener(eventName, listener);
9112
+ });
9088
9113
  roomConnection.leave();
9089
9114
  };
9090
9115
  }, []);
@@ -9129,6 +9154,6 @@ function useRoomConnection(roomUrl, roomConnectionOptions) {
9129
9154
  };
9130
9155
  }
9131
9156
 
9132
- const sdkVersion = "2.0.0-alpha18";
9157
+ const sdkVersion = "2.0.0-alpha19";
9133
9158
 
9134
9159
  export { VideoView, sdkVersion, useLocalMedia, useRoomConnection };
package/dist/types.d.ts CHANGED
@@ -237,25 +237,29 @@ type WaitingParticipantLeftEvent = {
237
237
  participantId: string;
238
238
  };
239
239
  interface RoomEventsMap {
240
- chat_message: CustomEvent<ChatMessage>;
241
- cloud_recording_started: CustomEvent<CloudRecordingState>;
242
- participant_audio_enabled: CustomEvent<ParticipantAudioEnabledEvent>;
243
- participant_joined: CustomEvent<ParticipantJoinedEvent>;
244
- participant_left: CustomEvent<ParticipantLeftEvent>;
245
- participant_metadata_changed: CustomEvent<ParticipantMetadataChangedEvent>;
246
- participant_stream_added: CustomEvent<ParticipantStreamAddedEvent>;
247
- participant_video_enabled: CustomEvent<ParticipantVideoEnabledEvent>;
248
- room_connection_status_changed: CustomEvent<RoomConnectionStatusChangedEvent>;
249
- room_joined: CustomEvent<RoomJoinedEvent>;
250
- screenshare_started: CustomEvent<ScreenshareStartedEvent>;
251
- screenshare_stopped: CustomEvent<ScreenshareStoppedEvent>;
252
- streaming_started: CustomEvent<StreamingState>;
253
- waiting_participant_joined: CustomEvent<WaitingParticipantJoinedEvent>;
254
- waiting_participant_left: CustomEvent<WaitingParticipantLeftEvent>;
240
+ chat_message: (e: CustomEvent<ChatMessage>) => void;
241
+ cloud_recording_started: (e: CustomEvent<CloudRecordingState>) => void;
242
+ cloud_recording_stopped: (e: CustomEvent<CloudRecordingState>) => void;
243
+ participant_audio_enabled: (e: CustomEvent<ParticipantAudioEnabledEvent>) => void;
244
+ participant_joined: (e: CustomEvent<ParticipantJoinedEvent>) => void;
245
+ participant_left: (e: CustomEvent<ParticipantLeftEvent>) => void;
246
+ participant_metadata_changed: (e: CustomEvent<ParticipantMetadataChangedEvent>) => void;
247
+ participant_stream_added: (e: CustomEvent<ParticipantStreamAddedEvent>) => void;
248
+ participant_video_enabled: (e: CustomEvent<ParticipantVideoEnabledEvent>) => void;
249
+ room_connection_status_changed: (e: CustomEvent<RoomConnectionStatusChangedEvent>) => void;
250
+ room_joined: (e: CustomEvent<RoomJoinedEvent>) => void;
251
+ screenshare_started: (e: CustomEvent<ScreenshareStartedEvent>) => void;
252
+ screenshare_stopped: (e: CustomEvent<ScreenshareStoppedEvent>) => void;
253
+ streaming_started: (e: CustomEvent<StreamingState>) => void;
254
+ streaming_stopped: (e: CustomEvent<StreamingState>) => void;
255
+ waiting_participant_joined: (e: CustomEvent<WaitingParticipantJoinedEvent>) => void;
256
+ waiting_participant_left: (e: CustomEvent<WaitingParticipantLeftEvent>) => void;
255
257
  }
256
258
  interface RoomEventTarget extends EventTarget {
257
- addEventListener<K extends keyof RoomEventsMap>(type: K, listener: (ev: RoomEventsMap[K]) => void, options?: boolean | AddEventListenerOptions): void;
259
+ addEventListener<K extends keyof RoomEventsMap>(type: K, listener: RoomEventsMap[K], options?: boolean | AddEventListenerOptions): void;
258
260
  addEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void;
261
+ removeEventListener<K extends keyof RoomEventsMap>(type: K, listener: RoomEventsMap[K], options?: boolean | EventListenerOptions): void;
262
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void;
259
263
  }
260
264
  declare const TypedEventTarget: new () => RoomEventTarget;
261
265
  declare class RoomConnection extends TypedEventTarget {
@@ -362,6 +366,6 @@ type RoomConnectionRef = {
362
366
  };
363
367
  declare function useRoomConnection(roomUrl: string, roomConnectionOptions: UseRoomConnectionOptions): RoomConnectionRef;
364
368
 
365
- declare const sdkVersion = "2.0.0-alpha18";
369
+ declare const sdkVersion = "2.0.0-alpha19";
366
370
 
367
371
  export { _default as VideoView, sdkVersion, useLocalMedia, useRoomConnection };