@snapcall/stream-ui 1.10.0 → 1.10.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/stream-ui.esm.js +59 -23
- package/dist/stream-ui.js +59 -23
- package/dist/stream-ui.umd.js +255 -261
- package/dist/types.d.ts +6 -3
- package/package.json +7 -7
package/dist/stream-ui.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {jsx as $3Sbms$jsx, jsxs as $3Sbms$jsxs, Fragment as $3Sbms$Fragment} from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import {createRoot as $3Sbms$createRoot} from "react-dom/client";
|
|
3
3
|
import $3Sbms$hotjarbrowser from "@hotjar/browser";
|
|
4
4
|
import $3Sbms$reacthottoast, {toast as $3Sbms$toast, Toaster as $3Sbms$Toaster, ToastBar as $3Sbms$ToastBar} from "react-hot-toast";
|
|
5
5
|
import $3Sbms$styledcomponents, {keyframes as $3Sbms$keyframes, ThemeProvider as $3Sbms$ThemeProvider, css as $3Sbms$css, ThemeContext as $3Sbms$ThemeContext, createGlobalStyle as $3Sbms$createGlobalStyle} from "styled-components";
|
|
@@ -14,6 +14,7 @@ import {captureException as $3Sbms$captureException, addBreadcrumb as $3Sbms$add
|
|
|
14
14
|
import {Producer as $3Sbms$Producer} from "mediasoup-client/lib/Producer";
|
|
15
15
|
import {Device as $3Sbms$Device} from "mediasoup-client";
|
|
16
16
|
import {SelfieSegmentation as $3Sbms$SelfieSegmentation} from "@mediapipe/selfie_segmentation";
|
|
17
|
+
import {createPortal as $3Sbms$createPortal} from "react-dom";
|
|
17
18
|
import {toCanvas as $3Sbms$toCanvas} from "qrcode";
|
|
18
19
|
|
|
19
20
|
|
|
@@ -1496,10 +1497,8 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1496
1497
|
}
|
|
1497
1498
|
};
|
|
1498
1499
|
peer.producersData.forEach((producer)=>{
|
|
1499
|
-
if (producer.deviceType === "microphone")
|
|
1500
|
-
|
|
1501
|
-
deviceState.microphone.muted = producer.paused;
|
|
1502
|
-
} else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
|
|
1500
|
+
if (producer.deviceType === "microphone") deviceState.microphone.enabled = true;
|
|
1501
|
+
else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
|
|
1503
1502
|
else if (producer.deviceType === "webcam") deviceState.camera.enabled = true;
|
|
1504
1503
|
});
|
|
1505
1504
|
peers.push({
|
|
@@ -1608,18 +1607,20 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1608
1607
|
if (notification.method === "error") {
|
|
1609
1608
|
if (notification.data?.reason === "reached user limit") this.onCriticalError($c31e3fb4360572af$export$818d60b2e626da0c.USER_LIMIT);
|
|
1610
1609
|
} else if (notification.method === "newPeer") {
|
|
1611
|
-
const { id: id , profile: profile } = notification.data;
|
|
1610
|
+
const { id: id , profile: profile , muted: muted } = notification.data;
|
|
1612
1611
|
this.peers.set(id, {
|
|
1613
1612
|
id: id,
|
|
1614
1613
|
peerId: id,
|
|
1615
1614
|
profile: profile,
|
|
1615
|
+
muted: muted,
|
|
1616
1616
|
producersData: []
|
|
1617
1617
|
});
|
|
1618
1618
|
const event = new $c31e3fb4360572af$var$SnapcallEvent("newPeer", {
|
|
1619
1619
|
detail: {
|
|
1620
1620
|
peerId: id,
|
|
1621
1621
|
displayName: profile.name,
|
|
1622
|
-
profile: profile
|
|
1622
|
+
profile: profile,
|
|
1623
|
+
muted: muted
|
|
1623
1624
|
}
|
|
1624
1625
|
});
|
|
1625
1626
|
this.dispatchEvent(event);
|
|
@@ -1698,6 +1699,26 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1698
1699
|
}
|
|
1699
1700
|
});
|
|
1700
1701
|
this.dispatchEvent(event);
|
|
1702
|
+
} else if (notification.method === "mute") {
|
|
1703
|
+
const { peerId: peerId , device: device } = notification.data;
|
|
1704
|
+
const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaPause", {
|
|
1705
|
+
detail: {
|
|
1706
|
+
peerId: peerId,
|
|
1707
|
+
deviceType: device,
|
|
1708
|
+
paused: true
|
|
1709
|
+
}
|
|
1710
|
+
});
|
|
1711
|
+
this.dispatchEvent(event);
|
|
1712
|
+
} else if (notification.method === "unmute") {
|
|
1713
|
+
const { peerId: peerId , device: device } = notification.data;
|
|
1714
|
+
const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaResume", {
|
|
1715
|
+
detail: {
|
|
1716
|
+
peerId: peerId,
|
|
1717
|
+
deviceType: device,
|
|
1718
|
+
paused: false
|
|
1719
|
+
}
|
|
1720
|
+
});
|
|
1721
|
+
this.dispatchEvent(event);
|
|
1701
1722
|
} else if (notification.method === "requestDeviceResult") {
|
|
1702
1723
|
const event = new $c31e3fb4360572af$var$SnapcallEvent(notification.method, {
|
|
1703
1724
|
detail: notification.data
|
|
@@ -1985,28 +2006,30 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
1985
2006
|
this.dispatchEvent(event);
|
|
1986
2007
|
}
|
|
1987
2008
|
}
|
|
1988
|
-
|
|
2009
|
+
muteMicrophone() {
|
|
1989
2010
|
if (this.micProducer) {
|
|
1990
2011
|
this.onStopSpeak();
|
|
1991
|
-
this.micProducer
|
|
1992
|
-
await this.protoo.request("pauseProducer", {
|
|
1993
|
-
producerId: this.micProducer?.id
|
|
1994
|
-
});
|
|
2012
|
+
this.micProducer.pause();
|
|
1995
2013
|
this.muted = true;
|
|
2014
|
+
const device = "microphone";
|
|
2015
|
+
this.protoo.notify("mute", {
|
|
2016
|
+
device: device
|
|
2017
|
+
});
|
|
1996
2018
|
const event = new $c31e3fb4360572af$var$SnapcallEvent("microphoneMute", {
|
|
1997
2019
|
detail: {}
|
|
1998
2020
|
});
|
|
1999
2021
|
this.dispatchEvent(event);
|
|
2000
2022
|
}
|
|
2001
2023
|
}
|
|
2002
|
-
|
|
2024
|
+
unMuteMicrophone() {
|
|
2003
2025
|
if (this.micProducer) {
|
|
2004
2026
|
this.micProducer.resume();
|
|
2005
2027
|
this.resolvePendingDeviceRequest("microphone", true);
|
|
2006
|
-
await this.protoo.request("resumeProducer", {
|
|
2007
|
-
producerId: this.micProducer.id
|
|
2008
|
-
});
|
|
2009
2028
|
this.muted = false;
|
|
2029
|
+
const device = "microphone";
|
|
2030
|
+
this.protoo.notify("unmute", {
|
|
2031
|
+
device: device
|
|
2032
|
+
});
|
|
2010
2033
|
const event = new $c31e3fb4360572af$var$SnapcallEvent("microphoneUnmute", {
|
|
2011
2034
|
detail: {}
|
|
2012
2035
|
});
|
|
@@ -2207,6 +2230,11 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2207
2230
|
},
|
|
2208
2231
|
qualityIndex: 2
|
|
2209
2232
|
};
|
|
2233
|
+
await this.webcamProducer?.replaceTrack?.({
|
|
2234
|
+
track: null
|
|
2235
|
+
}).catch((err)=>{
|
|
2236
|
+
$c31e3fb4360572af$var$log.error("switchCamera", "clean track failed", err);
|
|
2237
|
+
});
|
|
2210
2238
|
const mediaStream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
|
|
2211
2239
|
video: {
|
|
2212
2240
|
deviceId: {
|
|
@@ -2509,6 +2537,7 @@ class $c31e3fb4360572af$export$2e2bcd8739ae039 extends $c31e3fb4360572af$var$Str
|
|
|
2509
2537
|
deviceType: deviceType
|
|
2510
2538
|
});
|
|
2511
2539
|
this.scaleVideoEncodingsParameter();
|
|
2540
|
+
const paused = peer ? peer.muted : false;
|
|
2512
2541
|
const event = new $c31e3fb4360572af$var$SnapcallEvent("mediaStart", {
|
|
2513
2542
|
detail: {
|
|
2514
2543
|
peerId: peerId,
|
|
@@ -3076,8 +3105,9 @@ const $2da9626742e3560b$export$d5424e4dfe4be076 = ({ color: color })=>/*#__PURE
|
|
|
3076
3105
|
|
|
3077
3106
|
const $e1413aacdaa5a03e$export$71b2224f1ce5e08e = (ref, action)=>{
|
|
3078
3107
|
(0, $3Sbms$useEffect)(()=>{
|
|
3108
|
+
const effectTimestamp = performance.now();
|
|
3079
3109
|
const onWindowClick = (event)=>{
|
|
3080
|
-
if (!ref?.current?.contains(event.target)) action();
|
|
3110
|
+
if (!ref?.current?.contains(event.target) && event.timeStamp > effectTimestamp) action();
|
|
3081
3111
|
};
|
|
3082
3112
|
if (ref?.current) {
|
|
3083
3113
|
window.addEventListener("click", onWindowClick);
|
|
@@ -3166,7 +3196,9 @@ const $59d1053cd71d481a$var$Menu = ({ categories: categories })=>{
|
|
|
3166
3196
|
children: category.title
|
|
3167
3197
|
}),
|
|
3168
3198
|
category.items.map((item)=>/*#__PURE__*/ (0, $3Sbms$jsxs)((0, $4ee077ee5e6fe3e7$export$44020656de05f2b4), {
|
|
3169
|
-
onClick:
|
|
3199
|
+
onClick: ()=>{
|
|
3200
|
+
item.action();
|
|
3201
|
+
},
|
|
3170
3202
|
danger: item.danger,
|
|
3171
3203
|
children: [
|
|
3172
3204
|
item.jsxIcon && /*#__PURE__*/ (0, $3Sbms$jsx)((0, $4ee077ee5e6fe3e7$export$5912a8d3f489e1c1), {
|
|
@@ -6516,7 +6548,8 @@ const $cdab47bb8796991e$var$Video = ()=>{
|
|
|
6516
6548
|
const { peers: peers } = event.detail;
|
|
6517
6549
|
const roomStreams = peers.map((peer)=>({
|
|
6518
6550
|
id: peer.peerId,
|
|
6519
|
-
profile: peer.profile
|
|
6551
|
+
profile: peer.profile,
|
|
6552
|
+
muted: peer.muted
|
|
6520
6553
|
}));
|
|
6521
6554
|
dispatch({
|
|
6522
6555
|
type: (0, $2884da8a64948e35$export$96a9662a3eda31f6).SET_STREAMS,
|
|
@@ -10946,15 +10979,17 @@ const $24075a5d702d64b3$export$3f94917203ab7078 = {
|
|
|
10946
10979
|
init: ({ element: element , ...options })=>{
|
|
10947
10980
|
if (element?.nodeType !== window.Node.ELEMENT_NODE) throw new Error('The "element" property must be a valid element!');
|
|
10948
10981
|
const mergedOptions = (0, $365e765f9890497b$export$6969335ea1e4e77c)($24075a5d702d64b3$var$defaultOptions, options);
|
|
10949
|
-
|
|
10982
|
+
const rootElement = (0, $3Sbms$createRoot)(element);
|
|
10983
|
+
rootElement.render(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $26ed036cbc17809a$export$2e2bcd8739ae039), {
|
|
10950
10984
|
options: mergedOptions
|
|
10951
|
-
})
|
|
10985
|
+
}));
|
|
10952
10986
|
if (mergedOptions.tracking) (0, $3Sbms$hotjarbrowser).init(3111933, 6);
|
|
10953
10987
|
},
|
|
10954
10988
|
initGreeting: (element, onGreetingDone)=>{
|
|
10955
|
-
|
|
10989
|
+
const rootElement = (0, $3Sbms$createRoot)(element);
|
|
10990
|
+
rootElement.render(/*#__PURE__*/ (0, $3Sbms$jsx)((0, $f8d57e3d223f5089$export$2e2bcd8739ae039), {
|
|
10956
10991
|
onGreetingDone: onGreetingDone
|
|
10957
|
-
})
|
|
10992
|
+
}));
|
|
10958
10993
|
},
|
|
10959
10994
|
setExtraSettingsOptions: (extraOptions)=>{
|
|
10960
10995
|
const event = new CustomEvent("streamUISetExtraSettingsOptions", {
|
|
@@ -10970,6 +11005,7 @@ const $24075a5d702d64b3$export$3f94917203ab7078 = {
|
|
|
10970
11005
|
terminateRoom: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).terminateRoom.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
10971
11006
|
generateToken: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).generateToken.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
10972
11007
|
addEventListener: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).addEventListener.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
11008
|
+
removeEventListener: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).removeEventListener.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
10973
11009
|
dispatchEvent: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).dispatchEvent.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
10974
11010
|
getState: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).getState.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
|
10975
11011
|
setProfile: (0, $c9e496369b59be7a$export$2f377c2162fd02b2).setProfile.bind((0, $c9e496369b59be7a$export$2f377c2162fd02b2)),
|
package/dist/stream-ui.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var $jQDcL$reactjsxruntime = require("react/jsx-runtime");
|
|
2
|
-
var $jQDcL$
|
|
2
|
+
var $jQDcL$reactdomclient = require("react-dom/client");
|
|
3
3
|
var $jQDcL$hotjarbrowser = require("@hotjar/browser");
|
|
4
4
|
var $jQDcL$reacthottoast = require("react-hot-toast");
|
|
5
5
|
var $jQDcL$styledcomponents = require("styled-components");
|
|
@@ -14,6 +14,7 @@ var $jQDcL$sentrybrowser = require("@sentry/browser");
|
|
|
14
14
|
var $jQDcL$mediasoupclientlibProducer = require("mediasoup-client/lib/Producer");
|
|
15
15
|
var $jQDcL$mediasoupclient = require("mediasoup-client");
|
|
16
16
|
var $jQDcL$mediapipeselfie_segmentation = require("@mediapipe/selfie_segmentation");
|
|
17
|
+
var $jQDcL$reactdom = require("react-dom");
|
|
17
18
|
var $jQDcL$qrcode = require("qrcode");
|
|
18
19
|
|
|
19
20
|
function $parcel$interopDefault(a) {
|
|
@@ -1504,10 +1505,8 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
1504
1505
|
}
|
|
1505
1506
|
};
|
|
1506
1507
|
peer.producersData.forEach((producer)=>{
|
|
1507
|
-
if (producer.deviceType === "microphone")
|
|
1508
|
-
|
|
1509
|
-
deviceState.microphone.muted = producer.paused;
|
|
1510
|
-
} else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
|
|
1508
|
+
if (producer.deviceType === "microphone") deviceState.microphone.enabled = true;
|
|
1509
|
+
else if (producer.deviceType === "screen") deviceState.screenshare.enabled = true;
|
|
1511
1510
|
else if (producer.deviceType === "webcam") deviceState.camera.enabled = true;
|
|
1512
1511
|
});
|
|
1513
1512
|
peers.push({
|
|
@@ -1616,18 +1615,20 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
1616
1615
|
if (notification.method === "error") {
|
|
1617
1616
|
if (notification.data?.reason === "reached user limit") this.onCriticalError($1dedebd5ff3002eb$export$818d60b2e626da0c.USER_LIMIT);
|
|
1618
1617
|
} else if (notification.method === "newPeer") {
|
|
1619
|
-
const { id: id , profile: profile } = notification.data;
|
|
1618
|
+
const { id: id , profile: profile , muted: muted } = notification.data;
|
|
1620
1619
|
this.peers.set(id, {
|
|
1621
1620
|
id: id,
|
|
1622
1621
|
peerId: id,
|
|
1623
1622
|
profile: profile,
|
|
1623
|
+
muted: muted,
|
|
1624
1624
|
producersData: []
|
|
1625
1625
|
});
|
|
1626
1626
|
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("newPeer", {
|
|
1627
1627
|
detail: {
|
|
1628
1628
|
peerId: id,
|
|
1629
1629
|
displayName: profile.name,
|
|
1630
|
-
profile: profile
|
|
1630
|
+
profile: profile,
|
|
1631
|
+
muted: muted
|
|
1631
1632
|
}
|
|
1632
1633
|
});
|
|
1633
1634
|
this.dispatchEvent(event);
|
|
@@ -1706,6 +1707,26 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
1706
1707
|
}
|
|
1707
1708
|
});
|
|
1708
1709
|
this.dispatchEvent(event);
|
|
1710
|
+
} else if (notification.method === "mute") {
|
|
1711
|
+
const { peerId: peerId , device: device } = notification.data;
|
|
1712
|
+
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaPause", {
|
|
1713
|
+
detail: {
|
|
1714
|
+
peerId: peerId,
|
|
1715
|
+
deviceType: device,
|
|
1716
|
+
paused: true
|
|
1717
|
+
}
|
|
1718
|
+
});
|
|
1719
|
+
this.dispatchEvent(event);
|
|
1720
|
+
} else if (notification.method === "unmute") {
|
|
1721
|
+
const { peerId: peerId , device: device } = notification.data;
|
|
1722
|
+
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaResume", {
|
|
1723
|
+
detail: {
|
|
1724
|
+
peerId: peerId,
|
|
1725
|
+
deviceType: device,
|
|
1726
|
+
paused: false
|
|
1727
|
+
}
|
|
1728
|
+
});
|
|
1729
|
+
this.dispatchEvent(event);
|
|
1709
1730
|
} else if (notification.method === "requestDeviceResult") {
|
|
1710
1731
|
const event = new $1dedebd5ff3002eb$var$SnapcallEvent(notification.method, {
|
|
1711
1732
|
detail: notification.data
|
|
@@ -1993,28 +2014,30 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
1993
2014
|
this.dispatchEvent(event);
|
|
1994
2015
|
}
|
|
1995
2016
|
}
|
|
1996
|
-
|
|
2017
|
+
muteMicrophone() {
|
|
1997
2018
|
if (this.micProducer) {
|
|
1998
2019
|
this.onStopSpeak();
|
|
1999
|
-
this.micProducer
|
|
2000
|
-
await this.protoo.request("pauseProducer", {
|
|
2001
|
-
producerId: this.micProducer?.id
|
|
2002
|
-
});
|
|
2020
|
+
this.micProducer.pause();
|
|
2003
2021
|
this.muted = true;
|
|
2022
|
+
const device = "microphone";
|
|
2023
|
+
this.protoo.notify("mute", {
|
|
2024
|
+
device: device
|
|
2025
|
+
});
|
|
2004
2026
|
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("microphoneMute", {
|
|
2005
2027
|
detail: {}
|
|
2006
2028
|
});
|
|
2007
2029
|
this.dispatchEvent(event);
|
|
2008
2030
|
}
|
|
2009
2031
|
}
|
|
2010
|
-
|
|
2032
|
+
unMuteMicrophone() {
|
|
2011
2033
|
if (this.micProducer) {
|
|
2012
2034
|
this.micProducer.resume();
|
|
2013
2035
|
this.resolvePendingDeviceRequest("microphone", true);
|
|
2014
|
-
await this.protoo.request("resumeProducer", {
|
|
2015
|
-
producerId: this.micProducer.id
|
|
2016
|
-
});
|
|
2017
2036
|
this.muted = false;
|
|
2037
|
+
const device = "microphone";
|
|
2038
|
+
this.protoo.notify("unmute", {
|
|
2039
|
+
device: device
|
|
2040
|
+
});
|
|
2018
2041
|
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("microphoneUnmute", {
|
|
2019
2042
|
detail: {}
|
|
2020
2043
|
});
|
|
@@ -2215,6 +2238,11 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
2215
2238
|
},
|
|
2216
2239
|
qualityIndex: 2
|
|
2217
2240
|
};
|
|
2241
|
+
await this.webcamProducer?.replaceTrack?.({
|
|
2242
|
+
track: null
|
|
2243
|
+
}).catch((err)=>{
|
|
2244
|
+
$1dedebd5ff3002eb$var$log.error("switchCamera", "clean track failed", err);
|
|
2245
|
+
});
|
|
2218
2246
|
const mediaStream = await this.handleGetUserMediaError("webcam", navigator.mediaDevices.getUserMedia({
|
|
2219
2247
|
video: {
|
|
2220
2248
|
deviceId: {
|
|
@@ -2517,6 +2545,7 @@ class $1dedebd5ff3002eb$export$2e2bcd8739ae039 extends $1dedebd5ff3002eb$var$Str
|
|
|
2517
2545
|
deviceType: deviceType
|
|
2518
2546
|
});
|
|
2519
2547
|
this.scaleVideoEncodingsParameter();
|
|
2548
|
+
const paused = peer ? peer.muted : false;
|
|
2520
2549
|
const event = new $1dedebd5ff3002eb$var$SnapcallEvent("mediaStart", {
|
|
2521
2550
|
detail: {
|
|
2522
2551
|
peerId: peerId,
|
|
@@ -3084,8 +3113,9 @@ const $cce7f1c9e9c29503$export$d5424e4dfe4be076 = ({ color: color })=>/*#__PURE
|
|
|
3084
3113
|
|
|
3085
3114
|
const $326cea7dbbcb019a$export$71b2224f1ce5e08e = (ref, action)=>{
|
|
3086
3115
|
(0, $jQDcL$react.useEffect)(()=>{
|
|
3116
|
+
const effectTimestamp = performance.now();
|
|
3087
3117
|
const onWindowClick = (event)=>{
|
|
3088
|
-
if (!ref?.current?.contains(event.target)) action();
|
|
3118
|
+
if (!ref?.current?.contains(event.target) && event.timeStamp > effectTimestamp) action();
|
|
3089
3119
|
};
|
|
3090
3120
|
if (ref?.current) {
|
|
3091
3121
|
window.addEventListener("click", onWindowClick);
|
|
@@ -3174,7 +3204,9 @@ const $82c4f35718e0facf$var$Menu = ({ categories: categories })=>{
|
|
|
3174
3204
|
children: category.title
|
|
3175
3205
|
}),
|
|
3176
3206
|
category.items.map((item)=>/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsxs)((0, $4890069d0b6c2ba3$export$44020656de05f2b4), {
|
|
3177
|
-
onClick:
|
|
3207
|
+
onClick: ()=>{
|
|
3208
|
+
item.action();
|
|
3209
|
+
},
|
|
3178
3210
|
danger: item.danger,
|
|
3179
3211
|
children: [
|
|
3180
3212
|
item.jsxIcon && /*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $4890069d0b6c2ba3$export$5912a8d3f489e1c1), {
|
|
@@ -6524,7 +6556,8 @@ const $88b23a8428e67b66$var$Video = ()=>{
|
|
|
6524
6556
|
const { peers: peers } = event.detail;
|
|
6525
6557
|
const roomStreams = peers.map((peer)=>({
|
|
6526
6558
|
id: peer.peerId,
|
|
6527
|
-
profile: peer.profile
|
|
6559
|
+
profile: peer.profile,
|
|
6560
|
+
muted: peer.muted
|
|
6528
6561
|
}));
|
|
6529
6562
|
dispatch({
|
|
6530
6563
|
type: (0, $a4027a5418fcd07a$export$96a9662a3eda31f6).SET_STREAMS,
|
|
@@ -10954,15 +10987,17 @@ const $e68207026aca356b$export$3f94917203ab7078 = {
|
|
|
10954
10987
|
init: ({ element: element , ...options })=>{
|
|
10955
10988
|
if (element?.nodeType !== window.Node.ELEMENT_NODE) throw new Error('The "element" property must be a valid element!');
|
|
10956
10989
|
const mergedOptions = (0, $6b4cf4c12c735fdf$export$6969335ea1e4e77c)($e68207026aca356b$var$defaultOptions, options);
|
|
10957
|
-
|
|
10990
|
+
const rootElement = (0, $jQDcL$reactdomclient.createRoot)(element);
|
|
10991
|
+
rootElement.render(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $ee8cb448c2c74888$export$2e2bcd8739ae039), {
|
|
10958
10992
|
options: mergedOptions
|
|
10959
|
-
})
|
|
10993
|
+
}));
|
|
10960
10994
|
if (mergedOptions.tracking) (0, ($parcel$interopDefault($jQDcL$hotjarbrowser))).init(3111933, 6);
|
|
10961
10995
|
},
|
|
10962
10996
|
initGreeting: (element, onGreetingDone)=>{
|
|
10963
|
-
|
|
10997
|
+
const rootElement = (0, $jQDcL$reactdomclient.createRoot)(element);
|
|
10998
|
+
rootElement.render(/*#__PURE__*/ (0, $jQDcL$reactjsxruntime.jsx)((0, $3305ca02e86dabd1$export$2e2bcd8739ae039), {
|
|
10964
10999
|
onGreetingDone: onGreetingDone
|
|
10965
|
-
})
|
|
11000
|
+
}));
|
|
10966
11001
|
},
|
|
10967
11002
|
setExtraSettingsOptions: (extraOptions)=>{
|
|
10968
11003
|
const event = new CustomEvent("streamUISetExtraSettingsOptions", {
|
|
@@ -10978,6 +11013,7 @@ const $e68207026aca356b$export$3f94917203ab7078 = {
|
|
|
10978
11013
|
terminateRoom: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).terminateRoom.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
10979
11014
|
generateToken: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).generateToken.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
10980
11015
|
addEventListener: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).addEventListener.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
11016
|
+
removeEventListener: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).removeEventListener.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
10981
11017
|
dispatchEvent: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).dispatchEvent.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
10982
11018
|
getState: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).getState.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|
|
10983
11019
|
setProfile: (0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2).setProfile.bind((0, $c48c1ecc38fed4e9$export$2f377c2162fd02b2)),
|